# GitHub-Agent

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-cover data-type="image">Titelbild</th></tr></thead><tbody><tr><td><strong>Übersicht</strong></td><td><p></p><ul><li>GitHub-Repositories, Issues und Pull Requests über Blockbrain suchen und abrufen</li><li>Issues, Pull Requests und Branches in Ihrer gesamten GitHub-Organisation erstellen, aktualisieren und verwalten</li><li>Codeänderungen, Commits und Dateiinhalt direkt in Unterhaltungen überprüfen</li><li>GitHub-Actions-Workflows und Deployment-Runs überwachen und verwalten</li><li>Entwicklungs-Workflows und Berichte mithilfe von GitHub-Daten automatisieren</li></ul></td><td><a href="/files/8e2d91078527b6e8c217ab72731c4498aed2fe68">/files/8e2d91078527b6e8c217ab72731c4498aed2fe68</a></td></tr><tr><td><strong>Voraussetzungen</strong></td><td><p></p><ul><li>Führen Sie die allgemeinen Einrichtungsschritte auf der Hauptseite für KI-Agenten aus</li><li>Sicherstellen, dass Benutzer aktive GitHub-Konten mit Zugriff auf die Ziel-Repositories haben</li><li>Geeignete Berechtigungen in der GitHub-Organisation prüfen (Repository-Zugriff, Workflow-Berechtigungen)</li></ul></td><td><a href="/files/b5ff00db78231f60f0f1b0350c82cec5fdf80032">/files/b5ff00db78231f60f0f1b0350c82cec5fdf80032</a></td></tr></tbody></table>

### Übersicht

* GitHub-Repositories, Branches und Dateiinhalt über Blockbrain suchen und durchsuchen
* Pull Requests erstellen und überprüfen, einschließlich Kommentaren, Reviews und Commit-Verlauf
* Issue-Zuständige und Labels in all Ihren GitHub-Projekten verwalten
* GitHub-Actions-CI/CD-Workflows auflisten, auslösen und überwachen
* Code über Repositories und Organisationen hinweg durchsuchen

### Voraussetzungen

* Führen Sie die allgemeinen Einrichtungsschritte auf der Hauptseite für KI-Agenten aus
* Sicherstellen, dass Benutzer aktive GitHub-Konten mit Zugriff auf die relevanten Repositories und Organisationen haben
* Geeignete GitHub-Plan-Lizenzierung (Free, Team oder Enterprise) für die Repositories prüfen, die Sie integrieren möchten

### GitHub OAuth-App-Registrierung

#### Erforderliche API-Berechtigungen

Fügen Sie Ihrer App-Registrierung die folgenden GitHub-OAuth-Scopes hinzu:

| Berechtigung | Typ       | Beschreibung                                                                                                                       |
| ------------ | --------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `repo`       | Delegiert | Vollzugriff auf private Repositories — umfasst Zugriff auf Code, Pull Requests, Issues, Branches und Zuständige                    |
| `read:org`   | Delegiert | Organisation und Team-Mitgliedschaften lesen, erforderlich zum Auflisten von Benutzerorganisationen und Organisations-Repositories |
| `workflow`   | Delegiert | GitHub-Actions-Workflows aktualisieren — erforderlich zum Auflisten, Auslösen und Überwachen von CI/CD-Workflow-Runs               |
| `read:user`  | Delegiert | Benutzerprofildaten lesen, erforderlich für Benutzerkontext und Authentifizierungsprüfung                                          |

> **Klärung des Umfangs:** Der `repo` Scope bietet umfassenden Zugriff auf Repository-Inhalte, Pull Requests, Issues, Labels, Zuständige, Branches und Referenzen. Wenn Ihre Organisation nur öffentliche Repositories verwendet, können Sie stattdessen `public_repo` verwenden — dadurch wird jedoch der Zugriff auf private Repositories deaktiviert und Schreiboperationen wie das Erstellen von Pull Requests oder das Verwalten von Issue-Zuständigen eingeschränkt.
>
> **Wichtig:** Diese Scopes werden auf der Blockbrain-Seite konfiguriert, nicht direkt in der GitHub-OAuth-App. Bestätigen Sie die genaue Scopeliste vor dem Deployment mit Ihrem technischen Projektmanager bei Blockbrain.

#### Die GitHub-OAuth-App erstellen

1. Navigieren Sie zu den Einstellungen Ihrer GitHub-Organisation oder, für persönliche Konten, zu **Einstellungen** > **Entwicklereinstellungen**
2. Gehen Sie zu **OAuth-Apps** > **Neue OAuth-App**
3. Geben Sie die folgenden Details ein:
   * **Anwendungsname**: `Blockbrain Connector` (oder ein beschreibender Name Ihrer Wahl)
   * **Homepage-URL**: `https://theblockbrain.ai`
   * **URL für den Autorisierungs-Callback**: `https://nango.theblockbrain.ai/oauth/callback`
4. Klicken Sie auf **Anwendung registrieren**
5. Notieren Sie auf der App-Seite **Client-ID**
6. Klicken Sie auf **Neues Client-Secret generieren** und kopieren Sie es sofort — es wird nicht erneut angezeigt

#### Umleitungs-URL

Hinzufügen `https://nango.theblockbrain.ai/oauth/callback` als Authorization Callback URL in Ihrer GitHub-OAuth-App-Registrierung.

#### Schritte zur Berechtigungskonfiguration

1. In den Einstellungen Ihrer GitHub-OAuth-App werden die Scopes während des OAuth-Autorisierungsflusses angefordert
2. Die Scopes werden auf der Blockbrain-Seite konfiguriert (siehe Agentenkonfiguration unten)
3. Wenn sich ein Benutzer erstmals verbindet, fordert GitHub ihn auf, die App mit den angeforderten Scopes zu autorisieren
4. *(Empfohlen)* Für GitHub-Enterprise-Organisationen: Lassen Sie einen Organisationsadministrator die OAuth-App vorab genehmigen unter **Organisationseinstellungen** > **Zugriff von Drittanbietern** > **Richtlinie für OAuth-Anwendungen**

### GitHub-Agentenkonfiguration in Blockbrain

<div align="center" data-full-width="false" data-with-frame="true"><figure><img src="/files/57384eeaa0f2a87ef303f71565cf3f03c0e64cce" alt=""><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/aaf14f93630d17982c9fea705e4f2ca36281f572" alt=""><figcaption></figcaption></figure></div>

#### Details zur App-Registrierung

* **Umleitungs-URL**: `https://nango.theblockbrain.ai/oauth/callback`
* **Scopes**:
  * `repo`
  * `read:org`
  * `workflow`
  * `read:user`

#### Konfigurationsschritte

1. **Agenteneinstellungen aufrufen:**
   * Navigieren Sie zu Ihrem Blockbrain-Admin-Panel
   * Gehen Sie zu **Agents** > **GitHub Agent**
   * Klicken Sie auf **Konfigurieren**
2. **GitHub-OAuth-Anmeldedaten eingeben:**
   * **Client-ID**: Geben Sie die Client-ID aus Ihrer GitHub-OAuth-App ein
   * **Client-Secret**: Fügen Sie das von Ihnen generierte Client-Secret ein (verwenden Sie das Augensymbol, um die Sichtbarkeit umzuschalten)
3. **OAuth-Berechtigungen konfigurieren:**
   * Fügen Sie jeden erforderlichen Bereich einzeln mit der **Hinzufügen** Schaltfläche
   * Jeder Scope wird als entfernbares Tag mit visuellen Hinweisen angezeigt
   * Verwenden Sie das **X** Schaltfläche, um falsche Scopes zu entfernen
   * Erforderliche Scopes: `repo`, `read:org`, `workflow`, `read:user`
4. **Zusätzliche Konfiguration (optional):**
   * Konfigurieren Sie benutzerdefinierte Schlüssel-Wert-Paare für spezifische organisatorische Anforderungen
   * Richten Sie organisationsspezifische Einschränkungen ein
5. **Konfiguration speichern:**
   * Klicken Sie auf **Speichern** um alle Einstellungen zu übernehmen
   * Warten Sie auf die Bestätigungsmeldung

### Alternative: Vorabgenehmigung durch die Organisation

Für GitHub-Enterprise-Organisationen mit aktivierten Einschränkungen für OAuth-Apps:

1. Bitten Sie einen Organisationsinhaber, zu navigieren zu **Organisationseinstellungen** > **Zugriff von Drittanbietern** > **Richtlinie für OAuth-Anwendungen**
2. Blockbrain-OAuth-App für alle Organisationsmitglieder vorab genehmigen
3. Dadurch entfällt für einzelne Mitglieder die Notwendigkeit, bei der Verbindung eine Organisationsgenehmigung anzufordern

### Den GitHub-Agenten testen

#### Überprüfungsschritte

**Verbindungstest:**

* Verwenden Sie das integrierte Verbindungstest-Tool von Blockbrain
* Erfolgreichen OAuth-Flow mit GitHub überprüfen

**Repository-Zugriff:**

* Lassen Sie einen Testbenutzer sein GitHub-Konto verbinden
* Versuchen Sie, Repositories für den authentifizierten Benutzer aufzulisten
* Überprüfen Sie den Abruf von Repository-Inhalten (z. B. das Lesen einer Datei)

**Pull-Request-Funktionalität:**

* Listen Sie Pull Requests in einem bekannten Repository auf
* Sehen Sie die PR-Details einschließlich Kommentaren und Reviews an
* Testen Sie das Erstellen eines Pull Requests (verwenden Sie ein Test-Repository)

**Workflow-Integration:**

* Listen Sie Workflows in einem Repository mit GitHub Actions auf
* Prüfen Sie den Status eines Workflow-Runs
* Testen Sie das Auslösen von Workflows (verwenden Sie einen Test-Workflow mit `workflow_dispatch`)

**Issue-Verwaltung:**

* Listen Sie Repository-Zuständige auf
* Testen Sie das Hinzufügen und Entfernen von Issue-Labels
* Testen Sie die Verwaltung von Zuständigen bei einem Test-Issue

### Häufige Integrationsanwendungsfälle

#### Repository-Verwaltung

* **Code-Durchsicht**: Navigieren Sie per natürlicher Sprache durch die Repository-Struktur und sehen Sie Dateiinhalt an
* **Branch-Übersicht**: Branches über Projekte hinweg auflisten und prüfen
* **Organisationserkennung**: Durchsuchen Sie Organisations-Repositories zur Projekterkundung

#### Pull-Request-Workflows

* **PR-Review**: KI-gestützte Analyse von Pull-Request-Änderungen, Kommentaren und Review-Status
* **PR-Erstellung**: Erstellen Sie Pull Requests mit korrekter Konfiguration von Base- und Head-Branch
* **Commit-Analyse**: Commit-Verlauf prüfen und Änderungspattern verstehen

#### CI/CD-Überwachung

* **Workflow-Status**: GitHub-Actions-Build- und Deployment-Pipelines überwachen
* **Run-Tracking**: Workflow-Run-Ergebnisse nachverfolgen und Fehler identifizieren
* **Workflow-Auslösung**: Deployments oder Testläufe direkt aus dem Blockbrain-Chat auslösen

### Fehlerbehebung

#### Authentifizierungsprobleme

| Symptom                                               | Ursache                        | Lösung                                                                                                        |
| ----------------------------------------------------- | ------------------------------ | ------------------------------------------------------------------------------------------------------------- |
| OAuth-Authentifizierungsfehler oder „Bad credentials“ | Falsche Anmeldedaten           | Überprüfen Sie, ob Client-ID und Client-Secret in der Blockbrain-Konfiguration korrekt eingegeben wurden      |
| OAuth-Ablauf wird nicht abgeschlossen                 | Falsche Callback-URL           | Stellen Sie sicher, dass die Authorization callback URL genau `https://nango.theblockbrain.ai/oauth/callback` |
| Token funktioniert nicht mehr                         | Secret rotiert oder widerrufen | Generieren Sie in GitHub ein neues Client-Secret und aktualisieren Sie die Blockbrain-Konfiguration           |

#### Fehler beim Repository-Zugriff

| Symptom                                   | Ursache                     | Lösung                                                                                                                               |
| ----------------------------------------- | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| „Not Found“ beim Zugriff auf Repositories | Benutzer hat keinen Zugriff | Bestätigen Sie, dass der Benutzer direkt auf GitHub auf das Repository zugreifen kann                                                |
| Organisations-Repos nicht sichtbar        | OAuth-App nicht genehmigt   | Lassen Sie einen Organisationsadministrator die App genehmigen unter **Organisationseinstellungen** > **Zugriff von Drittanbietern** |
| Unregelmäßige Zugriffsprobleme            | Konto-Mismatch              | Überprüfen Sie, ob der Benutzer mit dem richtigen GitHub-Konto verbunden ist                                                         |

#### Fehler bei Workflow-Berechtigungen

| Symptom                                 | Ursache                     | Lösung                                                                                 |
| --------------------------------------- | --------------------------- | -------------------------------------------------------------------------------------- |
| Workflows können nicht ausgelöst werden | Fehlender Scope             | Stellen Sie sicher, dass der `workflow` Scope in der OAuth-Konfiguration enthalten ist |
| Auslösen gibt Fehler zurück             | Kein Dispatch-Trigger       | Überprüfen Sie, ob das Workflow-YAML `workflow_dispatch` als Trigger enthält           |
| Workflow nicht aufgelistet              | Unzureichender Repo-Zugriff | Bestätigen Sie, dass der Benutzer Schreibzugriff auf das Repository hat                |

#### Probleme bei der Scopes-Konfiguration

| Symptom                         | Ursache                 | Lösung                                                                                                               |
| ------------------------------- | ----------------------- | -------------------------------------------------------------------------------------------------------------------- |
| Scopes werden nicht gespeichert | Eingabefehler           | Fügen Sie jeden Scope einzeln über die Blockbrain-Admin-Oberfläche hinzu                                             |
| Doppelte Scope-Einträge         | Mehrfache Hinzufügungen | Entfernen Sie Duplikate mithilfe des **X** Schaltfläche                                                              |
| Fehlende Funktionen             | Unvollständige Scopes   | Stellen Sie sicher, dass alle vier erforderlichen Scopes vorhanden sind: `repo`, `read:org`, `workflow`, `read:user` |

### Sicherheit und Compliance

#### Datenschutz

* **Repository-Sicherheit**: Alle Repository-Daten werden gemäß den Sicherheitsrichtlinien von Blockbrain verarbeitet
* **Code-Privatsphäre**: Der Zugriff auf Codeinhalte berücksichtigt die Sichtbarkeit des GitHub-Repositories und die Benutzerberechtigungen
* **Tokensicherheit**: OAuth-Tokens werden sicher gespeichert und verschlüsselt — Anmeldedaten werden Endnutzern niemals offengelegt

#### Compliance-Aspekte

* **DSGVO-Konformität**: Die Verarbeitung von Repository- und Benutzerdaten erfolgt gemäß den GDPR-Anforderungen
* **Datenaufbewahrung**: Kein Repository-Inhalt wird von Blockbrain dauerhaft gespeichert — Daten werden in Echtzeit verarbeitet
* **Audit-Logging**: Alle Aktivitäten des GitHub-Agenten werden für Compliance-Berichte protokolliert

#### Zugriffskontrolle

* **Benutzerberechtigungen**: Der Agent übernimmt die GitHub-Berechtigungen des authentifizierten Benutzers — keine Eskalation möglich
* **Organisationsrichtlinien**: Berücksichtigt die OAuth-App-Richtlinien und Einschränkungen der GitHub-Organisation
* **Repository-Sichtbarkeit**: Private Repositories sind nur für Benutzer mit explizitem GitHub-Zugriff zugänglich

### Leistung und Ratenlimits

* **Ratenbewusstsein**: Der GitHub-Agent respektiert die API-Ratenlimits von GitHub (5.000 Anfragen/Stunde für authentifizierte Benutzer)
* **Wiederholungslogik**: Automatischer Wiederholungsversuch mit angepassten Parametern bei vorübergehenden Fehlern (bis zu 3 Versuche)
* **Paginierung**: Große Ergebnismengen werden über die Paginierung der GitHub-API verarbeitet
* **Best Practice**: Ermutigen Sie Benutzer, bei Repositories und Organisationen konkret zu sein, um API-Aufrufe zu minimieren

### Nächste Schritte

Nach erfolgreicher GitHub-Agent-Konfiguration:

1. **Benutzerschulung**: Teilen Sie den Benutzerleitfaden für den GitHub-Agenten mit den Endbenutzern
2. **Berechtigungsprüfung**: Überprüfen Sie regelmäßig den Benutzerzugriff, um angemessene GitHub-Berechtigungen sicherzustellen
3. **Integrationsüberwachung**: Überwachen Sie die OAuth-Verbindung auf fortlaufende Funktionsfähigkeit
4. **Funktionseinführung**: Ermutigen Sie Teams, PR-Review-, Codesuch- und CI/CD-Überwachungsfunktionen zu nutzen

### Support und Ressourcen

Für Unterstützung bei der GitHub-Agent-Konfiguration:

* **Blockbrain Support**: Wenden Sie sich für Hilfe zu bestimmten Funktionen an Ihren Customer Success Manager
* **GitHub-Dokumentation**: Verweisen Sie auf [GitHub-OAuth-Apps-Dokumentation](https://docs.github.com/en/apps/oauth-apps) für detaillierte Informationen zu Berechtigungen
* **GitHub Enterprise**: Wenden Sie sich bei OAuth-App-Richtlinien auf Organisationsebene an Ihren GitHub-Enterprise-Administrator


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.en.theblockbrain.ai/de/fur-administratoren/agenten/github-agent.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
