#024

Claude Code puede trabajar mientras duermes

Con el flag -p, Claude Code se convierte en un agente headless que puedes programar con cron. Combinado con --allowedTools, tienes automatización autónoma con IA.

Claude Code no es solo un asistente interactivo. Con el flag -p (print), se convierte en un agente headless que puedes lanzar desde scripts, pipelines de CI/CD, o — y aquí viene lo interesante — desde un cron job.

La diferencia con un script normal es que Claude no ejecuta pasos fijos: razona sobre el contexto en el momento y decide qué hacer. Combinado con --allowedTools para controlar sus permisos, tienes un agente AI completamente autónomo que trabaja mientras duermes.

TL;DR claude -p "prompt" --allowedTools "Read" "Bash(curl *)" convierte a Claude en un agente autónomo que puedes programar con cron. No es un script estático — es un agente que razona y toma decisiones.

Ejemplo — cron job que revisa logs de staging cada noche:

# crontab -e
0 3 * * * cd /home/deploy/app && claude -p "Review logs/staging.log from the last 24h. \
  If you find errors, create a GitHub issue with the stack trace. \
  If clean, post a summary to Slack via curl." \
  --allowedTools "Read" "Bash(curl *)" "Bash(gh issue create *)" \
  --max-turns 10 \
  --max-budget-usd 0.50 \
  --output-format json >> /var/log/claude-review.log 2>&1

Cómo funciona

1. Uso básico

# Prompt directo
claude -p "explain this function"

# Piping de stdin
cat error.log | claude -p "explain these errors and suggest fixes"

# Continuar una sesión anterior
claude -c -p "check for type errors in the last changes"

El flag -p desactiva la interfaz interactiva. Claude procesa el prompt, ejecuta las acciones necesarias y devuelve el resultado a stdout.

2. Controlar los permisos

# Solo lectura — análisis sin riesgo
claude -p "audit this codebase" --allowedTools "Read" "Glob" "Grep"

# Lectura + HTTP — puede notificar pero no modificar
claude -p "check health" --allowedTools "Read" "Bash(curl *)"

# Todo permitido (cuidado)
claude -p "fix all lint errors" --dangerously-skip-permissions

--allowedTools es la clave de la automatización segura. Define exactamente qué herramientas puede usar Claude, con pattern matching para comandos específicos.

3. Limitar coste y ejecución

claude -p "complex analysis" \
  --max-turns 15 \
  --max-budget-usd 1.00

--max-turns limita cuántas acciones puede tomar. --max-budget-usd pone un tope de gasto. Ambos son esenciales para ejecución desatendida.

4. Formato de salida para scripts

# JSON para parsear programáticamente
claude -p "list all TODO comments" --output-format json

# Streaming JSON para procesamiento en tiempo real
claude -p "analyze" --output-format stream-json

Referencia

Flag Qué hace Ejemplo
-p / --print Activa el modo headless claude -p "query"
--allowedTools Herramientas permitidas --allowedTools "Read" "Bash(curl *)"
--max-turns Límite de acciones --max-turns 10
--max-budget-usd Tope de gasto --max-budget-usd 0.50
--output-format Formato de salida --output-format json
--dangerously-skip-permissions Salta todos los permisos Usar con precaución

Official docs: Ejecutar Claude Code programáticamente

En directo en Twitch

Esto que acabas de leer lo aplico en directo en Twitch. Ven a verlo.

Ver directos

Recibe solo lo esencial

Si no hay nada que decir, no escribo. Si hay algo importante, te aviso. 7.000+ profesionales ya confían en esto.

¿Eres desarrollador/a Web profesional?
No

Cancela la suscripción en cualquier momento.