@iowarp/clio-coder 0.4.5 → 0.4.7

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 (700) hide show
  1. package/.claude-plugin/marketplace.json +283 -0
  2. package/CHANGELOG.md +74 -0
  3. package/CONTRIBUTING.md +116 -38
  4. package/NOTICE +24 -0
  5. package/README.md +341 -682
  6. package/dist/{acp-H3CU2HBQ.js → acp-W3Y3TRHD.js} +12 -12
  7. package/dist/{agents-IXQQZ7BD.js → agents-J4ICNLQ3.js} +57 -56
  8. package/dist/assets/codewiki.json +1 -1
  9. package/dist/assets/tui-notices/get-east-asian-width-LICENSE +9 -0
  10. package/dist/assets/tui-notices/marked-LICENSE +44 -0
  11. package/dist/assets/tui-notices/pi-tui-LICENSE +21 -0
  12. package/dist/{auth-R7KYF7N3.js → auth-X2UJUMOC.js} +25 -25
  13. package/dist/{builtins-CRFDQUVP.js → builtins-XLXWWSRF.js} +6 -6
  14. package/dist/{chunk-DZK63TZJ.js → chunk-24S3DN22.js} +336 -612
  15. package/dist/{chunk-NTK3WTHM.js → chunk-24TOGHPO.js} +2 -2
  16. package/dist/{chunk-M6TAYK66.js → chunk-2O2LVQQK.js} +11 -4
  17. package/dist/{chunk-OQM5IVJY.js → chunk-34XHRVKG.js} +3 -3
  18. package/dist/{chunk-LY4N4TTL.js → chunk-3LXJOICS.js} +2 -2
  19. package/dist/{chunk-SE4ZKILO.js → chunk-3XE4NRLF.js} +30 -9
  20. package/dist/{chunk-YYB3MC65.js → chunk-4MFBBY2Z.js} +3 -3
  21. package/dist/{chunk-5VTJP36Q.js → chunk-4N2RZ4TO.js} +2 -2
  22. package/dist/{chunk-FKIOX6DS.js → chunk-4QKAITQT.js} +10 -5
  23. package/dist/chunk-4UHVS5T7.js +207 -0
  24. package/dist/{chunk-VLPTKCKT.js → chunk-5AJPUR72.js} +6 -6
  25. package/dist/{chunk-5CY4Q6QI.js → chunk-5EQO5NWP.js} +105 -3
  26. package/dist/{chunk-RXIOCVBZ.js → chunk-65BGHOUR.js} +8 -5
  27. package/dist/{chunk-T53XI6I7.js → chunk-6CA2BHOR.js} +2 -2
  28. package/dist/{chunk-HL26ADLH.js → chunk-6CB2IL4N.js} +2 -1
  29. package/dist/{chunk-HR3HPQ76.js → chunk-6LRLOJHQ.js} +3 -3
  30. package/dist/{chunk-HXHFDHB6.js → chunk-6TAATXXH.js} +6 -6
  31. package/dist/{chunk-WFKDPU7U.js → chunk-6YHPAAZR.js} +3 -3
  32. package/dist/{chunk-ZMZQEBKI.js → chunk-7EEGBKV4.js} +11 -11
  33. package/dist/{chunk-BS4GAMUB.js → chunk-A67NR5AT.js} +2 -2
  34. package/dist/{chunk-WJIMKGD6.js → chunk-BAU36233.js} +8 -8
  35. package/dist/{chunk-MDU3C27C.js → chunk-BO4XV5VX.js} +8 -8
  36. package/dist/{chunk-KF6GFW6O.js → chunk-BQQ5MXUC.js} +11 -11
  37. package/dist/{chunk-K6RDB7IA.js → chunk-C3G5PNUO.js} +23 -23
  38. package/dist/{chunk-SRZOW5L2.js → chunk-C6GEXX4L.js} +1 -1
  39. package/dist/{chunk-U2JOLB7O.js → chunk-CE64C5K5.js} +227 -72
  40. package/dist/chunk-CP3HIR5H.js +2119 -0
  41. package/dist/{chunk-BBV5TKE6.js → chunk-CPXGJI2A.js} +2 -2
  42. package/dist/{chunk-5DDOTTG4.js → chunk-CULVKYTK.js} +5 -5
  43. package/dist/{chunk-F34AR6O3.js → chunk-D2T66PDV.js} +6 -6
  44. package/dist/{chunk-NF3BK5WR.js → chunk-DACXIVVF.js} +5 -5
  45. package/dist/{chunk-4SVIVOMC.js → chunk-DLIYANB7.js} +20 -15
  46. package/dist/{chunk-E3BQTQUP.js → chunk-DO7M3LSX.js} +9 -9
  47. package/dist/{chunk-2QPI3TR3.js → chunk-DVJL77SO.js} +2 -2
  48. package/dist/chunk-EM2WNQS2.js +93 -0
  49. package/dist/{chunk-ODUTYZIU.js → chunk-EUEXGXXR.js} +5 -5
  50. package/dist/{chunk-UL36QJX6.js → chunk-EUZRMP4Y.js} +18 -16
  51. package/dist/{chunk-R6MAYTMS.js → chunk-G4LGUTOE.js} +4 -4
  52. package/dist/{chunk-CBSKDFWL.js → chunk-GEVQNST4.js} +2 -2
  53. package/dist/{chunk-XXBQKW32.js → chunk-GFQ7P2UF.js} +7 -7
  54. package/dist/{chunk-SBZX6ARC.js → chunk-GI5RRMAH.js} +14 -14
  55. package/dist/{chunk-KDWLXVMN.js → chunk-GVZFCJHE.js} +343 -113
  56. package/dist/{chunk-633EXGZA.js → chunk-GXIWHXDB.js} +3 -3
  57. package/dist/{chunk-LUL5Z66S.js → chunk-HOX4YZ2K.js} +6 -5
  58. package/dist/chunk-HRAKUPIH.js +57 -0
  59. package/dist/{chunk-KYKNBD4Y.js → chunk-IJMW64DX.js} +978 -258
  60. package/dist/{chunk-DIMRLNIC.js → chunk-IMOD2YPV.js} +16 -9
  61. package/dist/{chunk-6CDNRHWH.js → chunk-IQCNVLO6.js} +28 -8
  62. package/dist/{chunk-UTUNT5QL.js → chunk-ISNCCX42.js} +9 -9
  63. package/dist/{chunk-RLTT5GVY.js → chunk-IZYTT3CD.js} +9 -5
  64. package/dist/{chunk-5ZMXGW7P.js → chunk-KAFMW7WM.js} +4 -85
  65. package/dist/chunk-KKEYGFX4.js +915 -0
  66. package/dist/{chunk-HHVJNVUJ.js → chunk-KS7ETA3P.js} +2 -2
  67. package/dist/{chunk-UXAC2FX4.js → chunk-L3Z5ANCV.js} +7 -7
  68. package/dist/{chunk-EHCPSZJF.js → chunk-LBFQMYS3.js} +2 -2
  69. package/dist/{chunk-QEQISF75.js → chunk-LK2FN5JY.js} +1 -1
  70. package/dist/{chunk-URBGEOH3.js → chunk-M6Z2V6YU.js} +5 -5
  71. package/dist/{chunk-DRD2A54W.js → chunk-MBJO5VNZ.js} +18 -18
  72. package/dist/chunk-MNQN3X6Y.js +595 -0
  73. package/dist/{chunk-GXCCHKN6.js → chunk-MZHXENL7.js} +7 -7
  74. package/dist/chunk-MZNWZUJM.js +1801 -0
  75. package/dist/{chunk-7YJWEF2L.js → chunk-N37QC5FV.js} +5 -5
  76. package/dist/{chunk-WLMSOT73.js → chunk-NCCQ6DVS.js} +7 -7
  77. package/dist/{chunk-TZ7MFRG4.js → chunk-NO7J45X6.js} +170 -53
  78. package/dist/chunk-OH3YYA3B.js +15 -0
  79. package/dist/{chunk-22PQ4TX4.js → chunk-P4DL2LM5.js} +16 -77
  80. package/dist/{chunk-R6MICQYU.js → chunk-PFLOULP3.js} +4 -4
  81. package/dist/{chunk-MC3JSVR6.js → chunk-QJMRYTCX.js} +7 -7
  82. package/dist/{chunk-ILJ7DWGE.js → chunk-QKWL7SYE.js} +12 -12
  83. package/dist/chunk-R2CT5YDO.js +66 -0
  84. package/dist/chunk-RFCKPS2V.js +26 -0
  85. package/dist/{chunk-ONRTXOZY.js → chunk-RTLNFZMD.js} +12 -4
  86. package/dist/{chunk-U7H5WRG5.js → chunk-RXFPB32E.js} +8 -6
  87. package/dist/{chunk-S32UQ5GL.js → chunk-SEDI5K5B.js} +18 -18
  88. package/dist/{chunk-ICO4TQ2F.js → chunk-SELG4SUR.js} +41 -25
  89. package/dist/{chunk-YEJIG7LN.js → chunk-SER7RRAE.js} +27 -832
  90. package/dist/{chunk-K2HL3GBL.js → chunk-T4TY5GG3.js} +165 -15
  91. package/dist/chunk-T7QQBNLH.js +691 -0
  92. package/dist/{chunk-HGSLRG33.js → chunk-TLTGZTXI.js} +3 -3
  93. package/dist/chunk-TZ6UVP2H.js +637 -0
  94. package/dist/{chunk-EWD5P3GK.js → chunk-TZHN5ITX.js} +13 -41
  95. package/dist/{chunk-7TKWWPD7.js → chunk-U3TPUXOQ.js} +398 -253
  96. package/dist/{chunk-GNQRWTMY.js → chunk-UA3W4FGC.js} +6 -6
  97. package/dist/{chunk-O2RQ7LCK.js → chunk-UA6W4XFJ.js} +2 -2
  98. package/dist/chunk-UWD3JD5X.js +709 -0
  99. package/dist/chunk-V4ZKOKRB.js +13433 -0
  100. package/dist/{chunk-NC4KV7EL.js → chunk-VCRVEDUC.js} +5 -5
  101. package/dist/{chunk-I7VLWRK2.js → chunk-VMATUZB6.js} +12 -10
  102. package/dist/{chunk-J2FYEQ5L.js → chunk-VTYHHQ57.js} +2 -2
  103. package/dist/chunk-WB7POC6M.js +891 -0
  104. package/dist/{chunk-GVYWZNRK.js → chunk-WBVKKTUT.js} +2 -2
  105. package/dist/{chunk-EHOSNVVM.js → chunk-WLHX3MM5.js} +6 -2
  106. package/dist/{chunk-SDWNDICN.js → chunk-WN552PKN.js} +573 -316
  107. package/dist/{chunk-TEG3RYVZ.js → chunk-WT5TRMO4.js} +51 -26
  108. package/dist/{chunk-NY6IWDVU.js → chunk-WURGVOZJ.js} +56 -12
  109. package/dist/{chunk-7WUZEB2M.js → chunk-XR3XJN2M.js} +2 -2
  110. package/dist/chunk-XW2UZICE.js +372 -0
  111. package/dist/{chunk-FSTIBAGM.js → chunk-XZ6UFQ52.js} +11 -11
  112. package/dist/chunk-Y3JU5RPK.js +8 -0
  113. package/dist/chunk-YKRJTYNP.js +1143 -0
  114. package/dist/{chunk-7HBHHVCK.js → chunk-YPRSNUTC.js} +2 -2
  115. package/dist/{chunk-PWWSIB2A.js → chunk-ZGIGW4ZG.js} +5 -5
  116. package/dist/cli/index.js +34 -36
  117. package/dist/{clio-5I2IBFYL.js → clio-L2P7S2R2.js} +9 -9
  118. package/dist/{code-nav-YXIAEZVS.js → code-nav-B5LNX4KU.js} +25 -25
  119. package/dist/{components-TNIKXCBH.js → components-63MMQKUT.js} +6 -6
  120. package/dist/{config-Y2JDJ3JJ.js → config-YXARKGTX.js} +81 -77
  121. package/dist/configure-LMVQJ46J.js +85 -0
  122. package/dist/{context-QQ53HSGJ.js → context-7HJEWTTP.js} +92 -48
  123. package/dist/{context-S2EEC3EJ.js → context-XSZKKFBW.js} +14 -14
  124. package/dist/{context-P5YSEO55.js → context-YG2LZDYZ.js} +67 -64
  125. package/dist/{context-clear-TMEQCOTH.js → context-clear-AC5NXHM2.js} +64 -61
  126. package/dist/{context-index-HP2JFUWA.js → context-index-KKTPRV5G.js} +3 -3
  127. package/dist/{context-map-INTXD54D.js → context-map-T7ROR5D5.js} +4 -4
  128. package/dist/{context-working-set-CNLSQN5K.js → context-working-set-F4Q4J3NS.js} +15 -12
  129. package/dist/{detail-5572VLBO.js → detail-H73BEF2N.js} +65 -62
  130. package/dist/{dispatch-runner-FRHD6P2O.js → dispatch-runner-3RY5FSJC.js} +83 -80
  131. package/dist/{doctor-N3LCM2LG.js → doctor-EQYJOGUG.js} +47 -32
  132. package/dist/{eval-BUU3ZOUZ.js → eval-4P7O6CCE.js} +114 -50
  133. package/dist/{evidence-DTGEN456.js → evidence-D6GUSYJW.js} +64 -61
  134. package/dist/{evidence-SQ5DNFEN.js → evidence-O76QF7TZ.js} +69 -65
  135. package/dist/{evolve-IJNUFZDS.js → evolve-H47BCETS.js} +65 -62
  136. package/dist/{extensions-YVRHX6ZI.js → extensions-NNL3ZOCU.js} +98 -20
  137. package/dist/{fleet-ZNNVSYFO.js → fleet-KMNS6NOM.js} +115 -107
  138. package/dist/{fleet-commands-5YE7NPJL.js → fleet-commands-DOWSYCBX.js} +15 -15
  139. package/dist/{fleet-decisions-3SBSCTCW.js → fleet-decisions-S3PTZV2D.js} +9 -9
  140. package/dist/{fleet-graph-6HHPWF5T.js → fleet-graph-F2DE2TME.js} +26 -24
  141. package/dist/{fleet-inspect-JEYMGCGC.js → fleet-inspect-EN2Q6IVB.js} +67 -63
  142. package/dist/{fleet-preflight-QRSHIIDE.js → fleet-preflight-FRLETDD3.js} +3 -3
  143. package/dist/{fleet-validate-4PM4GDDL.js → fleet-validate-B2XDLS57.js} +28 -29
  144. package/dist/{fleet-verify-NJDTHTO3.js → fleet-verify-4JKUWGJ7.js} +64 -61
  145. package/dist/{fleet-view-UP2BWQQY.js → fleet-view-BHJFW26B.js} +67 -63
  146. package/dist/{init-S3GZQ5ZF.js → init-XAT5N5YM.js} +86 -80
  147. package/dist/interop-FVECHFKG.js +246 -0
  148. package/dist/{inventory-K2OZ36YJ.js → inventory-7KFQGLCV.js} +67 -63
  149. package/dist/library-NY2XOT75.js +492 -0
  150. package/dist/library-QAPAO23R.js +306 -0
  151. package/dist/library-import-5Y6MAS3R.js +183 -0
  152. package/dist/library-inventory-JT6HWITQ.js +56 -0
  153. package/dist/library-validation-EQUH25DC.js +42 -0
  154. package/dist/{memory-OQOXQGYD.js → memory-DYVTTCP6.js} +65 -62
  155. package/dist/{models-3IK2Y5WE.js → models-MASFJ6Y2.js} +51 -38
  156. package/dist/{monitor-FTJLTKCQ.js → monitor-YMP4NXJJ.js} +73 -69
  157. package/dist/{orchestrator-N47O7SFD.js → orchestrator-AFQRRTEI.js} +4255 -2845
  158. package/dist/{panes-7BTYH3XQ.js → panes-D3Y2KFG5.js} +4 -4
  159. package/dist/{panes-WPOMEMRH.js → panes-NICTHQCV.js} +7 -7
  160. package/dist/{paths-J3KN7UAO.js → paths-PSFAUIGO.js} +5 -5
  161. package/dist/{preload-65U34NG6.js → preload-5Q7VXRFJ.js} +64 -61
  162. package/dist/{reset-MUVQDLNL.js → reset-7NKZK7JN.js} +11 -9
  163. package/dist/{resources-LM76COAO.js → resources-NILSIZAT.js} +94 -38
  164. package/dist/{run-3VFZQ33N.js → run-BPZGEBZV.js} +131 -114
  165. package/dist/{share-4JUB4BL7.js → share-EZ6ERBMH.js} +31 -28
  166. package/dist/skills-BTVVNYVM.js +100 -0
  167. package/dist/{skills-eval-G6T57L7M.js → skills-eval-UY34MNK7.js} +117 -78
  168. package/dist/{skills-inventory-WLM46PJH.js → skills-inventory-JDHSIA7I.js} +30 -25
  169. package/dist/{slash-commands-GBARG3Y7.js → slash-commands-K4FNQ2AT.js} +53 -49
  170. package/dist/{steer-S7D7IKPU.js → steer-2B3EQGFH.js} +4 -4
  171. package/dist/{support-5VAEC32W.js → support-L2SOL3IE.js} +7 -7
  172. package/dist/{targets-N5REUETU.js → targets-44VKGFLN.js} +69 -47
  173. package/dist/{tasks-6BVY5YZF.js → tasks-3KODKFU7.js} +14 -14
  174. package/dist/{terminal-lease-57UEOJKS.js → terminal-lease-LXA7MMPO.js} +32 -19
  175. package/dist/{tools-6OCQ6SVB.js → tools-3UB7TEVR.js} +7 -7
  176. package/dist/{trace-JHLXWUMN.js → trace-TAMIU4OJ.js} +5 -4
  177. package/dist/{tui-primitives-RCY2HN7G.js → tui-primitives-A6MUW32V.js} +3 -2
  178. package/dist/{uninstall-FXYMFFRT.js → uninstall-QYVRPEM4.js} +9 -9
  179. package/dist/{upgrade-4HD5HAIV.js → upgrade-7PMKM2JH.js} +17 -18
  180. package/dist/{usage-4GWM2WWP.js → usage-6EQV7EQK.js} +77 -73
  181. package/dist/{verifiers-GSKWKWVG.js → verifiers-JLITWSHU.js} +16 -16
  182. package/dist/{verify-3AS3ULCY.js → verify-T7NAEVIG.js} +13 -13
  183. package/dist/{web-fetch-MQN4FH3X.js → web-fetch-W4TNW4Q7.js} +4 -4
  184. package/dist/{wiki-generate-7BV7XWIY.js → wiki-generate-T2TJQJUA.js} +90 -84
  185. package/dist/{with-panes-OFTNAR4Y.js → with-panes-CHFC7HGI.js} +4 -4
  186. package/dist/worker/entry.js +297 -88
  187. package/docs/README.md +43 -0
  188. package/docs/architecture/architecture.md +8 -7
  189. package/docs/architecture/artifact-versions.md +3 -3
  190. package/docs/architecture/context-engine.md +36 -2
  191. package/docs/architecture/library.md +32 -0
  192. package/docs/architecture/middleware-and-components.md +1 -1
  193. package/docs/architecture/model-catalog.md +21 -1
  194. package/docs/architecture/pi-boundary.md +18 -0
  195. package/docs/architecture/prompt-envelope-and-tools.md +5 -5
  196. package/docs/architecture/safety-model.md +21 -2
  197. package/docs/architecture/session-lifecycle.md +12 -1
  198. package/docs/architecture/tui-design.md +153 -39
  199. package/docs/architecture/worker-context.md +106 -0
  200. package/docs/guide/authoring-plugins.md +160 -0
  201. package/docs/guide/built-in-agents.md +5 -5
  202. package/docs/guide/commands-and-modes.md +186 -80
  203. package/docs/guide/configuration-and-targets.md +123 -28
  204. package/docs/guide/configuration-reference.md +36 -38
  205. package/docs/guide/environment-variables.md +2 -2
  206. package/docs/guide/exit-codes-and-output.md +1 -1
  207. package/docs/guide/extensions-and-sharing.md +93 -53
  208. package/docs/guide/fleet-dispatch.md +32 -10
  209. package/docs/guide/glossary.md +2 -2
  210. package/docs/guide/harness-extensions.md +291 -0
  211. package/docs/guide/installation-and-lifecycle.md +53 -20
  212. package/docs/guide/interop.md +243 -0
  213. package/docs/guide/panes-and-files.md +3 -3
  214. package/docs/guide/plugins.md +80 -0
  215. package/docs/guide/resource-library.md +111 -45
  216. package/docs/guide/skills-marketplace.md +35 -72
  217. package/docs/guide/tool-usage.md +19 -7
  218. package/docs/guide/troubleshooting.md +1 -1
  219. package/docs/process/development-pipeline.md +15 -15
  220. package/docs/process/documentation-coverage.md +29 -2
  221. package/docs/process/documentation-guide.md +15 -7
  222. package/docs/process/eval-runner.md +8 -3
  223. package/docs/process/performance-methodology.md +1 -1
  224. package/docs/process/release-cut-checklist.md +22 -6
  225. package/docs/process/scientific-validation.md +23 -0
  226. package/evals/scalar-decision-machinery.ts +1 -1
  227. package/examples/extensions/README.md +67 -0
  228. package/examples/extensions/lab-status/clio-coder-extension.json +14 -0
  229. package/examples/extensions/lab-status/extension.mjs +68 -0
  230. package/examples/extensions/lab-status/jobs.synthetic.json +9 -0
  231. package/examples/extensions/measurements/clio-coder-extension.json +28 -0
  232. package/examples/extensions/measurements/summarize.cjs +23 -0
  233. package/library/README.md +109 -0
  234. package/library/_authoring/templates/agent/README.md +28 -0
  235. package/library/_authoring/templates/agent/agents/benchmark-scout.md +30 -0
  236. package/library/_authoring/templates/agent/plugin.json +23 -0
  237. package/library/_authoring/templates/fleet/README.md +29 -0
  238. package/library/_authoring/templates/fleet/fleets/pipeline-review.md +31 -0
  239. package/library/_authoring/templates/fleet/plugin.json +23 -0
  240. package/library/_authoring/templates/plugin/README.md +37 -0
  241. package/library/_authoring/templates/plugin/agents/data-curator.md +31 -0
  242. package/library/_authoring/templates/plugin/assets/curation-guide.md +22 -0
  243. package/library/_authoring/templates/plugin/plugin.json +42 -0
  244. package/library/_authoring/templates/plugin/prompts/inspect-dataset.md +15 -0
  245. package/library/_authoring/templates/plugin/skills/dataset-curation/SKILL.md +36 -0
  246. package/library/_authoring/templates/plugin/skills/dataset-curation/evals.md +17 -0
  247. package/library/_authoring/templates/prompt/README.md +28 -0
  248. package/library/_authoring/templates/prompt/plugin.json +23 -0
  249. package/library/_authoring/templates/prompt/prompts/paper-summary.md +26 -0
  250. package/library/_authoring/templates/skill/README.md +24 -0
  251. package/library/_authoring/templates/skill/SKILL.md +39 -0
  252. package/library/_authoring/templates/skill/evals.md +30 -0
  253. package/library/_authoring/templates/skill/plugin.json +23 -0
  254. package/library/agents/README.md +7 -0
  255. package/library/fleets/README.md +7 -0
  256. package/library/plugins/materio/README.md +137 -0
  257. package/library/plugins/materio/ai.iowarp.clio/agents/materio-lab-definer.md +208 -0
  258. package/library/plugins/materio/ai.iowarp.clio/agents/materio-literature-reviewer.md +308 -0
  259. package/library/plugins/materio/ai.iowarp.clio/agents/materio-research-explorer.md +249 -0
  260. package/library/plugins/materio/ai.iowarp.clio/agents/materio-task-executor.md +416 -0
  261. package/library/plugins/materio/ai.iowarp.clio/agents/materio-task-verifier.md +60 -0
  262. package/library/plugins/materio/ai.iowarp.clio/agents/materio-workflow-planner.md +238 -0
  263. package/library/plugins/materio/ai.iowarp.clio/fleets/materio-execute-task.md +50 -0
  264. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/add-task.md +66 -0
  265. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/archive-task.md +65 -0
  266. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/checkpoint.md +26 -0
  267. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/define-research-tasks.md +230 -0
  268. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/define-virtual-lab.md +181 -0
  269. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/execute-task.md +292 -0
  270. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/help.md +129 -0
  271. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/identify-research.md +206 -0
  272. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/literature-review.md +201 -0
  273. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/pause-research.md +12 -0
  274. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/progress.md +105 -0
  275. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/remove-task.md +63 -0
  276. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/resume-research.md +64 -0
  277. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/settings.md +16 -0
  278. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/status.md +92 -0
  279. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/upload-data.md +104 -0
  280. package/library/plugins/materio/ai.iowarp.clio/prompts/materio/wtfp.md +145 -0
  281. package/library/plugins/materio/ai.iowarp.clio/references/execution.md +56 -0
  282. package/library/plugins/materio/ai.iowarp.portability/provenance.json +9 -0
  283. package/library/plugins/materio/assets/actions/add-task.md +86 -0
  284. package/library/plugins/materio/assets/actions/archive-task.md +84 -0
  285. package/library/plugins/materio/assets/actions/checkpoint.md +47 -0
  286. package/library/plugins/materio/assets/actions/define-research-tasks.md +228 -0
  287. package/library/plugins/materio/assets/actions/define-virtual-lab.md +179 -0
  288. package/library/plugins/materio/assets/actions/execute-task.md +290 -0
  289. package/library/plugins/materio/assets/actions/help.md +140 -0
  290. package/library/plugins/materio/assets/actions/identify-research.md +204 -0
  291. package/library/plugins/materio/assets/actions/literature-review.md +199 -0
  292. package/library/plugins/materio/assets/actions/pause-research.md +34 -0
  293. package/library/plugins/materio/assets/actions/progress.md +125 -0
  294. package/library/plugins/materio/assets/actions/remove-task.md +82 -0
  295. package/library/plugins/materio/assets/actions/resume-research.md +84 -0
  296. package/library/plugins/materio/assets/actions/settings.md +38 -0
  297. package/library/plugins/materio/assets/actions/status.md +112 -0
  298. package/library/plugins/materio/assets/actions/upload-data.md +123 -0
  299. package/library/plugins/materio/assets/actions/wtfp.md +179 -0
  300. package/library/plugins/materio/assets/references/research-domains.md +134 -0
  301. package/library/plugins/materio/assets/references/research-policy.md +77 -0
  302. package/library/plugins/materio/assets/references/traditional-workflows.md +146 -0
  303. package/library/plugins/materio/assets/scripts/check_physics.py +271 -0
  304. package/library/plugins/materio/assets/scripts/check_scripts.py +248 -0
  305. package/library/plugins/materio/assets/scripts/project_plugin.py +165 -0
  306. package/library/plugins/materio/assets/scripts/research_state.py +400 -0
  307. package/library/plugins/materio/assets/scripts/verify_citations.py +616 -0
  308. package/library/plugins/materio/assets/templates/RESEARCH.md +39 -0
  309. package/library/plugins/materio/assets/templates/VIRTUAL-LAB.md +120 -0
  310. package/library/plugins/materio/assets/templates/WORKFLOW.md +42 -0
  311. package/library/plugins/materio/assets/templates/config.json +5 -0
  312. package/library/plugins/materio/evals/scripts.yaml +29 -0
  313. package/library/plugins/materio/plugin.json +530 -0
  314. package/library/plugins/materio/skills/materio-lab-definer/SKILL.md +74 -0
  315. package/library/plugins/materio/skills/materio-literature-reviewer/SKILL.md +64 -0
  316. package/library/plugins/materio/skills/materio-research-explorer/SKILL.md +74 -0
  317. package/library/plugins/materio/skills/materio-task-executor/SKILL.md +214 -0
  318. package/library/plugins/materio/skills/materio-task-verifier/SKILL.md +46 -0
  319. package/library/plugins/materio/skills/materio-workflow-planner/SKILL.md +79 -0
  320. package/library/plugins/materio/tests/test_check_physics.py +139 -0
  321. package/library/plugins/materio/tests/test_check_scripts.py +140 -0
  322. package/library/plugins/materio/tests/test_research_state.py +291 -0
  323. package/library/plugins/materio/tests/test_verify_citations.py +337 -0
  324. package/library/prompts/README.md +7 -0
  325. package/library/registry.yaml +921 -0
  326. package/library/skills/README.md +120 -0
  327. package/{skills → library/skills}/coding/ast-grep/SKILL.md +1 -1
  328. package/{skills → library/skills}/coding/ast-grep/evals.md +1 -1
  329. package/library/skills/coding/ast-grep/plugin.json +23 -0
  330. package/{skills → library/skills}/coding/coding-standards/SKILL.md +1 -1
  331. package/{skills → library/skills}/coding/coding-standards/evals.md +1 -1
  332. package/library/skills/coding/coding-standards/plugin.json +23 -0
  333. package/{skills → library/skills}/coding/prototype/SKILL.md +1 -1
  334. package/{skills → library/skills}/coding/prototype/evals.md +1 -1
  335. package/library/skills/coding/prototype/plugin.json +23 -0
  336. package/{skills → library/skills}/coding/tdd/SKILL.md +1 -1
  337. package/{skills → library/skills}/coding/tdd/evals.md +1 -1
  338. package/library/skills/coding/tdd/plugin.json +23 -0
  339. package/{skills → library/skills}/context/context-handoff/SKILL.md +1 -1
  340. package/{skills → library/skills}/context/context-handoff/evals.md +1 -1
  341. package/library/skills/context/context-handoff/plugin.json +23 -0
  342. package/{skills → library/skills}/context/context-prime/SKILL.md +1 -1
  343. package/{skills → library/skills}/context/context-prime/evals.md +1 -1
  344. package/library/skills/context/context-prime/plugin.json +23 -0
  345. package/{skills → library/skills}/git/branch-closeout/SKILL.md +1 -1
  346. package/library/skills/git/branch-closeout/plugin.json +23 -0
  347. package/{skills → library/skills}/git/file-ticket/SKILL.md +1 -1
  348. package/library/skills/git/file-ticket/plugin.json +23 -0
  349. package/{skills → library/skills}/git/fix-issue/SKILL.md +1 -1
  350. package/library/skills/git/fix-issue/plugin.json +23 -0
  351. package/{skills → library/skills}/git/resolve-merge-conflicts/SKILL.md +1 -1
  352. package/{skills → library/skills}/git/resolve-merge-conflicts/evals.md +1 -1
  353. package/library/skills/git/resolve-merge-conflicts/plugin.json +23 -0
  354. package/{skills → library/skills}/git/ship/SKILL.md +1 -1
  355. package/library/skills/git/ship/plugin.json +23 -0
  356. package/{skills → library/skills}/git/worktree-create/SKILL.md +1 -1
  357. package/library/skills/git/worktree-create/plugin.json +23 -0
  358. package/{skills → library/skills}/git/worktree-merge/SKILL.md +1 -1
  359. package/library/skills/git/worktree-merge/plugin.json +23 -0
  360. package/{skills → library/skills}/meta/clio-coder-dev/SKILL.md +1 -1
  361. package/{skills → library/skills}/meta/clio-coder-dev/evals.md +1 -1
  362. package/library/skills/meta/clio-coder-dev/plugin.json +23 -0
  363. package/{skills → library/skills}/meta/clio-coder-test/SKILL.md +1 -1
  364. package/{skills → library/skills}/meta/clio-coder-test/evals.md +1 -1
  365. package/library/skills/meta/clio-coder-test/plugin.json +23 -0
  366. package/{skills → library/skills}/meta/credentials/SKILL.md +1 -1
  367. package/{skills → library/skills}/meta/credentials/evals.md +1 -1
  368. package/library/skills/meta/credentials/plugin.json +23 -0
  369. package/library/skills/meta/find-skills/SKILL.md +85 -0
  370. package/library/skills/meta/find-skills/evals.md +65 -0
  371. package/library/skills/meta/find-skills/plugin.json +23 -0
  372. package/{skills → library/skills}/meta/herdr/SKILL.md +1 -1
  373. package/{skills → library/skills}/meta/herdr/evals.md +1 -1
  374. package/library/skills/meta/herdr/plugin.json +23 -0
  375. package/{skills → library/skills}/meta/skill-craft/SKILL.md +23 -9
  376. package/{skills → library/skills}/meta/skill-craft/evals.md +11 -3
  377. package/library/skills/meta/skill-craft/plugin.json +23 -0
  378. package/{skills → library/skills}/planning/archify/SKILL.md +13 -13
  379. package/library/skills/planning/archify/plugin.json +23 -0
  380. package/{skills → library/skills}/planning/architecture/SKILL.md +1 -1
  381. package/{skills → library/skills}/planning/architecture/evals.md +1 -1
  382. package/library/skills/planning/architecture/plugin.json +23 -0
  383. package/{skills → library/skills}/planning/backlog/SKILL.md +1 -1
  384. package/{skills → library/skills}/planning/backlog/evals.md +1 -1
  385. package/library/skills/planning/backlog/plugin.json +23 -0
  386. package/{skills → library/skills}/planning/prd/SKILL.md +1 -1
  387. package/{skills → library/skills}/planning/prd/evals.md +1 -1
  388. package/library/skills/planning/prd/plugin.json +23 -0
  389. package/{skills → library/skills}/planning/product-intent/SKILL.md +1 -1
  390. package/{skills → library/skills}/planning/product-intent/evals.md +1 -1
  391. package/library/skills/planning/product-intent/plugin.json +23 -0
  392. package/{skills → library/skills}/planning/tech-spec/SKILL.md +1 -1
  393. package/{skills → library/skills}/planning/tech-spec/evals.md +1 -1
  394. package/library/skills/planning/tech-spec/plugin.json +23 -0
  395. package/{skills → library/skills}/registry.yaml +7 -7
  396. package/{skills → library/skills}/remote.yaml +1 -1
  397. package/{skills → library/skills}/research/arxiv-literature/SKILL.md +1 -1
  398. package/{skills → library/skills}/research/arxiv-literature/evals.md +1 -1
  399. package/library/skills/research/arxiv-literature/plugin.json +23 -0
  400. package/{skills → library/skills}/research/experiment-protocol/SKILL.md +1 -1
  401. package/{skills → library/skills}/research/experiment-protocol/evals.md +1 -1
  402. package/library/skills/research/experiment-protocol/plugin.json +23 -0
  403. package/{skills → library/skills}/research/scientific-debugging/SKILL.md +1 -1
  404. package/{skills → library/skills}/research/scientific-debugging/evals.md +1 -1
  405. package/library/skills/research/scientific-debugging/plugin.json +23 -0
  406. package/{skills → library/skills}/research/scientific-modernization/SKILL.md +1 -1
  407. package/{skills → library/skills}/research/scientific-modernization/evals.md +1 -1
  408. package/library/skills/research/scientific-modernization/plugin.json +23 -0
  409. package/{skills → library/skills}/skill-marketplace.json +37 -37
  410. package/{skills → library/skills}/workflow/cut-it/SKILL.md +1 -1
  411. package/{skills → library/skills}/workflow/cut-it/evals.md +1 -1
  412. package/library/skills/workflow/cut-it/plugin.json +23 -0
  413. package/{skills → library/skills}/workflow/design-council/SKILL.md +1 -1
  414. package/{skills → library/skills}/workflow/design-council/evals.md +1 -1
  415. package/library/skills/workflow/design-council/plugin.json +23 -0
  416. package/{skills → library/skills}/workflow/grill-me/SKILL.md +1 -1
  417. package/{skills → library/skills}/workflow/grill-me/evals.md +1 -1
  418. package/library/skills/workflow/grill-me/plugin.json +23 -0
  419. package/{skills → library/skills}/workflow/workflow-distiller/SKILL.md +14 -11
  420. package/{skills → library/skills}/workflow/workflow-distiller/evals.md +14 -6
  421. package/library/skills/workflow/workflow-distiller/plugin.json +23 -0
  422. package/package.json +12 -5
  423. package/src/cli/agents.ts +1 -1
  424. package/src/cli/ask.ts +10 -10
  425. package/src/cli/config-inspect.ts +1 -1
  426. package/src/cli/configure-editor.ts +51 -0
  427. package/src/cli/configure-interop.ts +1 -1
  428. package/src/cli/configure-oauth.ts +1 -1
  429. package/src/cli/configure-onboarding.ts +232 -96
  430. package/src/cli/configure-prompts.ts +76 -0
  431. package/src/cli/configure-quick.ts +274 -0
  432. package/src/cli/configure-target.ts +14 -2
  433. package/src/cli/configure.ts +415 -176
  434. package/src/cli/eval.ts +40 -6
  435. package/src/cli/extensions.ts +74 -8
  436. package/src/cli/fleet-preflight.ts +2 -0
  437. package/src/cli/fleet.ts +2 -0
  438. package/src/cli/index.ts +1 -3
  439. package/src/cli/interop-inspect.ts +61 -33
  440. package/src/cli/interop.ts +79 -9
  441. package/src/cli/library-import.ts +139 -0
  442. package/src/cli/library.ts +418 -120
  443. package/src/cli/oauth-manual-input.ts +1 -1
  444. package/src/cli/reset.ts +2 -0
  445. package/src/cli/run.ts +26 -9
  446. package/src/cli/select.ts +35 -4
  447. package/src/cli/skills-eval.ts +43 -6
  448. package/src/cli/skills-inventory.ts +6 -2
  449. package/src/cli/skills.ts +44 -491
  450. package/src/cli/upgrade.ts +2 -2
  451. package/src/core/bus-events.ts +5 -0
  452. package/src/core/config.ts +6 -1
  453. package/src/core/defaults.ts +34 -12
  454. package/src/{interactive → core}/external-editor.ts +4 -4
  455. package/src/core/recent-models.ts +2 -2
  456. package/src/core/session-routing.ts +3 -3
  457. package/src/core/state-file-lock.ts +1 -1
  458. package/src/core/tool-names.ts +5 -0
  459. package/src/domains/agents/extension.ts +42 -6
  460. package/src/domains/agents/fleet-commands.ts +92 -1
  461. package/src/domains/agents/fleet-contract.ts +87 -19
  462. package/src/domains/agents/recipe.ts +5 -4
  463. package/src/domains/agents/registry.ts +80 -24
  464. package/src/domains/config/classify.ts +1 -1
  465. package/src/domains/config/keybindings.ts +156 -124
  466. package/src/domains/context/worker/contract.ts +91 -0
  467. package/src/domains/context/worker/pressure.ts +120 -0
  468. package/src/domains/context/worker/recall.ts +62 -0
  469. package/src/domains/context/worker/select.ts +164 -0
  470. package/src/domains/context/worker/snapshot.ts +35 -0
  471. package/src/domains/context/worker/store.ts +16 -0
  472. package/src/domains/context/working-set/replay/synthetic.ts +2 -1
  473. package/src/domains/dispatch/active-route-planner.ts +2 -0
  474. package/src/domains/dispatch/backoff.ts +1 -0
  475. package/src/domains/dispatch/code-step.ts +12 -2
  476. package/src/domains/dispatch/contract.ts +3 -0
  477. package/src/domains/dispatch/execution-plan.ts +2 -0
  478. package/src/domains/dispatch/extension.ts +109 -27
  479. package/src/domains/dispatch/fleet-plan.ts +10 -0
  480. package/src/domains/dispatch/fleet-run.ts +1 -0
  481. package/src/domains/dispatch/orphan-recovery.ts +1 -0
  482. package/src/domains/dispatch/receipt-integrity.ts +4 -0
  483. package/src/domains/dispatch/state.ts +1 -0
  484. package/src/domains/dispatch/types.ts +5 -0
  485. package/src/domains/dispatch/validation.ts +12 -0
  486. package/src/domains/dispatch/workspace-checkpoint.ts +1 -1
  487. package/src/domains/evidence/failure-attribution.ts +1 -0
  488. package/src/domains/evidence/trust-status.ts +22 -3
  489. package/src/domains/extensions/command-schema.ts +145 -0
  490. package/src/domains/extensions/command-tools.ts +15 -0
  491. package/src/domains/extensions/compatibility.ts +7 -0
  492. package/src/domains/extensions/contract.ts +0 -4
  493. package/src/domains/extensions/discovery.ts +69 -205
  494. package/src/domains/extensions/extension.ts +0 -4
  495. package/src/domains/extensions/index.ts +1 -5
  496. package/src/domains/extensions/manager.ts +1 -6
  497. package/src/domains/extensions/operator-commands.ts +29 -0
  498. package/src/domains/extensions/operator-runtime.ts +483 -0
  499. package/src/domains/extensions/public-api.ts +53 -0
  500. package/src/domains/extensions/runtime-child.mjs +114 -0
  501. package/src/domains/extensions/runtime-process.ts +306 -0
  502. package/src/domains/extensions/runtime-schema.ts +146 -0
  503. package/src/domains/extensions/{resources.ts → snapshot-access.ts} +1 -17
  504. package/src/domains/extensions/snapshot.ts +4 -32
  505. package/src/domains/extensions/state.ts +5 -83
  506. package/src/domains/extensions/types.ts +33 -34
  507. package/src/domains/interop/adopt.ts +546 -0
  508. package/src/domains/interop/detect.ts +50 -12
  509. package/src/domains/interop/foreign.ts +554 -0
  510. package/src/domains/interop/import.ts +277 -0
  511. package/src/domains/interop/index.ts +24 -0
  512. package/src/domains/interop/install.ts +6 -0
  513. package/src/domains/interop/inventory.ts +351 -0
  514. package/src/domains/interop/projection.ts +360 -0
  515. package/src/domains/interop/registry.ts +106 -3
  516. package/src/domains/interop/types.ts +51 -0
  517. package/src/domains/lifecycle/migrations/index.ts +0 -2
  518. package/src/domains/lifecycle/naming-resources.ts +1 -1
  519. package/src/domains/middleware/marketplace-offer.ts +1 -1
  520. package/src/domains/mux/contract.ts +1 -1
  521. package/src/domains/plugins/catalog.ts +204 -0
  522. package/src/domains/plugins/contract.ts +24 -0
  523. package/src/domains/plugins/discovery.ts +316 -0
  524. package/src/domains/plugins/extension.ts +40 -0
  525. package/src/domains/plugins/index.ts +77 -0
  526. package/src/domains/plugins/integrity.ts +6 -0
  527. package/src/domains/plugins/manifest.ts +3 -0
  528. package/src/domains/plugins/resources.ts +102 -0
  529. package/src/domains/plugins/state.ts +753 -0
  530. package/src/domains/plugins/types.ts +217 -0
  531. package/src/domains/prompts/extension.ts +9 -2
  532. package/src/domains/prompts/fragments/operating/skills.md +10 -10
  533. package/src/domains/providers/probe/fingerprint.ts +13 -6
  534. package/src/domains/providers/probe/reasoning.ts +2 -0
  535. package/src/domains/providers/runtimes/common/probe-helpers.ts +23 -7
  536. package/src/domains/providers/runtimes/protocol/anthropic-compat.ts +7 -2
  537. package/src/domains/providers/runtimes/protocol/openai-compat.ts +10 -4
  538. package/src/domains/resources/common-loader.ts +9 -6
  539. package/src/domains/resources/index.ts +67 -0
  540. package/src/domains/resources/library-actions.ts +836 -0
  541. package/src/domains/resources/library-evals.ts +38 -0
  542. package/src/domains/resources/library-inventory.ts +1048 -0
  543. package/src/domains/resources/library-types.ts +50 -0
  544. package/src/domains/resources/library-validation.ts +634 -0
  545. package/src/domains/resources/library.ts +437 -156
  546. package/src/domains/resources/package-references.ts +66 -0
  547. package/src/domains/resources/prompts/loader.ts +75 -41
  548. package/src/domains/resources/skills/install.ts +2 -2
  549. package/src/domains/resources/skills/loader.ts +77 -22
  550. package/src/domains/resources/skills/marketplace.ts +48 -57
  551. package/src/domains/resources/skills/promotion.ts +2 -2
  552. package/src/domains/resources/skills/provenance-pin.ts +17 -4
  553. package/src/domains/safety/action-classifier.ts +2 -2
  554. package/src/domains/safety/default-path-policy.ts +3 -1
  555. package/src/domains/safety/policy-engine.ts +1 -1
  556. package/src/domains/safety/protected-artifacts.ts +21 -5
  557. package/src/domains/safety/skill-authority.ts +5 -2
  558. package/src/domains/share/archive.ts +1 -1
  559. package/src/engine/apis/openai-completions.ts +52 -2
  560. package/src/engine/notices/pi-tui-LICENSE +21 -0
  561. package/src/engine/tui.ts +3 -0
  562. package/src/engine/worker-runtime.ts +58 -14
  563. package/src/engine/worker-tools.ts +5 -0
  564. package/src/entry/orchestrator.ts +26 -5
  565. package/src/entry/plugin-reload.ts +18 -0
  566. package/src/interactive/application-controller.ts +68 -52
  567. package/src/interactive/chat-loop.ts +32 -5
  568. package/src/interactive/chat-panel.ts +168 -638
  569. package/src/interactive/chat-renderer.ts +13 -30
  570. package/src/interactive/clio-editor.ts +53 -21
  571. package/src/interactive/command-output.ts +56 -1
  572. package/src/interactive/dispatch-board.ts +1 -3
  573. package/src/interactive/editor-submit.ts +73 -59
  574. package/src/interactive/fleet-run-preview.ts +2 -0
  575. package/src/interactive/follow-up-queue-panel.ts +3 -3
  576. package/src/interactive/footer/dashboard.ts +12 -4
  577. package/src/interactive/footer/notifications.ts +2 -2
  578. package/src/interactive/footer/widgets.ts +52 -93
  579. package/src/interactive/interactive-application.ts +225 -63
  580. package/src/interactive/interactive-event-projection.ts +2 -44
  581. package/src/interactive/interactive-input-runtime.ts +257 -35
  582. package/src/interactive/interactive-presentation.ts +71 -21
  583. package/src/interactive/interactive-slash-runtime.ts +40 -48
  584. package/src/interactive/keybinding-manager.ts +156 -79
  585. package/src/interactive/keyboard-owner.ts +37 -0
  586. package/src/interactive/layout.ts +29 -4
  587. package/src/interactive/leader-key.ts +49 -102
  588. package/src/interactive/leader-menu.ts +45 -0
  589. package/src/interactive/overlay-ask-user-lifecycle.ts +9 -1
  590. package/src/interactive/overlay-frame.ts +15 -0
  591. package/src/interactive/overlay-general-openers.ts +2 -0
  592. package/src/interactive/overlay-key-routing.ts +46 -47
  593. package/src/interactive/overlay-lifecycle.ts +31 -15
  594. package/src/interactive/overlay-resource-openers.ts +56 -46
  595. package/src/interactive/overlay-session-lifecycle.ts +1 -1
  596. package/src/interactive/overlays/ask-user.ts +630 -556
  597. package/src/interactive/overlays/extension-panel.ts +70 -0
  598. package/src/interactive/overlays/extensions.ts +28 -5
  599. package/src/interactive/overlays/fleet-run-approval.ts +7 -3
  600. package/src/interactive/overlays/help-reference.ts +89 -40
  601. package/src/interactive/overlays/interop.ts +122 -3
  602. package/src/interactive/overlays/keybinding-detail.ts +2 -2
  603. package/src/interactive/overlays/library-lifecycle.ts +90 -0
  604. package/src/interactive/overlays/library-model.ts +574 -0
  605. package/src/interactive/overlays/library-review.ts +557 -0
  606. package/src/interactive/overlays/library-tabs.ts +3 -15
  607. package/src/interactive/overlays/library.ts +602 -0
  608. package/src/interactive/overlays/list-overlay.ts +218 -39
  609. package/src/interactive/overlays/model-selector.ts +28 -25
  610. package/src/interactive/overlays/session-selector.ts +9 -3
  611. package/src/interactive/overlays/settings.ts +34 -26
  612. package/src/interactive/overlays/tree-selector.ts +16 -11
  613. package/src/interactive/permission-hint.ts +13 -0
  614. package/src/interactive/permission-overlay.ts +77 -28
  615. package/src/interactive/prompt-source-label.ts +21 -0
  616. package/src/interactive/renderers/preview.ts +16 -0
  617. package/src/interactive/renderers/reference-card.ts +35 -0
  618. package/src/interactive/renderers/tool-execution.ts +67 -160
  619. package/src/interactive/renderers/worker-entry.ts +90 -42
  620. package/src/interactive/slash-autocomplete.ts +100 -7
  621. package/src/interactive/slash-commands.ts +396 -105
  622. package/src/interactive/slash-spec.ts +0 -1
  623. package/src/interactive/status/controller.ts +0 -5
  624. package/src/interactive/status/state-machine.ts +44 -26
  625. package/src/interactive/status/types.ts +3 -0
  626. package/src/interactive/status/verbs.ts +13 -12
  627. package/src/interactive/terminal-lease.ts +44 -12
  628. package/src/interactive/transcript-detail.ts +50 -112
  629. package/src/interactive/turn-queues.ts +8 -7
  630. package/src/interactive/turn-runtime.ts +1 -1
  631. package/src/interactive/view/artifacts.ts +4 -0
  632. package/src/interactive/view/view-overlay.ts +58 -43
  633. package/src/interactive/welcome-dashboard.ts +525 -408
  634. package/src/tools/bootstrap.ts +8 -0
  635. package/src/tools/builtin-tool-catalog.ts +7 -2
  636. package/src/tools/context/index.ts +58 -5
  637. package/src/tools/context/library.ts +465 -0
  638. package/src/tools/context/surface.ts +20 -6
  639. package/src/tools/core-bootstrap.ts +3 -0
  640. package/src/tools/dispatch-admission.ts +24 -1
  641. package/src/tools/dispatch-arguments.ts +8 -0
  642. package/src/tools/dispatch-plan.ts +32 -0
  643. package/src/tools/dispatch-schema.ts +31 -1
  644. package/src/tools/dispatch-types.ts +3 -0
  645. package/src/tools/dispatch.ts +1 -1
  646. package/src/tools/harness-extensions.ts +169 -0
  647. package/src/tools/observation.ts +4 -0
  648. package/src/tools/policy.ts +7 -1
  649. package/src/tools/presentation.ts +1 -1
  650. package/src/tools/registry.ts +20 -2
  651. package/src/tools/verify/numeric.ts +4 -4
  652. package/src/tools/worker-evidence.ts +5 -0
  653. package/src/worker/context-seed.ts +192 -0
  654. package/src/worker/entry.ts +1 -0
  655. package/src/worker/spec-contract.ts +8 -1
  656. package/dist/chunk-3UW3KU4A.js +0 -21
  657. package/dist/chunk-6SYEGZI3.js +0 -433
  658. package/dist/chunk-CXQ37WJH.js +0 -45
  659. package/dist/chunk-EQEJJ53P.js +0 -399
  660. package/dist/chunk-KTFSFCVN.js +0 -46
  661. package/dist/chunk-QRFXEO6Y.js +0 -17
  662. package/dist/chunk-T7FDXNRU.js +0 -1257
  663. package/dist/chunk-U7VQ4NI4.js +0 -911
  664. package/dist/configure-SML6UBZ5.js +0 -55
  665. package/dist/interop-YOTGXFJM.js +0 -115
  666. package/dist/library-GJI6W6OK.js +0 -226
  667. package/dist/skills-S36AAJHU.js +0 -510
  668. package/skills/README.md +0 -418
  669. package/skills/meta/find-skills/SKILL.md +0 -78
  670. package/skills/meta/find-skills/evals.md +0 -47
  671. package/src/domains/extensions/resource-path.ts +0 -27
  672. package/src/domains/lifecycle/migrations/2026-09-01-extension-install-digests.ts +0 -27
  673. package/src/interactive/overlays/agents.ts +0 -70
  674. package/src/interactive/overlays/library-install-confirm.ts +0 -152
  675. package/src/interactive/overlays/prompts.ts +0 -89
  676. package/src/interactive/overlays/skills-hub.ts +0 -615
  677. /package/{skills → library/skills}/coding/ast-grep/references/rule_reference.md +0 -0
  678. /package/{skills → library/skills}/coding/prototype/references/LOGIC.md +0 -0
  679. /package/{skills → library/skills}/coding/prototype/references/UI.md +0 -0
  680. /package/{skills → library/skills}/coding/tdd/references/mocking.md +0 -0
  681. /package/{skills → library/skills}/coding/tdd/references/tests.md +0 -0
  682. /package/{skills → library/skills}/context/context-handoff/scripts/new-handoff.sh +0 -0
  683. /package/{skills → library/skills}/git/branch-closeout/evals.md +0 -0
  684. /package/{skills → library/skills}/git/branch-closeout/references/closeout-checklist.md +0 -0
  685. /package/{skills → library/skills}/git/file-ticket/assets/issue-template.md +0 -0
  686. /package/{skills → library/skills}/git/file-ticket/evals.md +0 -0
  687. /package/{skills → library/skills}/git/file-ticket/references/issue-discovery.md +0 -0
  688. /package/{skills → library/skills}/git/fix-issue/evals.md +0 -0
  689. /package/{skills → library/skills}/git/fix-issue/references/diagnosis-and-rca.md +0 -0
  690. /package/{skills → library/skills}/git/resolve-merge-conflicts/references/conflict-matrix.md +0 -0
  691. /package/{skills → library/skills}/git/ship/assets/pr-template.md +0 -0
  692. /package/{skills → library/skills}/git/ship/evals.md +0 -0
  693. /package/{skills → library/skills}/git/ship/references/remote-and-branch-policy.md +0 -0
  694. /package/{skills → library/skills}/git/worktree-create/evals.md +0 -0
  695. /package/{skills → library/skills}/git/worktree-create/references/worktree-setup.md +0 -0
  696. /package/{skills → library/skills}/git/worktree-merge/evals.md +0 -0
  697. /package/{skills → library/skills}/git/worktree-merge/references/merge-strategies.md +0 -0
  698. /package/{skills → library/skills}/meta/clio-coder-test/references/harness.md +0 -0
  699. /package/{skills → library/skills}/meta/clio-coder-test/references/test-map.md +0 -0
  700. /package/{skills → library/skills}/planning/archify/evals.md +0 -0
@@ -16,6 +16,10 @@ import {
16
16
  parseControlFrame,
17
17
  toolSignatureOf
18
18
  } from "./chunk-VQD7NH7Z.js";
19
+ import {
20
+ enableClioCompileCache,
21
+ workerCompileCacheEnvironment
22
+ } from "./chunk-CKK25WN3.js";
19
23
  import {
20
24
  readClioVersion,
21
25
  resolvePackageRoot
@@ -24,10 +28,6 @@ import {
24
28
  AI_AGENT_NAME,
25
29
  withClioAgentEnvironment
26
30
  } from "./chunk-ZTNFYMIO.js";
27
- import {
28
- enableClioCompileCache,
29
- workerCompileCacheEnvironment
30
- } from "./chunk-CKK25WN3.js";
31
31
  import {
32
32
  clioStateDir
33
33
  } from "./chunk-CTTI7G3T.js";
@@ -971,4 +971,4 @@ export {
971
971
  routeFactVerdict,
972
972
  runFleetNodePreflight
973
973
  };
974
- //# sourceMappingURL=chunk-7YJWEF2L.js.map
974
+ //# sourceMappingURL=chunk-N37QC5FV.js.map
@@ -10,17 +10,17 @@ import {
10
10
  createLoopState,
11
11
  isSubset,
12
12
  observe
13
- } from "./chunk-KF6GFW6O.js";
13
+ } from "./chunk-BQQ5MXUC.js";
14
14
  import {
15
15
  createSafetyPolicyEngine
16
- } from "./chunk-4SVIVOMC.js";
17
- import {
18
- classify
19
- } from "./chunk-LUL5Z66S.js";
16
+ } from "./chunk-DLIYANB7.js";
20
17
  import {
21
18
  BusChannels,
22
19
  isRunAbortedPayload
23
- } from "./chunk-HL26ADLH.js";
20
+ } from "./chunk-6CB2IL4N.js";
21
+ import {
22
+ classify
23
+ } from "./chunk-HOX4YZ2K.js";
24
24
  import {
25
25
  clioStateDir,
26
26
  stateRootRemoved
@@ -655,4 +655,4 @@ export {
655
655
  parseRigorOverride,
656
656
  SafetyDomainModule
657
657
  };
658
- //# sourceMappingURL=chunk-WLMSOT73.js.map
658
+ //# sourceMappingURL=chunk-NCCQ6DVS.js.map
@@ -1,16 +1,17 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
- import {
3
- hashToolCall,
4
- typedValidationSummary
5
- } from "./chunk-KF6GFW6O.js";
6
2
  import {
7
3
  ROUTE_POLICY_VERSION,
4
+ completeHistoryLength,
5
+ contextHash,
8
6
  isRouteDecisionAgentSelection,
9
7
  isRoutingIntent,
8
+ messageToolCalls,
10
9
  parseRoutingIntent,
10
+ parseWorkerContextProvenance,
11
+ parseWorkerContextSeed,
11
12
  routePriorForLatencyClass,
12
13
  sameRouteIdentity
13
- } from "./chunk-K2HL3GBL.js";
14
+ } from "./chunk-T4TY5GG3.js";
14
15
  import {
15
16
  describeCallAction
16
17
  } from "./chunk-2GPGAE5W.js";
@@ -39,7 +40,7 @@ import {
39
40
  toolResultDigestFor,
40
41
  truncateHead,
41
42
  truncateTail
42
- } from "./chunk-RLTT5GVY.js";
43
+ } from "./chunk-IZYTT3CD.js";
43
44
  import {
44
45
  formatSize
45
46
  } from "./chunk-KECNXMDE.js";
@@ -52,61 +53,38 @@ import {
52
53
  TOOL_PROFILE_NAMES,
53
54
  assertToolProfileEnforceable,
54
55
  isToolProfileName
55
- } from "./chunk-CBSKDFWL.js";
56
+ } from "./chunk-GEVQNST4.js";
56
57
  import {
57
58
  deriveExecutionRole,
58
59
  isExecutionRole,
59
60
  requestExecutionRole
60
- } from "./chunk-LY4N4TTL.js";
61
- import {
62
- AGENT_AUTOMATION_AUTHORITIES,
63
- COUNCIL_BALLOT_SHAPE,
64
- COUNCIL_BALLOT_VERDICT_MAX_BYTES,
65
- agentSpecFingerprint,
66
- parseResultSummaryMaxBytes
67
- } from "./chunk-OQM5IVJY.js";
68
- import {
69
- classify,
70
- webFetchIsOutward
71
- } from "./chunk-LUL5Z66S.js";
72
- import {
73
- commandArgumentSegments,
74
- detectValidationCommand,
75
- extractCommandDeleteTargets,
76
- extractCommandWriteTargets,
77
- toolMutationPaths
78
- } from "./chunk-M6TAYK66.js";
61
+ } from "./chunk-3LXJOICS.js";
79
62
  import {
80
63
  isDispatchIntent,
81
64
  resolveDispatchPathScope
82
65
  } from "./chunk-L4N3DWNW.js";
83
66
  import {
84
- asDirectoryPathBoundary,
85
- pathBoundaryCovers,
86
- resolvePathBoundary
87
- } from "./chunk-R2P2U3ZS.js";
67
+ evaluateSkillToolSurface
68
+ } from "./chunk-KAFMW7WM.js";
88
69
  import {
89
- typebox_exports
90
- } from "./chunk-GH5ZR6JP.js";
70
+ hashToolCall,
71
+ typedValidationSummary
72
+ } from "./chunk-BQQ5MXUC.js";
73
+ import {
74
+ ceilChars
75
+ } from "./chunk-77CZRFTE.js";
91
76
  import {
92
77
  DEFAULT_AUTONOMY_EXPOSURE,
93
78
  DEFAULT_AUTONOMY_LEVEL,
94
79
  autonomyAskRejection,
95
80
  autonomyDenyRejection,
96
- evaluateSkillToolSurface,
97
81
  isAutonomyLevel,
98
82
  mapAutonomy
99
- } from "./chunk-5ZMXGW7P.js";
83
+ } from "./chunk-EM2WNQS2.js";
100
84
  import {
101
85
  byteLength,
102
86
  truncateUtf8
103
87
  } from "./chunk-MYI32N4R.js";
104
- import {
105
- ToolNames
106
- } from "./chunk-EHOSNVVM.js";
107
- import {
108
- ceilChars
109
- } from "./chunk-77CZRFTE.js";
110
88
  import {
111
89
  BASH_HARD_CAP_BYTES,
112
90
  combineBashOutput,
@@ -114,10 +92,42 @@ import {
114
92
  } from "./chunk-5A6XR3RJ.js";
115
93
  import {
116
94
  boundedExternalDiagnostic
117
- } from "./chunk-ICO4TQ2F.js";
95
+ } from "./chunk-SELG4SUR.js";
96
+ import {
97
+ StringEnum
98
+ } from "./chunk-5CMARGPF.js";
99
+ import {
100
+ AGENT_AUTOMATION_AUTHORITIES,
101
+ COUNCIL_BALLOT_SHAPE,
102
+ COUNCIL_BALLOT_VERDICT_MAX_BYTES,
103
+ agentSpecFingerprint,
104
+ parseResultSummaryMaxBytes
105
+ } from "./chunk-34XHRVKG.js";
106
+ import {
107
+ classify,
108
+ webFetchIsOutward
109
+ } from "./chunk-HOX4YZ2K.js";
110
+ import {
111
+ commandArgumentSegments,
112
+ detectValidationCommand,
113
+ extractCommandDeleteTargets,
114
+ extractCommandWriteTargets,
115
+ toolMutationPaths
116
+ } from "./chunk-2O2LVQQK.js";
117
+ import {
118
+ typebox_exports
119
+ } from "./chunk-GH5ZR6JP.js";
120
+ import {
121
+ asDirectoryPathBoundary,
122
+ pathBoundaryCovers,
123
+ resolvePathBoundary
124
+ } from "./chunk-R2P2U3ZS.js";
125
+ import {
126
+ ToolNames
127
+ } from "./chunk-WLHX3MM5.js";
118
128
  import {
119
129
  THINKING_LEVELS
120
- } from "./chunk-SE4ZKILO.js";
130
+ } from "./chunk-3XE4NRLF.js";
121
131
  import {
122
132
  GUARDRAIL_DEFAULTS,
123
133
  isWorkerToolCallCapExceededReason,
@@ -127,9 +137,6 @@ import {
127
137
  buildSafeToolEnv,
128
138
  resolveSafeCwd
129
139
  } from "./chunk-GJ24ODAX.js";
130
- import {
131
- StringEnum
132
- } from "./chunk-5CMARGPF.js";
133
140
  import {
134
141
  clioStateDir
135
142
  } from "./chunk-CTTI7G3T.js";
@@ -313,7 +320,6 @@ function classifyDecisionPresentation(facts) {
313
320
  }
314
321
 
315
322
  // src/tools/ask-user.ts
316
- var ASK_USER_OTHER_LABEL = "Other (type your answer)";
317
323
  var MAX_DECISIONS = 24;
318
324
  var DEFAULT_MAX_ROUNDS = 6;
319
325
  var MAX_ROUNDS = 24;
@@ -1200,6 +1206,41 @@ function isBoundedGateRolePrompt(input) {
1200
1206
 
1201
1207
  // src/tools/dispatch-plan.ts
1202
1208
  init_esm_shims();
1209
+
1210
+ // src/domains/context/worker/contract.ts
1211
+ init_esm_shims();
1212
+ var WORKER_CONTEXT_SPLICE_TOKENS = 8e3;
1213
+ function parseWorkerContextPolicy(value) {
1214
+ if (!value || typeof value !== "object" || Array.isArray(value)) throw new Error("context must be an object");
1215
+ const policy = value;
1216
+ const mode = policy.mode;
1217
+ if (mode !== "isolated" && mode !== "fork" && mode !== "splice")
1218
+ throw new Error("context.mode must be isolated, fork, or splice");
1219
+ const keys = mode === "isolated" ? ["mode"] : mode === "fork" ? ["mode", "max_tokens"] : ["mode", "max_tokens", "paths", "refs"];
1220
+ for (const key of Object.keys(policy))
1221
+ if (!keys.includes(key)) throw new Error(`context.${key} is unsupported for ${mode}`);
1222
+ if (mode === "isolated") return { mode };
1223
+ const result = { mode };
1224
+ if (policy.max_tokens !== void 0) {
1225
+ if (!Number.isSafeInteger(policy.max_tokens) || policy.max_tokens < 256 || policy.max_tokens > 262144)
1226
+ throw new Error("context.max_tokens must be an integer between 256 and 262144");
1227
+ result.max_tokens = policy.max_tokens;
1228
+ }
1229
+ if (result.mode === "splice") {
1230
+ for (const key of ["paths", "refs"]) {
1231
+ const items = policy[key];
1232
+ if (items === void 0) continue;
1233
+ if (!Array.isArray(items) || items.length === 0 || items.length > 64 || items.some(
1234
+ (item) => typeof item !== "string" || item.trim().length === 0 || item.length > 4096 || Array.from(item).some((char) => char.charCodeAt(0) < 32)
1235
+ ))
1236
+ throw new Error(`context.${key} must contain 1 to 64 nonempty strings`);
1237
+ result[key] = [...new Set(items.map((item) => item.trim()))];
1238
+ }
1239
+ }
1240
+ return result;
1241
+ }
1242
+
1243
+ // src/tools/dispatch-plan.ts
1203
1244
  import { createHash } from "node:crypto";
1204
1245
 
1205
1246
  // src/domains/dispatch/route-approval.ts
@@ -1864,6 +1905,7 @@ var KNOWN_KEYS = /* @__PURE__ */ new Set([
1864
1905
  "executionRole",
1865
1906
  "task",
1866
1907
  "briefing",
1908
+ "context",
1867
1909
  "workerProfile",
1868
1910
  "workerRuntime",
1869
1911
  "delegationAgentId",
@@ -1929,6 +1971,14 @@ function validateJobSpec(spec) {
1929
1971
  if ("executionRole" in spec && !isExecutionRole(spec.executionRole)) {
1930
1972
  errors.push("executionRole must be a known execution role");
1931
1973
  }
1974
+ let context;
1975
+ if (spec.context !== void 0) {
1976
+ try {
1977
+ context = parseWorkerContextPolicy(spec.context);
1978
+ } catch (error) {
1979
+ errors.push(error instanceof Error ? error.message : String(error));
1980
+ }
1981
+ }
1932
1982
  let briefing;
1933
1983
  if ("briefing" in spec && spec.briefing !== void 0) {
1934
1984
  if (typeof spec.briefing !== "string") {
@@ -2166,6 +2216,7 @@ function validateJobSpec(spec) {
2166
2216
  task
2167
2217
  };
2168
2218
  if (briefing !== void 0) out.briefing = briefing;
2219
+ if (context !== void 0) out.context = context;
2169
2220
  if (typeof spec.workerProfile === "string") out.workerProfile = spec.workerProfile;
2170
2221
  if (typeof spec.workerRuntime === "string") out.workerRuntime = spec.workerRuntime;
2171
2222
  if (typeof spec.delegationAgentId === "string") out.delegationAgentId = spec.delegationAgentId;
@@ -2444,6 +2495,13 @@ function dispatchRequestFromArgs(args, options, resultSummaryScope = "task") {
2444
2495
  }
2445
2496
  } : {}
2446
2497
  };
2498
+ if (args.context !== void 0) {
2499
+ try {
2500
+ request.context = parseWorkerContextPolicy(args.context);
2501
+ } catch (error) {
2502
+ return { ok: false, message: error instanceof Error ? error.message : String(error) };
2503
+ }
2504
+ }
2447
2505
  if ("briefing" in args && args.briefing !== void 0) {
2448
2506
  if (typeof args.briefing !== "string") return { ok: false, message: "briefing must be a string" };
2449
2507
  const briefing = args.briefing.trim();
@@ -2616,8 +2674,12 @@ var RESOLVED_DISPATCH_PLAN_ARGUMENT = "__clio_resolved_dispatch_plan";
2616
2674
  var DISPATCH_PLAN_PREPARATION_ERROR_ARGUMENT = "__clio_dispatch_plan_preparation_error";
2617
2675
  function withResolvedPlanTaskPin(request, task, options = {}) {
2618
2676
  if (task === void 0) return request;
2677
+ if (task.workerContext !== void 0 && request.contextSeed?.provenance.contentHash !== task.workerContext.contentHash)
2678
+ throw new Error("worker context: admitted seed no longer matches the plan");
2619
2679
  const {
2620
2680
  briefing: _briefing,
2681
+ context: _context,
2682
+ contextSeed: _contextSeed,
2621
2683
  failover: _failover,
2622
2684
  allowedCandidates: _candidates,
2623
2685
  agentSelection: _agentSelection,
@@ -2629,6 +2691,8 @@ function withResolvedPlanTaskPin(request, task, options = {}) {
2629
2691
  return {
2630
2692
  ...base,
2631
2693
  agentId: task.agent,
2694
+ ...task.context ? { context: structuredClone(task.context) } : {},
2695
+ ...task.workerContext && request.contextSeed ? { contextSeed: structuredClone(request.contextSeed) } : {},
2632
2696
  executionRole: task.executionRole,
2633
2697
  ...request.reservation !== void 0 && (task.stepId !== null || task.role !== void 0 && task.position !== void 0) ? {
2634
2698
  reservation: {
@@ -2846,6 +2910,10 @@ function renderPlanText(topology, tasks, costCeilingUsd, deadlineMs, source, max
2846
2910
  if (agentReasons !== void 0 && agentReasons.length > 0)
2847
2911
  lines.push(` agent-exclusions=${agentReasons.join(";")}`);
2848
2912
  }
2913
+ if (task.context !== void 0)
2914
+ lines.push(
2915
+ ` context=${task.context.mode}${task.workerContext ? ` tokens=${task.workerContext.estimatedTokens} omitted=${task.workerContext.omittedMessages} sha256=${task.workerContext.contentHash}` : ""}`
2916
+ );
2849
2917
  if (task.briefing !== void 0) {
2850
2918
  lines.push(
2851
2919
  ` briefing_bytes=${Buffer.byteLength(task.briefing, "utf8")} briefing_sha256=${createHash("sha256").update(task.briefing, "utf8").digest("hex")} briefing_preview=${JSON.stringify(safeField(task.briefing, false))}`
@@ -2866,10 +2934,20 @@ function renderPlanText(topology, tasks, costCeilingUsd, deadlineMs, source, max
2866
2934
  }
2867
2935
  function isResolvedTask(value) {
2868
2936
  if (!isRecord5(value)) return false;
2937
+ try {
2938
+ const context = value.context === void 0 ? void 0 : parseWorkerContextPolicy(value.context);
2939
+ const provenance = value.workerContext === void 0 ? void 0 : parseWorkerContextProvenance(value.workerContext);
2940
+ if (provenance && provenance.mode !== context?.mode) return false;
2941
+ if (context && context.mode !== "isolated" && !provenance) return false;
2942
+ } catch {
2943
+ return false;
2944
+ }
2869
2945
  const allowedKeys = /* @__PURE__ */ new Set([
2870
2946
  "agent",
2871
2947
  "task",
2872
2948
  "briefing",
2949
+ "context",
2950
+ "workerContext",
2873
2951
  "worktree",
2874
2952
  "apply",
2875
2953
  "worktreeDestination",
@@ -3071,6 +3149,8 @@ function resolvedDispatchPlanFromArgs(args) {
3071
3149
  agent: task.agent.trim(),
3072
3150
  task: task.task.trim(),
3073
3151
  ...task.briefing !== void 0 ? { briefing: task.briefing.trim() } : {},
3152
+ ...task.context !== void 0 ? { context: parseWorkerContextPolicy(task.context) } : {},
3153
+ ...task.workerContext !== void 0 ? { workerContext: structuredClone(task.workerContext) } : {},
3074
3154
  ...task.worktree === true ? {
3075
3155
  worktree: true,
3076
3156
  apply: task.apply ?? "merge",
@@ -3260,7 +3340,13 @@ function createRegistry(deps) {
3260
3340
  return { kind: "terminal", verdict: { kind: "not_visible", reason: `tool not registered: ${call.tool}` } };
3261
3341
  }
3262
3342
  const level = deps.autonomy?.() ?? DEFAULT_AUTONOMY_LEVEL;
3263
- const decision = applyRegisteredToolClassification(deps.safety.evaluate(call, grant ? "confirmed" : void 0), spec);
3343
+ const directDecision = applyRegisteredToolClassification(
3344
+ deps.safety.evaluate(call, grant ? "confirmed" : void 0),
3345
+ spec
3346
+ );
3347
+ const projectedCall = spec.safetyCall?.(call.args ?? {});
3348
+ const projectedDecision = projectedCall && directDecision.kind !== "block" ? applyRegisteredToolClassification(deps.safety.evaluate(projectedCall, grant ? "confirmed" : void 0), spec) : void 0;
3349
+ const decision = directDecision.kind === "block" || directDecision.kind === "ask" && projectedDecision?.kind !== "block" ? directDecision : projectedDecision ?? directDecision;
3264
3350
  if (decision.kind === "block") {
3265
3351
  return { kind: "terminal", verdict: { kind: "blocked", reason: decision.rejection.short, decision } };
3266
3352
  }
@@ -3781,7 +3867,7 @@ function annotationMessages(effects) {
3781
3867
 
3782
3868
  // src/worker/spec-contract.ts
3783
3869
  init_esm_shims();
3784
- var WORKER_SPEC_VERSION = 3;
3870
+ var WORKER_SPEC_VERSION = 4;
3785
3871
  var WORKER_RUNTIME_DESCRIPTOR_VERSION = 2;
3786
3872
  var WORKER_PROTECTED_ARTIFACT_STATE_VERSION = 1;
3787
3873
  var WORKER_EXIT_PERMISSION_REQUIRED = 3;
@@ -4159,6 +4245,10 @@ function parseWorkerSpec(value) {
4159
4245
  readEnum(runtime.auth, "WorkerSpec.runtime.auth", RUNTIME_AUTHS);
4160
4246
  readString(spec.systemPrompt, "WorkerSpec.systemPrompt", { allowEmpty: true });
4161
4247
  readWorkerPromptMessages(spec.dynamicPromptMessages, "WorkerSpec.dynamicPromptMessages");
4248
+ if (spec.contextSeed !== void 0) {
4249
+ parseWorkerContextSeed(spec.contextSeed);
4250
+ if (runtimeKind !== "http") throw new Error("worker context: native history seeds require an HTTP/Pi runtime");
4251
+ }
4162
4252
  readOptionalString(spec, "promptSignature", "WorkerSpec");
4163
4253
  readOptionalString(spec, "toolSignature", "WorkerSpec");
4164
4254
  readOptionalString(spec, "dynamicHash", "WorkerSpec");
@@ -4259,7 +4349,7 @@ function validateRehydratedWorkerRuntime(spec, runtime) {
4259
4349
  // src/domains/dispatch/types.ts
4260
4350
  init_esm_shims();
4261
4351
  function isRunOutcomeCode(value) {
4262
- return value === "vram_capacity_fit_failure" || value === "worker_tool_call_cap_exhausted" || value === "loop_guard_tools_disabled_exhausted" || value === "result_contract_exhausted" || value === "worker_final_output_missing" || value === "host_verification_rejected";
4352
+ return value === "vram_capacity_fit_failure" || value === "worker_tool_call_cap_exhausted" || value === "worker_context_exhausted" || value === "loop_guard_tools_disabled_exhausted" || value === "result_contract_exhausted" || value === "worker_final_output_missing" || value === "host_verification_rejected";
4263
4353
  }
4264
4354
  var RETRYABLE_OUTCOMES = /* @__PURE__ */ new Set(["failed", "timed_out", "stalled", "spawn_failed"]);
4265
4355
  function isTerminalRunEnvelope(run) {
@@ -5037,6 +5127,27 @@ function nonNegativeFinite(value) {
5037
5127
  return Number.isFinite(value) && value >= 0 ? value : 0;
5038
5128
  }
5039
5129
 
5130
+ // src/domains/context/worker/snapshot.ts
5131
+ init_esm_shims();
5132
+ function captureWorkerContext(source, messages) {
5133
+ const interrupted = (message) => message.role === "assistant" && (message.stopReason === "error" || message.stopReason === "aborted");
5134
+ const interruptedIds = new Set(
5135
+ messages.filter(interrupted).flatMap(messageToolCalls).map((call) => call.id)
5136
+ );
5137
+ const visible = messages.filter(
5138
+ (message) => !interrupted(message) && !(message.role === "toolResult" && interruptedIds.has(message.toolCallId))
5139
+ );
5140
+ const end = completeHistoryLength(visible, true);
5141
+ const snapshot = {
5142
+ version: 1,
5143
+ source: structuredClone(source),
5144
+ messages: structuredClone(visible.slice(0, end)),
5145
+ excludedTailMessages: visible.length - end,
5146
+ excludedInterruptedMessages: messages.length - visible.length
5147
+ };
5148
+ return { ...snapshot, contentHash: contextHash(snapshot) };
5149
+ }
5150
+
5040
5151
  // src/engine/antigravity/subprocess-runtime.ts
5041
5152
  init_esm_shims();
5042
5153
  import { spawn as spawn2 } from "node:child_process";
@@ -6338,11 +6449,16 @@ var TOOL_METADATA = {
6338
6449
  promptHint: "Use code_nav with source=workspace (default) for project code and source=clio for Clio's shipped code map; modes: symbol, path, entries, outline, deps, dependents, wiki (workspace only)."
6339
6450
  },
6340
6451
  [ToolNames.Context]: {
6341
- objective: "Return workspace, bundled-docs, or skill context.",
6452
+ objective: "Return workspace, bundled-docs, skill, or library-catalog context.",
6342
6453
  uiLabel: "Context",
6343
6454
  retrySafety: "idempotent",
6344
6455
  resultSizePolicy: observePolicy(
6345
- Math.max(OBSERVE_SELF_CAPS.contextDocs, OBSERVE_SELF_CAPS.contextSkills, OBSERVE_SELF_CAPS.contextWorkspace),
6456
+ Math.max(
6457
+ OBSERVE_SELF_CAPS.contextDocs,
6458
+ OBSERVE_SELF_CAPS.contextSkills,
6459
+ OBSERVE_SELF_CAPS.contextWorkspace,
6460
+ OBSERVE_SELF_CAPS.contextLibrary
6461
+ ),
6346
6462
  "Use a narrower query or scope to inspect omitted content."
6347
6463
  ),
6348
6464
  costLatency: "local_fast",
@@ -7090,6 +7206,8 @@ export {
7090
7206
  responseSchemaConflictsWithTools,
7091
7207
  UnsupportedResponseSchemaError,
7092
7208
  isResponseSchemaRejection,
7209
+ WORKER_CONTEXT_SPLICE_TOKENS,
7210
+ captureWorkerContext,
7093
7211
  antigravitySubprocessConfigForAutonomy,
7094
7212
  startAntigravityWorkerRun,
7095
7213
  isClaudeCodeSessionId,
@@ -7113,7 +7231,6 @@ export {
7113
7231
  decisionFactsForPermission,
7114
7232
  decisionFactsForAnswer,
7115
7233
  classifyDecisionPresentation,
7116
- ASK_USER_OTHER_LABEL,
7117
7234
  askUserExposure,
7118
7235
  cancelledAskUserResult,
7119
7236
  finalizeAskUserInterviewForHost,
@@ -7187,4 +7304,4 @@ export {
7187
7304
  taskMemoryBankDelta,
7188
7305
  parseTaskMemoryTelemetryRecord
7189
7306
  };
7190
- //# sourceMappingURL=chunk-TZ7MFRG4.js.map
7307
+ //# sourceMappingURL=chunk-NO7J45X6.js.map
@@ -0,0 +1,15 @@
1
+ import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
+ import {
3
+ init_esm_shims
4
+ } from "./chunk-ECBHH7LU.js";
5
+
6
+ // src/domains/extensions/types.ts
7
+ init_esm_shims();
8
+ function isLoadableExtension(entry) {
9
+ return entry.loadable && entry.provenance !== void 0;
10
+ }
11
+
12
+ export {
13
+ isLoadableExtension
14
+ };
15
+ //# sourceMappingURL=chunk-OH3YYA3B.js.map
@@ -1,4 +1,7 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
+ import {
3
+ isLoadableExtension
4
+ } from "./chunk-OH3YYA3B.js";
2
5
  import {
3
6
  disableExtension,
4
7
  discoverExtensionPackages,
@@ -7,7 +10,7 @@ import {
7
10
  listInstalledExtensionRecords,
8
11
  listInstalledExtensions,
9
12
  removeExtension
10
- } from "./chunk-DZK63TZJ.js";
13
+ } from "./chunk-24S3DN22.js";
11
14
  import {
12
15
  require_dist
13
16
  } from "./chunk-B5GGDIHT.js";
@@ -19,54 +22,20 @@ import {
19
22
  // src/domains/extensions/manager.ts
20
23
  init_esm_shims();
21
24
 
22
- // src/domains/extensions/resources.ts
25
+ // src/domains/extensions/snapshot-access.ts
23
26
  init_esm_shims();
24
- import { realpathSync as realpathSync3 } from "node:fs";
25
- import path3 from "node:path";
27
+ import { realpathSync as realpathSync2 } from "node:fs";
28
+ import path2 from "node:path";
26
29
 
27
30
  // src/domains/extensions/snapshot.ts
28
31
  init_esm_shims();
29
32
  var import_yaml = __toESM(require_dist(), 1);
30
33
  import { createHash } from "node:crypto";
31
- import { realpathSync as realpathSync2 } from "node:fs";
32
- import path2 from "node:path";
33
-
34
- // src/domains/extensions/resource-path.ts
35
- init_esm_shims();
36
- import { realpathSync, statSync } from "node:fs";
34
+ import { realpathSync } from "node:fs";
37
35
  import path from "node:path";
38
- function extensionResourcePath(rootPath, resourcePath) {
39
- const root = path.resolve(rootPath);
40
- const full = path.resolve(root, resourcePath);
41
- const relative = path.relative(root, full);
42
- if (relative === "" || relative === ".." || relative.startsWith(`..${path.sep}`) || path.isAbsolute(relative)) {
43
- return null;
44
- }
45
- try {
46
- const rootReal = realpathSync(root);
47
- const fullReal = realpathSync(full);
48
- const canonicalRelative = path.relative(rootReal, fullReal);
49
- if (canonicalRelative === ".." || canonicalRelative.startsWith(`..${path.sep}`) || path.isAbsolute(canonicalRelative)) {
50
- return null;
51
- }
52
- if (!statSync(fullReal).isDirectory()) return null;
53
- return fullReal;
54
- } catch {
55
- return null;
56
- }
57
- }
58
-
59
- // src/domains/extensions/types.ts
60
- init_esm_shims();
61
- function isLoadableExtension(entry) {
62
- return entry.loadable && entry.provenance !== void 0;
63
- }
64
-
65
- // src/domains/extensions/snapshot.ts
66
36
  var EXTENSION_SNAPSHOT_DIAGNOSTIC_CAP = 200;
67
37
  var EXTENSION_SNAPSHOT_DIAGNOSTIC_PER_PACKAGE_CAP = 20;
68
38
  var EXTENSION_SNAPSHOT_DIAGNOSTIC_MESSAGE_CAP = 512;
69
- var RESOURCE_KINDS = ["skills", "prompts", "agents", "fleets", "themes"];
70
39
  function canonicalJson(value) {
71
40
  if (Array.isArray(value)) return `[${value.map(canonicalJson).join(",")}]`;
72
41
  if (value !== null && typeof value === "object") {
@@ -103,38 +72,16 @@ function boundedDiagnostics(records) {
103
72
  return { entries, truncated };
104
73
  }
105
74
  function buildExtensionSnapshot(input) {
106
- const cwd = realpathSync2(path2.resolve(input.cwd));
75
+ const cwd = realpathSync(path.resolve(input.cwd));
107
76
  const records = (input.listRecords ?? listInstalledExtensionRecords)(cwd, { all: true });
108
- const resourceRoots = {
109
- skills: [],
110
- prompts: [],
111
- agents: [],
112
- fleets: [],
113
- themes: []
114
- };
115
77
  const hookSources = [];
116
78
  const digestPackages = [];
117
79
  for (const record of records) {
118
80
  const { entry } = record;
119
- const packageRoots = [];
81
+ const commandTools = [];
120
82
  let hooksDigest;
121
83
  if (isLoadableExtension(entry)) {
122
- for (const kind of RESOURCE_KINDS) {
123
- const relative = entry.resources[kind];
124
- if (!relative) continue;
125
- const resolved = extensionResourcePath(entry.rootPath, relative);
126
- if (!resolved) continue;
127
- resourceRoots[kind].push({
128
- id: entry.id,
129
- scope: entry.scope,
130
- path: resolved,
131
- rootPath: entry.rootPath,
132
- source: `extension:${entry.scope}:${entry.id}`,
133
- provenance: entry.provenance,
134
- generation: input.generation
135
- });
136
- packageRoots.push({ kind, path: resolved });
137
- }
84
+ for (const tool of entry.capabilities?.tools ?? []) commandTools.push(tool.name);
138
85
  const hookBytes = record.captured?.get("hooks.yaml");
139
86
  if (hookBytes !== void 0) {
140
87
  hooksDigest = createHash("sha256").update(hookBytes).digest("hex");
@@ -158,7 +105,7 @@ function buildExtensionSnapshot(input) {
158
105
  scope: entry.scope,
159
106
  loadable: entry.loadable,
160
107
  ...entry.provenance ? { provenance: entry.provenance } : {},
161
- resourceRoots: packageRoots,
108
+ commandTools,
162
109
  ...hooksDigest ? { hooksDigest } : {}
163
110
  });
164
111
  }
@@ -169,7 +116,6 @@ function buildExtensionSnapshot(input) {
169
116
  builtAt: (input.now ?? (() => /* @__PURE__ */ new Date()))().toISOString(),
170
117
  digest: createHash("sha256").update(canonicalJson(digestPackages)).digest("hex"),
171
118
  packages: records.map((record) => record.entry),
172
- resourceRoots,
173
119
  hookSources,
174
120
  diagnostics: boundedDiagnostics(records)
175
121
  };
@@ -183,7 +129,7 @@ function packageFingerprints(snapshot) {
183
129
  scope: entry.scope,
184
130
  loadable: entry.loadable,
185
131
  provenance: entry.provenance ?? null,
186
- resources: entry.resources
132
+ capabilities: entry.capabilities ?? null
187
133
  });
188
134
  grouped.set(entry.id, list);
189
135
  }
@@ -227,18 +173,15 @@ function bindExtensionSnapshotStore(store) {
227
173
  boundStore = store;
228
174
  }
229
175
 
230
- // src/domains/extensions/resources.ts
176
+ // src/domains/extensions/snapshot-access.ts
231
177
  function extensionSnapshotFor(cwd = process.cwd()) {
232
178
  const committed = committedExtensionSnapshot();
233
179
  try {
234
- if (committed !== null && committed.cwd === realpathSync3(path3.resolve(cwd))) return committed;
180
+ if (committed !== null && committed.cwd === realpathSync2(path2.resolve(cwd))) return committed;
235
181
  } catch {
236
182
  }
237
183
  return buildExtensionSnapshot({ cwd, generation: 0 });
238
184
  }
239
- function enabledExtensionResourceRoots(kind, cwd = process.cwd()) {
240
- return [...extensionSnapshotFor(cwd).resourceRoots[kind]];
241
- }
242
185
 
243
186
  // src/domains/extensions/index.ts
244
187
  init_esm_shims();
@@ -296,9 +239,6 @@ function createExtensionsBundle(_context, options = {}) {
296
239
  remove(id, options2 = {}) {
297
240
  return removeExtension(id, options2);
298
241
  },
299
- resourceRoots(kind, requestedCwd) {
300
- return enabledExtensionResourceRoots(kind, requestedCwd ?? cwd());
301
- },
302
242
  snapshot() {
303
243
  return store.current();
304
244
  },
@@ -354,7 +294,6 @@ var ExtensionsDomainModule = {
354
294
  export {
355
295
  EXTENSION_SNAPSHOT_DIAGNOSTIC_MESSAGE_CAP,
356
296
  extensionSnapshotFor,
357
- enabledExtensionResourceRoots,
358
297
  ExtensionsDomainModule
359
298
  };
360
- //# sourceMappingURL=chunk-22PQ4TX4.js.map
299
+ //# sourceMappingURL=chunk-P4DL2LM5.js.map