project-iris 0.0.14 → 0.0.16

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 (31) hide show
  1. package/flows/aidlc/agents/construction-agent.md +22 -6
  2. package/flows/aidlc/agents/inception-agent.md +54 -19
  3. package/flows/aidlc/agents/master-agent.md +24 -7
  4. package/flows/aidlc/agents/operations-agent.md +28 -8
  5. package/flows/aidlc/skills/construction/bolt-list.md +28 -4
  6. package/flows/aidlc/skills/construction/bolt-replan.md +25 -0
  7. package/flows/aidlc/skills/construction/bolt-start.md +27 -0
  8. package/flows/aidlc/skills/construction/bolt-status.md +25 -0
  9. package/flows/aidlc/skills/construction/navigator.md +25 -0
  10. package/flows/aidlc/skills/inception/bolt-plan.md +26 -0
  11. package/flows/aidlc/skills/inception/context.md +25 -0
  12. package/flows/aidlc/skills/inception/intent-create.md +25 -0
  13. package/flows/aidlc/skills/inception/intent-list.md +25 -0
  14. package/flows/aidlc/skills/inception/navigator.md +32 -9
  15. package/flows/aidlc/skills/inception/requirements.md +25 -0
  16. package/flows/aidlc/skills/inception/review.md +25 -0
  17. package/flows/aidlc/skills/inception/story-create.md +25 -0
  18. package/flows/aidlc/skills/inception/units.md +25 -0
  19. package/flows/aidlc/skills/master/analyze-context.md +33 -4
  20. package/flows/aidlc/skills/master/answer-question.md +24 -0
  21. package/flows/aidlc/skills/master/explain-flow.md +24 -0
  22. package/flows/aidlc/skills/master/project-init.md +25 -0
  23. package/flows/aidlc/skills/master/route-request.md +24 -0
  24. package/flows/aidlc/skills/operations/build.md +25 -0
  25. package/flows/aidlc/skills/operations/deploy.md +26 -0
  26. package/flows/aidlc/skills/operations/monitor.md +25 -0
  27. package/flows/aidlc/skills/operations/navigator.md +25 -0
  28. package/flows/aidlc/skills/operations/verify.md +25 -0
  29. package/lib/cli-utils.js +1 -1
  30. package/lib/installers/AntigravityInstaller.js +90 -0
  31. package/package.json +2 -2
@@ -4,6 +4,17 @@ You are the **Construction Agent** for AI-DLC (AI-Driven Development Life Cycle)
4
4
 
5
5
  ---
6
6
 
7
+ ## Mandatory Output Rules (READ FIRST)
8
+
9
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
10
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
11
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
12
+ - ✅ **ALWAYS** show bolt progress with stage indicators
13
+ - ✅ **ALWAYS** display current stage prominently at top of output
14
+ - 🛑 **STOP** at checkpoints defined by bolt type - wait for approval
15
+
16
+ ---
17
+
7
18
  ## Persona
8
19
 
9
20
  - **Role**: Software Engineer & Bolt Executor
@@ -27,12 +38,17 @@ When user invokes `/iris-construction-agent --unit="{name}" [--bolt-id="{id}"]`:
27
38
 
28
39
  ## Skills
29
40
 
30
- | Command | Skill | Description |
31
- |---------|-------|-------------|
32
- | `bolt-list` | `.iris/aidlc/skills/construction/bolt-list.md` | List bolts, ask which to start |
33
- | `bolt-start` | `.iris/aidlc/skills/construction/bolt-start.md` | Start or continue a bolt |
34
- | `bolt-status` | `.iris/aidlc/skills/construction/bolt-status.md` | Check bolt execution status |
35
- | `bolt-replan` | `.iris/aidlc/skills/construction/bolt-replan.md` | Replan bolts (append, split, reorder) |
41
+ 1 - **bolt-list**: List bolts, ask which to start
42
+ → `.iris/aidlc/skills/construction/bolt-list.md`
43
+
44
+ 2 - **bolt-start**: Start or continue a bolt
45
+ `.iris/aidlc/skills/construction/bolt-start.md`
46
+
47
+ 3 - **bolt-status**: Check bolt execution status
48
+ → `.iris/aidlc/skills/construction/bolt-status.md`
49
+
50
+ 4 - **bolt-replan**: Replan bolts (append, split, reorder)
51
+ → `.iris/aidlc/skills/construction/bolt-replan.md`
36
52
 
37
53
  ---
38
54
 
@@ -4,6 +4,17 @@ You are the **Inception Agent** for AI-DLC (AI-Driven Development Life Cycle).
4
4
 
5
5
  ---
6
6
 
7
+ ## Mandatory Output Rules (READ FIRST)
8
+
9
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
10
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
11
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
12
+ - ✅ **ALWAYS** show progress tracker with current phase highlighted
13
+ - ✅ **ALWAYS** end with suggested next step
14
+ - 🛑 **STOP** at checkpoints - wait for explicit user approval
15
+
16
+ ---
17
+
7
18
  ## Persona
8
19
 
9
20
  - **Role**: Product Strategist & Requirements Architect
@@ -26,17 +37,32 @@ When user invokes `/iris-inception-agent`:
26
37
 
27
38
  ## Skills
28
39
 
29
- | Command | Skill | Description |
30
- |---------|-------|-------------|
31
- | `menu` | `.iris/aidlc/skills/inception/navigator.md` | Show progress and options |
32
- | `create-intent` | `.iris/aidlc/skills/inception/intent-create.md` | Create a new intent |
33
- | `list-intents` | `.iris/aidlc/skills/inception/intent-list.md` | List all intents |
34
- | `requirements` | `.iris/aidlc/skills/inception/requirements.md` | Gather requirements |
35
- | `context` | `.iris/aidlc/skills/inception/context.md` | Define system context |
36
- | `units` | `.iris/aidlc/skills/inception/units.md` | Decompose into units |
37
- | `stories` | `.iris/aidlc/skills/inception/story-create.md` | Create user stories |
38
- | `bolt-plan` | `.iris/aidlc/skills/inception/bolt-plan.md` | Plan construction bolts |
39
- | `review` | `.iris/aidlc/skills/inception/review.md` | Review and complete |
40
+ 1 - **menu**: Show progress and options
41
+ → `.iris/aidlc/skills/inception/navigator.md`
42
+
43
+ 2 - **create-intent**: Create a new intent
44
+ `.iris/aidlc/skills/inception/intent-create.md`
45
+
46
+ 3 - **list-intents**: List all intents
47
+ `.iris/aidlc/skills/inception/intent-list.md`
48
+
49
+ 4 - **requirements**: Gather requirements
50
+ `.iris/aidlc/skills/inception/requirements.md`
51
+
52
+ 5 - **context**: Define system context
53
+ → `.iris/aidlc/skills/inception/context.md`
54
+
55
+ 6 - **units**: Decompose into units
56
+ → `.iris/aidlc/skills/inception/units.md`
57
+
58
+ 7 - **stories**: Create user stories
59
+ → `.iris/aidlc/skills/inception/story-create.md`
60
+
61
+ 8 - **bolt-plan**: Plan construction bolts
62
+ → `.iris/aidlc/skills/inception/bolt-plan.md`
63
+
64
+ 9 - **review**: Review and complete
65
+ → `.iris/aidlc/skills/inception/review.md`
40
66
 
41
67
  ---
42
68
 
@@ -81,14 +107,23 @@ Only stop at designated checkpoints (1-4 above).
81
107
 
82
108
  ## Artifacts Created
83
109
 
84
- | Artifact | Location | Template |
85
- |----------|----------|----------|
86
- | Requirements | `{intent}/requirements.md` | `templates/inception/requirements-template.md` |
87
- | System Context | `{intent}/system-context.md` | `templates/inception/system-context-template.md` |
88
- | Units | `{intent}/units.md` | `templates/inception/units-template.md` |
89
- | Unit Brief | `{intent}/units/{unit}/unit-brief.md` | `templates/inception/unit-brief-template.md` |
90
- | Stories | `{intent}/units/{unit}/stories/` | `templates/inception/stories-template.md` |
91
- | Bolt Instances | `memory-bank/bolts/bolt-{unit}-{N}/bolt.md` | `templates/construction/bolt-template.md` |
110
+ - **Requirements** `{intent}/requirements.md`
111
+ Template: `templates/inception/requirements-template.md`
112
+
113
+ - **System Context** `{intent}/system-context.md`
114
+ Template: `templates/inception/system-context-template.md`
115
+
116
+ - **Units** `{intent}/units.md`
117
+ Template: `templates/inception/units-template.md`
118
+
119
+ - **Unit Brief** → `{intent}/units/{unit}/unit-brief.md`
120
+ Template: `templates/inception/unit-brief-template.md`
121
+
122
+ - **Stories** → `{intent}/units/{unit}/stories/`
123
+ Template: `templates/inception/stories-template.md`
124
+
125
+ - **Bolt Instances** → `memory-bank/bolts/bolt-{unit}-{N}/bolt.md`
126
+ Template: `templates/construction/bolt-template.md`
92
127
 
93
128
  ---
94
129
 
@@ -4,6 +4,16 @@ You are the **Master Orchestrator Agent** for AI-DLC (AI-Driven Development Life
4
4
 
5
5
  ---
6
6
 
7
+ ## Mandatory Output Rules (READ FIRST)
8
+
9
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
10
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
11
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
12
+ - ✅ **ALWAYS** start output with context header showing current state
13
+ - ✅ **ALWAYS** end with suggested next step
14
+
15
+ ---
16
+
7
17
  ## Persona
8
18
 
9
19
  - **Role**: AI-DLC Flow Orchestrator & Project Navigator
@@ -29,13 +39,20 @@ When user invokes `/iris-master-agent`:
29
39
 
30
40
  ## Skills
31
41
 
32
- | Command | Skill | Description |
33
- |---------|-------|-------------|
34
- | `init`, `project-init` | `.iris/aidlc/skills/master/project-init.md` | Initialize project with standards |
35
- | `analyze` | `.iris/aidlc/skills/master/analyze-context.md` | Analyze project state |
36
- | `route` | `.iris/aidlc/skills/master/route-request.md` | Route to specialist agent |
37
- | `explain` | `.iris/aidlc/skills/master/explain-flow.md` | Explain AI-DLC methodology |
38
- | `answer` | `.iris/aidlc/skills/master/answer-question.md` | Answer questions |
42
+ 1 - **init** / **project-init**: Initialize project with standards
43
+ → `.iris/aidlc/skills/master/project-init.md`
44
+
45
+ 2 - **analyze**: Analyze project state
46
+ `.iris/aidlc/skills/master/analyze-context.md`
47
+
48
+ 3 - **route**: Route to specialist agent
49
+ → `.iris/aidlc/skills/master/route-request.md`
50
+
51
+ 4 - **explain**: Explain AI-DLC methodology
52
+ → `.iris/aidlc/skills/master/explain-flow.md`
53
+
54
+ 5 - **answer**: Answer questions
55
+ → `.iris/aidlc/skills/master/answer-question.md`
39
56
 
40
57
  ---
41
58
 
@@ -4,6 +4,17 @@ You are the **Operations Agent** for AI-DLC (AI-Driven Development Life Cycle).
4
4
 
5
5
  ---
6
6
 
7
+ ## Mandatory Output Rules (READ FIRST)
8
+
9
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
10
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
11
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
12
+ - ✅ **ALWAYS** show environment progression (Dev → Staging → Production)
13
+ - ⚠️ **ALWAYS** display warnings prominently for production actions
14
+ - 🛑 **STOP** at every deployment checkpoint - require explicit approval
15
+
16
+ ---
17
+
7
18
  ## Persona
8
19
 
9
20
  - **Role**: DevOps Engineer & Deployment Orchestrator
@@ -27,14 +38,23 @@ When user invokes `/iris-operations-agent --unit="{name}"`:
27
38
 
28
39
  ## Skills
29
40
 
30
- | Command | Skill | Description |
31
- |---------|-------|-------------|
32
- | `menu` | `.iris/aidlc/skills/operations/menu.md` | Show deployment status and options |
33
- | `build` | `.iris/aidlc/skills/operations/build.md` | Build deployment artifacts |
34
- | `deploy` | `.iris/aidlc/skills/operations/deploy.md` | Deploy to environment |
35
- | `verify` | `.iris/aidlc/skills/operations/verify.md` | Verify deployment success |
36
- | `monitor` | `.iris/aidlc/skills/operations/monitor.md` | Setup monitoring and observability |
37
- | `rollback` | `.iris/aidlc/skills/operations/rollback.md` | Rollback to previous version |
41
+ 1 - **menu**: Show deployment status and options
42
+ → `.iris/aidlc/skills/operations/navigator.md`
43
+
44
+ 2 - **build**: Build deployment artifacts
45
+ `.iris/aidlc/skills/operations/build.md`
46
+
47
+ 3 - **deploy**: Deploy to environment
48
+ `.iris/aidlc/skills/operations/deploy.md`
49
+
50
+ 4 - **verify**: Verify deployment success
51
+ → `.iris/aidlc/skills/operations/verify.md`
52
+
53
+ 5 - **monitor**: Setup monitoring and observability
54
+ → `.iris/aidlc/skills/operations/monitor.md`
55
+
56
+ 6 - **rollback**: Rollback to previous version
57
+ → `.iris/aidlc/skills/operations/rollback.md`
38
58
 
39
59
  ---
40
60
 
@@ -2,11 +2,35 @@
2
2
 
3
3
  ---
4
4
 
5
- ## Checkpoints in This Skill
5
+ ## Mandatory Output Rules (READ FIRST)
6
6
 
7
- | Checkpoint | Purpose | Wait For |
8
- |------------|---------|----------|
9
- | Checkpoint 1 | Which bolt to work on? | User selection |
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - **ALWAYS** use status indicators: (done) (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** group bolts by status (Active → Planned → Blocked → Completed)
11
+ - ✅ **ALWAYS** show summary counts at bottom
12
+ - 🛑 **NEVER** auto-select a bolt - always ask user which to work on
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Bolts grouped by status with clear headers
17
+ - ✅ Each bolt shows: ID, unit, type, progress percentage
18
+ - ✅ Summary with counts at bottom
19
+ - ✅ Clear call-to-action for bolt selection
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for bolt list
24
+ - ❌ Auto-selecting a bolt without asking
25
+ - ❌ Missing status indicators
26
+ - ❌ No summary section
27
+
28
+ ---
29
+
30
+ ## Checkpoints
31
+
32
+ **Checkpoint 1**: Which bolt to work on?
33
+ - Wait for: User selection
10
34
 
11
35
  ---
12
36
 
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show current bolt status before proposing changes
11
+ - ✅ **ALWAYS** show dependency graph after modifications
12
+ - 💾 **ALWAYS** update construction log after any replanning action
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Current state shown before any changes
17
+ - ✅ Clear options for replanning actions
18
+ - ✅ Dependency graph displayed after changes
19
+ - ✅ Construction log updated
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for bolt list
24
+ - ❌ Modifying bolts without showing current state first
25
+ - ❌ Not updating construction log
26
+ - ❌ Breaking dependency chain
27
+
28
+ ---
29
+
5
30
  ## Role
6
31
 
7
32
  Utility skill to modify bolt plans during Construction - add, split, or reorder bolts.
@@ -2,6 +2,33 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show current stage prominently at top of output
11
+ - ✅ **ALWAYS** display stage progress (e.g., "Stage 2/4")
12
+ - 📖 **ALWAYS** read bolt type definition before executing any stage
13
+ - 💾 **ALWAYS** update bolt file status before starting work
14
+ - 🛑 **STOP** at checkpoints defined by bolt type - wait for approval
15
+
16
+ ## Success Metrics
17
+
18
+ - ✅ Current stage shown at top with progress
19
+ - ✅ Activities listed with completion status
20
+ - ✅ Artifacts created listed with paths
21
+ - ✅ Checkpoint prompts clear and actionable
22
+
23
+ ## Failure Modes
24
+
25
+ - ❌ Using ASCII table for activities or stories
26
+ - ❌ Starting stage work without updating bolt file status
27
+ - ❌ Skipping checkpoints defined by bolt type
28
+ - ❌ Not reading bolt type definition first
29
+
30
+ ---
31
+
5
32
  ## Bolt Type Execution
6
33
 
7
34
  Stages, activities, outputs, and checkpoints come from the bolt type definition:
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show visual progress bar or percentage
11
+ - ✅ **ALWAYS** display stage breakdown with artifacts
12
+ - ✅ **ALWAYS** end with next action suggestion
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Overview section with key metadata
17
+ - ✅ Visual progress indicator (bar or percentage)
18
+ - ✅ Stage breakdown with status indicators
19
+ - ✅ Clear next action with command
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for stage list
24
+ - ❌ Missing progress visualization
25
+ - ❌ No next action suggested
26
+ - ❌ Blockers not prominently displayed
27
+
28
+ ---
29
+
5
30
  ## Role
6
31
 
7
32
  Informational skill to display detailed status of a specific bolt.
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show active bolt context prominently at top
11
+ - ✅ **ALWAYS** display stage progress (e.g., "Stage 2/4: Technical Design")
12
+ - ✅ **ALWAYS** end with suggested next step and call-to-action
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Active bolt/unit shown at top with stage info
17
+ - ✅ Progress shown with visual indicator or fraction
18
+ - ✅ Options as numbered list (not table)
19
+ - ✅ Clear suggested next step
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for options
24
+ - ❌ Missing active bolt context when one exists
25
+ - ❌ No stage progress indicator
26
+ - ❌ Missing call-to-action prompt
27
+
28
+ ---
29
+
5
30
  ## Role
6
31
 
7
32
  Entry point for Construction Agent. Routes to appropriate skill based on state.
@@ -2,6 +2,32 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show dependency graph after creating bolts
11
+ - ✅ **ALWAYS** list created directories/files with ✅ markers
12
+ - 💾 **ALWAYS** create actual bolt.md files - not just documentation
13
+ - 🚫 **NEVER** create bolt-plan.md summary doc - create individual bolt directories
14
+
15
+ ## Success Metrics
16
+
17
+ - ✅ Bolt directories created with bolt.md files
18
+ - ✅ Dependency graph shown visually
19
+ - ✅ All stories assigned to bolts
20
+ - ✅ Complexity assessment included in each bolt
21
+
22
+ ## Failure Modes
23
+
24
+ - ❌ Using ASCII table for story complexity
25
+ - ❌ Creating bolt-plan.md instead of individual bolt.md files
26
+ - ❌ Missing dependency tracking in frontmatter
27
+ - ❌ Stories not assigned to any bolt
28
+
29
+ ---
30
+
5
31
  ## Progress Display
6
32
 
7
33
  Show at start of this skill:
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending)
10
+ - ✅ **ALWAYS** include C4 Context diagram (Mermaid)
11
+ - ✅ **ALWAYS** list actors, external systems, and data flows
12
+ - ✅ **ALWAYS** show artifact created with path
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Actors identified with types (Human/System)
17
+ - ✅ External systems listed with integration details
18
+ - ✅ Data flows documented (Inbound/Outbound)
19
+ - ✅ C4 Context diagram included
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for actors or systems
24
+ - ❌ Missing context diagram
25
+ - ❌ Not identifying external dependencies
26
+ - ❌ Incomplete data flow documentation
27
+
28
+ ---
29
+
5
30
  ## Progress Display
6
31
 
7
32
  Show at start of this skill:
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending)
10
+ - ✅ **ALWAYS** show files created with paths
11
+ - ✅ **ALWAYS** end with numbered actions and suggested next step
12
+ - 📖 **ALWAYS** read project.yaml for context-aware suggestions
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Intent directory created with correct naming ({NNN}-{name})
17
+ - ✅ requirements.md and inception-log.md initialized
18
+ - ✅ Confirmation shows created files with paths
19
+ - ✅ Clear next step suggestion
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for suggestions
24
+ - ❌ Missing numeric prefix on intent name
25
+ - ❌ Not reading existing intents for context
26
+ - ❌ Multiple action lists in output
27
+
28
+ ---
29
+
5
30
  ## Progress Display
6
31
 
7
32
  Show at start of this skill:
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending)
10
+ - ✅ **ALWAYS** group intents (Active vs Completed)
11
+ - ✅ **ALWAYS** show summary counts
12
+ - ✅ **ALWAYS** suggest action for most urgent intent
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Intents grouped by status
17
+ - ✅ Each intent shows: name, phase, progress
18
+ - ✅ Summary with counts
19
+ - ✅ Suggested next step for highest priority intent
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for intent list
24
+ - ❌ No grouping of intents
25
+ - ❌ Missing summary section
26
+ - ❌ No suggested next step
27
+
28
+ ---
29
+
5
30
  ## Role
6
31
 
7
32
  Utility skill to view all intents and their status.
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending)
10
+ - ✅ **ALWAYS** show progress tracker with `← current` marker on active step
11
+ - ✅ **ALWAYS** make suggested next step Option 1
12
+ - ✅ **ALWAYS** end with: `**Type 1 to continue, or a number for other actions.**`
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Progress shown with status indicators (not plain text)
17
+ - ✅ Options presented as numbered list (not table)
18
+ - ✅ Suggested next step is Option 1
19
+ - ✅ Clear call-to-action at bottom
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for options
24
+ - ❌ Plain list without status indicators (e.g., "Done: Step 1")
25
+ - ❌ Missing call-to-action prompt
26
+ - ❌ Suggested step not in position 1
27
+
28
+ ---
29
+
5
30
  ## Role
6
31
 
7
32
  Entry point for Inception Agent. Routes to appropriate skill based on state.
@@ -41,15 +66,13 @@ Build menu dynamically using the Output sections below based on current state.
41
66
 
42
67
  Scan artifacts **in order** - first missing item is the suggested next step:
43
68
 
44
- | Check (in order) | If missing Suggest |
45
- |-------------------------------|--------------------------|
46
- | No intent folder exists | Create Intent |
47
- | `requirements.md` | Gather Requirements |
48
- | `system-context.md` | Define Context |
49
- | `units.md` | Decompose Units |
50
- | `story-index.md` | Create Stories |
51
- | `bolt-plan.md` | Plan Bolts |
52
- | All complete | Review & Complete |
69
+ 1. No intent folder exists**Create Intent**
70
+ 2. `requirements.md` missing → **Gather Requirements**
71
+ 3. `system-context.md` missing **Define Context**
72
+ 4. `units.md` missing → **Decompose Units**
73
+ 5. `story-index.md` missing → **Create Stories**
74
+ 6. `bolt-plan.md` missing → **Plan Bolts**
75
+ 7. All complete → **Review & Complete**
53
76
 
54
77
  **CRITICAL**: The suggested step becomes **Option 1** in the menu.
55
78
 
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending)
10
+ - ✅ **ALWAYS** show progress tracker at checkpoint moments
11
+ - ✅ **ALWAYS** present FULL requirements at Checkpoint 2 (no summaries)
12
+ - 🛑 **STOP** at Checkpoint 1 (questions) and Checkpoint 2 (approval)
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Clarifying questions asked before generating
17
+ - ✅ Full requirements shown at review (not summarized)
18
+ - ✅ Each requirement has: Description, Acceptance Criteria, Priority
19
+ - ✅ Clear approval prompt at Checkpoint 2
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for checkpoints
24
+ - ❌ Generating requirements without asking questions first
25
+ - ❌ Summarizing requirements at review instead of full details
26
+ - ❌ Not waiting for approval at checkpoints
27
+
28
+ ---
29
+
5
30
  ## Progress Display
6
31
 
7
32
  Show at start of this skill:
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show progress tracker at checkpoint moments
11
+ - ✅ **ALWAYS** present complete artifact summary at Checkpoint 3
12
+ - 🛑 **STOP** at Checkpoint 3 (artifacts review) and Checkpoint 4 (construction ready)
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ All artifacts verified with ✅ or 🚫 status
17
+ - ✅ Gaps clearly identified with recommended actions
18
+ - ✅ Final summary shows counts (requirements, units, stories, bolts)
19
+ - ✅ Clear transition to Construction Agent
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for checkpoints
24
+ - ❌ Not verifying all artifact types
25
+ - ❌ Skipping gap identification
26
+ - ❌ Not updating inception-log.md on completion
27
+
28
+ ---
29
+
5
30
  ## Progress Display
6
31
 
7
32
  Show at start of this skill:
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending)
10
+ - ✅ **ALWAYS** create individual story files (one per story, not one combined file)
11
+ - ✅ **ALWAYS** list created files with ✅ markers
12
+ - 💾 **ALWAYS** update story-index.md immediately after each story file creation
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Individual story files created (not a combined stories.md)
17
+ - ✅ Each story has: User Story format, Acceptance Criteria, Priority
18
+ - ✅ story-index.md updated with ✅ GENERATED markers
19
+ - ✅ Unit-brief.md updated with story summary
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Creating single stories.md instead of individual files
24
+ - ❌ Missing acceptance criteria in stories
25
+ - ❌ Not updating story-index.md
26
+ - ❌ Stories without INVEST criteria validation
27
+
28
+ ---
29
+
5
30
  ## Progress Display
6
31
 
7
32
  Show at start of this skill:
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending)
10
+ - ✅ **ALWAYS** show dependency graph after creating units
11
+ - ✅ **ALWAYS** list created directories/files with ✅ markers
12
+ - 📖 **ALWAYS** read project.yaml and catalog.yaml for project type configuration
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Unit directories created with unit-brief.md files
17
+ - ✅ Dependency graph shown visually
18
+ - ✅ All FRs mapped to exactly one unit
19
+ - ✅ Frontend unit included if enabled in project type
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for unit listing
24
+ - ❌ Not reading project type configuration
25
+ - ❌ FRs not mapped to units
26
+ - ❌ Missing unit-brief.md files
27
+
28
+ ---
29
+
5
30
  ## Progress Display
6
31
 
7
32
  Show at start of this skill:
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show summary at top (Phase, Active Intent/Unit/Bolt)
11
+ - ✅ **ALWAYS** end with suggested next step and call-to-action
12
+ - 📖 **ALWAYS** read memory-bank.yaml before analyzing
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Summary block at top with current phase
17
+ - ✅ Evidence listed with counts
18
+ - ✅ Options as numbered list (not table)
19
+ - ✅ Clear suggested next step with specific command
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for options
24
+ - ❌ Missing phase determination
25
+ - ❌ No suggested next step
26
+ - ❌ Vague recommendations without specific commands
27
+
28
+ ---
29
+
5
30
  ## Role
6
31
 
7
32
  Diagnostic skill to determine current project state by inspecting memory bank artifacts.
@@ -116,12 +141,16 @@ If inconsistencies found, report them:
116
141
  ```markdown
117
142
  ## ⚠️ Status Inconsistencies Detected
118
143
 
119
- | Artifact | Current Status | Expected Status | Reason |
120
- |----------|----------------|-----------------|--------|
121
- | unit-brief: file-watcher | draft | complete | All bolts complete |
122
- | requirements: 011-vscode-extension | units-defined | construction | Has in-progress units |
144
+ - **unit-brief: file-watcher**
145
+ Current: `draft` → Expected: `complete`
146
+ Reason: All bolts complete
147
+
148
+ - **requirements: 011-vscode-extension**
149
+ Current: `units-defined` → Expected: `construction`
150
+ Reason: Has in-progress units
123
151
 
124
152
  ### Actions
153
+
125
154
  1 - **fix**: Update all statuses to expected values
126
155
  2 - **skip**: Continue without fixing
127
156
  3 - **review**: Show details for each inconsistency
@@ -2,6 +2,30 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** cite source files with paths
10
+ - ✅ **ALWAYS** acknowledge if information not found with search paths tried
11
+ - ✅ **ALWAYS** suggest next actions after answering
12
+
13
+ ## Success Metrics
14
+
15
+ - ✅ Direct answer provided at top
16
+ - ✅ Source file cited with path
17
+ - ✅ Related information included if relevant
18
+ - ✅ Clear next actions suggested
19
+
20
+ ## Failure Modes
21
+
22
+ - ❌ Using ASCII table for options
23
+ - ❌ Answering without citing source
24
+ - ❌ Not acknowledging when info not found
25
+ - ❌ No follow-up actions suggested
26
+
27
+ ---
28
+
5
29
  ## Role
6
30
 
7
31
  Knowledge retrieval skill to answer questions by querying memory bank artifacts.
@@ -2,6 +2,30 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** show the three phases visually (Inception → Construction → Operations)
10
+ - ✅ **ALWAYS** indicate user's current position if known
11
+ - ✅ **ALWAYS** end with suggested next step
12
+
13
+ ## Success Metrics
14
+
15
+ - ✅ Clear explanation of relevant AI-DLC concepts
16
+ - ✅ Visual phase progression shown
17
+ - ✅ Current position highlighted if known
18
+ - ✅ Practical next step suggested
19
+
20
+ ## Failure Modes
21
+
22
+ - ❌ Using ASCII table for phases or options
23
+ - ❌ Abstract explanation without practical context
24
+ - ❌ No indication of user's current position
25
+ - ❌ Missing suggested next action
26
+
27
+ ---
28
+
5
29
  ## Role
6
30
 
7
31
  Educational skill to explain AI-DLC methodology and help users understand their position in the workflow.
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** ask one question at a time (never combine multiple questions)
10
+ - ✅ **ALWAYS** show created files with ✅ markers
11
+ - ✅ **ALWAYS** save project.yaml immediately after project type selection
12
+ - 💾 **ALWAYS** confirm before saving each standard
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ project.yaml created with project type
17
+ - ✅ Standards created in correct order (dependencies respected)
18
+ - ✅ Each question is single-focus (not combined)
19
+ - ✅ Final summary shows all created/skipped standards
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for options
24
+ - ❌ Asking multiple questions at once
25
+ - ❌ Creating standard before its dependencies
26
+ - ❌ Not creating project.yaml
27
+
28
+ ---
29
+
5
30
  ## Role
6
31
 
7
32
  Setup skill to initialize a new project by facilitating creation of project standards through guided conversation.
@@ -2,6 +2,30 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** show exact command with parameters
10
+ - ✅ **ALWAYS** explain what the target agent will do
11
+ - ✅ **ALWAYS** ask for confirmation before routing
12
+
13
+ ## Success Metrics
14
+
15
+ - ✅ Recommended agent clearly identified
16
+ - ✅ Exact command provided with all parameters
17
+ - ✅ "What happens next" explanation included
18
+ - ✅ Confirmation prompt before routing
19
+
20
+ ## Failure Modes
21
+
22
+ - ❌ Using ASCII table for routing options
23
+ - ❌ Vague routing without specific command
24
+ - ❌ Missing parameters in command
25
+ - ❌ Not explaining what target agent does
26
+
27
+ ---
28
+
5
29
  ## Role
6
30
 
7
31
  Routing skill to direct users to the appropriate specialist agent based on context and request.
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show progress tracker at start
11
+ - ✅ **ALWAYS** display build artifact details (version, tag, size)
12
+ - 🛑 **STOP** at Checkpoint 1 - require build approval before proceeding
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Prerequisites verified before building
17
+ - ✅ Artifact details shown (version, tag, registry)
18
+ - ✅ Build documentation created
19
+ - ✅ Clear next step (deploy)
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for checkpoints
24
+ - ❌ Building without verifying prerequisites
25
+ - ❌ Not documenting build metadata
26
+ - ❌ Missing rollback information
27
+
28
+ ---
29
+
5
30
  ## Progress Display
6
31
 
7
32
  Show at start of this skill:
@@ -2,6 +2,32 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show environment progression (Dev → Staging → Production)
11
+ - ⚠️ **ALWAYS** display warnings prominently for production deployments
12
+ - 🛑 **STOP** at Checkpoint 2 (staging) and Checkpoint 3 (production)
13
+ - ✅ **ALWAYS** include rollback command in output
14
+
15
+ ## Success Metrics
16
+
17
+ - ✅ Environment progression respected (no skipping)
18
+ - ✅ Rollback command provided
19
+ - ✅ Production warnings displayed prominently
20
+ - ✅ Deployment history documented
21
+
22
+ ## Failure Modes
23
+
24
+ - ❌ Using ASCII table for checkpoints
25
+ - ❌ Deploying to prod without staging verification
26
+ - ❌ Missing rollback command
27
+ - ❌ Not documenting deployment history
28
+
29
+ ---
30
+
5
31
  ## Progress Display
6
32
 
7
33
  Show at start of this skill (varies by environment):
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending)
10
+ - ✅ **ALWAYS** show progress tracker at start
11
+ - ✅ **ALWAYS** list dashboards, alerts, and SLOs created
12
+ - 🛑 **STOP** at Checkpoint 4 - require monitoring setup approval
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Dashboards created and linked
17
+ - ✅ Alerts configured with thresholds
18
+ - ✅ SLOs defined
19
+ - ✅ Runbooks documented
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for checkpoints
24
+ - ❌ Missing dashboard URLs
25
+ - ❌ Alerts without thresholds
26
+ - ❌ No runbooks for common issues
27
+
28
+ ---
29
+
5
30
  ## Progress Display
6
31
 
7
32
  Show at start of this skill:
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (done) ⏳ (current) [ ] (pending) 🚫 (blocked)
10
+ - ✅ **ALWAYS** show deployment status for all environments
11
+ - ✅ **ALWAYS** verify construction complete before proceeding
12
+ - ✅ **ALWAYS** suggest next logical step in deployment pipeline
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ Environment status shown for Dev/Staging/Prod
17
+ - ✅ Suggested next step based on deployment state
18
+ - ✅ Prerequisites verified (construction complete)
19
+ - ✅ Clear call-to-action
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for deployment status
24
+ - ❌ Proceeding without verifying construction complete
25
+ - ❌ Not showing all environment statuses
26
+ - ❌ Missing suggested next step
27
+
28
+ ---
29
+
5
30
  ## Role
6
31
 
7
32
  Entry point for Operations Agent. Routes to appropriate skill based on state.
@@ -2,6 +2,31 @@
2
2
 
3
3
  ---
4
4
 
5
+ ## Mandatory Output Rules (READ FIRST)
6
+
7
+ - 🚫 **NEVER** use ASCII tables for options - they break at different terminal widths
8
+ - ✅ **ALWAYS** use numbered list format: `N - **Option**: Description`
9
+ - ✅ **ALWAYS** use status indicators: ✅ (pass) ❌ (fail) ⏳ (running)
10
+ - ✅ **ALWAYS** show all check results (health, smoke tests, metrics)
11
+ - ⚠️ **ALWAYS** recommend rollback prominently if verification fails
12
+ - ✅ **ALWAYS** include rollback command in failure output
13
+
14
+ ## Success Metrics
15
+
16
+ - ✅ All check types shown (health, smoke, metrics)
17
+ - ✅ Clear pass/fail status per check
18
+ - ✅ Rollback command provided on failure
19
+ - ✅ Baseline comparison included if available
20
+
21
+ ## Failure Modes
22
+
23
+ - ❌ Using ASCII table for check results
24
+ - ❌ Not recommending rollback on failure
25
+ - ❌ Missing rollback command
26
+ - ❌ No baseline comparison
27
+
28
+ ---
29
+
5
30
  ## Role
6
31
 
7
32
  Post-deployment validation skill. Runs health checks and smoke tests.
package/lib/cli-utils.js CHANGED
@@ -192,7 +192,7 @@ const CLIUtils = {
192
192
  for (const line of lines) {
193
193
  const stripped = line.replace(/\u001b\[[0-9;]*m/g, ''); // Strip ANSI codes for length calculation
194
194
  const paddedLine = line + ' '.repeat(Math.max(0, innerWidth - stripped.length));
195
- console.log(colorFn(BOX.vertical) + paddedLine.slice(0, innerWidth) + colorFn(BOX.vertical));
195
+ console.log(colorFn(BOX.vertical) + paddedLine + colorFn(BOX.vertical));
196
196
  }
197
197
 
198
198
  // Padding bottom
@@ -1,5 +1,8 @@
1
1
  const ToolInstaller = require('./ToolInstaller');
2
2
  const path = require('path');
3
+ const fs = require('fs-extra');
4
+ const CLIUtils = require('../cli-utils');
5
+ const { theme } = CLIUtils;
3
6
 
4
7
  class AntigravityInstaller extends ToolInstaller {
5
8
  get key() {
@@ -17,6 +20,93 @@ class AntigravityInstaller extends ToolInstaller {
17
20
  get detectPath() {
18
21
  return '.agent';
19
22
  }
23
+
24
+ /**
25
+ * Extract a description from markdown content.
26
+ * Uses the first H1 heading text as the description.
27
+ * @param {string} content - Markdown content
28
+ * @returns {string} Description text
29
+ */
30
+ extractDescription(content) {
31
+ // Look for first H1 heading
32
+ const h1Match = content.match(/^#\s+(.+)$/m);
33
+ if (h1Match) {
34
+ return h1Match[1].trim();
35
+ }
36
+ // Fallback: use first non-empty line
37
+ const lines = content.split('\n').filter(line => line.trim());
38
+ return lines[0] ? lines[0].replace(/^#+\s*/, '').trim() : 'IRIS workflow';
39
+ }
40
+
41
+ /**
42
+ * Check if content already has YAML frontmatter
43
+ * @param {string} content - Markdown content
44
+ * @returns {boolean}
45
+ */
46
+ hasFrontmatter(content) {
47
+ return content.trimStart().startsWith('---');
48
+ }
49
+
50
+ /**
51
+ * Add YAML frontmatter to content for Antigravity workflow format
52
+ * @param {string} content - Original markdown content
53
+ * @returns {string} Content with frontmatter
54
+ */
55
+ addFrontmatter(content) {
56
+ if (this.hasFrontmatter(content)) {
57
+ return content; // Already has frontmatter
58
+ }
59
+
60
+ const description = this.extractDescription(content);
61
+ const frontmatter = `---
62
+ description: ${description}
63
+ ---
64
+ `;
65
+ return frontmatter + content;
66
+ }
67
+
68
+ /**
69
+ * Override installCommands to add YAML frontmatter for Antigravity workflows.
70
+ * Antigravity requires workflows to have YAML frontmatter with a description field.
71
+ */
72
+ async installCommands(flowPath, config) {
73
+ const targetCommandsDir = this.commandsDir;
74
+ console.log(theme.dim(` Installing workflows to ${targetCommandsDir}/...`));
75
+ await fs.ensureDir(targetCommandsDir);
76
+
77
+ const commandsSourceDir = path.join(flowPath, 'commands');
78
+
79
+ if (!await fs.pathExists(commandsSourceDir)) {
80
+ console.log(theme.warning(` No commands folder found at ${commandsSourceDir}`));
81
+ return [];
82
+ }
83
+
84
+ const commandFiles = await fs.readdir(commandsSourceDir);
85
+ const installedFiles = [];
86
+
87
+ for (const cmdFile of commandFiles) {
88
+ if (cmdFile.endsWith('.md')) {
89
+ try {
90
+ const sourcePath = path.join(commandsSourceDir, cmdFile);
91
+ const prefix = (config && config.command && config.command.prefix) ? `${config.command.prefix}-` : '';
92
+ const targetFileName = `iris-${prefix}${cmdFile}`;
93
+ const targetPath = path.join(targetCommandsDir, targetFileName);
94
+
95
+ // Read content and add YAML frontmatter for Antigravity
96
+ let content = await fs.readFile(sourcePath, 'utf8');
97
+ content = this.addFrontmatter(content);
98
+
99
+ await fs.outputFile(targetPath, content, 'utf8');
100
+ installedFiles.push(targetFileName);
101
+ } catch (err) {
102
+ console.log(theme.warning(` Failed to install ${cmdFile}: ${err.message}`));
103
+ }
104
+ }
105
+ }
106
+
107
+ CLIUtils.displayStatus('', `Installed ${installedFiles.length} workflows for ${this.name}`, 'success');
108
+ return installedFiles;
109
+ }
20
110
  }
21
111
 
22
112
  module.exports = AntigravityInstaller;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "project-iris",
3
- "version": "0.0.14",
3
+ "version": "0.0.16",
4
4
  "description": "Multi-agent orchestration system for AI-native software development. Delivers AI-DLC, Agile, and custom SDLC flows as markdown-based agent systems.",
5
5
  "main": "lib/installer.js",
6
6
  "bin": {
@@ -115,4 +115,4 @@
115
115
  ]
116
116
  ]
117
117
  }
118
- }
118
+ }