Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/martinffx-spec-plan
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, writing, research
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/spec-plan
What's inside
- Skill name
spec-plan- Description
- Write approved implementation plans in one of two modes. Explicit Inline mode creates a conversational plan for bounded work. Spec-backed Plan converts an approved design.md into plan.json. Both modes stop after producing their plan output. Trigger after atelier-orchestrator selects a mode, when the user asks to plan work, or after spec-brainstorm completes. Direct invocation without a selected mode uses Spec-backed Plan. Do NOT use for research or execution.
- License
- MIT
- Instructions
- 332 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- plan_template.md · references/
SKILL.md (first lines)
# Spec Plan
Write a proportional plan so clear that any engineer can follow it. The selected planning
mode determines whether the plan stays in the conversation or becomes a persisted structured
artifact. This skill does not write code or start implementation.
`atelier-orchestrator` owns automatic classification and the human may override it. When this
skill is directly invoked without a selected mode, use Spec-backed Plan. If Inline planning
reveals substantial design or coordination needs, ask the human whether to switch to a
Spec-backed Plan before presenting the plan.
## Terminal boundary
This skill produces exactly one plan output and then stops:
- Inline mode presents the plan in conversation and changes no repository files.
- Spec-backed mode creates or updates only `plan.json` from an approved `design.md`.
Planning drafts and annotation cycles stay in conversation. Do not modify `design.md`, persist
a Markdown plan draft, create tracker entries, invoke another workflow skill, or edit
implementation files. These rules still apply when the human asks to plan and implement in one
request. Implementation requires a later, explicit request after this skill has finished.
## Planning Rules
- Organize tasks around required behavior, not one task per layer.
- Record a short list of behavior the change must preserve.
- For each task, identify existing code to reuse, modify, or delete.
- Map every new abstraction to a present requirement and its current consumers.
- Introduce shared infrastructure only when at least two current consumers demonstrate the
same need.
- Group tests by changed contract and active boundary. Do not repeat the CRUD matrix across
layers.
- Plan tests at each module's interface, not past it (see **oracle-codebase-design**).
### Proportionality Gate
Before presenting any plan, compare its size and concepts with the requested behavior. If a
bounded migration or refactor introduces shared infrastructure, unrelated behavior, or a plan
substantially larger than the behavior being changed, stop and simplify it.
### Challenge Gate
Before presenting a plan, dispatch two read-only subagents in parallel with the draft plan and
its design context. Select each agent explicitly (see Delegation in `atelier-orchestrator`):
1. **Design review:** check architectural fit, layer and data-model boundaries, API contracts,
and whether task ordering respects the dependencies.
2. **Critical challenge:** challenge assumptions, look for missing cases, scope creep, and
unproven requirements, and propose simpler alternatives.
Each returns at most five evidence-backed findings. Fold in the valid ones, drop the rest with a
reason, and present the plan with a short **Challenged** note listing what changed.
Run the gate on every Spec-backed Plan. Run it on an Inline Plan only when the change touches a
data model, an API contract, or more than one module or layer; skip it for small bounded edits.
Run it once per draft; do not re-run it for the human's annotation revisions unless the plan's
structure changes.
## Outputs
### Inline Plan (when explicitly selected)
No repository artifact and no task tracker entry. Read
`references/plan_template.md` and present the plan in conversation using its
structure. Omit optional subsections rather than rendering empty headings.
## Inline Plan Workflow
Read enough of the codebase to identify the current behavior, boundaries, affected files,
and concrete validation. Keep the plan proportional to implementation risk. Fill the
template with confirmed, file-and-symbol-level details, including cross-file wiring or
ordering constraints where they matter. Apply the Planning Rules, Proportionality Gate, and Challenge Gate
before presenting it.
Do not manufacture phases, task IDs, dependency graphs, acceptance matrices, `design.md`,
`plan.json`, tracker entries, or harness todos. The conversation is the plan artifact.
**Tell the human:** "Inline Plan ready for review."
**STOP. Wait for human review.**
If the human requests any adjustment, apply it to the working plan and re-present the
entire updated plan using `references/plan_template.md`. Include unchanged sections so
the human reviews one coherent plan. Never respond with only the changed text, an
affected section, a summary, or an acknowledgement. A one-word correction is still a
plan revision: incorporate it and present the complete plan again.
Every revision invalidates prior approval. End each revised plan with "Inline Plan ready
for review." and stop until the human explicitly approves that complete version. Do not
implement until the current plan is approved.
When the human approves the Inline Plan, acknowledge that the plan is approved and stop. Do not
implement it in the same invocation. A later explicit implementation request may execute the
approved conversational plan directly using the Inline execution safeguards in
`atelier-orchestrator`; it does not use `spec-implement`, `spec-finish`, `code-subagents`, or
task tracking.
## Spec-backed Plan Artifacts
```
docs/specs/YYYY-MM-DD-<feature-name>/
├── design.md ← From spec-brainstorm (approved)
└── plan.json ← This skill's output
```
The plan starts as a conversational draft for human annotation, then gets converted to
structured `plan.json` when approved.
### plan.json Schema
```json
{
"feature": "user-authentication",
"spec": "docs/specs/2026-03-08-user-auth/design.md",
"goal": "Add email/password authentication with session management",
"preserved_behavior": [
"Existing sessions remain valid"
],From martinffx/atelier, MIT.
More from martinffx/atelier
- 0.663score
oracle-debug
martinffx
Disciplined debugging methodology.
SkillAFreshness: A★ 48Claude Code +9 - 0.663score
code-pull-request
martinffx
Manage GitHub pull requests or GitLab merge requests: create, read/leave/respond to comments, and merge.
SkillAFreshness: A★ 48Claude Code +9 - 0.663score
code-review
martinffx
Multi-agent code review run as a debate.
SkillAFreshness: A★ 48Claude Code +9 - 0.663score
code-subagents
martinffx
Implementation subagent dispatch patterns.
SkillAFreshness: A★ 48Claude Code +9 - 0.663score
oracle-codebase-design
martinffx
Shared vocabulary and principles for designing deep modules.
SkillAFreshness: A★ 48Claude Code +9 - 0.660score
atelier-setup
martinffx
Configure a repository for Atelier's development workflow.
SkillAFreshness: A★ 48Claude Code +9 - 0.658score
spec-brainstorm
martinffx
Conversational design workshop for substantial work.
SkillAFreshness: A★ 48Claude Code +9 - 0.658score
code-commit
martinffx
Generate and validate conventional commit messages following the conventionalcommits.org spec.
SkillAFreshness: A★ 48Claude Code +9 - 0.658score
spec-finish
martinffx
Post-implementation completion workflow for Spec-backed Plans.
SkillAFreshness: A★ 48Claude Code +9 - 0.658score
spec-implement
martinffx
Continue an approved Spec-backed workflow when the user says "implement", "go", "start", or "do it".
SkillAFreshness: A★ 48Claude Code +9 - 0.658score
atelier-orchestrator
martinffx
Skill routing and workflow orchestration.
SkillAFreshness: A★ 48Claude Code +9 - 0.654score
spec-loop
martinffx
Run an approved Spec-backed Plan (design.md and plan.json both present) unattended to a draft PR: implement and review each batch with fresh subagents…
SkillAFreshness: A★ 48Claude Code +9
Signals
- Stars
- 48
- Forks
- 5
- Open issues
- 0
- Last commit (this folder)
- Oct 17, 2026 (11 days ago)
- Last release
- Oct 18, 2026 (11 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/martinffx/atelier
- Website
- github.com/martinffx/atelier
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from martinffx
- 0.663score
oracle-debug
martinffx
Disciplined debugging methodology.
SkillAFreshness: A★ 48Claude Code +9 - 0.663score
code-pull-request
martinffx
Manage GitHub pull requests or GitLab merge requests: create, read/leave/respond to comments, and merge.
SkillAFreshness: A★ 48Claude Code +9 - 0.663score
code-review
martinffx
Multi-agent code review run as a debate.
SkillAFreshness: A★ 48Claude Code +9 - 0.663score
code-subagents
martinffx
Implementation subagent dispatch patterns.
SkillAFreshness: A★ 48Claude Code +9 - 0.663score
oracle-codebase-design
martinffx
Shared vocabulary and principles for designing deep modules.
SkillAFreshness: A★ 48Claude Code +9 - 0.660score
atelier-setup
martinffx
Configure a repository for Atelier's development workflow.
SkillAFreshness: A★ 48Claude Code +9
Cite this page
spec-plan skill. Agent Mart. https://agentmart.dev/skills/martinffx-spec-plan (last updated 2026-10-24)