Run an interactive feature planning session.
Steps
- •
Get the project for the current working directory:
- •Call
list_projectswithdirectory_pathset to the current working directory - •If no project found, offer to run
/manifest:initfirst
- •Call
- •
Gather input:
- •
Ask the user what they want to plan:
codeWhat would you like to plan? Options: - Paste a PRD, spec, or feature description - Describe the capabilities you want to add - Say "analyze" to let me examine the codebase
- •
- •
Design the feature tree:
- •Apply the user story test to each leaf feature: "As a [user], I can [capability]..."
- •Name features by capability (e.g., "Router" not "Implement routing")
- •Group related features under parent nodes
- •Assign priorities (lower = implement first)
- •Write tier-appropriate details:
- •Parent features: shared architectural context, patterns, constraints for children
- •Leaf features: specification — goal, constraints, key interfaces if applicable. Length guided by the project's configured ac_level. Skip formal structures like Gherkin.
- •Parent details flow to all children via breadcrumb — put shared decisions there, not in every leaf
- •
Present the proposal:
- •
Call
planwithconfirm: falseto get a preview - •
Display the proposed tree:
codeProposed Feature Tree: ◇ [Parent Feature] │ [Description] ├── ◇ [Child Feature 1] (priority: 1) │ [Description] └── ◇ [Child Feature 2] (priority: 2) [Description] Does this look right? I can adjust the structure, add details, or create it.
- •
- •
Iterate or confirm:
- •If user wants changes, modify and re-present
- •If user approves, call
planwithconfirm: true
- •
Display result:
codeCreated [N] features. Use /manifest:tree to see the full hierarchy. Use /manifest:start to begin work on the first feature.