akm-cli 0.9.1 → 0.9.2-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/CHANGELOG.md +103 -28
  2. package/README.md +3 -1
  3. package/SECURITY.md +1 -1
  4. package/STABILITY.md +1 -1
  5. package/dist/akm +2 -2
  6. package/dist/akm-migrate +2 -2
  7. package/dist/assets/hints/cli-hints-full.md +14 -9
  8. package/dist/assets/improve-strategies/proactive-maintenance.json +1 -1
  9. package/dist/assets/improve-strategies/reflect-distill.json +1 -1
  10. package/dist/assets/models.json +35 -0
  11. package/dist/assets/stash-skeleton/facts/conventions/backlinks.md +3 -4
  12. package/dist/assets/stash-skeleton/facts/conventions/organization.md +1 -3
  13. package/dist/assets/tasks/core/extract.yml +6 -5
  14. package/dist/assets/tasks/core/improve.yml +6 -5
  15. package/dist/assets/tasks/core/index-refresh.yml +6 -5
  16. package/dist/assets/tasks/core/sync.yml +6 -5
  17. package/dist/assets/tasks/core/version-check.yml +6 -5
  18. package/dist/assets/tasks/improve/akm-graph-refresh-weekly.yml +6 -5
  19. package/dist/assets/tasks/improve/akm-improve-catchup.yml +6 -5
  20. package/dist/assets/tasks/improve/akm-improve-consolidate.yml +6 -5
  21. package/dist/assets/tasks/improve/akm-improve-frequent.yml +6 -5
  22. package/dist/assets/tasks/improve/akm-improve-nightly.yml +6 -5
  23. package/dist/cli/confirm.js +2 -2
  24. package/dist/cli/parse-args.js +3 -24
  25. package/dist/cli/retired-commands.js +1 -1
  26. package/dist/cli/shared.js +2 -2
  27. package/dist/cli.js +11 -9
  28. package/dist/commands/agent/agent-dispatch.js +55 -89
  29. package/dist/commands/agent/contribute-cli.js +12 -45
  30. package/dist/commands/command/builtin-action.js +32 -0
  31. package/dist/commands/command/command-cli.js +99 -0
  32. package/dist/commands/command/command-execution.js +308 -0
  33. package/dist/commands/command/execution-source-loader.js +176 -0
  34. package/dist/commands/command/portable-template.js +60 -0
  35. package/dist/commands/config-cli.js +10 -4
  36. package/dist/commands/env/env.js +4 -2
  37. package/dist/commands/feedback-cli.js +1 -1
  38. package/dist/commands/health/checks.js +241 -29
  39. package/dist/commands/health/html-report.js +0 -14
  40. package/dist/commands/health/report-view-model.js +0 -1
  41. package/dist/commands/health/surfaces.js +6 -7
  42. package/dist/commands/health/types.js +0 -2
  43. package/dist/commands/health.js +63 -18
  44. package/dist/commands/improve/collapse-detector.js +5 -6
  45. package/dist/commands/improve/consolidate.js +251 -214
  46. package/dist/commands/improve/distill/promote-memory.js +71 -34
  47. package/dist/commands/improve/distill/quality-gate.js +17 -5
  48. package/dist/commands/improve/distill.js +232 -155
  49. package/dist/commands/improve/eligibility.js +112 -79
  50. package/dist/commands/improve/execution.js +57 -0
  51. package/dist/commands/improve/extract-cli.js +5 -5
  52. package/dist/commands/improve/extract-prompt.js +64 -22
  53. package/dist/commands/improve/extract.js +608 -360
  54. package/dist/commands/improve/improve-strategies.js +43 -14
  55. package/dist/commands/improve/improve.js +249 -29
  56. package/dist/commands/improve/loop-stages.js +11 -17
  57. package/dist/commands/improve/memory/memory-contradiction-detect.js +90 -66
  58. package/dist/commands/improve/outcome-loop.js +22 -38
  59. package/dist/commands/improve/planner.js +134 -0
  60. package/dist/commands/improve/preparation.js +730 -409
  61. package/dist/commands/improve/reflect.js +386 -223
  62. package/dist/commands/improve/run-context.js +3 -4
  63. package/dist/commands/improve/salience.js +6 -58
  64. package/dist/commands/improve/session-asset.js +12 -12
  65. package/dist/commands/lint/index.js +101 -29
  66. package/dist/commands/migrate-cli.js +11 -69
  67. package/dist/commands/migration-tool.js +6 -9
  68. package/dist/commands/models-cli.js +27 -0
  69. package/dist/commands/proposal/drain.js +258 -186
  70. package/dist/commands/proposal/proposal-cli.js +32 -10
  71. package/dist/commands/proposal/proposal.js +2 -5
  72. package/dist/commands/proposal/propose.js +192 -172
  73. package/dist/commands/proposal/repository.js +54 -91
  74. package/dist/commands/proposal/validators/proposal-validators.js +9 -7
  75. package/dist/commands/read/curate.js +53 -22
  76. package/dist/commands/read/registry-search.js +25 -9
  77. package/dist/commands/read/remember-cli.js +14 -2
  78. package/dist/commands/read/search.js +10 -4
  79. package/dist/commands/read/show.js +139 -153
  80. package/dist/commands/registry-cli.js +16 -7
  81. package/dist/commands/remember.js +33 -18
  82. package/dist/commands/sources/add-cli.js +19 -178
  83. package/dist/commands/sources/bundle-cli.js +15 -3
  84. package/dist/commands/sources/dangerous-env-audit.js +135 -0
  85. package/dist/commands/sources/info.js +2 -1
  86. package/dist/commands/sources/installed-stashes.js +901 -177
  87. package/dist/commands/sources/schema-repair.js +174 -95
  88. package/dist/commands/sources/self-update.js +30 -74
  89. package/dist/commands/sources/source-add.js +3 -5
  90. package/dist/commands/sources/sources-cli.js +2 -15
  91. package/dist/commands/sources/update-transaction.js +220 -0
  92. package/dist/commands/tasks/tasks-cli.js +3 -3
  93. package/dist/commands/tasks/tasks.js +736 -317
  94. package/dist/commands/workflow-cli.js +2 -2
  95. package/dist/core/adapter/adapters/agent-skills-adapter.js +3 -0
  96. package/dist/core/adapter/adapters/akm-adapter.js +85 -35
  97. package/dist/core/adapter/adapters/akm-lint.js +54 -39
  98. package/dist/core/adapter/adapters/akm-metadata.js +45 -45
  99. package/dist/core/adapter/adapters/akm-task-adapter.js +32 -49
  100. package/dist/core/adapter/adapters/akm-workflow-adapter.js +38 -23
  101. package/dist/core/adapter/adapters/dotenv-adapter.js +30 -1
  102. package/dist/core/adapter/adapters/generic-files-adapter.js +11 -0
  103. package/dist/core/adapter/adapters/index.js +0 -9
  104. package/dist/core/adapter/adapters/llm-wiki-adapter.js +4 -0
  105. package/dist/core/adapter/adapters/okf-adapter.js +4 -0
  106. package/dist/core/adapter/adapters/opencode-adapter.js +5 -8
  107. package/dist/core/adapter/adapters/tool-dir-shared.js +63 -6
  108. package/dist/core/adapter/adapters/website-snapshot-adapter.js +4 -0
  109. package/dist/core/adapter/execution-source.js +308 -0
  110. package/dist/core/adapter/recognize-match.js +36 -13
  111. package/dist/core/adapter/registry.js +0 -9
  112. package/dist/core/asset/stash-meta.js +94 -4
  113. package/dist/core/common.js +6 -11
  114. package/dist/core/config/config-io.js +3 -3
  115. package/dist/core/config/config-schema.js +18 -40
  116. package/dist/core/config/config-sources.js +11 -21
  117. package/dist/core/config/config-walker.js +31 -13
  118. package/dist/core/config/config.js +23 -26
  119. package/dist/core/config/schema/engines.js +8 -7
  120. package/dist/core/config/schema/improve-processes.js +29 -5
  121. package/dist/core/config/schema/index-config.js +0 -27
  122. package/dist/core/config/schema/primitives.js +1 -23
  123. package/dist/core/config/schema/sources-bundles.js +13 -16
  124. package/dist/core/errors.js +2 -0
  125. package/dist/core/events.js +68 -32
  126. package/dist/core/extra-params.js +1 -0
  127. package/dist/core/improve-result.js +315 -0
  128. package/dist/core/lesson-lint.js +0 -6
  129. package/dist/core/maintenance-barrier.js +4 -4
  130. package/dist/core/network-policy.js +152 -0
  131. package/dist/core/paths.js +1 -1
  132. package/dist/core/recognition-util.js +4 -4
  133. package/dist/core/registry-url.js +456 -0
  134. package/dist/core/state/migrations.js +161 -47
  135. package/dist/core/state-db.js +453 -80
  136. package/dist/core/system-error.js +32 -0
  137. package/dist/core/time.js +2 -12
  138. package/dist/core/write-source.js +0 -18
  139. package/dist/execution/directory-identity.js +52 -0
  140. package/dist/execution/executable-identity.js +107 -0
  141. package/dist/execution/guarded-source.js +398 -0
  142. package/dist/execution/json.js +95 -0
  143. package/dist/{commands/health/types-session-log.js → execution/limits.js} +2 -1
  144. package/dist/execution/record.js +55 -0
  145. package/dist/execution/resolved-request.js +730 -0
  146. package/dist/execution/source.js +320 -0
  147. package/dist/indexer/bundle-identity-guard.js +5 -4
  148. package/dist/indexer/db/graph-db.js +33 -0
  149. package/dist/indexer/graph/graph-boost.js +3 -4
  150. package/dist/indexer/graph/graph-extraction.js +562 -373
  151. package/dist/indexer/index-written-assets.js +78 -39
  152. package/dist/indexer/indexer.js +471 -432
  153. package/dist/indexer/installations.js +6 -0
  154. package/dist/indexer/lookup/adapter-concept-owner.js +283 -0
  155. package/dist/indexer/materialize-embeddings.js +155 -0
  156. package/dist/indexer/passes/memory-inference.js +227 -174
  157. package/dist/indexer/passes/metadata.js +263 -118
  158. package/dist/indexer/scan/doc-to-entry.js +7 -10
  159. package/dist/indexer/scan/drain-dir.js +51 -23
  160. package/dist/indexer/search/db-search.js +156 -50
  161. package/dist/indexer/search/fts-query.js +40 -40
  162. package/dist/indexer/search/ranking.js +36 -1
  163. package/dist/indexer/search/search-attribution.js +3 -1
  164. package/dist/indexer/search/search-fields.js +23 -14
  165. package/dist/indexer/search/search-hit-enrichers.js +1 -1
  166. package/dist/indexer/search/search-source.js +7 -16
  167. package/dist/indexer/search/semantic-status.js +10 -1
  168. package/dist/indexer/usage/show-usage.js +105 -0
  169. package/dist/indexer/usage/usage-events.js +7 -2
  170. package/dist/indexer/walk/matchers.js +40 -10
  171. package/dist/indexer/walk/path-resolver.js +5 -2
  172. package/dist/indexer/walk/walker.js +20 -2
  173. package/dist/integrations/agent/builder-shared.js +3 -6
  174. package/dist/integrations/agent/conversation-fallback.js +16 -0
  175. package/dist/integrations/agent/engine-resolution.js +87 -87
  176. package/dist/integrations/agent/execution-cascade.js +566 -0
  177. package/dist/integrations/agent/execution-definitions.js +211 -0
  178. package/dist/integrations/agent/execution-lowering.js +811 -0
  179. package/dist/integrations/agent/execution-preparation.js +67 -0
  180. package/dist/integrations/agent/index.js +0 -2
  181. package/dist/integrations/agent/inline-execution.js +74 -0
  182. package/dist/integrations/agent/model-map.js +515 -0
  183. package/dist/integrations/agent/persona-fallback.js +30 -0
  184. package/dist/integrations/agent/request-lowering.js +186 -0
  185. package/dist/integrations/agent/runner-dispatch.js +230 -37
  186. package/dist/integrations/agent/runner.js +12 -83
  187. package/dist/integrations/harnesses/aider/agent-builder.js +8 -0
  188. package/dist/integrations/harnesses/aider/index.js +0 -1
  189. package/dist/integrations/harnesses/amazonq/agent-builder.js +8 -0
  190. package/dist/integrations/harnesses/amazonq/index.js +0 -1
  191. package/dist/integrations/harnesses/claude/agent-builder.js +14 -1
  192. package/dist/integrations/harnesses/claude/index.js +1 -5
  193. package/dist/integrations/harnesses/claude/session-log.js +3 -33
  194. package/dist/integrations/harnesses/codex/agent-builder.js +8 -0
  195. package/dist/integrations/harnesses/codex/index.js +0 -1
  196. package/dist/integrations/harnesses/copilot/agent-builder.js +8 -0
  197. package/dist/integrations/harnesses/copilot/index.js +0 -1
  198. package/dist/integrations/harnesses/gemini/agent-builder.js +8 -0
  199. package/dist/integrations/harnesses/gemini/index.js +0 -1
  200. package/dist/integrations/harnesses/index.js +4 -44
  201. package/dist/integrations/harnesses/opencode/agent-builder.js +16 -9
  202. package/dist/integrations/harnesses/opencode/index.js +0 -2
  203. package/dist/integrations/harnesses/opencode/session-log.js +14 -204
  204. package/dist/integrations/harnesses/opencode-sdk/harness.js +12 -1
  205. package/dist/integrations/harnesses/opencode-sdk/sdk-runner.js +40 -42
  206. package/dist/integrations/harnesses/openhands/agent-builder.js +8 -0
  207. package/dist/integrations/harnesses/openhands/index.js +0 -1
  208. package/dist/integrations/harnesses/pi/agent-builder.js +8 -0
  209. package/dist/integrations/harnesses/pi/index.js +0 -1
  210. package/dist/integrations/harnesses/shared.js +0 -1
  211. package/dist/integrations/harnesses/types.js +1 -3
  212. package/dist/integrations/lockfile.js +82 -79
  213. package/dist/integrations/session-logs/index.js +6 -17
  214. package/dist/integrations/session-logs/provider-base.js +1 -29
  215. package/dist/llm/client.js +10 -5
  216. package/dist/llm/embedder.js +6 -7
  217. package/dist/llm/embedders/local.js +37 -88
  218. package/dist/llm/embedders/types.js +1 -1
  219. package/dist/llm/graph-extract.js +75 -50
  220. package/dist/llm/index-passes.js +43 -5
  221. package/dist/llm/memory-infer.js +8 -6
  222. package/dist/llm/metadata-enhance.js +5 -3
  223. package/dist/llm/structured-call.js +122 -25
  224. package/dist/output/format-exempt.js +1 -1
  225. package/dist/output/render-registry.js +0 -16
  226. package/dist/output/renderers.js +12 -7
  227. package/dist/output/shapes/curate.js +1 -0
  228. package/dist/output/shapes/helpers.js +10 -2
  229. package/dist/output/shapes/passthrough.js +2 -0
  230. package/dist/output/text/command-format.js +31 -33
  231. package/dist/output/text/health-format.js +1 -29
  232. package/dist/output/text/migrate.js +6 -56
  233. package/dist/output/text/proposal-format.js +16 -1
  234. package/dist/output/text/workflow-format.js +16 -0
  235. package/dist/registry/network.js +279 -0
  236. package/dist/registry/pinned-request-helper.js +247 -0
  237. package/dist/registry/pinned-transport.js +717 -0
  238. package/dist/registry/providers/skills-sh.js +18 -6
  239. package/dist/registry/providers/static-index.js +20 -7
  240. package/dist/registry/resolve.js +53 -28
  241. package/dist/scripts/akm-migrate-node.js +19334 -52269
  242. package/dist/scripts/akm-migrate.js +19270 -51612
  243. package/dist/setup/registry-stash-loader.js +64 -20
  244. package/dist/setup/semantic-assets.js +9 -34
  245. package/dist/setup/setup.js +12 -30
  246. package/dist/setup/source-identity.js +17 -0
  247. package/dist/setup/steps/sources.js +36 -15
  248. package/dist/setup/steps/tasks.js +39 -11
  249. package/dist/sources/providers/git-provider.js +3 -3
  250. package/dist/sources/providers/npm.js +2 -2
  251. package/dist/sources/providers/provider-utils.js +4 -3
  252. package/dist/sources/providers/website.js +11 -7
  253. package/dist/sources/snapshot-fetchers/host-guard.js +9 -136
  254. package/dist/sources/snapshot-fetchers/website-ingest.js +25 -109
  255. package/dist/sources/website-url.js +73 -0
  256. package/dist/storage/engines/sqlite-migrations.js +81 -26
  257. package/dist/storage/managed-db.js +27 -24
  258. package/dist/storage/repositories/events-repository.js +3 -0
  259. package/dist/storage/repositories/index-connection.js +42 -10
  260. package/dist/storage/repositories/index-entries-repository.js +203 -229
  261. package/dist/storage/repositories/index-entry-mapper.js +8 -12
  262. package/dist/storage/repositories/index-entry-schema.js +255 -0
  263. package/dist/storage/repositories/index-fts-repository.js +64 -71
  264. package/dist/storage/repositories/index-llm-cache-repository.js +8 -13
  265. package/dist/storage/repositories/index-meta-repository.js +0 -11
  266. package/dist/storage/repositories/index-schema.js +74 -350
  267. package/dist/storage/repositories/index-utility-repository.js +12 -17
  268. package/dist/storage/repositories/index-vec-repository.js +56 -7
  269. package/dist/storage/repositories/proposals-repository.js +4 -127
  270. package/dist/storage/repositories/registry-cache.js +2 -1
  271. package/dist/storage/repositories/task-history-repository.js +20 -40
  272. package/dist/storage/repositories/workflow-runs-repository.js +228 -129
  273. package/dist/storage/sqlite-read-snapshot.js +148 -0
  274. package/dist/tasks/backends/cron.js +170 -42
  275. package/dist/tasks/backends/index.js +1 -1
  276. package/dist/tasks/backends/launchd.js +787 -202
  277. package/dist/tasks/backends/schtasks.js +282 -83
  278. package/dist/tasks/embedded.js +7 -7
  279. package/dist/tasks/frozen-script.js +50 -0
  280. package/dist/tasks/resolve-akm-bin.js +5 -1
  281. package/dist/tasks/runner.js +239 -251
  282. package/dist/tasks/runtime-v3.js +281 -0
  283. package/dist/tasks/scheduler-binding.js +272 -0
  284. package/dist/tasks/scheduler-invocation.js +57 -43
  285. package/dist/tasks/scheduler-sync.js +654 -0
  286. package/dist/tasks/source-v3.js +752 -0
  287. package/dist/tasks/standalone-script-entry.js +5 -0
  288. package/dist/tasks/task-id.js +29 -0
  289. package/dist/workflows/authoring/authoring.js +15 -32
  290. package/dist/workflows/exec/dispatch-redaction.js +14 -8
  291. package/dist/workflows/exec/exec-unit.js +7 -28
  292. package/dist/workflows/exec/frozen-judge.js +57 -89
  293. package/dist/workflows/exec/lowering-notices.js +23 -0
  294. package/dist/workflows/exec/native-executor.js +301 -458
  295. package/dist/workflows/exec/param-secrets.js +4 -3
  296. package/dist/workflows/exec/run-workflow.js +26 -32
  297. package/dist/workflows/exec/step-work.js +105 -109
  298. package/dist/workflows/exec/unit-dispatch.js +103 -27
  299. package/dist/workflows/exec/unit-writer.js +3 -3
  300. package/dist/workflows/exec/worktree.js +2 -2
  301. package/dist/workflows/ir/compile.js +86 -72
  302. package/dist/workflows/ir/environment-v4.js +328 -0
  303. package/dist/workflows/ir/freeze-v4.js +122 -0
  304. package/dist/workflows/ir/plan-hash.js +13 -7
  305. package/dist/workflows/ir/schema-v4.js +525 -0
  306. package/dist/workflows/ir/schema.js +25 -284
  307. package/dist/workflows/ir/source-freeze-v4.js +506 -0
  308. package/dist/workflows/parser.js +27 -24
  309. package/dist/workflows/program/schema.js +1 -2
  310. package/dist/workflows/renderer.js +42 -29
  311. package/dist/workflows/resource-limits.js +4 -5
  312. package/dist/workflows/runtime/agent-identity.js +11 -13
  313. package/dist/workflows/runtime/plan-classifier.js +8 -8
  314. package/dist/workflows/runtime/runs.js +27 -43
  315. package/dist/workflows/runtime/workflow-asset-loader.js +45 -205
  316. package/dist/workflows/source-files.js +373 -0
  317. package/dist/workflows/source-ir/compile.js +196 -0
  318. package/dist/workflows/source-ir/github-yaml.js +577 -0
  319. package/dist/workflows/source-ir/ordering.js +38 -0
  320. package/dist/workflows/source-ir/program.js +50 -0
  321. package/dist/workflows/source-ir/result.js +26 -0
  322. package/dist/workflows/source-ir/schema.js +772 -0
  323. package/dist/workflows/source-ir/semantics.js +242 -0
  324. package/dist/workflows/source-ir/uses.js +14 -0
  325. package/docs/README.md +2 -0
  326. package/docs/migration/README.md +3 -1
  327. package/docs/migration/release-notes/0.9.2.md +55 -0
  328. package/docs/migration/release-notes/README.md +5 -0
  329. package/docs/migration/v0.8-to-v0.9.md +76 -1077
  330. package/docs/migration/v0.9.0-troubleshooting.md +104 -516
  331. package/docs/migration/v0.9.1-to-v0.9.2.md +150 -0
  332. package/docs/reference/README.md +1 -0
  333. package/docs/reference/cli.md +230 -98
  334. package/docs/reference/configuration.md +159 -36
  335. package/docs/reference/data-and-telemetry.md +19 -1
  336. package/docs/reference/supported-formats.md +23 -3
  337. package/docs/reference/tasks.md +182 -0
  338. package/docs/reference/workflow-schema.md +91 -40
  339. package/docs/reference/workflows.md +33 -6
  340. package/package.json +10 -6
  341. package/schemas/akm-config.json +372 -224
  342. package/schemas/akm-task.json +324 -80
  343. package/schemas/akm-workflow.json +6 -9
  344. package/dist/core/migration-operation.js +0 -75
  345. package/dist/integrations/agent/model-aliases.js +0 -74
  346. package/dist/tasks/parser.js +0 -380
  347. package/dist/tasks/schema.js +0 -123
  348. package/dist/tasks/validator.js +0 -80
  349. package/dist/workflows/ir/freeze.js +0 -320
  350. package/dist/workflows/runtime/document-cache.js +0 -13
@@ -70,6 +70,10 @@
70
70
  },
71
71
  "enableThinking": {
72
72
  "type": "boolean"
73
+ },
74
+ "reasoningEffort": {
75
+ "type": "string",
76
+ "minLength": 1
73
77
  }
74
78
  },
75
79
  "required": [
@@ -131,16 +135,6 @@
131
135
  }
132
136
  ]
133
137
  },
134
- "modelAliases": {
135
- "type": "object",
136
- "additionalProperties": {
137
- "type": "string",
138
- "minLength": 1
139
- },
140
- "propertyNames": {
141
- "minLength": 1
142
- }
143
- },
144
138
  "llmEngine": {
145
139
  "type": "string",
146
140
  "maxLength": 63,
@@ -181,22 +175,6 @@
181
175
  },
182
176
  "additionalProperties": true
183
177
  },
184
- "modelAliases": {
185
- "type": "object",
186
- "additionalProperties": {
187
- "type": "object",
188
- "additionalProperties": {
189
- "type": "string",
190
- "minLength": 1
191
- },
192
- "propertyNames": {
193
- "minLength": 1
194
- }
195
- },
196
- "propertyNames": {
197
- "minLength": 1
198
- }
199
- },
200
178
  "semanticSearchMode": {
201
179
  "type": "string",
202
180
  "enum": [
@@ -308,6 +286,10 @@
308
286
  },
309
287
  "enableThinking": {
310
288
  "type": "boolean"
289
+ },
290
+ "reasoningEffort": {
291
+ "type": "string",
292
+ "minLength": 1
311
293
  }
312
294
  },
313
295
  "additionalProperties": true
@@ -323,10 +305,6 @@
323
305
  }
324
306
  },
325
307
  "additionalProperties": true
326
- },
327
- "indexBodyOpening": {
328
- "type": "boolean",
329
- "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`."
330
308
  }
331
309
  },
332
310
  "additionalProperties": {
@@ -378,6 +356,10 @@
378
356
  },
379
357
  "enableThinking": {
380
358
  "type": "boolean"
359
+ },
360
+ "reasoningEffort": {
361
+ "type": "string",
362
+ "minLength": 1
381
363
  }
382
364
  },
383
365
  "additionalProperties": true
@@ -679,6 +661,10 @@
679
661
  },
680
662
  "enableThinking": {
681
663
  "type": "boolean"
664
+ },
665
+ "reasoningEffort": {
666
+ "type": "string",
667
+ "minLength": 1
682
668
  }
683
669
  },
684
670
  "additionalProperties": true
@@ -725,6 +711,10 @@
725
711
  },
726
712
  "enableThinking": {
727
713
  "type": "boolean"
714
+ },
715
+ "reasoningEffort": {
716
+ "type": "string",
717
+ "minLength": 1
728
718
  }
729
719
  },
730
720
  "additionalProperties": true
@@ -810,6 +800,10 @@
810
800
  },
811
801
  "enableThinking": {
812
802
  "type": "boolean"
803
+ },
804
+ "reasoningEffort": {
805
+ "type": "string",
806
+ "minLength": 1
813
807
  }
814
808
  },
815
809
  "additionalProperties": true
@@ -911,6 +905,10 @@
911
905
  },
912
906
  "enableThinking": {
913
907
  "type": "boolean"
908
+ },
909
+ "reasoningEffort": {
910
+ "type": "string",
911
+ "minLength": 1
914
912
  }
915
913
  },
916
914
  "additionalProperties": true
@@ -1036,6 +1034,10 @@
1036
1034
  },
1037
1035
  "enableThinking": {
1038
1036
  "type": "boolean"
1037
+ },
1038
+ "reasoningEffort": {
1039
+ "type": "string",
1040
+ "minLength": 1
1039
1041
  }
1040
1042
  },
1041
1043
  "additionalProperties": true
@@ -1109,6 +1111,10 @@
1109
1111
  },
1110
1112
  "enableThinking": {
1111
1113
  "type": "boolean"
1114
+ },
1115
+ "reasoningEffort": {
1116
+ "type": "string",
1117
+ "minLength": 1
1112
1118
  }
1113
1119
  },
1114
1120
  "additionalProperties": true
@@ -1184,6 +1190,10 @@
1184
1190
  },
1185
1191
  "enableThinking": {
1186
1192
  "type": "boolean"
1193
+ },
1194
+ "reasoningEffort": {
1195
+ "type": "string",
1196
+ "minLength": 1
1187
1197
  }
1188
1198
  },
1189
1199
  "additionalProperties": true
@@ -1280,6 +1290,10 @@
1280
1290
  },
1281
1291
  "enableThinking": {
1282
1292
  "type": "boolean"
1293
+ },
1294
+ "reasoningEffort": {
1295
+ "type": "string",
1296
+ "minLength": 1
1283
1297
  }
1284
1298
  },
1285
1299
  "additionalProperties": true
@@ -1336,6 +1350,10 @@
1336
1350
  },
1337
1351
  "enableThinking": {
1338
1352
  "type": "boolean"
1353
+ },
1354
+ "reasoningEffort": {
1355
+ "type": "string",
1356
+ "minLength": 1
1339
1357
  }
1340
1358
  },
1341
1359
  "additionalProperties": true
@@ -1377,57 +1395,71 @@
1377
1395
  "type": "boolean"
1378
1396
  },
1379
1397
  "judgment": {
1380
- "type": "object",
1381
- "properties": {
1382
- "engine": {
1383
- "type": "string",
1384
- "maxLength": 63,
1385
- "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1386
- },
1387
- "model": {
1388
- "type": "string",
1389
- "minLength": 1
1390
- },
1391
- "timeoutMs": {
1392
- "anyOf": [
1393
- {
1394
- "type": "integer",
1395
- "exclusiveMinimum": 0
1396
- },
1397
- {
1398
- "type": "null"
1399
- }
1400
- ]
1398
+ "anyOf": [
1399
+ {
1400
+ "type": "boolean"
1401
1401
  },
1402
- "llm": {
1402
+ {
1403
1403
  "type": "object",
1404
1404
  "properties": {
1405
- "temperature": {
1406
- "type": "number"
1407
- },
1408
- "maxTokens": {
1409
- "type": "integer",
1410
- "exclusiveMinimum": 0
1411
- },
1412
- "supportsJsonSchema": {
1405
+ "enabled": {
1413
1406
  "type": "boolean"
1414
1407
  },
1415
- "extraParams": {
1416
- "type": "object",
1417
- "additionalProperties": {}
1408
+ "engine": {
1409
+ "type": "string",
1410
+ "maxLength": 63,
1411
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
1418
1412
  },
1419
- "contextLength": {
1420
- "type": "integer",
1421
- "exclusiveMinimum": 0
1413
+ "model": {
1414
+ "type": "string",
1415
+ "minLength": 1
1422
1416
  },
1423
- "enableThinking": {
1424
- "type": "boolean"
1417
+ "timeoutMs": {
1418
+ "anyOf": [
1419
+ {
1420
+ "type": "integer",
1421
+ "exclusiveMinimum": 0
1422
+ },
1423
+ {
1424
+ "type": "null"
1425
+ }
1426
+ ]
1427
+ },
1428
+ "llm": {
1429
+ "type": "object",
1430
+ "properties": {
1431
+ "temperature": {
1432
+ "type": "number"
1433
+ },
1434
+ "maxTokens": {
1435
+ "type": "integer",
1436
+ "exclusiveMinimum": 0
1437
+ },
1438
+ "supportsJsonSchema": {
1439
+ "type": "boolean"
1440
+ },
1441
+ "extraParams": {
1442
+ "type": "object",
1443
+ "additionalProperties": {}
1444
+ },
1445
+ "contextLength": {
1446
+ "type": "integer",
1447
+ "exclusiveMinimum": 0
1448
+ },
1449
+ "enableThinking": {
1450
+ "type": "boolean"
1451
+ },
1452
+ "reasoningEffort": {
1453
+ "type": "string",
1454
+ "minLength": 1
1455
+ }
1456
+ },
1457
+ "additionalProperties": false
1425
1458
  }
1426
1459
  },
1427
- "additionalProperties": true
1460
+ "additionalProperties": false
1428
1461
  }
1429
- },
1430
- "additionalProperties": true
1462
+ ]
1431
1463
  }
1432
1464
  },
1433
1465
  "additionalProperties": true
@@ -1467,6 +1499,10 @@
1467
1499
  },
1468
1500
  "enableThinking": {
1469
1501
  "type": "boolean"
1502
+ },
1503
+ "reasoningEffort": {
1504
+ "type": "string",
1505
+ "minLength": 1
1470
1506
  }
1471
1507
  },
1472
1508
  "additionalProperties": true
@@ -1724,6 +1760,10 @@
1724
1760
  },
1725
1761
  "enableThinking": {
1726
1762
  "type": "boolean"
1763
+ },
1764
+ "reasoningEffort": {
1765
+ "type": "string",
1766
+ "minLength": 1
1727
1767
  }
1728
1768
  },
1729
1769
  "required": [
@@ -1785,16 +1825,6 @@
1785
1825
  }
1786
1826
  ]
1787
1827
  },
1788
- "modelAliases": {
1789
- "type": "object",
1790
- "additionalProperties": {
1791
- "type": "string",
1792
- "minLength": 1
1793
- },
1794
- "propertyNames": {
1795
- "minLength": 1
1796
- }
1797
- },
1798
1828
  "llmEngine": {
1799
1829
  "type": "string",
1800
1830
  "maxLength": 63,
@@ -1835,22 +1865,6 @@
1835
1865
  },
1836
1866
  "additionalProperties": true
1837
1867
  },
1838
- "modelAliases": {
1839
- "type": "object",
1840
- "additionalProperties": {
1841
- "type": "object",
1842
- "additionalProperties": {
1843
- "type": "string",
1844
- "minLength": 1
1845
- },
1846
- "propertyNames": {
1847
- "minLength": 1
1848
- }
1849
- },
1850
- "propertyNames": {
1851
- "minLength": 1
1852
- }
1853
- },
1854
1868
  "semanticSearchMode": {
1855
1869
  "type": "string",
1856
1870
  "enum": [
@@ -1962,6 +1976,10 @@
1962
1976
  },
1963
1977
  "enableThinking": {
1964
1978
  "type": "boolean"
1979
+ },
1980
+ "reasoningEffort": {
1981
+ "type": "string",
1982
+ "minLength": 1
1965
1983
  }
1966
1984
  },
1967
1985
  "additionalProperties": true
@@ -1977,10 +1995,6 @@
1977
1995
  }
1978
1996
  },
1979
1997
  "additionalProperties": true
1980
- },
1981
- "indexBodyOpening": {
1982
- "type": "boolean",
1983
- "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`."
1984
1998
  }
1985
1999
  },
1986
2000
  "additionalProperties": {
@@ -2032,6 +2046,10 @@
2032
2046
  },
2033
2047
  "enableThinking": {
2034
2048
  "type": "boolean"
2049
+ },
2050
+ "reasoningEffort": {
2051
+ "type": "string",
2052
+ "minLength": 1
2035
2053
  }
2036
2054
  },
2037
2055
  "additionalProperties": true
@@ -2333,6 +2351,10 @@
2333
2351
  },
2334
2352
  "enableThinking": {
2335
2353
  "type": "boolean"
2354
+ },
2355
+ "reasoningEffort": {
2356
+ "type": "string",
2357
+ "minLength": 1
2336
2358
  }
2337
2359
  },
2338
2360
  "additionalProperties": true
@@ -2379,6 +2401,10 @@
2379
2401
  },
2380
2402
  "enableThinking": {
2381
2403
  "type": "boolean"
2404
+ },
2405
+ "reasoningEffort": {
2406
+ "type": "string",
2407
+ "minLength": 1
2382
2408
  }
2383
2409
  },
2384
2410
  "additionalProperties": true
@@ -2464,6 +2490,10 @@
2464
2490
  },
2465
2491
  "enableThinking": {
2466
2492
  "type": "boolean"
2493
+ },
2494
+ "reasoningEffort": {
2495
+ "type": "string",
2496
+ "minLength": 1
2467
2497
  }
2468
2498
  },
2469
2499
  "additionalProperties": true
@@ -2565,6 +2595,10 @@
2565
2595
  },
2566
2596
  "enableThinking": {
2567
2597
  "type": "boolean"
2598
+ },
2599
+ "reasoningEffort": {
2600
+ "type": "string",
2601
+ "minLength": 1
2568
2602
  }
2569
2603
  },
2570
2604
  "additionalProperties": true
@@ -2690,6 +2724,10 @@
2690
2724
  },
2691
2725
  "enableThinking": {
2692
2726
  "type": "boolean"
2727
+ },
2728
+ "reasoningEffort": {
2729
+ "type": "string",
2730
+ "minLength": 1
2693
2731
  }
2694
2732
  },
2695
2733
  "additionalProperties": true
@@ -2763,6 +2801,10 @@
2763
2801
  },
2764
2802
  "enableThinking": {
2765
2803
  "type": "boolean"
2804
+ },
2805
+ "reasoningEffort": {
2806
+ "type": "string",
2807
+ "minLength": 1
2766
2808
  }
2767
2809
  },
2768
2810
  "additionalProperties": true
@@ -2838,6 +2880,10 @@
2838
2880
  },
2839
2881
  "enableThinking": {
2840
2882
  "type": "boolean"
2883
+ },
2884
+ "reasoningEffort": {
2885
+ "type": "string",
2886
+ "minLength": 1
2841
2887
  }
2842
2888
  },
2843
2889
  "additionalProperties": true
@@ -2934,6 +2980,10 @@
2934
2980
  },
2935
2981
  "enableThinking": {
2936
2982
  "type": "boolean"
2983
+ },
2984
+ "reasoningEffort": {
2985
+ "type": "string",
2986
+ "minLength": 1
2937
2987
  }
2938
2988
  },
2939
2989
  "additionalProperties": true
@@ -2990,6 +3040,10 @@
2990
3040
  },
2991
3041
  "enableThinking": {
2992
3042
  "type": "boolean"
3043
+ },
3044
+ "reasoningEffort": {
3045
+ "type": "string",
3046
+ "minLength": 1
2993
3047
  }
2994
3048
  },
2995
3049
  "additionalProperties": true
@@ -3031,57 +3085,71 @@
3031
3085
  "type": "boolean"
3032
3086
  },
3033
3087
  "judgment": {
3034
- "type": "object",
3035
- "properties": {
3036
- "engine": {
3037
- "type": "string",
3038
- "maxLength": 63,
3039
- "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3040
- },
3041
- "model": {
3042
- "type": "string",
3043
- "minLength": 1
3044
- },
3045
- "timeoutMs": {
3046
- "anyOf": [
3047
- {
3048
- "type": "integer",
3049
- "exclusiveMinimum": 0
3050
- },
3051
- {
3052
- "type": "null"
3053
- }
3054
- ]
3088
+ "anyOf": [
3089
+ {
3090
+ "type": "boolean"
3055
3091
  },
3056
- "llm": {
3092
+ {
3057
3093
  "type": "object",
3058
3094
  "properties": {
3059
- "temperature": {
3060
- "type": "number"
3061
- },
3062
- "maxTokens": {
3063
- "type": "integer",
3064
- "exclusiveMinimum": 0
3065
- },
3066
- "supportsJsonSchema": {
3095
+ "enabled": {
3067
3096
  "type": "boolean"
3068
3097
  },
3069
- "extraParams": {
3070
- "type": "object",
3071
- "additionalProperties": {}
3098
+ "engine": {
3099
+ "type": "string",
3100
+ "maxLength": 63,
3101
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3072
3102
  },
3073
- "contextLength": {
3074
- "type": "integer",
3075
- "exclusiveMinimum": 0
3103
+ "model": {
3104
+ "type": "string",
3105
+ "minLength": 1
3076
3106
  },
3077
- "enableThinking": {
3078
- "type": "boolean"
3107
+ "timeoutMs": {
3108
+ "anyOf": [
3109
+ {
3110
+ "type": "integer",
3111
+ "exclusiveMinimum": 0
3112
+ },
3113
+ {
3114
+ "type": "null"
3115
+ }
3116
+ ]
3117
+ },
3118
+ "llm": {
3119
+ "type": "object",
3120
+ "properties": {
3121
+ "temperature": {
3122
+ "type": "number"
3123
+ },
3124
+ "maxTokens": {
3125
+ "type": "integer",
3126
+ "exclusiveMinimum": 0
3127
+ },
3128
+ "supportsJsonSchema": {
3129
+ "type": "boolean"
3130
+ },
3131
+ "extraParams": {
3132
+ "type": "object",
3133
+ "additionalProperties": {}
3134
+ },
3135
+ "contextLength": {
3136
+ "type": "integer",
3137
+ "exclusiveMinimum": 0
3138
+ },
3139
+ "enableThinking": {
3140
+ "type": "boolean"
3141
+ },
3142
+ "reasoningEffort": {
3143
+ "type": "string",
3144
+ "minLength": 1
3145
+ }
3146
+ },
3147
+ "additionalProperties": false
3079
3148
  }
3080
3149
  },
3081
- "additionalProperties": true
3150
+ "additionalProperties": false
3082
3151
  }
3083
- },
3084
- "additionalProperties": true
3152
+ ]
3085
3153
  }
3086
3154
  },
3087
3155
  "additionalProperties": true
@@ -3121,6 +3189,10 @@
3121
3189
  },
3122
3190
  "enableThinking": {
3123
3191
  "type": "boolean"
3192
+ },
3193
+ "reasoningEffort": {
3194
+ "type": "string",
3195
+ "minLength": 1
3124
3196
  }
3125
3197
  },
3126
3198
  "additionalProperties": true
@@ -3368,6 +3440,10 @@
3368
3440
  "enableThinking": {
3369
3441
  "type": "boolean"
3370
3442
  },
3443
+ "reasoningEffort": {
3444
+ "type": "string",
3445
+ "minLength": 1
3446
+ },
3371
3447
  "supportsJsonSchema": {
3372
3448
  "type": "boolean"
3373
3449
  }
@@ -3467,6 +3543,10 @@
3467
3543
  },
3468
3544
  "enableThinking": {
3469
3545
  "type": "boolean"
3546
+ },
3547
+ "reasoningEffort": {
3548
+ "type": "string",
3549
+ "minLength": 1
3470
3550
  }
3471
3551
  },
3472
3552
  "additionalProperties": true
@@ -3683,57 +3763,71 @@
3683
3763
  "type": "boolean"
3684
3764
  },
3685
3765
  "judgment": {
3686
- "type": "object",
3687
- "properties": {
3688
- "engine": {
3689
- "type": "string",
3690
- "maxLength": 63,
3691
- "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3692
- },
3693
- "model": {
3694
- "type": "string",
3695
- "minLength": 1
3696
- },
3697
- "timeoutMs": {
3698
- "anyOf": [
3699
- {
3700
- "type": "integer",
3701
- "exclusiveMinimum": 0
3702
- },
3703
- {
3704
- "type": "null"
3705
- }
3706
- ]
3766
+ "anyOf": [
3767
+ {
3768
+ "type": "boolean"
3707
3769
  },
3708
- "llm": {
3770
+ {
3709
3771
  "type": "object",
3710
3772
  "properties": {
3711
- "temperature": {
3712
- "type": "number"
3713
- },
3714
- "maxTokens": {
3715
- "type": "integer",
3716
- "exclusiveMinimum": 0
3717
- },
3718
- "supportsJsonSchema": {
3773
+ "enabled": {
3719
3774
  "type": "boolean"
3720
3775
  },
3721
- "extraParams": {
3722
- "type": "object",
3723
- "additionalProperties": {}
3776
+ "engine": {
3777
+ "type": "string",
3778
+ "maxLength": 63,
3779
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
3724
3780
  },
3725
- "contextLength": {
3726
- "type": "integer",
3727
- "exclusiveMinimum": 0
3781
+ "model": {
3782
+ "type": "string",
3783
+ "minLength": 1
3728
3784
  },
3729
- "enableThinking": {
3730
- "type": "boolean"
3785
+ "timeoutMs": {
3786
+ "anyOf": [
3787
+ {
3788
+ "type": "integer",
3789
+ "exclusiveMinimum": 0
3790
+ },
3791
+ {
3792
+ "type": "null"
3793
+ }
3794
+ ]
3795
+ },
3796
+ "llm": {
3797
+ "type": "object",
3798
+ "properties": {
3799
+ "temperature": {
3800
+ "type": "number"
3801
+ },
3802
+ "maxTokens": {
3803
+ "type": "integer",
3804
+ "exclusiveMinimum": 0
3805
+ },
3806
+ "supportsJsonSchema": {
3807
+ "type": "boolean"
3808
+ },
3809
+ "extraParams": {
3810
+ "type": "object",
3811
+ "additionalProperties": {}
3812
+ },
3813
+ "contextLength": {
3814
+ "type": "integer",
3815
+ "exclusiveMinimum": 0
3816
+ },
3817
+ "enableThinking": {
3818
+ "type": "boolean"
3819
+ },
3820
+ "reasoningEffort": {
3821
+ "type": "string",
3822
+ "minLength": 1
3823
+ }
3824
+ },
3825
+ "additionalProperties": false
3731
3826
  }
3732
3827
  },
3733
- "additionalProperties": true
3828
+ "additionalProperties": false
3734
3829
  }
3735
- },
3736
- "additionalProperties": true
3830
+ ]
3737
3831
  },
3738
3832
  "dueDays": {
3739
3833
  "type": "integer",
@@ -3792,6 +3886,10 @@
3792
3886
  },
3793
3887
  "enableThinking": {
3794
3888
  "type": "boolean"
3889
+ },
3890
+ "reasoningEffort": {
3891
+ "type": "string",
3892
+ "minLength": 1
3795
3893
  }
3796
3894
  },
3797
3895
  "additionalProperties": true
@@ -3838,6 +3936,10 @@
3838
3936
  },
3839
3937
  "enableThinking": {
3840
3938
  "type": "boolean"
3939
+ },
3940
+ "reasoningEffort": {
3941
+ "type": "string",
3942
+ "minLength": 1
3841
3943
  }
3842
3944
  },
3843
3945
  "additionalProperties": true
@@ -3923,6 +4025,10 @@
3923
4025
  },
3924
4026
  "enableThinking": {
3925
4027
  "type": "boolean"
4028
+ },
4029
+ "reasoningEffort": {
4030
+ "type": "string",
4031
+ "minLength": 1
3926
4032
  }
3927
4033
  },
3928
4034
  "additionalProperties": true
@@ -4024,6 +4130,10 @@
4024
4130
  },
4025
4131
  "enableThinking": {
4026
4132
  "type": "boolean"
4133
+ },
4134
+ "reasoningEffort": {
4135
+ "type": "string",
4136
+ "minLength": 1
4027
4137
  }
4028
4138
  },
4029
4139
  "additionalProperties": true
@@ -4149,6 +4259,10 @@
4149
4259
  },
4150
4260
  "enableThinking": {
4151
4261
  "type": "boolean"
4262
+ },
4263
+ "reasoningEffort": {
4264
+ "type": "string",
4265
+ "minLength": 1
4152
4266
  }
4153
4267
  },
4154
4268
  "additionalProperties": true
@@ -4222,6 +4336,10 @@
4222
4336
  },
4223
4337
  "enableThinking": {
4224
4338
  "type": "boolean"
4339
+ },
4340
+ "reasoningEffort": {
4341
+ "type": "string",
4342
+ "minLength": 1
4225
4343
  }
4226
4344
  },
4227
4345
  "additionalProperties": true
@@ -4297,6 +4415,10 @@
4297
4415
  },
4298
4416
  "enableThinking": {
4299
4417
  "type": "boolean"
4418
+ },
4419
+ "reasoningEffort": {
4420
+ "type": "string",
4421
+ "minLength": 1
4300
4422
  }
4301
4423
  },
4302
4424
  "additionalProperties": true
@@ -4393,6 +4515,10 @@
4393
4515
  },
4394
4516
  "enableThinking": {
4395
4517
  "type": "boolean"
4518
+ },
4519
+ "reasoningEffort": {
4520
+ "type": "string",
4521
+ "minLength": 1
4396
4522
  }
4397
4523
  },
4398
4524
  "additionalProperties": true
@@ -4449,6 +4575,10 @@
4449
4575
  },
4450
4576
  "enableThinking": {
4451
4577
  "type": "boolean"
4578
+ },
4579
+ "reasoningEffort": {
4580
+ "type": "string",
4581
+ "minLength": 1
4452
4582
  }
4453
4583
  },
4454
4584
  "additionalProperties": true
@@ -4490,57 +4620,71 @@
4490
4620
  "type": "boolean"
4491
4621
  },
4492
4622
  "judgment": {
4493
- "type": "object",
4494
- "properties": {
4495
- "engine": {
4496
- "type": "string",
4497
- "maxLength": 63,
4498
- "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
4499
- },
4500
- "model": {
4501
- "type": "string",
4502
- "minLength": 1
4503
- },
4504
- "timeoutMs": {
4505
- "anyOf": [
4506
- {
4507
- "type": "integer",
4508
- "exclusiveMinimum": 0
4509
- },
4510
- {
4511
- "type": "null"
4512
- }
4513
- ]
4623
+ "anyOf": [
4624
+ {
4625
+ "type": "boolean"
4514
4626
  },
4515
- "llm": {
4627
+ {
4516
4628
  "type": "object",
4517
4629
  "properties": {
4518
- "temperature": {
4519
- "type": "number"
4520
- },
4521
- "maxTokens": {
4522
- "type": "integer",
4523
- "exclusiveMinimum": 0
4524
- },
4525
- "supportsJsonSchema": {
4630
+ "enabled": {
4526
4631
  "type": "boolean"
4527
4632
  },
4528
- "extraParams": {
4529
- "type": "object",
4530
- "additionalProperties": {}
4633
+ "engine": {
4634
+ "type": "string",
4635
+ "maxLength": 63,
4636
+ "pattern": "^(?!akm-)[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"
4531
4637
  },
4532
- "contextLength": {
4533
- "type": "integer",
4534
- "exclusiveMinimum": 0
4638
+ "model": {
4639
+ "type": "string",
4640
+ "minLength": 1
4535
4641
  },
4536
- "enableThinking": {
4537
- "type": "boolean"
4642
+ "timeoutMs": {
4643
+ "anyOf": [
4644
+ {
4645
+ "type": "integer",
4646
+ "exclusiveMinimum": 0
4647
+ },
4648
+ {
4649
+ "type": "null"
4650
+ }
4651
+ ]
4652
+ },
4653
+ "llm": {
4654
+ "type": "object",
4655
+ "properties": {
4656
+ "temperature": {
4657
+ "type": "number"
4658
+ },
4659
+ "maxTokens": {
4660
+ "type": "integer",
4661
+ "exclusiveMinimum": 0
4662
+ },
4663
+ "supportsJsonSchema": {
4664
+ "type": "boolean"
4665
+ },
4666
+ "extraParams": {
4667
+ "type": "object",
4668
+ "additionalProperties": {}
4669
+ },
4670
+ "contextLength": {
4671
+ "type": "integer",
4672
+ "exclusiveMinimum": 0
4673
+ },
4674
+ "enableThinking": {
4675
+ "type": "boolean"
4676
+ },
4677
+ "reasoningEffort": {
4678
+ "type": "string",
4679
+ "minLength": 1
4680
+ }
4681
+ },
4682
+ "additionalProperties": false
4538
4683
  }
4539
4684
  },
4540
- "additionalProperties": true
4685
+ "additionalProperties": false
4541
4686
  }
4542
- },
4543
- "additionalProperties": true
4687
+ ]
4544
4688
  }
4545
4689
  },
4546
4690
  "additionalProperties": true
@@ -4580,6 +4724,10 @@
4580
4724
  },
4581
4725
  "enableThinking": {
4582
4726
  "type": "boolean"
4727
+ },
4728
+ "reasoningEffort": {
4729
+ "type": "string",
4730
+ "minLength": 1
4583
4731
  }
4584
4732
  },
4585
4733
  "additionalProperties": true