← Blog
Claude Code11 may 202611 min de lectura

Llevo 8 meses construyendo con Claude Code. Este es mi setup, sin teoría.

Cómo configuré Claude Code para construir Kursear de cero a producción. Instalación, CLAUDE.md, permisos, skills, y los tres errores que cometí “por las malas”. Para freelances y builders que quieren resultados, no demos.

He construido Kursear (kursear.es) con Claude Code desde diciembre de 2025.

Producto en producción. 14 migraciones de Supabase. 100+ componentes React. Pagos con Lemon Squeezy. Emails con Resend. Un juego de gamificación con 14 páginas.

Todo eso lo escribió Claude Code con mi dirección. Cero equipo. Cero "vibe coding". Cero magia.

Este post explica cómo está configurado el setup que hace que funcione. Sin teoría. Sin frases bonitas. Lo que tengo encendido ahora mismo en la máquina con la que escribo esto.

Por qué importa el setup

“Te bajas Claude Code y ya” es lo que escribe la gente que lo usa 3 horas y abre un tutorial. Lo que pasa en realidad después de 8 meses es que el setup determina dos cosas:

  1. Cuánto contexto preserva Claude entre sesiones (la diferencia entre “me acuerdo de cómo está organizado tu repo” y “empezamos de cero cada vez”).
  2. Cuánto error tonto te genera por día (la diferencia entre “toca esto y no toca lo otro” y “refactoriza medio repo cada vez que pides un fix”).

Y el setup no es complicado, pero es pesado. Yo tardé 6 semanas en estabilizar el mío. Esto es el resumen.

1. Instalación + autenticación

Si vienes a esto desde cero, lo único que importa el primer día es:

  • Plan Pro o superior de Anthropic. Sin acceso a Claude Sonnet/Opus de calidad, Claude Code es Claude Code degradado.
  • Terminal nativo (no WSL si estás en Windows con código pesado — la latencia te empieza a doler). Yo trabajo en Windows con bash, pero PowerShell también funciona.
  • claude CLI: la instalación va por la web oficial de Anthropic. No copies snippets de blogs random que se quedan desfasados.

La autenticación pide login con tu cuenta de Anthropic. Una sola vez. Si te lo pide cada vez, hay un problema con tu shell — antes de tirar para adelante, arréglalo (perderás mucho menos tiempo).

2. CLAUDE.md — el archivo más importante que casi nadie escribe bien

Si te llevas una sola cosa de este post: escribe un CLAUDE.md en serio.

CLAUDE.md es un archivo Markdown en la raíz del proyecto que Claude lee al empezar cada conversación. Es donde le dices:

  • Qué stack usas (Next.js 16, TypeScript estricto, Supabase, etc.)
  • Qué reglas seguir (KISS, sin any, RLS obligatorio en tablas, etc.)
  • Qué patrones imitar (feature-first folder structure, componentes server por defecto, etc.)
  • Qué NO hacer (no inventar nombres de funciones, no editar .env, no commitear sin pedir, etc.)
  • Cómo verificar (typecheck, dónde están los tests, qué hooks corren)

Si tu CLAUDE.md es un párrafo de "este es un proyecto de software, sé cuidadoso", te has quedado en la portada. El mío tiene 400 líneas estructuradas: skills disponibles, golden path técnico, principios de comportamiento, hooks mecánicos, y aprendizajes acumulados. Cada bug que se repite acaba en el CLAUDE.md como "auto-blindaje". Eso es lo que separa un agente que mejora con el tiempo de uno que comete el mismo error en el día 60 que en el día 1.

Regla práctica: cada vez que Claude se equivoque dos veces en la misma cosa, esa regla va al CLAUDE.md. Esto es la diferencia entre un agente que se vuelve más útil con el tiempo y uno que comete los mismos errores el día 60 que el día 1.

3. Permisos: Plan Mode vs Edit Mode vs Auto

Claude Code tiene varios modos de permisos. El que elijas cambia tu productividad por un factor de 3:

  • Plan Mode: Claude propone, no toca. Útil para tareas que quieres entender antes de aprobar.
  • Edit Mode: Claude edita archivos con confirmación tuya en operaciones sensibles.
  • Auto / Bypass: Claude ejecuta sin pedir permiso. Productividad máxima pero riesgo si CLAUDE.md no está bien.

Mi loop:

  • Tareas nuevas o ambiguas: empiezo en Plan Mode. Veo qué va a hacer, ajusto, y entonces apruebo.
  • Tareas que conozco bien: Edit Mode. Apruebo a ritmo.
  • Refactors masivos / scripts grandes: Auto, pero con un git stash o branch dedicada como red de seguridad.

Y un patrón que casi nadie usa: branch worktrees. Claude Code puede correr en un git worktree separado, dejándote el branch principal limpio para revisar. Para refactors grandes esto es lo que separa “agente útil” de “agente que rompe cosas mientras tú revisas”.

4. Skills y plugins — el ecosistema que casi nadie usa

Claude Code soporta skills (instrucciones reutilizables por dominio) y plugins. La mayoría de gente que probó Claude Code 2 semanas no llega a esto. Y es donde empieza el leverage real.

Mis skills más usados en Kursear:

  • agent-browser: control de navegador Chromium para verificar UI real (snapshot DOM, click por ref semántica, screenshot). He sustituido casi todo el Playwright manual por esto.
  • supabase: skill propio para CRUD, RLS y migraciones — Claude no se inventa nombres de tablas porque tiene el snapshot del schema.
  • bucle-agentico: pipeline para features grandes con mapeo de contexto → ejecución → auto-blindaje → siguiente fase.
  • Skills específicos del producto: new-app, add-login, add-payments, etc. Son plantillas para hacer 80 % del trabajo común y dejarme tiempo para la diferencia.

Cuando tengo una tarea que se repite (auditar SEO, generar fixture de datos, verificar webhook), la convierto en skill. Una vez convertida, la próxima vez son 3 minutos en lugar de 40.

5. Mi loop diario

Esto es lo que hago cada día con Claude Code:

  1. Empiezo con un PRP (Product Requirements Proposal) si la feature es no trivial. Es un doc corto que explica qué quiero, qué archivos van a tocarse, y qué criterios de éxito (typecheck, e2e, agent-browser verifica que la UI funcione). Lo hago con el skill prp.
  2. Apruebo el plan. Si veo algo raro, lo discuto antes de tocar código.
  3. Claude ejecuta en fases con el skill bucle-agentico. Cada fase tiene su check.
  4. Verifico en navegador con agent-browser antes de declarar “hecho”. No me fío de “debería funcionar”.
  5. Commit selectivo (git add <archivos>, nunca -A). Mi mujer y mi yo-de-mañana editan archivos en paralelo a Claude — un add -A me ha hecho perder cambios más de una vez.
  6. Si rompe algo, fix + nueva regla al CLAUDE.md (“auto-blindaje”). Nunca dejes que el mismo error vuelva a ocurrir.

6. Tres errores que cometí “por las malas”

Error 1: dejé que tocara el CLAUDE.md sin pensar

Pasó el primer mes. Yo decía cosas tipo “acuérdate de no usar any nunca” y Claude se entusiasmaba escribiéndolo en el CLAUDE.md. A los dos meses, el archivo tenía 1.200 líneas de reglas contradictorias.

Fix: el CLAUDE.md lo escribo yo. Las reglas que Claude propone, las reviso antes. Si una regla nueva conflicta con otra existente, la consolido. Mantenerlo limpio es trabajo recurrente, no una cosa que escribes una vez.

Error 2: confié en “debería funcionar”

Claude Code es muy convincente. Dice “he añadido la feature X y he verificado que typecheck pasa, todo listo”. Y typecheck pasaba, sí. Pero el comportamiento en navegador era distinto del que decía.

Fix: nunca declarar “hecho” sin verificar en navegador real. Por eso instalé agent-browser como herramienta principal del agente — Claude tiene que abrir la URL, hacer snapshot, comprobar el DOM, sacar screenshot, y entonces puedo confiar en el “hecho”.

Error 3: pedí “limpia y mejora el código de paso”

Tarea: “fix bug en el checkout”. Lo que vino: fix del bug + refactor de 15 archivos adyacentes “para limpiar de paso”. Acabé revertiendo medio commit porque la “limpieza” había roto tres cosas más.

Fix: regla nueva al CLAUDE.md → "Cambios quirúrgicos: toca solo lo necesario. No mejores comentarios, formato o código adyacente que no te pidieron." Y Claude lo respeta. No porque sea buena gente. Porque se lo recuerdo cada conversación. La IA hace caso a lo que está escrito. Si no lo escribes, no existe.

7. Cuándo NO usar Claude Code

Esto se dice poco. Claude Code es excelente para muchas cosas pero no para todas:

  • Tareas creativas puras (diseño visual desde cero, brainstorm de nombre, copy de venta). Mejor con Claude.ai directo y revisión humana fuerte.
  • Debugging de problemas físicos (red, hardware, configuración del host). Inserta su mejor adivinanza, no su mejor diagnóstico.
  • Aprender algo nuevo desde cero. Si lo usas para aprender X, te enseña X de manera que parece buena, pero tú no construyes el músculo (es exactamente el problema que tiene ChatGPT como plan de estudio, lo expliqué en este otro post).

Si quieres aprender Claude Code en serio

He convertido lo aprendido en una formación de Kursear. 30 días. 99 €. Diagnóstico previo de 13 preguntas (12 base + 1 técnica) que calibra tu nivel real, plan personalizado para tu objetivo concreto (freelance, side project, equipo), Profesor IA en streaming durante el mes, y The Game para que no lo dejes en el día 5. (El manifiesto del sistema entero está en formación IA personalizada en 30 días — los 4 pilares aplican a cualquier temática, no solo a Claude Code.)

Si trabajas con código y quieres usar Claude Code de verdad — no como demo, sino como herramienta diaria — esto es lo que necesitas. Y si antes de pagar quieres entender la arquitectura del sistema, está toda explicada aquí.

Ver formación de Claude Code →

O si prefieres empezar por el diagnóstico y ver el plan antes de pagar, son 10 minutos y no pide tarjeta.

— Javier Mancera, fundador de Kursear. Madrid, 2026.

PS · Si vienes del post de los 8 cursos de Udemy sin terminar, sí — esa es la razón por la que construí Kursear. Y sí, también acaba siendo la razón por la que prefiero Claude Code a abrir otro curso.