Skip to main content
Pi est le projet Pi Agent Harness. Son package @earendil-works/pi-coding-agent fournit une CLI d’agent de code interactive avec des workflows de fichier, shell, édition, écriture, session, affichage, JSON, RPC et SDK. Pi peut charger des fournisseurs personnalisés depuis ~/.pi/agent/models.json, vous pouvez donc ajouter CometAPI comme entrées de fournisseur compatibles OpenAI sans modifier le code source de Pi. Références officielles :
La disponibilité des modèles évolue au fil du temps. Remplacez your-model-id par un model ID disponible depuis la page des modèles CometAPI.

Prérequis

  • Node.js >=22.19.0
  • npm
  • Un compte CometAPI avec une clé API active depuis le tableau de bord
  • Pi installé depuis le package npm officiel

Comprendre les autorisations d’exécution

Pi s’exécute avec les autorisations de l’utilisateur et du processus qui le lance. Démarrez Pi dans le répertoire du projet sur lequel vous souhaitez qu’il travaille, conservez une possibilité de retour en arrière comme git, et utilisez un conteneur ou un bac à sable si vous avez besoin de limites plus strictes pour le système de fichiers, les processus, le réseau ou les identifiants.

Configurer le fournisseur

1

Installer Pi

Installez Pi globalement avec npm :
Confirmez que la CLI est disponible :
2

Définir votre clé API CometAPI

Stockez votre clé API CometAPI dans la variable d’environnement COMETAPI_KEY :
Ajoutez la commande d’export à votre profil shell si vous souhaitez qu’elle persiste entre les sessions de terminal. Ne validez pas de clés API dans votre système de contrôle de version.
3

Ajouter des fournisseurs CometAPI à models.json

Créez ~/.pi/agent/models.json s’il n’existe pas. Si le fichier contient déjà des fournisseurs, fusionnez les entrées cometapi-responses et cometapi-chat dans l’objet providers existant :
Utilisez cometapi-responses pour les modèles ou workflows qui nécessitent l’API OpenAI Responses. Utilisez cometapi-chat pour les modèles compatibles OpenAI Chat Completions. Pi résout $COMETAPI_KEY au moment de la requête. Conservez la clé API dans votre environnement ou dans votre propre workflow de gestion des secrets.
4

Vérifier les deux fournisseurs

Listez les modèles que Pi peut voir pour le fournisseur Responses :
Exécutez un court Prompt ponctuel avec le fournisseur Responses :
Listez les modèles que Pi peut voir pour le fournisseur Chat Completions :
Exécutez un court Prompt ponctuel avec le fournisseur Chat Completions :
Pour une utilisation interactive, démarrez Pi dans votre projet et sélectionnez le fournisseur et le modèle CometAPI avec /model. Si vous modifiez models.json pendant une session interactive, ouvrez à nouveau /model afin que Pi recharge les entrées de modèle personnalisées.

Dépannage

Vérifiez que ~/.pi/agent/models.json est un JSON valide et que chaque entrée de fournisseur se trouve à l’intérieur de l’objet providers de niveau supérieur. Exécutez pi --list-models cometapi-responses ou pi --list-models cometapi-chat après avoir enregistré le fichier.
Vérifiez que COMETAPI_KEY est défini dans la même session shell qui lance Pi. Si vous utilisez un profil shell, ouvrez un nouveau terminal ou rechargez le profil avant d’exécuter Pi.
Utilisez https://api.cometapi.com/v1 comme baseUrl dans models.json. Ne faites pas pointer Pi vers l’URL du tableau de bord et n’omettez pas le suffixe /v1 pour les routes compatibles OpenAI.
Vérifiez votre version de Node.js avec node --version. Le package Pi nécessite Node.js >=22.19.0.
Utilisez l’entrée de fournisseur dont le champ api correspond à la route prise en charge par votre modèle. openai-responses utilise l’API Responses, tandis que openai-completions utilise Chat Completions.
Pi s’exécute avec les autorisations de l’utilisateur et du processus qui l’ont lancé. Exécutez Pi dans un conteneur ou un bac à sable lorsque vous avez besoin de limites plus strictes autour des fichiers, des processus, de l’accès réseau ou des identifiants.

Ressources associées