OpenCode GitHub

OpenCode kann tief in GitHub-Workflows integriert werden, sodass KI direkt an Issue-, Pull-Request- und Code-Review-Prozessen teilnehmen kann.

Durch die Eingabe von /opencode oder /oc in einem Kommentar kannst du KI auslösen, Aufgaben automatisch auszuführen.

OpenCode GitHub = Verwandle KI in dein automatisiertes Entwicklungsteammitglied, das direkt an Issue-, PR- und Code-Workflows teilnimmt.


1. Kernfunktionen

  • Issue-Analyse:Probleme automatisch verstehen und Erklärungen liefern
  • Automatische Korrektur:Einen Branch erstellen und einen PR einreichen
  • Code-Review:PR analysieren und Verbesserungen vorschlagen
  • Automatisierte Ausführung:Läuft auf GitHub Actions

Funktionen:

  • Läuft in deinem eigenen GitHub Runner
  • Sicher und kontrollierbar, ist nicht auf externe Server angewiesen, um Code auszuführen

2. Schnellinstallation (Empfohlen)

Im GitHub-Projektstammverzeichnis ausführen:

opencode github install

Dieser Befehl führt automatisch Folgendes aus:

  • GitHub App installieren
  • GitHub Actions Workflow erstellen
  • Anleitung zur Konfiguration des API-Schlüssels

3. Manuelle Installation (Erweitert)

1. GitHub App installieren

Besuchen Sie:

https://github.com/apps/opencode-agent

In Ihrem Repository installieren


2. Workflow-Datei hinzufügen

Datei erstellen:

.github/workflows/opencode.yml

Beispiel:

name: opencode

on:
  issue_comment:
    types: [created]
  pull_request_review_comment:
    types: [created]

jobs:
  opencode:
    if: |
      contains(github.event.comment.body, '/oc') ||
      contains(github.event.comment.body, '/opencode')
    runs-on: ubuntu-latest
    permissions:
      id-token: write
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
        with:
          fetch-depth: 1
          persist-credentials: false

      - name: Run OpenCode
        uses: anomalyco/opencode/github@latest
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
        with:
          model: anthropic/claude-sonnet-4-20250514

3. Secrets konfigurieren

Im GitHub-Repository:

  • Gehen Sie zu Einstellungen → Secrets → Actions
  • API-Schlüssel hinzufügen (z. B. ANTHROPIC_API_KEY)

4. Referenz der Konfigurationsparameter

Parameter Beschreibung
model Zu verwendendes Modell (erforderlich)
agent Proxy angeben
prompt Benutzerdefinierter Prompt
share Ob die Sitzung geteilt werden soll
Token GitHub-Token

Notizen:

  • Verwendet standardmäßig das OpenCode GitHub App Token
  • Du kannst auch GITHUB_TOKEN oder PAT verwenden

5. Unterstützte Trigger-Ereignisse

Ereignis Beschreibung
issue_comment Kommentar-Trigger /opencode
pull_request_review_comment Trigger für Codezeilen-Kommentare
issues Issue erstellt/aktualisiert
pull_request Automatische PR-Überprüfung
schedule Geplante Aufgabe
workflow_dispatch Manueller Trigger

6. Häufige Verwendungsmethoden

1. Issue erklären

Im Issue-Kommentar:

/opencode explain this issue

Die KI fasst das Problem zusammen und erklärt es


2. Issue automatisch beheben

/opencode fix this

Automatisch:

  • Branch erstellen
  • Code ändern
  • Pull Request einreichen

3. PR ändern

Delete the attachment from S3 when the note is removed /oc

Änderungen direkt am PR vornehmen


4. Code-Operationen auf Zeilenebene (sehr leistungsstark)

Kommentieren Sie auf der Dateien-Seite des PR:

/oc add error handling here

OpenCode ruft automatisch ab:

  • Dateipfad
  • Zeilennummer
  • Kontext-Diff

Der Ort muss nicht manuell angegeben werden


7. Geplante Aufgaben (Automatisierung)

Beispiel: Wöchentlicher TODO-Scan

on:
  schedule:
    - cron: "0 9 * * 1"

Beispiel-Prompt:

Review the codebase for TODO comments and summarize them

Hinweis:

  • Geplante Aufgaben müssen einen Prompt angeben
  • Erfordert Schreibberechtigungen (contents / pull-requests)

8. Automatische PR-Überprüfung

Beispiel:

on:
  pull_request:
    types: [opened, synchronize]

Standardverhalten:

  • Codequalität analysieren
  • Potenzielle Fehler erkennen
  • Verbesserungen vorschlagen

9. Automatische Issue-Klassifizierung

Kann neue Issues automatisch verarbeiten, zum Beispiel:

  • Spam-Konten filtern
  • Automatische Antwort mit Vorschlägen
  • Dokumentation ergänzen

Hinweis:

  • Das issues-Ereignis muss einen Prompt bereitstellen

10. Benutzerdefinierte Prompts (Erweiterte Nutzung)

Kann das Standardverhalten überschreiben:

prompt: |
  Review this pull request:
  - Check for bugs
  - Suggest improvements

Verwendet für:

  • Vereinheitlichung von Codestandards
  • Anpassen von Review-Kriterien
  • Automatisierung von Team-Workflows

11. Sicherheit und Berechtigungen

Empfohlene Berechtigungskonfiguration:

permissions:
  id-token: write
  contents: write
  pull-requests: write
  issues: write

Notizen:

  • Prinzip der minimalen Berechtigungen
  • Nur notwendige Funktionen bereitstellen
Weitere Erweiterungen