@cluesmith/codev 3.0.0-rc.9 → 3.0.1

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 (169) hide show
  1. package/LICENSE +201 -0
  2. package/{dashboard/dist/assets/index-Bs8I7N2s.css → dashboard-dist/assets/index-BWYZtvwm.css} +1 -1
  3. package/dashboard-dist/assets/index-Dn9zmcKp.js +195 -0
  4. package/dashboard-dist/assets/index-Dn9zmcKp.js.map +1 -0
  5. package/{dashboard/dist → dashboard-dist}/index.html +2 -2
  6. package/dist/agent-farm/cli.d.ts.map +1 -1
  7. package/dist/agent-farm/cli.js +1 -2
  8. package/dist/agent-farm/cli.js.map +1 -1
  9. package/dist/agent-farm/commands/bench.d.ts +1 -1
  10. package/dist/agent-farm/commands/bench.js +1 -1
  11. package/dist/agent-farm/commands/spawn-roles.d.ts +7 -3
  12. package/dist/agent-farm/commands/spawn-roles.d.ts.map +1 -1
  13. package/dist/agent-farm/commands/spawn-roles.js +47 -27
  14. package/dist/agent-farm/commands/spawn-roles.js.map +1 -1
  15. package/dist/agent-farm/commands/spawn.d.ts.map +1 -1
  16. package/dist/agent-farm/commands/spawn.js +51 -33
  17. package/dist/agent-farm/commands/spawn.js.map +1 -1
  18. package/dist/agent-farm/commands/status.js +5 -1
  19. package/dist/agent-farm/commands/status.js.map +1 -1
  20. package/dist/agent-farm/lib/tower-client.d.ts +6 -230
  21. package/dist/agent-farm/lib/tower-client.d.ts.map +1 -1
  22. package/dist/agent-farm/lib/tower-client.js +6 -293
  23. package/dist/agent-farm/lib/tower-client.js.map +1 -1
  24. package/dist/agent-farm/servers/overview.d.ts +2 -1
  25. package/dist/agent-farm/servers/overview.d.ts.map +1 -1
  26. package/dist/agent-farm/servers/overview.js +36 -5
  27. package/dist/agent-farm/servers/overview.js.map +1 -1
  28. package/dist/agent-farm/servers/tower-instances.d.ts.map +1 -1
  29. package/dist/agent-farm/servers/tower-instances.js +3 -2
  30. package/dist/agent-farm/servers/tower-instances.js.map +1 -1
  31. package/dist/agent-farm/servers/tower-routes.d.ts.map +1 -1
  32. package/dist/agent-farm/servers/tower-routes.js +10 -0
  33. package/dist/agent-farm/servers/tower-routes.js.map +1 -1
  34. package/dist/agent-farm/servers/tower-server.js +1 -1
  35. package/dist/cli.js +2 -2
  36. package/dist/cli.js.map +1 -1
  37. package/dist/commands/consult/index.d.ts +31 -1
  38. package/dist/commands/consult/index.d.ts.map +1 -1
  39. package/dist/commands/consult/index.js +106 -19
  40. package/dist/commands/consult/index.js.map +1 -1
  41. package/dist/commands/porch/artifacts.d.ts +11 -1
  42. package/dist/commands/porch/artifacts.d.ts.map +1 -1
  43. package/dist/commands/porch/artifacts.js +12 -2
  44. package/dist/commands/porch/artifacts.js.map +1 -1
  45. package/dist/commands/porch/index.d.ts +5 -1
  46. package/dist/commands/porch/index.d.ts.map +1 -1
  47. package/dist/commands/porch/index.js +178 -27
  48. package/dist/commands/porch/index.js.map +1 -1
  49. package/dist/commands/porch/next.d.ts.map +1 -1
  50. package/dist/commands/porch/next.js +54 -28
  51. package/dist/commands/porch/next.js.map +1 -1
  52. package/dist/commands/porch/state.d.ts +24 -2
  53. package/dist/commands/porch/state.d.ts.map +1 -1
  54. package/dist/commands/porch/state.js +65 -10
  55. package/dist/commands/porch/state.js.map +1 -1
  56. package/dist/commands/porch/types.d.ts +8 -0
  57. package/dist/commands/porch/types.d.ts.map +1 -1
  58. package/dist/lib/forge-contracts.d.ts +3 -0
  59. package/dist/lib/forge-contracts.d.ts.map +1 -1
  60. package/dist/lib/forge-contracts.js.map +1 -1
  61. package/dist/lib/team-github.d.ts +47 -0
  62. package/dist/lib/team-github.d.ts.map +1 -1
  63. package/dist/lib/team-github.js +111 -2
  64. package/dist/lib/team-github.js.map +1 -1
  65. package/dist/terminal/ws-protocol.d.ts +10 -8
  66. package/dist/terminal/ws-protocol.d.ts.map +1 -1
  67. package/dist/terminal/ws-protocol.js +3 -0
  68. package/dist/terminal/ws-protocol.js.map +1 -1
  69. package/package.json +27 -25
  70. package/scripts/forge/gitea/auth-status.sh +0 -0
  71. package/scripts/forge/gitea/issue-comment.sh +0 -0
  72. package/scripts/forge/gitea/issue-list.sh +0 -0
  73. package/scripts/forge/gitea/issue-view.sh +0 -0
  74. package/scripts/forge/gitea/pr-exists.sh +4 -1
  75. package/scripts/forge/gitea/pr-list.sh +0 -0
  76. package/scripts/forge/gitea/pr-merge.sh +0 -0
  77. package/scripts/forge/gitea/pr-view.sh +0 -0
  78. package/scripts/forge/gitea/recently-closed.sh +0 -0
  79. package/scripts/forge/gitea/recently-merged.sh +0 -0
  80. package/scripts/forge/gitea/repo-archive.sh +0 -0
  81. package/scripts/forge/gitea/user-identity.sh +0 -0
  82. package/scripts/forge/github/auth-status.sh +0 -0
  83. package/scripts/forge/github/issue-comment.sh +0 -0
  84. package/scripts/forge/github/issue-list.sh +2 -2
  85. package/scripts/forge/github/issue-view.sh +0 -0
  86. package/scripts/forge/github/on-it-timestamps.sh +0 -0
  87. package/scripts/forge/github/pr-diff.sh +0 -0
  88. package/scripts/forge/github/pr-exists.sh +3 -1
  89. package/scripts/forge/github/pr-list.sh +0 -0
  90. package/scripts/forge/github/pr-merge.sh +0 -0
  91. package/scripts/forge/github/pr-search.sh +0 -0
  92. package/scripts/forge/github/pr-view.sh +0 -0
  93. package/scripts/forge/github/recently-closed.sh +0 -0
  94. package/scripts/forge/github/recently-merged.sh +0 -0
  95. package/scripts/forge/github/repo-archive.sh +0 -0
  96. package/scripts/forge/github/team-activity.sh +0 -0
  97. package/scripts/forge/github/user-identity.sh +0 -0
  98. package/scripts/forge/gitlab/auth-status.sh +0 -0
  99. package/scripts/forge/gitlab/issue-comment.sh +0 -0
  100. package/scripts/forge/gitlab/issue-list.sh +0 -0
  101. package/scripts/forge/gitlab/issue-view.sh +0 -0
  102. package/scripts/forge/gitlab/pr-diff.sh +0 -0
  103. package/scripts/forge/gitlab/pr-exists.sh +3 -1
  104. package/scripts/forge/gitlab/pr-list.sh +0 -0
  105. package/scripts/forge/gitlab/pr-merge.sh +0 -0
  106. package/scripts/forge/gitlab/pr-search.sh +0 -0
  107. package/scripts/forge/gitlab/pr-view.sh +0 -0
  108. package/scripts/forge/gitlab/recently-closed.sh +0 -0
  109. package/scripts/forge/gitlab/recently-merged.sh +0 -0
  110. package/scripts/forge/gitlab/repo-archive.sh +0 -0
  111. package/scripts/forge/gitlab/user-identity.sh +0 -0
  112. package/scripts/postinstall.mjs +51 -0
  113. package/skeleton/.claude/skills/afx/SKILL.md +1 -3
  114. package/skeleton/.claude/skills/consult/SKILL.md +1 -1
  115. package/skeleton/.claude/skills/porch/SKILL.md +2 -2
  116. package/skeleton/protocol-schema.json +2 -2
  117. package/skeleton/protocols/air/prompts/pr.md +15 -3
  118. package/skeleton/protocols/air/protocol.md +0 -1
  119. package/skeleton/protocols/aspir/builder-prompt.md +23 -1
  120. package/skeleton/protocols/aspir/prompts/review.md +11 -0
  121. package/skeleton/protocols/aspir/protocol.json +8 -0
  122. package/skeleton/protocols/aspir/templates/plan.md +0 -20
  123. package/skeleton/protocols/aspir/templates/spec.md +0 -28
  124. package/skeleton/protocols/bugfix/builder-prompt.md +1 -1
  125. package/skeleton/protocols/bugfix/prompts/pr.md +15 -3
  126. package/skeleton/protocols/experiment/builder-prompt.md +15 -0
  127. package/skeleton/protocols/experiment/protocol.md +1 -6
  128. package/skeleton/protocols/maintain/builder-prompt.md +12 -11
  129. package/skeleton/protocols/maintain/prompts/maintain.md +88 -0
  130. package/skeleton/protocols/maintain/prompts/review.md +84 -0
  131. package/skeleton/protocols/maintain/protocol.json +14 -68
  132. package/skeleton/protocols/maintain/protocol.md +110 -408
  133. package/skeleton/protocols/maintain/templates/maintenance-run.md +18 -49
  134. package/skeleton/protocols/protocol-schema.json +1 -1
  135. package/skeleton/protocols/research/builder-prompt.md +85 -0
  136. package/skeleton/protocols/research/protocol.json +118 -0
  137. package/skeleton/protocols/research/protocol.md +169 -0
  138. package/skeleton/protocols/spike/protocol.md +1 -1
  139. package/skeleton/protocols/spir/builder-prompt.md +24 -1
  140. package/skeleton/protocols/spir/prompts/review.md +11 -0
  141. package/skeleton/protocols/spir/protocol.json +8 -0
  142. package/skeleton/protocols/spir/templates/plan.md +0 -20
  143. package/skeleton/protocols/spir/templates/spec.md +0 -28
  144. package/skeleton/resources/commands/agent-farm.md +2 -2
  145. package/skeleton/resources/commands/consult.md +15 -6
  146. package/skeleton/resources/commands/overview.md +0 -1
  147. package/skeleton/roles/architect.md +1 -1
  148. package/skeleton/roles/builder.md +11 -3
  149. package/skeleton/templates/AGENTS.md +3 -1
  150. package/skeleton/templates/CLAUDE.md +3 -1
  151. package/skeleton/templates/cheatsheet.md +2 -2
  152. package/dashboard/dist/assets/index-DleIqu7L.js +0 -194
  153. package/dashboard/dist/assets/index-DleIqu7L.js.map +0 -1
  154. package/skeleton/porch/prompts/understand.md +0 -61
  155. package/skeleton/porch/prompts/verify.md +0 -58
  156. package/skeleton/protocols/maintain/prompts/audit.md +0 -111
  157. package/skeleton/protocols/maintain/prompts/clean.md +0 -91
  158. package/skeleton/protocols/maintain/prompts/sync.md +0 -113
  159. package/skeleton/protocols/maintain/prompts/verify.md +0 -110
  160. package/skeleton/protocols/tick/builder-prompt.md +0 -65
  161. package/skeleton/protocols/tick/consult-types/impl-review.md +0 -72
  162. package/skeleton/protocols/tick/consult-types/plan-review.md +0 -59
  163. package/skeleton/protocols/tick/consult-types/pr-review.md +0 -72
  164. package/skeleton/protocols/tick/consult-types/spec-review.md +0 -55
  165. package/skeleton/protocols/tick/protocol.json +0 -151
  166. package/skeleton/protocols/tick/protocol.md +0 -277
  167. package/skeleton/protocols/tick/templates/plan.md +0 -67
  168. package/skeleton/protocols/tick/templates/review.md +0 -89
  169. package/skeleton/protocols/tick/templates/spec.md +0 -61
@@ -1,6 +1,6 @@
1
1
  # consult - AI Consultation CLI
2
2
 
3
- The `consult` command provides a unified interface for AI consultation with external models (Gemini, Codex, Claude). It operates in three modes: general (ad-hoc prompts), protocol-based (structured reviews), and stats.
3
+ The `consult` command provides a unified interface for AI consultation with external models (Gemini, Codex, Claude, Hermes). It operates in three modes: general (ad-hoc prompts), protocol-based (structured reviews), and stats.
4
4
 
5
5
  ## Synopsis
6
6
 
@@ -22,6 +22,7 @@ consult stats [options]
22
22
  | `gemini` | `pro` | gemini-cli | File access via --yolo, fast |
23
23
  | `codex` | `gpt` | @openai/codex | Read-only sandbox, thorough |
24
24
  | `claude` | `opus` | Claude Agent SDK | Balanced analysis with tool use |
25
+ | `hermes` | - | hermes CLI (`hermes chat -q`) | Uses Hermes agent as consult backend |
25
26
 
26
27
  ## Modes
27
28
 
@@ -45,7 +46,7 @@ Cannot combine `--prompt` with `--prompt-file` or `--type`.
45
46
 
46
47
  ### Protocol Mode
47
48
 
48
- Run structured reviews tied to a development protocol (SPIR, TICK, bugfix, maintain).
49
+ Run structured reviews tied to a development protocol (SPIR, ASPIR, AIR, bugfix, maintain).
49
50
 
50
51
  ```bash
51
52
  # Review a spec (auto-detects project context in builder worktrees)
@@ -68,7 +69,7 @@ consult -m gemini --type integration
68
69
  ```
69
70
 
70
71
  **Options:**
71
- - `--protocol <name>` — Protocol: spir, bugfix, tick, maintain
72
+ - `--protocol <name>` — Protocol: spir, aspir, air, bugfix, maintain
72
73
  - `-t, --type <type>` — Review type: spec, plan, impl, pr, phase, integration
73
74
  - `--issue <number>` — Issue number (required from architect context)
74
75
 
@@ -108,16 +109,21 @@ These flags are used by porch (the protocol orchestrator) when generating consul
108
109
  --project-id <id> Project ID for metrics
109
110
  ```
110
111
 
111
- ## Parallel Consultation (3-Way Reviews)
112
+ ## Parallel Consultation (Multi-Model Reviews)
113
+
114
+ Default project configuration uses a 3-model set (`gemini`, `codex`, `claude`).
112
115
 
113
116
  For thorough reviews, run multiple models in parallel:
114
117
 
115
118
  ```bash
116
- # 3-way spec review
119
+ # Default 3-way spec review
117
120
  consult -m gemini --protocol spir --type spec &
118
121
  consult -m codex --protocol spir --type spec &
119
122
  consult -m claude --protocol spir --type spec &
120
123
  wait
124
+
125
+ # Optional: include Hermes as a 4th reviewer
126
+ consult -m hermes --protocol spir --type spec
121
127
  ```
122
128
 
123
129
  ## Performance
@@ -183,12 +189,15 @@ consult -m codex --protocol spir --type pr --issue 42
183
189
  # Protocol: implementation review with bugfix protocol
184
190
  consult -m claude --protocol bugfix --type impl
185
191
 
186
- # 3-way parallel review
192
+ # Default 3-way parallel review
187
193
  consult -m gemini --protocol spir --type spec &
188
194
  consult -m codex --protocol spir --type spec &
189
195
  consult -m claude --protocol spir --type spec &
190
196
  wait
191
197
 
198
+ # Optional: include Hermes as an additional reviewer
199
+ consult -m hermes --protocol spir --type spec
200
+
192
201
  # Stats
193
202
  consult stats --days 7 --json
194
203
  ```
@@ -91,6 +91,5 @@ Agent Farm is configured via `.codev/config.json` at the project root. Created d
91
91
  ## Related Documentation
92
92
 
93
93
  - [SPIR Protocol](../protocols/spir/protocol.md) - Multi-phase development workflow
94
- - [TICK Protocol](../protocols/tick/protocol.md) - Fast amendment workflow
95
94
  - [Architect Role](../roles/architect.md) - Architect responsibilities
96
95
  - [Builder Role](../roles/builder.md) - Builder responsibilities
@@ -29,7 +29,7 @@ Builders work autonomously in isolated git worktrees. The Architect:
29
29
 
30
30
  1. **`git status`** — Ensure worktree is clean (no uncommitted changes)
31
31
  2. **Commit if needed** — Builders branch from HEAD; uncommitted specs/plans are invisible
32
- 3. **`afx spawn N --protocol <name>`** — `--protocol` is **REQUIRED** (spir, bugfix, tick, etc.)
32
+ 3. **`afx spawn N --protocol <name>`** — `--protocol` is **REQUIRED** (spir, aspir, air, bugfix, etc.)
33
33
 
34
34
  The spawn command will refuse if the worktree is dirty (override with `--force`, but your builder won't see uncommitted files).
35
35
 
@@ -85,12 +85,13 @@ cat codev/protocols/spir/protocol.md
85
85
  # Start implementing
86
86
  ```
87
87
 
88
- ### The SPIR Protocol (Specify → Plan → Implement → Review)
88
+ ### The SPIR Protocol (Specify → Plan → Implement → Review (→ Verify))
89
89
 
90
90
  1. **Specify**: Read or create the spec at `codev/specs/XXXX-name.md`
91
91
  2. **Plan**: Read or create the plan at `codev/plans/XXXX-name.md`
92
92
  3. **Implement**: Write code following the plan phases
93
93
  4. **Review**: Write lessons learned and create PR
94
+ 5. **Verify** (optional): After PR merge, verify the feature works in the integrated codebase
94
95
 
95
96
  ### Consultations
96
97
 
@@ -147,9 +148,9 @@ afx status # All builders
147
148
  |------|-------------|
148
149
  | **Gate reached** | `afx send architect "Project XXXX: <gate-name> ready for approval"` |
149
150
  | **PR ready** | `afx send architect "PR #N ready for review"` |
150
- | **PR merged** | `afx send architect "Project XXXX complete. PR merged. Ready for cleanup."` |
151
+ | **PR merged** | `afx send architect "Project XXXX complete. PR merged. Entering verify phase."` |
151
152
  | **Blocked/stuck** | `afx send architect "Blocked on X — need guidance"` |
152
- | **Escalation needed** | `afx send architect "Issue too complex — recommend escalating to SPIR/TICK"` |
153
+ | **Escalation needed** | `afx send architect "Issue too complex — recommend escalating to SPIR"` |
153
154
 
154
155
  The architect may be working on other tasks and won't know you need attention unless you send a message. **Don't assume they're watching** — always notify explicitly.
155
156
 
@@ -171,6 +172,13 @@ Can't find the auth helper mentioned in spec. Options:
171
172
  Waiting for Architect guidance.
172
173
  ```
173
174
 
175
+ ## Multi-PR Workflow
176
+
177
+ Builders may submit multiple sequential PRs within a single worktree session. The worktree persists across PRs -- it is not cleaned up automatically after merge. This allows builders to do follow-up work (e.g., addressing review feedback in a second PR, or splitting large features across checkpoint PRs).
178
+
179
+ - **Worktree cleanup is architect-driven** -- the architect decides when to run `afx cleanup`, not the builder
180
+ - If a builder session is interrupted, use `afx spawn XXXX --resume` to reconnect to the existing worktree
181
+
174
182
  ## Constraints
175
183
 
176
184
  - **Stay in scope** - Only implement what's in the spec
@@ -10,9 +10,11 @@ This project uses **Codev** for AI-assisted development.
10
10
 
11
11
  - **SPIR**: Multi-phase development with consultation (`codev/protocols/spir/protocol.md`)
12
12
  - **ASPIR**: Autonomous SPIR — no human gates on spec/plan (`codev/protocols/aspir/protocol.md`)
13
- - **TICK**: Fast autonomous implementation (`codev/protocols/tick/protocol.md`)
13
+ - **AIR**: Autonomous Implement & Review for small features (`codev/protocols/air/protocol.md`)
14
+ - **BUGFIX**: Bug fixes from GitHub issues (`codev/protocols/bugfix/protocol.md`)
14
15
  - **EXPERIMENT**: Disciplined experimentation (`codev/protocols/experiment/protocol.md`)
15
16
  - **MAINTAIN**: Codebase maintenance (`codev/protocols/maintain/protocol.md`)
17
+ - **RESEARCH**: Multi-agent research with 3-way investigation, synthesis, and critique (`codev/protocols/research/protocol.md`)
16
18
 
17
19
  ## Key Locations
18
20
 
@@ -8,9 +8,11 @@ This project uses **Codev** for AI-assisted development.
8
8
 
9
9
  - **SPIR**: Multi-phase development with consultation (`codev/protocols/spir/protocol.md`)
10
10
  - **ASPIR**: Autonomous SPIR — no human gates on spec/plan (`codev/protocols/aspir/protocol.md`)
11
- - **TICK**: Fast autonomous implementation (`codev/protocols/tick/protocol.md`)
11
+ - **AIR**: Autonomous Implement & Review for small features (`codev/protocols/air/protocol.md`)
12
+ - **BUGFIX**: Bug fixes from GitHub issues (`codev/protocols/bugfix/protocol.md`)
12
13
  - **EXPERIMENT**: Disciplined experimentation (`codev/protocols/experiment/protocol.md`)
13
14
  - **MAINTAIN**: Codebase maintenance (`codev/protocols/maintain/protocol.md`)
15
+ - **RESEARCH**: Multi-agent research with 3-way investigation, synthesis, and critique (`codev/protocols/research/protocol.md`)
14
16
 
15
17
  ## Key Locations
16
18
 
@@ -41,7 +41,7 @@ Just like structuring a human team—clear roles, defined processes, explicit ha
41
41
 
42
42
  | Component | Purpose |
43
43
  |-----------|---------|
44
- | Protocols | Define HOW work happens (SPIR, TICK, etc.) |
44
+ | Protocols | Define HOW work happens (SPIR, ASPIR, etc.) |
45
45
  | Roles | Define WHO does what (Architect, Builder, Consultant) |
46
46
  | Parallelism | Scale by running multiple builders simultaneously |
47
47
 
@@ -61,9 +61,9 @@ A **protocol** is a structured workflow that defines how work progresses from id
61
61
  | Protocol | Use For | Phases |
62
62
  |----------|---------|--------|
63
63
  | **SPIR** | New features | Specify → Plan → Implement → Review |
64
- | **TICK** | Amendments to existing specs | Task Identification → Coding → Kickout |
65
64
  | **MAINTAIN** | Codebase hygiene | Dead code removal, documentation sync |
66
65
  | **EXPERIMENT** | Research & prototyping | Hypothesis → Experiment → Conclude |
66
+ | **RESEARCH** | Multi-agent research | Scope → Investigate (3-way) → Synthesize → Critique (3-way) |
67
67
 
68
68
  ### Roles
69
69