skiller
Declarative Agent Skill catalog, configuration, migration, and installation over pinned Vercel Skills.
Commands
|
catalog configure registers or updates canonical source, ref, and optional explicit owner checkout. Local source and authoring paths may start with ~/ for portable dotfiles configuration. config edits desired selection. update --check reports published and unpublished authoring differences without installation. update requires confirmation and installs canonical catalog content. install performs full canonical reconciliation. doctor diagnoses and explicitly repairs owned state. migrate guides legacy skills into a writable catalog, creates configuration, and optionally installs and cleans exact approved legacy names.
Configuration
Global configuration is ~/.config/skiller/config.json. Project configuration is <project>/skiller.config.json.
source and optional ref define canonical consumer content. authoring_root is an optional explicit writable checkout used only to detect unpublished owner changes; installation always uses canonical content. At least one Vercel agent is required. Agent names pass to skills@1.5.23, which performs final validation and placement. Project configuration omits catalogs but has the same agents and skills fields.
Enabled skills allow agent and human invocation. Manual skills are human-only unless required. Unselected dependencies are agent-only. Dependency reachability never changes configured selection.
Catalog
Source and installed names stay clean, such as develop. Skiller adds scope to projected descriptions, such as [engineering] Develop features safely. Pygmalion may still expose $engineering:develop aliases.
Dependencies use comma-separated metadata.skiller.requires. Missing dependencies, cycles, invalid rename chains, eligibility mismatches, symlinks, and selected-name collisions are hard errors.
Safety
- Catalog authoring and migration require an explicit writable checkout and portable source.
- Migration never commits or pushes.
- Legacy cleanup is disabled by default and runs only after verified installation.
- Doctor is read-only unless
--repairis supplied. - Noninteractive mutation requires
--yes. - Skiller removes only prior ownership or exact validated migration/recovery names.
- Installed state is compact schema 3 under the XDG state directory and records deterministic projected-content digests.
- Catalog checks may refresh caches but never install; updates remain confirmation-gated. Unreachable sources are warned once and skipped for that reconciliation; a readable prior cache is shown as read-only stale metadata.
config --print,update --check --json, anddoctor --printexpose a camelCasecatalogStatusarray with alias, availability/stale state, declared and installed counts, and a sanitized warning. - Interrupted installation retains an owned transaction journal for Doctor recovery.
The guided migration procedure is also available as skills/skiller-migrate/SKILL.md in this repository.