@iowarp/clio-coder 0.3.1 → 0.3.3

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 (601) hide show
  1. package/CHANGELOG.md +233 -373
  2. package/CONTRIBUTING.md +23 -23
  3. package/README.md +284 -613
  4. package/dist/{acp-FPR54DGL.js → acp-P2AQILE2.js} +43 -53
  5. package/dist/{agents-OGPIHPJH.js → agents-72W3BI7I.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-2DJ2KNFG.js +2095 -0
  9. package/dist/{chunk-IS3ONKU3.js → chunk-2IR2NMPA.js} +6 -4
  10. package/dist/chunk-2SFS6XQE.js +122 -0
  11. package/dist/{chunk-PV4JUBVJ.js → chunk-2TLUCQVG.js} +40 -21
  12. package/dist/chunk-2VTFPG5O.js +48 -0
  13. package/dist/chunk-4BJ5BYCE.js +61 -0
  14. package/dist/{chunk-474KN5II.js → chunk-4BPJXDWC.js} +111 -181
  15. package/dist/chunk-4VP4KH3K.js +962 -0
  16. package/dist/chunk-4XUGQOHA.js +797 -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-4QKXUHSR.js → chunk-5UFT4SUX.js} +70 -20
  21. package/dist/{chunk-OLBBMFRD.js → chunk-5UUP6MWO.js} +24 -62
  22. package/dist/chunk-65DEGPJ6.js +52 -0
  23. package/dist/chunk-6EJMN2Y3.js +17 -0
  24. package/dist/chunk-6N5PTWMY.js +136 -0
  25. package/dist/chunk-6SGHMWE3.js +277 -0
  26. package/dist/chunk-6XLNIQDB.js +27 -0
  27. package/dist/chunk-7CR24IG7.js +242 -0
  28. package/dist/chunk-7MNJORFF.js +22 -0
  29. package/dist/{chunk-KY56HMHH.js → chunk-A3CYT5EX.js} +125 -31
  30. package/dist/chunk-AGYYIBLL.js +1069 -0
  31. package/dist/{chunk-GB6QRBXN.js → chunk-APJ265NV.js} +54 -1187
  32. package/dist/{chunk-673JJUWJ.js → chunk-BMEMKKIT.js} +2 -2
  33. package/dist/chunk-CBCAPZAA.js +229 -0
  34. package/dist/chunk-CMZWFGD2.js +352 -0
  35. package/dist/chunk-COU2UHX6.js +400 -0
  36. package/dist/chunk-DSELYM6W.js +1077 -0
  37. package/dist/chunk-DUYJ5IO6.js +644 -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-FCSXB6T2.js +338 -0
  42. package/dist/chunk-FJ3H4MN5.js +48 -0
  43. package/dist/{chunk-RPTR2H26.js → chunk-FNTMWMX5.js} +21 -15
  44. package/dist/chunk-FQ4SKYE4.js +29 -0
  45. package/dist/chunk-G4BMMOKF.js +182 -0
  46. package/dist/{chunk-ZPY3JZ5E.js → chunk-GGXXDWE4.js} +183 -1233
  47. package/dist/chunk-HC4CLZ2Y.js +68 -0
  48. package/dist/{chunk-LU4TK2PR.js → chunk-HFSBBKSQ.js} +5 -56
  49. package/dist/{chunk-PIUMUEMV.js → chunk-HKIYEGME.js} +10 -6
  50. package/dist/chunk-I4HZDVNP.js +73 -0
  51. package/dist/chunk-IKCO5N3L.js +162 -0
  52. package/dist/chunk-IR4CFBFN.js +56 -0
  53. package/dist/{chunk-R5KLMSBV.js → chunk-J5Q24KAG.js} +2 -2
  54. package/dist/chunk-J7CWMCQD.js +255 -0
  55. package/dist/{chunk-K5XEMXTI.js → chunk-JVCV3ICN.js} +1 -1
  56. package/dist/chunk-KZWTDYJF.js +217 -0
  57. package/dist/chunk-LBMZMYH2.js +285 -0
  58. package/dist/{chunk-G34LV2PF.js → chunk-LM5TQCJZ.js} +84 -170
  59. package/dist/chunk-LW6DSM3M.js +5135 -0
  60. package/dist/chunk-LWLEKMDQ.js +3482 -0
  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-FST4FYJB.js → chunk-MFFY33HR.js} +99 -140
  64. package/dist/{chunk-BSU2YIWB.js → chunk-MVVUPGPW.js} +131 -136
  65. package/dist/chunk-OAO4GE4M.js +619 -0
  66. package/dist/{chunk-Q3RUPKEJ.js → chunk-OC7FIQPC.js} +58 -189
  67. package/dist/chunk-OKGUZO2U.js +34 -0
  68. package/dist/{chunk-GAEBEQVI.js → chunk-OOJYHWRB.js} +32 -346
  69. package/dist/{chunk-Q5WJOSJ7.js → chunk-OQ33BKR3.js} +2 -1
  70. package/dist/chunk-OQE5J4C6.js +73 -0
  71. package/dist/{chunk-KKNLWXI6.js → chunk-ORBHGJC5.js} +8 -8
  72. package/dist/{chunk-MAR7Y6HW.js → chunk-PAJK6MAQ.js} +23 -16
  73. package/dist/{chunk-M5T5VO65.js → chunk-PIWWS5BL.js} +837 -635
  74. package/dist/chunk-POHLU5DW.js +1186 -0
  75. package/dist/chunk-QKMUKYO7.js +4961 -0
  76. package/dist/chunk-SRDMMSEP.js +16405 -0
  77. package/dist/chunk-SST6Z5JA.js +80 -0
  78. package/dist/chunk-STBPMHSX.js +2456 -0
  79. package/dist/chunk-T6YILFSB.js +80 -0
  80. package/dist/chunk-TZK7PACC.js +174 -0
  81. package/dist/chunk-TZTZS7QK.js +227 -0
  82. package/dist/{chunk-ASND7OZK.js → chunk-UFIIWP2H.js} +13 -13
  83. package/dist/chunk-UOV2BYIW.js +107 -0
  84. package/dist/{chunk-PFEFKVGL.js → chunk-V6RTAOC2.js} +13 -11
  85. package/dist/chunk-VAKQQHWR.js +434 -0
  86. package/dist/chunk-VG7TBQIY.js +128 -0
  87. package/dist/chunk-VJWL6YS5.js +244 -0
  88. package/dist/{chunk-EYOKLTMF.js → chunk-VPAYEGVX.js} +17 -3
  89. package/dist/chunk-WEH5XRJQ.js +32 -0
  90. package/dist/chunk-X4RCMKVQ.js +641 -0
  91. package/dist/{chunk-TEKV33Q5.js → chunk-X6IAEBZR.js} +65 -33
  92. package/dist/chunk-XBXAASKX.js +18 -0
  93. package/dist/chunk-XN3L4EYL.js +46 -0
  94. package/dist/{chunk-RDLVBZEO.js → chunk-YCWGATWI.js} +6 -4
  95. package/dist/chunk-YHZX5GEU.js +193 -0
  96. package/dist/chunk-YXLYO42X.js +91 -0
  97. package/dist/{chunk-NMOX6HFD.js → chunk-ZDOOVTXZ.js} +29 -77
  98. package/dist/chunk-ZI647VB5.js +37 -0
  99. package/dist/{chunk-C4PTHK7P.js → chunk-ZWLZP4ZT.js} +5 -5
  100. package/dist/chunk-ZWMF7253.js +1882 -0
  101. package/dist/cli/index.js +62 -54
  102. package/dist/clio-JOU4FXVA.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-XCDVKR23.js} +92 -55
  108. package/dist/configure-4GAP54ZW.js +42 -0
  109. package/dist/{context-5RADCKTR.js → context-4UOGGLQ5.js} +71 -35
  110. package/dist/context-5VKGUVJJ.js +866 -0
  111. package/dist/{context-3KWFLHJG.js → context-77FM5DV5.js} +15 -13
  112. package/dist/{context-clear-7TSNPAAI.js → context-clear-XXJRLCJJ.js} +54 -28
  113. package/dist/{context-index-W4RLWOQH.js → context-index-BZ4UYMTC.js} +30 -24
  114. package/dist/dispatch-runner-QPRDDBDX.js +1997 -0
  115. package/dist/{docs-5AWSPS37.js → docs-2C2LTVT2.js} +23 -10
  116. package/dist/{doctor-UC5NAJYQ.js → doctor-HR46URBJ.js} +27 -17
  117. package/dist/{eval-U6TJHRLX.js → eval-XSSNATB4.js} +29 -16
  118. package/dist/{evidence-YEGUW4L3.js → evidence-6HG2PY2B.js} +46 -26
  119. package/dist/{evolve-TXARCTPG.js → evolve-K7YU3NCY.js} +45 -25
  120. package/dist/{extensions-OZFJ3A3G.js → extensions-QVDOHDGJ.js} +16 -7
  121. package/dist/{fleet-6G3DHNYE.js → fleet-VY3HHKN6.js} +163 -54
  122. package/dist/{fleet-preflight-DSNT37JK.js → fleet-preflight-DDN536IT.js} +7 -4
  123. package/dist/{init-KZ5QTF6M.js → init-JYGXI3FK.js} +69 -32
  124. package/dist/{memory-73ESV5YC.js → memory-WFZMGYHX.js} +48 -27
  125. package/dist/{models-A4PVNWJK.js → models-I5QWSEOM.js} +39 -25
  126. package/dist/monitor-GE4ID3IA.js +661 -0
  127. package/dist/{chunk-FCIH3BIZ.js → orchestrator-EM5MC3HM.js} +15979 -12407
  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-ZU3QMZPZ.js} +101 -61
  132. package/dist/{share-YIFFV4NQ.js → share-S5BZQC5I.js} +15 -8
  133. package/dist/{skills-2V6RA3OQ.js → skills-X5VXCRNQ.js} +34 -14
  134. package/dist/{skills-eval-S2TVJO4F.js → skills-eval-WKIHWTHR.js} +70 -34
  135. package/dist/steer-GGWFUJUD.js +77 -0
  136. package/dist/{targets-TYXLPB23.js → targets-SNCPI2NR.js} +43 -27
  137. package/dist/terminal-lease-BNAHVHBS.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-JQHHPQ4K.js} +45 -25
  142. package/dist/{usage-ZAFSXKKG.js → usage-OR4O5SMZ.js} +62 -31
  143. package/dist/verify-375KUB3Y.js +716 -0
  144. package/dist/web-fetch-2YHJ3KTG.js +638 -0
  145. package/dist/{wiki-generate-NUQCVOQ3.js → wiki-generate-UEXP2ARI.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 +387 -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 +45 -9
  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 +715 -278
  444. package/src/interactive/chat-renderer.ts +306 -85
  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 +253 -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 +42 -22
  456. package/src/interactive/footer-panel.ts +8 -3
  457. package/src/interactive/format-time.ts +14 -2
  458. package/src/interactive/interactive-application.ts +203 -17
  459. package/src/interactive/interactive-event-projection.ts +18 -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 +184 -117
  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/ask-user.ts +146 -24
  474. package/src/interactive/overlays/decisions.ts +300 -0
  475. package/src/interactive/overlays/help-reference.ts +15 -10
  476. package/src/interactive/overlays/model-selector.ts +34 -16
  477. package/src/interactive/overlays/session-selector.ts +18 -0
  478. package/src/interactive/overlays/settings.ts +105 -17
  479. package/src/interactive/overlays/skills-hub.ts +4 -4
  480. package/src/interactive/overlays/tree-selector.ts +41 -6
  481. package/src/interactive/render-trace.ts +499 -90
  482. package/src/interactive/renderers/compaction-summary.ts +2 -2
  483. package/src/interactive/renderers/diff.ts +115 -104
  484. package/src/interactive/renderers/mermaid.ts +53 -0
  485. package/src/interactive/renderers/tool-execution.ts +516 -168
  486. package/src/interactive/renderers/worker-entry.ts +20 -4
  487. package/src/interactive/session-switch-settlement.ts +10 -0
  488. package/src/interactive/slash-autocomplete.ts +6 -114
  489. package/src/interactive/slash-commands.ts +135 -47
  490. package/src/interactive/slash-spec.ts +9 -38
  491. package/src/interactive/status/controller.ts +5 -1
  492. package/src/interactive/status/index.ts +12 -1
  493. package/src/interactive/status/reasoning.ts +87 -0
  494. package/src/interactive/status/summary.ts +13 -2
  495. package/src/interactive/stdout-backpressure.ts +99 -0
  496. package/src/interactive/stream-pacer.ts +530 -0
  497. package/src/interactive/stream-pacing-policy.ts +66 -0
  498. package/src/interactive/tasks-overlay.ts +368 -14
  499. package/src/interactive/terminal-lease.ts +485 -0
  500. package/src/interactive/theme/tokens.ts +1 -1
  501. package/src/interactive/transcript-detail.ts +120 -0
  502. package/src/interactive/turn-context.ts +4 -3
  503. package/src/interactive/turn-persistence.ts +30 -13
  504. package/src/interactive/turn-queues.ts +12 -0
  505. package/src/interactive/turn-recovery.ts +25 -8
  506. package/src/interactive/turn-runtime.ts +79 -12
  507. package/src/interactive/turn-state.ts +10 -0
  508. package/src/interactive/view/artifacts.ts +114 -4
  509. package/src/interactive/view/view-overlay.ts +3 -0
  510. package/src/interactive/welcome-dashboard.ts +17 -16
  511. package/src/interactive/worker-receipts.ts +52 -3
  512. package/src/interactive/worker-stream.ts +5 -1
  513. package/src/tools/agent-tools.ts +23 -3
  514. package/src/tools/artifact.ts +2 -2
  515. package/src/tools/ask-user.ts +23 -13
  516. package/src/tools/bash.ts +30 -2
  517. package/src/tools/bootstrap.ts +34 -431
  518. package/src/tools/builtin-tool-catalog.ts +271 -0
  519. package/src/tools/codewiki/code-nav-surface.ts +29 -0
  520. package/src/tools/codewiki/code-nav.ts +8 -22
  521. package/src/tools/codewiki/shared.ts +41 -38
  522. package/src/tools/context/docs-engine.ts +14 -3
  523. package/src/tools/context/index.ts +107 -28
  524. package/src/tools/context/surface.ts +19 -0
  525. package/src/tools/core-bootstrap.ts +168 -0
  526. package/src/tools/credential-present.ts +5 -5
  527. package/src/tools/dispatch-admission.ts +533 -0
  528. package/src/tools/dispatch-background.ts +54 -0
  529. package/src/tools/dispatch-event-text.ts +6 -0
  530. package/src/tools/dispatch-plan.ts +9 -4
  531. package/src/tools/dispatch-run-events.ts +238 -0
  532. package/src/tools/dispatch-runner.ts +2370 -0
  533. package/src/tools/dispatch-scout-admission.ts +295 -0
  534. package/src/tools/dispatch-types.ts +77 -0
  535. package/src/tools/dispatch.ts +67 -3161
  536. package/src/tools/find.ts +4 -2
  537. package/src/tools/grep.ts +2 -2
  538. package/src/tools/lazy-tool.ts +60 -0
  539. package/src/tools/ledger.ts +3 -3
  540. package/src/tools/monitor-surface.ts +36 -0
  541. package/src/tools/monitor.ts +2 -32
  542. package/src/tools/observers.ts +2 -2
  543. package/src/tools/presentation.ts +107 -0
  544. package/src/tools/registry.ts +45 -27
  545. package/src/tools/safe-exec.ts +2 -2
  546. package/src/tools/steer-surface.ts +17 -0
  547. package/src/tools/steer.ts +2 -13
  548. package/src/tools/tasks.ts +108 -11
  549. package/src/tools/truncate.ts +25 -184
  550. package/src/tools/verify/frontend.ts +3 -1
  551. package/src/tools/verify/index.ts +3 -38
  552. package/src/tools/verify/surface.ts +46 -0
  553. package/src/tools/web-fetch-surface.ts +23 -0
  554. package/src/tools/web-fetch.ts +2 -20
  555. package/src/tools/write.ts +7 -2
  556. package/src/worker/entry.ts +39 -2
  557. package/src/worker/spec-contract.ts +26 -5
  558. package/dist/chunk-7SS2CTV2.js +0 -61361
  559. package/dist/chunk-DKGKUHFA.js +0 -924
  560. package/dist/chunk-GEP36Y4X.js +0 -12796
  561. package/dist/chunk-XYWBQRDM.js +0 -137
  562. package/dist/clio-BZVGEUFJ.js +0 -58
  563. package/dist/configure-S7S6F6CL.js +0 -32
  564. package/docs/html/agents_blueprint.html +0 -936
  565. package/docs/html/alcf_blueprint.html +0 -324
  566. package/docs/html/architecture_blueprint.html +0 -850
  567. package/docs/html/commands_blueprint.html +0 -939
  568. package/docs/html/config_knobs_audit_blueprint.html +0 -178
  569. package/docs/html/configuration_blueprint.html +0 -1080
  570. package/docs/html/context_blueprint.html +0 -603
  571. package/docs/html/documentation_blueprint.html +0 -832
  572. package/docs/html/environment_blueprint.html +0 -404
  573. package/docs/html/eval_blueprint.html +0 -743
  574. package/docs/html/evals_internal_blueprint.html +0 -190
  575. package/docs/html/evolution_blueprint.html +0 -674
  576. package/docs/html/extensions_blueprint.html +0 -2065
  577. package/docs/html/fleet_dispatch_blueprint.html +0 -286
  578. package/docs/html/index.html +0 -919
  579. package/docs/html/lifecycle_blueprint.html +0 -723
  580. package/docs/html/memory_blueprint.html +0 -699
  581. package/docs/html/middleware_blueprint.html +0 -664
  582. package/docs/html/models_blueprint.html +0 -2366
  583. package/docs/html/observability_blueprint.html +0 -683
  584. package/docs/html/provider_adapter_blueprint.html +0 -245
  585. package/docs/html/safety_blueprint.html +0 -1386
  586. package/docs/html/shared.css +0 -571
  587. package/docs/html/shared.js +0 -143
  588. package/docs/html/skills_blueprint.html +0 -671
  589. package/docs/html/soak_blueprint.html +0 -182
  590. package/docs/html/tool_usage_blueprint.html +0 -350
  591. package/docs/html/tools_blueprint.html +0 -2249
  592. package/docs/html/trace_blueprint.html +0 -235
  593. package/docs/html/tui_design_blueprint.html +0 -374
  594. package/docs/html/validation_blueprint.html +0 -961
  595. package/docs/html/worker_dispatch_blueprint.html +0 -231
  596. package/src/core/release.ts +0 -2
  597. package/src/domains/providers/runtimes/common/lmstudio-logger.ts +0 -32
  598. package/src/domains/providers/runtimes/local-native/lmstudio-native.ts +0 -491
  599. package/src/engine/apis/lmstudio-native.ts +0 -1438
  600. package/src/engine/apis/thinking-replay.ts +0 -11
  601. package/src/tools/string-enum.ts +0 -15
@@ -1,15 +1,4 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
- import {
3
- createDelayedManualCodeInput,
4
- promptOAuthSelection
5
- } from "./chunk-2STGEDFV.js";
6
- import {
7
- column,
8
- terminalColumns,
9
- truncate,
10
- twoColumnRow,
11
- wrapPlain
12
- } from "./chunk-IS3ONKU3.js";
13
2
  import {
14
3
  INHERITED_PROJECT_CONTEXT,
15
4
  acceptInteropAgents,
@@ -18,18 +7,29 @@ import {
18
7
  fingerprintNativeRuntime,
19
8
  interopProposals,
20
9
  renderProposalEntry
21
- } from "./chunk-PV4JUBVJ.js";
10
+ } from "./chunk-2TLUCQVG.js";
22
11
  import {
23
12
  initializeClioHome
24
- } from "./chunk-673JJUWJ.js";
13
+ } from "./chunk-BMEMKKIT.js";
14
+ import {
15
+ createDelayedManualCodeInput,
16
+ promptOAuthSelection
17
+ } from "./chunk-2STGEDFV.js";
18
+ import {
19
+ column,
20
+ terminalColumns,
21
+ truncate,
22
+ twoColumnRow,
23
+ wrapPlain
24
+ } from "./chunk-2IR2NMPA.js";
25
25
  import {
26
26
  credentialWriteFailed,
27
27
  printPlaintextCredentialWarning
28
- } from "./chunk-RDLVBZEO.js";
28
+ } from "./chunk-YCWGATWI.js";
29
29
  import {
30
30
  printError,
31
31
  printOk
32
- } from "./chunk-K2ITRMHZ.js";
32
+ } from "./chunk-ED4KHGC3.js";
33
33
  import {
34
34
  buildProviderSupportEntry,
35
35
  configuredTargetsForRuntime,
@@ -37,26 +37,27 @@ import {
37
37
  describeRuntimeModels,
38
38
  getCatalogModelForRuntime,
39
39
  getRuntimeRegistry,
40
+ greetLmStudio,
40
41
  isOrchestratorEligibleRuntime,
41
42
  listKnownModelsForRuntime,
42
43
  listProviderSupportEntries,
43
44
  probeCapabilitiesForModel,
44
45
  registerBuiltinRuntimes,
45
46
  supportGroupLabel
46
- } from "./chunk-H6F6BYOH.js";
47
+ } from "./chunk-LZSJBIVT.js";
47
48
  import {
48
49
  readSettings,
49
50
  removeTargetFromSettings,
50
51
  settingsPath,
51
52
  updateSettings
52
- } from "./chunk-KY56HMHH.js";
53
+ } from "./chunk-A3CYT5EX.js";
53
54
  import {
54
55
  openAuthStorage,
55
56
  registerClioOAuthProviders,
56
57
  resolveAuthTarget,
57
58
  resolveRuntimeAuthTarget,
58
59
  targetRequiresAuth
59
- } from "./chunk-GB6QRBXN.js";
60
+ } from "./chunk-4VP4KH3K.js";
60
61
  import {
61
62
  init_esm_shims
62
63
  } from "./chunk-3R73A4XB.js";
@@ -321,6 +322,7 @@ var DEFAULT_PORTS = {
321
322
  "llamacpp-embed": 8080,
322
323
  "llamacpp-rerank": 8080,
323
324
  "lmstudio-native": 1234,
325
+ lmstudio: 1234,
324
326
  "ollama-native": 11434,
325
327
  vllm: 8e3,
326
328
  sglang: 3e4,
@@ -468,7 +470,8 @@ function normalizeUrl(input2, runtimeId) {
468
470
  const trimmed = input2.trim();
469
471
  if (trimmed.length === 0) return defaultUrlFor(runtimeId);
470
472
  const hasScheme = /^[a-z][a-z0-9+.-]*:\/\//i.test(trimmed);
471
- const withScheme = hasScheme ? trimmed : `http://${trimmed}`;
473
+ let withScheme = hasScheme ? trimmed : `http://${trimmed}`;
474
+ if (runtimeId === "lmstudio") withScheme = withScheme.replace(/^ws:/u, "http:").replace(/^wss:/u, "https:");
472
475
  try {
473
476
  const parsed = new URL(withScheme);
474
477
  if (!hasScheme && !parsed.port && DEFAULT_PORTS[runtimeId]) {
@@ -588,10 +591,11 @@ async function runtimeProbe(runtime, target) {
588
591
  return { ok: false, error: err instanceof Error ? err.message : String(err) };
589
592
  }
590
593
  }
591
- async function runtimeProbeModels(runtime, target) {
594
+ async function runtimeProbeModels(runtime, target, authToken) {
592
595
  if (typeof runtime.probeModels !== "function") return [];
593
596
  try {
594
- return await runtime.probeModels(target, await buildProbeContext(runtime, target));
597
+ const context = await buildProbeContext(runtime, target);
598
+ return await runtime.probeModels(target, authToken === void 0 ? context : { ...context, authToken });
595
599
  } catch {
596
600
  return [];
597
601
  }
@@ -746,6 +750,7 @@ function buildDescriptor(runtime, id, parts) {
746
750
  if (parts.maxTokens !== void 0) caps.maxTokens = parts.maxTokens;
747
751
  if (parts.reasoning !== void 0) caps.reasoning = parts.reasoning;
748
752
  if (Object.keys(caps).length > 0) descriptor.capabilities = caps;
753
+ if (parts.lmstudio) descriptor.lmstudio = parts.lmstudio;
749
754
  return descriptor;
750
755
  }
751
756
  function describeAuthStatus(runtime) {
@@ -802,10 +807,10 @@ Open: ${verificationUri}
802
807
  manualCodeInput.cancel();
803
808
  }
804
809
  }
805
- async function resolveSupportedWireModels(runtime, target, existing) {
810
+ async function resolveSupportedWireModels(runtime, target, existing, authToken) {
806
811
  const known = listKnownModelsForRuntime(runtime.id);
807
812
  if (known.length > 0) return known;
808
- const discovered = runtime.kind === "http" ? await runtimeProbeModels(runtime, target) : [];
813
+ const discovered = runtime.kind === "http" ? await runtimeProbeModels(runtime, target, authToken) : [];
809
814
  if (discovered.length > 0) return discovered;
810
815
  return existing?.wireModels ? [...existing.wireModels] : [];
811
816
  }
@@ -824,7 +829,7 @@ async function askModelChoice(rl, label, wireModels, defaultValue) {
824
829
  }
825
830
  function refuseCatalogSeededModel(runtime, support) {
826
831
  printError(
827
- `--model is required for ${runtime.id}: its ${support.modelHints.length} model ids come from the pi-ai catalog in name order, which recommends none of them`
832
+ `--model is required for ${runtime.id}: its ${support.modelHints.length} model ids come from the provider catalog in name order, which recommends none of them`
828
833
  );
829
834
  process.stderr.write(
830
835
  ` run \`clio-coder configure --runtime ${runtime.id}\` with no other flags to choose from the full list
@@ -854,7 +859,7 @@ async function runNonInteractive(runtime, args) {
854
859
  const auth = openAuthStorage();
855
860
  const support = buildProviderSupportEntry(runtime);
856
861
  const existing = settings.targets.find((e) => e.id === args.id);
857
- if (existing && existing.runtime !== runtime.id) {
862
+ if (existing && (getRuntimeRegistry().get(existing.runtime)?.id ?? existing.runtime) !== runtime.id) {
858
863
  printError(`target ${args.id} already exists with runtime ${existing.runtime}`);
859
864
  return 2;
860
865
  }
@@ -862,6 +867,16 @@ async function runNonInteractive(runtime, args) {
862
867
  if (!url && support.supportsCustomUrl) {
863
868
  url = defaultUrlFor(runtime.id);
864
869
  }
870
+ if (url && runtime.id === "lmstudio") {
871
+ const greeting = await greetLmStudio(
872
+ { id: args.id, runtime: runtime.id, url },
873
+ { credentialsPresent: /* @__PURE__ */ new Set(), httpTimeoutMs: 750 }
874
+ );
875
+ if (!greeting.ok) {
876
+ printError(`refusing to save LM Studio target '${args.id}': ${url} did not return the LM Studio greeting`);
877
+ return 2;
878
+ }
879
+ }
865
880
  if (url && (runtime.id === "openai-compat" || runtime.id === "anthropic-compat")) {
866
881
  const fingerprint = await fingerprintNativeRuntime(url);
867
882
  if (fingerprint) {
@@ -885,9 +900,10 @@ async function runNonInteractive(runtime, args) {
885
900
  ...args.lifecycle !== void 0 ? { lifecycle: args.lifecycle } : existing?.lifecycle !== void 0 ? { lifecycle: existing.lifecycle } : {},
886
901
  ...args.contextWindow !== void 0 ? { contextWindow: args.contextWindow } : {},
887
902
  ...args.maxTokens !== void 0 ? { maxTokens: args.maxTokens } : {},
888
- ...args.reasoning !== void 0 ? { reasoning: args.reasoning } : {}
903
+ ...args.reasoning !== void 0 ? { reasoning: args.reasoning } : {},
904
+ ...existing?.lmstudio ? { lmstudio: existing.lmstudio } : {}
889
905
  });
890
- const wireModels = await resolveSupportedWireModels(runtime, seed, existing);
906
+ const wireModels = await resolveSupportedWireModels(runtime, seed, existing, args.apiKey);
891
907
  const model = args.model ?? existing?.defaultModel ?? support.defaultModel ?? (support.modelSource === "catalog" ? void 0 : wireModels[0]);
892
908
  if (model === void 0 && support.modelSource === "catalog") {
893
909
  refuseCatalogSeededModel(runtime, support);
@@ -906,7 +922,8 @@ async function runNonInteractive(runtime, args) {
906
922
  ...args.lifecycle !== void 0 ? { lifecycle: args.lifecycle } : existing?.lifecycle !== void 0 ? { lifecycle: existing.lifecycle } : {},
907
923
  ...args.contextWindow !== void 0 ? { contextWindow: args.contextWindow } : {},
908
924
  ...args.maxTokens !== void 0 ? { maxTokens: args.maxTokens } : {},
909
- ...args.reasoning !== void 0 ? { reasoning: args.reasoning } : {}
925
+ ...args.reasoning !== void 0 ? { reasoning: args.reasoning } : {},
926
+ ...existing?.lmstudio ? { lmstudio: existing.lmstudio } : {}
910
927
  });
911
928
  const setOrchestrator = args.setOrchestrator || args.orchestratorModel !== void 0;
912
929
  const setBackground = args.setBackground || args.backgroundModel !== void 0;
@@ -1007,7 +1024,7 @@ async function pickRuntimeFromEntries(rl, entries, heading) {
1007
1024
  `);
1008
1025
  }
1009
1026
  }
1010
- var LOCAL_APP_RUNTIME_IDS = /* @__PURE__ */ new Set(["ollama-native", "lmstudio-native"]);
1027
+ var LOCAL_APP_RUNTIME_IDS = /* @__PURE__ */ new Set(["ollama-native", "lmstudio"]);
1011
1028
  var PROTOCOL_COMPAT_RUNTIME_IDS = /* @__PURE__ */ new Set(["openai-compat", "anthropic-compat"]);
1012
1029
  function runtimesForCategory(entries, category) {
1013
1030
  switch (category) {
@@ -1151,6 +1168,16 @@ Selected runtime: ${runtime.id} (${support.summary})
1151
1168
  runtime = steered;
1152
1169
  support = buildProviderSupportEntry(runtime);
1153
1170
  }
1171
+ if (runtime.id === "lmstudio") {
1172
+ const greeting = await greetLmStudio(
1173
+ { id: targetId, runtime: runtime.id, url },
1174
+ { credentialsPresent: /* @__PURE__ */ new Set(), httpTimeoutMs: 750 }
1175
+ );
1176
+ if (!greeting.ok) {
1177
+ printError(`refusing to save LM Studio target '${targetId}': ${url} did not return the LM Studio greeting`);
1178
+ return 2;
1179
+ }
1180
+ }
1154
1181
  }
1155
1182
  let apiKeyEnv;
1156
1183
  let apiKeyLiteral;
@@ -1205,7 +1232,8 @@ Selected runtime: ${runtime.id} (${support.summary})
1205
1232
  ...defaults.lifecycle !== void 0 ? { lifecycle: defaults.lifecycle } : existing?.lifecycle !== void 0 ? { lifecycle: existing.lifecycle } : {},
1206
1233
  ...defaults.contextWindow !== void 0 ? { contextWindow: defaults.contextWindow } : {},
1207
1234
  ...defaults.maxTokens !== void 0 ? { maxTokens: defaults.maxTokens } : {},
1208
- ...defaults.reasoning !== void 0 ? { reasoning: defaults.reasoning } : {}
1235
+ ...defaults.reasoning !== void 0 ? { reasoning: defaults.reasoning } : {},
1236
+ ...existing?.lmstudio ? { lmstudio: existing.lmstudio } : {}
1209
1237
  });
1210
1238
  if (runtime.kind === "http") {
1211
1239
  wireModels = await resolveSupportedWireModels(runtime, tentative, existing ?? void 0);
@@ -1219,7 +1247,7 @@ Selected runtime: ${runtime.id} (${support.summary})
1219
1247
  `);
1220
1248
  }
1221
1249
  if (!model && catalogOrdered) {
1222
- process.stdout.write(` listed in pi-ai catalog order, which recommends none of them; pick one.
1250
+ process.stdout.write(` listed in provider catalog order, which recommends none of them; pick one.
1223
1251
  `);
1224
1252
  }
1225
1253
  for (; ; ) {
@@ -1278,7 +1306,8 @@ Selected runtime: ${runtime.id} (${support.summary})
1278
1306
  ...defaults.lifecycle !== void 0 ? { lifecycle: defaults.lifecycle } : existing?.lifecycle !== void 0 ? { lifecycle: existing.lifecycle } : {},
1279
1307
  ...contextWindowChoice !== void 0 ? { contextWindow: contextWindowChoice } : {},
1280
1308
  ...defaults.maxTokens !== void 0 ? { maxTokens: defaults.maxTokens } : {},
1281
- ...reasoningChoice !== void 0 ? { reasoning: reasoningChoice } : {}
1309
+ ...reasoningChoice !== void 0 ? { reasoning: reasoningChoice } : {},
1310
+ ...existing?.lmstudio ? { lmstudio: existing.lmstudio } : {}
1282
1311
  });
1283
1312
  try {
1284
1313
  assertOrchestratorReplacementEligible(settings, descriptor);
@@ -1431,6 +1460,9 @@ async function runConfigureCommand(argv) {
1431
1460
  process.stdout.write("run `clio-coder configure --list` to see registered runtimes\n");
1432
1461
  return 2;
1433
1462
  }
1463
+ if (runtimeId === "lmstudio-native" && runtime.id === "lmstudio") {
1464
+ process.stderr.write("warning: runtime 'lmstudio-native' is deprecated; using 'lmstudio'\n");
1465
+ }
1434
1466
  }
1435
1467
  const hasTargetSetupFlag = args.id !== void 0 || args.url !== void 0 || args.model !== void 0 || args.workerProfile !== void 0 || args.workerProfileModel !== void 0 || args.apiKey !== void 0 || args.apiKeyEnv !== void 0 || args.gateway || args.lifecycle !== void 0 || args.setOrchestrator || args.setWorkerDefault || args.contextWindow !== void 0 || args.maxTokens !== void 0 || args.reasoning !== void 0;
1436
1468
  const nonInteractive = runtime !== null && hasTargetSetupFlag;
@@ -1457,4 +1489,4 @@ export {
1457
1489
  runTargetRename,
1458
1490
  runConfigureCommand
1459
1491
  };
1460
- //# sourceMappingURL=chunk-TEKV33Q5.js.map
1492
+ //# sourceMappingURL=chunk-X6IAEBZR.js.map
@@ -0,0 +1,18 @@
1
+ import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
+ import {
3
+ durableAssistantTextFromEvent
4
+ } from "./chunk-SRDMMSEP.js";
5
+ import {
6
+ init_esm_shims
7
+ } from "./chunk-3R73A4XB.js";
8
+
9
+ // src/tools/dispatch-event-text.ts
10
+ init_esm_shims();
11
+ function assistantTextFromEvent(event) {
12
+ return durableAssistantTextFromEvent(event).trim();
13
+ }
14
+
15
+ export {
16
+ assistantTextFromEvent
17
+ };
18
+ //# sourceMappingURL=chunk-XBXAASKX.js.map
@@ -0,0 +1,46 @@
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-CGKSTWHD.js";
8
+ import {
9
+ StringEnum
10
+ } from "./chunk-FCSXB6T2.js";
11
+ import {
12
+ init_esm_shims
13
+ } from "./chunk-3R73A4XB.js";
14
+
15
+ // src/tools/codewiki/code-nav-surface.ts
16
+ init_esm_shims();
17
+ var CODE_NAV_DEFAULT_LIMIT = 50;
18
+ var CODE_NAV_DEFAULT_ENTRY_LIMIT = 25;
19
+ var CODE_NAV_MAX_LIMIT = 200;
20
+ var codeNavToolSurface = {
21
+ name: ToolNames.CodeNav,
22
+ description: "Navigate the indexed codewiki: mode=symbol finds files by symbol, path finds files by glob/regex/substring, entries lists likely entry points, outline lists file symbols, deps lists imports, and dependents lists importers. mode=wiki without query lists generated Markdown wiki pages; with query it resolves a page id/title and returns its summary plus a path to open with read. For Clio's bundled product docs use context scope=docs.",
23
+ parameters: typebox_exports.Object({
24
+ mode: StringEnum(["symbol", "path", "entries", "outline", "deps", "dependents", "wiki"], {
25
+ description: "Lookup mode."
26
+ }),
27
+ query: typebox_exports.Optional(
28
+ typebox_exports.String({ description: "Symbol name, indexed path/pattern/substring, or wiki page id/title." })
29
+ ),
30
+ limit: typebox_exports.Optional(
31
+ typebox_exports.Number({
32
+ description: `Max results (default ${CODE_NAV_DEFAULT_LIMIT}, entries ${CODE_NAV_DEFAULT_ENTRY_LIMIT}, max ${CODE_NAV_MAX_LIMIT}).`
33
+ })
34
+ )
35
+ }),
36
+ baseActionClass: "read",
37
+ executionMode: "parallel"
38
+ };
39
+
40
+ export {
41
+ CODE_NAV_DEFAULT_LIMIT,
42
+ CODE_NAV_DEFAULT_ENTRY_LIMIT,
43
+ CODE_NAV_MAX_LIMIT,
44
+ codeNavToolSurface
45
+ };
46
+ //# sourceMappingURL=chunk-XN3L4EYL.js.map
@@ -1,11 +1,13 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
- printError,
3
+ printError
4
+ } from "./chunk-ED4KHGC3.js";
5
+ import {
4
6
  source_default
5
- } from "./chunk-K2ITRMHZ.js";
7
+ } from "./chunk-5TSRNF4G.js";
6
8
  import {
7
9
  authStoragePath
8
- } from "./chunk-GB6QRBXN.js";
10
+ } from "./chunk-4VP4KH3K.js";
9
11
  import {
10
12
  init_esm_shims
11
13
  } from "./chunk-3R73A4XB.js";
@@ -33,4 +35,4 @@ export {
33
35
  printPlaintextCredentialWarning,
34
36
  credentialWriteFailed
35
37
  };
36
- //# sourceMappingURL=chunk-RDLVBZEO.js.map
38
+ //# sourceMappingURL=chunk-YCWGATWI.js.map
@@ -0,0 +1,193 @@
1
+ import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
+ import {
3
+ enumerateWorkspaceFiles
4
+ } from "./chunk-EKMEHE4H.js";
5
+ import {
6
+ classifyCHeaderLanguage
7
+ } from "./chunk-7CR24IG7.js";
8
+ import {
9
+ init_esm_shims
10
+ } from "./chunk-3R73A4XB.js";
11
+
12
+ // src/domains/session/workspace/project-type.ts
13
+ init_esm_shims();
14
+ import { readFileSync } from "node:fs";
15
+ import { join } from "node:path";
16
+ var SOURCE_LANGUAGES = [
17
+ "typescript",
18
+ "javascript",
19
+ "python",
20
+ "rust",
21
+ "go",
22
+ "c",
23
+ "c++",
24
+ "java",
25
+ "ruby",
26
+ "c#"
27
+ ];
28
+ var EXTENSION_LANGUAGES = /* @__PURE__ */ new Map([
29
+ [".ts", "typescript"],
30
+ [".tsx", "typescript"],
31
+ [".mts", "typescript"],
32
+ [".cts", "typescript"],
33
+ [".js", "javascript"],
34
+ [".jsx", "javascript"],
35
+ [".mjs", "javascript"],
36
+ [".cjs", "javascript"],
37
+ [".py", "python"],
38
+ [".pyw", "python"],
39
+ [".rs", "rust"],
40
+ [".go", "go"],
41
+ [".c", "c"],
42
+ [".h", "c"],
43
+ [".cc", "c++"],
44
+ [".cpp", "c++"],
45
+ [".cxx", "c++"],
46
+ [".hpp", "c++"],
47
+ [".hh", "c++"],
48
+ [".hxx", "c++"],
49
+ [".cu", "c++"],
50
+ [".cuh", "c++"],
51
+ [".java", "java"],
52
+ [".rb", "ruby"],
53
+ [".cs", "c#"]
54
+ ]);
55
+ var MANIFEST_LANGUAGES = [
56
+ { name: "package.json", type: "typescript" },
57
+ { name: "pyproject.toml", type: "python" },
58
+ { name: "setup.py", type: "python" },
59
+ { name: "Cargo.toml", type: "rust" },
60
+ { name: "go.mod", type: "go" },
61
+ { name: "pom.xml", type: "java" },
62
+ { name: "CMakeLists.txt", type: "c++" },
63
+ { name: "compile_commands.json", type: "c++" },
64
+ { name: "Gemfile", type: "ruby" },
65
+ { name: "*.csproj", type: "c#" }
66
+ ];
67
+ function emptyLanguageCounts() {
68
+ return {
69
+ typescript: 0,
70
+ javascript: 0,
71
+ python: 0,
72
+ rust: 0,
73
+ go: 0,
74
+ c: 0,
75
+ "c++": 0,
76
+ java: 0,
77
+ ruby: 0,
78
+ "c#": 0
79
+ };
80
+ }
81
+ function extensionOf(name) {
82
+ const index = name.lastIndexOf(".");
83
+ return index === -1 ? "" : name.slice(index);
84
+ }
85
+ function countManifest(name, manifestCounts) {
86
+ for (const marker of MANIFEST_LANGUAGES) {
87
+ if (marker.name.startsWith("*.")) {
88
+ const ext = marker.name.slice(1);
89
+ if (name.endsWith(ext)) {
90
+ manifestCounts[marker.type] = (manifestCounts[marker.type] ?? 0) + 1;
91
+ }
92
+ } else {
93
+ if (name !== marker.name) continue;
94
+ manifestCounts[marker.type] = (manifestCounts[marker.type] ?? 0) + 1;
95
+ }
96
+ }
97
+ }
98
+ function scanFiles(cwd, files, languageCounts, manifestCounts) {
99
+ for (const path of files) {
100
+ const name = path.split("/").pop() ?? path;
101
+ countManifest(name, manifestCounts);
102
+ if (name.endsWith(".d.ts")) continue;
103
+ const extension = extensionOf(name);
104
+ let language = EXTENSION_LANGUAGES.get(extension);
105
+ if (extension === ".h") {
106
+ try {
107
+ language = classifyCHeaderLanguage(readFileSync(join(cwd, path), "utf8"));
108
+ } catch {
109
+ language = "c";
110
+ }
111
+ }
112
+ if (language) languageCounts[language] += 1;
113
+ }
114
+ }
115
+ function looksLikeDotfiles(files) {
116
+ const dotDirs = /* @__PURE__ */ new Set();
117
+ for (const path of files) {
118
+ const [root, child] = path.split("/", 2);
119
+ if (child && root?.startsWith("dot-")) dotDirs.add(root);
120
+ }
121
+ return dotDirs.size >= 2;
122
+ }
123
+ function dominantFromCounts(counts) {
124
+ let best;
125
+ let bestCount = 0;
126
+ for (const language of SOURCE_LANGUAGES) {
127
+ const count = counts[language] ?? 0;
128
+ if (count > bestCount) {
129
+ best = language;
130
+ bestCount = count;
131
+ } else if (count === bestCount && count > 0) {
132
+ best = void 0;
133
+ }
134
+ }
135
+ return best;
136
+ }
137
+ function detectProjectProfile(cwd) {
138
+ const languageCounts = emptyLanguageCounts();
139
+ const manifestCounts = {};
140
+ const files = enumerateWorkspaceFiles(cwd);
141
+ scanFiles(cwd, files, languageCounts, manifestCounts);
142
+ const sourceFiles = SOURCE_LANGUAGES.reduce((sum, language) => sum + languageCounts[language], 0);
143
+ const dominantSource = dominantFromCounts(languageCounts);
144
+ const dominantCount = dominantSource ? languageCounts[dominantSource] : 0;
145
+ const polyglot = sourceFiles > 0 && dominantCount / sourceFiles <= 0.7;
146
+ if (sourceFiles > 0) {
147
+ return {
148
+ projectType: polyglot ? "polyglot" : dominantSource ?? "polyglot",
149
+ sourceFiles,
150
+ languageCounts,
151
+ manifestCounts,
152
+ ...dominantSource ? { dominantLanguage: dominantSource } : {},
153
+ polyglot
154
+ };
155
+ }
156
+ const manifestDominant = dominantFromCounts(manifestCounts);
157
+ if (manifestDominant) {
158
+ return {
159
+ projectType: manifestDominant,
160
+ sourceFiles,
161
+ languageCounts,
162
+ manifestCounts,
163
+ dominantLanguage: manifestDominant,
164
+ polyglot: false
165
+ };
166
+ }
167
+ const manifestTotal = SOURCE_LANGUAGES.reduce((sum, language) => sum + (manifestCounts[language] ?? 0), 0);
168
+ if (manifestTotal > 0) {
169
+ return {
170
+ projectType: "polyglot",
171
+ sourceFiles,
172
+ languageCounts,
173
+ manifestCounts,
174
+ polyglot: true
175
+ };
176
+ }
177
+ return {
178
+ projectType: looksLikeDotfiles(files) ? "dotfiles" : "unknown",
179
+ sourceFiles,
180
+ languageCounts,
181
+ manifestCounts,
182
+ polyglot: false
183
+ };
184
+ }
185
+ function detectProjectType(cwd) {
186
+ return detectProjectProfile(cwd).projectType;
187
+ }
188
+
189
+ export {
190
+ detectProjectProfile,
191
+ detectProjectType
192
+ };
193
+ //# sourceMappingURL=chunk-YHZX5GEU.js.map
@@ -0,0 +1,91 @@
1
+ import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
+ import {
3
+ init_esm_shims
4
+ } from "./chunk-3R73A4XB.js";
5
+
6
+ // src/engine/env-api-keys.ts
7
+ init_esm_shims();
8
+ import { existsSync } from "node:fs";
9
+ import { homedir } from "node:os";
10
+ import { join } from "node:path";
11
+ var ANTHROPIC_AUTH_TOKEN_ENV = "ANTHROPIC_AUTH_TOKEN";
12
+ var ANTHROPIC_OAUTH_TOKEN_ENV = "ANTHROPIC_OAUTH_TOKEN";
13
+ var ANTHROPIC_API_KEY_ENV = "ANTHROPIC_API_KEY";
14
+ var ENV_KEYS = {
15
+ "ant-ling": "ANT_LING_API_KEY",
16
+ "qwen-token-plan": "QWEN_TOKEN_PLAN_API_KEY",
17
+ "qwen-token-plan-cn": "QWEN_TOKEN_PLAN_CN_API_KEY",
18
+ openai: "OPENAI_API_KEY",
19
+ "azure-openai-responses": "AZURE_OPENAI_API_KEY",
20
+ nvidia: "NVIDIA_API_KEY",
21
+ deepseek: "DEEPSEEK_API_KEY",
22
+ google: "GEMINI_API_KEY",
23
+ "google-vertex": "GOOGLE_CLOUD_API_KEY",
24
+ groq: "GROQ_API_KEY",
25
+ cerebras: "CEREBRAS_API_KEY",
26
+ xai: "XAI_API_KEY",
27
+ radius: "RADIUS_API_KEY",
28
+ openrouter: "OPENROUTER_API_KEY",
29
+ "vercel-ai-gateway": "AI_GATEWAY_API_KEY",
30
+ zai: "ZAI_API_KEY",
31
+ "zai-coding-cn": "ZAI_CODING_CN_API_KEY",
32
+ mistral: "MISTRAL_API_KEY",
33
+ minimax: "MINIMAX_API_KEY",
34
+ "minimax-cn": "MINIMAX_CN_API_KEY",
35
+ moonshotai: "MOONSHOT_API_KEY",
36
+ "moonshotai-cn": "MOONSHOT_API_KEY",
37
+ huggingface: "HF_TOKEN",
38
+ fireworks: "FIREWORKS_API_KEY",
39
+ together: "TOGETHER_API_KEY",
40
+ baseten: "BASETEN_API_KEY",
41
+ opencode: "OPENCODE_API_KEY",
42
+ "opencode-go": "OPENCODE_API_KEY",
43
+ "kimi-coding": "KIMI_API_KEY",
44
+ "cloudflare-workers-ai": "CLOUDFLARE_API_KEY",
45
+ "cloudflare-ai-gateway": "CLOUDFLARE_API_KEY",
46
+ xiaomi: "XIAOMI_API_KEY",
47
+ "xiaomi-token-plan-cn": "XIAOMI_TOKEN_PLAN_CN_API_KEY",
48
+ "xiaomi-token-plan-ams": "XIAOMI_TOKEN_PLAN_AMS_API_KEY",
49
+ "xiaomi-token-plan-sgp": "XIAOMI_TOKEN_PLAN_SGP_API_KEY"
50
+ };
51
+ function envValue(name, env) {
52
+ return env?.[name] || process.env[name] || void 0;
53
+ }
54
+ function apiKeyEnvVars(provider) {
55
+ if (provider === "github-copilot") return ["COPILOT_GITHUB_TOKEN"];
56
+ if (provider === "anthropic") {
57
+ return [ANTHROPIC_AUTH_TOKEN_ENV, ANTHROPIC_OAUTH_TOKEN_ENV, ANTHROPIC_API_KEY_ENV];
58
+ }
59
+ const name = ENV_KEYS[provider];
60
+ return name ? [name] : void 0;
61
+ }
62
+ function findEngineEnvKeys(provider, env) {
63
+ const names = apiKeyEnvVars(provider);
64
+ if (!names) return void 0;
65
+ const found = names.filter((name) => !!envValue(name, env));
66
+ return found.length > 0 ? found : void 0;
67
+ }
68
+ function getEngineEnvApiKey(provider, env) {
69
+ const keys = findEngineEnvKeys(provider, env);
70
+ if (keys?.[0]) {
71
+ const name = provider === "anthropic" ? keys.find((key) => key !== ANTHROPIC_AUTH_TOKEN_ENV) : keys[0];
72
+ if (name) return envValue(name, env);
73
+ }
74
+ if (provider === "google-vertex") {
75
+ const credentialsPath = envValue("GOOGLE_APPLICATION_CREDENTIALS", env);
76
+ const hasCredentials = credentialsPath ? existsSync(credentialsPath) : existsSync(join(homedir(), ".config", "gcloud", "application_default_credentials.json"));
77
+ const hasProject = !!(envValue("GOOGLE_CLOUD_PROJECT", env) || envValue("GCLOUD_PROJECT", env));
78
+ const hasLocation = !!envValue("GOOGLE_CLOUD_LOCATION", env);
79
+ if (hasCredentials && hasProject && hasLocation) return "<authenticated>";
80
+ }
81
+ if (provider === "amazon-bedrock" && (envValue("AWS_PROFILE", env) || envValue("AWS_ACCESS_KEY_ID", env) && envValue("AWS_SECRET_ACCESS_KEY", env) || envValue("AWS_BEARER_TOKEN_BEDROCK", env) || envValue("AWS_CONTAINER_CREDENTIALS_RELATIVE_URI", env) || envValue("AWS_CONTAINER_CREDENTIALS_FULL_URI", env) || envValue("AWS_WEB_IDENTITY_TOKEN_FILE", env))) {
82
+ return "<authenticated>";
83
+ }
84
+ return void 0;
85
+ }
86
+
87
+ export {
88
+ findEngineEnvKeys,
89
+ getEngineEnvApiKey
90
+ };
91
+ //# sourceMappingURL=chunk-YXLYO42X.js.map