604 lines
21 KiB
Plaintext
604 lines
21 KiB
Plaintext
---
|
||
title: CLI
|
||
description: Options et commandes 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 il 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]
|
||
```
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Court | Descriptif |
|
||
| ------------ | ----- | ----------------------------------------------------------------------------- |
|
||
| `--continue` | `-c` | Continuer la dernière séance |
|
||
| `--session` | `-s` | ID de session pour continuer |
|
||
| `--fork` | | Forker la session en continuant (à utiliser avec `--continue` ou `--session`) |
|
||
| `--prompt` | | Invite à utiliser |
|
||
| `--model` | `-m` | Modèle à utiliser sous forme de fournisseur/modèle |
|
||
| `--agent` | | Agent à utiliser |
|
||
| `--port` | | Port à écouter sur |
|
||
| `--hostname` | | Nom d'hôte sur lequel écouter |
|
||
|
||
---
|
||
|
||
## Commandes
|
||
|
||
La CLI OpenCode dispose également des commandes suivantes.
|
||
|
||
---
|
||
|
||
### agent
|
||
|
||
Gérer les agents pour OpenCode.
|
||
|
||
```bash
|
||
opencode agent [command]
|
||
```
|
||
|
||
---
|
||
|
||
### attacher
|
||
|
||
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
|
||
```
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Court | Descriptif |
|
||
| ----------- | ----- | ---------------------------------------------- |
|
||
| `--dir` | | Répertoire de travail dans lequel démarrer TUI |
|
||
| `--session` | `-s` | ID de session pour continuer |
|
||
|
||
---
|
||
|
||
#### créer
|
||
|
||
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 une invite système personnalisée et une configuration d'outil.
|
||
|
||
---
|
||
|
||
#### liste
|
||
|
||
Répertoriez tous les agents disponibles.
|
||
|
||
```bash
|
||
opencode agent list
|
||
```
|
||
|
||
---
|
||
|
||
### authentification
|
||
|
||
Commande pour gérer les informations d’identification et la connexion des fournisseurs.
|
||
|
||
```bash
|
||
opencode auth [command]
|
||
```
|
||
|
||
---
|
||
|
||
#### se connecter
|
||
|
||
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. Et s'il y a des clés définies dans vos environnements ou un fichier `.env` dans votre projet.
|
||
|
||
---
|
||
|
||
#### liste
|
||
|
||
Répertorie 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
|
||
```
|
||
|
||
---
|
||
|
||
#### déconnexion
|
||
|
||
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 référentiel.
|
||
|
||
```bash
|
||
opencode github [command]
|
||
```
|
||
|
||
---
|
||
|
||
#### installer
|
||
|
||
Installez l'agent GitHub dans votre référentiel.
|
||
|
||
```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).
|
||
|
||
---
|
||
|
||
#### courir
|
||
|
||
Exécutez l'agent GitHub. Ceci est généralement utilisé dans les actions GitHub.
|
||
|
||
```bash
|
||
opencode github run
|
||
```
|
||
|
||
##### Drapeaux
|
||
|
||
| Drapeau | Descriptif |
|
||
| --------- | ---------------------------------------------------- |
|
||
| `--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]
|
||
```
|
||
|
||
---
|
||
|
||
#### ajouter
|
||
|
||
Ajoutez un serveur MCP à votre configuration.
|
||
|
||
```bash
|
||
opencode mcp add
|
||
```
|
||
|
||
Cette commande vous guidera dans l’ajout d’un serveur MCP local ou distant.
|
||
|
||
---
|
||
|
||
#### liste
|
||
|
||
Répertoriez tous les serveurs MCP configurés et leur état de connexion.
|
||
|
||
```bash
|
||
opencode mcp list
|
||
```
|
||
|
||
Ou utilisez la version courte.
|
||
|
||
```bash
|
||
opencode mcp ls
|
||
```
|
||
|
||
---
|
||
|
||
#### authentification
|
||
|
||
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
|
||
```
|
||
|
||
---
|
||
|
||
#### déconnexion
|
||
|
||
Supprimez les informations d'identification OAuth pour un serveur MCP.
|
||
|
||
```bash
|
||
opencode mcp logout [name]
|
||
```
|
||
|
||
---
|
||
|
||
#### déboguer
|
||
|
||
Déboguer les problèmes de connexion OAuth pour un serveur MCP.
|
||
|
||
```bash
|
||
opencode mcp debug <name>
|
||
```
|
||
|
||
---
|
||
|
||
### modèles
|
||
|
||
Répertoriez 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
|
||
```
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Descriptif |
|
||
| ----------- | ------------------------------------------------------------------------------------------ |
|
||
| `--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'indicateur `--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
|
||
```
|
||
|
||
---
|
||
|
||
### courir
|
||
|
||
Exécutez opencode en mode non interactif en transmettant directement une invite.
|
||
|
||
```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"
|
||
```
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Court | Descriptif |
|
||
| ------------ | ----- | ---------------------------------------------------------------------------------------------- |
|
||
| `--command` | | La commande à exécuter, utilisez message pour args |
|
||
| `--continue` | `-c` | Continuer la dernière séance |
|
||
| `--session` | `-s` | ID de session pour continuer |
|
||
| `--fork` | | Forker la session en continuant (à utiliser avec `--continue` ou `--session`) |
|
||
| `--share` | | Partager la séance |
|
||
| `--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 une invite tronquée 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) |
|
||
|
||
---
|
||
|
||
### servir
|
||
|
||
Démarrez un serveur OpenCode sans tête 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 à API un accès à la fonctionnalité 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`).
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Descriptif |
|
||
| ------------ | ---------------------------------------------------------- |
|
||
| `--port` | Port à écouter sur |
|
||
| `--hostname` | Nom d'hôte sur lequel écouter |
|
||
| `--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]
|
||
```
|
||
|
||
---
|
||
|
||
#### liste
|
||
|
||
Répertoriez toutes les sessions OpenCode.
|
||
|
||
```bash
|
||
opencode session list
|
||
```
|
||
|
||
##### Drapeaux
|
||
|
||
| Drapeau | Court | Descriptif |
|
||
| ------------- | ----- | -------------------------------------------- |
|
||
| `--max-count` | `-n` | Limiter aux N sessions les plus récentes |
|
||
| `--format` | | Format de sortie : tableau ou json (tableau) |
|
||
|
||
---
|
||
|
||
### statistiques
|
||
|
||
Affichez les statistiques d'utilisation et de coût des jetons pour vos sessions OpenCode.
|
||
|
||
```bash
|
||
opencode stats
|
||
```
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Descriptif |
|
||
| ----------- | ------------------------------------------------------------------------------------------------------------------- |
|
||
| `--days` | Afficher les statistiques des N derniers jours (tous les temps) |
|
||
| `--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 le premier N |
|
||
| `--project` | Filtrer par projet (tous les projets, chaîne vide : projet en cours) |
|
||
|
||
---
|
||
|
||
### exporter
|
||
|
||
Exportez les données de session sous JSON.
|
||
|
||
```bash
|
||
opencode export [sessionID]
|
||
```
|
||
|
||
Si vous ne fournissez pas d'ID de session, vous serez invité à sélectionner parmi les sessions disponibles.
|
||
|
||
---
|
||
|
||
### importer
|
||
|
||
Importez les données de session à partir d'un fichier JSON ou d'un partage OpenCode URL.
|
||
|
||
```bash
|
||
opencode import <file>
|
||
```
|
||
|
||
Vous pouvez importer à partir d'un fichier local ou d'un partage OpenCode URL.
|
||
|
||
```bash
|
||
opencode import session.json
|
||
opencode import https://opncd.ai/s/abc123
|
||
```
|
||
|
||
---
|
||
|
||
### la toile
|
||
|
||
Démarrez un serveur OpenCode sans tête 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`).
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Descriptif |
|
||
| ------------ | ---------------------------------------------------------- |
|
||
| `--port` | Port à écouter sur |
|
||
| `--hostname` | Nom d'hôte sur lequel écouter |
|
||
| `--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.
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Descriptif |
|
||
| ------------ | ----------------------------- |
|
||
| `--cwd` | Répertoire de travail |
|
||
| `--port` | Port à écouter sur |
|
||
| `--hostname` | Nom d'hôte sur lequel écouter |
|
||
|
||
---
|
||
|
||
### désinstaller
|
||
|
||
Désinstallez OpenCode et supprimez tous les fichiers associés.
|
||
|
||
```bash
|
||
opencode uninstall
|
||
```
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Court | Descriptif |
|
||
| --------------- | ----- | --------------------------------------------------- |
|
||
| `--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 |
|
||
|
||
---
|
||
|
||
### mise à niveau
|
||
|
||
Met à jour opencode vers la dernière version ou une version spécifique.
|
||
|
||
```bash
|
||
opencode upgrade [target]
|
||
```
|
||
|
||
Pour mettre à niveau vers la dernière version.
|
||
|
||
```bash
|
||
opencode upgrade
|
||
```
|
||
|
||
Pour passer à une version spécifique.
|
||
|
||
```bash
|
||
opencode upgrade v0.1.48
|
||
```
|
||
|
||
#### Drapeaux
|
||
|
||
| Drapeau | Court | Descriptif |
|
||
| ---------- | ----- | ----------------------------------------------------------------------- |
|
||
| `--method` | `-m` | La méthode d'installation utilisée ; curl, npm, pnpm, chignon, infusion |
|
||
|
||
---
|
||
|
||
## Drapeaux mondiaux
|
||
|
||
La CLI opencode prend les indicateurs globaux suivants.
|
||
|
||
| Drapeau | Court | Descriptif |
|
||
| -------------- | ----- | --------------------------------------------------- |
|
||
| `--help` | `-h` | Afficher l'aide |
|
||
| `--version` | `-v` | Imprimer le numéro de version |
|
||
| `--print-logs` | | Imprimer les journaux sur stderr |
|
||
| `--log-level` | | Niveau de journalisation (DEBUG, INFO, WARN, ERROR) |
|
||
|
||
---
|
||
|
||
## Variables d'environnement
|
||
|
||
OpenCode peut être configuré à l'aide de variables d'environnement.
|
||
|
||
| Variables | Tapez | Descriptif |
|
||
| ------------------------------------- | ------- | --------------------------------------------------------------------------------- |
|
||
| `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_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 l'élagage 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` (invite + 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 | Tapez | Descriptif |
|
||
| ----------------------------------------------- | ------- | --------------------------------------------------------------- |
|
||
| `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 dans 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 la vérification expérimentale du type LSP |
|
||
| `OPENCODE_EXPERIMENTAL_MARKDOWN` | booléen | Activer les fonctionnalités Markdown expérimentales |
|
||
| `OPENCODE_EXPERIMENTAL_PLAN_MODE` | booléen | Activer le mode plan |
|