Security

Manage Agent Skills

Try it

Toggle skills across major coding agents

What it does

Manage Agent Skills across Codex, Claude Code, Copilot CLI, OpenClaw, and Hermes. Audit, search, enable, disable, set Claude Code visibility states, and apply presets without deleting files. Use when the user wants to reduce idle skill context, keep rarely used skills manual, inspect newly installed skills on demand, or toggle skills for one specific agent.

The skill document

Manage Agent Skills

Use the bundled scripts/skillctl.py for deterministic, on-demand management. Never start a daemon or watcher. Discover current skills again on every invocation.

Workflow

  1. Run doctor or status before changing anything.
  2. Use search to resolve exact skill names.
  3. Preview mutations with --dry-run.
  4. Apply the requested mutation.
  5. Report the platform, affected skills, config or native command used, backup path, and whether a new agent session is required.

Choose the Python launcher available on the current operating system (python on Windows, commonly python3 on macOS/Linux) and resolve the skill directory before running the script.

Windows PowerShell:

$skillctl = "\scripts\skillctl.py"
python "$skillctl" doctor
python "$skillctl" --platform codex status
python "$skillctl" --platform all search azure

macOS/Linux:

skillctl="/scripts/skillctl.py"
python3 "$skillctl" doctor
python3 "$skillctl" --platform codex status
python3 "$skillctl" --platform all search azure

Mutation commands use the same arguments on every operating system:

  --platform claude disable deploy --dry-run
  --platform claude disable deploy
  --platform copilot enable my-skill --dry-run
  --platform openclaw disable browser-tools --dry-run
  --platform hermes --hermes-scope telegram disable shell-tools --dry-run

For automation, pass --json either before or after the command. Use the format that keeps the caller's command template readable:

  --platform all --json status
  --platform all status --json

Mutations require an explicit --platform codex, --platform claude, or --platform copilot, --platform openclaw, or --platform hermes. Selectors are exact names, group:, path:, or all; partial names are intentionally rejected. Hermes defaults to global scope; pass --hermes-scope for a platform-specific disable.

A selector matches either the display name or the identifier the host's own configuration keys on. When they differ, search prints the identifier as (key=...); prefer that value.

Groups are discovery sources only (shared, claude-user, a plugin name). No skill is grouped by name unless the user supplies a taxonomy:

  --platform codex --groups my-groups.json disable group:azure --dry-run

The file is {"version": 1, "groups": {"azure": ["azure-*"]}}; patterns are fnmatch style. Never assume a group exists — confirm it with search first.

Claude Code visibility states

Claude Code has four states rather than two. Use set to reach the middle ones, and prefer name-only when the goal is to cut idle context while keeping the skill discoverable:

  --platform claude set name-only legacy-context
  --platform claude set user-invocable-only deploy
  --platform claude set off legacy-context --dry-run
StateListed to ClaudeIn / menu
onName and descriptionYes
name-onlyName onlyYes
user-invocable-onlyHiddenYes
offHiddenHidden

enable and disable remain shorthand for on and off. The other platforms accept only enable and disable.

Claude Code keys personal and project skills by directory name; the frontmatter name is only the label shown in listings. The manager writes the directory name and reports display_name_differs when the two disagree.

For path: selectors, use the native absolute path printed by search, and quote the entire selector when it contains spaces:

Windows: path:C:\skills\demo\SKILL.md
macOS:   path:/Users/alice/.agents/skills/demo/SKILL.md
Linux:   path:/home/alice/.agents/skills/demo/SKILL.md

Do not translate paths between operating systems; matching uses the path rules of the system running skillctl.py.

Presets

Use a JSON preset file matching references/presets.md:

  --platform codex preset lean --file skill-presets.json --dry-run
  --platform codex preset lean --file skill-presets.json

Safety

  • Do not delete, relocate, or rewrite any installed SKILL.md.
  • Keep changes scoped to native platform controls.
  • Codex edits only its marked TOML block.
  • Claude Code edits only skillOverrides in its settings JSON. The manager currently reads and writes the user-level file only; a project or local settings file can still override the result.
  • Copilot writes the documented disabledSkills setting and uses copilot skill list --json for native discovery when available.
  • OpenClaw delegates mutations to openclaw config set so its JSON5 config is not normalized or hand-edited. Agent allowlists may still restrict a skill.
  • Hermes writes only skills.disabled or skills.platform_disabled. in config.yaml. PyYAML may normalize formatting and comments, so the backup is the lossless recovery copy.
  • Create a sibling .manage-agent-skills.bak before changing a config file.
  • Protect manage-agent-skills, skill-creator, and plugin-creator from disable-all unless the user explicitly requests --force.
  • Explain that Codex, Claude Code, OpenClaw, and Hermes changes may require a new session or gateway restart; Copilot follows its native command behavior.

Read references/platforms.md when platform semantics or support boundaries matter. Read references/presets.md only when creating or applying presets.

Related skills

Drive the Skills Manager CLI (`skm`) to initialize the hub, adopt unmanaged skills, list/enable/disable skills per AI tool, and doctor/fix symlink sync. Use whenever the user or an agent needs to manage skills from a terminal, SSH session, CI job, or headless machine; when a skill is missing in Claude Code, Codex, Cursor, Gemini, OpenCode, or any other supported tool; when asked to run skm / Skills Manager CLI; or when setting up Skills Manager without the GUI. Do not use for `npx skills` / skills.sh search (different CLI), for writing SKILL.md content (skill-creator), or for marketplace browse/install (not in skm).

Use this skill when you need to publish, fetch, search, list, share, or watch AgentFiles artifacts from Codex, Claude Code, OpenClaw, or other agent runtimes...

17 installs

Audit and converge local skills across Codex, Claude, OpenClaw, OpenCode, workspace skills, and shared agent libraries; compute a hygiene score, classify sha...

16 installs

Audit an upstream agent skill, SKILL.md, skill repository, or lifecycle workflow before adapting it for ClawHub, Codex, Claude Code, or a public Skool skill...

10 installs

84 production-ready agentic plugins, 192 agents, 156 skills & 102 commands for Claude Code, Codex CLI, Cursor, OpenCode & Gemini CLI

4 installs1 stars