Run it on cadence.
Once devrel init is happy and you've reviewed the first deliverable, the rest of the year is cron, doctor, and the occasional rewrite of voice.md.
Once devrel init is happy and you've reviewed the first deliverable, the rest of the year is cron, doctor, and the occasional rewrite of voice.md.
The weekly install lands as a user-crontab entry that calls devrel run in the project directory. Not root. Removable with one verb.
For analytics-only cadence on a different day, wrap the verb directly:
devrel doctor checks state.db schema, LLM key validity, KB presence, voice / style / slop completeness. Failure messages name the fix verb (devrel auth, devrel migrate, etc.) so you don't have to grep docs.
Watchdog runs the same checks continuously inside devrel run and aborts the pipeline before token spend if anything is degraded.
Each run logs token spend per agent to state.db. devrel cost shows this run and the rolling four-week average, compared against the weekly cap in config.toml.
The cheapest way to lower spend without losing output quality: route Sage, Echo, and Iris to haiku-4.5 in [llm].agent_models while keeping Kai and Pax on sonnet-4.5. Triage and listening don't need a premium model; outreach and content do.
After a version bump, run devrel migrate to upgrade the state.db schema. Doctor will tell you when this is needed. Partial pipeline failures persist a trace JSON next to whatever deliverable was in flight, so the next run picks up from a known state.
devrel run exits with ANTHROPIC_API_KEY is required
Run devrel auth. If the key is already set in your shell, devrel auto-loads .devrel/.env first; running auth writes the key there so subsequent runs work from any shell.
Kai exits with status="insufficient_evidence"
Your KB is empty or the topic has no grounding. Run devrel kb add <url> per page to harvest into .devrel/kb/, or drop markdown files in by hand. Heads-up: Firecrawl's default scrape returns nav-chrome only on JS-rendered React docs (PostHog, Vercel, Mintlify-hosted) — spot-check one harvested file with wc -l; if it's <50 lines, lift markdown directly from the project's repo instead.
OpenRouter 400 on default model
Fixed in v0.2.11. Upgrade: pipx upgrade devrel-origin.
Cron entry installed but not firing
devrel schedule list shows the entry; check crontab -l directly. macOS users may need to grant cron full disk access in System Settings → Privacy.
devrel run is over the budget cap mid-pipeline
Atlas aborts gracefully; partial deliverables persist. Raise weekly_usd_cap in config.toml, or route expensive agents (Kai, Pax) through cheaper models via [llm].agent_models.
Sentinel blocks a deliverable below score threshold
Read the trace JSON to see which dimension failed (voice, ICP, messaging, quality). Fix voice.md or slop-blocklist.md, then devrel content audit to re-score without a fresh LLM call.