Claude Code en CI/CD y Flujos de Equipo

En el film, M3gan es la IA que opera sola — sin supervisión constante, cumpliendo protocolos, reaccionando a eventos. Exactamente así funciona Claude Code cuando lo integrás en un pipeline de CI/CD: sin interfaz humana, ejecutando tareas de análisis, revisión y validación de código de forma autónoma, cada vez que alguien hace un push.

M3gan sin supervisión: modo headless

El modo interactivo de Claude Code (donde escribís prompts y leés respuestas en tiempo real) es perfecto para desarrollo local. Pero en CI/CD no hay humano mirando: necesitás que Claude Code reciba instrucciones, las ejecute y devuelva un resultado que el pipeline pueda usar.

Eso es el modo headless. En la película, es M3gan operando en su habitación a las 3 AM sin que Gemma lo sepa.

Modo headless = Claude Code sin interfaz interactiva. Recibe el prompt como argumento, ejecuta, retorna resultado (y exit code), y sale.

El flag central: --print / -p

Sintaxis básica — modo headless

💡 --print recibe el prompt directo como argumento de CLI. La respuesta va a stdout. Los errores van a stderr. Así el pipeline puede separar ambos.

--output-format: cómo M3gan habla con las máquinas

Por defecto Claude Code responde en texto plano — ideal para leer en la terminal, inútil para parsear en un script. Con --output-format controlás el formato:

Ejemplo: parsear respuesta JSON con jq

Exit codes: el lenguaje que habla el pipeline

El examen pregunta esto: exit code 1 ≠ exit code 2. Uno es error de Claude Code (no llegó a intentarlo), el otro es que Claude lo intentó pero no pudo. La diferencia importa para decidir qué hace el pipeline.

El laboratorio de Gemma: GitHub Actions

En M3gan, el laboratorio de Gemma (Funki) es donde M3gan cobra vida. En tu proyecto, el equivalente es el workflow de GitHub Actions donde Claude Code se despierta con cada PR o push.

El patrón más común: code review automatizado. Claude Code lee los archivos modificados, analiza calidad, seguridad y adherencia a estándares, y comenta en el PR.

Workflow básico: revisión automática de PRs

archivo: .github/workflows/claude-review.yml

Puntos clave del workflow: (1) ANTHROPIC_API_KEY como secret, nunca hardcodeada. (2) --allowedTools Read,Glob para dar solo permisos de lectura. (3) --max-turns para evitar loops. (4) --output-format json para parsear el resultado.

🎯 TRAMPA DE EXAMEN: El workflow usa permissions: pull-requests: write — sin esto, el bot no puede comentar en el PR. El examen puede preguntar qué permiso de GitHub falta cuando el step falla al publicar el comentario.

M3gan vigila cada commit: pre-commit hooks

Antes de GitHub Actions, el primer filtro es el pre-commit hook. M3gan intercepta el commit antes de que llegue al remote — si algo está mal, el commit no pasa.

Los hooks viven en .git/hooks/ y son scripts de shell que git ejecuta automáticamente en distintos momentos del flujo de trabajo.

Hook pre-commit con Claude Code

archivo: .git/hooks/pre-commit  (o via pre-commit framework)

💡 Usá exit 1 para bloquear el commit, exit 0 para aprobarlo. Git respeta ese exit code — si el hook retorna 1, git abort el commit automáticamente.

Hook pre-push: análisis más profundo

archivo: .git/hooks/pre-push

La regla de oro: pre-commit debe ser RÁPIDO (segundos) — Claude Code con --max-turns 5 y ReadOnly. Pre-push puede ser más exhaustivo. Si el pre-commit tarda 30 segundos, los devs lo desactivan.

Los protocolos de M3gan: seguridad en CI/CD

En la película, M3gan tiene protocolos internos que definen qué puede y qué no puede hacer. Sin esos límites, el resultado es el caos. Lo mismo aplica a Claude Code en CI: sin restricciones explícitas, el agente puede hacer más de lo que querés — y en un pipeline automatizado, eso es peligroso.

Los 3 protocolos de seguridad esenciales

Anti-patrón crítico: dar --allowedTools Bash en CI sin limitar qué comandos puede ejecutar Bash. Con acceso irrestricto a Bash, Claude Code puede hacer git push, borrar archivos, instalar paquetes, o hacer llamadas a APIs externas — todo desde tu pipeline.

Configuración segura vs. insegura en CI

La programación de M3gan: CLAUDE.md y settings de equipo

M3gan tiene su programación base que define quién es y cómo se comporta. Para Claude Code en equipos, ese rol lo cumple la combinación de CLAUDE.md + .claude/settings.json: el primero da contexto y personalidad al agente, el segundo impone restricciones técnicas.

Jerarquía de configuración: quién le gana a quién

CLAUDE.md para equipos: qué incluir

Cuando varios developers usan Claude Code en el mismo proyecto, el CLAUDE.md actúa como el manual de incorporación del agente. Todo lo que le dirías a un nuevo dev en el onboarding, se lo decís a Claude Code en el CLAUDE.md.

Estructura recomendada de CLAUDE.md para equipos

💡 Usá @import (con la arroba) en CLAUDE.md para referenciar otros docs del proyecto. Claude Code los incluye automáticamente en el contexto sin duplicar el contenido.

.claude/settings.json: restricciones técnicas del equipo

.claude/settings.json — se commitea al repo

Diferencia clave: .claude/settings.json impone restricciones técnicas (qué puede hacer el agente). CLAUDE.md da instrucciones y contexto (cómo debe comportarse). Ambos se complementan y ambos se commitean al repo del equipo.

El panel de control de M3gan: referencia rápida de flags

--print es el ON/OFF del modo headless. --output-format es cómo habla Claude Code con el pipeline. --allowedTools es la lista de lo que puede hacer. --max-turns es su límite de energía. Todo lo demás es configuración de entorno.

M3gan siempre estuvo ahí, vigilando el pipeline

La pregunta final de este módulo no es si Claude Code puede integrarse en CI/CD — puede, y lo hace bien. La pregunta es si lo configurás correctamente: los permisos mínimos necesarios, los límites de turnos, el formato de output que el pipeline puede procesar, y el CLAUDE.md que le da al agente el contexto del proyecto.

Igual que M3gan, un agente bien configurado es una herramienta extraordinariamente útil. Sin configuración, puede hacer demasiado — o nada en absoluto.

El siguiente módulo te espera: Tool Use, Context Management y Agentic Architecture. Todo lo que aprendiste sobre Claude Code en este módulo va a ser el andamiaje sobre el que se construyen esos conceptos.