Référence de la CLI
Référence de la CLI d'Apothem — toutes les sous-commandes et options.
La CLI apothem est l'interface principale de l'opérateur pour gérer le profil
partagé et les adaptateurs d'environnement.
Options globales
| Option | Description |
|---|---|
--version | Affiche la version d'Apothem et quitte |
--help | Affiche l'aide de la commande |
Sous-commandes
apothem install
Installe un adaptateur d'environnement depuis le profil partagé.
apothem install --harness <name|all> [--profile PATH] [--project PATH] [--dry-run] [--clean|--fresh] [--yes]| Option | Description |
|---|---|
--harness <name> | Nom de l'adaptateur d'environnement (voir les valeurs canoniques ci-dessous). Obligatoire. |
--profile PATH | Chemin vers le YAML du profil partagé. Par défaut, ~/.config/apothem/profile.yaml. |
--project PATH | Racine du projet pour les environnements à portée de projet. |
--dry-run | Prévisualise l'installation sans écrire de fichiers. |
--clean, --fresh | Table rase sur demande explicite : sauvegarde puis supprime l'état d'installation antérieur (~/.claude, ~/.codex, ~/.agents, ~/.config/apothem) avant l'installation. |
--yes | Ignore la confirmation par cible lors d'une suppression en table rase (obligatoire pour les exécutions --clean non interactives). |
Valeurs canoniques de --harness :
antigravity
claude-code
codebuddy
codex
cursor
gemini-cli
github-copilot
glm
hermes
kimi-code
kiro
open-claw
opencode
qwen-code
trae
windsurf
zedUtilisez --harness all --project <path> pour sélectionner l'ensemble complet du
registre. La liste exclude_harnesses du profil est respectée pendant la
sélection par lot d'installation/mise à jour.
apothem update
Re-dérive la configuration native d'un adaptateur d'environnement à partir du profil partagé actuel.
apothem update --harness <name|all> [--profile PATH] [--project PATH] [--dry-run]| Option | Description |
|---|---|
--harness <name> | Nom de l'adaptateur d'environnement. Obligatoire. |
--profile PATH | Chemin vers le YAML du profil partagé. |
--project PATH | Racine du projet pour les environnements à portée de projet. |
--dry-run | Prévisualise la mise à jour sans écrire de fichiers. |
update rematérialise la sortie de l'environnement. Elle ne met pas à niveau le
moteur Apothem lui-même ; mettez à jour le moteur par le canal ayant servi à
l'installer (le flux /plugin, npx, ou les scripts d'installation et de mise
à jour), comme décrit dans Mise à jour.
apothem uninstall
Supprime la configuration native d'un adaptateur d'environnement.
apothem uninstall --harness <name|all> [--project PATH] [--yes]| Option | Description |
|---|---|
--harness <name> | Nom de l'adaptateur d'environnement. Obligatoire. |
--project PATH | Racine du projet pour les environnements à portée de projet. |
--yes | Ignore l'invite de confirmation. |
apothem verify
Vérifie que les cibles gérées d'un adaptateur d'environnement sont présentes et valides.
apothem verify --harness <name|all> [--profile PATH] [--project PATH]| Option | Description |
|---|---|
--harness <name> | Nom de l'adaptateur d'environnement ou all. Obligatoire. |
--profile PATH | YAML du profil partagé par rapport auquel vérifier la fidélité. Sans cette option, la vérification est purement structurelle. |
--project PATH | Racine du projet pour les environnements à portée de projet. |
Sans --profile, la vérification est structurelle : chaque cible gérée doit être
présente et valide. Avec --profile, elle exige en plus la fidélité, de sorte
qu'une installation qui existe mais a dérivé par rapport à ce profil échoue à
verify — utilisez cette option pour confirmer qu'un profil précis est fidèlement
installé.
Le code de sortie est 0 lorsque l'environnement est vérifié (et, avec
--profile, fidèle à ce profil), et 1 lorsqu'une cible est manquante ou
invalide, ou lorsque --profile est fourni et que l'installation a dérivé.
apothem status
Signale l'état d'installation, de vérification et de dérive de chaque environnement enregistré.
apothem status [--profile PATH] [--project PATH]| Option | Description |
|---|---|
--profile PATH | Profil partagé à utiliser comme référence de dérive. Un profil par défaut illisible dégrade la dérive en unknown plutôt que d'interrompre le balayage. |
--project PATH | Racine du projet pour les environnements à portée de projet. Sans cette option, ces environnements signalent needs-project. |
Chaque ligne associe un indicateur installed à un indicateur verified, et les
deux se combinent pour donner l'état de dérive :
| État | Signification |
|---|---|
absent | Apothem n'a effectué aucune installation dans cet environnement. |
in-sync | Installé et conforme au profil de référence. |
drift | Installé mais plus conforme — corrigez avec apothem update. |
unknown | Installé, mais le profil de référence n'a pas pu être lu. |
needs-project | Un environnement à portée de projet a été signalé sans --project, de sorte que sa cible ne peut pas être résolue. |
installed répond à « Apothem a-t-il effectué une installation ici ? », et non à
« cet environnement est-il présent sur la machine ? ». Il repose sur les propres
artefacts d'Apothem — le bloc géré à l'intérieur d'une ancre d'instructions et
le contenu de la sous-arborescence .apothem/ détenue par Apothem —, jamais sur
un fichier détenu par l'éditeur que l'environnement écrit pour lui-même. Un
environnement dont le répertoire de configuration existe mais auquel Apothem n'a
jamais touché signale absent, et un environnement désinstallé signale absent
même si les répertoires vidés subsistent.
apothem profile
Gère le profil partagé d'Apothem.
apothem profile show [--profile PATH]
apothem profile init [--profile PATH] [--force]
apothem profile set <key> <value> [--profile PATH]
apothem profile edit [--profile PATH]| Sous-commande | Description |
|---|---|
profile init | Crée un échafaudage de profil minimal valide selon le schéma. |
profile show | Affiche le profil résolu en JSON sur stdout. Avec --json, le document commence par schema_version. |
profile set <key> <value> | Définit un champ du profil. La valeur est stockée comme chaîne littérale — les mots nus ne sont pas convertis, donc no reste "no" et 1.0 reste une chaîne —, sauf true/false et les saisies explicites de liste et de mappage [...] / {...}. Le profil assemblé est validé selon le schéma avant d'être écrit. |
profile edit | Ouvre le profil dans $EDITOR (à défaut, l'éditeur par défaut de la plateforme). |
L'option --profile PATH dirige chaque sous-commande vers un autre fichier de
profil. Par défaut, ~/.config/apothem/profile.yaml.
apothem harnesses
Liste et inspecte les adaptateurs d'environnement enregistrés.
apothem harnesses list
apothem harnesses show <name>| Sous-commande | Description |
|---|---|
harnesses list | Affiche un tableau de chaque adaptateur enregistré avec son indicateur d'état d'installation et son chemin de sortie. |
harnesses show <name> | Affiche le nom, l'état d'installation et le chemin de sortie d'un adaptateur. |
apothem doctor
Exécute les diagnostics système pour l'installation d'Apothem.
apothem doctorAffiche la version d'Apothem, l'interpréteur Python, la plateforme, le chemin du profil résolu et un tableau de l'état d'installation par environnement. Le code de sortie vaut 1 dès qu'un contrôle échoue : profil invalide, environnement installé qui ne passe pas la vérification, commande de hook enregistrée qui ne peut pas démarrer, adaptateur qui ne peut pas être chargé ou sondé, ou journal illisible. Un environnement non installé est signalé sans constituer un échec, et les notes informatives ne modifient pas le code de sortie.
Référence générée des commandes et options
| Command | Flags | Description |
|---|---|---|
apothem backups prune | --dry-run, --format, --harness, --json, --keep, --no-color, --quiet, -q, --verbose, -v | Delete backup sets and install records beyond the newest N per harness. Keeps the newest N backup sets under ~/.apothem/backups/ for each selected harness, and the newest N install records per install root in its ledger under ~/.apothem/state/. A backup set that a kept record, or the latest install record of any install root, still references is never deleted, so rollback of the latest install still restores. |
apothem completion | — | Print a shell-completion script for SHELL to stdout. Supported shells: bash, zsh, fish, powershell. Every script is generated by Click's env-var completion protocol — PowerShell through the completion class registered above, since Click ships none natively. Enabling completion is opt-in: this command only prints the script — pipe or append it to the shell's completion file yourself (see --help). |
apothem diff | --format, --harness, --json, --no-color, --profile, --project, --quiet, -q, --verbose, -v | Preview the pending configuration changes for a single harness. |
apothem doctor | --format, --json, --no-color, --project, --quiet, -q, --verbose, -v | Check the installed harnesses and the shared profile; exit 1 on any failure. Reports the engine version, Python, and platform; validates a present shared profile against the packaged schema; and, for every installed harness, runs the adapter's verify and starts each hook command the install registered with a no-op payload. A harness that is not installed is reported but is not a failure, so a machine with one healthy harness passes. Project-scope harnesses are checked when --project names their root. |
apothem harnesses list | --format, --json, --no-color, --quiet, -q, --verbose, -v | List all registered harness adapters. |
apothem harnesses show | --format, --json, --no-color, --quiet, -q, --verbose, -v | Show details for a specific harness adapter. |
apothem install | --clean, --fresh, --dry-run, --format, --harness, --json, --no-color, --profile, --project, --quiet, -q, --verbose, -v, --yes | Install a harness adapter configuration. |
apothem migrate-workspace | --dry-run, --format, --json, --no-color, --project, --quiet, -q, --verbose, -v | Migrate a legacy per-harness workspace into the shared .apothem layout. The base is the resolved --project root when supplied, otherwise the current working directory (the project-local default). Per-harness memory/contexts/learning stores union-merge into the shared store; a conflicting record is skipped, never overwritten; a legacy .plans tree moves under .apothem/plans; every consumed source is backed up first. The migration is idempotent. |
apothem profile edit | --format, --json, --no-color, --profile, --quiet, -q, --verbose, -v | Open the shared profile in the system editor. |
apothem profile init | --force, --format, --json, --no-color, --profile, --quiet, -q, --verbose, -v | Create a schema-valid shared profile scaffold. |
apothem profile set | --format, --json, --no-color, --profile, --quiet, -q, --verbose, -v | Set a key in the shared profile. KEY is a dotted path that descends into the nested profile structure (identity.name, preferences.style, enforcement.sprints, harnesses.<harness>.preferences.style); a single key with no dot sets a top-level node. VALUE is stored as a literal string — bare words are not coerced (no stays "no", 2024-01-01 and 1.0 stay strings) — except true/false (the boolean enforcement flags) and explicit [...]/{...} list/map input. The fully-assembled profile is validated against the packaged schema BEFORE writing; an invalid set is refused with the standard diagnostic and the profile on disk is unchanged. |
apothem profile show | --format, --json, --no-color, --profile, --quiet, -q, --verbose, -v | Display the current shared profile. |
apothem quickstart | --format, --harness, --json, --no-color, --profile, --project, --quiet, -q, --verbose, -v, --yes | Guided first run: ensure a profile, preview the writes, then install. Walks a new operator through the canonical path in one linear flow — create a starter profile if none exists (with a personalize nudge), preview the files each harness will write (project root vs your home directory), confirm, then install with the grouped capability-note output — and ends with the recommended next commands. --yes runs the whole sequence non-interactively; --format json emits one structured summary of every step. It composes the install building blocks; it does not duplicate them. Without --harness it asks which harness to install, so the first run writes one harness's configuration rather than all of them; all is an explicit choice. A run that cannot ask fails with a usage error before anything is written. |
apothem rollback | --format, --harness, --install-id, --json, --last, --no-color, --project, --quiet, -q, --verbose, -v, --yes | Restore a harness to the state before its recorded install. |
apothem status | --format, --json, --no-color, --profile, --project, --quiet, -q, --verbose, -v | Report install, verify, and drift state for every registered harness. |
apothem uninstall | --format, --harness, --json, --no-color, --project, --quiet, -q, --verbose, -v, --yes | Remove a harness adapter configuration. |
apothem update | --dry-run, --format, --harness, --json, --no-color, --profile, --project, --quiet, -q, --verbose, -v | Re-install a harness adapter configuration from the current profile. |
apothem verify | --format, --harness, --json, --no-color, --profile, --project, --quiet, -q, --verbose, -v | Verify a harness adapter installation. Without --profile the check is structural: every managed target must be present and valid. With --profile the check additionally requires profile fidelity, so a present-but-drifted install fails verify — answering "is THIS profile faithfully installed?" rather than merely "does it exist?". |
Référence
Registre navigable des classes d'artefact avec les chemins et les dispositions sur disque pour les règles, commandes, skills, travailleurs délégués, hooks, serveurs MCP, paramètres et output-styles.
Champs du profil
Référence générée depuis la source pour chaque champ du schéma du profil partagé d'Apothem.