skill_installerlisted
Install: claude install-skill jxoesneon/Ciel
# skill_installer
Install a `.skill` bundle into `~/.ciel/skills/`.
## Operations
- `install(path_or_bytes)` — unzip → validate schema → checksum → register.
- `install.dry_run(path)` — what would happen without applying.
- `install.uninstall(id)` — remove from registry; move to `~/.ciel/.attic/`.
- `install.list()` — installed skills with versions.
## I/O Contract
```yaml
io_contract:
input: { op, path_or_id, "dry_run?" }
output: { result, changes }
idempotent: for_same_version
side_effects: [fs, state_mutation]
```
## Safety
Installs always flow through `council/invocation_scopes/SKILL_INTEGRATION.md`. Bypass is forbidden by Constitution.