一键导入
speckit-plan
Execute the implementation planning workflow using the plan template to generate design artifacts.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Execute the implementation planning workflow using the plan template to generate design artifacts.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Assess the current codebase against the feature's spec, plan, and tasks, then append any remaining unbuilt work as new tasks to tasks.md so implement can complete it.
Execute the implementation planning workflow using the plan template to generate design artifacts.
Assess the current codebase against the feature's spec, plan, and tasks, then append any remaining unbuilt work as new tasks to tasks.md so implement can complete it.
Execute the implementation plan by processing and executing all tasks defined in tasks.md
Create or update the feature specification from a natural language feature description.
Generate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts.
| name | speckit-plan |
| description | Execute the implementation planning workflow using the plan template to generate design artifacts. |
| argument-hint | Optional guidance for the planning phase |
| compatibility | Requires spec-kit project structure with .specify/ directory |
| metadata | {"author":"github-spec-kit","source":"templates/commands/plan.md"} |
| user-invocable | true |
| disable-model-invocation | false |
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty).
Check for extension hooks (before planning):
.specify/extensions.yml exists in the project root.hooks.before_plan keyenabled is explicitly false. Treat hooks without an enabled field as enabled by default.condition expressions:
condition field, or it is null/empty, treat the hook as executablecondition, skip the hook and leave condition evaluation to the HookExecutor implementation.) with hyphens (-). For example, speckit.git.commit → /speckit-git-commit.optional flag:
optional: true):
## Extension Hooks
**Optional Pre-Hook**: {extension}
Command: `/{command}`
Description: {description}
Prompt: {prompt}
To execute: `/{command}`
optional: false):
## Extension Hooks
**Automatic Pre-Hook**: {extension}
Executing: `/{command}`
EXECUTE_COMMAND: {command}
Wait for the result of the hook command before proceeding to the Outline.
After emitting the block above you MUST actually invoke the hook and wait for it to finish before continuing. Run it the same way you would run the command yourself in this agent/session (the invocation may differ from the literal {command} id shown above, e.g. a skills-mode agent runs it as /skill:speckit-... or $speckit-...). Emitting the block alone does not run the hook..specify/extensions.yml does not exist, skip silentlySetup: Run .specify/scripts/bash/setup-plan.sh --json from 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 Nunchi's existing-slice plan workflow: Follow the structure in IMPL_PLAN template to:
plan.mdplan.mdresearch.md, data-model.md, contracts/, or
quickstart.md inside the bound sliceYou MUST complete this section before reporting completion to the user.
Check if .specify/extensions.yml exists in the project root.
hooks.after_plan, skip to the Completion Report.hooks.after_plan key.enabled is explicitly false. Treat hooks without an enabled field as enabled by default.condition expressions:
condition field, or it is null/empty, treat the hook as executablecondition, skip the hook and leave condition evaluation to the HookExecutor implementation.) with hyphens (-). For example, speckit.git.commit → /speckit-git-commit.optional flag:
optional: false) — You MUST emit EXECUTE_COMMAND: for each mandatory hook:
## Extension Hooks
**Automatic Hook**: {extension}
Executing: `/{command}`
EXECUTE_COMMAND: {command}
After emitting the block above you MUST actually invoke the hook and wait for it to finish before continuing. Run it the same way you would run the command yourself in this agent/session (the invocation may differ from the literal {command} id shown above, e.g. a skills-mode agent runs it as /skill:speckit-... or $speckit-...). Emitting the block alone does not run the hook.optional: true):
## Extension Hooks
**Optional Hook**: {extension}
Command: `/{command}`
Description: {description}
Prompt: {prompt}
To execute: `/{command}`
Command ends after design planning. Report the bound slice, branch, IMPL_PLAN path, and the ordinary repository paths planned for later authorized work.
This installed skill is customized for Nunchi's control-plane-only boundary.
The bound slice already exists. You MUST update its existing plan.md only.
You MUST NOT create or replace a feature, create research.md, or generate
data-model.md, contracts/, quickstart.md, product schemas, runnable docs,
tests, evals, evidence, or source under .specify/ or specs/.
Extract unknowns from Technical Context above:
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 the existing plan.md using format:
Output: existing plan.md with all NEEDS CLARIFICATION resolved
Prerequisites: planning research in plan.md complete
Extract entities from feature spec into the relevant plan.md sections:
Plan interface contracts (if the slice has external interfaces):
schemas/; do not create them
during planningPlan validation and runnable guidance:
tests/, evals/, evidence/, and docs/;
do not create those artifacts during planningComplete the documentation-impact matrix in plan.md, naming
README.md and every known affected ordinary document with UPDATE,
evidence-backed NO_IMPACT, or exact-owner HANDOFF.
Output: the existing plan.md only