skills/productivity/the-library/SKILL.md
--- name: library description: Private skill distribution system. Use when the user wants to install, use, add, push, remove, sync, list, or search for skills, agents, or prompts from their private library catalog. Triggers on /library commands or mentions of library, skill distribution, or agentic management. argument-hint: [command or prompt] [name or details] --- # The Library A meta-skill for private-first distribution of agentics (skills, agents, and prompts) across agents, devices, and t
npx skillsauth add codewithbehnam/cc-docs skills/productivity/the-libraryInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
A meta-skill for private-first distribution of agentics (skills, agents, and prompts) across agents, devices, and teams.
Update these after forking and cloning the library repo.
<your forked repo url>~/.claude/skills/library/library.yaml~/.claude/skills/library/The Library is a catalog of references to your agentics. The library.yaml file points to where skills, agents, and prompts live (local filesystem or GitHub repos). Nothing is fetched until you ask for it.
The library.yaml is a catalog, not a manifest. Entries define what's available — not what gets installed. You pull specific items on demand with /library use <name>.
| Command | Purpose |
| --------------------------- | ---------------------------------------- |
| /library install | First-time setup: fork, clone, configure |
| /library add <details> | Register a new entry in the catalog |
| /library use <name> | Pull from source (install or refresh) |
| /library push <name> | Push local changes back to source |
| /library remove <name> | Remove from catalog and optionally local |
| /library list | Show full catalog with install status |
| /library sync | Re-pull all installed items from source |
| /library search <keyword> | Find entries by keyword |
Each command has a detailed step-by-step guide. Read the relevant cookbook file before executing a command.
| Command | Cookbook | Use When | | ------- | --------------------------------------- | ----------------------------------------------------------- | | install | cookbook/install.md | First-time setup on a new device | | add | cookbook/add.md | User wants to register a new skill/agent/prompt in catalog | | use | cookbook/use.md | User wants to pull or refresh a skill from the catalog | | push | cookbook/push.md | User improved a skill locally and wants to update the source | | remove | cookbook/remove.md | User wants to remove an entry from the catalog | | list | cookbook/list.md | User wants to see what's available and what's installed | | sync | cookbook/sync.md | User wants to refresh all installed items at once | | search | cookbook/search.md | User is looking for a skill but doesn't know the exact name |
When a user invokes a /library command, read the matching cookbook file first, then execute the steps.
The source field in library.yaml supports these formats (auto-detected):
/absolute/path/to/SKILL.md — local filesystemhttps://github.com/org/repo/blob/main/path/to/SKILL.md — GitHub browser URLhttps://raw.githubusercontent.com/org/repo/main/path/to/SKILL.md — GitHub raw URLBoth GitHub URL formats are supported. Parse org, repo, branch, and file path from the URL structure. For private repos, use SSH or GITHUB_TOKEN for auth automatically.
Important: The source points to a specific file (SKILL.md, AGENT.md, or prompt file). We always pull the entire parent directory, not just the file.
Local paths start with / or ~:
GitHub browser URLs match https://github.com/<org>/<repo>/blob/<branch>/<path>:
org, repo, branch, file_pathhttps://github.com/<org>/<repo>.git<path>GitHub raw URLs match https://raw.githubusercontent.com/<org>/<repo>/<branch>/<path>:
org, repo, branch, file_pathhttps://github.com/<org>/<repo>.git<path>When working with GitHub sources, prefer gh api for accessing single files (e.g., reading a SKILL.md to check metadata). For pulling entire skill directories, clone into a temp dir per the steps below.
Fetching (use):
git clone --depth 1 <clone_url> into a temporary directoryPushing (push):
git clone --depth 1 <clone_url> into a temporary directorygit add <skill_directory_path>library: updated <skill name> <what changed>The requires field uses typed references to avoid ambiguity:
skill:name — references a skill in the library catalogagent:name — references an agent in the library catalogprompt:name — references a prompt in the library catalogWhen resolving dependencies: look up each reference in library.yaml, fetch all dependencies first (recursively), then fetch the requested item.
By default, items are installed to the default directory from library.yaml:
default_dirs:
skills:
- default: .claude/skills/
- global: ~/.claude/skills/
agents:
- default: .claude/agents/
- global: ~/.claude/agents/
prompts:
- default: .claude/commands/
- global: ~/.claude/commands/
global directory.default directory.The library skill itself lives in <LIBRARY_SKILL_DIR> as a cloned git repo. When running add (which modifies library.yaml), always:
git pull in the library directory first to get latestgit add library.yaml && git commit && git pushThis keeps the catalog in sync across devices.
default_dirs:
skills:
- default: .claude/skills/
- global: ~/.claude/skills/
agents:
- default: .claude/agents/
- global: ~/.claude/agents/
prompts:
- default: .claude/prompts/
- global: ~/.claude/prompts/
library:
skills:
- name: firecrawl
description: Scrape, crawl, and search websites using Firecrawl CLI
source: /Users/me/projects/tools/skills/firecrawl/SKILL.md
- name: meta-skill
description: Creates new Agent Skills following best practices
source: /Users/me/projects/tools/skills/meta-skill/SKILL.md
- name: diagram-kroki
description: Generate diagrams via Kroki HTTP API supporting 28+ languages
source: https://github.com/myorg/private-skills/blob/main/skills/diagram-kroki/SKILL.md
requires: [skill:firecrawl]
- name: green-screen-captions
description: Generate and burn AI-powered captions onto green screen videos
source: https://raw.githubusercontent.com/myorg/video-tools/main/skills/green-screen-captions/SKILL.md
requires: [agent:video-processor, prompt:caption-style]
agents:
- name: video-processor
description: Processes video files with ffmpeg and whisper transcription
source: /Users/me/projects/tools/agents/video-processor/AGENT.md
- name: code-reviewer
description: Reviews code for quality, security, and performance
source: https://github.com/myorg/agent-configs/blob/main/agents/code-reviewer/AGENT.md
prompts:
- name: caption-style
description: Style guide for generating video captions
source: /Users/me/projects/content/prompts/caption-style.md
- name: commit-message
description: Standardized commit message format for all projects
source: https://github.com/myorg/team-prompts/blob/main/prompts/commit-message.md
tools
macOS GUI automation CLI. Use steer to see the screen, click elements, type text, send hotkeys, scroll, drag, manage windows and apps, run OCR on Electron apps, and wait for UI conditions.
testing
Ship workflow: merge main, run tests, review diff, bump VERSION, update CHANGELOG, commit, push, create PR.
testing
Import cookies from your real browser (Comet, Chrome, Arc, Brave, Edge) into the headless browse session. Opens an interactive picker UI where you select which cookie domains to import. Use before QA testing authenticated pages.
development
Weekly engineering retrospective. Analyzes commit history, work patterns, and code quality metrics with persistent history and trend tracking. Team-aware: breaks down per-person contributions with praise and growth areas.