@rryando/arcs 3.10.0 → 3.11.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.
- package/README.md +172 -146
- package/dist/cli/agent-registry.d.ts +12 -0
- package/dist/cli/agent-registry.d.ts.map +1 -0
- package/dist/cli/agent-registry.js +67 -0
- package/dist/cli/agent-registry.js.map +1 -0
- package/dist/cli/arcs-flash.d.ts +2 -0
- package/dist/cli/arcs-flash.d.ts.map +1 -0
- package/dist/cli/arcs-flash.js +68 -0
- package/dist/cli/arcs-flash.js.map +1 -0
- package/dist/cli/arcs-orchestrate-caveman.d.ts +2 -14
- package/dist/cli/arcs-orchestrate-caveman.d.ts.map +1 -1
- package/dist/cli/arcs-orchestrate-caveman.js +6 -97
- package/dist/cli/arcs-orchestrate-caveman.js.map +1 -1
- package/dist/cli/arcs-orchestrate.d.ts +1 -1
- package/dist/cli/arcs-orchestrate.d.ts.map +1 -1
- package/dist/cli/arcs-orchestrate.js +40 -383
- package/dist/cli/arcs-orchestrate.js.map +1 -1
- package/dist/cli/bundle-installer.d.ts +10 -4
- package/dist/cli/bundle-installer.d.ts.map +1 -1
- package/dist/cli/bundle-installer.js +99 -6
- package/dist/cli/bundle-installer.js.map +1 -1
- package/dist/cli/commands/batch.js +4 -0
- package/dist/cli/commands/batch.js.map +1 -1
- package/dist/cli/commands/hooks.d.ts +36 -0
- package/dist/cli/commands/hooks.d.ts.map +1 -0
- package/dist/cli/commands/hooks.js +298 -0
- package/dist/cli/commands/hooks.js.map +1 -0
- package/dist/cli/commands/index.d.ts +2 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +2 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/project.js +27 -0
- package/dist/cli/commands/project.js.map +1 -1
- package/dist/cli/commands/task.js +16 -1
- package/dist/cli/commands/task.js.map +1 -1
- package/dist/cli/commands/web.d.ts +2 -0
- package/dist/cli/commands/web.d.ts.map +1 -0
- package/dist/cli/commands/web.js +56 -0
- package/dist/cli/commands/web.js.map +1 -0
- package/dist/cli/config.d.ts +32 -0
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +56 -0
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/instructions.d.ts +19 -6
- package/dist/cli/instructions.d.ts.map +1 -1
- package/dist/cli/instructions.js +62 -32
- package/dist/cli/instructions.js.map +1 -1
- package/dist/cli/orchestrator-shared-blocks.d.ts +31 -0
- package/dist/cli/orchestrator-shared-blocks.d.ts.map +1 -0
- package/dist/cli/orchestrator-shared-blocks.js +148 -0
- package/dist/cli/orchestrator-shared-blocks.js.map +1 -0
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +159 -85
- package/dist/cli/setup.js.map +1 -1
- package/dist/retrieval/index-builder.d.ts.map +1 -1
- package/dist/retrieval/index-builder.js +29 -1
- package/dist/retrieval/index-builder.js.map +1 -1
- package/dist/utils/claude-code-hook-install.d.ts +80 -0
- package/dist/utils/claude-code-hook-install.d.ts.map +1 -0
- package/dist/utils/claude-code-hook-install.js +146 -0
- package/dist/utils/claude-code-hook-install.js.map +1 -0
- package/dist/utils/claude-transcript.d.ts +127 -0
- package/dist/utils/claude-transcript.d.ts.map +1 -0
- package/dist/utils/claude-transcript.js +353 -0
- package/dist/utils/claude-transcript.js.map +1 -0
- package/dist/utils/diagram-generator.d.ts +1 -1
- package/dist/utils/diagram-generator.d.ts.map +1 -1
- package/dist/utils/diagram-generator.js +3 -2
- package/dist/utils/diagram-generator.js.map +1 -1
- package/dist/utils/errors.d.ts +6 -2
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +12 -0
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/hook-token-store.d.ts +22 -0
- package/dist/utils/hook-token-store.d.ts.map +1 -0
- package/dist/utils/hook-token-store.js +43 -0
- package/dist/utils/hook-token-store.js.map +1 -0
- package/dist/utils/json-schemas.d.ts +186 -2
- package/dist/utils/json-schemas.d.ts.map +1 -1
- package/dist/utils/json-schemas.js +48 -4
- package/dist/utils/json-schemas.js.map +1 -1
- package/dist/utils/knowledge-store.d.ts +7 -1
- package/dist/utils/knowledge-store.d.ts.map +1 -1
- package/dist/utils/knowledge-store.js +97 -65
- package/dist/utils/knowledge-store.js.map +1 -1
- package/dist/utils/plan-store.d.ts +8 -0
- package/dist/utils/plan-store.d.ts.map +1 -1
- package/dist/utils/plan-store.js +98 -59
- package/dist/utils/plan-store.js.map +1 -1
- package/dist/utils/project-resolver.d.ts +8 -0
- package/dist/utils/project-resolver.d.ts.map +1 -1
- package/dist/utils/project-resolver.js +7 -2
- package/dist/utils/project-resolver.js.map +1 -1
- package/dist/utils/session-store.d.ts +113 -0
- package/dist/utils/session-store.d.ts.map +1 -0
- package/dist/utils/session-store.js +312 -0
- package/dist/utils/session-store.js.map +1 -0
- package/dist/utils/storage-utils.d.ts +31 -0
- package/dist/utils/storage-utils.d.ts.map +1 -1
- package/dist/utils/storage-utils.js +116 -5
- package/dist/utils/storage-utils.js.map +1 -1
- package/dist/utils/task-store.d.ts +7 -0
- package/dist/utils/task-store.d.ts.map +1 -1
- package/dist/utils/task-store.js +73 -23
- package/dist/utils/task-store.js.map +1 -1
- package/dist/web-client/assets/GraphCanvas-dNyZ458L.js +1 -0
- package/dist/web-client/assets/MarkdownEditor-BmU9mdkN.js +77 -0
- package/dist/web-client/assets/abnfDiagram-VRR7QNED-D1BFBoeF.js +1 -0
- package/dist/web-client/assets/arc-Bfaogrm1.js +1 -0
- package/dist/web-client/assets/architecture-TIHT7OUA-CJqI5wNI.js +1 -0
- package/dist/web-client/assets/architectureDiagram-ZJ3FMSHR-CA8hTWUK.js +36 -0
- package/dist/web-client/assets/array-BifhSqXX.js +1 -0
- package/dist/web-client/assets/blockDiagram-677ZJIJ3-CQpb_KwX.js +132 -0
- package/dist/web-client/assets/c4Diagram-LMCZKHZV-BhpHX84V.js +10 -0
- package/dist/web-client/assets/channel-C8DlmyVe.js +1 -0
- package/dist/web-client/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
- package/dist/web-client/assets/chunk-32BRIVSS-BUusQQa_.js +1 -0
- package/dist/web-client/assets/chunk-52WLFC77-nNYwlftl.js +10 -0
- package/dist/web-client/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
- package/dist/web-client/assets/chunk-7BUUIJ7U-Bb538aSH.js +1 -0
- package/dist/web-client/assets/chunk-C7G6YPKG-D0a-yqnK.js +1 -0
- package/dist/web-client/assets/chunk-EX3LRPZG-IDuRMN-4.js +231 -0
- package/dist/web-client/assets/chunk-FWX5IMBZ-D_spTcqi.js +2 -0
- package/dist/web-client/assets/chunk-HOUHSVGY-C-bcxwZS.js +1 -0
- package/dist/web-client/assets/chunk-ICXQ74PX-CjmK2bAM.js +2 -0
- package/dist/web-client/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
- package/dist/web-client/assets/chunk-KEIR6QF5-DEvma7oi.js +161 -0
- package/dist/web-client/assets/chunk-MOJQB5TN-Bkc08KWY.js +88 -0
- package/dist/web-client/assets/chunk-OGEWGWER-BAAYYvG9.js +1 -0
- package/dist/web-client/assets/chunk-PUDLZKDR-WXbPY7NM.js +156 -0
- package/dist/web-client/assets/chunk-Q4XR5HBZ-DcbnjxQE.js +70 -0
- package/dist/web-client/assets/chunk-RYQCIY6F-np2RyIY1.js +1 -0
- package/dist/web-client/assets/chunk-V7JOEXUC-C6t75PAp.js +206 -0
- package/dist/web-client/assets/chunk-VAUOI2AC-DVrJ0Ic7.js +1 -0
- package/dist/web-client/assets/chunk-VR4S4FIN-MOOFvGS0.js +1 -0
- package/dist/web-client/assets/chunk-WYO6CB5R-sK7Y2NZD.js +125 -0
- package/dist/web-client/assets/chunk-XXDRQBXY-BvKO0v-W.js +1 -0
- package/dist/web-client/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
- package/dist/web-client/assets/chunk-ZGVPDNZ5-a13RQsku.js +62 -0
- package/dist/web-client/assets/chunk-ZIRB5QZD-BpeS1aZ7.js +32 -0
- package/dist/web-client/assets/classDiagram-OUVF2IWQ-p32N1P_G.js +1 -0
- package/dist/web-client/assets/classDiagram-v2-EOCWNBFH-p32N1P_G.js +1 -0
- package/dist/web-client/assets/cose-bilkent-JH36ORCC-BebHqzgp.js +1 -0
- package/dist/web-client/assets/cynefin-VYW2F7L2-D8xaH-wO.js +1 -0
- package/dist/web-client/assets/cynefinDiagram-TSTJHNR4-Bt__EqJW.js +62 -0
- package/dist/web-client/assets/cytoscape-fcose-peAzqedC.js +1 -0
- package/dist/web-client/assets/cytoscape.esm-C3UvhD5t.js +321 -0
- package/dist/web-client/assets/dagre-Buvkdvvj.js +1 -0
- package/dist/web-client/assets/dagre-VKFMJZFB-Bwgjwflz.js +4 -0
- package/dist/web-client/assets/defaultLocale-BFoDCU3G.js +1 -0
- package/dist/web-client/assets/diagram-FQU43EPY-CaPDVUq2.js +3 -0
- package/dist/web-client/assets/diagram-G47NLZAW-BQLB9YYA.js +24 -0
- package/dist/web-client/assets/diagram-NH7WQ7WH-BWo84w8Y.js +24 -0
- package/dist/web-client/assets/diagram-OA4YK3LP-bKn6Pz5s.js +30 -0
- package/dist/web-client/assets/diagram-WEI45ONY-BRqV5Oy6.js +41 -0
- package/dist/web-client/assets/dist-B_J_HbC0.js +1 -0
- package/dist/web-client/assets/ebnfDiagram-CCIWWBDH-DhUXL1-7.js +1 -0
- package/dist/web-client/assets/erDiagram-Q63AITRT-HXAQQ-_F.js +85 -0
- package/dist/web-client/assets/eventmodeling-45OFAUF4-Bj5P8mZJ.js +1 -0
- package/dist/web-client/assets/flowDiagram-23GEKE2U-37BztFri.js +1 -0
- package/dist/web-client/assets/ganttDiagram-NO4QXBWP-D-Ddf_Ii.js +292 -0
- package/dist/web-client/assets/gitGraph-TEB2WS4Q-BmHzs0uF.js +1 -0
- package/dist/web-client/assets/gitGraphDiagram-IHSO6WYX-YnQWrlh_.js +106 -0
- package/dist/web-client/assets/graphlib-DS17s2tU.js +1 -0
- package/dist/web-client/assets/index-3mNPVkix.css +2 -0
- package/dist/web-client/assets/index-DCWxuIeQ.js +58 -0
- package/dist/web-client/assets/info-DKCQHKI2-DCT_B7RN.js +1 -0
- package/dist/web-client/assets/infoDiagram-FWYZ7A6U-D-le1Zhq.js +2 -0
- package/dist/web-client/assets/init-C-OQMol4.js +1 -0
- package/dist/web-client/assets/ishikawaDiagram-FXEZZL3T-Jr1x2VJB.js +70 -0
- package/dist/web-client/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2 +0 -0
- package/dist/web-client/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2 +0 -0
- package/dist/web-client/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
- package/dist/web-client/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
- package/dist/web-client/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2 +0 -0
- package/dist/web-client/assets/journeyDiagram-5HDEW3XC-BF9ELxj-.js +139 -0
- package/dist/web-client/assets/kanban-definition-HUTT4EX6-C4fJqAxu.js +89 -0
- package/dist/web-client/assets/katex-DolUETbr.js +257 -0
- package/dist/web-client/assets/line-7N7ikFxa.js +1 -0
- package/dist/web-client/assets/linear-DeUiD2wj.js +1 -0
- package/dist/web-client/assets/map-BaFkSB1l.js +1 -0
- package/dist/web-client/assets/mermaid-parser.core-QbC1icPt.js +7 -0
- package/dist/web-client/assets/mermaid.core-C26d_UJm.js +11 -0
- package/dist/web-client/assets/mindmap-definition-LN4V7U3C-D6TV1JDf.js +96 -0
- package/dist/web-client/assets/ordinal-BDEzSJ7C.js +1 -0
- package/dist/web-client/assets/packet-7NZHBO7P-CR1vrGj3.js +1 -0
- package/dist/web-client/assets/path-COt_16Va.js +1 -0
- package/dist/web-client/assets/pegDiagram-2B236MQR-xOMBBtfV.js +1 -0
- package/dist/web-client/assets/pie-RZYD4A2V-BbWuhjwy.js +1 -0
- package/dist/web-client/assets/pieDiagram-ENE6RG2P-MsfnsqgW.js +39 -0
- package/dist/web-client/assets/quadrantDiagram-ABIIQ3AL-BoI7zKXF.js +7 -0
- package/dist/web-client/assets/radar-I7S5WNFK-CbYXKToJ.js +1 -0
- package/dist/web-client/assets/railroad-3IZDKUUU-6LxHDkLe.js +1 -0
- package/dist/web-client/assets/railroad-abnf-AHOZXSZD-2Dg9wu0J.js +1 -0
- package/dist/web-client/assets/railroad-ebnf-EBAXGLYW-C_E2ot0R.js +1 -0
- package/dist/web-client/assets/railroad-peg-LSFZ7HO6-Bs9UQR1b.js +1 -0
- package/dist/web-client/assets/railroadDiagram-RFXS5EU6-D6RUoUki.js +1 -0
- package/dist/web-client/assets/requirementDiagram-TGXJPOKE-B6k4BDpE.js +84 -0
- package/dist/web-client/assets/rolldown-runtime-Dd_uD5pT.js +1 -0
- package/dist/web-client/assets/rough.esm-By172zw-.js +1 -0
- package/dist/web-client/assets/sankeyDiagram-HTMAVEWB-BUDF-UFr.js +40 -0
- package/dist/web-client/assets/sequenceDiagram-DBY2YBRQ-D6GqcsUi.js +162 -0
- package/dist/web-client/assets/sizeCapture-X5ZJPWSS-B0uUizjq.js +1 -0
- package/dist/web-client/assets/src-oBChb5qS.js +1 -0
- package/dist/web-client/assets/stateDiagram-2N3HPSRC-WfJCQAK5.js +1 -0
- package/dist/web-client/assets/stateDiagram-v2-6OUMAXLB-BCMWGnsJ.js +1 -0
- package/dist/web-client/assets/swimlanes-5IMT3BWC-BtMo82mC.js +2 -0
- package/dist/web-client/assets/swimlanesDiagram-G3AALYLV-DmudmLcK.js +8 -0
- package/dist/web-client/assets/timeline-definition-FHXFAJF6-CoAmv2Sn.js +120 -0
- package/dist/web-client/assets/treeView-QDETBFTQ-BWsKzE1s.js +1 -0
- package/dist/web-client/assets/treemap-6X3UGDF4-i_qGtB3o.js +1 -0
- package/dist/web-client/assets/vennDiagram-L72KCM5P-DYkiLe-P.js +34 -0
- package/dist/web-client/assets/wardley-OPB4EBWU-Daaqr1Vp.js +1 -0
- package/dist/web-client/assets/wardleyDiagram-EHGQE667-Bofbsg3J.js +78 -0
- package/dist/web-client/assets/xychartDiagram-FW5EYKEG-KNF4VTfL.js +7 -0
- package/dist/web-client/index.html +15 -0
- package/dist/web-server/app.d.ts +13 -0
- package/dist/web-server/app.d.ts.map +1 -0
- package/dist/web-server/app.js +58 -0
- package/dist/web-server/app.js.map +1 -0
- package/dist/web-server/claude-runner.d.ts +86 -0
- package/dist/web-server/claude-runner.d.ts.map +1 -0
- package/dist/web-server/claude-runner.js +320 -0
- package/dist/web-server/claude-runner.js.map +1 -0
- package/dist/web-server/hook-auth.d.ts +12 -0
- package/dist/web-server/hook-auth.d.ts.map +1 -0
- package/dist/web-server/hook-auth.js +36 -0
- package/dist/web-server/hook-auth.js.map +1 -0
- package/dist/web-server/index.d.ts +23 -0
- package/dist/web-server/index.d.ts.map +1 -0
- package/dist/web-server/index.js +49 -0
- package/dist/web-server/index.js.map +1 -0
- package/dist/web-server/opencode-client.d.ts +123 -0
- package/dist/web-server/opencode-client.d.ts.map +1 -0
- package/dist/web-server/opencode-client.js +514 -0
- package/dist/web-server/opencode-client.js.map +1 -0
- package/dist/web-server/respond.d.ts +33 -0
- package/dist/web-server/respond.d.ts.map +1 -0
- package/dist/web-server/respond.js +79 -0
- package/dist/web-server/respond.js.map +1 -0
- package/dist/web-server/routes/collections.d.ts +11 -0
- package/dist/web-server/routes/collections.d.ts.map +1 -0
- package/dist/web-server/routes/collections.js +217 -0
- package/dist/web-server/routes/collections.js.map +1 -0
- package/dist/web-server/routes/discovery.d.ts +7 -0
- package/dist/web-server/routes/discovery.d.ts.map +1 -0
- package/dist/web-server/routes/discovery.js +159 -0
- package/dist/web-server/routes/discovery.js.map +1 -0
- package/dist/web-server/routes/events.d.ts +6 -0
- package/dist/web-server/routes/events.d.ts.map +1 -0
- package/dist/web-server/routes/events.js +25 -0
- package/dist/web-server/routes/events.js.map +1 -0
- package/dist/web-server/routes/hook-events.d.ts +19 -0
- package/dist/web-server/routes/hook-events.d.ts.map +1 -0
- package/dist/web-server/routes/hook-events.js +135 -0
- package/dist/web-server/routes/hook-events.js.map +1 -0
- package/dist/web-server/routes/projects.d.ts +7 -0
- package/dist/web-server/routes/projects.d.ts.map +1 -0
- package/dist/web-server/routes/projects.js +272 -0
- package/dist/web-server/routes/projects.js.map +1 -0
- package/dist/web-server/routes/sessions.d.ts +16 -0
- package/dist/web-server/routes/sessions.d.ts.map +1 -0
- package/dist/web-server/routes/sessions.js +442 -0
- package/dist/web-server/routes/sessions.js.map +1 -0
- package/dist/web-server/security.d.ts +7 -0
- package/dist/web-server/security.d.ts.map +1 -0
- package/dist/web-server/security.js +41 -0
- package/dist/web-server/security.js.map +1 -0
- package/dist/web-server/static.d.ts +10 -0
- package/dist/web-server/static.d.ts.map +1 -0
- package/dist/web-server/static.js +36 -0
- package/dist/web-server/static.js.map +1 -0
- package/dist/web-server/storage.d.ts +17 -0
- package/dist/web-server/storage.d.ts.map +1 -0
- package/dist/web-server/storage.js +42 -0
- package/dist/web-server/storage.js.map +1 -0
- package/dist/web-server/watcher.d.ts +37 -0
- package/dist/web-server/watcher.d.ts.map +1 -0
- package/dist/web-server/watcher.js +181 -0
- package/dist/web-server/watcher.js.map +1 -0
- package/opencode/arcs/bundle-runtime.json +5 -13
- package/opencode/arcs/manifest.json +213 -149
- package/opencode/arcs/prompts/arcs-docs.txt +53 -47
- package/opencode/arcs/prompts/arcs-flash.txt +190 -0
- package/opencode/arcs/prompts/arcs-orchestrate-caveman.txt +116 -422
- package/opencode/arcs/prompts/arcs-orchestrate.txt +114 -341
- package/opencode/arcs/prompts/code-reviewer.txt +37 -98
- package/opencode/arcs/prompts/devil-advocate.txt +44 -115
- package/opencode/arcs/prompts/graph-explorer.txt +31 -179
- package/opencode/arcs/prompts/software-engineer.txt +24 -6
- package/opencode/arcs/prompts/tech-architect.txt +25 -9
- package/opencode/arcs/skills/brainstorming/SKILL.md +65 -105
- package/opencode/arcs/skills/deep-pr-review/SKILL.md +5 -5
- package/opencode/arcs/skills/deep-pr-review/review-template.md +1 -1
- package/opencode/arcs/skills/enriching-codegraph-proposals/SKILL.md +17 -18
- package/opencode/arcs/skills/executing-plans/SKILL.md +26 -234
- package/opencode/arcs/skills/implementation/SKILL.md +61 -0
- package/opencode/arcs/skills/init-project/SKILL.md +16 -15
- package/opencode/arcs/skills/install-claude-code-hook/SKILL.md +143 -0
- package/opencode/arcs/skills/systematic-debugging/SKILL.md +7 -7
- package/opencode/arcs/skills/test-driven-development/SKILL.md +1 -1
- package/opencode/arcs/skills/to-diagram/SKILL.md +8 -3
- package/opencode/arcs/skills/writing-knowledge/SKILL.md +7 -6
- package/opencode/arcs/skills/writing-plans/SKILL.md +80 -130
- package/opencode/arcs/skills/writing-plans/plan-document-reviewer-prompt.md +38 -30
- package/package.json +14 -6
- package/scripts/build-opencode-bundle.mjs +22 -7
- package/scripts/claude-code-session-hook.mjs +125 -0
- package/scripts/deploy-claudecode-bundle.mjs +185 -132
- package/scripts/deploy-opencode-bundle.mjs +181 -5
- package/scripts/lib/bundle-helpers.mjs +26 -0
- package/scripts/lint-bundle.mjs +123 -3
- package/skills/explore-dag.md +5 -3
- package/skills/init-project.md +27 -26
- package/skills/orchestrate.md +29 -13
- package/skills/update-docs.md +8 -13
- package/opencode/arcs/prompts/docs-researcher.txt +0 -79
- package/opencode/arcs/prompts/oncall-ops.txt +0 -85
- package/opencode/arcs/skills/code-agent/SKILL.md +0 -63
- package/opencode/arcs/skills/executing-plans/code-quality-reviewer-prompt.md +0 -57
- package/opencode/arcs/skills/executing-plans/implementer-prompt.md +0 -152
- package/opencode/arcs/skills/executing-plans/spec-reviewer-prompt.md +0 -91
- package/opencode/arcs/skills/quick-dev/SKILL.md +0 -52
- package/opencode/arcs/skills/requesting-code-review/SKILL.md +0 -59
- package/opencode/arcs/skills/requesting-code-review/code-reviewer.md +0 -139
- package/opencode/arcs/skills/the-ladder/SKILL.md +0 -54
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: requesting-code-review
|
|
3
|
-
description: Use when completing tasks, implementing major features, or before merging to verify work meets requirements
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Skill: requesting-code-review
|
|
7
|
-
|
|
8
|
-
## When
|
|
9
|
-
|
|
10
|
-
After completing a task, major feature, or before merge. Dispatch `arcs:code-reviewer` subagent.
|
|
11
|
-
|
|
12
|
-
## Flow
|
|
13
|
-
|
|
14
|
-
```mermaid
|
|
15
|
-
flowchart TD
|
|
16
|
-
A[Work complete] --> B[Get BASE_SHA and HEAD_SHA]
|
|
17
|
-
B --> C[Gather project conventions]
|
|
18
|
-
C --> D[Fill code-reviewer.md template]
|
|
19
|
-
D --> E[Dispatch arcs:code-reviewer subagent]
|
|
20
|
-
E --> F{Review results}
|
|
21
|
-
F -->|CRITICAL| G[Fix immediately]
|
|
22
|
-
F -->|HIGH| H[Fix before proceeding]
|
|
23
|
-
F -->|MEDIUM/LOW| I[Note for later]
|
|
24
|
-
G --> E
|
|
25
|
-
H --> E
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
## Template Placeholders
|
|
29
|
-
|
|
30
|
-
- `{WHAT_WAS_IMPLEMENTED}` — what you built
|
|
31
|
-
- `{PLAN_OR_REQUIREMENTS}` — what it should do
|
|
32
|
-
- `{BASE_SHA}` / `{HEAD_SHA}` — commit range
|
|
33
|
-
- `{PROJECT_CONVENTIONS}` — CLAUDE.md / linter configs / style guides (gather once per session, reuse across dispatches)
|
|
34
|
-
|
|
35
|
-
## Feed DAG Conventions to the Reviewer
|
|
36
|
-
|
|
37
|
-
When gathering conventions, also pull what the DAG already knows so the reviewer checks against settled patterns, not just static config: `arcs knowledge search <slug> "<changed-area keywords>" --lean --json`, filtering for `kind=pattern` and `kind=gotcha`. Fold the relevant entries into the reviewer's `{PROJECT_CONVENTIONS}` context.
|
|
38
|
-
|
|
39
|
-
## When to Request
|
|
40
|
-
|
|
41
|
-
**Mandatory:** after major features, before merge to main.
|
|
42
|
-
**Already scheduled:** when `executing-plans` parallel mode drives the loop, its pipeline dispatches this review as stage 2 (code-quality-reviewer applies this template's checklist but returns the parallel-mode JSON envelope) — do not schedule it twice for the same task.
|
|
43
|
-
**Optional:** when stuck, before refactoring, after complex bugfix.
|
|
44
|
-
|
|
45
|
-
## Red Flags
|
|
46
|
-
|
|
47
|
-
- Never skip because "it's simple"
|
|
48
|
-
- Never ignore CRITICAL findings
|
|
49
|
-
- Never proceed with unfixed HIGH findings
|
|
50
|
-
- Always include project conventions in reviewer context
|
|
51
|
-
- CRITICAL/HIGH fixes route to the owning implementer — never fix files outside your own scope
|
|
52
|
-
|
|
53
|
-
See template at: `requesting-code-review/code-reviewer.md`
|
|
54
|
-
|
|
55
|
-
Reviewer returns the unified envelope: STATUS → VERDICT (approve | request-changes | comment-only) → FINDINGS by severity (CRITICAL/HIGH/MEDIUM/LOW) with 📍 file:line anchors.
|
|
56
|
-
|
|
57
|
-
## Capture Recurring Findings
|
|
58
|
-
|
|
59
|
-
When a finding recurs — the same class of issue flagged more than once, or a convention the codebase keeps violating — propose it as durable knowledge so future reviews and implementers inherit it: `arcs knowledge upsert <slug> "<title>" --kind=<pattern|gotcha> --summary="<the recurring issue and the fix convention>" --keywords="<k1,k2>" --source-files="<path,...>" --json`. Upsert is idempotent by title.
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
# Code Review Agent
|
|
2
|
-
|
|
3
|
-
You are reviewing code changes for production readiness. Your output is consumed by the orchestrator (an LLM) — structured, terse, evidence-backed findings.
|
|
4
|
-
|
|
5
|
-
**Your task:**
|
|
6
|
-
1. Read the project conventions below **before judging anything**
|
|
7
|
-
2. Review {WHAT_WAS_IMPLEMENTED}
|
|
8
|
-
3. Compare against {PLAN_OR_REQUIREMENTS}
|
|
9
|
-
4. Check code quality, architecture, testing
|
|
10
|
-
5. Categorize findings by severity with 📍 file:line anchors
|
|
11
|
-
6. Deliver VERDICT: approve | request-changes | comment-only
|
|
12
|
-
|
|
13
|
-
## Project Conventions
|
|
14
|
-
|
|
15
|
-
{PROJECT_CONVENTIONS}
|
|
16
|
-
|
|
17
|
-
**Rule:** Never flag something as wrong if it matches the project's own established patterns.
|
|
18
|
-
|
|
19
|
-
## What Was Implemented
|
|
20
|
-
|
|
21
|
-
{DESCRIPTION}
|
|
22
|
-
|
|
23
|
-
## Requirements/Plan
|
|
24
|
-
|
|
25
|
-
{PLAN_REFERENCE}
|
|
26
|
-
|
|
27
|
-
## Git Range to Review
|
|
28
|
-
|
|
29
|
-
**Base:** {BASE_SHA}
|
|
30
|
-
**Head:** {HEAD_SHA}
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
git diff --stat {BASE_SHA}..{HEAD_SHA}
|
|
34
|
-
git diff {BASE_SHA}..{HEAD_SHA}
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
## Review Checklist
|
|
38
|
-
|
|
39
|
-
**Project Conventions (check first):**
|
|
40
|
-
- Does the code follow naming, structure, and style patterns already established in this repo?
|
|
41
|
-
- Any deviation from the patterns documented in {PROJECT_CONVENTIONS}?
|
|
42
|
-
|
|
43
|
-
**Code Quality:**
|
|
44
|
-
- Clean separation of concerns?
|
|
45
|
-
- Proper error handling?
|
|
46
|
-
- Type safety (if applicable)?
|
|
47
|
-
- DRY principle followed?
|
|
48
|
-
- Edge cases handled?
|
|
49
|
-
|
|
50
|
-
**Architecture:**
|
|
51
|
-
- Sound design decisions?
|
|
52
|
-
- Scalability considerations?
|
|
53
|
-
- Performance implications?
|
|
54
|
-
- Security concerns?
|
|
55
|
-
|
|
56
|
-
**Testing:**
|
|
57
|
-
- Tests actually test logic (not mocks)?
|
|
58
|
-
- Edge cases covered?
|
|
59
|
-
- Integration tests where needed?
|
|
60
|
-
- Scoped verification passing — the dispatch VERIFY command only? Do NOT run the full suite — the completion gate owns it.
|
|
61
|
-
|
|
62
|
-
**Requirements:**
|
|
63
|
-
- All plan requirements met?
|
|
64
|
-
- Implementation matches spec?
|
|
65
|
-
- No scope creep?
|
|
66
|
-
- Breaking changes documented?
|
|
67
|
-
|
|
68
|
-
**Production Readiness:**
|
|
69
|
-
- Migration strategy (if schema changes)?
|
|
70
|
-
- Backward compatibility considered?
|
|
71
|
-
- Documentation complete?
|
|
72
|
-
- No obvious bugs?
|
|
73
|
-
|
|
74
|
-
## Output Format
|
|
75
|
-
|
|
76
|
-
No prose narrative. No "Overall this looks..." — open with the Standard Return Envelope, then VERDICT, then FINDINGS grouped by severity.
|
|
77
|
-
|
|
78
|
-
When dispatched via executing-plans parallel mode, return its JSON envelope instead (see code-quality-reviewer-prompt.md).
|
|
79
|
-
|
|
80
|
-
```
|
|
81
|
-
STATUS: done | blocked | partial
|
|
82
|
-
|
|
83
|
-
FILES_TOUCHED: none (review-only — you never edit)
|
|
84
|
-
|
|
85
|
-
VERIFY: <scoped VERIFY command from dispatch> → pass|fail (omit when the dispatch provides none)
|
|
86
|
-
|
|
87
|
-
BLOCKED_BY: <only when blocked/partial — what prevented a complete review>
|
|
88
|
-
|
|
89
|
-
VERDICT: approve | request-changes | comment-only
|
|
90
|
-
|
|
91
|
-
FINDINGS:
|
|
92
|
-
- [CRITICAL] 📍 <file:line> — <issue> — <why it matters> — <suggested fix>
|
|
93
|
-
- [HIGH] 📍 <file:line> — <issue> — <why it matters> — <suggested fix>
|
|
94
|
-
- [MEDIUM] 📍 <file:line> — <issue> — <suggested fix>
|
|
95
|
-
- [LOW] 📍 <file:line> — <issue>
|
|
96
|
-
|
|
97
|
-
TASKS: <none | suggested follow-up tasks for orchestrator>
|
|
98
|
-
|
|
99
|
-
YAGNI: <none | speculative code identified with file:line>
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
Every finding carries a **📍 file:line anchor** pointing to the specific diff line. Severity guide: CRITICAL (bugs, security, data loss, broken functionality) → HIGH (architecture problems, missing features, poor error handling, test gaps) → MEDIUM (convention deviations) → LOW (style, optimization opportunities, documentation).
|
|
103
|
-
|
|
104
|
-
## Critical Rules
|
|
105
|
-
|
|
106
|
-
**DO:**
|
|
107
|
-
- Read project conventions before evaluating style or patterns
|
|
108
|
-
- Categorize by actual severity (not everything is CRITICAL)
|
|
109
|
-
- Be specific with 📍 file:line anchors
|
|
110
|
-
- Explain WHY issues matter
|
|
111
|
-
- Give a clear VERDICT
|
|
112
|
-
|
|
113
|
-
**DON'T:**
|
|
114
|
-
- Flag something as wrong if it matches the project's own conventions
|
|
115
|
-
- Say "looks good" without checking
|
|
116
|
-
- Mark nitpicks as CRITICAL
|
|
117
|
-
- Give feedback on code you didn't review
|
|
118
|
-
- Be vague ("improve error handling")
|
|
119
|
-
- Omit the VERDICT
|
|
120
|
-
- Wrap the envelope in prose narrative
|
|
121
|
-
|
|
122
|
-
## Example Output
|
|
123
|
-
|
|
124
|
-
```
|
|
125
|
-
STATUS: done
|
|
126
|
-
|
|
127
|
-
FILES_TOUCHED: none
|
|
128
|
-
|
|
129
|
-
VERDICT: request-changes
|
|
130
|
-
|
|
131
|
-
FINDINGS:
|
|
132
|
-
- [HIGH] 📍 index-conversations:1-31 — no --help flag; users won't discover --concurrency — first-time users hit a discoverability wall — add a `--help` case with a short usage example
|
|
133
|
-
- [HIGH] 📍 search.ts:25-27 — invalid dates silently return no results instead of erroring — silent failures are hard to debug — validate ISO format and throw with an example date
|
|
134
|
-
- [LOW] 📍 indexer.ts:130 — batch loop gives no progress feedback on long runs — a simple "X of Y" counter would help
|
|
135
|
-
|
|
136
|
-
TASKS: config file for excluded projects — hardcoded list will grow
|
|
137
|
-
|
|
138
|
-
YAGNI: none
|
|
139
|
-
```
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: the-ladder
|
|
3
|
-
description: "Use before writing code as a constructive minimalism reflex — triggers: 'minimal solution', 'simplest thing that works', 'do less', 'shortest path', 'reach for stdlib first', 'before writing code'. Auto-layers onto quick-dev / code-agent to build the smallest thing that works before reaching for new code or dependencies."
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Skill: the-ladder
|
|
7
|
-
|
|
8
|
-
## When
|
|
9
|
-
|
|
10
|
-
Loaded alongside a work-mode (quick-dev / code-agent / executing-plans), before writing code. A constructive build-minimal reflex — the complement to the subtractive gates (brainstorming, devil-advocate, code-reviewer).
|
|
11
|
-
|
|
12
|
-
## The ladder
|
|
13
|
-
|
|
14
|
-
Before writing code, stop at the FIRST rung that holds — it's a reflex, not a research project. Two rungs work → take the higher one and move on:
|
|
15
|
-
|
|
16
|
-
1. Does this need to exist at all? Speculative need → skip it, say so in one line. (YAGNI)
|
|
17
|
-
2. Does the standard library already do it? Use it.
|
|
18
|
-
3. Does a native platform feature cover it? (e.g. a DB constraint over app code, a built-in over a dependency.) Use it.
|
|
19
|
-
4. Does an already-installed dependency solve it? Use it — never add a new dependency for what a few lines cover.
|
|
20
|
-
5. Can it be one line? Make it one line.
|
|
21
|
-
6. Only then: write the minimum code that works.
|
|
22
|
-
|
|
23
|
-
## Rules
|
|
24
|
-
|
|
25
|
-
- No unrequested abstractions: no interface with one implementation, no factory for one product, no config for a value that never changes.
|
|
26
|
-
- No boilerplate or scaffolding "for later". Deletion over addition. Boring over clever. Fewest files, shortest working diff.
|
|
27
|
-
- Two stdlib options the same size? Take the one that's correct on edge cases — minimal means less code, not the flimsier algorithm.
|
|
28
|
-
- Complex request → ship the minimal version AND question the rest in the same response ("Did X; Y covers it. Need full X? Say so."). Never stall on a default you can pick.
|
|
29
|
-
|
|
30
|
-
## When NOT to be minimal (hard carve-outs)
|
|
31
|
-
|
|
32
|
-
Never simplify away: input validation at trust boundaries, error handling that prevents data loss, security measures, accessibility basics, or anything the user explicitly requested. If the user insists on the full version, build it — no re-arguing.
|
|
33
|
-
|
|
34
|
-
Minimal code without its check is unfinished: non-trivial logic (a branch, a loop, a parser, a money/security path) leaves behind ONE runnable check — the smallest thing that fails if the logic breaks (an assert-based self-check or one small test). No frameworks, no fixtures unless asked. Trivial one-liners need no test — YAGNI applies to tests too. (This complements, does not replace, the test-driven-development skill when that work-mode is active.)
|
|
35
|
-
|
|
36
|
-
## Output discipline
|
|
37
|
-
|
|
38
|
-
Code first, then at most three short lines: what was skipped and when to add it. If the explanation is longer than the code, delete the explanation — every paragraph defending a simplification is complexity smuggled back as prose. Explanation the user explicitly asked for (a report, a walkthrough) is exempt.
|
|
39
|
-
|
|
40
|
-
## SHORTCUT markers (deliberate-simplification convention)
|
|
41
|
-
|
|
42
|
-
Mark every deliberate simplification inline so it reads as intent, not ignorance, and stays auditable. ARCS convention — joins the TODO/FIXME family:
|
|
43
|
-
|
|
44
|
-
```
|
|
45
|
-
// SHORTCUT: <ceiling>, upgrade when <trigger>
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
The comment names the known ceiling AND the trigger to revisit. Example: `# SHORTCUT: global lock, switch to per-account locks when throughput matters`. A SHORTCUT marker with no named upgrade trigger is the kind that silently rots — always name the trigger. (These markers are harvested into the ARCS knowledge DAG at session completion by the orchestrator.)
|
|
49
|
-
|
|
50
|
-
When a SHORTCUT's ceiling is durable and non-obvious — a real trap the next person could step into, not just a local stub — don't rely on the orchestrator harvest alone: also capture it directly with `arcs knowledge upsert <slug> "<ceiling title>" --kind=gotcha --summary="<the ceiling and its upgrade trigger>" --keywords="<k1,k2>" --source-files="<path,...>" --json`. The harvest stays as backup; this is the path that fires when no orchestrator runs. Upsert is idempotent by title — skip the dedup search.
|
|
51
|
-
|
|
52
|
-
## Boundaries
|
|
53
|
-
|
|
54
|
-
This skill governs WHAT you build (minimal), not correctness or how you talk. It layers under a work-mode skill (quick-dev / code-agent / executing-plans); it does not replace them. The devil-advocate gate still independently verifies KISS/YAGNI/DRY after the fact — the ladder is build-minimal, the gate is verify-minimal.
|