mirror of
https://gitea.toothfairyai.com/ToothFairyAI/tf_code.git
synced 2026-03-29 21:33:54 +00:00
605 lines
21 KiB
Plaintext
605 lines
21 KiB
Plaintext
---
|
||
title: CLI
|
||
description: Options et commandes de la CLI OpenCode.
|
||
---
|
||
|
||
import { Tabs, TabItem } from "@astrojs/starlight/components"
|
||
|
||
La CLI OpenCode démarre par défaut le [TUI](/docs/tui) lorsqu'il est exécuté sans aucun argument.
|
||
|
||
```bash
|
||
opencode
|
||
```
|
||
|
||
Mais elle accepte également les commandes documentées sur cette page. Cela vous permet d'interagir avec OpenCode par programme.
|
||
|
||
```bash
|
||
opencode run "Explain how closures work in JavaScript"
|
||
```
|
||
|
||
---
|
||
|
||
### tui
|
||
|
||
Démarrez l’interface utilisateur du terminal OpenCode.
|
||
|
||
```bash
|
||
opencode [project]
|
||
```
|
||
|
||
#### Options
|
||
|
||
| Option | Court | Description |
|
||
| ------------ | ----- | ----------------------------------------------------------------------------- |
|
||
| `--continue` | `-c` | Continuer la dernière session |
|
||
| `--session` | `-s` | ID de session pour continuer |
|
||
| `--fork` | | Forker la session en continuant (à utiliser avec `--continue` ou `--session`) |
|
||
| `--prompt` | | Prompt à utiliser |
|
||
| `--model` | `-m` | Modèle à utiliser sous forme de fournisseur/modèle |
|
||
| `--agent` | | Agent à utiliser |
|
||
| `--port` | | Port d'écoute |
|
||
| `--hostname` | | Nom d'hôte d'écoute |
|
||
|
||
---
|
||
|
||
## Commandes
|
||
|
||
La CLI OpenCode dispose également des commandes suivantes.
|
||
|
||
---
|
||
|
||
### agent
|
||
|
||
Gérer les agents pour OpenCode.
|
||
|
||
```bash
|
||
opencode agent [command]
|
||
```
|
||
|
||
---
|
||
|
||
### attach
|
||
|
||
Attachez un terminal à un serveur backend OpenCode déjà en cours d'exécution démarré via les commandes `serve` ou `web`.
|
||
|
||
```bash
|
||
opencode attach [url]
|
||
```
|
||
|
||
Cela permet d'utiliser le TUI avec un backend OpenCode distant. Par exemple :
|
||
|
||
```bash
|
||
# Start the backend server for web/mobile access
|
||
opencode web --port 4096 --hostname 0.0.0.0
|
||
|
||
# In another terminal, attach the TUI to the running backend
|
||
opencode attach http://10.20.30.40:4096
|
||
```
|
||
|
||
#### Options
|
||
|
||
| Option | Court | Description |
|
||
| ----------- | ----- | ---------------------------------------------- |
|
||
| `--dir` | | Répertoire de travail dans lequel démarrer TUI |
|
||
| `--session` | `-s` | ID de session pour continuer |
|
||
|
||
---
|
||
|
||
#### create
|
||
|
||
Créez un nouvel agent avec une configuration personnalisée.
|
||
|
||
```bash
|
||
opencode agent create
|
||
```
|
||
|
||
Cette commande vous guidera dans la création d'un nouvel agent avec un prompt système personnalisé et une configuration d'outils.
|
||
|
||
---
|
||
|
||
#### list
|
||
|
||
Liste tous les agents disponibles.
|
||
|
||
```bash
|
||
opencode agent list
|
||
```
|
||
|
||
---
|
||
|
||
### auth
|
||
|
||
Commande pour gérer les informations d’identification et la connexion des fournisseurs.
|
||
|
||
```bash
|
||
opencode auth [command]
|
||
```
|
||
|
||
---
|
||
|
||
#### login
|
||
|
||
OpenCode est alimenté par la liste des fournisseurs sur [Models.dev](https://models.dev), vous pouvez donc utiliser `opencode auth login` pour configurer les clés API pour tout fournisseur que vous souhaitez utiliser. Ceci est stocké dans `~/.local/share/opencode/auth.json`.
|
||
|
||
```bash
|
||
opencode auth login
|
||
```
|
||
|
||
Lorsque OpenCode démarre, il charge les fournisseurs à partir du fichier d'informations d'identification, ainsi que les clés définies dans vos environnements ou un fichier `.env` dans votre projet.
|
||
|
||
---
|
||
|
||
#### list
|
||
|
||
Liste tous les fournisseurs authentifiés tels qu'ils sont stockés dans le fichier d'informations d'identification.
|
||
|
||
```bash
|
||
opencode auth list
|
||
```
|
||
|
||
Ou la version courte.
|
||
|
||
```bash
|
||
opencode auth ls
|
||
```
|
||
|
||
---
|
||
|
||
#### logout
|
||
|
||
Vous déconnecte d'un fournisseur en l'effaçant du fichier d'informations d'identification.
|
||
|
||
```bash
|
||
opencode auth logout
|
||
```
|
||
|
||
---
|
||
|
||
### github
|
||
|
||
Gérez l'agent GitHub pour l'automatisation du dépôt.
|
||
|
||
```bash
|
||
opencode github [command]
|
||
```
|
||
|
||
---
|
||
|
||
#### install
|
||
|
||
Installez l'agent GitHub dans votre dépôt.
|
||
|
||
```bash
|
||
opencode github install
|
||
```
|
||
|
||
Cela configure le flux de travail GitHub Actions nécessaire et vous guide tout au long du processus de configuration. [En savoir plus](/docs/github).
|
||
|
||
---
|
||
|
||
#### run
|
||
|
||
Exécutez l'agent GitHub. Ceci est généralement utilisé dans les GitHub Actions.
|
||
|
||
```bash
|
||
opencode github run
|
||
```
|
||
|
||
##### Options
|
||
|
||
| Option | Description |
|
||
| --------- | ---------------------------------------------------- |
|
||
| `--event` | Événement simulé GitHub pour lequel exécuter l'agent |
|
||
| `--token` | Jeton d'accès personnel GitHub |
|
||
|
||
---
|
||
|
||
### MCP
|
||
|
||
Gérer les serveurs Model Context Protocol.
|
||
|
||
```bash
|
||
opencode mcp [command]
|
||
```
|
||
|
||
---
|
||
|
||
#### add
|
||
|
||
Ajoutez un serveur MCP à votre configuration.
|
||
|
||
```bash
|
||
opencode mcp add
|
||
```
|
||
|
||
Cette commande vous guidera dans l’ajout d’un serveur MCP local ou distant.
|
||
|
||
---
|
||
|
||
#### list
|
||
|
||
Liste tous les serveurs MCP configurés et leur état de connexion.
|
||
|
||
```bash
|
||
opencode mcp list
|
||
```
|
||
|
||
Ou utilisez la version courte.
|
||
|
||
```bash
|
||
opencode mcp ls
|
||
```
|
||
|
||
---
|
||
|
||
#### auth
|
||
|
||
Authentifiez-vous auprès d'un serveur MCP compatible OAuth.
|
||
|
||
```bash
|
||
opencode mcp auth [name]
|
||
```
|
||
|
||
Si vous ne fournissez pas de nom de serveur, vous serez invité à sélectionner parmi les serveurs compatibles OAuth disponibles.
|
||
|
||
Vous pouvez également répertorier les serveurs compatibles OAuth et leur statut d'authentification.
|
||
|
||
```bash
|
||
opencode mcp auth list
|
||
```
|
||
|
||
Ou utilisez la version courte.
|
||
|
||
```bash
|
||
opencode mcp auth ls
|
||
```
|
||
|
||
---
|
||
|
||
#### logout
|
||
|
||
Supprimez les informations d'identification OAuth pour un serveur MCP.
|
||
|
||
```bash
|
||
opencode mcp logout [name]
|
||
```
|
||
|
||
---
|
||
|
||
#### debug
|
||
|
||
Déboguer les problèmes de connexion OAuth pour un serveur MCP.
|
||
|
||
```bash
|
||
opencode mcp debug <name>
|
||
```
|
||
|
||
---
|
||
|
||
### models
|
||
|
||
Liste tous les modèles disponibles auprès des fournisseurs configurés.
|
||
|
||
```bash
|
||
opencode models [provider]
|
||
```
|
||
|
||
Cette commande affiche tous les modèles disponibles parmi vos fournisseurs configurés au format `provider/model`.
|
||
|
||
Ceci est utile pour déterminer le nom exact du modèle à utiliser dans [votre config](/docs/config/).
|
||
|
||
Vous pouvez éventuellement transmettre un ID de fournisseur pour filtrer les modèles en fonction de ce fournisseur.
|
||
|
||
```bash
|
||
opencode models anthropic
|
||
```
|
||
|
||
#### Options
|
||
|
||
| Option | Description |
|
||
| ----------- | ------------------------------------------------------------------------------------------ |
|
||
| `--refresh` | Actualisez le cache des modèles à partir de models.dev |
|
||
| `--verbose` | Utiliser une sortie de modèle plus détaillée (inclut des métadonnées telles que les coûts) |
|
||
|
||
Utilisez l'option `--refresh` pour mettre à jour la liste des modèles mis en cache. Ceci est utile lorsque de nouveaux modèles ont été ajoutés à un fournisseur et que vous souhaitez les voir dans OpenCode.
|
||
|
||
```bash
|
||
opencode models --refresh
|
||
```
|
||
|
||
---
|
||
|
||
### run
|
||
|
||
Exécutez opencode en mode non interactif en transmettant directement un prompt.
|
||
|
||
```bash
|
||
opencode run [message..]
|
||
```
|
||
|
||
Ceci est utile pour les scripts, l'automatisation ou lorsque vous souhaitez une réponse rapide sans lancer le TUI complet. Par exemple :
|
||
|
||
```bash "opencode run"
|
||
opencode run Explain the use of context in Go
|
||
```
|
||
|
||
Vous pouvez également vous connecter à une instance `opencode serve` en cours d'exécution pour éviter les temps de démarrage à froid du serveur MCP à chaque exécution :
|
||
|
||
```bash
|
||
# Start a headless server in one terminal
|
||
opencode serve
|
||
|
||
# In another terminal, run commands that attach to it
|
||
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
|
||
```
|
||
|
||
#### Options
|
||
|
||
| Option | Court | Description |
|
||
| ------------ | ----- | ---------------------------------------------------------------------------------------------- |
|
||
| `--command` | | La commande à exécuter, utilisez le message pour les arguments |
|
||
| `--continue` | `-c` | Continuer la dernière session |
|
||
| `--session` | `-s` | ID de session pour continuer |
|
||
| `--fork` | | Forker la session en continuant (à utiliser avec `--continue` ou `--session`) |
|
||
| `--share` | | Partager la session |
|
||
| `--model` | `-m` | Modèle à utiliser sous forme de fournisseur/modèle |
|
||
| `--agent` | | Agent à utiliser |
|
||
| `--file` | `-f` | Fichier(s) à joindre au message |
|
||
| `--format` | | Format : par défaut (formaté) ou json (événements JSON bruts) |
|
||
| `--title` | | Titre de la session (utilise un prompt tronqué si aucune valeur n'est fournie) |
|
||
| `--attach` | | Connectez-vous à un serveur opencode en cours d'exécution (par exemple, http://localhost:4096) |
|
||
| `--port` | | Port du serveur local (port aléatoire par défaut) |
|
||
|
||
---
|
||
|
||
### serve
|
||
|
||
Démarrez un serveur OpenCode sans interface graphique pour un accès API. Consultez le [serveur docs](/docs/server) pour l'interface complète HTTP.
|
||
|
||
```bash
|
||
opencode serve
|
||
```
|
||
|
||
Cela démarre un serveur HTTP qui fournit un accès API aux fonctionnalités d'OpenCode sans l'interface TUI. Définissez `OPENCODE_SERVER_PASSWORD` pour activer l'authentification de base HTTP (le nom d'utilisateur par défaut est `opencode`).
|
||
|
||
#### Options
|
||
|
||
| Option | Description |
|
||
| ------------ | ---------------------------------------------------------- |
|
||
| `--port` | Port d'écoute |
|
||
| `--hostname` | Nom d'hôte d'écoute |
|
||
| `--mdns` | Activer la découverte mDNS |
|
||
| `--cors` | Origines de navigateur supplémentaires pour autoriser CORS |
|
||
|
||
---
|
||
|
||
### session
|
||
|
||
Gérer les sessions OpenCode.
|
||
|
||
```bash
|
||
opencode session [command]
|
||
```
|
||
|
||
---
|
||
|
||
#### list
|
||
|
||
Liste toutes les sessions OpenCode.
|
||
|
||
```bash
|
||
opencode session list
|
||
```
|
||
|
||
##### Options
|
||
|
||
| Option | Court | Description |
|
||
| ------------- | ----- | -------------------------------------------- |
|
||
| `--max-count` | `-n` | Limiter aux N sessions les plus récentes |
|
||
| `--format` | | Format de sortie : tableau ou json (tableau) |
|
||
|
||
---
|
||
|
||
### stats
|
||
|
||
Affichez les statistiques d'utilisation et de coût des jetons pour vos sessions OpenCode.
|
||
|
||
```bash
|
||
opencode stats
|
||
```
|
||
|
||
#### Options
|
||
|
||
| Option | Description |
|
||
| ----------- | --------------------------------------------------------------------------------------------------------------------- |
|
||
| `--days` | Afficher les statistiques des N derniers jours (depuis le début) |
|
||
| `--tools` | Nombre d'outils à afficher (tous) |
|
||
| `--models` | Afficher la répartition de l'utilisation du modèle (masqué par défaut). Passez un numéro pour afficher les N premiers |
|
||
| `--project` | Filtrer par projet (tous les projets, chaîne vide : projet actuel) |
|
||
|
||
---
|
||
|
||
### export
|
||
|
||
Exportez les données de session au format JSON.
|
||
|
||
```bash
|
||
opencode export [sessionID]
|
||
```
|
||
|
||
Si vous ne fournissez pas d'ID de session, vous serez invité à sélectionner parmi les sessions disponibles.
|
||
|
||
---
|
||
|
||
### import
|
||
|
||
Importez les données de session à partir d'un fichier JSON ou d'une URL de partage OpenCode.
|
||
|
||
```bash
|
||
opencode import <file>
|
||
```
|
||
|
||
Vous pouvez importer à partir d'un fichier local ou d'une URL de partage OpenCode.
|
||
|
||
```bash
|
||
opencode import session.json
|
||
opencode import https://opncd.ai/s/abc123
|
||
```
|
||
|
||
---
|
||
|
||
### web
|
||
|
||
Démarrez un serveur OpenCode sans interface graphique avec une interface Web.
|
||
|
||
```bash
|
||
opencode web
|
||
```
|
||
|
||
Cela démarre un serveur HTTP et ouvre un navigateur Web pour accéder à OpenCode via une interface Web. Définissez `OPENCODE_SERVER_PASSWORD` pour activer l'authentification de base HTTP (le nom d'utilisateur par défaut est `opencode`).
|
||
|
||
#### Options
|
||
|
||
| Option | Description |
|
||
| ------------ | ---------------------------------------------------------- |
|
||
| `--port` | Port d'écoute |
|
||
| `--hostname` | Nom d'hôte d'écoute |
|
||
| `--mdns` | Activer la découverte mDNS |
|
||
| `--cors` | Origines de navigateur supplémentaires pour autoriser CORS |
|
||
|
||
---
|
||
|
||
### acp
|
||
|
||
Démarrez un serveur ACP (Agent Client Protocol).
|
||
|
||
```bash
|
||
opencode acp
|
||
```
|
||
|
||
Cette commande démarre un serveur ACP qui communique via stdin/stdout en utilisant nd-JSON.
|
||
|
||
#### Options
|
||
|
||
| Option | Description |
|
||
| ------------ | --------------------- |
|
||
| `--cwd` | Répertoire de travail |
|
||
| `--port` | Port d'écoute |
|
||
| `--hostname` | Nom d'hôte d'écoute |
|
||
|
||
---
|
||
|
||
### uninstall
|
||
|
||
Désinstallez OpenCode et supprimez tous les fichiers associés.
|
||
|
||
```bash
|
||
opencode uninstall
|
||
```
|
||
|
||
#### Options
|
||
|
||
| Option | Court | Description |
|
||
| --------------- | ----- | --------------------------------------------------- |
|
||
| `--keep-config` | `-c` | Conserver les fichiers de configuration |
|
||
| `--keep-data` | `-d` | Conserver les données de session et les instantanés |
|
||
| `--dry-run` | | Afficher ce qui serait supprimé sans supprimer |
|
||
| `--force` | `-f` | Ignorer les invites de confirmation |
|
||
|
||
---
|
||
|
||
### upgrade
|
||
|
||
Met à jour opencode vers la dernière version ou une version spécifique.
|
||
|
||
```bash
|
||
tfcode upgrade [target]
|
||
```
|
||
|
||
Pour mettre à niveau vers la dernière version.
|
||
|
||
```bash
|
||
tfcode upgrade
|
||
```
|
||
|
||
Pour passer à une version spécifique.
|
||
|
||
```bash
|
||
tfcode upgrade v0.1.48
|
||
```
|
||
|
||
#### Options
|
||
|
||
| Option | Court | Description |
|
||
| ---------- | ----- | --------------------------------------------------------------- |
|
||
| `--method` | `-m` | La méthode d'installation utilisée ; curl, npm, pnpm, bun, brew |
|
||
|
||
---
|
||
|
||
## Options globales
|
||
|
||
La CLI opencode prend les flags globaux suivants.
|
||
|
||
| Option | Court | Description |
|
||
| -------------- | ----- | ---------------------------------------- |
|
||
| `--help` | `-h` | Afficher l'aide |
|
||
| `--version` | `-v` | Afficher le numéro de version |
|
||
| `--print-logs` | | Afficher les logs sur stderr |
|
||
| `--log-level` | | Niveau de log (DEBUG, INFO, WARN, ERROR) |
|
||
|
||
---
|
||
|
||
## Variables d'environnement
|
||
|
||
OpenCode peut être configuré à l'aide de variables d'environnement.
|
||
|
||
| Variables | Type | Description |
|
||
| ------------------------------------- | ------- | --------------------------------------------------------------------------------- |
|
||
| `OPENCODE_AUTO_SHARE` | booléen | Partager automatiquement des sessions |
|
||
| `OPENCODE_GIT_BASH_PATH` | chaîne | Chemin vers l'exécutable Git Bash sur Windows |
|
||
| `OPENCODE_CONFIG` | chaîne | Chemin d'accès au fichier de configuration |
|
||
| `OPENCODE_TUI_CONFIG` | chaîne | Chemin d'accès au fichier de configuration TUI |
|
||
| `OPENCODE_CONFIG_DIR` | chaîne | Chemin d'accès au répertoire de configuration |
|
||
| `OPENCODE_CONFIG_CONTENT` | chaîne | Contenu de configuration JSON en ligne |
|
||
| `OPENCODE_DISABLE_AUTOUPDATE` | booléen | Désactiver les vérifications automatiques des mises à jour |
|
||
| `OPENCODE_DISABLE_PRUNE` | booléen | Désactiver le nettoyage des anciennes données |
|
||
| `OPENCODE_DISABLE_TERMINAL_TITLE` | booléen | Désactiver les mises à jour automatiques des titres du terminal |
|
||
| `OPENCODE_PERMISSION` | chaîne | Configuration des autorisations JSON intégrées |
|
||
| `OPENCODE_DISABLE_DEFAULT_PLUGINS` | booléen | Désactiver les plugins par défaut |
|
||
| `OPENCODE_DISABLE_LSP_DOWNLOAD` | booléen | Désactiver les téléchargements automatiques du serveur LSP |
|
||
| `OPENCODE_ENABLE_EXPERIMENTAL_MODELS` | booléen | Activer les modèles expérimentaux |
|
||
| `OPENCODE_DISABLE_AUTOCOMPACT` | booléen | Désactiver le compactage automatique du contexte |
|
||
| `OPENCODE_DISABLE_CLAUDE_CODE` | booléen | Désactiver la lecture de `.claude` (prompt + compétences) |
|
||
| `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` | booléen | Désactiver la lecture `~/.claude/CLAUDE.md` |
|
||
| `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` | booléen | Désactiver le chargement de `.claude/skills` |
|
||
| `OPENCODE_DISABLE_MODELS_FETCH` | booléen | Désactiver la récupération de modèles à partir de sources distantes |
|
||
| `OPENCODE_FAKE_VCS` | chaîne | Faux fournisseur VCS à des fins de test |
|
||
| `OPENCODE_DISABLE_FILETIME_CHECK` | booléen | Désactiver la vérification de l'heure des fichiers pour l'optimisation |
|
||
| `OPENCODE_CLIENT` | chaîne | Identifiant du client (par défaut `cli`) |
|
||
| `OPENCODE_ENABLE_EXA` | booléen | Activer les outils de recherche Web Exa |
|
||
| `OPENCODE_SERVER_PASSWORD` | chaîne | Activer l'authentification de base pour `serve`/`web` |
|
||
| `OPENCODE_SERVER_USERNAME` | chaîne | Remplacer le nom d'utilisateur d'authentification de base (par défaut `opencode`) |
|
||
| `OPENCODE_MODELS_URL` | chaîne | URL personnalisé pour récupérer la configuration des modèles |
|
||
|
||
---
|
||
|
||
### Expérimental
|
||
|
||
Ces variables d'environnement activent des fonctionnalités expérimentales qui peuvent être modifiées ou supprimées.
|
||
|
||
| Variables | Type | Description |
|
||
| ----------------------------------------------- | ------- | --------------------------------------------------------------- |
|
||
| `OPENCODE_EXPERIMENTAL` | booléen | Activer toutes les fonctionnalités expérimentales |
|
||
| `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY` | booléen | Activer la découverte d'icônes |
|
||
| `OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT` | booléen | Désactiver la copie lors de la sélection dans TUI |
|
||
| `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | numéro | Délai d'expiration par défaut pour les commandes bash en ms |
|
||
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | numéro | Nombre maximum de jetons de sortie pour les réponses LLM |
|
||
| `OPENCODE_EXPERIMENTAL_FILEWATCHER` | booléen | Activer l'observateur de fichiers pour l'ensemble du répertoire |
|
||
| `OPENCODE_EXPERIMENTAL_OXFMT` | booléen | Activer le formateur oxfmt |
|
||
| `OPENCODE_EXPERIMENTAL_LSP_TOOL` | booléen | Activer l'outil expérimental LSP |
|
||
| `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` | booléen | Désactiver l'observateur de fichiers |
|
||
| `OPENCODE_EXPERIMENTAL_EXA` | booléen | Activer les fonctionnalités Exa expérimentales |
|
||
| `OPENCODE_EXPERIMENTAL_LSP_TY` | booléen | Activer TY LSP pour les fichiers python |
|
||
| `OPENCODE_EXPERIMENTAL_MARKDOWN` | booléen | Activer les fonctionnalités Markdown expérimentales |
|
||
| `OPENCODE_EXPERIMENTAL_PLAN_MODE` | booléen | Activer le mode plan |
|