Part 8 of 10
Has estado usando Claude Code en local—comandos, skills, subagentes, servidores MCP. Ha transformado tu forma de trabajar. Pero ¿qué pasa cuando no estás en tu terminal? ¿Y tu equipo?
La integración de Claude Code con GitHub te permite @mencionar a Claude directamente en issues y PRs. Tu equipo puede obtener asistencia de IA sin que todos instalen nada en local. Y con GitHub Actions, Claude puede revisar cada PR automáticamente.
La integración con GitHub
Con una simple mención @claude en cualquier PR o issue, Claude puede:
- Analizar código — Revisar PRs, explicar cambios, encontrar problemas
- Crear pull requests — Implementar funcionalidades desde la descripción de issues
- Corregir errores — Investigar, identificar la causa raíz, enviar parches
- Responder preguntas — Explicar patrones del código base y arquitectura
- Seguir tus estándares — Usa las convenciones de tu CLAUDE.md
Todo esto ocurre de forma asíncrona. Mencionas @claude, vas por un café y vuelves a encontrarte con un PR o un análisis detallado.
Instalación
La forma más fácil de configurar es a través del propio Claude Code:
Claude/install-github-app
Este comando te guía a través de:
- Instalar la GitHub App de Claude en tu repositorio
- Autorizar los permisos necesarios
- Configurar el secreto
ANTHROPIC_API_KEY
Necesitas acceso de administrador al repositorio para completar la instalación.
Configuración manual
Si prefieres la configuración manual:
- Crea el archivo de workflow en
.github/workflows/claude.yml:
Name: Claude Code AssistantOn:issue_comment:types: [created]pull_request:types: [opened, synchronize]issues:types: [opened, labeled]Permissions:contents: readpull-requests: writeissues: writeJobs:claude:runs-on: ubuntu-lateststeps:- uses: actions/checkout@v4with:fetch-depth: 0- uses: anthropics/claude-code-action@v1with:anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
-
Agrega tu clave API: Configuración del repositorio → Secrets → Añadir
ANTHROPIC_API_KEY -
Haz commit y push del archivo de workflow
Menciones @claude
Una vez instalado, menciona @claude en cualquier issue o PR para activar la asistencia.
En Issues
@claude implement this feature following our auth patterns
Claude analiza el issue, crea un plan y abre un PR con la implementación.
@claude investigate why users are seeing timeout errors in the checkout flow
Claude explora el código base, identifica las posibles causas e informa de sus hallazgos.
En Pull Requests
@claude review this PR for security issues
Claude analiza el diff, comenta en líneas específicas y proporciona un resumen.
@claude explain why this approach was chosen over using a state machine
Claude lee los cambios, entiende el contexto y explica el razonamiento.
En comentarios de PRs
@claude can you refactor this to use async/await instead of callbacks?
Claude actualiza el código y hace push de un nuevo commit al PR.
@claude add tests for the edge cases you identified
Claude escribe y hace commit de los tests adicionales.
Disparadores de workflow
Configura cuándo se activa Claude:
Activado por comentario (interactivo)
On:issue_comment:types: [created]
Claude responde a menciones @claude en comentarios. El más flexible—los miembros del equipo lo activan cuando lo necesitan.
Activado por PR (revisión automática)
On:pull_request:types: [opened, synchronize]
Claude revisa automáticamente cada nuevo PR y cuando se hacen push de nuevos commits. Añade un prompt para especificar qué buscar:
- uses: anthropics/claude-code-action@v1with:anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}prompt: "Review this PR for security vulnerabilities, performance issues, and adherence to our coding standards"
Activado por issue (triaje automático)
On:issues:types: [opened, labeled]
Claude puede hacer triaje de nuevos issues, agregar etiquetas o iniciar la implementación cuando se aplican etiquetas específicas.
Programado (mantenimiento)
On:schedule:- cron: '0 9 * * 1' # Every Monday at 9 AM
Ejecuta tareas de mantenimiento: actualización de dependencias, renovación de documentación, chequeos de salud del código base.
Patrones de workflow en producción
Patrón 1: Revisión de doble ciclo
Combina verificaciones automatizadas con revisión de IA:
Jobs:automated-checks:runs-on: ubuntu-lateststeps:- uses: actions/checkout@v4- run: npm ci- run: npm run lint- run: npm run typecheck- run: npm run testai-review:needs: automated-checksruns-on: ubuntu-lateststeps:- uses: actions/checkout@v4- uses: anthropics/claude-code-action@v1with:anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}prompt: |Review this PR for:1. Logic errors the linter wouldn't catch2. Architecture and design concerns3. Performance implications4. Missing edge casesAutomated checks already passed. Focus on higher-level review.
Por qué funciona: Los linters detectan problemas de sintaxis. Claude detecta problemas de diseño. Juntos son completos.

Patrón 2: Desarrollo dirigido por especificaciones
Estructura tu flujo de trabajo desde los requisitos hasta la implementación:
1. Fase de requisitos└── Crear issue detallado con criterios de aceptación└── @claude para crear plan de implementación└── Revisar y refinar el plan2. Fase de implementación└── Aprobar plan → Claude crea PR└── Se ejecutan tests automáticos└── Revisión humana3. Fase de merge└── Aprobación final└── Merge y deploy
Ejemplo de issue:
## Feature: User Export### Requirements- Export user data as CSV or JSON- Include: name, email, signup date, last login- Admins only- Max 10,000 records per export### Acceptance Criteria- [ ] Export button on admin dashboard- [ ] Format selection (CSV/JSON)- [ ] Progress indicator for large exports- [ ] Download link sent via email for exports > 1000 records@claude implement this following our existing export patterns in src/exports/
Patrón 3: Pipeline de corrección de bugs
Investigación y corrección de bugs optimizada:
## Bug: Checkout fails for international addresses### Reproduction1. Add item to cart2. Enter shipping address with non-US country3. Click "Continue to Payment"4. Error: "Invalid address format"### ExpectedCheckout should accept international addresses@claude investigate and fix this bug
Claude hará lo siguiente:
- Analizar el código base buscando el manejo de direcciones
- Identificar la causa raíz
- Crear un PR con la corrección
- Añadir tests para direcciones internacionales
Patrón 4: Revisiones específicas por ruta
Activa diferente profundidad de revisión según lo que haya cambiado:
Jobs:security-review:if: contains(github.event.pull_request.changed_files, 'auth/') ||contains(github.event.pull_request.changed_files, 'payments/')runs-on: ubuntu-lateststeps:- uses: anthropics/claude-code-action@v1with:anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}prompt: |CRITICAL SECURITY REVIEWThis PR modifies authentication or payment code.Perform a thorough security audit:- Check for injection vulnerabilities- Verify authentication/authorization- Look for data exposure risks- Validate input sanitizationFlag any concerns for human review before merge.
Configuración para equipos
CLAUDE.md compartido para equipos
El CLAUDE.md de tu proyecto lo usan tanto Claude Code en local como GitHub Actions. Incluye instrucciones específicas para el equipo:
Importante: Cuando mencionas @claude en GitHub, automáticamente lee la configuración de CLAUDE.md de la Parte 3 para entender los estándares, convenciones y restricciones de tu equipo.
# Team Project Standards## @claude TriggersWhen responding to GitHub mentions:- `@claude review` - Full code review with security focus- `@claude implement` - Create PR from issue description- `@claude fix` - Investigate and patch bugs- `@claude explain` - Explain code or architecture decisions- `@claude triage` - Analyze and label new issues## PR Requirements- All PRs require passing tests before Claude review- Security-critical changes require human approval- Database migrations require team lead review## Coding Conventions[Your existing coding standards...]## Restricted AreasDo not automatically modify:- config/production.json - Requires manual review- database/migrations/ - Requires team lead approval- src/auth/ - Security-critical, flag for review- src/payments/ - PCI compliance, flag for review
Límites de permisos
Configura lo que Claude puede y no puede hacer:
Permissions:contents: read # Can read filespull-requests: write # Can comment on PRsissues: write # Can comment on issues# Note: Cannot merge PRs without additional config
Siempre requiere aprobación humana para los merges. Claude puede revisar, sugerir e incluso hacer commit—pero un humano debería hacer clic en el botón de merge.

Opciones de autenticación
API directa (recomendado)
- uses: anthropics/claude-code-action@v1with:anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
Lo más directo. Pagas por token a través de tu cuenta de Anthropic.
Amazon Bedrock
- uses: anthropics/claude-code-action@v1with:provider: bedrockaws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}aws_region: us-east-1
Para entornos empresariales con infraestructura AWS.
Google Vertex AI
- uses: anthropics/claude-code-action@v1with:provider: vertexgcp_project_id: ${{ secrets.GCP_PROJECT_ID }}gcp_region: us-central1
Para equipos en Google Cloud.
Gestión de costes
El uso de GitHub Actions + tokens de API puede acumularse. Monitoriza y controla los costes:
Establece límites de tokens
- uses: anthropics/claude-code-action@v1with:anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}max_tokens: 4096
Limita la frecuencia de activación
On:pull_request:types: [opened] # Only on open, not on every pushpaths:- 'src/**' # Only when source files change- '!**.md' # Ignore documentation changes
Usa etiquetas como filtros
On:pull_request:types: [labeled]Jobs:claude-review:if: github.event.label.name == 'needs-ai-review'
Solo se activa cuando se aplica una etiqueta específica.
Mejores prácticas
1. Sé específico con las instrucciones
# Vago (peores resultados)@claude review this# Específico (mejores resultados)@claude review this PR for SQL injection vulnerabilitiesIn the new user search endpoint, focusing on the queryConstruction in src/api/users.ts
2. Proporciona contexto
@claude implement this featureThis should follow the same patterns as our existingExport functionality in src/exports/. Use the ExportJobQueue for async processing like we do for report generation.
3. Itera y refina
Trata a Claude como un desarrollador junior que se beneficia del feedback:
@claude that's close, but we need to handle the caseWhere the user has no email address. Can you add aFallback to use their username instead?
4. Documenta los comandos del equipo
Crea una referencia del equipo para el uso de @claude:
## Team @claude Commands Reference- `@claude review` — Full code review — Use on all PRs- `@claude security` — Security-focused review — Use on auth/payment changes- `@claude implement` — Create implementation — Use on feature issues- `@claude fix` — Investigate and patch — Use on bug issues- `@claude explain` — Explain code/decisions — Use for onboarding, complex PRs
Nota: Para organizar comandos personalizados para todo el equipo que funcionen en local (no solo en GitHub), consulta Comandos globales vs de proyecto en la Parte 4.
5. Protege el código sensible
Configura a Claude para que señale en lugar de modificar las áreas críticas:
## In CLAUDE.mdWhen reviewing or implementing changes that touch:- src/auth/- src/payments/- config/production.json- database/migrations/DO NOT make changes directly. Instead:1. Flag the file as security-critical2. Describe what changes would be needed3. Request human review before any modifications
Solución de problemas
Claude no responde a las menciones
- Verifica que el archivo de workflow existe en
.github/workflows/claude.yml - Comprueba que el secreto
ANTHROPIC_API_KEYestá configurado - Revisa los logs de ejecución del workflow en la pestaña Actions
- Asegúrate de que el disparador issue_comment está configurado
La respuesta se corta
Los límites de tokens pueden ser demasiado bajos. Aumenta max_tokens en la configuración de la action.
Claude hace suposiciones incorrectas
Agrega más contexto a CLAUDE.md o sé más específico en tu mención.
Costes elevados
- Usa disparadores controlados por etiquetas en lugar de automáticos en cada PR
- Limita a rutas de archivo específicas
- Reduce max_tokens
- Usa Haiku para tareas simples, Opus para las complejas
Qué viene después
Ahora tienes a Claude integrado en tu flujo de desarrollo—en local y en GitHub. Comandos, skills, subagentes, servidores MCP y GitHub Actions te dan un kit completo de desarrollo asistido por IA.
En la Parte 9: Secretos de usuario avanzado, exploraremos técnicas avanzadas en las que confían los usuarios experimentados: patrones de ingeniería de prompts, estrategias de depuración y flujos de trabajo que maximizan las capacidades de Claude.
Configuración — /install-github-app
Archivo de workflow — .github/workflows/claude.yml
Comandos comunes de @claude
@claude review — Revisión de código
@claude implement — Construir desde un issue
@claude fix — Depurar y parchear
@claude explain — Explicar código
@claude add tests — Escribir tests
@claude refactor — Limpiar código
Disparadores de workflow
issue_comment — Menciones @claude
pull_request — Revisión automática de PRs
issues — Triaje de issues
schedule — Mantenimiento programado
Stay Updated
Get notified about new posts on automation, productivity tips, indie hacking, and web3.
No spam, ever. Unsubscribe anytime.

