agile-context-engineering 0.2.1 → 0.3.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.
Files changed (51) hide show
  1. package/CHANGELOG.md +82 -0
  2. package/LICENSE +51 -51
  3. package/README.md +324 -319
  4. package/agents/ace-research-synthesizer.md +228 -228
  5. package/agents/ace-technical-application-architect.md +28 -0
  6. package/agents/ace-wiki-mapper.md +445 -334
  7. package/agile-context-engineering/src/ace-tools.test.js +1089 -1089
  8. package/agile-context-engineering/templates/_command.md +53 -53
  9. package/agile-context-engineering/templates/_workflow.xml +16 -16
  10. package/agile-context-engineering/templates/product/product-backlog.xml +231 -231
  11. package/agile-context-engineering/templates/product/story-integration-solution.xml +1 -0
  12. package/agile-context-engineering/templates/product/story-wiki.xml +4 -0
  13. package/agile-context-engineering/templates/wiki/coding-standards.xml +38 -0
  14. package/agile-context-engineering/templates/wiki/decizions.xml +115 -115
  15. package/agile-context-engineering/templates/wiki/guide.xml +137 -137
  16. package/agile-context-engineering/templates/wiki/module-discovery.xml +174 -174
  17. package/agile-context-engineering/templates/wiki/pattern.xml +159 -159
  18. package/agile-context-engineering/templates/wiki/system-architecture.xml +254 -254
  19. package/agile-context-engineering/templates/wiki/system-cross-cutting.xml +197 -197
  20. package/agile-context-engineering/templates/wiki/system.xml +381 -381
  21. package/agile-context-engineering/templates/wiki/walkthrough.xml +255 -0
  22. package/agile-context-engineering/templates/wiki/wiki-readme.xml +297 -276
  23. package/agile-context-engineering/utils/questioning.xml +110 -110
  24. package/agile-context-engineering/workflows/execute-story.xml +1219 -1145
  25. package/agile-context-engineering/workflows/help.xml +540 -540
  26. package/agile-context-engineering/workflows/init-coding-standards.xml +386 -386
  27. package/agile-context-engineering/workflows/map-story.xml +1046 -797
  28. package/agile-context-engineering/workflows/map-subsystem.xml +2 -1
  29. package/agile-context-engineering/workflows/map-walkthrough.xml +457 -0
  30. package/agile-context-engineering/workflows/plan-feature.xml +1495 -1495
  31. package/agile-context-engineering/workflows/plan-story.xml +36 -1
  32. package/agile-context-engineering/workflows/research-integration-solution.xml +1 -0
  33. package/agile-context-engineering/workflows/research-story-wiki.xml +2 -1
  34. package/agile-context-engineering/workflows/research-technical-solution.xml +1 -0
  35. package/agile-context-engineering/workflows/review-story.xml +281 -281
  36. package/agile-context-engineering/workflows/update.xml +238 -0
  37. package/bin/install.js +126 -7
  38. package/commands/ace/execute-story.md +1 -0
  39. package/commands/ace/help.md +93 -93
  40. package/commands/ace/init-coding-standards.md +83 -83
  41. package/commands/ace/map-story.md +165 -156
  42. package/commands/ace/map-subsystem.md +140 -138
  43. package/commands/ace/map-system.md +92 -92
  44. package/commands/ace/map-walkthrough.md +127 -0
  45. package/commands/ace/plan-feature.md +89 -89
  46. package/commands/ace/plan-story.md +15 -1
  47. package/commands/ace/review-story.md +109 -109
  48. package/commands/ace/update.md +56 -0
  49. package/hooks/ace-check-update.js +62 -0
  50. package/hooks/ace-statusline.js +89 -0
  51. package/package.json +5 -3
package/README.md CHANGED
@@ -1,319 +1,324 @@
1
- # ACE — Agile Context Engineering
2
-
3
- [![npm version](https://img.shields.io/npm/v/agile-context-engineering)](https://www.npmjs.com/package/agile-context-engineering)
4
- [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
5
- [![Node.js](https://img.shields.io/badge/node-%3E%3D16.7.0-brightgreen)](https://nodejs.org)
6
-
7
- **Spec-driven development for AI coding assistants.**
8
-
9
- ACE turns your AI coding assistant into a full agile team — product owner, architect, code reviewer, and more — working from crystal-clear specs instead of vague prompts. Every story gets deep research, multi-agent execution, automated code review, and living documentation that grows with your project.
10
-
11
- ---
12
-
13
- ## Why ACE?
14
-
15
- If you've been part of software development in any capacity in the last 10-15 years, you've probably heard of Agile. If so — ACE is for you. It brings the full agile workflow to AI-assisted development: structured planning, incremental delivery, and living documentation, all managed by specialized AI agents.
16
-
17
- If not, here's the TLDR — Agile breaks work down into manageable pieces:
18
-
19
- ```
20
- Product Vision The north star — what you're building and why
21
- └── Backlog Epics and features organized by priority
22
- └── Feature A deliverable capability (1-2 sprints)
23
- └── Story A user-facing work item with clear acceptance criteria (1-3 days)
24
- ```
25
-
26
- You start with a vision, break it into a backlog of epics and features, decompose features into stories, then execute stories one by one. Each story is small enough to reason about clearly, but connected to the bigger picture through the hierarchy above it.
27
-
28
- **What makes ACE different:**
29
- - **Spec-driven** — Stories have crystal-clear acceptance criteria with zero assumptions. Every story goes through 5 research passes before a single line of code is written
30
- - **Multi-agent** — 8 specialized agents (Product Owner, Architect, Code Reviewer, Wiki Mapper, etc.) work in parallel. For larger stories, ACE leverages Claude Code's [Agent Teams](https://code.claude.com/docs/en/agent-teams) — unlike regular subagents that silently do work and report back, Agent Teams are fully independent Claude Code sessions that share a task list, message each other directly, coordinate on shared interfaces, and self-organize. ACE decomposes the technical solution into independent work streams, assigns each to a teammate with owned files, and adds a dedicated reviewer teammate that monitors code quality in real-time. The lead coordinates, approves each teammate's plan before they start implementing, and integrates the results
31
- - **GitHub Project management** — On top of generating local artifacts, ACE can optionally sync with GitHub — creating issues for epics, features, and stories, tracking status on project boards, and updating labels as work progresses through the pipeline
32
- - **Living wiki** — ACE maps all your code into a project wiki and updates it after every story, so the AI always has architectural overview context when planning new work
33
- - **Purpose-built CLI tooling** — A dedicated CLI (`ace-tools`) offloads infrastructure work outside the AI's context window — environment detection, markdown parsing, path computation, model resolution, state updates, and GitHub GraphQL operations all return structured JSON in a single call, saving tokens and avoiding shell escaping issues
34
-
35
- ---
36
-
37
- ## How It Works
38
-
39
- ### Getting Started — `/ace:help`
40
-
41
- Run `/ace:help` at any point to see what's set up and what to do next. It checks for six foundation documents: **product vision**, **system architecture**, **system structure**, **coding standards**, **testing framework**, and **settings**. These documents are generated by the foundation commands (`plan-product-vision`, `map-system`, `init-coding-standards`) and are used by all subsequent planning and execution commands to stay aligned with your project's architecture, conventions, and goals.
42
-
43
- ```mermaid
44
- flowchart LR
45
- H["ace:help"] --> checks{{"checks for"}}
46
- checks --> files["vision · architecture<br/>structure · standards<br/>testing · settings"]
47
- files --> D["Dashboard +<br/>Next Command"]
48
-
49
- style H fill:#4A90D9,color:#fff,font-size:12px
50
- style checks fill:none,stroke:none,color:#888,font-size:11px
51
- style files fill:#f5f5f5,stroke:#ccc,font-size:11px
52
- style D fill:#2ECC71,color:#fff,font-size:12px
53
- ```
54
-
55
- ### Full Lifecycle
56
-
57
- ```mermaid
58
- flowchart TD
59
- V["Vision"] -->|"produces<br/>product-vision.md"| B["Backlog"]
60
- B -->|"produces<br/>backlog + GitHub Issues"| F["Feature"]
61
- F -->|"produces<br/>feature spec + stories"| S["Story"]
62
- S -->|"dispatches 4 parallel agents"| R1
63
-
64
- subgraph Research["Story Research — 5 passes"]
65
- direction LR
66
- R1["1. Deep<br/>Questioning"] --> R2["2. Wiki<br/>Research"]
67
- R2 --> R3["3. External<br/>Analysis"]
68
- R3 --> R4["4. Integration<br/>Analysis"]
69
- R4 --> R5["5. Technical<br/>Solution"]
70
- end
71
-
72
- R5 -->|"produces<br/>AC + technical solution"| E["Execute"]
73
- E -->|"produces<br/>source code + state"| RV["Review"]
74
- RV -->|"produces<br/>review report"| W["Wiki"]
75
-
76
- V -.- c1["plan-product-vision<br/>+ optional context docs"]
77
- B -.- c2["plan-backlog<br/>+ reads product-vision.md"]
78
- F -.- c3["plan-feature<br/>+ reads backlog"]
79
- S -.- c4["plan-story<br/>+ reads feature + wiki"]
80
- E -.- c5["execute-story<br/>+ reads AC + solution + standards"]
81
- RV -.- c6["review-story<br/>+ reads standards"]
82
- W -.- c7["map-story<br/>+ reads git diff"]
83
-
84
- style V fill:#4A90D9,color:#fff
85
- style B fill:#4A90D9,color:#fff
86
- style F fill:#4A90D9,color:#fff
87
- style S fill:#7B68EE,color:#fff
88
- style R1 fill:#9B85FF,color:#fff
89
- style R2 fill:#9B85FF,color:#fff
90
- style R3 fill:#9B85FF,color:#fff
91
- style R4 fill:#9B85FF,color:#fff
92
- style R5 fill:#9B85FF,color:#fff
93
- style Research fill:#f0ecff,stroke:#9B85FF
94
- style E fill:#2ECC71,color:#fff
95
- style RV fill:#E67E22,color:#fff
96
- style W fill:#1ABC9C,color:#fff
97
- style c1 fill:none,stroke:none,color:#666
98
- style c2 fill:none,stroke:none,color:#666
99
- style c3 fill:none,stroke:none,color:#666
100
- style c4 fill:none,stroke:none,color:#666
101
- style c5 fill:none,stroke:none,color:#666
102
- style c6 fill:none,stroke:none,color:#666
103
- style c7 fill:none,stroke:none,color:#666
104
- ```
105
-
106
- ---
107
-
108
- ## Installation
109
-
110
- ACE supports [Claude Code](https://docs.anthropic.com/en/docs/claude-code) and [Crush](https://github.com/crushai/crush) (formerly [OpenCode](https://github.com/opencode-ai/opencode)) as runtimes.
111
-
112
- > **Note:** ACE has been primarily developed and tested with Claude Code. Crush support is functional (the installer transforms all paths automatically), but has not been thoroughly tested end-to-end. If you encounter issues running ACE in Crush, please [open an issue](https://github.com/agile-context-engineering/ace/issues).
113
-
114
- ```bash
115
- npx agile-context-engineering
116
- ```
117
-
118
- This launches an interactive installer. You can also use flags for non-interactive install:
119
-
120
- ```bash
121
- npx agile-context-engineering --claude --global # Claude Code, global install
122
- npx agile-context-engineering --claude --local # Claude Code, local (project-only)
123
- npx agile-context-engineering --opencode --global # Crush (formerly OpenCode), global install
124
- npx agile-context-engineering --all --global # All runtimes, global install
125
- ```
126
-
127
- ### Prerequisites
128
-
129
- | Requirement | Purpose |
130
- |---|---|
131
- | [Node.js](https://nodejs.org) >= 16.7.0 | Runs the installer and CLI tools |
132
- | [Claude Code](https://docs.anthropic.com/en/docs/claude-code) or [Crush](https://github.com/crushai/crush) / [OpenCode](https://github.com/opencode-ai/opencode) | AI coding assistant runtime |
133
- | [GitHub CLI (`gh`)](https://cli.github.com/) | Required for GitHub issue tracking and project board integration |
134
-
135
- ---
136
-
137
- ## Quick Start
138
-
139
- Run `/ace:help` first. It will show you which foundation documents are missing and suggest the exact command to generate each one. Follow its suggestions until the dashboard shows everything complete.
140
-
141
- Once the dashboard is fully green, you're ready to build:
142
-
143
- ```
144
- /ace:plan-backlog # Create epics and features from your vision
145
- /ace:plan-feature # Break a feature into stories
146
- /ace:plan-story # Deep-plan a story (triggers 5 research passes)
147
- /ace:execute-story # Execute with multi-agent teams
148
- ```
149
-
150
- ---
151
-
152
-
153
- ## Key Features
154
-
155
- ### Agent Teams
156
-
157
- ACE can leverage Claude Code's [Agent Teams](https://code.claude.com/docs/en/agent-teams) for story execution. As opposed to regular subagents — which silently do work in isolation and report results back — Agent Teams are fully independent Claude Code sessions that:
158
-
159
- - **Share a task list** — teammates claim tasks, mark them complete, and blocked tasks auto-unblock when dependencies resolve
160
- - **Message each other directly** — teammates coordinate on shared interfaces, ask questions, and challenge each other's approaches without going through the lead
161
- - **Each have their own context window**no shared context limit; each teammate gets a fresh 200k window
162
- - **Require plan approval** — the lead reviews and approves each teammate's implementation plan before they start writing code
163
- - **Self-organize** — after finishing a task, teammates pick up the next available one on their own
164
-
165
- ACE orchestrates this by decomposing the technical solution into independent work streams (e.g., "state-layer", "ui-layer", "integration", "tests"), assigning each to a teammate with explicitly owned files (no overlap), and spawning a dedicated reviewer teammate that watches for anti-patterns, coding standards violations, and dead code as other teammates work.
166
-
167
- ### 8 Specialized Agents
168
-
169
- | Agent | Role |
170
- |---|---|
171
- | **Product Owner** | Requirements gathering, decomposition, prioritization, estimation, backlog management |
172
- | **Technical Architect** | Solution design, architecture decisions, Clean Architecture and SOLID enforcement |
173
- | **Code Discovery Analyst** | Deep repository analysis — extracts patterns, algorithms, data models, architectural decisions |
174
- | **Code Integration Analyst** | Analyzes how new features integrate while maintaining architecture and extensibility |
175
- | **Code Reviewer** | Completeness, correctness, code quality, anti-pattern detection, tech debt discovery |
176
- | **Wiki Mapper** | Writes structured wiki documents for the engineering knowledge base |
177
- | **Project Researcher** | Researches domain ecosystem to inform planning phases |
178
- | **Research Synthesizer** | Synthesizes outputs from parallel research agents into coherent summaries |
179
-
180
- ### ACE CLI Tooling (`ace-tools`)
181
-
182
- The AI doesn't do everything itself. ACE offloads infrastructure-heavy operations to a purpose-built Node.js CLI, keeping workflows fast and token-efficient:
183
-
184
- - **Compound init commands** — Each workflow starts with a single `init` call that gathers 15-20 environment facts: brownfield detection, model resolution, story parsing, metadata extraction, path computation, and file existence checks — all returned as structured JSON
185
- - **Atomic state updates** — One command updates the story file, feature file, and product backlog together, with cascading logic that auto-promotes feature status when all stories complete
186
- - **GitHub operations** Issue creation, type assignment, project board placement, field updates, and parent linking happen in one call. Markdown bodies use `--body-file` to avoid shell escaping issues with code blocks and backticks
187
- - **Bulk sync** — Pushes local story/feature content to GitHub issues and syncs project board status in a single command
188
- - **Markdown parsing** — Story headers, metadata fields, acceptance criteria, requirements sections, and wiki references are extracted and categorized outside the context window
189
- - **Environment detection** — Brownfield detection walks the directory tree checking 10+ code file extensions and package files, reused across every workflow
190
-
191
- ### GitHub Integration
192
-
193
- ACE works fully offline with local artifacts. Optionally, you can enable GitHub integration to sync epics, features, and stories as GitHub issues — with automatic status tracking, labels, and project board updates as work progresses through the pipeline.
194
-
195
- Requires the [GitHub CLI (`gh`)](https://cli.github.com/) to be installed and authenticated.
196
-
197
-
198
- ## Project Structure
199
-
200
- ACE creates two directories in your project:
201
-
202
- **`.ace/`** Internal artifacts that ACE needs to operate: configuration, feature specs, story specs, research outputs, and supporting documents. This is ACE's working directory and can be safely `.gitignore`d if you prefer to keep your repo clean.
203
-
204
- **`.docs/`** Project-facing documents: the living wiki, product vision, and coding standards. These are meant to be committed — they provide valuable context for your team and for the AI across sessions.
205
-
206
- ```
207
- .ace/
208
- ├── config.json # ACE configuration (GitHub org, project, settings)
209
- ├── backlog/ # Epics and features
210
- │ ├── E1-epic-name.md
211
- │ └── E1/
212
- │ └── F1-feature-name.md
213
- └── stories/ # Story specs and research artifacts
214
-
215
- .docs/
216
- ├── wiki/ # Living engineering knowledge base
217
- │ ├── system-wide/ # System-level architecture docs
218
- │ └── subsystems/ # Per-subsystem documentation
219
- ├── product-vision.md # Product vision document
220
- └── coding-standards.md # Project coding standards
221
- ```
222
-
223
- ## Living Wiki
224
-
225
- Every completed story triggers a wiki update. The wiki is the AI's institutional memory of your codebase — it's what allows agents to make informed decisions about where to put code, which patterns to follow, and how to wire new components into existing infrastructure.
226
-
227
- **System-wide docs** (`.docs/wiki/system-wide/`) provide the 30,000-foot view:
228
-
229
- | Document | What it captures |
230
- |---|---|
231
- | **system-structure.md** | Physical directory layout, every subsystem and its purpose, where each code file lives and what it does |
232
- | **system-architecture.md** | C4 diagrams, subsystem responsibility matrix, core data flows, tech stack |
233
- | **testing-framework.md** | Test frameworks, patterns, mocking strategies, coverage approach |
234
- | **coding-standards.md** | Language and framework conventions |
235
- | **tech-debt-index.md** | All known tech debt across subsystems, tracked by severity |
236
-
237
- **Subsystem docs** (`.docs/wiki/subsystems/[name]/`) go deep into each subsystem:
238
-
239
- | Folder | What it documents | How the AI uses it |
240
- |---|---|---|
241
- | **structure.md** | File tree, directory purposes, key file locations, where to add new code | Knows exactly where every file is and what it does |
242
- | **architecture.md** | Architectural pattern (Clean/N-Tier/CQRS), C4 L3 components, internal flows, dependency inventory | Understands the subsystem's internal design before making changes |
243
- | **systems/** | Domain components file trees, entry points, data flows, sequence diagrams, state management, error propagation | Understands what exists before adding new code |
244
- | **patterns/** | Reusable structural templates — structure diagrams, current implementations, how to apply | Follows existing patterns instead of inventing new ones |
245
- | **cross-cutting/** | Shared infrastructure DI containers, event systems, factories, registrations | Knows exactly where to register new components |
246
- | **guides/** | Step-by-step recipes for common tasks (e.g., "add a new API endpoint") | Follows proven procedures instead of guessing |
247
- | **decisions/** | Architecture Decision Records why choices were made, alternatives rejected | Respects past decisions, doesn't re-litigate them |
248
-
249
- When planning a new story, the wiki research pass scans all relevant docs and attaches them to the story. When executing, the agent loads those references as context. After implementation, `map-story` updates the wiki with what changed so the next story benefits from everything learned.
250
-
251
- ## Commands
252
-
253
- ### Getting Started
254
-
255
- | Command | Description |
256
- |---|---|
257
- | `/ace:help` | Check project initialization status and suggest next steps |
258
-
259
- ### Foundation (one-time setup)
260
-
261
- | Command | Description |
262
- |---|---|
263
- | `/ace:plan-product-vision` | Create or update the product vision through architecture-aware questioning |
264
- | `/ace:init-coding-standards` | Generate a tailored `coding-standards.md` through codebase detection and user interview |
265
- | `/ace:map-system` | Map system-wide structure, architecture, and testing framework into `.docs/wiki/system-wide/` |
266
- | `/ace:map-subsystem` | Map a subsystem's structure, architecture, and knowledge docs into `.docs/wiki/subsystems/[name]/` |
267
-
268
- ### Planning
269
-
270
- | Command | Description |
271
- |---|---|
272
- | `/ace:plan-backlog` | Create or refine the product backlog through vision-aware questioning and guided epic/feature planning |
273
- | `/ace:plan-feature` | Plan a feature through backlog-aware questioning, story decomposition, and guided specification |
274
-
275
- ### Story Refinement
276
-
277
- | Command | Description |
278
- |---|---|
279
- | `/ace:plan-story` | Plan a story with crystal-clear acceptance criteria, then auto-dispatch 5 research passes |
280
-
281
- `/ace:plan-story` is where ACE really shines. After establishing acceptance criteria through deep questioning, it automatically dispatches up to 4 parallel research agents:
282
-
283
- 1. **Deep questioning** — Collaborative refinement to eliminate all assumptions from acceptance criteria
284
- 2. **Wiki research** Searches the living wiki for relevant architectural context *(auto-dispatched)*
285
- 3. **External analysis** — Studies similar implementations in reference repositories *(optional, auto-dispatched)*
286
- 4. **Integration analysis** Analyzes how the story integrates into the existing codebase *(auto-dispatched)*
287
- 5. **Technical solution** — Designs the architecture, patterns, algorithms, and implementation plan *(auto-dispatched)*
288
-
289
- Each research pass can also be run standalone:
290
-
291
- | Command | Description |
292
- |---|---|
293
- | `/ace:research-story-wiki` | Research and curate wiki references relevant to a story |
294
- | `/ace:research-external-solution` | Code-level analysis of similar implementations in external repositories |
295
- | `/ace:research-integration-solution` | System integration analysis for fitting a story into the existing codebase |
296
- | `/ace:research-technical-solution` | Technical solution design — architecture, patterns, sequence diagrams, implementation plan |
297
-
298
- ### Execution & Review
299
-
300
- | Command | Description |
301
- |---|---|
302
- | `/ace:execute-story` | Execute a fully-planned story — implements via solo or agent teams, runs code review, updates state, triggers wiki mapping |
303
- | `/ace:review-story` | Standalone code review — artifact verification, anti-pattern detection, coding standards enforcement, tech debt discovery |
304
-
305
- ### Documentation
306
-
307
- | Command | Description |
308
- |---|---|
309
- | `/ace:map-story` | Update living knowledge docs after story implementation or for existing undocumented code |
310
-
311
- ---
312
-
313
- ## Acknowledgements
314
-
315
- Portions of this project were adapted from [GSD (Get Shit Done)](https://github.com/coleam00/get-shit-done) by Lex Christopherson, licensed under the MIT License.
316
-
317
- ## License
318
-
319
- [MIT](LICENSE)
1
+ # ACE — Agile Context Engineering
2
+
3
+ [![npm version](https://img.shields.io/npm/v/agile-context-engineering)](https://www.npmjs.com/package/agile-context-engineering)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
5
+ [![Node.js](https://img.shields.io/badge/node-%3E%3D16.7.0-brightgreen)](https://nodejs.org)
6
+
7
+ **Spec-driven development for AI coding assistants.**
8
+
9
+ ACE turns your AI coding assistant into a full agile team — product owner, architect, code reviewer, and more — working from crystal-clear specs instead of vague prompts. Every story gets deep research, multi-agent execution, automated code review, and living documentation that grows with your project.
10
+
11
+ ---
12
+
13
+ ## Why ACE?
14
+
15
+ If you've been part of software development in any capacity in the last 10-15 years, you've probably heard of Agile. If so — ACE is for you. It brings the full agile workflow to AI-assisted development: structured planning, incremental delivery, and living documentation, all managed by specialized AI agents.
16
+
17
+ If not, here's the TLDR — Agile breaks work down into manageable pieces:
18
+
19
+ ```
20
+ Product Vision The north star — what you're building and why
21
+ └── Backlog Epics and features organized by priority
22
+ └── Feature A deliverable capability (1-2 sprints)
23
+ └── Story A user-facing work item with clear acceptance criteria (1-3 days)
24
+ ```
25
+
26
+ You start with a vision, break it into a backlog of epics and features, decompose features into stories, then execute stories one by one. Each story is small enough to reason about clearly, but connected to the bigger picture through the hierarchy above it.
27
+
28
+ **What makes ACE different:**
29
+ - **Spec-driven** — Stories have crystal-clear acceptance criteria with zero assumptions. Every story goes through 5 research passes before a single line of code is written
30
+ - **Multi-agent** — 8 specialized agents (Product Owner, Architect, Code Reviewer, Wiki Mapper, etc.) work in parallel. For larger stories, ACE leverages Claude Code's [Agent Teams](https://code.claude.com/docs/en/agent-teams) — unlike regular subagents that silently do work and report back, Agent Teams are fully independent Claude Code sessions that share a task list, message each other directly, coordinate on shared interfaces, and self-organize. ACE decomposes the technical solution into independent work streams, assigns each to a teammate with owned files, and adds a dedicated reviewer teammate that monitors code quality in real-time. The lead coordinates, approves each teammate's plan before they start implementing, and integrates the results
31
+ - **GitHub Project management** — On top of generating local artifacts, ACE can optionally sync with GitHub — creating issues for epics, features, and stories, tracking status on project boards, and updating labels as work progresses through the pipeline
32
+ - **Living wiki** — ACE maps all your code into a project wiki and updates it after every story, so the AI always has architectural overview context when planning new work
33
+ - **Purpose-built CLI tooling** — A dedicated CLI (`ace-tools`) offloads infrastructure work outside the AI's context window — environment detection, markdown parsing, path computation, model resolution, state updates, and GitHub GraphQL operations all return structured JSON in a single call, saving tokens and avoiding shell escaping issues
34
+
35
+ ---
36
+
37
+ ## How It Works
38
+
39
+ ### Getting Started — `/ace:help`
40
+
41
+ Run `/ace:help` at any point to see what's set up and what to do next. It checks for six foundation documents: **product vision**, **system architecture**, **system structure**, **coding standards**, **testing framework**, and **settings**. These documents are generated by the foundation commands (`plan-product-vision`, `map-system`, `init-coding-standards`) and are used by all subsequent planning and execution commands to stay aligned with your project's architecture, conventions, and goals.
42
+
43
+ ```mermaid
44
+ flowchart LR
45
+ H["ace:help"] --> checks{{"checks for"}}
46
+ checks --> files["vision · architecture<br/>structure · standards<br/>testing · settings"]
47
+ files --> D["Dashboard +<br/>Next Command"]
48
+
49
+ style H fill:#4A90D9,color:#fff,font-size:12px
50
+ style checks fill:none,stroke:none,color:#888,font-size:11px
51
+ style files fill:#f5f5f5,stroke:#ccc,font-size:11px
52
+ style D fill:#2ECC71,color:#fff,font-size:12px
53
+ ```
54
+
55
+ ### Full Lifecycle
56
+
57
+ ```mermaid
58
+ flowchart TD
59
+ V["Vision"] -->|"produces<br/>product-vision.md"| B["Backlog"]
60
+ B -->|"produces<br/>backlog + GitHub Issues"| F["Feature"]
61
+ F -->|"produces<br/>feature spec + stories"| S["Story"]
62
+ S -->|"dispatches 4 parallel agents"| R1
63
+
64
+ subgraph Research["Story Research — 5 passes"]
65
+ direction LR
66
+ R1["1. Deep<br/>Questioning"] --> R2["2. Wiki<br/>Research"]
67
+ R2 --> R3["3. External<br/>Analysis"]
68
+ R3 --> R4["4. Integration<br/>Analysis"]
69
+ R4 --> R5["5. Technical<br/>Solution"]
70
+ end
71
+
72
+ R5 -->|"produces<br/>AC + technical solution"| E["Execute"]
73
+ E -->|"produces<br/>source code + state"| RV["Review"]
74
+ RV -->|"produces<br/>review report"| W["Wiki"]
75
+
76
+ V -.- c1["plan-product-vision<br/>+ optional context docs"]
77
+ B -.- c2["plan-backlog<br/>+ reads product-vision.md"]
78
+ F -.- c3["plan-feature<br/>+ reads backlog"]
79
+ S -.- c4["plan-story<br/>+ reads feature + wiki"]
80
+ E -.- c5["execute-story<br/>+ reads AC + solution + standards"]
81
+ RV -.- c6["review-story<br/>+ reads standards"]
82
+ W -.- c7["map-story<br/>+ reads git diff"]
83
+
84
+ style V fill:#4A90D9,color:#fff
85
+ style B fill:#4A90D9,color:#fff
86
+ style F fill:#4A90D9,color:#fff
87
+ style S fill:#7B68EE,color:#fff
88
+ style R1 fill:#9B85FF,color:#fff
89
+ style R2 fill:#9B85FF,color:#fff
90
+ style R3 fill:#9B85FF,color:#fff
91
+ style R4 fill:#9B85FF,color:#fff
92
+ style R5 fill:#9B85FF,color:#fff
93
+ style Research fill:#f0ecff,stroke:#9B85FF
94
+ style E fill:#2ECC71,color:#fff
95
+ style RV fill:#E67E22,color:#fff
96
+ style W fill:#1ABC9C,color:#fff
97
+ style c1 fill:none,stroke:none,color:#666
98
+ style c2 fill:none,stroke:none,color:#666
99
+ style c3 fill:none,stroke:none,color:#666
100
+ style c4 fill:none,stroke:none,color:#666
101
+ style c5 fill:none,stroke:none,color:#666
102
+ style c6 fill:none,stroke:none,color:#666
103
+ style c7 fill:none,stroke:none,color:#666
104
+ ```
105
+
106
+ ---
107
+
108
+ ## Installation
109
+
110
+ ACE supports [Claude Code](https://docs.anthropic.com/en/docs/claude-code) and [Crush](https://github.com/crushai/crush) (formerly [OpenCode](https://github.com/opencode-ai/opencode)) as runtimes.
111
+
112
+ > **Note:** ACE has been primarily developed and tested with Claude Code. Crush support is functional (the installer transforms all paths automatically), but has not been thoroughly tested end-to-end. If you encounter issues running ACE in Crush, please [open an issue](https://github.com/agile-context-engineering/ace/issues).
113
+
114
+ ```bash
115
+ npx agile-context-engineering
116
+ ```
117
+
118
+ This launches an interactive installer. You can also use flags for non-interactive install:
119
+
120
+ ```bash
121
+ npx agile-context-engineering --claude --global # Claude Code, global install
122
+ npx agile-context-engineering --claude --local # Claude Code, local (project-only)
123
+ npx agile-context-engineering --opencode --global # Crush (formerly OpenCode), global install
124
+ npx agile-context-engineering --all --global # All runtimes, global install
125
+ ```
126
+
127
+ ### Updating
128
+
129
+ When a new version is available, your status bar will show a yellow `/ace:update` indicator. Run the `/ace:update` command inside Claude Code to update — it detects your install type (global/local, Claude/Crush) automatically and runs the correct installer.
130
+
131
+ ### Prerequisites
132
+
133
+ | Requirement | Purpose |
134
+ |---|---|
135
+ | [Node.js](https://nodejs.org) >= 16.7.0 | Runs the installer and CLI tools |
136
+ | [Claude Code](https://docs.anthropic.com/en/docs/claude-code) or [Crush](https://github.com/crushai/crush) / [OpenCode](https://github.com/opencode-ai/opencode) | AI coding assistant runtime |
137
+ | [GitHub CLI (`gh`)](https://cli.github.com/) | Required for GitHub issue tracking and project board integration |
138
+
139
+ ---
140
+
141
+ ## Quick Start
142
+
143
+ Run `/ace:help` first. It will show you which foundation documents are missing and suggest the exact command to generate each one. Follow its suggestions until the dashboard shows everything complete.
144
+
145
+ Once the dashboard is fully green, you're ready to build:
146
+
147
+ ```
148
+ /ace:plan-backlog # Create epics and features from your vision
149
+ /ace:plan-feature # Break a feature into stories
150
+ /ace:plan-story # Deep-plan a story (triggers 5 research passes)
151
+ /ace:execute-story # Execute with multi-agent teams
152
+ ```
153
+
154
+ ---
155
+
156
+
157
+ ## Key Features
158
+
159
+ ### Agent Teams
160
+
161
+ ACE can leverage Claude Code's [Agent Teams](https://code.claude.com/docs/en/agent-teams) for story execution. As opposed to regular subagents which silently do work in isolation and report results back — Agent Teams are fully independent Claude Code sessions that:
162
+
163
+ - **Share a task list** — teammates claim tasks, mark them complete, and blocked tasks auto-unblock when dependencies resolve
164
+ - **Message each other directly** — teammates coordinate on shared interfaces, ask questions, and challenge each other's approaches without going through the lead
165
+ - **Each have their own context window** no shared context limit; each teammate gets a fresh 200k window
166
+ - **Require plan approval** — the lead reviews and approves each teammate's implementation plan before they start writing code
167
+ - **Self-organize** after finishing a task, teammates pick up the next available one on their own
168
+
169
+ ACE orchestrates this by decomposing the technical solution into independent work streams (e.g., "state-layer", "ui-layer", "integration", "tests"), assigning each to a teammate with explicitly owned files (no overlap), and spawning a dedicated reviewer teammate that watches for anti-patterns, coding standards violations, and dead code as other teammates work.
170
+
171
+ ### 8 Specialized Agents
172
+
173
+ | Agent | Role |
174
+ |---|---|
175
+ | **Product Owner** | Requirements gathering, decomposition, prioritization, estimation, backlog management |
176
+ | **Technical Architect** | Solution design, architecture decisions, Clean Architecture and SOLID enforcement |
177
+ | **Code Discovery Analyst** | Deep repository analysis extracts patterns, algorithms, data models, architectural decisions |
178
+ | **Code Integration Analyst** | Analyzes how new features integrate while maintaining architecture and extensibility |
179
+ | **Code Reviewer** | Completeness, correctness, code quality, anti-pattern detection, tech debt discovery |
180
+ | **Wiki Mapper** | Writes structured wiki documents for the engineering knowledge base |
181
+ | **Project Researcher** | Researches domain ecosystem to inform planning phases |
182
+ | **Research Synthesizer** | Synthesizes outputs from parallel research agents into coherent summaries |
183
+
184
+ ### ACE CLI Tooling (`ace-tools`)
185
+
186
+ The AI doesn't do everything itself. ACE offloads infrastructure-heavy operations to a purpose-built Node.js CLI, keeping workflows fast and token-efficient:
187
+
188
+ - **Compound init commands** — Each workflow starts with a single `init` call that gathers 15-20 environment facts: brownfield detection, model resolution, story parsing, metadata extraction, path computation, and file existence checks all returned as structured JSON
189
+ - **Atomic state updates** — One command updates the story file, feature file, and product backlog together, with cascading logic that auto-promotes feature status when all stories complete
190
+ - **GitHub operations** — Issue creation, type assignment, project board placement, field updates, and parent linking happen in one call. Markdown bodies use `--body-file` to avoid shell escaping issues with code blocks and backticks
191
+ - **Bulk sync** — Pushes local story/feature content to GitHub issues and syncs project board status in a single command
192
+ - **Markdown parsing** — Story headers, metadata fields, acceptance criteria, requirements sections, and wiki references are extracted and categorized outside the context window
193
+ - **Environment detection** Brownfield detection walks the directory tree checking 10+ code file extensions and package files, reused across every workflow
194
+
195
+ ### GitHub Integration
196
+
197
+ ACE works fully offline with local artifacts. Optionally, you can enable GitHub integration to sync epics, features, and stories as GitHub issues — with automatic status tracking, labels, and project board updates as work progresses through the pipeline.
198
+
199
+ Requires the [GitHub CLI (`gh`)](https://cli.github.com/) to be installed and authenticated.
200
+
201
+
202
+ ## Project Structure
203
+
204
+ ACE creates two directories in your project:
205
+
206
+ **`.ace/`** — Internal artifacts that ACE needs to operate: configuration, feature specs, story specs, research outputs, and supporting documents. This is ACE's working directory and can be safely `.gitignore`d if you prefer to keep your repo clean.
207
+
208
+ **`.docs/`** Project-facing documents: the living wiki, product vision, and coding standards. These are meant to be committed — they provide valuable context for your team and for the AI across sessions.
209
+
210
+ ```
211
+ .ace/
212
+ ├── config.json # ACE configuration (GitHub org, project, settings)
213
+ ├── backlog/ # Epics and features
214
+ │ ├── E1-epic-name.md
215
+ │ └── E1/
216
+ │ └── F1-feature-name.md
217
+ └── stories/ # Story specs and research artifacts
218
+
219
+ .docs/
220
+ ├── wiki/ # Living engineering knowledge base
221
+ │ ├── system-wide/ # System-level architecture docs
222
+ │ └── subsystems/ # Per-subsystem documentation
223
+ ├── product-vision.md # Product vision document
224
+ └── coding-standards.md # Project coding standards
225
+ ```
226
+
227
+ ## Living Wiki
228
+
229
+ Every completed story triggers a wiki update. The wiki is the AI's institutional memory of your codebase — it's what allows agents to make informed decisions about where to put code, which patterns to follow, and how to wire new components into existing infrastructure.
230
+
231
+ **System-wide docs** (`.docs/wiki/system-wide/`) provide the 30,000-foot view:
232
+
233
+ | Document | What it captures |
234
+ |---|---|
235
+ | **system-structure.md** | Physical directory layout, every subsystem and its purpose, where each code file lives and what it does |
236
+ | **system-architecture.md** | C4 diagrams, subsystem responsibility matrix, core data flows, tech stack |
237
+ | **testing-framework.md** | Test frameworks, patterns, mocking strategies, coverage approach |
238
+ | **coding-standards.md** | Language and framework conventions |
239
+ | **tech-debt-index.md** | All known tech debt across subsystems, tracked by severity |
240
+
241
+ **Subsystem docs** (`.docs/wiki/subsystems/[name]/`) go deep into each subsystem:
242
+
243
+ | Folder | What it documents | How the AI uses it |
244
+ |---|---|---|
245
+ | **structure.md** | File tree, directory purposes, key file locations, where to add new code | Knows exactly where every file is and what it does |
246
+ | **architecture.md** | Architectural pattern (Clean/N-Tier/CQRS), C4 L3 components, internal flows, dependency inventory | Understands the subsystem's internal design before making changes |
247
+ | **systems/** | Domain componentsfile trees, entry points, data flows, sequence diagrams, state management, error propagation | Understands what exists before adding new code |
248
+ | **patterns/** | Reusable structural templates — structure diagrams, current implementations, how to apply | Follows existing patterns instead of inventing new ones |
249
+ | **cross-cutting/** | Shared infrastructure DI containers, event systems, factories, registrations | Knows exactly where to register new components |
250
+ | **guides/** | Step-by-step recipes for common tasks (e.g., "add a new API endpoint") | Follows proven procedures instead of guessing |
251
+ | **walkthroughs/** | Deep tutorial-style flow explanations with actual code snippets | Understands complex multi-class flows before modifying them |
252
+ | **decisions/** | Architecture Decision Records — why choices were made, alternatives rejected | Respects past decisions, doesn't re-litigate them |
253
+
254
+ When planning a new story, the wiki research pass scans all relevant docs and attaches them to the story. When executing, the agent loads those references as context. After implementation, `map-story` updates the wiki with what changed — so the next story benefits from everything learned.
255
+
256
+ ## Commands
257
+
258
+ ### Getting Started
259
+
260
+ | Command | Description |
261
+ |---|---|
262
+ | `/ace:help` | Check project initialization status and suggest next steps |
263
+
264
+ ### Foundation (one-time setup)
265
+
266
+ | Command | Description |
267
+ |---|---|
268
+ | `/ace:plan-product-vision` | Create or update the product vision through architecture-aware questioning |
269
+ | `/ace:init-coding-standards` | Generate a tailored `coding-standards.md` through codebase detection and user interview |
270
+ | `/ace:map-system` | Map system-wide structure, architecture, and testing framework into `.docs/wiki/system-wide/` |
271
+ | `/ace:map-subsystem` | Map a subsystem's structure, architecture, and knowledge docs into `.docs/wiki/subsystems/[name]/` |
272
+
273
+ ### Planning
274
+
275
+ | Command | Description |
276
+ |---|---|
277
+ | `/ace:plan-backlog` | Create or refine the product backlog through vision-aware questioning and guided epic/feature planning |
278
+ | `/ace:plan-feature` | Plan a feature through backlog-aware questioning, story decomposition, and guided specification |
279
+
280
+ ### Story Refinement
281
+
282
+ | Command | Description |
283
+ |---|---|
284
+ | `/ace:plan-story` | Plan a story with crystal-clear acceptance criteria, then auto-dispatch 5 research passes |
285
+
286
+ `/ace:plan-story` is where ACE really shines. After establishing acceptance criteria through deep questioning, it automatically dispatches up to 4 parallel research agents:
287
+
288
+ 1. **Deep questioning** — Collaborative refinement to eliminate all assumptions from acceptance criteria
289
+ 2. **Wiki research** Searches the living wiki for relevant architectural context *(auto-dispatched)*
290
+ 3. **External analysis** — Studies similar implementations in reference repositories *(optional, auto-dispatched)*
291
+ 4. **Integration analysis** Analyzes how the story integrates into the existing codebase *(auto-dispatched)*
292
+ 5. **Technical solution** — Designs the architecture, patterns, algorithms, and implementation plan *(auto-dispatched)*
293
+
294
+ Each research pass can also be run standalone:
295
+
296
+ | Command | Description |
297
+ |---|---|
298
+ | `/ace:research-story-wiki` | Research and curate wiki references relevant to a story |
299
+ | `/ace:research-external-solution` | Code-level analysis of similar implementations in external repositories |
300
+ | `/ace:research-integration-solution` | System integration analysis for fitting a story into the existing codebase |
301
+ | `/ace:research-technical-solution` | Technical solution design — architecture, patterns, sequence diagrams, implementation plan |
302
+
303
+ ### Execution & Review
304
+
305
+ | Command | Description |
306
+ |---|---|
307
+ | `/ace:execute-story` | Execute a fully-planned story — implements via solo or agent teams, runs code review, updates state, triggers wiki mapping |
308
+ | `/ace:review-story` | Standalone code review — artifact verification, anti-pattern detection, coding standards enforcement, tech debt discovery |
309
+
310
+ ### Documentation
311
+
312
+ | Command | Description |
313
+ |---|---|
314
+ | `/ace:map-story` | Update living knowledge docs after story implementation or for existing undocumented code |
315
+
316
+ ---
317
+
318
+ ## Acknowledgements
319
+
320
+ Portions of this project were adapted from [GSD (Get Shit Done)](https://github.com/coleam00/get-shit-done) by Lex Christopherson, licensed under the MIT License.
321
+
322
+ ## License
323
+
324
+ [MIT](LICENSE)