@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,361 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Task commands — list, get, create, transition, update (registry-based)
3
+ // ---------------------------------------------------------------------------
4
+ import { execSync } from "node:child_process";
5
+ import { existsSync } from "node:fs";
6
+ import { homedir } from "node:os";
7
+ import { resolve } from "node:path";
8
+ import { getDataDir, getProjectDir } from "../../utils/paths.js";
9
+ import { createTask, deleteTask, getTask, listTasks, updateTask, } from "../../utils/project-memory.js";
10
+ import { defineCommand, ERROR_CODES, } from "../command-registry.js";
11
+ import { failure, success } from "../output-envelope.js";
12
+ // ---------------------------------------------------------------------------
13
+ // task list
14
+ // ---------------------------------------------------------------------------
15
+ defineCommand({
16
+ path: "task list",
17
+ description: "List tasks for a project",
18
+ params: {
19
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
20
+ status: {
21
+ type: "string",
22
+ description: "Filter by status",
23
+ enum: ["backlog", "in_progress", "done", "cancelled"],
24
+ },
25
+ priority: {
26
+ type: "string",
27
+ description: "Filter by priority",
28
+ enum: ["low", "medium", "high", "critical"],
29
+ },
30
+ planId: { type: "string", description: "Filter by plan ID" },
31
+ fields: {
32
+ type: "string",
33
+ required: false,
34
+ description: "Comma-separated field names to include in output",
35
+ },
36
+ },
37
+ handler: handleTaskList,
38
+ });
39
+ async function handleTaskList(params, _flags) {
40
+ const slug = params.slug;
41
+ const status = params.status;
42
+ const priority = params.priority;
43
+ const planId = params.planId;
44
+ const fields = params.fields;
45
+ const projectDir = getProjectDir(slug);
46
+ if (!existsSync(projectDir)) {
47
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`, {
48
+ hint: "Run 'arcs project list' to see available projects.",
49
+ });
50
+ }
51
+ let tasks = await listTasks(projectDir, { status });
52
+ if (priority) {
53
+ tasks = tasks.filter((t) => t.priority === priority);
54
+ }
55
+ if (planId) {
56
+ tasks = tasks.filter((t) => t.planId === planId);
57
+ }
58
+ if (fields) {
59
+ const keys = fields.split(",").map((k) => k.trim());
60
+ const projected = tasks.map((item) => {
61
+ const out = {};
62
+ for (const key of keys) {
63
+ if (key in item)
64
+ out[key] = item[key];
65
+ }
66
+ return out;
67
+ });
68
+ return success(projected);
69
+ }
70
+ return success(tasks);
71
+ }
72
+ // ---------------------------------------------------------------------------
73
+ // task get
74
+ // ---------------------------------------------------------------------------
75
+ defineCommand({
76
+ path: "task get",
77
+ description: "Get task details",
78
+ params: {
79
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
80
+ taskId: { type: "string", required: true, positional: 1, description: "Task ID" },
81
+ },
82
+ handler: handleTaskGet,
83
+ });
84
+ async function handleTaskGet(params, _flags) {
85
+ const slug = params.slug;
86
+ const taskId = params.taskId;
87
+ const projectDir = getProjectDir(slug);
88
+ if (!existsSync(projectDir)) {
89
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`, {
90
+ hint: "Run 'arcs project list' to see available projects.",
91
+ });
92
+ }
93
+ try {
94
+ const task = await getTask(projectDir, taskId);
95
+ return success(task);
96
+ }
97
+ catch (err) {
98
+ return failure(ERROR_CODES.ENTITY_NOT_FOUND, err instanceof Error ? err.message : String(err));
99
+ }
100
+ }
101
+ // ---------------------------------------------------------------------------
102
+ // task create
103
+ // ---------------------------------------------------------------------------
104
+ defineCommand({
105
+ path: "task create",
106
+ description: "Create a new task",
107
+ mutation: true,
108
+ params: {
109
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
110
+ title: { type: "string", required: true, positional: 1, description: "Task title" },
111
+ planId: { type: "string", description: "Associated plan ID" },
112
+ priority: {
113
+ type: "string",
114
+ default: "medium",
115
+ description: "Priority level",
116
+ enum: ["critical", "high", "medium", "low"],
117
+ },
118
+ status: {
119
+ type: "string",
120
+ default: "backlog",
121
+ description: "Initial status",
122
+ enum: ["backlog", "in_progress", "done", "cancelled"],
123
+ },
124
+ },
125
+ handler: handleTaskCreate,
126
+ });
127
+ async function handleTaskCreate(params, flags) {
128
+ const slug = params.slug;
129
+ const title = params.title;
130
+ const planId = params.planId;
131
+ const priority = params.priority ?? "medium";
132
+ const status = params.status ?? "backlog";
133
+ const projectDir = getProjectDir(slug);
134
+ if (!existsSync(projectDir)) {
135
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`, {
136
+ hint: "Run 'arcs project list' to see available projects.",
137
+ });
138
+ }
139
+ if (flags.dryRun) {
140
+ return success({ dryRun: true, wouldCreate: { title, slug, planId, priority, status } });
141
+ }
142
+ try {
143
+ const task = await createTask(projectDir, {
144
+ title,
145
+ ...(planId && { planId }),
146
+ priority,
147
+ status,
148
+ });
149
+ return success(task);
150
+ }
151
+ catch (err) {
152
+ return failure("task_create_error", err instanceof Error ? err.message : String(err));
153
+ }
154
+ }
155
+ // ---------------------------------------------------------------------------
156
+ // task transition
157
+ // ---------------------------------------------------------------------------
158
+ defineCommand({
159
+ path: "task transition",
160
+ description: "Transition task status",
161
+ mutation: true,
162
+ params: {
163
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
164
+ taskId: { type: "string", required: true, positional: 1, description: "Task ID" },
165
+ status: {
166
+ type: "string",
167
+ required: true,
168
+ positional: 2,
169
+ description: "New status",
170
+ enum: ["backlog", "in_progress", "done", "cancelled"],
171
+ },
172
+ planId: { type: "string", description: "Plan ID (enables atomic diagram update)" },
173
+ diagramNodeId: { type: "string", description: "Diagram node ID to update (e.g. T001)" },
174
+ },
175
+ handler: handleTaskTransition,
176
+ });
177
+ /**
178
+ * Map task status (snake_case in the ARCS task model) to diagram classDef
179
+ * status (camelCase in the Mermaid script). The two namespaces are
180
+ * intentionally distinct — task statuses follow Python/JSON convention,
181
+ * diagram statuses match the classDef identifiers.
182
+ */
183
+ function taskStatusToDiagramStatus(status) {
184
+ switch (status) {
185
+ case "in_progress":
186
+ return "inProgress";
187
+ case "done":
188
+ return "done";
189
+ case "cancelled":
190
+ return "blocked";
191
+ case "backlog":
192
+ return "backlog";
193
+ }
194
+ }
195
+ function findDiagramScript() {
196
+ const localPath = resolve(import.meta.dirname, "../../../opencode/arcs/skills/to-diagram/scripts/manage-diagram.mjs");
197
+ if (existsSync(localPath))
198
+ return localPath;
199
+ const configPath = resolve(homedir(), ".config/opencode/skills/arcs/to-diagram/scripts/manage-diagram.mjs");
200
+ if (existsSync(configPath))
201
+ return configPath;
202
+ return undefined;
203
+ }
204
+ export function attemptDiagramUpdate(slug, planId, nodeId, status) {
205
+ const dataDir = getDataDir();
206
+ const diagramPath = resolve(dataDir, "projects", slug, "plans", `${planId}.diagram.mmd`);
207
+ if (!existsSync(diagramPath)) {
208
+ return { diagramUpdated: false, diagramError: "Diagram file not found" };
209
+ }
210
+ const scriptPath = findDiagramScript();
211
+ if (!scriptPath) {
212
+ return { diagramUpdated: false, diagramError: "manage-diagram.mjs script not found" };
213
+ }
214
+ const diagramStatus = taskStatusToDiagramStatus(status);
215
+ try {
216
+ execSync(`node "${scriptPath}" status "${diagramPath}" "${nodeId}" "${diagramStatus}"`, {
217
+ encoding: "utf-8",
218
+ timeout: 10000,
219
+ // Capture child stderr so script error output never leaks to the parent's
220
+ // stderr — keeps --json output clean and parseable for agents.
221
+ stdio: ["ignore", "pipe", "pipe"],
222
+ });
223
+ return { diagramUpdated: true };
224
+ }
225
+ catch (err) {
226
+ const msg = err instanceof Error ? err.stderr || err.message : String(err);
227
+ return { diagramUpdated: false, diagramError: msg };
228
+ }
229
+ }
230
+ async function handleTaskTransition(params, flags) {
231
+ const slug = params.slug;
232
+ const taskId = params.taskId;
233
+ const status = params.status;
234
+ const planId = params.planId;
235
+ const diagramNodeId = params.diagramNodeId;
236
+ const projectDir = getProjectDir(slug);
237
+ if (!existsSync(projectDir)) {
238
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`, {
239
+ hint: "Run 'arcs project list' to see available projects.",
240
+ });
241
+ }
242
+ if (flags.dryRun) {
243
+ return success({
244
+ dryRun: true,
245
+ wouldTransition: { slug, taskId, status, planId, diagramNodeId },
246
+ });
247
+ }
248
+ try {
249
+ const currentTask = await getTask(projectDir, taskId);
250
+ const previousStatus = currentTask.status;
251
+ await updateTask(projectDir, { id: taskId, status });
252
+ // Atomic diagram update if both planId and diagramNodeId provided
253
+ if (planId && diagramNodeId) {
254
+ const diagramResult = attemptDiagramUpdate(slug, planId, diagramNodeId, status);
255
+ return success({
256
+ taskId,
257
+ previousStatus,
258
+ newStatus: status,
259
+ diagramNodeId,
260
+ ...diagramResult,
261
+ });
262
+ }
263
+ return success({ taskId, previousStatus, newStatus: status });
264
+ }
265
+ catch (err) {
266
+ return failure(ERROR_CODES.ENTITY_NOT_FOUND, err instanceof Error ? err.message : String(err));
267
+ }
268
+ }
269
+ // ---------------------------------------------------------------------------
270
+ // task update
271
+ // ---------------------------------------------------------------------------
272
+ defineCommand({
273
+ path: "task update",
274
+ description: "Update task metadata",
275
+ mutation: true,
276
+ params: {
277
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
278
+ taskId: { type: "string", required: true, positional: 1, description: "Task ID" },
279
+ title: { type: "string", description: "New title" },
280
+ priority: {
281
+ type: "string",
282
+ description: "New priority",
283
+ enum: ["critical", "high", "medium", "low"],
284
+ },
285
+ planId: { type: "string", description: "Associated plan ID" },
286
+ },
287
+ handler: handleTaskUpdate,
288
+ });
289
+ async function handleTaskUpdate(params, flags) {
290
+ const slug = params.slug;
291
+ const taskId = params.taskId;
292
+ const title = params.title;
293
+ const priority = params.priority;
294
+ const planId = params.planId;
295
+ const projectDir = getProjectDir(slug);
296
+ if (!existsSync(projectDir)) {
297
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`, {
298
+ hint: "Run 'arcs project list' to see available projects.",
299
+ });
300
+ }
301
+ if (flags.dryRun) {
302
+ return success({
303
+ dryRun: true,
304
+ wouldUpdate: { slug, taskId, title, priority, planId },
305
+ });
306
+ }
307
+ try {
308
+ const task = await updateTask(projectDir, {
309
+ id: taskId,
310
+ ...(title && { title }),
311
+ ...(priority && { priority }),
312
+ ...(planId && { planId }),
313
+ });
314
+ return success(task);
315
+ }
316
+ catch (err) {
317
+ return failure(ERROR_CODES.ENTITY_NOT_FOUND, err instanceof Error ? err.message : String(err));
318
+ }
319
+ }
320
+ // ---------------------------------------------------------------------------
321
+ // task delete
322
+ // ---------------------------------------------------------------------------
323
+ defineCommand({
324
+ path: "task delete",
325
+ description: "Delete a task",
326
+ mutation: true,
327
+ params: {
328
+ slug: { type: "string", required: true, positional: 0, description: "Project slug" },
329
+ taskId: { type: "string", required: true, positional: 1, description: "Task ID" },
330
+ },
331
+ handler: handleTaskDelete,
332
+ });
333
+ async function handleTaskDelete(params, flags) {
334
+ const slug = params.slug;
335
+ const taskId = params.taskId;
336
+ const projectDir = getProjectDir(slug);
337
+ if (!existsSync(projectDir)) {
338
+ return failure(ERROR_CODES.PROJECT_NOT_FOUND, `Project "${slug}" not found`, {
339
+ hint: "Run 'arcs project list' to see available projects.",
340
+ });
341
+ }
342
+ if (flags.dryRun) {
343
+ return success({ dryRun: true, wouldDelete: { slug, taskId } });
344
+ }
345
+ try {
346
+ await getTask(projectDir, taskId);
347
+ }
348
+ catch {
349
+ return failure(ERROR_CODES.ENTITY_NOT_FOUND, `Task "${taskId}" not found`, {
350
+ hint: `Run 'arcs task list ${slug}' to see available tasks.`,
351
+ });
352
+ }
353
+ try {
354
+ await deleteTask(projectDir, taskId);
355
+ return success({ deleted: taskId });
356
+ }
357
+ catch (err) {
358
+ return failure("task_delete_error", err instanceof Error ? err.message : String(err));
359
+ }
360
+ }
361
+ //# sourceMappingURL=task.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/cli/commands/task.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { type CLIResult } from "../command-registry.js";
2
+ declare const VALID_CHECKS: readonly ["all", "sourcefiles", "status-drift", "diagrams", "agents-md"];
3
+ type CheckName = (typeof VALID_CHECKS)[number];
4
+ /**
5
+ * Core validation logic — exported for reuse by the `audit` alias command.
6
+ */
7
+ export declare function runValidation(slug: string, checks: Set<CheckName>): Promise<CLIResult>;
8
+ export {};
9
+ //# sourceMappingURL=utility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utility.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/utility.ts"],"names":[],"mappings":"AAmBA,OAAO,EACL,KAAK,SAAS,EAIf,MAAM,wBAAwB,CAAC;AA8MhC,QAAA,MAAM,YAAY,0EAA2E,CAAC;AAC9F,KAAK,SAAS,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAQ/C;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CA2H5F"}