skill-library
Skill340 starsChanged 8 months agoMITView on GitHub
Agent-native armory catalog for eight package types and installer for seven legacy types. Native extensions require the explicit per-host lifecycle CLI. Triggers on: "list available packages", "install skill", "armory install", "armory search", "/library list", "package catalog".
1 other project uses a version of this.
Adopted by
Most recently taken up by
- michalstrnadel/source-to-skilltheir own version, first seen Nov 1, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- michalstrnadel/source-to-skill★ 8same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository94 other files it gives its agents.
- AGENTS.mdAGENTS.md
- adr-writerSkill
- agent-builderSkill
- animateSkill
- api-docs-generatorSkill
- appraiseSkill
- architecture-diagramSkill
- architecture-reviewerSkill
- arxiv-figuresSkill
- arxiv-packageSkill
- arxiv-preflightSkill
- benchmark-runnerSkill
- changelog-composerSkill
- chart-claritySkill
- citation-auditSkill
- codebase-advisorSkill
- code-refinerSkill
- competitive-analyzerSkill
- concept-to-imageSkill
- debug-investigatorSkill
- decision-mapSkill
- dependency-auditSkill
- devils-advocateSkill
- domain-modelingSkill
- engineering-retroSkill
- env-validatorSkill
- estimate-calibratorSkill
- feasibility-assessorSkill
- figure-rhetoricSkill
- figure-table-qualitySkill
- filesystemSkill
- githubSkill
- gpu-optimizerSkill
- handoffSkill
- html-presentationSkill
- html-videoSkill
- humanizeSkill
- idea-validatorSkill
- immuneSkill
- intakeSkill
- kg-builderSkill
- launch-videoSkill
- learning-workspaceSkill
- lightpanda-browserSkill
- linkedin-post-styleSkill
- literature-reviewSkill
- manuscript-provenanceSkill
- manuscript-reviewSkill
- manuscript-typographySkill
- market-analyzerSkill
- marp-slidesSkill
- mcp-to-skillSkill
- md-to-pdfSkill
- migration-risk-analyzerSkill
- milestone-runnerSkill
- module-deepeningSkill
- notebooklmSkill
- package-evaluatorSkill
- package-optimizerSkill
- paper-to-skillSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 1 is distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 58
If the subcommand does not match any known cookbook, report the error and list the valid subcommands from the table above.
- Very specific: line 72
When /library use <name> is called, determine the package type by searching all sections of the manifest (packages.skills, packages.agents, …
- Very specific: line 80
All bash operations must use absolute paths.
- Very specific: line 84
All package type sections share the same entry format: name, version, description, path, source, plus optional tags, category, difficulty.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Package Library
Browse and search all armory package types within an agent session. Install, update, sync and remove the seven legacy package types through their existing procedures; native extensions use the separate explicit per-host lifecycle.
Variables
- ARMORY_REPO:
Mathews-Tom/armory - ARMORY_BRANCH:
main - ARMORY_CATALOG_URL:
https://raw.githubusercontent.com/{ARMORY_REPO}/{ARMORY_BRANCH}/manifest.yaml - DEFAULT_INSTALL_DIR:
~/.claude/ - CATALOG_CACHE_PATH:
/tmp/armory-manifest.yaml - CATALOG_CACHE_TTL:
600(seconds)
Supported Package Types
| Type | Install Target | Method |
| skill | ~/.claude/skills/ | Copy directory |
| agent | ~/.claude/agents/ | Copy directory |
| hook | ~/.claude/hooks/ | Copy directory |
| rule | ~/.claude/rules/ | Body-only file |
| command | ~/.claude/commands/ | Body-only file |
| utility | ~/.claude/utilities/ | Copy + chmod +x |
| preset | ~/.claude/presets/ | Copy directory |
| extension | Explicit per-host root | Native lifecycle CLI only |
Command Reference
| Command | Cookbook | Purpose |
/library list | cookbook/list.md | Show all packages with type, version, installed status, update available |
/library list --type <type> | cookbook/list.md | Filter listing by package type (skill, agent, hook, rule, etc.) |
/library use <name> | cookbook/use.md | Pull a package from armory (auto-detects type from manifest) |
/library search <keyword> | cookbook/search.md | Keyword search across all package types, names, and descriptions |
/library search --category <name> | cookbook/search.md | Filter search by category (development, review, security, etc.) |
/library sync | cookbook/sync.md | Re-pull all installed packages that have updates |
/library info <name> | cookbook/info.md | Show full detail for a package (type, version, tags, category) |
/library update | cookbook/update.md | Check all installed packages for version bumps (dry-run sync) |
/library remove <name> | cookbook/remove.md | Remove an installed package |
/library profiles | cookbook/profiles.md | Show available install profiles with package counts |
Cookbook Dispatch
User commands are routed to the corresponding cookbook file based on the subcommand. When a /library command is received, extract the subcommand (the first token after /library) and load the matching cookbook file from the cookbook/ directory relative to this skill. The cookbook file contains the full execution procedure for that operation.
For example, /library use commit-standards dispatches to cookbook/use.md with commit-standards as the package name argument. /library list --type agent dispatches to cookbook/list.md with --type agent as the filter.
If the subcommand does not match any known cookbook, report the error and list the valid subcommands from the table above.
Native Extension Boundary
This boundary takes precedence over the legacy cookbook procedures.
- Identify the type from the matching manifest section before inspecting an installed path or fetching package files. Catalog inspection may fetch the manifest; it must not fetch or copy a native extension payload.
- For native catalog queries, read
packages.extensionsand show catalog metadata. Do not derive native installed status from~/.claude/skills/, the legacy plugin inventory or any other prompt-package directory; report that native installation status was not inspected. - Refuse
/library use, sync, update or remove filesystem operations on anextension. Never copy native artifacts into skills, agents or other legacy directories, never enable one implicitly, and never treat a profile or preset as native-install authority. - After the user explicitly confirms the native host, lifecycle action and target root, hand off to
uv run python scripts/install.pyin an existing Armory checkout with every native flag explicit:--type extension --platform <omp|claude> --name <name> --action <install|update|disable|remove> --target-root <explicit-root> --yes. Never supply--yesbefore that confirmation. Do not select a host or persistent root on the user's behalf, or execute the handoff as part of a legacy library operation. - Native entries remain discoverable in the catalog but never contribute to legacy profile membership or package counts. For bulk legacy operations, exclude
packages.extensionsbefore expanding the selection.
Type Detection
When /library use <name> is called, determine the package type by searching all sections of the manifest (packages.skills, packages.agents, packages.hooks, etc.). The first section containing a matching name entry determines the type. Use the type to:
- Resolve the correct source path:
{type_dir}/{name}/ - Determine the install target:
~/.claude/{install_subdir}/ - Choose the install method: directory copy or body-only extraction
Behavioral Notes
- All bash operations must use absolute paths. Never
cdinto temp dirs. - Fetch uses a 3-tier fallback chain: sparse checkout, then
gh api, thencurl. Attempt each in order; proceed to the next only on failure. - Cache lives in
/tmp/with a 10-minute TTL. A missing cache file is treated as expired (triggers a re-fetch), not as an error. - The catalog is read from
manifest.yamlon GitHub (atARMORY_CATALOG_URL), not from a separate catalog file. This is the same manifest format used by the armory repository. - All package type sections share the same entry format:
name,version,description,path,source, plus optionaltags,category,difficulty.
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
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.

