Publicidad
Patrocinador Verificado
Infraestructura Cloud, GPU Clusters y APIs de IA para Desarrolladores
Despliega pipelines de inferencia y trading con latencia ultra baja. Explora planes.
Conocer Más →

Claude Code CLI: Automatización de Terminal y Desarrollo Autónomo

Por Marcus Sterling • Avanzado • 19 min de lectura • Actualizado 2026-09-12

Lo Que Dominarás en Este Tutorial

  • Install and configure @anthropic-ai/claude-code with proper environment and budget settings.
  • Execute headless repository refactors with one-shot terminal commands.
  • Automate GitHub pull requests with comprehensive commit diffs and test verification.
  • Connect Claude Code CLI to external databases and APIs using FastMCP.

1. Installing and Configuring Claude Code CLI

Claude Code is Anthropic's official terminal-native autonomous coding tool. Designed to operate directly in your shell, it navigates complex repositories, edits files, executes unit tests, and commits changes autonomously.

BASH
# Install Claude Code globally via npm
npm install -g @anthropic-ai/claude-code

# Authenticate with Anthropic API key
export ANTHROPIC_API_KEY="sk-ant-api03-..."

# Launch interactive agent session in any git directory
claude
Nota: Tip: Set cost protection limits in your terminal profile with export CLAUDE_COST_LIMIT=10.0 to prevent runaway API expenditures.
Publicidad
Patrocinador Verificado
Trading Cuantitativo y 30 Modelos de Negocio con IA
Genera ingresos predecibles con retainers mensuales y bots automatizados.
Ver Blueprints →

2. Headless Refactoring & Non-Interactive Invocations

Claude Code can run headlessly in CI/CD pipelines or automated developer scripts using the --print or -p flag, enabling autonomous lint fixes, migrations, and test additions.

BASH
# Run headless refactor across all repository controllers
claude -p "Migrate all Express controllers in src/controllers/*.js to TypeScript strict types. Run npm test after each file. Commit when passing."

# Generate automated pull request description from git diff
claude -p "Review git diff origin/main...HEAD and generate a Markdown PR description with Summary, Breaking Changes, and Testing Evidence."
Nota: Productivity Boost: Chaining Claude Code with shell pipelines allows automating tedious legacy framework migrations overnight.

3. Connecting Custom MCP Servers in CLI

Claude Code supports Anthropic's Model Context Protocol (MCP). You can connect your local PostgreSQL database or Redis cluster directly to the CLI agent so it can query real schemas during code generation.

JSON
# claude.config.json
{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://user:pass@localhost:5432/production"]
    },
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/dev/projects"]
    }
  }
}
Nota: Key Insight: Giving Claude Code direct schema access eliminates 95% of SQL column name and relation errors.

Evaluación Rápida: Pon a Prueba tus Conocimientos

1. What is the primary advantage of Claude Code over web-based chat interfaces?

4. Paso a paso: ejecuta un barrido de refactorización en modo headless

La sección 2 presentó las invocaciones no interactivas; aquí está el patrón completo y funcional para el trabajo para el que existe el modo headless: una refactorización de todo el repositorio que puedes supervisar por resultados en lugar de por pulsaciones de teclas. Tres pasadas: reconocimiento con herramientas de solo lectura, la edición con un conjunto de herramientas acotado y un presupuesto de turnos, y un resumen legible por máquina para tus registros.

BASH
# Pass 1 - recon: plan the change, touch nothing
claude -p "List every file that imports the legacy logger and describe the
change each one needs. Do not edit anything." \
  --allowedTools "Read,Grep,Glob"

# Pass 2 - execute: bounded tools, bounded turns
claude -p "Replace all imports of src/legacy/logger with src/lib/log.
Update the call sites, run the test suite, and stop immediately
if any test fails." \
  --allowedTools "Read,Edit,Bash" --max-turns 20

# Pass 3 - report: JSON summary for CI or your changelog
claude -p "Summarize the changes from this refactor as a changelog entry." \
  --output-format json > refactor-summary.json

Antes de que la pasada 2 se ejecute en serio alguna vez, dale al agente las órdenes permanentes del proyecto en un CLAUDE.md en la raíz del repositorio: Claude Code lo lee al inicio de cada sesión, interactiva o headless:

MARKDOWN
# Project rules
- Run `npm test` before committing; never commit on a red suite.
- Never edit generated files under src/gen/.
- Log through src/lib/log.ts. The legacy logger in src/legacy/ is
  deprecated and is being removed.
- Prefer small, focused diffs over sweeping rewrites.

Verifica con git, no con confianza

La salida en modo headless es una afirmación; el diff es la evidencia. Incorpora la revisión al flujo: después de cada barrido, inspecciona qué cambió realmente antes de que la siguiente pasada construya sobre ello, y cuando dos refactorizaciones sean independientes, ejecútalas en worktrees de git paralelos para que las ediciones de un árbol no contaminen el otro:

BASH
# What did the sweep actually touch?
git diff --stat
git status --porcelain

# A second, independent sweep in its own worktree, in parallel
git worktree add ../repo-docs-sweep HEAD
cd ../repo-docs-sweep
claude -p "Update the README examples to the new logger API from
src/lib/log. Do not change any source files." \
  --allowedTools "Read,Edit" --max-turns 10

El worktree le da al segundo agente una copia completa del mismo commit, con su propio directorio de trabajo y su propia rama, así que ambos barridos avanzan a la vez y se fusionan —o no— como historia normal de git. La autonomía escala cuando la verificación es mecánica.

5. Un ejemplo completo

Pon el barrido sobre rieles: un script de shell corto que refactoriza un módulo por vez y hace commit de cada módulo por separado. Los commits pequeños son la estrategia de supervisión: cada paso se puede revisar con git show y revertir con git revert, y eso es lo que hace aceptable una ejecución sin supervisión:

BASH
#!/usr/bin/env bash
# refactor-sweep.sh - rename a deprecated helper, one module at a time
set -euo pipefail

for module in auth billing reports; do
  echo "== Refactoring $module =="
  claude -p "In src/$module, rename the deprecated getUserData() helper
  to fetchUserProfile() and update every caller in that module.
  Run the module's tests when you are done." \
    --allowedTools "Read,Edit,Bash" --max-turns 15

  git add -A
  git commit -m "refactor($module): rename getUserData to fetchUserProfile"
done

echo "Sweep complete. Review with: git log --oneline -3"

Ejecútalo por la tarde y revisa por la mañana tres commits ordenados. Si la refactorización de billing salió mal, revierte ese commit y vuelve a ejecutar solo ese módulo con un prompt más estricto; los otros dos módulos quedan intactos. Combinado con las conexiones MCP de la sección 3 —acceso a esquemas mientras el agente trabaja—, este es el flujo que convierte el modo headless de demostración en infraestructura.

Más adelante: promueve el barrido a un trabajo nocturno de CI

Cuando el barrido se haya ganado la confianza en local, el mismo script corre sin cambios en CI: lo único que se añade es instalar la CLI y aportar la clave de API como secreto, que es exactamente el patrón de autenticación headless de la lista de solución de errores de abajo. Una ejecución nocturna sobre lo fusionado durante el día mantiene pequeñas las refactorizaciones pequeñas:

YAML
# .github/workflows/nightly-refactor.yml (excerpt)
- name: Install Claude Code
  run: npm install -g @anthropic-ai/claude-code

- name: Run the refactor sweep
  env:
    ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
  run: ./refactor-sweep.sh

Mantén la salida del flujo como una pull request en lugar de un push directo: los commits por módulo llegan listos para revisar y una persona sigue siendo quien fusiona. La automatización propone; las personas disponen.

6. Solución de errores

Recibe 1 plan de agente IA cada semana

Únete al boletín gratuito de PVT: un agente de IA o automatización práctica que puedes construir y vender, cada semana. Sin spam.