---
title: GitHub
description: Interagissez avec GitHub ou déclenchez des workflows à partir
  d'événements GitHub
---

import { BlockInfoCard } from "@/components/ui/block-info-card"

<BlockInfoCard 
  type="github"
  color="#181C1E"
/>

{/* MANUAL-CONTENT-START:intro */}
[GitHub](https://github.com/) est la plateforme leader mondiale pour le développement logiciel et le contrôle de version utilisant Git. Elle fournit un environnement collaboratif où les développeurs peuvent héberger et réviser du code, gérer des projets et construire des logiciels ensemble.

Avec GitHub, vous pouvez :

- **Héberger des dépôts** : stockez votre code dans des dépôts publics ou privés avec contrôle de version
- **Collaborer sur le code** : utilisez les pull requests pour proposer des modifications, réviser le code et fusionner les contributions
- **Suivre les problèmes** : créez, assignez et gérez des issues pour organiser le travail et suivre les bugs
- **Automatiser les workflows** : utilisez GitHub Actions pour construire, tester et déployer du code automatiquement
- **Gérer des projets** : organisez le travail avec des tableaux de projet, des jalons et le suivi des tâches
- **Documenter le code** : créez et maintenez de la documentation avec GitHub Pages et les wikis

Dans Sim, l'intégration GitHub permet à vos agents d'interagir directement avec les dépôts et les flux de travail GitHub. Cela permet des scénarios d'automatisation puissants tels que l'assistance à la revue de code, la gestion des pull requests, le suivi des problèmes et l'exploration des dépôts. Vos agents peuvent récupérer les données des dépôts, analyser les modifications de code, publier des commentaires sur les pull requests et effectuer d'autres opérations GitHub de manière programmatique. Cette intégration comble le fossé entre vos flux de travail IA et vos processus de développement, permettant une collaboration transparente entre vos agents et votre équipe de développement.
{/* MANUAL-CONTENT-END */}

## Instructions d'utilisation

Intégrez Github dans le flux de travail. Peut obtenir les détails des PR, créer des commentaires de PR, obtenir des informations sur le dépôt et obtenir le dernier commit. Nécessite une clé API token Github. Peut être utilisé en mode déclencheur pour lancer un flux de travail lorsqu'une PR est créée, commentée ou qu'un commit est poussé.

## Outils

### `github_pr`

Récupérer les détails des PR, y compris les différences et les fichiers modifiés

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `pullNumber` | number | Oui | Numéro de la pull request |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé de la PR lisible par l'humain |
| `metadata` | object | Métadonnées détaillées de la PR, y compris les modifications de fichiers |

### `github_comment`

Créer des commentaires sur les PR GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `body` | string | Oui | Contenu du commentaire |
| `pullNumber` | number | Oui | Numéro de la pull request |
| `path` | string | Non | Chemin du fichier pour le commentaire de revue |
| `position` | number | Non | Numéro de ligne pour le commentaire de revue |
| `commentType` | string | Non | Type de commentaire \(pr_comment ou file_comment\) |
| `line` | number | Non | Numéro de ligne pour le commentaire de revue |
| `side` | string | Non | Côté de la différence \(LEFT ou RIGHT\) |
| `commitId` | string | Non | Le SHA du commit à commenter |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de commentaire lisible par l'humain |
| `metadata` | object | Métadonnées du commentaire |

### `github_repo_info`

Récupérez des métadonnées complètes du dépôt GitHub, y compris les étoiles, les forks, les problèmes et le langage principal. Prend en charge les dépôts publics et privés avec authentification optionnelle.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé du dépôt lisible par l'humain |
| `metadata` | object | Métadonnées du dépôt |

### `github_latest_commit`

Récupérer le dernier commit d'un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `branch` | string | Non | Nom de la branche \(par défaut, la branche principale du dépôt\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé du commit lisible par l'humain |
| `metadata` | object | Métadonnées du commit |

### `github_issue_comment`

Créer un commentaire sur une issue GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro de l'issue |
| `body` | string | Oui | Contenu du commentaire |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation du commentaire lisible par l'humain |
| `metadata` | object | Métadonnées du commentaire |

### `github_list_issue_comments`

Lister tous les commentaires d'une issue GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro de l'issue |
| `since` | string | Non | Afficher uniquement les commentaires mis à jour après cette date au format ISO 8601 |
| `per_page` | number | Non | Nombre de résultats par page \(max 100\) |
| `page` | number | Non | Numéro de page |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé des commentaires lisible par l'humain |
| `metadata` | object | Métadonnées de la liste des commentaires |

### `github_update_comment`

Mettre à jour un commentaire existant sur un problème ou une pull request GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `comment_id` | number | Oui | ID du commentaire |
| `body` | string | Oui | Contenu mis à jour du commentaire |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de mise à jour lisible par l'humain |
| `metadata` | object | Métadonnées du commentaire mis à jour |

### `github_delete_comment`

Supprimer un commentaire sur un problème ou une pull request GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `comment_id` | number | Oui | ID du commentaire |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de suppression lisible par l'humain |
| `metadata` | object | Métadonnées du résultat de la suppression |

### `github_list_pr_comments`

Lister tous les commentaires de revue sur une pull request GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `pullNumber` | number | Oui | Numéro de la pull request |
| `sort` | string | Non | Trier par date de création ou de mise à jour |
| `direction` | string | Non | Direction du tri \(asc ou desc\) |
| `since` | string | Non | Afficher uniquement les commentaires mis à jour après cette date au format ISO 8601 |
| `per_page` | number | Non | Nombre de résultats par page \(max 100\) |
| `page` | number | Non | Numéro de page |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé des commentaires de revue lisible par l'humain |
| `metadata` | object | Métadonnées de la liste des commentaires de revue |

### `github_create_pr`

Créer une nouvelle pull request dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `title` | string | Oui | Titre de la pull request |
| `head` | string | Oui | Nom de la branche où vos modifications sont implémentées |
| `base` | string | Oui | Nom de la branche dans laquelle vous souhaitez intégrer les modifications |
| `body` | string | Non | Description de la pull request \(Markdown\) |
| `draft` | boolean | Non | Créer en tant que brouillon de pull request |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de création de PR lisible par l'humain |
| `metadata` | object | Métadonnées de la pull request |

### `github_update_pr`

Mettre à jour une pull request existante dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `pullNumber` | number | Oui | Numéro de la pull request |
| `title` | string | Non | Nouveau titre de la pull request |
| `body` | string | Non | Nouvelle description de la pull request \(Markdown\) |
| `state` | string | Non | Nouvel état \(open ou closed\) |
| `base` | string | Non | Nouveau nom de la branche de base |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de mise à jour de PR lisible par l'humain |
| `metadata` | object | Métadonnées de la pull request mise à jour |

### `github_merge_pr`

Fusionner une pull request dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `pullNumber` | number | Oui | Numéro de la pull request |
| `commit_title` | string | Non | Titre pour le commit de fusion |
| `commit_message` | string | Non | Détail supplémentaire à ajouter au message du commit de fusion |
| `merge_method` | string | Non | Méthode de fusion : merge, squash ou rebase |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de fusion lisible par l'humain |
| `metadata` | object | Métadonnées du résultat de la fusion |

### `github_list_prs`

Lister les pull requests dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `state` | string | Non | Filtrer par état : open, closed ou all |
| `head` | string | Non | Filtrer par utilisateur head ou nom de branche \(format : user:ref-name ou organization:ref-name\) |
| `base` | string | Non | Filtrer par nom de branche base |
| `sort` | string | Non | Trier par : created, updated, popularity ou long-running |
| `direction` | string | Non | Direction de tri : asc ou desc |
| `per_page` | number | Non | Résultats par page \(max 100\) |
| `page` | number | Non | Numéro de page |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Liste des pull requests lisible par l'humain |
| `metadata` | object | Métadonnées de la liste des pull requests |

### `github_get_pr_files`

Obtenir la liste des fichiers modifiés dans une pull request

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `pullNumber` | number | Oui | Numéro de la pull request |
| `per_page` | number | Non | Résultats par page \(max 100\) |
| `page` | number | Non | Numéro de page |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Liste lisible par l'humain des fichiers modifiés dans la PR |
| `metadata` | object | Métadonnées des fichiers de la PR |

### `github_close_pr`

Fermer une pull request dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `pullNumber` | number | Oui | Numéro de la pull request |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de fermeture de PR lisible par l'humain |
| `metadata` | object | Métadonnées de la pull request fermée |

### `github_request_reviewers`

Demander des relecteurs pour une pull request

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `pullNumber` | number | Oui | Numéro de la pull request |
| `reviewers` | string | Oui | Liste séparée par des virgules des identifiants d'utilisateurs à qui demander des relectures |
| `team_reviewers` | string | Non | Liste séparée par des virgules des slugs d'équipes à qui demander des relectures |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de demande de relecteur lisible par l'humain |
| `metadata` | object | Métadonnées des relecteurs demandés |

### `github_get_file_content`

Obtenir le contenu d'un fichier depuis un dépôt GitHub. Prend en charge les fichiers jusqu'à 1 Mo. Le contenu est retourné décodé et lisible par l'humain.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `path` | string | Oui | Chemin vers le fichier dans le dépôt \(par exemple, "src/index.ts"\) |
| `ref` | string | Non | Nom de la branche, tag ou SHA du commit \(par défaut, la branche principale du dépôt\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Informations sur le fichier lisibles par l'humain avec aperçu du contenu |
| `metadata` | object | Métadonnées du fichier incluant nom, chemin, SHA, taille et URLs |

### `github_create_file`

Créer un nouveau fichier dans un dépôt GitHub. Le contenu du fichier sera automatiquement encodé en Base64. Prend en charge les fichiers jusqu'à 1 Mo.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `path` | string | Oui | Chemin où le fichier sera créé \(ex. : "src/nouveaufichier.ts"\) |
| `message` | string | Oui | Message de commit pour cette création de fichier |
| `content` | string | Oui | Contenu du fichier \(texte brut, sera automatiquement encodé en Base64\) |
| `branch` | string | Non | Branche dans laquelle créer le fichier \(par défaut, la branche principale du dépôt\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de création de fichier lisible par l'humain |
| `metadata` | object | Métadonnées du fichier et du commit |

### `github_update_file`

Mettre à jour un fichier existant dans un dépôt GitHub. Nécessite le SHA du fichier. Le contenu sera automatiquement encodé en Base64. Prend en charge les fichiers jusqu'à 1 Mo.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `path` | string | Oui | Chemin vers le fichier à mettre à jour \(ex. : "src/index.ts"\) |
| `message` | string | Oui | Message de commit pour cette mise à jour de fichier |
| `content` | string | Oui | Nouveau contenu du fichier \(texte brut, sera automatiquement encodé en Base64\) |
| `sha` | string | Oui | Le SHA du blob du fichier remplacé \(obtenu via github_get_file_content\) |
| `branch` | string | Non | Branche dans laquelle mettre à jour le fichier \(par défaut, la branche principale du dépôt\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de mise à jour de fichier lisible par l'humain |
| `metadata` | object | Métadonnées du fichier mis à jour et du commit |

### `github_delete_file`

Supprimer un fichier d'un dépôt GitHub. Nécessite le SHA du fichier. Cette opération ne peut pas être annulée via l'API.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `path` | string | Oui | Chemin vers le fichier à supprimer \(ex. : "src/oldfile.ts"\) |
| `message` | string | Oui | Message de commit pour cette suppression de fichier |
| `sha` | string | Oui | Le SHA du blob du fichier à supprimer \(obtenu via github_get_file_content\) |
| `branch` | string | Non | Branche de laquelle supprimer le fichier \(par défaut, la branche principale du dépôt\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de suppression de fichier lisible par l'humain |
| `metadata` | object | Confirmation de suppression et métadonnées du commit |

### `github_get_tree`

Obtenir le contenu d'un répertoire dans un dépôt GitHub. Renvoie une liste de fichiers et de sous-répertoires. Utilisez un chemin vide ou omettez-le pour obtenir le contenu du répertoire racine.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `path` | string | Non | Chemin du répertoire \(par exemple, "src/components"\). Laissez vide pour le répertoire racine. |
| `ref` | string | Non | Nom de la branche, tag ou SHA du commit \(par défaut, la branche principale du dépôt\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Liste arborescente du répertoire lisible par l'humain |
| `metadata` | object | Métadonnées du contenu du répertoire |

### `github_list_branches`

Lister toutes les branches d'un dépôt GitHub. Filtrer éventuellement par statut de protection et contrôler la pagination.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `protected` | boolean | Non | Filtrer les branches par statut de protection |
| `per_page` | number | Non | Nombre de résultats par page \(max 100, par défaut 30\) |
| `page` | number | Non | Numéro de page pour la pagination \(par défaut 1\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Liste des branches lisible par l'humain |
| `metadata` | object | Métadonnées de la liste des branches |

### `github_get_branch`

Obtenir des informations détaillées sur une branche spécifique dans un dépôt GitHub, y compris les détails du commit et le statut de protection.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `branch` | string | Oui | Nom de la branche |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Détails de la branche lisibles par l'humain |
| `metadata` | object | Métadonnées de la branche |

### `github_create_branch`

Créer une nouvelle branche dans un dépôt GitHub en créant une référence git pointant vers un SHA de commit spécifique.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `branch` | string | Oui | Nom de la branche à créer |
| `sha` | string | Oui | SHA du commit vers lequel la branche doit pointer |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de création de branche lisible par l'humain |
| `metadata` | object | Métadonnées de référence Git |

### `github_delete_branch`

Supprimer une branche d'un dépôt GitHub en supprimant sa référence git. Les branches protégées ne peuvent pas être supprimées.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `branch` | string | Oui | Nom de la branche à supprimer |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de suppression lisible par l'humain |
| `metadata` | object | Métadonnées de suppression |

### `github_get_branch_protection`

Obtenir les règles de protection d'une branche spécifique, y compris les vérifications de statut, les exigences de revue et les restrictions.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `branch` | string | Oui | Nom de la branche |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé de protection de branche lisible par l'humain |
| `metadata` | object | Configuration de protection de branche |

### `github_update_branch_protection`

Mettre à jour les règles de protection de branche pour une branche spécifique, y compris les vérifications de statut, les exigences de revue, l'application pour les administrateurs et les restrictions de push.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `branch` | string | Oui | Nom de la branche |
| `required_status_checks` | object | Oui | Configuration des vérifications de statut requises \(null pour désactiver\). Objet avec strict \(booléen\) et contexts \(tableau de chaînes\) |
| `enforce_admins` | boolean | Oui | Appliquer ou non les restrictions pour les administrateurs |
| `required_pull_request_reviews` | object | Oui | Exigences de revue des PR \(null pour désactiver\). Objet avec required_approving_review_count, dismiss_stale_reviews, require_code_owner_reviews optionnels |
| `restrictions` | object | Oui | Restrictions de push \(null pour désactiver\). Objet avec users \(tableau de chaînes\) et teams \(tableau de chaînes\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé lisible par l'humain de la mise à jour de protection de branche |
| `metadata` | object | Configuration mise à jour de la protection de branche |

### `github_create_issue`

Créer un nouveau ticket dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `title` | string | Oui | Titre du ticket |
| `body` | string | Non | Description/corps du ticket |
| `assignees` | string | Non | Liste séparée par des virgules des noms d'utilisateurs à assigner à ce ticket |
| `labels` | string | Non | Liste séparée par des virgules des noms d'étiquettes à ajouter à ce ticket |
| `milestone` | number | Non | Numéro de jalon à associer à ce ticket |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de création d'issue lisible par l'humain |
| `metadata` | object | Métadonnées de l'issue |

### `github_update_issue`

Mettre à jour une issue existante dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro de l'issue |
| `title` | string | Non | Nouveau titre de l'issue |
| `body` | string | Non | Nouvelle description/corps de l'issue |
| `state` | string | Non | État de l'issue \(open ou closed\) |
| `labels` | array | Non | Tableau des noms d'étiquettes \(remplace toutes les étiquettes existantes\) |
| `assignees` | array | Non | Tableau des noms d'utilisateurs \(remplace tous les assignés existants\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de mise à jour d'issue lisible par l'humain |
| `metadata` | object | Métadonnées de l'issue mise à jour |

### `github_list_issues`

Lister les issues dans un dépôt GitHub. Remarque : cela inclut les pull requests car les PR sont considérées comme des issues dans GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `state` | string | Non | Filtrer par état : open, closed, ou all \(par défaut : open\) |
| `assignee` | string | Non | Filtrer par nom d'utilisateur assigné |
| `creator` | string | Non | Filtrer par nom d'utilisateur créateur |
| `labels` | string | Non | Liste de noms d'étiquettes séparés par des virgules pour filtrer |
| `sort` | string | Non | Trier par : created, updated, ou comments \(par défaut : created\) |
| `direction` | string | Non | Direction de tri : asc ou desc \(par défaut : desc\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Liste des problèmes lisible par l'humain |
| `metadata` | object | Métadonnées de la liste des problèmes |

### `github_get_issue`

Obtenir des informations détaillées sur un problème spécifique dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro du problème |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Détails du problème lisibles par l'humain |
| `metadata` | object | Métadonnées détaillées du problème |

### `github_close_issue`

Fermer un problème dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro du problème |
| `state_reason` | string | Non | Raison de la fermeture : completed ou not_planned |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de fermeture du problème lisible par l'humain |
| `metadata` | object | Métadonnées du problème fermé |

### `github_add_labels`

Ajouter des étiquettes à une issue dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro de l'issue |
| `labels` | string | Oui | Liste d'étiquettes séparées par des virgules à ajouter à l'issue |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation d'étiquettes lisible par l'humain |
| `metadata` | object | Métadonnées des étiquettes |

### `github_remove_label`

Supprimer une étiquette d'une issue dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro de l'issue |
| `name` | string | Oui | Nom de l'étiquette à supprimer |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de suppression d'étiquette lisible par l'humain |
| `metadata` | object | Métadonnées des étiquettes restantes |

### `github_add_assignees`

Ajouter des assignés à une issue dans un dépôt GitHub

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro du problème |
| `assignees` | string | Oui | Liste de noms d'utilisateurs séparés par des virgules à assigner au problème |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation des assignés lisible par l'humain |
| `metadata` | object | Métadonnées du problème mises à jour avec les assignés |

### `github_create_release`

Créer une nouvelle version pour un dépôt GitHub. Spécifiez le nom du tag, le commit cible, le titre, la description, et si elle doit être une ébauche ou une pré-version.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `tag_name` | string | Oui | Le nom du tag pour cette version |
| `target_commitish` | string | Non | Spécifie la valeur commitish qui détermine où le tag Git est créé. Peut être n'importe quelle branche ou SHA de commit. Par défaut, la branche principale du dépôt. |
| `name` | string | Non | Le nom de la version |
| `body` | string | Non | Texte décrivant le contenu de la version \(markdown pris en charge\) |
| `draft` | boolean | Non | true pour créer une ébauche \(non publiée\), false pour créer une version publiée |
| `prerelease` | boolean | Non | true pour identifier la version comme une pré-version, false pour l'identifier comme une version complète |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé de création de release lisible par l'humain |
| `metadata` | object | Métadonnées de la release incluant les URLs de téléchargement |

### `github_update_release`

Mettre à jour une release GitHub existante. Modifier le nom du tag, le commit cible, le titre, la description, le statut de brouillon ou le statut de pré-release.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `release_id` | number | Oui | L'identifiant unique de la release |
| `tag_name` | string | Non | Le nom du tag |
| `target_commitish` | string | Non | Spécifie la valeur commitish à partir de laquelle le tag est créé |
| `name` | string | Non | Le nom de la release |
| `body` | string | Non | Texte décrivant le contenu de la release \(markdown supporté\) |
| `draft` | boolean | Non | true pour définir comme brouillon, false pour publier |
| `prerelease` | boolean | Non | true pour identifier comme pré-release, false pour une release complète |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé de mise à jour de release lisible par l'humain |
| `metadata` | object | Métadonnées de release mises à jour incluant les URLs de téléchargement |

### `github_list_releases`

Liste toutes les versions d'un dépôt GitHub. Renvoie les informations de version, y compris les tags, les noms et les URL de téléchargement.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `per_page` | number | Non | Nombre de résultats par page \(max 100\) |
| `page` | number | Non | Numéro de page des résultats à récupérer |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Liste lisible des versions avec résumé |
| `metadata` | object | Métadonnées des versions |

### `github_get_release`

Obtient des informations détaillées sur une version GitHub spécifique par ID. Renvoie les métadonnées de la version, y compris les ressources et les URL de téléchargement.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `release_id` | number | Oui | L'identifiant unique de la version |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Détails de la version lisibles par l'humain |
| `metadata` | object | Métadonnées de la version, y compris les URL de téléchargement |

### `github_delete_release`

Supprime une release GitHub par ID. Cette action supprime définitivement la release mais ne supprime pas le tag Git associé.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `release_id` | number | Oui | L'identifiant unique de la release à supprimer |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Confirmation de suppression lisible par l'humain |
| `metadata` | object | Métadonnées du résultat de la suppression |

### `github_list_workflows`

Liste tous les workflows dans un dépôt GitHub. Renvoie les détails des workflows, y compris l'ID, le nom, le chemin, l'état et l'URL du badge.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `per_page` | number | Non | Nombre de résultats par page \(par défaut : 30, max : 100\) |
| `page` | number | Non | Numéro de page des résultats à récupérer \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé des workflows lisible par l'humain |
| `metadata` | object | Métadonnées des workflows |

### `github_get_workflow`

Obtenir les détails d'un workflow GitHub Actions spécifique par ID ou nom de fichier. Renvoie les informations du workflow, y compris le nom, le chemin, l'état et l'URL du badge.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `workflow_id` | string | Oui | ID du workflow \(nombre\) ou nom du fichier workflow \(ex. : "main.yaml"\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Détails du workflow lisibles par l'humain |
| `metadata` | object | Métadonnées du workflow |

### `github_trigger_workflow`

Déclencher un événement workflow_dispatch pour un workflow GitHub Actions. Le workflow doit avoir un déclencheur workflow_dispatch configuré. Renvoie 204 No Content en cas de succès.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `workflow_id` | string | Oui | ID du workflow \(nombre\) ou nom du fichier workflow \(ex. : "main.yaml"\) |
| `ref` | string | Oui | Référence Git \(branche ou nom de tag\) sur laquelle exécuter le workflow |
| `inputs` | object | Non | Clés et valeurs d'entrée configurées dans le fichier workflow |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Message de confirmation |
| `metadata` | object | Objet de métadonnées vide \(réponse 204 No Content\) |

### `github_list_workflow_runs`

Liste les exécutions de workflow pour un dépôt. Prend en charge le filtrage par acteur, branche, événement et statut. Renvoie les détails d'exécution, y compris le statut, la conclusion et les liens.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `actor` | string | Non | Filtrer par utilisateur ayant déclenché le workflow |
| `branch` | string | Non | Filtrer par nom de branche |
| `event` | string | Non | Filtrer par type d'événement \(ex. push, pull_request, workflow_dispatch\) |
| `status` | string | Non | Filtrer par statut \(queued, in_progress, completed, waiting, requested, pending\) |
| `per_page` | number | Non | Nombre de résultats par page \(par défaut : 30, max : 100\) |
| `page` | number | Non | Numéro de page des résultats à récupérer \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Résumé des exécutions de workflow lisible par l'humain |
| `metadata` | object | Métadonnées des exécutions de workflow |

### `github_get_workflow_run`

Obtenir des informations détaillées sur une exécution de workflow spécifique par ID. Renvoie le statut, la conclusion, le timing et les liens vers l'exécution.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `run_id` | number | Oui | ID de l'exécution du workflow |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Détails de l'exécution du workflow lisibles par l'humain |
| `metadata` | object | Métadonnées de l'exécution du workflow |

### `github_cancel_workflow_run`

Annule une exécution de workflow. Renvoie 202 Accepted si l'annulation est initiée, ou 409 Conflict si l'exécution ne peut pas être annulée (déjà terminée).

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `run_id` | number | Oui | ID de l'exécution du workflow à annuler |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Message d'état de l'annulation |
| `metadata` | object | Métadonnées de l'annulation |

### `github_rerun_workflow`

Relance une exécution de workflow. Active éventuellement la journalisation de débogage pour la relance. Renvoie 201 Created en cas de succès.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt \(utilisateur ou organisation\) |
| `repo` | string | Oui | Nom du dépôt |
| `run_id` | number | Oui | ID de l'exécution du workflow à relancer |
| `enable_debug_logging` | boolean | Non | Activer la journalisation de débogage pour la relance \(par défaut : false\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Message de confirmation de relance |
| `metadata` | object | Métadonnées de la relance |

### `github_list_projects`

Liste les projets GitHub V2 pour une organisation ou un utilisateur. Renvoie jusqu'à 20 projets avec leurs détails, y compris l'ID, le titre, le numéro, l'URL et le statut.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner_type` | string | Oui | Type de propriétaire : "org" pour organisation ou "user" pour utilisateur |
| `owner_login` | string | Oui | Nom de connexion de l'organisation ou de l'utilisateur |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub avec permissions de lecture de projet |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Liste de projets lisible par l'humain |
| `metadata` | object | Métadonnées des projets |

### `github_get_project`

Obtient des informations détaillées sur un projet GitHub V2 spécifique par son numéro. Renvoie les détails du projet, y compris l'ID, le titre, la description, l'URL et le statut.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner_type` | string | Oui | Type de propriétaire : "org" pour organisation ou "user" pour utilisateur |
| `owner_login` | string | Oui | Nom de connexion de l'organisation ou de l'utilisateur |
| `project_number` | number | Oui | Numéro du projet |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub avec permissions de lecture de projet |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Détails du projet lisibles par l'humain |
| `metadata` | object | Métadonnées du projet |

### `github_create_project`

Crée un nouveau projet GitHub V2. Nécessite l'ID de nœud du propriétaire (pas le nom de connexion). Renvoie le projet créé avec son ID, son titre et son URL.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner_id` | string | Oui | ID de nœud du propriétaire \(format : PVT_... ou MDQ6...\). Utilisez l'API GraphQL de GitHub pour obtenir cet ID à partir du nom d'utilisateur ou de l'organisation. |
| `title` | string | Oui | Titre du projet |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub avec les permissions d'écriture sur les projets |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Message de confirmation lisible par l'humain |
| `metadata` | object | Métadonnées du projet créé |

### `github_update_project`

Met à jour un projet GitHub V2 existant. Peut mettre à jour le titre, la description, la visibilité (publique) ou le statut (fermé). Nécessite l'ID de nœud du projet.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `project_id` | string | Oui | ID de nœud du projet \(format : PVT_...\) |
| `title` | string | Non | Nouveau titre du projet |
| `shortDescription` | string | Non | Nouvelle description courte du projet |
| `project_public` | boolean | Non | Définir la visibilité du projet \(true = public, false = privé\) |
| `closed` | boolean | Non | Définir le statut du projet \(true = fermé, false = ouvert\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub avec les permissions d'écriture sur les projets |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Message de confirmation lisible par l'humain |
| `metadata` | object | Métadonnées du projet mises à jour |

### `github_delete_project`

Supprimer un projet GitHub V2. Cette action est permanente et ne peut pas être annulée. Nécessite l'ID de nœud du projet.

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `project_id` | string | Oui | ID de nœud du projet \(format : PVT_...\) |
| `apiKey` | string | Oui | Jeton d'accès personnel GitHub avec les permissions d'administrateur de projet |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `content` | string | Message de confirmation lisible par l'humain |
| `metadata` | object | Métadonnées du projet supprimé |

## Notes

- Catégorie : `tools`
- Type : `github`

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `q` | string | Oui | Requête de recherche avec qualificateurs optionnels \(repo:, language:, path:, extension:, user:, org:\) |
| `sort` | string | Non | Trier par date d'indexation \(par défaut : meilleure correspondance\) |
| `order` | string | Non | Ordre de tri : asc ou desc \(par défaut : desc\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `total_count` | number | Total des résultats correspondants |
| `incomplete_results` | boolean | Si les résultats sont incomplets |
| `items` | array | Tableau des correspondances de code de l'API GitHub |
|   ↳ `name` | string | Nom du fichier |
|   ↳ `path` | string | Chemin du fichier |
|   ↳ `sha` | string | SHA du blob |
|   ↳ `url` | string | URL de l'API |
|   ↳ `git_url` | string | URL du blob Git |
|   ↳ `html_url` | string | URL web GitHub |
|   ↳ `score` | number | Score de pertinence de la recherche |
|   ↳ `repository` | object | Dépôt contenant le code |
|     ↳ `id` | number | ID du dépôt |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `name` | string | Nom du dépôt |
|     ↳ `full_name` | string | Nom complet \(propriétaire/dépôt\) |
|     ↳ `private` | boolean | Si le dépôt est privé |
|     ↳ `html_url` | string | URL web GitHub |
|     ↳ `description` | string | Description du dépôt |
|     ↳ `fork` | boolean | Si c'est un fork |
|     ↳ `url` | string | URL de l'API |
|     ↳ `owner` | object | Propriétaire du dépôt |
|       ↳ `login` | string | Nom d'utilisateur |
|       ↳ `id` | number | ID de l'utilisateur |
|       ↳ `node_id` | string | ID de nœud GraphQL |
|       ↳ `avatar_url` | string | URL de l'image d'avatar |
|       ↳ `url` | string | URL de l'API |
|       ↳ `html_url` | string | URL de la page de profil |
|       ↳ `type` | string | Utilisateur ou organisation |
|       ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `text_matches` | array | Correspondances de texte montrant le contexte |
|     ↳ `object_url` | string | URL de l'objet |
|     ↳ `object_type` | string | Type d'objet |
|     ↳ `property` | string | Propriété correspondante |
|     ↳ `fragment` | string | Fragment de texte avec correspondance |
|     ↳ `matches` | array | Indices de correspondance |
|       ↳ `text` | string | Texte correspondant |
|       ↳ `indices` | array | Indices de début et de fin |

### `github_search_commits`

Rechercher des commits sur GitHub. Utilisez des qualificateurs comme repo:owner/name, author:user, committer:user, author-date:>2023-01-01

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `q` | string | Oui | Requête de recherche avec qualificateurs optionnels \(repo:, author:, committer:, author-date:, committer-date:, merge:true/false\) |
| `sort` | string | Non | Trier par : author-date ou committer-date \(par défaut : meilleure correspondance\) |
| `order` | string | Non | Ordre de tri : asc ou desc \(par défaut : desc\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `total_count` | number | Nombre total de résultats correspondants |
| `incomplete_results` | boolean | Si les résultats sont incomplets |
| `items` | array | Tableau d'objets commit de l'API GitHub |
|   ↳ `sha` | string | SHA du commit |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `html_url` | string | URL web |
|   ↳ `url` | string | URL de l'API |
|   ↳ `comments_url` | string | URL de l'API des commentaires |
|   ↳ `score` | number | Score de pertinence de la recherche |
|   ↳ `commit` | object | Données principales du commit |
|     ↳ `url` | string | URL de l'API du commit |
|     ↳ `message` | string | Message du commit |
|     ↳ `comment_count` | number | Nombre de commentaires |
|     ↳ `author` | object | Auteur Git |
|       ↳ `name` | string | Nom de l'auteur |
|       ↳ `email` | string | Email de l'auteur |
|       ↳ `date` | string | Date de l'auteur \(ISO 8601\) |
|     ↳ `committer` | object | Committer Git |
|       ↳ `name` | string | Nom du committer |
|       ↳ `email` | string | Email du committer |
|       ↳ `date` | string | Date du commit \(ISO 8601\) |
|     ↳ `tree` | object | Objet arbre |
|       ↳ `sha` | string | SHA de l'arbre |
|       ↳ `url` | string | URL de l'API de l'arbre |
|   ↳ `author` | object | Utilisateur GitHub \(auteur\) |
|     ↳ `login` | string | Nom d'utilisateur |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL du profil |
|     ↳ `type` | string | User ou Organization |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `committer` | object | Utilisateur GitHub \(committer\) |
|     ↳ `login` | string | Nom d'utilisateur |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL du profil |
|     ↳ `type` | string | User ou Organization |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `repository` | object | Dépôt contenant le commit |
|     ↳ `id` | number | ID du dépôt |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `name` | string | Nom du dépôt |
|     ↳ `full_name` | string | Nom complet \(owner/repo\) |
|     ↳ `private` | boolean | Si le dépôt est privé |
|     ↳ `html_url` | string | URL web GitHub |
|     ↳ `description` | string | Description du dépôt |
|     ↳ `owner` | object | Propriétaire du dépôt |
|       ↳ `login` | string | Nom d'utilisateur |
|       ↳ `id` | number | ID utilisateur |
|       ↳ `node_id` | string | ID de nœud GraphQL |
|       ↳ `avatar_url` | string | URL de l'image d'avatar |
|       ↳ `url` | string | URL de l'API |
|       ↳ `html_url` | string | URL de la page de profil |
|       ↳ `type` | string | User ou Organization |
|       ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `parents` | array | Commits parents |
|     ↳ `sha` | string | SHA du parent |
|     ↳ `url` | string | URL de l'API du parent |
|     ↳ `html_url` | string | URL web du parent |

### `github_search_issues`

Rechercher des problèmes et des pull requests sur GitHub. Utilisez des qualificateurs comme repo:owner/name, is:issue, is:pr, state:open, label:bug, author:user

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `q` | string | Oui | Requête de recherche avec qualificateurs optionnels \(repo:, is:issue, is:pr, state:, label:, author:, assignee:\) |
| `sort` | string | Non | Trier par : comments, reactions, created, updated, interactions \(par défaut : meilleure correspondance\) |
| `order` | string | Non | Ordre de tri : asc ou desc \(par défaut : desc\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `total_count` | number | Nombre total de résultats correspondants |
| `incomplete_results` | boolean | Indique si les résultats sont incomplets |
| `items` | array | Tableau d'objets issue/PR de l'API GitHub |
|   ↳ `id` | number | ID du problème |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `number` | number | Numéro du problème |
|   ↳ `title` | string | Titre |
|   ↳ `state` | string | État \(open ou closed\) |
|   ↳ `locked` | boolean | Indique si le problème est verrouillé |
|   ↳ `html_url` | string | URL web |
|   ↳ `url` | string | URL de l'API |
|   ↳ `repository_url` | string | URL de l'API du dépôt |
|   ↳ `comments_url` | string | URL de l'API des commentaires |
|   ↳ `body` | string | Texte du corps |
|   ↳ `comments` | number | Nombre de commentaires |
|   ↳ `score` | number | Score de pertinence de la recherche |
|   ↳ `created_at` | string | Horodatage de création |
|   ↳ `updated_at` | string | Horodatage de dernière mise à jour |
|   ↳ `closed_at` | string | Horodatage de fermeture |
|   ↳ `user` | object | Auteur du problème |
|     ↳ `login` | string | Nom d'utilisateur |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | User ou Organization |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `labels` | array | Étiquettes du problème |
|     ↳ `id` | number | ID de l'étiquette |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `url` | string | URL de l'API |
|     ↳ `name` | string | Nom de l'étiquette |
|     ↳ `description` | string | Description de l'étiquette |
|     ↳ `color` | string | Code couleur hexadécimal |
|     ↳ `default` | boolean | Indique s'il s'agit d'une étiquette par défaut |
|   ↳ `assignee` | object | Assigné principal |
|     ↳ `login` | string | Nom d'utilisateur |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | User ou Organization |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `assignees` | array | Tous les assignés |
|     ↳ `login` | string | Nom d'utilisateur |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | User ou Organization |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `milestone` | object | Jalon associé |
|     ↳ `id` | number | ID du jalon |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `number` | number | Numéro du jalon |
|     ↳ `title` | string | Titre du jalon |
|     ↳ `description` | string | Description du jalon |
|     ↳ `state` | string | État \(open ou closed\) |
|     ↳ `html_url` | string | URL web |
|     ↳ `due_on` | string | Date d'échéance |
|   ↳ `pull_request` | object | Détails de la pull request \(si c'est une PR\) |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL web |
|     ↳ `diff_url` | string | URL du diff |
|     ↳ `patch_url` | string | URL du patch |

### `github_search_repos`

Rechercher des dépôts sur GitHub. Utilisez des qualificateurs comme language:python, stars:>1000, topic:react, user:owner, org:name

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `q` | string | Oui | Requête de recherche avec qualificateurs optionnels \(language:, stars:, forks:, topic:, user:, org:, in:name,description,readme\) |
| `sort` | string | Non | Trier par : stars, forks, help-wanted-issues, updated \(par défaut : meilleure correspondance\) |
| `order` | string | Non | Ordre de tri : asc ou desc \(par défaut : desc\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `total_count` | number | Nombre total de résultats correspondants |
| `incomplete_results` | boolean | Si les résultats sont incomplets |
| `items` | array | Tableau d'objets de dépôts de l'API GitHub |
|   ↳ `id` | number | ID du dépôt |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `name` | string | Nom du dépôt |
|   ↳ `full_name` | string | Nom complet \(propriétaire/dépôt\) |
|   ↳ `private` | boolean | Si le dépôt est privé |
|   ↳ `description` | string | Description du dépôt |
|   ↳ `html_url` | string | URL web GitHub |
|   ↳ `url` | string | URL de l'API |
|   ↳ `fork` | boolean | Si c'est un fork |
|   ↳ `created_at` | string | Horodatage de création |
|   ↳ `updated_at` | string | Horodatage de dernière mise à jour |
|   ↳ `pushed_at` | string | Horodatage du dernier push |
|   ↳ `size` | number | Taille du dépôt en Ko |
|   ↳ `stargazers_count` | number | Nombre d'étoiles |
|   ↳ `watchers_count` | number | Nombre de watchers |
|   ↳ `forks_count` | number | Nombre de forks |
|   ↳ `open_issues_count` | number | Nombre de problèmes ouverts |
|   ↳ `language` | string | Langage de programmation principal |
|   ↳ `default_branch` | string | Nom de la branche par défaut |
|   ↳ `visibility` | string | Visibilité du dépôt |
|   ↳ `archived` | boolean | Si le dépôt est archivé |
|   ↳ `disabled` | boolean | Si le dépôt est désactivé |
|   ↳ `score` | number | Score de pertinence de la recherche |
|   ↳ `topics` | array | Sujets du dépôt |
|   ↳ `license` | object | Informations sur la licence |
|     ↳ `key` | string | Clé de licence \(par exemple, mit\) |
|     ↳ `name` | string | Nom de la licence |
|     ↳ `spdx_id` | string | Identifiant SPDX |
|   ↳ `owner` | object | Propriétaire du dépôt |
|     ↳ `login` | string | Nom d'utilisateur GitHub |
|     ↳ `id` | number | ID de l'utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | Utilisateur ou organisation |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |

### `github_search_users`

Rechercher des utilisateurs et des organisations sur GitHub. Utilisez des qualificateurs comme type:user, type:org, followers:>1000, repos:>10, location:ville

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ------------ | ----------- |
| `q` | string | Oui | Requête de recherche avec qualificateurs optionnels \(type:user/org, followers:, repos:, location:, language:, created:\) |
| `sort` | string | Non | Trier par : followers, repositories, joined \(par défaut : meilleure correspondance\) |
| `order` | string | Non | Ordre de tri : asc ou desc \(par défaut : desc\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `total_count` | number | Nombre total de résultats correspondants |
| `incomplete_results` | boolean | Indique si les résultats sont incomplets |
| `items` | array | Tableau d'objets utilisateur de l'API GitHub |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `login` | string | Nom d'utilisateur |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `gravatar_id` | string | ID Gravatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `followers_url` | string | URL de l'API des abonnés |
|   ↳ `following_url` | string | URL de l'API des abonnements |
|   ↳ `gists_url` | string | URL de l'API des gists |
|   ↳ `starred_url` | string | URL de l'API des éléments suivis |
|   ↳ `repos_url` | string | URL de l'API des dépôts |
|   ↳ `organizations_url` | string | URL de l'API des organisations |
|   ↳ `type` | string | User ou Organization |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `score` | number | Score de pertinence de recherche |

### `github_list_commits`

Lister les commits d'un dépôt avec filtrage optionnel par SHA, chemin, auteur, committer ou plage de dates

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `sha` | string | Non | SHA ou branche à partir de laquelle lister les commits |
| `path` | string | Non | Uniquement les commits contenant ce chemin de fichier |
| `author` | string | Non | Identifiant GitHub ou adresse e-mail pour filtrer par auteur |
| `committer` | string | Non | Identifiant GitHub ou adresse e-mail pour filtrer par committer |
| `since` | string | Non | Uniquement les commits après cette date \(format ISO 8601\) |
| `until` | string | Non | Uniquement les commits avant cette date \(format ISO 8601\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `items` | array | Tableau d'objets commit de l'API GitHub |
|   ↳ `commit` | object | Données principales du commit |
|     ↳ `url` | string | URL de l'API du commit |
|     ↳ `message` | string | Message du commit |
|     ↳ `comment_count` | number | Nombre de commentaires |
|     ↳ `author` | object | Acteur Git \(auteur/committer\) |
|       ↳ `name` | string | Nom |
|       ↳ `email` | string | Adresse e-mail |
|       ↳ `date` | string | Horodatage \(ISO 8601\) |
|     ↳ `committer` | object | Acteur Git \(auteur/committer\) |
|       ↳ `name` | string | Nom |
|       ↳ `email` | string | Adresse e-mail |
|       ↳ `date` | string | Horodatage \(ISO 8601\) |
|     ↳ `tree` | object | Objet arbre |
|       ↳ `sha` | string | SHA de l'arbre |
|       ↳ `url` | string | URL de l'API de l'arbre |
|     ↳ `verification` | object | Vérification de signature |
|       ↳ `verified` | boolean | Si la signature est vérifiée |
|       ↳ `reason` | string | Raison de la vérification |
|       ↳ `signature` | string | Signature GPG |
|       ↳ `payload` | string | Charge utile signée |
|   ↳ `author` | object | Objet utilisateur GitHub |
|     ↳ `login` | string | Nom d'utilisateur GitHub |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | Utilisateur ou organisation |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `committer` | object | Objet utilisateur GitHub |
|     ↳ `login` | string | Nom d'utilisateur GitHub |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | Utilisateur ou organisation |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `sha` | string | SHA du commit |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `html_url` | string | URL web GitHub |
|   ↳ `url` | string | URL de l'API |
|   ↳ `comments_url` | string | URL de l'API des commentaires |
|   ↳ `parents` | array | Commits parents |
|     ↳ `sha` | string | SHA du parent |
|     ↳ `url` | string | URL de l'API du parent |
|     ↳ `html_url` | string | URL web du parent |
| `count` | number | Nombre de commits retournés |

### `github_get_commit`

Obtenir des informations détaillées sur un commit spécifique, y compris les fichiers modifiés et les statistiques

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `ref` | string | Oui | SHA du commit, nom de branche ou nom de tag |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `commit` | object | Données principales du commit |
|   ↳ `url` | string | URL de l'API du commit |
|   ↳ `message` | string | Message du commit |
|   ↳ `comment_count` | number | Nombre de commentaires |
|   ↳ `author` | object | Acteur Git \(auteur/commiteur\) |
|     ↳ `name` | string | Nom |
|     ↳ `email` | string | Adresse e-mail |
|     ↳ `date` | string | Horodatage \(ISO 8601\) |
|   ↳ `committer` | object | Acteur Git \(auteur/commiteur\) |
|     ↳ `name` | string | Nom |
|     ↳ `email` | string | Adresse e-mail |
|     ↳ `date` | string | Horodatage \(ISO 8601\) |
|   ↳ `tree` | object | Objet arbre |
|     ↳ `sha` | string | SHA de l'arbre |
|     ↳ `url` | string | URL de l'API de l'arbre |
|   ↳ `verification` | object | Vérification de signature |
|     ↳ `verified` | boolean | Si la signature est vérifiée |
|     ↳ `reason` | string | Raison de la vérification |
|     ↳ `signature` | string | Signature GPG |
|     ↳ `payload` | string | Charge utile signée |
| `author` | object | Objet utilisateur GitHub |
|   ↳ `login` | string | Nom d'utilisateur GitHub |
|   ↳ `id` | number | ID utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | Utilisateur ou organisation |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
| `committer` | object | Objet utilisateur GitHub |
|   ↳ `login` | string | Nom d'utilisateur GitHub |
|   ↳ `id` | number | ID utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | Utilisateur ou organisation |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
| `stats` | object | Statistiques de modifications |
|   ↳ `additions` | number | Lignes ajoutées |
|   ↳ `deletions` | number | Lignes supprimées |
|   ↳ `total` | number | Total des modifications |
| `sha` | string | SHA du commit |
| `node_id` | string | ID de nœud GraphQL |
| `html_url` | string | URL web GitHub |
| `url` | string | URL de l'API |
| `comments_url` | string | URL de l'API des commentaires |
| `files` | array | Fichiers modifiés \(entrées de diff\) |
|   ↳ `sha` | string | SHA du blob |
|   ↳ `filename` | string | Chemin du fichier |
|   ↳ `status` | string | Statut de modification \(added, removed, modified, renamed, copied, changed, unchanged\) |
|   ↳ `additions` | number | Lignes ajoutées |
|   ↳ `deletions` | number | Lignes supprimées |
|   ↳ `changes` | number | Total des modifications |
|   ↳ `blob_url` | string | URL du blob |
|   ↳ `raw_url` | string | URL du fichier brut |
|   ↳ `contents_url` | string | URL de l'API des contenus |
|   ↳ `patch` | string | Patch de diff |
|   ↳ `previous_filename` | string | Nom de fichier précédent \(pour les renommages\) |
| `parents` | array | Commits parents |
|   ↳ `sha` | string | SHA du parent |
|   ↳ `url` | string | URL de l'API du parent |
|   ↳ `html_url` | string | URL web du parent |

### `github_compare_commits`

Comparer deux commits ou branches pour voir la différence, les commits entre eux et les fichiers modifiés

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `base` | string | Oui | Branche/tag/SHA de base pour la comparaison |
| `head` | string | Oui | Branche/tag/SHA head pour la comparaison |
| `per_page` | number | Non | Résultats par page pour les fichiers \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page pour les fichiers \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `url` | string | URL de l'API |
| `html_url` | string | URL web GitHub |
| `permalink_url` | string | URL de lien permanent |
| `diff_url` | string | URL de téléchargement de la différence |
| `patch_url` | string | URL de téléchargement du patch |
| `status` | string | Statut de la comparaison \(ahead, behind, identical, diverged\) |
| `ahead_by` | number | Commits dont head est en avance sur base |
| `behind_by` | number | Commits dont head est en retard sur base |
| `total_commits` | number | Total des commits dans la comparaison |
| `base_commit` | object | Objet commit de base |
|   ↳ `commit` | object | Données principales du commit |
|     ↳ `url` | string | URL de l'API du commit |
|     ↳ `message` | string | Message du commit |
|     ↳ `comment_count` | number | Nombre de commentaires |
|     ↳ `author` | object | Acteur Git \(auteur/committer\) |
|       ↳ `name` | string | Nom |
|       ↳ `email` | string | Adresse e-mail |
|       ↳ `date` | string | Horodatage \(ISO 8601\) |
|     ↳ `committer` | object | Acteur Git \(auteur/committer\) |
|       ↳ `name` | string | Nom |
|       ↳ `email` | string | Adresse e-mail |
|       ↳ `date` | string | Horodatage \(ISO 8601\) |
|     ↳ `tree` | object | Objet arborescence |
|       ↳ `sha` | string | SHA de l'arborescence |
|       ↳ `url` | string | URL de l'API de l'arborescence |
|     ↳ `verification` | object | Vérification de signature |
|       ↳ `verified` | boolean | Si la signature est vérifiée |
|       ↳ `reason` | string | Raison de la vérification |
|       ↳ `signature` | string | Signature GPG |
|       ↳ `payload` | string | Charge utile signée |
|   ↳ `author` | object | Objet utilisateur GitHub |
|     ↳ `login` | string | Nom d'utilisateur GitHub |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | Utilisateur ou organisation |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `committer` | object | Objet utilisateur GitHub |
|     ↳ `login` | string | Nom d'utilisateur GitHub |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | Utilisateur ou organisation |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `sha` | string | SHA du commit |
|   ↳ `html_url` | string | URL web |
| `merge_base_commit` | object | Objet commit de base de fusion |
|   ↳ `sha` | string | SHA du commit |
|   ↳ `html_url` | string | URL web |
| `commits` | array | Commits entre base et head |
|   ↳ `commit` | object | Données principales du commit |
|     ↳ `url` | string | URL de l'API du commit |
|     ↳ `message` | string | Message du commit |
|     ↳ `comment_count` | number | Nombre de commentaires |
|     ↳ `author` | object | Acteur Git \(auteur/committer\) |
|       ↳ `name` | string | Nom |
|       ↳ `email` | string | Adresse e-mail |
|       ↳ `date` | string | Horodatage \(ISO 8601\) |
|     ↳ `committer` | object | Acteur Git \(auteur/committer\) |
|       ↳ `name` | string | Nom |
|       ↳ `email` | string | Adresse e-mail |
|       ↳ `date` | string | Horodatage \(ISO 8601\) |
|     ↳ `tree` | object | Objet arborescence |
|       ↳ `sha` | string | SHA de l'arborescence |
|       ↳ `url` | string | URL de l'API de l'arborescence |
|     ↳ `verification` | object | Vérification de signature |
|       ↳ `verified` | boolean | Si la signature est vérifiée |
|       ↳ `reason` | string | Raison de la vérification |
|       ↳ `signature` | string | Signature GPG |
|       ↳ `payload` | string | Charge utile signée |
|   ↳ `author` | object | Objet utilisateur GitHub |
|     ↳ `login` | string | Nom d'utilisateur GitHub |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | Utilisateur ou organisation |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `committer` | object | Objet utilisateur GitHub |
|     ↳ `login` | string | Nom d'utilisateur GitHub |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | Utilisateur ou organisation |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `sha` | string | SHA du commit |
|   ↳ `html_url` | string | URL web |
| `files` | array | Fichiers modifiés \(entrées de différence\) |
|   ↳ `sha` | string | SHA du blob |
|   ↳ `filename` | string | Chemin du fichier |
|   ↳ `status` | string | Statut de modification \(added, removed, modified, renamed, copied, changed, unchanged\) |
|   ↳ `additions` | number | Lignes ajoutées |
|   ↳ `deletions` | number | Lignes supprimées |
|   ↳ `changes` | number | Total des modifications |
|   ↳ `blob_url` | string | URL du blob |
|   ↳ `raw_url` | string | URL du fichier brut |
|   ↳ `contents_url` | string | URL de l'API des contenus |
|   ↳ `patch` | string | Patch de différence |
|   ↳ `previous_filename` | string | Nom de fichier précédent \(pour les renommages\) |

### `github_create_gist`

Créer un nouveau gist avec un ou plusieurs fichiers

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `description` | string | Non | Description du gist |
| `files` | json | Oui | Objet JSON avec les noms de fichiers comme clés et le contenu comme valeurs. Exemple : \{"fichier.txt": \{"content": "Bonjour"\}\} |
| `public` | boolean | Non | Si le gist est public \(par défaut : false\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | ID du gist |
| `node_id` | string | ID de nœud GraphQL |
| `url` | string | URL de l'API |
| `html_url` | string | URL web |
| `forks_url` | string | URL de l'API des forks |
| `commits_url` | string | URL de l'API des commits |
| `git_pull_url` | string | URL de pull Git |
| `git_push_url` | string | URL de push Git |
| `description` | string | Description du gist |
| `public` | boolean | Si le gist est public |
| `truncated` | boolean | Si les fichiers sont tronqués |
| `comments` | number | Nombre de commentaires |
| `comments_url` | string | URL de l'API des commentaires |
| `created_at` | string | Horodatage de création |
| `updated_at` | string | Horodatage de dernière mise à jour |
| `files` | object | Fichiers dans le gist \(objet avec les noms de fichiers comme clés, chacun contenant filename, type, language, raw_url, size, truncated, content\) |
| `owner` | object | Propriétaire du gist |
|   ↳ `login` | string | Nom d'utilisateur |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | User ou Organization |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |

### `github_get_gist`

Récupérer un gist par ID incluant le contenu de ses fichiers

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `gist_id` | string | Oui | L'ID du gist |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `files` | object | Fichiers dans le gist \(indexés par nom de fichier\) |
|   ↳ `filename` | string | Nom du fichier |
|   ↳ `type` | string | Type MIME |
|   ↳ `language` | string | Langage de programmation |
|   ↳ `raw_url` | string | URL du fichier brut |
|   ↳ `size` | number | Taille du fichier en octets |
|   ↳ `truncated` | boolean | Si le contenu est tronqué |
|   ↳ `content` | string | Contenu du fichier |
| `owner` | object | Propriétaire du gist |
|   ↳ `login` | string | Nom d'utilisateur |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | Utilisateur ou organisation |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
| `id` | string | ID du gist |
| `node_id` | string | ID de nœud GraphQL |
| `url` | string | URL de l'API |
| `html_url` | string | URL web GitHub |
| `forks_url` | string | URL de l'API des forks |
| `commits_url` | string | URL de l'API des commits |
| `git_pull_url` | string | URL de clonage Git |
| `git_push_url` | string | URL de push Git |
| `description` | string | Description du gist |
| `public` | boolean | Si le gist est public |
| `truncated` | boolean | Si le contenu est tronqué |
| `comments` | number | Nombre de commentaires |
| `comments_url` | string | URL de l'API des commentaires |
| `created_at` | string | Horodatage de création |
| `updated_at` | string | Horodatage de dernière mise à jour |

### `github_list_gists`

Lister les gists d'un utilisateur ou de l'utilisateur authentifié

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `username` | string | Non | Nom d'utilisateur GitHub \(omettre pour les gists de l'utilisateur authentifié\) |
| `since` | string | Non | Uniquement les gists mis à jour après cette date \(ISO 8601\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `items` | array | Tableau d'objets gist de l'API GitHub |
|   ↳ `files` | object | Fichiers dans le gist \(indexés par nom de fichier\) |
|     ↳ `filename` | string | Nom du fichier |
|     ↳ `type` | string | Type MIME |
|     ↳ `language` | string | Langage de programmation |
|     ↳ `raw_url` | string | URL du fichier brut |
|     ↳ `size` | number | Taille du fichier en octets |
|     ↳ `truncated` | boolean | Si le contenu est tronqué |
|     ↳ `content` | string | Contenu du fichier |
|   ↳ `owner` | object | Propriétaire du gist |
|     ↳ `login` | string | Nom d'utilisateur |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | User ou Organization |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `id` | string | ID du gist |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL web GitHub |
|   ↳ `forks_url` | string | URL de l'API des forks |
|   ↳ `commits_url` | string | URL de l'API des commits |
|   ↳ `git_pull_url` | string | URL de clone Git |
|   ↳ `git_push_url` | string | URL de push Git |
|   ↳ `description` | string | Description du gist |
|   ↳ `public` | boolean | Si le gist est public |
|   ↳ `truncated` | boolean | Si le contenu est tronqué |
|   ↳ `comments` | number | Nombre de commentaires |
|   ↳ `comments_url` | string | URL de l'API des commentaires |
|   ↳ `created_at` | string | Horodatage de création |
|   ↳ `updated_at` | string | Horodatage de dernière mise à jour |
| `count` | number | Nombre de gists retournés |

### `github_update_gist`

Mettre à jour la description ou les fichiers d'un gist. Pour supprimer un fichier, définissez sa valeur sur null dans l'objet files

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `gist_id` | string | Oui | L'ID du gist à mettre à jour |
| `description` | string | Non | Nouvelle description pour le gist |
| `files` | json | Non | Objet JSON avec les noms de fichiers comme clés. Définir sur null pour supprimer, ou fournir le contenu pour mettre à jour/ajouter |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | ID du gist |
| `node_id` | string | ID de nœud GraphQL |
| `url` | string | URL de l'API |
| `html_url` | string | URL web |
| `forks_url` | string | URL de l'API des forks |
| `commits_url` | string | URL de l'API des commits |
| `git_pull_url` | string | URL de pull Git |
| `git_push_url` | string | URL de push Git |
| `description` | string | Description du gist |
| `public` | boolean | Si le gist est public |
| `truncated` | boolean | Si les fichiers sont tronqués |
| `comments` | number | Nombre de commentaires |
| `comments_url` | string | URL de l'API des commentaires |
| `created_at` | string | Horodatage de création |
| `updated_at` | string | Horodatage de dernière mise à jour |
| `files` | object | Fichiers dans le gist \(objet avec les noms de fichiers comme clés, chacun contenant filename, type, language, raw_url, size, truncated, content\) |
| `owner` | object | Propriétaire du gist |
|   ↳ `login` | string | Nom d'utilisateur |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | Utilisateur ou organisation |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |

### `github_delete_gist`

Supprimer un gist par ID

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `gist_id` | string | Oui | L'ID du gist à supprimer |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `deleted` | boolean | Si la suppression a réussi |
| `gist_id` | string | L'ID du gist supprimé |

### `github_fork_gist`

Dupliquer un gist pour créer votre propre copie

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `gist_id` | string | Oui | L'ID du gist à dupliquer |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `id` | string | ID du nouveau gist |
| `html_url` | string | URL web |
| `description` | string | Description |
| `public` | boolean | Est public |
| `created_at` | string | Date de création |
| `owner` | object | Informations sur le propriétaire |
| `files` | object | Fichiers |

### `github_star_gist`

Ajouter un gist aux favoris

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `gist_id` | string | Oui | L'ID du gist à ajouter aux favoris |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `starred` | boolean | Si l'ajout aux favoris a réussi |
| `gist_id` | string | L'ID du gist |

### `github_unstar_gist`

Retirer un gist des favoris

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `gist_id` | string | Oui | L'ID du gist à retirer des favoris |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `unstarred` | boolean | Si le retrait des favoris a réussi |
| `gist_id` | string | L'ID du gist |

### `github_fork_repo`

Forker un dépôt vers votre compte ou une organisation

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt à forker |
| `repo` | string | Oui | Nom du dépôt à forker |
| `organization` | string | Non | Organisation dans laquelle forker \(omettre pour forker vers votre compte\) |
| `name` | string | Non | Nom personnalisé pour le dépôt forké |
| `default_branch_only` | boolean | Non | Forker uniquement la branche par défaut \(par défaut : false\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `id` | number | ID du dépôt |
| `node_id` | string | ID de nœud GraphQL |
| `name` | string | Nom du dépôt |
| `full_name` | string | Nom complet \(propriétaire/dépôt\) |
| `private` | boolean | Si le dépôt est privé |
| `description` | string | Description du dépôt |
| `html_url` | string | URL web GitHub |
| `url` | string | URL de l'API |
| `clone_url` | string | URL de clone HTTPS |
| `ssh_url` | string | URL de clone SSH |
| `git_url` | string | URL du protocole Git |
| `default_branch` | string | Nom de la branche par défaut |
| `fork` | boolean | Si c'est un fork |
| `created_at` | string | Horodatage de création |
| `updated_at` | string | Horodatage de dernière mise à jour |
| `pushed_at` | string | Horodatage du dernier push |
| `owner` | object | Propriétaire du fork |
|   ↳ `login` | string | Nom d'utilisateur GitHub |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | Utilisateur ou organisation |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
| `parent` | object | Dépôt parent \(source du fork\) |
|   ↳ `login` | string | Nom d'utilisateur |
|   ↳ `id` | number | ID de l'utilisateur |
| `source` | object | Dépôt source \(origine ultime\) |
|   ↳ `id` | number | ID du dépôt |
|   ↳ `full_name` | string | Nom complet |
|   ↳ `html_url` | string | URL web |

### `github_list_forks`

Lister les forks d'un dépôt

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | ----------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `sort` | string | Non | Trier par : newest, oldest, stargazers, watchers \(par défaut : newest\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `items` | array | Tableau d'objets de dépôts forkés provenant de l'API GitHub |
|   ↳ `id` | number | ID du dépôt |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `name` | string | Nom du dépôt |
|   ↳ `full_name` | string | Nom complet \(propriétaire/dépôt\) |
|   ↳ `private` | boolean | Si le dépôt est privé |
|   ↳ `description` | string | Description du dépôt |
|   ↳ `html_url` | string | URL web GitHub |
|   ↳ `url` | string | URL de l'API |
|   ↳ `fork` | boolean | Si c'est un fork |
|   ↳ `created_at` | string | Horodatage de création |
|   ↳ `updated_at` | string | Horodatage de dernière mise à jour |
|   ↳ `pushed_at` | string | Horodatage du dernier push |
|   ↳ `size` | number | Taille du dépôt en Ko |
|   ↳ `stargazers_count` | number | Nombre d'étoiles |
|   ↳ `watchers_count` | number | Nombre de watchers |
|   ↳ `forks_count` | number | Nombre de forks |
|   ↳ `open_issues_count` | number | Nombre de problèmes ouverts |
|   ↳ `language` | string | Langage de programmation principal |
|   ↳ `default_branch` | string | Nom de la branche par défaut |
|   ↳ `visibility` | string | Visibilité du dépôt |
|   ↳ `archived` | boolean | Si le dépôt est archivé |
|   ↳ `disabled` | boolean | Si le dépôt est désactivé |
|   ↳ `owner` | object | Propriétaire du fork |
|     ↳ `login` | string | Nom d'utilisateur GitHub |
|     ↳ `id` | number | ID de l'utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | Utilisateur ou organisation |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
| `count` | number | Nombre de forks retournés |

### `github_create_milestone`

Créer un jalon dans un dépôt

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `title` | string | Oui | Titre du jalon |
| `state` | string | Non | État : open ou closed \(par défaut : open\) |
| `description` | string | Non | Description du jalon |
| `due_on` | string | Non | Date d'échéance \(format ISO 8601, ex. : 2024-12-31T23:59:59Z\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `creator` | object | Créateur du jalon |
|   ↳ `login` | string | Nom d'utilisateur |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | Utilisateur ou organisation |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
| `id` | number | ID du jalon |
| `node_id` | string | ID de nœud GraphQL |
| `number` | number | Numéro du jalon |
| `title` | string | Titre du jalon |
| `description` | string | Description du jalon |
| `state` | string | État \(open ou closed\) |
| `url` | string | URL de l'API |
| `html_url` | string | URL web GitHub |
| `labels_url` | string | URL de l'API des étiquettes |
| `due_on` | string | Date d'échéance \(ISO 8601\) |
| `open_issues` | number | Nombre de problèmes ouverts |
| `closed_issues` | number | Nombre de problèmes fermés |
| `created_at` | string | Horodatage de création |
| `updated_at` | string | Horodatage de dernière mise à jour |
| `closed_at` | string | Horodatage de fermeture |

### `github_get_milestone`

Obtenir un jalon spécifique par numéro

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `milestone_number` | number | Oui | Numéro du jalon |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `creator` | object | Créateur du jalon |
|   ↳ `login` | string | Nom d'utilisateur |
|   ↳ `id` | number | ID utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | Utilisateur ou organisation |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
| `id` | number | ID du jalon |
| `node_id` | string | ID de nœud GraphQL |
| `number` | number | Numéro du jalon |
| `title` | string | Titre du jalon |
| `description` | string | Description du jalon |
| `state` | string | État \(open ou closed\) |
| `url` | string | URL de l'API |
| `html_url` | string | URL web GitHub |
| `labels_url` | string | URL de l'API des étiquettes |
| `due_on` | string | Date d'échéance \(ISO 8601\) |
| `open_issues` | number | Nombre de problèmes ouverts |
| `closed_issues` | number | Nombre de problèmes fermés |
| `created_at` | string | Horodatage de création |
| `updated_at` | string | Horodatage de dernière mise à jour |
| `closed_at` | string | Horodatage de fermeture |

### `github_list_milestones`

Lister les jalons d'un dépôt

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `state` | string | Non | Filtrer par état : open, closed, all \(par défaut : open\) |
| `sort` | string | Non | Trier par : due_on ou completeness \(par défaut : due_on\) |
| `direction` | string | Non | Direction de tri : asc ou desc \(par défaut : asc\) |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `items` | array | Tableau d'objets jalons de l'API GitHub |
|   ↳ `creator` | object | Créateur du jalon |
|     ↳ `login` | string | Nom d'utilisateur |
|     ↳ `id` | number | ID utilisateur |
|     ↳ `node_id` | string | ID de nœud GraphQL |
|     ↳ `avatar_url` | string | URL de l'image d'avatar |
|     ↳ `url` | string | URL de l'API |
|     ↳ `html_url` | string | URL de la page de profil |
|     ↳ `type` | string | Utilisateur ou organisation |
|     ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `id` | number | ID du jalon |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `number` | number | Numéro du jalon |
|   ↳ `title` | string | Titre du jalon |
|   ↳ `description` | string | Description du jalon |
|   ↳ `state` | string | État \(open ou closed\) |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL web GitHub |
|   ↳ `labels_url` | string | URL de l'API des étiquettes |
|   ↳ `due_on` | string | Date d'échéance \(ISO 8601\) |
|   ↳ `open_issues` | number | Nombre de problèmes ouverts |
|   ↳ `closed_issues` | number | Nombre de problèmes fermés |
|   ↳ `created_at` | string | Horodatage de création |
|   ↳ `updated_at` | string | Horodatage de dernière mise à jour |
|   ↳ `closed_at` | string | Horodatage de fermeture |
| `count` | number | Nombre de jalons retournés |

### `github_update_milestone`

Mettre à jour un jalon dans un dépôt

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `milestone_number` | number | Oui | Numéro du jalon à mettre à jour |
| `title` | string | Non | Nouveau titre du jalon |
| `state` | string | Non | Nouvel état : open ou closed |
| `description` | string | Non | Nouvelle description |
| `due_on` | string | Non | Nouvelle date d'échéance \(format ISO 8601\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `id` | number | ID du jalon |
| `node_id` | string | ID de nœud GraphQL |
| `number` | number | Numéro du jalon |
| `title` | string | Titre du jalon |
| `description` | string | Description du jalon |
| `state` | string | État \(open ou closed\) |
| `url` | string | URL de l'API |
| `html_url` | string | URL web GitHub |
| `labels_url` | string | URL de l'API des étiquettes |
| `due_on` | string | Date d'échéance \(ISO 8601\) |
| `open_issues` | number | Nombre de problèmes ouverts |
| `closed_issues` | number | Nombre de problèmes fermés |
| `created_at` | string | Horodatage de création |
| `updated_at` | string | Horodatage de dernière mise à jour |
| `closed_at` | string | Horodatage de fermeture |
| `creator` | object | Créateur du jalon |
|   ↳ `login` | string | Nom d'utilisateur |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | Utilisateur ou organisation |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |

### `github_delete_milestone`

Supprimer un jalon d'un dépôt

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `milestone_number` | number | Oui | Numéro du jalon à supprimer |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `deleted` | boolean | Si la suppression a réussi |
| `milestone_number` | number | Le numéro du jalon supprimé |

### `github_create_issue_reaction`

Ajouter une réaction à un problème

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro du problème |
| `content` | string | Oui | Type de réaction : +1 \(pouce levé\), -1 \(pouce baissé\), laugh, confused, heart, hooray, rocket, eyes |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `id` | number | ID de la réaction |
| `node_id` | string | ID de nœud GraphQL |
| `content` | string | Type de réaction \(+1, -1, laugh, confused, heart, hooray, rocket, eyes\) |
| `created_at` | string | Horodatage de création |
| `user` | object | Objet utilisateur GitHub |
|   ↳ `login` | string | Nom d'utilisateur GitHub |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `html_url` | string | URL du profil |
|   ↳ `type` | string | Type de compte \(User ou Organization\) |

### `github_delete_issue_reaction`

Supprimer une réaction d'un problème

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `issue_number` | number | Oui | Numéro du problème |
| `reaction_id` | number | Oui | ID de la réaction à supprimer |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `deleted` | boolean | Si la suppression a réussi |
| `reaction_id` | number | L'ID de la réaction supprimée |

### `github_create_comment_reaction`

Ajouter une réaction à un commentaire de problème

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `comment_id` | number | Oui | ID du commentaire |
| `content` | string | Oui | Type de réaction : +1 \(pouce levé\), -1 \(pouce baissé\), laugh, confused, heart, hooray, rocket, eyes |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `id` | number | ID de la réaction |
| `node_id` | string | ID de nœud GraphQL |
| `content` | string | Type de réaction \(+1, -1, laugh, confused, heart, hooray, rocket, eyes\) |
| `created_at` | string | Horodatage de création |
| `user` | object | Objet utilisateur GitHub |
|   ↳ `login` | string | Nom d'utilisateur GitHub |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `html_url` | string | URL du profil |
|   ↳ `type` | string | Type de compte \(User ou Organization\) |

### `github_delete_comment_reaction`

Supprimer une réaction d'un commentaire d'issue

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `comment_id` | number | Oui | ID du commentaire |
| `reaction_id` | number | Oui | ID de la réaction à supprimer |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `deleted` | boolean | Si la suppression a réussi |
| `reaction_id` | number | L'ID de la réaction supprimée |

### `github_star_repo`

Ajouter un dépôt aux favoris

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `starred` | boolean | Si l'ajout aux favoris a réussi |
| `owner` | string | Propriétaire du dépôt |
| `repo` | string | Nom du dépôt |

### `github_unstar_repo`

Retirer un dépôt des favoris

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `unstarred` | boolean | Si le retrait de l'étoile a réussi |
| `owner` | string | Propriétaire du dépôt |
| `repo` | string | Nom du dépôt |

### `github_check_star`

Vérifier si vous avez ajouté une étoile à un dépôt

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `starred` | boolean | Si vous avez ajouté une étoile au dépôt |
| `owner` | string | Propriétaire du dépôt |
| `repo` | string | Nom du dépôt |

### `github_list_stargazers`

Lister les utilisateurs qui ont ajouté une étoile à un dépôt

#### Entrée

| Paramètre | Type | Obligatoire | Description |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Oui | Propriétaire du dépôt |
| `repo` | string | Oui | Nom du dépôt |
| `per_page` | number | Non | Résultats par page \(max 100, par défaut : 30\) |
| `page` | number | Non | Numéro de page \(par défaut : 1\) |
| `apiKey` | string | Oui | Jeton d'API GitHub |

#### Sortie

| Paramètre | Type | Description |
| --------- | ---- | ----------- |
| `items` | array | Tableau d'objets utilisateur de l'API GitHub |
|   ↳ `login` | string | Nom d'utilisateur GitHub |
|   ↳ `id` | number | ID de l'utilisateur |
|   ↳ `node_id` | string | ID de nœud GraphQL |
|   ↳ `avatar_url` | string | URL de l'image d'avatar |
|   ↳ `url` | string | URL de l'API |
|   ↳ `html_url` | string | URL de la page de profil |
|   ↳ `type` | string | User ou Organization |
|   ↳ `site_admin` | boolean | Indicateur de personnel GitHub |
|   ↳ `gravatar_id` | string | ID Gravatar |
|   ↳ `followers_url` | string | URL de l'API des abonnés |
|   ↳ `following_url` | string | URL de l'API des abonnements |
|   ↳ `gists_url` | string | URL de l'API des gists |
|   ↳ `starred_url` | string | URL de l'API des étoiles |
|   ↳ `repos_url` | string | URL de l'API des dépôts |
| `count` | number | Nombre d'utilisateurs ayant ajouté une étoile retournés |
