| name | dev |
| description | Feature implementation workflow. Use when developer wants to implement a feature or fix - creates branch, plans, implements, and validates. |
| user-invocable | true |
| argument-hint | <issue-number> [-y] |
/dev $ARGUMENTS
Feature implementation workflow — from issue to PR.
Usage
/dev
<issue-number> Implement GitHub issue (e.g., /dev 12)
<issue-number> -y Implement with auto-confirm (auto-commit and PR)
-y, --yes Skip confirmations
If no issue number provided: Ask the developer for the issue number. Do not proceed without one.
If -y is passed, all sub-skill invocations inherit auto-confirm.
Resume Detection
Before starting the workflow, check if a progress file exists:
.claude/progress/<feature-slug>.md
If progress file exists:
- Read the progress file
- Ensure the current branch matches the branch in the progress file. If not, switch to it.
- Show the developer a summary:
"Found progress for <feature>:
- Completed:
- Remaining:
Continue?"
- Wait for developer response
- If confirmed → recreate todo list from the progress file (mark completed items as done), restore the implementation mode, continue from the first unchecked plan item in Step 4. If all plan items are done, go to Step 5.
- If declined → ask if they want to start fresh (this deletes the progress file)
If no progress file exists, check git history for prior session work:
- If the current branch has relevant commits, run
git log main..HEAD --oneline and git diff main..HEAD --stat
- If there are commits (especially "wip" commits) with relevant changes, summarize what was already done
- Show the developer a summary and ask which workflow step to resume from
- If no prior work is found → proceed with Step 1.
Instructions
Step 1: Understand Requirements
Fetch the issue details:
gh issue view <issue-number>
Extract requirements and acceptance criteria.
Step 2: Setup Branch
Check current branch:
git branch --show-current
If already on a feature branch for this work → skip to Step 3.
Otherwise:
-
Check for uncommitted changes:
git status
-
If changes exist, save them:
git add -A
git commit -m "wip: save work before switching branch"
-
Create new branch using /git branch
Step 3: Plan
- Create todo list using TaskCreate tool
- Share plan with developer and ask:
"Before I start:
- Any specific instructions or context? (approach, files to reference, constraints)
- How would you like to work?
- All at once — I implement all plan items, then ask you to verify
- Pair programming — I implement one plan item at a time, you review each before I continue"
Confirmation gate: If -y → default to "all at once" mode and proceed. Otherwise → wait for response before continuing.
Save Progress
After the developer responds, create the progress file at .claude/progress/<feature-slug>.md.
The plan items are the implementation tasks from the todo list — the actual work items, not the workflow steps.
# Progress: <feature>
## Mode
<all-at-once | pair>
## Branch
<current-branch-name>
## Requirements
<requirements summary>
## Plan
- [ ] <plan item 1>
- [ ] <plan item 2>
- [ ] <plan item 3>
- ...
## Developer Notes
<any instructions or context the developer provided>
Step 4: Implement
- Use context7 MCP for current library documentation (ReactLynx, Rspeedy, etc.)
- Implement feature/fix based on requirements
- Follow
.claude/rules/coding.md for all coding conventions
- Follow
.claude/rules/testing.md when writing or updating tests
All-at-Once Mode
Implement all plan items sequentially without pausing. After each item, update the progress file — mark the plan item as [x]. After all items are done, proceed to Step 5.
Pair Programming Mode
For each plan item:
- Implement the plan item
- Show the developer what was done
- Wait for developer confirmation before continuing
- If developer requests changes → refine, then ask again
- If confirmed → update the progress file — mark item as
[x], move to the next plan item
After all items are done, proceed to Step 5.
Step 5: Developer Verification
Confirmation gate: If -y → proceed to Step 6. Otherwise → ask:
"All plan items are implemented. Please test the feature and let me know:
- All good — continue to tests
- Needs changes — describe what to fix/refine"
Wait for response. If needs changes → apply fixes, update progress file, ask again.
Step 6: Write Tests
Delegate to the test-writer agent:
- Cover main functionality
- Cover edge cases
- Target 80%+ coverage for new code
Step 7: Finalize
Run /validate to check lint, types, and tests in parallel.
Fix any errors before completing.
Step 8: Commit & PR
Confirmation gate: If -y → invoke /git commit and /github create pr, then proceed to Step 9. Otherwise → ask:
"Would you like to commit the changes and create a PR?"
- If yes → invoke
/git commit, then /github create pr
- If no → proceed to Step 9
Step 9: Suggest Instruction Improvements
Reflect on the session and suggest improvements to instructions.
Invoke /project skill-up for what to look for and output format.
Cleanup
After all steps are complete, delete the progress file:
.claude/progress/<feature-slug>.md