AgentKit
DocsKitsCLI ReferenceDesktop App
BetaYou are reading docs for the beta channel (2.13.0-beta.20). Features may change before the next stable release.Switch to stable →

ak skill

ak skill

Manage the local Python and Node environments used by one skill without confusing them with installed skill content.

Use ak skill for the runtime environment behind one local skill. It does not install or remove the skill's SKILL.md content; use ak skills for that catalog and content lifecycle.

Usage

ak skill <command>

Running the group without a child prints help. The group itself does not write files.

Choose a command

GoalCommandEffect
Create a missing environmentak skill install <kit>/<skill>Populates or reuses a content-addressed cache and writes the skill record.
Check local healthak skill verify <kit>/<skill>Reads the live runtime: block, record, and expected cache markers.
Repair a corrupt record or environmentak skill repair <kit>/<skill>Acts only when verification reports corrupt.
Apply an edited runtime: blockak skill upgrade <kit>/<skill>Selects a new cache hash and refreshes the record when the declaration changed.
Remove the runtime recordak skill remove <kit>/<skill>Deletes the per-skill record but preserves shared cache data.

The canonical reference is <kit>/<skill>. Every child accepts --kits-dir <dir>; source resolution is explicit flag, then AGENTKIT_KITS_DIR, then ./kits.

Understand records and caches

Runtime state defaults to these locations:

~/.agentkit/skills/<kit>/<skill>/.manifest.json
~/.agentkit/cache/<runtime-hash>/

AGENTKIT_HOME changes the ~/.agentkit base. Skills with identical normalized Python and Node declarations share one cache entry. Removing or upgrading one record therefore does not garbage-collect an old cache.

The runtime manager is enabled by default. Setting AGENTKIT_SKILL_RUNTIME=0 is an opt-out kill switch. In that state, mutating primitives become no-ops and verification reports unknown; command completion text does not prove files changed.

Security and network boundary

Install and upgrade can execute uv or pnpm and contact the fixed public PyPI or npm registry. Package-source override environment variables are removed, and package declarations must use exact versions. Node installation also uses --ignore-scripts; Python packages can still involve normal Python build and installation behavior. Review a kit's runtime: block before provisioning it.

These commands never prompt and have no preview, backup, rollback, --force, or remote AgentKit registry entitlement step.

Output boundary

verify --json writes a small raw object with kit, skill, and status to stdout. The other successful children currently write [OK] completion lines to stderr and do not emit a JSON success envelope, even with --json. --quiet does not suppress these direct status lines. JSON execution errors do use a structured error envelope on stderr.