Changelog
This page mirrors the akm-rs CHANGELOG. The canonical, always-current source is GitHub Releases.
1.0.0
First stable release.
- Artifacts explorer: press
yto copy the selected entry’s absolute path to the clipboard, for pasting straight into an agent. Uses OSC 52 (no clipboard crate, nopbcopy/xclip/wl-copyshell-out), so it keeps the single-binary guarantee and works over SSH. The path is also shown in the status line as a selectable fallback for terminals that drop OSC 52. - TUI theme: rebranded from blue accents to black-and-gold (
#eec35e) — gold marks the selection bar, edit cursor, skill type and the[CORE]badge, with the semantic status colours kept as distinct signals. akm skills statusnow shows the Manifest section first, above Core, in both the TUI dashboard and--plainoutput — a project’s declared specs are the most relevant thing to see when standing in it.- Bare
akm skillsnow opens the library list (likeakm skills list) instead of the status dashboard; the dashboard stays an explicitakm skills status.
1.0.0-rc6
- Add
akm uninstall— removes the binary, ~/.bashrc integration block, global spec symlinks, config, caches, and machine-local metadata (library.json,local.json,tools.json). Preserves artifacts, the legacy global instructions file, and the library (the registry checkout, which may hold unpublished local edits);--purgeremoves those too.--yesskips the confirmation prompt. - Add
akm disable/akm enable— reversible vanilla mode.disablemakes new shells skip the claude/copilot/opencode/pi wrappers and clears global core symlinks without deleting anything;enablerestores both. Useful for checking default harness behavior without akm. - Breaking: remove
akm skills load,akm skills unload, andakm skills loadedskills add/removealready refresh the active session’s symlinks, so load/unload only offered manifest-free session loading — niche and unusedakm skills status --plaincovers the scriptable session view
- Help page cleanup:
akm config --helpnow documents all supported keys,akm configprints theupdate.*keys,akm update/akm sync/akm skillsdescriptions match actual behavior,akm completionsexamples render correctly
1.0.0-rc5
- Publishing is batched: one intent is one commit
akm skills core --publishnow promotes and pushes, in a single commit, staging only sidecars so an in-flightSKILL.mdis never swept inakm skills publishwith no id publishes every pending spec at once--dry-runon both
- Fix a commit whose push failed never being retried — publish now pushes
commits already on
HEADinstead of reporting nothing to do - Fix the cursor jumping in
akm skills statuswhen a spec changes section:c,aandrnow hold the cursor on its screen line and move it to the neighbour, instead of scrolling the window to wherever the spec landed - Sync evicts a stale
library.jsonleft inside the registry checkout by an earlier layout — restored toHEADwhen tracked, deleted when it is the untracked copy rc4 hid with.git/info/exclude
1.0.0-rc4
Breaking: the cold library is wiped and re-cloned on first sync. The
library is now the personal registry’s git working tree at
~/.local/share/akm/library/, not a copy of one. The first akm sync after
upgrading removes the old ~/.local/share/akm/{skills,agents,library.json} and
the registry cache, then clones fresh. Anything you never published to your
registry is lost — publish it before upgrading. tools.json, shell/ and
your config are untouched.
- Sync no longer destroys local edits
git fetch+merge --ff-only, never a real merge, so no conflict marker can ever reach a skill that is symlinked live into~/.claude/skills/- An edit to a skill the update also changed is parked, the fast-forward is applied to everything else, and the edit is put back on top — one unresolved skill can no longer freeze the other forty-nine
- Sync reports what needs a decision and never prompts; only
akm skills editasks anything
- Know which side moved:
*unpublished,vregistry ahead,!diverged, shown per spec inakm skills list,akm skills statusand the sync report - New commands:
akm skills diff <id>,akm skills revert <id> [--remote],akm skills core [--adopt|--publish],akm instructions publish akm skills edit <id>now opensSKILL.md;--metaopens the spec’s metadata sidecar. Both offer to publish when the spec has local changes- Human-facing metadata moves to a per-spec
akm.jsonsidecarlibrary.jsonbecomes a derived, locally-excluded index, so it can never be the thing that conflictscoredefaults live in the sidecar and propagate to new machines; deviations stay in~/.local/share/akm/local.json, machine-local
- Global instructions move into the registry at
instructions/global.md, and gain the same drift, publish and propagation model as a skill. A pre-rc4~/.akm/global-instructions.mdis carried over on first sync registry.urlis the canonical config key;skills.personal_registrystill resolves silently- The TUI metadata editor gains a real cursor, wrapped multi-line fields and Left/Right/Home/End/Delete, and its edits now survive the next sync — they previously went to the derived index and were erased
1.0.0-rc2
- Fix the session staging directory silently eating agent output
- Agents told to write to “the additional working directory” wrote into the
staging dir, which is
rm -rf‘d on session end — the files were lost - The artifacts directory is now named by resolved absolute path in the
system prompt (claude and pi), signposted by a
README.mdat the staging root for harnesses with no system-prompt flag, and the staging root is made read-only so a stray write fails loudly instead of vanishing later - Teardown now removes only the directories it created and rescues anything
left to
<artifacts>/<repo>/orphaned/<session>/for the next session to triage akm updatenow rewritesakm-init.shas well as the binary — previously an updated binary kept running a months-old shell init
- Agents told to write to “the additional working directory” wrote into the
staging dir, which is
- Offer to publish to the personal registry after an interactive
skills promoteorskills import- Skipped when no personal registry is configured or stdin is not a TTY, so non-interactive output and exit codes are unchanged
- Fix
skills publishdropping the description and tags entered at the promote/import prompts, which left the registry — the source of truth for sync and search — carrying the values derived fromSKILL.mdfrontmatter
- Make the interactive skills list modal so actions work on a filtered list
- Previously typing a filter disabled every action key, and the only way out cleared the filter along with it
/starts editing the filter;EnterorEscreturns to normal mode with the filter still applied, wherec/e/a/ract on the filtered rowsEscno longer quits either interactive view — onlyqandCtrl+Cdo- The status dashboard gains
e(edit) and now matches the list view’s keys
- Prune stale narrative from the docs and split maintainer material out of
README and AGENTS.md into
docs/development.mdanddocs/harnesses.md
1.0.0-rc1
- Add Pi (https://pi.dev) as a first-tier harness
pishell wrapper: mounts session skills with--skill <staging>/.pi/skills(Pi has no--add-dir) and names the artifacts directory via--append-system-prompt, re-passing anyAPPEND_SYSTEM.mdthe CLI flag would otherwise suppressakm skills syncsymlinks core specs into~/.pi/agent/skills/akm instructions syncwrites~/.pi/agent/AGENTS.md- Fix session symlink helpers deriving the staging directory name from the
last component of the global tool dir — wrong for
~/.pi/agent tests/shell_test.rsnow exercises the generated wrapper for real
- Remove all references to the retired Bash implementation from source comments and documentation
alpha.11
- Add macOS Apple Silicon (aarch64) binary to releases
- Release workflow now builds Linux x86_64 and macOS aarch64 in parallel
- Install script (
install.sh) supports macOS: platform detection,shasumchecksum verification, Gatekeeper quarantine removal akm updateis now platform-aware — picks the correct binary for the current OS/arch- Binary validation accepts Mach-O format alongside ELF
alpha.10
- Fix
akm updatealways saying “Already up to date” — the explicit update command was trusting a stale cache instead of making a fresh API call
alpha.9
- Add
akm skills import— import skills directly from GitHub URLs- Supports
/tree/(directory) and/blob/(file) URL formats - GITHUB_TOKEN support for private repos and higher rate limits
- Interactive prompts for metadata (description, tags, core flag)
--forceto skip overwrite confirmation,--idto set custom skill ID- Source URL persisted in library.json for future update support
- Supports
alpha.7
Add a script for automated release checklist issue
Fix version comparison in aakm update
alpha.6
Fix akm skills status to correctly regenerate symlinks
alpha.5
Breaking fix: akm update was broken due to a misconfigured URL. To fix: akm config update.url https://api.github.com/repos/akm-rs/akm-rs/releases/latest Then akm update works normally. Alternatively, re-run the install script. Future installs are unaffected — this release auto-migrates the bad URL on startup.
alpha.4
- Fix
akm syncoverwriting the changes to core/non-core in skills in the cold storage. Now the cold storage has priority. - Improved messages for akm update fails due to rate limit
alpha.3
Fix : akm instructions no longer replaces existing global instructions with empty new ones.