51 puntos por princox 29 일 전 | 1 comentarios | Compartir por WhatsApp

Claude Code funciona en la terminal, y aquí están resumidos solo los puntos clave con base en la documentación oficial (la recopilación en Mintlify de VineeTagarwaL).

¿Cómo funciona Claude Code?
En una frase: es un bucle de “leer → pensar → usar herramientas → revisar resultados → repetir”.
Las 6 etapas del Agentic Loop

  1. El usuario ingresa un mensaje en la terminal (o se envía mediante --print / stdin)
  2. Se ensambla el prompt del sistema: fecha actual, estado de git, archivo CLAUDE.md, lista de herramientas disponibles
  3. Se llama a la API de Anthropic → el modelo genera un bloque tool_use (nombre de la herramienta + entrada JSON)
  4. Verificación de permisos: se decide entre aprobación automática / solicitud de confirmación / bloqueo
  5. Ejecución de la herramienta → el resultado (contenido de archivo, salida de comando, etc.) se agrega a la conversación como tool_result
  6. El modelo que recibe el resultado hace una llamada adicional a herramientas o entrega una respuesta final; se repite hasta que ya no haya llamadas a herramientas
    El bucle solo se ejecuta dentro del proceso local de la terminal. A menos que sea una herramienta que invoque explícitamente recursos externos, como WebFetch, WebSearch o un servidor MCP, los archivos, la shell y la información de autenticación no salen de la máquina.

¿Cómo se construye el contexto?
Al iniciar la conversación se ensamblan dos bloques y se anteponen a todas las llamadas a la API.

  • Contexto del sistema: rama actual, 5 commits más recientes, resultado de git status --short (se recorta si supera los 2,000 caracteres)
  • Contexto del usuario: archivo de memoria CLAUDE.md (exploración jerárquica en 4 niveles), fecha de hoy (Today's date is YYYY-MM-DD)
    Ambos bloques se almacenan en caché por conversación con lodash/memoize. Cuando se llama a setSystemPromptInjection(), la caché se reinicia de inmediato.

Modelo de permisos — ¿cuándo se ejecuta una herramienta?

resultado comportamiento
allow se ejecuta de inmediato y el resultado se agrega a la conversación
ask se pausa → se muestra un diálogo de confirmación
deny se rechaza → se devuelve un error al modelo
  • Modo bypassPermissions: se omiten todas las verificaciones
  • Modo acceptEdits: las ediciones de archivos se aprueban automáticamente, pero bash sigue pidiendo confirmación
  • Las herramientas de solo lectura como Read, Glob y Grep se aprueban automáticamente por defecto en todos los modos

Subagentes (herramienta Task)
Claude puede generar subagentes con la herramienta Task (AgentTool). Los subagentes ejecutan su propio Agentic Loop con una conversación aislada y, opcionalmente, con un conjunto de herramientas restringido; al terminar, devuelven el resultado al agente padre. Pueden ejecutarse localmente (in-process) o en cómputo remoto.

Guardar y restaurar conversaciones
Las conversaciones se guardan como archivos de transcripción JSON en ~/.claude/.

  • --resume <session-id> o --resume por sí solo reanuda una conversación previa
  • Al reanudar: se carga el historial completo de mensajes, se vuelven a explorar los archivos CLAUDE.md, y el modo de permisos se restablece al valor predeterminado de la configuración
  • Las conversaciones largas se compactan periódicamente: se resumen los mensajes antiguos para administrar la ventana de contexto. La transcripción original completa se conserva en disco

Qué hace el motor de consultas
Cada “turno” es gestionado por query.ts.

  • Muestra en tiempo real en la terminal el streaming de tokens
  • Despacha los bloques tool_use al handler correspondiente
  • Administra el presupuesto de tokens y de llamadas a herramientas por turno
  • Si la ventana de contexto se llena, activa la compactación
  • Cada herramienta tiene la propiedad maxResultSizeChars: si el resultado supera ese límite, se guarda en un archivo temporal y al modelo solo se le pasa la ruta del archivo (para evitar overflow en la ventana de contexto)

Original: How Claude Code works — Mintlify
Referencia: es un documento espejo no oficial en el que VineeTagarwaL reorganizó en Mintlify la documentación oficial de Claude Code.

1 comentarios

 
jeeeyul 29 일 전

Parece que, desde 2023, la estructura de ReAct no ha cambiado mucho.