docs(docs): state the delegate-first execution model in AGENTS.md and the campaign-lead skill - #12
Merged
Conversation
… the campaign-lead skill The lead-plus-implementers model was stated only in the opening prompts of cycles 1-4 and never in the repository; once those prompts stopped carrying it (cycle 5 onward) every cycle ran with zero dispatches, and three architecture reports read the campaign-lead rule 'do lead-sized leaves yourself' as licence to run a whole cycle alone. AGENTS.md now states the contract harness-free: the roles, the two currencies (the lead's re-sent context tokens on the most capable tier versus an implementer's once-spent tokens on a cheaper one; parallel wall-clock versus the 4-15 minute dispatch overhead KT-C and KT-D measured), the default, the per-leaf exception, and the sequential fallback when a harness offers no workers. The campaign-lead skill states the default before its exception and drops its two Claude Code specifics (the Agent tool's worktree base, the end of a subagent's turn), which move to the stack-traps Claude Code reference as the instance record, so no skill enumerates harnesses. The trigger eval loses its model name for the same reason. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
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.
Why
The lead-plus-implementers execution model ("delegate first, but not stubborn about it") was stated only in the opening prompts of development cycles 1–4 and nowhere in the repository. Once those prompts stopped carrying it (cycle 5 onward) every cycle ran with zero dispatches, and three architecture reports cited the
campaign-leadrule "do lead-sized leaves yourself" as the reason to run a whole cycle single-handed. The exception had swallowed the rule because the rule was never written down.What
AGENTS.mdgains an Execution model section, harness- and vendor-free: the roles, the two currencies it trades in (the lead's context tokens on the most capable tier, re-sent every turn, versus an implementer's once-spent tokens on a cheaper tier; parallel wall-clock versus the 4–15 minute dispatch overheadKT-C/KT-Dmeasured), the delegate-first default, the per-leaf exception, and the sequential fallback when a harness offers no parallel workers. It ends by routing to thecampaign-leaddev skill before deciding a task is too small. The skill's trigger row moves that decision inside the skill.campaign-leadstates The Default: Delegate First ahead of its order of operations, so the lead-sized rule reads as the exception it is (per leaf, never per cycle). Its two Claude Code specifics (the Agent tool's worktree base, the end of a subagent's turn) become harness-neutral invariants pointing at the instance record.stack-trapsreceives those two Claude Code instances as symptom / cause / what-to-do entries (#agent-worktree,#worker-turn), plus symptom-index rows. No skill enumerates harnesses; the harness instantiates the contract.Gates
uv run pytestgreen (AGENTS.md at 125 lines against the 130-line drift cap)uv run ruff check/ruff format --checkgreenclaude plugin validate .and./devpasscz check --rev-range main..HEADpassesclaude plugin evalfor the campaign-lead trigger (needs an authenticatedclaude -psession); the prompt change is a two-word deletion with an unchanged grader.🤖 Generated with Claude Code