@cluesmith/codev 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/bin/af.js +8 -0
  2. package/bin/codev.js +4 -0
  3. package/bin/consult.js +7 -0
  4. package/dist/agent-farm/cli.d.ts +11 -0
  5. package/dist/agent-farm/cli.d.ts.map +1 -0
  6. package/dist/agent-farm/cli.js +359 -0
  7. package/dist/agent-farm/cli.js.map +1 -0
  8. package/dist/agent-farm/commands/cleanup.d.ts +12 -0
  9. package/dist/agent-farm/commands/cleanup.d.ts.map +1 -0
  10. package/dist/agent-farm/commands/cleanup.js +154 -0
  11. package/dist/agent-farm/commands/cleanup.js.map +1 -0
  12. package/dist/agent-farm/commands/db.d.ts +38 -0
  13. package/dist/agent-farm/commands/db.d.ts.map +1 -0
  14. package/dist/agent-farm/commands/db.js +133 -0
  15. package/dist/agent-farm/commands/db.js.map +1 -0
  16. package/dist/agent-farm/commands/index.d.ts +11 -0
  17. package/dist/agent-farm/commands/index.d.ts.map +1 -0
  18. package/dist/agent-farm/commands/index.js +11 -0
  19. package/dist/agent-farm/commands/index.js.map +1 -0
  20. package/dist/agent-farm/commands/open.d.ts +15 -0
  21. package/dist/agent-farm/commands/open.d.ts.map +1 -0
  22. package/dist/agent-farm/commands/open.js +118 -0
  23. package/dist/agent-farm/commands/open.js.map +1 -0
  24. package/dist/agent-farm/commands/rename.d.ts +13 -0
  25. package/dist/agent-farm/commands/rename.d.ts.map +1 -0
  26. package/dist/agent-farm/commands/rename.js +33 -0
  27. package/dist/agent-farm/commands/rename.js.map +1 -0
  28. package/dist/agent-farm/commands/send.d.ts +9 -0
  29. package/dist/agent-farm/commands/send.d.ts.map +1 -0
  30. package/dist/agent-farm/commands/send.js +282 -0
  31. package/dist/agent-farm/commands/send.js.map +1 -0
  32. package/dist/agent-farm/commands/spawn.d.ts +15 -0
  33. package/dist/agent-farm/commands/spawn.d.ts.map +1 -0
  34. package/dist/agent-farm/commands/spawn.js +575 -0
  35. package/dist/agent-farm/commands/spawn.js.map +1 -0
  36. package/dist/agent-farm/commands/start.d.ts +9 -0
  37. package/dist/agent-farm/commands/start.d.ts.map +1 -0
  38. package/dist/agent-farm/commands/start.js +175 -0
  39. package/dist/agent-farm/commands/start.js.map +1 -0
  40. package/dist/agent-farm/commands/status.d.ts +8 -0
  41. package/dist/agent-farm/commands/status.d.ts.map +1 -0
  42. package/dist/agent-farm/commands/status.js +123 -0
  43. package/dist/agent-farm/commands/status.js.map +1 -0
  44. package/dist/agent-farm/commands/stop.d.ts +8 -0
  45. package/dist/agent-farm/commands/stop.d.ts.map +1 -0
  46. package/dist/agent-farm/commands/stop.js +76 -0
  47. package/dist/agent-farm/commands/stop.js.map +1 -0
  48. package/dist/agent-farm/commands/tower.d.ts +19 -0
  49. package/dist/agent-farm/commands/tower.d.ts.map +1 -0
  50. package/dist/agent-farm/commands/tower.js +125 -0
  51. package/dist/agent-farm/commands/tower.js.map +1 -0
  52. package/dist/agent-farm/commands/tutorial.d.ts +10 -0
  53. package/dist/agent-farm/commands/tutorial.d.ts.map +1 -0
  54. package/dist/agent-farm/commands/tutorial.js +49 -0
  55. package/dist/agent-farm/commands/tutorial.js.map +1 -0
  56. package/dist/agent-farm/commands/util.d.ts +15 -0
  57. package/dist/agent-farm/commands/util.d.ts.map +1 -0
  58. package/dist/agent-farm/commands/util.js +108 -0
  59. package/dist/agent-farm/commands/util.js.map +1 -0
  60. package/dist/agent-farm/db/errors.d.ts +17 -0
  61. package/dist/agent-farm/db/errors.d.ts.map +1 -0
  62. package/dist/agent-farm/db/errors.js +46 -0
  63. package/dist/agent-farm/db/errors.js.map +1 -0
  64. package/dist/agent-farm/db/index.d.ts +41 -0
  65. package/dist/agent-farm/db/index.d.ts.map +1 -0
  66. package/dist/agent-farm/db/index.js +168 -0
  67. package/dist/agent-farm/db/index.js.map +1 -0
  68. package/dist/agent-farm/db/migrate.d.ts +15 -0
  69. package/dist/agent-farm/db/migrate.d.ts.map +1 -0
  70. package/dist/agent-farm/db/migrate.js +137 -0
  71. package/dist/agent-farm/db/migrate.js.map +1 -0
  72. package/dist/agent-farm/db/schema.d.ts +16 -0
  73. package/dist/agent-farm/db/schema.d.ts.map +1 -0
  74. package/dist/agent-farm/db/schema.js +103 -0
  75. package/dist/agent-farm/db/schema.js.map +1 -0
  76. package/dist/agent-farm/db/types.d.ts +87 -0
  77. package/dist/agent-farm/db/types.d.ts.map +1 -0
  78. package/dist/agent-farm/db/types.js +65 -0
  79. package/dist/agent-farm/db/types.js.map +1 -0
  80. package/dist/agent-farm/index.d.ts +7 -0
  81. package/dist/agent-farm/index.d.ts.map +1 -0
  82. package/dist/agent-farm/index.js +373 -0
  83. package/dist/agent-farm/index.js.map +1 -0
  84. package/dist/agent-farm/servers/annotate-server.d.ts +9 -0
  85. package/dist/agent-farm/servers/annotate-server.d.ts.map +1 -0
  86. package/dist/agent-farm/servers/annotate-server.js +136 -0
  87. package/dist/agent-farm/servers/annotate-server.js.map +1 -0
  88. package/dist/agent-farm/servers/dashboard-server.d.ts +9 -0
  89. package/dist/agent-farm/servers/dashboard-server.d.ts.map +1 -0
  90. package/dist/agent-farm/servers/dashboard-server.js +939 -0
  91. package/dist/agent-farm/servers/dashboard-server.js.map +1 -0
  92. package/dist/agent-farm/servers/tower-server.d.ts +9 -0
  93. package/dist/agent-farm/servers/tower-server.d.ts.map +1 -0
  94. package/dist/agent-farm/servers/tower-server.js +463 -0
  95. package/dist/agent-farm/servers/tower-server.js.map +1 -0
  96. package/dist/agent-farm/state.d.ts +93 -0
  97. package/dist/agent-farm/state.d.ts.map +1 -0
  98. package/dist/agent-farm/state.js +253 -0
  99. package/dist/agent-farm/state.js.map +1 -0
  100. package/dist/agent-farm/tutorial/index.d.ts +8 -0
  101. package/dist/agent-farm/tutorial/index.d.ts.map +1 -0
  102. package/dist/agent-farm/tutorial/index.js +8 -0
  103. package/dist/agent-farm/tutorial/index.js.map +1 -0
  104. package/dist/agent-farm/tutorial/prompts.d.ts +57 -0
  105. package/dist/agent-farm/tutorial/prompts.d.ts.map +1 -0
  106. package/dist/agent-farm/tutorial/prompts.js +147 -0
  107. package/dist/agent-farm/tutorial/prompts.js.map +1 -0
  108. package/dist/agent-farm/tutorial/runner.d.ts +52 -0
  109. package/dist/agent-farm/tutorial/runner.d.ts.map +1 -0
  110. package/dist/agent-farm/tutorial/runner.js +204 -0
  111. package/dist/agent-farm/tutorial/runner.js.map +1 -0
  112. package/dist/agent-farm/tutorial/state.d.ts +26 -0
  113. package/dist/agent-farm/tutorial/state.d.ts.map +1 -0
  114. package/dist/agent-farm/tutorial/state.js +89 -0
  115. package/dist/agent-farm/tutorial/state.js.map +1 -0
  116. package/dist/agent-farm/tutorial/steps/first-spec.d.ts +7 -0
  117. package/dist/agent-farm/tutorial/steps/first-spec.d.ts.map +1 -0
  118. package/dist/agent-farm/tutorial/steps/first-spec.js +136 -0
  119. package/dist/agent-farm/tutorial/steps/first-spec.js.map +1 -0
  120. package/dist/agent-farm/tutorial/steps/implementation.d.ts +7 -0
  121. package/dist/agent-farm/tutorial/steps/implementation.d.ts.map +1 -0
  122. package/dist/agent-farm/tutorial/steps/implementation.js +76 -0
  123. package/dist/agent-farm/tutorial/steps/implementation.js.map +1 -0
  124. package/dist/agent-farm/tutorial/steps/index.d.ts +10 -0
  125. package/dist/agent-farm/tutorial/steps/index.d.ts.map +1 -0
  126. package/dist/agent-farm/tutorial/steps/index.js +10 -0
  127. package/dist/agent-farm/tutorial/steps/index.js.map +1 -0
  128. package/dist/agent-farm/tutorial/steps/planning.d.ts +7 -0
  129. package/dist/agent-farm/tutorial/steps/planning.d.ts.map +1 -0
  130. package/dist/agent-farm/tutorial/steps/planning.js +143 -0
  131. package/dist/agent-farm/tutorial/steps/planning.js.map +1 -0
  132. package/dist/agent-farm/tutorial/steps/review.d.ts +7 -0
  133. package/dist/agent-farm/tutorial/steps/review.d.ts.map +1 -0
  134. package/dist/agent-farm/tutorial/steps/review.js +78 -0
  135. package/dist/agent-farm/tutorial/steps/review.js.map +1 -0
  136. package/dist/agent-farm/tutorial/steps/setup.d.ts +7 -0
  137. package/dist/agent-farm/tutorial/steps/setup.d.ts.map +1 -0
  138. package/dist/agent-farm/tutorial/steps/setup.js +126 -0
  139. package/dist/agent-farm/tutorial/steps/setup.js.map +1 -0
  140. package/dist/agent-farm/tutorial/steps/welcome.d.ts +7 -0
  141. package/dist/agent-farm/tutorial/steps/welcome.d.ts.map +1 -0
  142. package/dist/agent-farm/tutorial/steps/welcome.js +50 -0
  143. package/dist/agent-farm/tutorial/steps/welcome.js.map +1 -0
  144. package/dist/agent-farm/types.d.ts +131 -0
  145. package/dist/agent-farm/types.d.ts.map +1 -0
  146. package/dist/agent-farm/types.js +5 -0
  147. package/dist/agent-farm/types.js.map +1 -0
  148. package/dist/agent-farm/utils/config.d.ts +27 -0
  149. package/dist/agent-farm/utils/config.d.ts.map +1 -0
  150. package/dist/agent-farm/utils/config.js +242 -0
  151. package/dist/agent-farm/utils/config.js.map +1 -0
  152. package/dist/agent-farm/utils/deps.d.ts +51 -0
  153. package/dist/agent-farm/utils/deps.d.ts.map +1 -0
  154. package/dist/agent-farm/utils/deps.js +194 -0
  155. package/dist/agent-farm/utils/deps.js.map +1 -0
  156. package/dist/agent-farm/utils/index.d.ts +6 -0
  157. package/dist/agent-farm/utils/index.d.ts.map +1 -0
  158. package/dist/agent-farm/utils/index.js +6 -0
  159. package/dist/agent-farm/utils/index.js.map +1 -0
  160. package/dist/agent-farm/utils/logger.d.ts +31 -0
  161. package/dist/agent-farm/utils/logger.d.ts.map +1 -0
  162. package/dist/agent-farm/utils/logger.js +58 -0
  163. package/dist/agent-farm/utils/logger.js.map +1 -0
  164. package/dist/agent-farm/utils/orphan-handler.d.ts +27 -0
  165. package/dist/agent-farm/utils/orphan-handler.d.ts.map +1 -0
  166. package/dist/agent-farm/utils/orphan-handler.js +127 -0
  167. package/dist/agent-farm/utils/orphan-handler.js.map +1 -0
  168. package/dist/agent-farm/utils/port-registry.d.ts +58 -0
  169. package/dist/agent-farm/utils/port-registry.d.ts.map +1 -0
  170. package/dist/agent-farm/utils/port-registry.js +149 -0
  171. package/dist/agent-farm/utils/port-registry.js.map +1 -0
  172. package/dist/agent-farm/utils/shell.d.ts +45 -0
  173. package/dist/agent-farm/utils/shell.d.ts.map +1 -0
  174. package/dist/agent-farm/utils/shell.js +120 -0
  175. package/dist/agent-farm/utils/shell.js.map +1 -0
  176. package/dist/cli.d.ts +10 -0
  177. package/dist/cli.d.ts.map +1 -0
  178. package/dist/cli.js +160 -0
  179. package/dist/cli.js.map +1 -0
  180. package/dist/commands/adopt.d.ts +12 -0
  181. package/dist/commands/adopt.d.ts.map +1 -0
  182. package/dist/commands/adopt.js +178 -0
  183. package/dist/commands/adopt.js.map +1 -0
  184. package/dist/commands/consult/index.d.ts +17 -0
  185. package/dist/commands/consult/index.d.ts.map +1 -0
  186. package/dist/commands/consult/index.js +405 -0
  187. package/dist/commands/consult/index.js.map +1 -0
  188. package/dist/commands/doctor.d.ts +10 -0
  189. package/dist/commands/doctor.d.ts.map +1 -0
  190. package/dist/commands/doctor.js +346 -0
  191. package/dist/commands/doctor.js.map +1 -0
  192. package/dist/commands/init.d.ts +12 -0
  193. package/dist/commands/init.d.ts.map +1 -0
  194. package/dist/commands/init.js +167 -0
  195. package/dist/commands/init.js.map +1 -0
  196. package/dist/commands/tower.d.ts +16 -0
  197. package/dist/commands/tower.d.ts.map +1 -0
  198. package/dist/commands/tower.js +21 -0
  199. package/dist/commands/tower.js.map +1 -0
  200. package/dist/commands/update.d.ts +13 -0
  201. package/dist/commands/update.d.ts.map +1 -0
  202. package/dist/commands/update.js +137 -0
  203. package/dist/commands/update.js.map +1 -0
  204. package/dist/lib/templates.d.ts +57 -0
  205. package/dist/lib/templates.d.ts.map +1 -0
  206. package/dist/lib/templates.js +205 -0
  207. package/dist/lib/templates.js.map +1 -0
  208. package/package.json +55 -0
  209. package/templates/AGENTS.md +49 -0
  210. package/templates/CLAUDE.md +47 -0
  211. package/templates/DEPENDENCIES.md +344 -0
  212. package/templates/agents/architecture-documenter.md +189 -0
  213. package/templates/agents/codev-updater.md +276 -0
  214. package/templates/agents/spider-protocol-updater.md +118 -0
  215. package/templates/annotate.html +903 -0
  216. package/templates/bin/agent-farm +18 -0
  217. package/templates/bin/annotate-server.js +140 -0
  218. package/templates/bin/codev-doctor +335 -0
  219. package/templates/builders.md +30 -0
  220. package/templates/config.json +7 -0
  221. package/templates/dashboard-split.html +1679 -0
  222. package/templates/dashboard.html +149 -0
  223. package/templates/plans/.gitkeep +0 -0
  224. package/templates/protocols/experiment/protocol.md +229 -0
  225. package/templates/protocols/experiment/templates/notes.md +97 -0
  226. package/templates/protocols/maintain/protocol.md +235 -0
  227. package/templates/protocols/spider/protocol.md +639 -0
  228. package/templates/protocols/spider/templates/plan.md +169 -0
  229. package/templates/protocols/spider/templates/review.md +207 -0
  230. package/templates/protocols/spider/templates/spec.md +140 -0
  231. package/templates/protocols/spider-solo/protocol.md +619 -0
  232. package/templates/protocols/spider-solo/templates/plan.md +169 -0
  233. package/templates/protocols/spider-solo/templates/review.md +207 -0
  234. package/templates/protocols/spider-solo/templates/spec.md +140 -0
  235. package/templates/protocols/tick/protocol.md +250 -0
  236. package/templates/protocols/tick/templates/plan.md +67 -0
  237. package/templates/protocols/tick/templates/review.md +90 -0
  238. package/templates/protocols/tick/templates/spec.md +61 -0
  239. package/templates/reviews/.gitkeep +0 -0
  240. package/templates/roles/architect.md +230 -0
  241. package/templates/roles/builder.md +175 -0
  242. package/templates/roles/consultant.md +27 -0
  243. package/templates/specs/.gitkeep +0 -0
  244. package/templates/templates/projectlist.md +129 -0
  245. package/templates/tower.html +1032 -0
@@ -0,0 +1,344 @@
1
+ # Codev Dependencies
2
+
3
+ This document describes all dependencies required to run Codev and Agent Farm.
4
+
5
+ ## Quick Check
6
+
7
+ Run the doctor script to verify your installation:
8
+
9
+ ```bash
10
+ ./codev/bin/codev-doctor
11
+ ```
12
+
13
+ ---
14
+
15
+ ## Core Dependencies (Required)
16
+
17
+ These are required for Agent Farm to function.
18
+
19
+ ### Node.js
20
+
21
+ | Requirement | Value |
22
+ |-------------|-------|
23
+ | Minimum Version | 18.0.0 |
24
+ | Purpose | Runtime for Agent Farm server |
25
+
26
+ **Installation:**
27
+
28
+ ```bash
29
+ # macOS
30
+ brew install node
31
+
32
+ # Ubuntu/Debian
33
+ curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
34
+ sudo apt install -y nodejs
35
+
36
+ # Verify
37
+ node --version # Should show v18.x or higher
38
+ ```
39
+
40
+ ### tmux
41
+
42
+ | Requirement | Value |
43
+ |-------------|-------|
44
+ | Minimum Version | 3.0 |
45
+ | Purpose | Terminal multiplexer for managing builder sessions |
46
+
47
+ **Installation:**
48
+
49
+ ```bash
50
+ # macOS
51
+ brew install tmux
52
+
53
+ # Ubuntu/Debian
54
+ sudo apt install tmux
55
+
56
+ # Verify
57
+ tmux -V # Should show tmux 3.x or higher
58
+ ```
59
+
60
+ ### ttyd
61
+
62
+ | Requirement | Value |
63
+ |-------------|-------|
64
+ | Minimum Version | 1.7.0 |
65
+ | Purpose | Web-based terminal for dashboard access |
66
+
67
+ **Installation:**
68
+
69
+ ```bash
70
+ # macOS
71
+ brew install ttyd
72
+
73
+ # Ubuntu/Debian (build from source)
74
+ sudo apt install build-essential cmake git libjson-c-dev libwebsockets-dev
75
+ git clone https://github.com/tsl0922/ttyd.git
76
+ cd ttyd && mkdir build && cd build
77
+ cmake .. && make && sudo make install
78
+
79
+ # Verify
80
+ ttyd --version # Should show 1.7.x or higher
81
+ ```
82
+
83
+ ### git
84
+
85
+ | Requirement | Value |
86
+ |-------------|-------|
87
+ | Minimum Version | 2.5.0 |
88
+ | Purpose | Version control, worktree support for builders |
89
+
90
+ **Installation:**
91
+
92
+ ```bash
93
+ # macOS (usually pre-installed with Xcode)
94
+ xcode-select --install
95
+
96
+ # Ubuntu/Debian
97
+ sudo apt install git
98
+
99
+ # Verify
100
+ git --version # Should show 2.5.x or higher
101
+ ```
102
+
103
+ ### gh (GitHub CLI)
104
+
105
+ | Requirement | Value |
106
+ |-------------|-------|
107
+ | Minimum Version | Latest |
108
+ | Purpose | Creating PRs, managing issues, GitHub operations |
109
+
110
+ **Installation:**
111
+
112
+ ```bash
113
+ # macOS
114
+ brew install gh
115
+
116
+ # Ubuntu/Debian
117
+ (type -p wget >/dev/null || sudo apt install wget -y) \
118
+ && sudo mkdir -p -m 755 /etc/apt/keyrings \
119
+ && out=$(mktemp) && wget -nv -O$out https://cli.github.com/packages/githubcli-archive-keyring.gpg \
120
+ && cat $out | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \
121
+ && sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \
122
+ && echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
123
+ && sudo apt update \
124
+ && sudo apt install gh -y
125
+
126
+ # After installation, authenticate:
127
+ gh auth login
128
+
129
+ # Verify
130
+ gh auth status # Should show "Logged in to github.com"
131
+ ```
132
+
133
+ ### Python 3
134
+
135
+ | Requirement | Value |
136
+ |-------------|-------|
137
+ | Minimum Version | 3.10 |
138
+ | Purpose | Consult tool, utility scripts |
139
+
140
+ **Installation:**
141
+
142
+ ```bash
143
+ # macOS
144
+ brew install python
145
+
146
+ # Ubuntu/Debian
147
+ sudo apt install python3 python3-pip
148
+
149
+ # Verify
150
+ python3 --version # Should show 3.10.x or higher
151
+ ```
152
+
153
+ ---
154
+
155
+ ## AI CLI Dependencies (At Least One Required)
156
+
157
+ You need at least one AI CLI installed to use Codev. Install more for multi-agent consultation.
158
+
159
+ ### Claude Code (Recommended)
160
+
161
+ | Requirement | Value |
162
+ |-------------|-------|
163
+ | Purpose | Primary AI agent for development |
164
+ | Documentation | [docs.anthropic.com](https://docs.anthropic.com/en/docs/claude-code) |
165
+
166
+ **Installation:**
167
+
168
+ ```bash
169
+ npm install -g @anthropic-ai/claude-code
170
+
171
+ # Verify
172
+ claude --version
173
+ ```
174
+
175
+ ### Gemini CLI
176
+
177
+ | Requirement | Value |
178
+ |-------------|-------|
179
+ | Purpose | Multi-agent consultation, alternative perspectives |
180
+ | Documentation | [github.com/google-gemini/gemini-cli](https://github.com/google-gemini/gemini-cli) |
181
+
182
+ **Installation:**
183
+
184
+ ```bash
185
+ npm install -g @anthropic-ai/gemini-cli
186
+
187
+ # Verify
188
+ gemini --version
189
+ ```
190
+
191
+ ### Codex CLI
192
+
193
+ | Requirement | Value |
194
+ |-------------|-------|
195
+ | Purpose | Multi-agent consultation, code-focused analysis |
196
+ | Documentation | [github.com/openai/codex](https://github.com/openai/codex) |
197
+
198
+ **Installation:**
199
+
200
+ ```bash
201
+ npm install -g @openai/codex
202
+
203
+ # Verify
204
+ codex --version
205
+ ```
206
+
207
+ ---
208
+
209
+ ## Python Packages (Optional)
210
+
211
+ These are optional but enable additional features.
212
+
213
+ ### typer
214
+
215
+ | Requirement | Value |
216
+ |-------------|-------|
217
+ | Purpose | CLI framework for the consult tool |
218
+
219
+ **Installation:**
220
+
221
+ ```bash
222
+ pip install typer
223
+
224
+ # Or with uv
225
+ uv pip install typer
226
+
227
+ # Verify
228
+ python3 -c "import typer; print('typer installed')"
229
+ ```
230
+
231
+ ---
232
+
233
+ ## Version Requirements Summary
234
+
235
+ | Dependency | Minimum Version | Required? |
236
+ |------------|-----------------|-----------|
237
+ | Node.js | 18.0.0 | Yes |
238
+ | tmux | 3.0 | Yes |
239
+ | ttyd | 1.7.0 | Yes |
240
+ | git | 2.5.0 | Yes |
241
+ | gh | latest | Yes |
242
+ | Python 3 | 3.10 | Yes |
243
+ | Claude Code | latest | At least one AI CLI |
244
+ | Gemini CLI | latest | At least one AI CLI |
245
+ | Codex CLI | latest | At least one AI CLI |
246
+ | typer | latest | No (for consult tool) |
247
+
248
+ ---
249
+
250
+ ## Platform-Specific Notes
251
+
252
+ ### macOS
253
+
254
+ All dependencies are available via Homebrew:
255
+
256
+ ```bash
257
+ # Install all core dependencies at once
258
+ brew install node tmux ttyd gh python
259
+
260
+ # Git is included with Xcode command line tools
261
+ xcode-select --install
262
+ ```
263
+
264
+ ### Ubuntu/Debian
265
+
266
+ Most dependencies are available via apt, except ttyd which must be built from source:
267
+
268
+ ```bash
269
+ # Core dependencies
270
+ sudo apt install nodejs npm tmux git python3 python3-pip
271
+
272
+ # gh requires adding GitHub's apt repository (see above)
273
+
274
+ # ttyd must be built from source (see above)
275
+ ```
276
+
277
+ ### Windows
278
+
279
+ Codev is designed for Unix-like systems. On Windows, use WSL2:
280
+
281
+ ```bash
282
+ # Install WSL2 with Ubuntu
283
+ wsl --install -d Ubuntu
284
+
285
+ # Then follow Ubuntu installation instructions inside WSL
286
+ ```
287
+
288
+ ---
289
+
290
+ ## Troubleshooting
291
+
292
+ ### "command not found" errors
293
+
294
+ Ensure the installed binaries are in your PATH:
295
+
296
+ ```bash
297
+ # Check PATH
298
+ echo $PATH
299
+
300
+ # Common fix: add npm global bin to PATH
301
+ export PATH="$PATH:$(npm config get prefix)/bin"
302
+ ```
303
+
304
+ ### tmux version too old
305
+
306
+ Ubuntu LTS versions often have older tmux. Install from source or use a PPA:
307
+
308
+ ```bash
309
+ # Add tmux PPA for newer versions
310
+ sudo add-apt-repository ppa:pi-rho/dev
311
+ sudo apt update
312
+ sudo apt install tmux
313
+ ```
314
+
315
+ ### ttyd connection issues
316
+
317
+ Ensure no firewall is blocking the ports (default: 4200-4299):
318
+
319
+ ```bash
320
+ # Check if port is in use
321
+ lsof -i :4200
322
+
323
+ # Clean up stale port allocations
324
+ ./codev/bin/agent-farm ports cleanup
325
+ ```
326
+
327
+ ### gh authentication issues
328
+
329
+ ```bash
330
+ # Re-authenticate
331
+ gh auth logout
332
+ gh auth login
333
+
334
+ # Verify
335
+ gh auth status
336
+ ```
337
+
338
+ ---
339
+
340
+ ## See Also
341
+
342
+ - [INSTALL.md](INSTALL.md) - Installation guide
343
+ - [MIGRATION-1.0.md](../MIGRATION-1.0.md) - Migration guide for existing projects
344
+ - [codev/bin/codev-doctor](codev/bin/codev-doctor) - Automated dependency checker
@@ -0,0 +1,189 @@
1
+ ---
2
+ name: architecture-documenter
3
+ description: Use this agent when:\n\n1. **After significant implementation milestones**: When new features are completed, major refactoring occurs, or new modules/utilities are added to the codebase\n\n2. **During code reviews**: After reviewing code in codev/reviews/ to capture architectural decisions and patterns that emerged\n\n3. **When specifications are updated**: After changes to codev/specs/ files that introduce new architectural components or modify existing ones\n\n4. **When implementation plans are finalized**: After codev/plans/ documents are created or updated to ensure the architecture document reflects planned structure\n\n5. **Proactively during development sessions**: Periodically during active development to maintain an up-to-date architectural overview\n\n**Example Usage Scenarios:**\n\n<example>\nContext: Developer has just completed implementing a new rating calculation utility\nuser: "I've finished implementing the rating calculator in src/lib/rating/calculator.ts"\nassistant: "Great! Let me use the architecture-documenter agent to update the architecture document with this new utility."\n<commentary>\nThe new utility should be documented in arch.md, including its location, purpose, and key functions it provides.\n</commentary>\n</example>\n\n<example>\nContext: A new specification has been added for the search feature\nuser: "I've added the search feature spec to codev/specs/search-feature.md"\nassistant: "I'll use the architecture-documenter agent to review the spec and update the architecture document with the planned search components."\n<commentary>\nThe agent should read the spec and update arch.md to reflect the new search-related components, their locations, and how they fit into the overall architecture.\n</commentary>\n</example>\n\n<example>\nContext: Developer is starting a new development session\nuser: "Let's start working on the API routes today"\nassistant: "Before we begin, let me use the architecture-documenter agent to ensure our architecture document is current and reflects the latest state of the project."\n<commentary>\nProactively updating the architecture document ensures it remains a reliable reference throughout the development session.\n</commentary>\n</example>\n\n<example>\nContext: Code review has been completed with architectural insights\nuser: "I've completed the review in codev/reviews/rating-system-review.md"\nassistant: "I'll use the architecture-documenter agent to extract any architectural patterns or decisions from the review and update arch.md accordingly."\n<commentary>\nReviews often contain insights about how components interact and architectural decisions that should be captured in the architecture document.\n</commentary>\n</example>
4
+ model: opus
5
+ color: green
6
+ ---
7
+
8
+ You are an elite software architect and technical documentation specialist. Your singular responsibility is to maintain a comprehensive, accurate, and actionable architecture document (arch.md) that serves as the definitive reference for understanding the project's structure, components, and design decisions.
9
+
10
+ ## Your Core Mission
11
+
12
+ Maintain arch.md as a living document that enables any developer (or AI agent) to quickly understand:
13
+ - The complete directory structure and organization philosophy
14
+ - All utility functions, helpers, and shared components with their locations
15
+ - Key architectural patterns and design decisions
16
+ - Component relationships and data flow
17
+ - Technology stack and integration points
18
+ - Critical files and their purposes
19
+
20
+ **IMPORTANT**: The architecture document must be created/updated at: `codev/resources/arch.md`
21
+
22
+ This is the canonical location for the architecture documentation. Always write to this path, never to the project root.
23
+
24
+ ## Your Workflow
25
+
26
+ ### 1. Information Gathering
27
+ You will systematically review:
28
+ - **codev/specs/**: Extract architectural requirements, planned components, and feature structures
29
+ - **codev/plans/**: Identify implementation decisions, module organization, and technical approaches
30
+ - **codev/reviews/**: Capture architectural insights, pattern discoveries, and structural feedback
31
+ - **src/ directory**: Scan for actual implementation to verify documented structure matches reality
32
+ - **Project AGENTS.md/CLAUDE.md files**: Understand project-specific patterns and organizational principles
33
+
34
+ ### 2. Architecture Document Structure
35
+
36
+ Your arch.md document must follow this comprehensive structure:
37
+
38
+ ```markdown
39
+ # Project Architecture
40
+
41
+ ## Overview
42
+ [High-level description of the application architecture and design philosophy]
43
+
44
+ ## Technology Stack
45
+ [Detailed list of technologies, frameworks, and key dependencies with versions]
46
+
47
+ ## Directory Structure
48
+ ```
49
+ [Complete directory tree with explanations for each major directory]
50
+ ```
51
+
52
+ ## Core Components
53
+
54
+ ### [Component Category 1]
55
+ - **Location**: path/to/component
56
+ - **Purpose**: What it does
57
+ - **Key Files**: List of important files
58
+ - **Dependencies**: What it depends on
59
+ - **Used By**: What uses it
60
+
61
+ [Repeat for each major component category]
62
+
63
+ ## Utility Functions & Helpers
64
+
65
+ ### [Utility Category]
66
+ - **File**: path/to/utility.ts
67
+ - **Functions**:
68
+ - `functionName()`: Description and use case
69
+ - `anotherFunction()`: Description and use case
70
+ - **When to Use**: Guidance on appropriate usage
71
+
72
+ [Repeat for all utilities]
73
+
74
+ ## Data Flow
75
+ [Diagrams or descriptions of how data moves through the system]
76
+
77
+ ## API Structure
78
+ [Organization of API routes, endpoints, and their purposes]
79
+
80
+ ## State Management
81
+ [How application state is managed and where]
82
+
83
+ ## Key Design Decisions
84
+ [Important architectural choices and their rationale]
85
+
86
+ ## Integration Points
87
+ [External services, APIs, databases, and how they connect]
88
+
89
+ ## Development Patterns
90
+ [Common patterns used throughout the codebase]
91
+
92
+ ## File Naming Conventions
93
+ [Conventions for naming files and directories]
94
+ ```
95
+
96
+ ### 3. Content Quality Standards
97
+
98
+ **Be Specific and Actionable**:
99
+ - Include exact file paths, not vague references
100
+ - List actual function names and their signatures when relevant
101
+ - Provide concrete examples of when to use specific utilities
102
+ - Include code snippets for complex patterns
103
+
104
+ **Maintain Accuracy**:
105
+ - Cross-reference specs, plans, and actual implementation
106
+ - Flag discrepancies between documented and actual structure
107
+ - Update immediately when changes are detected
108
+ - Verify that documented utilities actually exist
109
+
110
+ **Optimize for Quick Understanding**:
111
+ - Use clear hierarchical organization
112
+ - Include visual aids (directory trees, simple diagrams) where helpful
113
+ - Highlight the most commonly used components and utilities
114
+ - Provide "quick reference" sections for frequent lookups
115
+
116
+ **Stay Current**:
117
+ - Reflect the actual state of the codebase, not aspirational structure
118
+ - Remove documentation for deprecated or removed components
119
+ - Add new components as they are implemented
120
+ - Update when architectural decisions change
121
+
122
+ ### 4. Your Analysis Process
123
+
124
+ When updating arch.md:
125
+
126
+ 1. **Read Comprehensively**: Review all relevant codev/ files and scan src/ structure
127
+ 2. **Identify Changes**: Determine what's new, modified, or removed since last update
128
+ 3. **Verify Implementation**: Check that documented structure matches actual files
129
+ 4. **Extract Patterns**: Identify architectural patterns and design decisions
130
+ 5. **Organize Information**: Structure findings according to arch.md template
131
+ 6. **Write Clearly**: Use precise, technical language that's still accessible
132
+ 7. **Cross-Reference**: Ensure consistency across all sections
133
+ 8. **Validate Completeness**: Confirm all major components and utilities are documented
134
+
135
+ ### 5. Special Attention Areas
136
+
137
+ **Utility Functions**: These are critical for developer productivity
138
+ - Document every utility function with its exact location
139
+ - Explain what each utility does and when to use it
140
+ - Include parameter types and return types
141
+ - Provide usage examples for complex utilities
142
+
143
+ **Directory Structure**: This is often the first thing developers reference
144
+ - Keep the directory tree up-to-date and complete
145
+ - Explain the purpose of each major directory
146
+ - Note any non-obvious organizational decisions
147
+ - Highlight where specific types of files should be placed
148
+
149
+ **Integration Points**: Critical for understanding system boundaries
150
+ - Document all external dependencies and APIs
151
+ - Explain how different parts of the system connect
152
+ - Note any special configuration or setup requirements
153
+
154
+ ### 6. Quality Assurance
155
+
156
+ Before finalizing any update to arch.md:
157
+ - Verify all file paths are correct and current
158
+ - Ensure all documented functions actually exist
159
+ - Check that the directory structure matches reality
160
+ - Confirm that architectural decisions are accurately represented
161
+ - Validate that the document is internally consistent
162
+
163
+ ### 7. Communication Style
164
+
165
+ When presenting updates:
166
+ - Clearly state what sections you're updating and why
167
+ - Highlight significant architectural changes or additions
168
+ - Flag any discrepancies you discovered between docs and implementation
169
+ - Suggest areas that might need architectural attention
170
+ - Ask for clarification when specs/plans conflict or are ambiguous
171
+
172
+ ## Your Constraints
173
+
174
+ - **Never invent structure**: Only document what exists or is explicitly planned in specs/plans
175
+ - **Never make architectural decisions**: You document decisions, you don't make them
176
+ - **Always verify**: Cross-check documentation against actual implementation
177
+ - **Stay focused**: Your job is architecture documentation, not code review or feature suggestions
178
+ - **Be thorough**: A missing utility or unclear structure wastes developer time
179
+
180
+ ## Success Criteria
181
+
182
+ You succeed when:
183
+ - Any developer can read arch.md and understand the project structure in minutes
184
+ - Developers can quickly locate utilities and helpers they need
185
+ - The document accurately reflects the current state of the codebase
186
+ - Architectural decisions are clearly explained and justified
187
+ - The document requires minimal maintenance because it's well-organized
188
+
189
+ Remember: arch.md is not just documentation—it's a critical tool for developer productivity and project understanding. Treat it with the importance it deserves.