project-iris 0.0.13 → 0.0.15

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 (189) hide show
  1. package/README.md +261 -94
  2. package/bin/cli.js +21 -0
  3. package/flows/aidlc/README.md +372 -0
  4. package/flows/aidlc/agents/construction-agent.md +79 -0
  5. package/flows/aidlc/agents/inception-agent.md +97 -0
  6. package/flows/aidlc/agents/master-agent.md +61 -0
  7. package/flows/aidlc/agents/operations-agent.md +89 -0
  8. package/flows/aidlc/commands/construction-agent.md +63 -0
  9. package/flows/aidlc/commands/inception-agent.md +55 -0
  10. package/flows/aidlc/commands/master-agent.md +47 -0
  11. package/flows/aidlc/commands/operations-agent.md +77 -0
  12. package/flows/aidlc/context-config.yaml +67 -0
  13. package/flows/aidlc/memory-bank.yaml +104 -0
  14. package/flows/aidlc/quick-start.md +322 -0
  15. package/flows/aidlc/skills/construction/bolt-list.md +163 -0
  16. package/flows/aidlc/skills/construction/bolt-replan.md +345 -0
  17. package/flows/aidlc/skills/construction/bolt-start.md +442 -0
  18. package/flows/aidlc/skills/construction/bolt-status.md +185 -0
  19. package/flows/aidlc/skills/construction/navigator.md +196 -0
  20. package/flows/aidlc/skills/inception/bolt-plan.md +372 -0
  21. package/flows/aidlc/skills/inception/context.md +171 -0
  22. package/flows/aidlc/skills/inception/intent-create.md +211 -0
  23. package/flows/aidlc/skills/inception/intent-list.md +124 -0
  24. package/flows/aidlc/skills/inception/navigator.md +207 -0
  25. package/flows/aidlc/skills/inception/requirements.md +227 -0
  26. package/flows/aidlc/skills/inception/review.md +248 -0
  27. package/flows/aidlc/skills/inception/story-create.md +304 -0
  28. package/flows/aidlc/skills/inception/units.md +278 -0
  29. package/flows/aidlc/skills/master/analyze-context.md +239 -0
  30. package/flows/aidlc/skills/master/answer-question.md +141 -0
  31. package/flows/aidlc/skills/master/explain-flow.md +158 -0
  32. package/flows/aidlc/skills/master/project-init.md +281 -0
  33. package/flows/aidlc/skills/master/route-request.md +126 -0
  34. package/flows/aidlc/skills/operations/build.md +237 -0
  35. package/flows/aidlc/skills/operations/deploy.md +259 -0
  36. package/flows/aidlc/skills/operations/monitor.md +265 -0
  37. package/flows/aidlc/skills/operations/navigator.md +209 -0
  38. package/flows/aidlc/skills/operations/verify.md +224 -0
  39. package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/construction/bolt-types/ddd-construction-bolt.md +3 -3
  40. package/{dist → flows/aidlc}/templates/construction/bolt-types/spike-bolt.md +2 -2
  41. package/flows/aidlc/templates/construction/construction-log-template.md +129 -0
  42. package/flows/aidlc/templates/construction/standards/coding-standards.md +29 -0
  43. package/flows/aidlc/templates/construction/standards/system-architecture.md +22 -0
  44. package/flows/aidlc/templates/construction/standards/tech-stack.md +19 -0
  45. package/flows/aidlc/templates/inception/inception-log-template.md +134 -0
  46. package/flows/aidlc/templates/inception/project/README.md +55 -0
  47. package/flows/aidlc/templates/standards/catalog.yaml +345 -0
  48. package/flows/aidlc/templates/standards/coding-standards.guide.md +553 -0
  49. package/flows/aidlc/templates/standards/data-stack.guide.md +162 -0
  50. package/flows/aidlc/templates/standards/tech-stack.guide.md +280 -0
  51. package/lib/InstallerFactory.js +36 -0
  52. package/lib/analytics/env-detector.js +92 -0
  53. package/lib/analytics/index.js +22 -0
  54. package/lib/analytics/machine-id.js +33 -0
  55. package/lib/analytics/tracker.js +232 -0
  56. package/lib/cli-utils.js +342 -0
  57. package/lib/constants.js +32 -0
  58. package/lib/installer.js +402 -0
  59. package/lib/installers/AntigravityInstaller.js +112 -0
  60. package/lib/installers/ClaudeInstaller.js +85 -0
  61. package/lib/installers/ClineInstaller.js +21 -0
  62. package/lib/installers/CodexInstaller.js +21 -0
  63. package/lib/installers/CopilotInstaller.js +113 -0
  64. package/lib/installers/CursorInstaller.js +63 -0
  65. package/lib/installers/GeminiInstaller.js +75 -0
  66. package/lib/installers/KiroInstaller.js +22 -0
  67. package/lib/installers/OpenCodeInstaller.js +22 -0
  68. package/lib/installers/RooInstaller.js +22 -0
  69. package/lib/installers/ToolInstaller.js +73 -0
  70. package/lib/installers/WindsurfInstaller.js +22 -0
  71. package/lib/markdown-validator.ts +175 -0
  72. package/lib/yaml-validator.ts +99 -0
  73. package/package.json +106 -33
  74. package/scripts/artifact-validator.js +594 -0
  75. package/scripts/bolt-complete.js +606 -0
  76. package/scripts/status-integrity.js +598 -0
  77. package/dist/bridge/agent-runner.js +0 -190
  78. package/dist/bridge/connector-factory.js +0 -31
  79. package/dist/bridge/connectors/antigravity-connector.js +0 -18
  80. package/dist/bridge/connectors/cursor-connector.js +0 -31
  81. package/dist/bridge/connectors/in-process-connector.js +0 -29
  82. package/dist/bridge/connectors/vscode-connector.js +0 -31
  83. package/dist/bridge/connectors/windsurf-connector.js +0 -23
  84. package/dist/bridge/filesystem-connector.js +0 -110
  85. package/dist/bridge/helper.js +0 -203
  86. package/dist/bridge/types.js +0 -10
  87. package/dist/cli.js +0 -40
  88. package/dist/commands/ask.js +0 -259
  89. package/dist/commands/bridge.js +0 -88
  90. package/dist/commands/create.js +0 -25
  91. package/dist/commands/develop.js +0 -141
  92. package/dist/commands/doctor.js +0 -102
  93. package/dist/commands/flow.js +0 -301
  94. package/dist/commands/framework.js +0 -273
  95. package/dist/commands/generate.js +0 -59
  96. package/dist/commands/install.js +0 -100
  97. package/dist/commands/pack.js +0 -33
  98. package/dist/commands/phase.js +0 -38
  99. package/dist/commands/run.js +0 -199
  100. package/dist/commands/status.js +0 -114
  101. package/dist/commands/uninstall.js +0 -14
  102. package/dist/commands/use.js +0 -20
  103. package/dist/commands/validate.js +0 -102
  104. package/dist/framework/framework-loader.js +0 -97
  105. package/dist/framework/framework-paths.js +0 -48
  106. package/dist/framework/framework-types.js +0 -15
  107. package/dist/iris/artifact-checker.js +0 -78
  108. package/dist/iris/artifacts/config.js +0 -68
  109. package/dist/iris/artifacts/generator.js +0 -88
  110. package/dist/iris/artifacts/types.js +0 -1
  111. package/dist/iris/bundle.js +0 -44
  112. package/dist/iris/doctrine/collector.js +0 -124
  113. package/dist/iris/fixer.js +0 -149
  114. package/dist/iris/flows/manifest.js +0 -124
  115. package/dist/iris/framework-context.js +0 -49
  116. package/dist/iris/framework-manager.js +0 -215
  117. package/dist/iris/fs/atomic.js +0 -22
  118. package/dist/iris/guard.js +0 -38
  119. package/dist/iris/importers/index.js +0 -9
  120. package/dist/iris/importers/types.js +0 -8
  121. package/dist/iris/importers/writer.js +0 -139
  122. package/dist/iris/include.js +0 -49
  123. package/dist/iris/installer.js +0 -334
  124. package/dist/iris/interactive/env.js +0 -21
  125. package/dist/iris/interactive/intent-interview.js +0 -345
  126. package/dist/iris/interactive/intent-schema.js +0 -28
  127. package/dist/iris/interactive/interview-io.js +0 -22
  128. package/dist/iris/interview/config.js +0 -71
  129. package/dist/iris/interview/types.js +0 -16
  130. package/dist/iris/interview/utils.js +0 -38
  131. package/dist/iris/manifest.js +0 -54
  132. package/dist/iris/packer.js +0 -325
  133. package/dist/iris/parsers/unit-parser.js +0 -43
  134. package/dist/iris/paths.js +0 -18
  135. package/dist/iris/policy.js +0 -133
  136. package/dist/iris/proc.js +0 -56
  137. package/dist/iris/report.js +0 -53
  138. package/dist/iris/resolver.js +0 -66
  139. package/dist/iris/router.js +0 -114
  140. package/dist/iris/routes.js +0 -189
  141. package/dist/iris/run-state.js +0 -146
  142. package/dist/iris/state.js +0 -113
  143. package/dist/iris/templates.js +0 -70
  144. package/dist/iris/tmp.js +0 -24
  145. package/dist/iris/uninstaller.js +0 -181
  146. package/dist/iris/utils/interpolate.js +0 -42
  147. package/dist/iris/validator.js +0 -391
  148. package/dist/iris/workflow/config.js +0 -51
  149. package/dist/iris/workflow/engine.js +0 -129
  150. package/dist/iris/workflow/steps.js +0 -448
  151. package/dist/iris/workflow/types.js +0 -1
  152. package/dist/iris_bundle/frameworks/iris-core/framework.yaml +0 -9
  153. package/dist/iris_bundle/frameworks/iris-core/memory/memory-bank.yaml +0 -1
  154. package/dist/iris_bundle/frameworks/iris-core/policy.yaml +0 -7
  155. package/dist/iris_bundle/frameworks/iris-core/templates/config/memory-bank.yaml +0 -1
  156. package/dist/iris_bundle/frameworks/iris-core/templates/construction/bolt-types/spike-bolt.md +0 -240
  157. package/dist/lib.js +0 -96
  158. package/dist/templates/construction/bolt-template.md +0 -226
  159. package/dist/templates/construction/bolt-types/ddd-construction-bolt/adr-template.md +0 -49
  160. package/dist/templates/construction/bolt-types/ddd-construction-bolt/ddd-01-domain-model-template.md +0 -55
  161. package/dist/templates/construction/bolt-types/ddd-construction-bolt/ddd-02-technical-design-template.md +0 -67
  162. package/dist/templates/construction/bolt-types/ddd-construction-bolt/ddd-03-test-report-template.md +0 -62
  163. package/dist/templates/construction/bolt-types/ddd-construction-bolt.md +0 -528
  164. package/dist/templates/construction/bolt-types/simple-construction-bolt.md +0 -347
  165. package/dist/templates/inception/requirements-template.md +0 -144
  166. package/dist/templates/inception/stories-template.md +0 -38
  167. package/dist/templates/inception/story-template.md +0 -147
  168. package/dist/templates/inception/system-context-template.md +0 -29
  169. package/dist/templates/inception/unit-brief-template.md +0 -177
  170. package/dist/templates/inception/units-template.md +0 -52
  171. package/dist/utils/exit-codes.js +0 -7
  172. package/dist/utils/logo.js +0 -17
  173. package/dist/workflows/bolt-execution.js +0 -238
  174. package/dist/workflows/bolt-plan.js +0 -221
  175. package/dist/workflows/intent-inception.js +0 -285
  176. package/dist/workflows/memory-bank-generator.js +0 -180
  177. package/dist/workflows/reporting.js +0 -74
  178. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/construction/bolt-template.md +0 -0
  179. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/construction/bolt-types/ddd-construction-bolt/adr-template.md +0 -0
  180. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/construction/bolt-types/ddd-construction-bolt/ddd-01-domain-model-template.md +0 -0
  181. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/construction/bolt-types/ddd-construction-bolt/ddd-02-technical-design-template.md +0 -0
  182. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/construction/bolt-types/ddd-construction-bolt/ddd-03-test-report-template.md +0 -0
  183. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/construction/bolt-types/simple-construction-bolt.md +0 -0
  184. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/inception/requirements-template.md +0 -0
  185. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/inception/stories-template.md +0 -0
  186. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/inception/story-template.md +0 -0
  187. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/inception/system-context-template.md +0 -0
  188. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/inception/unit-brief-template.md +0 -0
  189. /package/{dist/iris_bundle/frameworks/iris-core → flows/aidlc}/templates/inception/units-template.md +0 -0
package/README.md CHANGED
@@ -1,148 +1,315 @@
1
- # IRIS v0.0.1
1
+ # iris
2
+
3
+ **AI-native software development with multi-agent orchestration.**
4
+
5
+ iris implements the [AI-Driven Development Lifecycle (AI-DLC)](https://aws.amazon.com/blogs/devops/ai-driven-development-life-cycle/) methodology as a set of markdown-based agents that work with your favorite AI coding tools.
6
+
7
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
8
+
9
+ ---
10
+
11
+ ## What is AI-DLC?
12
+
13
+ AI-DLC is a reimagined software development methodology where **AI drives the conversation** and humans validate. Unlike traditional Agile where iterations span weeks, AI-DLC operates in **Bolts** - rapid iterations measured in hours or days.
14
+
15
+ > "Traditional development methods were built for human-driven, long-running processes. AI-DLC reimagines the development lifecycle with AI as a central collaborator, enabling rapid cycles measured in hours or days rather than weeks."
16
+
17
+ ### AI-DLC vs Traditional Methods
18
+
19
+ | Aspect | Agile/Scrum | AI-DLC |
20
+ |--------|-------------|--------|
21
+ | Iteration duration | Weeks (Sprints) | Hours/days (Bolts) |
22
+ | Who drives | Human-driven, AI assists | AI-driven, human-validated |
23
+ | Design techniques | Out of scope | Integrated (DDD, TDD, BDD) |
24
+ | Task decomposition | Manual | AI-powered |
25
+ | Phases | Repeating sprints | Rapid three-phase cycles (Inception → Construction → Operations) |
26
+ | Rituals | Daily standups, retrospectives | Mob Elaboration, Mob Construction |
27
+
28
+ ---
29
+
30
+ ## How It Works
31
+
32
+ iris provides four specialized agents that guide you through the entire development lifecycle:
2
33
 
3
34
  ```
4
- ██████╗ ███████╗██╗██████╗ ██╗███████╗
5
- ██╔═══██╗██╔════╝██║██╔══██╗██║██╔════╝
6
- ██║ ██║███████╗██║██████╔╝██║███████╗
7
- ██║ ██║╚════██║██║██╔══██╗██║╚════██║
8
- ╚██████╔╝███████║██║██║ ██║██║███████║
9
- ╚═════╝ ╚══════╝╚═╝╚═╝ ╚═╝╚═╝╚══════╝
35
+ ┌─────────────────┐
36
+ │ Master Agent │ Orchestrates & navigates
37
+ └────────┬────────┘
38
+
39
+ ┌────────────────────┼────────────────────┐
40
+ ▼ ▼ ▼
41
+ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐
42
+ │ Inception │ → │ Construction │ → │ Operations │
43
+ │ Agent │ │ Agent │ │ Agent │
44
+ └───────────────┘ └───────────────┘ └───────────────┘
45
+ Capture intent Execute bolts Deploy & monitor
46
+ Define units Build & test Verify & scale
47
+ Plan stories Validate stages
10
48
  ```
11
49
 
12
- **IRIS** (Intelligent Repository for Intent-driven Systems) is an AI-native project management framework. It structures your codebase, routes natural language intents to the right agents, and enforces architectural standards through validation gates.
50
+ ### The Three Phases
51
+
52
+ | Phase | Agent | Purpose | Key Outputs |
53
+ |-------|-------|---------|-------------|
54
+ | **Inception** | Inception Agent | Capture intents, elaborate requirements, decompose into units | User stories, NFRs, Unit definitions, Bolt plans |
55
+ | **Construction** | Construction Agent | Execute bolts through domain design → logical design → code → test | Domain models, Technical designs, Code, Tests |
56
+ | **Operations** | Operations Agent | Deploy, verify, and monitor | Deployment units, Monitoring, Runbooks |
13
57
 
14
58
  ---
15
59
 
16
- ## 🚀 Quick Start
60
+ ## Quick Start
61
+
62
+ ### Installation
17
63
 
18
- ### Scenario A: Start a New Project
64
+ ```bash
65
+ npx project-iris install
66
+ ```
19
67
 
20
- If you are starting from scratch and want IRIS to set up the foundation:
68
+ The installer detects your AI coding tools (Claude Code, Cursor, GitHub Copilot) and sets up:
69
+ - Agent definitions and skills
70
+ - Memory bank structure for context persistence
71
+ - Slash commands for easy agent invocation
72
+
73
+ ### Initialize Your Project
21
74
 
22
75
  ```bash
23
- mkdir my-new-project && cd my-new-project
24
- npx project-iris@latest install
76
+ # Start the Master Agent
77
+ /iris-master-agent
78
+
79
+ # Then type:
80
+ project-init
25
81
  ```
26
82
 
27
- **What happens next?**
28
- 1. **Bootstrap**: IRIS initializes a `package.json` and the `.iris/` framework.
29
- 2. **Memory Bank**: It creates a `memory-bank/` directory for your project documentation.
30
- 3. **First Feature**: You are ready to build.
83
+ This guides you through establishing:
84
+ - **Tech Stack** - Languages, frameworks, databases, infrastructure
85
+ - **Coding Standards** - Formatting, linting, naming, testing strategy
86
+ - **System Architecture** - Architecture style, API design, state management
87
+ - **UX Guide** - Design system, styling, accessibility (optional)
88
+ - **API Conventions** - API style, versioning, response formats (optional)
89
+
90
+ ### Create Your First Intent
31
91
 
32
92
  ```bash
33
- # Define your first feature
34
- iris ask "I want to build a landing page with a hero section"
93
+ /iris-inception-agent intent-create
35
94
  ```
36
95
 
37
- ### Scenario B: Add to Existing Project
96
+ An **Intent** is your high-level goal:
97
+ - "User authentication system"
98
+ - "Product catalog with search"
99
+ - "Payment processing integration"
100
+
101
+ The agent will:
102
+ 1. Ask clarifying questions to minimize ambiguity
103
+ 2. Elaborate into user stories and NFRs
104
+ 3. Define system context
105
+ 4. Decompose into loosely-coupled units
38
106
 
39
- If you have an existing codebase and want to add AI-driven management:
107
+ ### Plan and Execute Bolts
40
108
 
41
109
  ```bash
42
- cd my-existing-project
43
- npx project-iris@latest install
110
+ # Plan bolts for your stories
111
+ /iris-inception-agent bolt-plan
112
+
113
+ # Execute a bolt
114
+ /iris-construction-agent bolt-start
115
+ ```
116
+
117
+ Each bolt goes through validated stages:
118
+ 1. **Domain Model** - Model business logic using DDD principles
119
+ 2. **Technical Design** - Apply patterns and make architecture decisions
120
+ 3. **ADR Analysis** - Document significant decisions (optional)
121
+ 4. **Implement** - Generate production code
122
+ 5. **Test** - Verify correctness with automated tests
123
+
124
+ **Human validation happens at each stage gate.**
125
+
126
+ ---
127
+
128
+ ## Key Concepts
129
+
130
+ ### Intent
131
+ A high-level statement of purpose that encapsulates what needs to be achieved - whether a business goal, feature, or technical outcome. It serves as the starting point for AI-driven decomposition.
132
+
133
+ ### Unit
134
+ A cohesive, self-contained work element derived from an Intent. Units are loosely coupled and can be developed independently. Analogous to a Subdomain (DDD) or Epic (Scrum).
135
+
136
+ ### Bolt
137
+ The smallest iteration in AI-DLC, designed for rapid implementation. Unlike Sprints (weeks), Bolts are **hours to days**. Each bolt encapsulates a well-defined scope of work.
138
+
139
+ | Type | Best For | Stages |
140
+ |------|----------|--------|
141
+ | **DDD Construction** | Complex business logic, domain modeling | Model → Design → ADR → Implement → Test |
142
+ | **Simple Construction** | UI, integrations, utilities | Plan → Implement → Test |
143
+
144
+ ### Memory Bank
145
+ File-based storage for all project artifacts. Maintains context across agent sessions and provides traceability between artifacts.
146
+
147
+ ### Standards
148
+ Project decisions that inform AI code generation. Standards ensure consistency across all generated code and documentation.
149
+
150
+ ---
151
+
152
+ ## Project Structure
153
+
154
+ After installation:
155
+
44
156
  ```
157
+ .iris/
158
+ ├── manifest.yaml # Installation manifest
159
+ └── aidlc/ # AI-DLC flow
160
+ ├── agents/ # Agent definitions
161
+ ├── skills/ # Agent capabilities
162
+ ├── templates/ # Artifact templates
163
+ │ └── standards/ # Standards facilitation guides
164
+ └── memory-bank.yaml # Memory bank schema
165
+
166
+ memory-bank/ # Created after project-init
167
+ ├── intents/ # Your captured intents
168
+ │ └── {intent-name}/
169
+ │ ├── requirements.md
170
+ │ ├── system-context.md
171
+ │ └── units/
172
+ ├── bolts/ # Bolt execution records
173
+ ├── standards/ # Project standards
174
+ │ ├── tech-stack.md
175
+ │ ├── coding-standards.md
176
+ │ └── ...
177
+ └── operations/ # Deployment context
178
+ ```
179
+
180
+ ---
45
181
 
46
- **What happens next?**
47
- 1. **Analysis**: IRIS scans your project to understand its structure.
48
- 2. **Integration**: It adds the `.iris` folder without touching your source code.
49
- 3. **Refactor/Build**: You can now use IRIS to manage new features or refactors.
182
+ ## Agent Commands
50
183
 
184
+ ### Master Agent
185
+ ```bash
186
+ /iris-master-agent
187
+ ```
188
+ | Command | Purpose |
189
+ |---------|---------|
190
+ | `project-init` | Initialize project with standards |
191
+ | `analyze-context` | View current project state |
192
+ | `route-request` | Get directed to the right agent |
193
+ | `explain-flow` | Learn about AI-DLC methodology |
194
+ | `answer-question` | Get help with any iris question |
195
+
196
+ ### Inception Agent
197
+ ```bash
198
+ /iris-inception-agent
199
+ ```
200
+ | Command | Purpose |
201
+ |---------|---------|
202
+ | `intent-create` | Create a new intent |
203
+ | `intent-list` | List all intents |
204
+ | `requirements` | Elaborate intent requirements |
205
+ | `context` | Define system context |
206
+ | `units` | Decompose into units |
207
+ | `story-create` | Create stories for a unit |
208
+ | `bolt-plan` | Plan bolts for stories |
209
+ | `review` | Review inception artifacts |
210
+
211
+ ### Construction Agent
212
+ ```bash
213
+ /iris-construction-agent
214
+ ```
215
+ | Command | Purpose |
216
+ |---------|---------|
217
+ | `bolt-start` | Start/continue executing a bolt |
218
+ | `bolt-status` | Check bolt progress |
219
+ | `bolt-list` | List all bolts |
220
+ | `bolt-replan` | Replan bolts if needed |
221
+
222
+ ### Operations Agent
51
223
  ```bash
52
- # Example: Ask IRIS to plan a refactor
53
- iris ask "Refactor the authentication module to use tokens"
224
+ /iris-operations-agent
54
225
  ```
226
+ | Command | Purpose |
227
+ |---------|---------|
228
+ | `build` | Build the project |
229
+ | `deploy` | Deploy to environment |
230
+ | `verify` | Verify deployment |
231
+ | `monitor` | Set up monitoring |
55
232
 
56
233
  ---
57
234
 
58
- ## 🔄 The IRIS Workflow
235
+ ## Why iris?
236
+
237
+ ### AI-Native, Not AI-Retrofitted
238
+ Built from the ground up for AI-driven development. AI-DLC is a reimagination based on first principles, not a retrofit of existing methods.
59
239
 
60
- IRIS manages development through a deterministic lifecycle. Whether you are building from scratch or maintaining legacy code, the loop is the same:
240
+ ### Human Oversight as Loss Function
241
+ Validation at each stage catches errors early before they cascade downstream. Each validation transforms artifacts into rich context for subsequent stages.
61
242
 
62
- ### 1. Inception (Defining *What*)
63
- Before writing code, we define the requirements.
243
+ ### Design Techniques Built-In
244
+ DDD, TDD, and BDD are integral to the methodology - not optional add-ons. This addresses the "whitespace" in Agile that has led to quality issues.
64
245
 
65
- * **Command**: `iris ask "Your intent here"`
66
- * **Action**: IRIS interviews you (or uses your prompt) to generate a **Requirements** document in `memory-bank/intents/`.
67
- * **Result**: A clear, approved plan of what to build.
246
+ ### Tool Agnostic
247
+ Works with Claude Code, Cursor, GitHub Copilot, and other AI coding assistants. Markdown-based agents work anywhere.
68
248
 
69
- ### 2. Construction (Building *How*)
70
- Once requirements are set, we enter the **Factory Loop**:
249
+ ### Context Engineering
250
+ Specs and Memory Bank provide structured context for AI agents. Agents reload context each session - no more lost knowledge.
71
251
 
72
- 1. **Plan**: IRIS breaks the work down into **Units** (logical chunks of work).
73
- 2. **Brief**: Each Unit gets a **Unit Brief** (technical spec).
74
- 3. **Bolt**: Briefs are converted into **Bolts** (executable tasks).
75
- 4. **Execute**: The Agent writes code and runs tests.
252
+ ---
76
253
 
77
- * **Command**: `iris run` (Or `iris develop` for the automated loop)
254
+ ## Supported Tools
78
255
 
79
- ### 3. Operations (Running It)
80
- IRIS monitors the health of the project and manages deployment (future scope).
256
+ | Tool | Status | Installation |
257
+ |------|--------|--------------|
258
+ | **Claude Code** | Full support | Slash commands in `.claude/commands/` |
259
+ | **Cursor** | Full support | Rules in `.cursor/rules/` (`.mdc` format) |
260
+ | **GitHub Copilot** | Full support | Agents in `.github/agents/` (`.agent.md` format) |
261
+ | **Google Antigravity** | Full support | Agents in `.agent/agents/` |
81
262
 
82
263
  ---
83
264
 
84
- ## 🧠 Key Concepts
265
+ ## FAQ
85
266
 
86
- ### The Memory Bank (`memory-bank/`)
87
- Your project's brain. IRIS stores all context here, so any AI agent (or human) can understand the project instantly.
267
+ **Q: Agents don't seem to remember previous context?**
268
+ Each agent invocation starts fresh. Agents read context from the Memory Bank at startup. Ensure artifacts are saved after each step.
88
269
 
89
- * `intents/`: What we want to build (the "Why").
90
- * `units/`: How we are building it (the "How").
91
- * `bolts/`: The atomic tasks (the "What").
92
- * `runbooks/`: Operational guides.
270
+ **Q: How do I reset project state?**
271
+ Clear the `memory-bank/` directory to reset all artifacts. To remove iris entirely, delete the `.iris/` directory and tool-specific command files.
93
272
 
94
- ### Agents & Bridges
95
- IRIS works where you work.
273
+ **Q: Can I use iris with existing Agile workflows?**
274
+ AI-DLC is designed as a reimagination, not a retrofit. However, familiar concepts (user stories, acceptance criteria) are retained to ease transition.
96
275
 
97
- * **Auto (Default)**: IRIS runs as a standalone agent in your terminal.
98
- * **Bridge**: IRIS connects to your AI IDE (Cursor, Windsurf, VS Code).
99
- * Command: `iris use cursor` or `iris use windsurf`.
276
+ **Q: What project types is this suited for?**
277
+ iris is designed for building complex systems that demand architectural complexity, trade-off management, and scalability. Simpler systems may be better suited for low-code/no-code approaches.
100
278
 
101
279
  ---
102
280
 
103
- ## 📚 Command Reference
104
-
105
- ### Planning & Context
106
- | Command | Description |
107
- | content | content |
108
- | `iris ask "<intent>"` | Route a new intent or feature request. |
109
- | `iris ask --interactive` | Start a Q&A session to define requirements. |
110
- | `iris pack` | tailored context bundle for LLMs. |
111
-
112
- ### Execution
113
- | Command | Description |
114
- | content | content |
115
- | `iris run` | Execute the next step in the workflow loop. |
116
- | `iris develop "<intent>"` | Run the full automated loop for an intent. |
117
- | `iris run --resume` | Resume an interrupted workflow. |
118
-
119
- ### Management
120
- | Command | Description |
121
- | content | content |
122
- | `iris status` | Show current phase, active agent, and progress. |
123
- | `iris validate` | Verify project structure and memory bank integrity. |
124
- | `iris doctor` | Check environment health. |
281
+ ## Resources
282
+
283
+ - [AI-DLC Specification (AWS)](https://aws.amazon.com/blogs/devops/ai-driven-development-life-cycle/)
125
284
 
126
285
  ---
127
286
 
128
- ## 👥 Contributing
287
+ ## Analytics & Privacy
129
288
 
130
- We welcome contributions to IRIS itself!
289
+ iris collects **anonymous** usage analytics during installation only. This helps us understand adoption and improve the product.
131
290
 
132
- ### Setup
133
- ```bash
134
- git clone <repo-url>
135
- cd project-iris
136
- npm ci
137
- npm run build
138
- npm link
139
- ```
291
+ **What we collect**: OS, shell type, selected IDEs, installation success/failure, approximate location (country level).
292
+
293
+ **What we don't collect**: No usernames, no file paths, no project contents, no IP addresses stored.
294
+
295
+ ### Opt-Out
140
296
 
141
- ### Verification
142
297
  ```bash
143
- # Run all verification checks
144
- npm run verify
298
+ # Option 1: Environment variable
299
+ IRIS_TELEMETRY_DISABLED=1 npx project-iris@latest install
145
300
 
146
- # Run unit tests
147
- npm run test:unit
301
+ # Option 2: DO_NOT_TRACK standard
302
+ DO_NOT_TRACK=1 npx project-iris@latest install
148
303
  ```
304
+
305
+ Analytics are automatically disabled in CI environments.
306
+
307
+ See [PRIVACY.md](PRIVACY.md) for full details.
308
+
309
+ ---
310
+
311
+ ## License
312
+
313
+ MIT License - see [LICENSE](LICENSE) for details.
314
+
315
+
package/bin/cli.js ADDED
@@ -0,0 +1,21 @@
1
+ #!/usr/bin/env node
2
+
3
+ const { program } = require('commander');
4
+ const installer = require('../lib/installer');
5
+ const packageJson = require('../package.json');
6
+
7
+ program
8
+ .version(packageJson.version)
9
+ .description(packageJson.description);
10
+
11
+ program
12
+ .command('install')
13
+ .description('Interactively install a iris flow')
14
+ .action(installer.install);
15
+
16
+ program
17
+ .command('uninstall')
18
+ .description('Uninstall iris from the current project')
19
+ .action(installer.uninstall);
20
+
21
+ program.parse(process.argv);