---
title: GitHub
description: Interagiere mit GitHub oder löse Workflows durch GitHub-Events aus
---

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

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

{/* MANUAL-CONTENT-START:intro */}
[GitHub](https://github.com/) ist die weltweit führende Plattform für Softwareentwicklung und Versionskontrolle mit Git. Sie bietet eine kollaborative Umgebung, in der Entwickler Code hosten und überprüfen, Projekte verwalten und gemeinsam Software erstellen können.

Mit GitHub kannst du:

- **Repositories hosten**: Speichere deinen Code in öffentlichen oder privaten Repositories mit Versionskontrolle
- **An Code zusammenarbeiten**: Nutze Pull Requests, um Änderungen vorzuschlagen, Code zu überprüfen und Beiträge zusammenzuführen
- **Issues verfolgen**: Erstelle, weise zu und verwalte Issues, um Arbeit zu organisieren und Fehler zu verfolgen
- **Workflows automatisieren**: Nutze GitHub Actions, um Code automatisch zu erstellen, zu testen und bereitzustellen
- **Projekte verwalten**: Organisiere Arbeit mit Projektboards, Meilensteinen und Aufgabenverfolgung
- **Code dokumentieren**: Erstelle und pflege Dokumentation mit GitHub Pages und Wikis

In Sim ermöglicht die GitHub-Integration Ihren Agenten die direkte Interaktion mit GitHub-Repositories und -Workflows. Dies erlaubt leistungsstarke Automatisierungsszenarien wie Unterstützung bei Code-Reviews, Pull-Request-Management, Issue-Tracking und Repository-Exploration. Ihre Agenten können Repository-Daten abrufen, Code-Änderungen analysieren, Kommentare zu Pull Requests posten und andere GitHub-Operationen programmatisch durchführen. Diese Integration überbrückt die Lücke zwischen Ihren KI-Workflows und Ihren Entwicklungsprozessen und ermöglicht eine nahtlose Zusammenarbeit zwischen Ihren Agenten und Ihrem Entwicklungsteam.
{/* MANUAL-CONTENT-END */}

## Nutzungsanweisungen

Integrieren Sie Github in den Workflow. Kann PR-Details abrufen, PR-Kommentare erstellen, Repository-Informationen abrufen und den neuesten Commit anzeigen. Erfordert einen GitHub-Token-API-Schlüssel. Kann im Trigger-Modus verwendet werden, um einen Workflow auszulösen, wenn ein PR erstellt wird, kommentiert wird oder ein Commit gepusht wird.

## Tools

### `github_pr`

PR-Details einschließlich Diff und geänderte Dateien abrufen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `pullNumber` | number | Ja | Pull-Request-Nummer |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare PR-Zusammenfassung |
| `metadata` | object | Detaillierte PR-Metadaten einschließlich Dateiänderungen |

### `github_comment`

Kommentare zu GitHub PRs erstellen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `body` | string | Ja | Kommentarinhalt |
| `pullNumber` | number | Ja | Pull-Request-Nummer |
| `path` | string | Nein | Dateipfad für Review-Kommentar |
| `position` | number | Nein | Zeilennummer für Review-Kommentar |
| `commentType` | string | Nein | Kommentartyp \(pr_comment oder file_comment\) |
| `line` | number | Nein | Zeilennummer für Review-Kommentar |
| `side` | string | Nein | Seite des Diffs \(LEFT oder RIGHT\) |
| `commitId` | string | Nein | Der SHA des Commits, der kommentiert werden soll |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Kommentarbestätigung |
| `metadata` | object | Kommentar-Metadaten |

### `github_repo_info`

Ruft umfassende GitHub-Repository-Metadaten ab, einschließlich Sterne, Forks, Issues und Hauptsprache. Unterstützt sowohl öffentliche als auch private Repositories mit optionaler Authentifizierung.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Repository-Zusammenfassung |
| `metadata` | object | Repository-Metadaten |

### `github_latest_commit`

Ruft den neuesten Commit aus einem GitHub-Repository ab

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer (Benutzer oder Organisation) |
| `repo` | string | Ja | Repository-Name |
| `branch` | string | Nein | Branch-Name (standardmäßig der Standard-Branch des Repositories) |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Commit-Zusammenfassung |
| `metadata` | object | Commit-Metadaten |

### `github_issue_comment`

Einen Kommentar zu einem GitHub-Issue erstellen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `body` | string | Ja | Kommentarinhalt |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Kommentarbestätigung |
| `metadata` | object | Kommentar-Metadaten |

### `github_list_issue_comments`

Alle Kommentare zu einem GitHub-Issue auflisten

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `since` | string | Nein | Nur Kommentare anzeigen, die nach diesem ISO 8601-Zeitstempel aktualisiert wurden |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite \(max. 100\) |
| `page` | number | Nein | Seitennummer |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Kommentarzusammenfassung |
| `metadata` | object | Metadaten der Kommentarliste |

### `github_update_comment`

Aktualisieren eines vorhandenen Kommentars zu einem GitHub Issue oder Pull Request

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `comment_id` | number | Ja | Kommentar-ID |
| `body` | string | Ja | Aktualisierter Kommentarinhalt |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Aktualisierungsbestätigung |
| `metadata` | object | Metadaten des aktualisierten Kommentars |

### `github_delete_comment`

Löschen eines Kommentars zu einem GitHub Issue oder Pull Request

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `comment_id` | number | Ja | Kommentar-ID |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Löschbestätigung |
| `metadata` | object | Metadaten zum Löschergebnis |

### `github_list_pr_comments`

Alle Review-Kommentare zu einem GitHub Pull Request auflisten

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `pullNumber` | number | Ja | Pull-Request-Nummer |
| `sort` | string | Nein | Sortieren nach Erstellung oder Aktualisierung |
| `direction` | string | Nein | Sortierrichtung \(asc oder desc\) |
| `since` | string | Nein | Nur Kommentare anzeigen, die nach diesem ISO 8601-Zeitstempel aktualisiert wurden |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite \(max. 100\) |
| `page` | number | Nein | Seitennummer |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Zusammenfassung der Review-Kommentare |
| `metadata` | object | Metadaten der Review-Kommentarliste |

### `github_create_pr`

Einen neuen Pull Request in einem GitHub-Repository erstellen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `title` | string | Ja | Pull-Request-Titel |
| `head` | string | Ja | Der Name des Branches, in dem Ihre Änderungen implementiert sind |
| `base` | string | Ja | Der Name des Branches, in den die Änderungen übernommen werden sollen |
| `body` | string | Nein | Pull-Request-Beschreibung (Markdown) |
| `draft` | boolean | Nein | Als Entwurf-Pull-Request erstellen |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare PR-Erstellungsbestätigung |
| `metadata` | object | Pull-Request-Metadaten |

### `github_update_pr`

Einen bestehenden Pull Request in einem GitHub-Repository aktualisieren

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `pullNumber` | number | Ja | Pull-Request-Nummer |
| `title` | string | Nein | Neuer Pull-Request-Titel |
| `body` | string | Nein | Neue Pull-Request-Beschreibung (Markdown) |
| `state` | string | Nein | Neuer Status (open oder closed) |
| `base` | string | Nein | Neuer Base-Branch-Name |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare PR-Aktualisierungsbestätigung |
| `metadata` | object | Aktualisierte Pull-Request-Metadaten |

### `github_merge_pr`

Einen Pull-Request in einem GitHub-Repository zusammenführen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `pullNumber` | number | Ja | Pull-Request-Nummer |
| `commit_title` | string | Nein | Titel für den Merge-Commit |
| `commit_message` | string | Nein | Zusätzliche Details, die an die Merge-Commit-Nachricht angehängt werden |
| `merge_method` | string | Nein | Merge-Methode: merge, squash oder rebase |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Merge-Bestätigung |
| `metadata` | object | Merge-Ergebnis-Metadaten |

### `github_list_prs`

Pull-Requests in einem GitHub-Repository auflisten

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `state` | string | Nein | Nach Status filtern: open, closed oder all |
| `head` | string | Nein | Nach Head-Benutzer oder Branch-Namen filtern \(Format: user:ref-name oder organization:ref-name\) |
| `base` | string | Nein | Nach Base-Branch-Namen filtern |
| `sort` | string | Nein | Sortieren nach: created, updated, popularity oder long-running |
| `direction` | string | Nein | Sortierrichtung: asc oder desc |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100\) |
| `page` | number | Nein | Seitennummer |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Liste von Pull-Requests |
| `metadata` | object | Metadaten der Pull-Requests-Liste |

### `github_get_pr_files`

Liste der in einem Pull-Request geänderten Dateien abrufen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `pullNumber` | number | Ja | Pull-Request-Nummer |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100\) |
| `page` | number | Nein | Seitennummer |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Liste der im PR geänderten Dateien |
| `metadata` | object | Metadaten der PR-Dateien |

### `github_close_pr`

Einen Pull-Request in einem GitHub-Repository schließen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `pullNumber` | number | Ja | Pull-Request-Nummer |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare PR-Schließungsbestätigung |
| `metadata` | object | Metadaten des geschlossenen Pull-Requests |

### `github_request_reviewers`

Reviewer für einen Pull-Request anfordern

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `pullNumber` | number | Ja | Pull-Request-Nummer |
| `reviewers` | string | Ja | Kommagetrennte Liste von Benutzer-Logins, von denen Reviews angefordert werden sollen |
| `team_reviewers` | string | Nein | Kommagetrennte Liste von Team-Slugs, von denen Reviews angefordert werden sollen |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung der Reviewer-Anfrage |
| `metadata` | object | Metadaten der angeforderten Reviewer |

### `github_get_file_content`

Ruft den Inhalt einer Datei aus einem GitHub-Repository ab. Unterstützt Dateien bis zu 1MB. Der Inhalt wird dekodiert und menschenlesbar zurückgegeben.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `path` | string | Ja | Pfad zur Datei im Repository \(z.B. "src/index.ts"\) |
| `ref` | string | Nein | Branch-Name, Tag oder Commit-SHA \(standardmäßig der Standard-Branch des Repositories\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Dateiinformationen mit Inhaltsvorschau |
| `metadata` | object | Datei-Metadaten einschließlich Name, Pfad, SHA, Größe und URLs |

### `github_create_file`

Erstellt eine neue Datei in einem GitHub-Repository. Der Dateiinhalt wird automatisch Base64-kodiert. Unterstützt Dateien bis zu 1MB.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `path` | string | Ja | Pfad, unter dem die Datei erstellt wird \(z.B. "src/newfile.ts"\) |
| `message` | string | Ja | Commit-Nachricht für diese Dateierstellung |
| `content` | string | Ja | Dateiinhalt \(Klartext, wird automatisch Base64-kodiert\) |
| `branch` | string | Nein | Branch, in dem die Datei erstellt werden soll \(standardmäßig der Standard-Branch des Repositories\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung der Dateierstellung |
| `metadata` | object | Datei- und Commit-Metadaten |

### `github_update_file`

Aktualisiert eine bestehende Datei in einem GitHub-Repository. Erfordert den SHA-Wert der Datei. Der Inhalt wird automatisch Base64-kodiert. Unterstützt Dateien bis zu 1MB.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `path` | string | Ja | Pfad zur zu aktualisierenden Datei \(z.B. "src/index.ts"\) |
| `message` | string | Ja | Commit-Nachricht für diese Dateiaktualisierung |
| `content` | string | Ja | Neuer Dateiinhalt \(Klartext, wird automatisch Base64-kodiert\) |
| `sha` | string | Ja | Der Blob-SHA der zu ersetzenden Datei \(von github_get_file_content abrufen\) |
| `branch` | string | Nein | Branch, in dem die Datei aktualisiert werden soll \(standardmäßig der Standard-Branch des Repositories\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung der Dateiaktualisierung |
| `metadata` | object | Metadaten der aktualisierten Datei und des Commits |

### `github_delete_file`

Löscht eine Datei aus einem GitHub-Repository. Erfordert den Datei-SHA. Dieser Vorgang kann über die API nicht rückgängig gemacht werden.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `path` | string | Ja | Pfad zur zu löschenden Datei \(z.B. "src/oldfile.ts"\) |
| `message` | string | Ja | Commit-Nachricht für diese Dateilöschung |
| `sha` | string | Ja | Der Blob-SHA der zu löschenden Datei \(von github_get_file_content abrufen\) |
| `branch` | string | Nein | Branch, aus dem die Datei gelöscht werden soll \(standardmäßig der Standard-Branch des Repositories\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung der Dateilöschung |
| `metadata` | object | Löschbestätigung und Commit-Metadaten |

### `github_get_tree`

Ruft den Inhalt eines Verzeichnisses in einem GitHub-Repository ab. Gibt eine Liste von Dateien und Unterverzeichnissen zurück. Verwenden Sie einen leeren Pfad oder lassen Sie ihn weg, um den Inhalt des Stammverzeichnisses zu erhalten.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `path` | string | Nein | Verzeichnispfad \(z.B. "src/components"\). Leer lassen für das Stammverzeichnis. |
| `ref` | string | Nein | Branch-Name, Tag oder Commit-SHA \(standardmäßig der Standard-Branch des Repositories\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Verzeichnisstrukturliste |
| `metadata` | object | Metadaten zum Verzeichnisinhalt |

### `github_list_branches`

Listet alle Branches in einem GitHub-Repository auf. Optional nach Schutzstatus filtern und Paginierung steuern.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `protected` | boolean | Nein | Branches nach Schutzstatus filtern |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite \(max. 100, Standard 30\) |
| `page` | number | Nein | Seitennummer für Paginierung \(Standard 1\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Liste der Branches |
| `metadata` | object | Branch-Listen-Metadaten |

### `github_get_branch`

Erhalte detaillierte Informationen über einen bestimmten Branch in einem GitHub-Repository, einschließlich Commit-Details und Schutzstatus.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `branch` | string | Ja | Branch-Name |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Branch-Details |
| `metadata` | object | Branch-Metadaten |

### `github_create_branch`

Erstelle einen neuen Branch in einem GitHub-Repository, indem du eine Git-Referenz erstellst, die auf einen bestimmten Commit-SHA zeigt.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `branch` | string | Ja | Name des zu erstellenden Branches |
| `sha` | string | Ja | Commit-SHA, auf den der Branch zeigen soll |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung der Branch-Erstellung |
| `metadata` | object | Git-Referenz-Metadaten |

### `github_delete_branch`

Löscht einen Branch aus einem GitHub-Repository durch Entfernen seiner Git-Referenz. Geschützte Branches können nicht gelöscht werden.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `branch` | string | Ja | Name des zu löschenden Branches |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Löschbestätigung |
| `metadata` | object | Lösch-Metadaten |

### `github_get_branch_protection`

Ruft die Branch-Schutzregeln für einen bestimmten Branch ab, einschließlich Statusprüfungen, Review-Anforderungen und Einschränkungen.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `branch` | string | Ja | Branch-Name |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Zusammenfassung des Branch-Schutzes |
| `metadata` | object | Branch-Schutz-Konfiguration |

### `github_update_branch_protection`

Aktualisieren Sie Branch-Schutzregeln für einen bestimmten Branch, einschließlich Status-Checks, Review-Anforderungen, Administrator-Durchsetzung und Push-Einschränkungen.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `branch` | string | Ja | Branch-Name |
| `required_status_checks` | object | Ja | Konfiguration für erforderliche Status-Checks \(null zum Deaktivieren\). Objekt mit strict \(boolean\) und contexts \(String-Array\) |
| `enforce_admins` | boolean | Ja | Ob Einschränkungen für Administratoren durchgesetzt werden sollen |
| `required_pull_request_reviews` | object | Ja | PR-Review-Anforderungen \(null zum Deaktivieren\). Objekt mit optionalen required_approving_review_count, dismiss_stale_reviews, require_code_owner_reviews |
| `restrictions` | object | Ja | Push-Einschränkungen \(null zum Deaktivieren\). Objekt mit users \(String-Array\) und teams \(String-Array\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Zusammenfassung der Branch-Schutz-Aktualisierung |
| `metadata` | object | Aktualisierte Branch-Schutz-Konfiguration |

### `github_create_issue`

Erstellen Sie ein neues Issue in einem GitHub-Repository

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `title` | string | Ja | Issue-Titel |
| `body` | string | Nein | Issue-Beschreibung/Inhalt |
| `assignees` | string | Nein | Kommagetrennte Liste von Benutzernamen, die diesem Issue zugewiesen werden sollen |
| `labels` | string | Nein | Kommagetrennte Liste von Label-Namen, die diesem Issue hinzugefügt werden sollen |
| `milestone` | number | Nein | Meilenstein-Nummer, die mit diesem Issue verknüpft werden soll |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung der Issue-Erstellung |
| `metadata` | object | Issue-Metadaten |

### `github_update_issue`

Aktualisieren eines vorhandenen Issues in einem GitHub-Repository

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `title` | string | Nein | Neuer Issue-Titel |
| `body` | string | Nein | Neue Issue-Beschreibung/Inhalt |
| `state` | string | Nein | Issue-Status \(open oder closed\) |
| `labels` | array | Nein | Array von Label-Namen \(ersetzt alle vorhandenen Labels\) |
| `assignees` | array | Nein | Array von Benutzernamen \(ersetzt alle vorhandenen Zuweisungen\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung der Issue-Aktualisierung |
| `metadata` | object | Aktualisierte Issue-Metadaten |

### `github_list_issues`

Auflisten von Issues in einem GitHub-Repository. Hinweis: Dies schließt Pull Requests ein, da PRs in GitHub als Issues betrachtet werden

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `state` | string | Nein | Filtern nach Status: open, closed oder all \(Standard: open\) |
| `assignee` | string | Nein | Filtern nach zugewiesenem Benutzernamen |
| `creator` | string | Nein | Filtern nach Ersteller-Benutzernamen |
| `labels` | string | Nein | Kommagetrennte Liste von Label-Namen zum Filtern |
| `sort` | string | Nein | Sortieren nach: created, updated oder comments \(Standard: created\) |
| `direction` | string | Nein | Sortierrichtung: asc oder desc \(Standard: desc\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Liste von Issues |
| `metadata` | object | Metadaten der Issues-Liste |

### `github_get_issue`

Detaillierte Informationen über ein bestimmtes Issue in einem GitHub-Repository abrufen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Issue-Details |
| `metadata` | object | Detaillierte Issue-Metadaten |

### `github_close_issue`

Ein Issue in einem GitHub-Repository schließen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `state_reason` | string | Nein | Grund für das Schließen: completed oder not_planned |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung des Issue-Schließens |
| `metadata` | object | Metadaten des geschlossenen Issues |

### `github_add_labels`

Labels zu einem Issue in einem GitHub-Repository hinzufügen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `labels` | string | Ja | Kommagetrennte Liste von Label-Namen, die dem Issue hinzugefügt werden sollen |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Label-Bestätigung |
| `metadata` | object | Label-Metadaten |

### `github_remove_label`

Ein Label von einem Issue in einem GitHub-Repository entfernen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `name` | string | Ja | Label-Name, der entfernt werden soll |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung der Label-Entfernung |
| `metadata` | object | Metadaten der verbleibenden Labels |

### `github_add_assignees`

Bearbeiter zu einem Issue in einem GitHub-Repository hinzufügen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `assignees` | string | Ja | Kommagetrennte Liste von Benutzernamen, die dem Issue zugewiesen werden sollen |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigung der Zuweisungen |
| `metadata` | object | Aktualisierte Issue-Metadaten mit Zuweisungen |

### `github_create_release`

Erstellt ein neues Release für ein GitHub-Repository. Geben Sie Tag-Namen, Ziel-Commit, Titel, Beschreibung und an, ob es ein Entwurf oder Vorabversion sein soll.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `tag_name` | string | Ja | Der Name des Tags für dieses Release |
| `target_commitish` | string | Nein | Gibt den Commitish-Wert an, der bestimmt, von wo aus der Git-Tag erstellt wird. Kann ein beliebiger Branch oder Commit-SHA sein. Standardmäßig der Standard-Branch des Repositories. |
| `name` | string | Nein | Der Name des Releases |
| `body` | string | Nein | Text, der den Inhalt des Releases beschreibt \(Markdown unterstützt\) |
| `draft` | boolean | Nein | true, um einen Entwurf \(unveröffentlicht\) zu erstellen, false für ein veröffentlichtes Release |
| `prerelease` | boolean | Nein | true, um das Release als Vorabversion zu kennzeichnen, false für ein vollständiges Release |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Zusammenfassung der Release-Erstellung |
| `metadata` | object | Release-Metadaten einschließlich Download-URLs |

### `github_update_release`

Aktualisieren eines bestehenden GitHub-Releases. Ändern von Tag-Name, Ziel-Commit, Titel, Beschreibung, Entwurfsstatus oder Vorabveröffentlichungsstatus.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `release_id` | number | Ja | Die eindeutige Kennung des Releases |
| `tag_name` | string | Nein | Der Name des Tags |
| `target_commitish` | string | Nein | Gibt den Commitish-Wert an, von dem aus der Tag erstellt wird |
| `name` | string | Nein | Der Name des Releases |
| `body` | string | Nein | Text, der den Inhalt des Releases beschreibt \(Markdown unterstützt\) |
| `draft` | boolean | Nein | true, um als Entwurf zu setzen, false zum Veröffentlichen |
| `prerelease` | boolean | Nein | true, um als Vorabversion zu kennzeichnen, false für eine vollständige Version |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Zusammenfassung der Release-Aktualisierung |
| `metadata` | object | Aktualisierte Release-Metadaten einschließlich Download-URLs |

### `github_list_releases`

Listet alle Releases eines GitHub-Repositories auf. Gibt Release-Informationen einschließlich Tags, Namen und Download-URLs zurück.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite \(max. 100\) |
| `page` | number | Nein | Seitennummer der abzurufenden Ergebnisse |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Liste der Releases mit Zusammenfassung |
| `metadata` | object | Release-Metadaten |

### `github_get_release`

Ruft detaillierte Informationen über einen bestimmten GitHub-Release anhand der ID ab. Gibt Release-Metadaten einschließlich Assets und Download-URLs zurück.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `release_id` | number | Ja | Die eindeutige Kennung des Releases |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Release-Details |
| `metadata` | object | Release-Metadaten einschließlich Download-URLs |

### `github_delete_release`

Löscht einen GitHub-Release anhand seiner ID. Dies entfernt den Release dauerhaft, löscht jedoch nicht den zugehörigen Git-Tag.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `release_id` | number | Ja | Die eindeutige Kennung des zu löschenden Releases |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Löschbestätigung |
| `metadata` | object | Metadaten zum Löschergebnis |

### `github_list_workflows`

Listet alle Workflows in einem GitHub-Repository auf. Gibt Workflow-Details zurück, einschließlich ID, Name, Pfad, Status und Badge-URL.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite \(Standard: 30, max: 100\) |
| `page` | number | Nein | Seitennummer der abzurufenden Ergebnisse \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Workflow-Zusammenfassung |
| `metadata` | object | Workflow-Metadaten |

### `github_get_workflow`

Ruft Details eines bestimmten GitHub Actions Workflows anhand der ID oder des Dateinamens ab. Gibt Workflow-Informationen zurück, einschließlich Name, Pfad, Status und Badge-URL.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer (Benutzer oder Organisation) |
| `repo` | string | Ja | Repository-Name |
| `workflow_id` | string | Ja | Workflow-ID (Nummer) oder Workflow-Dateiname (z.B. "main.yaml") |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Workflow-Details |
| `metadata` | object | Workflow-Metadaten |

### `github_trigger_workflow`

Löst ein Workflow-Dispatch-Ereignis für einen GitHub Actions Workflow aus. Der Workflow muss einen workflow_dispatch-Trigger konfiguriert haben. Gibt bei Erfolg 204 No Content zurück.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer (Benutzer oder Organisation) |
| `repo` | string | Ja | Repository-Name |
| `workflow_id` | string | Ja | Workflow-ID (Nummer) oder Workflow-Dateiname (z.B. "main.yaml") |
| `ref` | string | Ja | Git-Referenz (Branch- oder Tag-Name), auf der der Workflow ausgeführt werden soll |
| `inputs` | object | Nein | Eingabeschlüssel und -werte, die in der Workflow-Datei konfiguriert sind |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Bestätigungsnachricht |
| `metadata` | object | Leeres Metadatenobjekt \(204 No Content-Antwort\) |

### `github_list_workflow_runs`

Listet Workflow-Ausführungen für ein Repository auf. Unterstützt Filterung nach Akteur, Branch, Ereignis und Status. Gibt Ausführungsdetails zurück, einschließlich Status, Ergebnis und Links.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `actor` | string | Nein | Filtern nach Benutzer, der den Workflow ausgelöst hat |
| `branch` | string | Nein | Filtern nach Branch-Name |
| `event` | string | Nein | Filtern nach Ereignistyp \(z.B. push, pull_request, workflow_dispatch\) |
| `status` | string | Nein | Filtern nach Status \(queued, in_progress, completed, waiting, requested, pending\) |
| `per_page` | number | Nein | Anzahl der Ergebnisse pro Seite \(Standard: 30, max: 100\) |
| `page` | number | Nein | Seitennummer der abzurufenden Ergebnisse \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Zusammenfassung der Workflow-Ausführungen |
| `metadata` | object | Metadaten der Workflow-Ausführungen |

### `github_get_workflow_run`

Ruft detaillierte Informationen über eine bestimmte Workflow-Ausführung anhand der ID ab. Gibt Status, Ergebnis, Zeitplanung und Links zur Ausführung zurück.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `run_id` | number | Ja | Workflow-Run-ID |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Workflow-Run-Details |
| `metadata` | object | Workflow-Run-Metadaten |

### `github_cancel_workflow_run`

Bricht einen Workflow-Run ab. Gibt 202 Accepted zurück, wenn der Abbruch eingeleitet wurde, oder 409 Conflict, wenn der Run nicht abgebrochen werden kann (bereits abgeschlossen).

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `run_id` | number | Ja | Abzubrechende Workflow-Run-ID |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Statusmeldung zum Abbruch |
| `metadata` | object | Abbruch-Metadaten |

### `github_rerun_workflow`

Führt einen Workflow-Run erneut aus. Optional kann Debug-Logging für den erneuten Durchlauf aktiviert werden. Gibt bei Erfolg 201 Created zurück.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer \(Benutzer oder Organisation\) |
| `repo` | string | Ja | Repository-Name |
| `run_id` | number | Ja | Workflow-Run-ID für erneute Ausführung |
| `enable_debug_logging` | boolean | Nein | Debug-Logging für die erneute Ausführung aktivieren \(Standard: false\) |
| `apiKey` | string | Ja | GitHub Personal Access Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Bestätigungsnachricht für erneute Ausführung |
| `metadata` | object | Metadaten zur erneuten Ausführung |

### `github_list_projects`

Liste der GitHub Projects V2 für eine Organisation oder einen Benutzer. Gibt bis zu 20 Projekte mit ihren Details zurück, einschließlich ID, Titel, Nummer, URL und Status.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner_type` | string | Ja | Besitzertyp: "org" für Organisation oder "user" für Benutzer |
| `owner_login` | string | Ja | Login-Name der Organisation oder des Benutzers |
| `apiKey` | string | Ja | GitHub Personal Access Token mit Projekt-Leseberechtigungen |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Liste der Projekte |
| `metadata` | object | Projekt-Metadaten |

### `github_get_project`

Erhalte detaillierte Informationen über ein bestimmtes GitHub Project V2 anhand seiner Nummer. Gibt Projektdetails zurück, einschließlich ID, Titel, Beschreibung, URL und Status.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner_type` | string | Ja | Besitzertyp: "org" für Organisation oder "user" für Benutzer |
| `owner_login` | string | Ja | Login-Name der Organisation oder des Benutzers |
| `project_number` | number | Ja | Projektnummer |
| `apiKey` | string | Ja | GitHub Personal Access Token mit Projekt-Leseberechtigungen |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Projektdetails |
| `metadata` | object | Projekt-Metadaten |

### `github_create_project`

Erstellt ein neues GitHub Project V2. Erfordert die Node-ID des Besitzers (nicht den Login-Namen). Gibt das erstellte Projekt mit ID, Titel und URL zurück.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner_id` | string | Ja | Node-ID des Besitzers \(Format: PVT_... oder MDQ6...\). Verwenden Sie die GitHub GraphQL API, um diese ID von einer Organisation oder einem Benutzer-Login zu erhalten. |
| `title` | string | Ja | Projekttitel |
| `apiKey` | string | Ja | GitHub Personal Access Token mit Projekt-Schreibberechtigungen |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigungsnachricht |
| `metadata` | object | Metadaten des erstellten Projekts |

### `github_update_project`

Aktualisiert ein bestehendes GitHub Project V2. Kann Titel, Beschreibung, Sichtbarkeit (öffentlich) oder Status (geschlossen) aktualisieren. Erfordert die Projekt-Node-ID.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `project_id` | string | Ja | Projekt-Node-ID \(Format: PVT_...\) |
| `title` | string | Nein | Neuer Projekttitel |
| `shortDescription` | string | Nein | Neue Kurzbeschreibung des Projekts |
| `project_public` | boolean | Nein | Projektsichtbarkeit festlegen \(true = öffentlich, false = privat\) |
| `closed` | boolean | Nein | Projektstatus festlegen \(true = geschlossen, false = offen\) |
| `apiKey` | string | Ja | GitHub Personal Access Token mit Projekt-Schreibberechtigungen |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigungsnachricht |
| `metadata` | object | Aktualisierte Projekt-Metadaten |

### `github_delete_project`

Löscht ein GitHub Project V2. Diese Aktion ist permanent und kann nicht rückgängig gemacht werden. Erfordert die Projekt-Node-ID.

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `project_id` | string | Ja | Projekt-Node-ID (Format: PVT_...) |
| `apiKey` | string | Ja | GitHub Personal Access Token mit Projekt-Administratorberechtigungen |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `content` | string | Menschenlesbare Bestätigungsnachricht |
| `metadata` | object | Metadaten des gelöschten Projekts |

## Hinweise

- Kategorie: `tools`
- Typ: `github`

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `q` | string | Ja | Suchanfrage mit optionalen Qualifizierern \(repo:, language:, path:, extension:, user:, org:\) |
| `sort` | string | Nein | Sortieren nach Indexierungsdatum \(Standard: beste Übereinstimmung\) |
| `order` | string | Nein | Sortierreihenfolge: asc oder desc \(Standard: desc\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `total_count` | number | Gesamtzahl übereinstimmender Ergebnisse |
| `incomplete_results` | boolean | Ob Ergebnisse unvollständig sind |
| `items` | array | Array von Code-Übereinstimmungen aus der GitHub-API |
|   ↳ `name` | string | Dateiname |
|   ↳ `path` | string | Dateipfad |
|   ↳ `sha` | string | Blob-SHA |
|   ↳ `url` | string | API-URL |
|   ↳ `git_url` | string | Git-Blob-URL |
|   ↳ `html_url` | string | GitHub-Web-URL |
|   ↳ `score` | number | Such-Relevanz-Score |
|   ↳ `repository` | object | Repository, das den Code enthält |
|     ↳ `id` | number | Repository-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `name` | string | Repository-Name |
|     ↳ `full_name` | string | Vollständiger Name \(Besitzer/Repo\) |
|     ↳ `private` | boolean | Ob Repository privat ist |
|     ↳ `html_url` | string | GitHub-Web-URL |
|     ↳ `description` | string | Repository-Beschreibung |
|     ↳ `fork` | boolean | Ob dies ein Fork ist |
|     ↳ `url` | string | API-URL |
|     ↳ `owner` | object | Repository-Besitzer |
|       ↳ `login` | string | Benutzername |
|       ↳ `id` | number | Benutzer-ID |
|       ↳ `node_id` | string | GraphQL-Node-ID |
|       ↳ `avatar_url` | string | Avatar-Bild-URL |
|       ↳ `url` | string | API-URL |
|       ↳ `html_url` | string | Profilseiten-URL |
|       ↳ `type` | string | Benutzer oder Organisation |
|       ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `text_matches` | array | Textübereinstimmungen mit Kontext |
|     ↳ `object_url` | string | Objekt-URL |
|     ↳ `object_type` | string | Objekttyp |
|     ↳ `property` | string | Übereinstimmende Eigenschaft |
|     ↳ `fragment` | string | Textfragment mit Übereinstimmung |
|     ↳ `matches` | array | Übereinstimmungsindizes |
|       ↳ `text` | string | Übereinstimmender Text |
|       ↳ `indices` | array | Start- und Endindizes |

### `github_search_commits`

Suche nach Commits auf GitHub. Verwenden Sie Qualifizierer wie repo:owner/name, author:user, committer:user, author-date:>2023-01-01

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `q` | string | Ja | Suchanfrage mit optionalen Qualifizierern \(repo:, author:, committer:, author-date:, committer-date:, merge:true/false\) |
| `sort` | string | Nein | Sortieren nach: author-date oder committer-date \(Standard: beste Übereinstimmung\) |
| `order` | string | Nein | Sortierreihenfolge: asc oder desc \(Standard: desc\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `total_count` | number | Gesamtzahl übereinstimmender Ergebnisse |
| `incomplete_results` | boolean | Ob Ergebnisse unvollständig sind |
| `items` | array | Array von Commit-Objekten aus der GitHub-API |
|   ↳ `sha` | string | Commit-SHA |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `html_url` | string | Web-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `comments_url` | string | Kommentar-API-URL |
|   ↳ `score` | number | Such-Relevanz-Score |
|   ↳ `commit` | object | Kern-Commit-Daten |
|     ↳ `url` | string | Commit-API-URL |
|     ↳ `message` | string | Commit-Nachricht |
|     ↳ `comment_count` | number | Anzahl der Kommentare |
|     ↳ `author` | object | Git-Autor |
|       ↳ `name` | string | Autorenname |
|       ↳ `email` | string | Autoren-E-Mail |
|       ↳ `date` | string | Autorendatum \(ISO 8601\) |
|     ↳ `committer` | object | Git-Committer |
|       ↳ `name` | string | Committer-Name |
|       ↳ `email` | string | Committer-E-Mail |
|       ↳ `date` | string | Commit-Datum \(ISO 8601\) |
|     ↳ `tree` | object | Tree-Objekt |
|       ↳ `sha` | string | Tree-SHA |
|       ↳ `url` | string | Tree-API-URL |
|   ↳ `author` | object | GitHub-Benutzer \(Autor\) |
|     ↳ `login` | string | Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profil-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `committer` | object | GitHub-Benutzer \(Committer\) |
|     ↳ `login` | string | Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profil-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `repository` | object | Repository, das den Commit enthält |
|     ↳ `id` | number | Repository-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `name` | string | Repository-Name |
|     ↳ `full_name` | string | Vollständiger Name \(owner/repo\) |
|     ↳ `private` | boolean | Ob das Repository privat ist |
|     ↳ `html_url` | string | GitHub-Web-URL |
|     ↳ `description` | string | Repository-Beschreibung |
|     ↳ `owner` | object | Repository-Besitzer |
|       ↳ `login` | string | Benutzername |
|       ↳ `id` | number | Benutzer-ID |
|       ↳ `node_id` | string | GraphQL-Node-ID |
|       ↳ `avatar_url` | string | Avatar-Bild-URL |
|       ↳ `url` | string | API-URL |
|       ↳ `html_url` | string | Profilseiten-URL |
|       ↳ `type` | string | Benutzer oder Organisation |
|       ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `parents` | array | Eltern-Commits |
|     ↳ `sha` | string | Eltern-SHA |
|     ↳ `url` | string | Eltern-API-URL |
|     ↳ `html_url` | string | Eltern-Web-URL |

### `github_search_issues`

Suchen Sie nach Issues und Pull-Requests auf GitHub. Verwenden Sie Qualifizierer wie repo:owner/name, is:issue, is:pr, state:open, label:bug, author:user

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `q` | string | Ja | Suchanfrage mit optionalen Qualifizierern \(repo:, is:issue, is:pr, state:, label:, author:, assignee:\) |
| `sort` | string | Nein | Sortieren nach: comments, reactions, created, updated, interactions \(Standard: beste Übereinstimmung\) |
| `order` | string | Nein | Sortierreihenfolge: asc oder desc \(Standard: desc\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `total_count` | number | Gesamtzahl übereinstimmender Ergebnisse |
| `incomplete_results` | boolean | Ob die Ergebnisse unvollständig sind |
| `items` | array | Array von Issue-/PR-Objekten aus der GitHub-API |
|   ↳ `id` | number | Issue-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `number` | number | Issue-Nummer |
|   ↳ `title` | string | Titel |
|   ↳ `state` | string | Status \(open oder closed\) |
|   ↳ `locked` | boolean | Ob das Issue gesperrt ist |
|   ↳ `html_url` | string | Web-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `repository_url` | string | Repository-API-URL |
|   ↳ `comments_url` | string | Kommentar-API-URL |
|   ↳ `body` | string | Inhalt |
|   ↳ `comments` | number | Anzahl der Kommentare |
|   ↳ `score` | number | Such-Relevanz-Score |
|   ↳ `created_at` | string | Erstellungszeitstempel |
|   ↳ `updated_at` | string | Letzter Aktualisierungszeitstempel |
|   ↳ `closed_at` | string | Schließungszeitstempel |
|   ↳ `user` | object | Issue-Autor |
|     ↳ `login` | string | Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `labels` | array | Issue-Labels |
|     ↳ `id` | number | Label-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `url` | string | API-URL |
|     ↳ `name` | string | Label-Name |
|     ↳ `description` | string | Label-Beschreibung |
|     ↳ `color` | string | Hex-Farbcode |
|     ↳ `default` | boolean | Ob dies ein Standard-Label ist |
|   ↳ `assignee` | object | Hauptverantwortlicher |
|     ↳ `login` | string | Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `assignees` | array | Alle Verantwortlichen |
|     ↳ `login` | string | Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `milestone` | object | Zugehöriger Meilenstein |
|     ↳ `id` | number | Meilenstein-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `number` | number | Meilenstein-Nummer |
|     ↳ `title` | string | Meilenstein-Titel |
|     ↳ `description` | string | Meilenstein-Beschreibung |
|     ↳ `state` | string | Status \(open oder closed\) |
|     ↳ `html_url` | string | Web-URL |
|     ↳ `due_on` | string | Fälligkeitsdatum |
|   ↳ `pull_request` | object | Pull-Request-Details \(falls dies ein PR ist\) |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Web-URL |
|     ↳ `diff_url` | string | Diff-URL |
|     ↳ `patch_url` | string | Patch-URL |

### `github_search_repos`

Suchen Sie nach Repositories auf GitHub. Verwenden Sie Qualifizierer wie language:python, stars:>1000, topic:react, user:owner, org:name

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `q` | string | Ja | Suchanfrage mit optionalen Qualifizierern \(language:, stars:, forks:, topic:, user:, org:, in:name,description,readme\) |
| `sort` | string | Nein | Sortieren nach: stars, forks, help-wanted-issues, updated \(Standard: beste Übereinstimmung\) |
| `order` | string | Nein | Sortierreihenfolge: asc oder desc \(Standard: desc\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `total_count` | number | Gesamtzahl übereinstimmender Ergebnisse |
| `incomplete_results` | boolean | Ob die Ergebnisse unvollständig sind |
| `items` | array | Array von Repository-Objekten aus der GitHub-API |
|   ↳ `id` | number | Repository-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `name` | string | Repository-Name |
|   ↳ `full_name` | string | Vollständiger Name \(owner/repo\) |
|   ↳ `private` | boolean | Ob das Repository privat ist |
|   ↳ `description` | string | Repository-Beschreibung |
|   ↳ `html_url` | string | GitHub-Web-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `fork` | boolean | Ob dies ein Fork ist |
|   ↳ `created_at` | string | Erstellungszeitstempel |
|   ↳ `updated_at` | string | Zeitstempel der letzten Aktualisierung |
|   ↳ `pushed_at` | string | Zeitstempel des letzten Pushs |
|   ↳ `size` | number | Repository-Größe in KB |
|   ↳ `stargazers_count` | number | Anzahl der Sterne |
|   ↳ `watchers_count` | number | Anzahl der Beobachter |
|   ↳ `forks_count` | number | Anzahl der Forks |
|   ↳ `open_issues_count` | number | Anzahl offener Issues |
|   ↳ `language` | string | Primäre Programmiersprache |
|   ↳ `default_branch` | string | Standard-Branch-Name |
|   ↳ `visibility` | string | Repository-Sichtbarkeit |
|   ↳ `archived` | boolean | Ob das Repository archiviert ist |
|   ↳ `disabled` | boolean | Ob das Repository deaktiviert ist |
|   ↳ `score` | number | Such-Relevanz-Score |
|   ↳ `topics` | array | Repository-Themen |
|   ↳ `license` | object | Lizenzinformationen |
|     ↳ `key` | string | Lizenzschlüssel \(z.B. mit\) |
|     ↳ `name` | string | Lizenzname |
|     ↳ `spdx_id` | string | SPDX-Kennung |
|   ↳ `owner` | object | Repository-Besitzer |
|     ↳ `login` | string | GitHub-Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |

### `github_search_users`

Suchen Sie nach Benutzern und Organisationen auf GitHub. Verwenden Sie Qualifizierer wie type:user, type:org, followers:>1000, repos:>10, location:city

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `q` | string | Ja | Suchanfrage mit optionalen Qualifizierern \(type:user/org, followers:, repos:, location:, language:, created:\) |
| `sort` | string | Nein | Sortieren nach: followers, repositories, joined \(Standard: beste Übereinstimmung\) |
| `order` | string | Nein | Sortierreihenfolge: asc oder desc \(Standard: desc\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `total_count` | number | Gesamtzahl übereinstimmender Ergebnisse |
| `incomplete_results` | boolean | Ob die Ergebnisse unvollständig sind |
| `items` | array | Array von Benutzerobjekten aus der GitHub-API |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `login` | string | Benutzername |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `gravatar_id` | string | Gravatar-ID |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `followers_url` | string | Followers-API-URL |
|   ↳ `following_url` | string | Following-API-URL |
|   ↳ `gists_url` | string | Gists-API-URL |
|   ↳ `starred_url` | string | Starred-API-URL |
|   ↳ `repos_url` | string | Repos-API-URL |
|   ↳ `organizations_url` | string | Organizations-API-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `score` | number | Suchrelevanz-Score |

### `github_list_commits`

Listet Commits in einem Repository mit optionaler Filterung nach SHA, Pfad, Autor, Committer oder Datumsbereich auf

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `sha` | string | Nein | SHA oder Branch, ab dem Commits aufgelistet werden sollen |
| `path` | string | Nein | Nur Commits, die diesen Dateipfad enthalten |
| `author` | string | Nein | GitHub-Login oder E-Mail-Adresse zum Filtern nach Autor |
| `committer` | string | Nein | GitHub-Login oder E-Mail-Adresse zum Filtern nach Committer |
| `since` | string | Nein | Nur Commits nach diesem Datum \(ISO 8601-Format\) |
| `until` | string | Nein | Nur Commits vor diesem Datum \(ISO 8601-Format\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `items` | array | Array von Commit-Objekten aus der GitHub-API |
|   ↳ `commit` | object | Kern-Commit-Daten |
|     ↳ `url` | string | Commit-API-URL |
|     ↳ `message` | string | Commit-Nachricht |
|     ↳ `comment_count` | number | Anzahl der Kommentare |
|     ↳ `author` | object | Git-Akteur \(Autor/Committer\) |
|       ↳ `name` | string | Name |
|       ↳ `email` | string | E-Mail-Adresse |
|       ↳ `date` | string | Zeitstempel \(ISO 8601\) |
|     ↳ `committer` | object | Git-Akteur \(Autor/Committer\) |
|       ↳ `name` | string | Name |
|       ↳ `email` | string | E-Mail-Adresse |
|       ↳ `date` | string | Zeitstempel \(ISO 8601\) |
|     ↳ `tree` | object | Tree-Objekt |
|       ↳ `sha` | string | Tree-SHA |
|       ↳ `url` | string | Tree-API-URL |
|     ↳ `verification` | object | Signaturverifizierung |
|       ↳ `verified` | boolean | Ob die Signatur verifiziert ist |
|       ↳ `reason` | string | Verifizierungsgrund |
|       ↳ `signature` | string | GPG-Signatur |
|       ↳ `payload` | string | Signierte Payload |
|   ↳ `author` | object | GitHub-Benutzerobjekt |
|     ↳ `login` | string | GitHub-Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `committer` | object | GitHub-Benutzerobjekt |
|     ↳ `login` | string | GitHub-Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `sha` | string | Commit-SHA |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `html_url` | string | GitHub-Web-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `comments_url` | string | Kommentare-API-URL |
|   ↳ `parents` | array | Eltern-Commits |
|     ↳ `sha` | string | Eltern-SHA |
|     ↳ `url` | string | Eltern-API-URL |
|     ↳ `html_url` | string | Eltern-Web-URL |
| `count` | number | Anzahl der zurückgegebenen Commits |

### `github_get_commit`

Detaillierte Informationen über einen bestimmten Commit abrufen, einschließlich geänderter Dateien und Statistiken

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `ref` | string | Ja | Commit-SHA, Branch-Name oder Tag-Name |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `commit` | object | Kern-Commit-Daten |
|   ↳ `url` | string | Commit-API-URL |
|   ↳ `message` | string | Commit-Nachricht |
|   ↳ `comment_count` | number | Anzahl der Kommentare |
|   ↳ `author` | object | Git-Akteur \(Autor/Committer\) |
|     ↳ `name` | string | Name |
|     ↳ `email` | string | E-Mail-Adresse |
|     ↳ `date` | string | Zeitstempel \(ISO 8601\) |
|   ↳ `committer` | object | Git-Akteur \(Autor/Committer\) |
|     ↳ `name` | string | Name |
|     ↳ `email` | string | E-Mail-Adresse |
|     ↳ `date` | string | Zeitstempel \(ISO 8601\) |
|   ↳ `tree` | object | Tree-Objekt |
|     ↳ `sha` | string | Tree-SHA |
|     ↳ `url` | string | Tree-API-URL |
|   ↳ `verification` | object | Signaturverifizierung |
|     ↳ `verified` | boolean | Ob die Signatur verifiziert ist |
|     ↳ `reason` | string | Verifizierungsgrund |
|     ↳ `signature` | string | GPG-Signatur |
|     ↳ `payload` | string | Signierte Payload |
| `author` | object | GitHub-Benutzerobjekt |
|   ↳ `login` | string | GitHub-Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
| `committer` | object | GitHub-Benutzerobjekt |
|   ↳ `login` | string | GitHub-Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
| `stats` | object | Änderungsstatistiken |
|   ↳ `additions` | number | Hinzugefügte Zeilen |
|   ↳ `deletions` | number | Gelöschte Zeilen |
|   ↳ `total` | number | Gesamtänderungen |
| `sha` | string | Commit-SHA |
| `node_id` | string | GraphQL-Node-ID |
| `html_url` | string | GitHub-Web-URL |
| `url` | string | API-URL |
| `comments_url` | string | Kommentar-API-URL |
| `files` | array | Geänderte Dateien \(Diff-Einträge\) |
|   ↳ `sha` | string | Blob-SHA |
|   ↳ `filename` | string | Dateipfad |
|   ↳ `status` | string | Änderungsstatus \(added, removed, modified, renamed, copied, changed, unchanged\) |
|   ↳ `additions` | number | Hinzugefügte Zeilen |
|   ↳ `deletions` | number | Gelöschte Zeilen |
|   ↳ `changes` | number | Gesamtänderungen |
|   ↳ `blob_url` | string | Blob-URL |
|   ↳ `raw_url` | string | Raw-Datei-URL |
|   ↳ `contents_url` | string | Contents-API-URL |
|   ↳ `patch` | string | Diff-Patch |
|   ↳ `previous_filename` | string | Vorheriger Dateiname \(bei Umbenennungen\) |
| `parents` | array | Eltern-Commits |
|   ↳ `sha` | string | Eltern-SHA |
|   ↳ `url` | string | Eltern-API-URL |
|   ↳ `html_url` | string | Eltern-Web-URL |

### `github_compare_commits`

Vergleichen Sie zwei Commits oder Branches, um den Diff, die Commits zwischen ihnen und die geänderten Dateien zu sehen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `base` | string | Ja | Base-Branch/Tag/SHA für den Vergleich |
| `head` | string | Ja | Head-Branch/Tag/SHA für den Vergleich |
| `per_page` | number | Nein | Ergebnisse pro Seite für Dateien \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer für Dateien \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `url` | string | API-URL |
| `html_url` | string | GitHub-Web-URL |
| `permalink_url` | string | Permanente Link-URL |
| `diff_url` | string | Diff-Download-URL |
| `patch_url` | string | Patch-Download-URL |
| `status` | string | Vergleichsstatus \(ahead, behind, identical, diverged\) |
| `ahead_by` | number | Commits, die Head vor Base liegt |
| `behind_by` | number | Commits, die Head hinter Base liegt |
| `total_commits` | number | Gesamtzahl der Commits im Vergleich |
| `base_commit` | object | Base-Commit-Objekt |
|   ↳ `commit` | object | Kern-Commit-Daten |
|     ↳ `url` | string | Commit-API-URL |
|     ↳ `message` | string | Commit-Nachricht |
|     ↳ `comment_count` | number | Anzahl der Kommentare |
|     ↳ `author` | object | Git-Akteur \(Autor/Committer\) |
|       ↳ `name` | string | Name |
|       ↳ `email` | string | E-Mail-Adresse |
|       ↳ `date` | string | Zeitstempel \(ISO 8601\) |
|     ↳ `committer` | object | Git-Akteur \(Autor/Committer\) |
|       ↳ `name` | string | Name |
|       ↳ `email` | string | E-Mail-Adresse |
|       ↳ `date` | string | Zeitstempel \(ISO 8601\) |
|     ↳ `tree` | object | Tree-Objekt |
|       ↳ `sha` | string | Tree-SHA |
|       ↳ `url` | string | Tree-API-URL |
|     ↳ `verification` | object | Signaturverifizierung |
|       ↳ `verified` | boolean | Ob die Signatur verifiziert ist |
|       ↳ `reason` | string | Verifizierungsgrund |
|       ↳ `signature` | string | GPG-Signatur |
|       ↳ `payload` | string | Signierte Payload |
|   ↳ `author` | object | GitHub-Benutzerobjekt |
|     ↳ `login` | string | GitHub-Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `committer` | object | GitHub-Benutzerobjekt |
|     ↳ `login` | string | GitHub-Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `sha` | string | Commit-SHA |
|   ↳ `html_url` | string | Web-URL |
| `merge_base_commit` | object | Merge-Base-Commit-Objekt |
|   ↳ `sha` | string | Commit-SHA |
|   ↳ `html_url` | string | Web-URL |
| `commits` | array | Commits zwischen Base und Head |
|   ↳ `commit` | object | Kern-Commit-Daten |
|     ↳ `url` | string | Commit-API-URL |
|     ↳ `message` | string | Commit-Nachricht |
|     ↳ `comment_count` | number | Anzahl der Kommentare |
|     ↳ `author` | object | Git-Akteur \(Autor/Committer\) |
|       ↳ `name` | string | Name |
|       ↳ `email` | string | E-Mail-Adresse |
|       ↳ `date` | string | Zeitstempel \(ISO 8601\) |
|     ↳ `committer` | object | Git-Akteur \(Autor/Committer\) |
|       ↳ `name` | string | Name |
|       ↳ `email` | string | E-Mail-Adresse |
|       ↳ `date` | string | Zeitstempel \(ISO 8601\) |
|     ↳ `tree` | object | Tree-Objekt |
|       ↳ `sha` | string | Tree-SHA |
|       ↳ `url` | string | Tree-API-URL |
|     ↳ `verification` | object | Signaturverifizierung |
|       ↳ `verified` | boolean | Ob die Signatur verifiziert ist |
|       ↳ `reason` | string | Verifizierungsgrund |
|       ↳ `signature` | string | GPG-Signatur |
|       ↳ `payload` | string | Signierte Payload |
|   ↳ `author` | object | GitHub-Benutzerobjekt |
|     ↳ `login` | string | GitHub-Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `committer` | object | GitHub-Benutzerobjekt |
|     ↳ `login` | string | GitHub-Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `sha` | string | Commit-SHA |
|   ↳ `html_url` | string | Web-URL |
| `files` | array | Geänderte Dateien \(Diff-Einträge\) |
|   ↳ `sha` | string | Blob-SHA |
|   ↳ `filename` | string | Dateipfad |
|   ↳ `status` | string | Änderungsstatus \(added, removed, modified, renamed, copied, changed, unchanged\) |
|   ↳ `additions` | number | Hinzugefügte Zeilen |
|   ↳ `deletions` | number | Gelöschte Zeilen |
|   ↳ `changes` | number | Gesamtänderungen |
|   ↳ `blob_url` | string | Blob-URL |
|   ↳ `raw_url` | string | Raw-Datei-URL |
|   ↳ `contents_url` | string | Contents-API-URL |
|   ↳ `patch` | string | Diff-Patch |
|   ↳ `previous_filename` | string | Vorheriger Dateiname \(bei Umbenennungen\) |

### `github_create_gist`

Erstellt einen neuen Gist mit einer oder mehreren Dateien

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `description` | string | Nein | Beschreibung des Gists |
| `files` | json | Ja | JSON-Objekt mit Dateinamen als Schlüssel und Inhalt als Werte. Beispiel: \{"file.txt": \{"content": "Hallo"\}\} |
| `public` | boolean | Nein | Ob der Gist öffentlich ist \(Standard: false\) |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | string | Gist-ID |
| `node_id` | string | GraphQL-Node-ID |
| `url` | string | API-URL |
| `html_url` | string | Web-URL |
| `forks_url` | string | Forks-API-URL |
| `commits_url` | string | Commits-API-URL |
| `git_pull_url` | string | Git-Pull-URL |
| `git_push_url` | string | Git-Push-URL |
| `description` | string | Gist-Beschreibung |
| `public` | boolean | Ob der Gist öffentlich ist |
| `truncated` | boolean | Ob Dateien gekürzt sind |
| `comments` | number | Anzahl der Kommentare |
| `comments_url` | string | Kommentare-API-URL |
| `created_at` | string | Erstellungszeitstempel |
| `updated_at` | string | Zeitstempel der letzten Aktualisierung |
| `files` | object | Dateien im Gist \(Objekt mit Dateinamen als Schlüssel, jeder enthält filename, type, language, raw_url, size, truncated, content\) |
| `owner` | object | Gist-Besitzer |
|   ↳ `login` | string | Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |

### `github_get_gist`

Ruft ein Gist anhand der ID ab, einschließlich der Dateiinhalte

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `gist_id` | string | Ja | Die Gist-ID |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `files` | object | Dateien im Gist \(nach Dateiname indiziert\) |
|   ↳ `filename` | string | Dateiname |
|   ↳ `type` | string | MIME-Typ |
|   ↳ `language` | string | Programmiersprache |
|   ↳ `raw_url` | string | Raw-Datei-URL |
|   ↳ `size` | number | Dateigröße in Bytes |
|   ↳ `truncated` | boolean | Ob der Inhalt gekürzt ist |
|   ↳ `content` | string | Dateiinhalt |
| `owner` | object | Gist-Besitzer |
|   ↳ `login` | string | Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
| `id` | string | Gist-ID |
| `node_id` | string | GraphQL-Node-ID |
| `url` | string | API-URL |
| `html_url` | string | GitHub-Web-URL |
| `forks_url` | string | Forks-API-URL |
| `commits_url` | string | Commits-API-URL |
| `git_pull_url` | string | Git-Clone-URL |
| `git_push_url` | string | Git-Push-URL |
| `description` | string | Gist-Beschreibung |
| `public` | boolean | Ob das Gist öffentlich ist |
| `truncated` | boolean | Ob der Inhalt gekürzt ist |
| `comments` | number | Anzahl der Kommentare |
| `comments_url` | string | Kommentare-API-URL |
| `created_at` | string | Erstellungszeitstempel |
| `updated_at` | string | Zeitstempel der letzten Aktualisierung |

### `github_list_gists`

Gists für einen Benutzer oder den authentifizierten Benutzer auflisten

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `username` | string | Nein | GitHub-Benutzername \(weglassen für Gists des authentifizierten Benutzers\) |
| `since` | string | Nein | Nur Gists, die nach diesem Zeitpunkt aktualisiert wurden \(ISO 8601\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `items` | array | Array von Gist-Objekten aus der GitHub API |
|   ↳ `files` | object | Dateien im Gist \(nach Dateinamen indiziert\) |
|     ↳ `filename` | string | Dateiname |
|     ↳ `type` | string | MIME-Typ |
|     ↳ `language` | string | Programmiersprache |
|     ↳ `raw_url` | string | Raw-Datei-URL |
|     ↳ `size` | number | Dateigröße in Bytes |
|     ↳ `truncated` | boolean | Ob der Inhalt gekürzt ist |
|     ↳ `content` | string | Dateiinhalt |
|   ↳ `owner` | object | Gist-Besitzer |
|     ↳ `login` | string | Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `id` | string | Gist-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | GitHub-Web-URL |
|   ↳ `forks_url` | string | Forks-API-URL |
|   ↳ `commits_url` | string | Commits-API-URL |
|   ↳ `git_pull_url` | string | Git-Clone-URL |
|   ↳ `git_push_url` | string | Git-Push-URL |
|   ↳ `description` | string | Gist-Beschreibung |
|   ↳ `public` | boolean | Ob der Gist öffentlich ist |
|   ↳ `truncated` | boolean | Ob der Inhalt gekürzt ist |
|   ↳ `comments` | number | Anzahl der Kommentare |
|   ↳ `comments_url` | string | Kommentare-API-URL |
|   ↳ `created_at` | string | Erstellungszeitstempel |
|   ↳ `updated_at` | string | Zeitstempel der letzten Aktualisierung |
| `count` | number | Anzahl der zurückgegebenen Gists |

### `github_update_gist`

Aktualisiert eine Gist-Beschreibung oder Dateien. Um eine Datei zu löschen, setzen Sie ihren Wert im files-Objekt auf null

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `gist_id` | string | Ja | Die zu aktualisierende Gist-ID |
| `description` | string | Nein | Neue Beschreibung für den Gist |
| `files` | json | Nein | JSON-Objekt mit Dateinamen als Schlüssel. Auf null setzen zum Löschen oder Inhalt angeben zum Aktualisieren/Hinzufügen |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | string | Gist-ID |
| `node_id` | string | GraphQL-Node-ID |
| `url` | string | API-URL |
| `html_url` | string | Web-URL |
| `forks_url` | string | Forks-API-URL |
| `commits_url` | string | Commits-API-URL |
| `git_pull_url` | string | Git-Pull-URL |
| `git_push_url` | string | Git-Push-URL |
| `description` | string | Gist-Beschreibung |
| `public` | boolean | Ob der Gist öffentlich ist |
| `truncated` | boolean | Ob Dateien gekürzt sind |
| `comments` | number | Anzahl der Kommentare |
| `comments_url` | string | Kommentare-API-URL |
| `created_at` | string | Erstellungszeitstempel |
| `updated_at` | string | Zeitstempel der letzten Aktualisierung |
| `files` | object | Dateien im Gist \(Objekt mit Dateinamen als Schlüssel, jeder enthält filename, type, language, raw_url, size, truncated, content\) |
| `owner` | object | Gist-Besitzer |
|   ↳ `login` | string | Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |

### `github_delete_gist`

Einen Gist anhand der ID löschen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `gist_id` | string | Ja | Die zu löschende Gist-ID |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `deleted` | boolean | Ob die Löschung erfolgreich war |
| `gist_id` | string | Die gelöschte Gist-ID |

### `github_fork_gist`

Einen Gist forken, um eine eigene Kopie zu erstellen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `gist_id` | string | Ja | Die zu forkende Gist-ID |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | string | Neue Gist-ID |
| `html_url` | string | Web-URL |
| `description` | string | Beschreibung |
| `public` | boolean | Ist öffentlich |
| `created_at` | string | Erstellungsdatum |
| `owner` | object | Besitzerinformationen |
| `files` | object | Dateien |

### `github_star_gist`

Einen Gist mit einem Stern markieren

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `gist_id` | string | Ja | Die Gist-ID, die mit einem Stern markiert werden soll |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `starred` | boolean | Ob das Markieren mit Stern erfolgreich war |
| `gist_id` | string | Die Gist-ID |

### `github_unstar_gist`

Stern von einem Gist entfernen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `gist_id` | string | Ja | Die Gist-ID, von der der Stern entfernt werden soll |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `unstarred` | boolean | Ob das Entfernen des Sterns erfolgreich war |
| `gist_id` | string | Die Gist-ID |

### `github_fork_repo`

Repository in Ihr Konto oder eine Organisation forken

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer, von dem geforkt werden soll |
| `repo` | string | Ja | Repository-Name, der geforkt werden soll |
| `organization` | string | Nein | Organisation, in die geforkt werden soll \(weglassen, um in Ihr Konto zu forken\) |
| `name` | string | Nein | Benutzerdefinierter Name für das geforkte Repository |
| `default_branch_only` | boolean | Nein | Nur den Standard-Branch forken \(Standard: false\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | number | Repository-ID |
| `node_id` | string | GraphQL-Node-ID |
| `name` | string | Repository-Name |
| `full_name` | string | Vollständiger Name \(Besitzer/Repo\) |
| `private` | boolean | Ob das Repository privat ist |
| `description` | string | Repository-Beschreibung |
| `html_url` | string | GitHub-Web-URL |
| `url` | string | API-URL |
| `clone_url` | string | HTTPS-Clone-URL |
| `ssh_url` | string | SSH-Clone-URL |
| `git_url` | string | Git-Protokoll-URL |
| `default_branch` | string | Standard-Branch-Name |
| `fork` | boolean | Ob dies ein Fork ist |
| `created_at` | string | Erstellungszeitstempel |
| `updated_at` | string | Zeitstempel der letzten Aktualisierung |
| `pushed_at` | string | Zeitstempel des letzten Pushs |
| `owner` | object | Fork-Besitzer |
|   ↳ `login` | string | GitHub-Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
| `parent` | object | Eltern-Repository \(Quelle des Forks\) |
|   ↳ `login` | string | Benutzername |
|   ↳ `id` | number | Benutzer-ID |
| `source` | object | Quell-Repository \(ursprünglicher Ursprung\) |
|   ↳ `id` | number | Repository-ID |
|   ↳ `full_name` | string | Vollständiger Name |
|   ↳ `html_url` | string | Web-URL |

### `github_list_forks`

Forks eines Repositories auflisten

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `sort` | string | Nein | Sortieren nach: newest, oldest, stargazers, watchers \(Standard: newest\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `items` | array | Array von Fork-Repository-Objekten aus der GitHub-API |
|   ↳ `id` | number | Repository-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `name` | string | Repository-Name |
|   ↳ `full_name` | string | Vollständiger Name \(Besitzer/Repo\) |
|   ↳ `private` | boolean | Ob das Repository privat ist |
|   ↳ `description` | string | Repository-Beschreibung |
|   ↳ `html_url` | string | GitHub-Web-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `fork` | boolean | Ob dies ein Fork ist |
|   ↳ `created_at` | string | Erstellungszeitstempel |
|   ↳ `updated_at` | string | Zeitstempel der letzten Aktualisierung |
|   ↳ `pushed_at` | string | Zeitstempel des letzten Pushs |
|   ↳ `size` | number | Repository-Größe in KB |
|   ↳ `stargazers_count` | number | Anzahl der Sterne |
|   ↳ `watchers_count` | number | Anzahl der Beobachter |
|   ↳ `forks_count` | number | Anzahl der Forks |
|   ↳ `open_issues_count` | number | Anzahl offener Issues |
|   ↳ `language` | string | Primäre Programmiersprache |
|   ↳ `default_branch` | string | Standard-Branch-Name |
|   ↳ `visibility` | string | Repository-Sichtbarkeit |
|   ↳ `archived` | boolean | Ob das Repository archiviert ist |
|   ↳ `disabled` | boolean | Ob das Repository deaktiviert ist |
|   ↳ `owner` | object | Fork-Besitzer |
|     ↳ `login` | string | GitHub-Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
| `count` | number | Anzahl der zurückgegebenen Forks |

### `github_create_milestone`

Einen Meilenstein in einem Repository erstellen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `title` | string | Ja | Meilenstein-Titel |
| `state` | string | Nein | Status: open oder closed \(Standard: open\) |
| `description` | string | Nein | Meilenstein-Beschreibung |
| `due_on` | string | Nein | Fälligkeitsdatum \(ISO 8601-Format, z.B. 2024-12-31T23:59:59Z\) |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `creator` | object | Meilenstein-Ersteller |
|   ↳ `login` | string | Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
| `id` | number | Meilenstein-ID |
| `node_id` | string | GraphQL-Node-ID |
| `number` | number | Meilenstein-Nummer |
| `title` | string | Meilenstein-Titel |
| `description` | string | Meilenstein-Beschreibung |
| `state` | string | Status \(open oder closed\) |
| `url` | string | API-URL |
| `html_url` | string | GitHub-Web-URL |
| `labels_url` | string | Labels-API-URL |
| `due_on` | string | Fälligkeitsdatum \(ISO 8601\) |
| `open_issues` | number | Anzahl offener Issues |
| `closed_issues` | number | Anzahl geschlossener Issues |
| `created_at` | string | Erstellungszeitstempel |
| `updated_at` | string | Zeitstempel der letzten Aktualisierung |
| `closed_at` | string | Schließungszeitstempel |

### `github_get_milestone`

Einen bestimmten Meilenstein nach Nummer abrufen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `milestone_number` | number | Ja | Meilenstein-Nummer |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `creator` | object | Meilenstein-Ersteller |
|   ↳ `login` | string | Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
| `id` | number | Meilenstein-ID |
| `node_id` | string | GraphQL-Node-ID |
| `number` | number | Meilenstein-Nummer |
| `title` | string | Meilenstein-Titel |
| `description` | string | Meilenstein-Beschreibung |
| `state` | string | Status \(open oder closed\) |
| `url` | string | API-URL |
| `html_url` | string | GitHub-Web-URL |
| `labels_url` | string | Labels-API-URL |
| `due_on` | string | Fälligkeitsdatum \(ISO 8601\) |
| `open_issues` | number | Anzahl offener Issues |
| `closed_issues` | number | Anzahl geschlossener Issues |
| `created_at` | string | Erstellungszeitstempel |
| `updated_at` | string | Zeitstempel der letzten Aktualisierung |
| `closed_at` | string | Schließungszeitstempel |

### `github_list_milestones`

Meilensteine in einem Repository auflisten

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `state` | string | Nein | Filtern nach Status: open, closed, all \(Standard: open\) |
| `sort` | string | Nein | Sortieren nach: due_on oder completeness \(Standard: due_on\) |
| `direction` | string | Nein | Sortierrichtung: asc oder desc \(Standard: asc\) |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `items` | array | Array von Meilenstein-Objekten aus der GitHub-API |
|   ↳ `creator` | object | Meilenstein-Ersteller |
|     ↳ `login` | string | Benutzername |
|     ↳ `id` | number | Benutzer-ID |
|     ↳ `node_id` | string | GraphQL-Node-ID |
|     ↳ `avatar_url` | string | Avatar-Bild-URL |
|     ↳ `url` | string | API-URL |
|     ↳ `html_url` | string | Profilseiten-URL |
|     ↳ `type` | string | Benutzer oder Organisation |
|     ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `id` | number | Meilenstein-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `number` | number | Meilenstein-Nummer |
|   ↳ `title` | string | Meilenstein-Titel |
|   ↳ `description` | string | Meilenstein-Beschreibung |
|   ↳ `state` | string | Status \(open oder closed\) |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | GitHub-Web-URL |
|   ↳ `labels_url` | string | Labels-API-URL |
|   ↳ `due_on` | string | Fälligkeitsdatum \(ISO 8601\) |
|   ↳ `open_issues` | number | Anzahl offener Issues |
|   ↳ `closed_issues` | number | Anzahl geschlossener Issues |
|   ↳ `created_at` | string | Erstellungszeitstempel |
|   ↳ `updated_at` | string | Letzter Aktualisierungszeitstempel |
|   ↳ `closed_at` | string | Schließungszeitstempel |
| `count` | number | Anzahl der zurückgegebenen Meilensteine |

### `github_update_milestone`

Einen Meilenstein in einem Repository aktualisieren

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `milestone_number` | number | Ja | Zu aktualisierende Meilenstein-Nummer |
| `title` | string | Nein | Neuer Meilenstein-Titel |
| `state` | string | Nein | Neuer Status: open oder closed |
| `description` | string | Nein | Neue Beschreibung |
| `due_on` | string | Nein | Neues Fälligkeitsdatum \(ISO 8601-Format\) |
| `apiKey` | string | Ja | GitHub-API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | number | Meilenstein-ID |
| `node_id` | string | GraphQL-Node-ID |
| `number` | number | Meilenstein-Nummer |
| `title` | string | Meilenstein-Titel |
| `description` | string | Meilenstein-Beschreibung |
| `state` | string | Status \(open oder closed\) |
| `url` | string | API-URL |
| `html_url` | string | GitHub-Web-URL |
| `labels_url` | string | Labels-API-URL |
| `due_on` | string | Fälligkeitsdatum \(ISO 8601\) |
| `open_issues` | number | Anzahl offener Issues |
| `closed_issues` | number | Anzahl geschlossener Issues |
| `created_at` | string | Erstellungszeitstempel |
| `updated_at` | string | Zeitstempel der letzten Aktualisierung |
| `closed_at` | string | Schließungszeitstempel |
| `creator` | object | Meilenstein-Ersteller |
|   ↳ `login` | string | Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |

### `github_delete_milestone`

Einen Meilenstein aus einem Repository löschen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `milestone_number` | number | Ja | Zu löschende Meilenstein-Nummer |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `deleted` | boolean | Ob die Löschung erfolgreich war |
| `milestone_number` | number | Die gelöschte Meilenstein-Nummer |

### `github_create_issue_reaction`

Eine Reaktion zu einem Issue hinzufügen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `content` | string | Ja | Reaktionstyp: +1 \(Daumen hoch\), -1 \(Daumen runter\), laugh, confused, heart, hooray, rocket, eyes |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | number | Reaktions-ID |
| `node_id` | string | GraphQL-Node-ID |
| `content` | string | Reaktionstyp \(+1, -1, laugh, confused, heart, hooray, rocket, eyes\) |
| `created_at` | string | Erstellungszeitstempel |
| `user` | object | GitHub-Benutzerobjekt |
|   ↳ `login` | string | GitHub-Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `html_url` | string | Profil-URL |
|   ↳ `type` | string | Kontotyp \(User oder Organization\) |

### `github_delete_issue_reaction`

Eine Reaktion von einem Issue entfernen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `issue_number` | number | Ja | Issue-Nummer |
| `reaction_id` | number | Ja | Zu löschende Reaktions-ID |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `deleted` | boolean | Ob das Löschen erfolgreich war |
| `reaction_id` | number | Die gelöschte Reaktions-ID |

### `github_create_comment_reaction`

Eine Reaktion zu einem Issue-Kommentar hinzufügen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `comment_id` | number | Ja | Kommentar-ID |
| `content` | string | Ja | Reaktionstyp: +1 \(Daumen hoch\), -1 \(Daumen runter\), laugh, confused, heart, hooray, rocket, eyes |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `id` | number | Reaktions-ID |
| `node_id` | string | GraphQL-Node-ID |
| `content` | string | Reaktionstyp \(+1, -1, laugh, confused, heart, hooray, rocket, eyes\) |
| `created_at` | string | Erstellungszeitstempel |
| `user` | object | GitHub-Benutzerobjekt |
|   ↳ `login` | string | GitHub-Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `html_url` | string | Profil-URL |
|   ↳ `type` | string | Kontotyp \(User oder Organization\) |

### `github_delete_comment_reaction`

Eine Reaktion von einem Issue-Kommentar entfernen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `comment_id` | number | Ja | Kommentar-ID |
| `reaction_id` | number | Ja | Zu löschende Reaktions-ID |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `deleted` | boolean | Ob das Löschen erfolgreich war |
| `reaction_id` | number | Die gelöschte Reaktions-ID |

### `github_star_repo`

Ein Repository mit einem Stern versehen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `starred` | boolean | Ob das Markieren mit Stern erfolgreich war |
| `owner` | string | Repository-Besitzer |
| `repo` | string | Repository-Name |

### `github_unstar_repo`

Stern von einem Repository entfernen

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `unstarred` | boolean | Ob das Entfernen des Sterns erfolgreich war |
| `owner` | string | Repository-Besitzer |
| `repo` | string | Repository-Name |

### `github_check_star`

Prüfen, ob Sie ein Repository mit einem Stern versehen haben

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `starred` | boolean | Ob Sie das Repository mit einem Stern versehen haben |
| `owner` | string | Repository-Besitzer |
| `repo` | string | Repository-Name |

### `github_list_stargazers`

Benutzer auflisten, die ein Repository mit einem Stern versehen haben

#### Eingabe

| Parameter | Typ | Erforderlich | Beschreibung |
| --------- | ---- | -------- | ----------- |
| `owner` | string | Ja | Repository-Besitzer |
| `repo` | string | Ja | Repository-Name |
| `per_page` | number | Nein | Ergebnisse pro Seite \(max. 100, Standard: 30\) |
| `page` | number | Nein | Seitennummer \(Standard: 1\) |
| `apiKey` | string | Ja | GitHub API-Token |

#### Ausgabe

| Parameter | Typ | Beschreibung |
| --------- | ---- | ----------- |
| `items` | array | Array von Benutzerobjekten aus der GitHub API |
|   ↳ `login` | string | GitHub-Benutzername |
|   ↳ `id` | number | Benutzer-ID |
|   ↳ `node_id` | string | GraphQL-Node-ID |
|   ↳ `avatar_url` | string | Avatar-Bild-URL |
|   ↳ `url` | string | API-URL |
|   ↳ `html_url` | string | Profilseiten-URL |
|   ↳ `type` | string | Benutzer oder Organisation |
|   ↳ `site_admin` | boolean | GitHub-Mitarbeiter-Indikator |
|   ↳ `gravatar_id` | string | Gravatar-ID |
|   ↳ `followers_url` | string | Followers-API-URL |
|   ↳ `following_url` | string | Following-API-URL |
|   ↳ `gists_url` | string | Gists-API-URL |
|   ↳ `starred_url` | string | Starred-API-URL |
|   ↳ `repos_url` | string | Repos-API-URL |
| `count` | number | Anzahl der zurückgegebenen Benutzer, die einen Stern vergeben haben |
