Build both. A new companion skill (working name night-shift) that runs the rotating-brains overnight improvement loop, plus five surgical upgrades folded into recursive-10-10-product-hardening. They occupy different seams:
| recursive-10-10-product-hardening | night-shift (new) | |
|---|---|---|
| Question | "Does what exists actually work?" | "Is what exists what a best-in-class product would be?" |
| Direction | Convergent: spec from code, close the gap, verify | Divergent then convergent: each brain discovers gaps beyond the spec, proposes, builds, proves |
| Reference point | The code's own claims | Best-in-class per lens, researched fresh each run |
| Ends when | Every behavior row Verified | Never (standing patrol) or when the improvement queue is dry and all brains report no new findings |
night-shift piggybacks rather than duplicates: it consumes coverage-matrix scores, invokes recursive-10-10 semantics for verification, and reuses /bhag's two-gate auto-merge safety model verbatim.
| Source | What it is | Best idea |
|---|---|---|
| Ralph Playbook (Huntley / Farr) | The canonical dumb outer loop: while :; do cat PROMPT.md | claude; done | Fresh context per iteration + a persistent plan file on disk as the only shared state; "backpressure" (tests, lints, LLM-as-judge with binary pass/fail) rejects bad work; the plan is disposable. |
| Anthropic harness-design post (Mar 2026) | Planner / generator / evaluator harness for multi-hour builds | Agents grading their own work skew positive. A separate, deliberately skeptical evaluator that drives the app in a browser before scoring is the load-bearing component. Sprint contracts: generator and evaluator agree what "done" means before code is written. |
| gstack (Garry Tan) | Persona review pipeline: CEO, Design, Eng, DX brains over one plan | Personas as 18 named cognitive patterns with routing ("when you challenge scope, apply focus-as-subtraction"), not checklists. Dual independent voices per lens with a consensus table where a missing voice never counts as agreement. A three-tier decision taxonomy: Mechanical (auto), Taste (auto + logged recommendation), User-Challenge (never auto-decided). |
| Gas Town + Beads (Yegge) | 20 to 30 agent town with standing patrol roles | Hook + molecule persistence: one per-role pointer to "current step" in a pre-materialized step chain on disk makes crashes and context exhaustion non-events. Patrols with exponential backoff. One serialization role (Refinery) lands changes one at a time against fresh main. |
| Compound Engineering (Every / Klaassen) | Plan, Work, Review, Compound loop; 26-agent plugin | The Compound phase: every cycle ends by asking "would the system catch this automatically next time?" with an escalation ladder (note, then CLAUDE.md rule, then a new dedicated reviewer agent). Filename-encoded queues: NNN-ready-p1-slug.md, greppable and crash-resumable. Named persona reviewers fanned out in parallel and merged into one P1/P2/P3 list. |
| BMAD Method | Named-persona agile team (Analyst, PM, Architect, PO, Dev, QA) | Strict role boundaries with file-based artifact handoffs; confirmation that the persona-team pattern scales to 48k stars of adoption. Too ceremonial to copy wholesale. |
| Subagent collections (VoltAgent et al.) | Commodity persona reviewer libraries | Establishes the table-stakes lens roster (code-reviewer, security-reviewer, architect-reviewer, product-manager). Nothing to steal beyond the roster names; they are checklists, which gstack's technique beats. |
| Greptile PR-corpus study (May 2026) | Millions of PRs; agent vs human quality | Overnight-agent PRs are ~28% of merges and no worse than human overall, but each agent has a failure fingerprint. Claude: IDOR / missing tenant check 1.75x human, stale docs 1.69x, off-by-one 1.64x, XSS 1.57x, auth bypass 1.50x. The security lens should over-weight exactly these. |
| "Team of Rivals" (arXiv 2601.14351) | Multi-agent organizational-intelligence study | Cascaded critique with orthogonally specialized inner critics caught 87.8% of errors; an outer-loop output critic caught a further 14.6%. Lens diversity beats lens redundancy, measurably. |
Also checked and deliberately not copied: claude-flow / ruflo (enterprise swarm theater), Spec-Kit / OpenSpec / GSD (phase-gate spec tooling; the vibe-to-spec interview is /blindspot's job already).
| Concern | Mechanic | From |
|---|---|---|
| Loop shape | Dumb outer loop, fresh context per iteration, one unit of work per iteration, durable state only on disk | Ralph |
| Crash resilience | Hook file (current-step pointer) + pre-materialized step chain; filename-encoded queue NNN-{status}-{prio}-{lens}-{slug}.md | Gas Town, Every |
| Persona definition | Cognitive patterns + routing paragraph, not checklists; banned-phrase anti-sycophancy list; anti-convergence rule ("different design teams, not the same team at three coffee levels") | gstack |
| Lens diversity | Orthogonal specialization across brains; a finding that two brains produce independently is a high-confidence signal, near-duplicates within one brain are padding | Team of Rivals, gstack autoplan |
| Quality gate | Generator/evaluator separation; skeptical browser-driving evaluator; sprint contract negotiated before code; hard per-criterion thresholds | Anthropic |
| Subjective gates | LLM-as-judge backpressure with binary pass/fail for aesthetics, tone, UX feel | Ralph playbook |
| Merge safety | Serialize landings one at a time against fresh main; evidence gates only; reuse /bhag two-gate production guard | Gas Town (Refinery, done right), existing jacked doctrine |
| Autonomy decisions | Mechanical auto / Taste auto-with-logged-decision-brief / User-Challenge queued to a morning report, never auto-decided | gstack (de-blocked for overnight) |
| Self-improvement | Compound phase each iteration: "would the system catch this automatically next time?"; escalation ladder note → rule → dedicated reviewer; learnings written with frontmatter so they are findable | Every |
| Honesty | Anti-compression clause: "no issues found" must state what was examined in 1-2 sentences; artifacts must exist on disk | gstack autoplan |
| Idle economics | Patrol with exponential backoff: standing mode sleeps longer each empty pass, wakes on repo mutation | Gas Town |
| Security focus | Security brain over-weights Claude's own measured failure fingerprint: tenancy/IDOR, auth bypass, XSS, off-by-one, stale docs | Greptile |
night-shift skill
flowchart TB
A[Wake: read HOOK.md + queue] --> B{Queue has ready items?}
B -- no --> C[Rotate to next brain in roster]
C --> D[Brain: best-in-class research via firecrawl
+ product walk
+ findings with citations]
D --> E[Findings → queue items
NNN-ready-pN-lens-slug.md
dedup vs ALL prior findings]
E --> B
B -- yes --> F[Pick highest-priority ready item]
F --> G[Negotiate done-contract
generator ↔ evaluator]
G --> H[Generator implements
on branch, tests green]
H --> I[Skeptical evaluator:
browser-drive + judge vs contract]
I -- fail --> H
I -- pass --> J[Land: PR → checks appear AND pass
→ merge serialized vs fresh main]
J --> K[Compound: write back learnings
note → rule → new reviewer]
K --> L[Update HOOK.md + morning report]
L --> B
wake → (queue empty? rotate brain: research best-in-class → findings → queue) → pick item → done-contract → implement → skeptical evaluator (loop until pass) → evidence-gated land → compound learnings → update hook → repeat
Patrol phase (divergent). When the queue has no ready items, the next brain in the roster takes the wheel for one full iteration. It (a) researches best-in-class for its lens in this product category via firecrawl, citing sources and scoping every statistic to its dataset; (b) walks the actual product (browser for UI brains, code for engineering brains, both for most); (c) emits findings as queue items with a decision-brief each: what, why, evidence, effort, the brain's recommendation, and its lens signature. Dedup runs against ALL prior findings (accepted, rejected, and open), so judge-rejected ideas do not resurrect every night.
Build phase (convergent). While ready items exist, iterations consume the queue: pick highest priority, negotiate a done-contract between generator and evaluator (Anthropic's sprint contract), implement on a branch with tests, then the skeptical evaluator browser-drives and judges against the contract. Pass lands through the evidence gate; fail loops with feedback, subject to the stuck-only backstop (3 consecutive no-progress attempts → mark blocked, move on).
| Brain | Lens | Defined by |
|---|---|---|
| First-time user | Onboarding, discoverability, empty states, "can I even figure this out" | Each brain is a persona file: 5-8 cognitive patterns with routing, a banned-phrase list, 2-3 worked BAD/GOOD examples, and its research targets (who is best-in-class for THIS lens). Guidance, not algorithms, per jacked skill doctrine. |
| Power user (per real user type) | Workflow friction, click counts, keyboard paths, bulk operations, table stakes vs competitors | |
| Designer | Visual quality, motion, dark mode, anti-slop; judgment runs on the Fable lane | |
| Developer / DX | API ergonomics, error messages, docs currency, setup friction | |
| Security | OWASP + STRIDE, over-weighting Claude's measured fingerprint (tenancy/IDOR 1.75x, auth 1.5x, XSS 1.57x); runs on the Fable lane per chain-of-command | |
| Compliance | Domain-appropriate: HIPAA/PHI for healthcare repos, PCI for billing, licensing/provenance elsewhere | |
| SRE / reliability | Failure paths, silent failures, observability, data integrity | |
| Product CEO | Scope, positioning, "what would make this best-in-class", kill-list of features nobody needs | |
| Support / docs | Error-message quality, help content, "what generates tickets" |
.night-shift/
HOOK.md # current-step pointer: brain index, active item, phase
roster.md # brain roster for this repo (generated on first run, editable)
queue/ # NNN-{ready|building|blocked|landed|rejected}-{p1|p2|p3}-{lens}-{slug}.md
findings-ledger.md # every finding ever, with disposition; the dedup reference
learnings/ # compound-phase output, YAML frontmatter, escalation status
morning-report.html # user-challenge decisions queued + the night's ledger (regenerated each run)
scratch/ # ephemeral bookkeeping, git-ignored, squashed to a digest at run end
recursive-10-10 Step 0b.auto-merge argument + production guard, verbatim from Step 0a.recursive-10-10-product-hardening| # | Upgrade | Source |
|---|---|---|
| 1 | Harden the Step 5 self-check into a true generator/evaluator split: the evaluator is a fresh-context agent that never sees the fixer's conversation, is prompted skeptical, and browser-drives before grading. The fixer never sets its own row to Verified. | Anthropic |
| 2 | Anti-compression clause in evidence rules: a clean pass on any area must state in 1-2 sentences what was examined; fewer than that is compression, not verification. | gstack |
| 3 | LLM-as-judge binary backpressure as an explicit test method for subjective rows (aesthetics, tone, UX feel) in the Step 1 test strategy and Step 5 loop. | Ralph |
| 4 | Restore point before first mutation: verbatim copy of the canonical workbook (and any plan file) with a pointer comment, so a bad run is one copy away from recovery. | gstack |
| 5 | Failure-fingerprint weighting: the test/fix loop explicitly over-tests tenancy/IDOR, auth paths, XSS, off-by-one boundaries, and doc staleness, because that is where Claude-authored changes statistically fail. | Greptile |
| Choice | Options | Recommendation |
|---|---|---|
| Name | night-shift / brain-trust / patrol | night-shift: says overnight + standing roles in two words |
| Where it ships | jacked core skill (jacked/data/skills/) vs skill-pack vs local-only | jacked core, same as recursive-10-10; it is a flagship |
| Loop driver | Skill-internal iteration (like /bhag) vs external loop.sh Ralph-style vs /loop dynamic mode | Skill-internal with the hook file making any external driver (cron, /loop, plain rerun) trivially resumable — best of both |
| Relationship to /bhag | Replace / absorb / coexist | Coexist: /bhag drives the coverage matrix; night-shift is lens-driven discovery + compound learning. Revisit merging after night-shift proves out. |
jacked/data/skills/night-shift/SKILL.md + persona files (guidance-style, superpowers:writing-skills discipline)jacked/data/skills/recursive-10-10-product-hardening/SKILL.md~/.claude/skills and ~/.agents/skillsGenerated with the jacked HTML artifact template.