fix: support OpenClaude Codex auth path and disable broken agent chat#21
Draft
pedrotecinf wants to merge 16 commits intoEvolutionAPI:developfrom
Draft
fix: support OpenClaude Codex auth path and disable broken agent chat#21pedrotecinf wants to merge 16 commits intoEvolutionAPI:developfrom
pedrotecinf wants to merge 16 commits intoEvolutionAPI:developfrom
Conversation
When systemd restarted the service, concurrent scheduler processes would pile up causing routines (e.g. morning briefing) to fire multiple times. acquire_lock() checks for a live PID on startup; release_lock() cleans up the PID file on SIGINT/SIGTERM. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace TOCTOU-prone check-then-create with O_CREAT|O_EXCL atomic open. Prevents multiple schedulers from starting simultaneously during rapid restarts, which caused routines (review-todoist, git-sync) to fire multiple times and send duplicate Telegram messages. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…mctl systemctl restart on Type=oneshot + KillMode=none doesn't reliably kill child processes. New approach: pkill processes directly then re-run start-services.sh — works without sudo and actually restarts everything. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude CLI does not have a -p flag — prompt must be passed as a positional argument. The old -p flag caused the YAML frontmatter (---) to be interpreted as an unknown CLI option, failing all heartbeats with: unknown option '---\nname: "zara-cs"'. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The dashboard was running scheduler.py both as a standalone process (via start-services.sh) and as an embedded thread (app.py), causing every routine to fire 2-3x per trigger. Removed the _run_scheduler thread; kept a lightweight _poll_scheduled_tasks thread for one-off ScheduledTask DB entries only. feat(fin): add Evo Academy as revenue source in financial skills fin-daily-pulse, fin-weekly-report and fin-monthly-close-kickoff now pull data from the Evo Academy Analytics API (summary, orders, subs) and consolidate it alongside Stripe and Omie. MRR, daily revenue and P&L now reflect courses, subscriptions and Summit tickets. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- prod-end-of-day: Step 5 now reviews Todoist directly instead of calling /prod-review-todoist as sub-skill, which was sending its own Telegram notification before the EOD notification — causing 2x Telegram per EOD run - pulse-faq-sync: explicit instruction to send exactly ONE Telegram message combining summary + alerts, instead of splitting into multiple reply() calls Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Sorry @pedrotecinf, you have reached your weekly rate limit of 500000 diff characters.
Please try again later or upgrade to continue using Sourcery
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR fixes two issues affecting EvoNexus when running with
openclaudeand Codex OAuth:openclaudewas installed but not detected because the service/runtime PATH did not include user-local installlocations such as
~/.npm-global/bin.codex_auth, but that flow stilldepended on the Anthropic SDK and failed with
Not logged in · Please run /login.What changed
claude.aware.
.gitignoreentries for local EvoNexus workspace/runtime data to reduce accidental commits of personalconversations and logs.
Files changed
ADWs/runner.pydashboard/backend/routes/providers.pydashboard/terminal-server/src/claude-bridge.jsdashboard/frontend/src/pages/AgentDetail.tsxstart-services.sh.gitignoreBehavior before
'openclaude' not found in PATHeven when it was installed in~/.npm-global/bin.Claude Code returned an error result: Not logged in · Please run /loginBehavior after
openclaudecorrectly from common user-local install paths.Validation
openclaude --versionresolves successfully from the corrected path.openclaude.npm run build.Notes
This PR does not fully implement provider-aware support for
dashboard/terminal-server/src/chat-bridge.js.It prevents the broken UX path for now. A future PR can make the structured agent chat layer work with
openclaude/Codex OAuth as well.