Update the feature workflow commands to create GitHub issues per phase instead of per individual task. This reduces issue clutter while still maintaining granular task tracking via checklists within phase issues. Key changes: **publish-to-github.md:** - Create phase issues instead of individual task issues - Each phase issue contains the full task checklist from implementation plan - Add support for `[complex]` marker to break out complex tasks as separate issues - Update Epic to link to phase issues instead of tasks - Update github.md template to show phases and optional complex task issues **create-feature.md:** - Add documentation for `[complex]` task marker - Update implementation plan format example with nested sub-tasks - Add "When to Use [complex]" guidance section **continue-feature.md:** - Rewrite workflow to work with phase issues instead of task issues - Add logic to identify current phase and find unchecked tasks - Support both phase issue tasks and complex task issues - Add step to update phase issue checklist after completing tasks - Update completion reporting for phase-based progress - Renumber steps (8.x → 7.x) for consistency **Hybrid approach:** - Default: one issue per phase with task checklists - Optional: break out tasks marked `[complex]` or with nested sub-tasks - Complex task issues link back to parent phase issue This change results in ~5 issues (1 epic + 4 phases) instead of ~47 issues for a typical feature, significantly reducing GitHub issue noise. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
4.4 KiB
description
| description |
|---|
| Create a new feature with requirements and implementation plan |
Create Feature
This command creates a new feature specification folder with requirements and implementation plan documents.
Instructions
Given the above conversation:
-
Create feature folder
- Store the requirements and implementation plan in
/specs - Create a new subfolder for this feature using kebab-case (e.g.,
add-auth)
- Store the requirements and implementation plan in
-
Create requirements.md
- Document what the feature does and why
- Include acceptance criteria
- Reference any related features or dependencies
-
Create implementation-plan.md
- Split the implementation into phases
- Create actionable tasks for each phase
- Each task should have a checkbox:
[ ] Task description - Tasks should be specific enough for an agent to implement independently
- Include dependencies between tasks where relevant
- Mark complex tasks with
[complex]suffix (these will get their own GitHub issue when published)
-
Create action-required.md
- Extract all manual steps that require human action
- Include tasks like: account creation, API key setup, environment variables, third-party service configuration, DNS settings, etc.
- Each task has a checkbox and brief context (one-liner explaining why it's needed)
- Keep these tasks in the implementation plan as well (for full context)
- If no manual steps exist, create the file with a "None required" note
-
Exclude testing tasks
- Do NOT include unit or e2e testing tasks
- UNLESS the user explicitly asks for testing to be included
If no conversation exists:
Ask the user what the requirements are first, then create the spec subfolder with:
requirements.mdimplementation-plan.mdaction-required.md
Implementation Plan Format
Use this structure for implementation-plan.md:
# Implementation Plan: {Feature Name}
## Overview
Brief summary of what will be built.
## Phase 1: {Phase Name}
{Brief description of this phase's goal}
### Tasks
- [ ] Task 1 description
- [ ] Task 2 description (depends on Task 1)
- [ ] Task 3 description [complex]
- [ ] Sub-task 3a
- [ ] Sub-task 3b
## Phase 2: {Phase Name}
{Brief description}
### Tasks
- [ ] Task 4 description (depends on Phase 1)
- [ ] Task 5 description
...
Note: Tasks marked with [complex] or containing nested sub-tasks will be created as separate GitHub issues when published (linked to their parent phase issue).
action-required.md Format
Use this structure for action-required.md:
# Action Required: {Feature Name}
Manual steps that must be completed by a human. These cannot be automated.
## Before Implementation
- [ ] **{Action}** - {Brief reason why this is needed}
## During Implementation
- [ ] **{Action}** - {Brief reason}
## After Implementation
- [ ] **{Action}** - {Brief reason}
---
> **Note:** These tasks are also listed in context within `implementation-plan.md`
When No Manual Steps Exist
If the feature has no manual steps, create the file with:
# Action Required: {Feature Name}
No manual steps required for this feature.
All tasks can be implemented automatically.
Next Steps
After creating the feature, inform the user:
Feature specification created at
specs/{feature-name}/Next steps:
- Review
action-required.mdfor tasks you need to complete manually- Review the requirements and implementation plan
- Run
/publish-to-githubto create GitHub issues and project- Use
/continue-featureto start implementing
Notes
- Keep tasks atomic - each should be implementable in a single session
- Tasks should produce working, testable code when complete
- Use clear, descriptive task names that explain what will be done
- Note dependencies explicitly when tasks must be done in order
- Common manual tasks: account creation, API key generation, environment variables, OAuth app configuration, DNS/domain setup, billing setup, third-party service registration
When to Use [complex]
Mark a task with [complex] when it:
- Has multiple sub-tasks that need individual tracking
- Requires significant architectural decisions or discussion
- Spans multiple files or systems
- Would benefit from its own GitHub issue for comments/review
Most tasks should NOT be marked complex - reserve this for genuinely substantial work items.