Skillcaddy manager
Manage Skillcaddy source acquisition, source updates, migrations, and project skill links. Use for discovery, add/update requests, enable/disable, audits, maintenance, bootstrap, or Web/TUI access.From its SKILL.md
npx -y skills add chenweil/skillcaddy --skill skillcaddy-managerAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
3 things to look at
- 21 stars21 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 2 commands, including `npm run source -- list` and 1 more.
- fetches URLsInstructs the agent to fetch 1 URL, including GET /api/state?projectPath=<encoded-path>.
SKILL.md
5.7 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it
Skillcaddy Manager
Treat Skillcaddy as a central skill library with project-level symlink activation. Keep one execution loop across every branch: state -> route -> preflight -> act -> verify.
Core Loop
- Resolve the Skillcaddy repository and target project. Default the project to the current working directory only when the user did not provide one.
- Complete when both absolute paths are known.
- For recommendations, audits, or mutations, read
GET /api/state?projectPath=<encoded-path>. For source acquisition, updates, or migration, also inspect the source registry withnpm run source -- listandnpm run source -- inspect <source-id>. If the server is unavailable, inspect the equivalent paths listed under Core Model.- Complete when repository, source registry, project, global, Claude, metadata, and
advicestate relevant to the request are known.
- Complete when repository, source registry, project, global, Claude, metadata, and
- Route to the required branch and load only its reference; load multiple references only when the request combines branches:
- Discovery, source acquisition/update/migration, enable/disable, audit, health, Git update, bootstrap, Web/TUI: OPERATIONS.md
- Recommendations: RECOMMENDATION_GUIDE.md
- Notes, tags,
autoEnable, migration, batch Chinese notes: METADATA.md - Complete when the selected branch, target identities, and completion criterion are explicit.
- For a mutation, apply the Mutation Gate before acting. Prefer the existing API, TUI, or repository commands over ad hoc filesystem changes.
- Complete when the preflight accounts for every affected item and all blocking ownership or alias issues are resolved.
- Execute the narrowest requested operation, rescan state, and report the observed result.
- Complete when the post-operation state proves every requested item succeeded, remained unchanged, was skipped, or failed with a stated reason.
Core Model
| Scope | Location | Role |
|---|---|---|
| Bundled | skills/<name>/ | Skills shipped by this repository |
| Central | official/, github/, personal/, archived/ | Source libraries |
| Source registry | .skillcaddy/sources/ | Sidecar identity, provenance, integrity, install path, and discovered skill paths |
| Project | <project>/.agents/skills/ | Codex-compatible activation symlinks |
| Project Claude | <project>/.claude/skills/ | Claude compatibility symlinks |
| Global | ~/.agents/skills/, ~/.claude/skills/ | User-level skills that may conflict or shadow |
| Collection setup | collection-metadata/<source>/<collection>.json | Tracked, read-only setup contract and readiness checks |
Preserve these invariants:
- Enable and disable operations create or remove project symlinks; source skill directories remain intact.
- Source acquisition changes only the central library. It never implies enablement, setup, or execution of acquired code.
addis for a new source identity. Only a matching source-registry record authorizesupdate; a destination collision never does.- An explicit combined request runs acquisition first, rescans state, resolves one requested acquired skill, and enables only that selection.
- Unknown setup readiness produces no reminder or gate. Declared setup reminders remain non-blocking; publisher runtime preflight owns proprietary credentials and setup.
archived/skills require an explicit user request.- GitHub-backed source directories remain free of Skillcaddy metadata; write catalog metadata to the sidecar store.
- Collection activation and project readiness are separate: setup may be missing after links are enabled.
- Interactive setup is never executed silently; obtain confirmation and let the declared setup skill own project edits.
- Repository behavior in
lib/skillStore.js,lib/projectActions.js, andlib/claudeStore.jsis authoritative when documentation and implementation differ. - The fixed default Web manager URL is
http://127.0.0.1:4173.
Mutation Gate
Before changing state, present a compact preflight containing:
| Action | Skill | Source/collection | Alias | Target path | Advice/result |
|---|
Account for skills that will be changed, left unchanged, skipped, or rejected. Include relevant /api/state.advice and metadata writes.
Require confirmation before proceeding when:
- one request matches multiple skills and the user has not selected one;
- a project alias points to a different target;
- the project entry is not a symlink or is externally managed;
- a GitHub source has uncommitted changes before update;
- a breaking source replacement affects a known current-project link;
- a source identity is ambiguous or a destination collision is not backed by a matching registry record;
- the request reaches into
archived/without naming the archived target; - the request would delete a source skill rather than a project link;
- an advice item exposes a destructive or ownership ambiguity.
- an affected collection reports missing or partial interactive setup.
Surface informational duplicate-name and global-shadowing advice, but do not block solely on it. Use the full skill ID and a confirmed alias to resolve duplicates.
Reporting
For summaries, distinguish repository availability, project enablement, global presence, Claude compatibility, and unmanaged or broken state. Prefer:
| Action | Skill | Source | Alias | Result | Notes |
|---|
End with the verification performed: rescan/API state, validation command, tests, or server URL.
What ships with it: 12 files
66.6 KB alongside SKILL.md, 5 of them executable
agents/
- openai.yaml289 B
references/
- featured-skills.json14.8 KB
- METADATA.md3.1 KB
- OPERATIONS.md13.1 KB
- RECOMMENDATION_GUIDE.md3.1 KB
- skill-platforms.json1.7 KB
scripts/
- check-conflicts.cjsruns3.6 KB
- check-global-skills.cjsruns5.3 KB
- translate-skill-notes.cjsruns9.8 KB
- version-manager.cjsruns3.7 KB
- view-recommendations.cjsruns7.9 KB
- skillcaddy.json215 B