remove
Synopsis
Section titled “Synopsis”rigger remove <id>... [--yes] [--scope=<user|project>] [--assistant=<claude|opencode>]rigger <resource> remove <id>...Uninstalls artifacts recorded in the manifest. It is manifest-first and fully offline: the catalog plays no role. Each entry’s applied payload is replayed in reverse to undo the install precisely. Every removal is previewed and confirmed before anything is deleted.
Arguments
Section titled “Arguments”| Argument | Required | Meaning |
|---|---|---|
<id>... |
yes | Qualified ids (<catalog>/<nature>:<name>) to uninstall. |
Removal plan
Section titled “Removal plan”The plan lists one group per artifact. Each op names what it undoes:
| Op | Undoes |
|---|---|
deny (-N) / allow (-N) |
Guardrail rules removed from settings.json. |
unimport |
A managed context block removed. |
restore |
A file returned to its pre-install content. |
delete |
A file deleted. |
unlink |
A symlink removed. A store line follows, marking the store (deleted — last reference) or (kept — still referenced). |
uninstall |
A plugin uninstalled through the assistant (the claude plugin uninstall <name> command is shown). |
un-hook |
A hook deregistered. |
Special cases
Section titled “Special cases”- Drift left alone. If an on-disk target no longer matches what was installed, remove leaves it in place and warns. A hand-edited file is never deleted.
- Already absent. An entry whose target already vanished is purged from the manifest without
touching disk and without a prompt, reported as
purged (already absent). - Packs. A pack is expanded at install time and never recorded as such. Remove its member artifacts instead. Requesting a pack id reports that packs are expanded at install time and lists what is installed.
Backups
Section titled “Backups”Before overwriting or restoring a file, remove writes a
.bak-* copy alongside it, reported as
[backup] N file(s) backed up.
Interactive vs non-interactive
Section titled “Interactive vs non-interactive”In a TTY, remove prints the plan and asks to confirm.
Declining removes nothing and reports [aborted] Removal cancelled by user. A pure purge (only
already-absent entries) mutates the manifest alone and proceeds without a prompt. A non-interactive
session without --yes exits 2 before any mutation.
| Flag | Effect |
|---|---|
--yes |
Skip the confirmation prompt. Required in a non-interactive session. |
--scope=<user|project> |
Target scope. Default user. |
--assistant=<claude|opencode> |
Target assistant. Default resolved from the manifest of the requested ids. |
Exit codes
Section titled “Exit codes”| Code | Condition |
|---|---|
0 |
Removed, purged, nothing to remove, or declined. |
2 |
Unqualified id, id not installed, or non-interactive without --yes. |
130 |
Interrupted. |
Removing an id the manifest does not know exits 2 with [error] Artifact "<id>" is not installed. followed by the installed inventory (Installed entries: <ids>., or Nothing is installed. when the manifest is empty).
Example
Section titled “Example”rigger remove team/skill:spec-workflowSee exit codes for the shared contract.