Symlink skills that already exist in the canonical directory to a specified platform directory. Unlike add, link does not download or install any skills from remote sources — it only operates on locally existing skills.

xskill link [OPTIONS] --skill <SKILL> --agent <AGENT>

Options:

  • -s, --skill <SKILL> — Skill name (use '*' for all skills)
  • -a, --agent <AGENT> — Target platform (use '*' for all platforms)
  • -g, --global — Operate on global ~/.agents/skills/ directory
  • -A, --all — Shorthand for --skill '*' --agent '*'
FlagBehavior
-s s1 -a codebuddySymlink .agents/skills/s1 to .codebuddy/skills/s1 (auto-creates platform dir)
-s s1 -a codebuddy -gSymlink ~/.agents/skills/s1 to ~/.codebuddy/skills/s1
-s s1 -a '*'Link s1 to all existing platform directories
-s '*' -a claudeLink all existing skills to claude platform
-s '*' -a '*'Link all existing skills to all existing platforms
-ASame as -s '*' -a '*'

Key rules

  • link does not require a -f parameter (no remote source involved).
  • No lock file update: skills were already installed and recorded by add; link only creates symlinks.
  • Skills must already exist in the canonical directory (with SKILL.md), otherwise an error is shown.
  • -s '*' scans all subdirectories containing SKILL.md in the canonical directory.
  • Symlinks use relative paths, following the same rules as add.
  • Falls back to file copy if symlink creation fails.

agents_compat

Platforms with agents_compat: true are skipped (they read the canonical directory directly). Single platform: Skipped: <name> (agents_compat) (dimmed); -a '*': silently skipped with summary.

Examples

# Link a single skill to a specific platform
xskill link -s vue -a claude

# Link all existing skills to a platform
xskill link -s '*' -a claude

# Link a skill to all platforms
xskill link -s vue -a '*'

# Link everything to everything
xskill link -A

# Global mode
xskill link -s vue -a claude -g