akm-cli 0.9.30 → 0.9.32

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 (165) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/README.md +10 -10
  3. package/ROADMAP.md +112 -0
  4. package/dist/commands/feedback-cli.js +21 -13
  5. package/dist/commands/improve/improve-cli.js +33 -12
  6. package/dist/core/errors.js +1 -0
  7. package/dist/core/file-lock.js +10 -1
  8. package/dist/indexer/usage/usage-events.js +6 -2
  9. package/dist/llm/client.js +33 -3
  10. package/dist/scripts/akm-migrate-node.js +6 -1
  11. package/dist/scripts/akm-migrate.js +6 -1
  12. package/docs/README.md +42 -41
  13. package/docs/agents/README.md +15 -0
  14. package/docs/agents/agent-install.md +14 -0
  15. package/docs/architecture/README.md +67 -0
  16. package/docs/architecture/adapters.md +272 -0
  17. package/docs/architecture/akm-architecture-decision-history.md +2055 -0
  18. package/docs/architecture/akm-core-principles.md +126 -0
  19. package/docs/architecture/architecture.md +579 -0
  20. package/docs/architecture/comparisons/claude-code-vs-akm-workflows-full.md +550 -0
  21. package/docs/architecture/decisions/0001-no-interpolation-attached-structured-context.md +72 -0
  22. package/docs/architecture/decisions/0002-unit-reuse-and-input-hash-scope.md +142 -0
  23. package/docs/architecture/decisions/0003-child-env-allowlist-and-provenance.md +189 -0
  24. package/docs/architecture/decisions/0004-task-input-contract-and-flag-coercion.md +97 -0
  25. package/docs/architecture/decisions/0005-task-result-vocabulary-and-legacy-read-mapping.md +108 -0
  26. package/docs/architecture/decisions/0006-task-source-version-routing.md +124 -0
  27. package/docs/architecture/decisions/0007-workflow-composition-bounds.md +83 -0
  28. package/docs/architecture/decisions/0008-task-binding-normalization.md +88 -0
  29. package/docs/architecture/decisions/0009-child-run-publication-column-parity.md +80 -0
  30. package/docs/architecture/decisions/0010-driver-protocol-cut.md +36 -0
  31. package/docs/architecture/decisions/0011-engine-run-loop-invariants.md +125 -0
  32. package/docs/architecture/decisions/README.md +62 -0
  33. package/docs/architecture/improvement.md +440 -0
  34. package/docs/architecture/internals/classification.md +154 -0
  35. package/docs/architecture/internals/fresh-host-rebuild-runbook.md +40 -0
  36. package/docs/architecture/internals/functional-contract-patterns.md +340 -0
  37. package/docs/architecture/internals/health-advisories.md +110 -0
  38. package/docs/architecture/internals/improve-workflow.md +713 -0
  39. package/docs/architecture/internals/indexing.md +498 -0
  40. package/docs/architecture/internals/registry-network-boundary.md +57 -0
  41. package/docs/architecture/internals/search.md +249 -0
  42. package/docs/architecture/internals/storage-locations.md +943 -0
  43. package/docs/architecture/persisted-data-compat.md +59 -0
  44. package/docs/architecture/reviews/env-secret-access.md +319 -0
  45. package/docs/architecture/runtime-boundary-design.md +153 -0
  46. package/docs/architecture/specs/0.9.0-close-out-plan.md +361 -0
  47. package/docs/architecture/specs/0.9.0-decisions.md +528 -0
  48. package/docs/architecture/specs/0.9.0-docs-code-drift-register.md +745 -0
  49. package/docs/architecture/specs/0.9.0-open-items-register.md +135 -0
  50. package/docs/architecture/specs/0.9.0-public-api-issue-backlog.md +740 -0
  51. package/docs/architecture/specs/0.9.0-release-surface-review.md +636 -0
  52. package/docs/architecture/specs/agent-command-engine-model-design.md +513 -0
  53. package/docs/architecture/specs/akm-0.9.0-bundle-adapter-spec.md +501 -0
  54. package/docs/architecture/specs/akm-0.9.0-ref-grammar-decision.md +291 -0
  55. package/docs/architecture/specs/akm-format-neutral-bundle-workspace-spec.md +2059 -0
  56. package/docs/architecture/specs/di-seams-plan.md +539 -0
  57. package/docs/architecture/specs/driver-protocol-keep-or-cut.md +275 -0
  58. package/docs/architecture/specs/fact-asset-type.md +142 -0
  59. package/docs/architecture/specs/improve-collapse-churn-detector-design.md +634 -0
  60. package/docs/architecture/specs/okf-support.md +148 -0
  61. package/docs/architecture/specs/ref.md +329 -0
  62. package/docs/architecture/specs/reviews/task-workflow-unification/README.md +72 -0
  63. package/docs/architecture/specs/reviews/task-workflow-unification/findings-consolidated.md +152 -0
  64. package/docs/architecture/specs/reviews/task-workflow-unification/library-eval-alternatives.md +352 -0
  65. package/docs/architecture/specs/reviews/task-workflow-unification/library-eval-bunqueue.md +300 -0
  66. package/docs/architecture/specs/reviews/task-workflow-unification/library-eval-openworkflow.md +402 -0
  67. package/docs/architecture/specs/reviews/task-workflow-unification/opus-review-1.md +758 -0
  68. package/docs/architecture/specs/reviews/task-workflow-unification/opus-review-2.md +645 -0
  69. package/docs/architecture/specs/reviews/task-workflow-unification/opus-review-3.md +602 -0
  70. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r1-adversarial.md +27 -0
  71. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r1-architecture.md +27 -0
  72. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r1-coverage.md +74 -0
  73. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r1-security.md +15 -0
  74. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r2-adversarial.md +132 -0
  75. package/docs/architecture/specs/reviews/task-workflow-unification/panel-r2-verification.md +147 -0
  76. package/docs/architecture/specs/stash-conventions-code-spec.md +275 -0
  77. package/docs/architecture/specs/stash-organization-conventions.md +377 -0
  78. package/docs/architecture/specs/task-workflow-format-unification.md +721 -0
  79. package/docs/architecture/specs/workflow-engine-buy-vs-build.md +231 -0
  80. package/docs/architecture/specs/workflow-format-unification.md +437 -0
  81. package/docs/architecture/testing/manual-testing-checklist.md +3420 -0
  82. package/docs/architecture/testing/okf-v0.2-conformance-runbook.md +924 -0
  83. package/docs/architecture/testing/task-workflow-manual-tests.md +1817 -0
  84. package/docs/architecture/testing/testing-workflow.md +446 -0
  85. package/docs/architecture/workflow-engine.md +274 -0
  86. package/docs/guides/README.md +33 -0
  87. package/docs/guides/author-bundles.md +310 -0
  88. package/docs/guides/author-workflows.md +520 -0
  89. package/docs/guides/bundles.md +321 -0
  90. package/docs/guides/capture-knowledge.md +136 -0
  91. package/docs/guides/claude-code-vs-akm-workflows.md +30 -0
  92. package/docs/guides/concepts.md +93 -0
  93. package/docs/guides/discover-and-load.md +158 -0
  94. package/docs/guides/getting-started.md +240 -0
  95. package/docs/guides/improve-the-library.md +246 -0
  96. package/docs/guides/knowledge-management.md +18 -0
  97. package/docs/guides/recipes/headless-install.md +97 -0
  98. package/docs/guides/recipes/website-source.md +28 -0
  99. package/docs/guides/run-workflows.md +279 -0
  100. package/docs/guides/scheduling.md +123 -0
  101. package/docs/guides/use-with-any-agent.md +129 -0
  102. package/docs/guides/wikis.md +81 -0
  103. package/docs/maintainers/README.md +19 -0
  104. package/docs/maintainers/curate-workmap.md +336 -0
  105. package/docs/maintainers/eval.md +3 -0
  106. package/docs/maintainers/local-development.md +108 -0
  107. package/docs/maintainers/release-checklist.md +103 -0
  108. package/docs/migration/README.md +2 -2
  109. package/docs/migration/release-notes/0.0.13.md +1 -1
  110. package/docs/migration/release-notes/0.1.0.md +1 -1
  111. package/docs/migration/release-notes/0.2.0.md +1 -1
  112. package/docs/migration/release-notes/0.3.0.md +1 -1
  113. package/docs/migration/release-notes/0.5.0.md +1 -1
  114. package/docs/migration/release-notes/0.6.0.md +1 -1
  115. package/docs/migration/release-notes/0.7.0.md +1 -1
  116. package/docs/migration/release-notes/0.7.3.md +2 -2
  117. package/docs/migration/release-notes/0.7.4.md +1 -1
  118. package/docs/migration/release-notes/0.7.5.md +1 -1
  119. package/docs/migration/release-notes/0.8.0.md +1 -1
  120. package/docs/migration/release-notes/0.9.0.md +1 -1
  121. package/docs/migration/release-notes/0.9.14.md +1 -1
  122. package/docs/migration/release-notes/0.9.15.md +1 -1
  123. package/docs/migration/release-notes/0.9.16.md +1 -1
  124. package/docs/migration/release-notes/0.9.17.md +1 -1
  125. package/docs/migration/release-notes/0.9.19.md +1 -1
  126. package/docs/migration/release-notes/0.9.2.md +1 -1
  127. package/docs/migration/release-notes/README.md +27 -31
  128. package/docs/migration/v0.5-to-v0.6.md +759 -0
  129. package/docs/migration/v0.8-to-v0.9.md +1 -1
  130. package/docs/plans/0.9.2-agent-command-workflow-plan.md +423 -0
  131. package/docs/posts/README.md +30 -0
  132. package/docs/posts/akm-command-tour.md +495 -0
  133. package/docs/posts/akm-logo-sized.webp +0 -0
  134. package/docs/posts/belief-aware-memory-12.md +139 -0
  135. package/docs/posts/config-v2-lessons-16.md +191 -0
  136. package/docs/posts/improve-loop-autonomous-10.md +225 -0
  137. package/docs/posts/improve-pipeline-debugging-0803.md +179 -0
  138. package/docs/posts/intro-part-01.md +76 -0
  139. package/docs/posts/intro-part-02.md +221 -0
  140. package/docs/posts/intro-part-03.md +190 -0
  141. package/docs/posts/intro-part-04.md +221 -0
  142. package/docs/posts/llm-mode-reflect-13.md +166 -0
  143. package/docs/posts/openpalm-built-on-akm.md +86 -0
  144. package/docs/posts/progressive-disclosure-06.md +129 -0
  145. package/docs/posts/proposal-safety-net-15.md +112 -0
  146. package/docs/posts/release-0.5.0.md +247 -0
  147. package/docs/posts/release-0.6.0.md +117 -0
  148. package/docs/posts/release-0.7.0.md +159 -0
  149. package/docs/posts/release-0.8.0.md +332 -0
  150. package/docs/posts/scattered-skills-05.md +100 -0
  151. package/docs/posts/task-assets-persistent-workflows-11.md +222 -0
  152. package/docs/posts/team-skills-07.md +198 -0
  153. package/docs/posts/wiki-agent-knowledge-08.md +223 -0
  154. package/docs/posts/workflows-vaults-09.md +321 -0
  155. package/docs/product-surface.md +54 -0
  156. package/docs/reference/README.md +1 -2
  157. package/docs/reference/asset-types.md +168 -0
  158. package/docs/reference/cli.md +5 -6
  159. package/docs/reference/data-and-telemetry.md +6 -0
  160. package/docs/reference/env-and-secrets.md +126 -0
  161. package/docs/reference/memory.md +124 -0
  162. package/docs/reference/refs.md +156 -0
  163. package/docs/reference/registry.md +489 -0
  164. package/docs/reference/website-sources.md +141 -0
  165. package/package.json +12 -15
@@ -0,0 +1,135 @@
1
+ # akm 0.9.0 — open-items register
2
+
3
+ Close-out record for the three-phase 0.9.0 release-review cleanup program
4
+ (commits `28e4b55..HEAD` on the release-review branch).
5
+
6
+ **What this document is.** A consolidated list of what the program closed and
7
+ what it deliberately did not. It replaces an earlier 825-line per-item essay
8
+ that had grown into a parallel bug tracker; the underlying detail still lives in
9
+ the source registers it was scanned from —
10
+ [`0.9.0-docs-code-drift-register.md`](0.9.0-docs-code-drift-register.md),
11
+ [`0.9.0-public-api-issue-backlog.md`](0.9.0-public-api-issue-backlog.md), and
12
+ [`0.9.0-release-surface-review.md`](0.9.0-release-surface-review.md) — which
13
+ remain the authoritative per-item records.
14
+
15
+ **Confidence.** The deferred items below came from register scanners that
16
+ tree-checked each claim by reading code and running the CLI from source. They
17
+ were **not** adversarially re-verified by a second agent. Registers in this repo
18
+ have been found wrong about the tree more than twenty times during this program;
19
+ treat every row as a lead to confirm, not a fact. Anything actually acted on was
20
+ re-verified against the tree first, and several rows were dropped at that point
21
+ because the premise turned out to be false.
22
+
23
+ ## Closed during close-out
24
+
25
+ | Item | Change | Commit |
26
+ | --- | --- | --- |
27
+ | R-045 / Q-18 / X-RULING-11 (owner ruling 11) | `instruction` registered as a stash-resident asset type: placement spec with an `instructions/` stash dir, matcher row, and a compile-time `placementTypes() ⊆ KnownType` assertion | `b4df01f`, `316d47e` |
28
+ | R-039 / X-RULING-9 (owner ruling 9) | `semanticSearchMode` defaults to `"off"` so a bare or headless install never silently downloads the ~130 MB embedding model; the interactive wizard still pre-selects it **on**, with the download warning moved ahead of the prompt | `f04932f` |
29
+ | R-027 (D-49 class) | `akm secret path` and `akm secret remove` removed outright — they resolved a ref through different stash-selection logic, so a lookup and a deletion could name different files | `686b51c` |
30
+ | node-smoke(24) CI failure | `withEnv` gained an optional deadline so a hung `fn()` can no longer leak env overrides into the rest of the run | `47cad80` |
31
+ | Ruling 12, `R-053`, `NEW-A` | The four unlanded ruling-12 breaking changes: canonical bare-group behavior across all eleven groups (which is `R-053`), the `save`→`sync` event rename, and the dead `installedKitCount` / `graphPath` envelope fields. Also fixed `NEW-A` — `RESPONSE_CONTRACT_JSON` was teaching agents the retired `<type>:<name>` ref grammar that Q-08 now rejects | `47559b0` |
32
+
33
+ Each ruling-12 item carries a CHANGELOG migration note under Breaking.
34
+
35
+ ## Deferred past 0.9.0
36
+
37
+ Nothing below blocks the release. Each row is one lead; the source registers
38
+ carry the evidence.
39
+
40
+ Three rows were dropped rather than deferred, because re-verification refuted
41
+ their premise: `Q-17` (`runtime-boundary-design.md` was ruled retired, but the
42
+ file is deliberately kept with an implementation-note banner), `D-03` (the mv
43
+ tier entry carries a claim already disproved), and `E6` (setup schedules). They
44
+ are recorded here only so a future scan of the source registers does not
45
+ resurrect them as new.
46
+
47
+ ### Open owner decisions
48
+
49
+ | Item | Question |
50
+ | --- | --- |
51
+ | `R-038` | `akm extract` is documented without a privacy / LLM-transmission disclosure — does it need one? |
52
+ | `R-036` | Scheduled `akm improve` entries sit outside the `experimental.improveAutonomy` gate |
53
+ | `NEW-E` | citty silently accepts unknown flags; no decision yet on whether to reject them |
54
+ | `E5` | Same-run promotion gap: no `triage.postPass`, no `akm improve --drain` |
55
+ | `C7` | `akm add --allow-insecure` authorizes two unrelated risks through one flag |
56
+ | `G2` | `--source` carries two different axes; the `--from stash\|registry\|both` rename was never made |
57
+ | `G4` | `claude-code` vs `claude` as the canonical harness id |
58
+ | `R-010`, `R-011`, `R-016`, `R-042`, `R-044`, `R-059` | Six earlier deliberate deferrals, confirmed still untouched |
59
+
60
+ ### Behavior defects
61
+
62
+ | Item | Defect |
63
+ | --- | --- |
64
+ | `A1` | `akm search --no-project-context` is a no-op and its documented env-var fallback does not exist |
65
+ | `A2` | The `blocked` semantic-search warning does not distinguish "not configured" from a real fault |
66
+ | `B1` | The generic `--format text` fallback (≈37 commands) was never implemented |
67
+ | `B3` | `config path`, `config validate`, and `env path` write raw stdout and ignore `--format` |
68
+ | `B4` | `hints` is missing from `FORMAT_EXEMPT_COMMANDS`, so it ignores `--format` silently |
69
+ | `R-009` | `akm search` rejects the empty query its own help advertises |
70
+ | `R-013` | `akm add --provider npm` silently creates a filesystem bundle |
71
+ | `R-014` | `akm add --provider` text output prints `Installed undefined` |
72
+ | `R-015` | `akm update --all` silently skips non-lock-backed sources with no report |
73
+ | `R-018` | `akm curate --type` bypasses the curation algorithm |
74
+ | `R-019` | `akm curate` hard-caps registry results at 2 regardless of `--limit` |
75
+ | `R-020` | `akm show` drops the canonical `ref` from its payload |
76
+ | `R-021` | `--detail brief` as a flag and as a config default produce different payloads |
77
+ | `R-055` | Reads that write (utility-score updates) are undisclosed and have no opt-out |
78
+ | `R-057` | `akm info` omits stashDir / defaultBundle / per-type counts and bypasses `--quiet` |
79
+ | `R-058` | `akm update` deletes without confirmation while `akm remove` prompts |
80
+ | `R-067` | Three `process.exit()` sites remain despite a commit claiming otherwise |
81
+ | `D-38` | `akm log list --limit` is documented but silently ignored |
82
+ | `C4` | `akm config enable\|disable` is a hardcoded skills.sh alias, listed Stable |
83
+ | `C6` | `upgrade --skip-checksum` ships and is tab-completable; STABILITY.md documents the inverse |
84
+ | `C9` | Four of six env-var hygiene actions were never performed |
85
+ | `R-064 #3`, `D-16` | Two items whose premise needs a live run to settle |
86
+
87
+ ### Dead code and internal drift
88
+
89
+ | Item | Defect |
90
+ | --- | --- |
91
+ | `R-063 #2/#3/#5/#6/#8/#9/#11` | Confirmed-dead symbols, including curate's now-unreachable colon-grammar helpers |
92
+ | `R-064 #1/#2/#4/#5` | `IndexOptions.reEnrich`, `IndexResponse.graphQuality`, a void-ed `durationMs`, a dead `updatable` read |
93
+ | `R-065 #1/#2/#4/#5`, `R-068 #1/#6` | Comments and `TODO(R2)` markers that describe implemented features as unimplemented, or name the wrong store |
94
+ | `R-066 #1` | Two near-identical secret-directory walkers coexist |
95
+ | `B5` | Vestigial `distill` registrations |
96
+ | `NEW-B` | The ref-grammar lint gate cannot see `src/**/*.ts`. `NEW-A` (`RESPONSE_CONTRACT_JSON` teaching agents the retired `<type>:<name>` grammar) was fixed in `47559b0`, but the blind spot that let it survive a zero-tolerance sweep is still there |
97
+ | `NEW-C`, `NEW-D` | Docblocks asserting premises the tree contradicts (citty behavior; "adapters barrel is test-only") |
98
+ | `C8` | Two tracker-ID references survive a 4-of-6 scrub |
99
+ | `X-AKM-TEST-CLAIM` | STABILITY.md claims `AKM_TEST_*` is compiled out of release builds; no build step does that |
100
+
101
+ ### Documentation drift
102
+
103
+ Roughly fifty rows, nearly all in `docs/reference/cli.md`, `configuration.md`,
104
+ `registry.md`, `architecture.md`, and the migration guides: undocumented flags
105
+ and subcommands, stale counts, dead anchors, and examples that exit non-zero.
106
+ Tracked as `D-04`, `D-06` through `D-15`, `D-17` through `D-29`, `D-31`,
107
+ `D-33`, `D-34`, `D-36`, `D-39`, `D-40`, `D-44`, `D-45`, `D-49` through `D-57`,
108
+ `D-62`, `D-63`, `Q-01`, `Q-06`, `Q-09` through `Q-16`, `Q-19`, `R-005`,
109
+ `R-048`, `C2`, `H3`, `X-CLI-MD-WORKFLOW`, and `Part5-2` through `Part5-4` in the
110
+ source registers.
111
+
112
+ Two of these are worth pulling forward because they teach agents something
113
+ false rather than merely being incomplete:
114
+
115
+ - `D-49` — `docs/guides/claude-code-vs-akm-workflows.md` Parts B–E describe the
116
+ pre-engine world ("akm does not execute workflow steps", "strictly
117
+ sequential", "no workers"). All of it was overtaken by `workflow run`'s native
118
+ executor, the fan-out scheduler, worktree isolation, and YAML v2 programs. A
119
+ rewrite must also state that the engine is gated behind
120
+ `experimental.workflowEngine` and refuses with exit 78 until it is set.
121
+ - `X-CLI-MD-WORKFLOW` — the same gate is missing from
122
+ `docs/reference/cli.md`'s workflow section, whose subcommand table also omits
123
+ five shipped verbs.
124
+
125
+ ### Not scanned
126
+
127
+ `0.9.0-decisions.md` and 38 "major" findings from the Phase-3 documentation
128
+ review (`X-PHASE3-MAJORS`) were never worked through item by item. The Phase-3
129
+ blockers were fixed; its majors were not individually verified.
130
+
131
+ `tests/TESTS_REVIEW.md` was also in this list. It has since been scanned:
132
+ all 67 of its findings were dispositioned against the tree on 2026-08-12
133
+ (issue #773) — 49 fixed, 14 still open, 4 superseded by decision — and the
134
+ document was replaced with that disposition record. The still-open items are
135
+ grouped into six themed clusters there.