@cluesmith/codev 2.0.0-rc.72 → 2.0.0-rc.74

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 (91) hide show
  1. package/dashboard/dist/assets/{index-C7FtNK6Y.css → index-4n9zpWLY.css} +1 -1
  2. package/dashboard/dist/assets/{index-CDAINZKT.js → index-b38SaXk5.js} +33 -28
  3. package/dashboard/dist/assets/index-b38SaXk5.js.map +1 -0
  4. package/dashboard/dist/index.html +2 -2
  5. package/dist/agent-farm/commands/spawn-roles.d.ts +80 -0
  6. package/dist/agent-farm/commands/spawn-roles.d.ts.map +1 -0
  7. package/dist/agent-farm/commands/spawn-roles.js +278 -0
  8. package/dist/agent-farm/commands/spawn-roles.js.map +1 -0
  9. package/dist/agent-farm/commands/spawn-worktree.d.ts +96 -0
  10. package/dist/agent-farm/commands/spawn-worktree.d.ts.map +1 -0
  11. package/dist/agent-farm/commands/spawn-worktree.js +305 -0
  12. package/dist/agent-farm/commands/spawn-worktree.js.map +1 -0
  13. package/dist/agent-farm/commands/spawn.d.ts +5 -1
  14. package/dist/agent-farm/commands/spawn.d.ts.map +1 -1
  15. package/dist/agent-farm/commands/spawn.js +65 -725
  16. package/dist/agent-farm/commands/spawn.js.map +1 -1
  17. package/dist/agent-farm/db/index.d.ts.map +1 -1
  18. package/dist/agent-farm/db/index.js +56 -2
  19. package/dist/agent-farm/db/index.js.map +1 -1
  20. package/dist/agent-farm/db/schema.d.ts +1 -1
  21. package/dist/agent-farm/db/schema.js +3 -3
  22. package/dist/agent-farm/servers/tower-instances.d.ts +82 -0
  23. package/dist/agent-farm/servers/tower-instances.d.ts.map +1 -0
  24. package/dist/agent-farm/servers/tower-instances.js +454 -0
  25. package/dist/agent-farm/servers/tower-instances.js.map +1 -0
  26. package/dist/agent-farm/servers/tower-routes.d.ts +34 -0
  27. package/dist/agent-farm/servers/tower-routes.d.ts.map +1 -0
  28. package/dist/agent-farm/servers/tower-routes.js +1445 -0
  29. package/dist/agent-farm/servers/tower-routes.js.map +1 -0
  30. package/dist/agent-farm/servers/tower-server.d.ts +5 -2
  31. package/dist/agent-farm/servers/tower-server.d.ts.map +1 -1
  32. package/dist/agent-farm/servers/tower-server.js +89 -2875
  33. package/dist/agent-farm/servers/tower-server.js.map +1 -1
  34. package/dist/agent-farm/servers/tower-terminals.d.ts +119 -0
  35. package/dist/agent-farm/servers/tower-terminals.d.ts.map +1 -0
  36. package/dist/agent-farm/servers/tower-terminals.js +629 -0
  37. package/dist/agent-farm/servers/tower-terminals.js.map +1 -0
  38. package/dist/agent-farm/servers/tower-tunnel.d.ts +34 -0
  39. package/dist/agent-farm/servers/tower-tunnel.d.ts.map +1 -0
  40. package/dist/agent-farm/servers/tower-tunnel.js +299 -0
  41. package/dist/agent-farm/servers/tower-tunnel.js.map +1 -0
  42. package/dist/agent-farm/servers/tower-types.d.ts +86 -0
  43. package/dist/agent-farm/servers/tower-types.d.ts.map +1 -0
  44. package/dist/agent-farm/servers/tower-types.js +6 -0
  45. package/dist/agent-farm/servers/tower-types.js.map +1 -0
  46. package/dist/agent-farm/servers/tower-utils.d.ts +58 -0
  47. package/dist/agent-farm/servers/tower-utils.d.ts.map +1 -0
  48. package/dist/agent-farm/servers/tower-utils.js +182 -0
  49. package/dist/agent-farm/servers/tower-utils.js.map +1 -0
  50. package/dist/agent-farm/servers/tower-websocket.d.ts +25 -0
  51. package/dist/agent-farm/servers/tower-websocket.d.ts.map +1 -0
  52. package/dist/agent-farm/servers/tower-websocket.js +171 -0
  53. package/dist/agent-farm/servers/tower-websocket.js.map +1 -0
  54. package/dist/agent-farm/utils/shell.d.ts +1 -1
  55. package/dist/agent-farm/utils/shell.js +1 -1
  56. package/dist/commands/porch/next.js +4 -4
  57. package/dist/commands/porch/next.js.map +1 -1
  58. package/dist/terminal/pty-manager.d.ts +1 -1
  59. package/dist/terminal/pty-manager.js +5 -5
  60. package/dist/terminal/pty-session.d.ts +20 -20
  61. package/dist/terminal/pty-session.js +55 -55
  62. package/dist/terminal/session-manager.d.ts +15 -15
  63. package/dist/terminal/session-manager.js +34 -34
  64. package/dist/terminal/{shepherd-client.d.ts → shellper-client.d.ts} +10 -10
  65. package/dist/terminal/{shepherd-client.d.ts.map → shellper-client.d.ts.map} +1 -1
  66. package/dist/terminal/{shepherd-client.js → shellper-client.js} +20 -20
  67. package/dist/terminal/{shepherd-client.js.map → shellper-client.js.map} +1 -1
  68. package/dist/terminal/{shepherd-main.d.ts → shellper-main.d.ts} +3 -3
  69. package/dist/terminal/shellper-main.d.ts.map +1 -0
  70. package/dist/terminal/{shepherd-main.js → shellper-main.js} +17 -17
  71. package/dist/terminal/{shepherd-main.js.map → shellper-main.js.map} +1 -1
  72. package/dist/terminal/{shepherd-process.d.ts → shellper-process.d.ts} +8 -8
  73. package/dist/terminal/{shepherd-process.d.ts.map → shellper-process.d.ts.map} +1 -1
  74. package/dist/terminal/{shepherd-process.js → shellper-process.js} +11 -11
  75. package/dist/terminal/{shepherd-process.js.map → shellper-process.js.map} +1 -1
  76. package/dist/terminal/{shepherd-protocol.d.ts → shellper-protocol.d.ts} +5 -5
  77. package/dist/terminal/{shepherd-protocol.d.ts.map → shellper-protocol.d.ts.map} +1 -1
  78. package/dist/terminal/{shepherd-protocol.js → shellper-protocol.js} +5 -5
  79. package/dist/terminal/{shepherd-protocol.js.map → shellper-protocol.js.map} +1 -1
  80. package/dist/terminal/{shepherd-replay-buffer.d.ts → shellper-replay-buffer.d.ts} +4 -4
  81. package/dist/terminal/{shepherd-replay-buffer.d.ts.map → shellper-replay-buffer.d.ts.map} +1 -1
  82. package/dist/terminal/{shepherd-replay-buffer.js → shellper-replay-buffer.js} +4 -4
  83. package/dist/terminal/{shepherd-replay-buffer.js.map → shellper-replay-buffer.js.map} +1 -1
  84. package/package.json +1 -1
  85. package/skeleton/protocols/bugfix/builder-prompt.md +7 -1
  86. package/skeleton/protocols/maintain/protocol.md +3 -3
  87. package/skeleton/protocols/spir/builder-prompt.md +7 -0
  88. package/skeleton/resources/commands/agent-farm.md +2 -2
  89. package/skeleton/roles/builder.md +15 -1
  90. package/dashboard/dist/assets/index-CDAINZKT.js.map +0 -1
  91. package/dist/terminal/shepherd-main.d.ts.map +0 -1
@@ -186,8 +186,8 @@ Scan the actual codebase and update `codev/resources/arch.md`:
186
186
  - **Location**: path/to/component
187
187
  - **How It Works**:
188
188
  - Step-by-step explanation of the mechanism
189
- - Key technologies used (e.g., "uses shepherd processes for terminal persistence")
190
- - Runtime behavior (e.g., "spawns a shepherd process per builder terminal")
189
+ - Key technologies used (e.g., "uses shellper processes for terminal persistence")
190
+ - Runtime behavior (e.g., "spawns a shellper process per builder terminal")
191
191
  - State management (e.g., "state stored in SQLite at .agent-farm/state.db")
192
192
  - **Key Files**:
193
193
  - `file.ts` - does X
@@ -222,7 +222,7 @@ For each major component, arch.md MUST explain the implementation mechanism, not
222
222
 
223
223
  | Bad (just WHAT) | Good (includes HOW) |
224
224
  |-----------------|---------------------|
225
- | "Agent Farm manages builders" | "Agent Farm spawns builders in isolated git worktrees. Each builder runs in a shepherd-backed terminal session. The Tower dashboard exposes terminals via WebSocket. State is persisted in SQLite." |
225
+ | "Agent Farm manages builders" | "Agent Farm spawns builders in isolated git worktrees. Each builder runs in a shellper-backed terminal session. The Tower dashboard exposes terminals via WebSocket. State is persisted in SQLite." |
226
226
  | "Consult tool queries AI models" | "Consult shells out to external CLIs (gemini-cli, codex, claude). It writes the consultant role to a temp file, sets environment variables, and streams stdout/stderr back to the user." |
227
227
 
228
228
  This level of detail enables rapid onboarding and debugging.
@@ -53,6 +53,13 @@ Follow the implementation plan at: `{{plan.path}}`
53
53
  {{task_text}}
54
54
  {{/if}}
55
55
 
56
+ ## Notifications
57
+ Always use `af send architect "..."` to notify the architect at key moments:
58
+ - **Gate reached**: `af send architect "Project {{project_id}}: <gate-name> ready for approval"`
59
+ - **PR ready**: `af send architect "PR #N ready for review (project {{project_id}})"`
60
+ - **PR merged**: `af send architect "Project {{project_id}} complete. PR merged. Ready for cleanup."`
61
+ - **Blocked**: `af send architect "Blocked on project {{project_id}}: [reason]"`
62
+
56
63
  ## Getting Started
57
64
  1. Read the protocol document thoroughly
58
65
  2. Review the spec and plan (if available)
@@ -43,7 +43,7 @@ af dash start [options]
43
43
  Starts the agent-farm dashboard with:
44
44
  - Architect terminal (Claude session with architect role)
45
45
  - Web-based UI for monitoring builders
46
- - Terminal session management (shepherd processes)
46
+ - Terminal session management (shellper processes)
47
47
 
48
48
  The dashboard is accessible via browser at `http://localhost:<port>`.
49
49
 
@@ -132,7 +132,7 @@ af dash stop
132
132
  **Description:**
133
133
 
134
134
  Stops all running agent-farm processes including:
135
- - Terminal sessions (shepherd processes)
135
+ - Terminal sessions (shellper processes)
136
136
  - Dashboard servers
137
137
 
138
138
  Does NOT clean up worktrees - use `af cleanup` for that.
@@ -140,12 +140,26 @@ porch status # (strict mode) Your project status
140
140
  af status # All builders
141
141
  ```
142
142
 
143
+ ## Notifications
144
+
145
+ **ALWAYS notify the architect** via `af send` at these key moments:
146
+
147
+ | When | What to send |
148
+ |------|-------------|
149
+ | **Gate reached** | `af send architect "Project XXXX: <gate-name> ready for approval"` |
150
+ | **PR ready** | `af send architect "PR #N ready for review"` |
151
+ | **PR merged** | `af send architect "Project XXXX complete. PR merged. Ready for cleanup."` |
152
+ | **Blocked/stuck** | `af send architect "Blocked on X — need guidance"` |
153
+ | **Escalation needed** | `af send architect "Issue too complex — recommend escalating to SPIR/TICK"` |
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.
156
+
143
157
  ## When You're Blocked
144
158
 
145
159
  If you encounter issues you can't resolve:
146
160
 
147
161
  1. **Output a clear blocker message** describing the problem and options
148
- 2. **Use `af send architect "..."` ** to notify the Architect
162
+ 2. **Use `af send architect "..."` to notify the Architect**
149
163
  3. **Wait for guidance** before proceeding
150
164
 
151
165
  Example: