@cleocode/core 2026.8.1 → 2026.8.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 (323) hide show
  1. package/dist/bootstrap.d.ts.map +1 -1
  2. package/dist/bootstrap.js +57 -27
  3. package/dist/bootstrap.js.map +1 -1
  4. package/dist/check/pr-gate.d.ts.map +1 -1
  5. package/dist/check/pr-gate.js +9 -0
  6. package/dist/check/pr-gate.js.map +1 -1
  7. package/dist/db/index.d.ts +13 -0
  8. package/dist/db/index.d.ts.map +1 -1
  9. package/dist/db/index.js +13 -0
  10. package/dist/db/index.js.map +1 -1
  11. package/dist/docs/display-alias.js +1 -1
  12. package/dist/docs/display-alias.js.map +1 -1
  13. package/dist/docs/export-document.js +499 -380
  14. package/dist/docs/export-document.js.map +3 -3
  15. package/dist/docs/numbering.js +1 -1
  16. package/dist/docs/numbering.js.map +1 -1
  17. package/dist/docs/supersede.js +1 -1
  18. package/dist/docs/supersede.js.map +1 -1
  19. package/dist/hooks/registry.d.ts +2 -2
  20. package/dist/hooks/registry.d.ts.map +1 -1
  21. package/dist/hooks/registry.js +5 -0
  22. package/dist/hooks/registry.js.map +1 -1
  23. package/dist/hooks/types.d.ts +59 -0
  24. package/dist/hooks/types.d.ts.map +1 -1
  25. package/dist/init/scaffold-workflows.d.ts +12 -0
  26. package/dist/init/scaffold-workflows.d.ts.map +1 -1
  27. package/dist/init/scaffold-workflows.js +16 -0
  28. package/dist/init/scaffold-workflows.js.map +1 -1
  29. package/dist/init/upgrade-workflows.d.ts.map +1 -1
  30. package/dist/init/upgrade-workflows.js +16 -0
  31. package/dist/init/upgrade-workflows.js.map +1 -1
  32. package/dist/init.d.ts.map +1 -1
  33. package/dist/init.js +16 -1
  34. package/dist/init.js.map +1 -1
  35. package/dist/injection.d.ts.map +1 -1
  36. package/dist/injection.js +44 -3
  37. package/dist/injection.js.map +1 -1
  38. package/dist/internal.d.ts +1 -0
  39. package/dist/internal.d.ts.map +1 -1
  40. package/dist/internal.js +2 -0
  41. package/dist/internal.js.map +1 -1
  42. package/dist/lifecycle/index.js +1 -1
  43. package/dist/lifecycle/index.js.map +1 -1
  44. package/dist/llm/credentials.d.ts +16 -1
  45. package/dist/llm/credentials.d.ts.map +1 -1
  46. package/dist/llm/credentials.js.map +1 -1
  47. package/dist/llm/cross-provider-selector.d.ts +25 -0
  48. package/dist/llm/cross-provider-selector.d.ts.map +1 -1
  49. package/dist/llm/cross-provider-selector.js +76 -3
  50. package/dist/llm/cross-provider-selector.js.map +1 -1
  51. package/dist/llm/local-inference-probe.d.ts +101 -0
  52. package/dist/llm/local-inference-probe.d.ts.map +1 -0
  53. package/dist/llm/local-inference-probe.js +174 -0
  54. package/dist/llm/local-inference-probe.js.map +1 -0
  55. package/dist/llm/plugin-facade.js +429 -115
  56. package/dist/llm/plugin-facade.js.map +3 -3
  57. package/dist/llm/role-executor.d.ts.map +1 -1
  58. package/dist/llm/role-executor.js +95 -9
  59. package/dist/llm/role-executor.js.map +1 -1
  60. package/dist/llm/role-resolver.d.ts +10 -0
  61. package/dist/llm/role-resolver.d.ts.map +1 -1
  62. package/dist/llm/role-resolver.js +92 -1
  63. package/dist/llm/role-resolver.js.map +1 -1
  64. package/dist/llm/system-resolver.d.ts.map +1 -1
  65. package/dist/llm/system-resolver.js +2 -0
  66. package/dist/llm/system-resolver.js.map +1 -1
  67. package/dist/memory/brain-backfill.js +3 -3
  68. package/dist/memory/brain-backfill.js.map +1 -1
  69. package/dist/memory/brain-consolidator.js +2 -2
  70. package/dist/memory/brain-consolidator.js.map +1 -1
  71. package/dist/memory/brain-doctor.js +1 -1
  72. package/dist/memory/brain-doctor.js.map +1 -1
  73. package/dist/memory/brain-health-dashboard.js +1 -1
  74. package/dist/memory/brain-health-dashboard.js.map +1 -1
  75. package/dist/memory/brain-lifecycle.js +10 -10
  76. package/dist/memory/brain-lifecycle.js.map +1 -1
  77. package/dist/memory/brain-maintenance.js +1 -1
  78. package/dist/memory/brain-maintenance.js.map +1 -1
  79. package/dist/memory/brain-page-nodes.js +4 -4
  80. package/dist/memory/brain-page-nodes.js.map +1 -1
  81. package/dist/memory/brain-reasoning.js +1 -1
  82. package/dist/memory/brain-reasoning.js.map +1 -1
  83. package/dist/memory/brain-search.d.ts +109 -0
  84. package/dist/memory/brain-search.d.ts.map +1 -1
  85. package/dist/memory/brain-search.js +150 -38
  86. package/dist/memory/brain-search.js.map +1 -1
  87. package/dist/memory/brain-similarity.js +1 -1
  88. package/dist/memory/brain-similarity.js.map +1 -1
  89. package/dist/memory/brain-stdp.js +6 -6
  90. package/dist/memory/brain-stdp.js.map +1 -1
  91. package/dist/memory/brain-stub-prune.d.ts +109 -0
  92. package/dist/memory/brain-stub-prune.d.ts.map +1 -0
  93. package/dist/memory/brain-stub-prune.js +155 -0
  94. package/dist/memory/brain-stub-prune.js.map +1 -0
  95. package/dist/memory/brain-sweep-executor.js +1 -1
  96. package/dist/memory/brain-sweep-executor.js.map +1 -1
  97. package/dist/memory/brain-writer-handlers.js +2 -2
  98. package/dist/memory/brain-writer-handlers.js.map +1 -1
  99. package/dist/memory/claude-mem-migration.d.ts.map +1 -1
  100. package/dist/memory/claude-mem-migration.js +2 -2
  101. package/dist/memory/claude-mem-migration.js.map +1 -1
  102. package/dist/memory/engine-compat.d.ts.map +1 -1
  103. package/dist/memory/engine-compat.js +65 -7
  104. package/dist/memory/engine-compat.js.map +1 -1
  105. package/dist/memory/extraction-gate.js +3 -3
  106. package/dist/memory/extraction-gate.js.map +1 -1
  107. package/dist/memory/graph-memory-bridge.js +9 -9
  108. package/dist/memory/graph-memory-bridge.js.map +1 -1
  109. package/dist/memory/graph-queries.js +4 -4
  110. package/dist/memory/graph-queries.js.map +1 -1
  111. package/dist/memory/llm-extraction.js +1 -1
  112. package/dist/memory/llm-extraction.js.map +1 -1
  113. package/dist/memory/memory-bridge.js +1 -1
  114. package/dist/memory/memory-bridge.js.map +1 -1
  115. package/dist/memory/nexus-plasticity.js +1 -1
  116. package/dist/memory/nexus-plasticity.js.map +1 -1
  117. package/dist/memory/observer-reflector.js +1 -1
  118. package/dist/memory/observer-reflector.js.map +1 -1
  119. package/dist/memory/pipeline-manifest-sqlite.d.ts.map +1 -1
  120. package/dist/memory/pipeline-manifest-sqlite.js +13 -3
  121. package/dist/memory/pipeline-manifest-sqlite.js.map +1 -1
  122. package/dist/memory/quality-feedback.js +4 -4
  123. package/dist/memory/quality-feedback.js.map +1 -1
  124. package/dist/memory/retrieval/increment-citation-counts.js +1 -1
  125. package/dist/memory/retrieval/increment-citation-counts.js.map +1 -1
  126. package/dist/memory/retrieval/log-retrieval.js +1 -1
  127. package/dist/memory/retrieval/log-retrieval.js.map +1 -1
  128. package/dist/memory/retrieval/observe.js +1 -1
  129. package/dist/memory/retrieval/observe.js.map +1 -1
  130. package/dist/memory/retrieval/search.js +1 -1
  131. package/dist/memory/retrieval/search.js.map +1 -1
  132. package/dist/memory/retrieval/timeline.js +1 -1
  133. package/dist/memory/retrieval/timeline.js.map +1 -1
  134. package/dist/memory/sleep-consolidation.js +4 -4
  135. package/dist/memory/sleep-consolidation.js.map +1 -1
  136. package/dist/memory/temporal-supersession.js +5 -5
  137. package/dist/memory/temporal-supersession.js.map +1 -1
  138. package/dist/memory/transcript-extractor.js +1 -1
  139. package/dist/memory/transcript-extractor.js.map +1 -1
  140. package/dist/memory/transcript-ingestor.js +1 -1
  141. package/dist/memory/transcript-ingestor.js.map +1 -1
  142. package/dist/memory/transcript-scanner.js +1 -1
  143. package/dist/memory/transcript-scanner.js.map +1 -1
  144. package/dist/nexus/analyze-orchestrator.d.ts.map +1 -1
  145. package/dist/nexus/analyze-orchestrator.js +28 -0
  146. package/dist/nexus/analyze-orchestrator.js.map +1 -1
  147. package/dist/nexus/context.d.ts.map +1 -1
  148. package/dist/nexus/context.js +3 -3
  149. package/dist/nexus/context.js.map +1 -1
  150. package/dist/nexus/impact.d.ts.map +1 -1
  151. package/dist/nexus/impact.js +3 -3
  152. package/dist/nexus/impact.js.map +1 -1
  153. package/dist/nexus/living-brain.js +7 -7
  154. package/dist/nexus/living-brain.js.map +1 -1
  155. package/dist/nexus/symbol-miss.d.ts +132 -0
  156. package/dist/nexus/symbol-miss.d.ts.map +1 -0
  157. package/dist/nexus/symbol-miss.js +168 -0
  158. package/dist/nexus/symbol-miss.js.map +1 -0
  159. package/dist/nexus/tasks-bridge.js +4 -4
  160. package/dist/nexus/tasks-bridge.js.map +1 -1
  161. package/dist/orchestrate/spawn-ops.d.ts +21 -1
  162. package/dist/orchestrate/spawn-ops.d.ts.map +1 -1
  163. package/dist/orchestrate/spawn-ops.js +39 -2
  164. package/dist/orchestrate/spawn-ops.js.map +1 -1
  165. package/dist/orchestrate/worker-verify.d.ts.map +1 -1
  166. package/dist/orchestrate/worker-verify.js +22 -0
  167. package/dist/orchestrate/worker-verify.js.map +1 -1
  168. package/dist/release/changesets-aggregator.d.ts.map +1 -1
  169. package/dist/release/changesets-aggregator.js +15 -1
  170. package/dist/release/changesets-aggregator.js.map +1 -1
  171. package/dist/release/open.d.ts +29 -2
  172. package/dist/release/open.d.ts.map +1 -1
  173. package/dist/release/open.js +48 -11
  174. package/dist/release/open.js.map +1 -1
  175. package/dist/release/reconcile.d.ts.map +1 -1
  176. package/dist/release/reconcile.js +5 -1
  177. package/dist/release/reconcile.js.map +1 -1
  178. package/dist/resources/governor.d.ts +12 -2
  179. package/dist/resources/governor.d.ts.map +1 -1
  180. package/dist/resources/governor.js +12 -3
  181. package/dist/resources/governor.js.map +1 -1
  182. package/dist/sagas/migrate-containment.d.ts.map +1 -1
  183. package/dist/sagas/migrate-containment.js +4 -2
  184. package/dist/sagas/migrate-containment.js.map +1 -1
  185. package/dist/scaffold/ensure-dirs.d.ts.map +1 -1
  186. package/dist/scaffold/ensure-dirs.js +15 -3
  187. package/dist/scaffold/ensure-dirs.js.map +1 -1
  188. package/dist/scaffold/project-detection.d.ts.map +1 -1
  189. package/dist/scaffold/project-detection.js +2 -1
  190. package/dist/scaffold/project-detection.js.map +1 -1
  191. package/dist/selfimprove/draft-pr.d.ts +14 -1
  192. package/dist/selfimprove/draft-pr.d.ts.map +1 -1
  193. package/dist/selfimprove/draft-pr.js.map +1 -1
  194. package/dist/selfimprove/fix-gen.d.ts +0 -21
  195. package/dist/selfimprove/fix-gen.d.ts.map +1 -1
  196. package/dist/selfimprove/fix-gen.js +509 -173
  197. package/dist/selfimprove/fix-gen.js.map +3 -3
  198. package/dist/selfimprove/run-loop.d.ts.map +1 -1
  199. package/dist/selfimprove/run-loop.js +50 -19
  200. package/dist/selfimprove/run-loop.js.map +1 -1
  201. package/dist/selfimprove/scenarios/dhq-replay-find/golden.json +114 -4
  202. package/dist/selfimprove/scenarios/dhq-replay-find/scenario.json +3 -3
  203. package/dist/sentient/dream-cycle.d.ts +20 -19
  204. package/dist/sentient/dream-cycle.d.ts.map +1 -1
  205. package/dist/sentient/dream-cycle.js +323 -12
  206. package/dist/sentient/dream-cycle.js.map +1 -1
  207. package/dist/sentient/dream-watermark.d.ts +134 -0
  208. package/dist/sentient/dream-watermark.d.ts.map +1 -0
  209. package/dist/sentient/dream-watermark.js +156 -0
  210. package/dist/sentient/dream-watermark.js.map +1 -0
  211. package/dist/sentient/hygiene-scan.js +1 -1
  212. package/dist/sentient/hygiene-scan.js.map +1 -1
  213. package/dist/sentient/propose-tick.js +3 -3
  214. package/dist/sentient/propose-tick.js.map +1 -1
  215. package/dist/sentient/stage-drift-tick.js +1 -1
  216. package/dist/sentient/stage-drift-tick.js.map +1 -1
  217. package/dist/sentient/state.d.ts +17 -0
  218. package/dist/sentient/state.d.ts.map +1 -1
  219. package/dist/sentient/state.js +22 -3
  220. package/dist/sentient/state.js.map +1 -1
  221. package/dist/sentient/tick.d.ts.map +1 -1
  222. package/dist/sentient/tick.js +79 -2
  223. package/dist/sentient/tick.js.map +1 -1
  224. package/dist/sequence/index.js +1 -1
  225. package/dist/sequence/index.js.map +1 -1
  226. package/dist/sessions/index.d.ts.map +1 -1
  227. package/dist/sessions/index.js +5 -1
  228. package/dist/sessions/index.js.map +1 -1
  229. package/dist/sessions/snapshot.d.ts.map +1 -1
  230. package/dist/sessions/snapshot.js +6 -3
  231. package/dist/sessions/snapshot.js.map +1 -1
  232. package/dist/store/agent-registry-store.d.ts.map +1 -1
  233. package/dist/store/agent-registry-store.js +71 -28
  234. package/dist/store/agent-registry-store.js.map +1 -1
  235. package/dist/store/attachment-store.js +3 -3
  236. package/dist/store/attachment-store.js.map +1 -1
  237. package/dist/store/checkpoint-git-dir.d.ts +95 -0
  238. package/dist/store/checkpoint-git-dir.d.ts.map +1 -0
  239. package/dist/store/checkpoint-git-dir.js +111 -0
  240. package/dist/store/checkpoint-git-dir.js.map +1 -0
  241. package/dist/store/conduit-sqlite.d.ts +21 -1
  242. package/dist/store/conduit-sqlite.d.ts.map +1 -1
  243. package/dist/store/conduit-sqlite.js +42 -56
  244. package/dist/store/conduit-sqlite.js.map +1 -1
  245. package/dist/store/dual-scope-db.d.ts +39 -0
  246. package/dist/store/dual-scope-db.d.ts.map +1 -1
  247. package/dist/store/dual-scope-db.js +26 -8
  248. package/dist/store/dual-scope-db.js.map +1 -1
  249. package/dist/store/git-checkpoint.d.ts.map +1 -1
  250. package/dist/store/git-checkpoint.js +6 -5
  251. package/dist/store/git-checkpoint.js.map +1 -1
  252. package/dist/store/memory-sqlite.d.ts +57 -3
  253. package/dist/store/memory-sqlite.d.ts.map +1 -1
  254. package/dist/store/memory-sqlite.js +70 -89
  255. package/dist/store/memory-sqlite.js.map +1 -1
  256. package/dist/store/nexus-sqlite.d.ts +42 -0
  257. package/dist/store/nexus-sqlite.d.ts.map +1 -1
  258. package/dist/store/nexus-sqlite.js +79 -115
  259. package/dist/store/nexus-sqlite.js.map +1 -1
  260. package/dist/store/ports/domain-binding.d.ts +233 -0
  261. package/dist/store/ports/domain-binding.d.ts.map +1 -0
  262. package/dist/store/ports/domain-binding.js +500 -0
  263. package/dist/store/ports/domain-binding.js.map +1 -0
  264. package/dist/store/ports/fk-integrity.d.ts +155 -0
  265. package/dist/store/ports/fk-integrity.d.ts.map +1 -0
  266. package/dist/store/ports/fk-integrity.js +182 -0
  267. package/dist/store/ports/fk-integrity.js.map +1 -0
  268. package/dist/store/role-accessors-impl.js +2 -2
  269. package/dist/store/role-accessors-impl.js.map +1 -1
  270. package/dist/store/skills-db.d.ts +19 -0
  271. package/dist/store/skills-db.d.ts.map +1 -1
  272. package/dist/store/skills-db.js +80 -72
  273. package/dist/store/skills-db.js.map +1 -1
  274. package/dist/store/sqlite-backup.js +2 -2
  275. package/dist/store/sqlite-backup.js.map +1 -1
  276. package/dist/store/sqlite-data-accessor.js +1 -1
  277. package/dist/store/sqlite-data-accessor.js.map +1 -1
  278. package/dist/store/sqlite.d.ts +72 -10
  279. package/dist/store/sqlite.d.ts.map +1 -1
  280. package/dist/store/sqlite.js +173 -160
  281. package/dist/store/sqlite.js.map +1 -1
  282. package/dist/store/tasks-sqlite.js +2 -2
  283. package/dist/store/tasks-sqlite.js.map +1 -1
  284. package/dist/system/health.d.ts +0 -4
  285. package/dist/system/health.d.ts.map +1 -1
  286. package/dist/system/health.js +60 -3
  287. package/dist/system/health.js.map +1 -1
  288. package/dist/tasks/add.d.ts.map +1 -1
  289. package/dist/tasks/add.js +40 -4
  290. package/dist/tasks/add.js.map +1 -1
  291. package/dist/tasks/collection.d.ts +51 -0
  292. package/dist/tasks/collection.d.ts.map +1 -0
  293. package/dist/tasks/collection.js +81 -0
  294. package/dist/tasks/collection.js.map +1 -0
  295. package/dist/tasks/complete.d.ts.map +1 -1
  296. package/dist/tasks/complete.js +8 -3
  297. package/dist/tasks/complete.js.map +1 -1
  298. package/dist/tasks/evidence.d.ts.map +1 -1
  299. package/dist/tasks/evidence.js +17 -0
  300. package/dist/tasks/evidence.js.map +1 -1
  301. package/dist/tasks/find.d.ts +50 -0
  302. package/dist/tasks/find.d.ts.map +1 -1
  303. package/dist/tasks/find.js +63 -2
  304. package/dist/tasks/find.js.map +1 -1
  305. package/dist/tasks/tool-resolver.d.ts +1 -1
  306. package/dist/tasks/tool-resolver.d.ts.map +1 -1
  307. package/dist/tasks/tool-resolver.js +83 -0
  308. package/dist/tasks/tool-resolver.js.map +1 -1
  309. package/dist/tasks/tool-semaphore.d.ts +82 -12
  310. package/dist/tasks/tool-semaphore.d.ts.map +1 -1
  311. package/dist/tasks/tool-semaphore.js +79 -17
  312. package/dist/tasks/tool-semaphore.js.map +1 -1
  313. package/dist/upgrade.js +2 -2
  314. package/dist/upgrade.js.map +1 -1
  315. package/dist/validation/doctor/checks.d.ts +23 -1
  316. package/dist/validation/doctor/checks.d.ts.map +1 -1
  317. package/dist/validation/doctor/checks.js +79 -19
  318. package/dist/validation/doctor/checks.js.map +1 -1
  319. package/dist/worktree/list.js +1 -1
  320. package/dist/worktree/list.js.map +1 -1
  321. package/package.json +23 -13
  322. package/templates/CLEO-INJECTION.md +40 -25
  323. package/templates/workflows/release-prepare.yml.tmpl +73 -16
@@ -1 +1 @@
1
- {"version":3,"file":"cross-provider-selector.js","sourceRoot":"","sources":["../../src/llm/cross-provider-selector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cross-provider-selector.js","sourceRoot":"","sources":["../../src/llm/cross-provider-selector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Runtime detection of a reachable local inference server (T12082).
3
+ *
4
+ * ## Why CLEO should find this by itself
5
+ *
6
+ * The auxiliary fallback chain exists so that "context compression, brain dream
7
+ * cycles, hygiene scans" do not fail silently when the primary provider is
8
+ * unavailable. Its default chain is `anthropic → openrouter → groq` — all
9
+ * cloud. When every cloud credential is unusable, the chain is exhausted and
10
+ * the capability simply stops.
11
+ *
12
+ * That is exactly the state this machine was in on 2026-08-06: the anthropic
13
+ * credential was consent-gated, the openai one returned 401 — and an Ollama
14
+ * server was running the whole time with `qwen2.5-coder:3b` loaded. The dream
15
+ * cycle reported "no usable LLM client" while free local inference sat one
16
+ * HTTP request away. Nothing was broken except that nobody looked.
17
+ *
18
+ * A background consolidation pass is precisely the workload that should degrade
19
+ * to a small local model rather than stop: it is not latency-critical, it is
20
+ * not user-facing, and a shallow synthesis is worth more than none. So the
21
+ * chain now ends with a local tier that is included ONLY when a server actually
22
+ * answers.
23
+ *
24
+ * ## Why a probe rather than a config flag
25
+ *
26
+ * A config flag would need the operator to know their own machine's state and
27
+ * keep it current. A 300 ms probe against loopback is cheap, is cached for the
28
+ * process, and is correct by construction — it reports what is true now.
29
+ *
30
+ * @task T12082
31
+ */
32
+ /** A detected, reachable local inference server. */
33
+ export interface LocalInference {
34
+ /** Which server answered (`ollama`, `lm-studio`). */
35
+ readonly name: string;
36
+ /**
37
+ * Server ROOT url, e.g. `http://127.0.0.1:11434`.
38
+ *
39
+ * The two forms are NOT interchangeable and mixing them fails late: the
40
+ * native Ollama transport appends `/api/chat`, so handing it the `/v1`
41
+ * form produces `/v1/api/chat` and a 404 that reads like the daemon is
42
+ * broken. Use {@link LocalInference.openAiBaseUrl} for OpenAI-compatible
43
+ * transports and this for native ones.
44
+ */
45
+ readonly baseUrl: string;
46
+ /** OpenAI-compatible base URL, e.g. `http://127.0.0.1:11434/v1`. */
47
+ readonly openAiBaseUrl: string;
48
+ /** Model ids the server reports, in the order it reported them. */
49
+ readonly models: readonly string[];
50
+ }
51
+ /**
52
+ * Detect a reachable local inference server with at least one model loaded.
53
+ *
54
+ * Cached for the process lifetime: a background tick may consult this many
55
+ * times and the answer does not change mid-run in practice.
56
+ *
57
+ * Never throws — a probe failure means "not available", which is a normal
58
+ * result rather than an error.
59
+ *
60
+ * @param opts - `force` re-probes, ignoring the cache (tests).
61
+ * @returns the detected server, or `null` when none answers.
62
+ *
63
+ * @example
64
+ * ```ts
65
+ * const local = await detectLocalInference();
66
+ * if (local) console.log(`${local.name} has ${local.models.length} model(s)`);
67
+ * ```
68
+ *
69
+ * @task T12082
70
+ */
71
+ export declare function detectLocalInference(opts?: {
72
+ force?: boolean;
73
+ }): Promise<LocalInference | null>;
74
+ /**
75
+ * List the models an Ollama daemon actually has pulled.
76
+ *
77
+ * The cross-provider selector picks an Ollama model from a RAM heuristic
78
+ * alone, which answers "what could this machine run", not "what is installed".
79
+ * Those differ constantly — this machine has 62 GB of RAM and therefore scored
80
+ * into the `gemma4:e4b` tier while holding only `qwen2.5-coder:3b` and
81
+ * `qwen2:0.5b`, so the resolved model would have 404'd at the daemon. The fit
82
+ * heuristic is still right; it just has to be intersected with reality.
83
+ *
84
+ * Not cached — the installed set changes whenever the operator pulls a model,
85
+ * and the call is one loopback request.
86
+ *
87
+ * Never throws.
88
+ *
89
+ * @param baseUrl - Ollama root URL, e.g. `http://localhost:11434` (no `/v1`).
90
+ * @returns installed model ids in daemon order, empty when unreachable.
91
+ *
92
+ * @task T12082
93
+ */
94
+ export declare function listOllamaModels(baseUrl: string): Promise<string[]>;
95
+ /**
96
+ * Clear the probe cache. Tests only.
97
+ *
98
+ * @task T12082
99
+ */
100
+ export declare function _resetLocalInferenceCacheForTests(): void;
101
+ //# sourceMappingURL=local-inference-probe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-inference-probe.d.ts","sourceRoot":"","sources":["../../src/llm/local-inference-probe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AA8BH,oDAAoD;AACpD,MAAM,WAAW,cAAc;IAC7B,qDAAqD;IACrD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,oEAAoE;IACpE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,mEAAmE;IACnE,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAsCD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAC7B,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAiChC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CASzE;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,IAAI,CAExD"}
@@ -0,0 +1,174 @@
1
+ /**
2
+ * Runtime detection of a reachable local inference server (T12082).
3
+ *
4
+ * ## Why CLEO should find this by itself
5
+ *
6
+ * The auxiliary fallback chain exists so that "context compression, brain dream
7
+ * cycles, hygiene scans" do not fail silently when the primary provider is
8
+ * unavailable. Its default chain is `anthropic → openrouter → groq` — all
9
+ * cloud. When every cloud credential is unusable, the chain is exhausted and
10
+ * the capability simply stops.
11
+ *
12
+ * That is exactly the state this machine was in on 2026-08-06: the anthropic
13
+ * credential was consent-gated, the openai one returned 401 — and an Ollama
14
+ * server was running the whole time with `qwen2.5-coder:3b` loaded. The dream
15
+ * cycle reported "no usable LLM client" while free local inference sat one
16
+ * HTTP request away. Nothing was broken except that nobody looked.
17
+ *
18
+ * A background consolidation pass is precisely the workload that should degrade
19
+ * to a small local model rather than stop: it is not latency-critical, it is
20
+ * not user-facing, and a shallow synthesis is worth more than none. So the
21
+ * chain now ends with a local tier that is included ONLY when a server actually
22
+ * answers.
23
+ *
24
+ * ## Why a probe rather than a config flag
25
+ *
26
+ * A config flag would need the operator to know their own machine's state and
27
+ * keep it current. A 300 ms probe against loopback is cheap, is cached for the
28
+ * process, and is correct by construction — it reports what is true now.
29
+ *
30
+ * @task T12082
31
+ */
32
+ /** Loopback endpoints checked, in order. Ollama first — it is the common case. */
33
+ const LOCAL_ENDPOINTS = [
34
+ {
35
+ name: 'ollama',
36
+ tagsUrl: 'http://127.0.0.1:11434/api/tags',
37
+ baseUrl: 'http://127.0.0.1:11434',
38
+ openAiBaseUrl: 'http://127.0.0.1:11434/v1',
39
+ },
40
+ {
41
+ name: 'lm-studio',
42
+ tagsUrl: 'http://127.0.0.1:1234/v1/models',
43
+ baseUrl: 'http://127.0.0.1:1234',
44
+ openAiBaseUrl: 'http://127.0.0.1:1234/v1',
45
+ },
46
+ ];
47
+ /** Probe timeout. Loopback either answers immediately or is not there. */
48
+ const PROBE_TIMEOUT_MS = 300;
49
+ /** Process-lifetime cache — `undefined` = not yet probed, `null` = none found. */
50
+ let cached;
51
+ /**
52
+ * Extract model ids from either an Ollama `/api/tags` or an OpenAI `/v1/models`
53
+ * payload, whichever shape came back.
54
+ *
55
+ * @param body - parsed JSON response.
56
+ * @returns model ids, possibly empty.
57
+ */
58
+ function extractModels(body) {
59
+ if (body === null || typeof body !== 'object')
60
+ return [];
61
+ const rec = body;
62
+ // Ollama: { models: [{ name, model, … }] }
63
+ if (Array.isArray(rec.models)) {
64
+ return rec.models
65
+ .map((m) => m !== null && typeof m === 'object'
66
+ ? (m.name ?? m.model)
67
+ : undefined)
68
+ .filter((n) => typeof n === 'string');
69
+ }
70
+ // OpenAI-compatible: { data: [{ id }] }
71
+ if (Array.isArray(rec.data)) {
72
+ return rec.data
73
+ .map((m) => (m !== null && typeof m === 'object' ? m.id : undefined))
74
+ .filter((n) => typeof n === 'string');
75
+ }
76
+ return [];
77
+ }
78
+ /**
79
+ * Detect a reachable local inference server with at least one model loaded.
80
+ *
81
+ * Cached for the process lifetime: a background tick may consult this many
82
+ * times and the answer does not change mid-run in practice.
83
+ *
84
+ * Never throws — a probe failure means "not available", which is a normal
85
+ * result rather than an error.
86
+ *
87
+ * @param opts - `force` re-probes, ignoring the cache (tests).
88
+ * @returns the detected server, or `null` when none answers.
89
+ *
90
+ * @example
91
+ * ```ts
92
+ * const local = await detectLocalInference();
93
+ * if (local) console.log(`${local.name} has ${local.models.length} model(s)`);
94
+ * ```
95
+ *
96
+ * @task T12082
97
+ */
98
+ export async function detectLocalInference(opts = {}) {
99
+ // Operator opt-out. Two audiences: someone on a shared or metered box who
100
+ // does not want background work routed to a daemon they run for other
101
+ // purposes, and the test suite — which must produce the same result whether
102
+ // or not the developer happens to have Ollama running.
103
+ if (process.env['CLEO_DISABLE_LOCAL_INFERENCE']?.trim())
104
+ return null;
105
+ if (!opts.force && cached !== undefined)
106
+ return cached;
107
+ for (const endpoint of LOCAL_ENDPOINTS) {
108
+ try {
109
+ const response = await fetch(endpoint.tagsUrl, {
110
+ signal: AbortSignal.timeout(PROBE_TIMEOUT_MS),
111
+ });
112
+ if (!response.ok)
113
+ continue;
114
+ const models = extractModels(await response.json());
115
+ // A server with no models loaded cannot serve a completion, so it is not
116
+ // a usable fallback — treat it as absent rather than advertising it.
117
+ if (models.length === 0)
118
+ continue;
119
+ cached = {
120
+ name: endpoint.name,
121
+ baseUrl: endpoint.baseUrl,
122
+ openAiBaseUrl: endpoint.openAiBaseUrl,
123
+ models,
124
+ };
125
+ return cached;
126
+ }
127
+ catch {
128
+ // Unreachable / timed out / non-JSON — try the next endpoint.
129
+ }
130
+ }
131
+ cached = null;
132
+ return cached;
133
+ }
134
+ /**
135
+ * List the models an Ollama daemon actually has pulled.
136
+ *
137
+ * The cross-provider selector picks an Ollama model from a RAM heuristic
138
+ * alone, which answers "what could this machine run", not "what is installed".
139
+ * Those differ constantly — this machine has 62 GB of RAM and therefore scored
140
+ * into the `gemma4:e4b` tier while holding only `qwen2.5-coder:3b` and
141
+ * `qwen2:0.5b`, so the resolved model would have 404'd at the daemon. The fit
142
+ * heuristic is still right; it just has to be intersected with reality.
143
+ *
144
+ * Not cached — the installed set changes whenever the operator pulls a model,
145
+ * and the call is one loopback request.
146
+ *
147
+ * Never throws.
148
+ *
149
+ * @param baseUrl - Ollama root URL, e.g. `http://localhost:11434` (no `/v1`).
150
+ * @returns installed model ids in daemon order, empty when unreachable.
151
+ *
152
+ * @task T12082
153
+ */
154
+ export async function listOllamaModels(baseUrl) {
155
+ try {
156
+ const url = `${baseUrl.replace(/\/+$/, '')}/api/tags`;
157
+ const response = await fetch(url, { signal: AbortSignal.timeout(PROBE_TIMEOUT_MS) });
158
+ if (!response.ok)
159
+ return [];
160
+ return extractModels(await response.json());
161
+ }
162
+ catch {
163
+ return [];
164
+ }
165
+ }
166
+ /**
167
+ * Clear the probe cache. Tests only.
168
+ *
169
+ * @task T12082
170
+ */
171
+ export function _resetLocalInferenceCacheForTests() {
172
+ cached = undefined;
173
+ }
174
+ //# sourceMappingURL=local-inference-probe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-inference-probe.js","sourceRoot":"","sources":["../../src/llm/local-inference-probe.ts"],"names":[],"mappings":"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"}