Claude Code: Instalación, CLI y el Archivo CLAUDE.md

Cómo instalar Claude Code, los 4 modos del CLI, y cómo escribir el CLAUDE.md que convierte a tu agente en el R2-D2 de tu proyecto.

R2-D2 conectado vs. R2-D2 operando a ciegas

Luke Skywalker no le explica a R2-D2 cómo funciona cada sistema del X-Wing cada vez que suben a la nave.

R2-D2 ya sabe. Ya tiene el mapa de los sistemas. Ya conoce los protocolos de la Alianza Rebelde. Ya sabe qué puede tocar y qué no. Cuando Luke dice 'R2, calculá la ruta de salto al hiperespacio' — R2 actúa con todo ese contexto cargado.

Claude Code es tu R2-D2. Es un agente de coding que corre en tu terminal, tiene acceso a tus archivos, puede ejecutar comandos, leer tu codebase, escribir código y hacer commits. Pero igual que R2-D2, necesita un briefing inicial sobre el proyecto para ser verdaderamente útil.

Ese briefing es el CLAUDE.md. Sin él, Claude Code es R2-D2 en una nave desconocida — poderoso, pero operando a ciegas. Con un buen CLAUDE.md, es R2-D2 conectado: sabe exactamente qué sistemas tiene disponibles, qué puede hacer, qué no puede tocar, y cómo ayudarte mejor.

Arrancamos el Módulo 3 — Dominio 3, 20% del examen. En M3V1 vemos la instalación, los cuatro modos del CLI, y cómo escribir el CLAUDE.md que hace la diferencia.

Instalación y herramientas built-in

Claude Code se instala como un paquete global de Node.js. Necesitás Node 18 o superior.

Una vez instalado, Claude Code tiene acceso a tres categorías de herramientas built-in. El examen las pregunta

⚠️  EXAMEN: Claude Code NO tiene herramientas built-in para bases de datos, APIs externas ni servicios de terceros. Para eso se configuran MCP servers — que veremos en M3V3. Esta distinción aparece frecuentemente en el examen.

Los 4 modos del CLI

Claude Code tiene cuatro formas de invocarse. Cada una tiene su caso de uso y el examen los distingue.

Comandos slash esenciales en el modo interactivo

El modo interactivo tiene comandos slash que el examen pregunta directamente.

💡 EXAMEN: /clear limpia el contexto pero NO la configuración del CLAUDE.md. El CLAUDE.md se recarga en la siguiente interacción. /compact es para cuando el contexto es muy largo y empieza a degradar la calidad de las respuestas.

CLAUDE.md: el holocrón del proyecto

CLAUDE.md es el archivo más importante de toda la configuración de Claude Code. Es lo primero que lee al iniciar en un directorio, y determina todo su comportamiento en ese proyecto.

Yoda no le explica la Fuerza a Luke desde cero cada vez que entrenan. Hay principios que están escritos, transmitidos, permanentes. El CLAUDE.md es eso para Claude Code en tu proyecto.

Las 6 secciones que el examen evalúa

Los 3 niveles de CLAUDE.md

Hay tres niveles de CLAUDE.md y el examen los distingue. Cada uno tiene un scope diferente.\

La jerarquía de carga: Claude Code lee en este orden: usuario global → proyecto raíz → local. Si hay conflicto entre secciones, el nivel más específico prevalece. El de usuario define defaults globales; el de proyecto los puede override para ese proyecto específico.

Analogía: el Código Jedi (usuario global) + las instrucciones de misión del Consejo Jedi (proyecto) + los procedimientos de la célula rebelde específica (local). Cada nivel más específico puede ajustar lo que el nivel superior definió.

@import: reutilizar documentación existente

Una funcionalidad crítica que el examen pregunta es la directiva @import. En lugar de duplicar documentación en el CLAUDE.md, podés importar archivos existentes.

CLAUDE.md de ejemplo: rebel_api

Veamos un CLAUDE.md completo con las 6 secciones. Este es el estándar que el examen espera que sepas escribir.

Cuando Claude Code lee este CLAUDE.md y recibe la tarea 'agregá un endpoint GET /health', sabe: qué archivo modificar (app.py), cómo nombrar la función (get_health), qué formato tiene el response ({data: ..., error: null}), cómo correr los tests (pytest tests/ -v), y que no puede tocar .env ni /secrets/. Todo sin que se lo digas en el chat.

Eso es exactamente lo que hace R2-D2 cuando se conecta al X-Wing. No pregunta cómo funcionan los sistemas — ya los conoce. El CLAUDE.md es la conexión que hace que Claude Code sea útil desde la primera instrucción.

Las 4 trampas del examen sobre Claude Code y CLAUDE.md

Trampa 1: 'Claude Code puede acceder a bases de datos y APIs externas directamente'

FALSO. Las herramientas built-in de Claude Code son tres: filesystem, shell, y browser (cuando está disponible). Para bases de datos, APIs externas o servicios de terceros, necesitás configurar MCP servers. Esta distinción es crítica para el examen — Claude Code no tiene acceso 'mágico' a sistemas externos.

Trampa 2: 'El CLAUDE.md del usuario (~/.claude/) tiene prioridad sobre el del proyecto'

FALSO. El nivel más específico prevalece en caso de conflicto. El CLAUDE.md del proyecto override el del usuario para esa sesión específica. El del usuario define defaults globales; el del proyecto los ajusta para el contexto del proyecto. Piénsalo como herencia de clases: el hijo override al padre.

Trampa 3: 'Usar /clear reinicia completamente Claude Code, incluyendo el CLAUDE.md'

FALSO. /clear limpia el contexto de la conversación pero no la configuración. El CLAUDE.md se recarga automáticamente en la próxima interacción. /clear es para cuando el contexto de la sesión se volvió muy largo o irrelevante — no borra la configuración del proyecto.

Trampa 4: '@import en CLAUDE.md duplica el contenido del archivo importado'

FALSO. @import hace referencia al archivo externo y lo incorpora al contexto en tiempo de lectura. No duplica el contenido en el CLAUDE.md — el archivo importado sigue siendo una fuente única. Si el archivo importado cambia, el CLAUDE.md refleja esos cambios automáticamente en la próxima sesión.

Lo que te llevás de M3V1

Claude Code es un agente de coding que corre en tu terminal con acceso a filesystem, shell y browser. Se instala con npm, se autentica con tu API key, y tiene cuatro modos de uso: interactivo (REPL), no-interactivo (CLI), print mode (output estructurado), y continuar sesión. El CLAUDE.md es el holocrón del proyecto — las 6 secciones clave son descripción, comandos, arquitectura, convenciones, MCPs y restricciones. Hay tres niveles con jerarquía de prioridad, y la directiva @import te permite reutilizar documentación existente sin duplicarla.

Sin CLAUDE.md, Claude Code es poderoso pero opera a ciegas. Con un buen CLAUDE.md, es R2-D2 conectado al X-Wing: cada decisión toma en cuenta el contexto del proyecto específico.

En M3V2 vemos los hooks y el sistema de permisos de Claude Code: cómo controlar exactamente qué puede hacer el agente en tu entorno, cómo interceptar acciones antes de que ocurran, y cómo auditarlo.