akm-cli 0.9.0-rc.8 → 0.9.0
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.
- package/CHANGELOG.md +1063 -44
- package/README.md +51 -25
- package/SECURITY.md +14 -1
- package/STABILITY.md +497 -0
- package/dist/akm +148 -35
- package/dist/{akm-migrate-storage → akm-migrate} +6 -9
- package/dist/assets/hints/cli-hints-full.md +223 -95
- package/dist/assets/hints/cli-hints-short.md +85 -22
- package/dist/assets/improve-strategies/default.json +1 -1
- package/dist/assets/improve-strategies/reflect-distill.json +1 -1
- package/dist/assets/prompts/memory-infer-user.md +2 -3
- package/dist/assets/stash-skeleton/README.md +6 -5
- package/dist/assets/stash-skeleton/facts/conventions/assets/agent.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/assets/command.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/assets/fact.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/assets/knowledge.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/assets/lesson.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/assets/memory.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/assets/script.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/assets/skill.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/assets/workflow.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/backlinks.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/domains.md +2 -0
- package/dist/assets/stash-skeleton/facts/conventions/organization.md +20 -9
- package/dist/assets/tasks/core/extract.yml +1 -1
- package/dist/assets/tasks/core/version-check.yml +1 -1
- package/dist/assets/tasks/improve/akm-graph-refresh-weekly.yml +5 -0
- package/dist/assets/tasks/improve/akm-improve-catchup.yml +8 -0
- package/dist/assets/tasks/improve/akm-improve-consolidate.yml +5 -0
- package/dist/assets/tasks/improve/akm-improve-frequent.yml +5 -0
- package/dist/assets/tasks/improve/akm-improve-nightly.yml +5 -0
- package/dist/assets/templates/html/health.html +1 -3
- package/dist/assets/workflows/workflow-template.md +32 -15
- package/dist/cli/invocation.js +40 -15
- package/dist/cli/parse-args.js +0 -22
- package/dist/cli/retired-commands.js +121 -0
- package/dist/cli/shared.js +154 -22
- package/dist/cli/unknown-flags.js +236 -0
- package/dist/cli-node.mjs +2 -1
- package/dist/cli.js +696 -258
- package/dist/commands/agent/agent-dispatch.js +14 -3
- package/dist/commands/agent/contribute-cli.js +73 -88
- package/dist/commands/completions.js +79 -22
- package/dist/commands/config-cli.js +17 -150
- package/dist/commands/env/env-cli.js +59 -143
- package/dist/commands/env/env.js +12 -163
- package/dist/commands/env/marker-path.js +6 -0
- package/dist/commands/env/secret-cli.js +36 -66
- package/dist/commands/env/secret.js +24 -57
- package/dist/commands/feedback-cli.js +141 -87
- package/dist/commands/health/accept-rate.js +58 -0
- package/dist/commands/health/advisories.js +3 -4
- package/dist/commands/health/checks.js +85 -23
- package/dist/commands/health/html-report.js +7 -10
- package/dist/commands/health/improve-metrics.js +25 -83
- package/dist/commands/health/md-report.js +5 -9
- package/dist/commands/health/metrics.js +62 -20
- package/dist/commands/health/renderers.js +47 -0
- package/dist/commands/health/report-view-model.js +4 -5
- package/dist/commands/health/stash-exposure.js +1 -1
- package/dist/commands/health/surfaces.js +3 -48
- package/dist/commands/health/task-runs.js +3 -67
- package/dist/commands/health/types-improve.js +7 -0
- package/dist/commands/health.js +99 -28
- package/dist/commands/improve/anti-collapse.js +2 -2
- package/dist/commands/improve/autonomy-gate.js +68 -0
- package/dist/commands/improve/collapse-detector.js +41 -40
- package/dist/commands/improve/consolidate/eligibility.js +1 -23
- package/dist/commands/improve/consolidate/merge.js +4 -0
- package/dist/commands/improve/consolidate.js +140 -1000
- package/dist/commands/improve/distill/promote-memory.js +12 -12
- package/dist/commands/improve/distill/quality-gate.js +6 -6
- package/dist/commands/improve/distill.js +58 -69
- package/dist/commands/improve/eligibility.js +105 -57
- package/dist/commands/improve/extract-cli.js +14 -133
- package/dist/commands/improve/improve-cli.js +98 -114
- package/dist/commands/improve/improve-result-file.js +1 -28
- package/dist/commands/improve/improve-strategies.js +8 -5
- package/dist/commands/improve/improve.js +128 -91
- package/dist/commands/improve/loop-stages.js +182 -20
- package/dist/commands/improve/memory/derived-ref.js +45 -43
- package/dist/commands/improve/memory/memory-belief.js +1 -1
- package/dist/commands/improve/memory/memory-contradiction-detect.js +4 -12
- package/dist/commands/improve/memory/memory-improve.js +6 -5
- package/dist/commands/improve/outcome-loop.js +22 -65
- package/dist/commands/improve/preparation.js +114 -123
- package/dist/commands/improve/proactive-maintenance.js +2 -5
- package/dist/commands/improve/reflect.js +56 -160
- package/dist/commands/improve/salience.js +11 -122
- package/dist/commands/improve/source-identity.js +10 -38
- package/dist/commands/lint/base-linter.js +20 -124
- package/dist/commands/lint/env-key-rules.js +31 -47
- package/dist/commands/lint/index.js +249 -43
- package/dist/commands/{events.js → log.js} +33 -38
- package/dist/commands/migrate-cli.js +92 -12
- package/dist/commands/migration-tool.js +46 -0
- package/dist/commands/observability-cli.js +70 -209
- package/dist/commands/proposal/drain.js +101 -29
- package/dist/commands/proposal/proposal-cli.js +76 -48
- package/dist/commands/proposal/proposal.js +54 -18
- package/dist/commands/proposal/propose-cli.js +88 -0
- package/dist/commands/proposal/propose.js +23 -15
- package/dist/commands/proposal/repository.js +701 -278
- package/dist/commands/proposal/validators/proposal-quality-validators.js +2 -8
- package/dist/commands/proposal/validators/proposal-validators.js +55 -7
- package/dist/commands/proposal/validators/proposals.js +4 -7
- package/dist/commands/read/curate.js +34 -53
- package/dist/commands/read/knowledge.js +150 -95
- package/dist/commands/read/registry-search.js +2 -2
- package/dist/commands/read/remember-cli.js +42 -15
- package/dist/commands/read/search-cli.js +180 -78
- package/dist/commands/read/search.js +58 -43
- package/dist/commands/read/show.js +197 -141
- package/dist/commands/registry-cli.js +12 -51
- package/dist/commands/remember.js +14 -57
- package/dist/commands/sources/add-cli.js +100 -31
- package/dist/commands/sources/bundle-cli.js +166 -0
- package/dist/commands/sources/bundle-config-ops.js +7 -2
- package/dist/commands/sources/info.js +18 -5
- package/dist/commands/sources/init.js +12 -12
- package/dist/commands/sources/installed-stashes.js +382 -98
- package/dist/commands/sources/schema-repair.js +3 -2
- package/dist/commands/sources/self-update.js +131 -38
- package/dist/commands/sources/source-add.js +72 -17
- package/dist/commands/sources/source-clone.js +129 -45
- package/dist/commands/sources/source-manage.js +43 -23
- package/dist/commands/sources/sources-cli.js +57 -208
- package/dist/commands/sources/stash-cli.js +46 -53
- package/dist/commands/tasks/tasks-cli.js +91 -97
- package/dist/commands/tasks/tasks.js +276 -421
- package/dist/commands/workflow-cli.js +175 -450
- package/dist/core/adapter/adapters/akm-adapter.js +47 -28
- package/dist/core/adapter/adapters/akm-lint.js +42 -27
- package/dist/core/adapter/adapters/akm-metadata.js +15 -44
- package/dist/core/adapter/adapters/akm-task-adapter.js +15 -13
- package/dist/core/adapter/adapters/akm-workflow-adapter.js +55 -71
- package/dist/core/adapter/adapters/dotenv-adapter.js +1 -1
- package/dist/core/adapter/adapters/generic-files-adapter.js +2 -0
- package/dist/core/adapter/adapters/index.js +6 -6
- package/dist/core/adapter/adapters/llm-wiki-adapter.js +14 -8
- package/dist/core/adapter/adapters/okf-adapter.js +187 -19
- package/dist/core/adapter/adapters/shared.js +3 -19
- package/dist/core/adapter/adapters/tool-dir-shared.js +8 -3
- package/dist/core/adapter/adapters/website-snapshot-adapter.js +1 -0
- package/dist/core/adapter/detect-adapter.js +17 -0
- package/dist/core/adapter/recognize-match.js +6 -4
- package/dist/core/adapter/validate-context.js +214 -0
- package/dist/core/asset/akm-markdown.js +63 -0
- package/dist/core/asset/asset-placement.js +20 -6
- package/dist/core/asset/asset-ref.js +11 -9
- package/dist/core/asset/frontmatter-lint.js +30 -0
- package/dist/core/asset/frontmatter.js +37 -9
- package/dist/core/asset/markdown.js +40 -51
- package/dist/core/asset/resolve-ref.js +89 -18
- package/dist/core/asset/stash-meta.js +1 -1
- package/dist/core/bundle-id.js +51 -0
- package/dist/core/common.js +152 -38
- package/dist/core/config/config-io.js +12 -1
- package/dist/core/config/config-schema.js +35 -8
- package/dist/core/config/config-sources.js +55 -11
- package/dist/core/config/config-walker.js +25 -9
- package/dist/core/config/config.js +9 -48
- package/dist/core/config/experimental.js +21 -0
- package/dist/core/config/schema/embedding.js +5 -1
- package/dist/core/config/schema/experimental.js +30 -0
- package/dist/core/config/schema/improve-processes.js +0 -6
- package/dist/core/config/schema/improve.js +21 -3
- package/dist/core/config/schema/index-config.js +8 -15
- package/dist/core/config/schema/output.js +4 -1
- package/dist/core/config/schema/setup.js +9 -18
- package/dist/core/config/schema/sources-bundles.js +49 -33
- package/dist/core/config/schema/workflow.js +3 -3
- package/dist/core/env-secret-ref.js +76 -46
- package/dist/core/errors.js +18 -12
- package/dist/core/events.js +46 -128
- package/dist/core/file-change.js +6 -5
- package/dist/core/fs-txn.js +83 -7
- package/dist/core/git-message.js +2 -2
- package/dist/core/improve-result.js +1 -100
- package/dist/core/lesson-lint.js +1 -17
- package/dist/core/logs-db.js +2 -1
- package/dist/core/migration-operation.js +16 -0
- package/dist/core/mutation-target.js +78 -0
- package/dist/core/parse.js +4 -1
- package/dist/core/paths.js +17 -20
- package/dist/core/recognition-util.js +12 -14
- package/dist/core/redaction.js +34 -0
- package/dist/core/standards/resolve-standards-context.js +2 -14
- package/dist/core/standards/resolve-stash-standards.js +2 -2
- package/dist/core/standards/resolve-type-conventions.js +2 -2
- package/dist/core/state/migrations.js +41 -18
- package/dist/core/state-db.js +5 -14
- package/dist/core/structured.js +1 -1
- package/dist/core/subprocess.js +6 -4
- package/dist/core/text-truncation.js +9 -5
- package/dist/core/type-presentation.js +3 -3
- package/dist/core/warn.js +0 -3
- package/dist/core/write-source.js +771 -95
- package/dist/indexer/bundle-identity-guard.js +3 -2
- package/dist/indexer/db/graph-db.js +0 -24
- package/dist/indexer/ensure-index.js +1 -0
- package/dist/indexer/graph/graph-boost.js +9 -34
- package/dist/indexer/graph/graph-extraction.js +8 -5
- package/dist/indexer/index-writer-lock.js +53 -17
- package/dist/indexer/index-written-assets.js +16 -22
- package/dist/indexer/indexer.js +497 -239
- package/dist/indexer/installations.js +14 -96
- package/dist/indexer/passes/dir-staleness.js +16 -9
- package/dist/indexer/passes/memory-inference.js +11 -9
- package/dist/indexer/passes/metadata.js +113 -47
- package/dist/indexer/scan/doc-to-entry.js +38 -1
- package/dist/indexer/scan/drain-dir.js +13 -23
- package/dist/indexer/search/db-search.js +99 -54
- package/dist/indexer/search/fts-query.js +47 -24
- package/dist/indexer/search/ranking-contributors.js +42 -20
- package/dist/indexer/search/ranking.js +18 -99
- package/dist/indexer/search/search-fields.js +7 -2
- package/dist/indexer/search/search-source.js +82 -93
- package/dist/indexer/usage/usage-events.js +0 -89
- package/dist/indexer/walk/file-context.js +2 -1
- package/dist/indexer/walk/matchers.js +30 -43
- package/dist/indexer/walk/path-resolver.js +7 -2
- package/dist/indexer/walk/walker.js +38 -12
- package/dist/integrations/agent/builders.js +0 -6
- package/dist/integrations/agent/config.js +2 -2
- package/dist/integrations/agent/detect.js +49 -19
- package/dist/integrations/agent/engine-fallback.js +76 -0
- package/dist/integrations/agent/profiles.js +14 -0
- package/dist/integrations/agent/prompts.js +12 -8
- package/dist/integrations/agent/runner-dispatch.js +4 -2
- package/dist/integrations/agent/runner.js +0 -1
- package/dist/integrations/agent/spawn.js +5 -6
- package/dist/integrations/github.js +1 -1
- package/dist/integrations/harnesses/aider/agent-builder.js +6 -4
- package/dist/integrations/harnesses/amazonq/agent-builder.js +7 -4
- package/dist/integrations/harnesses/claude/session-log.js +0 -10
- package/dist/integrations/harnesses/codex/agent-builder.js +5 -2
- package/dist/integrations/harnesses/copilot/agent-builder.js +5 -3
- package/dist/integrations/harnesses/gemini/agent-builder.js +5 -3
- package/dist/integrations/harnesses/index.js +3 -7
- package/dist/integrations/harnesses/opencode/agent-builder.js +21 -2
- package/dist/integrations/harnesses/opencode/session-log.js +0 -15
- package/dist/integrations/harnesses/opencode-sdk/sdk-runner.js +13 -4
- package/dist/integrations/harnesses/openhands/agent-builder.js +9 -6
- package/dist/integrations/harnesses/pi/agent-builder.js +6 -4
- package/dist/integrations/lockfile.js +101 -6
- package/dist/integrations/session-logs/index.js +3 -28
- package/dist/llm/client.js +136 -100
- package/dist/llm/embedders/remote.js +13 -5
- package/dist/llm/feature-gate.js +4 -12
- package/dist/llm/graph-extract.js +5 -11
- package/dist/llm/memory-infer.js +144 -1
- package/dist/llm/metadata-enhance.js +5 -7
- package/dist/llm/structured-call.js +1 -1
- package/dist/llm/usage-persist.js +26 -5
- package/dist/llm/usage-telemetry.js +25 -2
- package/dist/output/cli-hints.js +1 -2
- package/dist/output/context.js +22 -7
- package/dist/output/format-exempt.js +80 -0
- package/dist/output/generic-render.js +259 -0
- package/dist/output/render-registry.js +57 -0
- package/dist/output/renderers.js +14 -36
- package/dist/output/shapes/curate.js +10 -1
- package/dist/output/shapes/events.js +12 -7
- package/dist/output/shapes/helpers.js +56 -83
- package/dist/output/shapes/migrate.js +8 -0
- package/dist/output/shapes/passthrough.js +7 -41
- package/dist/output/shapes/proposal/producer.js +15 -7
- package/dist/output/shapes.js +2 -9
- package/dist/output/text/{init.js → bundle-create.js} +3 -1
- package/dist/output/text/bundle-show.js +7 -0
- package/dist/output/text/command-format.js +164 -96
- package/dist/output/text/env.js +1 -3
- package/dist/output/text/events.js +8 -7
- package/dist/output/text/health-format.js +103 -0
- package/dist/output/text/health.js +7 -0
- package/dist/output/text/helpers.js +10 -8
- package/dist/output/text/lint-format.js +43 -0
- package/dist/output/text/{save.js → lint.js} +2 -2
- package/dist/output/text/migrate.js +88 -0
- package/dist/output/text/proposal/producer.js +4 -2
- package/dist/output/text/proposal-format.js +44 -72
- package/dist/output/text/registry-commands.js +1 -2
- package/dist/output/text/show-directives.js +15 -7
- package/dist/output/text/status-list.js +32 -0
- package/dist/output/text/sync.js +5 -0
- package/dist/output/text/workflow-format.js +24 -203
- package/dist/output/text/workflow.js +1 -7
- package/dist/output/text.js +16 -17
- package/dist/registry/factory.js +4 -6
- package/dist/registry/origin-resolve.js +16 -27
- package/dist/registry/providers/skills-sh.js +3 -3
- package/dist/registry/providers/static-index.js +13 -23
- package/dist/registry/resolve.js +42 -7
- package/dist/registry/semver.js +34 -84
- package/dist/runtime.js +2 -23
- package/dist/scripts/akm-migrate-node.js +60290 -0
- package/dist/scripts/akm-migrate.js +59628 -0
- package/dist/setup/detect.js +42 -15
- package/dist/setup/registry-stash-loader.js +2 -2
- package/dist/setup/setup.js +236 -136
- package/dist/setup/steps/connection.js +7 -9
- package/dist/setup/steps/platforms.js +9 -9
- package/dist/setup/steps/semantic.js +15 -3
- package/dist/setup/steps/sources.js +12 -13
- package/dist/setup/steps/stashdir.js +2 -3
- package/dist/setup/steps/tasks.js +237 -120
- package/dist/sources/freshness.js +1 -1
- package/dist/sources/provider-factory.js +11 -17
- package/dist/sources/providers/filesystem.js +2 -3
- package/dist/sources/providers/git-install.js +278 -34
- package/dist/sources/providers/git-provider.js +25 -23
- package/dist/sources/providers/git-stash.js +395 -106
- package/dist/sources/providers/git.js +2 -2
- package/dist/sources/providers/npm.js +16 -19
- package/dist/sources/providers/provider-utils.js +7 -4
- package/dist/sources/providers/sync-from-ref.js +3 -9
- package/dist/sources/providers/website.js +6 -1
- package/dist/sources/resolve.js +6 -5
- package/dist/sources/snapshot-fetchers/bluesky.js +146 -0
- package/dist/sources/snapshot-fetchers/content-extract.js +566 -0
- package/dist/sources/snapshot-fetchers/fetcher-util.js +41 -0
- package/dist/sources/snapshot-fetchers/github.js +100 -0
- package/dist/sources/snapshot-fetchers/host-guard.js +291 -0
- package/dist/sources/snapshot-fetchers/registry.js +17 -1
- package/dist/sources/snapshot-fetchers/robots.js +348 -0
- package/dist/sources/snapshot-fetchers/rss.js +282 -0
- package/dist/sources/snapshot-fetchers/secret-seam.js +42 -0
- package/dist/sources/snapshot-fetchers/website-ingest.js +566 -268
- package/dist/sources/snapshot-fetchers/x.js +910 -0
- package/dist/storage/database.js +7 -0
- package/dist/storage/engines/sqlite-migrations.js +23 -111
- package/dist/storage/managed-db.js +2 -2
- package/dist/storage/repositories/canaries-repository.js +1 -1
- package/dist/storage/repositories/events-repository.js +27 -11
- package/dist/storage/repositories/improve-runs-repository.js +6 -12
- package/dist/storage/repositories/index-connection.js +17 -6
- package/dist/storage/repositories/index-entries-repository.js +151 -240
- package/dist/storage/repositories/index-entry-mapper.js +15 -11
- package/dist/storage/repositories/index-fts-repository.js +5 -2
- package/dist/storage/repositories/index-llm-cache-repository.js +0 -1
- package/dist/storage/repositories/index-meta-repository.js +2 -3
- package/dist/storage/repositories/index-schema.js +10 -25
- package/dist/storage/repositories/index-utility-repository.js +15 -28
- package/dist/storage/repositories/index-vec-repository.js +6 -1
- package/dist/storage/repositories/outcome-repository.js +119 -0
- package/dist/storage/repositories/proposals-repository.js +296 -59
- package/dist/storage/repositories/registry-cache.js +19 -0
- package/dist/storage/repositories/salience-repository.js +172 -0
- package/dist/storage/repositories/task-history-repository.js +15 -13
- package/dist/storage/repositories/workflow-runs-repository.js +52 -40
- package/dist/tasks/backends/cron.js +105 -15
- package/dist/tasks/backends/index.js +1 -1
- package/dist/tasks/backends/launchd.js +85 -38
- package/dist/tasks/backends/schtasks.js +135 -15
- package/dist/tasks/embedded.js +56 -40
- package/dist/tasks/parser.js +7 -157
- package/dist/tasks/resolve-akm-bin.js +137 -59
- package/dist/tasks/runner.js +79 -42
- package/dist/tasks/scheduler-invocation.js +220 -10
- package/dist/tasks/schema.js +24 -1
- package/dist/tasks/task-id.js +1 -3
- package/dist/tasks/validator.js +20 -6
- package/dist/workflows/authoring/authoring.js +94 -143
- package/dist/workflows/authoring/scope-key.js +1 -1
- package/dist/workflows/exec/frozen-judge.js +28 -2
- package/dist/workflows/exec/native-executor.js +77 -57
- package/dist/workflows/exec/param-secrets.js +9 -9
- package/dist/workflows/exec/run-workflow.js +133 -79
- package/dist/workflows/exec/step-work.js +219 -346
- package/dist/{migrate-storage-node.mjs → workflows/exec/unit-dispatch.js} +1 -5
- package/dist/workflows/ir/compile.js +141 -270
- package/dist/workflows/ir/freeze.js +40 -30
- package/dist/workflows/ir/params.js +135 -11
- package/dist/workflows/ir/plan-hash.js +1 -1
- package/dist/workflows/ir/schema.js +25 -26
- package/dist/workflows/parser.js +872 -307
- package/dist/workflows/program/expressions.js +20 -208
- package/dist/workflows/program/schema.js +7 -10
- package/dist/workflows/renderer.js +95 -68
- package/dist/workflows/resource-limits.js +2 -0
- package/dist/workflows/runtime/checkin.js +3 -3
- package/dist/workflows/runtime/plan-classifier.js +16 -75
- package/dist/workflows/runtime/runs.js +186 -127
- package/dist/workflows/runtime/unit-checkin.js +1 -1
- package/dist/workflows/runtime/unit-phases.js +2 -2
- package/dist/workflows/runtime/workflow-asset-loader.js +232 -83
- package/dist/workflows/schema.js +1 -11
- package/dist/workflows/validate-summary.js +30 -36
- package/dist/workflows/validator.js +21 -62
- package/docs/README.md +68 -0
- package/docs/migration/README.md +8 -0
- package/docs/migration/release-notes/0.7.0.md +11 -11
- package/docs/migration/release-notes/0.9.0.md +208 -27
- package/docs/migration/v0.7-to-v0.8.md +46 -47
- package/docs/migration/v0.8-to-v0.9.md +564 -208
- package/docs/migration/v0.9.0-troubleshooting.md +561 -0
- package/docs/reference/README.md +12 -0
- package/docs/reference/cli.md +2253 -0
- package/docs/reference/configuration.md +358 -0
- package/docs/reference/data-and-telemetry.md +105 -42
- package/docs/reference/workflows.md +647 -0
- package/package.json +22 -11
- package/schemas/akm-asset-envelope.json +93 -0
- package/schemas/akm-config.json +81 -128
- package/schemas/akm-workflow.json +74 -73
- package/dist/assets/tasks/core/backup.yml +0 -5
- package/dist/assets/tasks/graph-refresh-weekly.yml +0 -10
- package/dist/cli/config-migrate.js +0 -1806
- package/dist/cli/config-validate.js +0 -41
- package/dist/commands/backup-cli.js +0 -56
- package/dist/commands/bundle/bundle-cli.js +0 -68
- package/dist/commands/bundle/bundle.js +0 -219
- package/dist/commands/graph/graph-cli.js +0 -124
- package/dist/commands/graph/graph.js +0 -489
- package/dist/commands/improve/extract-watch.js +0 -140
- package/dist/commands/mv-cli.js +0 -1221
- package/dist/commands/sources/history.js +0 -201
- package/dist/commands/tasks/default-tasks.js +0 -186
- package/dist/core/migration-backup.js +0 -1234
- package/dist/indexer/usage/unmigrated-vaults-guard.js +0 -95
- package/dist/llm/memory-infer-impl.js +0 -138
- package/dist/migrate/legacy/config-source-migration.js +0 -223
- package/dist/migrate/legacy/content-migration.js +0 -305
- package/dist/migrate/legacy/legacy-layout.js +0 -779
- package/dist/migrate/legacy/legacy-paths.js +0 -25
- package/dist/migrate/legacy/legacy-stash-json.js +0 -72
- package/dist/migrate/legacy/proposal-fs-import.js +0 -168
- package/dist/migrate/legacy/task-target-ref-migration.js +0 -272
- package/dist/migrate/legacy/three-db-cutover.js +0 -841
- package/dist/migrate/legacy/workflow-migrations-bodies.js +0 -52
- package/dist/migrate/legacy/workflow-migrations-frozen.js +0 -21
- package/dist/migrate/legacy-ref-grammar.js +0 -214
- package/dist/output/shapes/distill.js +0 -14
- package/dist/output/shapes/history.js +0 -11
- package/dist/output/text/distill.js +0 -6
- package/dist/output/text/enable-disable.js +0 -8
- package/dist/output/text/history.js +0 -6
- package/dist/registry/build-index.js +0 -382
- package/dist/schemas/akm-config.json +0 -4704
- package/dist/schemas/akm-task.json +0 -87
- package/dist/schemas/akm-workflow.json +0 -372
- package/dist/scripts/migrate-storage.js +0 -3816
- package/dist/workflows/authoring/workflow-program-template.yaml +0 -31
- package/dist/workflows/cli.js +0 -53
- package/dist/workflows/exec/brief.js +0 -481
- package/dist/workflows/exec/report.js +0 -1460
- package/dist/workflows/exec/watch.js +0 -116
- package/dist/workflows/program/parser.js +0 -813
- package/dist/workflows/program/project.js +0 -104
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# akm CLI — Full Reference
|
|
2
2
|
|
|
3
|
-
You have access to a searchable library of scripts, skills, commands, agents, knowledge documents, workflows, and memories via `akm`. Search your sources first before writing something from scratch.
|
|
3
|
+
You have access to a searchable library of scripts, skills, commands, agents, knowledge documents, workflows, env files, secrets, lessons, and memories via `akm`. Search your sources first before writing something from scratch.
|
|
4
4
|
|
|
5
5
|
## Search
|
|
6
6
|
|
|
@@ -8,28 +8,34 @@ You have access to a searchable library of scripts, skills, commands, agents, kn
|
|
|
8
8
|
akm search "<query>" # Search all sources
|
|
9
9
|
akm curate "<task>" # Curate the best matches for a task
|
|
10
10
|
akm search "<query>" --type workflow # Filter by asset type
|
|
11
|
-
akm search "<query>" --
|
|
12
|
-
akm search "<query>" --
|
|
11
|
+
akm search "<query>" --from all # Also search registries
|
|
12
|
+
akm search "<query>" --from registry # Search registries only
|
|
13
13
|
akm search "<query>" --limit 10 # Limit results
|
|
14
14
|
akm search "<query>" --detail full # Include scores, paths, timing
|
|
15
|
-
akm search "
|
|
16
|
-
akm search "knowledge
|
|
15
|
+
akm search "memories/projectA/" # Enumerate a subtree (conceptId prefix; trailing slash required)
|
|
16
|
+
akm search "knowledge/" # List every knowledge item
|
|
17
|
+
akm search "team-catalog//" # List every item in one bundle
|
|
17
18
|
```
|
|
18
19
|
|
|
19
20
|
| Flag | Values | Default |
|
|
20
21
|
| --- | --- | --- |
|
|
21
|
-
| `--type` | `skill`, `command`, `agent`, `knowledge`, `workflow`, `script`, `memory`, `env`, `secret`, `any` | `any` |
|
|
22
|
-
| `--
|
|
22
|
+
| `--type` | free-form. Built-ins: `skill`, `command`, `agent`, `knowledge`, `workflow`, `script`, `memory`, `lesson`, `task`, `session`, `fact`, `env`, `secret`, `instruction` — plus any adapter-defined type (`website`, `wiki-source`, a wiki `pageKind`). Exact match; an unknown type returns no hits. | `any` |
|
|
23
|
+
| `--from` | `local`, `registry`, `all`, or a configured bundle name | `local` |
|
|
23
24
|
| `--limit` | number | `20` |
|
|
24
|
-
| `--format` | `json`, `jsonl`, `text`, `yaml` | `json` |
|
|
25
|
+
| `--format` | `json`, `jsonl`, `text`, `yaml`, `md`, `html` | `json` |
|
|
25
26
|
| `--detail` | `brief`, `normal`, `full` | `brief` |
|
|
26
27
|
| `--shape` | `human`, `agent`, `summary` (`summary` only on `show`) | `human` |
|
|
27
28
|
|
|
28
|
-
Ref-prefix queries (
|
|
29
|
-
deterministic listing, not a relevance ranking. Drop the trailing slash
|
|
30
|
-
same text becomes an ordinary keyword search — resolving a single asset
|
|
31
|
-
`<subdir>/<name>` id is `akm show`'s job
|
|
32
|
-
|
|
29
|
+
Ref-prefix queries (a conceptId prefix ending in `/`, optionally bundle-qualified)
|
|
30
|
+
return a deterministic listing, not a relevance ranking. Drop the trailing slash
|
|
31
|
+
and the same text becomes an ordinary keyword search — resolving a single asset
|
|
32
|
+
by its `<subdir>/<name>` id is `akm show`'s job. Because prefixes match
|
|
33
|
+
conceptIds, you can paste a ref prefix straight from search output back into a
|
|
34
|
+
query.
|
|
35
|
+
|
|
36
|
+
`search` and `curate` results include an additive `tip` field (a plain-text
|
|
37
|
+
suggestion, e.g. "Run `akm index` to build one" or "No matching assets were
|
|
38
|
+
found") whenever the result set is empty; it is omitted when there are hits.
|
|
33
39
|
|
|
34
40
|
## Curate
|
|
35
41
|
|
|
@@ -43,7 +49,8 @@ akm curate "review architecture" --type workflow # Restrict to one asset type
|
|
|
43
49
|
|
|
44
50
|
## Show
|
|
45
51
|
|
|
46
|
-
Display an asset by ref
|
|
52
|
+
Display an asset by ref from the local index and materialized bundle files only.
|
|
53
|
+
On a markdown document `#fragment` selects one section by heading slug.
|
|
47
54
|
|
|
48
55
|
```sh
|
|
49
56
|
akm show scripts/deploy.sh # Show script (returns run command)
|
|
@@ -51,10 +58,10 @@ akm show skills/code-review # Show skill (returns full content
|
|
|
51
58
|
akm show commands/release # Show command (returns template)
|
|
52
59
|
akm show agents/architect # Show agent (returns system prompt)
|
|
53
60
|
akm show workflows/ship-release # Show parsed workflow steps
|
|
54
|
-
akm show knowledge/guide
|
|
55
|
-
akm show knowledge/guide
|
|
56
|
-
akm show knowledge/guide
|
|
57
|
-
akm show knowledge/my-doc # Show
|
|
61
|
+
akm show knowledge/guide # Whole document
|
|
62
|
+
akm show knowledge/guide#auth # Just the "Auth" section
|
|
63
|
+
akm show knowledge/guide#nope # Lists the available fragment slugs
|
|
64
|
+
akm show knowledge/my-doc # Show materialized local content
|
|
58
65
|
```
|
|
59
66
|
|
|
60
67
|
| Type | Key fields returned |
|
|
@@ -63,18 +70,19 @@ akm show knowledge/my-doc # Show content (local or remote)
|
|
|
63
70
|
| skill | `content` (full SKILL.md) |
|
|
64
71
|
| command | `template`, `description`, `parameters` |
|
|
65
72
|
| agent | `prompt`, `description`, `modelHint`, `toolPolicy` |
|
|
66
|
-
| knowledge | `content` (
|
|
73
|
+
| knowledge | `content` (whole document, or one section via `#fragment`) |
|
|
67
74
|
| workflow | `workflowTitle`, `workflowParameters`, `steps` |
|
|
68
75
|
| memory | `content` (recalled context) |
|
|
69
76
|
| env | `keys` (key names only — values and comment text never returned) |
|
|
70
77
|
| secret | `name` only (the whole file is the value — never returned) |
|
|
78
|
+
| lesson | `content` plus `action` (rendered from the `when_to_use` frontmatter) — read both before applying the lesson |
|
|
71
79
|
|
|
72
80
|
## Capture Knowledge While You Work
|
|
73
81
|
|
|
74
82
|
```sh
|
|
75
|
-
akm remember "Deployment needs VPN access" # Record a memory in your
|
|
83
|
+
akm remember "Deployment needs VPN access" # Record a memory in your bundle
|
|
76
84
|
akm remember --name release-retro < notes.md # Save multiline memory from stdin
|
|
77
|
-
akm remember "note" --
|
|
85
|
+
akm remember "note" --bundle my-other-bundle # Route write to a named writable bundle source
|
|
78
86
|
akm remember "note" --xref knowledge/auth-flow # Cite provenance in frontmatter xrefs (repeatable; ref must resolve)
|
|
79
87
|
akm remember "fix" --supersedes memories/old-note # Write a correction AND demote the old asset (beliefState: superseded)
|
|
80
88
|
akm import ./docs/auth-flow.md # Import a file as knowledge
|
|
@@ -82,12 +90,12 @@ akm import ./doc.md --xref knowledge/auth-flow # Merge provenance xrefs into the
|
|
|
82
90
|
akm import ./new.md --supersedes knowledge/old # Import a correction AND demote the doc it replaces
|
|
83
91
|
akm import - --name scratch-notes < notes.md # Import stdin as a knowledge doc
|
|
84
92
|
akm import https://example.com/docs/auth # Fetch one URL and import it as knowledge
|
|
85
|
-
akm import ./doc.md --target my-other-
|
|
86
|
-
akm workflow create ship-release # Create a workflow asset in the
|
|
87
|
-
akm
|
|
88
|
-
akm workflow
|
|
93
|
+
akm import ./doc.md --target my-other-bundle # Route import to a named writable bundle source
|
|
94
|
+
akm workflow create ship-release # Create a workflow asset in the bundle
|
|
95
|
+
akm lint --type workflows # Parse and compile every unified markdown workflow; list every error
|
|
96
|
+
akm workflow run workflows/ship-release # Start or resume and execute the workflow
|
|
89
97
|
akm feedback skills/code-review --positive # Record that an asset helped
|
|
90
|
-
akm feedback agents/reviewer --negative
|
|
98
|
+
akm feedback agents/reviewer --negative --reason "wrong framework" # Record why an asset missed the mark
|
|
91
99
|
akm feedback memories/deployment-notes --positive # Works for memories too
|
|
92
100
|
akm feedback env/prod --positive # Records env feedback without surfacing values
|
|
93
101
|
```
|
|
@@ -108,10 +116,10 @@ Install one as a source, then search and read its pages with the ordinary
|
|
|
108
116
|
commands — no wiki-specific verbs:
|
|
109
117
|
|
|
110
118
|
```sh
|
|
111
|
-
akm add owner/llm-wiki-repo # Install an LLM Wiki bundle as a source (npm, GitHub, git, or local dir)
|
|
119
|
+
akm bundle add owner/llm-wiki-repo # Install an LLM Wiki bundle as a source (npm, GitHub, git, or local dir)
|
|
112
120
|
akm search "attention" # Wiki pages surface in ordinary search results
|
|
113
121
|
akm show team-catalog//pages/attention # Read a page by its bundle//conceptId ref (copy the ref from search)
|
|
114
|
-
akm list # Confirm the bundle is installed
|
|
122
|
+
akm bundle list # Confirm the bundle is installed
|
|
115
123
|
```
|
|
116
124
|
|
|
117
125
|
Files under the bundle's `raw/` directory and the wiki infrastructure files
|
|
@@ -120,8 +128,8 @@ search results. No `--llm` anywhere — akm never reasons about page content.
|
|
|
120
128
|
|
|
121
129
|
## Env files
|
|
122
130
|
|
|
123
|
-
|
|
124
|
-
`<
|
|
131
|
+
Configuration an app or service loads together, in one `.env` file at
|
|
132
|
+
`<bundle>/env/<name>.env`, sourced/injected wholesale. Key names are
|
|
125
133
|
discoverable; values and comment text stay on disk and never reach stdout or
|
|
126
134
|
the index (comments can contain commented-out credentials). akm does not edit
|
|
127
135
|
entries — you edit the file with your own editor and akm loads it.
|
|
@@ -129,7 +137,7 @@ entries — you edit the file with your own editor and akm loads it.
|
|
|
129
137
|
```sh
|
|
130
138
|
akm env create prod # Create an empty env file
|
|
131
139
|
akm env create prod --from-file ./.env # Ingest an existing .env
|
|
132
|
-
akm env list # List all env files across
|
|
140
|
+
akm env list # List all env files across bundles with key names
|
|
133
141
|
akm show env/prod # Inspect key names (never values or comments)
|
|
134
142
|
akm env run env/prod -- ./deploy.sh # Run a command with the whole .env injected (the safe path)
|
|
135
143
|
akm env run env/prod -- $SHELL # Open an interactive shell with values injected
|
|
@@ -141,31 +149,28 @@ akm env remove env/prod # Delete the env file
|
|
|
141
149
|
## Secrets
|
|
142
150
|
|
|
143
151
|
A single sensitive value used on its own for authentication (a token, key, or
|
|
144
|
-
cert) — one file = one value at `<
|
|
152
|
+
cert) — one file = one value at `<bundle>/secrets/<name>`. The ENTIRE file is
|
|
145
153
|
the value; only the name is ever surfaced.
|
|
146
154
|
|
|
147
155
|
```sh
|
|
148
156
|
printf '%s' "$TOKEN" | akm secret set secrets/deploy-token # Store a single value
|
|
149
157
|
akm secret list # List secrets (names only)
|
|
150
|
-
akm secret path secrets/deploy-token # Print the file path (Docker `_FILE`)
|
|
151
158
|
akm secret run secrets/deploy-token GITHUB_TOKEN -- gh release create v1.0.0 # Inject into one env var
|
|
152
|
-
akm secret remove secrets/deploy-token # Delete the secret
|
|
153
159
|
```
|
|
154
160
|
|
|
155
161
|
## Workflows
|
|
156
162
|
|
|
157
|
-
Workflows live under `<
|
|
163
|
+
Workflows live under `<bundle>/workflows/` as unified markdown assets.
|
|
158
164
|
|
|
159
165
|
Ref-based workflow commands are scoped to the current project/worktree/directory,
|
|
160
166
|
so one active run does not block unrelated directories from starting the same
|
|
161
167
|
workflow. Direct run-id commands still target the exact run.
|
|
162
168
|
|
|
163
169
|
```sh
|
|
164
|
-
akm workflow
|
|
170
|
+
akm workflow create ship-release --print # Print a starter workflow template, without writing
|
|
165
171
|
akm workflow create ship-release # Scaffold a new workflow asset
|
|
166
|
-
akm workflow
|
|
167
|
-
akm workflow
|
|
168
|
-
akm workflow complete <run-id> # Mark a step complete and advance
|
|
172
|
+
akm workflow run workflows/ship-release --version=1.2.3 # Start and execute with exact-name parameter flags
|
|
173
|
+
akm workflow run <run-id> --max-retries 2 --timeout 10m # Resume with invocation-wide controls
|
|
169
174
|
akm workflow status <run-id> # Show the exact run by id
|
|
170
175
|
akm workflow resume <run-id> # Resume a blocked or failed run
|
|
171
176
|
akm workflow list # List workflow runs in the current scope
|
|
@@ -173,93 +178,97 @@ akm workflow list # List workflow runs in the current
|
|
|
173
178
|
|
|
174
179
|
## Clone
|
|
175
180
|
|
|
176
|
-
Copy an asset to the working
|
|
181
|
+
Copy an asset to the working bundle or a custom destination for editing.
|
|
177
182
|
|
|
178
183
|
```sh
|
|
179
|
-
akm clone <ref> # Clone to working
|
|
184
|
+
akm clone <ref> # Clone to working bundle
|
|
180
185
|
akm clone <ref> --name new-name # Rename on clone
|
|
181
186
|
akm clone <ref> --dest ./project/.claude # Clone to custom location
|
|
182
187
|
akm clone <ref> --force # Overwrite existing
|
|
183
188
|
akm clone "npm:@scope/pkg//scripts/deploy.sh" # Clone from remote package
|
|
184
189
|
```
|
|
185
190
|
|
|
186
|
-
When `--dest` is provided, `akm
|
|
191
|
+
When `--dest` is provided, `akm bundle create` is not required first.
|
|
187
192
|
|
|
188
|
-
## Move / Rename
|
|
193
|
+
## Move / Rename
|
|
189
194
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
frontmatter ref lists (`xrefs:`/`refs:`/`supersededBy:`), and fenced examples —
|
|
195
|
-
and re-keys the index row in place so the asset's learned ranking history
|
|
196
|
-
survives.
|
|
195
|
+
**A rename is delete plus create**: the new path is a new identity, so the
|
|
196
|
+
destination starts with fresh learned state (utility, salience, usage history)
|
|
197
|
+
and inbound refs to the old path dangle. Prefer NOT renaming — a ref is chosen
|
|
198
|
+
once. When a rename is unavoidable:
|
|
197
199
|
|
|
198
200
|
```sh
|
|
199
|
-
|
|
200
|
-
|
|
201
|
+
mv ~/akm/memories/projectA/old-note.md ~/akm/memories/projectA/new-note.md
|
|
202
|
+
# update any intentional refs (fully qualified: bundle//memories/projectA/old-note)
|
|
203
|
+
akm index
|
|
204
|
+
akm lint # confirms nothing dangles
|
|
201
205
|
```
|
|
202
206
|
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
207
|
+
A memory's `.derived.md` twin must move with its base. Moving an item between
|
|
208
|
+
bundles is `akm clone` (or a copy) followed by deleting the source — both the
|
|
209
|
+
bundle and the concept identity change.
|
|
210
|
+
|
|
211
|
+
There is no `akm mv` — the procedure above is the whole story. To carry an
|
|
212
|
+
asset's earned signal (feedback, usage, salience/outcome history) across the
|
|
213
|
+
rename instead of starting fresh, run `bun scripts/rekey-asset-ref.ts <old-ref>
|
|
214
|
+
<new-ref>` from a source clone after the move and before `akm index`
|
|
215
|
+
(`--dry-run` previews the row counts).
|
|
209
216
|
|
|
210
217
|
## Sync
|
|
211
218
|
|
|
212
|
-
Commit local changes in a git-backed
|
|
219
|
+
Commit local changes in a git-backed bundle. Behaviour adapts automatically.
|
|
213
220
|
(`akm save` was the pre-0.8 spelling; it was removed in 0.9.0 — use `akm sync`.)
|
|
214
221
|
|
|
215
222
|
- **No `.git` directory** — no-op (silent skip)
|
|
216
|
-
- **Git repo, no remote** — stage and commit only (the default
|
|
223
|
+
- **Git repo, no remote** — stage and commit only (the default bundle always falls here)
|
|
217
224
|
- **Git repo, has remote, not writable** — stage and commit only
|
|
218
225
|
- **Git repo, has remote, `writable: true`** — stage, commit, and push
|
|
219
226
|
- **Any writable repo with `--no-push`** — stage and commit only
|
|
220
227
|
|
|
221
228
|
```sh
|
|
222
|
-
akm sync # Sync primary
|
|
229
|
+
akm sync # Sync primary bundle (timestamp message)
|
|
223
230
|
akm sync -m "Add deploy skill" # Sync with explicit message
|
|
224
231
|
akm sync --no-push # Commit only; never push
|
|
225
|
-
akm sync my-skills # Sync a named writable git
|
|
226
|
-
akm sync my-skills -m "Update patterns" # Sync named
|
|
232
|
+
akm sync my-skills # Sync a named writable git bundle
|
|
233
|
+
akm sync my-skills -m "Update patterns" # Sync named bundle with message
|
|
227
234
|
```
|
|
228
235
|
|
|
229
|
-
`akm improve` also performs an end-of-run batch commit for git-backed
|
|
236
|
+
`akm improve` also performs an end-of-run batch commit for git-backed bundles.
|
|
230
237
|
The `--sync` / `--no-sync` and `--push` / `--no-push` flags control this:
|
|
231
238
|
|
|
232
239
|
```sh
|
|
233
|
-
akm improve # auto-sync per strategy default (
|
|
240
|
+
akm improve # auto-sync per strategy default (most strategies: on; proactive-maintenance/reflect-distill: off)
|
|
234
241
|
akm improve --no-sync # skip the end-of-run commit
|
|
235
242
|
akm improve --no-push # commit but skip push for this run
|
|
236
243
|
akm improve --sync # force sync even on strategies that disable it
|
|
237
244
|
```
|
|
238
245
|
|
|
239
|
-
Strategy sync defaults: `
|
|
240
|
-
`memory-focus`
|
|
246
|
+
Strategy sync defaults: `catchup`, `consolidate`, `default`, `frequent`,
|
|
247
|
+
`graph-refresh`, `memory-focus`, `quick`, and `thorough` auto-commit + push;
|
|
248
|
+
`proactive-maintenance` and `reflect-distill` skip sync entirely. Override
|
|
249
|
+
with `--sync` / `--no-sync` flags.
|
|
241
250
|
|
|
242
|
-
The `--writable` flag on `akm add` opts a remote git
|
|
251
|
+
The `--writable` flag on `akm bundle add` opts a remote git bundle into push-on-sync:
|
|
243
252
|
|
|
244
253
|
```sh
|
|
245
|
-
akm add git@github.com:org/skills.git --provider git --name my-skills --writable
|
|
254
|
+
akm bundle add git@github.com:org/skills.git --provider git --name my-skills --writable
|
|
246
255
|
```
|
|
247
256
|
|
|
248
257
|
## Add & Manage Sources
|
|
249
258
|
|
|
250
259
|
```sh
|
|
251
|
-
akm add <ref> # Add a source
|
|
252
|
-
akm add @scope/
|
|
253
|
-
akm add owner/repo # From GitHub (managed)
|
|
254
|
-
akm add ./path/to/local/
|
|
255
|
-
akm add git@github.com:org/repo.git --provider git --name my-skills --writable
|
|
256
|
-
akm
|
|
257
|
-
akm
|
|
258
|
-
akm list # List all sources
|
|
259
|
-
akm list --kind
|
|
260
|
-
akm remove <target> # Remove by id, ref, path, or name
|
|
261
|
-
akm update --all # Update all managed sources
|
|
262
|
-
akm update <target> --force # Force re-download
|
|
260
|
+
akm bundle add <ref> # Add a source
|
|
261
|
+
akm bundle add @scope/pkg # From npm (managed)
|
|
262
|
+
akm bundle add owner/repo # From GitHub (managed)
|
|
263
|
+
akm bundle add ./path/to/local/bundle # Local directory
|
|
264
|
+
akm bundle add git@github.com:org/repo.git --provider git --name my-skills --writable
|
|
265
|
+
akm registry add https://skills.sh --name skills.sh --provider skills-sh # Add the skills.sh registry
|
|
266
|
+
akm registry remove skills.sh # Remove the skills.sh registry
|
|
267
|
+
akm bundle list # List all sources
|
|
268
|
+
akm bundle list --kind git # Filter by provider (filesystem, git, npm, website)
|
|
269
|
+
akm bundle remove <target> # Remove by id, ref, path, or name
|
|
270
|
+
akm bundle update --all # Update all managed sources
|
|
271
|
+
akm bundle update <target> --force # Force re-download
|
|
263
272
|
```
|
|
264
273
|
|
|
265
274
|
## Registries
|
|
@@ -270,10 +279,8 @@ akm registry add <url> # Add a registry
|
|
|
270
279
|
akm registry add <url> --name my-team # Add with label
|
|
271
280
|
akm registry add <url> --provider skills-sh # Specify provider type
|
|
272
281
|
akm registry remove <url-or-name> # Remove a registry
|
|
273
|
-
akm
|
|
274
|
-
akm
|
|
275
|
-
akm registry build-index # Build the default cache-backed index.json
|
|
276
|
-
akm registry build-index --out dist/index.json # Build to a custom path
|
|
282
|
+
akm search "<query>" --from registry # Search all registries (registry search was folded into search)
|
|
283
|
+
akm search "<query>" --from registry --assets # Include asset-level results
|
|
277
284
|
```
|
|
278
285
|
|
|
279
286
|
## Configuration
|
|
@@ -289,18 +296,31 @@ akm config path --all # Show all config paths
|
|
|
289
296
|
## Other Commands
|
|
290
297
|
|
|
291
298
|
```sh
|
|
292
|
-
akm
|
|
299
|
+
akm bundle create # Initialize working bundle (scaffold only)
|
|
300
|
+
akm setup # Interactive wizard: bundle + LLM/embedding + agent + registry config
|
|
301
|
+
akm setup --dir ~/custom-bundle # Run the wizard against a custom bundle path
|
|
302
|
+
akm setup --yes # Non-interactive, accepts all defaults
|
|
293
303
|
akm index # Rebuild search index (metadata enrichment when configured)
|
|
294
304
|
akm index --full # Full reindex (metadata enrichment when configured)
|
|
295
|
-
akm list # List all sources
|
|
305
|
+
akm bundle list # List all sources
|
|
306
|
+
akm lint # Structural lint over the bundle; exits 0 regardless of findings
|
|
307
|
+
akm lint --fix # Auto-fix Tier 1 issues
|
|
308
|
+
akm lint --fail-on-flagged # Exit non-zero when summary.flagged > 0 (CI-friendly)
|
|
296
309
|
akm upgrade # Upgrade akm using its install method
|
|
297
310
|
akm upgrade --check # Check for updates
|
|
298
311
|
akm help migrate 0.6.0 # Print migration notes for a release (or: latest)
|
|
299
|
-
akm
|
|
312
|
+
akm help bundle # Print options and subcommands for one command
|
|
313
|
+
akm help agents --full # Print this reference
|
|
314
|
+
akm hints # Print this complete agent guide
|
|
300
315
|
akm completions # Print bash completion script
|
|
301
316
|
akm completions --install # Install completions
|
|
302
317
|
```
|
|
303
318
|
|
|
319
|
+
`akm bundle create` only scaffolds the bundle directory and registers it in config;
|
|
320
|
+
`akm setup` additionally walks through embedding/LLM connections, agent
|
|
321
|
+
profiles, sources, and registries. Use `setup` for first-time onboarding,
|
|
322
|
+
`bundle create` when you just need a bare bundle.
|
|
323
|
+
|
|
304
324
|
## Proposals & Improvement (0.8.0+)
|
|
305
325
|
|
|
306
326
|
```sh
|
|
@@ -310,28 +330,75 @@ akm proposal show <id> # Render the proposal bo
|
|
|
310
330
|
akm proposal diff <ref-or-id> # Diff by ref, UUID, or 8-char prefix
|
|
311
331
|
akm proposal diff skills/akm-dream # Diff by asset ref
|
|
312
332
|
akm proposal accept 7c115132 # Accept by UUID prefix
|
|
313
|
-
akm proposal accept <id> --target team-
|
|
333
|
+
akm proposal accept <id> --target team-bundle # Accept to a named writable bundle source
|
|
314
334
|
akm proposal reject skills/my-skill --reason "not ready" # Reject by asset ref
|
|
315
335
|
akm proposal reject <id> --reason "..." # Archive with a reason
|
|
316
336
|
akm proposal revert <id> # Restore the pre-promotion content
|
|
337
|
+
akm proposal new <type> <name> --task "..." # Agent-author a NEW asset as a proposal
|
|
338
|
+
akm proposal extract --auto # Mine native session files into proposals
|
|
339
|
+
akm proposal extract --type claude-code # Restrict extraction to one harness
|
|
317
340
|
```
|
|
318
341
|
|
|
319
342
|
The flat verbs `akm proposals` / `akm show proposal` / `akm accept` /
|
|
320
343
|
`akm reject` / `akm diff` / `akm revert` were removed in 0.9.0 — use the
|
|
321
|
-
`akm proposal <verb>` forms above.
|
|
344
|
+
`akm proposal <verb>` forms above. `akm extract` and `akm propose` moved
|
|
345
|
+
here as `proposal extract` / `proposal new`.
|
|
346
|
+
|
|
347
|
+
## Scheduled Tasks
|
|
348
|
+
|
|
349
|
+
Tasks are pure-YAML assets at `<bundle>/tasks/<id>.yml`, bound to the OS
|
|
350
|
+
scheduler (cron / launchd / schtasks). The file is the source of truth:
|
|
351
|
+
`task sync` reconciles files to scheduler entries, so editing or deleting a
|
|
352
|
+
file plus one `sync` is a complete workflow.
|
|
353
|
+
|
|
354
|
+
```sh
|
|
355
|
+
akm task add nightly-improve --schedule "@daily" --command "akm improve --strategy frequent"
|
|
356
|
+
akm task add briefing --schedule "0 9 * * *" --prompt agents/briefer # Agent-target task
|
|
357
|
+
akm task sync # Reconcile task files with the OS scheduler
|
|
358
|
+
akm task sync --rebind # Also re-pin the scheduler's akm binary/spelling
|
|
359
|
+
akm task doctor # Scheduler binding + runtime eligibility diagnosis
|
|
360
|
+
akm task history # Recent run rows (status, timing)
|
|
361
|
+
akm task run <id> # Run one task immediately (works when disabled)
|
|
362
|
+
akm search --type task # Enumerate task assets (there is no `task list`)
|
|
363
|
+
```
|
|
322
364
|
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
365
|
+
To disable a task, set `enabled: false` in its YAML and run `akm task sync`
|
|
366
|
+
(the cron line stays, commented). To remove one, delete the YAML and run
|
|
367
|
+
`akm task sync` — the scheduler entry is unbound. Per-task `timeoutMs` in
|
|
368
|
+
the YAML may be `null` (disable the agent kill timer for long local-model
|
|
369
|
+
runs) or a number of milliseconds overriding the selected engine invocation timeout.
|
|
370
|
+
|
|
371
|
+
## Agent Dispatch
|
|
372
|
+
|
|
373
|
+
```sh
|
|
374
|
+
akm agent --prompt "summarize open proposals" # Dispatch the configured agent CLI
|
|
375
|
+
akm agent agents/architect --prompt "..." # Embody a bundle agent asset (system prompt, model, tool policy)
|
|
376
|
+
akm agent --workflow workflows/ship-release # Load the task from a workflow asset
|
|
377
|
+
akm agent --model sonnet --prompt "..." # Model override (aliases or exact IDs)
|
|
378
|
+
```
|
|
379
|
+
|
|
380
|
+
## Health, Info, and the Event Log
|
|
381
|
+
|
|
382
|
+
```sh
|
|
383
|
+
akm info # Capabilities, bundle dir, index stats, semantic-search status
|
|
384
|
+
akm health # Runtime diagnostics; exit 0 ok / 4 warn / 1 fail
|
|
385
|
+
akm health --report # Adds accept-rate and graph-coverage metrics
|
|
386
|
+
akm log # Append-only event stream (mutations, feedback, indexing)
|
|
387
|
+
akm log --ref <ref> # One asset's event trail
|
|
388
|
+
akm log --since @offset:<id> # Durable row-id cursor — poll this to follow the stream
|
|
389
|
+
akm log --run <run-id> # Events for one workflow-engine run
|
|
390
|
+
```
|
|
326
391
|
|
|
327
392
|
## Output Control
|
|
328
393
|
|
|
329
|
-
|
|
394
|
+
Result-envelope commands accept `--format`, `--detail`, and `--shape` flags:
|
|
330
395
|
|
|
331
396
|
- `--format json` (default) — structured JSON
|
|
332
397
|
- `--format jsonl` — one JSON object per line (streaming-friendly)
|
|
333
398
|
- `--format text` — human-readable plain text
|
|
334
399
|
- `--format yaml` — YAML output
|
|
400
|
+
- `--format md` — Markdown output
|
|
401
|
+
- `--format html` — HTML output
|
|
335
402
|
- `--detail brief` (default) — compact output
|
|
336
403
|
- `--detail normal` — adds tags, refs, origins
|
|
337
404
|
- `--detail full` — includes scores, paths, timing, debug info
|
|
@@ -339,4 +406,65 @@ All commands accept `--format`, `--detail`, and `--shape` flags:
|
|
|
339
406
|
- `--shape agent` — agent-optimized output: strips non-actionable fields
|
|
340
407
|
- `--shape summary` — metadata only (no content/template/prompt), under 200 tokens; only valid on `akm show`
|
|
341
408
|
|
|
342
|
-
Run `akm
|
|
409
|
+
Run `akm help <command>` or `akm <command> -h` for per-command help. Run
|
|
410
|
+
`akm --help` for the sectioned command overview.
|
|
411
|
+
|
|
412
|
+
### Piping JSON to jq
|
|
413
|
+
|
|
414
|
+
For any akm command emitting more than ~64KB of JSON, prefer
|
|
415
|
+
`akm <cmd> | cat | jq …` over the direct pipe. A known Bun stdout chunking
|
|
416
|
+
interaction with `jq 1.6` can truncate the stream mid-document on direct
|
|
417
|
+
pipes; `cat` re-buffers and presents a clean pipe to jq. `jq 1.7+` tolerates
|
|
418
|
+
the chunked writes without the workaround.
|
|
419
|
+
|
|
420
|
+
## Error Shapes and Exit Codes
|
|
421
|
+
|
|
422
|
+
Every command returns JSON by default. On success, the shape is command-specific.
|
|
423
|
+
On failure, every command emits a JSON envelope on **stderr** (stdout is
|
|
424
|
+
normally left empty):
|
|
425
|
+
|
|
426
|
+
```json
|
|
427
|
+
{"ok": false, "error": "<message>", "code": "<optional machine-readable code>", "hint": "<optional remediation hint>"}
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
`code` is present for errors akm classifies (e.g. `INVALID_FLAG_VALUE`,
|
|
431
|
+
`ASSET_NOT_FOUND`, `UNKNOWN_COMMAND`); an unexpected internal error omits it.
|
|
432
|
+
The `hint` field is present only when there is an actionable next step (a
|
|
433
|
+
suggested flag or alternate command).
|
|
434
|
+
|
|
435
|
+
Exit codes:
|
|
436
|
+
|
|
437
|
+
| Code | Meaning | Error class |
|
|
438
|
+
| --- | --- | --- |
|
|
439
|
+
| 0 | Success | — |
|
|
440
|
+
| 1 | Not found or command-reported failure | `NotFoundError`, command result |
|
|
441
|
+
| 2 | Usage / bad input | `UsageError` |
|
|
442
|
+
| 4 | Health warning (`akm health` only) | — |
|
|
443
|
+
| 70 | Internal / unclassified error | unexpected throw |
|
|
444
|
+
| 78 | Configuration error | `ConfigError` |
|
|
445
|
+
|
|
446
|
+
To detect failure reliably, check either:
|
|
447
|
+
|
|
448
|
+
- `ok === false` in the parsed JSON response, or
|
|
449
|
+
- a non-zero exit code (`$?` in shell, process exit code in SDK calls)
|
|
450
|
+
|
|
451
|
+
On result-envelope surfaces, both signals are always set consistently. The JSON
|
|
452
|
+
envelope is the preferred signal for agents parsing output programmatically;
|
|
453
|
+
the exit code is the preferred signal for shell scripts. Passthrough surfaces
|
|
454
|
+
below preserve the child's own streams and status instead.
|
|
455
|
+
|
|
456
|
+
`env run`, `secret run`, and `migrate` are process passthroughs and preserve
|
|
457
|
+
the spawned process's exact status. `task run` preserves configuration failures
|
|
458
|
+
as exit 78; successful task results exit 0 and other failures exit 1, while a
|
|
459
|
+
command child's exact status remains in `result.detail.exitCode`. `agent` maps
|
|
460
|
+
a failed dispatch to 1 and retains the child status in its final result envelope.
|
|
461
|
+
|
|
462
|
+
`akm lint` is the one command that does not follow the exit-code table above:
|
|
463
|
+
it exits **0 on every successful run regardless of findings**. Read
|
|
464
|
+
`summary.flagged` to detect issues, or pass `--fail-on-flagged` to opt into
|
|
465
|
+
the CI-friendly "exit 1 when findings exist" behavior:
|
|
466
|
+
|
|
467
|
+
```sh
|
|
468
|
+
akm lint | jq '.summary.flagged' # always exit 0; read the count
|
|
469
|
+
akm lint --fail-on-flagged && deploy # exit 1 if any flagged issues
|
|
470
|
+
```
|