akm — Agent Knowledge Manager
Give every coding agent the capabilities your team has already built.
Build your agent library once. Use it from any shell-capable coding agent.
Why AKM exists
Every coding agent wants its own copy of your team's knowledge — an AGENTS.md here, a tool-specific skills folder there, prompts scattered across repos and chat logs. AKM indexes existing agent assets in place, loads only what a task needs, packages capabilities into shareable bundles, improves the library through reviewable proposals, and runs durable workflows — locally and without tying the library to one assistant. The core loop is connect -> index -> curate -> show -> use/run -> feedback -> proposal (not every task uses every stage).
Five reasons to use it
One library for every agent
Use the same capability library from Claude Code, OpenCode, Cursor, Aider, Windsurf, or any assistant that can run shell commands.
Load only what the task needs
Search or curate a shortlist, then load full content by ref. No giant startup prompt is required.
Package complete capabilities
Install and share bundles containing skills, scripts, workflows, agents, instructions, memories, and knowledge — not just prompt snippets.
Improve through evidence, with review
Feedback influences retrieval and produces diffable proposals. Changes remain reviewable and target only writable bundles.
Turn knowledge into repeatable work
Run persisted workflows with dispatch, gates, retries, budgets, and resume instead of reconstructing a process from prose every session.
AKM retrieves every supported capability type. It directly orchestrates defined execution surfaces such as workflows, agent dispatch, tasks, and guarded subprocess injection. It does not blindly execute arbitrary indexed content merely because that content appears in search results.
Install
Option 1 — npm package (recommended; requires Node.js >= 22):
npm install -g akm-cli
Option 2 — Prebuilt binary (no runtime required):
# Linux / macOS
curl -fsSL https://github.com/itlackey/akm/releases/latest/download/install.sh | bash
# Windows (PowerShell)
irm https://github.com/itlackey/akm/releases/latest/download/install.ps1 | iex
Upgrade in place: akm upgrade
The npm package always uses Node.js to bootstrap its cross-platform command. If a working Bun >= 1.0 is also on PATH, the launcher prefers Bun for execution; old, unusable, or absent Bun installations fall back to Node.js. Node.js remains required for the npm package. The standalone binaries are runtime-free.
First useful result
akm setup --yes # guided first-time setup, non-interactive
akm bundle add github:itlackey/akm-stash # install the official onboarding capability bundle
akm index # build the search index
akm curate "deploy a Bun app" # get a curated shortlist
akm show workflows/deploy # load the best match by ref
Then tell your agent AKM exists:
akm help agents >> AGENTS.md
Works with what you already have
AKM recognizes several existing directory layouts in place, each through its own adapter, alongside its own native bundle format:
| Format | What AKM does |
|---|---|
| Native akm bundles | Full read/write — scripts, skills, workflows, agents, instructions, memories, knowledge, and more |
| Claude Code / OpenCode tool directories | Indexes CLAUDE.md/AGENTS.md, commands/, agents/, skills/ in place, read-only |
| Standalone Agent Skills packages | Indexes <name>/SKILL.md collections in place, read-only |
| OKF and LLM wikis | Indexes plain-markdown (OKF) and Karpathy-style wiki (schema.md + raw/ + pages/) content, read-only |
| Git, npm, local dirs, and websites | Any of these can be added as a source; AKM detects the bundle format inside and indexes it |
See Supported Formats for current write support and detection rules, and Wikis for using a living LLM wiki as a bundle.
Common next steps
- Connect local dirs, git repos, npm packages, and websites — Bundles
- Capture memories, import docs, and manage wikis — Capture Knowledge
- Turn feedback and usage into reviewable proposals — Improve the Library
- Run resumable, multi-step procedures — Workflows
- Wire akm into Claude Code, OpenCode, Cursor, and other assistants — Use AKM With Any Agent
Scheduling background tasks (like akm improve) involves reviewing and activating OS scheduler entries — see Scheduling for the full walkthrough.
Local-first and privacy
AKM is local-first: it stores its index and state on disk and has no remote telemetry. The network is only used for sources and endpoints you explicitly configure — Git, npm, website sources, registries, and your own model endpoints. See Data & Telemetry for the complete on-disk inventory and how to inspect or clear local data.
Documentation and project status
| Doc | Description |
|---|---|
| Documentation index | Full guide and reference index |
| Stability policy | Which CLI surfaces are stable, evolving, or experimental |
| Security policy | Threat model and how to report vulnerabilities |
| Changelog | Per-release behavior changes |
Ecosystem
| Repo | What it is |
|---|---|
| itlackey/akm-stash | The official onboarding capability bundle — ready-made skills, workflows, commands, and knowledge |
| itlackey/akm-plugins | Optional editor and agent integrations (OpenCode, etc.) |
| itlackey/akm-registry | Official registry index — pre-configured in every akm install |
| itlackey/akm-bench | Benchmark harness for measuring agent performance with akm |
| itlackey/akm-eval | Eval framework and tools for akm asset quality |
No comments yet
Be the first to share your take.