agile-context-engineering 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,254 @@
1
+ # /ace:init - Initialize ACE in Your Project
2
+
3
+ Initialize Agile Context Engineering (ACE) for spec-driven development with Claude Code or OpenCode.
4
+
5
+ ## Usage
6
+
7
+ ```
8
+ /ace:init [--github]
9
+ ```
10
+
11
+ ### Options
12
+
13
+ - `--github` - Create items as GitHub issues instead of local files (requires `gh` CLI)
14
+
15
+ ## Behavior
16
+
17
+ When invoked, this command will:
18
+
19
+ 1. **Check prerequisites**
20
+ - Verify you're in a git repository
21
+ - Check if ACE is already initialized
22
+ - If `--github` flag is used, verify `gh` CLI is authenticated
23
+
24
+ 2. **Create ACE directory structure**
25
+ ```
26
+ .ace/
27
+ ├── config.json # ACE configuration
28
+ ├── backlog/ # Epic and feature definitions
29
+ ├── sprints/ # Sprint planning and tracking
30
+ └── research/ # Domain research and findings
31
+ ```
32
+
33
+ 3. **Create initial project files**
34
+ - `PROJECT.md` - Project vision and goals
35
+ - `BACKLOG.md` - Product backlog overview
36
+ - `STATE.md` - Current project state and decisions
37
+
38
+ 4. **Configure GitHub integration** (if `--github` flag used)
39
+ - Create GitHub labels for epics, features, stories
40
+ - Set up issue templates
41
+
42
+ ## Instructions for Claude
43
+
44
+ <ace-init>
45
+
46
+ ### Step 1: Verify Prerequisites
47
+
48
+ Check if we're in a git repository:
49
+ ```bash
50
+ git rev-parse --is-inside-work-tree
51
+ ```
52
+
53
+ Check if ACE is already initialized:
54
+ - Look for `.ace/config.json` file
55
+ - If exists, ask user if they want to reinitialize
56
+
57
+ ### Step 2: Gather Project Information
58
+
59
+ Ask the user for:
60
+ 1. **Project name** - What is this project called?
61
+ 2. **Project description** - One-line description of what this project does
62
+ 3. **Storage preference** - Local files or GitHub issues?
63
+ 4. **GitHub integration** - If GitHub, which repo? (auto-detect from git remote if possible)
64
+
65
+ ### Step 3: Create Directory Structure
66
+
67
+ Create the following structure:
68
+
69
+ ```
70
+ .ace/
71
+ ├── config.json
72
+ ├── backlog/
73
+ ├── sprints/
74
+ └── research/
75
+ ```
76
+
77
+ ### Step 4: Create Configuration File
78
+
79
+ Create `.ace/config.json`:
80
+
81
+ ```json
82
+ {
83
+ "version": "0.1.0",
84
+ "projectName": "<project-name>",
85
+ "description": "<project-description>",
86
+ "storage": "local|github",
87
+ "github": {
88
+ "enabled": false,
89
+ "repo": null,
90
+ "labels": {
91
+ "epic": "ace:epic",
92
+ "feature": "ace:feature",
93
+ "story": "ace:story",
94
+ "task": "ace:task"
95
+ }
96
+ },
97
+ "createdAt": "<timestamp>",
98
+ "hierarchy": {
99
+ "levels": ["epic", "feature", "story", "task"],
100
+ "current": {
101
+ "epic": null,
102
+ "feature": null,
103
+ "story": null,
104
+ "sprint": null
105
+ }
106
+ }
107
+ }
108
+ ```
109
+
110
+ ### Step 5: Create PROJECT.md
111
+
112
+ Create `PROJECT.md` in the repository root:
113
+
114
+ ```markdown
115
+ # <Project Name>
116
+
117
+ > <One-line description>
118
+
119
+ ## Vision
120
+
121
+ <!-- Describe the long-term vision for this project -->
122
+
123
+ ## Goals
124
+
125
+ <!-- List 3-5 key goals this project aims to achieve -->
126
+
127
+ ## Non-Goals
128
+
129
+ <!-- What is explicitly out of scope -->
130
+
131
+ ## Success Criteria
132
+
133
+ <!-- How will you measure success? -->
134
+
135
+ ---
136
+
137
+ *Managed with [ACE](https://github.com/agile-context-engineering/ace) - Agile Context Engineering*
138
+ ```
139
+
140
+ ### Step 6: Create BACKLOG.md
141
+
142
+ Create `BACKLOG.md` in the repository root:
143
+
144
+ ```markdown
145
+ # Product Backlog
146
+
147
+ ## Epics
148
+
149
+ <!-- Epics are large bodies of work that can be broken down into features -->
150
+
151
+ | ID | Epic | Status | Features |
152
+ |----|------|--------|----------|
153
+ | - | - | - | - |
154
+
155
+ ## Prioritized Features
156
+
157
+ <!-- Features ready for sprint planning -->
158
+
159
+ | Priority | Feature | Epic | Stories | Status |
160
+ |----------|---------|------|---------|--------|
161
+ | - | - | - | - | - |
162
+
163
+ ---
164
+
165
+ *Use `/ace:plan-epic` to add epics, `/ace:plan-feature` to break them into features*
166
+ ```
167
+
168
+ ### Step 7: Create STATE.md
169
+
170
+ Create `STATE.md` in the repository root:
171
+
172
+ ```markdown
173
+ # Project State
174
+
175
+ > Last updated: <timestamp>
176
+
177
+ ## Current Sprint
178
+
179
+ **Sprint:** None
180
+ **Goal:** N/A
181
+ **Status:** Not started
182
+
183
+ ## Active Work
184
+
185
+ <!-- Currently in-progress items -->
186
+
187
+ | Item | Type | Assignee | Status |
188
+ |------|------|----------|--------|
189
+ | - | - | - | - |
190
+
191
+ ## Decisions Log
192
+
193
+ <!-- Important decisions made during development -->
194
+
195
+ | Date | Decision | Context | Alternatives Considered |
196
+ |------|----------|---------|------------------------|
197
+ | - | - | - | - |
198
+
199
+ ## Blockers
200
+
201
+ <!-- Current blockers and their status -->
202
+
203
+ | Blocker | Impact | Owner | Status |
204
+ |---------|--------|-------|--------|
205
+ | - | - | - | - |
206
+
207
+ ## Context Notes
208
+
209
+ <!-- Important context for future sessions -->
210
+
211
+ ---
212
+
213
+ *Updated automatically by ACE commands*
214
+ ```
215
+
216
+ ### Step 8: GitHub Setup (if enabled)
217
+
218
+ If GitHub integration is enabled:
219
+
220
+ 1. Create labels:
221
+ ```bash
222
+ gh label create "ace:epic" --color "7057ff" --description "ACE Epic - large body of work"
223
+ gh label create "ace:feature" --color "0075ca" --description "ACE Feature - deliverable functionality"
224
+ gh label create "ace:story" --color "008672" --description "ACE Story - user-facing work item"
225
+ gh label create "ace:task" --color "d73a4a" --description "ACE Task - technical work item"
226
+ gh label create "ace:blocked" --color "b60205" --description "ACE Blocked - waiting on dependency"
227
+ gh label create "ace:sprint" --color "fbca04" --description "ACE Sprint - current sprint item"
228
+ ```
229
+
230
+ 2. Update config.json with GitHub settings
231
+
232
+ ### Step 9: Confirm Success
233
+
234
+ Output a summary:
235
+
236
+ ```
237
+ ✓ ACE initialized successfully!
238
+
239
+ Created:
240
+ - .ace/config.json
241
+ - .ace/backlog/
242
+ - .ace/sprints/
243
+ - .ace/research/
244
+ - PROJECT.md
245
+ - BACKLOG.md
246
+ - STATE.md
247
+
248
+ Next steps:
249
+ 1. Edit PROJECT.md to define your vision and goals
250
+ 2. Run /ace:plan-project to create your initial epics
251
+ 3. Run /ace:plan-epic to break epics into features
252
+ ```
253
+
254
+ </ace-init>
@@ -0,0 +1,79 @@
1
+ # /ace:plan-epic - Plan an Epic
2
+
3
+ Break down an epic into features and define acceptance criteria.
4
+
5
+ ## Usage
6
+
7
+ ```
8
+ /ace:plan-epic <epic-id>
9
+ /ace:plan-epic E1
10
+ ```
11
+
12
+ ### Arguments
13
+
14
+ - `epic-id` - The epic identifier (e.g., E1, E2)
15
+
16
+ ## Behavior
17
+
18
+ This command helps you detail an epic by:
19
+ - Defining all features within the epic
20
+ - Setting acceptance criteria
21
+ - Identifying dependencies between features
22
+ - Estimating relative complexity
23
+
24
+ ## Instructions for Claude
25
+
26
+ <ace-plan-epic>
27
+
28
+ ### Prerequisites
29
+
30
+ 1. Verify ACE is initialized
31
+ 2. Verify the epic exists in `.ace/backlog/`
32
+ 3. Read the epic file and understand context
33
+
34
+ ### Planning Flow
35
+
36
+ 1. **Review Epic Context**
37
+ - Read the epic definition
38
+ - Understand the user value
39
+ - Review any existing features
40
+
41
+ 2. **Feature Breakdown**
42
+ - Identify 3-8 features for this epic
43
+ - Each feature should be completable in 1-2 sprints
44
+ - Features should deliver demonstrable value
45
+
46
+ 3. **For Each Feature, Capture:**
47
+ - ID: E1-F1, E1-F2, etc.
48
+ - Name: Clear, action-oriented name
49
+ - Description: What this feature delivers
50
+ - User stories preview: High-level story count estimate
51
+ - Dependencies: Other features this depends on
52
+ - Acceptance criteria: How we know it's done
53
+
54
+ 4. **Create Feature Files**
55
+ - Save to `.ace/backlog/<epic-id>/F1-feature-name.md`
56
+
57
+ 5. **Update Epic File**
58
+ - Add features table
59
+ - Update status
60
+
61
+ 6. **GitHub Integration** (if enabled)
62
+ - Create feature issues linked to epic
63
+ - Add `ace:feature` label
64
+
65
+ ### Output
66
+
67
+ ```
68
+ ✓ Epic E1 planned!
69
+
70
+ Features:
71
+ E1-F1: <Feature Name>
72
+ E1-F2: <Feature Name>
73
+ ...
74
+
75
+ Next steps:
76
+ - Run /ace:plan-feature E1-F1 to break into stories
77
+ ```
78
+
79
+ </ace-plan-epic>
@@ -0,0 +1,78 @@
1
+ # /ace:plan-feature - Plan a Feature
2
+
3
+ Break down a feature into user stories ready for sprint planning.
4
+
5
+ ## Usage
6
+
7
+ ```
8
+ /ace:plan-feature <feature-id>
9
+ /ace:plan-feature E1-F1
10
+ ```
11
+
12
+ ### Arguments
13
+
14
+ - `feature-id` - The feature identifier (e.g., E1-F1)
15
+
16
+ ## Behavior
17
+
18
+ This command helps you detail a feature by:
19
+ - Defining user stories using the "As a... I want... So that..." format
20
+ - Setting story acceptance criteria
21
+ - Identifying technical considerations
22
+ - Preparing stories for sprint planning
23
+
24
+ ## Instructions for Claude
25
+
26
+ <ace-plan-feature>
27
+
28
+ ### Prerequisites
29
+
30
+ 1. Verify ACE is initialized
31
+ 2. Verify the feature exists
32
+ 3. Read feature and parent epic context
33
+
34
+ ### Planning Flow
35
+
36
+ 1. **Review Feature Context**
37
+ - Understand what this feature delivers
38
+ - Review acceptance criteria
39
+ - Understand dependencies
40
+
41
+ 2. **Story Breakdown**
42
+ - Create 2-5 user stories per feature
43
+ - Each story should be completable in 1-3 days
44
+ - Stories should be independently valuable
45
+
46
+ 3. **For Each Story, Capture:**
47
+ - ID: E1-F1-S1, etc.
48
+ - Title: Action-oriented title
49
+ - User Story: "As a [user], I want [goal], so that [benefit]"
50
+ - Acceptance Criteria: Testable conditions
51
+ - Technical Notes: Implementation considerations
52
+ - Estimate: Story points (1, 2, 3, 5, 8)
53
+
54
+ 4. **Create Story Files**
55
+ - Save to `.ace/backlog/<epic>/<feature>/S1-story-name.md`
56
+
57
+ 5. **GitHub Integration** (if enabled)
58
+ - Create story issues linked to feature
59
+ - Add `ace:story` label
60
+
61
+ ### Output
62
+
63
+ ```
64
+ ✓ Feature E1-F1 planned!
65
+
66
+ Stories:
67
+ E1-F1-S1: <Story Title> (3 pts)
68
+ E1-F1-S2: <Story Title> (2 pts)
69
+ ...
70
+
71
+ Total Points: X
72
+
73
+ Next steps:
74
+ - Run /ace:refine-story E1-F1-S1 to prepare for execution
75
+ - Add stories to sprint with /ace:sprint-plan
76
+ ```
77
+
78
+ </ace-plan-feature>
@@ -0,0 +1,205 @@
1
+ # /ace:plan-project - Plan Your Project
2
+
3
+ Collaboratively plan your project by defining epics, features, and high-level architecture.
4
+
5
+ ## Usage
6
+
7
+ ```
8
+ /ace:plan-project [project-description]
9
+ ```
10
+
11
+ ### Arguments
12
+
13
+ - `project-description` - Optional: A brief description of what you want to build
14
+
15
+ ## Behavior
16
+
17
+ This command guides you through a structured project planning session that produces:
18
+ - Defined epics (large bodies of work)
19
+ - Features within each epic
20
+ - Initial technical architecture considerations
21
+ - Prioritized backlog ready for sprint planning
22
+
23
+ ## Instructions for Claude
24
+
25
+ <ace-plan-project>
26
+
27
+ ### Prerequisites Check
28
+
29
+ 1. Verify ACE is initialized by checking for `.ace/config.json`
30
+ 2. If not initialized, prompt user to run `/ace:init` first
31
+ 3. Read current PROJECT.md and BACKLOG.md if they exist
32
+
33
+ ### Phase 1: Project Understanding
34
+
35
+ Start by understanding the project. Ask these questions conversationally (not all at once):
36
+
37
+ 1. **What are you building?**
38
+ - Get a clear understanding of the product/feature
39
+ - Clarify the target users
40
+ - Understand the core problem being solved
41
+
42
+ 2. **What does success look like?**
43
+ - Define measurable outcomes
44
+ - Identify key milestones
45
+
46
+ 3. **What are the constraints?**
47
+ - Timeline expectations
48
+ - Technical constraints (existing stack, integrations)
49
+ - Team/resource constraints
50
+
51
+ ### Phase 2: Epic Discovery
52
+
53
+ Based on the project understanding, collaboratively identify epics.
54
+
55
+ **Guide the user through epic discovery:**
56
+
57
+ ```
58
+ An epic is a large body of work that:
59
+ - Takes multiple sprints to complete
60
+ - Delivers significant user value when done
61
+ - Can be broken into 3-8 features
62
+
63
+ Let's identify the major epics for your project.
64
+ ```
65
+
66
+ For each epic, capture:
67
+ - **ID**: E1, E2, E3...
68
+ - **Name**: Clear, descriptive name
69
+ - **Description**: What this epic delivers
70
+ - **User Value**: Why this matters to users
71
+ - **Dependencies**: Other epics this depends on
72
+
73
+ Create epic files in `.ace/backlog/`:
74
+
75
+ ```markdown
76
+ <!-- .ace/backlog/E1-epic-name.md -->
77
+ # E1: Epic Name
78
+
79
+ ## Description
80
+ <What this epic delivers>
81
+
82
+ ## User Value
83
+ <Why this matters to users>
84
+
85
+ ## Dependencies
86
+ <Other epics this depends on, if any>
87
+
88
+ ## Features
89
+ <!-- Added by /ace:plan-epic -->
90
+ | ID | Feature | Status |
91
+ |----|---------|--------|
92
+ | - | - | - |
93
+
94
+ ## Acceptance Criteria
95
+ - [ ] <Criteria 1>
96
+ - [ ] <Criteria 2>
97
+
98
+ ## Status
99
+ - **State:** Draft
100
+ - **Priority:** <High/Medium/Low>
101
+ - **Created:** <timestamp>
102
+ ```
103
+
104
+ ### Phase 3: Feature Identification
105
+
106
+ For each epic, identify high-level features (don't go deep yet):
107
+
108
+ ```
109
+ A feature is a piece of deliverable functionality that:
110
+ - Can be completed in 1-2 sprints
111
+ - Provides standalone value
112
+ - Can be demonstrated to users
113
+ ```
114
+
115
+ Capture features briefly:
116
+ - **ID**: E1-F1, E1-F2...
117
+ - **Name**: Feature name
118
+ - **Epic**: Parent epic
119
+ - **Brief description**: One line
120
+
121
+ ### Phase 4: Priority & Sequencing
122
+
123
+ Help the user prioritize:
124
+
125
+ 1. **Identify MVP epics** - What's the minimum to launch?
126
+ 2. **Sequence epics** - What order makes sense?
127
+ 3. **Identify risks** - What's most uncertain?
128
+
129
+ Create a prioritized view in BACKLOG.md.
130
+
131
+ ### Phase 5: Update Project Files
132
+
133
+ Update the following files with gathered information:
134
+
135
+ **PROJECT.md** - Add/update:
136
+ - Vision section
137
+ - Goals section
138
+ - Success criteria
139
+
140
+ **BACKLOG.md** - Add:
141
+ - All epics in priority order
142
+ - Features identified for each epic
143
+
144
+ **STATE.md** - Add:
145
+ - Any decisions made during planning
146
+ - Context notes for future sessions
147
+
148
+ ### Phase 6: GitHub Integration (if enabled)
149
+
150
+ If GitHub is enabled in config:
151
+
152
+ 1. Create epic issues with `ace:epic` label:
153
+ ```bash
154
+ gh issue create --title "E1: Epic Name" --body "..." --label "ace:epic"
155
+ ```
156
+
157
+ 2. Create a project board or milestone (ask user preference)
158
+
159
+ ### Output Summary
160
+
161
+ After planning, output:
162
+
163
+ ```
164
+ ✓ Project planning complete!
165
+
166
+ Epics Created:
167
+ E1: <Epic Name> - <status>
168
+ E2: <Epic Name> - <status>
169
+ ...
170
+
171
+ Features Identified: <count>
172
+
173
+ Updated Files:
174
+ - PROJECT.md
175
+ - BACKLOG.md
176
+ - STATE.md
177
+ - .ace/backlog/E1-*.md
178
+ - .ace/backlog/E2-*.md
179
+
180
+ Recommended Next Steps:
181
+ 1. Review and refine PROJECT.md
182
+ 2. Run /ace:plan-epic E1 to detail your first epic
183
+ 3. Run /ace:plan-feature to break features into stories
184
+ ```
185
+
186
+ ### Planning Principles
187
+
188
+ Throughout the planning session, apply these principles:
189
+
190
+ 1. **Start broad, narrow later** - Don't over-detail early
191
+ 2. **User value focus** - Every epic should deliver user value
192
+ 3. **Vertical slices** - Prefer end-to-end features over horizontal layers
193
+ 4. **Dependencies minimize** - Reduce coupling between epics
194
+ 5. **Risk early** - Tackle uncertain/risky work first
195
+ 6. **Keep it agile** - Plans will change, that's okay
196
+
197
+ ### Conversation Style
198
+
199
+ - Be collaborative, not prescriptive
200
+ - Ask clarifying questions
201
+ - Offer suggestions but let user decide
202
+ - Summarize understanding before moving to next phase
203
+ - Keep the energy high - planning should be exciting!
204
+
205
+ </ace-plan-project>
@@ -0,0 +1,97 @@
1
+ # /ace:plan-story - Plan a Story
2
+
3
+ Create a new user story with detailed acceptance criteria and technical breakdown.
4
+
5
+ ## Usage
6
+
7
+ ```
8
+ /ace:plan-story <feature-id> "<story-title>"
9
+ /ace:plan-story E1-F1 "User can log in with email"
10
+ ```
11
+
12
+ ### Arguments
13
+
14
+ - `feature-id` - The parent feature identifier
15
+ - `story-title` - Title for the new story
16
+
17
+ ## Behavior
18
+
19
+ This command creates a new story with:
20
+ - User story format (As a... I want... So that...)
21
+ - Detailed acceptance criteria
22
+ - Technical implementation notes
23
+ - Task breakdown for execution
24
+
25
+ ## Instructions for Claude
26
+
27
+ <ace-plan-story>
28
+
29
+ ### Prerequisites
30
+
31
+ 1. Verify ACE is initialized
32
+ 2. Verify parent feature exists
33
+ 3. Determine next story ID
34
+
35
+ ### Planning Flow
36
+
37
+ 1. **Gather Story Details**
38
+ - Who is the user?
39
+ - What do they want to accomplish?
40
+ - What benefit does this provide?
41
+
42
+ 2. **Define Acceptance Criteria**
43
+ - Given/When/Then format preferred
44
+ - Should be testable
45
+ - Cover happy path and edge cases
46
+
47
+ 3. **Technical Breakdown**
48
+ - Identify files that need changes
49
+ - Note any new dependencies
50
+ - Consider testing approach
51
+
52
+ 4. **Create Story File**
53
+
54
+ ```markdown
55
+ # E1-F1-S1: Story Title
56
+
57
+ ## User Story
58
+
59
+ As a [type of user],
60
+ I want [goal/desire],
61
+ So that [benefit/value].
62
+
63
+ ## Acceptance Criteria
64
+
65
+ - [ ] Given [context], when [action], then [outcome]
66
+ - [ ] Given [context], when [action], then [outcome]
67
+ - [ ] Edge case: [description]
68
+
69
+ ## Technical Notes
70
+
71
+ ### Files to Modify
72
+ - `path/to/file.ts` - [what changes]
73
+
74
+ ### New Dependencies
75
+ - None
76
+
77
+ ### Testing Approach
78
+ - Unit tests for [components]
79
+ - Integration test for [flow]
80
+
81
+ ## Tasks
82
+
83
+ <!-- Added by /ace:refine-story -->
84
+
85
+ ## Metadata
86
+
87
+ - **Status:** Draft
88
+ - **Points:** [1-8]
89
+ - **Sprint:** None
90
+ - **Created:** <timestamp>
91
+ ```
92
+
93
+ 5. **GitHub Integration** (if enabled)
94
+ - Create issue with story template
95
+ - Link to parent feature issue
96
+
97
+ </ace-plan-story>