Autor original: Boris Cherny, desarrollador de Claude Code
Compilación y edición: Xiaohu AI
Probablemente hayas oído hablar de Claude Code, o incluso lo hayas usado para escribir algo de código o modificar documentos. Pero, ¿te has preguntado alguna vez: si la IA no fuera una "herramienta para usar temporalmente", sino un miembro formal de tu flujo de desarrollo, o incluso un sistema de colaboración automatizado, ¿cómo cambiaría tu forma de trabajar?
Boris Cherny, como padre de Claude Code, escribió un hilo muy detallado en Twitter, compartiendo cómo usa esta herramienta de manera eficiente y cómo él y su equipo integran profundamente a Claude en todo el proceso de ingeniería en su trabajo real.
Este artículo hará una sistematización y una interpretación通俗的 de su experiencia.
¿Cómo hizo Boris que la IA se convirtiera en un socio automatizado en su flujo de trabajo?
Puntos clave:
Él presenta su flujo de trabajo, que incluye:
Cómo usar Claude:
Abrir muchas instancias de Claude simultáneamente: Ejecutar de 5 a 10 sesiones en paralelo en la terminal y la web, y también usar Claude en el móvil.
No modificar ciegamente la configuración por defecto: Claude funciona perfectamente out-of-the-box, no es necesario configurarlo de forma compleja.
Usar el modelo más potente (Opus 4.5): Aunque es un poco más lento, es más inteligente y más fácil de usar.
Planificar antes de escribir código (modo Plan): Hacer que Claude piense claramente antes de escribir, con una alta tasa de éxito.
Usar herramientas para verificar el formato después de generar el código, para evitar errores.
Cómo hacer que Claude sea más inteligente con el uso:
El equipo mantiene una "base de conocimiento": Cada vez que Claude escribe algo mal, se añade la experiencia, y la próxima vez no volverá a cometer el error.
Entrenar automáticamente a Claude al escribir PRs: Hacer que Claude vea los PRs y aprenda nuevos usos o estándares.
Convertir los comandos que uno usa frecuentemente en comandos slash, para que Claude pueda invocarlos automáticamente, ahorrando trabajo repetitivo.
Usar "subagentes" para manejar algunas tareas fijas, como simplificación de código, verificación de funciones, etc.
Cómo gestionar los permisos:
No saltar permisos arbitrariamente, sino configurar instrucciones seguras para su aprobación automática.
Sincronizar el flujo de trabajo de Claude en múltiples dispositivos (web, terminal, móvil).
El punto más importante:
Es crucial proporcionar a Claude un "mecanismo de verificación", para que pueda confirmar si lo que ha escrito es correcto.
Por ejemplo, que Claude ejecute pruebas automáticamente, abra el navegador para probar la web, verifique si la funcionalidad funciona.
Claude Code es un "compañero", no una "herramienta"
Boris transmite primero una idea central: Claude Code no es una herramienta estática, sino un compañero inteligente que puede cooperar contigo, aprender continuamente y crecer conjuntamente.
No necesita mucha configuración compleja, es muy potente listo para usar. Pero si estás dispuesto a invertir tiempo en construir mejores formas de uso, la mejora de eficiencia que puede aportar se multiplica.
Selección del modelo: Elegir el más inteligente, no el más rápido
Boris utiliza el modelo insignia de Claude, Opus 4.5 + modo de pensamiento ("with thinking") para todas las tareas de desarrollo.
Aunque este modelo es más grande y lento que Sonnet:
- Tiene una mayor capacidad de comprensión
- Mejor capacidad para usar herramientas
- No necesita guía repetitiva, menos idas y venidas en la comunicación
- En general, ahorra más tiempo que usar modelos rápidos
- Ilustración: La verdadera productividad no está en la velocidad de ejecución, sino en "menos errores, menos retrabajo, menos explicaciones repetidas".
1. Modo Plan: Al usar IA para escribir código, no te apresures a que "escriba"
Cuando abrimos Claude, mucha gente intuitivamente escribe "ayúdame a escribir una interfaz", "refactoriza este código"... Claude normalmente también "escribirá algo", pero a menudo se desvía, omite lógica, o incluso malinterpreta los requisitos.
Y el primer paso de Boris nunca es hacer que Claude escriba código. Él usa el modo Plan: primero establece con Claude el plan de implementación, y luego pasa a la fase de ejecución.
¿Cómo lo hace?
Al iniciar un PR, Boris primero no deja que Claude escriba código directamente, sino que usa el modo Plan:
1. Describir el objetivo
2. Establecer un plan junto con Claude
3. Confirmar cada paso
4. Luego dejar que Claude empiece a escribir
Cada vez que necesita implementar una nueva función, como "añadir limitación de tasa (rate limiting) a una API", confirma paso a paso con Claude:
- ¿Se implementa con middleware, o embebido en la lógica?
- ¿La configuración de limitación de tasa necesita soportar modificación dinámica?
- ¿Se necesitan logs? ¿Qué se devuelve en caso de fallo?
Este proceso de "negociación del plan" es similar a dos personas dibujando juntas los "planos de construcción".
Una vez que Claude entiende claramente el objetivo, Boris activa el modo "aceptar ediciones automáticamente". Claude puede modificar el código directamente, enviar PRs, y a veces ni siquiera necesita confirmación humana.
"La calidad del código de Claude depende de si habéis llegado a un acuerdo antes de escribir el código." -- Boris
Ilustración: En lugar de corregir repetidamente los errores de Claude, es mejor aclarar la hoja de ruta desde el principio.
Resumen
El modo Plan no es una pérdida de tiempo, sino intercambiar negociación previa por una ejecución estable. La IA, por potente que sea, necesita que "se lo aclares".
2. Múltiples Claudes en paralelo: No una IA, sino un equipo virtual de desarrollo
Boris no usa solo un Claude. Su día a día es así:
- Abre 5 Claudes locales en la terminal, las sesiones asignadas a diferentes tareas (como refactorizar, escribir tests, depurar bugs)
- Abre otros 5–10 Claudes en el navegador, en paralelo con los locales
- Usa la app de Claude para iOS en el móvil, iniciando tareas en cualquier momento
Cada instancia de Claude es como un "asistente dedicado": algunos se encargan de escribir código, otros de completar documentación, otros se ejecutan en segundo plano realizando tareas de prueba.
Incluso configuró notificaciones del sistema para ser alertado inmediatamente cuando Claude espera entrada.
¿Por qué hacer esto?
El contexto de Claude es local, no es adecuado para "hacer todo en una ventana". Boris divide a Claude en múltiples roles que procesan en paralelo, por un lado reduce el tiempo de espera, por otro reduce la "memoria de interferencia".
También se alerta a sí mismo con notificaciones del sistema: "Claude 4 te está esperando", "Claude 1 terminó la prueba", gestionando estos sistemas de IA como un sistema multihilo.
Analogía para entender
Puedes imaginar que tienes a cinco becarios inteligentes a tu lado, cada uno responsable de una tarea. No tienes que llevar cada cosa hasta el final, solo "cambiar de persona" en momentos clave, manteniendo las tareas avanzando fluidamente.
Ilustración: Tratar a Claude como múltiples "asistentes virtuales", asignándoles diferentes tareas, puede reducir significativamente el tiempo de espera y el coste del cambio de contexto.
3. Comandos Slash: Convierte lo que haces cada día en comandos rápidos para Claude
Algunos flujos de trabajo los hacemos docenas de veces al día:
- Modificar código → commit → push → crear PR
- Comprobar estado de build → notificar al equipo → actualizar issue
- Sincronizar cambios en sesiones web y locales múltiples
- Boris no quiere tener que indicarle a Claude cada vez: "Por favor, primero haz commit, luego push, y luego crea el PR..."
Él encapsula estas operaciones en comandos Slash, como:
/commit-push-pr
Detrás de estos comandos hay lógica de scripts Bash, almacenada en la carpeta .claude/commands/, añadida a la gestión de Git, y que todos los miembros del equipo pueden usar.
¿Cómo usa Claude estos comandos?
Cuando Claude encuentra este comando, no solo "ejecuta la instrucción", sino que sabe el flujo de trabajo que representa el comando, y puede ejecutar automáticamente los pasos intermedios, pre-llenar parámetros, evitar comunicaciones repetitivas.
Punto clave para entender
Los comandos Slash son como "botones automáticos" que instalas para Claude. Lo entrenas para entender un flujo de tareas, y luego puede ejecutarlo con un clic.
"No solo yo puedo ahorrar tiempo con comandos, Claude también puede." -- Boris
Ilustración: No repitas la entrada de prompts cada vez, abstract las tareas de alta frecuencia en comandos, para que tu cooperación con Claude pueda "automatizarse".
4. Base de conocimiento del equipo: Claude no aprende solo con Prompt, sino con el gen del conocimiento mantenido por el equipo
El equipo de Boris mantiene una base de conocimiento .claude, y la añade a la gestión de Git.
Es como una "Wikipedia interna" para Claude, que registra:
- Qué forma de escribir es correcta
- Cuáles son las mejores prácticas acordadas por el equipo
- Cómo corregir cuando se encuentran ciertos problemas
Claude consulta automáticamente esta base de conocimiento para entender el contexto, juzgar el estilo de código.
¿Qué hacer cuando Claude hace algo mal?
Cada vez que Claude tiene un malentendido o escribe lógica incorrecta, se añade la lección.
Cada equipo mantiene su propia versión.
Todos editan de forma colaborativa, Claude consulta esta base de conocimiento en tiempo real para tomar decisiones.
Un ejemplo:
Si Claude siempre escribe mal la lógica de paginación, solo hace falta que el equipo escriba el estándar correcto de paginación en la base de conocimiento, y cada usuario posterior se beneficiará automáticamente.
La práctica de Boris: No regañarlo, no apagarlo, sino "entrenarlo una vez":
No escribimos este código así, añádelo a la base de conocimiento
La próxima vez Claude no volverá a cometer ese error.
Lo más importante es que este mecanismo no lo mantiene solo Boris, sino que todo el equipo contribuye y modifica semanalmente.
Ilustración: Usar IA no es que cada uno luche solo, sino construir un sistema de "memoria colectiva".
5. Mecanismo de aprendizaje automático: Los PRs themselves son los "datos de entrenamiento" de Claude
Al hacer revisiones de código, Boris a menudo @menciona a Claude en el PR, por ejemplo:
@.claude añade esta forma de escribir la función a la base de conocimiento
Junto con GitHub Action, Claude aprenderá automáticamente la intención detrás de este cambio, y actualizará el conocimiento interno.
Esto es similar a "entrenar continuamente a Claude", cada revisión no solo fusiona código, sino que también mejora la capacidad de la IA.
Esto ya no es "mantenimiento posterior", sino fusionar el mecanismo de aprendizaje de la IA en la colaboración diaria.
El equipo usa PRs para mejorar la calidad del código, Claude mejora同步 su nivel de conocimiento.
Ilustración: Los PRs no son solo un flujo de revisión de código, también son una oportunidad para que las herramientas de IA evolucionen por sí mismas.
6. Subagentes (Subagents): Hacer que Claude ejecute modularmente tareas complejas
Además del flujo de tareas principal, Boris también define algunos subagentes (Subagents) para manejar tareas auxiliares comunes.
Los Subagents son módulos que se ejecutan automáticamente, como:
- code-simplifier: Simplifica automáticamente la estructura después de que Claude escriba el código
- verify-app: Ejecuta pruebas completas, verifica si el nuevo código es usable
- log-analyzer: Analiza logs de errores, localiza problemas rápidamente
Estos subagentes se conectan como plugins al flujo de trabajo de Claude, colaborando y ejecutándose automáticamente, sin necesidad de prompts repetitivos.
Ilustración: Los subagentes son los "miembros del equipo" de Claude, actualizando a Claude de un asistente a un "comandante de proyecto".
Claude no es solo una persona, sino un pequeño supervisor al que puedes llevar equipo.
7. Párrafo adicional: PostToolUse Hook -- El último guardián del formato del código
En un equipo, no es fácil que todos escriban código con un estilo unificado. Aunque la capacidad de generación de Claude es fuerte,难免会有细节瑕疵 como sangría un poco desviada, líneas vacías de más.
La práctica de Boris es configurar un PostToolUse Hook--
En pocas palabras, este es un "gancho de post-procesamiento" que Claude invoca automáticamente después de "completar la tarea".
Sus funciones incluyen:
- Reparar automáticamente el formato del código
- Complementar comentarios omitidos
- Manejar errores de lint, evitar que falle el CI
Este paso通常不复杂, pero es clave. Como ejecutar Grammarly una vez más después de escribir un artículo, para que el trabajo entregado sea estable y ordenado.
Para las herramientas de IA, la clave de la usabilidad a menudo no está en la capacidad de generación, sino en la capacidad de finalización.
8. Gestión de permisos: Pre-autorizar en lugar de saltar
Boris deja claro que no usa --dangerously-skip-permissions -- este es un parámetro de Claude Code que puede saltar todas las solicitudes de permiso al ejecutar comandos.
Suena conveniente, pero también puede ser peligroso, como eliminar archivos por error, ejecutar scripts incorrectos, etc.
Su solución alternativa es:
1. Usar el comando /permissions para declarar explícitamente qué comandos son confiables
2. Escribir estas configuraciones de permisos en .claude/settings.json
3. Hacer que todo el equipo comparta estas configuraciones seguras
Esto es como abrir previamente un lote de operaciones en "lista blanca" para Claude, como:
"preApprovedCommands": [
"git commit",
"npm run build",
"pytest"
]
Claude encuentra estas operaciones y las ejecuta directamente, sin interrumpir cada vez.
Este mecanismo de permisos está diseñado más como un sistema operativo de equipo que como una herramienta standalone. Él usa el comando /permissions para pre-autorizar comandos bash常用、seguros, estas configuraciones se guardan en .claude/settings.json, compartidas por el equipo.
Ilustración: La automatización de IA no significa falta de control. Incorporar políticas de seguridad en el propio flujo de automatización es la verdadera ingeniería.
9. Interconexión de múltiples herramientas: Claude = robot versátil
Boris no solo hace que Claude escriba código localmente. Configuró a Claude para que pueda acceder a múltiples plataformas centrales a través de MCP (un módulo de servicio de control central):
- Enviar notificaciones de Slack automáticamente (por ejemplo, resultados de build)
- Consultar datos de BigQuery (por ejemplo, métricas de comportamiento de usuario)
- Capturar logs de Sentry (por ejemplo, seguimiento de excepciones en producción)
¿Cómo se implementa?
La configuración de MCP se guarda en .mcp.json
Claude lee la configuración durante la ejecución, ejecuta autónomamente tareas multiplataforma
Todo el equipo comparte un conjunto de configuraciones
Todo esto se realiza mediante la integración de MCP (el sistema de control central de Claude) con Claude, la configuración se guarda en .mcp.json.
Claude es como un asistente robot que puede ayudarte:
"Escribir código → Enviar PR → Ver el efecto → Notificar a QA → Reportar logs".
Esto ya no es una herramienta de IA en el sentido tradicional, sino el sistema nervioso central de un sistema de ingeniería.
Ilustración: No dejes que la IA trabaje solo "en el editor",
Puede convertirse en el planificador de todo tu ecosistema de sistemas.
10. Procesamiento asíncrono de tareas largas: Agente en segundo plano + plugins + hooks
En proyectos reales, Claude a veces debe manejar tareas largas, como:
- Build + pruebas + despliegue
- Generar reportes + enviar emails
- Ejecución de scripts de migración de datos
El enfoque de Boris es muy de ingeniería:
Tres formas de manejar tareas largas:
1. Claude, después de completar, usa un Agente en segundo plano para verificar el resultado
2. Usar Stop Hook, que se activa automáticamente al finalizar la tarea para acciones posteriores
3. Usar el plugin ralph-wiggum (propuesto por @GeoffreyHuntley) para gestionar el estado de flujos largos
En estos escenarios, Boris usaría:
--permission-mode=dontAsk
O ejecutaría la tarea en un sandbox, para evitar interrumpir todo el flujo debido a solicitudes de permiso.
Claude no es para "vigilar constantemente", sino un colaborador en el que puedes confiar para delegar.
Ilustración: Las herramientas de IA no solo son adecuadas para operaciones rápidas, sino también para ciclos largos y flujos complejos, siempre que construyas un "mecanismo de custodia" para ellas.
11. Mecanismo de verificación automática: El valor de la salida de Claude depende de si puede verificarse a sí misma
La experiencia más importante de Boris es:
Cualquier resultado que outputee Claude debe tener un "mecanismo de verificación" para comprobar su corrección.
Él añade a Claude un script de verificación o un hook:
- Después de escribir el código, Claude ejecuta automáticamente casos de prueba para verificar si el código es correcto
- Simula interacción del usuario en el navegador, verifica la experiencia frontend
- Compara automáticamente logs, métricas antes y después de la ejecución
Si no pasa, Claude se modifica automáticamente, se re-ejecuta. Hasta que pase.
Es como si Claude llevara consigo un "sistema de retroalimentación de bucle cerrado".
Esto no solo mejora la calidad, sino que también reduce la carga cognitiva de la persona.
Ilustración: Lo que realmente determina la calidad de los resultados de la IA no es la cantidad de parámetros del modelo, sino si has diseñado un "mecanismo de verificación de resultados" para ella.
Resumen: No se trata de que la IA reemplace a las personas, sino de que la IA colabore como una persona
El método de Boris no depende de "funciones ocultas" o tecnología negra, sino del uso de Claude de manera ingenieril, actualizándolo de una "herramienta de chat" a una parte eficiente de un sistema de trabajo.
Su forma de usar Claude tiene varias características centrales:
- Múltiples sesiones en paralelo: La división de tareas es más clara, la eficiencia es mayor
- Planificación prioritaria: El modo Plan mejora el grado de alineación de objetivos de Claude
- Soporte del sistema de conocimiento: El equipo mantiene conjuntamente la base de conocimiento de la IA, iterando continuamente
- Automatización de tareas: Comandos Slash + subagentes, haciendo que Claude trabaje como un motor de flujo
- Mecanismo de retroalimentación de bucle cerrado: Cada output de Claude tiene lógica de verificación, asegurando una producción estable y confiable
En realidad, el método de Boris muestra una nueva forma de usar la IA:
- Actualizar a Claude de "asistente de conversación" a "sistema de programación automatizado"
- Convertir la acumulación de conocimiento del cerebro humano en la base de conocimiento de la IA
- Transformar el flujo de operaciones manuales repetitivas en un flujo de trabajo automático scripteado, modularizado y colaborativo
Esta práctica no depende de magia negra, sino que es una manifestación de capacidad de ingeniería. Tú también puedes aprender ideas de aquí, para usar Claude u otras herramientas de IA de manera más eficiente e inteligente.
Si al usar Claude a menudo sientes que entiende un poco, pero no es confiable", "el código escrito siempre lo tengo que arreglar", tal vez el problema no esté en Claude, sino en que aún no le has dado un mecanismo de colaboración maduro.
Claude puede ser un becario calificado, o un compañero de ingeniería estable y confiable, dependiendo de cómo lo uses.




















