akm-cli 0.9.0-rc.1 → 0.9.0-rc.13

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 (587) hide show
  1. package/CHANGELOG.md +1190 -52
  2. package/README.md +62 -37
  3. package/SECURITY.md +46 -31
  4. package/dist/akm +162 -38
  5. package/dist/akm-migrate +44 -0
  6. package/dist/assets/backends/schtasks-template.xml +2 -1
  7. package/dist/assets/hints/cli-hints-full.md +268 -118
  8. package/dist/assets/hints/cli-hints-short.md +87 -24
  9. package/dist/assets/{profiles → improve-strategies}/catchup.json +3 -1
  10. package/dist/assets/{profiles → improve-strategies}/consolidate.json +3 -1
  11. package/dist/assets/{profiles → improve-strategies}/default.json +6 -7
  12. package/dist/assets/improve-strategies/frequent.json +15 -0
  13. package/dist/assets/{profiles → improve-strategies}/graph-refresh.json +4 -2
  14. package/dist/assets/{profiles → improve-strategies}/memory-focus.json +4 -1
  15. package/dist/assets/{profiles → improve-strategies}/proactive-maintenance.json +5 -5
  16. package/dist/assets/{profiles → improve-strategies}/quick.json +4 -2
  17. package/dist/assets/improve-strategies/reflect-distill.json +30 -0
  18. package/dist/assets/{profiles → improve-strategies}/thorough.json +1 -1
  19. package/dist/assets/prompts/consolidate-system.md +5 -5
  20. package/dist/assets/prompts/extract-session.md +2 -6
  21. package/dist/assets/prompts/memory-infer-user.md +2 -3
  22. package/dist/assets/prompts/reflect-llm-framed-contract.md +11 -0
  23. package/dist/assets/prompts/reflect-llm-schema-contract.md +3 -0
  24. package/dist/assets/prompts/reflect-output-repair.md +3 -0
  25. package/dist/assets/stash-skeleton/README.md +38 -10
  26. package/dist/assets/stash-skeleton/facts/conventions/assets/agent.md +8 -0
  27. package/dist/assets/stash-skeleton/facts/conventions/assets/command.md +8 -0
  28. package/dist/assets/stash-skeleton/facts/conventions/assets/fact.md +14 -1
  29. package/dist/assets/stash-skeleton/facts/conventions/assets/knowledge.md +13 -1
  30. package/dist/assets/stash-skeleton/facts/conventions/assets/lesson.md +9 -1
  31. package/dist/assets/stash-skeleton/facts/conventions/assets/memory.md +11 -0
  32. package/dist/assets/stash-skeleton/facts/conventions/assets/script.md +9 -0
  33. package/dist/assets/stash-skeleton/facts/conventions/assets/skill.md +9 -0
  34. package/dist/assets/stash-skeleton/facts/conventions/assets/workflow.md +8 -0
  35. package/dist/assets/stash-skeleton/facts/conventions/backlinks.md +100 -0
  36. package/dist/assets/stash-skeleton/facts/conventions/domains.md +64 -0
  37. package/dist/assets/stash-skeleton/facts/conventions/organization.md +136 -0
  38. package/dist/assets/tasks/core/extract.yml +3 -2
  39. package/dist/assets/tasks/core/improve.yml +2 -1
  40. package/dist/assets/tasks/core/index-refresh.yml +1 -0
  41. package/dist/assets/tasks/core/sync.yml +1 -0
  42. package/dist/assets/tasks/core/version-check.yml +2 -1
  43. package/dist/assets/tasks/improve/akm-graph-refresh-weekly.yml +5 -0
  44. package/dist/assets/tasks/improve/akm-improve-catchup.yml +8 -0
  45. package/dist/assets/tasks/improve/akm-improve-consolidate.yml +5 -0
  46. package/dist/assets/tasks/improve/akm-improve-frequent.yml +5 -0
  47. package/dist/assets/tasks/improve/akm-improve-nightly.yml +5 -0
  48. package/dist/assets/templates/html/health.html +5 -4
  49. package/dist/assets/workflows/workflow-template.md +31 -15
  50. package/dist/cli/invocation.js +279 -0
  51. package/dist/cli/parse-args.js +5 -90
  52. package/dist/cli/retired-commands.js +78 -0
  53. package/dist/cli/shared.js +158 -48
  54. package/dist/cli-node.mjs +2 -1
  55. package/dist/cli.js +747 -293
  56. package/dist/commands/agent/agent-dispatch.js +19 -18
  57. package/dist/commands/agent/agent-support.js +0 -24
  58. package/dist/commands/agent/contribute-cli.js +43 -97
  59. package/dist/commands/completions.js +80 -23
  60. package/dist/commands/config-cli.js +44 -281
  61. package/dist/commands/env/env-binding.js +13 -9
  62. package/dist/commands/env/env-cli.js +76 -159
  63. package/dist/commands/env/env.js +12 -163
  64. package/dist/commands/env/marker-path.js +6 -0
  65. package/dist/commands/env/secret-cli.js +45 -61
  66. package/dist/commands/env/secret.js +32 -62
  67. package/dist/commands/feedback-cli.js +179 -85
  68. package/dist/commands/health/accept-rate.js +58 -0
  69. package/dist/commands/health/advisories.js +7 -8
  70. package/dist/commands/health/checks.js +279 -94
  71. package/dist/commands/health/html-report.js +197 -578
  72. package/dist/commands/health/improve-metrics.js +277 -246
  73. package/dist/commands/health/llm-usage.js +19 -19
  74. package/dist/commands/health/md-report.js +16 -7
  75. package/dist/commands/health/metrics.js +67 -32
  76. package/dist/commands/health/renderers.js +47 -0
  77. package/dist/commands/health/report-view-model.js +508 -0
  78. package/dist/commands/health/stash-exposure.js +1 -1
  79. package/dist/commands/health/surfaces.js +16 -56
  80. package/dist/commands/health/task-runs.js +3 -67
  81. package/dist/{migrate-storage-node.mjs → commands/health/types-checks.js} +1 -5
  82. package/dist/commands/health/types-improve.js +29 -0
  83. package/dist/{output/text/save.js → commands/health/types-metrics.js} +1 -2
  84. package/dist/commands/health/types-result.js +7 -0
  85. package/dist/commands/health/types-runs.js +4 -0
  86. package/dist/commands/health/types-session-log.js +4 -0
  87. package/dist/commands/health/types-windows.js +4 -0
  88. package/dist/commands/health/types.js +26 -21
  89. package/dist/commands/health/windows.js +2 -3
  90. package/dist/commands/health.js +296 -167
  91. package/dist/commands/improve/anti-collapse.js +5 -5
  92. package/dist/commands/improve/autonomy-gate.js +68 -0
  93. package/dist/commands/improve/collapse-detector.js +65 -52
  94. package/dist/commands/improve/consolidate/chunking.js +9 -7
  95. package/dist/commands/improve/consolidate/eligibility.js +1 -23
  96. package/dist/commands/improve/consolidate/merge.js +4 -0
  97. package/dist/commands/improve/consolidate.js +454 -1354
  98. package/dist/commands/improve/content-hash.js +39 -0
  99. package/dist/commands/improve/distill/content-repair.js +4 -10
  100. package/dist/commands/improve/distill/promote-memory.js +89 -64
  101. package/dist/commands/improve/distill/quality-gate.js +118 -42
  102. package/dist/commands/improve/distill-guards.js +1 -1
  103. package/dist/commands/improve/distill-promotion-policy.js +33 -888
  104. package/dist/commands/improve/distill.js +607 -363
  105. package/dist/commands/improve/eligibility.js +165 -79
  106. package/dist/commands/improve/extract-cli.js +35 -126
  107. package/dist/commands/improve/extract-prompt.js +6 -35
  108. package/dist/commands/improve/extract.js +640 -391
  109. package/dist/commands/improve/feedback-valence.js +2 -12
  110. package/dist/commands/improve/improve-cli.js +134 -135
  111. package/dist/commands/improve/improve-result-file.js +30 -50
  112. package/dist/commands/improve/improve-run-types.js +4 -0
  113. package/dist/commands/improve/improve-strategies.js +135 -0
  114. package/dist/commands/improve/improve.js +904 -701
  115. package/dist/commands/improve/locks.js +64 -111
  116. package/dist/commands/improve/loop-stages.js +1110 -923
  117. package/dist/commands/improve/memory/derived-ref.js +124 -0
  118. package/dist/commands/improve/memory/memory-belief.js +79 -7
  119. package/dist/commands/improve/memory/memory-contradiction-detect.js +49 -52
  120. package/dist/commands/improve/memory/memory-improve.js +25 -37
  121. package/dist/commands/improve/outcome-loop.js +25 -88
  122. package/dist/commands/improve/preparation.js +1034 -813
  123. package/dist/commands/improve/proactive-maintenance.js +34 -9
  124. package/dist/commands/improve/proposal-envelope.js +31 -0
  125. package/dist/commands/improve/reflect.js +983 -794
  126. package/dist/commands/improve/run-context.js +119 -0
  127. package/dist/commands/improve/salience.js +24 -127
  128. package/dist/commands/improve/session-asset.js +7 -3
  129. package/dist/commands/improve/shared.js +14 -34
  130. package/dist/commands/improve/source-identity.js +28 -0
  131. package/dist/commands/improve/triage.js +20 -17
  132. package/dist/commands/lint/base-linter.js +340 -313
  133. package/dist/commands/lint/env-key-rules.js +31 -47
  134. package/dist/commands/lint/index.js +185 -30
  135. package/dist/commands/{events.js → log.js} +28 -38
  136. package/dist/commands/migrate-cli.js +54 -0
  137. package/dist/commands/migration-tool.js +55 -0
  138. package/dist/commands/observability-cli.js +70 -208
  139. package/dist/commands/proposal/diff-format.js +50 -0
  140. package/dist/commands/proposal/drain-policies.js +0 -6
  141. package/dist/commands/proposal/drain.js +91 -40
  142. package/dist/commands/proposal/proposal-cli.js +134 -132
  143. package/dist/commands/proposal/proposal-types.js +56 -0
  144. package/dist/commands/proposal/proposal.js +83 -65
  145. package/dist/commands/proposal/propose-cli.js +88 -0
  146. package/dist/commands/proposal/propose.js +105 -88
  147. package/dist/commands/proposal/repository.js +1303 -278
  148. package/dist/commands/proposal/validators/proposal-quality-validators.js +16 -6
  149. package/dist/commands/proposal/validators/proposal-validators.js +61 -12
  150. package/dist/commands/proposal/validators/proposals.js +6 -8
  151. package/dist/commands/read/curate.js +78 -73
  152. package/dist/commands/read/knowledge.js +510 -13
  153. package/dist/commands/read/registry-search.js +2 -2
  154. package/dist/commands/read/remember-cli.js +84 -15
  155. package/dist/commands/read/search-cli.js +203 -96
  156. package/dist/commands/read/search.js +126 -94
  157. package/dist/commands/read/show.js +226 -250
  158. package/dist/commands/registry-cli.js +34 -60
  159. package/dist/commands/remember.js +18 -57
  160. package/dist/commands/sources/add-cli.js +104 -49
  161. package/dist/commands/sources/bundle-cli.js +166 -0
  162. package/dist/commands/sources/bundle-config-ops.js +63 -0
  163. package/dist/commands/sources/info.js +27 -15
  164. package/dist/commands/sources/init.js +30 -40
  165. package/dist/commands/sources/installed-stashes.js +469 -172
  166. package/dist/commands/sources/schema-repair.js +10 -9
  167. package/dist/commands/sources/self-update.js +182 -121
  168. package/dist/commands/sources/source-add.js +169 -178
  169. package/dist/commands/sources/source-clone.js +144 -41
  170. package/dist/commands/sources/source-manage.js +94 -59
  171. package/dist/commands/sources/sources-cli.js +64 -205
  172. package/dist/commands/sources/stash-cli.js +91 -54
  173. package/dist/commands/sources/stash-skeleton.js +1 -1
  174. package/dist/commands/tasks/tasks-cli.js +106 -104
  175. package/dist/commands/tasks/tasks.js +445 -262
  176. package/dist/commands/workflow-cli.js +75 -228
  177. package/dist/core/action-contributors.js +1 -1
  178. package/dist/core/activation-policy.js +49 -0
  179. package/dist/core/adapter/adapters/agent-skills-adapter.js +181 -0
  180. package/dist/core/adapter/adapters/akm-adapter.js +528 -0
  181. package/dist/core/adapter/adapters/akm-lint.js +392 -0
  182. package/dist/core/adapter/adapters/akm-metadata.js +387 -0
  183. package/dist/core/adapter/adapters/akm-task-adapter.js +149 -0
  184. package/dist/core/adapter/adapters/akm-workflow-adapter.js +180 -0
  185. package/dist/core/adapter/adapters/claude-adapter.js +61 -0
  186. package/dist/core/adapter/adapters/dotenv-adapter.js +187 -0
  187. package/dist/core/adapter/adapters/generic-files-adapter.js +119 -0
  188. package/dist/core/adapter/adapters/index.js +80 -0
  189. package/dist/core/adapter/adapters/llm-wiki-adapter.js +419 -0
  190. package/dist/core/adapter/adapters/okf-adapter.js +391 -0
  191. package/dist/core/adapter/adapters/opencode-adapter.js +68 -0
  192. package/dist/core/adapter/adapters/shared.js +286 -0
  193. package/dist/core/adapter/adapters/tool-dir-shared.js +217 -0
  194. package/dist/core/adapter/adapters/website-snapshot-adapter.js +155 -0
  195. package/dist/core/adapter/bundle-adapter.js +4 -0
  196. package/dist/core/adapter/detect-adapter.js +17 -0
  197. package/dist/core/adapter/recognize-match.js +44 -0
  198. package/dist/core/adapter/registry.js +56 -0
  199. package/dist/core/adapter/types.js +4 -0
  200. package/dist/core/asset/akm-markdown.js +30 -0
  201. package/dist/core/asset/asset-placement.js +243 -0
  202. package/dist/core/asset/asset-ref.js +110 -79
  203. package/dist/core/asset/asset-serialize.js +20 -0
  204. package/dist/core/asset/frontmatter.js +28 -12
  205. package/dist/core/asset/markdown.js +40 -51
  206. package/dist/core/asset/resolve-ref.js +274 -0
  207. package/dist/core/asset/stash-meta.js +2 -2
  208. package/dist/core/bundle-id.js +51 -0
  209. package/dist/core/common.js +281 -86
  210. package/dist/core/config/config-io.js +42 -128
  211. package/dist/core/config/config-schema.js +233 -855
  212. package/dist/core/config/config-sources.js +162 -39
  213. package/dist/core/config/config-types.js +16 -11
  214. package/dist/core/config/config-version.js +29 -0
  215. package/dist/core/config/config-walker.js +126 -37
  216. package/dist/core/config/config.js +154 -331
  217. package/dist/core/config/deep-merge.js +41 -0
  218. package/dist/core/config/engine-semantics.js +28 -0
  219. package/dist/core/config/experimental.js +21 -0
  220. package/dist/core/config/schema/embedding.js +38 -0
  221. package/dist/core/config/schema/engines.js +116 -0
  222. package/dist/core/config/schema/experimental.js +47 -0
  223. package/dist/core/config/schema/feedback.js +31 -0
  224. package/dist/core/config/schema/improve-processes.js +389 -0
  225. package/dist/core/config/schema/improve.js +94 -0
  226. package/dist/core/config/schema/index-config.js +176 -0
  227. package/dist/core/config/schema/output.js +18 -0
  228. package/dist/core/config/schema/primitives.js +94 -0
  229. package/dist/core/config/schema/search.js +30 -0
  230. package/dist/core/config/schema/setup.js +18 -0
  231. package/dist/core/config/schema/sources-bundles.js +169 -0
  232. package/dist/core/config/schema/workflow.js +29 -0
  233. package/dist/core/env-secret-ref.js +155 -20
  234. package/dist/core/errors.js +17 -15
  235. package/dist/core/events-types.js +4 -0
  236. package/dist/core/events.js +46 -128
  237. package/dist/core/extra-params.js +62 -0
  238. package/dist/core/file-change.js +17 -0
  239. package/dist/core/file-lock.js +202 -57
  240. package/dist/core/fs-txn.js +392 -0
  241. package/dist/core/git-message.js +59 -0
  242. package/dist/core/improve-result.js +167 -0
  243. package/dist/core/lesson-lint.js +1 -17
  244. package/dist/core/logs-db.js +1 -1
  245. package/dist/core/maintenance-barrier.js +135 -0
  246. package/dist/core/migration-operation.js +44 -0
  247. package/dist/core/mutation-target.js +78 -0
  248. package/dist/core/paths.js +22 -25
  249. package/dist/core/platform.js +10 -0
  250. package/dist/core/recognition-util.js +128 -0
  251. package/dist/core/redaction.js +392 -0
  252. package/dist/core/standards/resolve-standards-context.js +36 -65
  253. package/dist/core/standards/resolve-stash-standards.js +2 -2
  254. package/dist/core/standards/resolve-type-conventions.js +5 -5
  255. package/dist/core/state/migrations.js +242 -11
  256. package/dist/core/state-db.js +98 -10
  257. package/dist/core/structured.js +1 -1
  258. package/dist/core/subprocess.js +303 -0
  259. package/dist/core/text-truncation.js +9 -5
  260. package/dist/core/time.js +20 -0
  261. package/dist/core/type-presentation.js +130 -0
  262. package/dist/core/warn.js +0 -3
  263. package/dist/core/write-source.js +834 -118
  264. package/dist/indexer/bundle-identity-guard.js +92 -0
  265. package/dist/indexer/db/graph-db.js +1 -25
  266. package/dist/indexer/db/llm-cache.js +1 -1
  267. package/dist/indexer/ensure-index.js +30 -9
  268. package/dist/indexer/graph/graph-boost.js +9 -30
  269. package/dist/indexer/graph/graph-extraction.js +41 -27
  270. package/dist/indexer/graph/graph-types.js +4 -0
  271. package/dist/indexer/index-writer-lock.js +93 -49
  272. package/dist/indexer/index-written-assets.js +100 -53
  273. package/dist/indexer/indexer.js +746 -329
  274. package/dist/indexer/init.js +18 -25
  275. package/dist/indexer/installations.js +142 -0
  276. package/dist/indexer/passes/dir-staleness.js +18 -10
  277. package/dist/indexer/passes/memory-inference.js +25 -15
  278. package/dist/indexer/passes/metadata.js +412 -243
  279. package/dist/indexer/scan/doc-to-entry.js +160 -0
  280. package/dist/indexer/scan/drain-dir.js +134 -0
  281. package/dist/indexer/search/db-search.js +292 -108
  282. package/dist/indexer/search/fts-query.js +64 -0
  283. package/dist/indexer/search/ranking-contributors.js +145 -25
  284. package/dist/indexer/search/ranking-types.js +4 -0
  285. package/dist/indexer/search/ranking.js +28 -71
  286. package/dist/indexer/search/search-attribution.js +67 -0
  287. package/dist/indexer/search/search-fields.js +18 -3
  288. package/dist/indexer/search/search-hit-enrichers.js +30 -40
  289. package/dist/indexer/search/search-source.js +157 -111
  290. package/dist/indexer/search/semantic-status.js +4 -1
  291. package/dist/indexer/usage/usage-events.js +10 -30
  292. package/dist/indexer/walk/file-context.js +3 -45
  293. package/dist/indexer/walk/matchers.js +42 -73
  294. package/dist/indexer/walk/path-resolver.js +11 -5
  295. package/dist/indexer/walk/walker.js +42 -14
  296. package/dist/integrations/agent/builder-shared.js +7 -0
  297. package/dist/integrations/agent/builders.js +5 -58
  298. package/dist/integrations/agent/config.js +3 -143
  299. package/dist/integrations/agent/detect.js +17 -2
  300. package/dist/integrations/agent/engine-resolution.js +231 -0
  301. package/dist/integrations/agent/index.js +1 -2
  302. package/dist/integrations/agent/model-aliases.js +8 -3
  303. package/dist/integrations/agent/profiles.js +6 -99
  304. package/dist/integrations/agent/prompts.js +46 -18
  305. package/dist/integrations/agent/runner-dispatch.js +78 -13
  306. package/dist/integrations/agent/runner.js +76 -208
  307. package/dist/integrations/agent/spawn.js +48 -279
  308. package/dist/integrations/harnesses/aider/agent-builder.js +9 -8
  309. package/dist/integrations/harnesses/aider/index.js +2 -12
  310. package/dist/integrations/harnesses/amazonq/agent-builder.js +10 -16
  311. package/dist/integrations/harnesses/amazonq/index.js +3 -17
  312. package/dist/integrations/harnesses/claude/agent-builder.js +2 -3
  313. package/dist/integrations/harnesses/claude/config-import.js +1 -3
  314. package/dist/integrations/harnesses/claude/index.js +1 -14
  315. package/dist/integrations/harnesses/claude/session-log.js +27 -75
  316. package/dist/integrations/harnesses/codex/agent-builder.js +8 -7
  317. package/dist/integrations/harnesses/codex/index.js +2 -13
  318. package/dist/integrations/harnesses/copilot/agent-builder.js +9 -9
  319. package/dist/integrations/harnesses/copilot/index.js +1 -13
  320. package/dist/integrations/harnesses/gemini/agent-builder.js +8 -9
  321. package/dist/integrations/harnesses/gemini/index.js +1 -13
  322. package/dist/integrations/harnesses/ids.js +24 -0
  323. package/dist/integrations/harnesses/index.js +31 -33
  324. package/dist/integrations/harnesses/opencode/agent-builder.js +23 -5
  325. package/dist/integrations/harnesses/opencode/config-import.js +1 -3
  326. package/dist/integrations/harnesses/opencode/index.js +1 -18
  327. package/dist/integrations/harnesses/opencode/session-log.js +67 -125
  328. package/dist/integrations/harnesses/opencode-sdk/harness.js +3 -17
  329. package/dist/integrations/harnesses/opencode-sdk/sdk-runner.js +274 -191
  330. package/dist/integrations/harnesses/openhands/agent-builder.js +12 -10
  331. package/dist/integrations/harnesses/openhands/index.js +2 -12
  332. package/dist/integrations/harnesses/pi/agent-builder.js +11 -18
  333. package/dist/integrations/harnesses/pi/index.js +3 -16
  334. package/dist/integrations/harnesses/shared.js +17 -0
  335. package/dist/integrations/harnesses/types.js +38 -34
  336. package/dist/integrations/lockfile.js +211 -24
  337. package/dist/integrations/session-logs/index.js +24 -40
  338. package/dist/integrations/session-logs/provider-base.js +113 -0
  339. package/dist/llm/client.js +182 -110
  340. package/dist/llm/embedders/deterministic.js +2 -2
  341. package/dist/llm/embedders/remote.js +21 -9
  342. package/dist/llm/feature-gate.js +17 -57
  343. package/dist/llm/graph-extract.js +12 -13
  344. package/dist/llm/index-passes.js +8 -42
  345. package/dist/llm/memory-infer.js +144 -1
  346. package/dist/llm/metadata-enhance.js +45 -30
  347. package/dist/llm/structured-call.js +16 -8
  348. package/dist/llm/usage-persist.js +30 -5
  349. package/dist/llm/usage-telemetry.js +59 -6
  350. package/dist/output/cli-hints.js +1 -2
  351. package/dist/output/command-registry.js +27 -0
  352. package/dist/output/context.js +22 -7
  353. package/dist/output/format-exempt.js +80 -0
  354. package/dist/output/generic-render.js +251 -0
  355. package/dist/output/html-render.js +11 -16
  356. package/dist/output/render-registry.js +57 -0
  357. package/dist/output/renderers.js +15 -281
  358. package/dist/output/shapes/curate.js +10 -1
  359. package/dist/output/shapes/events.js +12 -7
  360. package/dist/output/shapes/helpers.js +58 -84
  361. package/dist/output/shapes/passthrough.js +8 -40
  362. package/dist/output/shapes/proposal/producer.js +15 -7
  363. package/dist/output/shapes/registry.js +12 -6
  364. package/dist/output/shapes.js +0 -9
  365. package/dist/output/text/{init.js → bundle-create.js} +3 -1
  366. package/dist/output/text/bundle-show.js +7 -0
  367. package/dist/output/text/command-format.js +562 -0
  368. package/dist/output/text/env.js +1 -3
  369. package/dist/output/text/events.js +8 -7
  370. package/dist/output/text/helpers.js +15 -1375
  371. package/dist/output/text/proposal/producer.js +4 -2
  372. package/dist/output/text/proposal-format.js +202 -0
  373. package/dist/output/text/registry-commands.js +1 -2
  374. package/dist/output/text/registry.js +12 -6
  375. package/dist/output/text/show-directives.js +117 -0
  376. package/dist/output/text/show-format.js +103 -0
  377. package/dist/output/text/sync.js +5 -0
  378. package/dist/output/text/workflow-format.js +332 -0
  379. package/dist/output/text/workflow.js +1 -2
  380. package/dist/output/text.js +10 -19
  381. package/dist/registry/factory.js +4 -6
  382. package/dist/registry/origin-resolve.js +16 -27
  383. package/dist/registry/providers/skills-sh.js +3 -3
  384. package/dist/registry/providers/static-index.js +15 -25
  385. package/dist/registry/resolve.js +43 -94
  386. package/dist/registry/semver.js +43 -0
  387. package/dist/runtime.js +81 -12
  388. package/dist/scripts/akm-migrate.js +35529 -0
  389. package/dist/setup/detect.js +5 -7
  390. package/dist/setup/detected-engines.js +136 -0
  391. package/dist/setup/engine-config.js +100 -0
  392. package/dist/setup/registry-stash-loader.js +3 -3
  393. package/dist/setup/semantic-assets.js +12 -9
  394. package/dist/setup/setup.js +444 -208
  395. package/dist/setup/steps/connection-shared.js +120 -0
  396. package/dist/setup/steps/connection.js +108 -305
  397. package/dist/setup/steps/platforms.js +13 -12
  398. package/dist/setup/steps/semantic.js +15 -3
  399. package/dist/setup/steps/sources.js +21 -15
  400. package/dist/setup/steps/stashdir.js +6 -4
  401. package/dist/setup/steps/tasks.js +236 -119
  402. package/dist/setup/steps.js +3 -2
  403. package/dist/sources/freshness.js +39 -0
  404. package/dist/sources/provider-factory.js +11 -17
  405. package/dist/sources/providers/filesystem.js +2 -3
  406. package/dist/sources/providers/git-install.js +278 -34
  407. package/dist/sources/providers/git-provider.js +54 -56
  408. package/dist/sources/providers/git-stash.js +420 -91
  409. package/dist/sources/providers/git.js +2 -2
  410. package/dist/sources/providers/npm.js +16 -19
  411. package/dist/sources/providers/provider-utils.js +47 -22
  412. package/dist/sources/providers/sync-from-ref.js +3 -9
  413. package/dist/sources/providers/website.js +2 -2
  414. package/dist/sources/resolve.js +11 -10
  415. package/dist/sources/snapshot-fetchers/types.js +4 -0
  416. package/dist/sources/{website-ingest.js → snapshot-fetchers/website-ingest.js} +110 -41
  417. package/dist/storage/database.js +60 -4
  418. package/dist/storage/engines/sqlite-migrations.js +156 -5
  419. package/dist/storage/locations.js +1 -2
  420. package/dist/storage/repositories/canaries-repository.js +1 -1
  421. package/dist/storage/repositories/events-repository.js +51 -11
  422. package/dist/storage/repositories/improve-runs-repository.js +6 -32
  423. package/dist/storage/repositories/index-connection.js +79 -0
  424. package/dist/storage/repositories/index-db.js +4 -3
  425. package/dist/storage/repositories/index-entries-repository.js +863 -0
  426. package/dist/{indexer/db/entry-mapper.js → storage/repositories/index-entry-mapper.js} +19 -2
  427. package/dist/storage/repositories/index-entry-types.js +4 -0
  428. package/dist/storage/repositories/index-fts-repository.js +167 -0
  429. package/dist/storage/repositories/index-llm-cache-repository.js +108 -0
  430. package/dist/storage/repositories/index-meta-repository.js +49 -0
  431. package/dist/{indexer/db/schema.js → storage/repositories/index-schema.js} +226 -100
  432. package/dist/storage/repositories/index-sql.js +12 -0
  433. package/dist/storage/repositories/index-utility-repository.js +356 -0
  434. package/dist/storage/repositories/index-vec-repository.js +250 -0
  435. package/dist/storage/repositories/outcome-repository.js +119 -0
  436. package/dist/storage/repositories/proposals-repository.js +317 -75
  437. package/dist/storage/repositories/registry-cache.js +1 -1
  438. package/dist/storage/repositories/salience-repository.js +172 -0
  439. package/dist/storage/repositories/task-history-repository.js +110 -3
  440. package/dist/storage/repositories/workflow-runs-repository.js +68 -35
  441. package/dist/tasks/backends/cron.js +169 -46
  442. package/dist/tasks/backends/exec-utils.js +76 -3
  443. package/dist/tasks/backends/index.js +6 -9
  444. package/dist/tasks/backends/launchd.js +292 -55
  445. package/dist/tasks/backends/schtasks.js +557 -70
  446. package/dist/tasks/backends/types.js +4 -0
  447. package/dist/tasks/command-executable.js +93 -0
  448. package/dist/tasks/embedded.js +56 -38
  449. package/dist/tasks/parser.js +156 -64
  450. package/dist/tasks/resolve-akm-bin.js +144 -51
  451. package/dist/tasks/runner.js +377 -209
  452. package/dist/tasks/schedule.js +108 -19
  453. package/dist/tasks/scheduler-invocation.js +296 -0
  454. package/dist/tasks/schema.js +1 -1
  455. package/dist/tasks/task-id.js +35 -0
  456. package/dist/tasks/validator.js +30 -16
  457. package/dist/workflows/authoring/authoring.js +96 -148
  458. package/dist/workflows/authoring/scope-key.js +1 -1
  459. package/dist/workflows/cli.js +0 -20
  460. package/dist/workflows/concurrency-policy.js +15 -0
  461. package/dist/workflows/exec/brief.js +25 -59
  462. package/dist/workflows/exec/frozen-judge.js +47 -0
  463. package/dist/workflows/exec/native-executor.js +157 -94
  464. package/dist/workflows/exec/report.js +365 -200
  465. package/dist/workflows/exec/run-workflow.js +46 -40
  466. package/dist/workflows/exec/scheduler.js +12 -41
  467. package/dist/workflows/exec/step-work.js +239 -205
  468. package/dist/workflows/exec/workflow-engine-gate.js +67 -0
  469. package/dist/workflows/ir/compile.js +141 -283
  470. package/dist/workflows/ir/freeze.js +233 -0
  471. package/dist/workflows/ir/plan-hash.js +40 -5
  472. package/dist/workflows/ir/schema.js +537 -1
  473. package/dist/workflows/parser.js +878 -306
  474. package/dist/workflows/program/expressions.js +20 -208
  475. package/dist/workflows/program/schema.js +7 -10
  476. package/dist/workflows/renderer.js +99 -121
  477. package/dist/workflows/resource-limits.js +22 -0
  478. package/dist/workflows/runtime/checkin.js +1 -1
  479. package/dist/workflows/runtime/plan-classifier.js +131 -0
  480. package/dist/workflows/runtime/runs.js +200 -113
  481. package/dist/workflows/runtime/unit-checkin.js +1 -1
  482. package/dist/workflows/runtime/unit-phases.js +20 -0
  483. package/dist/workflows/runtime/workflow-asset-loader.js +235 -97
  484. package/dist/workflows/schema.js +1 -11
  485. package/dist/workflows/validate-summary.js +4 -26
  486. package/dist/workflows/validator.js +52 -30
  487. package/docs/README.md +42 -78
  488. package/docs/migration/README.md +8 -0
  489. package/docs/migration/release-notes/0.6.0.md +1 -1
  490. package/docs/migration/release-notes/0.7.0.md +9 -8
  491. package/docs/migration/release-notes/0.9.0.md +158 -14
  492. package/docs/migration/v0.7-to-v0.8.md +46 -47
  493. package/docs/migration/v0.8-to-v0.9.md +844 -0
  494. package/docs/reference/README.md +12 -0
  495. package/docs/reference/data-and-telemetry.md +333 -0
  496. package/package.json +21 -17
  497. package/schemas/akm-asset-envelope.json +93 -0
  498. package/schemas/akm-config.json +4636 -0
  499. package/schemas/akm-task.json +87 -0
  500. package/{dist/schemas → schemas}/akm-workflow.json +127 -82
  501. package/dist/akm-migrate-storage +0 -38
  502. package/dist/assets/help/help-accept.md +0 -12
  503. package/dist/assets/help/help-improve.md +0 -84
  504. package/dist/assets/help/help-proposals.md +0 -17
  505. package/dist/assets/help/help-propose.md +0 -17
  506. package/dist/assets/help/help-reject.md +0 -11
  507. package/dist/assets/profiles/frequent.json +0 -13
  508. package/dist/assets/profiles/recombine-only.json +0 -21
  509. package/dist/assets/profiles/reflect-distill.json +0 -30
  510. package/dist/assets/profiles/synthesize.json +0 -15
  511. package/dist/assets/prompts/procedural-system.md +0 -44
  512. package/dist/assets/prompts/recombine-system.md +0 -40
  513. package/dist/assets/prompts/staleness-detect-system.md +0 -6
  514. package/dist/assets/tasks/core/backup.yml +0 -4
  515. package/dist/assets/tasks/graph-refresh-weekly.yml +0 -10
  516. package/dist/assets/templates/html/default.html +0 -78
  517. package/dist/assets/templates/html/vendor/echarts.min.js +0 -45
  518. package/dist/assets/wiki/index-template.md +0 -12
  519. package/dist/assets/wiki/ingest-workflow-template.md +0 -83
  520. package/dist/assets/wiki/log-template.md +0 -8
  521. package/dist/assets/wiki/schema-template.md +0 -61
  522. package/dist/cli/config-migrate.js +0 -150
  523. package/dist/cli/config-validate.js +0 -39
  524. package/dist/commands/graph/graph-cli.js +0 -124
  525. package/dist/commands/graph/graph.js +0 -487
  526. package/dist/commands/improve/calibration.js +0 -161
  527. package/dist/commands/improve/dedup.js +0 -482
  528. package/dist/commands/improve/extract-watch.js +0 -140
  529. package/dist/commands/improve/hot-probation.js +0 -45
  530. package/dist/commands/improve/improve-auto-accept.js +0 -276
  531. package/dist/commands/improve/improve-profiles.js +0 -168
  532. package/dist/commands/improve/procedural.js +0 -398
  533. package/dist/commands/improve/recombine.js +0 -818
  534. package/dist/commands/improve/schema-similarity-gate.js +0 -168
  535. package/dist/commands/lint/agent-linter.js +0 -44
  536. package/dist/commands/lint/command-linter.js +0 -44
  537. package/dist/commands/lint/default-linter.js +0 -16
  538. package/dist/commands/lint/fact-linter.js +0 -39
  539. package/dist/commands/lint/knowledge-linter.js +0 -16
  540. package/dist/commands/lint/memory-linter.js +0 -61
  541. package/dist/commands/lint/registry.js +0 -41
  542. package/dist/commands/lint/skill-linter.js +0 -45
  543. package/dist/commands/lint/task-linter.js +0 -50
  544. package/dist/commands/lint/workflow-linter.js +0 -81
  545. package/dist/commands/proposal/legacy-import.js +0 -115
  546. package/dist/commands/sources/history.js +0 -196
  547. package/dist/commands/tasks/default-tasks.js +0 -186
  548. package/dist/commands/wiki-cli.js +0 -292
  549. package/dist/core/asset/asset-registry.js +0 -76
  550. package/dist/core/asset/asset-spec.js +0 -316
  551. package/dist/core/config/config-migration.js +0 -602
  552. package/dist/core/deep-merge.js +0 -38
  553. package/dist/core/eval/rank-metrics.js +0 -113
  554. package/dist/core/ripgrep/install.js +0 -163
  555. package/dist/core/ripgrep/resolve.js +0 -81
  556. package/dist/indexer/db/db.js +0 -1414
  557. package/dist/indexer/manifest.js +0 -170
  558. package/dist/indexer/passes/metadata-contributors.js +0 -31
  559. package/dist/indexer/usage/unmigrated-vaults-guard.js +0 -94
  560. package/dist/integrations/harnesses/opencode-sdk/index.js +0 -25
  561. package/dist/llm/call-ai.js +0 -62
  562. package/dist/llm/memory-infer-impl.js +0 -138
  563. package/dist/output/shapes/distill.js +0 -14
  564. package/dist/output/shapes/history.js +0 -11
  565. package/dist/output/text/distill.js +0 -6
  566. package/dist/output/text/enable-disable.js +0 -8
  567. package/dist/output/text/history.js +0 -6
  568. package/dist/output/text/wiki.js +0 -16
  569. package/dist/registry/build-index.js +0 -386
  570. package/dist/schemas/akm-config.json +0 -14225
  571. package/dist/scripts/migrate-storage.js +0 -13169
  572. package/dist/scripts/migrations/import-fs-improve-runs-to-db.js +0 -10169
  573. package/dist/scripts/migrations/v16-to-v17.js +0 -141
  574. package/dist/setup/legacy-config.js +0 -106
  575. package/dist/storage/repositories/consolidation-repository.js +0 -38
  576. package/dist/storage/repositories/recombine-repository.js +0 -213
  577. package/dist/wiki/wiki-templates.js +0 -15
  578. package/dist/wiki/wiki.js +0 -1012
  579. package/dist/workflows/authoring/workflow-program-template.yaml +0 -31
  580. package/dist/workflows/db.js +0 -350
  581. package/dist/workflows/exec/watch.js +0 -116
  582. package/dist/workflows/program/parser.js +0 -760
  583. package/dist/workflows/program/project.js +0 -105
  584. package/docs/data-and-telemetry.md +0 -227
  585. package/docs/migration/release-notes/0.9.0-beta.60.md +0 -19
  586. /package/dist/sources/{wiki-fetchers → snapshot-fetchers}/registry.js +0 -0
  587. /package/dist/sources/{wiki-fetchers → snapshot-fetchers}/youtube.js +0 -0
@@ -0,0 +1,4636 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://itlackey.github.io/akm/schemas/akm-config.0.9.0.json",
4
+ "title": "AKM Configuration",
5
+ "description": "Configuration file for the akm CLI (Agent Knowledge Manager). Stored at ~/.config/akm/config.json (Linux/macOS) or %APPDATA%\\akm\\config.json (Windows). Supports JSONC (JavaScript-style comments). Auto-generated from src/core/config/config-schema.ts by scripts/gen-config-schema.ts — do NOT edit by hand.",
6
+ "type": "object",
7
+ "properties": {
8
+ "configVersion": {
9
+ "type": "string",
10
+ "const": "0.9.0"
11
+ },
12
+ "engines": {
13
+ "type": "object",
14
+ "additionalProperties": {
15
+ "anyOf": [
16
+ {
17
+ "type": "object",
18
+ "properties": {
19
+ "kind": {
20
+ "type": "string",
21
+ "const": "llm"
22
+ },
23
+ "provider": {
24
+ "type": "string"
25
+ },
26
+ "endpoint": {
27
+ "type": "string"
28
+ },
29
+ "model": {
30
+ "type": "string",
31
+ "minLength": 1
32
+ },
33
+ "apiKey": {
34
+ "type": "string",
35
+ "pattern": "^\\$[A-Za-z_][A-Za-z0-9_]*$|^\\$\\{[A-Za-z_][A-Za-z0-9_]*\\}$"
36
+ },
37
+ "temperature": {
38
+ "type": "number"
39
+ },
40
+ "maxTokens": {
41
+ "type": "integer",
42
+ "exclusiveMinimum": 0
43
+ },
44
+ "timeoutMs": {
45
+ "anyOf": [
46
+ {
47
+ "type": "integer",
48
+ "exclusiveMinimum": 0
49
+ },
50
+ {
51
+ "type": "null"
52
+ }
53
+ ]
54
+ },
55
+ "concurrency": {
56
+ "type": "integer",
57
+ "exclusiveMinimum": 0
58
+ },
59
+ "supportsJsonSchema": {
60
+ "type": "boolean"
61
+ },
62
+ "extraParams": {
63
+ "type": "object",
64
+ "additionalProperties": {}
65
+ },
66
+ "contextLength": {
67
+ "type": "integer",
68
+ "exclusiveMinimum": 0
69
+ },
70
+ "enableThinking": {
71
+ "type": "boolean"
72
+ }
73
+ },
74
+ "required": [
75
+ "kind",
76
+ "endpoint",
77
+ "model"
78
+ ],
79
+ "additionalProperties": true
80
+ },
81
+ {
82
+ "type": "object",
83
+ "properties": {
84
+ "kind": {
85
+ "type": "string",
86
+ "const": "agent"
87
+ },
88
+ "platform": {
89
+ "type": "string",
90
+ "enum": [
91
+ "opencode",
92
+ "claude",
93
+ "opencode-sdk",
94
+ "codex",
95
+ "copilot",
96
+ "pi",
97
+ "gemini",
98
+ "aider",
99
+ "amazonq",
100
+ "openhands"
101
+ ]
102
+ },
103
+ "bin": {
104
+ "type": "string",
105
+ "minLength": 1
106
+ },
107
+ "args": {
108
+ "type": "array",
109
+ "items": {
110
+ "type": "string"
111
+ }
112
+ },
113
+ "workspace": {
114
+ "type": "string",
115
+ "minLength": 1
116
+ },
117
+ "model": {
118
+ "type": "string",
119
+ "minLength": 1
120
+ },
121
+ "timeoutMs": {
122
+ "anyOf": [
123
+ {
124
+ "type": "integer",
125
+ "exclusiveMinimum": 0
126
+ },
127
+ {
128
+ "type": "null"
129
+ }
130
+ ]
131
+ },
132
+ "modelAliases": {
133
+ "type": "object",
134
+ "additionalProperties": {
135
+ "type": "string",
136
+ "minLength": 1
137
+ },
138
+ "propertyNames": {
139
+ "minLength": 1
140
+ }
141
+ },
142
+ "llmEngine": {
143
+ "type": "string",
144
+ "maxLength": 63,
145
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
146
+ }
147
+ },
148
+ "required": [
149
+ "kind",
150
+ "platform"
151
+ ],
152
+ "additionalProperties": true
153
+ }
154
+ ]
155
+ },
156
+ "propertyNames": {
157
+ "maxLength": 63,
158
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
159
+ }
160
+ },
161
+ "defaults": {
162
+ "type": "object",
163
+ "properties": {
164
+ "engine": {
165
+ "type": "string",
166
+ "maxLength": 63,
167
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
168
+ },
169
+ "llmEngine": {
170
+ "type": "string",
171
+ "maxLength": 63,
172
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
173
+ },
174
+ "improveStrategy": {
175
+ "type": "string",
176
+ "maxLength": 63,
177
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
178
+ }
179
+ },
180
+ "additionalProperties": true
181
+ },
182
+ "modelAliases": {
183
+ "type": "object",
184
+ "additionalProperties": {
185
+ "type": "object",
186
+ "additionalProperties": {
187
+ "type": "string",
188
+ "minLength": 1
189
+ },
190
+ "propertyNames": {
191
+ "minLength": 1
192
+ }
193
+ },
194
+ "propertyNames": {
195
+ "minLength": 1
196
+ }
197
+ },
198
+ "semanticSearchMode": {
199
+ "type": "string",
200
+ "enum": [
201
+ "off",
202
+ "auto"
203
+ ],
204
+ "default": "off"
205
+ },
206
+ "embedding": {
207
+ "type": "object",
208
+ "properties": {
209
+ "provider": {
210
+ "type": "string"
211
+ },
212
+ "endpoint": {
213
+ "type": "string"
214
+ },
215
+ "model": {
216
+ "type": "string"
217
+ },
218
+ "apiKey": {
219
+ "type": "string",
220
+ "pattern": "^\\$[A-Za-z_][A-Za-z0-9_]*$|^\\$\\{[A-Za-z_][A-Za-z0-9_]*\\}$"
221
+ },
222
+ "dimension": {
223
+ "type": "integer",
224
+ "exclusiveMinimum": 0
225
+ },
226
+ "localModel": {
227
+ "type": "string",
228
+ "minLength": 1
229
+ },
230
+ "maxTokens": {
231
+ "type": "integer",
232
+ "exclusiveMinimum": 0
233
+ },
234
+ "batchSize": {
235
+ "type": "integer",
236
+ "exclusiveMinimum": 0
237
+ },
238
+ "chunkSize": {
239
+ "type": "integer",
240
+ "exclusiveMinimum": 0
241
+ },
242
+ "contextLength": {
243
+ "type": "integer",
244
+ "exclusiveMinimum": 0
245
+ },
246
+ "ollamaOptions": {
247
+ "type": "object",
248
+ "properties": {
249
+ "num_ctx": {
250
+ "type": "integer",
251
+ "exclusiveMinimum": 0
252
+ }
253
+ },
254
+ "additionalProperties": true
255
+ }
256
+ },
257
+ "additionalProperties": true
258
+ },
259
+ "index": {
260
+ "type": "object",
261
+ "properties": {
262
+ "defaults": {
263
+ "type": "object",
264
+ "properties": {
265
+ "engine": {
266
+ "type": "string",
267
+ "maxLength": 63,
268
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
269
+ },
270
+ "model": {
271
+ "type": "string",
272
+ "minLength": 1
273
+ },
274
+ "timeoutMs": {
275
+ "anyOf": [
276
+ {
277
+ "type": "integer",
278
+ "exclusiveMinimum": 0
279
+ },
280
+ {
281
+ "type": "null"
282
+ }
283
+ ]
284
+ },
285
+ "llm": {
286
+ "type": "object",
287
+ "properties": {
288
+ "temperature": {
289
+ "type": "number"
290
+ },
291
+ "maxTokens": {
292
+ "type": "integer",
293
+ "exclusiveMinimum": 0
294
+ },
295
+ "supportsJsonSchema": {
296
+ "type": "boolean"
297
+ },
298
+ "extraParams": {
299
+ "type": "object",
300
+ "additionalProperties": {}
301
+ },
302
+ "contextLength": {
303
+ "type": "integer",
304
+ "exclusiveMinimum": 0
305
+ },
306
+ "enableThinking": {
307
+ "type": "boolean"
308
+ }
309
+ },
310
+ "additionalProperties": true
311
+ }
312
+ },
313
+ "additionalProperties": true
314
+ },
315
+ "metadataEnhance": {
316
+ "type": "object",
317
+ "properties": {
318
+ "enabled": {
319
+ "type": "boolean"
320
+ }
321
+ },
322
+ "additionalProperties": true
323
+ },
324
+ "indexBodyOpening": {
325
+ "type": "boolean",
326
+ "description": "Index the first prose paragraph of each markdown asset body (capped at 280 chars) into the lowest-weight `content` search column and the embedding text (default false). Secret/env files and session-kind memories are never captured. Toggling the flag changes indexed text: run `akm index --full` afterwards to re-extract every entry and regenerate embeddings, and re-mint collapse-detector canary baselines via `bun scripts/refresh-canary-set.ts --refresh`."
327
+ }
328
+ },
329
+ "additionalProperties": {
330
+ "type": "object",
331
+ "properties": {
332
+ "engine": {
333
+ "type": "string",
334
+ "maxLength": 63,
335
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
336
+ },
337
+ "model": {
338
+ "type": "string",
339
+ "minLength": 1
340
+ },
341
+ "timeoutMs": {
342
+ "anyOf": [
343
+ {
344
+ "type": "integer",
345
+ "exclusiveMinimum": 0
346
+ },
347
+ {
348
+ "type": "null"
349
+ }
350
+ ]
351
+ },
352
+ "enabled": {
353
+ "type": "boolean"
354
+ },
355
+ "llm": {
356
+ "type": "object",
357
+ "properties": {
358
+ "temperature": {
359
+ "type": "number"
360
+ },
361
+ "maxTokens": {
362
+ "type": "integer",
363
+ "exclusiveMinimum": 0
364
+ },
365
+ "supportsJsonSchema": {
366
+ "type": "boolean"
367
+ },
368
+ "extraParams": {
369
+ "type": "object",
370
+ "additionalProperties": {}
371
+ },
372
+ "contextLength": {
373
+ "type": "integer",
374
+ "exclusiveMinimum": 0
375
+ },
376
+ "enableThinking": {
377
+ "type": "boolean"
378
+ }
379
+ },
380
+ "additionalProperties": true
381
+ },
382
+ "graphExtractionBatchSize": {
383
+ "type": "integer",
384
+ "exclusiveMinimum": 0
385
+ },
386
+ "graphExtractionIncludeTypes": {
387
+ "type": "array",
388
+ "items": {
389
+ "type": "string",
390
+ "minLength": 1
391
+ },
392
+ "minItems": 1
393
+ },
394
+ "lazyGraphExtraction": {
395
+ "type": "boolean"
396
+ }
397
+ },
398
+ "additionalProperties": true
399
+ }
400
+ },
401
+ "registries": {
402
+ "type": "array",
403
+ "items": {
404
+ "type": "object",
405
+ "properties": {
406
+ "url": {
407
+ "type": "string"
408
+ },
409
+ "name": {
410
+ "type": "string",
411
+ "minLength": 1
412
+ },
413
+ "enabled": {
414
+ "type": "boolean"
415
+ },
416
+ "provider": {
417
+ "type": "string",
418
+ "minLength": 1
419
+ },
420
+ "options": {
421
+ "type": "object",
422
+ "additionalProperties": {}
423
+ }
424
+ },
425
+ "required": [
426
+ "url"
427
+ ],
428
+ "additionalProperties": true
429
+ }
430
+ },
431
+ "bundles": {
432
+ "type": "object",
433
+ "additionalProperties": {
434
+ "type": "object",
435
+ "properties": {
436
+ "path": {
437
+ "type": "string",
438
+ "minLength": 1
439
+ },
440
+ "git": {
441
+ "type": "string",
442
+ "minLength": 1
443
+ },
444
+ "website": {
445
+ "type": "object",
446
+ "properties": {
447
+ "url": {
448
+ "type": "string"
449
+ },
450
+ "refresh": {
451
+ "type": "string",
452
+ "minLength": 1
453
+ },
454
+ "maxPages": {
455
+ "type": "integer",
456
+ "exclusiveMinimum": 0
457
+ },
458
+ "maxDepth": {
459
+ "type": "integer",
460
+ "exclusiveMinimum": 0
461
+ }
462
+ },
463
+ "required": [
464
+ "url"
465
+ ],
466
+ "additionalProperties": true
467
+ },
468
+ "npm": {
469
+ "type": "string",
470
+ "minLength": 1
471
+ },
472
+ "writable": {
473
+ "type": "boolean"
474
+ },
475
+ "enabled": {
476
+ "type": "boolean"
477
+ },
478
+ "registryId": {
479
+ "type": "string",
480
+ "minLength": 1
481
+ },
482
+ "components": {
483
+ "type": "object",
484
+ "additionalProperties": {
485
+ "type": "object",
486
+ "properties": {
487
+ "root": {
488
+ "type": "string",
489
+ "minLength": 1
490
+ },
491
+ "adapter": {
492
+ "type": "string",
493
+ "minLength": 1
494
+ },
495
+ "writable": {
496
+ "type": "boolean"
497
+ }
498
+ },
499
+ "additionalProperties": true
500
+ },
501
+ "propertyNames": {
502
+ "minLength": 1
503
+ }
504
+ }
505
+ },
506
+ "additionalProperties": true
507
+ }
508
+ },
509
+ "defaultBundle": {
510
+ "type": "string",
511
+ "minLength": 1
512
+ },
513
+ "output": {
514
+ "type": "object",
515
+ "properties": {
516
+ "format": {
517
+ "type": "string",
518
+ "enum": [
519
+ "json",
520
+ "yaml",
521
+ "text",
522
+ "jsonl",
523
+ "md",
524
+ "html"
525
+ ]
526
+ },
527
+ "detail": {
528
+ "type": "string",
529
+ "enum": [
530
+ "brief",
531
+ "normal",
532
+ "full"
533
+ ]
534
+ }
535
+ },
536
+ "additionalProperties": true
537
+ },
538
+ "defaultWriteTarget": {
539
+ "type": "string",
540
+ "minLength": 1
541
+ },
542
+ "search": {
543
+ "type": "object",
544
+ "properties": {
545
+ "minScore": {
546
+ "type": "number",
547
+ "minimum": 0
548
+ },
549
+ "defaultExcludeTypes": {
550
+ "type": "array",
551
+ "items": {
552
+ "type": "string",
553
+ "minLength": 1
554
+ }
555
+ },
556
+ "graphBoost": {
557
+ "type": "object",
558
+ "properties": {
559
+ "directBoostPerEntity": {
560
+ "type": "number",
561
+ "minimum": 0
562
+ },
563
+ "directBoostCap": {
564
+ "type": "number",
565
+ "minimum": 0
566
+ },
567
+ "hopBoostPerEntity": {
568
+ "type": "number",
569
+ "minimum": 0
570
+ },
571
+ "hopBoostCap": {
572
+ "type": "number",
573
+ "minimum": 0
574
+ },
575
+ "maxHops": {
576
+ "type": "integer",
577
+ "exclusiveMinimum": 0,
578
+ "maximum": 3
579
+ },
580
+ "confidenceMode": {
581
+ "type": "string",
582
+ "enum": [
583
+ "off",
584
+ "blend",
585
+ "multiply"
586
+ ],
587
+ "default": "blend"
588
+ },
589
+ "confidenceWeight": {
590
+ "type": "number",
591
+ "minimum": 0,
592
+ "maximum": 1,
593
+ "default": 0.2
594
+ }
595
+ },
596
+ "additionalProperties": true
597
+ }
598
+ },
599
+ "additionalProperties": true
600
+ },
601
+ "feedback": {
602
+ "type": "object",
603
+ "properties": {
604
+ "requireReason": {
605
+ "type": "boolean"
606
+ },
607
+ "allowedFailureModes": {
608
+ "type": "array",
609
+ "items": {
610
+ "type": "string",
611
+ "minLength": 1
612
+ }
613
+ }
614
+ },
615
+ "additionalProperties": true
616
+ },
617
+ "archiveRetentionDays": {
618
+ "type": "number",
619
+ "minimum": 0
620
+ },
621
+ "improve": {
622
+ "type": "object",
623
+ "properties": {
624
+ "strategies": {
625
+ "type": "object",
626
+ "additionalProperties": {
627
+ "type": "object",
628
+ "properties": {
629
+ "engine": {
630
+ "type": "string",
631
+ "maxLength": 63,
632
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
633
+ },
634
+ "model": {
635
+ "type": "string",
636
+ "minLength": 1
637
+ },
638
+ "timeoutMs": {
639
+ "anyOf": [
640
+ {
641
+ "type": "integer",
642
+ "exclusiveMinimum": 0
643
+ },
644
+ {
645
+ "type": "null"
646
+ }
647
+ ]
648
+ },
649
+ "llm": {
650
+ "type": "object",
651
+ "properties": {
652
+ "temperature": {
653
+ "type": "number"
654
+ },
655
+ "maxTokens": {
656
+ "type": "integer",
657
+ "exclusiveMinimum": 0
658
+ },
659
+ "supportsJsonSchema": {
660
+ "type": "boolean"
661
+ },
662
+ "extraParams": {
663
+ "type": "object",
664
+ "additionalProperties": {}
665
+ },
666
+ "contextLength": {
667
+ "type": "integer",
668
+ "exclusiveMinimum": 0
669
+ },
670
+ "enableThinking": {
671
+ "type": "boolean"
672
+ }
673
+ },
674
+ "additionalProperties": true
675
+ },
676
+ "description": {
677
+ "type": "string",
678
+ "minLength": 1
679
+ },
680
+ "processes": {
681
+ "type": "object",
682
+ "properties": {
683
+ "reflect": {
684
+ "type": "object",
685
+ "properties": {
686
+ "engine": {
687
+ "type": "string",
688
+ "maxLength": 63,
689
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
690
+ },
691
+ "model": {
692
+ "type": "string",
693
+ "minLength": 1
694
+ },
695
+ "llm": {
696
+ "type": "object",
697
+ "properties": {
698
+ "temperature": {
699
+ "type": "number"
700
+ },
701
+ "maxTokens": {
702
+ "type": "integer",
703
+ "exclusiveMinimum": 0
704
+ },
705
+ "supportsJsonSchema": {
706
+ "type": "boolean"
707
+ },
708
+ "extraParams": {
709
+ "type": "object",
710
+ "additionalProperties": {}
711
+ },
712
+ "contextLength": {
713
+ "type": "integer",
714
+ "exclusiveMinimum": 0
715
+ },
716
+ "enableThinking": {
717
+ "type": "boolean"
718
+ }
719
+ },
720
+ "additionalProperties": true
721
+ },
722
+ "enabled": {
723
+ "type": "boolean"
724
+ },
725
+ "timeoutMs": {
726
+ "anyOf": [
727
+ {
728
+ "type": "integer",
729
+ "exclusiveMinimum": 0
730
+ },
731
+ {
732
+ "type": "null"
733
+ }
734
+ ]
735
+ },
736
+ "allowedTypes": {
737
+ "type": "array",
738
+ "items": {
739
+ "type": "string",
740
+ "minLength": 1
741
+ }
742
+ },
743
+ "limit": {
744
+ "type": "integer",
745
+ "exclusiveMinimum": 0
746
+ },
747
+ "qualityGate": {
748
+ "type": "object",
749
+ "properties": {
750
+ "enabled": {
751
+ "type": "boolean"
752
+ }
753
+ },
754
+ "additionalProperties": true
755
+ },
756
+ "lowValueFilter": {
757
+ "type": "object",
758
+ "properties": {
759
+ "enabled": {
760
+ "type": "boolean"
761
+ }
762
+ },
763
+ "additionalProperties": true
764
+ }
765
+ },
766
+ "additionalProperties": true
767
+ },
768
+ "distill": {
769
+ "type": "object",
770
+ "properties": {
771
+ "engine": {
772
+ "type": "string",
773
+ "maxLength": 63,
774
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
775
+ },
776
+ "model": {
777
+ "type": "string",
778
+ "minLength": 1
779
+ },
780
+ "llm": {
781
+ "type": "object",
782
+ "properties": {
783
+ "temperature": {
784
+ "type": "number"
785
+ },
786
+ "maxTokens": {
787
+ "type": "integer",
788
+ "exclusiveMinimum": 0
789
+ },
790
+ "supportsJsonSchema": {
791
+ "type": "boolean"
792
+ },
793
+ "extraParams": {
794
+ "type": "object",
795
+ "additionalProperties": {}
796
+ },
797
+ "contextLength": {
798
+ "type": "integer",
799
+ "exclusiveMinimum": 0
800
+ },
801
+ "enableThinking": {
802
+ "type": "boolean"
803
+ }
804
+ },
805
+ "additionalProperties": true
806
+ },
807
+ "enabled": {
808
+ "type": "boolean"
809
+ },
810
+ "timeoutMs": {
811
+ "anyOf": [
812
+ {
813
+ "type": "integer",
814
+ "exclusiveMinimum": 0
815
+ },
816
+ {
817
+ "type": "null"
818
+ }
819
+ ]
820
+ },
821
+ "allowedTypes": {
822
+ "type": "array",
823
+ "items": {
824
+ "type": "string",
825
+ "minLength": 1
826
+ }
827
+ },
828
+ "limit": {
829
+ "type": "integer",
830
+ "exclusiveMinimum": 0
831
+ },
832
+ "qualityGate": {
833
+ "type": "object",
834
+ "properties": {
835
+ "enabled": {
836
+ "type": "boolean"
837
+ }
838
+ },
839
+ "additionalProperties": true
840
+ },
841
+ "requirePlannedRefs": {
842
+ "type": "boolean"
843
+ },
844
+ "cls": {
845
+ "type": "object",
846
+ "properties": {
847
+ "enabled": {
848
+ "type": "boolean"
849
+ },
850
+ "adjacentCount": {
851
+ "type": "integer",
852
+ "minimum": 1
853
+ }
854
+ },
855
+ "additionalProperties": true
856
+ },
857
+ "fidelityCheck": {
858
+ "type": "object",
859
+ "properties": {
860
+ "enabled": {
861
+ "type": "boolean"
862
+ }
863
+ },
864
+ "additionalProperties": true
865
+ }
866
+ },
867
+ "additionalProperties": true
868
+ },
869
+ "consolidate": {
870
+ "type": "object",
871
+ "properties": {
872
+ "engine": {
873
+ "type": "string",
874
+ "maxLength": 63,
875
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
876
+ },
877
+ "model": {
878
+ "type": "string",
879
+ "minLength": 1
880
+ },
881
+ "llm": {
882
+ "type": "object",
883
+ "properties": {
884
+ "temperature": {
885
+ "type": "number"
886
+ },
887
+ "maxTokens": {
888
+ "type": "integer",
889
+ "exclusiveMinimum": 0
890
+ },
891
+ "supportsJsonSchema": {
892
+ "type": "boolean"
893
+ },
894
+ "extraParams": {
895
+ "type": "object",
896
+ "additionalProperties": {}
897
+ },
898
+ "contextLength": {
899
+ "type": "integer",
900
+ "exclusiveMinimum": 0
901
+ },
902
+ "enableThinking": {
903
+ "type": "boolean"
904
+ }
905
+ },
906
+ "additionalProperties": true
907
+ },
908
+ "enabled": {
909
+ "type": "boolean"
910
+ },
911
+ "timeoutMs": {
912
+ "anyOf": [
913
+ {
914
+ "type": "integer",
915
+ "exclusiveMinimum": 0
916
+ },
917
+ {
918
+ "type": "null"
919
+ }
920
+ ]
921
+ },
922
+ "allowedTypes": {
923
+ "type": "array",
924
+ "items": {
925
+ "type": "string",
926
+ "minLength": 1
927
+ }
928
+ },
929
+ "limit": {
930
+ "type": "integer",
931
+ "exclusiveMinimum": 0
932
+ },
933
+ "minPoolSize": {
934
+ "type": "integer",
935
+ "minimum": 0
936
+ },
937
+ "maxChunkSize": {
938
+ "type": "integer",
939
+ "minimum": 1,
940
+ "maximum": 50
941
+ },
942
+ "incrementalSince": {
943
+ "type": "string"
944
+ },
945
+ "neighborsPerChanged": {
946
+ "type": "integer",
947
+ "minimum": 1
948
+ },
949
+ "p90ChunkSecondsDefault": {
950
+ "type": "number",
951
+ "exclusiveMinimum": 0
952
+ },
953
+ "antiCollapse": {
954
+ "type": "object",
955
+ "properties": {
956
+ "enabled": {
957
+ "type": "boolean"
958
+ },
959
+ "maxGeneration": {
960
+ "type": "integer",
961
+ "minimum": 1
962
+ },
963
+ "lexicalDiversityCheck": {
964
+ "type": "boolean"
965
+ },
966
+ "randomClusterFraction": {
967
+ "type": "number",
968
+ "minimum": 0,
969
+ "maximum": 1
970
+ },
971
+ "mergeInformationFloor": {
972
+ "type": "boolean"
973
+ },
974
+ "minSpecificityRetention": {
975
+ "type": "number",
976
+ "minimum": 0,
977
+ "maximum": 1
978
+ }
979
+ },
980
+ "additionalProperties": true
981
+ },
982
+ "contradictionDetection": {
983
+ "type": "object",
984
+ "properties": {
985
+ "enabled": {
986
+ "type": "boolean"
987
+ }
988
+ },
989
+ "additionalProperties": true
990
+ }
991
+ },
992
+ "additionalProperties": true
993
+ },
994
+ "memoryInference": {
995
+ "type": "object",
996
+ "properties": {
997
+ "engine": {
998
+ "type": "string",
999
+ "maxLength": 63,
1000
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1001
+ },
1002
+ "model": {
1003
+ "type": "string",
1004
+ "minLength": 1
1005
+ },
1006
+ "llm": {
1007
+ "type": "object",
1008
+ "properties": {
1009
+ "temperature": {
1010
+ "type": "number"
1011
+ },
1012
+ "maxTokens": {
1013
+ "type": "integer",
1014
+ "exclusiveMinimum": 0
1015
+ },
1016
+ "supportsJsonSchema": {
1017
+ "type": "boolean"
1018
+ },
1019
+ "extraParams": {
1020
+ "type": "object",
1021
+ "additionalProperties": {}
1022
+ },
1023
+ "contextLength": {
1024
+ "type": "integer",
1025
+ "exclusiveMinimum": 0
1026
+ },
1027
+ "enableThinking": {
1028
+ "type": "boolean"
1029
+ }
1030
+ },
1031
+ "additionalProperties": true
1032
+ },
1033
+ "enabled": {
1034
+ "type": "boolean"
1035
+ },
1036
+ "timeoutMs": {
1037
+ "anyOf": [
1038
+ {
1039
+ "type": "integer",
1040
+ "exclusiveMinimum": 0
1041
+ },
1042
+ {
1043
+ "type": "null"
1044
+ }
1045
+ ]
1046
+ },
1047
+ "minPendingCount": {
1048
+ "type": "integer",
1049
+ "minimum": 0
1050
+ },
1051
+ "cls": {
1052
+ "type": "object",
1053
+ "properties": {
1054
+ "enabled": {
1055
+ "type": "boolean"
1056
+ },
1057
+ "adjacentCount": {
1058
+ "type": "integer",
1059
+ "minimum": 1
1060
+ }
1061
+ },
1062
+ "additionalProperties": true
1063
+ }
1064
+ },
1065
+ "additionalProperties": true
1066
+ },
1067
+ "graphExtraction": {
1068
+ "type": "object",
1069
+ "properties": {
1070
+ "engine": {
1071
+ "type": "string",
1072
+ "maxLength": 63,
1073
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1074
+ },
1075
+ "model": {
1076
+ "type": "string",
1077
+ "minLength": 1
1078
+ },
1079
+ "llm": {
1080
+ "type": "object",
1081
+ "properties": {
1082
+ "temperature": {
1083
+ "type": "number"
1084
+ },
1085
+ "maxTokens": {
1086
+ "type": "integer",
1087
+ "exclusiveMinimum": 0
1088
+ },
1089
+ "supportsJsonSchema": {
1090
+ "type": "boolean"
1091
+ },
1092
+ "extraParams": {
1093
+ "type": "object",
1094
+ "additionalProperties": {}
1095
+ },
1096
+ "contextLength": {
1097
+ "type": "integer",
1098
+ "exclusiveMinimum": 0
1099
+ },
1100
+ "enableThinking": {
1101
+ "type": "boolean"
1102
+ }
1103
+ },
1104
+ "additionalProperties": true
1105
+ },
1106
+ "enabled": {
1107
+ "type": "boolean"
1108
+ },
1109
+ "timeoutMs": {
1110
+ "anyOf": [
1111
+ {
1112
+ "type": "integer",
1113
+ "exclusiveMinimum": 0
1114
+ },
1115
+ {
1116
+ "type": "null"
1117
+ }
1118
+ ]
1119
+ },
1120
+ "topN": {
1121
+ "type": "integer",
1122
+ "exclusiveMinimum": 0
1123
+ },
1124
+ "includeTypes": {
1125
+ "type": "array",
1126
+ "items": {
1127
+ "type": "string",
1128
+ "minLength": 1
1129
+ },
1130
+ "minItems": 1
1131
+ },
1132
+ "batchSize": {
1133
+ "type": "integer",
1134
+ "exclusiveMinimum": 0
1135
+ },
1136
+ "fullScan": {
1137
+ "type": "boolean"
1138
+ }
1139
+ },
1140
+ "additionalProperties": true
1141
+ },
1142
+ "extract": {
1143
+ "type": "object",
1144
+ "properties": {
1145
+ "engine": {
1146
+ "type": "string",
1147
+ "maxLength": 63,
1148
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1149
+ },
1150
+ "model": {
1151
+ "type": "string",
1152
+ "minLength": 1
1153
+ },
1154
+ "llm": {
1155
+ "type": "object",
1156
+ "properties": {
1157
+ "temperature": {
1158
+ "type": "number"
1159
+ },
1160
+ "maxTokens": {
1161
+ "type": "integer",
1162
+ "exclusiveMinimum": 0
1163
+ },
1164
+ "supportsJsonSchema": {
1165
+ "type": "boolean"
1166
+ },
1167
+ "extraParams": {
1168
+ "type": "object",
1169
+ "additionalProperties": {}
1170
+ },
1171
+ "contextLength": {
1172
+ "type": "integer",
1173
+ "exclusiveMinimum": 0
1174
+ },
1175
+ "enableThinking": {
1176
+ "type": "boolean"
1177
+ }
1178
+ },
1179
+ "additionalProperties": true
1180
+ },
1181
+ "enabled": {
1182
+ "type": "boolean"
1183
+ },
1184
+ "timeoutMs": {
1185
+ "anyOf": [
1186
+ {
1187
+ "type": "integer",
1188
+ "exclusiveMinimum": 0
1189
+ },
1190
+ {
1191
+ "type": "null"
1192
+ }
1193
+ ]
1194
+ },
1195
+ "defaultSince": {
1196
+ "type": "string",
1197
+ "minLength": 1
1198
+ },
1199
+ "maxTotalChars": {
1200
+ "type": "integer",
1201
+ "exclusiveMinimum": 0
1202
+ },
1203
+ "minContentChars": {
1204
+ "type": "integer",
1205
+ "minimum": 0
1206
+ },
1207
+ "triage": {
1208
+ "type": "object",
1209
+ "properties": {
1210
+ "enabled": {
1211
+ "type": "boolean"
1212
+ },
1213
+ "minScore": {
1214
+ "type": "number",
1215
+ "minimum": 0
1216
+ }
1217
+ },
1218
+ "additionalProperties": true
1219
+ },
1220
+ "minNewSessions": {
1221
+ "type": "integer",
1222
+ "minimum": 0
1223
+ },
1224
+ "maxSessionsPerRun": {
1225
+ "type": "integer",
1226
+ "minimum": 0
1227
+ },
1228
+ "indexSessions": {
1229
+ "type": "boolean"
1230
+ },
1231
+ "minSessionDuration": {
1232
+ "type": "number",
1233
+ "minimum": 0
1234
+ }
1235
+ },
1236
+ "additionalProperties": true
1237
+ },
1238
+ "validation": {
1239
+ "type": "object",
1240
+ "properties": {
1241
+ "engine": {
1242
+ "type": "string",
1243
+ "maxLength": 63,
1244
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1245
+ },
1246
+ "model": {
1247
+ "type": "string",
1248
+ "minLength": 1
1249
+ },
1250
+ "llm": {
1251
+ "type": "object",
1252
+ "properties": {
1253
+ "temperature": {
1254
+ "type": "number"
1255
+ },
1256
+ "maxTokens": {
1257
+ "type": "integer",
1258
+ "exclusiveMinimum": 0
1259
+ },
1260
+ "supportsJsonSchema": {
1261
+ "type": "boolean"
1262
+ },
1263
+ "extraParams": {
1264
+ "type": "object",
1265
+ "additionalProperties": {}
1266
+ },
1267
+ "contextLength": {
1268
+ "type": "integer",
1269
+ "exclusiveMinimum": 0
1270
+ },
1271
+ "enableThinking": {
1272
+ "type": "boolean"
1273
+ }
1274
+ },
1275
+ "additionalProperties": true
1276
+ },
1277
+ "enabled": {
1278
+ "type": "boolean"
1279
+ },
1280
+ "timeoutMs": {
1281
+ "anyOf": [
1282
+ {
1283
+ "type": "integer",
1284
+ "exclusiveMinimum": 0
1285
+ },
1286
+ {
1287
+ "type": "null"
1288
+ }
1289
+ ]
1290
+ }
1291
+ },
1292
+ "additionalProperties": true
1293
+ },
1294
+ "triage": {
1295
+ "type": "object",
1296
+ "properties": {
1297
+ "engine": {
1298
+ "type": "string",
1299
+ "maxLength": 63,
1300
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1301
+ },
1302
+ "model": {
1303
+ "type": "string",
1304
+ "minLength": 1
1305
+ },
1306
+ "llm": {
1307
+ "type": "object",
1308
+ "properties": {
1309
+ "temperature": {
1310
+ "type": "number"
1311
+ },
1312
+ "maxTokens": {
1313
+ "type": "integer",
1314
+ "exclusiveMinimum": 0
1315
+ },
1316
+ "supportsJsonSchema": {
1317
+ "type": "boolean"
1318
+ },
1319
+ "extraParams": {
1320
+ "type": "object",
1321
+ "additionalProperties": {}
1322
+ },
1323
+ "contextLength": {
1324
+ "type": "integer",
1325
+ "exclusiveMinimum": 0
1326
+ },
1327
+ "enableThinking": {
1328
+ "type": "boolean"
1329
+ }
1330
+ },
1331
+ "additionalProperties": true
1332
+ },
1333
+ "enabled": {
1334
+ "type": "boolean"
1335
+ },
1336
+ "timeoutMs": {
1337
+ "anyOf": [
1338
+ {
1339
+ "type": "integer",
1340
+ "exclusiveMinimum": 0
1341
+ },
1342
+ {
1343
+ "type": "null"
1344
+ }
1345
+ ]
1346
+ },
1347
+ "applyMode": {
1348
+ "type": "string",
1349
+ "enum": [
1350
+ "queue",
1351
+ "promote"
1352
+ ]
1353
+ },
1354
+ "policy": {
1355
+ "type": "string",
1356
+ "minLength": 1
1357
+ },
1358
+ "maxAcceptsPerRun": {
1359
+ "type": "integer",
1360
+ "exclusiveMinimum": 0
1361
+ },
1362
+ "maxDiffLines": {
1363
+ "type": "integer",
1364
+ "exclusiveMinimum": 0
1365
+ },
1366
+ "rejectEmpty": {
1367
+ "type": "boolean"
1368
+ },
1369
+ "judgment": {
1370
+ "type": "object",
1371
+ "properties": {
1372
+ "engine": {
1373
+ "type": "string",
1374
+ "maxLength": 63,
1375
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1376
+ },
1377
+ "model": {
1378
+ "type": "string",
1379
+ "minLength": 1
1380
+ },
1381
+ "timeoutMs": {
1382
+ "anyOf": [
1383
+ {
1384
+ "type": "integer",
1385
+ "exclusiveMinimum": 0
1386
+ },
1387
+ {
1388
+ "type": "null"
1389
+ }
1390
+ ]
1391
+ },
1392
+ "llm": {
1393
+ "type": "object",
1394
+ "properties": {
1395
+ "temperature": {
1396
+ "type": "number"
1397
+ },
1398
+ "maxTokens": {
1399
+ "type": "integer",
1400
+ "exclusiveMinimum": 0
1401
+ },
1402
+ "supportsJsonSchema": {
1403
+ "type": "boolean"
1404
+ },
1405
+ "extraParams": {
1406
+ "type": "object",
1407
+ "additionalProperties": {}
1408
+ },
1409
+ "contextLength": {
1410
+ "type": "integer",
1411
+ "exclusiveMinimum": 0
1412
+ },
1413
+ "enableThinking": {
1414
+ "type": "boolean"
1415
+ }
1416
+ },
1417
+ "additionalProperties": true
1418
+ }
1419
+ },
1420
+ "additionalProperties": true
1421
+ }
1422
+ },
1423
+ "additionalProperties": true
1424
+ },
1425
+ "proactiveMaintenance": {
1426
+ "type": "object",
1427
+ "properties": {
1428
+ "engine": {
1429
+ "type": "string",
1430
+ "maxLength": 63,
1431
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1432
+ },
1433
+ "model": {
1434
+ "type": "string",
1435
+ "minLength": 1
1436
+ },
1437
+ "llm": {
1438
+ "type": "object",
1439
+ "properties": {
1440
+ "temperature": {
1441
+ "type": "number"
1442
+ },
1443
+ "maxTokens": {
1444
+ "type": "integer",
1445
+ "exclusiveMinimum": 0
1446
+ },
1447
+ "supportsJsonSchema": {
1448
+ "type": "boolean"
1449
+ },
1450
+ "extraParams": {
1451
+ "type": "object",
1452
+ "additionalProperties": {}
1453
+ },
1454
+ "contextLength": {
1455
+ "type": "integer",
1456
+ "exclusiveMinimum": 0
1457
+ },
1458
+ "enableThinking": {
1459
+ "type": "boolean"
1460
+ }
1461
+ },
1462
+ "additionalProperties": true
1463
+ },
1464
+ "enabled": {
1465
+ "type": "boolean"
1466
+ },
1467
+ "timeoutMs": {
1468
+ "anyOf": [
1469
+ {
1470
+ "type": "integer",
1471
+ "exclusiveMinimum": 0
1472
+ },
1473
+ {
1474
+ "type": "null"
1475
+ }
1476
+ ]
1477
+ },
1478
+ "dueDays": {
1479
+ "type": "integer",
1480
+ "minimum": 0
1481
+ },
1482
+ "maxPerRun": {
1483
+ "type": "integer",
1484
+ "exclusiveMinimum": 0
1485
+ },
1486
+ "limit": {
1487
+ "type": "integer",
1488
+ "exclusiveMinimum": 0
1489
+ }
1490
+ },
1491
+ "additionalProperties": true
1492
+ }
1493
+ },
1494
+ "additionalProperties": true
1495
+ },
1496
+ "limit": {
1497
+ "type": "integer",
1498
+ "exclusiveMinimum": 0
1499
+ },
1500
+ "sync": {
1501
+ "type": "object",
1502
+ "properties": {
1503
+ "enabled": {
1504
+ "type": "boolean"
1505
+ },
1506
+ "push": {
1507
+ "type": "boolean"
1508
+ },
1509
+ "message": {
1510
+ "type": "string",
1511
+ "minLength": 1
1512
+ }
1513
+ },
1514
+ "additionalProperties": true
1515
+ }
1516
+ },
1517
+ "additionalProperties": true
1518
+ },
1519
+ "propertyNames": {
1520
+ "maxLength": 63,
1521
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1522
+ }
1523
+ },
1524
+ "utilityDecay": {
1525
+ "type": "object",
1526
+ "properties": {
1527
+ "halfLifeDays": {
1528
+ "type": "number",
1529
+ "minimum": 0.1
1530
+ },
1531
+ "feedbackStabilityBoost": {
1532
+ "type": "number",
1533
+ "minimum": 1
1534
+ }
1535
+ },
1536
+ "additionalProperties": true
1537
+ },
1538
+ "eventRetentionDays": {
1539
+ "type": "number",
1540
+ "minimum": 0
1541
+ },
1542
+ "salience": {
1543
+ "type": "object",
1544
+ "properties": {
1545
+ "outcomeWeightEnabled": {
1546
+ "type": "boolean"
1547
+ },
1548
+ "salienceThreshold": {
1549
+ "type": "number",
1550
+ "minimum": 0,
1551
+ "maximum": 1
1552
+ },
1553
+ "replayBudget": {
1554
+ "type": "integer",
1555
+ "minimum": 0
1556
+ }
1557
+ },
1558
+ "additionalProperties": true
1559
+ },
1560
+ "collapseDetector": {
1561
+ "type": "object",
1562
+ "properties": {
1563
+ "enabled": {
1564
+ "type": "boolean"
1565
+ },
1566
+ "canaryCount": {
1567
+ "type": "integer",
1568
+ "minimum": 3,
1569
+ "maximum": 200
1570
+ },
1571
+ "k": {
1572
+ "type": "integer",
1573
+ "minimum": 1,
1574
+ "maximum": 100
1575
+ },
1576
+ "windowCycles": {
1577
+ "type": "integer",
1578
+ "minimum": 2,
1579
+ "maximum": 50
1580
+ },
1581
+ "recallDropThreshold": {
1582
+ "type": "number",
1583
+ "minimum": 0,
1584
+ "maximum": 1
1585
+ },
1586
+ "entropyDropThreshold": {
1587
+ "type": "number",
1588
+ "minimum": 0,
1589
+ "maximum": 1
1590
+ },
1591
+ "retentionDays": {
1592
+ "type": "integer",
1593
+ "minimum": 1
1594
+ }
1595
+ },
1596
+ "additionalProperties": true
1597
+ },
1598
+ "stateGc": {
1599
+ "type": "object",
1600
+ "properties": {
1601
+ "collect": {
1602
+ "type": "boolean"
1603
+ }
1604
+ },
1605
+ "additionalProperties": true
1606
+ }
1607
+ },
1608
+ "additionalProperties": true
1609
+ },
1610
+ "workflow": {
1611
+ "type": "object",
1612
+ "properties": {
1613
+ "maxConcurrency": {
1614
+ "type": "integer",
1615
+ "exclusiveMinimum": 0
1616
+ }
1617
+ },
1618
+ "additionalProperties": true
1619
+ },
1620
+ "setup": {
1621
+ "type": "object",
1622
+ "properties": {},
1623
+ "additionalProperties": true
1624
+ },
1625
+ "experimental": {
1626
+ "type": "object",
1627
+ "properties": {
1628
+ "improveAutonomy": {
1629
+ "type": "boolean"
1630
+ },
1631
+ "workflowEngine": {
1632
+ "type": "boolean"
1633
+ }
1634
+ },
1635
+ "additionalProperties": true
1636
+ }
1637
+ },
1638
+ "required": [
1639
+ "configVersion"
1640
+ ],
1641
+ "additionalProperties": true,
1642
+ "$defs": {
1643
+ "AkmConfig": {
1644
+ "type": "object",
1645
+ "properties": {
1646
+ "configVersion": {
1647
+ "type": "string",
1648
+ "const": "0.9.0"
1649
+ },
1650
+ "engines": {
1651
+ "type": "object",
1652
+ "additionalProperties": {
1653
+ "anyOf": [
1654
+ {
1655
+ "type": "object",
1656
+ "properties": {
1657
+ "kind": {
1658
+ "type": "string",
1659
+ "const": "llm"
1660
+ },
1661
+ "provider": {
1662
+ "type": "string"
1663
+ },
1664
+ "endpoint": {
1665
+ "type": "string"
1666
+ },
1667
+ "model": {
1668
+ "type": "string",
1669
+ "minLength": 1
1670
+ },
1671
+ "apiKey": {
1672
+ "type": "string",
1673
+ "pattern": "^\\$[A-Za-z_][A-Za-z0-9_]*$|^\\$\\{[A-Za-z_][A-Za-z0-9_]*\\}$"
1674
+ },
1675
+ "temperature": {
1676
+ "type": "number"
1677
+ },
1678
+ "maxTokens": {
1679
+ "type": "integer",
1680
+ "exclusiveMinimum": 0
1681
+ },
1682
+ "timeoutMs": {
1683
+ "anyOf": [
1684
+ {
1685
+ "type": "integer",
1686
+ "exclusiveMinimum": 0
1687
+ },
1688
+ {
1689
+ "type": "null"
1690
+ }
1691
+ ]
1692
+ },
1693
+ "concurrency": {
1694
+ "type": "integer",
1695
+ "exclusiveMinimum": 0
1696
+ },
1697
+ "supportsJsonSchema": {
1698
+ "type": "boolean"
1699
+ },
1700
+ "extraParams": {
1701
+ "type": "object",
1702
+ "additionalProperties": {}
1703
+ },
1704
+ "contextLength": {
1705
+ "type": "integer",
1706
+ "exclusiveMinimum": 0
1707
+ },
1708
+ "enableThinking": {
1709
+ "type": "boolean"
1710
+ }
1711
+ },
1712
+ "required": [
1713
+ "kind",
1714
+ "endpoint",
1715
+ "model"
1716
+ ],
1717
+ "additionalProperties": true
1718
+ },
1719
+ {
1720
+ "type": "object",
1721
+ "properties": {
1722
+ "kind": {
1723
+ "type": "string",
1724
+ "const": "agent"
1725
+ },
1726
+ "platform": {
1727
+ "type": "string",
1728
+ "enum": [
1729
+ "opencode",
1730
+ "claude",
1731
+ "opencode-sdk",
1732
+ "codex",
1733
+ "copilot",
1734
+ "pi",
1735
+ "gemini",
1736
+ "aider",
1737
+ "amazonq",
1738
+ "openhands"
1739
+ ]
1740
+ },
1741
+ "bin": {
1742
+ "type": "string",
1743
+ "minLength": 1
1744
+ },
1745
+ "args": {
1746
+ "type": "array",
1747
+ "items": {
1748
+ "type": "string"
1749
+ }
1750
+ },
1751
+ "workspace": {
1752
+ "type": "string",
1753
+ "minLength": 1
1754
+ },
1755
+ "model": {
1756
+ "type": "string",
1757
+ "minLength": 1
1758
+ },
1759
+ "timeoutMs": {
1760
+ "anyOf": [
1761
+ {
1762
+ "type": "integer",
1763
+ "exclusiveMinimum": 0
1764
+ },
1765
+ {
1766
+ "type": "null"
1767
+ }
1768
+ ]
1769
+ },
1770
+ "modelAliases": {
1771
+ "type": "object",
1772
+ "additionalProperties": {
1773
+ "type": "string",
1774
+ "minLength": 1
1775
+ },
1776
+ "propertyNames": {
1777
+ "minLength": 1
1778
+ }
1779
+ },
1780
+ "llmEngine": {
1781
+ "type": "string",
1782
+ "maxLength": 63,
1783
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1784
+ }
1785
+ },
1786
+ "required": [
1787
+ "kind",
1788
+ "platform"
1789
+ ],
1790
+ "additionalProperties": true
1791
+ }
1792
+ ]
1793
+ },
1794
+ "propertyNames": {
1795
+ "maxLength": 63,
1796
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1797
+ }
1798
+ },
1799
+ "defaults": {
1800
+ "type": "object",
1801
+ "properties": {
1802
+ "engine": {
1803
+ "type": "string",
1804
+ "maxLength": 63,
1805
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1806
+ },
1807
+ "llmEngine": {
1808
+ "type": "string",
1809
+ "maxLength": 63,
1810
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1811
+ },
1812
+ "improveStrategy": {
1813
+ "type": "string",
1814
+ "maxLength": 63,
1815
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1816
+ }
1817
+ },
1818
+ "additionalProperties": true
1819
+ },
1820
+ "modelAliases": {
1821
+ "type": "object",
1822
+ "additionalProperties": {
1823
+ "type": "object",
1824
+ "additionalProperties": {
1825
+ "type": "string",
1826
+ "minLength": 1
1827
+ },
1828
+ "propertyNames": {
1829
+ "minLength": 1
1830
+ }
1831
+ },
1832
+ "propertyNames": {
1833
+ "minLength": 1
1834
+ }
1835
+ },
1836
+ "semanticSearchMode": {
1837
+ "type": "string",
1838
+ "enum": [
1839
+ "off",
1840
+ "auto"
1841
+ ],
1842
+ "default": "off"
1843
+ },
1844
+ "embedding": {
1845
+ "type": "object",
1846
+ "properties": {
1847
+ "provider": {
1848
+ "type": "string"
1849
+ },
1850
+ "endpoint": {
1851
+ "type": "string"
1852
+ },
1853
+ "model": {
1854
+ "type": "string"
1855
+ },
1856
+ "apiKey": {
1857
+ "type": "string",
1858
+ "pattern": "^\\$[A-Za-z_][A-Za-z0-9_]*$|^\\$\\{[A-Za-z_][A-Za-z0-9_]*\\}$"
1859
+ },
1860
+ "dimension": {
1861
+ "type": "integer",
1862
+ "exclusiveMinimum": 0
1863
+ },
1864
+ "localModel": {
1865
+ "type": "string",
1866
+ "minLength": 1
1867
+ },
1868
+ "maxTokens": {
1869
+ "type": "integer",
1870
+ "exclusiveMinimum": 0
1871
+ },
1872
+ "batchSize": {
1873
+ "type": "integer",
1874
+ "exclusiveMinimum": 0
1875
+ },
1876
+ "chunkSize": {
1877
+ "type": "integer",
1878
+ "exclusiveMinimum": 0
1879
+ },
1880
+ "contextLength": {
1881
+ "type": "integer",
1882
+ "exclusiveMinimum": 0
1883
+ },
1884
+ "ollamaOptions": {
1885
+ "type": "object",
1886
+ "properties": {
1887
+ "num_ctx": {
1888
+ "type": "integer",
1889
+ "exclusiveMinimum": 0
1890
+ }
1891
+ },
1892
+ "additionalProperties": true
1893
+ }
1894
+ },
1895
+ "additionalProperties": true
1896
+ },
1897
+ "index": {
1898
+ "type": "object",
1899
+ "properties": {
1900
+ "defaults": {
1901
+ "type": "object",
1902
+ "properties": {
1903
+ "engine": {
1904
+ "type": "string",
1905
+ "maxLength": 63,
1906
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1907
+ },
1908
+ "model": {
1909
+ "type": "string",
1910
+ "minLength": 1
1911
+ },
1912
+ "timeoutMs": {
1913
+ "anyOf": [
1914
+ {
1915
+ "type": "integer",
1916
+ "exclusiveMinimum": 0
1917
+ },
1918
+ {
1919
+ "type": "null"
1920
+ }
1921
+ ]
1922
+ },
1923
+ "llm": {
1924
+ "type": "object",
1925
+ "properties": {
1926
+ "temperature": {
1927
+ "type": "number"
1928
+ },
1929
+ "maxTokens": {
1930
+ "type": "integer",
1931
+ "exclusiveMinimum": 0
1932
+ },
1933
+ "supportsJsonSchema": {
1934
+ "type": "boolean"
1935
+ },
1936
+ "extraParams": {
1937
+ "type": "object",
1938
+ "additionalProperties": {}
1939
+ },
1940
+ "contextLength": {
1941
+ "type": "integer",
1942
+ "exclusiveMinimum": 0
1943
+ },
1944
+ "enableThinking": {
1945
+ "type": "boolean"
1946
+ }
1947
+ },
1948
+ "additionalProperties": true
1949
+ }
1950
+ },
1951
+ "additionalProperties": true
1952
+ },
1953
+ "metadataEnhance": {
1954
+ "type": "object",
1955
+ "properties": {
1956
+ "enabled": {
1957
+ "type": "boolean"
1958
+ }
1959
+ },
1960
+ "additionalProperties": true
1961
+ },
1962
+ "indexBodyOpening": {
1963
+ "type": "boolean",
1964
+ "description": "Index the first prose paragraph of each markdown asset body (capped at 280 chars) into the lowest-weight `content` search column and the embedding text (default false). Secret/env files and session-kind memories are never captured. Toggling the flag changes indexed text: run `akm index --full` afterwards to re-extract every entry and regenerate embeddings, and re-mint collapse-detector canary baselines via `bun scripts/refresh-canary-set.ts --refresh`."
1965
+ }
1966
+ },
1967
+ "additionalProperties": {
1968
+ "type": "object",
1969
+ "properties": {
1970
+ "engine": {
1971
+ "type": "string",
1972
+ "maxLength": 63,
1973
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1974
+ },
1975
+ "model": {
1976
+ "type": "string",
1977
+ "minLength": 1
1978
+ },
1979
+ "timeoutMs": {
1980
+ "anyOf": [
1981
+ {
1982
+ "type": "integer",
1983
+ "exclusiveMinimum": 0
1984
+ },
1985
+ {
1986
+ "type": "null"
1987
+ }
1988
+ ]
1989
+ },
1990
+ "enabled": {
1991
+ "type": "boolean"
1992
+ },
1993
+ "llm": {
1994
+ "type": "object",
1995
+ "properties": {
1996
+ "temperature": {
1997
+ "type": "number"
1998
+ },
1999
+ "maxTokens": {
2000
+ "type": "integer",
2001
+ "exclusiveMinimum": 0
2002
+ },
2003
+ "supportsJsonSchema": {
2004
+ "type": "boolean"
2005
+ },
2006
+ "extraParams": {
2007
+ "type": "object",
2008
+ "additionalProperties": {}
2009
+ },
2010
+ "contextLength": {
2011
+ "type": "integer",
2012
+ "exclusiveMinimum": 0
2013
+ },
2014
+ "enableThinking": {
2015
+ "type": "boolean"
2016
+ }
2017
+ },
2018
+ "additionalProperties": true
2019
+ },
2020
+ "graphExtractionBatchSize": {
2021
+ "type": "integer",
2022
+ "exclusiveMinimum": 0
2023
+ },
2024
+ "graphExtractionIncludeTypes": {
2025
+ "type": "array",
2026
+ "items": {
2027
+ "type": "string",
2028
+ "minLength": 1
2029
+ },
2030
+ "minItems": 1
2031
+ },
2032
+ "lazyGraphExtraction": {
2033
+ "type": "boolean"
2034
+ }
2035
+ },
2036
+ "additionalProperties": true
2037
+ }
2038
+ },
2039
+ "registries": {
2040
+ "type": "array",
2041
+ "items": {
2042
+ "type": "object",
2043
+ "properties": {
2044
+ "url": {
2045
+ "type": "string"
2046
+ },
2047
+ "name": {
2048
+ "type": "string",
2049
+ "minLength": 1
2050
+ },
2051
+ "enabled": {
2052
+ "type": "boolean"
2053
+ },
2054
+ "provider": {
2055
+ "type": "string",
2056
+ "minLength": 1
2057
+ },
2058
+ "options": {
2059
+ "type": "object",
2060
+ "additionalProperties": {}
2061
+ }
2062
+ },
2063
+ "required": [
2064
+ "url"
2065
+ ],
2066
+ "additionalProperties": true
2067
+ }
2068
+ },
2069
+ "bundles": {
2070
+ "type": "object",
2071
+ "additionalProperties": {
2072
+ "type": "object",
2073
+ "properties": {
2074
+ "path": {
2075
+ "type": "string",
2076
+ "minLength": 1
2077
+ },
2078
+ "git": {
2079
+ "type": "string",
2080
+ "minLength": 1
2081
+ },
2082
+ "website": {
2083
+ "type": "object",
2084
+ "properties": {
2085
+ "url": {
2086
+ "type": "string"
2087
+ },
2088
+ "refresh": {
2089
+ "type": "string",
2090
+ "minLength": 1
2091
+ },
2092
+ "maxPages": {
2093
+ "type": "integer",
2094
+ "exclusiveMinimum": 0
2095
+ },
2096
+ "maxDepth": {
2097
+ "type": "integer",
2098
+ "exclusiveMinimum": 0
2099
+ }
2100
+ },
2101
+ "required": [
2102
+ "url"
2103
+ ],
2104
+ "additionalProperties": true
2105
+ },
2106
+ "npm": {
2107
+ "type": "string",
2108
+ "minLength": 1
2109
+ },
2110
+ "writable": {
2111
+ "type": "boolean"
2112
+ },
2113
+ "enabled": {
2114
+ "type": "boolean"
2115
+ },
2116
+ "registryId": {
2117
+ "type": "string",
2118
+ "minLength": 1
2119
+ },
2120
+ "components": {
2121
+ "type": "object",
2122
+ "additionalProperties": {
2123
+ "type": "object",
2124
+ "properties": {
2125
+ "root": {
2126
+ "type": "string",
2127
+ "minLength": 1
2128
+ },
2129
+ "adapter": {
2130
+ "type": "string",
2131
+ "minLength": 1
2132
+ },
2133
+ "writable": {
2134
+ "type": "boolean"
2135
+ }
2136
+ },
2137
+ "additionalProperties": true
2138
+ },
2139
+ "propertyNames": {
2140
+ "minLength": 1
2141
+ }
2142
+ }
2143
+ },
2144
+ "additionalProperties": true
2145
+ }
2146
+ },
2147
+ "defaultBundle": {
2148
+ "type": "string",
2149
+ "minLength": 1
2150
+ },
2151
+ "output": {
2152
+ "type": "object",
2153
+ "properties": {
2154
+ "format": {
2155
+ "type": "string",
2156
+ "enum": [
2157
+ "json",
2158
+ "yaml",
2159
+ "text",
2160
+ "jsonl",
2161
+ "md",
2162
+ "html"
2163
+ ]
2164
+ },
2165
+ "detail": {
2166
+ "type": "string",
2167
+ "enum": [
2168
+ "brief",
2169
+ "normal",
2170
+ "full"
2171
+ ]
2172
+ }
2173
+ },
2174
+ "additionalProperties": true
2175
+ },
2176
+ "defaultWriteTarget": {
2177
+ "type": "string",
2178
+ "minLength": 1
2179
+ },
2180
+ "search": {
2181
+ "type": "object",
2182
+ "properties": {
2183
+ "minScore": {
2184
+ "type": "number",
2185
+ "minimum": 0
2186
+ },
2187
+ "defaultExcludeTypes": {
2188
+ "type": "array",
2189
+ "items": {
2190
+ "type": "string",
2191
+ "minLength": 1
2192
+ }
2193
+ },
2194
+ "graphBoost": {
2195
+ "type": "object",
2196
+ "properties": {
2197
+ "directBoostPerEntity": {
2198
+ "type": "number",
2199
+ "minimum": 0
2200
+ },
2201
+ "directBoostCap": {
2202
+ "type": "number",
2203
+ "minimum": 0
2204
+ },
2205
+ "hopBoostPerEntity": {
2206
+ "type": "number",
2207
+ "minimum": 0
2208
+ },
2209
+ "hopBoostCap": {
2210
+ "type": "number",
2211
+ "minimum": 0
2212
+ },
2213
+ "maxHops": {
2214
+ "type": "integer",
2215
+ "exclusiveMinimum": 0,
2216
+ "maximum": 3
2217
+ },
2218
+ "confidenceMode": {
2219
+ "type": "string",
2220
+ "enum": [
2221
+ "off",
2222
+ "blend",
2223
+ "multiply"
2224
+ ],
2225
+ "default": "blend"
2226
+ },
2227
+ "confidenceWeight": {
2228
+ "type": "number",
2229
+ "minimum": 0,
2230
+ "maximum": 1,
2231
+ "default": 0.2
2232
+ }
2233
+ },
2234
+ "additionalProperties": true
2235
+ }
2236
+ },
2237
+ "additionalProperties": true
2238
+ },
2239
+ "feedback": {
2240
+ "type": "object",
2241
+ "properties": {
2242
+ "requireReason": {
2243
+ "type": "boolean"
2244
+ },
2245
+ "allowedFailureModes": {
2246
+ "type": "array",
2247
+ "items": {
2248
+ "type": "string",
2249
+ "minLength": 1
2250
+ }
2251
+ }
2252
+ },
2253
+ "additionalProperties": true
2254
+ },
2255
+ "archiveRetentionDays": {
2256
+ "type": "number",
2257
+ "minimum": 0
2258
+ },
2259
+ "improve": {
2260
+ "type": "object",
2261
+ "properties": {
2262
+ "strategies": {
2263
+ "type": "object",
2264
+ "additionalProperties": {
2265
+ "type": "object",
2266
+ "properties": {
2267
+ "engine": {
2268
+ "type": "string",
2269
+ "maxLength": 63,
2270
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
2271
+ },
2272
+ "model": {
2273
+ "type": "string",
2274
+ "minLength": 1
2275
+ },
2276
+ "timeoutMs": {
2277
+ "anyOf": [
2278
+ {
2279
+ "type": "integer",
2280
+ "exclusiveMinimum": 0
2281
+ },
2282
+ {
2283
+ "type": "null"
2284
+ }
2285
+ ]
2286
+ },
2287
+ "llm": {
2288
+ "type": "object",
2289
+ "properties": {
2290
+ "temperature": {
2291
+ "type": "number"
2292
+ },
2293
+ "maxTokens": {
2294
+ "type": "integer",
2295
+ "exclusiveMinimum": 0
2296
+ },
2297
+ "supportsJsonSchema": {
2298
+ "type": "boolean"
2299
+ },
2300
+ "extraParams": {
2301
+ "type": "object",
2302
+ "additionalProperties": {}
2303
+ },
2304
+ "contextLength": {
2305
+ "type": "integer",
2306
+ "exclusiveMinimum": 0
2307
+ },
2308
+ "enableThinking": {
2309
+ "type": "boolean"
2310
+ }
2311
+ },
2312
+ "additionalProperties": true
2313
+ },
2314
+ "description": {
2315
+ "type": "string",
2316
+ "minLength": 1
2317
+ },
2318
+ "processes": {
2319
+ "type": "object",
2320
+ "properties": {
2321
+ "reflect": {
2322
+ "type": "object",
2323
+ "properties": {
2324
+ "engine": {
2325
+ "type": "string",
2326
+ "maxLength": 63,
2327
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
2328
+ },
2329
+ "model": {
2330
+ "type": "string",
2331
+ "minLength": 1
2332
+ },
2333
+ "llm": {
2334
+ "type": "object",
2335
+ "properties": {
2336
+ "temperature": {
2337
+ "type": "number"
2338
+ },
2339
+ "maxTokens": {
2340
+ "type": "integer",
2341
+ "exclusiveMinimum": 0
2342
+ },
2343
+ "supportsJsonSchema": {
2344
+ "type": "boolean"
2345
+ },
2346
+ "extraParams": {
2347
+ "type": "object",
2348
+ "additionalProperties": {}
2349
+ },
2350
+ "contextLength": {
2351
+ "type": "integer",
2352
+ "exclusiveMinimum": 0
2353
+ },
2354
+ "enableThinking": {
2355
+ "type": "boolean"
2356
+ }
2357
+ },
2358
+ "additionalProperties": true
2359
+ },
2360
+ "enabled": {
2361
+ "type": "boolean"
2362
+ },
2363
+ "timeoutMs": {
2364
+ "anyOf": [
2365
+ {
2366
+ "type": "integer",
2367
+ "exclusiveMinimum": 0
2368
+ },
2369
+ {
2370
+ "type": "null"
2371
+ }
2372
+ ]
2373
+ },
2374
+ "allowedTypes": {
2375
+ "type": "array",
2376
+ "items": {
2377
+ "type": "string",
2378
+ "minLength": 1
2379
+ }
2380
+ },
2381
+ "limit": {
2382
+ "type": "integer",
2383
+ "exclusiveMinimum": 0
2384
+ },
2385
+ "qualityGate": {
2386
+ "type": "object",
2387
+ "properties": {
2388
+ "enabled": {
2389
+ "type": "boolean"
2390
+ }
2391
+ },
2392
+ "additionalProperties": true
2393
+ },
2394
+ "lowValueFilter": {
2395
+ "type": "object",
2396
+ "properties": {
2397
+ "enabled": {
2398
+ "type": "boolean"
2399
+ }
2400
+ },
2401
+ "additionalProperties": true
2402
+ }
2403
+ },
2404
+ "additionalProperties": true
2405
+ },
2406
+ "distill": {
2407
+ "type": "object",
2408
+ "properties": {
2409
+ "engine": {
2410
+ "type": "string",
2411
+ "maxLength": 63,
2412
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
2413
+ },
2414
+ "model": {
2415
+ "type": "string",
2416
+ "minLength": 1
2417
+ },
2418
+ "llm": {
2419
+ "type": "object",
2420
+ "properties": {
2421
+ "temperature": {
2422
+ "type": "number"
2423
+ },
2424
+ "maxTokens": {
2425
+ "type": "integer",
2426
+ "exclusiveMinimum": 0
2427
+ },
2428
+ "supportsJsonSchema": {
2429
+ "type": "boolean"
2430
+ },
2431
+ "extraParams": {
2432
+ "type": "object",
2433
+ "additionalProperties": {}
2434
+ },
2435
+ "contextLength": {
2436
+ "type": "integer",
2437
+ "exclusiveMinimum": 0
2438
+ },
2439
+ "enableThinking": {
2440
+ "type": "boolean"
2441
+ }
2442
+ },
2443
+ "additionalProperties": true
2444
+ },
2445
+ "enabled": {
2446
+ "type": "boolean"
2447
+ },
2448
+ "timeoutMs": {
2449
+ "anyOf": [
2450
+ {
2451
+ "type": "integer",
2452
+ "exclusiveMinimum": 0
2453
+ },
2454
+ {
2455
+ "type": "null"
2456
+ }
2457
+ ]
2458
+ },
2459
+ "allowedTypes": {
2460
+ "type": "array",
2461
+ "items": {
2462
+ "type": "string",
2463
+ "minLength": 1
2464
+ }
2465
+ },
2466
+ "limit": {
2467
+ "type": "integer",
2468
+ "exclusiveMinimum": 0
2469
+ },
2470
+ "qualityGate": {
2471
+ "type": "object",
2472
+ "properties": {
2473
+ "enabled": {
2474
+ "type": "boolean"
2475
+ }
2476
+ },
2477
+ "additionalProperties": true
2478
+ },
2479
+ "requirePlannedRefs": {
2480
+ "type": "boolean"
2481
+ },
2482
+ "cls": {
2483
+ "type": "object",
2484
+ "properties": {
2485
+ "enabled": {
2486
+ "type": "boolean"
2487
+ },
2488
+ "adjacentCount": {
2489
+ "type": "integer",
2490
+ "minimum": 1
2491
+ }
2492
+ },
2493
+ "additionalProperties": true
2494
+ },
2495
+ "fidelityCheck": {
2496
+ "type": "object",
2497
+ "properties": {
2498
+ "enabled": {
2499
+ "type": "boolean"
2500
+ }
2501
+ },
2502
+ "additionalProperties": true
2503
+ }
2504
+ },
2505
+ "additionalProperties": true
2506
+ },
2507
+ "consolidate": {
2508
+ "type": "object",
2509
+ "properties": {
2510
+ "engine": {
2511
+ "type": "string",
2512
+ "maxLength": 63,
2513
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
2514
+ },
2515
+ "model": {
2516
+ "type": "string",
2517
+ "minLength": 1
2518
+ },
2519
+ "llm": {
2520
+ "type": "object",
2521
+ "properties": {
2522
+ "temperature": {
2523
+ "type": "number"
2524
+ },
2525
+ "maxTokens": {
2526
+ "type": "integer",
2527
+ "exclusiveMinimum": 0
2528
+ },
2529
+ "supportsJsonSchema": {
2530
+ "type": "boolean"
2531
+ },
2532
+ "extraParams": {
2533
+ "type": "object",
2534
+ "additionalProperties": {}
2535
+ },
2536
+ "contextLength": {
2537
+ "type": "integer",
2538
+ "exclusiveMinimum": 0
2539
+ },
2540
+ "enableThinking": {
2541
+ "type": "boolean"
2542
+ }
2543
+ },
2544
+ "additionalProperties": true
2545
+ },
2546
+ "enabled": {
2547
+ "type": "boolean"
2548
+ },
2549
+ "timeoutMs": {
2550
+ "anyOf": [
2551
+ {
2552
+ "type": "integer",
2553
+ "exclusiveMinimum": 0
2554
+ },
2555
+ {
2556
+ "type": "null"
2557
+ }
2558
+ ]
2559
+ },
2560
+ "allowedTypes": {
2561
+ "type": "array",
2562
+ "items": {
2563
+ "type": "string",
2564
+ "minLength": 1
2565
+ }
2566
+ },
2567
+ "limit": {
2568
+ "type": "integer",
2569
+ "exclusiveMinimum": 0
2570
+ },
2571
+ "minPoolSize": {
2572
+ "type": "integer",
2573
+ "minimum": 0
2574
+ },
2575
+ "maxChunkSize": {
2576
+ "type": "integer",
2577
+ "minimum": 1,
2578
+ "maximum": 50
2579
+ },
2580
+ "incrementalSince": {
2581
+ "type": "string"
2582
+ },
2583
+ "neighborsPerChanged": {
2584
+ "type": "integer",
2585
+ "minimum": 1
2586
+ },
2587
+ "p90ChunkSecondsDefault": {
2588
+ "type": "number",
2589
+ "exclusiveMinimum": 0
2590
+ },
2591
+ "antiCollapse": {
2592
+ "type": "object",
2593
+ "properties": {
2594
+ "enabled": {
2595
+ "type": "boolean"
2596
+ },
2597
+ "maxGeneration": {
2598
+ "type": "integer",
2599
+ "minimum": 1
2600
+ },
2601
+ "lexicalDiversityCheck": {
2602
+ "type": "boolean"
2603
+ },
2604
+ "randomClusterFraction": {
2605
+ "type": "number",
2606
+ "minimum": 0,
2607
+ "maximum": 1
2608
+ },
2609
+ "mergeInformationFloor": {
2610
+ "type": "boolean"
2611
+ },
2612
+ "minSpecificityRetention": {
2613
+ "type": "number",
2614
+ "minimum": 0,
2615
+ "maximum": 1
2616
+ }
2617
+ },
2618
+ "additionalProperties": true
2619
+ },
2620
+ "contradictionDetection": {
2621
+ "type": "object",
2622
+ "properties": {
2623
+ "enabled": {
2624
+ "type": "boolean"
2625
+ }
2626
+ },
2627
+ "additionalProperties": true
2628
+ }
2629
+ },
2630
+ "additionalProperties": true
2631
+ },
2632
+ "memoryInference": {
2633
+ "type": "object",
2634
+ "properties": {
2635
+ "engine": {
2636
+ "type": "string",
2637
+ "maxLength": 63,
2638
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
2639
+ },
2640
+ "model": {
2641
+ "type": "string",
2642
+ "minLength": 1
2643
+ },
2644
+ "llm": {
2645
+ "type": "object",
2646
+ "properties": {
2647
+ "temperature": {
2648
+ "type": "number"
2649
+ },
2650
+ "maxTokens": {
2651
+ "type": "integer",
2652
+ "exclusiveMinimum": 0
2653
+ },
2654
+ "supportsJsonSchema": {
2655
+ "type": "boolean"
2656
+ },
2657
+ "extraParams": {
2658
+ "type": "object",
2659
+ "additionalProperties": {}
2660
+ },
2661
+ "contextLength": {
2662
+ "type": "integer",
2663
+ "exclusiveMinimum": 0
2664
+ },
2665
+ "enableThinking": {
2666
+ "type": "boolean"
2667
+ }
2668
+ },
2669
+ "additionalProperties": true
2670
+ },
2671
+ "enabled": {
2672
+ "type": "boolean"
2673
+ },
2674
+ "timeoutMs": {
2675
+ "anyOf": [
2676
+ {
2677
+ "type": "integer",
2678
+ "exclusiveMinimum": 0
2679
+ },
2680
+ {
2681
+ "type": "null"
2682
+ }
2683
+ ]
2684
+ },
2685
+ "minPendingCount": {
2686
+ "type": "integer",
2687
+ "minimum": 0
2688
+ },
2689
+ "cls": {
2690
+ "type": "object",
2691
+ "properties": {
2692
+ "enabled": {
2693
+ "type": "boolean"
2694
+ },
2695
+ "adjacentCount": {
2696
+ "type": "integer",
2697
+ "minimum": 1
2698
+ }
2699
+ },
2700
+ "additionalProperties": true
2701
+ }
2702
+ },
2703
+ "additionalProperties": true
2704
+ },
2705
+ "graphExtraction": {
2706
+ "type": "object",
2707
+ "properties": {
2708
+ "engine": {
2709
+ "type": "string",
2710
+ "maxLength": 63,
2711
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
2712
+ },
2713
+ "model": {
2714
+ "type": "string",
2715
+ "minLength": 1
2716
+ },
2717
+ "llm": {
2718
+ "type": "object",
2719
+ "properties": {
2720
+ "temperature": {
2721
+ "type": "number"
2722
+ },
2723
+ "maxTokens": {
2724
+ "type": "integer",
2725
+ "exclusiveMinimum": 0
2726
+ },
2727
+ "supportsJsonSchema": {
2728
+ "type": "boolean"
2729
+ },
2730
+ "extraParams": {
2731
+ "type": "object",
2732
+ "additionalProperties": {}
2733
+ },
2734
+ "contextLength": {
2735
+ "type": "integer",
2736
+ "exclusiveMinimum": 0
2737
+ },
2738
+ "enableThinking": {
2739
+ "type": "boolean"
2740
+ }
2741
+ },
2742
+ "additionalProperties": true
2743
+ },
2744
+ "enabled": {
2745
+ "type": "boolean"
2746
+ },
2747
+ "timeoutMs": {
2748
+ "anyOf": [
2749
+ {
2750
+ "type": "integer",
2751
+ "exclusiveMinimum": 0
2752
+ },
2753
+ {
2754
+ "type": "null"
2755
+ }
2756
+ ]
2757
+ },
2758
+ "topN": {
2759
+ "type": "integer",
2760
+ "exclusiveMinimum": 0
2761
+ },
2762
+ "includeTypes": {
2763
+ "type": "array",
2764
+ "items": {
2765
+ "type": "string",
2766
+ "minLength": 1
2767
+ },
2768
+ "minItems": 1
2769
+ },
2770
+ "batchSize": {
2771
+ "type": "integer",
2772
+ "exclusiveMinimum": 0
2773
+ },
2774
+ "fullScan": {
2775
+ "type": "boolean"
2776
+ }
2777
+ },
2778
+ "additionalProperties": true
2779
+ },
2780
+ "extract": {
2781
+ "type": "object",
2782
+ "properties": {
2783
+ "engine": {
2784
+ "type": "string",
2785
+ "maxLength": 63,
2786
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
2787
+ },
2788
+ "model": {
2789
+ "type": "string",
2790
+ "minLength": 1
2791
+ },
2792
+ "llm": {
2793
+ "type": "object",
2794
+ "properties": {
2795
+ "temperature": {
2796
+ "type": "number"
2797
+ },
2798
+ "maxTokens": {
2799
+ "type": "integer",
2800
+ "exclusiveMinimum": 0
2801
+ },
2802
+ "supportsJsonSchema": {
2803
+ "type": "boolean"
2804
+ },
2805
+ "extraParams": {
2806
+ "type": "object",
2807
+ "additionalProperties": {}
2808
+ },
2809
+ "contextLength": {
2810
+ "type": "integer",
2811
+ "exclusiveMinimum": 0
2812
+ },
2813
+ "enableThinking": {
2814
+ "type": "boolean"
2815
+ }
2816
+ },
2817
+ "additionalProperties": true
2818
+ },
2819
+ "enabled": {
2820
+ "type": "boolean"
2821
+ },
2822
+ "timeoutMs": {
2823
+ "anyOf": [
2824
+ {
2825
+ "type": "integer",
2826
+ "exclusiveMinimum": 0
2827
+ },
2828
+ {
2829
+ "type": "null"
2830
+ }
2831
+ ]
2832
+ },
2833
+ "defaultSince": {
2834
+ "type": "string",
2835
+ "minLength": 1
2836
+ },
2837
+ "maxTotalChars": {
2838
+ "type": "integer",
2839
+ "exclusiveMinimum": 0
2840
+ },
2841
+ "minContentChars": {
2842
+ "type": "integer",
2843
+ "minimum": 0
2844
+ },
2845
+ "triage": {
2846
+ "type": "object",
2847
+ "properties": {
2848
+ "enabled": {
2849
+ "type": "boolean"
2850
+ },
2851
+ "minScore": {
2852
+ "type": "number",
2853
+ "minimum": 0
2854
+ }
2855
+ },
2856
+ "additionalProperties": true
2857
+ },
2858
+ "minNewSessions": {
2859
+ "type": "integer",
2860
+ "minimum": 0
2861
+ },
2862
+ "maxSessionsPerRun": {
2863
+ "type": "integer",
2864
+ "minimum": 0
2865
+ },
2866
+ "indexSessions": {
2867
+ "type": "boolean"
2868
+ },
2869
+ "minSessionDuration": {
2870
+ "type": "number",
2871
+ "minimum": 0
2872
+ }
2873
+ },
2874
+ "additionalProperties": true
2875
+ },
2876
+ "validation": {
2877
+ "type": "object",
2878
+ "properties": {
2879
+ "engine": {
2880
+ "type": "string",
2881
+ "maxLength": 63,
2882
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
2883
+ },
2884
+ "model": {
2885
+ "type": "string",
2886
+ "minLength": 1
2887
+ },
2888
+ "llm": {
2889
+ "type": "object",
2890
+ "properties": {
2891
+ "temperature": {
2892
+ "type": "number"
2893
+ },
2894
+ "maxTokens": {
2895
+ "type": "integer",
2896
+ "exclusiveMinimum": 0
2897
+ },
2898
+ "supportsJsonSchema": {
2899
+ "type": "boolean"
2900
+ },
2901
+ "extraParams": {
2902
+ "type": "object",
2903
+ "additionalProperties": {}
2904
+ },
2905
+ "contextLength": {
2906
+ "type": "integer",
2907
+ "exclusiveMinimum": 0
2908
+ },
2909
+ "enableThinking": {
2910
+ "type": "boolean"
2911
+ }
2912
+ },
2913
+ "additionalProperties": true
2914
+ },
2915
+ "enabled": {
2916
+ "type": "boolean"
2917
+ },
2918
+ "timeoutMs": {
2919
+ "anyOf": [
2920
+ {
2921
+ "type": "integer",
2922
+ "exclusiveMinimum": 0
2923
+ },
2924
+ {
2925
+ "type": "null"
2926
+ }
2927
+ ]
2928
+ }
2929
+ },
2930
+ "additionalProperties": true
2931
+ },
2932
+ "triage": {
2933
+ "type": "object",
2934
+ "properties": {
2935
+ "engine": {
2936
+ "type": "string",
2937
+ "maxLength": 63,
2938
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
2939
+ },
2940
+ "model": {
2941
+ "type": "string",
2942
+ "minLength": 1
2943
+ },
2944
+ "llm": {
2945
+ "type": "object",
2946
+ "properties": {
2947
+ "temperature": {
2948
+ "type": "number"
2949
+ },
2950
+ "maxTokens": {
2951
+ "type": "integer",
2952
+ "exclusiveMinimum": 0
2953
+ },
2954
+ "supportsJsonSchema": {
2955
+ "type": "boolean"
2956
+ },
2957
+ "extraParams": {
2958
+ "type": "object",
2959
+ "additionalProperties": {}
2960
+ },
2961
+ "contextLength": {
2962
+ "type": "integer",
2963
+ "exclusiveMinimum": 0
2964
+ },
2965
+ "enableThinking": {
2966
+ "type": "boolean"
2967
+ }
2968
+ },
2969
+ "additionalProperties": true
2970
+ },
2971
+ "enabled": {
2972
+ "type": "boolean"
2973
+ },
2974
+ "timeoutMs": {
2975
+ "anyOf": [
2976
+ {
2977
+ "type": "integer",
2978
+ "exclusiveMinimum": 0
2979
+ },
2980
+ {
2981
+ "type": "null"
2982
+ }
2983
+ ]
2984
+ },
2985
+ "applyMode": {
2986
+ "type": "string",
2987
+ "enum": [
2988
+ "queue",
2989
+ "promote"
2990
+ ]
2991
+ },
2992
+ "policy": {
2993
+ "type": "string",
2994
+ "minLength": 1
2995
+ },
2996
+ "maxAcceptsPerRun": {
2997
+ "type": "integer",
2998
+ "exclusiveMinimum": 0
2999
+ },
3000
+ "maxDiffLines": {
3001
+ "type": "integer",
3002
+ "exclusiveMinimum": 0
3003
+ },
3004
+ "rejectEmpty": {
3005
+ "type": "boolean"
3006
+ },
3007
+ "judgment": {
3008
+ "type": "object",
3009
+ "properties": {
3010
+ "engine": {
3011
+ "type": "string",
3012
+ "maxLength": 63,
3013
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3014
+ },
3015
+ "model": {
3016
+ "type": "string",
3017
+ "minLength": 1
3018
+ },
3019
+ "timeoutMs": {
3020
+ "anyOf": [
3021
+ {
3022
+ "type": "integer",
3023
+ "exclusiveMinimum": 0
3024
+ },
3025
+ {
3026
+ "type": "null"
3027
+ }
3028
+ ]
3029
+ },
3030
+ "llm": {
3031
+ "type": "object",
3032
+ "properties": {
3033
+ "temperature": {
3034
+ "type": "number"
3035
+ },
3036
+ "maxTokens": {
3037
+ "type": "integer",
3038
+ "exclusiveMinimum": 0
3039
+ },
3040
+ "supportsJsonSchema": {
3041
+ "type": "boolean"
3042
+ },
3043
+ "extraParams": {
3044
+ "type": "object",
3045
+ "additionalProperties": {}
3046
+ },
3047
+ "contextLength": {
3048
+ "type": "integer",
3049
+ "exclusiveMinimum": 0
3050
+ },
3051
+ "enableThinking": {
3052
+ "type": "boolean"
3053
+ }
3054
+ },
3055
+ "additionalProperties": true
3056
+ }
3057
+ },
3058
+ "additionalProperties": true
3059
+ }
3060
+ },
3061
+ "additionalProperties": true
3062
+ },
3063
+ "proactiveMaintenance": {
3064
+ "type": "object",
3065
+ "properties": {
3066
+ "engine": {
3067
+ "type": "string",
3068
+ "maxLength": 63,
3069
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3070
+ },
3071
+ "model": {
3072
+ "type": "string",
3073
+ "minLength": 1
3074
+ },
3075
+ "llm": {
3076
+ "type": "object",
3077
+ "properties": {
3078
+ "temperature": {
3079
+ "type": "number"
3080
+ },
3081
+ "maxTokens": {
3082
+ "type": "integer",
3083
+ "exclusiveMinimum": 0
3084
+ },
3085
+ "supportsJsonSchema": {
3086
+ "type": "boolean"
3087
+ },
3088
+ "extraParams": {
3089
+ "type": "object",
3090
+ "additionalProperties": {}
3091
+ },
3092
+ "contextLength": {
3093
+ "type": "integer",
3094
+ "exclusiveMinimum": 0
3095
+ },
3096
+ "enableThinking": {
3097
+ "type": "boolean"
3098
+ }
3099
+ },
3100
+ "additionalProperties": true
3101
+ },
3102
+ "enabled": {
3103
+ "type": "boolean"
3104
+ },
3105
+ "timeoutMs": {
3106
+ "anyOf": [
3107
+ {
3108
+ "type": "integer",
3109
+ "exclusiveMinimum": 0
3110
+ },
3111
+ {
3112
+ "type": "null"
3113
+ }
3114
+ ]
3115
+ },
3116
+ "dueDays": {
3117
+ "type": "integer",
3118
+ "minimum": 0
3119
+ },
3120
+ "maxPerRun": {
3121
+ "type": "integer",
3122
+ "exclusiveMinimum": 0
3123
+ },
3124
+ "limit": {
3125
+ "type": "integer",
3126
+ "exclusiveMinimum": 0
3127
+ }
3128
+ },
3129
+ "additionalProperties": true
3130
+ }
3131
+ },
3132
+ "additionalProperties": true
3133
+ },
3134
+ "limit": {
3135
+ "type": "integer",
3136
+ "exclusiveMinimum": 0
3137
+ },
3138
+ "sync": {
3139
+ "type": "object",
3140
+ "properties": {
3141
+ "enabled": {
3142
+ "type": "boolean"
3143
+ },
3144
+ "push": {
3145
+ "type": "boolean"
3146
+ },
3147
+ "message": {
3148
+ "type": "string",
3149
+ "minLength": 1
3150
+ }
3151
+ },
3152
+ "additionalProperties": true
3153
+ }
3154
+ },
3155
+ "additionalProperties": true
3156
+ },
3157
+ "propertyNames": {
3158
+ "maxLength": 63,
3159
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3160
+ }
3161
+ },
3162
+ "utilityDecay": {
3163
+ "type": "object",
3164
+ "properties": {
3165
+ "halfLifeDays": {
3166
+ "type": "number",
3167
+ "minimum": 0.1
3168
+ },
3169
+ "feedbackStabilityBoost": {
3170
+ "type": "number",
3171
+ "minimum": 1
3172
+ }
3173
+ },
3174
+ "additionalProperties": true
3175
+ },
3176
+ "eventRetentionDays": {
3177
+ "type": "number",
3178
+ "minimum": 0
3179
+ },
3180
+ "salience": {
3181
+ "type": "object",
3182
+ "properties": {
3183
+ "outcomeWeightEnabled": {
3184
+ "type": "boolean"
3185
+ },
3186
+ "salienceThreshold": {
3187
+ "type": "number",
3188
+ "minimum": 0,
3189
+ "maximum": 1
3190
+ },
3191
+ "replayBudget": {
3192
+ "type": "integer",
3193
+ "minimum": 0
3194
+ }
3195
+ },
3196
+ "additionalProperties": true
3197
+ },
3198
+ "collapseDetector": {
3199
+ "type": "object",
3200
+ "properties": {
3201
+ "enabled": {
3202
+ "type": "boolean"
3203
+ },
3204
+ "canaryCount": {
3205
+ "type": "integer",
3206
+ "minimum": 3,
3207
+ "maximum": 200
3208
+ },
3209
+ "k": {
3210
+ "type": "integer",
3211
+ "minimum": 1,
3212
+ "maximum": 100
3213
+ },
3214
+ "windowCycles": {
3215
+ "type": "integer",
3216
+ "minimum": 2,
3217
+ "maximum": 50
3218
+ },
3219
+ "recallDropThreshold": {
3220
+ "type": "number",
3221
+ "minimum": 0,
3222
+ "maximum": 1
3223
+ },
3224
+ "entropyDropThreshold": {
3225
+ "type": "number",
3226
+ "minimum": 0,
3227
+ "maximum": 1
3228
+ },
3229
+ "retentionDays": {
3230
+ "type": "integer",
3231
+ "minimum": 1
3232
+ }
3233
+ },
3234
+ "additionalProperties": true
3235
+ },
3236
+ "stateGc": {
3237
+ "type": "object",
3238
+ "properties": {
3239
+ "collect": {
3240
+ "type": "boolean"
3241
+ }
3242
+ },
3243
+ "additionalProperties": true
3244
+ }
3245
+ },
3246
+ "additionalProperties": true
3247
+ },
3248
+ "workflow": {
3249
+ "type": "object",
3250
+ "properties": {
3251
+ "maxConcurrency": {
3252
+ "type": "integer",
3253
+ "exclusiveMinimum": 0
3254
+ }
3255
+ },
3256
+ "additionalProperties": true
3257
+ },
3258
+ "setup": {
3259
+ "type": "object",
3260
+ "properties": {},
3261
+ "additionalProperties": true
3262
+ },
3263
+ "experimental": {
3264
+ "type": "object",
3265
+ "properties": {
3266
+ "improveAutonomy": {
3267
+ "type": "boolean"
3268
+ },
3269
+ "workflowEngine": {
3270
+ "type": "boolean"
3271
+ }
3272
+ },
3273
+ "additionalProperties": true
3274
+ }
3275
+ },
3276
+ "required": [
3277
+ "configVersion"
3278
+ ],
3279
+ "additionalProperties": true
3280
+ },
3281
+ "LlmProfileConfig": {
3282
+ "type": "object",
3283
+ "properties": {
3284
+ "provider": {
3285
+ "type": "string"
3286
+ },
3287
+ "endpoint": {
3288
+ "type": "string"
3289
+ },
3290
+ "model": {
3291
+ "type": "string"
3292
+ },
3293
+ "apiKey": {
3294
+ "type": "string"
3295
+ },
3296
+ "temperature": {
3297
+ "type": "number"
3298
+ },
3299
+ "maxTokens": {
3300
+ "type": "integer",
3301
+ "exclusiveMinimum": 0
3302
+ },
3303
+ "timeoutMs": {
3304
+ "anyOf": [
3305
+ {
3306
+ "type": "integer",
3307
+ "exclusiveMinimum": 0
3308
+ },
3309
+ {
3310
+ "type": "null"
3311
+ }
3312
+ ]
3313
+ },
3314
+ "concurrency": {
3315
+ "type": "integer",
3316
+ "exclusiveMinimum": 0
3317
+ },
3318
+ "capabilities": {
3319
+ "type": "object",
3320
+ "properties": {
3321
+ "structuredOutput": {
3322
+ "type": "boolean"
3323
+ }
3324
+ },
3325
+ "additionalProperties": true
3326
+ },
3327
+ "extraParams": {
3328
+ "type": "object",
3329
+ "additionalProperties": {}
3330
+ },
3331
+ "contextLength": {
3332
+ "type": "integer",
3333
+ "exclusiveMinimum": 0
3334
+ },
3335
+ "enableThinking": {
3336
+ "type": "boolean"
3337
+ },
3338
+ "supportsJsonSchema": {
3339
+ "type": "boolean"
3340
+ }
3341
+ },
3342
+ "required": [
3343
+ "endpoint",
3344
+ "model"
3345
+ ],
3346
+ "additionalProperties": true
3347
+ },
3348
+ "EmbeddingConnectionConfig": {
3349
+ "type": "object",
3350
+ "properties": {
3351
+ "provider": {
3352
+ "type": "string"
3353
+ },
3354
+ "endpoint": {
3355
+ "type": "string"
3356
+ },
3357
+ "model": {
3358
+ "type": "string"
3359
+ },
3360
+ "apiKey": {
3361
+ "type": "string",
3362
+ "pattern": "^\\$[A-Za-z_][A-Za-z0-9_]*$|^\\$\\{[A-Za-z_][A-Za-z0-9_]*\\}$"
3363
+ },
3364
+ "dimension": {
3365
+ "type": "integer",
3366
+ "exclusiveMinimum": 0
3367
+ },
3368
+ "localModel": {
3369
+ "type": "string",
3370
+ "minLength": 1
3371
+ },
3372
+ "maxTokens": {
3373
+ "type": "integer",
3374
+ "exclusiveMinimum": 0
3375
+ },
3376
+ "batchSize": {
3377
+ "type": "integer",
3378
+ "exclusiveMinimum": 0
3379
+ },
3380
+ "chunkSize": {
3381
+ "type": "integer",
3382
+ "exclusiveMinimum": 0
3383
+ },
3384
+ "contextLength": {
3385
+ "type": "integer",
3386
+ "exclusiveMinimum": 0
3387
+ },
3388
+ "ollamaOptions": {
3389
+ "type": "object",
3390
+ "properties": {
3391
+ "num_ctx": {
3392
+ "type": "integer",
3393
+ "exclusiveMinimum": 0
3394
+ }
3395
+ },
3396
+ "additionalProperties": true
3397
+ }
3398
+ },
3399
+ "additionalProperties": true
3400
+ },
3401
+ "ImproveProcessConfig": {
3402
+ "type": "object",
3403
+ "properties": {
3404
+ "engine": {
3405
+ "type": "string",
3406
+ "maxLength": 63,
3407
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3408
+ },
3409
+ "model": {
3410
+ "type": "string",
3411
+ "minLength": 1
3412
+ },
3413
+ "llm": {
3414
+ "type": "object",
3415
+ "properties": {
3416
+ "temperature": {
3417
+ "type": "number"
3418
+ },
3419
+ "maxTokens": {
3420
+ "type": "integer",
3421
+ "exclusiveMinimum": 0
3422
+ },
3423
+ "supportsJsonSchema": {
3424
+ "type": "boolean"
3425
+ },
3426
+ "extraParams": {
3427
+ "type": "object",
3428
+ "additionalProperties": {}
3429
+ },
3430
+ "contextLength": {
3431
+ "type": "integer",
3432
+ "exclusiveMinimum": 0
3433
+ },
3434
+ "enableThinking": {
3435
+ "type": "boolean"
3436
+ }
3437
+ },
3438
+ "additionalProperties": true
3439
+ },
3440
+ "enabled": {
3441
+ "type": "boolean"
3442
+ },
3443
+ "timeoutMs": {
3444
+ "anyOf": [
3445
+ {
3446
+ "type": "integer",
3447
+ "exclusiveMinimum": 0
3448
+ },
3449
+ {
3450
+ "type": "null"
3451
+ }
3452
+ ]
3453
+ },
3454
+ "allowedTypes": {
3455
+ "type": "array",
3456
+ "items": {
3457
+ "type": "string",
3458
+ "minLength": 1
3459
+ }
3460
+ },
3461
+ "limit": {
3462
+ "type": "integer",
3463
+ "exclusiveMinimum": 0
3464
+ },
3465
+ "qualityGate": {
3466
+ "type": "object",
3467
+ "properties": {
3468
+ "enabled": {
3469
+ "type": "boolean"
3470
+ }
3471
+ },
3472
+ "additionalProperties": true
3473
+ },
3474
+ "lowValueFilter": {
3475
+ "type": "object",
3476
+ "properties": {
3477
+ "enabled": {
3478
+ "type": "boolean"
3479
+ }
3480
+ },
3481
+ "additionalProperties": true
3482
+ },
3483
+ "requirePlannedRefs": {
3484
+ "type": "boolean"
3485
+ },
3486
+ "cls": {
3487
+ "type": "object",
3488
+ "properties": {
3489
+ "enabled": {
3490
+ "type": "boolean"
3491
+ },
3492
+ "adjacentCount": {
3493
+ "type": "integer",
3494
+ "minimum": 1
3495
+ }
3496
+ },
3497
+ "additionalProperties": true
3498
+ },
3499
+ "fidelityCheck": {
3500
+ "type": "object",
3501
+ "properties": {
3502
+ "enabled": {
3503
+ "type": "boolean"
3504
+ }
3505
+ },
3506
+ "additionalProperties": true
3507
+ },
3508
+ "minPoolSize": {
3509
+ "type": "integer",
3510
+ "minimum": 0
3511
+ },
3512
+ "maxChunkSize": {
3513
+ "type": "integer",
3514
+ "minimum": 1,
3515
+ "maximum": 50
3516
+ },
3517
+ "incrementalSince": {
3518
+ "type": "string"
3519
+ },
3520
+ "neighborsPerChanged": {
3521
+ "type": "integer",
3522
+ "minimum": 1
3523
+ },
3524
+ "p90ChunkSecondsDefault": {
3525
+ "type": "number",
3526
+ "exclusiveMinimum": 0
3527
+ },
3528
+ "antiCollapse": {
3529
+ "type": "object",
3530
+ "properties": {
3531
+ "enabled": {
3532
+ "type": "boolean"
3533
+ },
3534
+ "maxGeneration": {
3535
+ "type": "integer",
3536
+ "minimum": 1
3537
+ },
3538
+ "lexicalDiversityCheck": {
3539
+ "type": "boolean"
3540
+ },
3541
+ "randomClusterFraction": {
3542
+ "type": "number",
3543
+ "minimum": 0,
3544
+ "maximum": 1
3545
+ },
3546
+ "mergeInformationFloor": {
3547
+ "type": "boolean"
3548
+ },
3549
+ "minSpecificityRetention": {
3550
+ "type": "number",
3551
+ "minimum": 0,
3552
+ "maximum": 1
3553
+ }
3554
+ },
3555
+ "additionalProperties": true
3556
+ },
3557
+ "contradictionDetection": {
3558
+ "type": "object",
3559
+ "properties": {
3560
+ "enabled": {
3561
+ "type": "boolean"
3562
+ }
3563
+ },
3564
+ "additionalProperties": true
3565
+ },
3566
+ "minPendingCount": {
3567
+ "type": "integer",
3568
+ "minimum": 0
3569
+ },
3570
+ "topN": {
3571
+ "type": "integer",
3572
+ "exclusiveMinimum": 0
3573
+ },
3574
+ "includeTypes": {
3575
+ "type": "array",
3576
+ "items": {
3577
+ "type": "string",
3578
+ "minLength": 1
3579
+ },
3580
+ "minItems": 1
3581
+ },
3582
+ "batchSize": {
3583
+ "type": "integer",
3584
+ "exclusiveMinimum": 0
3585
+ },
3586
+ "fullScan": {
3587
+ "type": "boolean"
3588
+ },
3589
+ "defaultSince": {
3590
+ "type": "string",
3591
+ "minLength": 1
3592
+ },
3593
+ "maxTotalChars": {
3594
+ "type": "integer",
3595
+ "exclusiveMinimum": 0
3596
+ },
3597
+ "minContentChars": {
3598
+ "type": "integer",
3599
+ "minimum": 0
3600
+ },
3601
+ "triage": {
3602
+ "type": "object",
3603
+ "properties": {
3604
+ "enabled": {
3605
+ "type": "boolean"
3606
+ },
3607
+ "minScore": {
3608
+ "type": "number",
3609
+ "minimum": 0
3610
+ }
3611
+ },
3612
+ "additionalProperties": true
3613
+ },
3614
+ "minNewSessions": {
3615
+ "type": "integer",
3616
+ "minimum": 0
3617
+ },
3618
+ "maxSessionsPerRun": {
3619
+ "type": "integer",
3620
+ "minimum": 0
3621
+ },
3622
+ "indexSessions": {
3623
+ "type": "boolean"
3624
+ },
3625
+ "minSessionDuration": {
3626
+ "type": "number",
3627
+ "minimum": 0
3628
+ },
3629
+ "applyMode": {
3630
+ "type": "string",
3631
+ "enum": [
3632
+ "queue",
3633
+ "promote"
3634
+ ]
3635
+ },
3636
+ "policy": {
3637
+ "type": "string",
3638
+ "minLength": 1
3639
+ },
3640
+ "maxAcceptsPerRun": {
3641
+ "type": "integer",
3642
+ "exclusiveMinimum": 0
3643
+ },
3644
+ "maxDiffLines": {
3645
+ "type": "integer",
3646
+ "exclusiveMinimum": 0
3647
+ },
3648
+ "rejectEmpty": {
3649
+ "type": "boolean"
3650
+ },
3651
+ "judgment": {
3652
+ "type": "object",
3653
+ "properties": {
3654
+ "engine": {
3655
+ "type": "string",
3656
+ "maxLength": 63,
3657
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3658
+ },
3659
+ "model": {
3660
+ "type": "string",
3661
+ "minLength": 1
3662
+ },
3663
+ "timeoutMs": {
3664
+ "anyOf": [
3665
+ {
3666
+ "type": "integer",
3667
+ "exclusiveMinimum": 0
3668
+ },
3669
+ {
3670
+ "type": "null"
3671
+ }
3672
+ ]
3673
+ },
3674
+ "llm": {
3675
+ "type": "object",
3676
+ "properties": {
3677
+ "temperature": {
3678
+ "type": "number"
3679
+ },
3680
+ "maxTokens": {
3681
+ "type": "integer",
3682
+ "exclusiveMinimum": 0
3683
+ },
3684
+ "supportsJsonSchema": {
3685
+ "type": "boolean"
3686
+ },
3687
+ "extraParams": {
3688
+ "type": "object",
3689
+ "additionalProperties": {}
3690
+ },
3691
+ "contextLength": {
3692
+ "type": "integer",
3693
+ "exclusiveMinimum": 0
3694
+ },
3695
+ "enableThinking": {
3696
+ "type": "boolean"
3697
+ }
3698
+ },
3699
+ "additionalProperties": true
3700
+ }
3701
+ },
3702
+ "additionalProperties": true
3703
+ },
3704
+ "dueDays": {
3705
+ "type": "integer",
3706
+ "minimum": 0
3707
+ },
3708
+ "maxPerRun": {
3709
+ "type": "integer",
3710
+ "exclusiveMinimum": 0
3711
+ }
3712
+ },
3713
+ "additionalProperties": true
3714
+ },
3715
+ "ImproveProfileConfig": {
3716
+ "type": "object",
3717
+ "properties": {
3718
+ "engine": {
3719
+ "type": "string",
3720
+ "maxLength": 63,
3721
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3722
+ },
3723
+ "model": {
3724
+ "type": "string",
3725
+ "minLength": 1
3726
+ },
3727
+ "timeoutMs": {
3728
+ "anyOf": [
3729
+ {
3730
+ "type": "integer",
3731
+ "exclusiveMinimum": 0
3732
+ },
3733
+ {
3734
+ "type": "null"
3735
+ }
3736
+ ]
3737
+ },
3738
+ "llm": {
3739
+ "type": "object",
3740
+ "properties": {
3741
+ "temperature": {
3742
+ "type": "number"
3743
+ },
3744
+ "maxTokens": {
3745
+ "type": "integer",
3746
+ "exclusiveMinimum": 0
3747
+ },
3748
+ "supportsJsonSchema": {
3749
+ "type": "boolean"
3750
+ },
3751
+ "extraParams": {
3752
+ "type": "object",
3753
+ "additionalProperties": {}
3754
+ },
3755
+ "contextLength": {
3756
+ "type": "integer",
3757
+ "exclusiveMinimum": 0
3758
+ },
3759
+ "enableThinking": {
3760
+ "type": "boolean"
3761
+ }
3762
+ },
3763
+ "additionalProperties": true
3764
+ },
3765
+ "description": {
3766
+ "type": "string",
3767
+ "minLength": 1
3768
+ },
3769
+ "processes": {
3770
+ "type": "object",
3771
+ "properties": {
3772
+ "reflect": {
3773
+ "type": "object",
3774
+ "properties": {
3775
+ "engine": {
3776
+ "type": "string",
3777
+ "maxLength": 63,
3778
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3779
+ },
3780
+ "model": {
3781
+ "type": "string",
3782
+ "minLength": 1
3783
+ },
3784
+ "llm": {
3785
+ "type": "object",
3786
+ "properties": {
3787
+ "temperature": {
3788
+ "type": "number"
3789
+ },
3790
+ "maxTokens": {
3791
+ "type": "integer",
3792
+ "exclusiveMinimum": 0
3793
+ },
3794
+ "supportsJsonSchema": {
3795
+ "type": "boolean"
3796
+ },
3797
+ "extraParams": {
3798
+ "type": "object",
3799
+ "additionalProperties": {}
3800
+ },
3801
+ "contextLength": {
3802
+ "type": "integer",
3803
+ "exclusiveMinimum": 0
3804
+ },
3805
+ "enableThinking": {
3806
+ "type": "boolean"
3807
+ }
3808
+ },
3809
+ "additionalProperties": true
3810
+ },
3811
+ "enabled": {
3812
+ "type": "boolean"
3813
+ },
3814
+ "timeoutMs": {
3815
+ "anyOf": [
3816
+ {
3817
+ "type": "integer",
3818
+ "exclusiveMinimum": 0
3819
+ },
3820
+ {
3821
+ "type": "null"
3822
+ }
3823
+ ]
3824
+ },
3825
+ "allowedTypes": {
3826
+ "type": "array",
3827
+ "items": {
3828
+ "type": "string",
3829
+ "minLength": 1
3830
+ }
3831
+ },
3832
+ "limit": {
3833
+ "type": "integer",
3834
+ "exclusiveMinimum": 0
3835
+ },
3836
+ "qualityGate": {
3837
+ "type": "object",
3838
+ "properties": {
3839
+ "enabled": {
3840
+ "type": "boolean"
3841
+ }
3842
+ },
3843
+ "additionalProperties": true
3844
+ },
3845
+ "lowValueFilter": {
3846
+ "type": "object",
3847
+ "properties": {
3848
+ "enabled": {
3849
+ "type": "boolean"
3850
+ }
3851
+ },
3852
+ "additionalProperties": true
3853
+ }
3854
+ },
3855
+ "additionalProperties": true
3856
+ },
3857
+ "distill": {
3858
+ "type": "object",
3859
+ "properties": {
3860
+ "engine": {
3861
+ "type": "string",
3862
+ "maxLength": 63,
3863
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3864
+ },
3865
+ "model": {
3866
+ "type": "string",
3867
+ "minLength": 1
3868
+ },
3869
+ "llm": {
3870
+ "type": "object",
3871
+ "properties": {
3872
+ "temperature": {
3873
+ "type": "number"
3874
+ },
3875
+ "maxTokens": {
3876
+ "type": "integer",
3877
+ "exclusiveMinimum": 0
3878
+ },
3879
+ "supportsJsonSchema": {
3880
+ "type": "boolean"
3881
+ },
3882
+ "extraParams": {
3883
+ "type": "object",
3884
+ "additionalProperties": {}
3885
+ },
3886
+ "contextLength": {
3887
+ "type": "integer",
3888
+ "exclusiveMinimum": 0
3889
+ },
3890
+ "enableThinking": {
3891
+ "type": "boolean"
3892
+ }
3893
+ },
3894
+ "additionalProperties": true
3895
+ },
3896
+ "enabled": {
3897
+ "type": "boolean"
3898
+ },
3899
+ "timeoutMs": {
3900
+ "anyOf": [
3901
+ {
3902
+ "type": "integer",
3903
+ "exclusiveMinimum": 0
3904
+ },
3905
+ {
3906
+ "type": "null"
3907
+ }
3908
+ ]
3909
+ },
3910
+ "allowedTypes": {
3911
+ "type": "array",
3912
+ "items": {
3913
+ "type": "string",
3914
+ "minLength": 1
3915
+ }
3916
+ },
3917
+ "limit": {
3918
+ "type": "integer",
3919
+ "exclusiveMinimum": 0
3920
+ },
3921
+ "qualityGate": {
3922
+ "type": "object",
3923
+ "properties": {
3924
+ "enabled": {
3925
+ "type": "boolean"
3926
+ }
3927
+ },
3928
+ "additionalProperties": true
3929
+ },
3930
+ "requirePlannedRefs": {
3931
+ "type": "boolean"
3932
+ },
3933
+ "cls": {
3934
+ "type": "object",
3935
+ "properties": {
3936
+ "enabled": {
3937
+ "type": "boolean"
3938
+ },
3939
+ "adjacentCount": {
3940
+ "type": "integer",
3941
+ "minimum": 1
3942
+ }
3943
+ },
3944
+ "additionalProperties": true
3945
+ },
3946
+ "fidelityCheck": {
3947
+ "type": "object",
3948
+ "properties": {
3949
+ "enabled": {
3950
+ "type": "boolean"
3951
+ }
3952
+ },
3953
+ "additionalProperties": true
3954
+ }
3955
+ },
3956
+ "additionalProperties": true
3957
+ },
3958
+ "consolidate": {
3959
+ "type": "object",
3960
+ "properties": {
3961
+ "engine": {
3962
+ "type": "string",
3963
+ "maxLength": 63,
3964
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3965
+ },
3966
+ "model": {
3967
+ "type": "string",
3968
+ "minLength": 1
3969
+ },
3970
+ "llm": {
3971
+ "type": "object",
3972
+ "properties": {
3973
+ "temperature": {
3974
+ "type": "number"
3975
+ },
3976
+ "maxTokens": {
3977
+ "type": "integer",
3978
+ "exclusiveMinimum": 0
3979
+ },
3980
+ "supportsJsonSchema": {
3981
+ "type": "boolean"
3982
+ },
3983
+ "extraParams": {
3984
+ "type": "object",
3985
+ "additionalProperties": {}
3986
+ },
3987
+ "contextLength": {
3988
+ "type": "integer",
3989
+ "exclusiveMinimum": 0
3990
+ },
3991
+ "enableThinking": {
3992
+ "type": "boolean"
3993
+ }
3994
+ },
3995
+ "additionalProperties": true
3996
+ },
3997
+ "enabled": {
3998
+ "type": "boolean"
3999
+ },
4000
+ "timeoutMs": {
4001
+ "anyOf": [
4002
+ {
4003
+ "type": "integer",
4004
+ "exclusiveMinimum": 0
4005
+ },
4006
+ {
4007
+ "type": "null"
4008
+ }
4009
+ ]
4010
+ },
4011
+ "allowedTypes": {
4012
+ "type": "array",
4013
+ "items": {
4014
+ "type": "string",
4015
+ "minLength": 1
4016
+ }
4017
+ },
4018
+ "limit": {
4019
+ "type": "integer",
4020
+ "exclusiveMinimum": 0
4021
+ },
4022
+ "minPoolSize": {
4023
+ "type": "integer",
4024
+ "minimum": 0
4025
+ },
4026
+ "maxChunkSize": {
4027
+ "type": "integer",
4028
+ "minimum": 1,
4029
+ "maximum": 50
4030
+ },
4031
+ "incrementalSince": {
4032
+ "type": "string"
4033
+ },
4034
+ "neighborsPerChanged": {
4035
+ "type": "integer",
4036
+ "minimum": 1
4037
+ },
4038
+ "p90ChunkSecondsDefault": {
4039
+ "type": "number",
4040
+ "exclusiveMinimum": 0
4041
+ },
4042
+ "antiCollapse": {
4043
+ "type": "object",
4044
+ "properties": {
4045
+ "enabled": {
4046
+ "type": "boolean"
4047
+ },
4048
+ "maxGeneration": {
4049
+ "type": "integer",
4050
+ "minimum": 1
4051
+ },
4052
+ "lexicalDiversityCheck": {
4053
+ "type": "boolean"
4054
+ },
4055
+ "randomClusterFraction": {
4056
+ "type": "number",
4057
+ "minimum": 0,
4058
+ "maximum": 1
4059
+ },
4060
+ "mergeInformationFloor": {
4061
+ "type": "boolean"
4062
+ },
4063
+ "minSpecificityRetention": {
4064
+ "type": "number",
4065
+ "minimum": 0,
4066
+ "maximum": 1
4067
+ }
4068
+ },
4069
+ "additionalProperties": true
4070
+ },
4071
+ "contradictionDetection": {
4072
+ "type": "object",
4073
+ "properties": {
4074
+ "enabled": {
4075
+ "type": "boolean"
4076
+ }
4077
+ },
4078
+ "additionalProperties": true
4079
+ }
4080
+ },
4081
+ "additionalProperties": true
4082
+ },
4083
+ "memoryInference": {
4084
+ "type": "object",
4085
+ "properties": {
4086
+ "engine": {
4087
+ "type": "string",
4088
+ "maxLength": 63,
4089
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
4090
+ },
4091
+ "model": {
4092
+ "type": "string",
4093
+ "minLength": 1
4094
+ },
4095
+ "llm": {
4096
+ "type": "object",
4097
+ "properties": {
4098
+ "temperature": {
4099
+ "type": "number"
4100
+ },
4101
+ "maxTokens": {
4102
+ "type": "integer",
4103
+ "exclusiveMinimum": 0
4104
+ },
4105
+ "supportsJsonSchema": {
4106
+ "type": "boolean"
4107
+ },
4108
+ "extraParams": {
4109
+ "type": "object",
4110
+ "additionalProperties": {}
4111
+ },
4112
+ "contextLength": {
4113
+ "type": "integer",
4114
+ "exclusiveMinimum": 0
4115
+ },
4116
+ "enableThinking": {
4117
+ "type": "boolean"
4118
+ }
4119
+ },
4120
+ "additionalProperties": true
4121
+ },
4122
+ "enabled": {
4123
+ "type": "boolean"
4124
+ },
4125
+ "timeoutMs": {
4126
+ "anyOf": [
4127
+ {
4128
+ "type": "integer",
4129
+ "exclusiveMinimum": 0
4130
+ },
4131
+ {
4132
+ "type": "null"
4133
+ }
4134
+ ]
4135
+ },
4136
+ "minPendingCount": {
4137
+ "type": "integer",
4138
+ "minimum": 0
4139
+ },
4140
+ "cls": {
4141
+ "type": "object",
4142
+ "properties": {
4143
+ "enabled": {
4144
+ "type": "boolean"
4145
+ },
4146
+ "adjacentCount": {
4147
+ "type": "integer",
4148
+ "minimum": 1
4149
+ }
4150
+ },
4151
+ "additionalProperties": true
4152
+ }
4153
+ },
4154
+ "additionalProperties": true
4155
+ },
4156
+ "graphExtraction": {
4157
+ "type": "object",
4158
+ "properties": {
4159
+ "engine": {
4160
+ "type": "string",
4161
+ "maxLength": 63,
4162
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
4163
+ },
4164
+ "model": {
4165
+ "type": "string",
4166
+ "minLength": 1
4167
+ },
4168
+ "llm": {
4169
+ "type": "object",
4170
+ "properties": {
4171
+ "temperature": {
4172
+ "type": "number"
4173
+ },
4174
+ "maxTokens": {
4175
+ "type": "integer",
4176
+ "exclusiveMinimum": 0
4177
+ },
4178
+ "supportsJsonSchema": {
4179
+ "type": "boolean"
4180
+ },
4181
+ "extraParams": {
4182
+ "type": "object",
4183
+ "additionalProperties": {}
4184
+ },
4185
+ "contextLength": {
4186
+ "type": "integer",
4187
+ "exclusiveMinimum": 0
4188
+ },
4189
+ "enableThinking": {
4190
+ "type": "boolean"
4191
+ }
4192
+ },
4193
+ "additionalProperties": true
4194
+ },
4195
+ "enabled": {
4196
+ "type": "boolean"
4197
+ },
4198
+ "timeoutMs": {
4199
+ "anyOf": [
4200
+ {
4201
+ "type": "integer",
4202
+ "exclusiveMinimum": 0
4203
+ },
4204
+ {
4205
+ "type": "null"
4206
+ }
4207
+ ]
4208
+ },
4209
+ "topN": {
4210
+ "type": "integer",
4211
+ "exclusiveMinimum": 0
4212
+ },
4213
+ "includeTypes": {
4214
+ "type": "array",
4215
+ "items": {
4216
+ "type": "string",
4217
+ "minLength": 1
4218
+ },
4219
+ "minItems": 1
4220
+ },
4221
+ "batchSize": {
4222
+ "type": "integer",
4223
+ "exclusiveMinimum": 0
4224
+ },
4225
+ "fullScan": {
4226
+ "type": "boolean"
4227
+ }
4228
+ },
4229
+ "additionalProperties": true
4230
+ },
4231
+ "extract": {
4232
+ "type": "object",
4233
+ "properties": {
4234
+ "engine": {
4235
+ "type": "string",
4236
+ "maxLength": 63,
4237
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
4238
+ },
4239
+ "model": {
4240
+ "type": "string",
4241
+ "minLength": 1
4242
+ },
4243
+ "llm": {
4244
+ "type": "object",
4245
+ "properties": {
4246
+ "temperature": {
4247
+ "type": "number"
4248
+ },
4249
+ "maxTokens": {
4250
+ "type": "integer",
4251
+ "exclusiveMinimum": 0
4252
+ },
4253
+ "supportsJsonSchema": {
4254
+ "type": "boolean"
4255
+ },
4256
+ "extraParams": {
4257
+ "type": "object",
4258
+ "additionalProperties": {}
4259
+ },
4260
+ "contextLength": {
4261
+ "type": "integer",
4262
+ "exclusiveMinimum": 0
4263
+ },
4264
+ "enableThinking": {
4265
+ "type": "boolean"
4266
+ }
4267
+ },
4268
+ "additionalProperties": true
4269
+ },
4270
+ "enabled": {
4271
+ "type": "boolean"
4272
+ },
4273
+ "timeoutMs": {
4274
+ "anyOf": [
4275
+ {
4276
+ "type": "integer",
4277
+ "exclusiveMinimum": 0
4278
+ },
4279
+ {
4280
+ "type": "null"
4281
+ }
4282
+ ]
4283
+ },
4284
+ "defaultSince": {
4285
+ "type": "string",
4286
+ "minLength": 1
4287
+ },
4288
+ "maxTotalChars": {
4289
+ "type": "integer",
4290
+ "exclusiveMinimum": 0
4291
+ },
4292
+ "minContentChars": {
4293
+ "type": "integer",
4294
+ "minimum": 0
4295
+ },
4296
+ "triage": {
4297
+ "type": "object",
4298
+ "properties": {
4299
+ "enabled": {
4300
+ "type": "boolean"
4301
+ },
4302
+ "minScore": {
4303
+ "type": "number",
4304
+ "minimum": 0
4305
+ }
4306
+ },
4307
+ "additionalProperties": true
4308
+ },
4309
+ "minNewSessions": {
4310
+ "type": "integer",
4311
+ "minimum": 0
4312
+ },
4313
+ "maxSessionsPerRun": {
4314
+ "type": "integer",
4315
+ "minimum": 0
4316
+ },
4317
+ "indexSessions": {
4318
+ "type": "boolean"
4319
+ },
4320
+ "minSessionDuration": {
4321
+ "type": "number",
4322
+ "minimum": 0
4323
+ }
4324
+ },
4325
+ "additionalProperties": true
4326
+ },
4327
+ "validation": {
4328
+ "type": "object",
4329
+ "properties": {
4330
+ "engine": {
4331
+ "type": "string",
4332
+ "maxLength": 63,
4333
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
4334
+ },
4335
+ "model": {
4336
+ "type": "string",
4337
+ "minLength": 1
4338
+ },
4339
+ "llm": {
4340
+ "type": "object",
4341
+ "properties": {
4342
+ "temperature": {
4343
+ "type": "number"
4344
+ },
4345
+ "maxTokens": {
4346
+ "type": "integer",
4347
+ "exclusiveMinimum": 0
4348
+ },
4349
+ "supportsJsonSchema": {
4350
+ "type": "boolean"
4351
+ },
4352
+ "extraParams": {
4353
+ "type": "object",
4354
+ "additionalProperties": {}
4355
+ },
4356
+ "contextLength": {
4357
+ "type": "integer",
4358
+ "exclusiveMinimum": 0
4359
+ },
4360
+ "enableThinking": {
4361
+ "type": "boolean"
4362
+ }
4363
+ },
4364
+ "additionalProperties": true
4365
+ },
4366
+ "enabled": {
4367
+ "type": "boolean"
4368
+ },
4369
+ "timeoutMs": {
4370
+ "anyOf": [
4371
+ {
4372
+ "type": "integer",
4373
+ "exclusiveMinimum": 0
4374
+ },
4375
+ {
4376
+ "type": "null"
4377
+ }
4378
+ ]
4379
+ }
4380
+ },
4381
+ "additionalProperties": true
4382
+ },
4383
+ "triage": {
4384
+ "type": "object",
4385
+ "properties": {
4386
+ "engine": {
4387
+ "type": "string",
4388
+ "maxLength": 63,
4389
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
4390
+ },
4391
+ "model": {
4392
+ "type": "string",
4393
+ "minLength": 1
4394
+ },
4395
+ "llm": {
4396
+ "type": "object",
4397
+ "properties": {
4398
+ "temperature": {
4399
+ "type": "number"
4400
+ },
4401
+ "maxTokens": {
4402
+ "type": "integer",
4403
+ "exclusiveMinimum": 0
4404
+ },
4405
+ "supportsJsonSchema": {
4406
+ "type": "boolean"
4407
+ },
4408
+ "extraParams": {
4409
+ "type": "object",
4410
+ "additionalProperties": {}
4411
+ },
4412
+ "contextLength": {
4413
+ "type": "integer",
4414
+ "exclusiveMinimum": 0
4415
+ },
4416
+ "enableThinking": {
4417
+ "type": "boolean"
4418
+ }
4419
+ },
4420
+ "additionalProperties": true
4421
+ },
4422
+ "enabled": {
4423
+ "type": "boolean"
4424
+ },
4425
+ "timeoutMs": {
4426
+ "anyOf": [
4427
+ {
4428
+ "type": "integer",
4429
+ "exclusiveMinimum": 0
4430
+ },
4431
+ {
4432
+ "type": "null"
4433
+ }
4434
+ ]
4435
+ },
4436
+ "applyMode": {
4437
+ "type": "string",
4438
+ "enum": [
4439
+ "queue",
4440
+ "promote"
4441
+ ]
4442
+ },
4443
+ "policy": {
4444
+ "type": "string",
4445
+ "minLength": 1
4446
+ },
4447
+ "maxAcceptsPerRun": {
4448
+ "type": "integer",
4449
+ "exclusiveMinimum": 0
4450
+ },
4451
+ "maxDiffLines": {
4452
+ "type": "integer",
4453
+ "exclusiveMinimum": 0
4454
+ },
4455
+ "rejectEmpty": {
4456
+ "type": "boolean"
4457
+ },
4458
+ "judgment": {
4459
+ "type": "object",
4460
+ "properties": {
4461
+ "engine": {
4462
+ "type": "string",
4463
+ "maxLength": 63,
4464
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
4465
+ },
4466
+ "model": {
4467
+ "type": "string",
4468
+ "minLength": 1
4469
+ },
4470
+ "timeoutMs": {
4471
+ "anyOf": [
4472
+ {
4473
+ "type": "integer",
4474
+ "exclusiveMinimum": 0
4475
+ },
4476
+ {
4477
+ "type": "null"
4478
+ }
4479
+ ]
4480
+ },
4481
+ "llm": {
4482
+ "type": "object",
4483
+ "properties": {
4484
+ "temperature": {
4485
+ "type": "number"
4486
+ },
4487
+ "maxTokens": {
4488
+ "type": "integer",
4489
+ "exclusiveMinimum": 0
4490
+ },
4491
+ "supportsJsonSchema": {
4492
+ "type": "boolean"
4493
+ },
4494
+ "extraParams": {
4495
+ "type": "object",
4496
+ "additionalProperties": {}
4497
+ },
4498
+ "contextLength": {
4499
+ "type": "integer",
4500
+ "exclusiveMinimum": 0
4501
+ },
4502
+ "enableThinking": {
4503
+ "type": "boolean"
4504
+ }
4505
+ },
4506
+ "additionalProperties": true
4507
+ }
4508
+ },
4509
+ "additionalProperties": true
4510
+ }
4511
+ },
4512
+ "additionalProperties": true
4513
+ },
4514
+ "proactiveMaintenance": {
4515
+ "type": "object",
4516
+ "properties": {
4517
+ "engine": {
4518
+ "type": "string",
4519
+ "maxLength": 63,
4520
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
4521
+ },
4522
+ "model": {
4523
+ "type": "string",
4524
+ "minLength": 1
4525
+ },
4526
+ "llm": {
4527
+ "type": "object",
4528
+ "properties": {
4529
+ "temperature": {
4530
+ "type": "number"
4531
+ },
4532
+ "maxTokens": {
4533
+ "type": "integer",
4534
+ "exclusiveMinimum": 0
4535
+ },
4536
+ "supportsJsonSchema": {
4537
+ "type": "boolean"
4538
+ },
4539
+ "extraParams": {
4540
+ "type": "object",
4541
+ "additionalProperties": {}
4542
+ },
4543
+ "contextLength": {
4544
+ "type": "integer",
4545
+ "exclusiveMinimum": 0
4546
+ },
4547
+ "enableThinking": {
4548
+ "type": "boolean"
4549
+ }
4550
+ },
4551
+ "additionalProperties": true
4552
+ },
4553
+ "enabled": {
4554
+ "type": "boolean"
4555
+ },
4556
+ "timeoutMs": {
4557
+ "anyOf": [
4558
+ {
4559
+ "type": "integer",
4560
+ "exclusiveMinimum": 0
4561
+ },
4562
+ {
4563
+ "type": "null"
4564
+ }
4565
+ ]
4566
+ },
4567
+ "dueDays": {
4568
+ "type": "integer",
4569
+ "minimum": 0
4570
+ },
4571
+ "maxPerRun": {
4572
+ "type": "integer",
4573
+ "exclusiveMinimum": 0
4574
+ },
4575
+ "limit": {
4576
+ "type": "integer",
4577
+ "exclusiveMinimum": 0
4578
+ }
4579
+ },
4580
+ "additionalProperties": true
4581
+ }
4582
+ },
4583
+ "additionalProperties": true
4584
+ },
4585
+ "limit": {
4586
+ "type": "integer",
4587
+ "exclusiveMinimum": 0
4588
+ },
4589
+ "sync": {
4590
+ "type": "object",
4591
+ "properties": {
4592
+ "enabled": {
4593
+ "type": "boolean"
4594
+ },
4595
+ "push": {
4596
+ "type": "boolean"
4597
+ },
4598
+ "message": {
4599
+ "type": "string",
4600
+ "minLength": 1
4601
+ }
4602
+ },
4603
+ "additionalProperties": true
4604
+ }
4605
+ },
4606
+ "additionalProperties": true
4607
+ },
4608
+ "RegistryConfigEntry": {
4609
+ "type": "object",
4610
+ "properties": {
4611
+ "url": {
4612
+ "type": "string"
4613
+ },
4614
+ "name": {
4615
+ "type": "string",
4616
+ "minLength": 1
4617
+ },
4618
+ "enabled": {
4619
+ "type": "boolean"
4620
+ },
4621
+ "provider": {
4622
+ "type": "string",
4623
+ "minLength": 1
4624
+ },
4625
+ "options": {
4626
+ "type": "object",
4627
+ "additionalProperties": {}
4628
+ }
4629
+ },
4630
+ "required": [
4631
+ "url"
4632
+ ],
4633
+ "additionalProperties": true
4634
+ }
4635
+ }
4636
+ }