speckit-plan
Scannednpx machina-cli add skill dceoy/speckit-agent-skills/speckit-plan --openclawSpec Kit Plan Skill
When to Use
- The feature spec is ready and you need a technical implementation plan.
Inputs
specs/<feature>/spec.md- Repo context and
.specify/templates - User-provided constraints or tech preferences (if any)
If the spec is missing, ask the user to run speckit-specify first.
Workflow
-
Setup: Run
.specify/scripts/bash/setup-plan.sh --jsonfrom repo root and parse JSON for FEATURE_SPEC, IMPL_PLAN, SPECS_DIR, BRANCH. For single quotes in args like "I'm Groot", use escape syntax: e.g 'I'''m Groot' (or double-quote if possible: "I'm Groot"). -
Load context: Read FEATURE_SPEC and
.specify/memory/constitution.md. Load IMPL_PLAN template (already copied). -
Execute plan workflow: Follow the structure in IMPL_PLAN template to:
- Fill Technical Context (mark unknowns as "NEEDS CLARIFICATION")
- Fill Constitution Check section from constitution
- Evaluate gates (ERROR if violations unjustified)
- Phase 0: Generate research.md (resolve all NEEDS CLARIFICATION)
- Phase 1: Generate data-model.md, contracts/, quickstart.md
- Phase 1: Update agent context by running the agent script
- Re-evaluate Constitution Check post-design
-
Stop and report: Command ends after Phase 2 planning. Report branch, IMPL_PLAN path, and generated artifacts.
Phases
Phase 0: Outline & Research
-
Extract unknowns from Technical Context above:
- For each NEEDS CLARIFICATION → research task
- For each dependency → best practices task
- For each integration → patterns task
-
Generate and dispatch research agents:
For each unknown in Technical Context: Task: "Research {unknown} for {feature context}" For each technology choice: Task: "Find best practices for {tech} in {domain}" -
Consolidate findings in
research.mdusing format:- Decision: [what was chosen]
- Rationale: [why chosen]
- Alternatives considered: [what else evaluated]
Output: research.md with all NEEDS CLARIFICATION resolved
Phase 1: Design & Contracts
Prerequisites: research.md complete
-
Extract entities from feature spec →
data-model.md:- Entity name, fields, relationships
- Validation rules from requirements
- State transitions if applicable
-
Generate API contracts from functional requirements:
- For each user action → endpoint
- Use standard REST/GraphQL patterns
- Output OpenAPI/GraphQL schema to
/contracts/
-
Agent context update:
- Run
.specify/scripts/bash/update-agent-context.sh <agent_type> - Use the current runtime agent type (e.g., claude, codex, copilot, gemini). Leave empty to update all existing agent files.
- Update the appropriate agent-specific context file
- Add only new technology from current plan
- Preserve manual additions between markers
- Run
Output: data-model.md, /contracts/*, quickstart.md, agent-specific file
Key rules
- Use absolute paths
- ERROR on gate failures or unresolved clarifications
Outputs
specs/<feature>/plan.md(filled implementation plan)specs/<feature>/research.mdspecs/<feature>/data-model.mdspecs/<feature>/contracts/(API schemas)specs/<feature>/quickstart.md- Updated agent context file (runtime-specific)
Next Steps
After planning:
- Generate tasks with speckit-tasks.
- Create a checklist with speckit-checklist when a quality gate is needed.
Source
git clone https://github.com/dceoy/speckit-agent-skills/blob/main/skills/speckit-plan/SKILL.mdView on GitHub Overview
Speckit Plan automates the implementation planning workflow using the plan template to produce design artifacts. It consumes a feature spec, constitution, and an IMPL_PLAN template to generate phase-by-phase outputs such as research, data-model, contracts, and quickstart, while updating agent context for traceability.
How This Skill Works
The skill loads FEATURE_SPEC and constitution, reads the IMPL_PLAN template, and fills sections like Technical Context and Constitution Check. It then executes Phase 0 research to resolve NEEDS CLARIFICATION and Phase 1 design to produce data-model.md, contracts, and quickstart, followed by agent-context updates and a final constitution re-check.
When to Use It
- You have a ready feature spec and need a concrete technical implementation plan.
- You must generate design artifacts (data-model.md, contracts, quickstart) from a spec.
- You need to resolve unresolved requirements by researching unknowns in Phase 0.
- You want API contracts (REST/GraphQL) generated from functional requirements.
- You need to update the runtime agent context and produce a plan-linked set of outputs.
Quick Start
- Step 1: Run .specify/scripts/bash/setup-plan.sh --json from repo root to load context.
- Step 2: Load FEATURE_SPEC and .specify/memory/constitution.md and copy IMPL_PLAN template.
- Step 3: Run Phase 0 research, Phase 1 design, then Phase 2 planning to generate artifacts and report.
Best Practices
- Ensure the feature spec exists at specs/<feature>/spec.md before running.
- Use absolute paths (e.g., specs/<feature>/contracts/) for all artifacts.
- Label all unresolved items as NEEDS CLARIFICATION and generate research tasks.
- Follow Phase 0 research, Phase 1 design, then Phase 2 planning in order.
- Run the agent-context update step to synchronize runtime agent files.
Example Use Cases
- A new payments feature: converts a vague spec into data-model.md and API contracts.
- Migrating a user-profile feature into a complete plan with research.md and quickstart.
- Adding a service plan where unknowns trigger research tasks and best-practices tasks.
- Generating OpenAPI schemas from functional requirements into /contracts/.
- Updating the agent context after design to reflect new technology choices.