Skillshare CLI
Global: ~/.config/skillshare/skills/ → all AI CLIs. Project: .skillshare/skills/ → repo-local.
Auto-detects project mode when .skillshare/config.yaml exists. Force with -p or -g.
Recipes
Getting Started
skillshare init --no-copy --all-targets --git --skill # Fresh global setup
skillshare init -p --targets "claude,cursor" # Fresh project setup
skillshare init --copy-from claude --all-targets --git # Import from existing CLI
skillshare init --discover --select "windsurf" # Add new AI tool later
Installing Skills
skillshare install user/repo -s pdf,commit # Select specific skills
skillshare install user/repo --all # Install everything
skillshare install user/repo --into frontend # Place in subdirectory
skillshare install gitlab.com/team/repo # Any Git host
skillshare install user/repo --track # Enable `update` later
skillshare install user/repo -s pdf -p # Install to project
skillshare install # Reinstall all tracked remotes from config
skillshare sync # Always sync after install
Extras (Rules, Commands, Prompts)
skillshare extras init rules --target ~/.claude/rules --target ~/.cursor/rules
skillshare extras init commands --target ~/.claude/commands --mode copy
skillshare extras init # Interactive TUI wizard
skillshare extras list # Show status per target
skillshare extras list --json # JSON output
skillshare extras collect rules # Pull local files into source
skillshare extras remove rules # Remove from config (source preserved)
skillshare extras rules --mode copy # Change sync mode of a target
skillshare sync extras # Sync all extras to targets
skillshare sync extras --dry-run --force # Preview / overwrite conflicts
skillshare sync --all # Sync skills + extras together
See extras.md for details.
Creating & Discovering Skills
skillshare new my-skill # Create a new skill from template
skillshare search "react testing" # Search GitHub for skills
skillshare collect # Pull target-local changes back to source
Removing Skills
skillshare uninstall my-skill # Remove one (moves to trash)
skillshare uninstall skill-a skill-b # Remove multiple
skillshare uninstall -G frontend # Remove entire group
skillshare sync # Always sync after uninstall
Team / Organization
# Creator: init project (see Getting Started) → add skills → commit .skillshare/
skillshare install -p && skillshare sync # Member: clone → install → sync
skillshare install github.com/team/repo --track -p # Track shared repo
skillshare push # Cross-machine: push on A
skillshare pull # Cross-machine: pull on B
Skill Hubs
skillshare hub add https://example.com/hub.json # Save a hub source
skillshare hub add https://example.com/hub.json --label my-hub # With custom label
skillshare hub list # List saved hubs
skillshare hub default my-hub # Set default hub
skillshare hub remove my-hub # Remove a hub
skillshare hub index --source ~/.config/skillshare/skills/ --full --audit # Build hub index
Controlling Where Skills Go
# SKILL.md frontmatter: targets: [claude] → only syncs to Claude
skillshare target claude --add-include "team-*" # glob filter
skillshare target claude --add-exclude "_legacy*" # exclude pattern
skillshare target codex --mode copy && skillshare sync --force # copy mode
See targets.md for details.
Updates & Maintenance
skillshare check # See what has updates
skillshare update my-skill && skillshare sync # Update one
skillshare update --all && skillshare sync # Update all
skillshare update --all --diff # Show what changed
Scripting & CI/CD
skillshare status --json # Full status as JSON
skillshare check --json # Update status as JSON
skillshare sync --json # Sync results as JSON
skillshare diff --json # Diff results as JSON
skillshare install user/repo --json # Install result as JSON (implies --force --all)
skillshare update --all --json # Update results as JSON
skillshare uninstall my-skill --json # Uninstall result as JSON (implies --force)
skillshare collect claude --json # Collect result as JSON (implies --force)
skillshare target list --json # Target list as JSON
skillshare list --json # Skill list as JSON
skillshare search react --json # Search results as JSON
skillshare audit --format json # Audit results as JSON
Recovery & Troubleshooting
skillshare trash restore <name> && skillshare sync # Undo delete
skillshare sync # Skill missing? Re-sync
skillshare doctor && skillshare status # Diagnose issues
skillshare install user/repo --force # Override audit block
skillshare install user/repo --skip-audit # Bypass scan entirely
See TROUBLESHOOTING.md for more.
Quick Lookup
| Commands | Project? | --json? |
|---|---|---|
status, diff, list, doctor | ✓ (auto) | ✓ (except doctor) |
sync, collect | ✓ (auto) | ✓ |
install, uninstall, update, check, search, new | ✓ (-p) | ✓ (except new) |
target, audit, trash, log, hub | ✓ (-p) | ✓ (target list, audit, log) |
extras init/list/remove/collect/mode | ✓ (-p) | ✓ (list, mode) |
push, pull, backup, restore | ✗ | ✗ |
tui, upgrade | ✗ | ✗ |
ui | ✓ (-p) | ✗ |
AI Caller Rules
- Non-interactive — AI cannot answer prompts. Use
--force,--all,-s,--targets,--no-copy,--all-targets,--yes. - Sync after mutations —
install,uninstall,update,collect,targetall needsync. - Audit —
installauto-scans; CRITICAL blocks.--forceto override,--skip-auditto bypass. Detects hardcoded secrets (API keys, tokens, private keys). - Uninstall safely — moves to trash (7 days).
trash restore <name>to undo. NEVERrm -rfsymlinks. - Output —
--jsonfor structured data (12 commands support it, see Quick Lookup).--no-tuifor plain text on TUI commands (list,log,audit,diff,trash list,backup list).tui offdisables TUI globally.--dry-runto preview.
References
| Topic | File |
|---|---|
| Init flags | init.md |
| Sync/collect/push/pull | sync.md |
| Install/update/uninstall/new | install.md |
| Status/diff/list/search/check | status.md |
| Security audit | audit.md |
| Trash | trash.md |
| Operation log | log.md |
| Targets | targets.md |
| Extras (rules/commands/prompts) | extras.md |
| Backup/restore | backup.md |
| Troubleshooting | TROUBLESHOOTING.md |