@iowarp/clio-coder 0.4.0 → 0.4.2

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 (751) hide show
  1. package/CHANGELOG.md +131 -0
  2. package/CONTRIBUTING.md +59 -36
  3. package/README.md +407 -375
  4. package/SECURITY.md +2 -1
  5. package/dist/{acp-G5WJBNCT.js → acp-TMDQZDIG.js} +14 -14
  6. package/dist/{agents-FMV2Q5G4.js → agents-5N5NG3XG.js} +45 -34
  7. package/dist/assets/codewiki.json +1 -1
  8. package/dist/{auth-3IDSJEIK.js → auth-Z5CCBXKQ.js} +22 -21
  9. package/dist/{builtins-XCZWXSC7.js → builtins-K6TNDT24.js} +6 -6
  10. package/dist/{chunk-GR5G2PVF.js → chunk-2HFQNRV3.js} +15 -10
  11. package/dist/{chunk-PQEFIJ36.js → chunk-2LEAKD4C.js} +1 -2
  12. package/dist/{chunk-HJJTYUHX.js → chunk-2NHR3NAY.js} +168 -1406
  13. package/dist/chunk-2X4RYJTJ.js +39 -0
  14. package/dist/{chunk-UXMFQ54G.js → chunk-2Z2IKEXI.js} +39 -43
  15. package/dist/{chunk-SST6Z5JA.js → chunk-336NSSKI.js} +1 -1
  16. package/dist/chunk-34BHNEE3.js +1846 -0
  17. package/dist/{chunk-YJX4SHTD.js → chunk-35MSIRKH.js} +9 -4
  18. package/dist/chunk-3EBYEESD.js +314 -0
  19. package/dist/{chunk-CTJ4RNAA.js → chunk-3F7VUY77.js} +2 -2
  20. package/dist/chunk-3KIPBMUA.js +308 -0
  21. package/dist/chunk-3M6DQK6S.js +362 -0
  22. package/dist/{chunk-BPKCPIL7.js → chunk-462T4EGZ.js} +3 -3
  23. package/dist/{chunk-QLFS5GO2.js → chunk-4JDLP6ZS.js} +44 -37
  24. package/dist/{chunk-LDQ2ZF2M.js → chunk-4O6MANBS.js} +6 -6
  25. package/dist/{chunk-O6TL7WWY.js → chunk-54ODD65L.js} +6 -6
  26. package/dist/{chunk-JDG2WCRO.js → chunk-5KW52TEP.js} +5 -5
  27. package/dist/{chunk-NHLBIGRH.js → chunk-5PFYMY2V.js} +41 -18
  28. package/dist/{chunk-P3FOHJT4.js → chunk-72GZI5EV.js} +2 -2
  29. package/dist/chunk-77QIVUZB.js +1334 -0
  30. package/dist/{chunk-HWHKMHUA.js → chunk-7BHIY2MW.js} +9 -15
  31. package/dist/{chunk-FWDFM5ZU.js → chunk-AK5XEFVZ.js} +3 -3
  32. package/dist/{chunk-VAZSBTKF.js → chunk-AZ4WMN4W.js} +2 -2
  33. package/dist/{chunk-B7OBL7PK.js → chunk-B74PXLU7.js} +21 -11
  34. package/dist/{chunk-CY6FY24N.js → chunk-B7HM5Z7T.js} +15 -15
  35. package/dist/{chunk-ULC6OTWO.js → chunk-BO7Y52RY.js} +88 -27
  36. package/dist/chunk-BTK3SSSK.js +67 -0
  37. package/dist/{chunk-M6L6IDJG.js → chunk-BWH6N36D.js} +1 -1
  38. package/dist/{chunk-DQITNCXG.js → chunk-BYMNWQ7O.js} +149 -159
  39. package/dist/{chunk-HI63TFOG.js → chunk-CDNVLKUX.js} +3 -3
  40. package/dist/{chunk-Z4TXYIEG.js → chunk-CRFOIAX3.js} +10 -10
  41. package/dist/{chunk-UM7N4G5A.js → chunk-CWVRRIEI.js} +2 -2
  42. package/dist/{chunk-3BT2XMV4.js → chunk-CYZW7JHJ.js} +53 -60
  43. package/dist/{chunk-BKFM6EJV.js → chunk-D4CJV46V.js} +2 -2
  44. package/dist/chunk-D7E7WCDF.js +27 -0
  45. package/dist/{chunk-X3YGUTOB.js → chunk-DYHAXKHD.js} +90 -62
  46. package/dist/{chunk-QBJA7R7N.js → chunk-DZAW46HP.js} +3 -3
  47. package/dist/{chunk-MLKNTWH2.js → chunk-DZEK6CJN.js} +22 -22
  48. package/dist/{chunk-K5C3NCBD.js → chunk-E7GT7O5N.js} +5 -5
  49. package/dist/{chunk-FQ4SKYE4.js → chunk-EBY63B7G.js} +2 -5
  50. package/dist/chunk-F2I26BDK.js +66 -0
  51. package/dist/{chunk-HLW2MRKE.js → chunk-F4EKGO4N.js} +3 -1
  52. package/dist/{chunk-RAPCMZL4.js → chunk-FSP7CMNU.js} +9 -1
  53. package/dist/{chunk-32KWKNSF.js → chunk-FVDGR2ZL.js} +4 -4
  54. package/dist/{chunk-TZSKNMZG.js → chunk-GTUD2WMY.js} +2 -1
  55. package/dist/{chunk-SJ5ZKQ4S.js → chunk-HIICAHCJ.js} +2 -2
  56. package/dist/chunk-HJWWJ6IL.js +184 -0
  57. package/dist/{chunk-WZR7K7ZX.js → chunk-HKMD33FO.js} +32 -83
  58. package/dist/chunk-HLAFFSEK.js +360 -0
  59. package/dist/{chunk-VO67MWHC.js → chunk-HRQMFLJP.js} +3 -3
  60. package/dist/{chunk-KFZI4NIL.js → chunk-I64IFBLB.js} +152 -31
  61. package/dist/{chunk-BKFJHQCA.js → chunk-I66EAJFY.js} +2 -2
  62. package/dist/{chunk-BUMFYQFY.js → chunk-I66ZTYNP.js} +543 -267
  63. package/dist/{chunk-2OQE55CK.js → chunk-I7XBWTYH.js} +2 -2
  64. package/dist/{chunk-GKF55TAZ.js → chunk-IDNA72AH.js} +104 -3
  65. package/dist/{chunk-GCSMB2KY.js → chunk-IKOZFYBN.js} +1 -1
  66. package/dist/{chunk-J4W7KFM7.js → chunk-IKSLQ4XV.js} +5439 -3475
  67. package/dist/{chunk-6DB53AJS.js → chunk-IMXMHHMQ.js} +171 -30
  68. package/dist/{chunk-AB44T6BB.js → chunk-JBCS7CRR.js} +8 -7
  69. package/dist/{chunk-BBVJUZHB.js → chunk-JIEGK6UF.js} +5 -173
  70. package/dist/{chunk-SP2RXXYO.js → chunk-JWJGP5DQ.js} +10 -10
  71. package/dist/{chunk-HZHHCK24.js → chunk-KKOJXO6R.js} +527 -325
  72. package/dist/chunk-KPXDY6QF.js +47 -0
  73. package/dist/{chunk-LQ3DZAMX.js → chunk-LJID3DYZ.js} +8 -2
  74. package/dist/{chunk-7MCTRUCE.js → chunk-M2DAX4F6.js} +2 -2
  75. package/dist/{chunk-VEO4AP2K.js → chunk-M2WXEHER.js} +4 -3
  76. package/dist/{chunk-YPI3QQCF.js → chunk-MCEPRMZW.js} +2 -4
  77. package/dist/{chunk-YDFRH54B.js → chunk-MCMZMDAC.js} +4 -4
  78. package/dist/{chunk-J5Q24KAG.js → chunk-MNJGS2IN.js} +5 -6
  79. package/dist/{chunk-76ONBSIA.js → chunk-MQXIVJ35.js} +14 -5
  80. package/dist/chunk-NDDGJUXD.js +81 -0
  81. package/dist/{chunk-TVHHYFHE.js → chunk-NEDJ26B5.js} +2 -2
  82. package/dist/chunk-NMJXSHBJ.js +283 -0
  83. package/dist/{chunk-VYMXRQI6.js → chunk-O3YUNJZ2.js} +88 -100
  84. package/dist/{chunk-VO2LKSTM.js → chunk-O42A54GG.js} +2 -2
  85. package/dist/{chunk-Z2RR6MAK.js → chunk-P75RZCJW.js} +28 -6
  86. package/dist/{chunk-NHCZP4K7.js → chunk-PBP4B7XR.js} +2 -2
  87. package/dist/{chunk-DYJP44XW.js → chunk-PGF63K6I.js} +2 -2
  88. package/dist/chunk-PJX3WQUQ.js +42 -0
  89. package/dist/{chunk-ZGVHUX3M.js → chunk-PMZVFWSR.js} +2 -2
  90. package/dist/{chunk-2JDWVJND.js → chunk-Q4XWMHX6.js} +5 -7
  91. package/dist/{chunk-W5VSYASO.js → chunk-QQLGQY2A.js} +46 -87
  92. package/dist/{chunk-KMVISBZR.js → chunk-RKSR6VSF.js} +1 -1
  93. package/dist/{chunk-C2LTL2W6.js → chunk-RLYRBIYQ.js} +463 -180
  94. package/dist/{chunk-4ZG3XFUR.js → chunk-S66XZJOF.js} +14 -23
  95. package/dist/{chunk-I5VEOC6I.js → chunk-SSEYRH53.js} +13 -14
  96. package/dist/chunk-SZAA6XDG.js +30 -0
  97. package/dist/{chunk-CODPRO7Q.js → chunk-TPEQIQIE.js} +7 -7
  98. package/dist/{chunk-QLL7ILRG.js → chunk-UBRFI4HS.js} +1151 -614
  99. package/dist/{chunk-O4XIVISU.js → chunk-UH347SHR.js} +227 -47
  100. package/dist/{chunk-OQBA45DZ.js → chunk-UH632ZYL.js} +2 -2
  101. package/dist/chunk-UXCU4E3T.js +303 -0
  102. package/dist/{chunk-CMZWFGD2.js → chunk-VAVR4IJY.js} +19 -15
  103. package/dist/{chunk-IQ7KR472.js → chunk-VIA6RFQZ.js} +8 -13
  104. package/dist/{chunk-V5DHCITQ.js → chunk-VKPAQYEB.js} +49 -19
  105. package/dist/{chunk-5LXZXPKX.js → chunk-VN3SHNBN.js} +2 -2
  106. package/dist/{chunk-UOSL25KY.js → chunk-VXMFAE2W.js} +1 -1
  107. package/dist/{chunk-3XML7CDN.js → chunk-W4YEMFBX.js} +3 -3
  108. package/dist/{chunk-U77AMWDL.js → chunk-W6NIE6OW.js} +44 -23
  109. package/dist/{chunk-BBVYXMFO.js → chunk-WNP7O5WZ.js} +2 -2
  110. package/dist/{chunk-QREDIESB.js → chunk-X7IARSHT.js} +15 -9
  111. package/dist/{chunk-3URVFKWK.js → chunk-XE3PCIXH.js} +5 -5
  112. package/dist/{chunk-FEFIFZTL.js → chunk-XGDPUNND.js} +2 -2
  113. package/dist/{chunk-F4CKPOEQ.js → chunk-XOXV5GKE.js} +119 -38
  114. package/dist/chunk-XQRY4DTA.js +657 -0
  115. package/dist/{chunk-NYS75XW5.js → chunk-YAKGTXEV.js} +5 -3
  116. package/dist/{chunk-NQQH3YT7.js → chunk-YJISEZKC.js} +3 -3
  117. package/dist/{chunk-X75E3D2N.js → chunk-ZGNYYXQ6.js} +18 -16
  118. package/dist/{chunk-LY4S7GJC.js → chunk-ZNT2M6TG.js} +20 -18
  119. package/dist/{chunk-HKIYEGME.js → chunk-ZTJUVLTU.js} +2 -2
  120. package/dist/{chunk-IBEBSCYA.js → chunk-ZW4HH5JJ.js} +43 -34
  121. package/dist/{chunk-2ANTL7MR.js → chunk-ZW55JB7N.js} +2 -2
  122. package/dist/cli/index.js +38 -37
  123. package/dist/{clio-2JXHBBY5.js → clio-7VB377CC.js} +12 -13
  124. package/dist/{code-nav-3YYRMYNF.js → code-nav-YVLCYA7V.js} +86 -18
  125. package/dist/codewiki/build-worker.js +1 -1
  126. package/dist/{compile-cache-7FPE6PS3.js → compile-cache-OQAVB7Y5.js} +2 -4
  127. package/dist/{components-RYZV4JGP.js → components-UBWCQSRW.js} +4 -4
  128. package/dist/{config-QZPCMYSO.js → config-4HVOS65E.js} +112 -63
  129. package/dist/{configure-TEGEBYCA.js → configure-PIWO7B24.js} +25 -22
  130. package/dist/{context-E6H5RNMC.js → context-IYEHL3WQ.js} +53 -47
  131. package/dist/{context-GSXUE4CT.js → context-KQYIWPWT.js} +68 -42
  132. package/dist/{context-AV7OEZ4D.js → context-N6ZE3LGJ.js} +11 -11
  133. package/dist/{context-clear-SHIBYK6T.js → context-clear-G4OGZJDS.js} +53 -47
  134. package/dist/{context-working-set-5ZGKPGZQ.js → context-working-set-BWLF6LJP.js} +12 -11
  135. package/dist/{dispatch-runner-EFMJT4LD.js → dispatch-runner-2QQAITS3.js} +67 -58
  136. package/dist/{docs-23KQS3XK.js → docs-PD3EXDKU.js} +20 -25
  137. package/dist/doctor-LHBD36VU.js +773 -0
  138. package/dist/{eval-TFBYQH4H.js → eval-C45FYRJ6.js} +68 -49
  139. package/dist/{eval-inventory-SXH7PDKX.js → eval-inventory-6DEJPLBF.js} +7 -8
  140. package/dist/{evidence-ERGESKGN.js → evidence-6SHONYAF.js} +50 -44
  141. package/dist/{evolve-VDXTSYCJ.js → evolve-KRKMV72X.js} +49 -43
  142. package/dist/{extensions-7BGBHN57.js → extensions-KPZ2UHBB.js} +8 -6
  143. package/dist/{fleet-2RRVDF2V.js → fleet-IVTCKDHT.js} +93 -79
  144. package/dist/{fleet-commands-VJ726XIA.js → fleet-commands-EDWL3IT7.js} +10 -9
  145. package/dist/{fleet-decisions-EPAPM3XJ.js → fleet-decisions-YP3YEFGK.js} +6 -6
  146. package/dist/{fleet-graph-JF5QOATM.js → fleet-graph-ZFWKHY2M.js} +19 -15
  147. package/dist/{fleet-inspect-VLY4S7QM.js → fleet-inspect-FVUNCBML.js} +50 -45
  148. package/dist/{fleet-preflight-AIZUEJOY.js → fleet-preflight-UN5XED4R.js} +5 -9
  149. package/dist/{fleet-validate-AJRPDMDV.js → fleet-validate-XOWC4HSX.js} +22 -17
  150. package/dist/{fleet-verify-JFEL2L3H.js → fleet-verify-UN3SODEL.js} +48 -43
  151. package/dist/fleet-view-TWHJKCN6.js +96 -0
  152. package/dist/{init-DN2WWLFE.js → init-T2QORQ3Y.js} +72 -66
  153. package/dist/{install-XGLBQY5E.js → install-NKNG7KD4.js} +2 -2
  154. package/dist/{interop-OZBKXAYL.js → interop-IN5I2A66.js} +13 -11
  155. package/dist/{library-YWZG7IMW.js → library-LSCATDLZ.js} +23 -18
  156. package/dist/{memory-I4C4HMLW.js → memory-HYOKAGGJ.js} +51 -45
  157. package/dist/{models-CEYXJBO6.js → models-2GPMFYCM.js} +42 -33
  158. package/dist/{monitor-NZ6GCI3P.js → monitor-E4ASVUJH.js} +56 -50
  159. package/dist/{orchestrator-GCGQ4N5I.js → orchestrator-DDMPR3PY.js} +2676 -1507
  160. package/dist/{panes-KY6W3V2E.js → panes-E3RUXOW5.js} +5 -5
  161. package/dist/panes-IXKLOKA2.js +75 -0
  162. package/dist/{paths-II4K7DNR.js → paths-L7LGY6RN.js} +4 -4
  163. package/dist/{reset-DQ6FGCSH.js → reset-OAQP3W4O.js} +7 -8
  164. package/dist/{resources-BB3MVJMD.js → resources-OTRSN34L.js} +23 -17
  165. package/dist/{run-H2GQDUER.js → run-5DEYH5QK.js} +95 -84
  166. package/dist/{share-GTJN6A5O.js → share-IHWTLO3M.js} +26 -19
  167. package/dist/{skills-L55TEW6R.js → skills-IYMXMKW4.js} +25 -20
  168. package/dist/{skills-eval-XVXPH2JI.js → skills-eval-DROHSJAR.js} +63 -65
  169. package/dist/{skills-inventory-S4MXPJFV.js → skills-inventory-D7X4L4ZX.js} +21 -16
  170. package/dist/{slash-commands-ZSGASKJC.js → slash-commands-QBM7UZ3B.js} +38 -33
  171. package/dist/{steer-RZGSCY4R.js → steer-Z5DO23FJ.js} +3 -3
  172. package/dist/{support-PKEUNNQL.js → support-U7QOWY26.js} +6 -6
  173. package/dist/{targets-NCPZ644J.js → targets-P2FUC4IL.js} +64 -61
  174. package/dist/{terminal-lease-44SV3YCN.js → terminal-lease-YREJ3JX2.js} +15 -10
  175. package/dist/{tools-DAF3DI3C.js → tools-5B7RO6MV.js} +10 -8
  176. package/dist/{trace-FYVW2MQA.js → trace-YMGMUM6A.js} +101 -8
  177. package/dist/{tui-primitives-2AKXQNZK.js → tui-primitives-K5PASC3O.js} +8 -4
  178. package/dist/{uninstall-DW2PNOIC.js → uninstall-N34PCTGJ.js} +4 -6
  179. package/dist/{upgrade-3XPP6OQL.js → upgrade-PXK3S2YM.js} +36 -61
  180. package/dist/{usage-3NLHGTU2.js → usage-ME5MPXGX.js} +58 -53
  181. package/dist/{verifiers-SSQONKRT.js → verifiers-BVZ7IWOO.js} +10 -9
  182. package/dist/{verify-3U6J7FZI.js → verify-5K7ZKQFC.js} +9 -8
  183. package/dist/{web-fetch-S7RR6GZ7.js → web-fetch-MPARV2K7.js} +2 -3
  184. package/dist/{wiki-generate-CEHYGPGQ.js → wiki-generate-F5W5QTYY.js} +74 -70
  185. package/dist/{with-panes-MKB46MPQ.js → with-panes-BYOJCLAM.js} +78 -246
  186. package/dist/worker/entry.js +83 -63
  187. package/docs/README.md +176 -81
  188. package/docs/{acp.md → architecture/acp.md} +36 -20
  189. package/docs/{alcf-provider.md → architecture/alcf-provider.md} +8 -5
  190. package/docs/{architecture.md → architecture/architecture.md} +43 -22
  191. package/docs/{artifact-placement.md → architecture/artifact-placement.md} +26 -23
  192. package/docs/architecture/artifact-versions.md +90 -0
  193. package/docs/{capacity-and-scheduling.md → architecture/capacity-and-scheduling.md} +26 -13
  194. package/docs/{context-engine.md → architecture/context-engine.md} +25 -25
  195. package/docs/{context-working-set.md → architecture/context-working-set.md} +13 -10
  196. package/docs/{dispatch-architecture-rationale.md → architecture/dispatch-architecture-rationale.md} +12 -9
  197. package/docs/{dispatch-typed-intent.md → architecture/dispatch-typed-intent.md} +68 -46
  198. package/docs/{evidence-and-memory.md → architecture/evidence-and-memory.md} +23 -16
  199. package/docs/{middleware-and-components.md → architecture/middleware-and-components.md} +11 -5
  200. package/docs/{model-catalog.md → architecture/model-catalog.md} +40 -17
  201. package/docs/{observability.md → architecture/observability.md} +26 -13
  202. package/docs/{pi-boundary.md → architecture/pi-boundary.md} +24 -11
  203. package/docs/{prompt-envelope-and-tools.md → architecture/prompt-envelope-and-tools.md} +55 -20
  204. package/docs/{provider-adapter-cookbook.md → architecture/provider-adapter-cookbook.md} +35 -24
  205. package/docs/{safety-model.md → architecture/safety-model.md} +20 -15
  206. package/docs/{session-lifecycle.md → architecture/session-lifecycle.md} +8 -5
  207. package/docs/architecture/time-conventions.md +125 -0
  208. package/docs/{trace-store.md → architecture/trace-store.md} +26 -13
  209. package/docs/{tui-design.md → architecture/tui-design.md} +13 -13
  210. package/docs/{worker-dispatch-mechanics.md → architecture/worker-dispatch-mechanics.md} +27 -30
  211. package/docs/{built-in-agents.md → guide/built-in-agents.md} +70 -46
  212. package/docs/{commands-and-modes.md → guide/commands-and-modes.md} +73 -62
  213. package/docs/{configuration-and-targets.md → guide/configuration-and-targets.md} +323 -444
  214. package/docs/guide/configuration-reference.md +1158 -0
  215. package/docs/{environment-variables.md → guide/environment-variables.md} +31 -27
  216. package/docs/{exit-codes-and-output.md → guide/exit-codes-and-output.md} +8 -3
  217. package/docs/{extensions-and-sharing.md → guide/extensions-and-sharing.md} +41 -14
  218. package/docs/{fleet-dispatch.md → guide/fleet-dispatch.md} +47 -49
  219. package/docs/{glossary.md → guide/glossary.md} +14 -11
  220. package/docs/{installation-and-lifecycle.md → guide/installation-and-lifecycle.md} +45 -14
  221. package/docs/guide/panes-and-files.md +290 -0
  222. package/docs/{proactive-memory.md → guide/proactive-memory.md} +79 -66
  223. package/docs/{resource-library.md → guide/resource-library.md} +13 -4
  224. package/docs/{skills-marketplace.md → guide/skills-marketplace.md} +7 -3
  225. package/docs/{tool-usage.md → guide/tool-usage.md} +87 -23
  226. package/docs/{troubleshooting.md → guide/troubleshooting.md} +10 -5
  227. package/docs/{config-knobs-audit.md → history/config-knobs-audit.md} +13 -10
  228. package/docs/history/release-cut-checklist.md +207 -0
  229. package/docs/{development-pipeline.md → process/development-pipeline.md} +24 -26
  230. package/docs/process/documentation-coverage.md +100 -0
  231. package/docs/process/documentation-guide.md +187 -0
  232. package/docs/{eval-runner.md → process/eval-runner.md} +41 -50
  233. package/docs/{evals-internal.md → process/evals-internal.md} +10 -10
  234. package/docs/{evolution.md → process/evolution.md} +2 -2
  235. package/docs/{fleet-demo-runbook.md → process/fleet-demo-runbook.md} +17 -10
  236. package/docs/{git-commit-provenance.md → process/git-commit-provenance.md} +11 -4
  237. package/docs/{performance-methodology.md → process/performance-methodology.md} +87 -69
  238. package/docs/{scientific-validation.md → process/scientific-validation.md} +4 -4
  239. package/evals/README.md +5 -0
  240. package/evals/behavioral-corpus-grader.mjs +103 -0
  241. package/evals/behavioral-machinery-baseline.json +2276 -0
  242. package/evals/behavioral-machinery-driver.ts +250 -0
  243. package/evals/behavioral-machinery-support.ts +253 -0
  244. package/evals/behavioral-machinery.yaml +614 -0
  245. package/evals/behavioral-model-negative-control.yaml +68 -0
  246. package/evals/behavioral-model.yaml +216 -0
  247. package/evals/fixtures/behavioral-facts.txt +3 -0
  248. package/evals/fixtures/behavioral-main.ts +7 -0
  249. package/evals/fixtures/decoy/note.txt +2 -0
  250. package/evals/fixtures/private/credentials.txt +1 -0
  251. package/evals/tracked-metrics-baseline.yaml +229 -0
  252. package/evals/tracked-metrics-grader.mjs +129 -0
  253. package/package.json +13 -21
  254. package/skills/README.md +51 -42
  255. package/skills/coding/ast-grep/SKILL.md +9 -3
  256. package/skills/coding/coding-standards/SKILL.md +9 -3
  257. package/skills/coding/prototype/SKILL.md +9 -3
  258. package/skills/coding/tdd/SKILL.md +9 -3
  259. package/skills/context/context-handoff/SKILL.md +13 -4
  260. package/skills/context/context-handoff/evals.md +3 -3
  261. package/skills/context/context-prime/SKILL.md +9 -3
  262. package/skills/context/context-prime/evals.md +2 -2
  263. package/skills/git/file-ticket/SKILL.md +10 -5
  264. package/skills/git/file-ticket/evals.md +2 -2
  265. package/skills/git/fix-issue/SKILL.md +12 -5
  266. package/skills/git/fix-issue/evals.md +4 -4
  267. package/skills/git/resolve-merge-conflicts/SKILL.md +9 -3
  268. package/skills/git/resolve-merge-conflicts/evals.md +2 -2
  269. package/skills/git/ship/SKILL.md +10 -4
  270. package/skills/git/ship/evals.md +4 -4
  271. package/skills/git/worktree-create/SKILL.md +8 -3
  272. package/skills/git/worktree-create/evals.md +6 -6
  273. package/skills/git/worktree-merge/SKILL.md +8 -3
  274. package/skills/git/worktree-merge/evals.md +6 -6
  275. package/skills/meta/{clio-dev → clio-coder-dev}/SKILL.md +22 -12
  276. package/skills/meta/{clio-dev → clio-coder-dev}/evals.md +5 -4
  277. package/skills/meta/clio-coder-test/SKILL.md +146 -0
  278. package/skills/meta/{clio-test → clio-coder-test}/evals.md +10 -5
  279. package/skills/meta/clio-coder-test/references/harness.md +102 -0
  280. package/skills/meta/clio-coder-test/references/test-map.md +96 -0
  281. package/skills/meta/credentials/SKILL.md +10 -3
  282. package/skills/meta/find-skills/SKILL.md +9 -3
  283. package/skills/meta/herdr/SKILL.md +9 -3
  284. package/skills/meta/skill-craft/SKILL.md +39 -16
  285. package/skills/planning/architecture/SKILL.md +9 -3
  286. package/skills/planning/backlog/SKILL.md +9 -3
  287. package/skills/planning/prd/SKILL.md +9 -3
  288. package/skills/planning/product-intent/SKILL.md +9 -3
  289. package/skills/planning/tech-spec/SKILL.md +9 -3
  290. package/skills/registry.yaml +66 -66
  291. package/skills/research/arxiv-literature/SKILL.md +9 -3
  292. package/skills/research/experiment-protocol/SKILL.md +10 -3
  293. package/skills/research/scientific-debugging/SKILL.md +10 -3
  294. package/skills/research/scientific-debugging/evals.md +2 -2
  295. package/skills/research/scientific-modernization/SKILL.md +10 -3
  296. package/skills/skill-marketplace.json +285 -66
  297. package/skills/workflow/cut-it/SKILL.md +11 -3
  298. package/skills/workflow/design-council/SKILL.md +12 -3
  299. package/skills/workflow/grill-me/SKILL.md +9 -3
  300. package/skills/workflow/workflow-distiller/SKILL.md +9 -3
  301. package/src/cli/acp.ts +2 -2
  302. package/src/cli/args.ts +2 -2
  303. package/src/cli/auth.ts +2 -2
  304. package/src/cli/bootstrap-generate.ts +6 -6
  305. package/src/cli/clio.ts +6 -1
  306. package/src/cli/config-inspect.ts +68 -15
  307. package/src/cli/configure-interop.ts +1 -1
  308. package/src/cli/configure.ts +27 -31
  309. package/src/cli/default-target.ts +1 -1
  310. package/src/cli/docs.ts +28 -20
  311. package/src/cli/doctor-naming.ts +323 -0
  312. package/src/cli/doctor-panes.ts +46 -14
  313. package/src/cli/doctor-toolchain.ts +31 -10
  314. package/src/cli/doctor.ts +15 -1
  315. package/src/cli/eval-inventory.ts +8 -8
  316. package/src/cli/eval.ts +1 -2
  317. package/src/cli/evidence-detail.ts +1 -1
  318. package/src/cli/evidence-inventory.ts +1 -1
  319. package/src/cli/extensions.ts +2 -1
  320. package/src/cli/fleet-decisions.ts +1 -1
  321. package/src/cli/fleet-inspect.ts +1 -1
  322. package/src/cli/fleet-preflight.ts +1 -1
  323. package/src/cli/fleet-verify.ts +1 -1
  324. package/src/cli/fleet-view.ts +40 -23
  325. package/src/cli/fleet.ts +9 -6
  326. package/src/cli/index.ts +2 -1
  327. package/src/cli/internal-dispatch.ts +3 -4
  328. package/src/cli/interop-inspect.ts +2 -2
  329. package/src/cli/models.ts +3 -3
  330. package/src/cli/modes/print.ts +1 -1
  331. package/src/cli/panes.ts +19 -5
  332. package/src/cli/reset.ts +1 -1
  333. package/src/cli/run.ts +13 -17
  334. package/src/cli/share.ts +6 -2
  335. package/src/cli/skills-eval.ts +14 -14
  336. package/src/cli/targets.ts +25 -30
  337. package/src/cli/trace-inspect.ts +1 -1
  338. package/src/cli/trace.ts +96 -4
  339. package/src/cli/uninstall.ts +2 -2
  340. package/src/cli/upgrade.ts +29 -34
  341. package/src/cli/usage.ts +2 -2
  342. package/src/cli/validate-model.ts +1 -1
  343. package/src/cli/verifiers-inspect.ts +1 -1
  344. package/src/cli/wiki-generate.ts +6 -6
  345. package/src/core/artifact-paths.ts +1 -1
  346. package/src/core/bash-exec.ts +132 -87
  347. package/src/core/boot-trace.ts +3 -3
  348. package/src/core/bus-events.ts +51 -6
  349. package/src/core/bus-trace.ts +2 -2
  350. package/src/core/compile-cache.ts +1 -1
  351. package/src/core/config.ts +1066 -886
  352. package/src/core/defaults.ts +326 -530
  353. package/src/core/dispatch-outcome.ts +16 -0
  354. package/src/core/domain-loader.ts +6 -4
  355. package/src/core/event-bus.ts +1 -1
  356. package/src/core/file-references.ts +78 -88
  357. package/src/core/git-commit-attribution.ts +3 -9
  358. package/src/core/guardrails.ts +33 -52
  359. package/src/core/naming-compat.ts +45 -0
  360. package/src/core/naming-events.ts +62 -0
  361. package/src/core/prompt-hint.ts +9 -0
  362. package/src/core/recent-models.ts +1 -7
  363. package/src/core/residency-protection.ts +4 -8
  364. package/src/core/resolve-config-value.ts +1 -1
  365. package/src/core/response-model-id.ts +0 -14
  366. package/src/core/session-routing.ts +84 -74
  367. package/src/core/skill-activation.ts +18 -0
  368. package/src/core/termination.ts +4 -4
  369. package/src/core/timers.ts +2 -12
  370. package/src/domains/agents/builtins/architect.md +2 -3
  371. package/src/domains/agents/builtins/coder.md +3 -2
  372. package/src/domains/agents/builtins/debugger.md +2 -2
  373. package/src/domains/agents/builtins/documenter.md +2 -2
  374. package/src/domains/agents/builtins/git-master.md +1 -1
  375. package/src/domains/agents/builtins/oracle.md +1 -1
  376. package/src/domains/agents/builtins/provenance.md +1 -1
  377. package/src/domains/agents/builtins/researcher.md +1 -1
  378. package/src/domains/agents/builtins/scout.md +1 -1
  379. package/src/domains/agents/builtins/tester.md +2 -2
  380. package/src/domains/agents/builtins/verifier.md +2 -2
  381. package/src/domains/agents/builtins/wiki-writer.md +1 -1
  382. package/src/domains/agents/catalog.ts +14 -26
  383. package/src/domains/agents/contract.ts +2 -0
  384. package/src/domains/agents/extension.ts +26 -4
  385. package/src/domains/agents/registry.ts +7 -7
  386. package/src/domains/agents/result-contract.ts +1 -1
  387. package/src/domains/agents/spec.ts +0 -11
  388. package/src/domains/config/classify.ts +35 -47
  389. package/src/domains/config/extension.ts +5 -5
  390. package/src/domains/config/keybindings.ts +56 -47
  391. package/src/domains/config/watcher.ts +1 -1
  392. package/src/domains/context/codewiki/indexer.ts +1 -1
  393. package/src/domains/context/extension.ts +3 -6
  394. package/src/domains/context/prompt-context.ts +1 -1
  395. package/src/domains/context/wiki/assemble.ts +2 -2
  396. package/src/domains/context/working-set/path-index.ts +1 -0
  397. package/src/domains/context/working-set/replay/metrics.ts +0 -4
  398. package/src/domains/context/working-set/replay/report.ts +1 -1
  399. package/src/domains/context/working-set/replay/synthetic.ts +2 -2
  400. package/src/domains/dispatch/active-route-planner.ts +2 -2
  401. package/src/domains/dispatch/agent-candidates.ts +1 -1
  402. package/src/domains/dispatch/agent-ledger-store.ts +1 -1
  403. package/src/domains/dispatch/agent-ledger.ts +1 -1
  404. package/src/domains/dispatch/assignment.ts +5 -5
  405. package/src/domains/dispatch/capability-match.ts +10 -0
  406. package/src/domains/dispatch/capacity-lease.ts +2 -5
  407. package/src/domains/dispatch/code-step.ts +1 -1
  408. package/src/domains/dispatch/contract.ts +2 -2
  409. package/src/domains/dispatch/extension.ts +169 -82
  410. package/src/domains/dispatch/fleet-node-prompt.ts +1 -1
  411. package/src/domains/dispatch/fleet-preflight.ts +8 -17
  412. package/src/domains/dispatch/fleet-run.ts +0 -7
  413. package/src/domains/dispatch/gate-decisions.ts +25 -14
  414. package/src/domains/dispatch/host-verification.ts +435 -39
  415. package/src/domains/dispatch/intent-requirements.ts +10 -0
  416. package/src/domains/dispatch/intent.ts +18 -1
  417. package/src/domains/dispatch/joint-route-resolver.ts +1 -1
  418. package/src/domains/dispatch/path-scope.ts +220 -70
  419. package/src/domains/dispatch/placement.ts +2 -2
  420. package/src/domains/dispatch/receipt-findings.ts +1 -1
  421. package/src/domains/dispatch/receipt-integrity.ts +20 -8
  422. package/src/domains/dispatch/reservation-store.ts +0 -23
  423. package/src/domains/dispatch/route-decision.ts +1 -1
  424. package/src/domains/dispatch/route-history.ts +1 -1
  425. package/src/domains/dispatch/route-policy.ts +1 -1
  426. package/src/domains/dispatch/route-readiness.ts +0 -28
  427. package/src/domains/dispatch/run-event-journal.ts +9 -19
  428. package/src/domains/dispatch/state.ts +2 -3
  429. package/src/domains/dispatch/tool-stats.ts +1 -1
  430. package/src/domains/dispatch/transport.ts +47 -40
  431. package/src/domains/dispatch/types.ts +58 -6
  432. package/src/domains/dispatch/worker-protocol.ts +2 -2
  433. package/src/domains/eval/artifacts/store.ts +10 -4
  434. package/src/domains/eval/compare/thresholds.ts +0 -8
  435. package/src/domains/eval/execution-provenance.ts +1 -1
  436. package/src/domains/eval/metrics/token-stream.ts +0 -7
  437. package/src/domains/eval/report.ts +1 -1
  438. package/src/domains/eval/runner.ts +1 -1
  439. package/src/domains/eval/runners/clio-run.ts +7 -6
  440. package/src/domains/eval/runners/external-command.ts +4 -3
  441. package/src/domains/eval/schema/artifact.ts +1 -1
  442. package/src/domains/eval/schema/behavioral-metrics.ts +3 -2
  443. package/src/domains/eval/schema/behavioral.ts +7 -6
  444. package/src/domains/eval/schema/execution-envelope.ts +4 -2
  445. package/src/domains/eval/schema/naming.ts +10 -0
  446. package/src/domains/eval/schema/suite.ts +2 -2
  447. package/src/domains/eval/schema/validate.ts +9 -5
  448. package/src/domains/eval/schema/verdict.ts +4 -2
  449. package/src/domains/eval/store.ts +20 -3
  450. package/src/domains/eval/suites/run.ts +12 -6
  451. package/src/domains/eval/types.ts +1 -1
  452. package/src/domains/eval/workspaces/git.ts +1 -1
  453. package/src/domains/eval/workspaces/temp-copy.ts +1 -1
  454. package/src/domains/evidence/build.ts +13 -5
  455. package/src/domains/evidence/trust-status.ts +10 -1
  456. package/src/domains/extensions/contract.ts +15 -1
  457. package/src/domains/extensions/discovery.ts +238 -41
  458. package/src/domains/extensions/extension.ts +105 -6
  459. package/src/domains/extensions/index.ts +24 -0
  460. package/src/domains/extensions/integrity.ts +189 -0
  461. package/src/domains/extensions/manager.ts +17 -1
  462. package/src/domains/extensions/resource-path.ts +27 -0
  463. package/src/domains/extensions/resources.ts +18 -38
  464. package/src/domains/extensions/snapshot-store.ts +39 -0
  465. package/src/domains/extensions/snapshot.ts +180 -0
  466. package/src/domains/extensions/state.ts +385 -57
  467. package/src/domains/extensions/types.ts +118 -1
  468. package/src/domains/interop/consent.ts +7 -7
  469. package/src/domains/interop/extension.ts +1 -1
  470. package/src/domains/lifecycle/doctor.ts +27 -21
  471. package/src/domains/lifecycle/migrations/2026-09-01-clio-coder-naming.ts +155 -0
  472. package/src/domains/lifecycle/migrations/2026-09-01-extension-install-digests.ts +27 -0
  473. package/src/domains/lifecycle/migrations/2026-09-01-retire-panes-knobs.ts +59 -0
  474. package/src/domains/lifecycle/migrations/2026-09-01-settings-v2.ts +338 -0
  475. package/src/domains/lifecycle/migrations/index.ts +22 -1
  476. package/src/domains/lifecycle/naming-history.ts +153 -0
  477. package/src/domains/lifecycle/naming-mutable-state.ts +104 -0
  478. package/src/domains/lifecycle/naming-resources.ts +276 -0
  479. package/src/domains/lifecycle/naming-tool-markers.ts +139 -0
  480. package/src/domains/lifecycle/naming-yazi.ts +86 -0
  481. package/src/domains/lifecycle/upgrade-notice.ts +1 -1
  482. package/src/domains/memory/task-memory-handoff.ts +6 -3
  483. package/src/domains/middleware/contract.ts +26 -0
  484. package/src/domains/middleware/extension.ts +24 -24
  485. package/src/domains/middleware/hook-receipts.ts +27 -4
  486. package/src/domains/middleware/hooks-io.ts +65 -32
  487. package/src/domains/middleware/hooks.ts +64 -0
  488. package/src/domains/middleware/index.ts +35 -4
  489. package/src/domains/middleware/marketplace-offer.ts +339 -0
  490. package/src/domains/middleware/registrations.ts +326 -0
  491. package/src/domains/middleware/runtime.ts +30 -2
  492. package/src/domains/middleware/snapshot.ts +20 -7
  493. package/src/domains/mux/contract.ts +195 -25
  494. package/src/domains/mux/detect.ts +23 -6
  495. package/src/domains/mux/dock-controller.ts +365 -0
  496. package/src/domains/mux/extension.ts +7 -1
  497. package/src/domains/mux/index.ts +21 -1
  498. package/src/domains/mux/operations.ts +72 -5
  499. package/src/domains/mux/protocol.ts +19 -6
  500. package/src/domains/mux/socket-client.ts +167 -19
  501. package/src/domains/mux/types.ts +49 -6
  502. package/src/domains/mux/yazi/assets/yazi.toml +2 -2
  503. package/src/domains/mux/yazi/event-stream.ts +6 -4
  504. package/src/domains/mux/yazi/profile.ts +1 -1
  505. package/src/domains/mux/yazi/session.ts +79 -7
  506. package/src/domains/mux/yazi/theme.ts +117 -17
  507. package/src/domains/observability/contract.ts +10 -11
  508. package/src/domains/observability/extension.ts +12 -4
  509. package/src/domains/observability/out-of-turn-usage.ts +2 -2
  510. package/src/domains/observability/projection.ts +15 -91
  511. package/src/domains/observability/trace-store.ts +65 -19
  512. package/src/domains/prompts/compiler.ts +75 -55
  513. package/src/domains/prompts/contract.ts +15 -3
  514. package/src/domains/prompts/extension.ts +100 -12
  515. package/src/domains/prompts/fragments/identity/clio-worker.md +2 -4
  516. package/src/domains/prompts/fragments/identity/clio.md +6 -12
  517. package/src/domains/prompts/fragments/identity/docs-routing.md +1 -2
  518. package/src/domains/prompts/fragments/identity/self-awareness.md +3 -11
  519. package/src/domains/prompts/fragments/operating/contract.md +7 -15
  520. package/src/domains/prompts/fragments/operating/delegation.md +32 -34
  521. package/src/domains/prompts/fragments/operating/skills.md +11 -18
  522. package/src/domains/prompts/fragments/operating/worker.md +1 -8
  523. package/src/domains/providers/extension.ts +5 -5
  524. package/src/domains/providers/index.ts +1 -1
  525. package/src/domains/providers/knowledge-base-path.ts +1 -1
  526. package/src/domains/providers/model-runtime-capabilities.ts +99 -23
  527. package/src/domains/providers/models/cloud-models/alcf.yaml +1 -1
  528. package/src/domains/providers/models/local-models/{clio-local-coding-targets.yaml → clio-coder-local-coding-targets.yaml} +671 -106
  529. package/src/domains/providers/plugins.ts +1 -1
  530. package/src/domains/providers/resolver.ts +1 -1
  531. package/src/domains/providers/runtime-resolution.ts +31 -0
  532. package/src/domains/providers/runtimes/cloud/alcf.ts +4 -4
  533. package/src/domains/providers/runtimes/common/lmstudio-http.ts +1 -5
  534. package/src/domains/providers/runtimes/common/local-synth.ts +3 -3
  535. package/src/domains/providers/runtimes/common/probe-helpers.ts +9 -4
  536. package/src/domains/providers/runtimes/local-native/llamacpp-completion.ts +1 -1
  537. package/src/domains/providers/runtimes/local-native/llamacpp.ts +9 -1
  538. package/src/domains/providers/runtimes/local-native/lmstudio.ts +2 -9
  539. package/src/domains/providers/runtimes/protocol/litellm.ts +1 -91
  540. package/src/domains/providers/types/cost-provenance.ts +19 -0
  541. package/src/domains/providers/types/knowledge-base.ts +13 -0
  542. package/src/domains/providers/types/local-model-quirks.ts +87 -39
  543. package/src/domains/providers/types/target-descriptor.ts +3 -3
  544. package/src/domains/resources/extension.ts +1 -1
  545. package/src/domains/resources/library.ts +6 -6
  546. package/src/domains/resources/prompts/loader.ts +1 -1
  547. package/src/domains/resources/skills/content-hash.ts +7 -6
  548. package/src/domains/resources/skills/evals.ts +1 -1
  549. package/src/domains/resources/skills/install.ts +36 -12
  550. package/src/domains/resources/skills/loader.ts +41 -18
  551. package/src/domains/resources/skills/marketplace.ts +21 -2
  552. package/src/domains/resources/skills/promotion.ts +214 -0
  553. package/src/domains/safety/audit.ts +2 -2
  554. package/src/domains/safety/call-target.ts +1 -1
  555. package/src/domains/safety/finish-contract.ts +2 -1
  556. package/src/domains/safety/loop-detector.ts +7 -4
  557. package/src/domains/safety/run-effects.ts +1 -1
  558. package/src/domains/scheduling/extension.ts +4 -4
  559. package/src/domains/session/archive-readers.ts +9 -1
  560. package/src/domains/session/compaction/branch-summary.ts +4 -0
  561. package/src/domains/session/compaction/compact.ts +1 -1
  562. package/src/domains/session/compaction/tokens.ts +4 -0
  563. package/src/domains/session/context-accounting.ts +1 -1
  564. package/src/domains/session/decision-board.ts +1 -1
  565. package/src/domains/session/extension.ts +1 -1
  566. package/src/domains/session/handoff.ts +2 -2
  567. package/src/domains/session/prompt-manifest.ts +0 -5
  568. package/src/domains/session/protected-artifact-journal.ts +12 -6
  569. package/src/domains/session/retry.ts +1 -1
  570. package/src/domains/session/task-board.ts +10 -9
  571. package/src/domains/share/archive.ts +249 -43
  572. package/src/domains/toolchain/install.ts +1 -1
  573. package/src/engine/acp/adapter.ts +3 -3
  574. package/src/engine/acp/event-mapper.ts +3 -3
  575. package/src/engine/acp/server.ts +89 -35
  576. package/src/engine/acp/tool-mediator.ts +2 -2
  577. package/src/engine/acp/types.ts +1 -1
  578. package/src/engine/alcf-oauth.ts +5 -5
  579. package/src/engine/antigravity/subprocess-runtime.ts +2 -2
  580. package/src/engine/api-registry.ts +1 -1
  581. package/src/engine/apis/llamacpp-residency.ts +4 -23
  582. package/src/engine/apis/lmstudio.ts +4 -9
  583. package/src/engine/apis/ollama-native.ts +9 -9
  584. package/src/engine/apis/openai-completions.ts +30 -27
  585. package/src/engine/apis/output-budget.ts +8 -18
  586. package/src/engine/apis/residency.ts +10 -35
  587. package/src/engine/claude/sdk-module.ts +1 -12
  588. package/src/engine/claude/sdk-runtime.ts +6 -6
  589. package/src/engine/claude/subprocess-runtime.ts +1 -1
  590. package/src/engine/claude/tool-safety.ts +4 -4
  591. package/src/engine/gemma-channel-filter.ts +19 -0
  592. package/src/engine/loop-guard.ts +92 -17
  593. package/src/engine/session.ts +14 -7
  594. package/src/engine/tui-primitives.ts +1 -1
  595. package/src/engine/worker-events.ts +6 -6
  596. package/src/engine/worker-runtime.ts +54 -24
  597. package/src/engine/worker-tools.ts +3 -1
  598. package/src/entry/extension-hook-sources.ts +28 -0
  599. package/src/entry/extension-reload.ts +309 -0
  600. package/src/entry/orchestrator.ts +163 -120
  601. package/src/interactive/application-controller.ts +23 -22
  602. package/src/interactive/bus-notices.ts +10 -3
  603. package/src/interactive/chat-loop-messages.ts +3 -13
  604. package/src/interactive/chat-loop.ts +18 -9
  605. package/src/interactive/chat-panel.ts +37 -14
  606. package/src/interactive/chat-renderer.ts +71 -7
  607. package/src/interactive/clio-editor.ts +105 -1
  608. package/src/interactive/context-activity.ts +8 -6
  609. package/src/interactive/context-meter.ts +3 -6
  610. package/src/interactive/context-overlay.ts +1 -1
  611. package/src/interactive/cost-overlay.ts +1 -1
  612. package/src/interactive/council-grid.ts +2 -2
  613. package/src/interactive/dispatch-board.ts +36 -44
  614. package/src/interactive/editor-bash.ts +21 -0
  615. package/src/interactive/editor-steer.ts +9 -4
  616. package/src/interactive/editor-submit.ts +24 -18
  617. package/src/interactive/external-editor.ts +1 -1
  618. package/src/interactive/file-reference-completion.ts +360 -0
  619. package/src/interactive/footer/dashboard.ts +15 -17
  620. package/src/interactive/footer/notifications.ts +14 -8
  621. package/src/interactive/footer/widgets.ts +15 -44
  622. package/src/interactive/interactive-application.ts +116 -61
  623. package/src/interactive/interactive-event-projection.ts +1 -1
  624. package/src/interactive/interactive-input-runtime.ts +6 -2
  625. package/src/interactive/interactive-presentation.ts +22 -17
  626. package/src/interactive/interactive-shell.ts +2 -2
  627. package/src/interactive/interactive-slash-runtime.ts +65 -17
  628. package/src/interactive/interactive-subscriptions.ts +1 -1
  629. package/src/interactive/interactive-tickers.ts +1 -1
  630. package/src/interactive/keybinding-manager.ts +4 -4
  631. package/src/interactive/layout.ts +1 -1
  632. package/src/interactive/memory-overlay.ts +2 -2
  633. package/src/interactive/modal-marker.ts +2 -21
  634. package/src/interactive/mutation-preview.ts +1 -1
  635. package/src/interactive/overlay-frame.ts +4 -12
  636. package/src/interactive/overlay-general-openers.ts +6 -2
  637. package/src/interactive/overlay-key-routing.ts +7 -7
  638. package/src/interactive/overlay-lifecycle.ts +1 -1
  639. package/src/interactive/overlay-model-selectors.ts +3 -3
  640. package/src/interactive/overlays/agents.ts +2 -2
  641. package/src/interactive/overlays/ask-user.ts +25 -11
  642. package/src/interactive/overlays/context-reset.ts +28 -4
  643. package/src/interactive/overlays/cwd-fallback.ts +28 -4
  644. package/src/interactive/overlays/decisions.ts +4 -2
  645. package/src/interactive/overlays/extensions.ts +9 -1
  646. package/src/interactive/overlays/fleet-run-approval.ts +3 -3
  647. package/src/interactive/overlays/handoff-review.ts +2 -2
  648. package/src/interactive/overlays/help-reference.ts +13 -0
  649. package/src/interactive/overlays/interop.ts +1 -1
  650. package/src/interactive/overlays/library-install-confirm.ts +1 -1
  651. package/src/interactive/overlays/message-picker.ts +1 -1
  652. package/src/interactive/overlays/model-selector.ts +39 -31
  653. package/src/interactive/overlays/prompts.ts +10 -4
  654. package/src/interactive/overlays/session-selector.ts +2 -2
  655. package/src/interactive/overlays/settings.ts +360 -303
  656. package/src/interactive/overlays/side-question.ts +2 -2
  657. package/src/interactive/overlays/skills-hub.ts +8 -8
  658. package/src/interactive/overlays/tree-selector.ts +2 -2
  659. package/src/interactive/panes-runtime.ts +145 -43
  660. package/src/interactive/permission-overlay.ts +2 -2
  661. package/src/interactive/prompt-cache-identity.ts +88 -0
  662. package/src/interactive/renderers/retry-status.ts +12 -4
  663. package/src/interactive/renderers/tool-execution.ts +4 -4
  664. package/src/interactive/session-transcript.ts +3 -3
  665. package/src/interactive/slash-autocomplete.ts +454 -165
  666. package/src/interactive/slash-commands.ts +401 -190
  667. package/src/interactive/slash-spec.ts +160 -17
  668. package/src/interactive/status/controller.ts +2 -2
  669. package/src/interactive/stream-pacing-policy.ts +1 -24
  670. package/src/interactive/tasks-overlay.ts +20 -13
  671. package/src/interactive/terminal-lease.ts +6 -7
  672. package/src/interactive/turn-context.ts +41 -26
  673. package/src/interactive/turn-persistence.ts +2 -2
  674. package/src/interactive/turn-prewarm.ts +2 -2
  675. package/src/interactive/turn-runtime.ts +8 -8
  676. package/src/interactive/turn-state.ts +1 -1
  677. package/src/interactive/view/artifacts.ts +12 -9
  678. package/src/interactive/view/view-overlay.ts +13 -10
  679. package/src/interactive/watch-pane.ts +38 -10
  680. package/src/interactive/welcome-dashboard.ts +15 -15
  681. package/src/interactive/worker-progress.ts +4 -4
  682. package/src/interactive/worker-receipts.ts +1 -1
  683. package/src/interactive/worker-stream.ts +1 -4
  684. package/src/interactive/yazi-bridge.ts +72 -11
  685. package/src/tools/agent-tools.ts +30 -1
  686. package/src/tools/artifact.ts +2 -2
  687. package/src/tools/ask-user.ts +6 -6
  688. package/src/tools/bash.ts +2 -2
  689. package/src/tools/bootstrap.ts +4 -0
  690. package/src/tools/builtin-tool-catalog.ts +52 -22
  691. package/src/tools/codewiki/code-nav-surface.ts +6 -0
  692. package/src/tools/codewiki/code-nav.ts +99 -13
  693. package/src/tools/compete-worktrees.ts +27 -17
  694. package/src/tools/context/docs-engine.ts +20 -7
  695. package/src/tools/context/index.ts +44 -13
  696. package/src/tools/core-bootstrap.ts +28 -6
  697. package/src/tools/credential-present.ts +1 -2
  698. package/src/tools/dispatch-admission.ts +4 -2
  699. package/src/tools/dispatch-arguments.ts +6 -2
  700. package/src/tools/dispatch-plan.ts +48 -15
  701. package/src/tools/dispatch-run-events.ts +13 -11
  702. package/src/tools/dispatch-runner.ts +11 -6
  703. package/src/tools/dispatch-schema.ts +338 -0
  704. package/src/tools/dispatch-types.ts +3 -0
  705. package/src/tools/dispatch.ts +9 -254
  706. package/src/tools/find.ts +1 -6
  707. package/src/tools/ledger.ts +3 -5
  708. package/src/tools/monitor-surface.ts +5 -13
  709. package/src/tools/monitor.ts +4 -4
  710. package/src/tools/observation.ts +4 -5
  711. package/src/tools/observers.ts +0 -33
  712. package/src/tools/panes-surface.ts +4 -11
  713. package/src/tools/panes.ts +4 -2
  714. package/src/tools/policy.ts +15 -2
  715. package/src/tools/read.ts +5 -6
  716. package/src/tools/registry.ts +30 -7
  717. package/src/tools/result-shaping.ts +18 -14
  718. package/src/tools/steer-surface.ts +1 -1
  719. package/src/tools/task-worktree.ts +28 -7
  720. package/src/tools/tasks.ts +1 -1
  721. package/src/tools/truncate.ts +6 -5
  722. package/src/tools/verify/authoring.ts +3 -6
  723. package/src/tools/verify/frontend.ts +1 -1
  724. package/src/tools/verify/surface.ts +6 -12
  725. package/src/tools/web-fetch-surface.ts +1 -3
  726. package/src/tools/web-fetch.ts +1 -1
  727. package/src/worker/entry.ts +4 -3
  728. package/src/worker/protocol.ts +16 -14
  729. package/src/worker/spec-contract.ts +2 -2
  730. package/src/worker/stdin-demux.ts +2 -2
  731. package/dist/chunk-36EJLSQQ.js +0 -814
  732. package/dist/chunk-GXNLGKAB.js +0 -571
  733. package/dist/chunk-K7VKOLQQ.js +0 -15
  734. package/dist/chunk-PMZCIOCJ.js +0 -25
  735. package/dist/chunk-SUCTJL45.js +0 -45
  736. package/dist/chunk-SUW5DORT.js +0 -819
  737. package/dist/chunk-TZ3SGWZZ.js +0 -48
  738. package/dist/chunk-UOV2BYIW.js +0 -107
  739. package/dist/chunk-VFA6GDY5.js +0 -1625
  740. package/dist/doctor-QOA5FNY5.js +0 -313
  741. package/dist/fleet-view-ZCON35AG.js +0 -102
  742. package/dist/panes-HMABYVO4.js +0 -58
  743. package/docs/artifact-versions.md +0 -67
  744. package/docs/documentation-coverage.md +0 -46
  745. package/docs/documentation-guide.md +0 -167
  746. package/docs/release-cut-checklist.md +0 -193
  747. package/docs/time-conventions.md +0 -101
  748. package/skills/meta/clio-test/SKILL.md +0 -133
  749. package/skills/meta/clio-test/references/harness.md +0 -126
  750. package/skills/meta/clio-test/references/test-map.md +0 -69
  751. package/src/engine/apis/degraded-inference.ts +0 -95
@@ -1,12 +1,17 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
+ import {
3
+ frontmatterRegion,
4
+ normalizedSkillHash,
5
+ stripProvenanceLines
6
+ } from "./chunk-NDDGJUXD.js";
2
7
  import {
3
8
  readRootEntries,
4
9
  splitYamlFrontmatter,
5
10
  stringField
6
- } from "./chunk-FEFIFZTL.js";
11
+ } from "./chunk-XGDPUNND.js";
7
12
  import {
8
13
  enabledExtensionResourceRoots
9
- } from "./chunk-SUW5DORT.js";
14
+ } from "./chunk-HLAFFSEK.js";
10
15
  import {
11
16
  ToolNames
12
17
  } from "./chunk-K6BSR66V.js";
@@ -14,6 +19,9 @@ import {
14
19
  INTEROP_AGENT_KINDS,
15
20
  interopSourceRank
16
21
  } from "./chunk-IHXBNWMM.js";
22
+ import {
23
+ warnLegacyNaming
24
+ } from "./chunk-D7E7WCDF.js";
17
25
  import {
18
26
  resolvePackageRoot
19
27
  } from "./chunk-IWHMRKLL.js";
@@ -27,75 +35,6 @@ import {
27
35
  init_esm_shims
28
36
  } from "./chunk-3R73A4XB.js";
29
37
 
30
- // src/domains/resources/skills/content-hash.ts
31
- init_esm_shims();
32
- import { createHash } from "node:crypto";
33
- var PROVENANCE_KEYS = /* @__PURE__ */ new Set([
34
- "source-url",
35
- "sourceUrl",
36
- "install-url",
37
- "installed-at",
38
- "installedAt",
39
- "updated-at",
40
- "updatedAt",
41
- "installed-hash",
42
- "installedHash",
43
- "audit",
44
- "installed-by",
45
- "installedBy"
46
- ]);
47
- function frontmatterRegion(rawText) {
48
- const opening = rawText.match(/^---\r?\n/);
49
- if (!opening) return null;
50
- const closeRegex = /\r?\n---(?:\r?\n|$)/g;
51
- closeRegex.lastIndex = opening[0].length;
52
- const closing = closeRegex.exec(rawText);
53
- if (!closing) return null;
54
- const frontmatterText = rawText.slice(opening[0].length, closing.index);
55
- return {
56
- head: opening[0],
57
- lines: frontmatterText.split(/\r?\n/),
58
- tail: rawText.slice(closing.index)
59
- };
60
- }
61
- function stripProvenanceLines(lines) {
62
- const kept = [];
63
- let dropIndent = null;
64
- let inClioBlock = false;
65
- for (const line of lines) {
66
- const indent = line.length - line.trimStart().length;
67
- if (dropIndent !== null && line.trim().length > 0 && indent > dropIndent) continue;
68
- dropIndent = null;
69
- const keyMatch = line.match(/^([ \t]*)([A-Za-z][A-Za-z0-9-]*):/);
70
- const key = keyMatch?.[2];
71
- if (key !== void 0) {
72
- if (indent === 0) inClioBlock = key === "clio";
73
- if (PROVENANCE_KEYS.has(key) && (indent === 0 || inClioBlock)) {
74
- dropIndent = indent;
75
- continue;
76
- }
77
- }
78
- kept.push(line);
79
- }
80
- return kept.filter((line, index) => {
81
- if (!/^clio:\s*$/.test(line)) return true;
82
- for (let next = index + 1; next < kept.length; next += 1) {
83
- const candidate = kept[next];
84
- if (candidate.trim().length === 0) continue;
85
- return /^[ \t]/.test(candidate);
86
- }
87
- return false;
88
- });
89
- }
90
- function stripProvenanceFrontmatter(rawText) {
91
- const region = frontmatterRegion(rawText);
92
- if (!region) return rawText;
93
- return `${region.head}${stripProvenanceLines(region.lines).join("\n")}${region.tail}`;
94
- }
95
- function normalizedSkillHash(rawText) {
96
- return createHash("sha256").update(stripProvenanceFrontmatter(rawText), "utf8").digest("hex");
97
- }
98
-
99
38
  // src/domains/resources/skills/install.ts
100
39
  init_esm_shims();
101
40
  import { execFileSync } from "node:child_process";
@@ -115,7 +54,7 @@ import path3 from "node:path";
115
54
 
116
55
  // src/domains/resources/skills/loader.ts
117
56
  init_esm_shims();
118
- import { createHash as createHash2 } from "node:crypto";
57
+ import { createHash } from "node:crypto";
119
58
  import { existsSync as existsSync2, readdirSync as readdirSync2, readFileSync as readFileSync2, realpathSync } from "node:fs";
120
59
  import { homedir } from "node:os";
121
60
  import path2 from "node:path";
@@ -156,6 +95,11 @@ function isIndexSkill(value) {
156
95
  function optionalString(value) {
157
96
  return typeof value === "string" && value.trim().length > 0 ? value.trim() : void 0;
158
97
  }
98
+ function optionalTriggerList(value) {
99
+ if (!Array.isArray(value)) return void 0;
100
+ const triggers = value.filter((entry) => typeof entry === "string").map((entry) => entry.trim()).filter((entry) => entry.length > 0);
101
+ return triggers.length > 0 ? triggers : void 0;
102
+ }
159
103
  function indexAudit(value) {
160
104
  return value === "pass" || value === "warn" || value === "fail" || value === "unknown" ? value : void 0;
161
105
  }
@@ -168,6 +112,7 @@ function parseMarketplaceIndex(indexPath, diagnostics = []) {
168
112
  const version = optionalString(record.version);
169
113
  const audit = indexAudit(record.audit);
170
114
  const category = optionalString(record.category);
115
+ const triggers = optionalTriggerList(record.triggers);
171
116
  if (record.kind !== void 0 && !["skill", "agent", "prompt", "fleet"].includes(String(record.kind))) {
172
117
  diagnostics.push(`skill marketplace index entry has unsupported kind: ${skill.name}`);
173
118
  return [];
@@ -187,6 +132,7 @@ function parseMarketplaceIndex(indexPath, diagnostics = []) {
187
132
  ...version ? { version } : {},
188
133
  ...audit ? { audit } : {},
189
134
  ...category ? { category } : {},
135
+ ...triggers ? { triggers } : {},
190
136
  ...requires ? { requires } : {},
191
137
  origin: "index"
192
138
  }
@@ -235,6 +181,7 @@ function catalogCategory(catalogDir, baseDir) {
235
181
  function catalogEntry(skill, catalogDir) {
236
182
  const version = typeof skill.metadata.version === "string" ? skill.metadata.version : void 0;
237
183
  const category = catalogCategory(catalogDir, skill.baseDir);
184
+ const triggers = optionalTriggerList(skill.metadata.triggers);
238
185
  return {
239
186
  name: skill.name,
240
187
  description: skill.description,
@@ -242,6 +189,7 @@ function catalogEntry(skill, catalogDir) {
242
189
  ...version ? { version } : {},
243
190
  ...skill.provenance?.audit ? { audit: skill.provenance.audit } : {},
244
191
  ...category ? { category } : {},
192
+ ...triggers ? { triggers } : {},
245
193
  origin: "catalog",
246
194
  kind: "skill"
247
195
  };
@@ -283,7 +231,9 @@ function getMarketplaceSkills(options = {}) {
283
231
  return discoverMarketplaceSkills(options).skills;
284
232
  }
285
233
  function installSkill(input) {
286
- const source = input.source.trim();
234
+ const requested = input.source.trim();
235
+ const source = requested === "clio-dev" ? "clio-coder-dev" : requested === "clio-test" ? "clio-coder-test" : requested;
236
+ if (source !== requested) warnLegacyNaming(requested, source);
287
237
  const spec = parseSkillSourceSpec(source);
288
238
  if (spec?.kind === "local" && isSkillName(source) && !existsSync(spec.path)) {
289
239
  const skill = getMarketplaceSkills({ ...input.cwd ? { cwd: input.cwd } : {} }).find(
@@ -294,7 +244,7 @@ function installSkill(input) {
294
244
  }
295
245
  return installSkillFromSource({ ...input, source: skill.sourceUrl });
296
246
  }
297
- return installSkillFromSource(input);
247
+ return installSkillFromSource({ ...input, source });
298
248
  }
299
249
 
300
250
  // src/domains/resources/skills/loader.ts
@@ -318,7 +268,7 @@ var SKILL_PRECEDENCE = {
318
268
  cli: 60
319
269
  };
320
270
  function sha256(value) {
321
- return createHash2("sha256").update(value, "utf8").digest("hex");
271
+ return createHash("sha256").update(value, "utf8").digest("hex");
322
272
  }
323
273
  function defaultPrecedenceForScope(scope) {
324
274
  switch (scope) {
@@ -333,8 +283,7 @@ function defaultPrecedenceForScope(scope) {
333
283
  }
334
284
  }
335
285
  function projectCompatTrusted(explicit) {
336
- if (explicit === true) return true;
337
- return process.env.CLIO_CODER_TRUST_PROJECT_SKILLS === "1";
286
+ return explicit === true;
338
287
  }
339
288
  function defaultSkillRoots(input = {}) {
340
289
  const cwd = input.cwd ?? process.cwd();
@@ -368,7 +317,7 @@ function defaultSkillRoots(input = {}) {
368
317
  roots.push({
369
318
  path: path2.join(configDir, "skills"),
370
319
  scope: "user",
371
- source: "clio",
320
+ source: "clio-coder",
372
321
  origin: "config",
373
322
  precedence: SKILL_PRECEDENCE.user,
374
323
  trusted: true,
@@ -390,7 +339,7 @@ function defaultSkillRoots(input = {}) {
390
339
  roots.push({
391
340
  path: path2.join(cwd, ".clio-coder", "skills"),
392
341
  scope: "project",
393
- source: "clio",
342
+ source: "clio-coder",
394
343
  origin: "project",
395
344
  precedence: SKILL_PRECEDENCE.project,
396
345
  trusted: true,
@@ -481,21 +430,36 @@ function validateDescription(description) {
481
430
  }
482
431
  return [];
483
432
  }
484
- function extractMetadata(frontmatter) {
433
+ function warnLegacySkillMetadata(filePath) {
434
+ warnLegacyNaming(`clio: skill metadata in ${filePath}`, "clio-coder: skill metadata");
435
+ }
436
+ function extractMetadata(frontmatter, filePath) {
485
437
  const metadata = {};
486
438
  for (const [key, value] of Object.entries(frontmatter)) {
487
439
  if (CORE_FRONTMATTER_KEYS.has(key)) continue;
440
+ if (key === "clio-coder") {
441
+ metadata.clioCoder = value;
442
+ continue;
443
+ }
444
+ if (key === "clio") {
445
+ warnLegacySkillMetadata(filePath);
446
+ if (!("clio-coder" in frontmatter)) metadata.clioCoder = value;
447
+ continue;
448
+ }
488
449
  metadata[key] = value;
489
450
  }
490
451
  return metadata;
491
452
  }
492
- function extractProvenance(frontmatter) {
493
- const clioRaw = frontmatter.clio;
494
- const clio = clioRaw !== null && typeof clioRaw === "object" && !Array.isArray(clioRaw) ? clioRaw : void 0;
453
+ function extractProvenance(frontmatter, filePath) {
454
+ const canonicalRaw = frontmatter["clio-coder"];
455
+ const legacyRaw = frontmatter.clio;
456
+ if (legacyRaw !== void 0) warnLegacySkillMetadata(filePath);
457
+ const clioCoderRaw = canonicalRaw ?? legacyRaw;
458
+ const clioCoder = clioCoderRaw !== null && typeof clioCoderRaw === "object" && !Array.isArray(clioCoderRaw) ? clioCoderRaw : void 0;
495
459
  const field = (...keys) => {
496
460
  for (const key of keys) {
497
- if (clio) {
498
- const nested = stringField(clio, key);
461
+ if (clioCoder) {
462
+ const nested = stringField(clioCoder, key);
499
463
  if (nested !== null) return nested;
500
464
  }
501
465
  }
@@ -608,7 +572,9 @@ function loadSkillFile(filePath, root) {
608
572
  }
609
573
  const pathSubject = validationSubject(filePath);
610
574
  const frontmatterName = stringField(parsed.frontmatter, "name");
611
- const name = frontmatterName ?? pathSubject;
575
+ const rawName = frontmatterName ?? pathSubject;
576
+ const name = rawName === "clio-dev" ? "clio-coder-dev" : rawName === "clio-test" ? "clio-coder-test" : rawName;
577
+ if (name !== rawName) warnLegacyNaming(rawName, name);
612
578
  const description = stringField(parsed.frontmatter, "description");
613
579
  for (const message of validateDescription(description)) diagnostics.push({ type: "warning", message, path: filePath });
614
580
  if (frontmatterName && frontmatterName !== pathSubject) {
@@ -627,7 +593,7 @@ function loadSkillFile(filePath, root) {
627
593
  scope,
628
594
  ...root.origin ? { source: root.origin } : {}
629
595
  };
630
- const provenance = extractProvenance(parsed.frontmatter);
596
+ const provenance = extractProvenance(parsed.frontmatter, filePath);
631
597
  const allowedTools = declaredToolSurface(parsed.frontmatter, "allowed-tools", filePath, diagnostics);
632
598
  const disallowedTools = declaredToolSurface(parsed.frontmatter, "disallowed-tools", filePath, diagnostics);
633
599
  const skill = {
@@ -640,14 +606,14 @@ function loadSkillFile(filePath, root) {
640
606
  disableModelInvocation: booleanField(parsed.frontmatter, "disable-model-invocation"),
641
607
  ...allowedTools ? { allowedTools } : {},
642
608
  ...disallowedTools ? { disallowedTools } : {},
643
- source: root.source ?? "clio",
609
+ source: root.source ?? "clio-coder",
644
610
  scope,
645
611
  hash: sha256(raw),
646
612
  normalizedHash: normalizedSkillHash(raw),
647
613
  pathSubject,
648
614
  trusted: root.trusted ?? true,
649
615
  precedence: root.precedence ?? defaultPrecedenceForScope(scope),
650
- metadata: extractMetadata(parsed.frontmatter),
616
+ metadata: extractMetadata(parsed.frontmatter, filePath),
651
617
  diagnostics,
652
618
  ...provenance ? { provenance } : {}
653
619
  };
@@ -973,6 +939,24 @@ function installingAsWorker() {
973
939
  function yamlQuote(value) {
974
940
  return `"${value.replace(/\\/g, "\\\\").replace(/"/g, '\\"')}"`;
975
941
  }
942
+ function canonicalizeProductMetadataBlock(lines) {
943
+ const hasCanonical = lines.some((line) => /^clio-coder:/.test(line));
944
+ const canonical = [];
945
+ let dropLegacyChildren = false;
946
+ for (const line of lines) {
947
+ if (/^clio:/.test(line)) {
948
+ dropLegacyChildren = hasCanonical;
949
+ if (!hasCanonical) canonical.push(line.replace(/^clio:/, "clio-coder:"));
950
+ continue;
951
+ }
952
+ if (dropLegacyChildren) {
953
+ if (line.trim().length === 0 || /^[ \t]/.test(line)) continue;
954
+ dropLegacyChildren = false;
955
+ }
956
+ canonical.push(line);
957
+ }
958
+ return canonical;
959
+ }
976
960
  function injectProvenanceFrontmatter(rawText, fields) {
977
961
  const region = frontmatterRegion(rawText);
978
962
  if (!region) throw new Error("skill file is missing YAML frontmatter");
@@ -986,21 +970,24 @@ function injectProvenanceFrontmatter(rawText, fields) {
986
970
  "audit: unknown",
987
971
  ...fields.installedBy ? [`installed-by: ${yamlQuote(fields.installedBy)}`] : []
988
972
  ];
989
- const clioIndex = kept.findIndex((line) => /^clio:/.test(line));
990
- if (clioIndex >= 0 && !/^clio:\s*$/.test(kept[clioIndex])) {
991
- return `${region.head}${[...kept, ...stamps].join("\n")}${region.tail}`;
973
+ const canonicalKept = canonicalizeProductMetadataBlock(kept);
974
+ const clioIndex = canonicalKept.findIndex((line) => /^clio-coder:/.test(line));
975
+ if (clioIndex >= 0 && !/^clio-coder:\s*$/.test(canonicalKept[clioIndex])) {
976
+ return `${region.head}${[...canonicalKept, ...stamps].join("\n")}${region.tail}`;
992
977
  }
993
978
  const nested = stamps.map((line) => ` ${line}`);
994
979
  if (clioIndex < 0) {
995
- return `${region.head}${[...kept, "clio:", ...nested].join("\n")}${region.tail}`;
980
+ return `${region.head}${[...canonicalKept, "clio-coder:", ...nested].join("\n")}${region.tail}`;
996
981
  }
997
982
  let blockEnd = clioIndex + 1;
998
- while (blockEnd < kept.length) {
999
- const line = kept[blockEnd];
983
+ while (blockEnd < canonicalKept.length) {
984
+ const line = canonicalKept[blockEnd];
1000
985
  if (line.trim().length > 0 && !/^[ \t]/.test(line)) break;
1001
986
  blockEnd += 1;
1002
987
  }
1003
- return `${region.head}${[...kept.slice(0, blockEnd), ...nested, ...kept.slice(blockEnd)].join("\n")}${region.tail}`;
988
+ return `${region.head}${[...canonicalKept.slice(0, blockEnd), ...nested, ...canonicalKept.slice(blockEnd)].join(
989
+ "\n"
990
+ )}${region.tail}`;
1004
991
  }
1005
992
  function resolveSkillDir(target) {
1006
993
  if (!existsSync3(target)) throw new Error(`skill source path does not exist: ${target}`);
@@ -1019,7 +1006,7 @@ function fetchSource(spec) {
1019
1006
  return { skillDir: resolveSkillDir(spec.path), cleanup: () => {
1020
1007
  } };
1021
1008
  }
1022
- const tmp = mkdtempSync(path3.join(tmpdir(), "clio-skill-"));
1009
+ const tmp = mkdtempSync(path3.join(tmpdir(), "clio-coder-skill-"));
1023
1010
  const cleanup = () => rmSync(tmp, { recursive: true, force: true });
1024
1011
  try {
1025
1012
  execFileSync("git", ["clone", "--depth", "1", "--branch", spec.branch, spec.cloneUrl, tmp], {
@@ -1135,7 +1122,9 @@ function installSkillFromSource(input) {
1135
1122
  }
1136
1123
  function managedSkills(cwd, configDir) {
1137
1124
  const list = loadSkills({ cwd, ...configDir ? { configDir } : {} });
1138
- return list.items.filter((skill) => skill.source === "clio" && (skill.scope === "user" || skill.scope === "project"));
1125
+ return list.items.filter(
1126
+ (skill) => skill.source === "clio-coder" && (skill.scope === "user" || skill.scope === "project")
1127
+ );
1139
1128
  }
1140
1129
  function updateOne(skill, force) {
1141
1130
  const sourceUrl = skill.provenance?.installUrl;
@@ -1193,7 +1182,6 @@ function updateSkills(input = {}) {
1193
1182
  }
1194
1183
 
1195
1184
  export {
1196
- normalizedSkillHash,
1197
1185
  parseSkillSourceSpec,
1198
1186
  updateSkills,
1199
1187
  MARKETPLACE_UNCONFIGURED,
@@ -1209,4 +1197,4 @@ export {
1209
1197
  expandSkillInvocationInput,
1210
1198
  parsePendingSkillRequests
1211
1199
  };
1212
- //# sourceMappingURL=chunk-VYMXRQI6.js.map
1200
+ //# sourceMappingURL=chunk-O3YUNJZ2.js.map
@@ -2,7 +2,7 @@ import { createRequire as __clioCreateRequire } from "node:module"; const requir
2
2
  import {
3
3
  createEngineAi,
4
4
  getEngineSupportedThinkingLevels
5
- } from "./chunk-UOSL25KY.js";
5
+ } from "./chunk-VXMFAE2W.js";
6
6
  import {
7
7
  init_esm_shims
8
8
  } from "./chunk-3R73A4XB.js";
@@ -162,4 +162,4 @@ export {
162
162
  catalogThinkingLevelsForRuntime,
163
163
  synthesizeCatalogBackedModel
164
164
  };
165
- //# sourceMappingURL=chunk-VO2LKSTM.js.map
165
+ //# sourceMappingURL=chunk-O42A54GG.js.map
@@ -1,13 +1,16 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
3
  discoverAgentRecipes
4
- } from "./chunk-Z4TXYIEG.js";
4
+ } from "./chunk-CRFOIAX3.js";
5
5
  import {
6
6
  assertAgentIdNamespace
7
7
  } from "./chunk-DR52UMZW.js";
8
8
  import {
9
9
  normalizeAgentSpec
10
- } from "./chunk-DYJP44XW.js";
10
+ } from "./chunk-PGF63K6I.js";
11
+ import {
12
+ BusChannels
13
+ } from "./chunk-F4EKGO4N.js";
11
14
  import {
12
15
  init_esm_shims
13
16
  } from "./chunk-3R73A4XB.js";
@@ -21,23 +24,42 @@ function createAgentsBundle(_context) {
21
24
  let recipes = [];
22
25
  let specs = [];
23
26
  let diagnostics = [];
27
+ let revision = 0;
24
28
  function discover() {
25
29
  const nextDiagnostics = [];
26
30
  const merged = discoverAgentRecipes(process.cwd(), nextDiagnostics);
27
31
  const config = _context.getContract("config");
28
- assertAgentIdNamespace(merged, config?.get()?.delegation?.agents ?? []);
32
+ assertAgentIdNamespace(merged, config?.get()?.integrations.externalAgents?.entries ?? []);
29
33
  recipes = merged;
30
34
  specs = recipes.map(normalizeAgentSpec);
31
35
  diagnostics = nextDiagnostics;
36
+ revision += 1;
32
37
  }
38
+ let unsubscribeExtensionsReload = null;
33
39
  const extension = {
34
40
  async start() {
35
41
  discover();
42
+ unsubscribeExtensionsReload = _context.bus.on(BusChannels.ExtensionsReloaded, (payload) => {
43
+ if (payload?.changed !== true) return;
44
+ try {
45
+ discover();
46
+ } catch (error) {
47
+ process.stderr.write(
48
+ `[clio-coder:agents] rediscovery after extension reload failed: ${error instanceof Error ? error.message : String(error)}
49
+ `
50
+ );
51
+ }
52
+ });
36
53
  },
37
54
  async stop() {
55
+ unsubscribeExtensionsReload?.();
56
+ unsubscribeExtensionsReload = null;
38
57
  }
39
58
  };
40
59
  const contract = {
60
+ revision() {
61
+ return revision;
62
+ },
41
63
  list() {
42
64
  return recipes;
43
65
  },
@@ -49,7 +71,7 @@ function createAgentsBundle(_context) {
49
71
  },
50
72
  listSpecs() {
51
73
  const config = _context.getContract("config");
52
- const delegationAgents = config?.get()?.delegation?.agents ?? [];
74
+ const delegationAgents = config?.get()?.integrations.externalAgents?.entries ?? [];
53
75
  const delegationSpecs = delegationAgents.map((agent) => ({
54
76
  version: 1,
55
77
  id: agent.id,
@@ -76,7 +98,7 @@ function createAgentsBundle(_context) {
76
98
  const found = specs.find((r) => r.id === id);
77
99
  if (found) return found;
78
100
  const config = _context.getContract("config");
79
- const agent = config?.get()?.delegation?.agents?.find((entry) => entry.id === id);
101
+ const agent = config?.get()?.integrations.externalAgents?.entries?.find((entry) => entry.id === id);
80
102
  if (agent) {
81
103
  return {
82
104
  version: 1,
@@ -124,4 +146,4 @@ var AgentsDomainModule = {
124
146
  export {
125
147
  AgentsDomainModule
126
148
  };
127
- //# sourceMappingURL=chunk-Z2RR6MAK.js.map
149
+ //# sourceMappingURL=chunk-P75RZCJW.js.map
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-K6BSR66V.js";
8
8
  import {
9
9
  StringEnum
10
- } from "./chunk-UOSL25KY.js";
10
+ } from "./chunk-VXMFAE2W.js";
11
11
  import {
12
12
  init_esm_shims
13
13
  } from "./chunk-3R73A4XB.js";
@@ -32,4 +32,4 @@ var contextToolSurface = {
32
32
  export {
33
33
  contextToolSurface
34
34
  };
35
- //# sourceMappingURL=chunk-NHCZP4K7.js.map
35
+ //# sourceMappingURL=chunk-PBP4B7XR.js.map
@@ -3,7 +3,7 @@ import {
3
3
  artifactDefaultPath,
4
4
  extractCommandCdTargets,
5
5
  extractCommandWriteTargets
6
- } from "./chunk-GCSMB2KY.js";
6
+ } from "./chunk-IKOZFYBN.js";
7
7
  import {
8
8
  canonicalizeExistingPath
9
9
  } from "./chunk-ECH6PKUQ.js";
@@ -1419,4 +1419,4 @@ export {
1419
1419
  parseResultContract,
1420
1420
  parseWorkerResultContract
1421
1421
  };
1422
- //# sourceMappingURL=chunk-DYJP44XW.js.map
1422
+ //# sourceMappingURL=chunk-PGF63K6I.js.map
@@ -0,0 +1,42 @@
1
+ import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
+ import {
3
+ typebox_exports
4
+ } from "./chunk-5B2AEOW5.js";
5
+ import {
6
+ ToolNames
7
+ } from "./chunk-K6BSR66V.js";
8
+ import {
9
+ StringEnum
10
+ } from "./chunk-VXMFAE2W.js";
11
+ import {
12
+ init_esm_shims
13
+ } from "./chunk-3R73A4XB.js";
14
+
15
+ // src/tools/monitor-surface.ts
16
+ init_esm_shims();
17
+ var monitorToolSurface = {
18
+ name: ToolNames.Monitor,
19
+ description: "Inspect dispatched runs: list enumerates them; status, peek, receipt, and tools observe one run; wait blocks on one run without collecting; collect is the terminal operation for a detached batch or run list, required before final synthesis.",
20
+ parameters: typebox_exports.Object({
21
+ run_id: typebox_exports.Optional(
22
+ typebox_exports.String({ description: "Run id from dispatch output or monitor list; omit with mode=list." })
23
+ ),
24
+ mode: typebox_exports.Optional(
25
+ StringEnum(["status", "peek", "receipt", "list", "wait", "collect", "tools"], {
26
+ description: "Defaults to status with run_id and list without. tools lists a run's tool calls with outcomes and per-tool totals."
27
+ })
28
+ ),
29
+ batch_id: typebox_exports.Optional(typebox_exports.String({ description: "Detached batch id (mode=collect)." })),
30
+ run_ids: typebox_exports.Optional(typebox_exports.Array(typebox_exports.String(), { description: "Run ids to collect (mode=collect)." })),
31
+ timeout_ms: typebox_exports.Optional(
32
+ typebox_exports.Number({ description: "mode=wait: max ms to block (default 60000, max 600000); collect never blocks." })
33
+ )
34
+ }),
35
+ baseActionClass: "read",
36
+ executionMode: "parallel"
37
+ };
38
+
39
+ export {
40
+ monitorToolSurface
41
+ };
42
+ //# sourceMappingURL=chunk-PJX3WQUQ.js.map
@@ -10,7 +10,7 @@ init_esm_shims();
10
10
  init_esm_shims();
11
11
  function reportListenerError(channel, error) {
12
12
  const message = error instanceof Error ? error.stack ?? error.message : String(error);
13
- console.error(`[clio:event-bus] Listener crashed on ${channel}: ${message}`);
13
+ console.error(`[clio-coder:event-bus] Listener crashed on ${channel}: ${message}`);
14
14
  }
15
15
  function createSafeEventBus() {
16
16
  const registry = /* @__PURE__ */ new Map();
@@ -63,4 +63,4 @@ function getSharedBus() {
63
63
  export {
64
64
  getSharedBus
65
65
  };
66
- //# sourceMappingURL=chunk-ZGVHUX3M.js.map
66
+ //# sourceMappingURL=chunk-PMZVFWSR.js.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
3
  isSessionEntry
4
- } from "./chunk-RAPCMZL4.js";
4
+ } from "./chunk-FSP7CMNU.js";
5
5
  import {
6
6
  init_esm_shims
7
7
  } from "./chunk-3R73A4XB.js";
@@ -245,13 +245,11 @@ function applyMutation(board, mutation) {
245
245
  error: "done requires note as the evidence that the task actually finished (the command you ran, the file:line you verified). If the work did not happen, use block with a reason or drop it."
246
246
  };
247
247
  }
248
- if (target.status === "pending") {
249
- return {
250
- error: `task ${target.id} was never started, so it cannot be completed. Start it and do the work, or record the truth with block (reason) or drop.`
251
- };
252
- }
253
248
  }
254
249
  const notes = [];
250
+ if (mutation.op === "done" && target.status === "pending") {
251
+ notes.push(`started ${target.id} implicitly: done on a pending task records the start and the completion together`);
252
+ }
255
253
  const tasks = board.tasks.map((task) => {
256
254
  if (task.id !== target.id) {
257
255
  if (mutation.op === "start" && task.status === "active") {
@@ -373,4 +371,4 @@ export {
373
371
  foldSessionTaskHistory,
374
372
  createTaskBoardStore
375
373
  };
376
- //# sourceMappingURL=chunk-2JDWVJND.js.map
374
+ //# sourceMappingURL=chunk-Q4XWMHX6.js.map