Skills Vault
skvlt is a Bun-powered CLI for backing up and restoring agent skills from the upstream skills ecosystem.
It is published on npm for distribution, but it is intentionally a Bun-only runtime today. Users install it from npm and run it with Bun available on their machine.
Important
skvltcurrently requires Bun>=1.3.11. The npm package installs cleanly, but the CLI itself is executed through Bun.
What It Does
- Back up installed skills into a portable
skvlt.yamlmanifest - Restore skills from a saved manifest
- Inspect the local runtime and skill state with
doctor - Print shell completion scripts for
bash,zsh, andpowershell
Install
Install Bun first:
bun --version
Then install the CLI from npm:
npm install -g @xixu-me/skills-vault
Verify the install:
skvlt --version
skvlt --help
You can also run the package without a global install:
npx @xixu-me/skills-vault --help
Quick Start
Back up global skills into ./skvlt.yaml:
skvlt backup
Preview a backup without writing files:
skvlt backup --dry-run
Restore missing skills from a manifest:
skvlt restore
Preview the restore commands first:
skvlt restore --dry-run
Inspect your environment:
skvlt doctor
Generate shell completions:
skvlt completion bash
skvlt completion zsh
skvlt completion powershell
Commands
skvlt backup
Creates a manifest snapshot of installed skills.
Common options:
--output <path>: write the manifest to a custom path--lock-file <path>: read source metadata from a specific lock file--project-scope: back up project-scoped installs instead of global installs--dry-run: print the manifest to stdout instead of writing a file
By default, the manifest is written to ./skvlt.yaml.
skvlt restore
Restores skills from a manifest and uses the upstream skills CLI through bunx.
Common options:
--manifest <path>: read a custom manifest path--only-source <source>: restore just one source, repeatable--agent <agent>: target one agent, repeatable--project-scope: restore to project scope instead of global scope--copy: copy files instead of symlinking--all: install all skills for selected sources--reinstall-all: reinstall everything even if already present--continue-on-error: keep restoring after one source fails--concurrency <count>: control parallel source installs--dry-run: print the derivedbunxcommands instead of running them
skvlt doctor
Reports the local Bun runtime, upstream skills CLI availability, manifest presence, and global skill state consistency.
skvlt completion
Prints completion scripts for:
bashzshpowershell
Runtime Notes
- Global manifests default to
./skvlt.yaml - Global restore verification checks
~/.agents/skills - Global lock-file checks use
~/.agents/.skill-lock.json restoreanddoctorrely on the upstreamskillsCLI being reachable viabunx
Publishing
This project is distributed through npm and exposed as the CLI command skvlt.
Recommended release flow:
bun run check
npm pack --dry-run --json
npm publish --access public
For a safer pre-publish smoke test, install the generated tarball into a temporary prefix and run:
skvlt --help
skvlt --version