agentleFS
laurenthuanglaurenthuang/skills/skillshare/SKILL.md

skillshare

Skill0 starsChanged 5 months agoMITView on GitHub

Manages and syncs AI CLI skills and agents across 50+ tools from a single source. Use this skill whenever the user mentions "skillshare", runs skillshare commands, manages skills or agents (install, update, uninstall, sync, commit, audit, analyze, check, diff, search), or troubleshoots skill/agent configuration (orphaned symlinks, broken targets, sync issues). Covers both global (~/.config/skillshare/) and project (.skillshare/) modes. Also use when: adding new AI tool targets (Claude, Cursor, Windsurf, etc.), setting target include/exclude filters or copy vs symlink mode, using backup/restore or trash recovery, piping skillshare output to scripts (--json), setting up CI/CD audit pipelines, building/sharing skill hubs (hub index, hub add), or working with agents (single .md files synced to agent-capable targets like Claude, Cursor, Augment, OpenCode) via positional `agents` filter or `--kind agent`, plus `.agentignore` and `enable`/`disable` for per-agent toggles.

  • Deletes or force-pushes

15 other projects use a version of this, 12 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use find-skills.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • VercelSkill

    find-skills

    Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.

    Also in 3 projects that use this

The file

Files
SKILL.md

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 -b develop --all    # Install from branch
skillshare install user/repo --track -b develop  # Track specific branch
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 rules --target ~/.claude/rules --source ~/shared/rules  # custom source (global only)
skillshare extras init rules --target ~/.cursor/rules --force                  # overwrite existing
skillshare extras init                               # Interactive TUI wizard (incl. source step)
skillshare extras source                             # Show current extras_source
skillshare extras source ~/shared/extras             # Set global extras_source
skillshare extras list                               # Show status per target
skillshare extras list --json                        # JSON with source_type field
skillshare extras collect rules                      # Pull local files into source
skillshare extras remove rules                       # Remove from config (source preserved)
skillshare extras init agents --target ~/.claude/agents --flatten  # Flatten subdirs into root
skillshare extras rules --mode copy                  # Change sync mode of a target
skillshare extras agents --flatten                   # Enable flatten on existing target
skillshare extras rules --add-target ~/.cursor/rules            # Add a target to an existing extra
skillshare extras rules --remove-target ~/.cursor/rules --prune # Remove a target (--prune deletes synced files)
skillshare sync extras                               # Sync all extras to targets
skillshare sync extras --dry-run --force             # Preview / overwrite conflicts
skillshare sync --all                                # Sync skills + extras together

A target can set an extension: field in config.yaml to transform each source file during sync (e.g. markdown → TOML for Gemini/Codex); implies copy mode. See extras.md for details.

Creating & Discovering Skills

skillshare new my-skill                          # Create with interactive pattern selection
skillshare new my-skill -P reviewer              # Use reviewer pattern directly
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

Enable / Disable Skills

skillshare disable draft-*                       # Hide from sync (adds to .skillignore)
skillshare enable draft-*                        # Restore (removes from .skillignore)
skillshare disable my-skill -p                   # Project mode
skillshare disable my-skill --dry-run            # Preview
# TUI: press E in `skillshare list` to toggle
skillshare sync                                  # Always sync after toggle

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 commit -m "Update skill"                       # Local checkpoint, no push
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 add git@ghe.corp.com:team/skills.git --label ghe  # SSH/private/GHE hub source
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: metadata.targets: [claude] → only syncs to Claude
skillshare target claude --add-include "team-*"   # glob filter
skillshare target claude --add-agent-include "team-*"  # agent glob filter
skillshare target claude --add-exclude "_legacy*"  # exclude pattern
skillshare target claude --agent-mode copy         # agents copy mode
skillshare target codex --mode copy && skillshare sync --force  # copy mode
# .skillignore — hide skills/dirs from discovery (gitignore syntax)
#   Root-level: <source>/.skillignore (affects all commands)
#   Repo-level: <source>/_repo/.skillignore (scoped to that repo)
#   .skillignore.local — local override (not committed), negation overrides base

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
skillshare doctor --json                       # Health check as JSON (exit 1 on errors)

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

CommandsProject?--json?
status, diff, list, doctor✓ (auto)✓
sync, collect✓ (auto)✓
install, uninstall, update, check, search, new✓ (-p)✓ (except new)
target, audit, analyze, trash, log, hub✓ (-p)✓ (target list, audit, analyze, log)
extras init/list/remove/collect/source (+ --mode/--add-target/--remove-target flags on extras <name>)✓ (-p, except source)✓ (list, mode, targets)
enable, disable✓ (auto)✗
commit, push, pull, backup, restore✗✗
tui, upgrade✗✗
ui✓ (-p)✗

AI Caller Rules

  1. Non-interactive — AI cannot answer prompts. Use --force, --all, -s, --targets, --no-copy, --all-targets, --yes.
  2. Sync after mutations — install, uninstall, update, collect, target all need sync.
  3. Audit — install auto-scans; CRITICAL blocks. --force to override, --skip-audit to bypass. Detects hardcoded secrets (API keys, tokens, private keys).
  4. Uninstall safely — moves to trash (7 days). trash restore <name> to undo. NEVER rm -rf symlinks.
  5. Output — --json for structured data (12 commands support it, see Quick Lookup). --no-tui for plain text on TUI commands (list, log, audit, analyze, diff, trash list, backup list, target list). tui off disables TUI globally. --dry-run to preview.

References

TopicFile
Init flagsinit.md
Sync/collect/commit/push/pullsync.md
Install/update/uninstall/newinstall.md
Status/diff/list/search/checkstatus.md
Security auditaudit.md
Trashtrash.md
Operation loglog.md
Targetstargets.md
Extras (rules/commands/prompts)extras.md
Backup/restorebackup.md
TroubleshootingTROUBLESHOOTING.md

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.