Claude Code GitHub Actions
Claude Code GitHub Actions mit einem RunAPI-Secret, Modell, Berechtigungen, Auslösern und einem minimalen Workflow konfigurieren.
Übersicht
Die offizielle anthropics/claude-code-action führt Claude Code in einem
GitHub Actions-Workflow aus. Diese Anleitung speichert einen RunAPI-Schlüssel als GitHub
Secret, legt die nicht sensible Basis-URL in den Claude Code-Einstellungen fest, wählt
ein Modell aus und reagiert auf autorisierte @claude-Kommentare.
Bevor Sie beginnen
- Sie benötigen Repository-Administratorzugriff, um die Claude GitHub-App zu installieren, Actions-Secrets zu erstellen und einen Workflow hinzuzufügen.
- Erstellen Sie einen Standard-RunAPI-API-Schlüssel gemäß der Authentifizierungsanleitung.
- Kopieren Sie eine Modellkennung, die Anthropic Messages unterstützt, aus dem Modellkatalog.
- Lesen Sie die Claude Code GitHub Actions-Einrichtungsanleitung sowie die Workflow-Richtlinie Ihrer Organisation.
Installieren
Führen Sie in Claude Code im Ziel-Repository /install-github-app aus und folgen Sie den Anweisungen, um die GitHub-App zu installieren. Wenn die Option angeboten wird, eine Anthropic-Berechtigung zu erstellen, stoppen Sie, bevor Sie diese speichern: Diese Anleitung verwendet stattdessen ein RunAPI-Repository- oder Organisationsgeheimnis.
Für die manuelle Einrichtung installieren Sie die Claude GitHub App und fügen Sie dann den folgenden Workflow zu .github/workflows/claude.yml hinzu.
RunAPI konfigurieren
Erstellen Sie ein Repository- oder Organisations-Actions-Secret namens
RUNAPI_API_KEY. Übergeben Sie es nur über die Secret-Eingabe der Action:
anthropic_api_key: ${{ secrets.RUNAPI_API_KEY }}
Fügen Sie den Schlüssel nicht in die Workflow-Datei oder das settings-JSON der Aktion ein. Die Aktion verarbeitet Einstellungen separat; nur die nicht sensible Basis-URL gehört dorthin.
Der folgende minimale interaktive Workflow reagiert auf neue Issue- und Pull-Request-Review-Kommentare:
name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
jobs:
claude:
if: contains(github.event.comment.body, '@claude')
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
actions: read
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 1
- uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.RUNAPI_API_KEY }}
settings: |
{
"env": {
"ANTHROPIC_BASE_URL": "https://runapi.ai"
}
}
claude_args: "--model YOUR_RUNAPI_MODEL_ID"
Geheimnisse
GitHub leitet gewöhnliche Actions-Geheimnisse nicht an Workflows weiter, die durch Pull-Requests aus Forks oder Dependabot-Ereignisse ausgelöst werden. Wenn eine Ausführung keine Berechtigung hat, überprüfen Sie die Ereignisquelle, bevor Sie den RunAPI-Schlüssel rotieren. Verwenden Sie GitHubs Actions-Geheimnisse-Leitfaden für Repository- und Organisationsbereich.
Berechtigungen
contents: writeerlaubt der Action, Codeänderungen zu committen.pull-requests: writeundissues: writeerlauben ihr, die auslösende Unterhaltung zu lesen und darauf zu antworten.id-token: writeunterstützt die Standard-GitHub-App-Authentifizierung der Action.actions: readerlaubt ihr, Workflow-Ergebnisse einzusehen.
Verwenden Sie diese expliziten Berechtigungen anstelle von write-all. Entfernen Sie Funktionen, die Ihr Workflow nicht benötigt.
Auslösende Ereignisse
issue_comment umfasst Kommentare in Issues und Pull-Request-
Gesprächen; pull_request_review_comment umfasst Kommentare in Diff-
Zeilen. Die Workflow-Datei muss im Standard-Branch vorhanden sein, bevor
issue_comment sie auslösen kann. Die Action prüft außerdem, wer den
Run initiiert hat; verwenden Sie das offizielle Sicherheitsverhalten als maßgebliche Referenz.
Ein Modell auswählen
Ersetzen Sie YOUR_RUNAPI_MODEL_ID in claude_args durch den genauen
Bezeichner aus dem Modellkatalog. Wenn Sie die Modellauswahl
außerhalb von settings.env halten, ist das vom Workflow gewählte Modell in der
Aktionskonfiguration sichtbar.
Überprüfen
- Bestätigen Sie, dass das Secret
RUNAPI_API_KEYvorhanden ist, ohne seinen Wert auszugeben. - Mergen Sie den Workflow in den Standard-Branch und vergewissern Sie sich, dass Actions aktiviert sind.
- Fügen Sie von einem Konto mit Repository-Schreibzugriff
@claude describe this repository in one sentenceals Issue-Kommentar hinzu. - Öffnen Sie den Workflow-Run, vergewissern Sie sich, dass die Action erfolgreich war, und überprüfen Sie, ob Claude im selben Issue antwortet.
Fehlerbehebung
- Kein Workflow startet: Vergewissern Sie sich, dass die Datei sich im Standard-Branch befindet, das Kommentarereignis übereinstimmt und Actions aktiviert sind.
- Der Job wird übersprungen: Vergewissern Sie sich, dass der Kommentar
@claudeenthält und der Akteur den erforderlichen Repository-Zugriff hat. - Authentifizierung schlägt fehl: Vergewissern Sie sich, dass der Workflow auf
secrets.RUNAPI_API_KEYverweist, und rotieren Sie den Schlüssel bei Bedarf über die Authentifizierungsanleitung. - Eine Fork-Pull-Request kann den Schlüssel nicht verwenden: GitHub enthält gewöhnlichen Secrets aus fork-ausgelösten Ausführungen absichtlich vor. Ersetzen Sie das Secret nicht durch einen Literal-Wert.
- Das Modell ist nicht verfügbar: Kopieren Sie die genaue Kennung aus dem Modellkatalog.
- Claude-Commits starten keinen weiteren Workflow: Lesen Sie die offizielle GitHub-Token-Fehlerbehebung der Action.
Nächste Schritte
Verwende den LLM API quickstart für das Protokollverhalten und die Anthropic Messages API Reference für Anfrage-Felder. Für weitere Trigger und Aktionseingaben verwende die offiziellen Beispiele und die Konfigurationsreferenz.