Aller au contenu

remove

rigger remove <id>... [--yes] [--scope=<user|project>] [--assistant=<claude|opencode>]
rigger <resource> remove <id>...

Désinstalle les artifacts enregistrés dans le manifest. L’opération est manifest-first et entièrement hors ligne : le catalog n’y joue aucun rôle. L’applied payload de chaque entrée est rejoué à l’envers pour défaire l’install à l’identique. Chaque suppression est prévisualisée et confirmée avant que rien ne soit effacé.

Argument Requis Sens
<id>... oui Qualified ids (<catalog>/<nature>:<name>) à désinstaller.

Le plan liste un groupe par artifact. Chaque op nomme ce qu’elle défait :

Op Défait
deny (-N) / allow (-N) Des règles de guardrail retirées de settings.json.
unimport Un bloc de context managé retiré.
restore Un fichier ramené à son contenu d’avant l’install.
delete Un fichier supprimé.
unlink Un symlink retiré. Une ligne store suit, marquant le store (deleted — last reference) ou (kept — still referenced).
uninstall Un plugin désinstallé via l’assistant (la commande claude plugin uninstall <name> est affichée).
un-hook Un hook déréférencé.
  • Drift laissé intact. Si une cible sur le disque ne correspond plus à ce qui a été installé, remove la laisse en place et avertit. Un fichier édité à la main n’est jamais supprimé.
  • Déjà absent. Une entrée dont la cible a déjà disparu est purgée du manifest sans toucher au disque et sans invite, rapportée comme purged (already absent).
  • Packs. Un pack est déplié au moment de l’install et n’est jamais enregistré comme tel. Supprimez plutôt ses artifacts membres. Demander un id de pack signale que les packs sont dépliés à l’install et liste ce qui est installé.

Avant d’écraser ou de restaurer un fichier, remove écrit une copie .bak-* à côté, rapportée comme [backup] N file(s) backed up.

Sur un TTY, remove affiche le plan et demande confirmation. Un refus ne supprime rien et rapporte [aborted] Removal cancelled by user. Une purge pure (uniquement des entrées déjà absentes) ne modifie que le manifest et avance sans invite. Une session non-interactive sans --yes sort 2 avant toute mutation.

Flag Effet
--yes Passe l’invite de confirmation. Requis en session non-interactive.
--scope=<user|project> Scope visé. Par défaut : user.
--assistant=<claude|opencode> Assistant visé. Par défaut, résolu depuis le manifest des ids demandés.
Code Condition
0 Supprimé, purgé, rien à supprimer, ou refusé.
2 Id non qualifié, id non installé, ou non-interactif sans --yes.
130 Interrompu.

Supprimer un id que le manifest ne connaît pas au --scope/--assistant visé sort 2 avec [error] Artifact "<id>" is not installed. Si l’id est installé à un --scope/--assistant différent, le message nomme cet emplacement plutôt que de le lister comme installé (et donne l’invocation exacte quand elle peut aboutir depuis n’importe quel répertoire). Sinon, il liste ce qui est installé à l’identité interrogée (Installed entries for scope "<scope>", assistant "<assistant>": <ids>., ou Nothing is installed for scope "<scope>", assistant "<assistant>". quand rien ne l’est). Quand l’identité interrogée est le singleton d’un lib, les deux formes le nomment à la place d’un assistant : Installed entries for scope "<scope>" as a shared lib: <ids>. et Nothing is installed for scope "<scope>" as a shared lib.

rigger remove team/skill:spec-workflow

Voir codes de sortie pour le contrat partagé.