Installation et exigences

L’outil officiel openai-cli s’appuie sur le repo GitHub et requiert Go version 1.26 ou supérieure. L’installation via Homebrew s’effectue avec la commande

brew install openai/tools/openai
, tandis que la compilation native utilise
go install 'github.com/openai/openai-cli/cmd/openai@latest'
. Après l’exécution de go install, le binaire est placé dans le répertoire Go bin, soit $HOME/go/bin par défaut ou $GOPATH/bin si la variable GOPATH est définie. Cette localisation est explicitement documentée, ce qui évite toute ambiguïté lors du déploiement sur des environnements CI.

Gestion du PATH et de l’autocomplétion

Si le shell ne trouve pas la commande, il faut ajouter le répertoire binaire au PATH. La documentation propose d’insérer

export PATH="$PATH:$(go env GOPATH)/bin"
dans le fichier de profil (.zshrc, .bashrc, etc.). Le CLI crée ensuite des raccourcis de complétion tabulaire pour Bash, Zsh et Fish, activés lors du premier appel interactif. PowerShell bénéficie d’une complétion similaire, mais nécessite d’appuyer sur Enter après openai images generate pour ouvrir le sélecteur d’images. Ces mécanismes sont conditionnés à la présence d’un terminal sur les flux stdin, stdout et stderr, ce qui explique pourquoi les redirections désactivent la vérification de mise à jour décrite plus bas.

Mécanisme de vérification des mises à jour

Le CLI interroge quotidiennement les métadonnées publiques des releases GitHub, sans nécessiter de jeton d’API. La requête est limitée à 200 ms et respecte les variables d’environnement HTTPS_PROXY et NO_PROXY, y compris leurs formes en minuscules. Un avis texte apparaît au maximum une fois tous les sept jours, sauf si l’utilisateur invoque explicitement --help, --completion ou redirige les flux, auquel cas le contrôle est contourné. L’avis inclut une commande de mise à jour adaptée à la méthode d’installation : pour Homebrew,

brew upgrade --cask openai/tools/openai
. Les installations non reconnues affichent un lien vers le guide d’installation. Le processus ne réalise jamais d’installation silencieuse ; l’utilisateur doit déclencher la mise à jour. Il est possible de désactiver complètement le contrôle en définissant OPENAI_CLI_NO_UPDATE_CHECK=1.

Structure des commandes et utilisation

Le CLI adopte une architecture « resource‑based » : openai <resource> [subresource...] <command> [flags...]. Chaque ressource correspond à un endpoint de l’API REST d’OpenAI, et l’exécution requiert une clé d’API valide. Cette organisation reflète la hiérarchie des services (par ex. openai chat completions create), facilitant l’automatisation dans des pipelines CI/CD. Le modèle de sous‑commandes permet d’étendre facilement le client à de nouveaux endpoints sans modifier la syntaxe de base, un choix d’architecture qui minimise les ruptures de compatibilité lors de l’ajout de fonctionnalités.