/start-11-4.es
Lesson command
$ npx -y skills add minicoohei/ai-agent-camp --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/start-11-4.es
Context preview
What this command does when you run it.
Lesson command
Command definition
start-11-4.es.mddescription: "Lesson command"
chapter: "courses/aiagent/lesson03-core/module11-github-actions"
duration: "~25 min"
prerequisites: ["start-11-2"]
level: "intermediate"
tags: ["github-actions", "claude-code", "codex", "ai", "automation", "code-review"]
nonInteractiveMode: deferred
๐ Lesson 11-4: Llamar a Claude Code / Codex / Cursor desde GitHub Actions
๐ Lo que hara en esta sesion
**Leccion 11-4: Llamar a AI CLI desde GitHub Actions**!
| Elemento | Contenido | |------|------| | Objetivo | Ejecutar Claude Code CLI / Codex CLI dentro de flujos de trabajo de GitHub Actions para realizar revisiones de codigo y generacion automatica de PRs | | Duracion | ~25 min | | Habilidades utilizadas | GitHub Actions, Claude Code CLI, Codex CLI, gh CLI | | Requisitos previos | Leccion 11-2 completada (comprension de la configuracion de Secrets) |
**Flujo de la sesion:** 1. Descripcion general de herramientas AI CLI y patrones de uso 2. Ejecucion de Claude Code en un flujo de trabajo 3. Creacion de un flujo de trabajo de revision automatica de PRs 4. Ejecucion de Codex CLI en un flujo de trabajo 5. Ejercicio practico: Pipeline Issue โ Implementacion AI โ Creacion automatica de PR
Al final de esta sesion, tendra flujos de trabajo construidos que aprovechan las herramientas AI CLI en GitHub Actions.
> **๐ก Consejo**: Si la respuesta de la IA se detiene a mitad de camino, escriba "por favor continue" o "siga adelante" para reanudar.
---
๐ฏ Verificacion de preparacion
**Configuracion de AskQuestion:**
{
"title": "๐ฏ Verificacion previa a la sesion",
"questions": [{
"id": "readiness",
"prompt": "Esta listo/a?",
"options": [
{"id": "ready", "label": "Listo! Comencemos"},
{"id": "check_prereq", "label": "Verificar requisitos previos"},
{"id": "different_lesson", "label": "Ir a otra leccion"}
]
}]
}(ready โ Ir al Step 1) (check_prereq โ Verificar que la Leccion 11-2 esta completada. Verificar el estado de preparacion de las API keys) (different_lesson โ Mostrar lista de modulos)
---
๐ Step 1: Descripcion general de herramientas AI CLI
{
"title": "๐ Step 1: Descripcion general de herramientas AI CLI",
"questions": [{
"id": "step_action",
"prompt": "Revisaremos las herramientas AI CLI disponibles para usar en GitHub Actions.",
"options": [
{"id": "practice", "label": "Continuar"},
{"id": "review", "label": "Revisar las diferencias entre herramientas"},
{"id": "skip", "label": "Omitir"}
]
}]
}**Indicaciones tras la seleccion (ejemplo)**:
| Herramienta | Comando | API Key | Uso principal | |--------|---------|---------|---------| | Claude Code | `claude -p "prompt"` | `ANTHROPIC_API_KEY` | Revision de codigo, implementacion, analisis | | Codex CLI | `codex -q "prompt"` | `OPENAI_API_KEY` | Generacion de codigo, correcciones, preguntas y respuestas |
**Patron comun en GitHub Actions:**
# Las API keys siempre se pasan via Secrets
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}**API keys a configurar en Secrets:**
- `ANTHROPIC_API_KEY`: Para Claude Code (obtener en la consola de Anthropic)
- `OPENAI_API_KEY`: Para Codex (obtener en la consola de OpenAI)
**Resultado esperado**: Comprender las diferencias entre cada herramienta y la configuracion necesaria.
---
๐ Step 2: Ejecucion de Claude Code en un flujo de trabajo
{
"title": "๐ Step 2: Flujo de trabajo de Claude Code",
"questions": [{
"id": "step_action",
"prompt": "Crearemos un flujo de trabajo que ejecuta Claude Code CLI en GitHub Actions.",
"options": [
{"id": "practice", "label": "Continuar"},
{"id": "review", "label": "Revisar las opciones del CLI de claude"},
{"id": "skip", "label": "Omitir"}
]
}]
}**Indicaciones tras la seleccion (ejemplo)**:
Crear `.github/workflows/claude-review.yml`:
name: Claude Code Review
on:
pull_request:
types: [opened, synchronize]
workflow_dispatch:
inputs:
prompt:
description: 'Prompt para enviar a Claude'
type: string
default: 'Analiza la calidad del codigo de este repositorio'
jobs:
claude-review:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Claude Code
run: npm install -g @anthropic-ai/claude-code
- name: Run Claude Code review
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
if [ "${{ github.event_name }}" = "pull_request" ]; then
DIFF=$(git diff ${{ github.event.pull_request.base.sha }}..HEAD)
PROMPT="Revisa el siguiente diff. Resume los problemas, sugerencias de mejora y puntos positivos:\n\n$DIFF"
else
PROMPT="${{ inputs.prompt }}"
fi
claude -p "$PROMPT" --output-format text > review_result.txt
- name: Post review comment
if: github.event_name == 'pull_request'
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const review = fs.readFileSync('review_result.txt', 'utf8');
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: `## ๐ค Claude Code Review\n\n${review}`
});**Puntos clave:**
- `claude -p` pasa el prompt directamente (modo no interactivo)
- En el trigger de PR, se pasa el `git diff` para la revision
- `actions/github-script` publica el resultado de la revision como comentario en el PR
**Resultado esperado**: Cuando se crea un PR, Claude Code realiza una revision automatica y publica un comentario.
---
๐ Step 3: Flujo de trabajo de revision automatica de PRs
{
"title": "๐ Step 3: Revision aRead more
description: "Lesson command" chapter: "courses/aiagent/lesson03-core/module11-github-actions" duration: "~25 min" prerequisites: ["start-11-2"] level: "intermediate" tags: ["github-actions", "claude-code", "codex", "ai", "automation", "code-review"] nonInteractiveMode: deferred
๐ Lesson 11-4: Llamar a Claude Code / Codex / Cursor desde GitHub Actions
๐ Lo que hara en esta sesion
**Leccion 11-4: Llamar a AI CLI desde GitHub Actions**!
| Elemento | Contenido | |------|------| | Objetivo | Ejecutar Claude Code CLI / Codex CLI dentro de flujos de trabajo de GitHub Actions para realizar revisiones de codigo y generacion automatica de PRs | | Duracion | ~25 min | | Habilidades utilizadas | GitHub Actions, Claude Code CLI, Codex CLI, gh CLI | | Requisitos previos | Leccion 11-2 completada (comprension de la configuracion de Secrets) |
**Flujo de la sesion:** 1. Descripcion general de herramientas AI CLI y patrones de uso 2. Ejecucion de Claude Code en un flujo de trabajo 3. Creacion de un flujo de trabajo de revision automatica de PRs 4. Ejecucion de Codex CLI en un flujo de trabajo 5. Ejercicio practico: Pipeline Issue โ Implementacion AI โ Creacion automatica de PR
Al final de esta sesion, tendra flujos de trabajo construidos que aprovechan las herramientas AI CLI en GitHub Actions.
> **๐ก Consejo**: Si la respuesta de la IA se detiene a mitad de camino, escriba "por favor continue" o "siga adelante" para reanudar.
---
๐ฏ Verificacion de preparacion
**Configuracion de AskQuestion:**
{
"title": "๐ฏ Verificacion previa a la sesion",
"questions": [{
"id": "readiness",
"prompt": "Esta listo/a?",
"options": [
{"id": "ready", "label": "Listo! Comencemos"},
{"id": "check_prereq", "label": "Verificar requisitos previos"},
{"id": "different_lesson", "label": "Ir a otra leccion"}
]
}]
}(ready โ Ir al Step 1) (check_prereq โ Verificar que la Leccion 11-2 esta completada. Verificar el estado de preparacion de las API keys) (different_lesson โ Mostrar lista de modulos)
---
๐ Step 1: Descripcion general de herramientas AI CLI
{
"title": "๐ Step 1: Descripcion general de herramientas AI CLI",
"questions": [{
"id": "step_action",
"prompt": "Revisaremos las herramientas AI CLI disponibles para usar en GitHub Actions.",
"options": [
{"id": "practice", "label": "Continuar"},
{"id": "review", "label": "Revisar las diferencias entre herramientas"},
{"id": "skip", "label": "Omitir"}
]
}]
}**Indicaciones tras la seleccion (ejemplo)**:
| Herramienta | Comando | API Key | Uso principal | |--------|---------|---------|---------| | Claude Code | `claude -p "prompt"` | `ANTHROPIC_API_KEY` | Revision de codigo, implementacion, analisis | | Codex CLI | `codex -q "prompt"` | `OPENAI_API_KEY` | Generacion de codigo, correcciones, preguntas y respuestas |
**Patron comun en GitHub Actions:**
# Las API keys siempre se pasan via Secrets
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}**API keys a configurar en Secrets:**
- `ANTHROPIC_API_KEY`: Para Claude Code (obtener en la consola de Anthropic)
- `OPENAI_API_KEY`: Para Codex (obtener en la consola de OpenAI)
**Resultado esperado**: Comprender las diferencias entre cada herramienta y la configuracion necesaria.
---
๐ Step 2: Ejecucion de Claude Code en un flujo de trabajo
{
"title": "๐ Step 2: Flujo de trabajo de Claude Code",
"questions": [{
"id": "step_action",
"prompt": "Crearemos un flujo de trabajo que ejecuta Claude Code CLI en GitHub Actions.",
"options": [
{"id": "practice", "label": "Continuar"},
{"id": "review", "label": "Revisar las opciones del CLI de claude"},
{"id": "skip", "label": "Omitir"}
]
}]
}**Indicaciones tras la seleccion (ejemplo)**:
Crear `.github/workflows/claude-review.yml`:
name: Claude Code Review
on:
pull_request:
types: [opened, synchronize]
workflow_dispatch:
inputs:
prompt:
description: 'Prompt para enviar a Claude'
type: string
default: 'Analiza la calidad del codigo de este repositorio'
jobs:
claude-review:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Claude Code
run: npm install -g @anthropic-ai/claude-code
- name: Run Claude Code review
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
if [ "${{ github.event_name }}" = "pull_request" ]; then
DIFF=$(git diff ${{ github.event.pull_request.base.sha }}..HEAD)
PROMPT="Revisa el siguiente diff. Resume los problemas, sugerencias de mejora y puntos positivos:\n\n$DIFF"
else
PROMPT="${{ inputs.prompt }}"
fi
claude -p "$PROMPT" --output-format text > review_result.txt
- name: Post review comment
if: github.event_name == 'pull_request'
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const review = fs.readFileSync('review_result.txt', 'utf8');
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: `## ๐ค Claude Code Review\n\n${review}`
});**Puntos clave:**
- `claude -p` pasa el prompt directamente (modo no interactivo)
- En el trigger de PR, se pasa el `git diff` para la revision
- `actions/github-script` publica el resultado de la revision como comentario en el PR
**Resultado esperado**: Cuando se crea un PR, Claude Code realiza una revision automatica y publica un comentario.
---
๐ Step 3: Flujo de trabajo de revision automatica de PRs
{
"title": "๐ Step 3: Revision aAI Agent Training for Non-Engineers - Complete Guide to Claude Code / Cursor / Codex ### โ ๏ธ Before you clone Official repository (maintained by the authors): Running AI agents from this repo grants them shell, file-write, and external-API permissions on your
Other commands on ai-agent-camp.
- /check-setup.en
Top-level alias โ see lesson/check-setup.en.md for the full body.
Open command - /check-setup.es
Alias de nivel superior โ el cuerpo completo estรก en lesson/check-setup.es.md.
Open command - /check-setup
Top-level alias โ see lesson/check-setup.md for the full body.
Open command - /check-security.en
Lesson command
Open command - /check-security.es
Lesson command
Open command - /check-security
Lesson command
Open command

