Vue d’ensemble
Utilisez ce guide si vous êtes administrateur d’un espace de travail ChatGPT et que vous configurez le modèle d’application GitHub Enterprise pour votre organisation. Un modèle n’est pas l’application finale utilisée par les membres. Il s’agit d’un flux de configuration qui crée une application brouillon propre à l’espace de travail après que vous avez fourni la configuration GitHub Enterprise requise.
Pour GitHub Enterprise, la configuration connecte ChatGPT à l’hôte GitHub Enterprise de votre organisation. Vous créez une GitHub App, enregistrez l’URL de rappel ChatGPT, générez des identifiants, puis collez ces valeurs dans le flux de configuration du modèle ChatGPT. Une fois que ChatGPT a créé l’application brouillon, vous pouvez la publier et la gérer comme les autres applications de l’espace de travail.
Ce que vous configurez
Vous créez une application GitHub Enterprise propre à l’espace de travail dans ChatGPT. L’application utilise :
Une GitHub App enregistrée sur votre hôte GitHub Enterprise.
L’ID client et le secret client de la GitHub App pour l’autorisation utilisateur OAuth.
La clé privée de la GitHub App afin que ChatGPT puisse émettre des tokens d’installation pour les opérations sur les dépôts.
Un secret de webhook et une URL de webhook pour que GitHub Enterprise puisse renvoyer les événements d’installation et de dépôt à ChatGPT.
Votre nom d’hôte GitHub Enterprise, par exemple
github.example.com.
Créez une GitHub App, et non une application OAuth GitHub autonome. La configuration du modèle ChatGPT nécessite les identifiants de la GitHub App, une clé privée et les paramètres de webhook.
Avant de commencer
Vous avez besoin de :
Accès administrateur ou propriétaire à l’espace de travail ChatGPT.
Accès administrateur GitHub Enterprise ou propriétaire d’organisation pouvant créer et installer des GitHub Apps.
Le nom d’hôte GitHub Enterprise uniquement, sans
https://ni chemin.Une décision sur les actions de dépôt que ChatGPT doit prendre en charge, comme la recherche de dépôts en lecture seule, les workflows de pull request, les workflows d’issue, les modifications de fichiers, GitHub Actions ou des workflows Codex plus larges.
Un emplacement sécurisé pour gérer la clé privée et le secret client de la GitHub App.
Gardez ChatGPT et GitHub Enterprise ouverts dans des onglets séparés. N’inventez pas l’URL de rappel. Copiez l’URL de rappel exacte affichée dans ChatGPT.
Valeurs à préparer
Nom d’hôte GitHub Enterprise : par exemple,
github.example.com.URL de rappel : copiez-la depuis le flux de configuration du modèle ChatGPT.
ID client de la GitHub App.
Secret client de la GitHub App.
PEM de clé privée de la GitHub App.
Secret de webhook généré par ChatGPT.
URL de webhook générée après la création de l’application brouillon dans ChatGPT.
Démarrer la configuration du modèle dans ChatGPT
Dans ChatGPT, passez à l’espace de travail où l’application doit être disponible.
Ouvrez Paramètres de l’espace de travail > Applications.
Sélectionnez Répertoire.
Recherchez GitHub Enterprise.
Sélectionnez le modèle d’application GitHub Enterprise et démarrez la configuration.
Saisissez un nom et une description clairs pour l’application, par exemple GitHub Enterprise ou GitHub Enterprise - Engineering.
Saisissez le nom d’hôte GitHub Enterprise, par exemple
github.example.com.Copiez l’URL de rappel affichée dans ChatGPT. Gardez cet onglet ouvert.
Copiez le secret de webhook généré s’il s’affiche pendant la configuration.
Exemple d’URL de rappel : https://chatgpt.com/connector/oauth/<callback_id>
Ne supprimez pas l’ID de rappel, n’ajoutez pas de barre oblique finale et ne le remplacez pas par une URL ChatGPT générique.
Créer la GitHub App dans GitHub Enterprise
Ouvrez votre hôte GitHub Enterprise, par exemple
https://github.example.com.Accédez à l’organisation ou au compte qui doit posséder l’application.
Ouvrez Paramètres > Paramètres développeur > GitHub Apps.
Sélectionnez Nouvelle GitHub App.
Saisissez un nom d’application clair, par exemple ChatGPT GitHub Enterprise Connector.
Saisissez une URL de page d’accueil. S’il n’existe pas de page interne dédiée, utilisez l’URL de l’organisation GitHub Enterprise.
Dans URL de rappel, collez l’URL de rappel exacte copiée depuis ChatGPT.
Gardez l’expiration des tokens d’autorisation utilisateur activée, sauf si votre équipe de sécurité a une raison précise de la modifier.
Activez la demande d’autorisation utilisateur pendant l’installation afin que les utilisateurs puissent autoriser l’application lors du flux d’installation ou de connexion.
Sous Où cette GitHub App peut-elle être installée ?, choisissez l’option la plus restreinte adaptée à votre déploiement.
Créez la GitHub App.
Configurer les autorisations et les événements
Choisissez les autorisations minimales requises pour les actions ChatGPT que vous prévoyez d’activer.
Pour la découverte de dépôts et les questions-réponses en lecture seule, commencez par des autorisations de lecture telles que :
Métadonnées : lecture seule. GitHub exige les métadonnées pour les GitHub Apps.
Contenus : lecture seule, pour l’accès aux fichiers et au contenu des dépôts.
Issues : lecture seule, si la recherche ou la lecture d’issues est nécessaire.
Pull requests : lecture seule, si la recherche de pull requests ou le contexte de revue est nécessaire.
Actions : lecture seule, si l’état d’exécution des workflows, les tâches, les journaux ou les artefacts sont nécessaires.
Pour les workflows d’écriture, ajoutez des autorisations d’écriture uniquement là où c’est nécessaire, par exemple pour Contenus, Pull requests, Issues, Actions ou Workflows. Utilisez les autorisations les plus restreintes compatibles avec les actions ChatGPT prévues.
Les événements de webhook doivent correspondre aux workflows que vous prenez en charge. Les événements courants incluent Installation, Dépôts d’installation, Push, Pull request, Issues, Commentaire d’issue, Exécution de workflow et Tâche de workflow.
Générer et copier les identifiants de la GitHub App
Dans les paramètres de la GitHub App, copiez le Client ID.
Générez un Client secret et copiez-le immédiatement.
Sous Clés privées, générez une clé privée.
Téléchargez le fichier .pem et stockez-le en lieu sûr.
Ouvrez le fichier .pem localement et copiez l’intégralité du texte PEM, y compris les lignes de début et de fin.
La clé privée est sensible. Traitez-la comme un identifiant. Si elle est exposée, générez une nouvelle clé privée, mettez à jour la configuration de l’application ChatGPT et supprimez la clé compromise dans GitHub Enterprise.
Terminer la configuration dans ChatGPT
Revenez à l’onglet de configuration du modèle ChatGPT.
Collez le Client ID de la GitHub App dans ID client OAuth.
Collez le Client secret de la GitHub App dans Secret client OAuth.
Laissez Champs d’application inchangé, sauf si votre organisation doit volontairement remplacer les valeurs par défaut du modèle.
Confirmez que le nom d’hôte GitHub Enterprise est uniquement un nom d’hôte, par exemple
github.example.com.Collez ou téléversez le PEM de clé privée de la GitHub App dans Clé privée de la GitHub App.
Confirmez que le secret de webhook généré est présent.
Créez l’application brouillon.
Ouvrez les détails de l’application brouillon créée dans ChatGPT et copiez l’URL de webhook générée.
L’URL de webhook doit ressembler à : https://connectors.api.openai.org/connectors/<connector_id>/webhook
Terminer la configuration du webhook dans GitHub Enterprise
Revenez aux paramètres de la GitHub App dans GitHub Enterprise.
Ouvrez les paramètres généraux de la GitHub App.
Activez les webhooks actifs s’ils ne le sont pas déjà.
Collez l’URL de webhook ChatGPT dans URL de webhook.
Collez le secret de webhook ChatGPT dans Secret de webhook.
Gardez la vérification SSL activée.
Confirmez que les événements de webhook abonnés correspondent aux autorisations et actions que vous avez activées.
Enregistrez les modifications.
Publier et gérer l’application dans ChatGPT
La création de l’application brouillon ne la rend pas automatiquement disponible aux membres. Après avoir vérifié le brouillon :
Publiez l’application brouillon.
Confirmez que l’application apparaît dans Paramètres de l’espace de travail > Applications > Activées.
Configurez Accès utilisateur pour les rôles qui doivent l’utiliser.
Vérifiez Contrôle des actions pour les actions de lecture et d’écriture.
Vérifiez Autorisations de l’application pour choisir quand ChatGPT demande aux membres avant d’utiliser l’application.
Demandez à un utilisateur de test autorisé d’ouvrir Applications dans ChatGPT et de confirmer que l’application apparaît.
Ces autorisations d’application s’appliquent aux conversations ChatGPT. Les agents d’espace de travail utilisent les contrôles par agent définis par le créateur de l’agent pour déterminer quelles actions d’application sont disponibles et quand les utilisateurs finaux doivent les approuver. Pour le comportement des agents, consultez : Agents d’espace de travail ChatGPT pour Enterprise et Business.
Installer et tester la GitHub App
Dans GitHub Enterprise, installez la GitHub App sur l’organisation ou le compte.
Choisissez tous les dépôts ou les dépôts sélectionnés, conformément à la politique de l’espace de travail.
Démarrez le flux de connexion depuis ChatGPT en tant qu’utilisateur autorisé.
Autorisez la GitHub App lorsque vous y êtes invité.
Exécutez d’abord une petite action de lecture, par exemple lister les dépôts accessibles ou récupérer une pull request connue.
Si les actions d’écriture sont activées, effectuez un test avec un dépôt à faible risque avant un déploiement plus large.
Nom d’hôte et comportement OAuth
ChatGPT utilise le nom d’hôte pour déduire les endpoints GitHub Enterprise. Saisissez uniquement l’hôte, par exemple github.example.com ou octocorp.ghe.com.
Ne saisissez pas de chemin d’API, de chemin de dépôt ni github.com, sauf s’il s’agit de l’hôte GitHub Enterprise exact pour cette application.
Dépannage
Incompatibilité de l’URI de redirection : confirmez que l’URL de rappel de la GitHub App correspond exactement à l’URL de rappel affichée dans ChatGPT.
ChatGPT ne peut pas créer ou enregistrer l’application brouillon : confirmez que tous les champs obligatoires sont présents, notamment le nom d’hôte, l’ID client OAuth, le secret client OAuth, la clé privée et le secret de webhook.
L’authentification réussit, mais les appels aux dépôts échouent : confirmez que la GitHub App est installée et a accès au dépôt.
L’API renvoie 403 ou des autorisations insuffisantes : ajoutez l’autorisation GitHub App manquante et demandez au propriétaire de l’installation d’approuver les autorisations mises à jour si nécessaire.
Aucun dépôt n’apparaît : confirmez que l’installation de l’application inclut les dépôts attendus et que l’utilisateur qui autorise dans ChatGPT y a accès.
Les livraisons de webhook échouent : confirmez que l’URL de webhook et le secret de webhook correspondent aux valeurs de ChatGPT, gardez la vérification SSL activée et assurez-vous que l’hôte GitHub Enterprise peut atteindre
connectors.api.openai.org.Erreurs de clé privée : confirmez que le contenu PEM complet a été copié, y compris les lignes de début et de fin.
