Stop rewriting your whole plan: shard it instead A developer released plan-shard, a zero-dependency Python CLI that splits monolithic Claude Code Plan Mode documents into numbered shard files with dependency frontmatter, so targeted string-replacement feedback edits only one shard instead of forcing the model to rewrite the whole plan. The tool shards on '##' headings, defaults dependencies to sequential order plus literal PLAN_XXX references, and runs offline with no LLM or API calls; it is MIT-licensed with 24 tests and installs via pip. Claude Code's Plan Mode is great at producing thorough plans. It's also great at producing monolithic ones — thirty pages of markdown where changing one bullet means the model rewrites the entire document. If you've ever caught yourself manually splitting a plan into PLAN 1.md , PLAN 2.md files just to keep edits contained, you're not alone. That's the exact workflow I automated with plan-shard . A monolith plan has two failure modes: It's a zero-dependency Python CLI with two core moves: Shard. Feed it the monolith: plan-shard shard plan.md -o shards/ You get PLAN 001.md … PLAN 00N.md plus a PLAN INDEX.md . Every shard carries frontmatter with its dependency order and resume index: --- shard: 3 total: 6 title: "Step 1: Add the Redis client" source: plan.md depends on: 2, 4 resume index: 3 status: pending revisions: --- Targeted feedback. Fix one shard without touching the rest: plan-shard feedback shards/PLAN 003.md \ --old "app/cache.py" --new "app/caching.py" \ --note "rename module" Only that file changes — every other shard stays byte-identical, and the edit is logged in the shard's revisions list. Then track execution with plan-shard done / plan-shard resume . The heuristic is deliberately simple: every heading starts a new shard configurable with --level 3 . Text before the first heading becomes shard 1; dependencies default to sequential order plus any literal PLAN XXX references found in a shard's body. No LLM, no API calls, runs offline in milliseconds. --feedback is exact string replacement, not semantic editing. It won't reword surrounding prose or chase cross-shard references for you. PLAN XXX mentions, not a real graph. pip install plan-shard Source: https://github.com/hahahahahahahahah6/plan-shard https://github.com/hahahahahahahahah6/plan-shard MIT . 24 tests, stdlib only. If your plans keep getting rewritten wholesale, give your feedback a smaller blast radius.