Primeros pasos

Claude Code proporciona dos formas principales de interactuar:

  • Modo interactivo: Ejecuta claude para iniciar una sesión REPL
  • Modo de un solo uso: Usa claude -p "consulta" para comandos rápidos
# Iniciar modo interactivo
claude

# Iniciar con una consulta inicial
claude "explica este proyecto"

# Ejecutar un solo comando y salir
claude -p "¿qué hace esta función?"

# Procesar contenido mediante pipe
cat logs.txt | claude -p "analiza estos errores"

Comandos CLI

ComandoDescripciónEjemplo
claudeIniciar REPL interactivoclaude
claude "consulta"Iniciar REPL con prompt inicialclaude "explica este proyecto"
claude -p "consulta"Ejecutar consulta única y salirclaude -p "explica esta función"
cat file | claude -p "consulta"Procesar contenido mediante pipecat logs.txt | claude -p "explica"
claude -cContinuar la conversación más recienteclaude -c
claude -c -p "consulta"Continuar en modo de impresiónclaude -c -p "Buscar errores de tipo"
claude -r "<session-id>" "consulta"Reanudar sesión por IDclaude -r "abc123" "Terminar este PR"
claude configConfigurar ajustesclaude config set --global theme dark
claude updateActualizar a la última versiónclaude update
claude mcpConfigurar servidores Model Context ProtocolVer sección MCP en tutoriales

Flags de CLI

Personaliza el comportamiento de Claude Code con estos flags de línea de comandos:

FlagDescripciónEjemplo
--print, -pImprimir respuesta sin modo interactivo (ver documentación detallada del modo de impresión abajo)claude -p "consulta"
--output-formatEspecificar formato de salida para modo de impresión (opciones: text, json, stream-json)claude -p "consulta" --output-format json
--verboseHabilitar registro detallado, muestra salida completa turno por turno (útil para depuración en modos de impresión e interactivo)claude --verbose
--max-turnsLimitar el número de turnos agénticos en modo no interactivoclaude -p --max-turns 3 "consulta"
--permission-prompt-toolEspecificar una herramienta MCP para manejar solicitudes de permisos en modo no interactivoclaude -p --permission-prompt-tool mcp_auth_tool "consulta"
--resumeReanudar una sesión específica por ID, o eligiendo en modo interactivoclaude --resume abc123 "consulta"
--continueCargar la conversación más reciente en el directorio actualclaude --continue
--dangerously-skip-permissionsOmitir solicitudes de permisos (usar con precaución)claude --dangerously-skip-permissions

El flag --output-format json es particularmente útil para scripting y automatización, permitiéndote analizar las respuestas de Claude programáticamente.

Detalles del modo de impresión

El flag -p (o --print) habilita el modo no interactivo en Claude Code, permitiéndote canalizar entrada y salida para uso programático. Este flag admite varios formatos de salida para diferentes casos de uso.

Uso básico

# Modo de impresión básico - muestra solo el texto de respuesta final
claude -p "Explica cómo usar el flag de impresión"

# Con entrada stdin
echo "¿Cuánto es 2+2?" | claude -p

# Reanudar una sesión en modo de impresión con un prompt
claude -p --resume <session-id> "Reanudar sesión con este prompt"

Formatos de salida

La opción --output-format (usada con -p) admite tres formatos:

1. Salida de texto (predeterminado)
claude -p "Explica los formatos de salida"
# Muestra solo el texto de respuesta
2. Salida JSON
claude -p --output-format json "Explica cómo usar la salida JSON"

Produce un objeto JSON estructurado:

{
  "cost_usd": 0.003,
  "duration_ms": 1234,
  "duration_api_ms": 800,
  "result": "El texto de respuesta aquí...",
  "session_id": "abc123"
}
3. Salida JSON en streaming
claude -p --output-format stream-json "Crear un script Python"

En modo streaming, cada mensaje se muestra como un objeto JSON separado a medida que se recibe:

  • Mensajes de uso de herramientas
  • Mensajes de texto del asistente
  • Mensajes de resultado de herramientas
  • Mensaje final del sistema con estadísticas

Salida detallada con modo de impresión

Cuando se usa --verbose con -p, debe combinarse con --output-format json o --output-format stream-json:

claude -p --verbose --output-format json "Depurar este código"

En modo JSON detallado, la salida incluye la transcripción completa de la conversación:

[
  {
    "role": "user",
    "content": "Depurar este código"
  },
  {
    "role": "assistant",
    "content": "Te ayudaré a depurar ese código..."
  },
  {
    "role": "system",
    "cost_usd": 0.003,
    "duration_ms": 1234,
    "duration_api_ms": 800,
    "result": "El texto de respuesta aquí...",
    "session_id": "abc123"
  }
]

Opciones adicionales para modo de impresión

Máximo de turnos
claude -p --max-turns 3 "Arreglar este código" < file.py

Limita el número de turnos agénticos en modo no interactivo.

Herramienta de solicitud de permisos
claude -p --permission-prompt-tool mcp_auth_tool "Crear un archivo"

Especifica una herramienta MCP para manejar solicitudes de permisos en modo no interactivo.

Reanudar sesión
claude -p --resume abc123 "Reanudar sesión con este prompt"

Reanudar una sesión específica por ID en modo de impresión con un nuevo prompt.

Continuar sesión

claude -c -p "Continuar con esta siguiente tarea"

Continuar la última conversación en este proyecto.

Comandos con barra diagonal

Controla el comportamiento de Claude durante una sesión interactiva:

ComandoPropósito
/bugReportar errores (envía la conversación a Anthropic)
/clearLimpiar historial de conversación
/compact [instrucciones]Compactar conversación con instrucciones de enfoque opcionales
/configVer/modificar configuración
/costMostrar estadísticas de uso de tokens
/doctorVerifica la salud de tu instalación de Claude Code
/helpObtener ayuda de uso
/initInicializar proyecto con guía CLAUDE.md
/loginCambiar cuentas de Anthropic
/logoutCerrar sesión de tu cuenta de Anthropic
/memoryEditar archivos de memoria CLAUDE.md
/pr_commentsVer comentarios de pull request
/reviewSolicitar revisión de código
/statusVer estados de cuenta y sistema
/terminal-setupInstalar atajo Shift+Enter para nuevas líneas (solo iTerm2 y VSCode)
/vimEntrar en modo vim para alternar entre modos de inserción y comando

Atajos especiales

Memoria rápida con #

Agrega memorias instantáneamente comenzando tu entrada con #:

# Siempre usar nombres de variables descriptivos

Se te pedirá que selecciones en qué archivo de memoria almacenar esto.

Saltos de línea en terminal

Ingresa comandos multilínea usando:

  • Escape rápido: Escribe \ seguido de Enter
  • Atajo de teclado: Option+Enter (o Shift+Enter si está configurado)

Para configurar Option+Enter en tu terminal:

Para Mac Terminal.app:

  1. Abre Configuración → Perfiles → Teclado
  2. Marca “Usar Option como tecla Meta”

Para iTerm2 y terminal VSCode:

  1. Abre Configuración → Perfiles → Teclas
  2. En General, configura la tecla Option izquierda/derecha como “Esc+”

Consejo para usuarios de iTerm2 y VSCode: Ejecuta /terminal-setup dentro de Claude Code para configurar automáticamente Shift+Enter como una alternativa más intuitiva.

Ver configuración de terminal en ajustes para detalles de configuración.

Modo Vim

Claude Code admite un subconjunto de atajos de Vim que se pueden habilitar con /vim o configurar vía /config.

El subconjunto admitido incluye:

  • Cambio de modo: Esc (a NORMAL), i/I, a/A, o/O (a INSERT)
  • Navegación: h/j/k/l, w/e/b, 0/$/^, gg/G
  • Edición: x, dw/de/db/dd/D, cw/ce/cb/cc/C, . (repetir)