agentsclimarketplace

Skm organize agent skills

Skill weiox/skm/skills/skm-organize-agent-skills

Use when local skills for Codex and Claude Code are scattered across `~/.agents/skills`, `~/.claude/skills`, `~/.codex/skills`, or ad-hoc folders and you want to consolidate them into a single source of truth under `~/.skm` while keeping tool-specific symlink entrypoints.From its SKILL.md

Install
npx -y skills add weiox/skm --skill skm-organize-agent-skills

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

4.5 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

Organize Agent Skills

Overview

Keep one source of truth for local skills, and treat every tool-specific skill directory as an entrypoint, not as the place you maintain content.

The target model is:

  • Source of truth: ~/.skm
  • Codex entrypoint: ~/.agents/skills
  • Claude Code entrypoint: ~/.claude/skills

When to Use

Use this skill when you notice any of these symptoms:

  • the same skill exists in more than one place
  • Codex can see a skill but Claude Code cannot, or the reverse
  • you are migrating to a new machine and want GitHub-backed reuse
  • personal skills and third-party skills are mixed together
  • you want to reduce manual symlink sprawl or one-off local edits

Do not use this skill for project-specific instructions like repository AGENTS.md or CLAUDE.md.

Target Layout

Keep the repository layout minimal:

~/.skm/
├── personal/
│   └── <skill-name>/
│       └── SKILL.md
└── vendor/
    └── <package>/

Apply these rules:

  • your own reusable skills go in ~/.skm/personal/
  • third-party skill packs go in ~/.skm/vendor/
  • ~/.agents/skills and ~/.claude/skills should contain symlinks only
  • do not treat ~/.codex/skills/.system or runtime caches as part of your personal library

Workflow

1. Inventory everything first

Start with the bundled dry-run inventory:

bash ~/.skm/skills/skm-organize-agent-skills/scripts/skm-organize-agent-skills.sh

If you also want to inspect an ad-hoc folder of old skills, add one or more scan roots:

bash ~/.skm/skills/skm-organize-agent-skills/scripts/skm-organize-agent-skills.sh \
  --scan-root ~/old-skills \
  --scan-root ~/Downloads/skill-backups

The script classifies each discovered item into exactly one bucket:

  • personal: you own the content and want to maintain it
  • vendor: upstream package you want to track separately
  • ignore: runtime files, tool internals, obsolete duplicates

2. Consolidate personal skills

Review the dry-run output first. When the plan looks correct, apply it explicitly:

bash ~/.skm/skills/skm-organize-agent-skills/scripts/skm-organize-agent-skills.sh \
  --apply \
  --scan-root ~/old-skills

In apply mode, the script:

  1. moves personal skills into ~/.skm/personal/<skill-name>/
  2. moves git-backed upstream packs into ~/.skm/vendor/<package>/
  3. runs bootstrap.sh --force
  4. runs check.sh

3. Consolidate vendor skills

For third-party skill packs:

  • prefer git submodule under ~/.skm/vendor/
  • keep the upstream package intact instead of copying individual files by hand
  • let bootstrap.sh expose vendor skills to the agent entrypoints
  • treat a git-backed external repo as a vendor package, not as a personal skill

Example:

bash ~/.skm/skills/skm-organize-agent-skills/scripts/skm-organize-agent-skills.sh \
  --scan-root ~/src/superpowers

4. Verify the entrypoints

After apply mode runs, confirm the generated entrypoints:

bash ~/.skm/scripts/check.sh

Also spot-check the symlinks:

find ~/.agents/skills -maxdepth 2 -type l | sort
find ~/.claude/skills -maxdepth 2 -type l | sort

Quick Decisions

Use this table when classifying a skill:

SituationDestination
You wrote it and will maintain it~/.skm/personal/<skill-name>/
It comes from an upstream package~/.skm/vendor/<package>/
It is tool-generated or runtime-onlyDo not store in skm
It is repo-specific guidanceKeep it in the repo, not here

Common Mistakes

  • Editing ~/.agents/skills or ~/.claude/skills as if they were source directories
  • Keeping duplicate copies of the same skill in multiple source locations
  • Copying third-party packs manually instead of preserving an upstream boundary
  • Treating ~/.codex/skills/.system or chat history as versioned personal assets
  • Forgetting to rerun bootstrap.sh and check.sh after a reorganization

Completion Checklist

Before calling the reorganization done:

  1. every maintained skill lives under ~/.skm
  2. personal skills exist only under ~/.skm/personal/
  3. vendor packs exist only under ~/.skm/vendor/
  4. ~/.agents/skills and ~/.claude/skills are regenerated symlink entrypoints
  5. bash ~/.skm/scripts/check.sh passes

What ships with it: 2 files

10.8 KB alongside SKILL.md, 2 of them executable

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.