@rryando/arcs 5.1.0 → 5.2.1

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 (219) hide show
  1. package/README.md +30 -17
  2. package/dist/cli/arcs-orchestrate.d.ts +1 -1
  3. package/dist/cli/arcs-orchestrate.d.ts.map +1 -1
  4. package/dist/cli/commands/bundle.js +39 -0
  5. package/dist/cli/commands/bundle.js.map +1 -1
  6. package/dist/cli/commands/proposal-doc.js +76 -58
  7. package/dist/cli/commands/proposal-doc.js.map +1 -1
  8. package/dist/cli/commands/web.js +2 -2
  9. package/dist/cli/commands/web.js.map +1 -1
  10. package/dist/cli/config.d.ts +37 -9
  11. package/dist/cli/config.d.ts.map +1 -1
  12. package/dist/cli/config.js +64 -5
  13. package/dist/cli/config.js.map +1 -1
  14. package/dist/cli/instructions.d.ts +3 -3
  15. package/dist/cli/instructions.d.ts.map +1 -1
  16. package/dist/cli/instructions.js +10 -2
  17. package/dist/cli/instructions.js.map +1 -1
  18. package/dist/cli/orchestrator-shared-blocks.d.ts +1 -1
  19. package/dist/cli/orchestrator-shared-blocks.d.ts.map +1 -1
  20. package/dist/cli/orchestrator-shared-blocks.js +1 -1
  21. package/dist/cli/setup.d.ts.map +1 -1
  22. package/dist/cli/setup.js +281 -47
  23. package/dist/cli/setup.js.map +1 -1
  24. package/dist/utils/json-schemas.d.ts +32 -9
  25. package/dist/utils/json-schemas.d.ts.map +1 -1
  26. package/dist/utils/json-schemas.js +8 -1
  27. package/dist/utils/json-schemas.js.map +1 -1
  28. package/dist/utils/project-resolver.d.ts.map +1 -1
  29. package/dist/utils/project-resolver.js +9 -2
  30. package/dist/utils/project-resolver.js.map +1 -1
  31. package/dist/utils/run-transcript.d.ts +138 -0
  32. package/dist/utils/run-transcript.d.ts.map +1 -0
  33. package/dist/utils/run-transcript.js +146 -0
  34. package/dist/utils/run-transcript.js.map +1 -0
  35. package/dist/utils/storage-utils.d.ts +1 -1
  36. package/dist/utils/storage-utils.d.ts.map +1 -1
  37. package/dist/utils/storage-utils.js +1 -1
  38. package/dist/utils/storage-utils.js.map +1 -1
  39. package/dist/web-client/assets/{GraphCanvas-BYZE4sO9.js → GraphCanvas-BgWF1rB_.js} +1 -1
  40. package/dist/web-client/assets/{MarkdownEditor-BKx6M1cw.js → MarkdownEditor-5buYPQ1d.js} +1 -1
  41. package/dist/web-client/assets/{abnfDiagram-VRR7QNED-D4kt0l2y.js → abnfDiagram-VRR7QNED-AjQ08-zY.js} +1 -1
  42. package/dist/web-client/assets/architecture-TIHT7OUA-a3lTAuFS.js +1 -0
  43. package/dist/web-client/assets/{architectureDiagram-ZJ3FMSHR-bu29SJFS.js → architectureDiagram-ZJ3FMSHR-CtW2pYEp.js} +1 -1
  44. package/dist/web-client/assets/{blockDiagram-677ZJIJ3-hsu7mXKw.js → blockDiagram-677ZJIJ3-DE6HRcpA.js} +1 -1
  45. package/dist/web-client/assets/{c4Diagram-LMCZKHZV-DMllRlT_.js → c4Diagram-LMCZKHZV-Rn6iQdUl.js} +1 -1
  46. package/dist/web-client/assets/channel-Rxk7gzWl.js +1 -0
  47. package/dist/web-client/assets/{chunk-32BRIVSS-BSzwj5eM.js → chunk-32BRIVSS-C4-ay_Qd.js} +1 -1
  48. package/dist/web-client/assets/{chunk-52WLFC77-RDdZn6yY.js → chunk-52WLFC77-Bib0DU0H.js} +1 -1
  49. package/dist/web-client/assets/{chunk-C7G6YPKG-DQr--txT.js → chunk-C7G6YPKG-BLphnESE.js} +1 -1
  50. package/dist/web-client/assets/{chunk-EX3LRPZG-Bb8nc4z4.js → chunk-EX3LRPZG-CzvkrPNM.js} +1 -1
  51. package/dist/web-client/assets/{chunk-FWX5IMBZ-QvBpOcOg.js → chunk-FWX5IMBZ-BFTR_OLz.js} +2 -2
  52. package/dist/web-client/assets/{chunk-HOUHSVGY-B0mX_yjc.js → chunk-HOUHSVGY-CZS3ExUR.js} +1 -1
  53. package/dist/web-client/assets/{chunk-ICXQ74PX-BmJSQqOH.js → chunk-ICXQ74PX-iWFpNZgv.js} +1 -1
  54. package/dist/web-client/assets/{chunk-MOJQB5TN-BrEI4GGn.js → chunk-MOJQB5TN-opEQCwVq.js} +1 -1
  55. package/dist/web-client/assets/{chunk-OGEWGWER-CrqDPOWP.js → chunk-OGEWGWER-NCfmjyhi.js} +1 -1
  56. package/dist/web-client/assets/{chunk-PUDLZKDR-DfPKldpG.js → chunk-PUDLZKDR-D3_A--Z2.js} +1 -1
  57. package/dist/web-client/assets/{chunk-Q4XR5HBZ-ekATI9aV.js → chunk-Q4XR5HBZ-D6s-qZLi.js} +1 -1
  58. package/dist/web-client/assets/{chunk-V7JOEXUC-C5APsP1t.js → chunk-V7JOEXUC-DTqLR-bZ.js} +1 -1
  59. package/dist/web-client/assets/{chunk-VAUOI2AC-BhfSWJZI.js → chunk-VAUOI2AC-Gsd0Itap.js} +1 -1
  60. package/dist/web-client/assets/{chunk-VR4S4FIN-BGa-44J7.js → chunk-VR4S4FIN-Cdo_MeDQ.js} +1 -1
  61. package/dist/web-client/assets/{chunk-WYO6CB5R-By1K0guW.js → chunk-WYO6CB5R-n7FhYrli.js} +1 -1
  62. package/dist/web-client/assets/{chunk-ZGVPDNZ5-Vnzpc76F.js → chunk-ZGVPDNZ5-DU1Jcue0.js} +1 -1
  63. package/dist/web-client/assets/classDiagram-OUVF2IWQ-BG5uYDvC.js +1 -0
  64. package/dist/web-client/assets/classDiagram-v2-EOCWNBFH-BG5uYDvC.js +1 -0
  65. package/dist/web-client/assets/{cynefin-VYW2F7L2-C6MOMOOz.js → cynefin-VYW2F7L2-D-gD9LCO.js} +1 -1
  66. package/dist/web-client/assets/{cynefinDiagram-TSTJHNR4-Cseyu79b.js → cynefinDiagram-TSTJHNR4-BFGkcrNl.js} +1 -1
  67. package/dist/web-client/assets/{dagre-VKFMJZFB-CQJlIuNh.js → dagre-VKFMJZFB-BUaC6fks.js} +1 -1
  68. package/dist/web-client/assets/{diagram-FQU43EPY-DpqDxhq4.js → diagram-FQU43EPY-Ckgu02XC.js} +1 -1
  69. package/dist/web-client/assets/{diagram-G47NLZAW-C11fYYaF.js → diagram-G47NLZAW-BickHhmE.js} +1 -1
  70. package/dist/web-client/assets/{diagram-NH7WQ7WH-BiG-uRAF.js → diagram-NH7WQ7WH-CoqgJpcU.js} +1 -1
  71. package/dist/web-client/assets/{diagram-OA4YK3LP-CIXWWjq-.js → diagram-OA4YK3LP-CTSZWqCe.js} +1 -1
  72. package/dist/web-client/assets/{diagram-WEI45ONY-C3OgIWu9.js → diagram-WEI45ONY-D7xd1naU.js} +1 -1
  73. package/dist/web-client/assets/{ebnfDiagram-CCIWWBDH-BHF_NA3_.js → ebnfDiagram-CCIWWBDH-FESKYpKQ.js} +1 -1
  74. package/dist/web-client/assets/{erDiagram-Q63AITRT-CUOJCrLy.js → erDiagram-Q63AITRT-C-879ftU.js} +1 -1
  75. package/dist/web-client/assets/eventmodeling-45OFAUF4-C3kRZCei.js +1 -0
  76. package/dist/web-client/assets/flowDiagram-23GEKE2U-QKWFycdH.js +1 -0
  77. package/dist/web-client/assets/{ganttDiagram-NO4QXBWP-D_4BMJ-g.js → ganttDiagram-NO4QXBWP-mIX5nPpv.js} +1 -1
  78. package/dist/web-client/assets/{gitGraph-TEB2WS4Q-CBuaZBId.js → gitGraph-TEB2WS4Q-DlEDJ1IK.js} +1 -1
  79. package/dist/web-client/assets/{gitGraphDiagram-IHSO6WYX-BbztsGuO.js → gitGraphDiagram-IHSO6WYX-D2fXD4AO.js} +1 -1
  80. package/dist/web-client/assets/index-BsYR-C8u.js +61 -0
  81. package/dist/web-client/assets/index-Cc5DCTOr.css +2 -0
  82. package/dist/web-client/assets/{info-DKCQHKI2-Bzi0Xjro.js → info-DKCQHKI2-jinbCROt.js} +1 -1
  83. package/dist/web-client/assets/{infoDiagram-FWYZ7A6U-BkeEKcr0.js → infoDiagram-FWYZ7A6U-CM-A4TL8.js} +1 -1
  84. package/dist/web-client/assets/{ishikawaDiagram-FXEZZL3T-CVusWu0p.js → ishikawaDiagram-FXEZZL3T-BdFpHwp4.js} +1 -1
  85. package/dist/web-client/assets/{journeyDiagram-5HDEW3XC-BUxu71zw.js → journeyDiagram-5HDEW3XC-BwDWz25z.js} +1 -1
  86. package/dist/web-client/assets/{kanban-definition-HUTT4EX6-BE8Hv4Kd.js → kanban-definition-HUTT4EX6-_2QXjSvx.js} +1 -1
  87. package/dist/web-client/assets/{line-CiAoINJS.js → line-HCziev87.js} +1 -1
  88. package/dist/web-client/assets/{mermaid-parser.core-BW47khiS.js → mermaid-parser.core-C4139mkz.js} +3 -3
  89. package/dist/web-client/assets/{mermaid.core-DP--Jl9R.js → mermaid.core-ocHwkZiF.js} +3 -3
  90. package/dist/web-client/assets/{mindmap-definition-LN4V7U3C-CvWJUqdq.js → mindmap-definition-LN4V7U3C-DHyCmflp.js} +1 -1
  91. package/dist/web-client/assets/{packet-7NZHBO7P-XtzX9SaQ.js → packet-7NZHBO7P-Bk0w_irl.js} +1 -1
  92. package/dist/web-client/assets/{pegDiagram-2B236MQR-XNo0K1ct.js → pegDiagram-2B236MQR-D_GrmL93.js} +1 -1
  93. package/dist/web-client/assets/{pie-RZYD4A2V-B1eUd9yt.js → pie-RZYD4A2V-B6VIAbyj.js} +1 -1
  94. package/dist/web-client/assets/{pieDiagram-ENE6RG2P-CRSb5z-4.js → pieDiagram-ENE6RG2P-CiR2Y8y2.js} +1 -1
  95. package/dist/web-client/assets/{quadrantDiagram-ABIIQ3AL-DziMaQxE.js → quadrantDiagram-ABIIQ3AL-CLlicKmV.js} +1 -1
  96. package/dist/web-client/assets/{radar-I7S5WNFK-BpRqZH2g.js → radar-I7S5WNFK-B53XVRSZ.js} +1 -1
  97. package/dist/web-client/assets/{railroad-3IZDKUUU-FDIHW04k.js → railroad-3IZDKUUU-Dn8TN2M-.js} +1 -1
  98. package/dist/web-client/assets/railroad-abnf-AHOZXSZD-UrOKy6yx.js +1 -0
  99. package/dist/web-client/assets/railroad-ebnf-EBAXGLYW-Bx73sfMZ.js +1 -0
  100. package/dist/web-client/assets/railroad-peg-LSFZ7HO6-C4QEje-y.js +1 -0
  101. package/dist/web-client/assets/{railroadDiagram-RFXS5EU6-Cs7EVBaz.js → railroadDiagram-RFXS5EU6-C6kZwOio.js} +1 -1
  102. package/dist/web-client/assets/{requirementDiagram-TGXJPOKE-B9_Lj1ga.js → requirementDiagram-TGXJPOKE-D2b1MeP8.js} +1 -1
  103. package/dist/web-client/assets/{sankeyDiagram-HTMAVEWB-DuTJTiy0.js → sankeyDiagram-HTMAVEWB-pS_Ufq1E.js} +1 -1
  104. package/dist/web-client/assets/{sequenceDiagram-DBY2YBRQ-vOCU5UoE.js → sequenceDiagram-DBY2YBRQ-BrsKXNzu.js} +1 -1
  105. package/dist/web-client/assets/{stateDiagram-2N3HPSRC-rxAnfzWn.js → stateDiagram-2N3HPSRC-BuQKu3i0.js} +1 -1
  106. package/dist/web-client/assets/stateDiagram-v2-6OUMAXLB-BhqgaxDu.js +1 -0
  107. package/dist/web-client/assets/{swimlanes-5IMT3BWC-gdVZUnPe.js → swimlanes-5IMT3BWC-CzoImfTA.js} +1 -1
  108. package/dist/web-client/assets/swimlanesDiagram-G3AALYLV-CHOEI9hI.js +8 -0
  109. package/dist/web-client/assets/{timeline-definition-FHXFAJF6-Do68JyGy.js → timeline-definition-FHXFAJF6-DvezW7Fr.js} +1 -1
  110. package/dist/web-client/assets/{treeView-QDETBFTQ-CdZkmg80.js → treeView-QDETBFTQ-xu58R4kS.js} +1 -1
  111. package/dist/web-client/assets/{treemap-6X3UGDF4-ub54fmpW.js → treemap-6X3UGDF4-DMYBAOW1.js} +1 -1
  112. package/dist/web-client/assets/{vennDiagram-L72KCM5P-D-r8NBEp.js → vennDiagram-L72KCM5P-l1CbC7Ig.js} +1 -1
  113. package/dist/web-client/assets/{wardley-OPB4EBWU-CTleH1-J.js → wardley-OPB4EBWU-G3zmnnM0.js} +1 -1
  114. package/dist/web-client/assets/{wardleyDiagram-EHGQE667-BU8Kw39F.js → wardleyDiagram-EHGQE667-Dl2I79Vx.js} +1 -1
  115. package/dist/web-client/assets/{xychartDiagram-FW5EYKEG-CfNnag6i.js → xychartDiagram-FW5EYKEG-BWfge21N.js} +1 -1
  116. package/dist/web-client/index.html +2 -2
  117. package/dist/web-server/app.d.ts.map +1 -1
  118. package/dist/web-server/app.js +13 -7
  119. package/dist/web-server/app.js.map +1 -1
  120. package/dist/web-server/ask-prompt.d.ts +70 -0
  121. package/dist/web-server/ask-prompt.d.ts.map +1 -0
  122. package/dist/web-server/ask-prompt.js +238 -0
  123. package/dist/web-server/ask-prompt.js.map +1 -0
  124. package/dist/web-server/index.d.ts.map +1 -1
  125. package/dist/web-server/index.js +56 -3
  126. package/dist/web-server/index.js.map +1 -1
  127. package/dist/web-server/respond.d.ts.map +1 -1
  128. package/dist/web-server/respond.js +6 -1
  129. package/dist/web-server/respond.js.map +1 -1
  130. package/dist/web-server/routes/ask.d.ts +29 -0
  131. package/dist/web-server/routes/ask.d.ts.map +1 -0
  132. package/dist/web-server/routes/ask.js +698 -0
  133. package/dist/web-server/routes/ask.js.map +1 -0
  134. package/dist/web-server/routes/changes.d.ts +35 -0
  135. package/dist/web-server/routes/changes.d.ts.map +1 -0
  136. package/dist/web-server/routes/changes.js +93 -0
  137. package/dist/web-server/routes/changes.js.map +1 -0
  138. package/dist/web-server/routes/projects.d.ts.map +1 -1
  139. package/dist/web-server/routes/projects.js +10 -2
  140. package/dist/web-server/routes/projects.js.map +1 -1
  141. package/dist/web-server/routes/proposal-docs.d.ts +18 -0
  142. package/dist/web-server/routes/proposal-docs.d.ts.map +1 -0
  143. package/dist/web-server/routes/proposal-docs.js +208 -0
  144. package/dist/web-server/routes/proposal-docs.js.map +1 -0
  145. package/dist/web-server/routes/runners.d.ts +15 -0
  146. package/dist/web-server/routes/runners.d.ts.map +1 -0
  147. package/dist/web-server/routes/runners.js +66 -0
  148. package/dist/web-server/routes/runners.js.map +1 -0
  149. package/dist/web-server/routes/workspace.d.ts +2 -2
  150. package/dist/web-server/routes/workspace.js +4 -4
  151. package/dist/web-server/run-diff.d.ts +188 -0
  152. package/dist/web-server/run-diff.d.ts.map +1 -0
  153. package/dist/web-server/run-diff.js +739 -0
  154. package/dist/web-server/run-diff.js.map +1 -0
  155. package/dist/web-server/run-driver.d.ts +102 -2
  156. package/dist/web-server/run-driver.d.ts.map +1 -1
  157. package/dist/web-server/run-driver.js +495 -1
  158. package/dist/web-server/run-driver.js.map +1 -1
  159. package/dist/web-server/run-event-log.d.ts +13 -6
  160. package/dist/web-server/run-event-log.d.ts.map +1 -1
  161. package/dist/web-server/run-event-log.js +70 -25
  162. package/dist/web-server/run-event-log.js.map +1 -1
  163. package/dist/web-server/run-store.d.ts +201 -0
  164. package/dist/web-server/run-store.d.ts.map +1 -0
  165. package/dist/web-server/run-store.js +304 -0
  166. package/dist/web-server/run-store.js.map +1 -0
  167. package/dist/web-server/watcher.d.ts.map +1 -1
  168. package/dist/web-server/watcher.js +4 -0
  169. package/dist/web-server/watcher.js.map +1 -1
  170. package/opencode/arcs/manifest.json +8 -8
  171. package/opencode/arcs/prompts/arcs-orchestrate-caveman.txt +1 -1
  172. package/opencode/arcs/prompts/arcs-orchestrate.txt +1 -1
  173. package/opencode/arcs/skills/writing-proposals/SKILL.md +6 -3
  174. package/package.json +1 -1
  175. package/scripts/deploy-claudecode-bundle.mjs +2 -2
  176. package/scripts/deploy-opencode-bundle.mjs +1 -1
  177. package/scripts/deploy-pi-bundle.mjs +468 -0
  178. package/scripts/lint-bundle.mjs +1 -1
  179. package/dist/shared/session-vocabulary.d.ts +0 -88
  180. package/dist/shared/session-vocabulary.d.ts.map +0 -1
  181. package/dist/shared/session-vocabulary.js +0 -114
  182. package/dist/shared/session-vocabulary.js.map +0 -1
  183. package/dist/utils/claude-transcript.d.ts +0 -206
  184. package/dist/utils/claude-transcript.d.ts.map +0 -1
  185. package/dist/utils/claude-transcript.js +0 -384
  186. package/dist/utils/claude-transcript.js.map +0 -1
  187. package/dist/utils/session-store.d.ts +0 -313
  188. package/dist/utils/session-store.d.ts.map +0 -1
  189. package/dist/utils/session-store.js +0 -513
  190. package/dist/utils/session-store.js.map +0 -1
  191. package/dist/web-client/assets/architecture-TIHT7OUA-CIdGE6VO.js +0 -1
  192. package/dist/web-client/assets/channel-CBg-s-ZD.js +0 -1
  193. package/dist/web-client/assets/classDiagram-OUVF2IWQ-ciwDjhUR.js +0 -1
  194. package/dist/web-client/assets/classDiagram-v2-EOCWNBFH-ciwDjhUR.js +0 -1
  195. package/dist/web-client/assets/eventmodeling-45OFAUF4-DxfboL1J.js +0 -1
  196. package/dist/web-client/assets/flowDiagram-23GEKE2U-C3NzpTtI.js +0 -1
  197. package/dist/web-client/assets/index-B1KVIr80.css +0 -2
  198. package/dist/web-client/assets/index-BWd2fBNL.js +0 -60
  199. package/dist/web-client/assets/railroad-abnf-AHOZXSZD-BKj6JAhH.js +0 -1
  200. package/dist/web-client/assets/railroad-ebnf-EBAXGLYW-ChDM1OBv.js +0 -1
  201. package/dist/web-client/assets/railroad-peg-LSFZ7HO6-DvwA2e0i.js +0 -1
  202. package/dist/web-client/assets/stateDiagram-v2-6OUMAXLB-B3EvQPEe.js +0 -1
  203. package/dist/web-client/assets/swimlanesDiagram-G3AALYLV-WcOXuCPg.js +0 -8
  204. package/dist/web-server/permission-policy.d.ts +0 -46
  205. package/dist/web-server/permission-policy.d.ts.map +0 -1
  206. package/dist/web-server/permission-policy.js +0 -96
  207. package/dist/web-server/permission-policy.js.map +0 -1
  208. package/dist/web-server/prompt-assembly.d.ts +0 -454
  209. package/dist/web-server/prompt-assembly.d.ts.map +0 -1
  210. package/dist/web-server/prompt-assembly.js +0 -1121
  211. package/dist/web-server/prompt-assembly.js.map +0 -1
  212. package/dist/web-server/routes/sessions.d.ts +0 -19
  213. package/dist/web-server/routes/sessions.d.ts.map +0 -1
  214. package/dist/web-server/routes/sessions.js +0 -1296
  215. package/dist/web-server/routes/sessions.js.map +0 -1
  216. package/dist/web-server/session-reconciler.d.ts +0 -162
  217. package/dist/web-server/session-reconciler.d.ts.map +0 -1
  218. package/dist/web-server/session-reconciler.js +0 -363
  219. package/dist/web-server/session-reconciler.js.map +0 -1
package/dist/cli/setup.js CHANGED
@@ -8,7 +8,7 @@ import { PACKAGE_ROOT } from "../utils/paths.js";
8
8
  import { detectRtk } from "../utils/rtk.js";
9
9
  import { getActiveAgents, getAgentsByTier } from "./agent-registry.js";
10
10
  import { detectArcsBundleInstall, installArcsBundle } from "./bundle-installer.js";
11
- import { diagnoseClaudeCodeBundle, diagnoseOpenCodeConfig, extractModelPreFills, getAvailableModels, getClaudeCodeModels, readClaudeCodeCurrentModel, readClaudeCodeCurrentPrimaryAgent, writeConfig, } from "./config.js";
11
+ import { DEFAULT_MODEL_VARIANT, diagnoseClaudeCodeBundle, diagnoseOpenCodeConfig, diagnosePiBundle, extractModelPreFills, getAvailableModels, getClaudeCodeModels, readClaudeCodeCurrentModel, readClaudeCodeCurrentPrimaryAgent, readConfigOrDefault, writeConfig, } from "./config.js";
12
12
  import { applyAgentModelConfig, displayPath, opencodeHasAgent, readOpencodePrimaryAgentId, writeOpencodeAgent, } from "./instructions.js";
13
13
  const HOST_AGENT_TIERS = [
14
14
  { name: "plan", tier: "heavy" },
@@ -98,6 +98,7 @@ export async function runSetup(mode) {
98
98
  // ── Environment detection gates ─────────────────────────────────────────────
99
99
  let hasOpenCode = false;
100
100
  let hasClaudeCode = false;
101
+ let hasPi = false;
101
102
  try {
102
103
  execSync("which opencode", { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"] });
103
104
  hasOpenCode = true;
@@ -112,8 +113,15 @@ export async function runSetup(mode) {
112
113
  catch {
113
114
  // ignore
114
115
  }
115
- if (!hasOpenCode && !hasClaudeCode) {
116
- p.cancel("Neither OpenCode nor Claude Code is installed or on PATH. ARCS requires at least one of them.");
116
+ try {
117
+ execSync("which pi", { encoding: "utf-8", stdio: ["pipe", "pipe", "pipe"] });
118
+ hasPi = true;
119
+ }
120
+ catch {
121
+ // ignore
122
+ }
123
+ if (!hasOpenCode && !hasClaudeCode && !hasPi) {
124
+ p.cancel("Neither OpenCode, Claude Code, nor pi is installed or on PATH. ARCS requires at least one of them.");
117
125
  process.exit(1);
118
126
  }
119
127
  const isInit = mode === "init";
@@ -122,13 +130,23 @@ export async function runSetup(mode) {
122
130
  const versionSuffix = version ? ` v${version} ` : " ";
123
131
  p.intro(color.bgCyan(color.black(isInit ? ` ARCS setup ${versionSuffix}` : ` ARCS config ${versionSuffix}`)));
124
132
  let selectedPlatforms = [];
125
- if (hasOpenCode && hasClaudeCode) {
133
+ const PLATFORM_LABELS = {
134
+ opencode: "OpenCode",
135
+ claudecode: "Claude Code",
136
+ pi: "pi",
137
+ };
138
+ const installedPlatforms = [
139
+ hasOpenCode && "opencode",
140
+ hasClaudeCode && "claudecode",
141
+ hasPi && "pi",
142
+ ].filter(Boolean);
143
+ if (installedPlatforms.length > 1) {
126
144
  const selected = await p.multiselect({
127
145
  message: "Which IDE platforms would you like to configure ARCS with?",
128
- options: [
129
- { value: "opencode", label: "OpenCode" },
130
- { value: "claudecode", label: "Claude Code" },
131
- ],
146
+ options: installedPlatforms.map((value) => ({
147
+ value,
148
+ label: PLATFORM_LABELS[value],
149
+ })),
132
150
  });
133
151
  if (p.isCancel(selected)) {
134
152
  p.cancel("Setup cancelled.");
@@ -136,44 +154,39 @@ export async function runSetup(mode) {
136
154
  }
137
155
  selectedPlatforms = selected;
138
156
  }
139
- else if (hasOpenCode) {
140
- const confirmOpenCode = await p.confirm({
141
- message: "Configure ARCS with OpenCode?",
157
+ else if (installedPlatforms.length === 1) {
158
+ const only = installedPlatforms[0];
159
+ const confirmOpen = await p.confirm({
160
+ message: `Configure ARCS with ${PLATFORM_LABELS[only]}?`,
142
161
  initialValue: true,
143
162
  });
144
- if (p.isCancel(confirmOpenCode)) {
163
+ if (p.isCancel(confirmOpen)) {
145
164
  p.cancel("Setup cancelled.");
146
165
  process.exit(0);
147
166
  }
148
- if (confirmOpenCode) {
149
- selectedPlatforms.push("opencode");
150
- }
151
- }
152
- else if (hasClaudeCode) {
153
- const confirmClaude = await p.confirm({
154
- message: "Configure ARCS with Claude Code?",
155
- initialValue: true,
156
- });
157
- if (p.isCancel(confirmClaude)) {
158
- p.cancel("Setup cancelled.");
159
- process.exit(0);
160
- }
161
- if (confirmClaude) {
162
- selectedPlatforms.push("claudecode");
167
+ if (confirmOpen) {
168
+ selectedPlatforms.push(only);
163
169
  }
164
170
  }
165
171
  const selectedOpenCode = selectedPlatforms.includes("opencode");
166
172
  const selectedClaudeCode = selectedPlatforms.includes("claudecode");
173
+ const selectedPi = selectedPlatforms.includes("pi");
167
174
  let opencodeAgentActive = false;
168
175
  let claudecodeDeployed = false;
176
+ let piDeployed = false;
177
+ let opencodeModelVariants;
178
+ const arcsConfig = readConfigOrDefault();
169
179
  // ── OpenCode configuration and installation flow ──────────────────────────
170
180
  if (selectedOpenCode) {
171
181
  // ── Model configuration ───────────────────────────────────────────────────
172
182
  const configDiagnosis = await diagnoseOpenCodeConfig();
173
183
  const openCodeConfig = configDiagnosis.status === "ok" ? configDiagnosis.config : null;
174
184
  const preFills = extractModelPreFills(openCodeConfig);
185
+ if (arcsConfig.opencodeModelVariants) {
186
+ preFills.variants = arcsConfig.opencodeModelVariants;
187
+ }
175
188
  if (configDiagnosis.status === "ok") {
176
- p.note(`Found models:\n model: ${preFills.heavy || "(not set)"}\n small_model: ${preFills.light || "(not set)"}`, "OpenCode Config");
189
+ p.note(`Found models:\n model: ${preFills.heavy || "(not set)"}\n small_model: ${preFills.light || "(not set)"}\n variants: ${formatVariants(preFills)}`, "OpenCode Config");
177
190
  }
178
191
  else if (configDiagnosis.status === "corrupt") {
179
192
  p.note(`Config exists at ${configDiagnosis.path} but failed to parse:\n ${configDiagnosis.error}\n\nFix the JSON syntax error and re-run, or enter model identifiers manually below to continue.`, "OpenCode Config — INVALID JSON");
@@ -183,14 +196,14 @@ export async function runSetup(mode) {
183
196
  }
184
197
  // ── Reuse fast path ───────────────────────────────────────────────────────
185
198
  // Only offered when OpenCode is already fully configured: the config parses,
186
- // the ARCS agents are registered, and every tier resolved to a real model
187
- // identifier. Any missing leg falls through to the prompt sequence below.
199
+ // the ARCS agents are registered, and the required heavy/standard/light tiers
200
+ // resolved to real model identifiers.
188
201
  const reusableModelConfig = configDiagnosis.status === "ok" &&
189
202
  opencodeHasAgent() &&
190
203
  preFills.heavy &&
191
204
  preFills.standard &&
192
205
  preFills.light
193
- ? { heavy: preFills.heavy, standard: preFills.standard, light: preFills.light }
206
+ ? { ...preFills }
194
207
  : null;
195
208
  // T004 will wire modelConfig into agent registration calls below.
196
209
  let modelConfig = null;
@@ -199,7 +212,8 @@ export async function runSetup(mode) {
199
212
  message: "Reuse the existing OpenCode model config?\n" +
200
213
  ` heavy: ${reusableModelConfig.heavy}\n` +
201
214
  ` standard: ${reusableModelConfig.standard}\n` +
202
- ` light: ${reusableModelConfig.light}`,
215
+ ` light: ${reusableModelConfig.light}\n` +
216
+ ` variants: ${formatVariants(reusableModelConfig)}`,
203
217
  initialValue: true,
204
218
  });
205
219
  // Deliberate exception to this file's convention: every other p.isCancel()
@@ -232,10 +246,20 @@ export async function runSetup(mode) {
232
246
  process.exit(0);
233
247
  }
234
248
  p.note(`Used by: ${tierAgentNames("light")}`, "Light tier agents");
249
+ const variants = {
250
+ heavy: await selectVariant("Heavy model variant", preFills.variants?.heavy),
251
+ standard: await selectVariant("Standard model variant", preFills.variants?.standard),
252
+ light: await selectVariant("Light model variant", preFills.variants?.light),
253
+ };
254
+ if (Object.values(variants).some((variant) => p.isCancel(variant))) {
255
+ p.cancel("Setup cancelled.");
256
+ process.exit(0);
257
+ }
235
258
  modelConfig = {
236
259
  heavy: heavyModel,
237
260
  standard: standardModel,
238
261
  light: lightModel,
262
+ variants: variants,
239
263
  };
240
264
  // Step 3.5e — Optional per-agent customization
241
265
  const customizeAgents = await p.confirm({
@@ -256,7 +280,7 @@ export async function runSetup(mode) {
256
280
  p.note("Select a model for each agent, or keep the tier default.", "Per-Agent Customization");
257
281
  const perAgent = {};
258
282
  for (const agent of agentTiers) {
259
- const tierModel = modelConfig[agent.tier];
283
+ const tierModel = modelConfig[agent.tier] ?? modelConfig.heavy;
260
284
  const override = await selectModelForAgent(`${agent.name} [${agent.tier}: ${tierModel}]`, availableModels, tierModel);
261
285
  if (p.isCancel(override)) {
262
286
  p.cancel("Setup cancelled.");
@@ -344,6 +368,11 @@ export async function runSetup(mode) {
344
368
  // with the user's configured tier values.
345
369
  applyAgentModelConfig(modelConfig);
346
370
  }
371
+ opencodeModelVariants = modelConfig?.variants ?? {
372
+ heavy: DEFAULT_MODEL_VARIANT,
373
+ standard: DEFAULT_MODEL_VARIANT,
374
+ light: DEFAULT_MODEL_VARIANT,
375
+ };
347
376
  }
348
377
  // ── Claude Code support ───────────────────────────────────────────────────
349
378
  if (selectedClaudeCode) {
@@ -358,9 +387,9 @@ export async function runSetup(mode) {
358
387
  if (shouldDeployClaude) {
359
388
  // ── Reuse fast path ───────────────────────────────────────────────────
360
389
  // Only offered when a previous deploy left a readable bundle manifest that
361
- // recorded all three tiers. A missing/corrupt manifest — or a valid one
362
- // whose tierModels is absent or incomplete — falls through to the tier
363
- // prompt sequence below.
390
+ // recorded the required three tiers. A missing/corrupt manifest — or a valid one
391
+ // whose required tierModels are absent or incomplete — falls through to the
392
+ // tier prompt sequence below.
364
393
  const claudeBundleDiagnosis = await diagnoseClaudeCodeBundle();
365
394
  const reusableClaudeModels = claudeBundleDiagnosis.status === "ok" && claudeBundleDiagnosis.tierModels
366
395
  ? claudeBundleDiagnosis.tierModels
@@ -368,10 +397,12 @@ export async function runSetup(mode) {
368
397
  let claudeModelConfig = null;
369
398
  if (reusableClaudeModels) {
370
399
  const reuseExistingClaude = await p.confirm({
371
- message: "Reuse the existing Claude Code model config?\n" +
372
- ` heavy: ${reusableClaudeModels.heavy}\n` +
373
- ` standard: ${reusableClaudeModels.standard}\n` +
400
+ message: [
401
+ "Reuse the existing Claude Code model config?",
402
+ ` heavy: ${reusableClaudeModels.heavy}`,
403
+ ` standard: ${reusableClaudeModels.standard}`,
374
404
  ` light: ${reusableClaudeModels.light}`,
405
+ ].join("\n"),
375
406
  initialValue: true,
376
407
  });
377
408
  // Deliberate exception to this file's convention: every other p.isCancel()
@@ -470,6 +501,132 @@ export async function runSetup(mode) {
470
501
  p.note(`${color.yellow("⊘")} Skipped Claude Code deployment`, "Claude Code Agent");
471
502
  }
472
503
  }
504
+ // ── pi support ────────────────────────────────────────────────────────────
505
+ if (selectedPi) {
506
+ const shouldDeployPi = await p.confirm({
507
+ message: "Deploy ARCS sub-agents to pi?",
508
+ initialValue: true,
509
+ });
510
+ if (p.isCancel(shouldDeployPi)) {
511
+ p.cancel("Setup cancelled.");
512
+ process.exit(0);
513
+ }
514
+ if (shouldDeployPi) {
515
+ // ── Reuse fast path ───────────────────────────────────────────────────
516
+ // Only offered when a previous deploy left a readable bundle manifest
517
+ // that recorded the required three tiers. Falls through to the tier
518
+ // prompt sequence below otherwise — same shape as the Claude Code flow.
519
+ const piBundleDiagnosis = await diagnosePiBundle();
520
+ const reusablePiModels = piBundleDiagnosis.status === "ok" && piBundleDiagnosis.tierModels
521
+ ? piBundleDiagnosis.tierModels
522
+ : null;
523
+ let piModelConfig = null;
524
+ if (reusablePiModels) {
525
+ const reuseExistingPi = await p.confirm({
526
+ message: [
527
+ "Reuse the existing pi model config?",
528
+ ` heavy: ${reusablePiModels.heavy}`,
529
+ ` standard: ${reusablePiModels.standard}`,
530
+ ` light: ${reusablePiModels.light}`,
531
+ ].join("\n"),
532
+ initialValue: true,
533
+ });
534
+ // Deliberate exception to this file's convention: cancelling means
535
+ // "let me pick models again", not "abort the wizard".
536
+ if (!p.isCancel(reuseExistingPi) && reuseExistingPi) {
537
+ piModelConfig = { ...reusablePiModels };
538
+ }
539
+ }
540
+ if (!piModelConfig) {
541
+ // ── Model selection for pi ─────────────────────────────────────────
542
+ // pi has no curated model list: sub-agents inherit the parent pi
543
+ // session's model by default ("inherit" — the extension default) or
544
+ // get an explicit provider/model id. Falls back to the pi session's
545
+ // currently configured model when present.
546
+ p.note([
547
+ "ARCS agents are grouped into three tiers.",
548
+ ` Heavy — reasoning & synthesis (${registryTierAgentNames("heavy")})`,
549
+ ` Standard — orchestration (${registryTierAgentNames("standard")})`,
550
+ ` Light — read-only exploration (${registryTierAgentNames("light")})`,
551
+ "",
552
+ '"inherit" (default) delegates each agent model to the parent pi',
553
+ "session. A custom id must be provider/modelId (e.g. opencode/deepseek-v4).",
554
+ ].join("\n"), "pi Model Tiers");
555
+ const piHeavyModel = await selectPiTierModel("Heavy model (reasoning, synthesis)");
556
+ if (p.isCancel(piHeavyModel)) {
557
+ p.cancel("Setup cancelled.");
558
+ process.exit(0);
559
+ }
560
+ const piStandardModel = await selectPiTierModel("Standard model (orchestration)");
561
+ if (p.isCancel(piStandardModel)) {
562
+ p.cancel("Setup cancelled.");
563
+ process.exit(0);
564
+ }
565
+ const piLightModel = await selectPiTierModel("Light/fast model (read-only, exploration)");
566
+ if (p.isCancel(piLightModel)) {
567
+ p.cancel("Setup cancelled.");
568
+ process.exit(0);
569
+ }
570
+ piModelConfig = {
571
+ heavy: piHeavyModel,
572
+ standard: piStandardModel,
573
+ light: piLightModel,
574
+ };
575
+ }
576
+ const sPi = p.spinner();
577
+ sPi.start("Deploying ARCS sub-agents to pi…");
578
+ try {
579
+ const repoRoot = resolve(import.meta.dirname, "../..");
580
+ const scriptPath = resolve(repoRoot, "scripts/deploy-pi-bundle.mjs");
581
+ const proc = spawnSync("node", [scriptPath], {
582
+ env: {
583
+ ...process.env,
584
+ DEPLOY_DRY_RUN: "false",
585
+ DEPLOY_MODEL_HEAVY: piModelConfig.heavy,
586
+ DEPLOY_MODEL_STANDARD: piModelConfig.standard,
587
+ DEPLOY_MODEL_LIGHT: piModelConfig.light,
588
+ },
589
+ encoding: "utf-8",
590
+ });
591
+ if (proc.status === 0) {
592
+ piDeployed = true;
593
+ sPi.stop("pi deployment complete.");
594
+ if (proc.stdout) {
595
+ try {
596
+ const res = JSON.parse(proc.stdout);
597
+ const summaryLines = [
598
+ `${color.green("✔")} Source: ${res.source}`,
599
+ `${color.green("✔")} Destination: ${res.destination}`,
600
+ `${color.green("✔")} Heavy: ${color.cyan(res.modelConfig?.heavy || "inherit")} | Standard: ${color.cyan(res.modelConfig?.standard || "inherit")} | Light: ${color.cyan(res.modelConfig?.light || "inherit")}`,
601
+ `${color.green("✔")} Files added: ${res.filesAdded?.length || 0}`,
602
+ `${color.green("✔")} Files changed: ${res.filesChanged?.length || 0}`,
603
+ `${color.green("✔")} Files removed: ${res.filesRemoved?.length || 0}`,
604
+ `${color.dim("Requires @tintinweb/pi-subagents extension in pi.")}`,
605
+ ];
606
+ p.note(summaryLines.join("\n"), "pi Deployment Summary");
607
+ }
608
+ catch {
609
+ p.note("Successfully deployed but summary output was unparseable.", "pi Deployment");
610
+ }
611
+ }
612
+ else {
613
+ p.note("Successfully deployed to pi.", "pi Deployment");
614
+ }
615
+ }
616
+ else {
617
+ sPi.stop("pi deployment failed.");
618
+ p.note(proc.stderr || "deploy-pi-bundle.mjs failed with non-zero exit code.", "Error");
619
+ }
620
+ }
621
+ catch (err) {
622
+ sPi.stop("pi deployment failed.");
623
+ p.note(err instanceof Error ? err.message : String(err), "Error");
624
+ }
625
+ }
626
+ else {
627
+ p.note(`${color.yellow("⊘")} Skipped pi deployment`, "pi Agent");
628
+ }
629
+ }
473
630
  // ── Build config ──────────────────────────────────────────────────────────
474
631
  const ides = [];
475
632
  if (selectedOpenCode && opencodeAgentActive) {
@@ -478,9 +635,14 @@ export async function runSetup(mode) {
478
635
  if (claudecodeDeployed) {
479
636
  ides.push("claudecode");
480
637
  }
638
+ if (piDeployed) {
639
+ ides.push("pi");
640
+ }
481
641
  const config = {
642
+ ...arcsConfig,
482
643
  version: "1",
483
644
  ides,
645
+ ...(opencodeModelVariants ? { opencodeModelVariants } : {}),
484
646
  };
485
647
  // ── Write ARCS config ───────────────────────────────────────────────────
486
648
  const sWrite = p.spinner();
@@ -488,18 +650,30 @@ export async function runSetup(mode) {
488
650
  writeConfig(config);
489
651
  sWrite.stop("Configuration saved.");
490
652
  // ── Optional codegraph installation ─────────────────────────────────────────
491
- // Derive codegraph install targets from the platforms the user selected.
653
+ // Derive codegraph install targets from the selected hosts.
492
654
  // platform "claudecode" maps to codegraph's "claude" target. Never use
493
655
  // "auto" — that would wire unselected hosts (Cursor/Codex/Hermes).
494
- const codegraphTargets = [selectedOpenCode && "opencode", selectedClaudeCode && "claude"].filter(Boolean).join(",") ||
495
- "opencode";
496
- await promptCodegraphInstall(codegraphTargets);
656
+ // codegraph has no pi target, so a pi-only selection skips it entirely
657
+ // (the old "|| opencode" fallback would have wired an unselected host).
658
+ const codegraphTargets = [selectedOpenCode && "opencode", selectedClaudeCode && "claude"]
659
+ .filter(Boolean)
660
+ .join(",");
661
+ if (codegraphTargets) {
662
+ await promptCodegraphInstall(codegraphTargets);
663
+ }
664
+ else {
665
+ p.log.info(color.dim("Skipped codegraph wiring — pi has no codegraph target."));
666
+ }
497
667
  // ── Optional RTK installation ───────────────────────────────────────────────
498
668
  // `rtk init -g` always covers Claude Code; `--opencode` additionally installs
499
- // the OpenCode plugin — so only the opencode selection changes the wiring.
500
- // The Claude Code selection is passed along so the prompt can ask before
501
- // touching an unselected host.
502
- await promptRtkInstall(selectedOpenCode, selectedClaudeCode);
669
+ // the OpenCode plugin — so only opencode/claude selections change the wiring.
670
+ // pi-only selections skip RTK entirely: rtk has no pi target.
671
+ if (selectedOpenCode || selectedClaudeCode) {
672
+ await promptRtkInstall(selectedOpenCode, selectedClaudeCode);
673
+ }
674
+ else {
675
+ p.log.info(color.dim("Skipped RTK wiring — pi has no RTK target."));
676
+ }
503
677
  p.outro(color.green("Done!") +
504
678
  " You can re-run this setup at any time with " +
505
679
  color.cyan("npm run init"));
@@ -509,6 +683,66 @@ export async function runSetup(mode) {
509
683
  // ---------------------------------------------------------------------------
510
684
  const CUSTOM_MODEL_SENTINEL = "__custom__";
511
685
  const KEEP_DEFAULT_SENTINEL = "__keep_default__";
686
+ const VARIANT_OPTIONS = ["none", "minimal", "low", "medium", "high", "xhigh", "max"];
687
+ function formatVariants(config) {
688
+ const variants = config.variants;
689
+ return `heavy=${variants?.heavy || DEFAULT_MODEL_VARIANT}, standard=${variants?.standard || DEFAULT_MODEL_VARIANT}, light=${variants?.light || DEFAULT_MODEL_VARIANT}`;
690
+ }
691
+ async function selectVariant(message, currentValue = DEFAULT_MODEL_VARIANT) {
692
+ const selected = await p.select({
693
+ message,
694
+ options: [
695
+ ...VARIANT_OPTIONS.map((value) => ({ value, label: value })),
696
+ { value: CUSTOM_MODEL_SENTINEL, label: "Enter custom variant" },
697
+ ],
698
+ initialValue: currentValue || DEFAULT_MODEL_VARIANT,
699
+ });
700
+ if (p.isCancel(selected))
701
+ return selected;
702
+ if (selected === CUSTOM_MODEL_SENTINEL) {
703
+ const custom = await p.text({ message: `${message} (custom)`, initialValue: currentValue });
704
+ if (p.isCancel(custom))
705
+ return custom;
706
+ return custom.trim() || DEFAULT_MODEL_VARIANT;
707
+ }
708
+ return VARIANT_OPTIONS.includes(selected)
709
+ ? selected
710
+ : DEFAULT_MODEL_VARIANT;
711
+ }
712
+ /**
713
+ * pi tier model selection: "inherit" (defer to the parent pi session's
714
+ * model — the extension default, and what the deploy script omits) or an
715
+ * explicit provider/modelId entered as text. No curated model list: pi
716
+ * serves any configured provider. Returns a symbol on cancel.
717
+ */
718
+ async function selectPiTierModel(message) {
719
+ const selected = await p.select({
720
+ message,
721
+ options: [
722
+ {
723
+ value: "inherit",
724
+ label: "inherit",
725
+ hint: "defer to the parent pi session's model (default)",
726
+ },
727
+ { value: CUSTOM_MODEL_SENTINEL, label: "Enter custom model ID" },
728
+ ],
729
+ initialValue: "inherit",
730
+ });
731
+ if (p.isCancel(selected))
732
+ return selected;
733
+ if (selected === CUSTOM_MODEL_SENTINEL) {
734
+ const custom = await p.text({
735
+ message: `${message} (custom)`,
736
+ placeholder: "provider/model-id e.g. opencode/deepseek-v4",
737
+ initialValue: "",
738
+ });
739
+ if (p.isCancel(custom))
740
+ return custom;
741
+ const trimmed = custom.trim();
742
+ return trimmed === "" ? "inherit" : trimmed;
743
+ }
744
+ return selected;
745
+ }
512
746
  /**
513
747
  * Hints for list entries that are not real model identifiers and would
514
748
  * otherwise read as one. Keyed by the literal option value.
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cli/setup.ts"],"names":[],"mappings":"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"}