Skills
Skills are vendored SKILL.md directories installed into an agent's skills/
directory. Each agent owns its own skills — they are never merged into a global
catalog shared by every session.
Adding skills
kman skills add --agent coder --source vercel-labs/agent-skills
kman skills add --agent coder --source vercel-labs/agent-skills --ref v1.3.2
kman skills add --agent coder --source vercel-labs/agent-skills --skill humanizer
kman skills add --agent coder --source vercel-labs/agent-skills --all
skills add discovers all candidate SKILL.md directories from --source:
- Exactly one candidate → it is installed.
- Multiple candidates →
--skill <name>filters by skill name (repeatable),--allinstalls every candidate, and an interactive multi-select picker is shown only when neither option is provided.
In non-interactive mode (no TTY) with multiple candidates and no --skill /
--all, kman exits with code 2 and prints the discovered skill names.
Sources
Source parsing follows the vercel-labs/skills model: parse the source first,
then discover skill directories by finding SKILL.md files. Sources may be:
- local paths,
- GitHub/GitLab URLs,
- GitHub shorthand —
owner/repo,owner/repo/path,owner/repo@ref, - direct git URLs,
- branch/ref selectors,
- well-known skill endpoint names.
Subpaths are sanitized so they cannot escape the cloned repository. Discovery
checks direct skill paths first, then common roots such as skills/,
.claude/skills/, and other agent-specific skills directories, and finally a
bounded recursive search.
Pinning with --ref
Pin a branch, tag, or commit with --ref:
kman skills add --agent coder --source owner/repo --skill humanizer --ref v2.0.0
The exact commit hash the source resolves to is recorded as ref in the
skill's vendoring manifest — even when you don't pass --ref — so every
vendored skill pins the precise commit it came from.
Listing and inspecting
kman skills list --agent coder
kman skills show --agent coder --skill humanizer
Installed skill directories are the source of truth: a skill is active when
<agent>/skills/<skill>/ exists. agent.toml does not duplicate the installed
skill list. v1 installs skills by copying directly into the target agent's
skills/ directory; there is no shared cache or symlink mode.
The vendoring manifest
Each vendored skill carries a .kman-skill.json manifest:
{
"source": "vercel-labs/agent-skills",
"source_url": "https://github.com/vercel-labs/agent-skills",
"ref": "abc123def4567890abcdef1234567890abcdef12",
"installed_at": "2026-05-25T09:12:47Z",
"version": "git-sha-abc123",
"checksum": "sha256:..."
}
ref is the exact commit hash the source resolved to at install time (for
git-backed sources), so the vendored skill records the precise commit even if
you installed from a branch or without --ref.
Updating
kman skills update --agent coder --skill humanizer
kman skills update --agent coder --all
kman skills update --agent coder --skill humanizer --force
update refuses if the skill's local mtime is newer than the manifest install
time — a divergent checksum means you edited the skill locally. Pass --force
to overwrite, or detach the skill first to make it a pure local copy (which
removes the manifest).
Removing
kman skills remove --agent coder --skill humanizer
Related
- Full flag list: CLI Reference.