Claude Code GitHub Actions
Configura Claude Code GitHub Actions con un secret RunAPI, un modello, permessi, trigger e un workflow minimale.
Panoramica
La anthropics/claude-code-action ufficiale esegue Claude Code in un
flusso di lavoro di GitHub Actions. Questa guida memorizza una chiave RunAPI come segreto GitHub,
impostando il Base URL non sensibile nelle impostazioni di Claude Code, seleziona
un modello e risponde ai commenti @claude autorizzati.
Prima di iniziare
- È necessario avere accesso da amministratore del repository per installare la Claude GitHub App, creare i segreti di Actions e aggiungere un workflow.
- Crea una Chiave API RunAPI standard seguendo la Guida introduttiva all’Autenticazione.
- Copia un identificatore di modello che supporta Anthropic Messages dal Catalogo modelli.
- Consulta la configurazione di Claude Code GitHub Actions e la policy sui workflow della tua organizzazione.
Installa
Da Claude Code nel repository di destinazione, esegui /install-github-app e
segui le istruzioni per installare l’app GitHub. Quando offre di creare
credenziali Anthropic, fermati prima di salvarne una: questa guida utilizza
un segreto di repository o organizzazione RunAPI.
Per la configurazione manuale, installa la Claude GitHub App, quindi aggiungi il
workflow seguente in .github/workflows/claude.yml.
Configura RunAPI
Crea un secret Actions per un repository o un’organizzazione denominato
RUNAPI_API_KEY. Passalo solo tramite l’input secret dell’action:
anthropic_api_key: ${{ secrets.RUNAPI_API_KEY }}
Non inserire la chiave nel file del workflow né nel JSON settings dell’action.
L’action elabora le impostazioni separatamente; solo il Base
URL non sensibile appartiene lì.
Il seguente flusso di lavoro interattivo minimale è in ascolto di nuovi commenti su issue e revisioni di pull request:
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"
Segreti
GitHub non passa i normali segreti di Actions ai flussi di lavoro attivati da pull request di fork o da eventi Dependabot. Se un’esecuzione non ha credenziali, conferma la sorgente dell’evento prima di ruotare la chiave RunAPI. Utilizza la guida ai segreti di Actions di GitHub per l’ambito di repository e organizzazione.
Autorizzazioni
contents: writeconsente all’azione di eseguire il commit delle modifiche al codice.pull-requests: writeeissues: writele permettono di leggere e rispondere alla conversazione che ha avviato il trigger.id-token: writesupporta l’Autenticazione predefinita tramite GitHub App dell’azione.actions: readle consente di esaminare i risultati del workflow.
Usa queste autorizzazioni esplicite al posto di write-all. Rimuovi le funzionalità non necessarie al tuo workflow.
Eventi di attivazione
issue_comment riguarda i commenti nelle issue e nelle conversazioni delle pull request; pull_request_review_comment riguarda i commenti sulle righe di diff. Il file del workflow deve esistere nel branch predefinito affinché issue_comment possa attivarlo. L’azione verifica anche chi ha avviato l’esecuzione; utilizzare il comportamento di sicurezza ufficiale come riferimento canonico.
Scegli un modello
Sostituisci YOUR_RUNAPI_MODEL_ID in claude_args con l’identificatore esatto
dal Catalogo modelli. Mantenere la selezione del modello
al di fuori di settings.env rende il modello scelto dal workflow visibile nella
configurazione dell’azione.
Verifica
- Verifica che il segreto
RUNAPI_API_KEYesista senza stamparne il valore. - Effettua il merge del workflow nel branch predefinito e verifica che le Actions siano abilitate.
- Da un account con accesso in scrittura al repository, aggiungi
@claude describe this repository in one sentencea un commento di una issue. - Apri l’esecuzione del workflow, verifica che l’azione abbia esito positivo e controlla che Claude risponda nella stessa issue.
Risoluzione dei problemi
- Nessun workflow si avvia: conferma che il file si trovi sul branch predefinito, che l’evento di commento corrisponda e che Actions sia abilitato.
- Il job viene saltato: conferma che il commento contenga
@claudee che l’autore abbia l’accesso richiesto al repository. - L’autenticazione non riesce: conferma che il workflow faccia riferimento a
secrets.RUNAPI_API_KEY, quindi ruota la chiave tramite la Authentication Guide se necessario. - Una pull request da fork non può usare la chiave: GitHub trattiene intenzionalmente i secret ordinari dalle esecuzioni avviate da fork. Non sostituire il secret con un valore letterale.
- Il modello non è disponibile: copia l’identificatore esatto dal Model Catalog.
- I commit di Claude non avviano un altro workflow: consulta la risoluzione dei problemi del token GitHub dell’action ufficiale.
Passaggi successivi
Usa la guida introduttiva all’LLM API per il comportamento del protocollo e il Riferimento API Anthropic Messages per i campi di richiesta. Per ulteriori trigger e input di azione, usa gli esempi ufficiali e il riferimento alla configurazione.