akm-cli 0.9.30 → 0.10.261001-beta

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 (384) hide show
  1. package/CHANGELOG.md +438 -0
  2. package/README.md +10 -10
  3. package/ROADMAP.md +112 -0
  4. package/STABILITY.md +99 -57
  5. package/dist/api-node.mjs +20 -0
  6. package/dist/api.d.ts +23 -0
  7. package/dist/api.js +45 -0
  8. package/dist/assets/hints/cli-hints-full.md +15 -29
  9. package/dist/assets/hints/cli-hints-short.md +2 -2
  10. package/dist/assets/improve-strategies/default.json +3 -3
  11. package/dist/assets/prompts/consolidate-pair.md +9 -7
  12. package/dist/assets/stash-skeleton/README.md +1 -1
  13. package/dist/assets/tasks/improve/akm-improve-consolidate.yml +1 -1
  14. package/dist/cli/shared.js +31 -48
  15. package/dist/cli/unknown-flags.js +6 -43
  16. package/dist/cli.js +8 -34
  17. package/dist/commands/agent/contribute-cli.js +1 -1
  18. package/dist/commands/completions.js +1 -2
  19. package/dist/commands/config-cli.js +5 -28
  20. package/dist/commands/env/env-cli.js +5 -5
  21. package/dist/commands/env/secret-cli.js +2 -2
  22. package/dist/commands/feedback-cli.js +75 -49
  23. package/dist/commands/health/checks.js +41 -16
  24. package/dist/commands/health/plugin-staleness.js +52 -22
  25. package/dist/commands/improve/autonomy-gate.js +5 -3
  26. package/dist/commands/improve/consolidate/chunking.js +3 -10
  27. package/dist/commands/improve/consolidate/continuity-check.js +4 -4
  28. package/dist/commands/improve/consolidate/pair-pass.js +29 -10
  29. package/dist/commands/improve/consolidate.js +10 -65
  30. package/dist/commands/improve/distill/lesson-update.js +91 -0
  31. package/dist/commands/improve/distill-guards.js +1 -43
  32. package/dist/commands/improve/distill.js +148 -21
  33. package/dist/commands/improve/eligibility.js +14 -1
  34. package/dist/commands/improve/extract-cli.js +1 -1
  35. package/dist/commands/improve/extract-prompt.js +17 -7
  36. package/dist/commands/improve/extract.js +5 -7
  37. package/dist/commands/improve/improve-cli.js +125 -118
  38. package/dist/commands/improve/improve-strategies.js +8 -12
  39. package/dist/commands/improve/improve.js +134 -52
  40. package/dist/commands/improve/loop-stages.js +18 -5
  41. package/dist/commands/improve/planner.js +0 -1
  42. package/dist/commands/improve/preparation.js +40 -99
  43. package/dist/commands/improve/proactive-maintenance.js +2 -2
  44. package/dist/commands/improve/reflect-noise.js +3 -55
  45. package/dist/commands/improve/reflect.js +29 -34
  46. package/dist/commands/improve/retrieval-queries.js +37 -0
  47. package/dist/commands/improve/retrieval-scope.js +2 -2
  48. package/dist/commands/improve/salience.js +2 -9
  49. package/dist/commands/improve/session-asset.js +4 -1
  50. package/dist/commands/improve/stage.js +23 -12
  51. package/dist/commands/lint/index.js +5 -20
  52. package/dist/commands/observability-cli.js +3 -9
  53. package/dist/commands/proposal/drain.js +43 -6
  54. package/dist/commands/proposal/proposal-cli.js +11 -31
  55. package/dist/commands/proposal/repository.js +20 -14
  56. package/dist/commands/proposal/validators/proposal-quality-validators.js +0 -3
  57. package/dist/commands/read/knowledge.js +3 -3
  58. package/dist/commands/read/remember-cli.js +0 -13
  59. package/dist/commands/read/search-cli.js +29 -97
  60. package/dist/commands/read/search.js +0 -11
  61. package/dist/commands/read/show.js +0 -19
  62. package/dist/commands/sources/plugin-upgrade.js +164 -101
  63. package/dist/commands/sources/sources-cli.js +1 -15
  64. package/dist/commands/sources/stash-cli.js +6 -14
  65. package/dist/commands/tasks/tasks-cli.js +4 -115
  66. package/dist/commands/workflow/plan.js +11 -33
  67. package/dist/commands/workflow-cli.js +2 -7
  68. package/dist/core/adapter/adapter-ids.js +1 -2
  69. package/dist/core/adapter/adapters/agent-skills-adapter.js +0 -4
  70. package/dist/core/adapter/adapters/akm-adapter.js +9 -48
  71. package/dist/core/adapter/adapters/akm-lint.js +10 -26
  72. package/dist/core/adapter/adapters/akm-metadata.js +2 -72
  73. package/dist/core/adapter/adapters/akm-task-adapter.js +0 -5
  74. package/dist/core/adapter/adapters/akm-workflow-adapter.js +9 -28
  75. package/dist/core/adapter/adapters/dotenv-adapter.js +1 -20
  76. package/dist/core/adapter/adapters/generic-files-adapter.js +0 -10
  77. package/dist/core/adapter/adapters/llm-wiki-adapter.js +0 -4
  78. package/dist/core/adapter/adapters/tool-dir-shared.js +0 -24
  79. package/dist/core/adapter/adapters/website-snapshot-adapter.js +4 -4
  80. package/dist/core/adapter/recognize-match.js +3 -4
  81. package/dist/core/common.js +18 -2
  82. package/dist/core/config/config-schema.js +12 -15
  83. package/dist/core/config/config-types.js +6 -15
  84. package/dist/core/config/config-walker.js +6 -23
  85. package/dist/core/config/config.js +17 -80
  86. package/dist/core/config/engine-semantics.js +7 -3
  87. package/dist/core/config/schema/engines.js +7 -7
  88. package/dist/core/config/schema/improve-processes.js +10 -63
  89. package/dist/core/config/schema/improve.js +2 -21
  90. package/dist/core/config/schema/index-config.js +6 -39
  91. package/dist/core/env-secret-ref.js +2 -45
  92. package/dist/core/errors.js +1 -2
  93. package/dist/core/extra-params.js +2 -86
  94. package/dist/core/file-lock.js +12 -7
  95. package/dist/core/improve-result.js +13 -1
  96. package/dist/core/mutation-target.js +2 -2
  97. package/dist/core/paths.js +4 -0
  98. package/dist/core/recognition-util.js +4 -5
  99. package/dist/core/run-lock.js +1 -1
  100. package/dist/core/subprocess.js +49 -0
  101. package/dist/core/warn.js +21 -4
  102. package/dist/core/write-source.js +3 -3
  103. package/dist/execution/target-ref.js +1 -2
  104. package/dist/indexer/indexer.js +15 -6
  105. package/dist/indexer/passes/memory-inference.js +15 -6
  106. package/dist/indexer/search/db-search.js +49 -36
  107. package/dist/indexer/search/fts-query.js +0 -19
  108. package/dist/indexer/search/ranking.js +29 -1
  109. package/dist/indexer/usage/usage-events.js +21 -16
  110. package/dist/integrations/agent/engine-resolution.js +5 -2
  111. package/dist/integrations/agent/index.js +1 -1
  112. package/dist/integrations/agent/profiles.js +41 -98
  113. package/dist/integrations/agent/request-lowering.js +3 -3
  114. package/dist/integrations/harnesses/aider/index.js +5 -0
  115. package/dist/integrations/harnesses/amazonq/index.js +1 -0
  116. package/dist/integrations/harnesses/claude/config-import.js +2 -3
  117. package/dist/integrations/harnesses/claude/index.js +5 -0
  118. package/dist/integrations/harnesses/codex/index.js +1 -0
  119. package/dist/integrations/harnesses/copilot/index.js +1 -0
  120. package/dist/integrations/harnesses/gemini/index.js +1 -0
  121. package/dist/integrations/harnesses/index.js +18 -39
  122. package/dist/integrations/harnesses/opencode/agent-builder.js +60 -35
  123. package/dist/integrations/harnesses/opencode/config-import.js +121 -52
  124. package/dist/integrations/harnesses/opencode/index.js +22 -0
  125. package/dist/integrations/harnesses/opencode/plugin-layout.js +68 -0
  126. package/dist/integrations/harnesses/opencode/session-log-types.js +12 -0
  127. package/dist/integrations/harnesses/opencode/session-log-v1.js +72 -0
  128. package/dist/integrations/harnesses/opencode/session-log-v2.js +140 -0
  129. package/dist/integrations/harnesses/opencode/session-log.js +104 -115
  130. package/dist/integrations/harnesses/opencode/version.js +98 -0
  131. package/dist/integrations/harnesses/opencode-sdk/{harness.js → index.js} +5 -17
  132. package/dist/integrations/harnesses/opencode-sdk/sdk-runner.js +105 -206
  133. package/dist/integrations/harnesses/opencode-sdk/v1-adapter.js +199 -0
  134. package/dist/integrations/harnesses/opencode-sdk/v2-adapter.js +254 -0
  135. package/dist/integrations/harnesses/opencode-sdk/wire.js +66 -0
  136. package/dist/integrations/harnesses/openhands/index.js +1 -0
  137. package/dist/integrations/harnesses/pi/index.js +1 -0
  138. package/dist/integrations/harnesses/shared.js +2 -0
  139. package/dist/integrations/harnesses/types.js +2 -0
  140. package/dist/llm/client.js +74 -14
  141. package/dist/output/cli-hints.js +1 -1
  142. package/dist/output/context.js +10 -19
  143. package/dist/output/format-exempt.js +5 -8
  144. package/dist/output/shapes/helpers.js +1 -22
  145. package/dist/output/shapes/passthrough.js +0 -1
  146. package/dist/output/shapes.js +3 -31
  147. package/dist/output/stdout.js +5 -1
  148. package/dist/output/text/command-format.js +6 -1
  149. package/dist/output/text/workflow-format.js +4 -22
  150. package/dist/scripts/akm-migrate-node.js +15769 -16731
  151. package/dist/scripts/akm-migrate.js +16339 -17297
  152. package/dist/setup/detect.js +10 -4
  153. package/dist/setup/harness-config-import.js +5 -14
  154. package/dist/setup/setup.js +1 -1
  155. package/dist/setup/steps/tasks.js +12 -13
  156. package/dist/sources/providers/git-stash.js +94 -13
  157. package/dist/storage/repositories/index-utility-repository.js +2 -32
  158. package/dist/storage/repositories/index-vec-repository.js +4 -0
  159. package/dist/storage/repositories/task-history-repository.js +0 -5
  160. package/dist/storage/repositories/workflow-runs-repository.js +5 -15
  161. package/dist/tasks/embedded.js +2 -1
  162. package/dist/tasks/run/run-command-task.js +9 -1
  163. package/dist/tasks/run/run-workflow-task.js +4 -3
  164. package/dist/tasks/run/task-history.js +0 -2
  165. package/dist/tasks/run/task-log.js +38 -1
  166. package/dist/tasks/schedule-gates.js +39 -0
  167. package/dist/tasks/scheduler-binding.js +0 -16
  168. package/dist/tasks/scheduler-sync.js +3 -97
  169. package/dist/tasks/source/bounded-document.js +1 -1
  170. package/dist/tasks/source/task-source-v4.js +2 -12
  171. package/dist/tasks/task-run-reserved-flags.js +2 -31
  172. package/dist/workflows/authoring/authoring.js +6 -6
  173. package/dist/workflows/compile.js +8 -65
  174. package/dist/workflows/exec/child-workflow.js +22 -3
  175. package/dist/workflows/exec/native-executor.js +12 -147
  176. package/dist/workflows/exec/run-workflow.js +31 -103
  177. package/dist/workflows/exec/step-work.js +9 -178
  178. package/dist/workflows/exec/unit-dispatch.js +0 -10
  179. package/dist/workflows/freeze/environment.js +3 -44
  180. package/dist/workflows/freeze/freeze.js +8 -41
  181. package/dist/workflows/freeze/targets/child-workflow.js +27 -63
  182. package/dist/workflows/freeze/targets/command.js +2 -16
  183. package/dist/workflows/freeze/targets/shell.js +0 -2
  184. package/dist/workflows/freeze/task-bindings.js +2 -28
  185. package/dist/workflows/ir/params.js +12 -2
  186. package/dist/workflows/parser.js +82 -232
  187. package/dist/workflows/plan.js +1 -1
  188. package/dist/workflows/renderer.js +10 -19
  189. package/dist/workflows/runtime/run-plan.js +11 -53
  190. package/dist/workflows/runtime/runs.js +4 -27
  191. package/dist/workflows/source-files.js +12 -16
  192. package/dist/workflows/source-semantics.js +1 -93
  193. package/docs/README.md +43 -42
  194. package/docs/agents/README.md +15 -0
  195. package/docs/agents/agent-install.md +14 -0
  196. package/docs/architecture/0.10-process-rules.md +827 -0
  197. package/docs/architecture/README.md +67 -0
  198. package/docs/architecture/adapters.md +258 -0
  199. package/docs/architecture/akm-architecture-decision-history.md +2055 -0
  200. package/docs/architecture/akm-core-principles.md +126 -0
  201. package/docs/architecture/architecture.md +578 -0
  202. package/docs/architecture/comparisons/claude-code-vs-akm-workflows-full.md +550 -0
  203. package/docs/architecture/decisions/0001-no-interpolation-attached-structured-context.md +72 -0
  204. package/docs/architecture/decisions/0002-unit-reuse-and-input-hash-scope.md +142 -0
  205. package/docs/architecture/decisions/0003-child-env-allowlist-and-provenance.md +189 -0
  206. package/docs/architecture/decisions/0004-task-input-contract-and-flag-coercion.md +97 -0
  207. package/docs/architecture/decisions/0005-task-result-vocabulary-and-legacy-read-mapping.md +108 -0
  208. package/docs/architecture/decisions/0006-task-source-version-routing.md +124 -0
  209. package/docs/architecture/decisions/0007-workflow-composition-bounds.md +83 -0
  210. package/docs/architecture/decisions/0008-task-binding-normalization.md +88 -0
  211. package/docs/architecture/decisions/0009-child-run-publication-column-parity.md +80 -0
  212. package/docs/architecture/decisions/0010-driver-protocol-cut.md +36 -0
  213. package/docs/architecture/decisions/0011-engine-run-loop-invariants.md +125 -0
  214. package/docs/architecture/decisions/README.md +62 -0
  215. package/docs/architecture/improvement.md +479 -0
  216. package/docs/architecture/internals/classification.md +154 -0
  217. package/docs/architecture/internals/fresh-host-rebuild-runbook.md +40 -0
  218. package/docs/architecture/internals/functional-contract-patterns.md +340 -0
  219. package/docs/architecture/internals/health-advisories.md +110 -0
  220. package/docs/architecture/internals/improve-workflow.md +719 -0
  221. package/docs/architecture/internals/indexing.md +498 -0
  222. package/docs/architecture/internals/registry-network-boundary.md +57 -0
  223. package/docs/architecture/internals/search.md +248 -0
  224. package/docs/architecture/internals/storage-locations.md +943 -0
  225. package/docs/architecture/persisted-data-compat.md +68 -0
  226. package/docs/architecture/reviews/env-secret-access.md +319 -0
  227. package/docs/architecture/runtime-boundary-design.md +153 -0
  228. package/docs/architecture/specs/0.9.0-close-out-plan.md +361 -0
  229. package/docs/architecture/specs/0.9.0-decisions.md +532 -0
  230. package/docs/architecture/specs/0.9.0-docs-code-drift-register.md +745 -0
  231. package/docs/architecture/specs/0.9.0-open-items-register.md +135 -0
  232. package/docs/architecture/specs/0.9.0-public-api-issue-backlog.md +740 -0
  233. package/docs/architecture/specs/0.9.0-release-surface-review.md +636 -0
  234. package/docs/architecture/specs/agent-command-engine-model-design.md +513 -0
  235. package/docs/architecture/specs/akm-0.9.0-bundle-adapter-spec.md +501 -0
  236. package/docs/architecture/specs/akm-0.9.0-ref-grammar-decision.md +291 -0
  237. package/docs/architecture/specs/akm-format-neutral-bundle-workspace-spec.md +2059 -0
  238. package/docs/architecture/specs/di-seams-plan.md +539 -0
  239. package/docs/architecture/specs/driver-protocol-keep-or-cut.md +275 -0
  240. package/docs/architecture/specs/fact-asset-type.md +142 -0
  241. package/docs/architecture/specs/improve-collapse-churn-detector-design.md +634 -0
  242. package/docs/architecture/specs/okf-support.md +148 -0
  243. package/docs/architecture/specs/ref.md +329 -0
  244. package/docs/architecture/specs/reviews/task-workflow-unification/README.md +72 -0
  245. package/docs/architecture/specs/reviews/task-workflow-unification/findings-consolidated.md +152 -0
  246. package/docs/architecture/specs/reviews/task-workflow-unification/library-eval-alternatives.md +352 -0
  247. package/docs/architecture/specs/reviews/task-workflow-unification/library-eval-bunqueue.md +300 -0
  248. package/docs/architecture/specs/reviews/task-workflow-unification/library-eval-openworkflow.md +402 -0
  249. package/docs/architecture/specs/reviews/task-workflow-unification/opus-review-1.md +758 -0
  250. package/docs/architecture/specs/reviews/task-workflow-unification/opus-review-2.md +645 -0
  251. package/docs/architecture/specs/reviews/task-workflow-unification/opus-review-3.md +602 -0
  252. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r1-adversarial.md +27 -0
  253. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r1-architecture.md +27 -0
  254. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r1-coverage.md +74 -0
  255. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r1-security.md +15 -0
  256. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r2-adversarial.md +132 -0
  257. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r2-verification.md +147 -0
  258. package/docs/architecture/specs/stash-conventions-code-spec.md +275 -0
  259. package/docs/architecture/specs/stash-organization-conventions.md +377 -0
  260. package/docs/architecture/specs/task-workflow-format-unification.md +721 -0
  261. package/docs/architecture/specs/workflow-engine-buy-vs-build.md +231 -0
  262. package/docs/architecture/specs/workflow-format-unification.md +432 -0
  263. package/docs/architecture/testing/manual-testing-checklist.md +3411 -0
  264. package/docs/architecture/testing/okf-v0.2-conformance-runbook.md +924 -0
  265. package/docs/architecture/testing/task-workflow-manual-tests.md +1720 -0
  266. package/docs/architecture/testing/testing-workflow.md +446 -0
  267. package/docs/architecture/workflow-engine.md +223 -0
  268. package/docs/guides/README.md +33 -0
  269. package/docs/guides/author-bundles.md +310 -0
  270. package/docs/guides/author-workflows.md +490 -0
  271. package/docs/guides/bundles.md +323 -0
  272. package/docs/guides/capture-knowledge.md +136 -0
  273. package/docs/guides/claude-code-vs-akm-workflows.md +29 -0
  274. package/docs/guides/concepts.md +93 -0
  275. package/docs/guides/discover-and-load.md +158 -0
  276. package/docs/guides/getting-started.md +240 -0
  277. package/docs/guides/improve-the-library.md +247 -0
  278. package/docs/guides/knowledge-management.md +18 -0
  279. package/docs/guides/recipes/headless-install.md +97 -0
  280. package/docs/guides/recipes/website-source.md +28 -0
  281. package/docs/guides/run-workflows.md +279 -0
  282. package/docs/guides/scheduling.md +131 -0
  283. package/docs/guides/use-with-any-agent.md +174 -0
  284. package/docs/guides/wikis.md +81 -0
  285. package/docs/integration/bundling-akm.md +7 -6
  286. package/docs/maintainers/README.md +19 -0
  287. package/docs/maintainers/curate-workmap.md +335 -0
  288. package/docs/maintainers/eval.md +3 -0
  289. package/docs/maintainers/local-development.md +108 -0
  290. package/docs/maintainers/release-checklist.md +135 -0
  291. package/docs/migration/README.md +4 -2
  292. package/docs/migration/release-notes/0.0.13.md +1 -1
  293. package/docs/migration/release-notes/0.1.0.md +1 -1
  294. package/docs/migration/release-notes/0.10.0.md +201 -0
  295. package/docs/migration/release-notes/0.2.0.md +1 -1
  296. package/docs/migration/release-notes/0.3.0.md +1 -1
  297. package/docs/migration/release-notes/0.5.0.md +1 -1
  298. package/docs/migration/release-notes/0.6.0.md +1 -1
  299. package/docs/migration/release-notes/0.7.0.md +1 -1
  300. package/docs/migration/release-notes/0.7.3.md +2 -2
  301. package/docs/migration/release-notes/0.7.4.md +1 -1
  302. package/docs/migration/release-notes/0.7.5.md +1 -1
  303. package/docs/migration/release-notes/0.8.0.md +1 -1
  304. package/docs/migration/release-notes/0.9.0.md +1 -1
  305. package/docs/migration/release-notes/0.9.14.md +1 -1
  306. package/docs/migration/release-notes/0.9.15.md +1 -1
  307. package/docs/migration/release-notes/0.9.16.md +1 -1
  308. package/docs/migration/release-notes/0.9.17.md +1 -1
  309. package/docs/migration/release-notes/0.9.19.md +1 -1
  310. package/docs/migration/release-notes/0.9.2.md +1 -1
  311. package/docs/migration/release-notes/README.md +28 -31
  312. package/docs/migration/v0.5-to-v0.6.md +759 -0
  313. package/docs/migration/v0.8-to-v0.9.md +1 -1
  314. package/docs/migration/v0.9-to-v0.10.md +507 -0
  315. package/docs/plans/0.9.2-agent-command-workflow-plan.md +423 -0
  316. package/docs/posts/README.md +30 -0
  317. package/docs/posts/akm-command-tour.md +495 -0
  318. package/docs/posts/akm-logo-sized.webp +0 -0
  319. package/docs/posts/belief-aware-memory-12.md +139 -0
  320. package/docs/posts/config-v2-lessons-16.md +191 -0
  321. package/docs/posts/improve-loop-autonomous-10.md +225 -0
  322. package/docs/posts/improve-pipeline-debugging-0803.md +179 -0
  323. package/docs/posts/intro-part-01.md +76 -0
  324. package/docs/posts/intro-part-02.md +221 -0
  325. package/docs/posts/intro-part-03.md +190 -0
  326. package/docs/posts/intro-part-04.md +221 -0
  327. package/docs/posts/llm-mode-reflect-13.md +166 -0
  328. package/docs/posts/openpalm-built-on-akm.md +86 -0
  329. package/docs/posts/progressive-disclosure-06.md +129 -0
  330. package/docs/posts/proposal-safety-net-15.md +112 -0
  331. package/docs/posts/release-0.5.0.md +247 -0
  332. package/docs/posts/release-0.6.0.md +117 -0
  333. package/docs/posts/release-0.7.0.md +159 -0
  334. package/docs/posts/release-0.8.0.md +332 -0
  335. package/docs/posts/scattered-skills-05.md +100 -0
  336. package/docs/posts/task-assets-persistent-workflows-11.md +222 -0
  337. package/docs/posts/team-skills-07.md +198 -0
  338. package/docs/posts/wiki-agent-knowledge-08.md +223 -0
  339. package/docs/posts/workflows-vaults-09.md +321 -0
  340. package/docs/product-surface.md +54 -0
  341. package/docs/reference/README.md +2 -2
  342. package/docs/reference/api.md +65 -0
  343. package/docs/reference/asset-types.md +166 -0
  344. package/docs/reference/bundle-types.md +2 -4
  345. package/docs/reference/cli.md +163 -192
  346. package/docs/reference/configuration.md +101 -20
  347. package/docs/reference/data-and-telemetry.md +2 -2
  348. package/docs/reference/env-and-secrets.md +126 -0
  349. package/docs/reference/memory.md +124 -0
  350. package/docs/reference/refs.md +156 -0
  351. package/docs/reference/registry.md +489 -0
  352. package/docs/reference/supported-formats.md +3 -4
  353. package/docs/reference/tasks.md +12 -19
  354. package/docs/reference/website-sources.md +141 -0
  355. package/docs/reference/workflow-schema.md +89 -317
  356. package/docs/reference/workflows.md +20 -48
  357. package/package.json +23 -16
  358. package/schemas/akm-config.json +2 -243
  359. package/schemas/akm-task.json +2 -3
  360. package/schemas/akm-workflow.json +47 -84
  361. package/dist/assets/improve-strategies/catchup.json +0 -41
  362. package/dist/assets/improve-strategies/proactive-maintenance.json +0 -24
  363. package/dist/assets/improve-strategies/quick.json +0 -17
  364. package/dist/assets/improve-strategies/reflect-distill.json +0 -29
  365. package/dist/assets/improve-strategies/thorough.json +0 -49
  366. package/dist/assets/prompts/retrieval-relevance-judge.md +0 -6
  367. package/dist/assets/tasks/improve/akm-improve-catchup.yml +0 -6
  368. package/dist/assets/tasks/improve/akm-improve-frequent.yml +0 -4
  369. package/dist/assets/tasks/improve/akm-improve-nightly.yml +0 -4
  370. package/dist/cli/retired-commands.js +0 -118
  371. package/dist/commands/improve/retrieval-gate.js +0 -132
  372. package/dist/commands/tasks/validate.js +0 -176
  373. package/dist/core/config/legacy-source-shape-shim.js +0 -117
  374. package/dist/indexer/feedback/utility-policy.js +0 -75
  375. package/dist/integrations/harnesses/ids.js +0 -28
  376. package/dist/tasks/source/task-source-v3-frozen.js +0 -424
  377. package/dist/tasks/source/task-to-v4.js +0 -863
  378. package/dist/workflows/exec/worktree.js +0 -372
  379. package/dist/workflows/freeze/child-output-references.js +0 -83
  380. package/dist/workflows/freeze/identity.js +0 -22
  381. package/dist/workflows/freeze/targets/script.js +0 -50
  382. package/dist/workflows/freeze/targets/task.js +0 -124
  383. package/dist/workflows/github-yaml.js +0 -506
  384. package/dist/workflows/runtime/run-outputs.js +0 -80
@@ -0,0 +1,108 @@
1
+ # Local Development
2
+
3
+ Use an explicit launcher for each kind of contributor check. This keeps live
4
+ source, build output, packed-package behavior, and the machine-wide `akm`
5
+ installation from being mistaken for one another.
6
+
7
+ The npm package requires Node.js >= 22 and npm. A working Bun >= 1.0 is optional
8
+ for the installed launcher and remains the repository's primary development and
9
+ test runtime. The standalone binaries are runtime-free.
10
+
11
+ ## Live Source
12
+
13
+ Run the working tree directly for the normal edit-test loop:
14
+
15
+ ```bash
16
+ bun src/cli.ts search "deploy"
17
+ bun src/cli.ts task doctor
18
+ ```
19
+
20
+ This executes current uncommitted source. Tests that spawn the CLI should use
21
+ the same explicit `bun src/cli.ts` form with the repository as their working
22
+ directory rather than resolving `akm` from `PATH`.
23
+
24
+ ## Built Launcher
25
+
26
+ Build first, then invoke the package launcher from `dist/`:
27
+
28
+ ```bash
29
+ bun run build
30
+ node dist/akm search "deploy"
31
+ node dist/akm task doctor
32
+ ```
33
+
34
+ This checks generated imports, copied assets, and launcher behavior while still
35
+ keeping the invocation tied to this checkout. `node dist/akm` is portable across
36
+ Windows, macOS, and Linux; on POSIX systems the executable `./dist/akm` form is
37
+ also available.
38
+
39
+ ## Isolated Package Acceptance
40
+
41
+ Run the repository's package acceptance command. It builds and packs the package,
42
+ installs it under an isolated temporary prefix, and exercises that installed
43
+ launcher without replacing the machine's global `akm`:
44
+
45
+ ```bash
46
+ bun run test:package
47
+ ```
48
+
49
+ The command builds, packs, installs under a temporary npm prefix, and checks the
50
+ installed launchers. It does not run setup or test application-state isolation.
51
+
52
+ ## Intentional Global Checkout Install
53
+
54
+ Only install the checkout globally when you deliberately want the machine-wide
55
+ `akm` command to resolve to this checkout's package:
56
+
57
+ ```bash
58
+ bun run build:install
59
+ command -v akm
60
+ akm --version
61
+ ```
62
+
63
+ This replaces the globally resolved package and can affect agents, shells, and
64
+ scheduled tasks that invoke `akm`. Re-run `akm task sync --rebind` only when you
65
+ intend existing scheduler entries to capture the new installed runtime, then
66
+ verify with `akm task doctor`.
67
+
68
+ ## Transitional Machine-Local Wrapper
69
+
70
+ Some development machines still have a historical machine-local wrapper. Leave
71
+ that file untouched, but treat it as transitional: do not document wrapper
72
+ modes, depend on it in tests, or use it to choose between source and package
73
+ behavior. Invoke `bun src/cli.ts`, `node dist/akm`, or `bun run test:package`
74
+ explicitly instead.
75
+
76
+ ## Inspecting a Live Database
77
+
78
+ `state.db`, `logs.db`, and `index.db` are WAL-mode SQLite databases that akm
79
+ (or a scheduled task) may be writing at any moment. Open a live one only with
80
+ `sqlite3 -readonly`:
81
+
82
+ ```bash
83
+ sqlite3 -readonly ~/.local/share/akm/state.db "PRAGMA integrity_check;"
84
+ sqlite3 -readonly ~/.local/share/akm/state.db ".backup /tmp/state-snapshot.db"
85
+ ```
86
+
87
+ Do not open a live akm database with a plain (read-write) `sqlite3`
88
+ connection, even just to run `.backup`. Through 0.9.17 an akm process could
89
+ silently lose its SQLite file locks (copying the database file inside a
90
+ process that holds it open drops them). An older `sqlite3` (< 3.51, and
91
+ Python's `sqlite3` module on many hosts) opened read-write at that moment
92
+ sees no other reader, takes an exclusive lock when it closes, and deletes the
93
+ `-wal`/`-shm` files akm is still using: that produced a `state.db` with
94
+ colliding rowids and stale index entries. `-readonly` avoids the whole class
95
+ of risk by never taking a write connection.
96
+
97
+ ## Verification
98
+
99
+ Use focused tests while iterating, then the repository gates before pushing:
100
+
101
+ ```bash
102
+ bun test tests/<focused-file>.test.ts
103
+ bun run check:changed
104
+ bun run check
105
+ ```
106
+
107
+ For eval scripts that accept `AKM_BIN`, point it at the exact launcher under
108
+ test rather than relying on `PATH`.
@@ -0,0 +1,135 @@
1
+ # Release Checklist
2
+
3
+ Use this checklist for every release candidate. Local release validation and
4
+ scheduled CI are useful inputs, but neither substitutes for a successful gated
5
+ run of the exact commit that will be published.
6
+
7
+ ## 1. Freeze the candidate
8
+
9
+ 1. Finish the version, changelog, migration-note, and release-PR changes. From
10
+ 0.10 the version is a monthly release number, `0.10.YYMMNN` (see step 4):
11
+ `bun scripts/release-version.ts next` prints the next free one for this
12
+ month (UTC). Every release, whatever its stage, takes the next number.
13
+ Commit it in `package.json` and cut the CHANGELOG as
14
+ `## [0.10.YYMMNN] - YYYY-MM-DD`. A prerelease stage is not committed: it is
15
+ chosen when the Release workflow runs, and the release's CHANGELOG section
16
+ covers it.
17
+ 2. Record `git rev-parse HEAD`. This is the full 40-character release-candidate SHA.
18
+ 3. Run `bun run release:check` locally. If Docker is unavailable, run
19
+ `./tests/release-check.sh --skip-docker` and rely on the gated Docker job
20
+ below for the container matrix.
21
+
22
+ Any commit added after this point creates a new candidate and invalidates the
23
+ gated evidence collected for the previous SHA.
24
+
25
+ ## 2. Collect exact-SHA gated evidence
26
+
27
+ GitHub only offers a scheduled or manually dispatched workflow after its file
28
+ exists on the default branch. When validating the commit that first introduces
29
+ or changes this workflow, create a unique lightweight candidate tag at the
30
+ recorded SHA:
31
+
32
+ ```sh
33
+ candidate_sha="$(git rev-parse HEAD)"
34
+ candidate_short_sha="$(git rev-parse --short=12 HEAD)"
35
+ candidate_version="$(node -p 'require("./package.json").version')"
36
+ candidate_tag="gated-ci/candidate-${candidate_version}-${candidate_short_sha}"
37
+ git tag "$candidate_tag" "$candidate_sha"
38
+ git push origin "refs/tags/$candidate_tag"
39
+ ```
40
+
41
+ Verify that the tag target is the exact candidate commit recorded in step 1.
42
+ The `gated-ci/candidate-*` trigger runs every gated suite from the workflow in
43
+ that tagged commit. The resolver checks that the checkout equals the immutable
44
+ event SHA, and the final evidence job records both that SHA and the tag ref.
45
+ Never force-move or reuse a candidate tag; a changed commit needs a new tag and
46
+ a new run.
47
+
48
+ After **Gated CI** exists on the default branch, manual dispatch is an
49
+ equivalent exact-SHA path. From the repository's Actions page, choose **Run
50
+ workflow** and supply:
51
+
52
+ - `candidate_sha`: the full 40-character SHA recorded above, never a branch or
53
+ tag name.
54
+
55
+ Every suite runs; there is no suite selector.
56
+
57
+ The manual request rejects abbreviated SHAs and checks out that immutable
58
+ commit for every gate. Wait for all of these stable checks to succeed on either
59
+ candidate path:
60
+
61
+ - `Gated / Semantic Search`
62
+ - `Gated / Docker Install`
63
+ - `Gated / Native Scheduler / Linux`
64
+ - `Gated / Native Scheduler / macOS`
65
+ - `Gated / Native Scheduler / Windows`
66
+ - `Gated / Release Candidate Evidence`
67
+
68
+ The final evidence job records the requested and resolved SHA, the trigger ref,
69
+ each suite's result, and a run link in the workflow summary. A weekly run is
70
+ drift detection, not release evidence, because it may cover a different
71
+ commit.
72
+
73
+ Manual and tagged candidate runs are cache restore-only. Only a successful
74
+ scheduled run of the workflow on the repository's default branch may save the
75
+ HuggingFace model cache; its key identifies both the embedding model and the
76
+ source/lock inputs. This prevents candidate-controlled workflow code from
77
+ publishing cache entries while still avoiding repeated model downloads.
78
+
79
+ Copy the successful run URL (for example,
80
+ `https://github.com/itlackey/akm/actions/runs/<run-id>`) and the exact candidate
81
+ SHA into both the release PR and its milestone/parent tracker. Do not publish
82
+ from a candidate whose evidence link names a different SHA, whose final
83
+ evidence job is skipped, or whose run was re-run after the candidate changed.
84
+
85
+ ## 3. Gated CI does not run on pull requests
86
+
87
+ Gated CI runs on three triggers only: the weekly schedule, an exact-SHA
88
+ `workflow_dispatch`, and a `gated-ci/candidate-*` tag. All three run every
89
+ suite.
90
+
91
+ There used to be a `Gated / Detect Changed Paths` job that also ran these on
92
+ PRs, selecting suites by regex-matching the diff against path lists. It was
93
+ deleted in 0.9.8: the patterns had gone stale — they still named test files a
94
+ reorganisation had moved or deleted, so it was silently under-selecting suites
95
+ and nobody noticed. A build-policing job that quietly stops policing is worse
96
+ than no job, because its green status is read as coverage.
97
+
98
+ Nothing about release evidence changes. Step 2 was always the requirement, and
99
+ it never went through the PR path.
100
+
101
+ The candidate-tag trigger is reserved for release evidence and workflow
102
+ rollout: it always runs `all`, because a tag-push workflow is the path available
103
+ before the workflow file reaches the default branch.
104
+
105
+ ## 4. Publish
106
+
107
+ After the exact-SHA gated run and local release check are green, trigger the
108
+ Release workflow with the version already committed in `package.json`. Keep the
109
+ candidate SHA and Gated CI run URL in the release record so the published
110
+ artifact's validation can be audited later.
111
+
112
+ 0.10 and later use monthly release numbers, `0.10.YYMMNN`: `YY` the UTC year,
113
+ `MM` the month and `NN` the release in that month (`01` to `99`), two digits
114
+ each (see [`STABILITY.md`](../../STABILITY.md)). The first release of 2026-10 is
115
+ `0.10.261001`. `bun scripts/release-version.ts next` takes `NN` as one above the
116
+ highest release already on npm for this UTC month, with or without a stage
117
+ (`npm view akm-cli versions`), so numbering follows what was published, not
118
+ what was committed. The retired 8-digit daily builds (`0.10.26101001-alpha` to
119
+ `0.10.26101202-alpha`) are not counted.
120
+
121
+ The workflow has two inputs:
122
+
123
+ - `version`: the version committed in `package.json`, as before. The workflow
124
+ rejects a malformed one (`scripts/release-version.ts`, tested in
125
+ `tests/release-version.test.ts`): two digits each for `YY`, `MM`, `NN`, a
126
+ month 01 to 12, `NN` 01 to 99; the old 8-digit daily form is rejected. For
127
+ 0.9 and older it is the `X.Y.Z` as before.
128
+ - `stage`: `none` publishes `<version>` to the npm `latest` tag and as a GitHub
129
+ release. `alpha`, `beta` or `rc` publishes `<version>-<stage>` to `next` as a
130
+ GitHub prerelease (no `.N`: every release has its own number). There is no
131
+ promoting one build through stages: the next release, at any stage, commits
132
+ the next number (`0.10.261001-alpha`, then `0.10.261002-beta`, then
133
+ `0.10.261003`).
134
+
135
+ `bun scripts/release-version.ts validate <version>` checks a version by hand.
@@ -2,6 +2,8 @@
2
2
 
3
3
  Upgrade guides and per-release migration notes.
4
4
 
5
+ - [v0.9 -> v0.10 migration guide](v0.9-to-v0.10.md) -- Upgrade order for a 0.9.15+ install, every removed CLI spelling, strategy, config key and workflow feature with its replacement, changed `akm improve` defaults, the OpenCode plugins, and `0.10.YYMMNN` version numbers
6
+ - [v0.10.0 release note](release-notes/0.10.0.md) -- Summary of the 0.10 series: the 0.9.15 version floor, `--shape`/`--target`/`help agents` removals, `default` and `consolidate` as the only built-in strategies, OpenCode 2, feedback-scaled ranking, and what is gone
5
7
  - [v0.9.1 -> v0.9.2 migration guide](v0.9.1-to-v0.9.2.md) -- Task-v2/task-v3 to task source v4 conversion, the durable-v4-family workflow boundary at executable `irVersion: 5`, and release behavior changes
6
8
  - [v0.9.2 release note](release-notes/0.9.2.md) -- Self-contained terminal upgrade summary shipped for `akm help migrate 0.9.2`
7
9
  - [v0.9.16 release note](release-notes/0.9.16.md) -- Source-bound scheduler grants, local execution authority, and split unsafe overrides
@@ -9,5 +11,5 @@ Upgrade guides and per-release migration notes.
9
11
  - [v0.9.19 release note](release-notes/0.9.19.md) -- `akm improve` scoped to the bundle it writes to (scheduled runs need one `--bundle` run per other bundle), `akm proposal reopen` and the retire-proposal diff, and fewer repeat consolidate promotions
10
12
  - [v0.8 -> current v0.9 migration guide](v0.8-to-v0.9.md) -- Package upgrade with fresh current config/state and explicit task conversion
11
13
  - [v0.7 -> v0.8 migration guide](v0.7-to-v0.8.md) -- Task schema and 0.8-era changes
12
- - [v0.5 -> v0.6 migration guide](https://github.com/itlackey/akm/blob/main/docs/migration/v0.5-to-v0.6.md) -- Terminology cut, registry schema v3, publisher changes
13
- - [Release notes](release-notes/) -- The short per-release notes `akm help migrate <version>` prints (bundled with the npm package)
14
+ - [v0.5 -> v0.6 migration guide](v0.5-to-v0.6.md) -- Terminology cut, registry schema v3, publisher changes
15
+ - [Release notes index](release-notes/README.md) -- The short per-release notes `akm help migrate <version>` prints, with links to every bundled note
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.0.13
1
+ # akm v0.0.13 migration notes
2
2
 
3
3
  - Initial public release.
4
4
  - No migration steps are required for earlier akm versions.
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.1.0
1
+ # akm v0.1.0 migration notes
2
2
 
3
3
  - The package and project were rebranded from Agent-i-Kit to akm.
4
4
  - Update package references from `agent-i-kit` to `akm-cli`.
@@ -0,0 +1,201 @@
1
+ # akm v0.10.0 migration notes
2
+
3
+ 0.10 is a clean-up and tuning release. It covers the daily alphas
4
+ 0.10.26101001 through 0.10.26101202 and the monthly releases that follow
5
+ (`0.10.YYMMNN`). It
6
+ removes surface that nothing used, merges CLI spellings, sets the improve
7
+ defaults from measurements, and adds OpenCode 2 support. It adds no `state.db`
8
+ migration and keeps `index.db` at layout 26.
9
+
10
+ To upgrade from 0.9.15 or later:
11
+
12
+ ```sh
13
+ akm upgrade
14
+ akm migrate status
15
+ akm health
16
+ ```
17
+
18
+ `akm upgrade` installs the new release and runs `akm migrate apply`. Before
19
+ you upgrade, search your scripts, tasks and agent instructions for the removed
20
+ spellings below: they fail with exit 2 and no hint. The full ordered procedure,
21
+ every replacement and the verification steps are in the
22
+ [0.9 to 0.10 migration guide](../v0.9-to-v0.10.md).
23
+
24
+ ## Version floor
25
+
26
+ 0.10 reads what 0.9.15 and later wrote. It converts nothing older. A config in
27
+ the old `stashDir` / `sources[]` / `installed[]` layout, or with an `extraParams`
28
+ key that shadows a first-class engine field, fails to load and names
29
+ `akm migrate apply` under akm 0.9.x. If you are on 0.9.14 or earlier, install
30
+ 0.9.31, run `akm migrate apply`, then upgrade.
31
+
32
+ ## Version numbers
33
+
34
+ A 0.10 release is numbered `0.10.YYMMNN`: the UTC year and month, then the
35
+ release within that month. Every release takes the next number, whatever its
36
+ stage. A prerelease carries its stage only (`-alpha`, `-beta`, `-rc`).
37
+ Prereleases publish to the npm `next` tag and stable releases to `latest`.
38
+ `akm upgrade --next` follows `next`. Versions sort by month and then number, so
39
+ the number says nothing about how big a change is. Read the CHANGELOG, which
40
+ still marks breaking changes. The 0.9 line keeps `0.9.N`.
41
+
42
+ The daily alphas used an 8-digit patch (`0.10.YYMMDDNN`), which semver sorts
43
+ above every `0.10.YYMMNN`. If you are on one, install the first monthly release
44
+ explicitly once (`npm install -g akm-cli@0.10.261001-beta`); `akm upgrade` will
45
+ not offer it.
46
+
47
+ ## Breaking changes
48
+
49
+ Each of these is an unknown flag or command (exit 2), with no alias:
50
+
51
+ - `akm help agents` is gone. Use `akm hints`, or `akm hints --detail brief` for
52
+ the short guide.
53
+ - `--shape` is gone. `--detail agent` replaces `--shape agent`, and `--detail
54
+ brief` replaces `--shape summary`. `--detail` takes `brief`, `normal`, `full`
55
+ or `agent`.
56
+ - `--target` is gone from `import`, `env create`, `env remove`, `secret set`,
57
+ `proposal accept`, `proposal diff` and `proposal revert`. Use `--bundle`.
58
+ - `akm task validate` is folded into `akm lint --type tasks`. `akm task list`
59
+ is gone; use `akm search --type task`.
60
+ - `akm config path --all` is gone. `akm info` reports the directories.
61
+ - `akm improve --plan` is gone; use `--dry-run`. `akm improve --auto-accept` is
62
+ gone; use `akm improve && akm proposal drain --promote --yes`.
63
+ - `--run` and `--since` belong to `akm improve report`. `akm improve report` and
64
+ `akm improve judge` are real subcommands.
65
+ - `akm workflow create --reset` is gone; use `--force`.
66
+
67
+ Other breaking changes:
68
+
69
+ - The built-in improve strategies `quick`, `reflect-distill`, `thorough`,
70
+ `catchup` and `proactive-maintenance` are removed. Only `default` and
71
+ `consolidate` are built in. A config block with one of those names still
72
+ loads, as a user-defined strategy that inherits `default`. A name with no
73
+ block makes `akm improve` fail and name `default`. The task templates
74
+ `akm-improve-nightly`, `akm-improve-frequent` and `akm-improve-catchup` are
75
+ removed; a copy in your bundle keeps its old `--strategy` and must be edited.
76
+ - Improve config keys that measured no effect or that nothing read are removed:
77
+ `consolidate.antiCollapse`, `p90ChunkSecondsDefault`, `minPoolSize`,
78
+ `distill.fidelityCheck`, `distill.limit`, `reflect.lowValueFilter`,
79
+ `memoryInference.cls`, `proactiveMaintenance.limit`, `triage.policy`,
80
+ `improve.salience.outcomeWeightEnabled` and `salienceThreshold`. A config that
81
+ sets one still loads; `akm migrate apply` drops it.
82
+ - The GitHub-shaped YAML workflow format is removed, with workflow-step
83
+ `uses: tasks/...`, `scripts/...` and `commands/...`. Workflows are Markdown
84
+ only. Top-level `outputs:`, `route` steps and `unit.isolation: worktree` are
85
+ removed and are lint errors.
86
+ - `BundleAdapter.placeNew()` is removed. Nothing called it.
87
+ - `package.json` has an `exports` map: only `akm-cli/api`, `akm-cli/package.json`
88
+ and `akm-cli/dist/*` resolve.
89
+ - The runtime conversions for config older than 0.9.15 are removed, as above.
90
+
91
+ ## New
92
+
93
+ - **OpenCode 2.** akm detects the OpenCode major from the engine's binary and
94
+ drives OpenCode 1 or 2 through its own adapter, for SDK dispatch, CLI
95
+ dispatch, session history and config import. OpenCode 1 keeps working and
96
+ logs one warning recommending OpenCode 2. `akm upgrade` and `akm health` know
97
+ the new `akm-opencode-v2` plugin.
98
+ - **`akm-cli/api`.** `curate(query, options)` returns exactly what
99
+ `akm --detail agent -q curate` prints, computed in-process. It is for the
100
+ plugins; nothing else is a public API.
101
+ - **Feedback changes ranking.** `akm search` and `akm curate` scale each hit by
102
+ your feedback on it. The effect is small and the same for every asset: about
103
+ +2, +3, +5 and +9 percent for 1, 2, 5 and 20 positives. Improve, task and
104
+ audit feedback does not count.
105
+ - **Distill extends a lesson** that a memory repeats, as a proposal for a person
106
+ (`distill-update`).
107
+ - **Child workflows** keep a simple form: `unit: { workflow: workflows/<name>,
108
+ with: {...} }`. A param's `default:` is now applied at run start.
109
+ - **`akm proposal extract`** is Evolving, not Experimental.
110
+ - **`akm improve <scope>`** warns when the scope matches no asset.
111
+ - **Daily-build versioning** and the `next` channel, above.
112
+
113
+ ## Changed defaults
114
+
115
+ - The `default` improve strategy now drains the proposal queue in `promote`
116
+ mode with judgment off, up to 200 accepts a run. It accepts what a quality
117
+ judge already passed and the retirements the consolidate pair pass staged.
118
+ The judgment tier is off in every built-in strategy and may accept only
119
+ consolidate promotions. Set `improve.strategies.default.processes.triage.enabled`
120
+ to `false` to leave every proposal for review.
121
+ - The proactive-maintenance lane is on in `default`: up to 15 assets a run that
122
+ have no fresh feedback and are 30 days past their last reflect or distill. Its
123
+ proposals always wait for a person.
124
+ - A manual fix (`akm feedback --replace/--with/--source`, `--superseded-by`,
125
+ `--outdated`) applies at once instead of queuing a proposal. `akm proposal
126
+ revert` undoes it.
127
+ - `akm improve` syncs a git-backed bundle before it plans, as `akm sync` does,
128
+ and again at the end. A conflict warns and the run continues. `--no-sync` and
129
+ `--no-push` apply to both.
130
+ - A reflect revision the judge does not pass but scores 3.5 or more goes to a
131
+ person as `judge-uncertain` instead of locking the asset for 14 days. A
132
+ missing distill judge queues for review instead of a 30-day lock.
133
+ - `captureMode: hot` memories are consolidated like any other memory.
134
+ - Retire proposals expire by age (`archiveRetentionDays`, default 90) like every
135
+ other proposal. The per-run `improve` and `index` log files are purged under
136
+ `improve.eventRetentionDays`.
137
+ - A standalone `akm proposal drain` resolves to promote mode on a stock install
138
+ and asks for confirmation.
139
+
140
+ ## Removed
141
+
142
+ - Reflect's retrieval regression gate. It refused 12 to 17 percent of the
143
+ revisions the judge had passed and lowered the defects fixed. A judge-passed
144
+ revision is now minted as a proposal with no further check. It had no config
145
+ key.
146
+ - The high-salience improve lane.
147
+ - The hint tables and error messages for the 0.9.0 renames, the `vault:`, `env:`
148
+ and `secret:` ref rejections, the `--from stash|both` error, and the bespoke
149
+ errors for retired config keys. They are ordinary unknown commands, flags or
150
+ keys now.
151
+ - The `targetVocab` marker on `task_history` rows and the `"mcp"` package
152
+ keyword.
153
+
154
+ ## Plugins
155
+
156
+ - `akm-opencode` is for OpenCode 1. `akm-opencode-v2` is for OpenCode 2. Each
157
+ pins one exact `akm-cli`, and `akm upgrade` holds the CLI to the pin.
158
+ - OpenCode caches the plugin spec it resolved and does not re-check it. A new
159
+ build is picked up only after the plugin's cache folder is cleared. `akm
160
+ upgrade` does this for `@latest` (or `@next`) when no OpenCode process runs.
161
+ A spec pinned in your OpenCode config is left alone.
162
+ - OpenCode 1 asks before reading or writing outside the project directory.
163
+ OpenCode 2 does not unless its config says `ask`, so akm's rejection of a
164
+ permission request only happens there once you add the rule. akm changes no
165
+ OpenCode default. See [Configuration](../../reference/configuration.md#engines).
166
+ - Plugins and scripts that pass `--shape agent` must move to `--detail agent` in
167
+ step with the CLI. A call with `--shape agent` fails on 0.10, and one with
168
+ `--detail agent` fails on 0.9.
169
+
170
+ ## Fixes worth naming
171
+
172
+ - `akm sync` fetches and merges what another host pushed before it pushes. It
173
+ used to exit 70 once another host had pushed.
174
+ - The 02:00 nightly `akm improve` no longer loses its night to the consolidate
175
+ task's lock. The shipped consolidate task passes `--timeout-ms 3600000`.
176
+ - Command tasks (`uses: commands/...`) get the 6-hour unattended default
177
+ timeout.
178
+ - A transient reflect failure no longer uses up the feedback that planned it.
179
+ - A run killed by its budget watchdog leaves a record and commits what it wrote.
180
+ - The extract per-session lock is reclaimed only from a dead holder.
181
+ - Memory inference writes to the default bundle and no longer reverts an edit
182
+ made to the parent memory during the model call.
183
+ - The consolidate pair judge no longer treats a later date alone as a
184
+ replacement: a note replaces another only when both are about the same named
185
+ thing. On the eval, `gpt-oss:120b` unsafe retirements went from 1, 2, 1 to
186
+ 0, 0, 0 over three runs.
187
+ - A gateway that answers 5xx `format_ignored` no longer fails every schema call,
188
+ and a call recovered by the retry counts as one successful call in the usage
189
+ rows.
190
+ - `akm proposal revert` of a retirement works after the 30-day archive purge.
191
+ - `akm search` no longer warns "no embedding provider is configured" on a default
192
+ install.
193
+ - A signal to `akm agent` now ends the CLI harness it started. An OpenCode 2 SDK
194
+ dispatch ends at once when akm rejects a permission request, instead of waiting
195
+ out its deadline.
196
+
197
+ For the rules each improve process follows in 0.10, see
198
+ [the 0.10 process rules](../../architecture/0.10-process-rules.md). For the
199
+ entry behind each item, run `akm help migrate <build number>` (for example
200
+ `akm help migrate 0.10.26101201`) or read the
201
+ [CHANGELOG](https://github.com/itlackey/akm/blob/main/CHANGELOG.md).
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.2.0
1
+ # akm v0.2.0 migration notes
2
2
 
3
3
  - Asset refs are user-facing `type:name` values; do not rely on URI-style refs.
4
4
  - The old fixed asset-type union was replaced by an extensible asset type system.
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.3.0
1
+ # akm v0.3.0 migration notes
2
2
 
3
3
  - The old `stash` and `kit` command groups were folded into the top-level CLI.
4
4
  - Use `akm add`, `akm list`, and `akm remove` instead of the older split command surfaces.
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.5.0
1
+ # akm v0.5.0 migration notes
2
2
 
3
3
  - New top-level surfaces: `akm wiki …`, `akm workflow …`, `akm vault …`, and `akm save`.
4
4
  - If you tried the unreleased single-wiki LLM prototype, move to the new `akm wiki …` workflow.
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.6.0
1
+ # akm v0.6.0 migration notes
2
2
 
3
3
  This release ships the v1 architecture refactor on top of the earlier 0.6
4
4
  terminology cut (`kit` → `stash` in the registry wire format). The CLI
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.7.0
1
+ # akm v0.7.0 migration notes
2
2
 
3
3
  0.7.0 is the last pre-1.0 ship in the v1 cycle. It introduces the
4
4
  proposal queue, agent reflection commands, the `lesson` asset type, the
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.7.3
1
+ # akm v0.7.3 migration notes
2
2
 
3
3
  0.7.3 includes stability improvements, security hardening, and UX refinements. Key changes include:
4
4
 
@@ -13,4 +13,4 @@ Migration notes for akm v0.7.3
13
13
  - **`.stash.json` no longer drives incremental stale detection** — editing `.stash.json` alone no longer forces directories to rescan during incremental indexing.
14
14
  - **One-shot URL ingest for `akm import` and `akm wiki stash`** — both commands now accept a single HTTP/HTTPS URL in addition to file paths and stdin. `akm import <url>` fetches the exact page, converts it to markdown, and writes it into `knowledge/` using a URL-path-derived default name. `akm wiki stash <wiki> <url>` fetches the exact page, converts it to markdown, and writes it into `wikis/<wiki>/raw/`. Neither command registers a persistent website source or crawls linked pages.
15
15
 
16
- For stash authors on the 0.7.x pre-release line: `.stash.json` remains supported for compatibility in this release, but it is deprecated and will be removed in v0.8.0. That timeline is intentional: during this aggressive pre-release phase-out window, compatibility shims do not stay around until 1.0 unless they still earn their cost. Prefer frontmatter for markdown assets and structured code comments for scripts, and migrate any remaining `.stash.json` metadata before taking the 0.8 upgrade.
16
+ For stash authors on the 0.7.x pre-release line: `.stash.json` remains supported for compatibility in this release, but it is deprecated and will be removed in v0.8.0. That timeline is intentional: during this aggressive pre-release phase-out window, compatibility shims do not stay around until 1.0 unless they still earn their cost. Prefer frontmatter for markdown assets and structured code comments for scripts, and migrate any remaining `.stash.json` metadata before taking the 0.8 upgrade.
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.7.4
1
+ # akm v0.7.4 migration notes
2
2
 
3
3
  This is a patch release that fixes the publish process. No functional changes from v0.7.3.
4
4
 
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.7.5
1
+ # akm v0.7.5 migration notes
2
2
 
3
3
  0.7.5 is a patch release that rolls up all changes shipped on `main` after v0.7.4.
4
4
 
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.8.0
1
+ # akm v0.8.0 migration notes
2
2
 
3
3
  This release combines the 0.8.0 CLI/storage break with the final improve-owned
4
4
  maintenance migration work that landed before release validation closed.
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.9.0
1
+ # akm v0.9.0 migration notes
2
2
 
3
3
  These notes apply to the 0.9.0 release candidates and final release. If you
4
4
  were already running a 0.9.0 beta, align scripts, prompts, and stash layout
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.9.14
1
+ # akm v0.9.14 migration notes
2
2
 
3
3
  The derived `index.db` generation changes from v22 to v23 to support lexical
4
4
  Markdown fragments. On the first normal read after upgrade, akm detects that
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.9.15
1
+ # akm v0.9.15 migration notes
2
2
 
3
3
  `RUN_LEASE_HELD` (a workflow run-lease refusal) and the new
4
4
  `STATE_DB_CONTENDED` (state.db write contention) now exit 75 (`EX_TEMPFAIL`)
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.9.16
1
+ # akm v0.9.16 migration notes
2
2
 
3
3
  Scheduled execution is now authorized by host-local config and bound to the
4
4
  specific source installed under a bundle id. Existing
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.9.17
1
+ # akm v0.9.17 migration notes
2
2
 
3
3
  Run this after upgrading:
4
4
 
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.9.19
1
+ # akm v0.9.19 migration notes
2
2
 
3
3
  Nothing has to run after upgrading from 0.9.18: 0.9.19 adds no config keys,
4
4
  changes no index layout, adds no state.db migration and leaves scheduler rows
@@ -1,4 +1,4 @@
1
- Migration notes for akm v0.9.2
1
+ # akm v0.9.2 migration notes
2
2
 
3
3
  Exact-prefix additive `state.db` upgrades remain automatic. The released
4
4
  historical migration 018 is classified separately because it removes retired