1Modulo 1

Fundamentos y Configuracion

45 min

Objetivo del modulo

Entender que es Claude Code y preparar un entorno de trabajo optimo.


1.1 Que es Claude Code

Claude Code es una herramienta de codificacion agentic desarrollada por Anthropic que vive directamente en tu terminal. A diferencia de otros asistentes que funcionan como ventanas de chat separadas o plugins de IDE, Claude Code se integra en tu flujo de trabajo existente sin requerir cambiar de contexto.

El termino "agentic" es clave: significa que Claude Code no solo sugiere codigo, sino que puede tomar acciones de forma autonoma — editar archivos, ejecutar comandos, crear commits y mas — siempre bajo tu supervision.

Diferencias con asistentes tradicionales

AspectoCopilot / ChatGPTClaude Code
IntegracionIDE o interfaz webTerminal
Tipo de accionSugiere codigoEjecuta acciones directamente
AlcanceArchivo o fragmentoCodebase completo
FilosofiaAutocompletado inteligenteAgente autonomo
InteraccionCopiar/pegar sugerenciasConversacion + ejecucion

Mientras que herramientas como GitHub Copilot se especializan en autocompletar lineas de codigo, Claude Code entiende tu proyecto completo y puede realizar tareas complejas de principio a fin.

Capacidades principales

1. Construir features desde descripciones

Describe lo que quieres en lenguaje natural y Claude Code:

  • Crea un plan de implementacion
  • Escribe el codigo necesario
  • Verifica que funciona
  • Itera basandose en tu feedback

2. Depuracion inteligente

Pega un mensaje de error o describe un bug. Claude Code analiza tu codebase completo, identifica la causa raiz e implementa la solucion.

3. Navegacion de codebases

Proyecto nuevo o heredado? Pregunta directamente:

  • "Como funciona la autenticacion?"
  • "Donde se procesan los pagos?"
  • "Que hace esta funcion?"

4. Automatizacion de tareas

Delega tareas repetitivas:

  • Arreglar problemas de linting
  • Resolver conflictos de merge
  • Generar notas de release
  • Ejecutar en CI/CD

Filosofia Unix

Claude Code sigue la filosofia Unix: es composable y scriptable. Puedes combinarlo con otras herramientas usando pipes:

# Monitorear logs y alertar sobre anomalias
tail -f app.log | claude -p "Avisame si detectas errores criticos"
 
# Traducir strings nuevos automaticamente
claude -p "Traduce los nuevos strings a frances y crea un PR"

Integracion con herramientas externas

A traves de MCP (Model Context Protocol), Claude Code puede conectarse con servicios externos:

  • GitHub (issues, PRs)
  • Bases de datos
  • Slack
  • Google Drive
  • Figma
  • Y mas...

Requisitos

Para usar Claude Code necesitas:

  • Suscripcion a Claude (Pro, Max, Teams o Enterprise)
  • O una cuenta de Claude Console con acceso API

1.2 Instalacion

Requisitos del sistema

RequisitoEspecificacion
Sistema operativomacOS 13.0+, Ubuntu 20.04+/Debian 10+, Windows 10+
RAM4 GB minimo
RedConexion a Internet requerida
ShellBash o Zsh (recomendado)
UbicacionPais soportado por Anthropic

Metodos de instalacion

Instalacion nativa (recomendada)

La instalacion nativa es la opcion preferida porque incluye actualizaciones automaticas en segundo plano.

macOS, Linux, WSL:

curl -fsSL https://claude.ai/install.sh | bash

Windows PowerShell:

irm https://claude.ai/install.ps1 | iex

Windows CMD:

curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

Homebrew (macOS/Linux)

brew install --cask claude-code

Nota: Esta instalacion no se actualiza automaticamente. Ejecuta periodicamente brew upgrade claude-code.

WinGet (Windows)

winget install Anthropic.ClaudeCode

Verificacion de la instalacion

claude doctor

Este comando muestra informacion de diagnostico: tipo de instalacion, version y posibles problemas.

Autenticacion

Al ejecutar Claude Code por primera vez, necesitas autenticarte:

cd tu-proyecto
claude

Opciones de autenticacion:

Para uso individual:

  • Claude Pro/Max (recomendado): Usa tu suscripcion de Claude.ai
  • Claude Console: Conecta con tu cuenta de console.anthropic.com

Para equipos:

  • Claude for Teams/Enterprise: Facturacion centralizada
  • Proveedores cloud: Amazon Bedrock, Google Vertex AI

Actualizaciones

Automaticas (instalacion nativa): Claude Code verifica actualizaciones al inicio y las descarga en segundo plano.

Manual:

claude update

1.3 Jerarquia de configuracion

Claude Code utiliza un sistema jerarquico de configuracion que permite definir ajustes a diferentes niveles.

Archivos de configuracion

ScopeUbicacionCompartido?Proposito
ManagedSistemaSi (IT)Politicas de organizacion
User~/.claude/settings.jsonNoPreferencias personales globales
Project.claude/settings.jsonSi (git)Configuracion del equipo
Local.claude/settings.local.jsonNoOverrides personales por proyecto

Orden de precedencia

La configuracion mas especifica tiene prioridad sobre la mas general:

1. Managed settings      <- Mas alta (no se puede sobrescribir)
2. Argumentos CLI        <- Overrides temporales de sesion
3. Local project         <- .claude/settings.local.json
4. Shared project        <- .claude/settings.json
5. User settings         <- ~/.claude/settings.json (mas baja)

Que configurar en cada nivel

User (~/.claude/settings.json)

Preferencias que aplican a todos tus proyectos:

  • Tema y preferencias de interfaz
  • Servidores MCP globales
  • Variables de entorno personales

Project (.claude/settings.json)

Configuracion compartida con el equipo (se commitea a git):

  • Permisos del proyecto
  • Hooks de automatizacion
  • Servidores MCP del proyecto

Local (.claude/settings.local.json)

Overrides personales para un proyecto especifico:

  • Configuraciones de prueba antes de compartir
  • Ajustes especificos de tu maquina

1.4 Estructura de settings.json

El archivo settings.json es el corazon de la configuracion de Claude Code.

Estructura basica

{
  "permissions": { },
  "env": { },
  "model": "claude-sonnet-4-5-20250929",
  "hooks": { },
  "mcpServers": { }
}

Permisos (permissions)

{
  "permissions": {
    "allow": [
      "Bash(npm run:*)",
      "Bash(git commit:*)",
      "Read(./src/**)",
      "Edit(./src/**)"
    ],
    "ask": [
      "Bash(git push:*)"
    ],
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Bash(rm -rf:*)"
    ]
  }
}

Orden de evaluacion:

  1. deny - Si coincide, se bloquea (maxima prioridad)
  2. ask - Si coincide, pregunta al usuario
  3. allow - Si coincide, se permite automaticamente

Sintaxis de patrones:

PatronSignificadoEjemplo
ToolTodas las llamadas a la herramientaBash
Tool(cmd)Comando especificoBash(npm install)
Tool(cmd:*)Prefijo con cualquier sufijoBash(npm run:*)
Tool(path/**)Glob en rutasRead(./src/**)

Herramientas disponibles:

  • Bash - Comandos de terminal
  • Read - Lectura de archivos
  • Edit - Escritura/modificacion de archivos
  • WebFetch - Peticiones HTTP
  • MCP - Herramientas MCP
  • Task - Ejecucion de subagentes

Variables de entorno (env)

{
  "env": {
    "NODE_ENV": "development",
    "DISABLE_TELEMETRY": "1"
  }
}

Ejemplo de configuracion para proyecto tipico

{
  "permissions": {
    "allow": [
      "Bash(npm:*)",
      "Bash(git status)",
      "Bash(git log:*)",
      "Bash(git diff:*)",
      "Bash(git add:*)",
      "Bash(git commit:*)",
      "Read(./src/**)",
      "Read(./tests/**)",
      "Edit(./src/**)",
      "Edit(./tests/**)"
    ],
    "ask": [
      "Bash(git push:*)",
      "Edit(./package.json)"
    ],
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)",
      "Bash(rm -rf:*)",
      "Bash(sudo:*)"
    ]
  },
  "env": {
    "NODE_ENV": "development"
  },
  "model": "claude-sonnet-4-5-20250929",
  "autoUpdatesChannel": "stable"
}

1.5 Primeros comandos

Claude Code ofrece dos modos principales de uso: el modo interactivo (REPL) para sesiones de trabajo continuas, y el modo print para ejecucion rapida de comandos puntuales.

Modo interactivo (REPL)

claude

Inicia una sesion interactiva donde puedes mantener una conversacion continua. Es el modo ideal para:

  • Desarrollo iterativo
  • Exploracion de codigo
  • Tareas que requieren multiples pasos

Modo print (no interactivo)

claude -p "tu prompt aqui"

Ejecuta un prompt y termina. Util para:

  • Automatizacion y scripts
  • Tareas puntuales
  • Integracion en pipelines

Comandos esenciales del CLI

ComandoDescripcion
claudeInicia modo interactivo
claude "query"Inicia modo interactivo con prompt inicial
claude -p "query"Ejecuta prompt y termina (print mode)
claude -cContinua la conversacion mas reciente
claude -r "sesion"Resume una sesion por nombre o ID
claude --helpMuestra ayuda completa
claude updateActualiza a la ultima version

Comandos slash nativos

Dentro del modo interactivo, puedes usar comandos que empiezan con /:

ComandoDescripcion
/helpMuestra ayuda de uso
/clearLimpia historial de conversacion
/compactComprime conversacion para liberar contexto
/configAbre interfaz de configuracion
/contextVisualiza uso de contexto actual
/costMuestra estadisticas de tokens
/modelCambia el modelo de IA
/resumeResume una conversacion anterior
/exitSale del modo interactivo

Ejecutar bash directamente

Usa el prefijo ! para ejecutar comandos de terminal sin que Claude los interprete:

! git status
! npm test
! ls -la

Atajos de teclado esenciales

AtajoDescripcion
Ctrl+CCancela entrada o generacion actual
Ctrl+DSale de Claude Code
Ctrl+LLimpia pantalla (mantiene historial)
Ctrl+RBusqueda en historial de comandos
Ctrl+BEnvia comando a background

1.6 Modelos disponibles

Claude Code te permite elegir entre diferentes modelos de la familia Claude, cada uno optimizado para distintos casos de uso.

Modelos actuales

ModeloIDDescripcion
Opus 4.5claude-opus-4-5-20251101Maxima inteligencia, razonamiento complejo
Sonnet 4.5claude-sonnet-4-5-20250929Balance optimo entre velocidad y calidad
Haiku 4.5claude-haiku-4-5-20251001El mas rapido, ideal para tareas simples

Cuando usar cada modelo

Opus 4.5 — El cerebro

Usa Opus cuando necesites:

  • Razonamiento complejo y decisiones arquitectonicas
  • Debugging de problemas dificiles
  • Analisis profundo de codigo
  • Tareas que requieren maxima precision

Sonnet 4.5 — El equilibrado

Sonnet es el modelo recomendado para el dia a dia:

  • Desarrollo de features
  • Code review
  • Refactoring
  • La mayoria de tareas de codificacion

Haiku 4.5 — El veloz

Ideal para tareas que priorizan velocidad:

  • Consultas rapidas
  • Formateo de codigo
  • Tareas repetitivas en scripts
  • Alto volumen de operaciones

Aliases en Claude Code

AliasComportamiento
sonnetUltimo modelo Sonnet (actualmente 4.5)
opusModelo Opus (actualmente 4.5)
haikuModelo rapido y eficiente
opusplanHibrido: Opus en planificacion, Sonnet en ejecucion

Como cambiar de modelo

Durante la sesion:

/model opus
/model sonnet
/model haiku

Al iniciar Claude Code:

claude --model opus
claude --model sonnet

En settings.json:

{
  "model": "sonnet"
}

Recomendaciones practicas

TareaModelo recomendado
Desarrollo diariosonnet
Arquitectura y disenoopus
Planificar + ejecutaropusplan
Tareas simples y rapidashaiku
Debugging complejoopus
Scripts y automatizacionhaiku

Practica del modulo

Objetivos

  • Instalar Claude Code
  • Crear archivo de configuracion global
  • Ejecutar primera conversacion interactiva
  • Probar comando directo con -p

Ejercicio 1: Instalacion

Paso 1.1: Instalar Claude Code

curl -fsSL https://claude.ai/install.sh | bash

Paso 1.2: Verificar instalacion

claude --version

Paso 1.3: Configuracion inicial

claude

Sigue el asistente de configuracion y autenticate con tu cuenta Claude.

Ejercicio 2: Configuracion global

Paso 2.1: Crear directorio de configuracion

mkdir -p ~/.claude

Paso 2.2: Crear settings.json global

Crea el archivo ~/.claude/settings.json con esta configuracion basica:

{
  "model": "sonnet",
  "permissions": {
    "allow": [
      "Read",
      "Bash(git status)",
      "Bash(git log:*)",
      "Bash(git diff:*)"
    ],
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Bash(rm -rf:*)",
      "Bash(sudo:*)"
    ]
  }
}

Ejercicio 3: Primera conversacion interactiva

Paso 3.1: Iniciar sesion

claude

Paso 3.2: Explorar comandos basicos

/help
/model
/context

Paso 3.3: Ejecutar bash directo

! ls -la
! git status

Ejercicio 4: Modo print

claude -p "Que es una funcion recursiva?"
claude --model haiku -p "Dame 3 nombres para una variable que guarde emails"

Checklist de validacion

  • Claude Code esta instalado y claude --version funciona
  • Existe ~/.claude/settings.json con configuracion basica
  • Puedo iniciar una sesion interactiva con claude
  • Los comandos /help, /model y /context funcionan
  • Puedo ejecutar bash con el prefijo !
  • claude -p "prompt" ejecuta y termina correctamente
  • Se cambiar de modelo con /model y --model