Skip to content

v0.2.1 — first public release

Latest

Choose a tag to compare

@kinti kinti released this 14 Sep 17:21
· 2 commits to main since this release

The cross-layer updater for your agent arsenal: skills, MCP servers, and plugins — one drift picture, one snapshotted update path, one command to undo any of it.

What's in the box

  • check — fully read-only drift report across all three layers (exit 1 when drift; cron-friendly, --json available)
  • inventory — census of every skill: adopted / git-remote / git-local / orphan
  • adopt — give copy-installed orphan skills a provenance record (repo + subpath + exact SHA); git clones are rejected
  • update — the whole plan as one snapshotted batch: git pulls, adopted refreshes from origin tarballs at an exact SHA, MCP pins across every config check reads, marketplace refresh (including pulling clones the CLI's own refresh silently skips)
  • pin — floating npx/uvx servers pinned to exact versions, in the file each entry lives in
  • restore — undo any batch: changed files back, created files deleted
  • selftest — 20 unit tests, each named after the promise it guards

The never-breaks contract

  1. Reporters never touch your state (check doesn't even git fetch — refs are labelled with their age).
  2. Mutators are dry-run by default; --write is the gate.
  3. One batch, one snapshot, taken before anything changes. Snapshot failure aborts with zero mutations.
  4. restore latest puts the whole batch back — "back to before", not "mostly back".

Validation before this release

  • Live on a real arsenal: 104 skills (102 orphans), 7 floating MCP servers, marketplaces 46 days stale → 0 drift after one update.
  • Adversarial two-axis external review → 12 findings, all fixed, each guarded by a named test.
  • 15-scenario E2E campaign from zero (real CLI, sandboxed HOME, real GitHub/npm traffic, system Python 3.9) → caught 3 more real bugs, including an adopted-refresh that had never once worked.

Zero dependencies — one stdlib-only Python file, audit it in one sitting. MIT.