Skip to main content

skills-manager

The local control plane for your AI coding-agent skills. Create, organize, sync, back up, and quality-check SKILL.md skills across every agent you use — from one CLI and one local web UI.

CI License: MIT Python

skills-manager on GitHub: udayvarmora07/skills-manager. PyPI badge tracks a future release: skill-control-plane is not on PyPI yet, so install from source or pip install the CI-built wheel/sdist below. Distribution name skill-control-plane (skills-mgr entry point) is reserved for that release.

Why this exists

The Agent Skills format (SKILL.md) is now an open standard supported by Claude Code, Cursor, Gemini CLI, OpenCode, Copilot/VS Code, Goose, Amp, and more. The ecosystem has skill libraries (vercel-labs/agent-skills), installers (skills.sh), and a spec — but nobody owns the management problem:

  • The same skill copy-pasted into ~/.claude/skills, ~/.codex/skills, Cursor dirs… edits diverge.
  • Vague descriptions cause false activation or misses; oversized bodies eat context.
  • No versioning, no safe update/rollback, no backup story, no cross-tool view.

skills-manager fills that gap: one store, every scope, full lifecycle.

skills-manager skills.sh / npx skills add skill libraries
Install remote skills ✅ (via install) — (source)
Create / edit / validate locally
Manage across all your agents ✅ (--scope all) single-target
Sync + dedup between agents
Version history + trash/rollback
Token-footprint budgeting ✅ (tokens)
Local web UI

Install

Requires Python ≥ 3.10. The runtime is stdlib-only — no dependencies.

PyPI is not published yet (see .github/workflows/release.yml for the controlled Trusted Publishing path). Until the first GitHub Release lands:

pipx install skill-control-plane        # recommended (isolated)
# or
pip install skill-control-plane

Run without installing:

git clone https://github.com/udayvarmora07/skills-manager
cd skills-manager
python3 -m skillsmgr --help

Quickstart

# 1. See everything you have, everywhere
skills-mgr list --scope all

# 2. Create a skill once…
skills-mgr create my-workflow -d "Deploys our staging stack. Use when shipping to staging."

# 3. …sync it to every agent you use
skills-mgr sync my-workflow

# 4. Or manage it visually (localhost only, no build step, works offline)
skills-mgr webui

More:

skills-mgr search "deploy" --scope all   # scored search across agents
skills-mgr tokens --scope all            # context-footprint budgeting
skills-mgr validate --all                # spec lint incl. description/body guidance
skills-mgr export                        # timestamped backup tarball
skills-mgr install vercel-labs/agent-skills --dry-run   # preview remote install

Agent scopes

One command surface, per-agent directories underneath:

Scope Directory
global (default) manager store (~/.local/share/skills-manager/skills/)
claude-code ~/.claude/skills
codex ~/.codex/skills
cursor ~/.cursor/skills
opencode ~/.config/opencode/skills
gemini ~/.gemini/skills
commandcode ~/.commandcode/skills
agents ~/.agents/skills
all merged read-only view

list, view, search, doctor, stats accept --scope; sync copies between scopes; tokens/install have their own scope semantics. Agent-scope writes go straight to the agent dir (no DB) — disable renames SKILL.mdSKILL.md.disabled in place, which Claude Code and Command Code both respect.

Web UI

skills-mgr webui              # http://127.0.0.1:8765, opens browser
skills-mgr webui --no-browser # server only
skills-mgr webui --port 9000  # custom port

Stdlib ThreadingHTTPServer backend + vendored Vue 3 (no npm, no CDN, works offline). Scope switcher, live search, trash with undo, validate/doctor/stats/history, templates, tar export plus tar/ZIP import, sync modal. Binds loopback only — never expose it; there is no auth (see Threat model).

Data model

  • Filesystem is the source of truth: <data>/skills/<name>/SKILL.md.
  • SQLite is a rebuildable index only (db rebuild / db resync repair any drift; never hand-edit it).
  • Data dir: $SKILLS_MANAGER_DATA$XDG_DATA_HOME~/.local/share, then /skills-manager.

CLI reference

37 invocable names: 27 top-level commands + 7 trash/templates/db subcommands + 3 ls/rm/gui aliases. Exit codes: 0 ok · 1 error · 2 usage · 130 interrupt. --json on data commands.

Full surface: docs/03-cli-surface.md.

Contributing

PRs welcome — start with CONTRIBUTING.md. Locked constraints for any change:

  1. Filesystem stays the source of truth.
  2. SQLite schema unchanged.
  3. CLI stays stdlib-only.
  4. Web UI: stdlib backend, no build step, no new runtime deps, loopback bind.
  5. No new CLI commands or Store methods without maintainer approval — open an issue first.

Security

See SECURITY.md for disclosure policy. Design notes: security_best_practices_report.md, skills-manager-threat-model.md.

Roadmap

Where this is going: ROADMAP.md (spec-lint+, cross-scope dedup, registry bridge, eval harness, VS Code extension…).

License

MIT — see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skill_control_plane-1.0.1.tar.gz (209.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

skill_control_plane-1.0.1-py3-none-any.whl (172.4 kB view details)

Uploaded Python 3

File details

Details for the file skill_control_plane-1.0.1.tar.gz.

File metadata

  • Download URL: skill_control_plane-1.0.1.tar.gz
  • Upload date:
  • Size: 209.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for skill_control_plane-1.0.1.tar.gz
Algorithm Hash digest
SHA256 141e907926e3a68252c09d00f24958772f19f466152a2a3294baa93d82588e82
MD5 a75eea57f257b99ee869eaeb63ac7b16
BLAKE2b-256 5a365d9f8f541c9896fe9c3db4fb2ad6858b675797938667fead773b3cd69971

See more details on using hashes here.

Provenance

The following attestation bundles were made for skill_control_plane-1.0.1.tar.gz:

Publisher: release.yml on udayvarmora07/skills-manager

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file skill_control_plane-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for skill_control_plane-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a6b5b80d1e45819ce43962fa5331dbe4c8ae09d07989cd3427900d752695f402
MD5 f588fa93261fd5667b6015e6076b8fb0
BLAKE2b-256 f5a7dd704f3bb7afb66d11a7c0fafa542f50690677f48dd5a83a64c8a9d3cd2a

See more details on using hashes here.

Provenance

The following attestation bundles were made for skill_control_plane-1.0.1-py3-none-any.whl:

Publisher: release.yml on udayvarmora07/skills-manager

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page