Source profileQuality 89/100Review permissions

runkids/skillshare/skills/skillshare/SKILL.md

skillshare

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, W

Source repository stars
2,519
Declared platforms
1
Static risk flags
2
Last source update
2026-08-03
Source checked
2026-08-04

Decision brief

What it does—and where it fits

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.

Best for

  • Also use when: adding new AI tool targets (Claude, Cursor, W

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorDeclaredSource recordInstall path and trigger
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/runkids/skillshare --skill "skills/skillshare"
Safe inspection promptEditorial

Inspect the Agent Skill "skillshare" from https://github.com/runkids/skillshare/blob/04aea45ebd1ecf703d117e7c931f3ba2f2378301/skills/skillshare/SKILL.md at commit 04aea45ebd1ecf703d117e7c931f3ba2f2378301. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Getting Started

    Review the “Getting Started” section in the pinned source before continuing.

    Review and apply the “Getting Started” source section.
  2. 02

    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…

    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…
  3. 03

    Recipes

    Project extras always read from / (default .skillshare/extras/); per-extra source and extras source are global-only. For project agents, prefer target agents: unless you need extras-only flatten/extension.

    Project extras always read from / (default .skillshare/extras/); per-extra source and extras source are global-only. For project agents, prefer target agents: unless you need extras-only flatten/extension.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.
  4. 04

    Installing Skills

    Review the “Installing Skills” section in the pinned source before continuing.

    Review and apply the “Installing Skills” source section.
  5. 05

    Extras (Rules, Commands, Prompts)

    Project extras always read from / (default .skillshare/extras/); per-extra source and extras source are global-only. For project agents, prefer target agents: unless you need extras-only flatten/extension.

    Project extras always read from / (default .skillshare/extras/); per-extra source and extras source are global-only. For project agents, prefer target agents: unless you need extras-only flatten/extension.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.

Permission review

Static risk signals and limitations

Runs scripts

medium · line 57

The documentation asks the agent to run terminal commands or scripts.

# extension.yaml controls: run command, output_ext, description

Network access

medium · line 58

The documentation includes network, browsing, or remote request actions.

# Official extensions: https://github.com/runkids/skillshare/tree/main/extensions

Network access

medium · line 117

The documentation includes network, browsing, or remote request actions.

skillshare hub add https://example.com/hub.json # Save a hub source

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score89/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars2,519SourceRepository attention, not individual Skill quality
Compatibility1 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
runkids/skillshare
Skill path
skills/skillshare/SKILL.md
Commit
04aea45ebd1ecf703d117e7c931f3ba2f2378301
License
MIT
Collected
2026-08-04
Default branch
main
View the original 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                               # Rehydrate remote skills/tracked repos
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

Project extras always read from <sources.extras>/<name> (default .skillshare/extras/<name>); per-extra source and extras source are global-only. For project agents, prefer target agents: unless you need extras-only flatten/extension.

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.

Extensions (Content Transformation)

# Extension is a directory at .skillshare/extensions/<name>/
# extension.yaml controls: run command, output_ext, description
# Official extensions: https://github.com/runkids/skillshare/tree/main/extensions

extension.yaml format:

run: ["node", "convert.js"]   # or ["python3", "convert.py"] etc.
output_ext: toml              # renames output file extension
description: "MD → Codex TOML"

Add extension to an extras target in config.yaml:

extras:
  - name: agents
    targets:
      - path: .claude/agents          # plain copy/merge
      - path: .codex/agents
        extension: codex-agents       # transform + rename to .toml

Caveats:

  • extension: is only supported on extras targets — native agents targets ignore it
  • Implies copy mode; merge/symlink won't apply
  • Claude Code sets NODE_OPTIONS that break node extensions — use env -u NODE_OPTIONS node convert.js in run
  • Files missing required frontmatter fields fail validation and are skipped

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 [email protected]: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           # Global JSON; dirty tracked repos still require --force
skillshare collect claude --json               # Collect result as JSON; existing items still require --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 mutationsinstall, uninstall, update, collect, target all need sync.
  3. Auditinstall 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.
  6. Node extensions in Claude CodeNODE_OPTIONS is preloaded by the Claude Code harness and causes node to crash when running extensions. Always use run: ["env", "-u", "NODE_OPTIONS", "node", "convert.js"] in extension.yaml when writing extensions that use Node.js.

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

Alternatives

Compare before choosing