@rryando/arcs 3.0.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 (370) hide show
  1. package/README.md +448 -0
  2. package/dist/cli/arcs-orchestrate-caveman.d.ts +16 -0
  3. package/dist/cli/arcs-orchestrate-caveman.d.ts.map +1 -0
  4. package/dist/cli/arcs-orchestrate-caveman.js +109 -0
  5. package/dist/cli/arcs-orchestrate-caveman.js.map +1 -0
  6. package/dist/cli/arcs-orchestrate.d.ts +2 -0
  7. package/dist/cli/arcs-orchestrate.d.ts.map +1 -0
  8. package/dist/cli/arcs-orchestrate.js +431 -0
  9. package/dist/cli/arcs-orchestrate.js.map +1 -0
  10. package/dist/cli/arg-parser.d.ts +20 -0
  11. package/dist/cli/arg-parser.d.ts.map +1 -0
  12. package/dist/cli/arg-parser.js +216 -0
  13. package/dist/cli/arg-parser.js.map +1 -0
  14. package/dist/cli/brief-renderer.d.ts +32 -0
  15. package/dist/cli/brief-renderer.d.ts.map +1 -0
  16. package/dist/cli/brief-renderer.js +67 -0
  17. package/dist/cli/brief-renderer.js.map +1 -0
  18. package/dist/cli/bundle-installer.d.ts +77 -0
  19. package/dist/cli/bundle-installer.d.ts.map +1 -0
  20. package/dist/cli/bundle-installer.js +328 -0
  21. package/dist/cli/bundle-installer.js.map +1 -0
  22. package/dist/cli/command-registry.d.ts +52 -0
  23. package/dist/cli/command-registry.d.ts.map +1 -0
  24. package/dist/cli/command-registry.js +68 -0
  25. package/dist/cli/command-registry.js.map +1 -0
  26. package/dist/cli/commands/batch.d.ts +2 -0
  27. package/dist/cli/commands/batch.d.ts.map +1 -0
  28. package/dist/cli/commands/batch.js +307 -0
  29. package/dist/cli/commands/batch.js.map +1 -0
  30. package/dist/cli/commands/brief.d.ts +2 -0
  31. package/dist/cli/commands/brief.d.ts.map +1 -0
  32. package/dist/cli/commands/brief.js +146 -0
  33. package/dist/cli/commands/brief.js.map +1 -0
  34. package/dist/cli/commands/bundle.d.ts +2 -0
  35. package/dist/cli/commands/bundle.d.ts.map +1 -0
  36. package/dist/cli/commands/bundle.js +90 -0
  37. package/dist/cli/commands/bundle.js.map +1 -0
  38. package/dist/cli/commands/dependency.d.ts +2 -0
  39. package/dist/cli/commands/dependency.d.ts.map +1 -0
  40. package/dist/cli/commands/dependency.js +260 -0
  41. package/dist/cli/commands/dependency.js.map +1 -0
  42. package/dist/cli/commands/diagnostics.d.ts +2 -0
  43. package/dist/cli/commands/diagnostics.d.ts.map +1 -0
  44. package/dist/cli/commands/diagnostics.js +91 -0
  45. package/dist/cli/commands/diagnostics.js.map +1 -0
  46. package/dist/cli/commands/diagram.d.ts +2 -0
  47. package/dist/cli/commands/diagram.d.ts.map +1 -0
  48. package/dist/cli/commands/diagram.js +305 -0
  49. package/dist/cli/commands/diagram.js.map +1 -0
  50. package/dist/cli/commands/done.d.ts +2 -0
  51. package/dist/cli/commands/done.d.ts.map +1 -0
  52. package/dist/cli/commands/done.js +140 -0
  53. package/dist/cli/commands/done.js.map +1 -0
  54. package/dist/cli/commands/graph.d.ts +2 -0
  55. package/dist/cli/commands/graph.d.ts.map +1 -0
  56. package/dist/cli/commands/graph.js +105 -0
  57. package/dist/cli/commands/graph.js.map +1 -0
  58. package/dist/cli/commands/index.d.ts +21 -0
  59. package/dist/cli/commands/index.d.ts.map +1 -0
  60. package/dist/cli/commands/index.js +22 -0
  61. package/dist/cli/commands/index.js.map +1 -0
  62. package/dist/cli/commands/knowledge-search.d.ts +2 -0
  63. package/dist/cli/commands/knowledge-search.d.ts.map +1 -0
  64. package/dist/cli/commands/knowledge-search.js +43 -0
  65. package/dist/cli/commands/knowledge-search.js.map +1 -0
  66. package/dist/cli/commands/knowledge.d.ts +2 -0
  67. package/dist/cli/commands/knowledge.d.ts.map +1 -0
  68. package/dist/cli/commands/knowledge.js +416 -0
  69. package/dist/cli/commands/knowledge.js.map +1 -0
  70. package/dist/cli/commands/loop.d.ts +2 -0
  71. package/dist/cli/commands/loop.d.ts.map +1 -0
  72. package/dist/cli/commands/loop.js +192 -0
  73. package/dist/cli/commands/loop.js.map +1 -0
  74. package/dist/cli/commands/maintenance.d.ts +2 -0
  75. package/dist/cli/commands/maintenance.d.ts.map +1 -0
  76. package/dist/cli/commands/maintenance.js +231 -0
  77. package/dist/cli/commands/maintenance.js.map +1 -0
  78. package/dist/cli/commands/next.d.ts +2 -0
  79. package/dist/cli/commands/next.d.ts.map +1 -0
  80. package/dist/cli/commands/next.js +116 -0
  81. package/dist/cli/commands/next.js.map +1 -0
  82. package/dist/cli/commands/plan.d.ts +2 -0
  83. package/dist/cli/commands/plan.d.ts.map +1 -0
  84. package/dist/cli/commands/plan.js +340 -0
  85. package/dist/cli/commands/plan.js.map +1 -0
  86. package/dist/cli/commands/project-updates.d.ts +2 -0
  87. package/dist/cli/commands/project-updates.d.ts.map +1 -0
  88. package/dist/cli/commands/project-updates.js +243 -0
  89. package/dist/cli/commands/project-updates.js.map +1 -0
  90. package/dist/cli/commands/project.d.ts +2 -0
  91. package/dist/cli/commands/project.d.ts.map +1 -0
  92. package/dist/cli/commands/project.js +362 -0
  93. package/dist/cli/commands/project.js.map +1 -0
  94. package/dist/cli/commands/remember.d.ts +2 -0
  95. package/dist/cli/commands/remember.d.ts.map +1 -0
  96. package/dist/cli/commands/remember.js +70 -0
  97. package/dist/cli/commands/remember.js.map +1 -0
  98. package/dist/cli/commands/status.d.ts +2 -0
  99. package/dist/cli/commands/status.d.ts.map +1 -0
  100. package/dist/cli/commands/status.js +104 -0
  101. package/dist/cli/commands/status.js.map +1 -0
  102. package/dist/cli/commands/task.d.ts +6 -0
  103. package/dist/cli/commands/task.d.ts.map +1 -0
  104. package/dist/cli/commands/task.js +361 -0
  105. package/dist/cli/commands/task.js.map +1 -0
  106. package/dist/cli/commands/utility.d.ts +9 -0
  107. package/dist/cli/commands/utility.d.ts.map +1 -0
  108. package/dist/cli/commands/utility.js +302 -0
  109. package/dist/cli/commands/utility.js.map +1 -0
  110. package/dist/cli/config.d.ts +42 -0
  111. package/dist/cli/config.d.ts.map +1 -0
  112. package/dist/cli/config.js +134 -0
  113. package/dist/cli/config.js.map +1 -0
  114. package/dist/cli/dag-commands.d.ts +7 -0
  115. package/dist/cli/dag-commands.d.ts.map +1 -0
  116. package/dist/cli/dag-commands.js +152 -0
  117. package/dist/cli/dag-commands.js.map +1 -0
  118. package/dist/cli/diagram-renderer.d.ts +26 -0
  119. package/dist/cli/diagram-renderer.d.ts.map +1 -0
  120. package/dist/cli/diagram-renderer.js +118 -0
  121. package/dist/cli/diagram-renderer.js.map +1 -0
  122. package/dist/cli/help-generator.d.ts +21 -0
  123. package/dist/cli/help-generator.d.ts.map +1 -0
  124. package/dist/cli/help-generator.js +100 -0
  125. package/dist/cli/help-generator.js.map +1 -0
  126. package/dist/cli/index.d.ts +8 -0
  127. package/dist/cli/index.d.ts.map +1 -0
  128. package/dist/cli/index.js +95 -0
  129. package/dist/cli/index.js.map +1 -0
  130. package/dist/cli/instructions.d.ts +53 -0
  131. package/dist/cli/instructions.d.ts.map +1 -0
  132. package/dist/cli/instructions.js +219 -0
  133. package/dist/cli/instructions.js.map +1 -0
  134. package/dist/cli/lean-output.d.ts +15 -0
  135. package/dist/cli/lean-output.d.ts.map +1 -0
  136. package/dist/cli/lean-output.js +66 -0
  137. package/dist/cli/lean-output.js.map +1 -0
  138. package/dist/cli/md-renderer.d.ts +6 -0
  139. package/dist/cli/md-renderer.d.ts.map +1 -0
  140. package/dist/cli/md-renderer.js +396 -0
  141. package/dist/cli/md-renderer.js.map +1 -0
  142. package/dist/cli/output-envelope.d.ts +15 -0
  143. package/dist/cli/output-envelope.d.ts.map +1 -0
  144. package/dist/cli/output-envelope.js +61 -0
  145. package/dist/cli/output-envelope.js.map +1 -0
  146. package/dist/cli/setup.d.ts +11 -0
  147. package/dist/cli/setup.d.ts.map +1 -0
  148. package/dist/cli/setup.js +415 -0
  149. package/dist/cli/setup.js.map +1 -0
  150. package/dist/cli/status-dashboard.d.ts +5 -0
  151. package/dist/cli/status-dashboard.d.ts.map +1 -0
  152. package/dist/cli/status-dashboard.js +248 -0
  153. package/dist/cli/status-dashboard.js.map +1 -0
  154. package/dist/index.d.ts +3 -0
  155. package/dist/index.d.ts.map +1 -0
  156. package/dist/index.js +25 -0
  157. package/dist/index.js.map +1 -0
  158. package/dist/retrieval/bm25.d.ts +23 -0
  159. package/dist/retrieval/bm25.d.ts.map +1 -0
  160. package/dist/retrieval/bm25.js +92 -0
  161. package/dist/retrieval/bm25.js.map +1 -0
  162. package/dist/retrieval/cross-project-search.d.ts +30 -0
  163. package/dist/retrieval/cross-project-search.d.ts.map +1 -0
  164. package/dist/retrieval/cross-project-search.js +109 -0
  165. package/dist/retrieval/cross-project-search.js.map +1 -0
  166. package/dist/retrieval/graph-builder.d.ts +6 -0
  167. package/dist/retrieval/graph-builder.d.ts.map +1 -0
  168. package/dist/retrieval/graph-builder.js +196 -0
  169. package/dist/retrieval/graph-builder.js.map +1 -0
  170. package/dist/retrieval/graph-cache.d.ts +15 -0
  171. package/dist/retrieval/graph-cache.d.ts.map +1 -0
  172. package/dist/retrieval/graph-cache.js +66 -0
  173. package/dist/retrieval/graph-cache.js.map +1 -0
  174. package/dist/retrieval/graph-invalidate.d.ts +18 -0
  175. package/dist/retrieval/graph-invalidate.d.ts.map +1 -0
  176. package/dist/retrieval/graph-invalidate.js +23 -0
  177. package/dist/retrieval/graph-invalidate.js.map +1 -0
  178. package/dist/retrieval/graph-retrieval.d.ts +24 -0
  179. package/dist/retrieval/graph-retrieval.d.ts.map +1 -0
  180. package/dist/retrieval/graph-retrieval.js +165 -0
  181. package/dist/retrieval/graph-retrieval.js.map +1 -0
  182. package/dist/retrieval/graph-traverse.d.ts +3 -0
  183. package/dist/retrieval/graph-traverse.d.ts.map +1 -0
  184. package/dist/retrieval/graph-traverse.js +53 -0
  185. package/dist/retrieval/graph-traverse.js.map +1 -0
  186. package/dist/retrieval/graph-types.d.ts +37 -0
  187. package/dist/retrieval/graph-types.d.ts.map +1 -0
  188. package/dist/retrieval/graph-types.js +12 -0
  189. package/dist/retrieval/graph-types.js.map +1 -0
  190. package/dist/retrieval/index-builder.d.ts +21 -0
  191. package/dist/retrieval/index-builder.d.ts.map +1 -0
  192. package/dist/retrieval/index-builder.js +94 -0
  193. package/dist/retrieval/index-builder.js.map +1 -0
  194. package/dist/retrieval/knowledge-selection.d.ts +7 -0
  195. package/dist/retrieval/knowledge-selection.d.ts.map +1 -0
  196. package/dist/retrieval/knowledge-selection.js +80 -0
  197. package/dist/retrieval/knowledge-selection.js.map +1 -0
  198. package/dist/retrieval/task-scoped.d.ts +23 -0
  199. package/dist/retrieval/task-scoped.d.ts.map +1 -0
  200. package/dist/retrieval/task-scoped.js +51 -0
  201. package/dist/retrieval/task-scoped.js.map +1 -0
  202. package/dist/utils/content-assembly.d.ts +44 -0
  203. package/dist/utils/content-assembly.d.ts.map +1 -0
  204. package/dist/utils/content-assembly.js +101 -0
  205. package/dist/utils/content-assembly.js.map +1 -0
  206. package/dist/utils/dag.d.ts +28 -0
  207. package/dist/utils/dag.d.ts.map +1 -0
  208. package/dist/utils/dag.js +68 -0
  209. package/dist/utils/dag.js.map +1 -0
  210. package/dist/utils/diagram-generator.d.ts +17 -0
  211. package/dist/utils/diagram-generator.d.ts.map +1 -0
  212. package/dist/utils/diagram-generator.js +38 -0
  213. package/dist/utils/diagram-generator.js.map +1 -0
  214. package/dist/utils/errors.d.ts +40 -0
  215. package/dist/utils/errors.d.ts.map +1 -0
  216. package/dist/utils/errors.js +83 -0
  217. package/dist/utils/errors.js.map +1 -0
  218. package/dist/utils/file-lock.d.ts +13 -0
  219. package/dist/utils/file-lock.d.ts.map +1 -0
  220. package/dist/utils/file-lock.js +80 -0
  221. package/dist/utils/file-lock.js.map +1 -0
  222. package/dist/utils/git.d.ts +14 -0
  223. package/dist/utils/git.d.ts.map +1 -0
  224. package/dist/utils/git.js +56 -0
  225. package/dist/utils/git.js.map +1 -0
  226. package/dist/utils/graphify-knowledge.d.ts +6 -0
  227. package/dist/utils/graphify-knowledge.d.ts.map +1 -0
  228. package/dist/utils/graphify-knowledge.js +60 -0
  229. package/dist/utils/graphify-knowledge.js.map +1 -0
  230. package/dist/utils/graphify.d.ts +49 -0
  231. package/dist/utils/graphify.d.ts.map +1 -0
  232. package/dist/utils/graphify.js +306 -0
  233. package/dist/utils/graphify.js.map +1 -0
  234. package/dist/utils/json-schemas.d.ts +723 -0
  235. package/dist/utils/json-schemas.d.ts.map +1 -0
  236. package/dist/utils/json-schemas.js +147 -0
  237. package/dist/utils/json-schemas.js.map +1 -0
  238. package/dist/utils/json.d.ts +15 -0
  239. package/dist/utils/json.d.ts.map +1 -0
  240. package/dist/utils/json.js +39 -0
  241. package/dist/utils/json.js.map +1 -0
  242. package/dist/utils/knowledge-store.d.ts +49 -0
  243. package/dist/utils/knowledge-store.d.ts.map +1 -0
  244. package/dist/utils/knowledge-store.js +191 -0
  245. package/dist/utils/knowledge-store.js.map +1 -0
  246. package/dist/utils/loop-state.d.ts +51 -0
  247. package/dist/utils/loop-state.d.ts.map +1 -0
  248. package/dist/utils/loop-state.js +123 -0
  249. package/dist/utils/loop-state.js.map +1 -0
  250. package/dist/utils/paths.d.ts +16 -0
  251. package/dist/utils/paths.d.ts.map +1 -0
  252. package/dist/utils/paths.js +66 -0
  253. package/dist/utils/paths.js.map +1 -0
  254. package/dist/utils/plan-store.d.ts +46 -0
  255. package/dist/utils/plan-store.d.ts.map +1 -0
  256. package/dist/utils/plan-store.js +184 -0
  257. package/dist/utils/plan-store.js.map +1 -0
  258. package/dist/utils/project-documents.d.ts +20 -0
  259. package/dist/utils/project-documents.d.ts.map +1 -0
  260. package/dist/utils/project-documents.js +10 -0
  261. package/dist/utils/project-documents.js.map +1 -0
  262. package/dist/utils/project-memory.d.ts +16 -0
  263. package/dist/utils/project-memory.d.ts.map +1 -0
  264. package/dist/utils/project-memory.js +16 -0
  265. package/dist/utils/project-memory.js.map +1 -0
  266. package/dist/utils/project-resolver.d.ts +28 -0
  267. package/dist/utils/project-resolver.d.ts.map +1 -0
  268. package/dist/utils/project-resolver.js +119 -0
  269. package/dist/utils/project-resolver.js.map +1 -0
  270. package/dist/utils/quick-scan.d.ts +13 -0
  271. package/dist/utils/quick-scan.d.ts.map +1 -0
  272. package/dist/utils/quick-scan.js +156 -0
  273. package/dist/utils/quick-scan.js.map +1 -0
  274. package/dist/utils/schemas.d.ts +13 -0
  275. package/dist/utils/schemas.d.ts.map +1 -0
  276. package/dist/utils/schemas.js +6 -0
  277. package/dist/utils/schemas.js.map +1 -0
  278. package/dist/utils/slug.d.ts +10 -0
  279. package/dist/utils/slug.d.ts.map +1 -0
  280. package/dist/utils/slug.js +18 -0
  281. package/dist/utils/slug.js.map +1 -0
  282. package/dist/utils/stdin.d.ts +6 -0
  283. package/dist/utils/stdin.d.ts.map +1 -0
  284. package/dist/utils/stdin.js +25 -0
  285. package/dist/utils/stdin.js.map +1 -0
  286. package/dist/utils/storage-utils.d.ts +48 -0
  287. package/dist/utils/storage-utils.d.ts.map +1 -0
  288. package/dist/utils/storage-utils.js +175 -0
  289. package/dist/utils/storage-utils.js.map +1 -0
  290. package/dist/utils/task-store.d.ts +49 -0
  291. package/dist/utils/task-store.d.ts.map +1 -0
  292. package/dist/utils/task-store.js +178 -0
  293. package/dist/utils/task-store.js.map +1 -0
  294. package/dist/utils/template.d.ts +15 -0
  295. package/dist/utils/template.d.ts.map +1 -0
  296. package/dist/utils/template.js +27 -0
  297. package/dist/utils/template.js.map +1 -0
  298. package/dist/utils/tool-response.d.ts +37 -0
  299. package/dist/utils/tool-response.d.ts.map +1 -0
  300. package/dist/utils/tool-response.js +44 -0
  301. package/dist/utils/tool-response.js.map +1 -0
  302. package/dist/utils/workflow-policy.d.ts +50 -0
  303. package/dist/utils/workflow-policy.d.ts.map +1 -0
  304. package/dist/utils/workflow-policy.js +111 -0
  305. package/dist/utils/workflow-policy.js.map +1 -0
  306. package/dist/utils/workspace-match.d.ts +35 -0
  307. package/dist/utils/workspace-match.d.ts.map +1 -0
  308. package/dist/utils/workspace-match.js +58 -0
  309. package/dist/utils/workspace-match.js.map +1 -0
  310. package/opencode/arcs/.opencode/plugins/arcs.js +348 -0
  311. package/opencode/arcs/bundle-runtime.json +68 -0
  312. package/opencode/arcs/manifest.json +279 -0
  313. package/opencode/arcs/prompts/arcs-docs.txt +124 -0
  314. package/opencode/arcs/prompts/arcs-orchestrate-caveman.txt +529 -0
  315. package/opencode/arcs/prompts/arcs-orchestrate.txt +437 -0
  316. package/opencode/arcs/prompts/code-reviewer.txt +55 -0
  317. package/opencode/arcs/prompts/devil-advocate.txt +121 -0
  318. package/opencode/arcs/prompts/docs-researcher.txt +54 -0
  319. package/opencode/arcs/prompts/oncall-ops.txt +54 -0
  320. package/opencode/arcs/prompts/qa-analyst.txt +54 -0
  321. package/opencode/arcs/prompts/software-engineer.txt +48 -0
  322. package/opencode/arcs/prompts/system-architect.txt +60 -0
  323. package/opencode/arcs/prompts/tech-architect.txt +54 -0
  324. package/opencode/arcs/skills/brainstorming/SKILL.md +144 -0
  325. package/opencode/arcs/skills/brainstorming/scripts/frame-template.html +214 -0
  326. package/opencode/arcs/skills/brainstorming/scripts/helper.js +88 -0
  327. package/opencode/arcs/skills/brainstorming/scripts/server.js +338 -0
  328. package/opencode/arcs/skills/brainstorming/scripts/start-server.sh +137 -0
  329. package/opencode/arcs/skills/brainstorming/scripts/stop-server.sh +31 -0
  330. package/opencode/arcs/skills/brainstorming/spec-document-reviewer-prompt.md +50 -0
  331. package/opencode/arcs/skills/brainstorming/visual-companion.md +277 -0
  332. package/opencode/arcs/skills/caveman-commit/SKILL.md +51 -0
  333. package/opencode/arcs/skills/code-agent/SKILL.md +58 -0
  334. package/opencode/arcs/skills/deep-pr-review/SKILL.md +191 -0
  335. package/opencode/arcs/skills/deep-pr-review/graphify-diff.md +102 -0
  336. package/opencode/arcs/skills/deep-pr-review/review-template.md +69 -0
  337. package/opencode/arcs/skills/executing-plans/SKILL.md +91 -0
  338. package/opencode/arcs/skills/init-project/SKILL.md +150 -0
  339. package/opencode/arcs/skills/quick-dev/SKILL.md +47 -0
  340. package/opencode/arcs/skills/requesting-code-review/SKILL.md +47 -0
  341. package/opencode/arcs/skills/requesting-code-review/code-reviewer.md +179 -0
  342. package/opencode/arcs/skills/subagent-driven-development/SKILL.md +162 -0
  343. package/opencode/arcs/skills/subagent-driven-development/code-quality-reviewer-prompt.md +53 -0
  344. package/opencode/arcs/skills/subagent-driven-development/implementer-prompt.md +148 -0
  345. package/opencode/arcs/skills/subagent-driven-development/spec-reviewer-prompt.md +85 -0
  346. package/opencode/arcs/skills/systematic-debugging/SKILL.md +174 -0
  347. package/opencode/arcs/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
  348. package/opencode/arcs/skills/systematic-debugging/condition-based-waiting.md +115 -0
  349. package/opencode/arcs/skills/systematic-debugging/defense-in-depth.md +122 -0
  350. package/opencode/arcs/skills/systematic-debugging/find-polluter.sh +63 -0
  351. package/opencode/arcs/skills/systematic-debugging/phases-reference.md +168 -0
  352. package/opencode/arcs/skills/systematic-debugging/root-cause-tracing.md +169 -0
  353. package/opencode/arcs/skills/test-driven-development/SKILL.md +72 -0
  354. package/opencode/arcs/skills/test-driven-development/tdd-rationalizations-and-examples.md +157 -0
  355. package/opencode/arcs/skills/test-driven-development/testing-anti-patterns.md +299 -0
  356. package/opencode/arcs/skills/to-diagram/SKILL.md +235 -0
  357. package/opencode/arcs/skills/to-diagram/scripts/manage-diagram.mjs +963 -0
  358. package/opencode/arcs/skills/writing-plans/SKILL.md +179 -0
  359. package/opencode/arcs/skills/writing-plans/plan-document-reviewer-prompt.md +52 -0
  360. package/package.json +60 -0
  361. package/scripts/arcs-cli.mjs +45 -0
  362. package/skills/explore-dag.md +57 -0
  363. package/skills/init-project.md +105 -0
  364. package/skills/orchestrate.md +94 -0
  365. package/skills/update-docs.md +72 -0
  366. package/templates/dependency.md.tmpl +9 -0
  367. package/templates/knowledge.md.tmpl +15 -0
  368. package/templates/project-meta.json.tmpl +13 -0
  369. package/templates/project.md.tmpl +11 -0
  370. package/templates/task.md.tmpl +9 -0
@@ -0,0 +1,90 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Bundle commands — lint-bundle, deploy-superpowers (registry-based)
3
+ // ---------------------------------------------------------------------------
4
+ import { spawnSync } from "node:child_process";
5
+ import { resolve } from "node:path";
6
+ import { defineCommand } from "../command-registry.js";
7
+ import { failure, success } from "../output-envelope.js";
8
+ // ---------------------------------------------------------------------------
9
+ // lint-bundle
10
+ // ---------------------------------------------------------------------------
11
+ defineCommand({
12
+ path: "lint-bundle",
13
+ description: "Validate opencode-bundle manifest integrity",
14
+ mutation: false,
15
+ params: {
16
+ "bundle-root": { type: "string", description: "Override bundle root directory" },
17
+ "config-root": { type: "string", description: "Override config root directory" },
18
+ },
19
+ handler: handleLintBundle,
20
+ });
21
+ async function handleLintBundle(params, _flags) {
22
+ const bundleRoot = params["bundle-root"];
23
+ const configRoot = params["config-root"];
24
+ try {
25
+ const repoRoot = resolve(import.meta.dirname, "../../..");
26
+ const scriptPath = resolve(repoRoot, "scripts/lint-bundle.mjs");
27
+ const env = { ...process.env };
28
+ if (bundleRoot)
29
+ env.BUNDLE_LINT_BUNDLE_ROOT = bundleRoot;
30
+ if (configRoot)
31
+ env.BUNDLE_LINT_CONFIG_ROOT = configRoot;
32
+ const proc = spawnSync("node", [scriptPath], {
33
+ cwd: repoRoot,
34
+ env,
35
+ encoding: "utf-8",
36
+ });
37
+ if (proc.stdout) {
38
+ const result = JSON.parse(proc.stdout);
39
+ return success(result);
40
+ }
41
+ return failure("internal_error", proc.stderr || "lint-bundle produced no output");
42
+ }
43
+ catch (err) {
44
+ return failure("internal_error", err instanceof Error ? err.message : String(err));
45
+ }
46
+ }
47
+ // ---------------------------------------------------------------------------
48
+ // deploy-superpowers
49
+ // ---------------------------------------------------------------------------
50
+ defineCommand({
51
+ path: "deploy-superpowers",
52
+ description: "Deploy opencode-bundle to ~/.config/opencode",
53
+ mutation: true,
54
+ params: {
55
+ "bundle-root": { type: "string", description: "Override bundle root directory" },
56
+ "config-root": { type: "string", description: "Override config root directory" },
57
+ },
58
+ handler: handleDeploySuperpowers,
59
+ });
60
+ async function handleDeploySuperpowers(params, flags) {
61
+ const bundleRoot = params["bundle-root"];
62
+ const configRoot = params["config-root"];
63
+ if (flags.dryRun) {
64
+ return success({ dryRun: true, wouldDeploy: true });
65
+ }
66
+ try {
67
+ const repoRoot = resolve(import.meta.dirname, "../../..");
68
+ const scriptPath = resolve(repoRoot, "scripts/deploy-opencode-bundle.mjs");
69
+ const env = { ...process.env };
70
+ env.DEPLOY_DRY_RUN = "false";
71
+ if (bundleRoot)
72
+ env.DEPLOY_BUNDLE_ROOT = bundleRoot;
73
+ if (configRoot)
74
+ env.DEPLOY_CONFIG_ROOT = configRoot;
75
+ const proc = spawnSync("node", [scriptPath], {
76
+ cwd: repoRoot,
77
+ env,
78
+ encoding: "utf-8",
79
+ });
80
+ if (proc.stdout) {
81
+ const result = JSON.parse(proc.stdout);
82
+ return success(result);
83
+ }
84
+ return failure("internal_error", proc.stderr || "deploy script produced no output");
85
+ }
86
+ catch (err) {
87
+ return failure("internal_error", err instanceof Error ? err.message : String(err));
88
+ }
89
+ }
90
+ //# sourceMappingURL=bundle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../src/cli/commands/bundle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=dependency.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/dependency.ts"],"names":[],"mappings":""}
@@ -0,0 +1,260 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Dependency commands — registry-based
3
+ // ---------------------------------------------------------------------------
4
+ import { readRootMeta, wouldCreateCycle, writeRootMeta } from "../../utils/dag.js";
5
+ import { getDataDir } from "../../utils/paths.js";
6
+ import { defineCommand, ERROR_CODES, } from "../command-registry.js";
7
+ import { failure, success } from "../output-envelope.js";
8
+ // ---------------------------------------------------------------------------
9
+ // dependency add
10
+ // ---------------------------------------------------------------------------
11
+ defineCommand({
12
+ path: "dependency add",
13
+ description: "Add a dependency between two projects",
14
+ mutation: true,
15
+ params: {
16
+ slug: { type: "string", required: true, positional: 0, description: "Source project slug" },
17
+ target: {
18
+ type: "string",
19
+ required: true,
20
+ positional: 1,
21
+ description: "Target project slug (dependency)",
22
+ },
23
+ },
24
+ handler: handleDependencyAdd,
25
+ });
26
+ async function handleDependencyAdd(params, flags) {
27
+ const slug = params.slug;
28
+ const targetSlug = params.target;
29
+ if (flags.dryRun) {
30
+ return success({ dryRun: true, wouldAdd: { slug, target: targetSlug } });
31
+ }
32
+ try {
33
+ const dataDir = getDataDir();
34
+ const rootMeta = await readRootMeta(dataDir);
35
+ const project = rootMeta.projects.find((p) => p.id === slug);
36
+ if (!project) {
37
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`);
38
+ }
39
+ const target = rootMeta.projects.find((p) => p.id === targetSlug);
40
+ if (!target) {
41
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${targetSlug}" not found`);
42
+ }
43
+ if (project.dependsOn.includes(targetSlug)) {
44
+ return success({
45
+ message: `Dependency "${slug}" → "${targetSlug}" already exists.`,
46
+ slug,
47
+ target: targetSlug,
48
+ action: "add",
49
+ noop: true,
50
+ });
51
+ }
52
+ if (wouldCreateCycle(rootMeta.projects, slug, targetSlug)) {
53
+ return failure("cycle_detected", `Adding dependency "${slug}" → "${targetSlug}" would create a cycle`);
54
+ }
55
+ project.dependsOn.push(targetSlug);
56
+ await writeRootMeta(dataDir, rootMeta);
57
+ return success({
58
+ slug,
59
+ target: targetSlug,
60
+ action: "add",
61
+ message: `Added dependency: "${slug}" → "${targetSlug}"`,
62
+ });
63
+ }
64
+ catch (err) {
65
+ return failure("write_error", err instanceof Error ? err.message : String(err));
66
+ }
67
+ }
68
+ // ---------------------------------------------------------------------------
69
+ // dependency remove
70
+ // ---------------------------------------------------------------------------
71
+ defineCommand({
72
+ path: "dependency remove",
73
+ description: "Remove a dependency between two projects",
74
+ mutation: true,
75
+ params: {
76
+ slug: { type: "string", required: true, positional: 0, description: "Source project slug" },
77
+ target: {
78
+ type: "string",
79
+ required: true,
80
+ positional: 1,
81
+ description: "Target project slug (dependency)",
82
+ },
83
+ },
84
+ handler: handleDependencyRemove,
85
+ });
86
+ async function handleDependencyRemove(params, flags) {
87
+ const slug = params.slug;
88
+ const targetSlug = params.target;
89
+ if (flags.dryRun) {
90
+ return success({ dryRun: true, wouldRemove: { slug, target: targetSlug } });
91
+ }
92
+ try {
93
+ const dataDir = getDataDir();
94
+ const rootMeta = await readRootMeta(dataDir);
95
+ const project = rootMeta.projects.find((p) => p.id === slug);
96
+ if (!project) {
97
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`);
98
+ }
99
+ const target = rootMeta.projects.find((p) => p.id === targetSlug);
100
+ if (!target) {
101
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${targetSlug}" not found`);
102
+ }
103
+ const idx = project.dependsOn.indexOf(targetSlug);
104
+ if (idx === -1) {
105
+ return success({
106
+ message: `Dependency "${slug}" → "${targetSlug}" does not exist.`,
107
+ slug,
108
+ target: targetSlug,
109
+ action: "remove",
110
+ noop: true,
111
+ });
112
+ }
113
+ project.dependsOn.splice(idx, 1);
114
+ await writeRootMeta(dataDir, rootMeta);
115
+ return success({
116
+ slug,
117
+ target: targetSlug,
118
+ action: "remove",
119
+ message: `Removed dependency: "${slug}" → "${targetSlug}"`,
120
+ });
121
+ }
122
+ catch (err) {
123
+ return failure("write_error", err instanceof Error ? err.message : String(err));
124
+ }
125
+ }
126
+ // ---------------------------------------------------------------------------
127
+ // doc update — alias for "project update-doc"
128
+ // ---------------------------------------------------------------------------
129
+ import { existsSync, readFileSync } from "node:fs";
130
+ import { writeFile } from "node:fs/promises";
131
+ import { resolve } from "node:path";
132
+ import { getProjectDir } from "../../utils/paths.js";
133
+ import { PROJECT_DOC_FILES } from "../../utils/project-documents.js";
134
+ defineCommand({
135
+ path: "doc update",
136
+ description: "Update a project document (alias for project update-doc)",
137
+ mutation: true,
138
+ params: {
139
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
140
+ doc: {
141
+ type: "string",
142
+ required: true,
143
+ positional: 1,
144
+ description: "Document type",
145
+ enum: ["overview", "tasks", "dependencies", "knowledge"],
146
+ },
147
+ "body-file": { type: "string", description: "Path to file with new doc content" },
148
+ },
149
+ handler: handleDocUpdate,
150
+ });
151
+ async function handleDocUpdate(params, flags) {
152
+ const slug = params.slug;
153
+ const doc = params.doc;
154
+ const bodyFile = params["body-file"];
155
+ const validDocs = Object.keys(PROJECT_DOC_FILES);
156
+ if (!validDocs.includes(doc)) {
157
+ return failure(ERROR_CODES.INVALID_ENUM, `Invalid doc type "${doc}". Valid: ${validDocs.join(", ")}`);
158
+ }
159
+ const projectDir = getProjectDir(slug);
160
+ if (!existsSync(projectDir)) {
161
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`);
162
+ }
163
+ if (!bodyFile) {
164
+ return failure(ERROR_CODES.MISSING_PARAM, "--body-file=<path> is required", {
165
+ param: "body-file",
166
+ });
167
+ }
168
+ if (flags.dryRun) {
169
+ return success({ dryRun: true, wouldUpdate: { slug, doc, bodyFile } });
170
+ }
171
+ if (!existsSync(bodyFile)) {
172
+ return failure(ERROR_CODES.ENTITY_NOT_FOUND, `Body file not found: ${bodyFile}`);
173
+ }
174
+ const content = readFileSync(bodyFile, "utf-8");
175
+ const fileName = PROJECT_DOC_FILES[doc];
176
+ const filePath = resolve(projectDir, fileName);
177
+ try {
178
+ await writeFile(filePath, content, "utf-8");
179
+ return success({ updated: true, slug, doc, path: filePath });
180
+ }
181
+ catch (err) {
182
+ return failure("write_error", err instanceof Error ? err.message : String(err));
183
+ }
184
+ }
185
+ // ---------------------------------------------------------------------------
186
+ // paths update — alias for "project update-paths" with full legacy API
187
+ // ---------------------------------------------------------------------------
188
+ import { validateJson } from "../../utils/json.js";
189
+ import { projectMetaSchema } from "../../utils/json-schemas.js";
190
+ import { normalizeWorkspacePath } from "../../utils/workspace-match.js";
191
+ defineCommand({
192
+ path: "paths update",
193
+ description: "Update workspace paths for a project",
194
+ mutation: true,
195
+ params: {
196
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
197
+ action: {
198
+ type: "string",
199
+ required: true,
200
+ description: "Action to perform",
201
+ enum: ["add", "remove", "set"],
202
+ },
203
+ paths: {
204
+ type: "string",
205
+ required: true,
206
+ description: "Comma-separated list of absolute paths",
207
+ },
208
+ },
209
+ handler: handlePathsUpdate,
210
+ });
211
+ async function handlePathsUpdate(params, flags) {
212
+ const slug = params.slug;
213
+ const action = params.action;
214
+ const pathsRaw = params.paths;
215
+ const paths = pathsRaw.split(",").map((p) => p.trim());
216
+ // Validate all paths are absolute
217
+ for (const p of paths) {
218
+ if (!p.startsWith("/")) {
219
+ return failure(ERROR_CODES.INVALID_TYPE, `Path must be absolute, got "${p}"`);
220
+ }
221
+ }
222
+ if (flags.dryRun) {
223
+ return success({ dryRun: true, wouldUpdate: { slug, action, paths } });
224
+ }
225
+ const projectDir = getProjectDir(slug);
226
+ const metaPath = resolve(projectDir, "meta.json");
227
+ if (!existsSync(metaPath)) {
228
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`);
229
+ }
230
+ try {
231
+ const raw = JSON.parse(readFileSync(metaPath, "utf-8"));
232
+ const meta = validateJson(raw, projectMetaSchema, metaPath);
233
+ const current = Array.isArray(meta.workspacePaths) ? meta.workspacePaths : [];
234
+ const normalized = paths.map(normalizeWorkspacePath);
235
+ let updated;
236
+ switch (action) {
237
+ case "add": {
238
+ const existing = new Set(current);
239
+ updated = [...current, ...normalized.filter((p) => !existing.has(p))];
240
+ break;
241
+ }
242
+ case "remove": {
243
+ const toRemove = new Set(normalized);
244
+ updated = current.filter((p) => !toRemove.has(normalizeWorkspacePath(p)));
245
+ break;
246
+ }
247
+ case "set": {
248
+ updated = [...new Set(normalized)];
249
+ break;
250
+ }
251
+ }
252
+ meta.workspacePaths = updated;
253
+ await writeFile(metaPath, JSON.stringify(meta, null, 2), "utf-8");
254
+ return success({ updated: true, slug, action, paths: updated });
255
+ }
256
+ catch (err) {
257
+ return failure("write_error", err instanceof Error ? err.message : String(err));
258
+ }
259
+ }
260
+ //# sourceMappingURL=dependency.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency.js","sourceRoot":"","sources":["../../../src/cli/commands/dependency.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=diagnostics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/diagnostics.ts"],"names":[],"mappings":""}
@@ -0,0 +1,91 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Diagnostic commands — audit (alias for validate --checks=sourcefiles), diff
3
+ // ---------------------------------------------------------------------------
4
+ import { existsSync } from "node:fs";
5
+ import { getProjectDir } from "../../utils/paths.js";
6
+ import { listTasks, readKnowledgeIndex, readPlanIndex } from "../../utils/project-memory.js";
7
+ import { defineCommand, ERROR_CODES } from "../command-registry.js";
8
+ import { failure, success } from "../output-envelope.js";
9
+ import { runValidation } from "./utility.js";
10
+ // ---------------------------------------------------------------------------
11
+ // audit — thin alias delegating to validate with checks=sourcefiles
12
+ // ---------------------------------------------------------------------------
13
+ defineCommand({
14
+ path: "audit",
15
+ description: "Run a structural audit of a project (alias for validate --checks=sourcefiles)",
16
+ params: {
17
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
18
+ },
19
+ handler: async (params) => {
20
+ const slug = params.slug;
21
+ return runValidation(slug, new Set(["sourcefiles"]));
22
+ },
23
+ });
24
+ // ---------------------------------------------------------------------------
25
+ // diff
26
+ // ---------------------------------------------------------------------------
27
+ function parseRelativeTime(input) {
28
+ const match = input.match(/^(\d+)(m|h|d)$/);
29
+ if (!match)
30
+ return null;
31
+ const [, num, unit] = match;
32
+ const ms = { m: 60_000, h: 3_600_000, d: 86_400_000 }[unit];
33
+ return new Date(Date.now() - parseInt(num) * ms).toISOString();
34
+ }
35
+ defineCommand({
36
+ path: "diff",
37
+ description: "Show what changed in a project since a given timestamp",
38
+ params: {
39
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
40
+ since: {
41
+ type: "string",
42
+ required: true,
43
+ description: "ISO timestamp or relative time (e.g. 30m, 2h, 7d)",
44
+ },
45
+ },
46
+ handler: async (params) => {
47
+ const slug = params.slug;
48
+ const sinceRaw = params.since;
49
+ const sinceIso = parseRelativeTime(sinceRaw) ?? sinceRaw;
50
+ const sinceMs = new Date(sinceIso).getTime();
51
+ if (!Number.isFinite(sinceMs)) {
52
+ return failure(ERROR_CODES.INVALID_TYPE, `Invalid ISO timestamp "${sinceRaw}"`);
53
+ }
54
+ const projectDir = getProjectDir(slug);
55
+ if (!existsSync(projectDir)) {
56
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`);
57
+ }
58
+ const [planIndex, knowledgeIndex, tasks] = await Promise.all([
59
+ readPlanIndex(projectDir),
60
+ readKnowledgeIndex(projectDir),
61
+ listTasks(projectDir),
62
+ ]);
63
+ const effectiveTs = (item) => item.updatedAt || item.createdAt;
64
+ const isAfter = (item) => new Date(effectiveTs(item)).getTime() > sinceMs;
65
+ const plans = planIndex.plans
66
+ .filter(isAfter)
67
+ .map((p) => ({ planId: p.id, title: p.title, status: p.status, updatedAt: effectiveTs(p) }))
68
+ .sort((a, b) => new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime());
69
+ const knowledge = knowledgeIndex.entries
70
+ .filter(isAfter)
71
+ .map((e) => ({ entryId: e.id, title: e.title, kind: e.kind, updatedAt: effectiveTs(e) }))
72
+ .sort((a, b) => new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime());
73
+ const taskResults = tasks
74
+ .filter(isAfter)
75
+ .map((t) => ({ taskId: t.id, title: t.title, status: t.status, updatedAt: effectiveTs(t) }))
76
+ .sort((a, b) => new Date(b.updatedAt).getTime() - new Date(a.updatedAt).getTime());
77
+ return success({
78
+ since: sinceIso,
79
+ plans,
80
+ knowledge,
81
+ tasks: taskResults,
82
+ counts: {
83
+ plans: plans.length,
84
+ knowledge: knowledge.length,
85
+ tasks: taskResults.length,
86
+ total: plans.length + knowledge.length + taskResults.length,
87
+ },
88
+ });
89
+ },
90
+ });
91
+ //# sourceMappingURL=diagnostics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/cli/commands/diagnostics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=diagram.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagram.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/diagram.ts"],"names":[],"mappings":""}