plan-create
Skill10 starsChanged 39 days agoMITView on GitHub
Create `.context/plans/*.md` files with standard YAML frontmatter, phases/tasks/waves decomposition, and post-creation validation. Infers section conventions from existing plans in `.context/plans/` to match the local style. Integrates with plan-review for a create → review → iterate loop. Triggers: 'create a plan', 'new plan', 'draft a plan', 'plan scaffold', 'write a plan'. Do NOT use for plans outside `.context/plans/`, ephemeral notes, or the main project SKILL.md.
7 other projects use a version of this.
Adopted by
Most recently taken up by
- bas1l/claude-skillstheir own version, first seen Nov 3, 2026
- allemaar/open-skillstheir own version, first seen Oct 13, 2026
- fanswoo/skillstheir own version, first seen Oct 11, 2026
- markshust/hcftheir own version, first seen Oct 8, 2026
- serbanghita/plan-critique-skillstheir own version, first seen Sep 7, 2026
- hartleybrody/.agent-skillstheir own version, first seen Apr 27, 2026
Other versions7 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 7
- markshust/hcf★ 79same name
- allemaar/open-skills★ 15same name
- serbanghita/plan-critique-skills★ 13same name
- hartleybrody/.agent-skills★ 4same name
- Joshua-Palamuttam/workbench-template★ 3same name
- fanswoo/skills★ 1same name
- bas1l/claude-skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository81 other files it gives its agents.
- AGENTS.mdAGENTS.md
- skills/development/biome-complete/AGENTS.mdAGENTS.md
- skills/development/bun-development/AGENTS.mdAGENTS.md
- skills/development/commanderjs/AGENTS.mdAGENTS.md
- skills/documentation/markdown-authoring/AGENTS.mdAGENTS.md
- skills/package-mgmt/mise-complete/AGENTS.mdAGENTS.md
- skills/testing/bdd-testing/AGENTS.mdAGENTS.md
- agents-mdSkill
- cache-auditSkill
- context-radar-auditSkill
- create-contextSkill
- guided-interviewSkill
- handover-document-creatorSkill
- load-contextSkill
- pick-modelSkill
- pinSkill
- professional-honestySkill
- rules-managementSkill
- save-contextSkill
- session-reflectionSkill
- socratic-methodSkill
- vault-captureSkill
- vault-consolidateSkill
- vault-fetchSkill
- vault-searchSkill
- bird-fortune-political-satireSkill
- brooker-esque-media-satireSkill
- clarke-dawe-esqueSkill
- comedy-style-skill-generatorSkill
- cunk-esque-mockumentarySkill
- gervais-esque-cringe-satireSkill
- monty-python-esqueSkill
- pryor-esque-confessional-standupSkill
- rock-esque-observational-standupSkill
- biome-completeSkill
- bun-developmentSkill
- commanderjsSkill
- conventional-commitsSkill
- humanizerSkill
- journal-entry-importSkill
- markdown-authoringSkill
- mermaid-diagramsSkill
- plain-englishSkill
- professional-communicationSkill
- sop-structureSkill
- logql-generatorSkill
- mise-completeSkill
- context-indexSkill
- create-context-fileSkill
- follow-upSkill
- goal-trackerSkill
- nasa-pm-lessonsSkill
- plan-executeSkill
- plan-reviewSkill
- risk-registerSkill
- tech-debtSkill
- tech-evaluationSkill
- blast-radiusSkill
- bridgeSkill
- challengeSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
11 rules. 0 are common, 5 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 6 edited versions we read keep these.
5
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 16
Create .context/plans/ files that pass structural validation and match local conventions.
- Distinctive: line 38
When the work is trivially small (1 step, no phases) -- just write a finding
- Distinctive: line 44
Ask the user about the plan.
- Very specific: line 54
Use actionable language ("Add --format flag", not "Improve output")
- Very specific: line 105
Run the frontmatter validation script (see the context-index skill's scripts/validate-context-frontmatter.sh):
- Distinctive: line 112
If validation fails, fix the frontmatter and re-run.
- Very specific: line 122
If the user accepts, load the plan-review skill and follow its workflow.
- Distinctive: line 140
After creating the plan, run these checks:
- Very specific: line 157
If TBD, confirm the corresponding Open Question actually explains what's blocking the estimate.
- Very specific: line 204
GOOD: Always open with ---\ntitle: "Plan: My Title"\ntype: PLAN\nstatus: DRAFT\ndate: YYYY-MM-DD\n---.
- Distinctive: line 228
CONSEQUENCE: No meaningful checkpoint exists.
“Common” is measured: kept by at least 6 in 10 of the 6 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Plan Create -- Structured Plan Scaffolding
Create .context/plans/ files that pass structural validation and match
local conventions. The workflow ensures every plan has valid frontmatter,
clear phases and tasks, and can be immediately reviewed by the
plan-review skill.
Prerequisites
- A clear idea of the work to be planned (goal, scope, implementation steps)
- The
context-fileskill available if frontmatter repair is needed - The
plan-reviewskill available for post-creation validation (optional) - Shell access to run validation scripts
When to Use
- Drafting a new implementation plan with multiple phases
- Scoping work that needs review before implementation begins
- Creating a plan that will later be audited by
plan-review
When NOT to Use
- For the main project SKILL.md or agent skills -- use the skill template instead
- For one-off notes or scratch files -- use inline notes
- When the work is trivially small (1 step, no phases) -- just write a finding
Workflow
1. Gather the plan specification
Ask the user about the plan. Collect at minimum:
- Goal -- what does success look like? What problem is being solved?
- Scope -- what's in and what's out? Are there known constraints?
- Phases -- what are the sequential stages? Each phase should:
- Have a clear deliverable or exit criterion
- Be independently shippable (could stop after this phase)
- Be 2–5 tasks, not 20+
- Tasks per phase -- for each phase, list concrete work units:
- Each task should be completable in a single session (hours, not weeks)
- Use actionable language ("Add --format flag", not "Improve output")
- Flag which tasks can run in parallel (waves)
- Dependencies -- does this plan depend on other plans, PRs, or external work?
- Risks -- what could go wrong? What's the biggest unknown?
- Timeline -- optional, if the user has a deadline or priority
- Effort -- a T-shirt-sized estimate. Value -- a benefit-of-action grade. Themes -- an ordered subject-area tag list. All three are required frontmatter fields; see Grading Effort, Value, and Themes for the full rubric, allowed values, and worked examples. TYPICALLY these three fields are the ones a first-time plan author gets wrong -- read the reference before guessing.
2. Infer local conventions
Scan existing plans to understand what sections this repo uses:
grep -r '^## ' .context/plans/*.md | sed 's/.*## //' | sort | uniq -c | sort -rnFrom the frequency table, identify:
- Core sections (present in >= 40% of plans): always include
- Common sections (present in 20-39%): include unless the plan is small
- Rare sections (< 20%): include only if relevant
Also check the naming convention: timestamped (topic-YYYY-MM-DD.md) or
topic-only (short-description.md). Follow whatever the majority of plans use.
3. Draft the plan
Construct the plan file following the structure in assets/templates/plan-scaffold.yaml. The template is validated against assets/schemas/plan-scaffold.schema.json.
The plan always includes:
- YAML frontmatter with
title,type: PLAN,status: DRAFT,date(today),effort(S/M/L/TBD),value(HIGH/MEDIUM/LOW),themes(ordered list from the theme vocabulary, primary-first) ## Goalsection -- one paragraph describing the desired end state## Phasessection -- numbered phases with tasks and wave annotations## Open Questionssection -- unresolved items for the reviewer
Additional sections based on what the user provided and what the local
conventions suggest (from step 2): ## Scope, ## Risks, ## Verification.
4. Validate the plan
Run the frontmatter validation script (see the context-index skill's
scripts/validate-context-frontmatter.sh):
validate-context-frontmatter.sh .context/plans/<plan-file>.mdIf validation fails, fix the frontmatter and re-run. Do not proceed until validation passes -- a plan with invalid frontmatter is invisible to the index.
5. Review the plan (optional)
Offer to run the plan-review skill on the newly created plan:
"I created the plan at
.context/plans/<file>. Would you like me to run theplan-reviewskill on it now to catch any issues?"
If the user accepts, load the plan-review skill and follow its workflow.
This completes the create → review → iterate loop.
6. Confirm and conclude
Confirm the file was created with its path and a summary:
Created: .context/plans/<file>.md
Title: <title>
Status: draft
Phases: <N> phases, <M> tasks total
Next: Run plan-review on it, or mark status: READY once reviewed and approved
(status becomes ACTIVE on its own once a worktree/branch for it exists)Verification
After creating the plan, run these checks:
Frontmatter validation -- run
validate-context-frontmatter.shon the file. If it fails, fix the frontmatter before presenting the result.validate-context-frontmatter.sh <file>- Structure check -- verify the plan has at minimum
## Goaland## Phasessections. If the local convention requires others (from step 2), add those too. - Phase completeness -- verify each phase has 2-5 concrete tasks and an exit criterion. Phases with more than 8 tasks should be split.
- Wave annotation -- verify tasks that can run in parallel are marked (e.g., "Wave A: frontend, Wave B: backend -- can run concurrently").
- Effort declared -- frontmatter has
effortset toS/M/L/TBD. IfTBD, confirm the corresponding Open Question actually explains what's blocking the estimate. - Value graded -- frontmatter has
valueset toHIGH/MEDIUM/LOW, graded against the value rubric (see Grading Effort, Value, and Themes) rather than guessed. - Themes tagged -- frontmatter has a non-empty
themeslist, ordered primary-first, with every member drawn from the controlled theme vocabulary (same reference) -- no invented themes.
Mindset
- A plan is a communication tool first, a todo list second. Write for the next person who reads this cold.
- Phases are about sequencing, not grouping. Phase 1 must finish before Phase 2 starts. If two groups don't depend on each other, they're waves within a phase, not separate phases. PREFER an explicit wave label over leaving parallelism implicit.
- Tasks should be single-session-sized. TYPICALLY a phase holds 2-5 tasks. If a task takes "a few days", it's too large -- break it down. If it takes "5 minutes", it's too small -- combine it.
- BY DEFAULT a new plan is
status: DRAFT. Promote toREADYonly after the plan is reviewed and approved -- AVOID skipping straight toREADYUNLESS the work is genuinely trivial enough to skip review entirely (see When NOT to Use).ACTIVEis not a manual promotion at all -- it's entered automatically once a worktree/branch referencing the plan exists (seeplanning-flow.md). - The YAML frontmatter is not optional. A plan without frontmatter is invisible
to
.context/index.yamland to every agent that reads it. - Sizing
effortand gradingvalueis RECOMMENDED to happen against the rubric in Grading Effort, Value, and Themes, not from gut feel -- a guessed grade misleads the reader more than a statedTBDwith an Open Question.
Anti-Patterns
NEVER -- Create a plan without YAML frontmatter
SYMPTOM: The file renders fine in markdown but never appears in the context index. Future agents never discover the plan.
CONSEQUENCE: Effort goes into a plan no one reads. The plan is orphaned until someone manually finds it and adds frontmatter.
WHY: The context index and pre-commit hooks both require frontmatter. A plan without it is invisible machinery.
BAD: Starting the file with # Plan: My Title directly.
GOOD: Always open with ---\ntitle: "Plan: My Title"\ntype: PLAN\nstatus: DRAFT\ndate: YYYY-MM-DD\n---.
NEVER -- Skip the convention inference step
SYMPTOM: The created plan uses a structure that doesn't match any other plan
in the repo -- no ## Open Questions, no ## Scope. It feels out of place.
CONSEQUENCE: Agents that parse plans expecting ## Steps instead of
## Phases may skip sections. The plan is technically valid but practically
misaligned.
WHY: The local convention reflects what agents in this repo expect. A plan that doesn't follow it is harder to review, harder to index, and harder to discover.
BAD: Hardcoding "Goal → Steps → Open Questions" without scanning first.
GOOD: Running grep -r '^## ' .context/plans/*.md and using the actual
frequencies.
NEVER -- Create a phase with more than 8 tasks
SYMPTOM: "Phase 1: Everything" with 15 tasks and no sub-structure. The phase cannot be shipped independently -- it's the whole plan.
CONSEQUENCE: No meaningful checkpoint exists. If the plan runs out of time, there's no partial delivery. The cost of splitting later is higher than splitting now.
WHY: A phase should be small enough to review, implement, and ship in a sprint (1-2 weeks). 8+ tasks means the phase is underspecified.
BAD: A flat list of 15 tasks with no phase grouping. GOOD: 3 phases, each with 3-5 tasks and an exit criterion.
NEVER -- Omit or guess the effort field
SYMPTOM: The plan has no effort in frontmatter, or has one picked
arbitrarily to satisfy validation rather than reflecting an actual estimate.
CONSEQUENCE: A reader scanning .context/index.yaml for quick wins vs.
big lifts can't distinguish them without opening every plan file. A fake
number is worse than a missing one -- it looks authoritative but isn't.
WHY: effort exists so plans are triageable at a glance, the same way
status lets a reader triage by lifecycle stage. validate-context-frontmatter.sh
requires it for any type: PLAN with status: DRAFT, READY, or ACTIVE.
BAD: Setting effort: S on a plan nobody has actually sized, just to pass
validation.
GOOD: effort: TBD with an Open Question stating exactly what decision
blocks sizing (see migrate-off-tessl-eval-2026-06-29.md for a real example).
References
| Topic | Reference | When to Use |
| Common plan sections, their purpose, and file-naming conventions | Plan Structure Reference | Step 2, inferring which sections to include and how to name the file |
| Effort/value/themes rubric, allowed values, worked example | Grading Effort, Value, and Themes | Step 1, whenever effort, value, or themes need grading rather than guessing |
| Repairing frontmatter on an existing file | context-file skill | When a plan's frontmatter is invalid and needs fixing, not creating from scratch |
| Post-creation multi-perspective audit | plan-review skill | Step 5, after a plan is drafted and ready for review |
| Regenerating the index after creation | context-index skill | After a plan is created or its frontmatter changes, to keep .context/index.yaml in sync |
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

