Setup Guide
Get the Plan Feature skill running in your project. Takes less than a minute.
Prerequisites
- Claude Code installed and working (installation guide)
- A project directory where you want to use the skill
Installation
Step 1: Create the skill directory
In your project root, create the skill folder structure:
mkdir -p .claude/skills/plan-feature
Step 2: Create the SKILL.md file
Create .claude/skills/plan-feature/SKILL.md with the following content:
# Plan Feature Skill
## Description
Initiates plan-driven development workflow for new features or complex changes.
Conducts interviews to clarify requirements, then creates a plan file in `docs/plans/`.
Does NOT write implementation code.
## Steps
1. **Interview Phase**
* Ask the user: "What feature would you like to implement?"
* If requirements are unclear, ask clarifying questions until you have enough information.
* *Important:* Do NOT proceed to planning until the user says "Go".
2. **Research Phase**
* If needed, explore the codebase (using `grep`, `ls`, etc.) to understand existing patterns and impact areas.
3. **Plan Phase**
* Based on the interview and research, create a new file: `docs/plans/YYYYMMDD_feature_name.md`
* Example: `docs/plans/20260121_user_authentication.md`
* **Format:**
```markdown
# Feature: {Title}
## Context & Objective
* Why this change is needed
* What the user gains
## Requirements
* [ ] Requirement 1
* [ ] Requirement 2
## Architecture & Changes
* **FileA:** Add this method
* **FileB:** Modify this logic
* **Database:** Migration needed?
## Step-by-Step Plan
1. ...
2. ...
```
4. **Completion**
* Present the plan file to the user.
* Ask: "Does this plan look good? Ready to proceed to implementation?"
## Rules
* This skill **NEVER writes implementation code**.
* Plans must be specific enough that an implementer won't need to guess.
* Reference similar past plans in `docs/plans/` if they exist.
Step 3: Create the plans directory
Make sure you have a place for plan files:
mkdir -p docs/plans
That's it! The skill is now ready to use.
How to Use
In Claude Code, invoke the skill with the slash command:
/plan-feature
Claude will start the interview phase and guide you through the workflow.
Example Session
You: /plan-feature
Claude: What feature would you like to implement?
You: I want to add user authentication to the app.
Claude: A few questions to clarify:
1. What authentication method? (email/password, OAuth, magic links?)
2. Do you need role-based access control?
3. Should sessions persist across browser restarts?
You: Email/password, no roles needed, yes persist sessions.
Claude: Got it. Any other requirements?
You: Go
Claude: [Researches codebase, then creates docs/plans/20260121_user_authentication.md]
Here's the plan I created. Does this look good?
Customization
The SKILL.md file is just a prompt. You can modify it to fit your workflow.
Change the plan format
Edit the "Format" section in SKILL.md to match your team's documentation style.
Add custom phases
Want a "Security Review" phase? Add it to the Steps section:
2.5 **Security Review Phase**
* Identify potential security implications
* List required validations and sanitizations
* Note any authentication/authorization requirements
Change the output location
If you want plans in a different directory, update the path in Step 3 of SKILL.md:
* Create a new file: `planning/features/YYYYMMDD_feature_name.md`
Example Plan File
Here's what a real plan file looks like:
# Feature: User Authentication
## Context & Objective
* The app currently has no authentication
* Users need accounts to save their data
* This enables future features like sharing and collaboration
## Requirements
* [ ] Email/password registration
* [ ] Email/password login
* [ ] Session persistence across browser restarts
* [ ] Password reset via email
* [ ] Secure password storage (bcrypt)
## Architecture & Changes
* **Database:** Add `users` table with email, password_hash, created_at
* **API:** Add `/auth/register`, `/auth/login`, `/auth/logout`, `/auth/reset-password` endpoints
* **Frontend:** Add login/register forms, auth state management
* **Middleware:** Add session validation middleware
## Step-by-Step Plan
1. Create database migration for users table
2. Implement user model with password hashing
3. Create auth API endpoints
4. Add session middleware
5. Build frontend auth forms
6. Add protected route wrapper
7. Implement password reset flow
8. Write tests for auth flows
Use Cases
- New features: Plan the implementation before writing any code
- Refactoring: Document what you're changing and why
- Bug investigation: Create a plan for how to investigate and fix
- Team handoffs: Create plans that others can implement
Questions?
Check out the main documentation or open an issue on GitHub.