> ## Documentation Index
> Fetch the complete documentation index at: https://docs.befailproof.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Failproof AI CLI

> Installer les hooks, gérer les politiques locales, connecter le Cloud et opérer le daemon local.

Installez le CLI local avec `npm install -g failproofai`. Exécutez-le sans arguments pour ouvrir le tableau de bord des politiques locales.

Le package nécessite Node.js 20.9 ou une version plus récente. Bun 1.3 ou une version plus récente est pris en charge pour le développement et les installations depuis les sources. `failproofai configure` et `failproofai setup` sont des alias de `failproofai config` ; `failproofai p` est un alias de `failproofai policies`.

## Configurer une machine

```bash theme={null}
npm install -g failproofai
failproofai config \
  --connect https://app.befailproof.ai \
  --token <machine-key> \
  --machine-label checkout-prod-01
failproofai policies --install
failproofai config --status
```

Exécutez `failproofai` sans arguments pour ouvrir le tableau de bord des politiques locales.

| Commande                                                | Résultat                                                                                   |
| ------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| `failproofai config`                                    | Lancer la configuration interactive de la machine                                          |
| `failproofai config --connect <url> --token <key>`      | Connecter l'ingestion Cloud et la distribution des politiques                              |
| `failproofai config --status`                           | Afficher l'état de connexion, du daemon, de la distribution et de la pause                 |
| `failproofai policies`                                  | Lister les politiques intégrées et personnalisées                                          |
| `failproofai policies --install`                        | Installer les hooks et activer les politiques                                              |
| `failproofai policy add <name>`                         | Activer une politique intégrée                                                             |
| `failproofai policy remove <name>`                      | Désactiver une politique intégrée                                                          |
| `failproofai policies --uninstall`                      | Désactiver les politiques ou supprimer les hooks du harness                                |
| `failproofai audit`                                     | Analyser l'historique local de l'agent et ouvrir la vue d'audit locale                     |
| `failproofai audit --schedule [days] --email <address>` | Planifier des analyses locales récurrentes et envoyer leurs résultats par e-mail           |
| `failproofai audit --status`                            | Afficher l'adresse du rapport, l'intervalle et la prochaine analyse planifiée              |
| `failproofai audit --no-schedule`                       | Arrêter les analyses récurrentes sans supprimer l'historique d'audit                       |
| `failproofai harness list`                              | Lister les chemins de capture supplémentaires                                              |
| `failproofai flush --wait`                              | Livrer le spool d'événements actuel                                                        |
| `failproofai backfill --since 30d`                      | Relire l'historique précédemment traité                                                    |
| `failproofai config --pause [duration]`                 | Mettre en pause une session locale pendant 30 minutes par défaut, jusqu'à 8 heures         |
| `failproofai config --resume`                           | Reprendre une session locale en pause ; ajouter `--all` pour lever toutes les pauses       |
| `failproofai update`                                    | Terminer les migrations du package et mettre à jour le daemon                              |
| `failproofai migrate --dry-run`                         | Prévisualiser ou exécuter les migrations de disposition du répertoire personnel en attente |
| `failproofai uninstall`                                 | Supprimer les hooks et le daemon avant de désinstaller le package                          |
| `failproofai --version`                                 | Afficher la version du package installé                                                    |
| `failproofai --help`                                    | Afficher les commandes et l'utilisation globale                                            |

## Options de configuration

| Option                          | Utilisation                                                                                                                                               |
| ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--connect <url> --token <key>` | Se connecter de manière non interactive                                                                                                                   |
| `--machine-id <id>`             | Définir l'identifiant stable de la machine                                                                                                                |
| `--machine-label <name>`        | Définir ou modifier le libellé du tableau de bord                                                                                                         |
| `--no-transcripts`              | Envoyer les décisions sans le contenu des transcriptions                                                                                                  |
| `--disconnect`                  | Arrêter les récupérations de politiques Cloud et la livraison d'événements                                                                                |
| `--status`                      | Afficher l'état actuel de la machine                                                                                                                      |
| `--pause [duration]`            | Mettre en pause la session la plus récente dans le répertoire courant ; accepte des secondes, minutes ou heures, avec une valeur par défaut de 30 minutes |
| `--resume`                      | Terminer une pause correspondante avant son expiration                                                                                                    |
| `--session <id>`                | Cibler une session explicite pour la mise en pause ou la reprise                                                                                          |
| `--all`                         | Avec `--resume`, terminer toutes les pauses actives                                                                                                       |

Les pauses locales suspendent les politiques intégrées, personnalisées et de convention pour une session. Elles expirent toujours et ne désactivent pas les politiques gérées par le Cloud. `block-self-pause` empêche un agent instrumenté d'utiliser cette échappatoire lui-même.

## Options de politiques

| Option                              | Utilisation                                                                 |
| ----------------------------------- | --------------------------------------------------------------------------- |
| `--install`, `-i`                   | Activer les politiques et installer les hooks du harness                    |
| `--uninstall`, `-u`                 | Désactiver les politiques ou supprimer les hooks                            |
| `--cli <names...>`                  | Cibler un ou plusieurs harnesses pris en charge                             |
| `--scope user\|project\|local\|all` | Choisir la portée de configuration ; `all` est réservé à la désinstallation |
| `--beta`                            | Inclure les politiques bêta                                                 |
| `--custom`, `-c <path>`             | Valider et charger un fichier de politique personnalisé ; répétable         |

## Options de livraison et de maintenance

| Commande    | Options                                      |
| ----------- | -------------------------------------------- |
| `backfill`  | `--since <30d\|6m\|YYYY-MM-DD>`, `--dry-run` |
| `flush`     | `--wait`, `--timeout <seconds>`              |
| `update`    | `--no-daemon`                                |
| `migrate`   | `--dry-run`                                  |
| `uninstall` | `--purge`, `--dry-run`, `--yes`              |

`failproofai update` doit être exécuté après `npm install -g failproofai@latest` ; il effectue les migrations de disposition du répertoire personnel, installe le binaire daemon correspondant et redémarre le service. `--no-daemon` effectue uniquement la migration de disposition.

## Chemins du harness

```text theme={null}
failproofai harness list [harness]
failproofai harness add-path <harness> [label=]<path>
failproofai harness remove-path <harness> <path-or-label>
```

Les noms de harness pris en charge sont `claude`, `codex`, `copilot`, `cursor`, `opencode`, `pi`, `hermes`, `openclaw`, `factory`, `devin`, `antigravity` et `goose`.

Les libellés permettent de distinguer les identifiants d'agents dérivés lorsque deux racines contiennent des copies du même projet. Les racines qui se chevauchent et les libellés en double sont rejetés pour éviter les collectes dupliquées ou la corruption du curseur. La configuration des chemins supplémentaires se recharge sans redémarrage du daemon.

Les environnements conteneurisés peuvent remplacer les chemins supplémentaires configurés par fichier par une variable séparée par des virgules nommée `FAILPROOFAI_<HARNESS>_EXTRA_PATHS`, par exemple :

```bash theme={null}
export FAILPROOFAI_OPENCLAW_EXTRA_PATHS="user1=/srv/openclaw-a,user2=/srv/openclaw-b"
```

## Variables d'environnement

Utilisez les fichiers de configuration pour le comportement persistant de la machine. Les variables d'environnement sont particulièrement utiles pour les conteneurs, les tests et les processus uniques.

| Variable                             | Utilisation                                                                        |
| ------------------------------------ | ---------------------------------------------------------------------------------- |
| `FAILPROOFAI_HOME`                   | Déplacer l'ensemble de la disposition `~/.failproofai`                             |
| `FAILPROOFAI_LOG_LEVEL`              | Définir le niveau de verbosité des journaux locaux                                 |
| `FAILPROOFAI_HOOK_LOG_FILE`          | Écrire les diagnostics des hooks dans un fichier sélectionné                       |
| `FAILPROOFAI_TELEMETRY_DISABLED=1`   | Désactiver la télémétrie anonyme pour ce processus                                 |
| `FAILPROOFAI_NO_FIRST_RUN=1`         | Ignorer la configuration interactive au premier lancement                          |
| `FAILPROOFAI_NO_AUTO_AUDIT=1`        | Ignorer l'audit local après la configuration                                       |
| `FAILPROOFAI_LLM_BASE_URL`           | Remplacer le point de terminaison compatible OpenAI utilisé par les politiques LLM |
| `FAILPROOFAI_LLM_API_KEY`            | Fournir la clé API utilisée par les politiques LLM                                 |
| `FAILPROOFAI_LLM_MODEL`              | Sélectionner le modèle utilisé par les politiques LLM                              |
| `FAILPROOFAI_POLICY_LOAD_TIMEOUT_MS` | Limiter le temps de chargement des modules de politiques personnalisés             |
| `FAILPROOFAI_<HARNESS>_EXTRA_PATHS`  | Remplacer les chemins de capture supplémentaires configurés pour un harness        |
| `NO_COLOR`                           | Désactiver la sortie terminal colorée                                              |

Les variables de répertoire personnel propres à chaque agent, telles que `CLAUDE_PROJECTS_PATH`, `CURSOR_HOME`, `HERMES_HOME` et `OPENCLAW_HOME`, remplacent l'emplacement où Failproof AI découvre les sessions locales pour ce harness.

## Mettre en pause ou supprimer une machine en toute sécurité

```bash theme={null}
failproofai config --pause
failproofai config --status
failproofai config --resume
```

La mise en pause d'une session locale ne désactive pas les politiques gérées par le Cloud. Restaurez les déploiements Cloud via le workflow d'application Cloud lorsque le déploiement lui-même est à l'origine du problème.

Avant de supprimer le package npm, supprimez les hooks installés et le daemon :

```bash theme={null}
failproofai uninstall --dry-run
failproofai uninstall --yes
npm rm -g failproofai
```

Exécutez `failproofai <command> --help` pour obtenir des détails spécifiques à la version.

<Warning>
  Exécutez `failproofai uninstall` avant `npm rm -g failproofai` ; npm ne supprime pas les hooks d'agent installés ni le service daemon.
</Warning>
