OpenCode GitHub
OpenCode peut s'intégrer profondément aux workflows GitHub, permettant à l'IA de participer directement aux processus d'Issue, de Pull Request et de revue de code.
En saisissant /opencode ou /oc dans un commentaire, vous pouvez déclencher l'IA pour exécuter automatiquement des tâches.
OpenCode GitHub = Transformez l'IA en membre automatisé de votre équipe de développement, participant directement aux workflows Issue, PR et de code.
1. Capacités principales
- Analyse des Issues :Comprendre automatiquement les problèmes et fournir des explications
- Correction automatique :Créer une branche et soumettre une PR
- Revue de code :Analyser la PR et suggérer des améliorations
- Exécution automatisée :S'exécute sur GitHub Actions
Fonctionnalités :
- S'exécute dans votre propre GitHub Runner
- Sécurisé et contrôlable, ne dépend pas de serveurs externes pour exécuter du code
2. Installation rapide (recommandée)
À exécuter dans le répertoire racine du projet GitHub :
opencode github install
Cette commande va automatiquement effectuer :
- Installer l'application GitHub
- Créer un workflow GitHub Actions
- Guide de configuration de la clé API
3. Installation manuelle (avancée)
1. Installer l'application GitHub
Visitez :
https://github.com/apps/opencode-agent
Installer dans votre dépôt
2. Ajouter un fichier de workflow
Créer un fichier :
.github/workflows/opencode.yml
Exemple :
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. Configurer les secrets
Dans le dépôt GitHub :
- Allez dans Paramètres → Secrets → Actions
- Ajouter une clé API (par ex., ANTHROPIC_API_KEY)
4. Référence des paramètres de configuration
| Paramètre | Description |
|---|---|
| model | Modèle à utiliser (obligatoire) |
| agent | Spécifier le proxy |
| prompt | Prompt personnalisé |
| share | Indique s'il faut partager la session |
| token | Jeton GitHub |
Notes :
- Utilise par défaut le OpenCode GitHub App Token
- Vous pouvez également utiliser GITHUB_TOKEN ou PAT
5. Événements déclencheurs pris en charge
| Événement | Description |
|---|---|
| issue_comment | Déclencheur de commentaire /opencode |
| pull_request_review_comment | Déclencheur de commentaire de ligne de code |
| tickets | Ticket créé/mis à jour |
| pull_request | Revue automatique de PR |
| schedule | Tâche planifiée |
| workflow_dispatch | Déclencheur manuel |
6. Méthodes d'utilisation courantes
1. Expliquer le ticket
Dans un commentaire de ticket :
/opencode explain this issue
L'IA résumera le problème et expliquera
2. Corriger automatiquement le problème
/opencode fix this
Automatiquement :
- Créer une branche
- Modifier le code
- Soumettre une Pull Request
3. Modifier la PR
Delete the attachment from S3 when the note is removed /oc
Exécuter des modifications directement sur la PR
4. Opérations au niveau des lignes de code (très puissantes)
Commenter sur la page Fichiers de la PR :
/oc add error handling here
OpenCode récupérera automatiquement :
- Chemin du fichier
- Numéro de ligne
- Diff contextuel
Pas besoin de spécifier manuellement l'emplacement
7. Tâches planifiées (automatisation)
Exemple : analyse hebdomadaire des TODO
on:
schedule:
- cron: "0 9 * * 1"
Exemple de prompt :
Review the codebase for TODO comments and summarize them
Remarque :
- Les tâches planifiées doivent fournir un prompt
- Nécessite des autorisations d'écriture (contents / pull-requests)
8. Revue automatique des PR
Exemple :
on:
pull_request:
types: [opened, synchronize]
Comportement par défaut :
- Analyser la qualité du code
- Détecter les bogues potentiels
- Suggérer des améliorations
9. Classification automatique des Issues
Peut gérer automatiquement les nouvelles Issues, par exemple :
- Filtrer les comptes de spam
- Réponse automatique avec suggestions
- Compléter la documentation
Remarque :
- L'événement issues doit fournir un prompt
10. Prompts personnalisés (utilisation avancée)
Peut remplacer le comportement par défaut :
prompt: | Review this pull request: - Check for bugs - Suggest improvements
Utilisé pour :
- Unification des normes de code
- Personnalisation des critères de revue
- Automatisation des flux de travail d'équipe
11. Sécurité et autorisations
Configuration des autorisations recommandée :
permissions: id-token: write contents: write pull-requests: write issues: write
Notes :
- Principe du moindre privilège
- N'exposer que les capacités nécessaires