@iowarp/clio-coder 0.3.1 → 0.3.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 (595) hide show
  1. package/CHANGELOG.md +90 -2
  2. package/CONTRIBUTING.md +23 -23
  3. package/README.md +284 -613
  4. package/dist/{acp-FPR54DGL.js → acp-BIYHVZIM.js} +43 -53
  5. package/dist/{agents-OGPIHPJH.js → agents-YT6SSRIT.js} +43 -26
  6. package/dist/assets/codewiki.json +1 -1
  7. package/dist/{auth-IC3K6NIZ.js → auth-5TWEIYDN.js} +20 -12
  8. package/dist/{chunk-PV4JUBVJ.js → chunk-2EHAIA3X.js} +40 -21
  9. package/dist/{chunk-IS3ONKU3.js → chunk-2IR2NMPA.js} +6 -4
  10. package/dist/chunk-2SFS6XQE.js +122 -0
  11. package/dist/chunk-2VTFPG5O.js +48 -0
  12. package/dist/{chunk-MAR7Y6HW.js → chunk-3ZXDFGR5.js} +23 -16
  13. package/dist/chunk-4BJ5BYCE.js +61 -0
  14. package/dist/{chunk-474KN5II.js → chunk-4BPJXDWC.js} +111 -181
  15. package/dist/chunk-4KLWL3UC.js +18 -0
  16. package/dist/chunk-4VP4KH3K.js +962 -0
  17. package/dist/chunk-4ZG3XFUR.js +77 -0
  18. package/dist/chunk-5B2AEOW5.js +5407 -0
  19. package/dist/{chunk-K2ITRMHZ.js → chunk-5TSRNF4G.js} +6 -138
  20. package/dist/{chunk-OLBBMFRD.js → chunk-5UUP6MWO.js} +24 -62
  21. package/dist/chunk-65DEGPJ6.js +52 -0
  22. package/dist/chunk-6EJMN2Y3.js +17 -0
  23. package/dist/chunk-6EJV5X2W.js +16405 -0
  24. package/dist/chunk-6N5PTWMY.js +136 -0
  25. package/dist/chunk-6XLNIQDB.js +27 -0
  26. package/dist/{chunk-TEKV33Q5.js → chunk-77VKQEHF.js} +65 -33
  27. package/dist/chunk-7CR24IG7.js +242 -0
  28. package/dist/{chunk-M5T5VO65.js → chunk-7EYHLWU7.js} +837 -635
  29. package/dist/chunk-7MNJORFF.js +22 -0
  30. package/dist/{chunk-KY56HMHH.js → chunk-A3CYT5EX.js} +125 -31
  31. package/dist/chunk-AGYYIBLL.js +1069 -0
  32. package/dist/chunk-AO4RKG4M.js +277 -0
  33. package/dist/{chunk-GB6QRBXN.js → chunk-APJ265NV.js} +54 -1187
  34. package/dist/chunk-ARBGF5F7.js +174 -0
  35. package/dist/{chunk-673JJUWJ.js → chunk-BMEMKKIT.js} +2 -2
  36. package/dist/chunk-CBCAPZAA.js +229 -0
  37. package/dist/chunk-CMZWFGD2.js +352 -0
  38. package/dist/chunk-ECH6PKUQ.js +39 -0
  39. package/dist/chunk-ED4KHGC3.js +143 -0
  40. package/dist/chunk-EKMEHE4H.js +340 -0
  41. package/dist/{chunk-RPTR2H26.js → chunk-EPVUXGXG.js} +21 -15
  42. package/dist/chunk-FCSXB6T2.js +338 -0
  43. package/dist/chunk-FJ3H4MN5.js +48 -0
  44. package/dist/chunk-FQ4SKYE4.js +29 -0
  45. package/dist/chunk-G2DE3C7R.js +644 -0
  46. package/dist/chunk-G4BMMOKF.js +182 -0
  47. package/dist/{chunk-ZPY3JZ5E.js → chunk-GGXXDWE4.js} +183 -1233
  48. package/dist/chunk-HC4CLZ2Y.js +68 -0
  49. package/dist/{chunk-LU4TK2PR.js → chunk-HFSBBKSQ.js} +5 -56
  50. package/dist/{chunk-PIUMUEMV.js → chunk-HKIYEGME.js} +10 -6
  51. package/dist/chunk-I4HZDVNP.js +73 -0
  52. package/dist/{chunk-4QKXUHSR.js → chunk-IGLFWIYI.js} +70 -20
  53. package/dist/chunk-IKCO5N3L.js +162 -0
  54. package/dist/chunk-IR4CFBFN.js +56 -0
  55. package/dist/{chunk-PFEFKVGL.js → chunk-J5HN4RYU.js} +13 -11
  56. package/dist/{chunk-R5KLMSBV.js → chunk-J5Q24KAG.js} +2 -2
  57. package/dist/{chunk-K5XEMXTI.js → chunk-JVCV3ICN.js} +1 -1
  58. package/dist/chunk-KJ5LWLOE.js +1077 -0
  59. package/dist/chunk-LBMZMYH2.js +285 -0
  60. package/dist/{chunk-G34LV2PF.js → chunk-LBNRH5WM.js} +84 -170
  61. package/dist/{chunk-H6F6BYOH.js → chunk-LZSJBIVT.js} +7003 -7434
  62. package/dist/{chunk-HQQID6OA.js → chunk-M6SHUN7Q.js} +5 -5
  63. package/dist/chunk-MAW544W2.js +1882 -0
  64. package/dist/chunk-MBS4V7ZP.js +217 -0
  65. package/dist/{chunk-FST4FYJB.js → chunk-MFFY33HR.js} +99 -140
  66. package/dist/chunk-MNA4JGU4.js +255 -0
  67. package/dist/chunk-MQSRRFWA.js +3428 -0
  68. package/dist/{chunk-BSU2YIWB.js → chunk-MVVUPGPW.js} +131 -136
  69. package/dist/chunk-OAO4GE4M.js +619 -0
  70. package/dist/chunk-OHHN2SO4.js +5135 -0
  71. package/dist/chunk-OKGUZO2U.js +34 -0
  72. package/dist/{chunk-GAEBEQVI.js → chunk-OOJYHWRB.js} +32 -346
  73. package/dist/{chunk-Q5WJOSJ7.js → chunk-OQ33BKR3.js} +2 -1
  74. package/dist/chunk-OQE5J4C6.js +73 -0
  75. package/dist/{chunk-KKNLWXI6.js → chunk-ORBHGJC5.js} +8 -8
  76. package/dist/chunk-POHLU5DW.js +1186 -0
  77. package/dist/chunk-QKMUKYO7.js +4961 -0
  78. package/dist/{chunk-ASND7OZK.js → chunk-QTYWRVRA.js} +13 -13
  79. package/dist/{chunk-EYOKLTMF.js → chunk-SRF2PJNW.js} +17 -3
  80. package/dist/chunk-SST6Z5JA.js +80 -0
  81. package/dist/chunk-STBPMHSX.js +2456 -0
  82. package/dist/chunk-T6YILFSB.js +80 -0
  83. package/dist/chunk-TZTZS7QK.js +227 -0
  84. package/dist/chunk-UOV2BYIW.js +107 -0
  85. package/dist/{chunk-Q3RUPKEJ.js → chunk-V4RXGQ5Q.js} +58 -189
  86. package/dist/chunk-VAKQQHWR.js +434 -0
  87. package/dist/chunk-VG7TBQIY.js +128 -0
  88. package/dist/chunk-VJWL6YS5.js +244 -0
  89. package/dist/chunk-WEH5XRJQ.js +32 -0
  90. package/dist/chunk-WMSVI4G2.js +2095 -0
  91. package/dist/chunk-WVO7V2QY.js +797 -0
  92. package/dist/chunk-X4RCMKVQ.js +641 -0
  93. package/dist/chunk-X75S7HFS.js +374 -0
  94. package/dist/chunk-XN3L4EYL.js +46 -0
  95. package/dist/{chunk-RDLVBZEO.js → chunk-YCWGATWI.js} +6 -4
  96. package/dist/chunk-YHZX5GEU.js +193 -0
  97. package/dist/chunk-YXLYO42X.js +91 -0
  98. package/dist/{chunk-NMOX6HFD.js → chunk-ZDOOVTXZ.js} +29 -77
  99. package/dist/chunk-ZI647VB5.js +37 -0
  100. package/dist/{chunk-C4PTHK7P.js → chunk-ZWLZP4ZT.js} +5 -5
  101. package/dist/cli/index.js +62 -54
  102. package/dist/clio-4LY5K2AC.js +25 -0
  103. package/dist/code-nav-7AX6FYE6.js +600 -0
  104. package/dist/codewiki/build-worker.js +66 -0
  105. package/dist/compile-cache-CVJMMODC.js +18 -0
  106. package/dist/{components-DMAOEKFB.js → components-KELWS457.js} +11 -6
  107. package/dist/{config-IRUQ7SE4.js → config-GTLUW2PR.js} +92 -55
  108. package/dist/configure-R6A64DHX.js +42 -0
  109. package/dist/context-5VKGUVJJ.js +866 -0
  110. package/dist/{context-3KWFLHJG.js → context-JFZEJ7W5.js} +15 -13
  111. package/dist/{context-5RADCKTR.js → context-RW5HC47S.js} +71 -35
  112. package/dist/{context-clear-7TSNPAAI.js → context-clear-6ZHBAZZT.js} +54 -28
  113. package/dist/{context-index-W4RLWOQH.js → context-index-BZ4UYMTC.js} +30 -24
  114. package/dist/dispatch-runner-VKBRCWQC.js +1997 -0
  115. package/dist/{docs-5AWSPS37.js → docs-2C2LTVT2.js} +23 -10
  116. package/dist/{doctor-UC5NAJYQ.js → doctor-KI767GSN.js} +27 -17
  117. package/dist/{eval-U6TJHRLX.js → eval-XSSNATB4.js} +29 -16
  118. package/dist/{evidence-YEGUW4L3.js → evidence-UA6AWDQQ.js} +46 -26
  119. package/dist/{evolve-TXARCTPG.js → evolve-QNTFGV6Z.js} +45 -25
  120. package/dist/{extensions-OZFJ3A3G.js → extensions-QVDOHDGJ.js} +16 -7
  121. package/dist/{fleet-6G3DHNYE.js → fleet-Q7UOMUSG.js} +163 -54
  122. package/dist/{fleet-preflight-DSNT37JK.js → fleet-preflight-DDN536IT.js} +7 -4
  123. package/dist/{init-KZ5QTF6M.js → init-WBB65ZHQ.js} +69 -32
  124. package/dist/{memory-73ESV5YC.js → memory-MD3O64RI.js} +48 -27
  125. package/dist/{models-A4PVNWJK.js → models-BZU34YWD.js} +39 -25
  126. package/dist/monitor-MEQA5C3I.js +661 -0
  127. package/dist/{chunk-FCIH3BIZ.js → orchestrator-CGFKEP27.js} +11832 -8687
  128. package/dist/{paths-C4H6IV77.js → paths-UXLN5YYZ.js} +10 -5
  129. package/dist/{preload-6WVMHX3A.js → preload-P6DGH2PZ.js} +2 -2
  130. package/dist/{reset-BGW6OGMV.js → reset-L2FQEE3E.js} +16 -10
  131. package/dist/{run-YTPEYQOH.js → run-IV4Q6RLN.js} +101 -61
  132. package/dist/{share-YIFFV4NQ.js → share-S5BZQC5I.js} +15 -8
  133. package/dist/{skills-2V6RA3OQ.js → skills-LQEKRDTN.js} +34 -14
  134. package/dist/{skills-eval-S2TVJO4F.js → skills-eval-3DC4HEWS.js} +70 -34
  135. package/dist/steer-GGWFUJUD.js +77 -0
  136. package/dist/{targets-TYXLPB23.js → targets-C4SSGQOB.js} +43 -27
  137. package/dist/terminal-lease-IT5JW2NR.js +395 -0
  138. package/dist/{trace-GGOJ6Q6Z.js → trace-PNCASAXC.js} +41 -16
  139. package/dist/{chunk-N6F52NLF.js → tree-sitter-HGKH6LG4.js} +28 -2306
  140. package/dist/{uninstall-LLLT4F4W.js → uninstall-FZCQCDKC.js} +10 -5
  141. package/dist/{upgrade-33G2LMM5.js → upgrade-7TT7SQ3G.js} +45 -25
  142. package/dist/{usage-ZAFSXKKG.js → usage-GV4PKT3M.js} +62 -31
  143. package/dist/verify-G6V4D2G7.js +716 -0
  144. package/dist/web-fetch-2YHJ3KTG.js +638 -0
  145. package/dist/{wiki-generate-NUQCVOQ3.js → wiki-generate-DQF6Z66B.js} +74 -34
  146. package/dist/worker/entry.js +221 -36
  147. package/dist/workspace-G4ZWUIPR.js +22 -0
  148. package/docs/README.md +22 -17
  149. package/docs/acp.md +168 -16
  150. package/docs/alcf-provider.md +1 -1
  151. package/docs/architecture.md +136 -7
  152. package/docs/artifact-versions.md +1 -1
  153. package/docs/built-in-agents.md +1 -1
  154. package/docs/capacity-and-scheduling.md +1 -1
  155. package/docs/commands-and-modes.md +114 -71
  156. package/docs/config-knobs-audit.md +1 -3
  157. package/docs/configuration-and-targets.md +174 -46
  158. package/docs/context-engine.md +29 -6
  159. package/docs/development-pipeline.md +26 -1
  160. package/docs/dispatch-architecture-rationale.md +1 -1
  161. package/docs/documentation-coverage.md +2 -2
  162. package/docs/documentation-guide.md +1 -1
  163. package/docs/environment-variables.md +13 -5
  164. package/docs/eval-runner.md +1 -1
  165. package/docs/evals-internal.md +1 -1
  166. package/docs/evidence-and-memory.md +6 -2
  167. package/docs/evolution.md +2 -2
  168. package/docs/exit-codes-and-output.md +15 -9
  169. package/docs/extensions-and-sharing.md +9 -9
  170. package/docs/fleet-dispatch.md +7 -5
  171. package/docs/git-commit-provenance.md +120 -0
  172. package/docs/glossary.md +1 -1
  173. package/docs/installation-and-lifecycle.md +34 -27
  174. package/docs/middleware-and-components.md +1 -1
  175. package/docs/model-catalog.md +45 -14
  176. package/docs/observability.md +8 -5
  177. package/docs/performance-methodology.md +491 -0
  178. package/docs/pi-boundary.md +72 -0
  179. package/docs/proactive-memory.md +3 -3
  180. package/docs/prompt-envelope-and-tools.md +24 -3
  181. package/docs/provider-adapter-cookbook.md +57 -4
  182. package/docs/release-cut-checklist.md +129 -115
  183. package/docs/safety-model.md +9 -5
  184. package/docs/scientific-validation.md +3 -3
  185. package/docs/session-lifecycle.md +55 -12
  186. package/docs/skills-marketplace.md +12 -8
  187. package/docs/time-conventions.md +1 -1
  188. package/docs/tool-usage.md +3 -3
  189. package/docs/trace-store.md +1 -1
  190. package/docs/troubleshooting.md +10 -7
  191. package/docs/tui-design.md +47 -10
  192. package/docs/worker-dispatch-mechanics.md +1 -1
  193. package/package.json +19 -22
  194. package/skills/coding/ast-grep/SKILL.md +136 -0
  195. package/skills/coding/ast-grep/evals.md +56 -0
  196. package/skills/coding/ast-grep/references/rule_reference.md +297 -0
  197. package/skills/coding/coding-standards/SKILL.md +113 -0
  198. package/skills/coding/coding-standards/evals.md +34 -0
  199. package/skills/coding/prototype/SKILL.md +86 -0
  200. package/skills/coding/prototype/evals.md +42 -0
  201. package/skills/coding/prototype/references/LOGIC.md +67 -0
  202. package/skills/coding/prototype/references/UI.md +112 -0
  203. package/skills/coding/tdd/SKILL.md +101 -0
  204. package/skills/coding/tdd/evals.md +41 -0
  205. package/skills/coding/tdd/references/mocking.md +59 -0
  206. package/skills/coding/tdd/references/tests.md +77 -0
  207. package/skills/context/context-handoff/SKILL.md +126 -0
  208. package/skills/context/context-handoff/evals.md +57 -0
  209. package/skills/context/context-handoff/scripts/new-handoff.sh +26 -0
  210. package/skills/context/context-prime/SKILL.md +95 -0
  211. package/skills/context/context-prime/evals.md +54 -0
  212. package/skills/meta/clio-dev/SKILL.md +91 -0
  213. package/skills/meta/clio-dev/evals.md +45 -0
  214. package/skills/meta/clio-test/SKILL.md +130 -0
  215. package/skills/meta/clio-test/evals.md +43 -0
  216. package/skills/meta/clio-test/references/harness.md +97 -0
  217. package/skills/meta/clio-test/references/test-map.md +59 -0
  218. package/skills/meta/credentials/SKILL.md +125 -0
  219. package/skills/meta/credentials/evals.md +104 -0
  220. package/skills/meta/find-skills/SKILL.md +72 -0
  221. package/skills/meta/find-skills/evals.md +47 -0
  222. package/skills/meta/herdr/SKILL.md +127 -0
  223. package/skills/meta/herdr/evals.md +38 -0
  224. package/skills/meta/skill-craft/SKILL.md +102 -0
  225. package/skills/meta/skill-craft/evals.md +41 -0
  226. package/skills/planning/architecture/SKILL.md +129 -0
  227. package/skills/planning/architecture/evals.md +36 -0
  228. package/skills/planning/backlog/SKILL.md +90 -0
  229. package/skills/planning/backlog/evals.md +43 -0
  230. package/skills/planning/prd/SKILL.md +82 -0
  231. package/skills/planning/prd/evals.md +49 -0
  232. package/skills/planning/product-intent/SKILL.md +112 -0
  233. package/skills/planning/product-intent/evals.md +36 -0
  234. package/skills/planning/tech-spec/SKILL.md +115 -0
  235. package/skills/planning/tech-spec/evals.md +47 -0
  236. package/skills/registry.yaml +136 -0
  237. package/skills/research/arxiv-literature/SKILL.md +104 -0
  238. package/skills/research/arxiv-literature/evals.md +58 -0
  239. package/skills/research/experiment-protocol/SKILL.md +122 -0
  240. package/skills/research/experiment-protocol/evals.md +91 -0
  241. package/skills/research/scientific-debugging/SKILL.md +119 -0
  242. package/skills/research/scientific-debugging/evals.md +138 -0
  243. package/skills/research/scientific-modernization/SKILL.md +138 -0
  244. package/skills/research/scientific-modernization/evals.md +84 -0
  245. package/skills/workflow/design-council/SKILL.md +139 -0
  246. package/skills/workflow/design-council/evals.md +97 -0
  247. package/skills/workflow/grill-me/SKILL.md +186 -0
  248. package/skills/workflow/grill-me/evals.md +78 -0
  249. package/skills/workflow/workflow-distiller/SKILL.md +136 -0
  250. package/skills/workflow/workflow-distiller/evals.md +107 -0
  251. package/src/cli/acp.ts +31 -4
  252. package/src/cli/clio.ts +68 -6
  253. package/src/cli/config-inspect.ts +28 -22
  254. package/src/cli/configure.ts +47 -9
  255. package/src/cli/context-clear.ts +2 -2
  256. package/src/cli/context-index.ts +21 -23
  257. package/src/cli/context.ts +13 -8
  258. package/src/cli/default-target.ts +9 -17
  259. package/src/cli/docs.ts +11 -5
  260. package/src/cli/evidence.ts +4 -1
  261. package/src/cli/extensions.ts +10 -1
  262. package/src/cli/fleet.ts +47 -6
  263. package/src/cli/index.ts +55 -26
  264. package/src/cli/memory.ts +3 -1
  265. package/src/cli/models.ts +1 -1
  266. package/src/cli/modes/json-stream.ts +37 -1
  267. package/src/cli/modes/print.ts +24 -9
  268. package/src/cli/run.ts +2 -2
  269. package/src/cli/skills-eval.ts +23 -8
  270. package/src/cli/skills.ts +19 -4
  271. package/src/cli/targets.ts +4 -0
  272. package/src/cli/text-layout.ts +15 -5
  273. package/src/cli/trace.ts +62 -14
  274. package/src/cli/upgrade.ts +18 -2
  275. package/src/cli/usage.ts +10 -3
  276. package/src/cli/wiki-generate.ts +2 -1
  277. package/src/core/agent-environment.ts +7 -0
  278. package/src/core/bash-exec.ts +72 -1
  279. package/src/core/boot-trace.ts +9 -4
  280. package/src/core/bus-events.ts +20 -4
  281. package/src/core/commit-attribution.ts +157 -0
  282. package/src/core/compile-cache.ts +159 -0
  283. package/src/core/config.ts +131 -2
  284. package/src/core/defaults.ts +39 -5
  285. package/src/core/domain-loader.ts +12 -5
  286. package/src/core/git-commit-attribution.ts +362 -0
  287. package/src/core/incomplete-installation.ts +45 -0
  288. package/src/core/response-schema.ts +1 -1
  289. package/src/core/safe-exec.ts +13 -1
  290. package/src/core/settings-layers.ts +155 -21
  291. package/src/core/skill-activation.ts +1 -1
  292. package/src/core/startup-timer.ts +3 -3
  293. package/src/core/state-file-lock.ts +13 -1
  294. package/src/core/termination.ts +78 -5
  295. package/src/domains/config/classify.ts +15 -3
  296. package/src/domains/config/extension.ts +19 -13
  297. package/src/domains/config/index.ts +10 -0
  298. package/src/domains/config/keybindings.ts +42 -6
  299. package/src/domains/context/bootstrap-prompt.ts +1 -1
  300. package/src/domains/context/bootstrap.ts +111 -18
  301. package/src/domains/context/clear.ts +16 -11
  302. package/src/domains/context/clio-md.ts +111 -9
  303. package/src/domains/context/codewiki/artifact.ts +400 -0
  304. package/src/domains/context/codewiki/build-worker-protocol.ts +24 -0
  305. package/src/domains/context/codewiki/build-worker.ts +54 -0
  306. package/src/domains/context/codewiki/coordinator.ts +182 -0
  307. package/src/domains/context/codewiki/indexer.ts +59 -144
  308. package/src/domains/context/codewiki/paths.ts +67 -0
  309. package/src/domains/context/codewiki/schema.ts +80 -0
  310. package/src/domains/context/codewiki/tree-sitter.ts +1 -1
  311. package/src/domains/context/contract.ts +11 -5
  312. package/src/domains/context/extension.ts +94 -143
  313. package/src/domains/context/fingerprint.ts +3 -1
  314. package/src/domains/context/index.ts +12 -22
  315. package/src/domains/context/project-metadata.ts +19 -0
  316. package/src/domains/context/prompt-context.ts +9 -10
  317. package/src/domains/context/refresh.ts +29 -21
  318. package/src/domains/context/runtime.ts +17 -0
  319. package/src/domains/context/wiki/generate.ts +39 -34
  320. package/src/domains/context/wiki/plan.ts +1 -1
  321. package/src/domains/context/wiki/prompts.ts +21 -8
  322. package/src/domains/dispatch/code-step.ts +20 -1
  323. package/src/domains/dispatch/extension.ts +158 -21
  324. package/src/domains/dispatch/failure-classification.ts +6 -0
  325. package/src/domains/dispatch/fleet-commit-attribution.ts +56 -0
  326. package/src/domains/dispatch/orphan-recovery.ts +50 -8
  327. package/src/domains/dispatch/receipt-integrity.ts +5 -0
  328. package/src/domains/dispatch/state.ts +31 -6
  329. package/src/domains/dispatch/transport.ts +2 -1
  330. package/src/domains/dispatch/types.ts +14 -0
  331. package/src/domains/dispatch/worker-spawn.ts +21 -2
  332. package/src/domains/eval/metrics/context.ts +1 -1
  333. package/src/domains/eval/types.ts +0 -1
  334. package/src/domains/evidence/build.ts +41 -1
  335. package/src/domains/lifecycle/migrations/2026-08-18-lmstudio-runtime-id.ts +52 -0
  336. package/src/domains/lifecycle/migrations/index.ts +24 -4
  337. package/src/domains/middleware/hooks-io.ts +12 -0
  338. package/src/domains/middleware/skills-reminder.ts +30 -15
  339. package/src/domains/prompts/compiler.ts +142 -84
  340. package/src/domains/prompts/contract.ts +18 -2
  341. package/src/domains/prompts/extension.ts +39 -7
  342. package/src/domains/prompts/fragment-loader.ts +0 -1
  343. package/src/domains/prompts/fragments/identity/clio.md +2 -4
  344. package/src/domains/prompts/fragments/identity/docs-routing.md +10 -0
  345. package/src/domains/prompts/fragments/identity/self-awareness.md +1 -45
  346. package/src/domains/prompts/fragments/operating/contract.md +4 -50
  347. package/src/domains/prompts/fragments/operating/delegation.md +42 -0
  348. package/src/domains/prompts/fragments/operating/skills.md +26 -0
  349. package/src/domains/prompts/fragments/operating/worker.md +16 -0
  350. package/src/domains/prompts/fragments/safety/auto-edit.md +5 -5
  351. package/src/domains/prompts/fragments/safety/full-auto.md +3 -3
  352. package/src/domains/prompts/fragments/safety/read-only.md +4 -4
  353. package/src/domains/prompts/fragments/safety/suggest.md +2 -2
  354. package/src/domains/prompts/fragments/wiki/page.md +10 -0
  355. package/src/domains/prompts/fragments/wiki/plan.md +10 -0
  356. package/src/domains/prompts/preload.ts +3 -3
  357. package/src/domains/providers/auth/api-key.ts +1 -1
  358. package/src/domains/providers/auth/backend-file.ts +20 -10
  359. package/src/domains/providers/auth/backend-memory.ts +59 -4
  360. package/src/domains/providers/auth/boot-status.ts +65 -0
  361. package/src/domains/providers/auth/oauth.ts +2 -1
  362. package/src/domains/providers/auth/storage.ts +97 -38
  363. package/src/domains/providers/capabilities.ts +12 -4
  364. package/src/domains/providers/contract.ts +15 -4
  365. package/src/domains/providers/extension.ts +18 -6
  366. package/src/domains/providers/model-runtime-capabilities.ts +15 -4
  367. package/src/domains/providers/models/local-models/clio-local-coding-targets.yaml +118 -35
  368. package/src/domains/providers/plugins.ts +5 -3
  369. package/src/domains/providers/probe/fingerprint.ts +25 -5
  370. package/src/domains/providers/registry.ts +31 -10
  371. package/src/domains/providers/runtimes/boot-manifest.ts +55 -0
  372. package/src/domains/providers/runtimes/builtins.ts +2 -2
  373. package/src/domains/providers/runtimes/common/lmstudio-http.ts +423 -0
  374. package/src/domains/providers/runtimes/common/local-synth.ts +6 -7
  375. package/src/domains/providers/runtimes/local-native/lmstudio.ts +241 -0
  376. package/src/domains/providers/support.ts +6 -3
  377. package/src/domains/providers/types/local-model-quirks.ts +7 -9
  378. package/src/domains/providers/types/runtime-descriptor.ts +12 -1
  379. package/src/domains/providers/types/target-descriptor.ts +22 -0
  380. package/src/domains/resources/contract.ts +0 -1
  381. package/src/domains/resources/extension.ts +1 -3
  382. package/src/domains/resources/loader.ts +3 -4
  383. package/src/domains/resources/prompts/loader.ts +16 -2
  384. package/src/domains/resources/prompts/substitute.ts +1 -65
  385. package/src/domains/resources/skills/content-hash.ts +2 -0
  386. package/src/domains/resources/skills/install.ts +17 -0
  387. package/src/domains/resources/skills/loader.ts +17 -10
  388. package/src/domains/resources/skills/marketplace.ts +55 -9
  389. package/src/domains/safety/action-classifier.ts +4 -2
  390. package/src/domains/safety/audit.ts +8 -2
  391. package/src/domains/safety/extension.ts +1 -1
  392. package/src/domains/session/compaction/branch-summary.ts +3 -2
  393. package/src/domains/session/compaction/cut-point.ts +2 -1
  394. package/src/domains/session/compaction/tokens.ts +2 -1
  395. package/src/domains/session/context-ledger.ts +14 -0
  396. package/src/domains/session/contract.ts +15 -0
  397. package/src/domains/session/decision-board.ts +190 -0
  398. package/src/domains/session/entries.ts +66 -3
  399. package/src/domains/session/extension.ts +93 -12
  400. package/src/domains/session/retry.ts +10 -18
  401. package/src/domains/session/session-artifacts.ts +107 -0
  402. package/src/domains/session/task-board.ts +207 -13
  403. package/src/domains/session/tree/active-path.ts +44 -5
  404. package/src/domains/session/tree/fork.ts +26 -27
  405. package/src/domains/session/tree/preview.ts +2 -2
  406. package/src/domains/session/workspace/git-probe.ts +17 -11
  407. package/src/domains/user-tasks/store.ts +297 -0
  408. package/src/engine/acp/errors.ts +96 -0
  409. package/src/engine/acp/server.ts +1728 -146
  410. package/src/engine/acp/transport.ts +135 -14
  411. package/src/engine/acp/types.ts +26 -0
  412. package/src/engine/agent.ts +3 -3
  413. package/src/engine/ai.ts +32 -27
  414. package/src/engine/alcf-oauth.ts +26 -19
  415. package/src/engine/api-registry.ts +223 -0
  416. package/src/engine/apis/index.ts +3 -7
  417. package/src/engine/apis/llamacpp-residency.ts +49 -9
  418. package/src/engine/apis/lmstudio-residency.ts +5 -21
  419. package/src/engine/apis/lmstudio.ts +243 -0
  420. package/src/engine/apis/ollama-native.ts +24 -3
  421. package/src/engine/apis/openai-completions.ts +170 -91
  422. package/src/engine/apis/residency.ts +139 -3
  423. package/src/engine/apis/types.ts +16 -0
  424. package/src/engine/env-api-keys.ts +98 -0
  425. package/src/engine/gemma-channel-filter.ts +223 -0
  426. package/src/engine/instrumented-tui.ts +192 -0
  427. package/src/engine/messages.ts +14 -0
  428. package/src/engine/models.ts +42 -0
  429. package/src/engine/oauth.ts +16 -12
  430. package/src/engine/prompt-templates.ts +1 -0
  431. package/src/engine/provider-payload.ts +16 -59
  432. package/src/engine/strip-tokenizer-sentinels.ts +1 -1
  433. package/src/engine/truncate.ts +9 -0
  434. package/src/engine/tui.ts +17 -9
  435. package/src/engine/types.ts +3 -6
  436. package/src/engine/worker-runtime-capabilities.ts +5 -0
  437. package/src/engine/worker-runtime.ts +1 -1
  438. package/src/engine/worker-tools.ts +9 -4
  439. package/src/entry/boot-options.ts +50 -0
  440. package/src/entry/orchestrator.ts +288 -150
  441. package/src/interactive/application-controller.ts +89 -2
  442. package/src/interactive/chat-loop.ts +266 -41
  443. package/src/interactive/chat-panel.ts +173 -47
  444. package/src/interactive/chat-renderer.ts +262 -72
  445. package/src/interactive/clio-editor.ts +3 -8
  446. package/src/interactive/command-fallbacks.ts +2 -2
  447. package/src/interactive/context-overlay.ts +27 -1
  448. package/src/interactive/editor-submit.ts +228 -24
  449. package/src/interactive/export-html/ansi-to-html.ts +161 -0
  450. package/src/interactive/export-html/index.ts +51 -0
  451. package/src/interactive/export-html/template.ts +45 -0
  452. package/src/interactive/export-html/tool-renderer.ts +54 -0
  453. package/src/interactive/footer/dashboard.ts +4 -0
  454. package/src/interactive/footer/notifications.ts +1 -1
  455. package/src/interactive/footer/widgets.ts +20 -2
  456. package/src/interactive/footer-panel.ts +2 -2
  457. package/src/interactive/format-time.ts +14 -2
  458. package/src/interactive/interactive-application.ts +201 -17
  459. package/src/interactive/interactive-event-projection.ts +6 -1
  460. package/src/interactive/interactive-input-runtime.ts +50 -4
  461. package/src/interactive/interactive-presentation.ts +151 -19
  462. package/src/interactive/interactive-shell.ts +268 -14
  463. package/src/interactive/interactive-slash-runtime.ts +176 -114
  464. package/src/interactive/interactive-tickers.ts +38 -7
  465. package/src/interactive/keybinding-manager.ts +1 -1
  466. package/src/interactive/layout.ts +40 -3
  467. package/src/interactive/overlay-frame.ts +1 -1
  468. package/src/interactive/overlay-general-openers.ts +58 -1
  469. package/src/interactive/overlay-key-routing.ts +3 -0
  470. package/src/interactive/overlay-lifecycle.ts +13 -0
  471. package/src/interactive/overlay-permission-lifecycle.ts +2 -1
  472. package/src/interactive/overlay-session-lifecycle.ts +69 -12
  473. package/src/interactive/overlays/decisions.ts +300 -0
  474. package/src/interactive/overlays/help-reference.ts +15 -10
  475. package/src/interactive/overlays/model-selector.ts +34 -16
  476. package/src/interactive/overlays/session-selector.ts +18 -0
  477. package/src/interactive/overlays/settings.ts +105 -17
  478. package/src/interactive/overlays/skills-hub.ts +4 -4
  479. package/src/interactive/overlays/tree-selector.ts +41 -6
  480. package/src/interactive/render-trace.ts +499 -90
  481. package/src/interactive/renderers/compaction-summary.ts +2 -2
  482. package/src/interactive/renderers/diff.ts +115 -104
  483. package/src/interactive/renderers/mermaid.ts +53 -0
  484. package/src/interactive/renderers/tool-execution.ts +386 -133
  485. package/src/interactive/renderers/worker-entry.ts +20 -4
  486. package/src/interactive/session-switch-settlement.ts +10 -0
  487. package/src/interactive/slash-autocomplete.ts +6 -114
  488. package/src/interactive/slash-commands.ts +135 -47
  489. package/src/interactive/slash-spec.ts +9 -38
  490. package/src/interactive/status/controller.ts +5 -1
  491. package/src/interactive/stdout-backpressure.ts +99 -0
  492. package/src/interactive/stream-pacer.ts +530 -0
  493. package/src/interactive/stream-pacing-policy.ts +66 -0
  494. package/src/interactive/tasks-overlay.ts +368 -14
  495. package/src/interactive/terminal-lease.ts +485 -0
  496. package/src/interactive/theme/tokens.ts +1 -1
  497. package/src/interactive/turn-context.ts +4 -3
  498. package/src/interactive/turn-persistence.ts +30 -13
  499. package/src/interactive/turn-queues.ts +12 -0
  500. package/src/interactive/turn-recovery.ts +25 -8
  501. package/src/interactive/turn-runtime.ts +79 -12
  502. package/src/interactive/turn-state.ts +10 -0
  503. package/src/interactive/view/artifacts.ts +114 -4
  504. package/src/interactive/view/view-overlay.ts +3 -0
  505. package/src/interactive/welcome-dashboard.ts +17 -16
  506. package/src/interactive/worker-receipts.ts +52 -3
  507. package/src/interactive/worker-stream.ts +5 -1
  508. package/src/tools/agent-tools.ts +23 -3
  509. package/src/tools/artifact.ts +2 -2
  510. package/src/tools/ask-user.ts +23 -13
  511. package/src/tools/bash.ts +30 -2
  512. package/src/tools/bootstrap.ts +34 -431
  513. package/src/tools/builtin-tool-catalog.ts +265 -0
  514. package/src/tools/codewiki/code-nav-surface.ts +29 -0
  515. package/src/tools/codewiki/code-nav.ts +8 -22
  516. package/src/tools/codewiki/shared.ts +41 -38
  517. package/src/tools/context/docs-engine.ts +14 -3
  518. package/src/tools/context/index.ts +107 -28
  519. package/src/tools/context/surface.ts +19 -0
  520. package/src/tools/core-bootstrap.ts +168 -0
  521. package/src/tools/credential-present.ts +5 -5
  522. package/src/tools/dispatch-admission.ts +533 -0
  523. package/src/tools/dispatch-background.ts +54 -0
  524. package/src/tools/dispatch-event-text.ts +6 -0
  525. package/src/tools/dispatch-plan.ts +9 -4
  526. package/src/tools/dispatch-run-events.ts +238 -0
  527. package/src/tools/dispatch-runner.ts +2370 -0
  528. package/src/tools/dispatch-scout-admission.ts +295 -0
  529. package/src/tools/dispatch-types.ts +77 -0
  530. package/src/tools/dispatch.ts +67 -3161
  531. package/src/tools/find.ts +4 -2
  532. package/src/tools/grep.ts +2 -2
  533. package/src/tools/lazy-tool.ts +60 -0
  534. package/src/tools/ledger.ts +3 -3
  535. package/src/tools/monitor-surface.ts +36 -0
  536. package/src/tools/monitor.ts +2 -32
  537. package/src/tools/observers.ts +2 -2
  538. package/src/tools/registry.ts +39 -27
  539. package/src/tools/safe-exec.ts +2 -2
  540. package/src/tools/steer-surface.ts +17 -0
  541. package/src/tools/steer.ts +2 -13
  542. package/src/tools/tasks.ts +108 -11
  543. package/src/tools/truncate.ts +25 -184
  544. package/src/tools/verify/frontend.ts +3 -1
  545. package/src/tools/verify/index.ts +3 -38
  546. package/src/tools/verify/surface.ts +46 -0
  547. package/src/tools/web-fetch-surface.ts +23 -0
  548. package/src/tools/web-fetch.ts +2 -20
  549. package/src/tools/write.ts +7 -2
  550. package/src/worker/entry.ts +39 -2
  551. package/src/worker/spec-contract.ts +26 -5
  552. package/dist/chunk-7SS2CTV2.js +0 -61361
  553. package/dist/chunk-DKGKUHFA.js +0 -924
  554. package/dist/chunk-GEP36Y4X.js +0 -12796
  555. package/dist/chunk-XYWBQRDM.js +0 -137
  556. package/dist/clio-BZVGEUFJ.js +0 -58
  557. package/dist/configure-S7S6F6CL.js +0 -32
  558. package/docs/html/agents_blueprint.html +0 -936
  559. package/docs/html/alcf_blueprint.html +0 -324
  560. package/docs/html/architecture_blueprint.html +0 -850
  561. package/docs/html/commands_blueprint.html +0 -939
  562. package/docs/html/config_knobs_audit_blueprint.html +0 -178
  563. package/docs/html/configuration_blueprint.html +0 -1080
  564. package/docs/html/context_blueprint.html +0 -603
  565. package/docs/html/documentation_blueprint.html +0 -832
  566. package/docs/html/environment_blueprint.html +0 -404
  567. package/docs/html/eval_blueprint.html +0 -743
  568. package/docs/html/evals_internal_blueprint.html +0 -190
  569. package/docs/html/evolution_blueprint.html +0 -674
  570. package/docs/html/extensions_blueprint.html +0 -2065
  571. package/docs/html/fleet_dispatch_blueprint.html +0 -286
  572. package/docs/html/index.html +0 -919
  573. package/docs/html/lifecycle_blueprint.html +0 -723
  574. package/docs/html/memory_blueprint.html +0 -699
  575. package/docs/html/middleware_blueprint.html +0 -664
  576. package/docs/html/models_blueprint.html +0 -2366
  577. package/docs/html/observability_blueprint.html +0 -683
  578. package/docs/html/provider_adapter_blueprint.html +0 -245
  579. package/docs/html/safety_blueprint.html +0 -1386
  580. package/docs/html/shared.css +0 -571
  581. package/docs/html/shared.js +0 -143
  582. package/docs/html/skills_blueprint.html +0 -671
  583. package/docs/html/soak_blueprint.html +0 -182
  584. package/docs/html/tool_usage_blueprint.html +0 -350
  585. package/docs/html/tools_blueprint.html +0 -2249
  586. package/docs/html/trace_blueprint.html +0 -235
  587. package/docs/html/tui_design_blueprint.html +0 -374
  588. package/docs/html/validation_blueprint.html +0 -961
  589. package/docs/html/worker_dispatch_blueprint.html +0 -231
  590. package/src/core/release.ts +0 -2
  591. package/src/domains/providers/runtimes/common/lmstudio-logger.ts +0 -32
  592. package/src/domains/providers/runtimes/local-native/lmstudio-native.ts +0 -491
  593. package/src/engine/apis/lmstudio-native.ts +0 -1438
  594. package/src/engine/apis/thinking-replay.ts +0 -11
  595. package/src/tools/string-enum.ts +0 -15
@@ -1,939 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Clio Coder Commands &amp; Modes Blueprint (v0.3.1)</title>
7
-
8
- <style>
9
- :root {
10
- --bg-dark: #090d16;
11
- --bg-grid: rgba(255, 255, 255, 0.02);
12
- --bg-card: rgba(13, 20, 38, 0.45);
13
- --bg-card-hover: rgba(20, 30, 58, 0.6);
14
- --border-card: rgba(255, 255, 255, 0.08);
15
- --border-card-hover: rgba(0, 240, 255, 0.3);
16
- --text-main: #f3f4f6;
17
- --text-muted: #9ca3af;
18
- --text-dim: #6b7280;
19
-
20
- --color-cyan: #00f0ff;
21
- --color-cyan-rgb: 0, 240, 255;
22
- --color-purple: #bd00ff;
23
- --color-purple-rgb: 189, 0, 255;
24
- --color-emerald: #10b981;
25
- --color-emerald-rgb: 16, 185, 129;
26
- --color-amber: #f59e0b;
27
- --color-amber-rgb: 245, 158, 11;
28
- --color-rose: #ef4444;
29
- --color-rose-rgb: 239, 68, 68;
30
-
31
- --gradient-main: linear-gradient(135deg, var(--color-cyan), var(--color-purple));
32
- --shadow-glow: 0 0 25px rgba(0, 240, 255, 0.15);
33
- --font-sans: "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", Arial, sans-serif;
34
- --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
35
-
36
- --glass-blur: blur(12px);
37
- }
38
-
39
- * {
40
- box-sizing: border-box;
41
- margin: 0;
42
- padding: 0;
43
- }
44
-
45
- body {
46
- background-color: var(--bg-dark);
47
- background-image:
48
- radial-gradient(circle at 10% 20%, rgba(var(--color-cyan-rgb), 0.05) 0%, transparent 40%),
49
- radial-gradient(circle at 90% 80%, rgba(var(--color-purple-rgb), 0.05) 0%, transparent 40%),
50
- radial-gradient(circle at 50% 50%, #0d1527 0%, var(--bg-dark) 100%);
51
- color: var(--text-main);
52
- font-family: var(--font-sans);
53
- min-height: 100vh;
54
- line-height: 1.6;
55
- overflow-x: hidden;
56
- position: relative;
57
- }
58
-
59
- body::before {
60
- content: '';
61
- position: absolute;
62
- inset: 0;
63
- background-image: linear-gradient(var(--bg-grid) 1px, transparent 1px),
64
- linear-gradient(90deg, var(--bg-grid) 1px, transparent 1px);
65
- background-size: 40px 40px;
66
- background-position: center top;
67
- pointer-events: none;
68
- z-index: 0;
69
- opacity: 0.8;
70
- }
71
-
72
- .container {
73
- max-width: 1400px;
74
- margin: 0 auto;
75
- padding: 2rem;
76
- position: relative;
77
- z-index: 1;
78
- }
79
-
80
- /* Header Styling */
81
- header {
82
- display: flex;
83
- justify-content: space-between;
84
- align-items: center;
85
- margin-bottom: 2.5rem;
86
- padding-bottom: 1.5rem;
87
- border-bottom: 1px solid rgba(255, 255, 255, 0.05);
88
- }
89
-
90
- .header-left {
91
- display: flex;
92
- align-items: center;
93
- gap: 1rem;
94
- }
95
-
96
- .header-logo {
97
- display: inline-flex;
98
- align-items: center;
99
- justify-content: center;
100
- width: 48px;
101
- height: 48px;
102
- background: rgba(255, 255, 255, 0.02);
103
- border: 1px solid var(--border-card);
104
- border-radius: 12px;
105
- }
106
-
107
- .header-logo svg {
108
- width: 28px;
109
- height: 28px;
110
- }
111
-
112
- .header-title-wrapper h1 {
113
- font-size: 1.5rem;
114
- font-weight: 800;
115
- letter-spacing: -0.03em;
116
- background: linear-gradient(to right, #ffffff, #c7d2fe, var(--color-cyan));
117
- -webkit-background-clip: text;
118
- -webkit-text-fill-color: transparent;
119
- }
120
-
121
- .header-title-wrapper p {
122
- font-size: 0.825rem;
123
- color: var(--text-muted);
124
- }
125
-
126
- .header-right {
127
- display: flex;
128
- align-items: center;
129
- gap: 1rem;
130
- }
131
-
132
- .back-btn {
133
- background: rgba(255, 255, 255, 0.03);
134
- border: 1px solid var(--border-card);
135
- color: var(--text-muted);
136
- padding: 0.5rem 1rem;
137
- border-radius: 8px;
138
- font-size: 0.875rem;
139
- font-weight: 600;
140
- text-decoration: none;
141
- display: inline-flex;
142
- align-items: center;
143
- gap: 0.5rem;
144
- transition: all 0.2s;
145
- }
146
-
147
- .back-btn:hover {
148
- background: rgba(255, 255, 255, 0.08);
149
- color: var(--text-main);
150
- border-color: rgba(var(--color-cyan-rgb), 0.3);
151
- }
152
-
153
- .version-badge {
154
- background: rgba(0, 240, 255, 0.08);
155
- border: 1px solid rgba(0, 240, 255, 0.25);
156
- color: var(--color-cyan);
157
- padding: 0.35rem 0.75rem;
158
- border-radius: 50px;
159
- font-size: 0.75rem;
160
- font-weight: 600;
161
- font-family: var(--font-mono);
162
- }
163
-
164
- /* Tabs Navigation */
165
- .tabs-nav {
166
- display: flex;
167
- gap: 0.75rem;
168
- margin-bottom: 2rem;
169
- }
170
-
171
- .tab-btn {
172
- background: rgba(255, 255, 255, 0.03);
173
- border: 1px solid var(--border-card);
174
- color: var(--text-muted);
175
- padding: 0.6rem 1.25rem;
176
- border-radius: 8px;
177
- font-size: 0.875rem;
178
- font-weight: 600;
179
- cursor: pointer;
180
- display: flex;
181
- align-items: center;
182
- gap: 0.5rem;
183
- transition: all 0.2s;
184
- }
185
-
186
- .tab-btn:hover {
187
- background: rgba(255, 255, 255, 0.06);
188
- color: var(--text-main);
189
- }
190
-
191
- .tab-btn.active {
192
- background: var(--gradient-main);
193
- color: #090d16;
194
- border-color: transparent;
195
- box-shadow: 0 4px 15px rgba(var(--color-cyan-rgb), 0.25);
196
- }
197
-
198
- /* Content Layout */
199
- .tab-pane {
200
- display: none;
201
- animation: fadeIn 0.3s ease-out forwards;
202
- }
203
-
204
- .tab-pane.active {
205
- display: block;
206
- }
207
-
208
- @keyframes fadeIn {
209
- from { opacity: 0; transform: translateY(8px); }
210
- to { opacity: 1; transform: translateY(0); }
211
- }
212
-
213
- /* Split layout */
214
- .blueprint-layout {
215
- display: grid;
216
- grid-template-columns: 1fr 1fr;
217
- gap: 2rem;
218
- align-items: start;
219
- }
220
-
221
- @media (max-width: 1100px) {
222
- .blueprint-layout {
223
- grid-template-columns: 1fr;
224
- }
225
- }
226
-
227
- .glass-card {
228
- background: var(--bg-card);
229
- border: 1px solid var(--border-card);
230
- border-radius: 16px;
231
- padding: 1.75rem;
232
- margin-bottom: 2rem;
233
- backdrop-filter: var(--glass-blur);
234
- box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.3);
235
- }
236
-
237
- .glass-card h2 {
238
- font-size: 1.25rem;
239
- font-weight: 700;
240
- color: #ffffff;
241
- margin-bottom: 1.25rem;
242
- display: flex;
243
- align-items: center;
244
- gap: 0.5rem;
245
- border-bottom: 1px solid rgba(255, 255, 255, 0.05);
246
- padding-bottom: 0.75rem;
247
- }
248
-
249
- .glass-card h2 svg {
250
- width: 18px;
251
- height: 18px;
252
- color: var(--color-cyan);
253
- }
254
-
255
- .glass-card p {
256
- font-size: 0.925rem;
257
- color: var(--text-muted);
258
- margin-bottom: 1rem;
259
- }
260
-
261
- /* Interactive Terminal console */
262
- .tui-console {
263
- background: #020408;
264
- border: 1px solid var(--border-card);
265
- border-radius: 12px;
266
- padding: 1.25rem;
267
- font-family: var(--font-mono);
268
- font-size: 0.875rem;
269
- position: relative;
270
- min-height: 200px;
271
- }
272
-
273
- .tui-line {
274
- display: flex;
275
- align-items: center;
276
- gap: 0.5rem;
277
- color: #fff;
278
- }
279
-
280
- .tui-prompt {
281
- color: var(--color-cyan);
282
- font-weight: 700;
283
- }
284
-
285
- .tui-input {
286
- background: transparent;
287
- border: none;
288
- color: #fff;
289
- font-family: var(--font-mono);
290
- outline: none;
291
- width: 100%;
292
- }
293
-
294
- /* Autocomplete overlay */
295
- .autocomplete-popover {
296
- position: absolute;
297
- top: 3.5rem;
298
- left: 1.25rem;
299
- right: 1.25rem;
300
- background: rgba(13, 20, 38, 0.95);
301
- border: 1px solid var(--color-cyan);
302
- border-radius: 8px;
303
- box-shadow: var(--shadow-glow);
304
- z-index: 10;
305
- max-height: 180px;
306
- overflow-y: auto;
307
- display: none;
308
- }
309
-
310
- .autocomplete-item {
311
- padding: 0.5rem 0.75rem;
312
- cursor: pointer;
313
- display: flex;
314
- justify-content: space-between;
315
- color: var(--text-muted);
316
- }
317
-
318
- .autocomplete-item:hover, .autocomplete-item.selected {
319
- background: rgba(0, 240, 255, 0.15);
320
- color: #fff;
321
- }
322
-
323
- .autocomplete-item strong {
324
- color: var(--color-cyan);
325
- }
326
-
327
- .tui-details {
328
- margin-top: 1rem;
329
- padding: 0.75rem;
330
- background: rgba(255, 255, 255, 0.02);
331
- border-radius: 6px;
332
- border-left: 2.5px solid var(--color-cyan);
333
- display: none;
334
- }
335
-
336
- /* Notice level simulator */
337
- .logs-wrapper {
338
- background: #020408;
339
- border: 1px solid var(--border-card);
340
- border-radius: 8px;
341
- padding: 1rem;
342
- font-family: var(--font-mono);
343
- font-size: 0.8rem;
344
- height: 150px;
345
- overflow-y: auto;
346
- margin-top: 1rem;
347
- }
348
-
349
- .btn-row {
350
- display: flex;
351
- gap: 0.5rem;
352
- margin-top: 0.75rem;
353
- }
354
-
355
- .log-btn {
356
- flex: 1;
357
- padding: 0.4rem;
358
- cursor: pointer;
359
- background: rgba(255,255,255,0.03);
360
- border: 1px solid var(--border-card);
361
- border-radius: 6px;
362
- font-size: 0.75rem;
363
- font-weight: 600;
364
- color: #fff;
365
- }
366
-
367
- .log-btn:hover {
368
- background: rgba(255,255,255,0.08);
369
- }
370
-
371
- .log-line {
372
- display: flex;
373
- gap: 0.5rem;
374
- margin-bottom: 0.25rem;
375
- }
376
-
377
- .log-line.info { color: var(--text-muted); }
378
- .log-line.success { color: var(--color-emerald); }
379
- .log-line.warn { color: var(--color-amber); }
380
- .log-line.error { color: var(--color-rose); }
381
-
382
- /* Keybindings Visual Grid */
383
- .key-grid {
384
- display: grid;
385
- grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
386
- gap: 1rem;
387
- }
388
-
389
- .key-card {
390
- background: rgba(0,0,0,0.15);
391
- border: 1px solid var(--border-card);
392
- border-radius: 8px;
393
- padding: 0.85rem;
394
- display: flex;
395
- align-items: center;
396
- justify-content: space-between;
397
- }
398
-
399
- .kbd-tag {
400
- background: rgba(255, 255, 255, 0.05);
401
- border: 1.5px solid rgba(255, 255, 255, 0.15);
402
- border-bottom-width: 3px;
403
- padding: 0.2rem 0.5rem;
404
- border-radius: 5px;
405
- font-family: var(--font-mono);
406
- font-size: 0.75rem;
407
- font-weight: 700;
408
- color: #fff;
409
- }
410
-
411
- /* Ref table */
412
- .ref-table {
413
- width: 100%;
414
- border-collapse: collapse;
415
- margin: 1.5rem 0;
416
- font-size: 0.9rem;
417
- }
418
-
419
- .ref-table th, .ref-table td {
420
- padding: 0.65rem 0.85rem;
421
- border: 1px solid var(--border-card);
422
- text-align: left;
423
- }
424
-
425
- .ref-table th {
426
- background: rgba(255,255,255,0.03);
427
- }
428
-
429
- /* Footer */
430
- footer {
431
- text-align: center;
432
- margin-top: 4rem;
433
- padding-top: 2rem;
434
- border-top: 1px solid rgba(255, 255, 255, 0.05);
435
- color: var(--text-dim);
436
- font-size: 0.875rem;
437
- }
438
- </style>
439
- </head>
440
- <body>
441
- <div class="container">
442
- <header>
443
- <div class="header-left">
444
- <div class="header-logo">
445
- <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="color: var(--color-cyan);"><title>Icon</title>
446
- <polyline points="4 17 10 11 4 5"></polyline>
447
- <line x1="12" y1="19" x2="20" y2="19"></line>
448
- </svg>
449
- </div>
450
- <div class="header-title-wrapper">
451
- <h1>Clio Coder Commands &amp; Modes</h1>
452
- <p>CLI syntax rules, TUI slash commands, notice channels, and hotkey bindings</p>
453
- </div>
454
- </div>
455
- <div class="header-right">
456
- <span class="version-badge">Clio Coder v0.3.1</span>
457
- <a href="index.html" class="back-btn">
458
- <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><title>Icon</title><line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline></svg>
459
- Dashboard Hub
460
- </a>
461
- </div>
462
- </header>
463
-
464
- <div class="tabs-nav">
465
- <button type="button" class="tab-btn active" onclick="switchTab('interactive')">
466
- <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><title>Icon</title><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg>
467
- Interactive Console Simulator
468
- </button>
469
- <button type="button" class="tab-btn" onclick="switchTab('reference')">
470
- <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><title>Icon</title><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="16" y1="13" x2="8" y2="13"></line><line x1="16" y1="17" x2="8" y2="17"></line><polyline points="10 9 9 9 8 9"></polyline></svg>
471
- Full Technical Reference
472
- </button>
473
- </div>
474
-
475
- <!-- TAB 1: INTERACTIVE -->
476
- <main class="tab-pane active" id="pane-interactive">
477
- <div class="blueprint-layout">
478
-
479
- <!-- Left: Console simulator -->
480
- <div class="specs-col">
481
- <div class="glass-card">
482
- <h2>
483
- <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><title>Icon</title><polyline points="4 17 10 11 4 5"></polyline><line x1="12" y1="19" x2="20" y2="19"></line></svg>
484
- TUI Slash Command Console
485
- </h2>
486
- <p>Type a slash command (e.g. <code>/settings</code>, <code>/run</code>, <code>/targets</code>, <code>/help</code>) to test Clio's autocomplete and ListOverlay detail pane.</p>
487
-
488
- <div class="tui-console">
489
- <div class="tui-line">
490
- <span class="tui-prompt">clio-coder &gt;</span>
491
- <input type="text" id="consoleInput" class="tui-input" placeholder="Type / to trigger autocomplete..." oninput="onInputChanged()" onkeydown="onConsoleKeyDown(event)">
492
- </div>
493
-
494
- <!-- Autocomplete popover -->
495
- <div class="autocomplete-popover" id="autocompletePopover">
496
- <!-- items injected via script -->
497
- </div>
498
- </div>
499
-
500
- <!-- Detail overlay mock -->
501
- <div class="tui-details" id="commandDetails">
502
- <strong id="detailTitle" style="color:var(--color-cyan)">/run</strong>
503
- <p id="detailUsage" style="font-family:var(--font-mono); font-size:0.75rem; margin-top:0.25rem; color:#fff;">Usage: /run &lt;agent&gt; &lt;task&gt;</p>
504
- <p id="detailDesc" style="font-size:0.875rem; color:var(--text-muted); margin-top:0.5rem;">Dispatches a fleet agent worker with specific rules.</p>
505
- </div>
506
- </div>
507
- </div>
508
-
509
- <!-- Right: Notice channels tester -->
510
- <div class="specs-col">
511
- <div class="glass-card">
512
- <h2>
513
- <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><title>Icon</title><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="16" x2="12" y2="12"></line><line x1="12" y1="8" x2="12.01" y2="8"></line></svg>
514
- Notice Channels Logger
515
- </h2>
516
- <p>Clio TUI displays colored logs utilizing specific notice channel glyphs. Click below to simulate lines:</p>
517
-
518
- <div class="logs-wrapper" id="simLogs">
519
- <div class="log-line info">· System initialized. Autonomy level set to auto-edit.</div>
520
- </div>
521
-
522
- <div class="btn-row">
523
- <button type="button" class="log-btn" style="border-left: 3px solid var(--text-dim)" onclick="logNotice('info')">Log Info</button>
524
- <button type="button" class="log-btn" style="border-left: 3px solid var(--color-emerald)" onclick="logNotice('success')">Log Success</button>
525
- <button type="button" class="log-btn" style="border-left: 3px solid var(--color-amber)" onclick="logNotice('warn')">Log Warn</button>
526
- <button type="button" class="log-btn" style="border-left: 3px solid var(--color-rose)" onclick="logNotice('error')">Log Error</button>
527
- </div>
528
- </div>
529
- </div>
530
-
531
- </div>
532
- </main>
533
-
534
- <!-- TAB 2: TECHNICAL REFERENCE -->
535
- <main class="tab-pane" id="pane-reference">
536
- <div class="glass-card">
537
- <h2>Clio Coder Keybindings &amp; Command List</h2>
538
-
539
- <h3 style="margin: 1.5rem 0 0.5rem 0; color:#fff;">App Keybindings</h3>
540
- <p>Alt bindings represent the main navigation channel. In macOS terminals, ensure Meta is set to Option.</p>
541
-
542
- <div class="key-grid">
543
- <div class="key-card">
544
- <span>Send prompt / Steer active run</span>
545
- <span class="kbd-tag">Enter</span>
546
- </div>
547
- <div class="key-card">
548
- <span>Insert newline in draft</span>
549
- <span class="kbd-tag">Shift+Enter / Ctrl+J</span>
550
- </div>
551
- <div class="key-card">
552
- <span>Queue after-run follow-up</span>
553
- <span class="kbd-tag">Alt+Enter</span>
554
- </div>
555
- <div class="key-card">
556
- <span>Restore queued messages to editor</span>
557
- <span class="kbd-tag">Alt+Up</span>
558
- </div>
559
- <div class="key-card">
560
- <span>Cycle thinking levels</span>
561
- <span class="kbd-tag">Shift+Tab</span>
562
- </div>
563
- <div class="key-card">
564
- <span>Open Session Tree Navigator</span>
565
- <span class="kbd-tag">Alt+T</span>
566
- </div>
567
- <div class="key-card">
568
- <span>Toggle Footer Dashboard size</span>
569
- <span class="kbd-tag">Alt+U</span>
570
- </div>
571
- <div class="key-card">
572
- <span>Open Model/Target Selector</span>
573
- <span class="kbd-tag">Alt+L</span>
574
- </div>
575
- <div class="key-card">
576
- <span>Cycle through scoped models</span>
577
- <span class="kbd-tag">Alt+J / Alt+K</span>
578
- </div>
579
- <div class="key-card">
580
- <span>Toggle Dispatch Board overlay</span>
581
- <span class="kbd-tag">Alt+W</span>
582
- </div>
583
- <div class="key-card">
584
- <span>Send dispatch to background</span>
585
- <span class="kbd-tag">Alt+S / Ctrl+Alt+B</span>
586
- </div>
587
- <div class="key-card">
588
- <span>Toggle tool segment body</span>
589
- <span class="kbd-tag">Alt+O / Ctrl+Alt+O</span>
590
- </div>
591
- <div class="key-card">
592
- <span>Toggle live tool output</span>
593
- <span class="kbd-tag">Alt+P</span>
594
- </div>
595
- <div class="key-card">
596
- <span>Toggle thinking blocks</span>
597
- <span class="kbd-tag">Alt+R / Ctrl+Alt+R</span>
598
- </div>
599
- <div class="key-card">
600
- <span>Open external editor</span>
601
- <span class="kbd-tag">Alt+G</span>
602
- </div>
603
- <div class="key-card">
604
- <span>Dismiss footer notifications</span>
605
- <span class="kbd-tag">Alt+X</span>
606
- </div>
607
- <div class="key-card">
608
- <span>Leader key fallback for Alt</span>
609
- <span class="kbd-tag">Ctrl+G</span>
610
- </div>
611
- </div>
612
-
613
- <h3 style="margin: 2rem 0 0.5rem 0; color:#fff;">TUI Slash Commands</h3>
614
- <table class="ref-table">
615
- <thead>
616
- <tr>
617
- <th>Group</th>
618
- <th>Command</th>
619
- <th>Usage</th>
620
- <th>Purpose</th>
621
- </tr>
622
- </thead>
623
- <tbody>
624
- <tr>
625
- <td><span class="badge">Run</span></td>
626
- <td><code>/run</code></td>
627
- <td><code>/run &lt;agent&gt; &lt;task&gt;</code></td>
628
- <td>Run a fleet agent locally or on remote node</td>
629
- </tr>
630
- <tr>
631
- <td><span class="badge">Run</span></td>
632
- <td><code>/delegate</code></td>
633
- <td><code>/delegate &lt;agent-id&gt; &lt;task&gt;</code></td>
634
- <td>Run an ACP delegation agent</td>
635
- </tr>
636
- <tr>
637
- <td><span class="badge">Run</span></td>
638
- <td><code>/agents</code></td>
639
- <td><code>/agents</code></td>
640
- <td>List Clio agents and ACP delegation agents</td>
641
- </tr>
642
- <tr>
643
- <td><span class="badge">Run</span></td>
644
- <td><code>/targets</code></td>
645
- <td><code>/targets</code></td>
646
- <td>Open Settings → Targets console: health, use, connect, probe, remove</td>
647
- </tr>
648
- <tr>
649
- <td><span class="badge">Inspect</span></td>
650
- <td><code>/cost</code></td>
651
- <td><code>/cost</code></td>
652
- <td>Show session token and cost totals</td>
653
- </tr>
654
- <tr>
655
- <td><span class="badge">Inspect</span></td>
656
- <td><code>/context</code></td>
657
- <td><code>/context [compact|init|refresh|reset]</code></td>
658
- <td>Context hub: window ledger overlay plus compact, init, refresh, reset</td>
659
- </tr>
660
- <tr>
661
- <td><span class="badge">Inspect</span></td>
662
- <td><code>/fleet</code></td>
663
- <td><code>/fleet</code></td>
664
- <td>Open Settings → Fleet workbench: defaults, profiles, agent routes, nodes</td>
665
- </tr>
666
- <tr>
667
- <td><span class="badge">Inspect</span></td>
668
- <td><code>/tasks</code></td>
669
- <td><code>/tasks</code></td>
670
- <td>Show session task board tracked with tasks tool</td>
671
- </tr>
672
- <tr>
673
- <td><span class="badge">Inspect</span></td>
674
- <td><code>/memory</code></td>
675
- <td><code>/memory [seed]</code></td>
676
- <td>Inspect task memory or seed from newest handoff</td>
677
- </tr>
678
- <tr>
679
- <td><span class="badge">Inspect</span></td>
680
- <td><code>/view</code></td>
681
- <td><code>/view [filter] | /view verify &lt;runId&gt;</code></td>
682
- <td>Browse artifacts and verify receipt integrity</td>
683
- </tr>
684
- <tr>
685
- <td><span class="badge">Configure</span></td>
686
- <td><code>/settings</code></td>
687
- <td><code>/settings [section]</code></td>
688
- <td>Open interactive transactional Settings Center</td>
689
- </tr>
690
- <tr>
691
- <td><span class="badge">Configure</span></td>
692
- <td><code>/thinking</code></td>
693
- <td><code>/thinking [level]</code></td>
694
- <td>Set chat thinking level or open Settings → Orchestrator</td>
695
- </tr>
696
- <tr>
697
- <td><span class="badge">Configure</span></td>
698
- <td><code>/output</code></td>
699
- <td><code>/output [verbosity]</code></td>
700
- <td>Set transcript detail (minimal, default, verbose) or open Settings → Terminal</td>
701
- </tr>
702
- <tr>
703
- <td><span class="badge">Configure</span></td>
704
- <td><code>/model</code></td>
705
- <td><code>/model [pattern]</code></td>
706
- <td>Open model selector or set model</td>
707
- </tr>
708
- <tr>
709
- <td><span class="badge">Configure</span></td>
710
- <td><code>/scoped-models</code></td>
711
- <td><code>/scoped-models</code></td>
712
- <td>Open Settings → Models: Alt+J / Alt+K cycle set checklist</td>
713
- </tr>
714
- <tr>
715
- <td><span class="badge">Configure</span></td>
716
- <td><code>/skill</code></td>
717
- <td><code>/skill [name] [task]</code></td>
718
- <td>Open Skills Hub or invoke a skill</td>
719
- </tr>
720
- <tr>
721
- <td><span class="badge">Configure</span></td>
722
- <td><code>/prompts</code></td>
723
- <td><code>/prompts</code></td>
724
- <td>List prompt templates</td>
725
- </tr>
726
- <tr>
727
- <td><span class="badge">Configure</span></td>
728
- <td><code>/extensions</code></td>
729
- <td><code>/extensions</code></td>
730
- <td>List installed extensions</td>
731
- </tr>
732
- <tr>
733
- <td><span class="badge">Configure</span></td>
734
- <td><code>/share</code></td>
735
- <td><code>/share export | import &lt;path&gt;</code></td>
736
- <td>Export or import Clio archives</td>
737
- </tr>
738
- <tr>
739
- <td><span class="badge">Sessions</span></td>
740
- <td><code>/quit</code></td>
741
- <td><code>/quit</code></td>
742
- <td>Exit Clio Coder</td>
743
- </tr>
744
- <tr>
745
- <td><span class="badge">Sessions</span></td>
746
- <td><code>/help</code></td>
747
- <td><code>/help [query]</code></td>
748
- <td>Open interactive help center and key reference</td>
749
- </tr>
750
- <tr>
751
- <td><span class="badge">Sessions</span></td>
752
- <td><code>/resume</code></td>
753
- <td><code>/resume</code></td>
754
- <td>Resume a past session from history ledger</td>
755
- </tr>
756
- <tr>
757
- <td><span class="badge">Sessions</span></td>
758
- <td><code>/new</code></td>
759
- <td><code>/new</code></td>
760
- <td>Start a fresh session</td>
761
- </tr>
762
- <tr>
763
- <td><span class="badge">Sessions</span></td>
764
- <td><code>/tree</code></td>
765
- <td><code>/tree</code></td>
766
- <td>Open session tree navigator</td>
767
- </tr>
768
- <tr>
769
- <td><span class="badge">Sessions</span></td>
770
- <td><code>/fork</code></td>
771
- <td><code>/fork</code></td>
772
- <td>Fork from an assistant turn</td>
773
- </tr>
774
- <tr>
775
- <td><span class="badge">Sessions</span></td>
776
- <td><code>/export</code></td>
777
- <td><code>/export [path]</code></td>
778
- <td>Export session transcript to Markdown</td>
779
- </tr>
780
- </tbody>
781
- </table>
782
- </div>
783
- </main>
784
-
785
- <footer>
786
- <p>Clio Coder UI Command specs &bull; Version 0.3.1</p>
787
- </footer>
788
- </div>
789
-
790
- <script>
791
- // Tab switching
792
- function switchTab(tabId) {
793
- document.querySelectorAll('.tab-btn').forEach(btn => { btn.classList.remove('active'); });
794
- document.querySelectorAll('.tab-pane').forEach(pane => { pane.classList.remove('active'); });
795
-
796
- if (tabId === 'interactive') {
797
- document.querySelector('.tab-btn:nth-child(1)').classList.add('active');
798
- document.getElementById('pane-interactive').classList.add('active');
799
- } else {
800
- document.querySelector('.tab-btn:nth-child(2)').classList.add('active');
801
- document.getElementById('pane-reference').classList.add('active');
802
- }
803
- }
804
-
805
- // Command registry
806
- const commandsList = [
807
- { cmd: "/settings", usage: "/settings [section]", desc: "Opens the transactional Settings Center with CORE, ROUTING, RUNTIME, and EXPERIENCE sections." },
808
- { cmd: "/targets", usage: "/targets", desc: "Opens Settings → Targets console table with in-place action drawer (Use, Connect, Probe, Remove)." },
809
- { cmd: "/fleet", usage: "/fleet", desc: "Opens Settings → Fleet workbench for worker defaults, profile drilling, and agent route bindings." },
810
- { cmd: "/scoped-models", usage: "/scoped-models", desc: "Opens Settings → Models provider-backed cycle set checklist with Space toggle." },
811
- { cmd: "/thinking", usage: "/thinking [level]", desc: "Sets thinking level directly or opens Settings → Orchestrator." },
812
- { cmd: "/output", usage: "/output [verbosity]", desc: "Sets transcript detail (minimal, default, verbose) or opens Settings → Terminal." },
813
- { cmd: "/run", usage: "/run <agent> <task>", desc: "Spawns a fleet agent locally to implement changes, verify code, debug unit errors, or update developer docs." },
814
- { cmd: "/delegate", usage: "/delegate <agent-id> <task>", desc: "Run an ACP delegation agent." },
815
- { cmd: "/agents", usage: "/agents", desc: "List Clio agents and ACP delegation agents." },
816
- { cmd: "/model", usage: "/model [pattern]", desc: "Opens the model selector or sets a model from live and configured catalog rows." },
817
- { cmd: "/skill", usage: "/skill [name] [task]", desc: "Opens the Skills Hub or invokes a selected skill." },
818
- { cmd: "/view", usage: "/view [filter] | /view verify <runId>", desc: "Browses receipts, dispatch outputs, durable tool output, and compaction summaries." },
819
- { cmd: "/context", usage: "/context", desc: "Visualizes token sliding window and compaction breakdown." },
820
- { cmd: "/context compact", usage: "/context compact [instructions]", desc: "Compact earlier context turns." },
821
- { cmd: "/context init", usage: "/context init [flags]", desc: "Explore the repo and bootstrap project context: CLIO-CODER.md and codewiki." },
822
- { cmd: "/context refresh", usage: "/context refresh", desc: "Re-index the codewiki and restamp the CLIO-CODER.md fingerprint footer." },
823
- { cmd: "/context reset", usage: "/context reset [--all]", desc: "Clear accumulated project context artifacts (CLIO-CODER.md preserved without --all)." },
824
- { cmd: "/tasks", usage: "/tasks", desc: "Read-only overlay of the session task board with per-task receipts." },
825
- { cmd: "/memory", usage: "/memory [seed]", desc: "Inspect task memory or seed from newest handoff." },
826
- { cmd: "/cost", usage: "/cost", desc: "Show session token and cost totals." },
827
- { cmd: "/prompts", usage: "/prompts", desc: "List prompt templates." },
828
- { cmd: "/extensions", usage: "/extensions", desc: "List installed extensions." },
829
- { cmd: "/share", usage: "/share export <path> | /share import <path>", desc: "Export or import Clio archives." },
830
- { cmd: "/help", usage: "/help [query]", desc: "Searches available shortcuts and operating posture documentation." },
831
- { cmd: "/resume", usage: "/resume", desc: "Resume a past session from history ledger." },
832
- { cmd: "/new", usage: "/new", desc: "Start a fresh session." },
833
- { cmd: "/tree", usage: "/tree", desc: "Open session tree navigator." },
834
- { cmd: "/fork", usage: "/fork", desc: "Fork from an assistant turn." },
835
- { cmd: "/export", usage: "/export [path]", desc: "Export session transcript to Markdown." },
836
- { cmd: "/quit", usage: "/quit", desc: "Exits clio-coder process cleanly." }
837
- ];
838
-
839
- let selectedIndex = 0;
840
- let filteredCmds = [...commandsList];
841
-
842
- function onInputChanged() {
843
- const val = document.getElementById('consoleInput').value;
844
- const popover = document.getElementById('autocompletePopover');
845
-
846
- if (val.startsWith('/')) {
847
- const query = val.toLowerCase();
848
- filteredCmds = commandsList.filter(c => c.cmd.toLowerCase().startsWith(query));
849
- selectedIndex = 0;
850
-
851
- if (filteredCmds.length > 0) {
852
- renderAutocomplete();
853
- popover.style.display = 'block';
854
- } else {
855
- popover.style.display = 'none';
856
- }
857
- } else {
858
- popover.style.display = 'none';
859
- }
860
- }
861
-
862
- function renderAutocomplete() {
863
- const popover = document.getElementById('autocompletePopover');
864
- popover.innerHTML = '';
865
-
866
- filteredCmds.forEach((c, idx) => {
867
- const item = document.createElement('div');
868
- item.className = `autocomplete-item ${idx === selectedIndex ? 'selected' : ''}`;
869
- item.innerHTML = `<strong>${c.cmd}</strong> <span>${c.usage}</span>`;
870
- item.onclick = () => {
871
- selectCommand(c);
872
- };
873
- popover.appendChild(item);
874
- });
875
- }
876
-
877
- function selectCommand(c) {
878
- document.getElementById('consoleInput').value = c.cmd;
879
- document.getElementById('autocompletePopover').style.display = 'none';
880
-
881
- // Show details
882
- document.getElementById('commandDetails').style.display = 'block';
883
- document.getElementById('detailTitle').innerText = c.cmd;
884
- document.getElementById('detailUsage').innerText = `Usage: ${c.usage}`;
885
- document.getElementById('detailDesc').innerText = c.desc;
886
- }
887
-
888
- function onConsoleKeyDown(e) {
889
- const popover = document.getElementById('autocompletePopover');
890
- if (popover.style.display === 'block') {
891
- if (e.key === 'ArrowDown') {
892
- e.preventDefault();
893
- selectedIndex = (selectedIndex + 1) % filteredCmds.length;
894
- renderAutocomplete();
895
- } else if (e.key === 'ArrowUp') {
896
- e.preventDefault();
897
- selectedIndex = (selectedIndex - 1 + filteredCmds.length) % filteredCmds.length;
898
- renderAutocomplete();
899
- } else if (e.key === 'Enter') {
900
- e.preventDefault();
901
- if (filteredCmds[selectedIndex]) {
902
- selectCommand(filteredCmds[selectedIndex]);
903
- }
904
- } else if (e.key === 'Escape') {
905
- e.preventDefault();
906
- popover.style.display = 'none';
907
- }
908
- }
909
- }
910
-
911
- // Logs simulator
912
- function logNotice(level) {
913
- const logs = document.getElementById('simLogs');
914
- let glyph = '·';
915
- let msg = '';
916
- if (level === 'info') {
917
- glyph = '·';
918
- msg = 'Settings hot-reloaded: autonomy level is auto-edit.';
919
- } else if (level === 'success') {
920
- glyph = '✓';
921
- msg = 'Connection established successfully with target "local-ollama".';
922
- } else if (level === 'warn') {
923
- glyph = '!';
924
- msg = '[safety-net] Unrecognized bash command sequencing. Will ask operator.';
925
- } else {
926
- glyph = '✗';
927
- msg = 'Fatal: API Key credentials missing for Anthropic Cloud runtime.';
928
- }
929
-
930
- const logLine = document.createElement('div');
931
- logLine.className = `log-line ${level}`;
932
- logLine.innerHTML = `<span>${glyph}</span> <span>${msg}</span>`;
933
-
934
- logs.appendChild(logLine);
935
- logs.scrollTop = logs.scrollHeight;
936
- }
937
- </script>
938
- </body>
939
- </html>