What the source did
- He runs EVPick alone, and keeping it healthy used to be his evening job: search traffic, security, bugs and car data. He set out to make the repo notice what breaks, fix it, check the fix held, and only reach him when he alone can unstick something.
- Seven Claude Code routines do it, running as scheduled sessions in Anthropic's cloud. Five own an area: search traffic (Search Console via mcp-gsc, analytics), security (the live site, the week's code, npm audit, Dependabot, Cloudflare and Supabase settings), bugs (PostHog errors, function logs), data freshness, and data coverage (missing cars, records checked against makers' pages).
- Two work across all areas. The fixer turns bug and alert issues into pull requests four times a day. The reviewer proposes monthly changes to the routines' own instructions, but it can only make a routine do less, cheaper or elsewhere, or add a missing test. New powers come only from him, by hand.
- Most keys never enter the sandbox: a network proxy adds them on the way out, and the Cloudflare token can only read.
- The routines share a notebook, an orphan branch called ops-state with a folder per area: a log line per run, reports, blockers he was told about, and every search change with its hypothesis. Two weeks later each search change gets a verdict, and what hurt is reverted. It isn't on main because every push there redeploys.
- Merge on proof: copy and sitemap edits, patch and minor dependency bumps and vehicle-record fixes merge once their checks pass. All code and every security fix wait for him, with their age showing.
- The proof is four layers of tests: checks on every PR, a nightly end-to-end suite (about 60 Playwright files) on a disposable copy of production that can't reach the real one, ten nightly "golden questions" to the live chat model, and a smoke test after every release.
- Failures close their own loops: a failed deploy rolls back and opens an issue, a failing test becomes the fixer's job (it may never delete a test), a production error is recounted seven days after the fix and reopened if it's back, and a daily watchdog flags any routine that left no file.
- Notifications: posting every report to Slack became wallpaper within three days. Now everything is stored, digests come on Mondays, and between Mondays he hears only about real outages or a blocker that failed twice.
- Parked decisions get one plain question each through his /decide skill (below). He answered 31 issues in about an hour, and the fixer opened nine PRs from those answers within a day.
- His week: 46% of the routines' PRs merged with nothing from him and 47% of fixer issues were handled without asking. The rest took him three to four hours, mostly car data. Cost: about 36 runs and 200 minutes of agent time on his $200 Claude Max plan, plus about 5,000 GitHub Actions minutes a month.
“Changes merge on proof, not confidence.”— Julien Renaux (@julienrenaux), X (Article)
Summary written by Agent Cookbook from the original post. See the original for the full context. How we source recipes
Our notes
- What it takes
- Claude Code routines on a Claude plan (his is Max, $200 a month), a GitHub repo with PR checks, a nightly end-to-end suite and a post-release smoke test, read access to your analytics, error and security sources, and an orphan ops-state branch. His /decide skill is quoted; the routine brief is ours.
- Where it breaks
- Reports nobody reads, a routine stuck overnight that tells no one, auto-merging on the agent's confidence, keeping state on main where every push redeploys, and issues too long to decide on. About half the work still needed him in the week he measured.
- Human checkpoint
- Routines open PRs, issues and reports only. Copy, sitemap, small dependency and data-record fixes merge on passing checks; all code and every security fix wait for you, and only you can widen what a routine may touch.
- Tools involved
- Claude Code routines (scheduled sessions in Anthropic's cloud) on a Claude plan, A GitHub repo with real checks: PR tests, a nightly end-to-end suite and a smoke test after each release, Read access to your own sources (he uses Search Console via mcp-gsc, PostHog, Supabase and Cloudflare, read-only where he can), An orphan ops-state branch as the routines' shared notebook, Slack for the Monday digests and real outages, You, to review code and security PRs and answer parked decisions
✓ Verified Source link checked and still live. Notes by Thomas, editor. How we verify
Read their guide
Made and published by Julien Renaux. Start here; it is their original, not ours.
Their prompt
From Julien Renaux (@julienrenaux) Their exact wording: the shortened /decide skill from his Nov 10 article, which turns each parked GitHub issue into one plain question. Source ↗
Our adapted version
Ours Our version, built from his article: a starting brief for one area routine. He published only the /decide skill. Fill in the [BRACKETS].
Approval rule
Set it up
- List the weekly questions you ask yourself about the project; each one becomes one routine with its own sources and schedule.
- Make the proof real first: PR checks, a nightly end-to-end run on a throwaway copy, and a smoke test after release.
- Create an orphan ops-state branch with a folder per area so routines keep state without triggering deploys.
- Write down which kinds of change may merge on passing checks alone and protect everything else with branch rules.
- Give routines read-only keys where you can, kept out of the sandbox if your setup allows it.
- Start one routine, read its reports for a couple of weeks, then add the next and the fixer.
- Keep Slack quiet: Monday digests, plus real outages and repeat blockers.
- Add his /decide skill and answer parked issues in one sitting.
Common failures
- Alerts nobody reads. His first version posted every report to Slack and it was ignored within three days.
- A stuck system that tells no one: three fixer runs hit the same wall overnight and it only showed in log lines.
- Auto-merging on the agent's confidence instead of a check a machine can run.
- Letting the routine that tunes the instructions also widen what routines may touch.
- Keeping state on main, where every push redeploys.
- Forty-line issues written for machines; he needed one question with clickable answers.
- Expecting zero human time. About half the work still needed him that week.
Variations
- Start with only the bugs routine and the fixer; add search, security and data later.
- Swap his sources for yours: any analytics, error tracker or uptime check the routine can read.
- Run /decide on its own over any backlog labelled for a decision.
Get the 10 best agent setups. Free.
Plus new recipes every week. One email, no spam.
Unsubscribe anytime. Privacy