Sign in
Explore
Prompts · PromptEveryday codingReviewed

plan

Runs the planning workflow with the plan template to produce the design artifacts for a feature.

Kind
Prompt
Works with
Claude Code, Codex, GitHub Copilot, Cursor, Windsurf / Devin, Cline
Source
github/spec-kit @ c00dc0551583
Path
templates/commands/plan.md
License
MIT
Jobs
Planning
InstallCopy it from the source repository, or sign in and let the assistant adapt it for your project.
## User Input

```text
$ARGUMENTS
```

You **MUST** consider the user input before proceeding (if not empty).

## Pre-Execution Checks

**Check for extension hooks (before planning)**:
- Check if `.specify/extensions.yml` exists in the project root.
- If it exists, read it and look for entries under the `hooks.before_plan` key
- If the YAML cannot be parsed or is invalid, do not skip silently: tell the user that `.specify/extensions.yml` could not be read (include the parser error) and that no hooks were checked, including any mandatory (`optional: false`) hooks registered there, then continue normally
- Filter out hooks where `enabled` is explicitly `false`. Treat hooks without an `enabled` field as enabled by default.
- For each remaining hook, do **not** attempt to interpret or evaluate hook `condition` expressions:
  - If the hook has no `condition` field, or it is null/empty, treat the hook as executable
  - If the hook defines a non-empty `condition`, skip the hook and leave condition evaluation to the HookExecutor implementation
- For each executable hook, output the following based on its `optional` flag:
  - **Optional hook** (`optional: true`):
    ```
…