Comprender nuevas bases de código
Obtener una descripción general rápida de la base de código
Supongamos que acaba de unirse a un nuevo proyecto y necesita comprender su estructura rápidamente.Encontrar código relevante
Supongamos que necesita localizar código relacionado con una característica o funcionalidad específica.Corregir errores de manera eficiente
Supongamos que ha encontrado un mensaje de error y necesita encontrar y corregir su origen.Refactorizar código
Supongamos que necesita actualizar código antiguo para utilizar patrones y prácticas modernas.Usar subagentes especializados
Supongamos que desea utilizar subagentes de IA especializados para manejar tareas específicas de manera más efectiva.Ver subagentes disponibles
Usar subagentes automáticamente
Claude Code delega automáticamente tareas apropiadas a subagentes especializados:
Crear subagentes personalizados para su flujo de trabajo
- Un identificador único que describa el propósito del subagente (por ejemplo,
code-reviewer,api-designer). - Cuándo Claude debe usar este agente
- Qué herramientas puede acceder
- Un indicador del sistema que describa el rol y comportamiento del agente
Usar Plan Mode para análisis seguro de código
Plan Mode instruye a Claude para crear un plan analizando la base de código con operaciones de solo lectura, perfecto para explorar bases de código, planificar cambios complejos o revisar código de manera segura. En Plan Mode, Claude utilizaAskUserQuestion para recopilar requisitos y aclarar sus objetivos antes de proponer un plan.
Cuándo usar Plan Mode
- Implementación de múltiples pasos: Cuando su característica requiere hacer ediciones en muchos archivos
- Exploración de código: Cuando desea investigar la base de código a fondo antes de cambiar nada
- Desarrollo interactivo: Cuando desea iterar en la dirección con Claude
Cómo usar Plan Mode
Activar Plan Mode durante una sesión Puede cambiar a Plan Mode durante una sesión usando Shift+Tab para ciclar a través de modos de permiso. Si está en Normal Mode, Shift+Tab primero cambia a Auto-Accept Mode, indicado por⏵⏵ accept edits on en la parte inferior de la terminal. Un Shift+Tab posterior cambiará a Plan Mode, indicado por ⏸ plan mode on.
Iniciar una nueva sesión en Plan Mode
Para iniciar una nueva sesión en Plan Mode, use la bandera --permission-mode plan:
-p (es decir, en “modo sin interfaz”):
Ejemplo: Planificar una refactorización compleja
--name o /rename, aceptar un plan no lo sobrescribirá.
Configurar Plan Mode como predeterminado
Trabajar con pruebas
Supongamos que necesita agregar pruebas para código no cubierto.
Claude puede generar pruebas que sigan los patrones y convenciones existentes de su proyecto. Al solicitar pruebas, sea específico sobre qué comportamiento desea verificar. Claude examina sus archivos de prueba existentes para coincidir con el estilo, marcos y patrones de afirmación ya en uso.
Para una cobertura integral, pida a Claude que identifique casos extremos que podría haber perdido. Claude puede analizar sus rutas de código y sugerir pruebas para condiciones de error, valores límite e entradas inesperadas que son fáciles de pasar por alto.
Crear solicitudes de extracción
Puede crear solicitudes de extracción pidiendo a Claude directamente (“crear una pr para mis cambios”), o guiar a Claude a través de ella paso a paso: Cuando crea una PR usandogh pr create, la sesión se vincula automáticamente a esa PR. Puede reanudarla más tarde con claude --from-pr <number>.
Manejar documentación
Supongamos que necesita agregar o actualizar documentación para su código.Trabajar con imágenes
Supongamos que necesita trabajar con imágenes en su base de código y desea la ayuda de Claude para analizar el contenido de la imagen.Agregue una imagen a la conversación
Puede usar cualquiera de estos métodos:
- Arrastre y suelte una imagen en la ventana de Claude Code
- Copie una imagen y péguela en la CLI con ctrl+v (No use cmd+v)
- Proporcione una ruta de imagen a Claude. Por ejemplo, “Analiza esta imagen: /path/to/your/image.png”
Archivos y directorios de referencia
Use @ para incluir rápidamente archivos o directorios sin esperar a que Claude los lea.Haga referencia a un archivo único
Haga referencia a un directorio
Haga referencia a recursos MCP
Usar pensamiento extendido (Thinking Mode)
El pensamiento extendido está habilitado de forma predeterminada, dando a Claude espacio para razonar a través de problemas complejos paso a paso antes de responder. Este razonamiento es visible en modo detallado, que puede alternar conCtrl+O.
Además, Opus 4.6 y Sonnet 4.6 admiten razonamiento adaptativo: en lugar de un presupuesto de token de pensamiento fijo, el modelo asigna dinámicamente el pensamiento basado en su configuración de nivel de esfuerzo. El pensamiento extendido y el razonamiento adaptativo funcionan juntos para darle control sobre qué tan profundamente Claude razona antes de responder.
El pensamiento extendido es particularmente valioso para decisiones arquitectónicas complejas, errores desafiantes, planificación de implementación de múltiples pasos y evaluación de compensaciones entre diferentes enfoques.
Frases como “think”, “think hard” y “think more” se interpretan como instrucciones de indicación regulares y no asignan tokens de pensamiento.
Configurar Thinking Mode
El pensamiento está habilitado de forma predeterminada, pero puede ajustarlo o deshabilitarlo.| Alcance | Cómo configurar | Detalles |
|---|---|---|
| Nivel de esfuerzo | Ejecute /effort, ajuste en /model, o establezca CLAUDE_CODE_EFFORT_LEVEL | Control de profundidad de pensamiento para Opus 4.6 y Sonnet 4.6. Consulte Ajustar nivel de esfuerzo |
Palabra clave ultrathink | Incluya “ultrathink” en cualquier lugar de su indicación | Establece el esfuerzo en alto para ese turno en Opus 4.6 y Sonnet 4.6. Útil para tareas únicas que requieren razonamiento profundo sin cambiar permanentemente su configuración de esfuerzo |
| Atajo de alternancia | Presione Option+T (macOS) o Alt+T (Windows/Linux) | Alterne el pensamiento activado/desactivado para la sesión actual (todos los modelos). Puede requerir configuración de terminal para habilitar atajos de teclado de opción |
| Predeterminado global | Use /config para alternar Thinking Mode | Establece su predeterminado en todos los proyectos (todos los modelos). Guardado como alwaysThinkingEnabled en ~/.claude/settings.json |
| Presupuesto de token límite | Establezca la variable de entorno MAX_THINKING_TOKENS | Limite el presupuesto de pensamiento a un número específico de tokens. En Opus 4.6 y Sonnet 4.6, solo 0 se aplica a menos que se deshabilite el razonamiento adaptativo. Ejemplo: export MAX_THINKING_TOKENS=10000 |
Ctrl+O para alternar el modo detallado y ver el razonamiento interno mostrado como texto gris en cursiva.
Cómo funciona el pensamiento extendido
El pensamiento extendido controla cuánto razonamiento interno realiza Claude antes de responder. Más pensamiento proporciona más espacio para explorar soluciones, analizar casos extremos y autocorregir errores. Con Opus 4.6 y Sonnet 4.6, el pensamiento utiliza razonamiento adaptativo: el modelo asigna dinámicamente tokens de pensamiento basados en el nivel de esfuerzo que selecciona. Esta es la forma recomendada de ajustar la compensación entre velocidad y profundidad de razonamiento. Con modelos más antiguos, el pensamiento utiliza un presupuesto fijo de tokens extraído de su asignación de salida. El presupuesto varía según el modelo; consulteMAX_THINKING_TOKENS para los límites por modelo. Puede limitar el presupuesto con esa variable de entorno, o deshabilitar el pensamiento completamente a través de /config o el alternador Option+T/Alt+T.
En Opus 4.6 y Sonnet 4.6, el razonamiento adaptativo controla la profundidad del pensamiento, por lo que MAX_THINKING_TOKENS solo se aplica cuando se establece en 0 para deshabilitar el pensamiento, o cuando CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1 revierte estos modelos al presupuesto fijo. Consulte variables de entorno.
Reanudar conversaciones anteriores
Cuando inicia Claude Code, puede reanudar una sesión anterior:claude --continuecontinúa la conversación más reciente en el directorio actualclaude --resumeabre un selector de conversación o reanuda por nombreclaude --from-pr 123reanuda sesiones vinculadas a una solicitud de extracción específica
/resume para cambiar a una conversación diferente.
Las sesiones se almacenan por directorio de proyecto. El selector /resume muestra sesiones interactivas del mismo repositorio de git, incluidos worktrees. Las sesiones creadas por claude -p o invocaciones de SDK no aparecen en el selector, pero aún puede reanudar una pasando su ID de sesión directamente a claude --resume <session-id>.
Nombrar sus sesiones
Dé a las sesiones nombres descriptivos para encontrarlas más tarde. Esta es una mejor práctica cuando se trabaja en múltiples tareas o características.Nombre la sesión
Nombre una sesión al inicio con O use También puede renombrar cualquier sesión desde el selector: ejecute
-n:/rename durante una sesión, que también muestra el nombre en la barra de indicación:/resume, navegue a una sesión y presione R.Usar el selector de sesión
El comando/resume (o claude --resume sin argumentos) abre un selector de sesión interactivo con estas características:
Atajos de teclado en el selector:
| Atajo | Acción |
|---|---|
↑ / ↓ | Navegue entre sesiones |
→ / ← | Expandir o contraer sesiones agrupadas |
Enter | Seleccione y reanude la sesión resaltada |
P | Vista previa del contenido de la sesión |
R | Renombre la sesión resaltada |
/ | Busque para filtrar sesiones |
A | Alterne entre directorio actual y todos los proyectos |
B | Filtrar a sesiones de su rama de git actual |
Esc | Salga del selector o modo de búsqueda |
- Nombre de sesión o indicación inicial
- Tiempo transcurrido desde la última actividad
- Recuento de mensajes
- Rama de Git (si aplica)
/branch, /rewind, o --fork-session) se agrupan bajo su sesión raíz, lo que facilita encontrar conversaciones relacionadas.
Ejecutar sesiones paralelas de Claude Code con Git worktrees
Cuando trabaja en múltiples tareas a la vez, necesita que cada sesión de Claude tenga su propia copia de la base de código para que los cambios no choquen. Los worktrees de Git resuelven esto creando directorios de trabajo separados que cada uno tiene sus propios archivos y rama, mientras comparten el mismo historial de repositorio y conexiones remotas. Esto significa que puede tener a Claude trabajando en una característica en un worktree mientras corrige un error en otro, sin que ninguna sesión interfiera con la otra. Use la bandera--worktree (-w) para crear un worktree aislado e iniciar Claude en él. El valor que pasa se convierte en el nombre del directorio worktree y el nombre de la rama:
<repo>/.claude/worktrees/<name> y se ramifican desde la rama remota predeterminada, que es donde origin/HEAD apunta. La rama worktree se nombra worktree-<name>.
La rama base no es configurable a través de una bandera o configuración de Claude Code. origin/HEAD es una referencia almacenada en su directorio .git local que Git estableció una vez cuando clonó. Si la rama predeterminada del repositorio cambia más tarde en GitHub o GitLab, su origin/HEAD local sigue apuntando al anterior, y los worktrees se ramificarán desde allí. Para resincronizar su referencia local con lo que el remoto actualmente considera su predeterminado:
.git local. Nada en el servidor remoto cambia. Si desea que los worktrees se basen en una rama específica en lugar del predeterminado del remoto, establézcalo explícitamente con git remote set-head origin your-branch-name.
Para control total sobre cómo se crean los worktrees, incluida la elección de una base diferente por invocación, configure un hook WorktreeCreate. El hook reemplaza completamente la lógica predeterminada de git worktree de Claude Code, para que pueda obtener y ramificar desde cualquier ref que necesite.
También puede pedir a Claude que “trabaje en un worktree” o “inicie un worktree” durante una sesión, y lo creará automáticamente.
Worktrees de subagente
Los subagentes también pueden usar aislamiento de worktree para trabajar en paralelo sin conflictos. Pida a Claude que “use worktrees para sus agentes” o configúrelo en un subagente personalizado agregandoisolation: worktree al frontmatter del agente. Cada subagente obtiene su propio worktree que se limpia automáticamente cuando el subagente termina sin cambios.
Limpieza de worktree
Cuando sale de una sesión de worktree, Claude maneja la limpieza según si realizó cambios:- Sin cambios: el worktree y su rama se eliminan automáticamente
- Cambios o commits existen: Claude le solicita que mantenga o elimine el worktree. Mantener preserva el directorio y la rama para que pueda regresar más tarde. Eliminar elimina el directorio worktree y su rama, descartando todos los cambios sin confirmar y commits
Copiar archivos ignorados por git a worktrees
Los worktrees de Git son descargas nuevas, por lo que no incluyen archivos sin seguimiento como.env o .env.local de su repositorio principal. Para copiar automáticamente estos archivos cuando Claude crea un worktree, agregue un archivo .worktreeinclude a la raíz de su proyecto.
El archivo utiliza la sintaxis .gitignore para enumerar qué archivos copiar. Solo los archivos que coinciden con un patrón y también están ignorados por git se copian, por lo que los archivos rastreados nunca se duplican.
.worktreeinclude
--worktree, worktrees de subagente y sesiones paralelas en la aplicación de escritorio.
Gestionar worktrees manualmente
Para más control sobre la ubicación del worktree y la configuración de rama, cree worktrees con Git directamente. Esto es útil cuando necesita verificar una rama existente específica o colocar el worktree fuera del repositorio.Control de versiones no git
El aislamiento de worktree funciona con git de forma predeterminada. Para otros sistemas de control de versiones como SVN, Perforce o Mercurial, configure hooks WorktreeCreate y WorktreeRemove para proporcionar lógica personalizada de creación y limpieza de worktree. Cuando se configura, estos hooks reemplazan el comportamiento predeterminado de git cuando usa--worktree, por lo que .worktreeinclude no se procesa. Copie cualquier archivo de configuración local dentro de su script de hook en su lugar.
Para la coordinación automatizada de sesiones paralelas con tareas compartidas y mensajería, consulte equipos de agentes.
Reciba notificaciones cuando Claude necesite su atención
Cuando inicia una tarea de larga duración y cambia a otra ventana, puede configurar notificaciones de escritorio para saber cuándo Claude termina o necesita su entrada. Esto utiliza el evento de hookNotification hook event, que se activa cada vez que Claude está esperando permiso, inactivo y listo para una nueva indicación, o completando autenticación.
Agregue el hook a su configuración
Abra Si su archivo de configuración ya tiene una clave
~/.claude/settings.json y agregue un hook Notification que llame al comando de notificación nativa de su plataforma:- macOS
- Linux
- Windows
hooks, combine la entrada Notification en ella en lugar de sobrescribir. También puede pedir a Claude que escriba el hook por usted describiendo lo que desea en la CLI.Opcionalmente, reduzca el matcher
De forma predeterminada, el hook se activa en todos los tipos de notificación. Para activarse solo para eventos específicos, establezca el campo
matcher en uno de estos valores:| Matcher | Se activa cuando |
|---|---|
permission_prompt | Claude necesita que apruebe un uso de herramienta |
idle_prompt | Claude está hecho y esperando su próxima indicación |
auth_success | La autenticación se completa |
elicitation_dialog | Claude le está haciendo una pregunta |
Verifique el hook
Escriba
/hooks y seleccione Notification para confirmar que el hook aparece. Seleccionarlo muestra el comando que se ejecutará. Para probarlo de extremo a extremo, pida a Claude que ejecute un comando que requiera permiso y cambie de la terminal, o pida a Claude que active una notificación directamente.Usar Claude como una utilidad de estilo unix
Agregue Claude a su proceso de verificación
Supongamos que desea usar Claude Code como un linter o revisor de código. Agregue Claude a su script de compilación:Canalizar entrada, canalizar salida
Supongamos que desea canalizar datos a Claude y obtener datos en un formato estructurado. Canalizar datos a través de Claude:Controlar el formato de salida
Supongamos que necesita la salida de Claude en un formato específico, especialmente cuando integra Claude Code en scripts u otras herramientas.Usar formato de texto (predeterminado)
Ejecutar Claude en un horario
Supongamos que desea que Claude maneje una tarea automáticamente de forma recurrente, como revisar PRs abiertas cada mañana, auditar dependencias semanalmente o verificar fallas de CI durante la noche. Elija una opción de programación según dónde desee que se ejecute la tarea:| Opción | Dónde se ejecuta | Mejor para |
|---|---|---|
| Tareas programadas en la nube | Infraestructura administrada por Anthropic | Tareas que deben ejecutarse incluso cuando su computadora está apagada. Configure en claude.ai/code. |
| Tareas programadas de escritorio | Su máquina, a través de la aplicación de escritorio | Tareas que necesitan acceso directo a archivos locales, herramientas o cambios sin confirmar. |
| GitHub Actions | Su canalización de CI | Tareas vinculadas a eventos de repositorio como PRs abiertos, o horarios cron que deben vivir junto con su configuración de flujo de trabajo. |
/loop | La sesión CLI actual | Sondeo rápido mientras una sesión está abierta. Las tareas se cancelan cuando sale. |
Pregunte a Claude sobre sus capacidades
Claude tiene acceso integrado a su documentación y puede responder preguntas sobre sus propias características y limitaciones.Preguntas de ejemplo
Claude proporciona respuestas basadas en documentación a estas preguntas. Para demostraciones prácticas, ejecute
/powerup para lecciones interactivas con demostraciones animadas, o consulte las secciones de flujo de trabajo específicas anteriores.Próximos pasos
Mejores prácticas
Patrones para obtener lo máximo de Claude Code
Cómo funciona Claude Code
Comprenda el bucle agente y la gestión de contexto
Extender Claude Code
Agregue skills, hooks, MCP, subagentes y plugins
Implementación de referencia
Clone la implementación de referencia del contenedor de desarrollo