SpyBara
Go Premium

Documentation 2026-08-03 20:02 UTC to 2026-08-04 22:59 UTC

76 files changed +2,444 −2,552. View all changes and history on the product overview
2026
Wed 5 02:01 Tue 4 22:59 Mon 3 20:02 Sun 2 19:00

accessibility.md +18 −18

Details

22 22 

23* Para una sesión: ejecute `claude --ax-screen-reader`.23* Para una sesión: ejecute `claude --ax-screen-reader`.

24* Para sesiones iniciadas desde un shell: establezca la variable de entorno `CLAUDE_AX_SCREEN_READER` en `1`. En Bash o Zsh, ejecute `export CLAUDE_AX_SCREEN_READER=1`; en PowerShell, ejecute `$env:CLAUDE_AX_SCREEN_READER = "1"`. Agregue la línea a su perfil de shell para cubrir cada shell.24* Para sesiones iniciadas desde un shell: establezca la variable de entorno `CLAUDE_AX_SCREEN_READER` en `1`. En Bash o Zsh, ejecute `export CLAUDE_AX_SCREEN_READER=1`; en PowerShell, ejecute `$env:CLAUDE_AX_SCREEN_READER = "1"`. Agregue la línea a su perfil de shell para cubrir cada shell.

25* Para cada sesión en la máquina: agregue `"axScreenReader": true` a su [archivo de configuración](/es/settings) de usuario. Esto cubre cualquier terminal, incluida la terminal integrada de VS Code.25* Para cada sesión en la máquina: agregue `"axScreenReader": true` a su [archivo de configuración](/docs/es/settings) de usuario. Esto cubre cualquier terminal, incluida la terminal integrada de VS Code.

26 26 

27<Note>27<Note>

28 Los métodos se enumeran en orden de precedencia: la bandera [`--ax-screen-reader`](/es/cli-reference#cli-flags) anula la variable de entorno [`CLAUDE_AX_SCREEN_READER`](/es/env-vars), que anula la configuración [`axScreenReader`](/es/settings#available-settings).28 Los métodos se enumeran en orden de precedencia: la bandera [`--ax-screen-reader`](/docs/es/cli-reference#cli-flags) anula la variable de entorno [`CLAUDE_AX_SCREEN_READER`](/docs/es/env-vars), que anula la configuración [`axScreenReader`](/docs/es/settings#available-settings).

29</Note>29</Note>

30 30 

31Si utiliza Claude Code a través de SSH, establezca la variable de entorno o la configuración en la máquina remota donde se ejecuta Claude Code.31Si utiliza Claude Code a través de SSH, establezca la variable de entorno o la configuración en la máquina remota donde se ejecuta Claude Code.

32 32 

33Cuando el modo está activado, lo primero que imprime Claude Code es una línea de confirmación que nombra el método que lo activó: `[Screen Reader Mode: on via flag]`, `[Screen Reader Mode: on via env]` o `[Screen Reader Mode: on via settings]`. El formato de nomenclatura de método requiere Claude Code v2.1.206 o posterior. Cuando Claude Code se reinicia a sí mismo, por ejemplo para terminar de instalar una actualización, el nuevo proceso hereda el modo a través de la variable de entorno `CLAUDE_AX_SCREEN_READER`, por lo que su línea de confirmación lee `[Screen Reader Mode: on via env]` independientemente del método que utilizó.33Cuando el modo está activado, lo primero que imprime Claude Code es una línea de confirmación que nombra el método que lo activó: `[Screen Reader Mode: on via flag]`, `[Screen Reader Mode: on via env]` o `[Screen Reader Mode: on via settings]`. El formato de nomenclatura de método requiere Claude Code v2.1.206 o posterior. Cuando Claude Code se reinicia a sí mismo, por ejemplo para terminar de instalar una actualización, el nuevo proceso hereda el modo a través de la variable de entorno `CLAUDE_AX_SCREEN_READER`, por lo que su línea de confirmación lee `[Screen Reader Mode: on via env]` independientemente del método que utilizó.

34{/* max-version: 2.1.205 */}Las versiones anteriores imprimen `[Accessible screen reader mode: on]`.34Las versiones anteriores imprimen `[Accessible screen reader mode: on]`.

35 35 

36<h2 id="turn-off-screen-reader-mode">36<h2 id="turn-off-screen-reader-mode">

37 Desactivar el modo lector de pantalla37 Desactivar el modo lector de pantalla


48* sin caracteres de dibujo de cuadros para el cromo de la interfaz48* sin caracteres de dibujo de cuadros para el cromo de la interfaz

49* sin señales solo de color49* sin señales solo de color

50* sin redibujados de contenido que no ha cambiado; los spinners de progreso se renderizan como texto estático50* sin redibujados de contenido que no ha cambiado; los spinners de progreso se renderizan como texto estático

51* las tablas en las respuestas de Claude se leen como oraciones `Header: value` en lugar de una cuadrícula de caracteres de cuadro. {/* min-version: 2.1.198 */}Requiere Claude Code v2.1.198 o posterior; las versiones anteriores dibujan tablas como cuadrículas incluso en el modo lector de pantalla.51* las tablas en las respuestas de Claude se leen como oraciones `Header: value` en lugar de una cuadrícula de caracteres de cuadro. Requiere Claude Code v2.1.198 o posterior; las versiones anteriores dibujan tablas como cuadrículas incluso en el modo lector de pantalla.

52 52 

53La salida se acumula en el scrollback de su terminal, para que pueda releer turnos anteriores con los comandos de revisión de su lector de pantalla o la búsqueda de su terminal.53La salida se acumula en el scrollback de su terminal, para que pueda releer turnos anteriores con los comandos de revisión de su lector de pantalla o la búsqueda de su terminal.

54 54 

55El modo lector de pantalla se renderiza como texto plano desplazable, incluso si ha activado [renderizado a pantalla completa](/es/fullscreen) con la [configuración `tui`](/es/settings#available-settings); la configuración no tiene efecto mientras el modo está activo. Las sesiones de fondo adjuntas aún se renderizan a pantalla completa; consulte [Limitaciones conocidas](#known-limitations).55El modo lector de pantalla se renderiza como texto plano desplazable, incluso si ha activado [renderizado a pantalla completa](/docs/es/fullscreen) con la [configuración `tui`](/docs/es/settings#available-settings); la configuración no tiene efecto mientras el modo está activo. Las sesiones de fondo adjuntas aún se renderizan a pantalla completa; consulte [Limitaciones conocidas](#known-limitations).

56 56 

57Cada mensaje en la transcripción comienza con una etiqueta que su lector de pantalla anuncia, nombrando lo que es: sus mensajes, las respuestas de Claude, la actividad de herramientas, errores y solicitudes. Las etiquetas también se pueden buscar, para que pueda saltar entre secciones de la transcripción buscando el scrollback de su terminal:57Cada mensaje en la transcripción comienza con una etiqueta que su lector de pantalla anuncia, nombrando lo que es: sus mensajes, las respuestas de Claude, la actividad de herramientas, errores y solicitudes. Las etiquetas también se pueden buscar, para que pueda saltar entre secciones de la transcripción buscando el scrollback de su terminal:

58 58 


64| `tool error:` | Una herramienta que falló |64| `tool error:` | Una herramienta que falló |

65| `error:` | Un error en la conversación, como una solicitud de API fallida |65| `error:` | Un error en la conversación, como una solicitud de API fallida |

66| `Permission Required:` | Una solicitud de permiso esperando su respuesta |66| `Permission Required:` | Una solicitud de permiso esperando su respuesta |

67| `Cost:` | El resumen de costo de la sesión cuando Claude Code sale, si su cuenta [muestra costos](/es/costs) |67| `Cost:` | El resumen de costo de la sesión cuando Claude Code sale, si su cuenta [muestra costos](/docs/es/costs) |

68 68 

69El cursor de la terminal sigue el acento de entrada, por lo que el comando de lectura de línea actual de un lector de pantalla responde "dónde estoy" con la solicitud que está editando.69El cursor de la terminal sigue el acento de entrada, por lo que el comando de lectura de línea actual de un lector de pantalla responde "dónde estoy" con la solicitud que está editando.

70 70 


102* aparece una solicitud de permiso102* aparece una solicitud de permiso

103* una herramienta que se ejecutó durante más de 5 segundos termina103* una herramienta que se ejecutó durante más de 5 segundos termina

104 104 

105La campana es la alerta estándar de su terminal. Para silenciarla, cambie la configuración de campana en su aplicación de terminal. La campana no requiere modo lector de pantalla: fuera del modo, establezca [`preferredNotifChannel`](/es/settings#available-settings) en `"terminal_bell"` para alertas similares cuando Claude lo está esperando. Consulte [Obtener una campana de terminal o notificación](/es/terminal-config#get-a-terminal-bell-or-notification).105La campana es la alerta estándar de su terminal. Para silenciarla, cambie la configuración de campana en su aplicación de terminal. La campana no requiere modo lector de pantalla: fuera del modo, establezca [`preferredNotifChannel`](/docs/es/settings#available-settings) en `"terminal_bell"` para alertas similares cuando Claude lo está esperando. Consulte [Obtener una campana de terminal o notificación](/docs/es/terminal-config#get-a-terminal-bell-or-notification).

106 106 

107<h2 id="accessibility-settings-beyond-screen-reader-mode">107<h2 id="accessibility-settings-beyond-screen-reader-mode">

108 Configuración de accesibilidad más allá del modo lector de pantalla108 Configuración de accesibilidad más allá del modo lector de pantalla


110 110 

111Estas opciones abordan necesidades de accesibilidad fuera del modo lector de pantalla. Todas ellas funcionan junto con él.111Estas opciones abordan necesidades de accesibilidad fuera del modo lector de pantalla. Todas ellas funcionan junto con él.

112 112 

113* La [variable de entorno](/es/env-vars) `CLAUDE_CODE_ACCESSIBILITY` es para ampliadores de pantalla. Establezca `CLAUDE_CODE_ACCESSIBILITY=1` para mantener visible el cursor de terminal nativo para que los ampliadores, como macOS Zoom, puedan rastrear la posición del cursor.113* La [variable de entorno](/docs/es/env-vars) `CLAUDE_CODE_ACCESSIBILITY` es para ampliadores de pantalla. Establezca `CLAUDE_CODE_ACCESSIBILITY=1` para mantener visible el cursor de terminal nativo para que los ampliadores, como macOS Zoom, puedan rastrear la posición del cursor.

114* La [configuración](/es/settings#available-settings) `prefersReducedMotion` reduce o desactiva spinners, shimmer y otras animaciones sin cambiar el resto de la interfaz.114* La [configuración](/docs/es/settings#available-settings) `prefersReducedMotion` reduce o desactiva spinners, shimmer y otras animaciones sin cambiar el resto de la interfaz.

115* La [configuración](/es/settings#available-settings) `theme` selecciona los colores de la interfaz, incluidos los temas seguros para daltónicos `dark-daltonized` y `light-daltonized`.115* La [configuración](/docs/es/settings#available-settings) `theme` selecciona los colores de la interfaz, incluidos los temas seguros para daltónicos `dark-daltonized` y `light-daltonized`.

116 116 

117<h2 id="known-limitations">117<h2 id="known-limitations">

118 Limitaciones conocidas118 Limitaciones conocidas


121Algunos comportamientos no se adaptan al modo lector de pantalla:121Algunos comportamientos no se adaptan al modo lector de pantalla:

122 122 

123* El modo lector de pantalla no se activa automáticamente cuando se ejecuta un lector de pantalla.123* El modo lector de pantalla no se activa automáticamente cuando se ejecuta un lector de pantalla.

124* Los cambios de modo, como entrar en [modo plan](/es/permission-modes#analyze-before-you-edit-with-plan-mode), aún no se anuncian.124* Los cambios de modo, como entrar en [modo plan](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode), aún no se anuncian.

125* Adjuntarse a una [sesión de fondo](/es/agent-view) con `claude attach` o desde la vista de agente entra en la pantalla alternativa de la terminal, que no tiene scrollback nativo. Este es el [mismo comportamiento que otras sesiones adjuntas](/es/fullscreen). Para salir, presione la flecha izquierda en una solicitud vacía, o Ctrl+Z si un diálogo tiene el foco.125* Adjuntarse a una [sesión de fondo](/docs/es/agent-view) con `claude attach` o desde la vista de agente entra en la pantalla alternativa de la terminal, que no tiene scrollback nativo. Este es el [mismo comportamiento que otras sesiones adjuntas](/docs/es/fullscreen). Para salir, presione la flecha izquierda en una solicitud vacía, o Ctrl+Z si un diálogo tiene el foco.

126* Claude Code anuncia costos en el resumen que imprime al salir, no por turno.126* Claude Code anuncia costos en el resumen que imprime al salir, no por turno.

127* El modo lector de pantalla no cambia el [modo no interactivo](/es/headless) con la bandera `-p`. El modo no interactivo ya escribe texto plano y sigue siendo una alternativa para scripting.127* El modo lector de pantalla no cambia el [modo no interactivo](/docs/es/headless) con la bandera `-p`. El modo no interactivo ya escribe texto plano y sigue siendo una alternativa para scripting.

128 128 

129<h2 id="report-an-issue">129<h2 id="report-an-issue">

130 Reportar un problema130 Reportar un problema


138 138 

139Estas páginas contienen las entradas de referencia completa y la configuración relacionada para lo que cubre esta página:139Estas páginas contienen las entradas de referencia completa y la configuración relacionada para lo que cubre esta página:

140 140 

141* [Settings](/es/settings#available-settings): las entradas `axScreenReader`, `prefersReducedMotion`, `theme` y `preferredNotifChannel`141* [Settings](/docs/es/settings#available-settings): las entradas `axScreenReader`, `prefersReducedMotion`, `theme` y `preferredNotifChannel`

142* [Environment variables](/es/env-vars): las entradas `CLAUDE_AX_SCREEN_READER` y `CLAUDE_CODE_ACCESSIBILITY`142* [Environment variables](/docs/es/env-vars): las entradas `CLAUDE_AX_SCREEN_READER` y `CLAUDE_CODE_ACCESSIBILITY`

143* [CLI reference](/es/cli-reference#cli-flags): la bandera `--ax-screen-reader`143* [CLI reference](/docs/es/cli-reference#cli-flags): la bandera `--ax-screen-reader`

144* [Terminal configuration](/es/terminal-config): campanas, notificaciones y temas fuera del modo lector de pantalla144* [Terminal configuration](/docs/es/terminal-config): campanas, notificaciones y temas fuera del modo lector de pantalla

145* [Non-interactive mode](/es/headless): ejecuciones de `claude -p` con script, que escriben texto plano sin modo lector de pantalla145* [Non-interactive mode](/docs/es/headless): ejecuciones de `claude -p` con script, que escriben texto plano sin modo lector de pantalla

advisor.md +17 −17

Details

22 22 

23El advisor se ajusta a tareas largas y multietapa donde la mayoría de los turnos son rutinarios pero la calidad del plan determina el resultado. Los ejemplos incluyen refactorizaciones grandes, sesiones de depuración donde un error sigue repitiéndose, y tareas que desea que se verifiquen de forma independiente antes de que Claude las declare completadas.23El advisor se ajusta a tareas largas y multietapa donde la mayoría de los turnos son rutinarios pero la calidad del plan determina el resultado. Los ejemplos incluyen refactorizaciones grandes, sesiones de depuración donde un error sigue repitiéndose, y tareas que desea que se verifiquen de forma independiente antes de que Claude las declare completadas.

24 24 

25Añade menos valor en tareas cortas donde hay poco que planificar, o en trabajo donde cada turno necesita el modelo más fuerte. Para esos casos, [cambie el modelo principal](/es/model-config#setting-your-model) en su lugar, o vea [cómo se compara el advisor con opusplan y subagents](#compare-with-related-features) para otras formas de obtener una segunda opinión.25Añade menos valor en tareas cortas donde hay poco que planificar, o en trabajo donde cada turno necesita el modelo más fuerte. Para esos casos, [cambie el modelo principal](/docs/es/model-config#setting-your-model) en su lugar, o vea [cómo se compara el advisor con opusplan y subagents](#compare-with-related-features) para otras formas de obtener una segunda opinión.

26 26 

27<h2 id="enable-the-advisor">27<h2 id="enable-the-advisor">

28 Habilitar el advisor28 Habilitar el advisor


31Puede configurar el modelo advisor de tres formas:31Puede configurar el modelo advisor de tres formas:

32 32 

33* **Comando `/advisor`**: establezca o cambie el advisor a mitad de sesión y guárdelo como su predeterminado33* **Comando `/advisor`**: establezca o cambie el advisor a mitad de sesión y guárdelo como su predeterminado

34* **Configuración `advisorModel`**: configure un predeterminado persistente en su [archivo de configuración](/es/settings)34* **Configuración `advisorModel`**: configure un predeterminado persistente en su [archivo de configuración](/docs/es/settings)

35* **Bandera `--advisor`**: establezca el advisor para una única sesión al iniciar35* **Bandera `--advisor`**: establezca el advisor para una única sesión al iniciar

36 36 

37Si alguno de estos establece un modelo advisor, el advisor se habilita para sesiones cuyo modelo principal [lo admite](#choose-an-advisor-model). Para dejar de usarlo, vea [Desactivar el advisor](#turn-the-advisor-off).37Si alguno de estos establece un modelo advisor, el advisor se habilita para sesiones cuyo modelo principal [lo admite](#choose-an-advisor-model). Para dejar de usarlo, vea [Desactivar el advisor](#turn-the-advisor-off).

38 38 

39<Note>39<Note>

40 Para usar Fable 5 como advisor, necesita Claude Code v2.1.170 o posterior y [acceso a Fable 5](/es/model-config#work-with-fable-5) para su organización.40 Para usar Fable 5 como advisor, necesita Claude Code v2.1.170 o posterior y [acceso a Fable 5](/docs/es/model-config#work-with-fable-5) para su organización.

41</Note>41</Note>

42 42 

43<h3 id="use-the-/advisor-command">43<h3 id="use-the-/advisor-command">


50/advisor opus50/advisor opus

51```51```

52 52 

53Su selección se guarda en `advisorModel` en su configuración de usuario y persiste entre sesiones. Si la lista de permitidos [`availableModels`](/es/model-config#restrict-model-selection) de su organización excluye el modelo advisor guardado, el advisor no se invoca hasta que seleccione un modelo permitido con `/advisor`. Si su modelo principal actual no admite el advisor, la selección aún se guarda y se activa cuando cambia a un [modelo principal compatible](#choose-an-advisor-model) con [`/model`](/es/model-config#setting-your-model).53Su selección se guarda en `advisorModel` en su configuración de usuario y persiste entre sesiones. Si la lista de permitidos [`availableModels`](/docs/es/model-config#restrict-model-selection) de su organización excluye el modelo advisor guardado, el advisor no se invoca hasta que seleccione un modelo permitido con `/advisor`. Si su modelo principal actual no admite el advisor, la selección aún se guarda y se activa cuando cambia a un [modelo principal compatible](#choose-an-advisor-model) con [`/model`](/docs/es/model-config#setting-your-model).

54 54 

55<h3 id="set-advisormodel-in-settings">55<h3 id="set-advisormodel-in-settings">

56 Establecer `advisorModel` en la configuración56 Establecer `advisorModel` en la configuración


74claude --advisor opus74claude --advisor opus

75```75```

76 76 

77La bandera tiene prioridad sobre la configuración `advisorModel` para esa sesión. Sale con un error si el modelo principal de la sesión no admite el advisor, o si el modelo advisor solicitado está excluido por la lista de permitidos [`availableModels`](/es/model-config#restrict-model-selection) de su organización.77La bandera tiene prioridad sobre la configuración `advisorModel` para esa sesión. Sale con un error si el modelo principal de la sesión no admite el advisor, o si el modelo advisor solicitado está excluido por la lista de permitidos [`availableModels`](/docs/es/model-config#restrict-model-selection) de su organización.

78 78 

79<h2 id="choose-an-advisor-model">79<h2 id="choose-an-advisor-model">

80 Elegir un modelo advisor80 Elegir un modelo advisor


83El advisor debe ser al menos tan capaz como el modelo principal. Los advisors aceptados para cada modelo principal son:83El advisor debe ser al menos tan capaz como el modelo principal. Los advisors aceptados para cada modelo principal son:

84 84 

85| Modelo principal | Advisors aceptados | Notas |85| Modelo principal | Advisors aceptados | Notas |

86| ----------------------------------------------- | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |86| -------------------- | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

87| Haiku 4.5 | Fable, Opus, Sonnet | Haiku puede llamar al advisor pero no puede actuar como uno |87| Haiku 4.5 | Fable, Opus, Sonnet | Haiku puede llamar al advisor pero no puede actuar como uno |

88| Sonnet 4.6 | Fable, Opus, Sonnet | |88| Sonnet 4.6 | Fable, Opus, Sonnet | |

89| Sonnet 5 | Fable, Opus, Sonnet 5 | Un advisor Sonnet 4.6 se rechaza |89| Sonnet 5 | Fable, Opus, Sonnet 5 | Un advisor Sonnet 4.6 se rechaza |

90| Opus 4.6 | Fable, Opus, Sonnet 5 | Sonnet 5 y Opus 4.6 se clasifican como igualmente capaces, por lo que un Opus 4.6 principal acepta un advisor Sonnet 5 |90| Opus 4.6 | Fable, Opus, Sonnet 5 | Sonnet 5 y Opus 4.6 se clasifican como igualmente capaces, por lo que un Opus 4.6 principal acepta un advisor Sonnet 5 |

91| Opus 4.7 o posterior | Fable, Opus 4.7, Opus 4.8 | Opus 4.7 y Opus 4.8 se clasifican como igualmente capaces, por lo que cualquiera acepta al otro como advisor. Un Opus 4.7 principal con un advisor Opus 4.6 o Sonnet 5 se rechaza |91| Opus 4.7 o posterior | Fable, Opus 4.7, Opus 4.8 | Opus 4.7 y Opus 4.8 se clasifican como igualmente capaces, por lo que cualquiera acepta al otro como advisor. Un Opus 4.7 principal con un advisor Opus 4.6 o Sonnet 5 se rechaza |

92| Fable 5 ({/* min-version: 2.1.170 */}v2.1.170+) | Fable | Un advisor Opus o Sonnet se rechaza |92| Fable 5 (v2.1.170+) | Fable | Un advisor Opus o Sonnet se rechaza |

93 93 

94Fable 5 requiere Claude Code v2.1.170 o posterior y acceso a Fable 5, ya sea que actúe como modelo principal o como advisor.94Fable 5 requiere Claude Code v2.1.170 o posterior y acceso a Fable 5, ya sea que actúe como modelo principal o como advisor.

95 95 


141 141 

142Cada llamada al advisor envía la conversación al modelo advisor, por lo que consume tokens a las tasas del modelo advisor además del uso de su modelo principal. Con facturación por API, los tokens del advisor se cobran a las tasas de entrada y salida del modelo advisor. En planes de suscripción, el uso del advisor cuenta hacia los límites de uso de su plan.142Cada llamada al advisor envía la conversación al modelo advisor, por lo que consume tokens a las tasas del modelo advisor además del uso de su modelo principal. Con facturación por API, los tokens del advisor se cobran a las tasas de entrada y salida del modelo advisor. En planes de suscripción, el uso del advisor cuenta hacia los límites de uso de su plan.

143 143 

144Claude llama al advisor en puntos de decisión en lugar de en cada turno, por lo que emparejar un modelo principal más rápido con un advisor más fuerte típicamente cuesta menos que ejecutar el modelo más fuerte en todo. El uso del advisor cuenta hacia los totales de sesión mostrados por [`/usage`](/es/costs#track-your-costs).144Claude llama al advisor en puntos de decisión en lugar de en cada turno, por lo que emparejar un modelo principal más rápido con un advisor más fuerte típicamente cuesta menos que ejecutar el modelo más fuerte en todo. El uso del advisor cuenta hacia los totales de sesión mostrados por [`/usage`](/docs/es/costs#track-your-costs).

145 145 

146Para cómo se reportan los tokens del advisor en respuestas de API, vea [Uso y facturación](https://platform.claude.com/docs/en/agents-and-tools/tool-use/advisor-tool#usage-and-billing) en la documentación de la API de Claude.146Para cómo se reportan los tokens del advisor en respuestas de API, vea [Uso y facturación](https://platform.claude.com/docs/en/agents-and-tools/tool-use/advisor-tool#usage-and-billing) en la documentación de la API de Claude.

147 147 


149 Impacto en el almacenamiento en caché de indicaciones149 Impacto en el almacenamiento en caché de indicaciones

150</h2>150</h2>

151 151 

152Habilitar o deshabilitar el advisor a mitad de sesión no invalida el [caché de indicaciones](/es/prompt-caching) de su modelo principal. A diferencia de [cambiar modelo o nivel de esfuerzo](/es/prompt-caching#actions-that-invalidate-the-cache), alternar `/advisor` mantiene el prefijo en caché intacto, y la orientación devuelta por el advisor se almacena en caché como parte de la transcripción en turnos posteriores.152Habilitar o deshabilitar el advisor a mitad de sesión no invalida el [caché de indicaciones](/docs/es/prompt-caching) de su modelo principal. A diferencia de [cambiar modelo o nivel de esfuerzo](/docs/es/prompt-caching#actions-that-invalidate-the-cache), alternar `/advisor` mantiene el prefijo en caché intacto, y la orientación devuelta por el advisor se almacena en caché como parte de la transcripción en turnos posteriores.

153 153 

154La propia lectura del advisor de la conversación no se almacena en caché. Cada llamada al advisor procesa la transcripción completa de nuevo, sin reutilización entre llamadas.154La propia lectura del advisor de la conversación no se almacena en caché. Cada llamada al advisor procesa la transcripción completa de nuevo, sin reutilización entre llamadas.

155 155 


159 159 

160La herramienta advisor requiere todo lo siguiente:160La herramienta advisor requiere todo lo siguiente:

161 161 

162* **Solo API de Anthropic**: el advisor es una herramienta ejecutada por servidor. No está disponible en Amazon Bedrock, Claude Platform en AWS, Google Cloud's Agent Platform o Microsoft Foundry. A través de una [puerta de enlace LLM](/es/llm-gateway) configurada con `ANTHROPIC_BASE_URL`, la disponibilidad depende de si la puerta de enlace reenvía la solicitud intacta a la API de Anthropic.162* **Solo API de Anthropic**: el advisor es una herramienta ejecutada por servidor. No está disponible en Amazon Bedrock, Claude Platform en AWS, Google Cloud's Agent Platform o Microsoft Foundry. A través de una [puerta de enlace LLM](/docs/es/llm-gateway) configurada con `ANTHROPIC_BASE_URL`, la disponibilidad depende de si la puerta de enlace reenvía la solicitud intacta a la API de Anthropic.

163* **Modelo principal admitido**: Opus 4.6 o posterior, Sonnet 4.6 o posterior, o Haiku 4.5. {/* min-version: 2.1.170 */}Fable 5 también califica en Claude Code v2.1.170 o posterior.163* **Modelo principal admitido**: Opus 4.6 o posterior, Sonnet 4.6 o posterior, o Haiku 4.5. Fable 5 también califica en Claude Code v2.1.170 o posterior.

164 164 

165<h2 id="turn-the-advisor-off">165<h2 id="turn-the-advisor-off">

166 Desactivar el advisor166 Desactivar el advisor


172/advisor off172/advisor off

173```173```

174 174 

175Para deshabilitar la herramienta advisor completamente, establezca `CLAUDE_CODE_DISABLE_ADVISOR_TOOL=1`. El comando `/advisor` se vuelve no disponible y cualquier `advisorModel` configurado se ignora. La bandera `--advisor` se acepta pero no tiene efecto; los scripts existentes que la pasan continúan funcionando sin errores. Vea [Variables de entorno](/es/env-vars).175Para deshabilitar la herramienta advisor completamente, establezca `CLAUDE_CODE_DISABLE_ADVISOR_TOOL=1`. El comando `/advisor` se vuelve no disponible y cualquier `advisorModel` configurado se ignora. La bandera `--advisor` se acepta pero no tiene efecto; los scripts existentes que la pasan continúan funcionando sin errores. Vea [Variables de entorno](/docs/es/env-vars).

176 176 

177<h2 id="compare-with-related-features">177<h2 id="compare-with-related-features">

178 Comparar con características relacionadas178 Comparar con características relacionadas


183| Enfoque | Cuándo se ejecuta el modelo más fuerte | Cómo comienza |183| Enfoque | Cuándo se ejecuta el modelo más fuerte | Cómo comienza |

184| ------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |184| ------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |

185| Herramienta advisor | En puntos de decisión a mitad de tarea | Claude la llama cuando necesita orientación |185| Herramienta advisor | En puntos de decisión a mitad de tarea | Claude la llama cuando necesita orientación |

186| [`opusplan`](/es/model-config#opusplan-model-setting) | Durante el modo plan cuando [permitido por `availableModels`](/es/model-config#restrict-model-selection), luego cambia a Sonnet para ejecución | Usted entra en modo plan |186| [`opusplan`](/docs/es/model-config#opusplan-model-setting) | Durante el modo plan cuando [permitido por `availableModels`](/docs/es/model-config#restrict-model-selection), luego cambia a Sonnet para ejecución | Usted entra en modo plan |

187| [Subagents](/es/sub-agents#choose-a-model) con `model` establecido | Para toda la subtarea delegada | Claude delega, o usted invoca el subagent |187| [Subagents](/docs/es/sub-agents#choose-a-model) con `model` establecido | Para toda la subtarea delegada | Claude delega, o usted invoca el subagent |

188| [`/model`](/es/model-config#setting-your-model) | Para todos los turnos posteriores | Usted cambia modelos |188| [`/model`](/docs/es/model-config#setting-your-model) | Para todos los turnos posteriores | Usted cambia modelos |

189 189 

190<h2 id="see-also">190<h2 id="see-also">

191 Ver también191 Ver también

192</h2>192</h2>

193 193 

194* [Configuración de modelos](/es/model-config): cambie modelos, establezca niveles de esfuerzo, y use `opusplan`194* [Configuración de modelos](/docs/es/model-config): cambie modelos, establezca niveles de esfuerzo, y use `opusplan`

195* [Gestionar costos de forma efectiva](/es/costs): rastrear el uso de tokens entre modelos195* [Gestionar costos de forma efectiva](/docs/es/costs): rastrear el uso de tokens entre modelos

196* [Herramienta advisor en la API de Claude](https://platform.claude.com/docs/en/agents-and-tools/tool-use/advisor-tool): comprenda la herramienta de servidor subyacente, o úsela directamente desde la API de Mensajes196* [Herramienta advisor en la API de Claude](https://platform.claude.com/docs/en/agents-and-tools/tool-use/advisor-tool): comprenda la herramienta de servidor subyacente, o úsela directamente desde la API de Mensajes

197* [La estrategia advisor](https://claude.com/blog/the-advisor-strategy): por qué emparejar un modelo principal rápido con un advisor más fuerte funciona197* [La estrategia advisor](https://claude.com/blog/the-advisor-strategy): por qué emparejar un modelo principal rápido con un advisor más fuerte funciona

agent-sdk/hooks.md +21 −21

Details

26 </Step>26 </Step>

27 27 

28 <Step title="El SDK recopila hooks registrados">28 <Step title="El SDK recopila hooks registrados">

29 El SDK verifica si hay hooks registrados para ese tipo de evento. Esto incluye hooks de devolución de llamada que pasa en `options.hooks` y hooks de comandos de shell de archivos de configuración cuando la entrada [`settingSources`](/es/agent-sdk/typescript#settingsource) o [`setting_sources`](/es/agent-sdk/python#settingsource) correspondiente está habilitada, lo cual lo está para las opciones predeterminadas de `query()`.29 El SDK verifica si hay hooks registrados para ese tipo de evento. Esto incluye hooks de devolución de llamada que pasa en `options.hooks` y hooks de comandos de shell de archivos de configuración cuando la entrada [`settingSources`](/docs/es/agent-sdk/typescript#settingsource) o [`setting_sources`](/docs/es/agent-sdk/python#settingsource) correspondiente está habilitada, lo cual lo está para las opciones predeterminadas de `query()`.

30 </Step>30 </Step>

31 31 

32 <Step title="Los matchers filtran qué hooks se ejecutan">32 <Step title="Los matchers filtran qué hooks se ejecutan">


155| `PostToolUseFailure` | Sí | Sí | Fallo de ejecución de herramienta | Manejar o registrar errores de herramienta |155| `PostToolUseFailure` | Sí | Sí | Fallo de ejecución de herramienta | Manejar o registrar errores de herramienta |

156| `PostToolBatch` | No | Sí | Un lote completo de llamadas de herramienta se resuelve, una vez por lote antes de la siguiente llamada del modelo | Inyectar convenciones una vez para todo el lote |156| `PostToolBatch` | No | Sí | Un lote completo de llamadas de herramienta se resuelve, una vez por lote antes de la siguiente llamada del modelo | Inyectar convenciones una vez para todo el lote |

157| `UserPromptSubmit` | Sí | Sí | Envío de solicitud del usuario | Inyectar contexto adicional en solicitudes |157| `UserPromptSubmit` | Sí | Sí | Envío de solicitud del usuario | Inyectar contexto adicional en solicitudes |

158| [`UserPromptExpansion`](/es/hooks#userpromptexpansion) | No | Sí | Un comando escrito por el usuario se expande en una solicitud antes de llegar a Claude | Bloquear un comando de invocación directa o agregar contexto cuando se escribe una skill |158| [`UserPromptExpansion`](/docs/es/hooks#userpromptexpansion) | No | Sí | Un comando escrito por el usuario se expande en una solicitud antes de llegar a Claude | Bloquear un comando de invocación directa o agregar contexto cuando se escribe una skill |

159| `MessageDisplay` | No | Sí | Un mensaje del asistente con texto se completa, una vez por mensaje con el texto completo del mensaje | Redactar o reformatear el texto mostrado sin cambiar la transcripción |159| `MessageDisplay` | No | Sí | Un mensaje del asistente con texto se completa, una vez por mensaje con el texto completo del mensaje | Redactar o reformatear el texto mostrado sin cambiar la transcripción |

160| `Stop` | Sí | Sí | Detención de ejecución del agente | Guardar estado de sesión antes de salir |160| `Stop` | Sí | Sí | Detención de ejecución del agente | Guardar estado de sesión antes de salir |

161| `SubagentStart` | Sí | Sí | Inicialización de subagente | Rastrear generación de tareas paralelas |161| `SubagentStart` | Sí | Sí | Inicialización de subagente | Rastrear generación de tareas paralelas |


213 Matchers213 Matchers

214</h3>214</h3>

215 215 

216Use matchers para filtrar cuándo se disparan sus devoluciones de llamada. El campo `matcher` coincide con un valor diferente dependiendo del tipo de evento de hook. Por ejemplo, los hooks basados en herramientas coinciden con el nombre de la herramienta, mientras que los hooks `Notification` coinciden con el tipo de notificación. Vea la [referencia de hooks de Claude Code](/es/hooks#matcher-patterns) para la lista completa de valores de matcher para cada tipo de evento.216Use matchers para filtrar cuándo se disparan sus devoluciones de llamada. El campo `matcher` coincide con un valor diferente dependiendo del tipo de evento de hook. Por ejemplo, los hooks basados en herramientas coinciden con el nombre de la herramienta, mientras que los hooks `Notification` coinciden con el tipo de notificación. Vea la [referencia de hooks de Claude Code](/docs/es/hooks#matcher-patterns) para la lista completa de valores de matcher para cada tipo de evento.

217 217 

218Los matchers del SDK siguen las mismas reglas que [matchers en archivos de configuración](/es/hooks#matcher-patterns). Un matcher que contiene solo letras, dígitos, `_`, `-`, espacios, `,` y `|` se compara como una cadena exacta, con alternativas separadas por `|` o `,` y espacios en blanco opcionales alrededor, por lo que `Write|Edit` y `Write, Edit` coinciden exactamente con esas dos herramientas y `code-reviewer` coincide solo con ese tipo de agente. Un matcher de `*`, una cadena vacía, u omitir el matcher completamente coincide con cada ocurrencia del evento.218Los matchers del SDK siguen las mismas reglas que [matchers en archivos de configuración](/docs/es/hooks#matcher-patterns). Un matcher que contiene solo letras, dígitos, `_`, `-`, espacios, `,` y `|` se compara como una cadena exacta, con alternativas separadas por `|` o `,` y espacios en blanco opcionales alrededor, por lo que `Write|Edit` y `Write, Edit` coinciden exactamente con esas dos herramientas y `code-reviewer` coincide solo con ese tipo de agente. Un matcher de `*`, una cadena vacía, u omitir el matcher completamente coincide con cada ocurrencia del evento.

219 219 

220Un matcher que contiene cualquier otro carácter se evalúa como una expresión regular sin ancla, por lo que `^mcp__` coincide con cada herramienta MCP y `Edit.*` coincide tanto con `Edit` como con `NotebookEdit`. Envuelva una expresión regular en `^` y `$` cuando necesite una coincidencia de cadena completa.220Un matcher que contiene cualquier otro carácter se evalúa como una expresión regular sin ancla, por lo que `^mcp__` coincide con cada herramienta MCP y `Edit.*` coincide tanto con `Edit` como con `NotebookEdit`. Envuelva una expresión regular en `^` y `$` cuando necesite una coincidencia de cadena completa.

221 221 


225 225 

226| Opción | Tipo | Predeterminado | Descripción |226| Opción | Tipo | Predeterminado | Descripción |

227| --------- | ---------------- | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |227| --------- | ---------------- | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

228| `matcher` | `string` | `undefined` | Patrón coincidido contra el campo de filtro del evento, siguiendo las reglas de comparación anteriores. Para hooks de herramientas, este es el nombre de la herramienta. Las herramientas integradas incluyen `Bash`, `Read`, `Write`, `Edit`, `Glob`, `Grep`, `WebFetch`, `Agent` y otros (vea [Tipos de entrada de herramienta](/es/agent-sdk/typescript#tool-input-types) para la lista completa). Las herramientas MCP usan el patrón `mcp__<server>__<action>`. |228| `matcher` | `string` | `undefined` | Patrón coincidido contra el campo de filtro del evento, siguiendo las reglas de comparación anteriores. Para hooks de herramientas, este es el nombre de la herramienta. Las herramientas integradas incluyen `Bash`, `Read`, `Write`, `Edit`, `Glob`, `Grep`, `WebFetch`, `Agent` y otros (vea [Tipos de entrada de herramienta](/docs/es/agent-sdk/typescript#tool-input-types) para la lista completa). Las herramientas MCP usan el patrón `mcp__<server>__<action>`. |

229| `hooks` | `HookCallback[]` | - | Requerido. Matriz de funciones de devolución de llamada a ejecutar cuando el patrón coincide |229| `hooks` | `HookCallback[]` | - | Requerido. Matriz de funciones de devolución de llamada a ejecutar cuando el patrón coincide |

230| `timeout` | `number` | `60` | Tiempo de espera en segundos |230| `timeout` | `number` | `60` | Tiempo de espera en segundos |

231 231 


234Para hooks basados en herramientas, los matchers solo filtran por nombre de herramienta, no por rutas de archivo u otros argumentos. Para filtrar por ruta de archivo, verifique `tool_input.file_path` dentro de su devolución de llamada.234Para hooks basados en herramientas, los matchers solo filtran por nombre de herramienta, no por rutas de archivo u otros argumentos. Para filtrar por ruta de archivo, verifique `tool_input.file_path` dentro de su devolución de llamada.

235 235 

236<Tip>236<Tip>

237 **Descubriendo nombres de herramientas:** Vea [Tipos de entrada de herramienta](/es/agent-sdk/typescript#tool-input-types) para la lista completa de nombres de herramientas integradas, o agregue un hook sin un matcher para registrar todas las llamadas de herramienta que su sesión realiza.237 **Descubriendo nombres de herramientas:** Vea [Tipos de entrada de herramienta](/docs/es/agent-sdk/typescript#tool-input-types) para la lista completa de nombres de herramientas integradas, o agregue un hook sin un matcher para registrar todas las llamadas de herramienta que su sesión realiza.

238 238 

239 **Nomenclatura de herramientas MCP:** Las herramientas MCP siempre comienzan con `mcp__` seguido del nombre del servidor y la acción: `mcp__<server>__<action>`. Por ejemplo, si configura un servidor llamado `playwright`, sus herramientas se nombrarán `mcp__playwright__browser_screenshot`, `mcp__playwright__browser_click` y así sucesivamente. El nombre del servidor proviene de la clave que usa en la configuración `mcpServers`.239 **Nomenclatura de herramientas MCP:** Las herramientas MCP siempre comienzan con `mcp__` seguido del nombre del servidor y la acción: `mcp__<server>__<action>`. Por ejemplo, si configura un servidor llamado `playwright`, sus herramientas se nombrarán `mcp__playwright__browser_screenshot`, `mcp__playwright__browser_click` y así sucesivamente. El nombre del servidor proviene de la clave que usa en la configuración `mcpServers`.

240</Tip>240</Tip>


249 249 

250Cada devolución de llamada de hook recibe tres argumentos:250Cada devolución de llamada de hook recibe tres argumentos:

251 251 

252* **Datos de entrada:** un objeto tipado que contiene detalles del evento. Cada tipo de hook tiene su propia forma de entrada. Por ejemplo, `PreToolUseHookInput` incluye `tool_name` y `tool_input`, mientras que `NotificationHookInput` incluye `message`. Vea las definiciones de tipo completas en las referencias del SDK de [TypeScript](/es/agent-sdk/typescript#hookinput) y [Python](/es/agent-sdk/python#hookinput).252* **Datos de entrada:** un objeto tipado que contiene detalles del evento. Cada tipo de hook tiene su propia forma de entrada. Por ejemplo, `PreToolUseHookInput` incluye `tool_name` y `tool_input`, mientras que `NotificationHookInput` incluye `message`. Vea las definiciones de tipo completas en las referencias del SDK de [TypeScript](/docs/es/agent-sdk/typescript#hookinput) y [Python](/docs/es/agent-sdk/python#hookinput).

253 * Todas las entradas de hook comparten `session_id`, `cwd` y `hook_event_name`.253 * Todas las entradas de hook comparten `session_id`, `cwd` y `hook_event_name`.

254 * `agent_id` y `agent_type` se rellenan cuando el hook se dispara dentro de un subagente. En TypeScript, estos están en la entrada de hook base y disponibles para todos los tipos de hook. En Python, son campos opcionales en `PreToolUse`, `PostToolUse`, `PostToolUseFailure` y `PermissionRequest`, y campos requeridos en `SubagentStart` y `SubagentStop`.254 * `agent_id` y `agent_type` se rellenan cuando el hook se dispara dentro de un subagente. En TypeScript, estos están en la entrada de hook base y disponibles para todos los tipos de hook. En Python, son campos opcionales en `PreToolUse`, `PostToolUse`, `PostToolUseFailure` y `PermissionRequest`, y campos requeridos en `SubagentStart` y `SubagentStop`.

255* **ID de uso de herramienta** (`str | None` / `string | undefined`): correlaciona eventos `PreToolUse` y `PostToolUse` para la misma llamada de herramienta.255* **ID de uso de herramienta** (`str | None` / `string | undefined`): correlaciona eventos `PreToolUse` y `PostToolUse` para la misma llamada de herramienta.


262Su devolución de llamada devuelve un objeto con dos categorías de campos:262Su devolución de llamada devuelve un objeto con dos categorías de campos:

263 263 

264* **Campos de nivel superior** funcionan igual en cada evento: `systemMessage` muestra un mensaje al usuario, y `continue` (`continue_` en Python) determina si el agente sigue ejecutándose después de este hook.264* **Campos de nivel superior** funcionan igual en cada evento: `systemMessage` muestra un mensaje al usuario, y `continue` (`continue_` en Python) determina si el agente sigue ejecutándose después de este hook.

265* **`hookSpecificOutput`** controla la operación actual. Los campos dentro dependen del tipo de evento de hook. Para hooks `PreToolUse`, aquí es donde establece `permissionDecision` (`"allow"`, `"deny"`, `"ask"` o `"defer"`), `permissionDecisionReason` e `updatedInput`. Devolver `"defer"` finaliza la consulta para que pueda [reanudarla más tarde](/es/hooks#defer-a-tool-call-for-later). Para hooks `PostToolUse`, puede establecer `additionalContext` para agregar información al resultado de la herramienta. Para reemplazar la salida de la herramienta antes de que Claude la vea, establezca `updatedToolOutput`, que funciona para cualquier herramienta en ambos SDK. El campo anterior `updatedMCPToolOutput` reemplaza solo la salida de herramientas MCP y está deprecado.265* **`hookSpecificOutput`** controla la operación actual. Los campos dentro dependen del tipo de evento de hook. Para hooks `PreToolUse`, aquí es donde establece `permissionDecision` (`"allow"`, `"deny"`, `"ask"` o `"defer"`), `permissionDecisionReason` e `updatedInput`. Devolver `"defer"` finaliza la consulta para que pueda [reanudarla más tarde](/docs/es/hooks#defer-a-tool-call-for-later). Para hooks `PostToolUse`, puede establecer `additionalContext` para agregar información al resultado de la herramienta. Para reemplazar la salida de la herramienta antes de que Claude la vea, establezca `updatedToolOutput`, que funciona para cualquier herramienta en ambos SDK. El campo anterior `updatedMCPToolOutput` reemplaza solo la salida de herramientas MCP y está deprecado.

266 266 

267Devuelva `{}` para permitir la operación sin cambios. Los hooks de devolución de llamada del SDK usan el mismo formato de salida JSON que [hooks de comandos de shell de Claude Code](/es/hooks#json-output), que documenta cada campo y opción específica del evento. Para las definiciones de tipo del SDK, vea las referencias del SDK de [TypeScript](/es/agent-sdk/typescript#synchookjsonoutput) y [Python](/es/agent-sdk/python#synchookjsonoutput).267Devuelva `{}` para permitir la operación sin cambios. Los hooks de devolución de llamada del SDK usan el mismo formato de salida JSON que [hooks de comandos de shell de Claude Code](/docs/es/hooks#json-output), que documenta cada campo y opción específica del evento. Para las definiciones de tipo del SDK, vea las referencias del SDK de [TypeScript](/docs/es/agent-sdk/typescript#synchookjsonoutput) y [Python](/docs/es/agent-sdk/python#synchookjsonoutput).

268 268 

269<Note>269<Note>

270 Cuando se aplican múltiples hooks o reglas de permiso, `deny` tiene prioridad sobre `defer`, que tiene prioridad sobre `ask`, que tiene prioridad sobre `allow`. Si algún hook devuelve `deny`, la operación se bloquea independientemente de otros hooks.270 Cuando se aplican múltiples hooks o reglas de permiso, `deny` tiene prioridad sobre `defer`, que tiene prioridad sobre `ask`, que tiene prioridad sobre `allow`. Si algún hook devuelve `deny`, la operación se bloquea independientemente de otros hooks.


539 Rastrear actividad de subagente539 Rastrear actividad de subagente

540</h3>540</h3>

541 541 

542Use hooks `SubagentStop` para monitorear cuándo los subagentes terminan su trabajo. Vea el tipo de entrada completo en las referencias del SDK de [TypeScript](/es/agent-sdk/typescript#hookinput) y [Python](/es/agent-sdk/python#hookinput). Este ejemplo registra un resumen cada vez que un subagente se completa:542Use hooks `SubagentStop` para monitorear cuándo los subagentes terminan su trabajo. Vea el tipo de entrada completo en las referencias del SDK de [TypeScript](/docs/es/agent-sdk/typescript#hookinput) y [Python](/docs/es/agent-sdk/python#hookinput). Este ejemplo registra un resumen cada vez que un subagente se completa:

543 543 

544<CodeGroup>544<CodeGroup>

545 ```python Python theme={null}545 ```python Python theme={null}


791* Verifique que el nombre del evento de hook sea correcto y sensible a mayúsculas (`PreToolUse`, no `preToolUse`)791* Verifique que el nombre del evento de hook sea correcto y sensible a mayúsculas (`PreToolUse`, no `preToolUse`)

792* Verifique que su patrón de matcher coincida exactamente con el nombre de la herramienta792* Verifique que su patrón de matcher coincida exactamente con el nombre de la herramienta

793* Asegúrese de que el hook esté bajo el tipo de evento correcto en `options.hooks`793* Asegúrese de que el hook esté bajo el tipo de evento correcto en `options.hooks`

794* Para hooks que no son de herramientas que admiten matchers, como `Notification` y `SubagentStop`, los matchers coinciden contra campos diferentes, y `Stop` ignora los matchers por completo (vea [patrones de matcher](/es/hooks#matcher-patterns))794* Para hooks que no son de herramientas que admiten matchers, como `Notification` y `SubagentStop`, los matchers coinciden contra campos diferentes, y `Stop` ignora los matchers por completo (vea [patrones de matcher](/docs/es/hooks#matcher-patterns))

795* Los hooks pueden no dispararse cuando el agente alcanza el límite [`max_turns`](/es/agent-sdk/python#claudeagentoptions) porque la sesión termina antes de que los hooks puedan ejecutarse795* Los hooks pueden no dispararse cuando el agente alcanza el límite [`max_turns`](/docs/es/agent-sdk/python#claudeagentoptions) porque la sesión termina antes de que los hooks puedan ejecutarse

796 796 

797<h3 id="matcher-not-filtering-as-expected">797<h3 id="matcher-not-filtering-as-expected">

798 Matcher no filtra como se esperaba798 Matcher no filtra como se esperaba


818* Aumente el valor `timeout` en la configuración `HookMatcher`818* Aumente el valor `timeout` en la configuración `HookMatcher`

819* Use el `AbortSignal` del tercer argumento de devolución de llamada para manejar la cancelación correctamente en TypeScript819* Use el `AbortSignal` del tercer argumento de devolución de llamada para manejar la cancelación correctamente en TypeScript

820 820 

821{/* min-version: 2.1.208 */}Una devolución de llamada `UserPromptSubmit` o [`UserPromptExpansion`](/es/hooks#userpromptexpansion) que excede su tiempo de espera bloquea ese mensaje con un mensaje de tiempo de espera y la sesión continúa. Interrumpir la consulta mientras una devolución de llamada está pendiente cancela la llamada de herramienta pendiente. Antes de v2.1.208, un tiempo de espera de devolución de llamada en esos eventos terminaba la consulta con `error_during_execution`, e interrumpir durante una devolución de llamada `PreToolUse` pendiente podría permitir que la llamada de herramienta procediera.821Una devolución de llamada `UserPromptSubmit` o [`UserPromptExpansion`](/docs/es/hooks#userpromptexpansion) que excede su tiempo de espera bloquea ese mensaje con un mensaje de tiempo de espera y la sesión continúa. Interrumpir la consulta mientras una devolución de llamada está pendiente cancela la llamada de herramienta pendiente. Antes de v2.1.208, un tiempo de espera de devolución de llamada en esos eventos terminaba la consulta con `error_during_execution`, e interrumpir durante una devolución de llamada `PreToolUse` pendiente podría permitir que la llamada de herramienta procediera.

822 822 

823<h3 id="tool-blocked-unexpectedly">823<h3 id="tool-blocked-unexpectedly">

824 Herramienta bloqueada inesperadamente824 Herramienta bloqueada inesperadamente


852 Hooks de sesión no disponibles en Python852 Hooks de sesión no disponibles en Python

853</h3>853</h3>

854 854 

855`SessionStart` y `SessionEnd` pueden registrarse como hooks de devolución de llamada del SDK en TypeScript, pero no están disponibles en el SDK de Python porque su tipo `HookEvent` los omite. En Python, solo están disponibles como [hooks de comandos de shell](/es/hooks#hook-events) definidos en archivos de configuración como `.claude/settings.json`. Para cargar hooks de comandos de shell desde su aplicación SDK, incluya la fuente de configuración apropiada con [`setting_sources`](/es/agent-sdk/python#settingsource) o [`settingSources`](/es/agent-sdk/typescript#settingsource):855`SessionStart` y `SessionEnd` pueden registrarse como hooks de devolución de llamada del SDK en TypeScript, pero no están disponibles en el SDK de Python porque su tipo `HookEvent` los omite. En Python, solo están disponibles como [hooks de comandos de shell](/docs/es/hooks#hook-events) definidos en archivos de configuración como `.claude/settings.json`. Para cargar hooks de comandos de shell desde su aplicación SDK, incluya la fuente de configuración apropiada con [`setting_sources`](/docs/es/agent-sdk/python#settingsource) o [`settingSources`](/docs/es/agent-sdk/typescript#settingsource):

856 856 

857<CodeGroup>857<CodeGroup>

858 ```python Python theme={null}858 ```python Python theme={null}


890 systemMessage no aparece en la salida890 systemMessage no aparece en la salida

891</h3>891</h3>

892 892 

893El campo `systemMessage` muestra un mensaje al usuario, no al modelo. Por defecto, el SDK expone la salida de hooks en el flujo de mensajes solo para hooks `SessionStart` y `Setup`, por lo que un mensaje de cualquier otro evento de hook no aparece a menos que establezca `includeHookEvents` (`include_hook_events` en Python). Para pasar contexto al modelo en su lugar, devuelva [`additionalContext`](/es/hooks#add-context-for-claude).893El campo `systemMessage` muestra un mensaje al usuario, no al modelo. Por defecto, el SDK expone la salida de hooks en el flujo de mensajes solo para hooks `SessionStart` y `Setup`, por lo que un mensaje de cualquier otro evento de hook no aparece a menos que establezca `includeHookEvents` (`include_hook_events` en Python). Para pasar contexto al modelo en su lugar, devuelva [`additionalContext`](/docs/es/hooks#add-context-for-claude).

894 894 

895Si necesita exponer decisiones de hook a su aplicación de manera confiable, regístrelas por separado o use un canal de salida dedicado.895Si necesita exponer decisiones de hook a su aplicación de manera confiable, regístrelas por separado o use un canal de salida dedicado.

896 896 


898 Recursos relacionados898 Recursos relacionados

899</h2>899</h2>

900 900 

901* [Referencia de hooks de Claude Code](/es/hooks): esquemas completos de entrada/salida JSON, documentación de eventos y patrones de matcher901* [Referencia de hooks de Claude Code](/docs/es/hooks): esquemas completos de entrada/salida JSON, documentación de eventos y patrones de matcher

902* [Guía de hooks de Claude Code](/es/hooks-guide): ejemplos de hooks de comandos de shell y tutoriales902* [Guía de hooks de Claude Code](/docs/es/hooks-guide): ejemplos de hooks de comandos de shell y tutoriales

903* [Referencia del SDK de TypeScript](/es/agent-sdk/typescript): tipos de hook, definiciones de entrada/salida y opciones de configuración903* [Referencia del SDK de TypeScript](/docs/es/agent-sdk/typescript): tipos de hook, definiciones de entrada/salida y opciones de configuración

904* [Referencia del SDK de Python](/es/agent-sdk/python): tipos de hook, definiciones de entrada/salida y opciones de configuración904* [Referencia del SDK de Python](/docs/es/agent-sdk/python): tipos de hook, definiciones de entrada/salida y opciones de configuración

905* [Permisos](/es/agent-sdk/permissions): controlar qué puede hacer su agente905* [Permisos](/docs/es/agent-sdk/permissions): controlar qué puede hacer su agente

906* [Herramientas personalizadas](/es/agent-sdk/custom-tools): crear herramientas para extender las capacidades del agente906* [Herramientas personalizadas](/docs/es/agent-sdk/custom-tools): crear herramientas para extender las capacidades del agente

Details

6 6 

7> Controle cómo su agente utiliza herramientas con modos de permiso, hooks y reglas declarativas de permitir/denegar.7> Controle cómo su agente utiliza herramientas con modos de permiso, hooks y reglas declarativas de permitir/denegar.

8 8 

9El SDK del Agente Claude proporciona controles de permisos para gestionar cómo Claude utiliza las herramientas. Utilice modos de permiso y reglas para definir qué está permitido automáticamente, y la devolución de llamada [`canUseTool`](/es/agent-sdk/user-input) para manejar todo lo demás en tiempo de ejecución.9El SDK del Agente Claude proporciona controles de permisos para gestionar cómo Claude utiliza las herramientas. Utilice modos de permiso y reglas para definir qué está permitido automáticamente, y la devolución de llamada [`canUseTool`](/docs/es/agent-sdk/user-input) para manejar todo lo demás en tiempo de ejecución.

10 10 

11<Note>11<Note>

12 Esta página cubre modos de permiso y reglas. Para crear flujos de aprobación interactivos donde los usuarios aprueban o deniegan solicitudes de herramientas en tiempo de ejecución, consulte [Manejar aprobaciones e entrada del usuario](/es/agent-sdk/user-input).12 Esta página cubre modos de permiso y reglas. Para crear flujos de aprobación interactivos donde los usuarios aprueban o deniegan solicitudes de herramientas en tiempo de ejecución, consulte [Manejar aprobaciones e entrada del usuario](/docs/es/agent-sdk/user-input).

13</Note>13</Note>

14 14 

15<h2 id="how-permissions-are-evaluated">15<h2 id="how-permissions-are-evaluated">


20 20 

21<Steps>21<Steps>

22 <Step title="Hooks">22 <Step title="Hooks">

23 Ejecute [hooks](/es/agent-sdk/hooks) primero. Un hook puede denegar la llamada directamente o pasarla. Un hook que devuelve `allow` no omite las reglas de denegar y preguntar a continuación; esas se evalúan independientemente del resultado del hook.23 Ejecute [hooks](/docs/es/agent-sdk/hooks) primero. Un hook puede denegar la llamada directamente o pasarla. Un hook que devuelve `allow` no omite las reglas de denegar y preguntar a continuación; esas se evalúan independientemente del resultado del hook.

24 </Step>24 </Step>

25 25 

26 <Step title="Reglas de denegar">26 <Step title="Reglas de denegar">

27 Verifique las reglas `deny` (de `disallowed_tools` y [settings.json](/es/settings#permission-settings)). Si una regla de denegar coincide, la herramienta se bloquea, incluso en modo `bypassPermissions`. Las reglas de nombre simple como `Bash` eliminan la herramienta del contexto de Claude antes de que comience esta evaluación, por lo que solo se verifican las reglas con alcance como `Bash(rm *)` en este paso.27 Verifique las reglas `deny` (de `disallowed_tools` y [settings.json](/docs/es/settings#permission-settings)). Si una regla de denegar coincide, la herramienta se bloquea, incluso en modo `bypassPermissions`. Las reglas de nombre simple como `Bash` eliminan la herramienta del contexto de Claude antes de que comience esta evaluación, por lo que solo se verifican las reglas con alcance como `Bash(rm *)` en este paso.

28 </Step>28 </Step>

29 29 

30 <Step title="Reglas de preguntar">30 <Step title="Reglas de preguntar">

31 Verifique las reglas `ask` de [settings.json](/es/settings#permission-settings). Si una regla de preguntar coincide, la llamada se pasa a su devolución de llamada [`canUseTool`](/es/agent-sdk/user-input) para confirmación, incluso en modo `bypassPermissions`.31 Verifique las reglas `ask` de [settings.json](/docs/es/settings#permission-settings). Si una regla de preguntar coincide, la llamada se pasa a su devolución de llamada [`canUseTool`](/docs/es/agent-sdk/user-input) para confirmación, incluso en modo `bypassPermissions`.

32 32 

33 Las herramientas que requieren interacción del usuario se comportan de la misma manera: `AskUserQuestion` y las herramientas MCP cuyo servidor establece [`_meta["anthropic/requiresUserInteraction"]`](/es/mcp#require-approval-for-a-specific-tool) siempre se pasan a la devolución de llamada, incluso cuando una regla de permitir coincide. En modo `dontAsk` ambos casos se deniegan en su lugar, porque ese modo nunca solicita confirmación. {/* min-version: 2.1.199 */}La anotación MCP requiere Claude Code v2.1.199 o posterior.33 Las herramientas que requieren interacción del usuario se comportan de la misma manera: `AskUserQuestion` y las herramientas MCP cuyo servidor establece [`_meta["anthropic/requiresUserInteraction"]`](/docs/es/mcp#require-approval-for-a-specific-tool) siempre se pasan a la devolución de llamada, incluso cuando una regla de permitir coincide. En modo `dontAsk` ambos casos se deniegan en su lugar, porque ese modo nunca solicita confirmación. La anotación MCP requiere Claude Code v2.1.199 o posterior.

34 34 

35 Las herramientas del conector [claude.ai](/es/mcp#organization-controls-on-connector-tools) que su organización ha establecido en `ask` también salen del flujo en este paso. Cada llamada se pasa a la devolución de llamada, incluso en modo `bypassPermissions` y incluso cuando una regla de permitir coincide. La devolución de llamada recibe la razón `Your organization requires approval for this tool`. En modo `dontAsk` la llamada se deniega en su lugar, porque ese modo nunca solicita confirmación.35 Las herramientas del conector [claude.ai](/docs/es/mcp#organization-controls-on-connector-tools) que su organización ha establecido en `ask` también salen del flujo en este paso. Cada llamada se pasa a la devolución de llamada, incluso en modo `bypassPermissions` y incluso cuando una regla de permitir coincide. La devolución de llamada recibe la razón `Your organization requires approval for this tool`. En modo `dontAsk` la llamada se deniega en su lugar, porque ese modo nunca solicita confirmación.

36 </Step>36 </Step>

37 37 

38 <Step title="Modo de permiso">38 <Step title="Modo de permiso">


44 </Step>44 </Step>

45 45 

46 <Step title="Devolución de llamada canUseTool">46 <Step title="Devolución de llamada canUseTool">

47 Si no se resuelve por ninguno de los anteriores, llame a su devolución de llamada [`canUseTool`](/es/agent-sdk/user-input) para una decisión. En modo `dontAsk`, este paso se omite y la herramienta se deniega.47 Si no se resuelve por ninguno de los anteriores, llame a su devolución de llamada [`canUseTool`](/docs/es/agent-sdk/user-input) para una decisión. En modo `dontAsk`, este paso se omite y la herramienta se deniega.

48 </Step>48 </Step>

49</Steps>49</Steps>

50 50 


57 57 

58Las entradas con un especificador como `Bash(ls *)` y el modo `acceptEdits` no lo desencadenan, y las reglas de permitir provenientes de archivos de configuración no son visibles para la verificación.58Las entradas con un especificador como `Bash(ls *)` y el modo `acceptEdits` no lo desencadenan, y las reglas de permitir provenientes de archivos de configuración no son visibles para la verificación.

59 59 

60Escuche con `process.on('warning', ...)` y haga coincidir el código para registrarlo o suprimirlo. Para controlar cada llamada de herramienta independientemente del modo y las reglas, use un [hook `PreToolUse`](/es/agent-sdk/hooks) en su lugar.60Escuche con `process.on('warning', ...)` y haga coincidir el código para registrarlo o suprimirlo. Para controlar cada llamada de herramienta independientemente del modo y las reglas, use un [hook `PreToolUse`](/docs/es/agent-sdk/hooks) en su lugar.

61 61 

62Esta página se enfoca en **reglas de permitir y denegar** y **modos de permiso**. Para los otros pasos:62Esta página se enfoca en **reglas de permitir y denegar** y **modos de permiso**. Para los otros pasos:

63 63 

64* **Hooks:** ejecute código personalizado para permitir, denegar o modificar solicitudes de herramientas. Consulte [Controlar la ejecución con hooks](/es/agent-sdk/hooks).64* **Hooks:** ejecute código personalizado para permitir, denegar o modificar solicitudes de herramientas. Consulte [Controlar la ejecución con hooks](/docs/es/agent-sdk/hooks).

65* **Devolución de llamada canUseTool:** solicite aprobación a los usuarios en tiempo de ejecución, cuando ningún paso anterior resuelve la llamada. Consulte [Manejar aprobaciones e entrada del usuario](/es/agent-sdk/user-input).65* **Devolución de llamada canUseTool:** solicite aprobación a los usuarios en tiempo de ejecución, cuando ningún paso anterior resuelve la llamada. Consulte [Manejar aprobaciones e entrada del usuario](/docs/es/agent-sdk/user-input).

66 66 

67<h2 id="allow-and-deny-rules">67<h2 id="allow-and-deny-rules">

68 Reglas de permitir y denegar68 Reglas de permitir y denegar


81 81 

82Las reglas delimitadas para `Read` y `Edit` toman un patrón de ruta. Las reglas `Edit(path)` rigen todas las herramientas integradas que escriben archivos, incluidas `Write` y `NotebookEdit`; una regla `Write(path)` nunca es coincidida por las comprobaciones de permiso de archivo.82Las reglas delimitadas para `Read` y `Edit` toman un patrón de ruta. Las reglas `Edit(path)` rigen todas las herramientas integradas que escriben archivos, incluidas `Write` y `NotebookEdit`; una regla `Write(path)` nunca es coincidida por las comprobaciones de permiso de archivo.

83 83 

84Use `//path` para una ruta del sistema de archivos absoluta: una regla de denegar de `Edit(//secrets/**)` bloquea escrituras en cualquier lugar bajo `/secrets` en el disco. Con una sola barra diagonal inicial, `Edit(/secrets/**)` se ancla en la fuente de la regla en su lugar. Para reglas pasadas a través de `allowed_tools` o `disallowed_tools`, eso significa el directorio de trabajo de la sesión, por lo que la regla no bloquea `/secrets` en el disco. Consulte [Reglas de Read y Edit](/es/permissions#read-and-edit) para las cuatro formas de anclaje y cómo se resuelven las reglas de archivos de configuración.84Use `//path` para una ruta del sistema de archivos absoluta: una regla de denegar de `Edit(//secrets/**)` bloquea escrituras en cualquier lugar bajo `/secrets` en el disco. Con una sola barra diagonal inicial, `Edit(/secrets/**)` se ancla en la fuente de la regla en su lugar. Para reglas pasadas a través de `allowed_tools` o `disallowed_tools`, eso significa el directorio de trabajo de la sesión, por lo que la regla no bloquea `/secrets` en el disco. Consulte [Reglas de Read y Edit](/docs/es/permissions#read-and-edit) para las cuatro formas de anclaje y cómo se resuelven las reglas de archivos de configuración.

85 85 

86<Warning>86<Warning>

87 **Las herramientas pre-aprobadas nunca llegan a `canUseTool`.** Una llamada de herramienta aprobada en cualquier paso anterior, por `acceptEdits` o `bypassPermissions`, o por una regla de permitir, omite su devolución de llamada `canUseTool`, por lo que las comprobaciones de permiso que coloque allí se omiten silenciosamente para esa herramienta. `AskUserQuestion`, herramientas MCP marcadas [`_meta["anthropic/requiresUserInteraction"]`](/es/mcp#require-approval-for-a-specific-tool), y herramientas de conector [que su organización configuró para `ask`](/es/mcp#organization-controls-on-connector-tools) aún llegan a la devolución de llamada, incluso cuando una regla de permitir coincide.87 **Las herramientas pre-aprobadas nunca llegan a `canUseTool`.** Una llamada de herramienta aprobada en cualquier paso anterior, por `acceptEdits` o `bypassPermissions`, o por una regla de permitir, omite su devolución de llamada `canUseTool`, por lo que las comprobaciones de permiso que coloque allí se omiten silenciosamente para esa herramienta. `AskUserQuestion`, herramientas MCP marcadas [`_meta["anthropic/requiresUserInteraction"]`](/docs/es/mcp#require-approval-for-a-specific-tool), y herramientas de conector [que su organización configuró para `ask`](/docs/es/mcp#organization-controls-on-connector-tools) aún llegan a la devolución de llamada, incluso cuando una regla de permitir coincide.

88 88 

89 La cobertura depende de la forma de la entrada: un nombre simple como `Read` o `mcp__github__get_issue` pre-aprueba cada llamada a esa herramienta, mientras que una regla delimitada como `Bash(ls *)` pre-aprueba solo las llamadas coincidentes y otras llamadas de `Bash` aún se descartan a la devolución de llamada. Para comprobaciones que deben ejecutarse en cada llamada de herramienta, use un hook [`PreToolUse`](/es/agent-sdk/hooks): los hooks se ejecutan antes de cada otro paso, y una denegación de hook se aplica incluso en modo `bypassPermissions`.89 La cobertura depende de la forma de la entrada: un nombre simple como `Read` o `mcp__github__get_issue` pre-aprueba cada llamada a esa herramienta, mientras que una regla delimitada como `Bash(ls *)` pre-aprueba solo las llamadas coincidentes y otras llamadas de `Bash` aún se descartan a la devolución de llamada. Para comprobaciones que deben ejecutarse en cada llamada de herramienta, use un hook [`PreToolUse`](/docs/es/agent-sdk/hooks): los hooks se ejecutan antes de cada otro paso, y una denegación de hook se aplica incluso en modo `bypassPermissions`.

90</Warning>90</Warning>

91 91 

92Para un agente bloqueado, empareje `allowedTools` con `permissionMode: "dontAsk"`. Las herramientas listadas se aprueban, aparte de las herramientas que siempre solicitan en la Advertencia anterior; cualquier otra cosa se deniega directamente en lugar de solicitar:92Para un agente bloqueado, empareje `allowedTools` con `permissionMode: "dontAsk"`. Las herramientas listadas se aprueban, aparte de las herramientas que siempre solicitan en la Advertencia anterior; cualquier otra cosa se deniega directamente en lugar de solicitar:


102 **`allowed_tools` no restringe `bypassPermissions`.** `allowed_tools` solo pre-aprueba las herramientas que lista. Las herramientas no listadas no coinciden con ninguna regla de permitir y se descartan al modo de permiso, donde `bypassPermissions` las aprueba. Establecer `allowed_tools=["Read"]` junto con `permission_mode="bypassPermissions"` aún aprueba cada herramienta, incluidas `Bash`, `Write` y `Edit`. Si necesita `bypassPermissions` pero desea que herramientas específicas se bloqueen, use `disallowed_tools`.102 **`allowed_tools` no restringe `bypassPermissions`.** `allowed_tools` solo pre-aprueba las herramientas que lista. Las herramientas no listadas no coinciden con ninguna regla de permitir y se descartan al modo de permiso, donde `bypassPermissions` las aprueba. Establecer `allowed_tools=["Read"]` junto con `permission_mode="bypassPermissions"` aún aprueba cada herramienta, incluidas `Bash`, `Write` y `Edit`. Si necesita `bypassPermissions` pero desea que herramientas específicas se bloqueen, use `disallowed_tools`.

103</Warning>103</Warning>

104 104 

105También puede configurar reglas de permitir, denegar y preguntar de forma declarativa en `.claude/settings.json`. Estas reglas se leen cuando la fuente de configuración `project` está habilitada, que lo está para las opciones predeterminadas de `query()`. Si establece `setting_sources` (TypeScript: `settingSources`) explícitamente, incluya `"project"` para que se apliquen. Consulte [Configuración de permisos](/es/settings#permission-settings) para la sintaxis de reglas.105También puede configurar reglas de permitir, denegar y preguntar de forma declarativa en `.claude/settings.json`. Estas reglas se leen cuando la fuente de configuración `project` está habilitada, que lo está para las opciones predeterminadas de `query()`. Si establece `setting_sources` (TypeScript: `settingSources`) explícitamente, incluya `"project"` para que se apliquen. Consulte [Configuración de permisos](/docs/es/settings#permission-settings) para la sintaxis de reglas.

106 106 

107<h2 id="permission-modes">107<h2 id="permission-modes">

108 Modos de permiso108 Modos de permiso


119| Modo | Descripción | Comportamiento de herramientas |119| Modo | Descripción | Comportamiento de herramientas |

120| :------------------ | :----------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |120| :------------------ | :----------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

121| `default` | Comportamiento de permiso estándar | Sin aprobaciones automáticas; las herramientas no coincidentes activan su devolución de llamada `canUseTool` |121| `default` | Comportamiento de permiso estándar | Sin aprobaciones automáticas; las herramientas no coincidentes activan su devolución de llamada `canUseTool` |

122| `dontAsk` | Denegar en lugar de solicitar | Cualquier cosa no pre-aprobada por `allowed_tools` o reglas se deniega; herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools) y herramientas que requieren interacción del usuario se deniegan incluso si las ha pre-aprobado. `canUseTool` nunca se llama |122| `dontAsk` | Denegar en lugar de solicitar | Cualquier cosa no pre-aprobada por `allowed_tools` o reglas se deniega; herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools) y herramientas que requieren interacción del usuario se deniegan incluso si las ha pre-aprobado. `canUseTool` nunca se llama |

123| `acceptEdits` | Auto-aceptar ediciones de archivo | Las ediciones de archivo y [operaciones del sistema de archivos](#accept-edits-mode-acceptedits) (`mkdir`, `rm`, `mv`, etc.) se aprueban automáticamente |123| `acceptEdits` | Auto-aceptar ediciones de archivo | Las ediciones de archivo y [operaciones del sistema de archivos](#accept-edits-mode-acceptedits) (`mkdir`, `rm`, `mv`, etc.) se aprueban automáticamente |

124| `bypassPermissions` | Omitir todas las verificaciones de permiso | Las herramientas se ejecutan sin solicitudes de permiso, excepto herramientas coincidentes por una [regla `ask` explícita](#how-permissions-are-evaluated), herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools), y herramientas que requieren interacción del usuario (usar con cuidado) |124| `bypassPermissions` | Omitir todas las verificaciones de permiso | Las herramientas se ejecutan sin solicitudes de permiso, excepto herramientas coincidentes por una [regla `ask` explícita](#how-permissions-are-evaluated), herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), y herramientas que requieren interacción del usuario (usar con cuidado) |

125| `plan` | Modo de planificación | Claude explora y planifica sin editar sus archivos fuente; las ediciones de archivo nunca se aprueban automáticamente y se solicitan a través de su devolución de llamada `canUseTool` |125| `plan` | Modo de planificación | Claude explora y planifica sin editar sus archivos fuente; las ediciones de archivo nunca se aprueban automáticamente y se solicitan a través de su devolución de llamada `canUseTool` |

126| `auto` | Aprobaciones clasificadas por modelo | Un clasificador de modelo aprueba o deniega cada llamada de herramienta. Consulte [Auto mode](/es/permission-modes#eliminate-prompts-with-auto-mode) para disponibilidad |126| `auto` | Aprobaciones clasificadas por modelo | Un clasificador de modelo aprueba o deniega cada llamada de herramienta. Consulte [Auto mode](/docs/es/permission-modes#eliminate-prompts-with-auto-mode) para disponibilidad |

127 127 

128<Warning>128<Warning>

129 **Herencia de subagentos:** Cuando el padre usa `bypassPermissions`, `acceptEdits` o `auto`, todos los subagentos heredan ese modo y no se puede anular por subagentos. Los subagentos pueden tener diferentes indicaciones del sistema y comportamiento menos restringido que su agente principal, por lo que heredar `bypassPermissions` les otorga acceso completo y autónomo al sistema. Las [reglas `ask` explícitas](#how-permissions-are-evaluated), herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools), y herramientas que requieren interacción del usuario aún fuerzan una solicitud.129 **Herencia de subagentos:** Cuando el padre usa `bypassPermissions`, `acceptEdits` o `auto`, todos los subagentos heredan ese modo y no se puede anular por subagentos. Los subagentos pueden tener diferentes indicaciones del sistema y comportamiento menos restringido que su agente principal, por lo que heredar `bypassPermissions` les otorga acceso completo y autónomo al sistema. Las [reglas `ask` explícitas](#how-permissions-are-evaluated), herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), y herramientas que requieren interacción del usuario aún fuerzan una solicitud.

130</Warning>130</Warning>

131 131 

132<h3 id="set-permission-mode">132<h3 id="set-permission-mode">


260 Modo no preguntar (`dontAsk`)260 Modo no preguntar (`dontAsk`)

261</h4>261</h4>

262 262 

263Convierte cualquier solicitud de permiso en una denegación. Las herramientas pre-aprobadas por `allowed_tools`, reglas de permitir de `settings.json` o un hook se ejecutan normalmente. Las herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools) y herramientas que requieren interacción del usuario se deniegan incluso cuando una regla de permitir coincide. Todo lo demás se deniega sin llamar a `canUseTool`.263Convierte cualquier solicitud de permiso en una denegación. Las herramientas pre-aprobadas por `allowed_tools`, reglas de permitir de `settings.json` o un hook se ejecutan normalmente. Las herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools) y herramientas que requieren interacción del usuario se deniegan incluso cuando una regla de permitir coincide. Todo lo demás se deniega sin llamar a `canUseTool`.

264 264 

265**Usar cuando:** desea una superficie de herramienta fija y explícita para un agente sin interfaz y prefiere una denegación dura sobre la dependencia silenciosa de que `canUseTool` esté ausente.265**Usar cuando:** desea una superficie de herramienta fija y explícita para un agente sin interfaz y prefiere una denegación dura sobre la dependencia silenciosa de que `canUseTool` esté ausente.

266 266 


273<Warning>273<Warning>

274 Usar con extrema precaución. Claude tiene acceso completo al sistema en este modo. Solo use en entornos controlados donde confía en todas las operaciones posibles.274 Usar con extrema precaución. Claude tiene acceso completo al sistema en este modo. Solo use en entornos controlados donde confía en todas las operaciones posibles.

275 275 

276 `allowed_tools` no restringe este modo. Cada herramienta se aprueba, no solo las que listó. Las reglas de denegar (`disallowed_tools`), reglas explícitas de `ask` y hooks se evalúan antes de la verificación del modo y aún pueden bloquear una herramienta. Las herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools) y herramientas que requieren interacción del usuario aún se transfieren a su devolución de llamada `canUseTool`.276 `allowed_tools` no restringe este modo. Cada herramienta se aprueba, no solo las que listó. Las reglas de denegar (`disallowed_tools`), reglas explícitas de `ask` y hooks se evalúan antes de la verificación del modo y aún pueden bloquear una herramienta. Las herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools) y herramientas que requieren interacción del usuario aún se transfieren a su devolución de llamada `canUseTool`.

277</Warning>277</Warning>

278 278 

279<h4 id="plan-mode-plan">279<h4 id="plan-mode-plan">

280 Modo de planificación (`plan`)280 Modo de planificación (`plan`)

281</h4>281</h4>

282 282 

283Claude explora la base de código y produce un plan sin editar sus archivos fuente. Las herramientas de solo lectura se ejecutan como en modo predeterminado. Las ediciones de archivo nunca se aprueban automáticamente en modo de planificación, incluso cuando una regla de permitir coincide. Se solicitan a través de su devolución de llamada `canUseTool` en su lugar. Claude puede usar `AskUserQuestion` para aclarar requisitos antes de finalizar el plan. Consulte [Manejar aprobaciones e entrada del usuario](/es/agent-sdk/user-input#handle-clarifying-questions) para manejar estas solicitudes.283Claude explora la base de código y produce un plan sin editar sus archivos fuente. Las herramientas de solo lectura se ejecutan como en modo predeterminado. Las ediciones de archivo nunca se aprueban automáticamente en modo de planificación, incluso cuando una regla de permitir coincide. Se solicitan a través de su devolución de llamada `canUseTool` en su lugar. Claude puede usar `AskUserQuestion` para aclarar requisitos antes de finalizar el plan. Consulte [Manejar aprobaciones e entrada del usuario](/docs/es/agent-sdk/user-input#handle-clarifying-questions) para manejar estas solicitudes.

284 284 

285**Usar cuando:** desea que Claude proponga cambios sin ejecutarlos, como durante la revisión de código o cuando necesita aprobar cambios antes de que se realicen.285**Usar cuando:** desea que Claude proponga cambios sin ejecutarlos, como durante la revisión de código o cuando necesita aprobar cambios antes de que se realicen.

286 286 


290 290 

291Para los otros pasos en el flujo de evaluación de permisos:291Para los otros pasos en el flujo de evaluación de permisos:

292 292 

293* [Manejar aprobaciones e entrada del usuario](/es/agent-sdk/user-input): solicitudes de aprobación interactivas y preguntas aclaratorias293* [Manejar aprobaciones e entrada del usuario](/docs/es/agent-sdk/user-input): solicitudes de aprobación interactivas y preguntas aclaratorias

294* [Guía de hooks](/es/agent-sdk/hooks): ejecute código personalizado en puntos clave del ciclo de vida del agente294* [Guía de hooks](/docs/es/agent-sdk/hooks): ejecute código personalizado en puntos clave del ciclo de vida del agente

295* [Reglas de permisos](/es/settings#permission-settings): reglas declarativas de permitir/denegar en `settings.json`295* [Reglas de permisos](/docs/es/settings#permission-settings): reglas declarativas de permitir/denegar en `settings.json`

Details

18pip install claude-agent-sdk18pip install claude-agent-sdk

19```19```

20 20 

21Para uv, Windows PowerShell y configuración de claves API, consulte [Comenzar en la descripción general del Agent SDK](/es/agent-sdk/overview#get-started).21Para uv, Windows PowerShell y configuración de claves API, consulte [Comenzar en la descripción general del Agent SDK](/docs/es/agent-sdk/overview#get-started).

22 22 

23<h2 id="choosing-between-query-and-claudesdkclient">23<h2 id="choosing-between-query-and-claudesdkclient">

24 Elegir entre `query()` y `ClaudeSDKClient`24 Elegir entre `query()` y `ClaudeSDKClient`


73 `query()`73 `query()`

74</h3>74</h3>

75 75 

76Crea una nueva sesión para cada interacción con Claude Code de forma predeterminada. Devuelve un iterador asincrónico que produce mensajes a medida que llegan. Cada llamada a `query()` comienza de nuevo sin memoria de interacciones anteriores a menos que pase `continue_conversation=True` o `resume` en [`ClaudeAgentOptions`](#claudeagentoptions). Consulte [Sessions](/es/agent-sdk/sessions).76Crea una nueva sesión para cada interacción con Claude Code de forma predeterminada. Devuelve un iterador asincrónico que produce mensajes a medida que llegan. Cada llamada a `query()` comienza de nuevo sin memoria de interacciones anteriores a menos que pase `continue_conversation=True` o `resume` en [`ClaudeAgentOptions`](#claudeagentoptions). Consulte [Sessions](/docs/es/agent-sdk/sessions).

77 77 

78```python theme={null}78```python theme={null}

79async def query(79async def query(


565| `interrupt()` | Enviar señal de interrupción (solo funciona en modo de streaming) |565| `interrupt()` | Enviar señal de interrupción (solo funciona en modo de streaming) |

566| `set_permission_mode(mode)` | Cambiar el modo de permiso para la sesión actual |566| `set_permission_mode(mode)` | Cambiar el modo de permiso para la sesión actual |

567| `set_model(model)` | Cambiar el modelo para la sesión actual. Pase `None` para restablecer al predeterminado |567| `set_model(model)` | Cambiar el modelo para la sesión actual. Pase `None` para restablecer al predeterminado |

568| `rewind_files(user_message_id)` | Restaurar archivos a su estado en el mensaje de usuario especificado. Requiere `enable_file_checkpointing=True`. Ver [File checkpointing](/es/agent-sdk/file-checkpointing) |568| `rewind_files(user_message_id)` | Restaurar archivos a su estado en el mensaje de usuario especificado. Requiere `enable_file_checkpointing=True`. Ver [File checkpointing](/docs/es/agent-sdk/file-checkpointing) |

569| `get_mcp_status()` | Obtener el estado de todos los servidores MCP configurados. Devuelve [`McpStatusResponse`](#mcpstatusresponse) |569| `get_mcp_status()` | Obtener el estado de todos los servidores MCP configurados. Devuelve [`McpStatusResponse`](#mcpstatusresponse) |

570| `reconnect_mcp_server(server_name)` | Reintentar conectar a un servidor MCP que falló o fue desconectado |570| `reconnect_mcp_server(server_name)` | Reintentar conectar a un servidor MCP que falló o fue desconectado |

571| `toggle_mcp_server(server_name, enabled)` | Habilitar o deshabilitar un servidor MCP a mitad de sesión. Deshabilitar elimina sus herramientas |571| `toggle_mcp_server(server_name, enabled)` | Habilitar o deshabilitar un servidor MCP a mitad de sesión. Deshabilitar elimina sus herramientas |


907| Propiedad | Tipo | Predeterminado | Descripción |907| Propiedad | Tipo | Predeterminado | Descripción |

908| :---------------------------- | :------------------------------------------------------------------------------------ | :--------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |908| :---------------------------- | :------------------------------------------------------------------------------------ | :--------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

909| `tools` | `list[str] \| ToolsPreset \| None` | `None` | Configuración de herramientas. Use `{"type": "preset", "preset": "claude_code"}` para las herramientas predeterminadas de Claude Code |909| `tools` | `list[str] \| ToolsPreset \| None` | `None` | Configuración de herramientas. Use `{"type": "preset", "preset": "claude_code"}` para las herramientas predeterminadas de Claude Code |

910| `allowed_tools` | `list[str]` | `[]` | Herramientas para aprobar automáticamente sin solicitar. Esto no restringe Claude solo a estas herramientas; las herramientas no listadas caen a través de `permission_mode` y `can_use_tool`. Use `disallowed_tools` para bloquear herramientas. Ver [Permisos](/es/agent-sdk/permissions#allow-and-deny-rules) |910| `allowed_tools` | `list[str]` | `[]` | Herramientas para aprobar automáticamente sin solicitar. Esto no restringe Claude solo a estas herramientas; las herramientas no listadas caen a través de `permission_mode` y `can_use_tool`. Use `disallowed_tools` para bloquear herramientas. Ver [Permisos](/docs/es/agent-sdk/permissions#allow-and-deny-rules) |

911| `system_prompt` | `str \| SystemPromptPreset \| SystemPromptFile \| None` | `None` | Configuración de prompt del sistema. Pase una cadena para un prompt personalizado, `{"type": "preset", "preset": "claude_code"}` para el prompt del sistema de Claude Code con `"append"` opcional, o `{"type": "file", "path": "..."}` para cargar un prompt grande desde disco. Ver [`SystemPromptPreset`](#systempromptpreset) y [`SystemPromptFile`](#systempromptfile) |911| `system_prompt` | `str \| SystemPromptPreset \| SystemPromptFile \| None` | `None` | Configuración de prompt del sistema. Pase una cadena para un prompt personalizado, `{"type": "preset", "preset": "claude_code"}` para el prompt del sistema de Claude Code con `"append"` opcional, o `{"type": "file", "path": "..."}` para cargar un prompt grande desde disco. Ver [`SystemPromptPreset`](#systempromptpreset) y [`SystemPromptFile`](#systempromptfile) |

912| `mcp_servers` | `dict[str, McpServerConfig] \| str \| Path` | `{}` | Configuraciones de servidor MCP o ruta al archivo de configuración |912| `mcp_servers` | `dict[str, McpServerConfig] \| str \| Path` | `{}` | Configuraciones de servidor MCP o ruta al archivo de configuración |

913| `strict_mcp_config` | `bool` | `False` | Cuando es `True`, use solo los servidores pasados en `mcp_servers` e ignore el proyecto `.mcp.json`, la configuración del usuario, los servidores MCP proporcionados por plugins, y [conectores de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai). Se asigna a la bandera CLI `--strict-mcp-config` |913| `strict_mcp_config` | `bool` | `False` | Cuando es `True`, use solo los servidores pasados en `mcp_servers` e ignore el proyecto `.mcp.json`, la configuración del usuario, los servidores MCP proporcionados por plugins, y [conectores de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai). Se asigna a la bandera CLI `--strict-mcp-config` |

914| `permission_mode` | `PermissionMode \| None` | `None` | Modo de permiso para el uso de herramientas |914| `permission_mode` | `PermissionMode \| None` | `None` | Modo de permiso para el uso de herramientas |

915| `continue_conversation` | `bool` | `False` | Continuar la conversación más reciente |915| `continue_conversation` | `bool` | `False` | Continuar la conversación más reciente |

916| `resume` | `str \| None` | `None` | ID de sesión a reanudar |916| `resume` | `str \| None` | `None` | ID de sesión a reanudar |

917| `max_turns` | `int \| None` | `None` | Número máximo de turnos agentes (viajes de ronda de uso de herramientas) |917| `max_turns` | `int \| None` | `None` | Número máximo de turnos agentes (viajes de ronda de uso de herramientas) |

918| `max_budget_usd` | `float \| None` | `None` | Detener la consulta cuando la estimación de costo del lado del cliente alcance este valor en USD. Comparado con la misma estimación que `total_cost_usd`; ver [Rastrear costo y uso](/es/agent-sdk/cost-tracking) para advertencias de precisión |918| `max_budget_usd` | `float \| None` | `None` | Detener la consulta cuando la estimación de costo del lado del cliente alcance este valor en USD. Comparado con la misma estimación que `total_cost_usd`; ver [Rastrear costo y uso](/docs/es/agent-sdk/cost-tracking) para advertencias de precisión |

919| `disallowed_tools` | `list[str]` | `[]` | Herramientas para denegar. Un nombre simple como `"Bash"` elimina la herramienta del contexto de Claude. Una regla con alcance como `"Bash(rm *)"` deja la herramienta disponible y deniega llamadas coincidentes en cada modo de permiso, incluyendo `bypassPermissions`. Ver [Permisos](/es/agent-sdk/permissions#allow-and-deny-rules) |919| `disallowed_tools` | `list[str]` | `[]` | Herramientas para denegar. Un nombre simple como `"Bash"` elimina la herramienta del contexto de Claude. Una regla con alcance como `"Bash(rm *)"` deja la herramienta disponible y deniega llamadas coincidentes en cada modo de permiso, incluyendo `bypassPermissions`. Ver [Permisos](/docs/es/agent-sdk/permissions#allow-and-deny-rules) |

920| `enable_file_checkpointing` | `bool` | `False` | Habilitar el seguimiento de cambios de archivo para rebobinar. Ver [File checkpointing](/es/agent-sdk/file-checkpointing) |920| `enable_file_checkpointing` | `bool` | `False` | Habilitar el seguimiento de cambios de archivo para rebobinar. Ver [File checkpointing](/docs/es/agent-sdk/file-checkpointing) |

921| `model` | `str \| None` | `None` | Alias de modelo Claude o nombre de modelo completo. Ver [valores aceptados e IDs específicos del proveedor](/es/model-config#available-models) |921| `model` | `str \| None` | `None` | Alias de modelo Claude o nombre de modelo completo. Ver [valores aceptados e IDs específicos del proveedor](/docs/es/model-config#available-models) |

922| `fallback_model` | `str \| None` | `None` | Modelo de respaldo a usar si el modelo principal falla |922| `fallback_model` | `str \| None` | `None` | Modelo de respaldo a usar si el modelo principal falla |

923| `betas` | `list[SdkBeta]` | `[]` | Características beta a habilitar. Ver [`SdkBeta`](#sdkbeta) para opciones disponibles |923| `betas` | `list[SdkBeta]` | `[]` | Características beta a habilitar. Ver [`SdkBeta`](#sdkbeta) para opciones disponibles |

924| `output_format` | `dict[str, Any] \| None` | `None` | Formato de salida para respuestas estructuradas (por ejemplo, `{"type": "json_schema", "schema": {...}}`). Ver [Salidas estructuradas](/es/agent-sdk/structured-outputs) para detalles |924| `output_format` | `dict[str, Any] \| None` | `None` | Formato de salida para respuestas estructuradas (por ejemplo, `{"type": "json_schema", "schema": {...}}`). Ver [Salidas estructuradas](/docs/es/agent-sdk/structured-outputs) para detalles |

925| `permission_prompt_tool_name` | `str \| None` | `None` | Nombre de herramienta MCP para solicitudes de permiso |925| `permission_prompt_tool_name` | `str \| None` | `None` | Nombre de herramienta MCP para solicitudes de permiso |

926| `cwd` | `str \| Path \| None` | `None` | Directorio de trabajo actual |926| `cwd` | `str \| Path \| None` | `None` | Directorio de trabajo actual |

927| `cli_path` | `str \| Path \| None` | `None` | Ruta personalizada al ejecutable CLI de Claude Code |927| `cli_path` | `str \| Path \| None` | `None` | Ruta personalizada al ejecutable CLI de Claude Code |

928| `settings` | `str \| None` | `None` | Ruta al archivo de configuración |928| `settings` | `str \| None` | `None` | Ruta al archivo de configuración |

929| `add_dirs` | `list[str \| Path]` | `[]` | Directorios adicionales a los que Claude puede acceder |929| `add_dirs` | `list[str \| Path]` | `[]` | Directorios adicionales a los que Claude puede acceder |

930| `env` | `dict[str, str]` | `{}` | Variables de entorno fusionadas en la parte superior del entorno del proceso heredado. Ver [Variables de entorno](/es/env-vars) para variables que el CLI subyacente lee, y [Manejar respuestas de API lentas o estancadas](#handle-slow-or-stalled-api-responses) para variables relacionadas con tiempos de espera |930| `env` | `dict[str, str]` | `{}` | Variables de entorno fusionadas en la parte superior del entorno del proceso heredado. Ver [Variables de entorno](/docs/es/env-vars) para variables que el CLI subyacente lee, y [Manejar respuestas de API lentas o estancadas](#handle-slow-or-stalled-api-responses) para variables relacionadas con tiempos de espera |

931| `extra_args` | `dict[str, str \| None]` | `{}` | Argumentos CLI adicionales para pasar directamente al CLI |931| `extra_args` | `dict[str, str \| None]` | `{}` | Argumentos CLI adicionales para pasar directamente al CLI |

932| `max_buffer_size` | `int \| None` | `None` | Bytes máximos al almacenar en búfer la salida estándar del CLI |932| `max_buffer_size` | `int \| None` | `None` | Bytes máximos al almacenar en búfer la salida estándar del CLI |

933| `debug_stderr` | `Any` | `sys.stderr` | *Deprecated* - Objeto similar a un archivo para salida de depuración. Use la devolución de llamada `stderr` en su lugar |933| `debug_stderr` | `Any` | `sys.stderr` | *Deprecated* - Objeto similar a un archivo para salida de depuración. Use la devolución de llamada `stderr` en su lugar |

934| `stderr` | `Callable[[str], None] \| None` | `None` | Función de devolución de llamada para salida stderr del CLI |934| `stderr` | `Callable[[str], None] \| None` | `None` | Función de devolución de llamada para salida stderr del CLI |

935| `can_use_tool` | [`CanUseTool`](#canusetool) ` \| None` | `None` | Función de devolución de llamada de permiso de herramienta, invocada solo cuando el [flujo de permiso](/es/agent-sdk/permissions#how-permissions-are-evaluated) cae a través de un prompt. No se invoca para llamadas aprobadas automáticamente por `allowed_tools`, reglas de permiso, o `permission_mode`. `AskUserQuestion`, herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) la alcanzan incluso si las ha permitido; en modo `dontAsk` se deniegan en su lugar. Ver [`CanUseTool`](#canusetool) para detalles |935| `can_use_tool` | [`CanUseTool`](#canusetool) ` \| None` | `None` | Función de devolución de llamada de permiso de herramienta, invocada solo cuando el [flujo de permiso](/docs/es/agent-sdk/permissions#how-permissions-are-evaluated) cae a través de un prompt. No se invoca para llamadas aprobadas automáticamente por `allowed_tools`, reglas de permiso, o `permission_mode`. `AskUserQuestion`, herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) la alcanzan incluso si las ha permitido; en modo `dontAsk` se deniegan en su lugar. Ver [`CanUseTool`](#canusetool) para detalles |

936| `hooks` | `dict[HookEvent, list[HookMatcher]] \| None` | `None` | Configuraciones de hook para interceptar eventos |936| `hooks` | `dict[HookEvent, list[HookMatcher]] \| None` | `None` | Configuraciones de hook para interceptar eventos |

937| `user` | `str \| None` | `None` | Identificador de usuario |937| `user` | `str \| None` | `None` | Identificador de usuario |

938| `include_partial_messages` | `bool` | `False` | Incluir eventos de streaming de mensaje parcial. Cuando está habilitado, se producen mensajes [`StreamEvent`](#streamevent) |938| `include_partial_messages` | `bool` | `False` | Incluir eventos de streaming de mensaje parcial. Cuando está habilitado, se producen mensajes [`StreamEvent`](#streamevent) |

939| `include_hook_events` | `bool` | `False` | Incluir eventos de ciclo de vida de hook en el flujo de mensajes como objetos `HookEventMessage` |939| `include_hook_events` | `bool` | `False` | Incluir eventos de ciclo de vida de hook en el flujo de mensajes como objetos `HookEventMessage` |

940| `fork_session` | `bool` | `False` | Cuando se reanuda con `resume`, bifurcar a un nuevo ID de sesión en lugar de continuar la sesión original |940| `fork_session` | `bool` | `False` | Cuando se reanuda con `resume`, bifurcar a un nuevo ID de sesión en lugar de continuar la sesión original |

941| `agents` | `dict[str, AgentDefinition] \| None` | `None` | Subagentes definidos programáticamente |941| `agents` | `dict[str, AgentDefinition] \| None` | `None` | Subagentes definidos programáticamente |

942| `plugins` | `list[SdkPluginConfig]` | `[]` | Cargar plugins personalizados desde rutas locales. Ver [Plugins](/es/agent-sdk/plugins) para detalles |942| `plugins` | `list[SdkPluginConfig]` | `[]` | Cargar plugins personalizados desde rutas locales. Ver [Plugins](/docs/es/agent-sdk/plugins) para detalles |

943| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | Configurar el comportamiento de sandbox programáticamente. Ver [Configuración de sandbox](#sandboxsettings) para detalles |943| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | Configurar el comportamiento de sandbox programáticamente. Ver [Configuración de sandbox](#sandboxsettings) para detalles |

944| `setting_sources` | `list[SettingSource] \| None` | `None` (CLI defaults: all sources) | Controlar qué configuración del sistema de archivos cargar. Pase `[]` para deshabilitar la configuración de usuario, proyecto y local. La configuración de política administrada se carga independientemente; la configuración administrada por servidor se obtiene cuando la sesión se autentica con una credencial de organización en una [configuración elegible](/es/server-managed-settings#platform-availability). Ver [Usar características de Claude Code](/es/agent-sdk/claude-code-features#what-settingsources-does-not-control) |944| `setting_sources` | `list[SettingSource] \| None` | `None` (CLI defaults: all sources) | Controlar qué configuración del sistema de archivos cargar. Pase `[]` para deshabilitar la configuración de usuario, proyecto y local. La configuración de política administrada se carga independientemente; la configuración administrada por servidor se obtiene cuando la sesión se autentica con una credencial de organización en una [configuración elegible](/docs/es/server-managed-settings#platform-availability). Ver [Usar características de Claude Code](/docs/es/agent-sdk/claude-code-features#what-settingsources-does-not-control) |

945| `skills` | `list[str] \| Literal["all"] \| None` | `None` | Skills disponibles para la sesión. Pase `"all"` para habilitar cada skill descubierto, o una lista de nombres de skills. Cuando se establece, el SDK agrega la herramienta Skill a `allowed_tools` automáticamente. Si también pasa `tools`, incluya `"Skill"` en esa lista. Ver [Skills](/es/agent-sdk/skills) |945| `skills` | `list[str] \| Literal["all"] \| None` | `None` | Skills disponibles para la sesión. Pase `"all"` para habilitar cada skill descubierto, o una lista de nombres de skills. Cuando se establece, el SDK agrega la herramienta Skill a `allowed_tools` automáticamente. Si también pasa `tools`, incluya `"Skill"` en esa lista. Ver [Skills](/docs/es/agent-sdk/skills) |

946| `max_thinking_tokens` | `int \| None` | `None` | *Deprecated* - Tokens máximos para bloques de pensamiento. Use `thinking` en su lugar |946| `max_thinking_tokens` | `int \| None` | `None` | *Deprecated* - Tokens máximos para bloques de pensamiento. Use `thinking` en su lugar |

947| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | Controla el comportamiento de pensamiento extendido. Tiene precedencia sobre `max_thinking_tokens` |947| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | Controla el comportamiento de pensamiento extendido. Tiene precedencia sobre `max_thinking_tokens` |

948| `effort` | [`EffortLevel`](#effortlevel) ` \| None` | `None` | Nivel de esfuerzo para la profundidad del pensamiento. Ver [ajustar el nivel de esfuerzo](/es/model-config#adjust-effort-level) |948| `effort` | [`EffortLevel`](#effortlevel) ` \| None` | `None` | Nivel de esfuerzo para la profundidad del pensamiento. Ver [ajustar el nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) |

949| `session_store` | [`SessionStore`](/es/agent-sdk/session-storage#the-sessionstore-interface) ` \| None` | `None` | Reflejar transcripciones de sesión a un backend externo para que cualquier host pueda reanudarlas. Ver [Persistir sesiones en almacenamiento externo](/es/agent-sdk/session-storage) |949| `session_store` | [`SessionStore`](/docs/es/agent-sdk/session-storage#the-sessionstore-interface) ` \| None` | `None` | Reflejar transcripciones de sesión a un backend externo para que cualquier host pueda reanudarlas. Ver [Persistir sesiones en almacenamiento externo](/docs/es/agent-sdk/session-storage) |

950| `session_store_flush` | `Literal["batched", "eager"]` | `"batched"` | Cuándo vaciar entradas de transcripción reflejadas a `session_store`. `"batched"` vacía una vez por turno o cuando el búfer se llena; `"eager"` activa un vaciado de fondo después de cada fotograma. Se ignora cuando `session_store` es `None` |950| `session_store_flush` | `Literal["batched", "eager"]` | `"batched"` | Cuándo vaciar entradas de transcripción reflejadas a `session_store`. `"batched"` vacía una vez por turno o cuando el búfer se llena; `"eager"` activa un vaciado de fondo después de cada fotograma. Se ignora cuando `session_store` es `None` |

951 951 

952<h4 id="handle-slow-or-stalled-api-responses">952<h4 id="handle-slow-or-stalled-api-responses">


966```966```

967 967 

968* `API_TIMEOUT_MS`: tiempo de espera por solicitud en el cliente de Anthropic, en milisegundos. Predeterminado `600000`. Se aplica al bucle principal y a todos los subagentes.968* `API_TIMEOUT_MS`: tiempo de espera por solicitud en el cliente de Anthropic, en milisegundos. Predeterminado `600000`. Se aplica al bucle principal y a todos los subagentes.

969* `CLAUDE_CODE_MAX_RETRIES`: máximo de reintentos de API. Predeterminado `10`, limitado a `15`. Cada reintento obtiene su propia ventana `API_TIMEOUT_MS`, por lo que el tiempo de pared en el peor caso es aproximadamente `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` más backoff. Para ejecuciones desatendidas que necesitan esperar a través de interrupciones más largas, establezca `CLAUDE_CODE_RETRY_WATCHDOG=1`: reintentos de errores de capacidad indefinidamente, y {/* min-version: 2.1.199 */}a partir de Claude Code v2.1.199 eleva el valor predeterminado para otros errores transitorios a `300` y elimina el límite en esta variable.969* `CLAUDE_CODE_MAX_RETRIES`: máximo de reintentos de API. Predeterminado `10`, limitado a `15`. Cada reintento obtiene su propia ventana `API_TIMEOUT_MS`, por lo que el tiempo de pared en el peor caso es aproximadamente `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` más backoff. Para ejecuciones desatendidas que necesitan esperar a través de interrupciones más largas, establezca `CLAUDE_CODE_RETRY_WATCHDOG=1`: reintentos de errores de capacidad indefinidamente, y a partir de Claude Code v2.1.199 eleva el valor predeterminado para otros errores transitorios a `300` y elimina el límite en esta variable.

970* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: perro guardián de estancamiento para subagentes lanzados con `run_in_background`. Predeterminado `600000`. Se reinicia en cada evento de flujo; en caso de estancamiento, aborta el subagente, marca la tarea como fallida y expone el error al padre con cualquier resultado parcial. No se aplica a subagentes síncronos.970* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: perro guardián de estancamiento para subagentes lanzados con `run_in_background`. Predeterminado `600000`. Se reinicia en cada evento de flujo; en caso de estancamiento, aborta el subagente, marca la tarea como fallida y expone el error al padre con cualquier resultado parcial. No se aplica a subagentes síncronos.

971* `CLAUDE_ENABLE_STREAM_WATCHDOG` con `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: aborta la solicitud cuando los encabezados han llegado pero el cuerpo de la respuesta deja de transmitir. El perro guardián está activado de forma predeterminada para todos los proveedores; establezca `CLAUDE_ENABLE_STREAM_WATCHDOG=0` para desactivarlo. `CLAUDE_STREAM_IDLE_TIMEOUT_MS` tiene un valor predeterminado de `300000` y se fija a ese mínimo. La solicitud abortada pasa por la ruta de reintento normal.971* `CLAUDE_ENABLE_STREAM_WATCHDOG` con `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: aborta la solicitud cuando los encabezados han llegado pero el cuerpo de la respuesta deja de transmitir. El perro guardián está activado de forma predeterminada para todos los proveedores; establezca `CLAUDE_ENABLE_STREAM_WATCHDOG=0` para desactivarlo. `CLAUDE_STREAM_IDLE_TIMEOUT_MS` tiene un valor predeterminado de `300000` y se fija a ese mínimo. La solicitud abortada pasa por la ruta de reintento normal.

972 972 


1008| `type` | Sí | Debe ser `"preset"` para usar un prompt del sistema preset |1008| `type` | Sí | Debe ser `"preset"` para usar un prompt del sistema preset |

1009| `preset` | Sí | Debe ser `"claude_code"` para usar el prompt del sistema de Claude Code |1009| `preset` | Sí | Debe ser `"claude_code"` para usar el prompt del sistema de Claude Code |

1010| `append` | No | Instrucciones adicionales para agregar al prompt del sistema preset |1010| `append` | No | Instrucciones adicionales para agregar al prompt del sistema preset |

1011| `exclude_dynamic_sections` | No | Mover contexto por sesión como directorio de trabajo, estado de git y rutas de memoria del prompt del sistema al primer mensaje del usuario. Mejora la reutilización de caché de prompt en usuarios y máquinas. Ver [Modificar prompts del sistema](/es/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |1011| `exclude_dynamic_sections` | No | Mover contexto por sesión como directorio de trabajo, estado de git y rutas de memoria del prompt del sistema al primer mensaje del usuario. Mejora la reutilización de caché de prompt en usuarios y máquinas. Ver [Modificar prompts del sistema](/docs/es/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |

1012 1012 

1013<h3 id="systempromptfile">1013<h3 id="systempromptfile">

1014 `SystemPromptFile`1014 `SystemPromptFile`

1015</h3>1015</h3>

1016 1016 

1017Configuración para cargar un prompt del sistema personalizado desde un archivo en lugar de pasarlo como una cadena. El SDK asigna esto a la bandera CLI [`--system-prompt-file`](/es/cli-reference#system-prompt-flags). Use la forma de archivo cuando el prompt es grande: el SDK pasa un `system_prompt` de cadena en el argv del subproceso CLI, que está sujeto a límites de longitud de línea de comandos del SO antes de que el SDK envíe cualquier solicitud de API. En Linux, un único argumento más largo que aproximadamente 128 KB falla al generar el proceso con `Argument list too long`. En Windows, toda la línea de comandos está limitada a aproximadamente 32 KB, por lo que la forma de cadena falla en un umbral más bajo.1017Configuración para cargar un prompt del sistema personalizado desde un archivo en lugar de pasarlo como una cadena. El SDK asigna esto a la bandera CLI [`--system-prompt-file`](/docs/es/cli-reference#system-prompt-flags). Use la forma de archivo cuando el prompt es grande: el SDK pasa un `system_prompt` de cadena en el argv del subproceso CLI, que está sujeto a límites de longitud de línea de comandos del SO antes de que el SDK envíe cualquier solicitud de API. En Linux, un único argumento más largo que aproximadamente 128 KB falla al generar el proceso con `Argument list too long`. En Windows, toda la línea de comandos está limitada a aproximadamente 32 KB, por lo que la forma de cadena falla en un umbral más bajo.

1018 1018 

1019```python theme={null}1019```python theme={null}

1020class SystemPromptFile(TypedDict):1020class SystemPromptFile(TypedDict):


1047 Comportamiento predeterminado1047 Comportamiento predeterminado

1048</h4>1048</h4>

1049 1049 

1050Cuando `setting_sources` se omite o es `None`, `query()` carga la misma configuración del sistema de archivos que el CLI de Claude Code: usuario, proyecto y local. La configuración de política administrada se carga en todos los casos; la configuración administrada por servidor se obtiene cuando la sesión se autentica con una credencial de organización en una [configuración elegible](/es/server-managed-settings#platform-availability). Ver [Qué settingSources no controla](/es/agent-sdk/claude-code-features#what-settingsources-does-not-control) para entradas que se leen independientemente de esta opción, y cómo deshabilitarlas.1050Cuando `setting_sources` se omite o es `None`, `query()` carga la misma configuración del sistema de archivos que el CLI de Claude Code: usuario, proyecto y local. La configuración de política administrada se carga en todos los casos; la configuración administrada por servidor se obtiene cuando la sesión se autentica con una credencial de organización en una [configuración elegible](/docs/es/server-managed-settings#platform-availability). Ver [Qué settingSources no controla](/docs/es/agent-sdk/claude-code-features#what-settingsources-does-not-control) para entradas que se leen independientemente de esta opción, y cómo deshabilitarlas.

1051 1051 

1052<h4 id="why-use-setting_sources">1052<h4 id="why-use-setting_sources">

1053 Por qué usar setting\_sources1053 Por qué usar setting\_sources


1257 1257 

1258Devuelve un `PermissionResult` (ya sea `PermissionResultAllow` o `PermissionResultDeny`).1258Devuelve un `PermissionResult` (ya sea `PermissionResultAllow` o `PermissionResultDeny`).

1259 1259 

1260La devolución de llamada es el reemplazo del SDK para el prompt de permiso interactivo: se invoca solo cuando el [flujo de evaluación de permiso](/es/agent-sdk/permissions#how-permissions-are-evaluated) se resuelve en un prompt. Las llamadas de herramienta ya aprobadas por una entrada `allowed_tools`, una regla de permiso de configuración, o el modo de permiso, como `acceptEdits` o `bypassPermissions`, nunca la invocan. Para controlar cada llamada de herramienta, use un [hook `PreToolUse`](/es/agent-sdk/hooks) en su lugar.1260La devolución de llamada es el reemplazo del SDK para el prompt de permiso interactivo: se invoca solo cuando el [flujo de evaluación de permiso](/docs/es/agent-sdk/permissions#how-permissions-are-evaluated) se resuelve en un prompt. Las llamadas de herramienta ya aprobadas por una entrada `allowed_tools`, una regla de permiso de configuración, o el modo de permiso, como `acceptEdits` o `bypassPermissions`, nunca la invocan. Para controlar cada llamada de herramienta, use un [hook `PreToolUse`](/docs/es/agent-sdk/hooks) en su lugar.

1261 1261 

1262`AskUserQuestion`, herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool), y herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools) la alcanzan incluso cuando una regla de permiso coincide. En modo `dontAsk` estas llamadas se deniegan en su lugar, sin invocar la devolución de llamada.1262`AskUserQuestion`, herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool), y herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools) la alcanzan incluso cuando una regla de permiso coincide. En modo `dontAsk` estas llamadas se deniegan en su lugar, sin invocar la devolución de llamada.

1263 1263 

1264<h3 id="toolpermissioncontext">1264<h3 id="toolpermissioncontext">

1265 `ToolPermissionContext`1265 `ToolPermissionContext`


1606]1606]

1607```1607```

1608 1608 

1609Para información completa sobre la creación y uso de plugins, ver [Plugins](/es/agent-sdk/plugins).1609Para información completa sobre la creación y uso de plugins, ver [Plugins](/docs/es/agent-sdk/plugins).

1610 1610 

1611<h2 id="message-types">1611<h2 id="message-types">

1612 Tipos de mensaje1612 Tipos de mensaje


1749 1749 

1750| Clave | Tipo | Descripción |1750| Clave | Tipo | Descripción |

1751| ----------------------------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |1751| ----------------------------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

1752| `input_tokens` | `int` | Tokens de entrada consumidos por el bucle del agente de nivel superior. [Los tokens de subagentes no se incluyen](/es/agent-sdk/cost-tracking#get-the-total-cost-of-a-query); use `model_usage` para contabilidad de árbol completo. |1752| `input_tokens` | `int` | Tokens de entrada consumidos por el bucle del agente de nivel superior. [Los tokens de subagentes no se incluyen](/docs/es/agent-sdk/cost-tracking#get-the-total-cost-of-a-query); use `model_usage` para contabilidad de árbol completo. |

1753| `output_tokens` | `int` | Tokens de salida generados por el bucle del agente de nivel superior. Los tokens de subagentes no se incluyen. |1753| `output_tokens` | `int` | Tokens de salida generados por el bucle del agente de nivel superior. Los tokens de subagentes no se incluyen. |

1754| `cache_creation_input_tokens` | `int` | Tokens usados para crear nuevas entradas de caché. |1754| `cache_creation_input_tokens` | `int` | Tokens usados para crear nuevas entradas de caché. |

1755| `cache_read_input_tokens` | `int` | Tokens leídos de entradas de caché existentes. |1755| `cache_read_input_tokens` | `int` | Tokens leídos de entradas de caché existentes. |

1756 1756 

1757El dict `model_usage` asigna nombres de modelo a uso por modelo. Las claves del dict interno usan camelCase porque el valor se pasa sin modificar desde el proceso CLI subyacente, coincidiendo con el tipo [`ModelUsage`](/es/agent-sdk/typescript#modelusage) de TypeScript:1757El dict `model_usage` asigna nombres de modelo a uso por modelo. Las claves del dict interno usan camelCase porque el valor se pasa sin modificar desde el proceso CLI subyacente, coincidiendo con el tipo [`ModelUsage`](/docs/es/agent-sdk/typescript#modelusage) de TypeScript:

1758 1758 

1759| Clave | Tipo | Descripción |1759| Clave | Tipo | Descripción |

1760| -------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |1760| -------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |


1763| `cacheReadInputTokens` | `int` | Tokens de lectura de caché para este modelo. |1763| `cacheReadInputTokens` | `int` | Tokens de lectura de caché para este modelo. |

1764| `cacheCreationInputTokens` | `int` | Tokens de creación de caché para este modelo. |1764| `cacheCreationInputTokens` | `int` | Tokens de creación de caché para este modelo. |

1765| `webSearchRequests` | `int` | Solicitudes de búsqueda web realizadas por este modelo. |1765| `webSearchRequests` | `int` | Solicitudes de búsqueda web realizadas por este modelo. |

1766| `costUSD` | `float` | Costo estimado en USD para este modelo, calculado del lado del cliente. Ver [Rastrear costo y uso](/es/agent-sdk/cost-tracking) para advertencias de facturación. |1766| `costUSD` | `float` | Costo estimado en USD para este modelo, calculado del lado del cliente. Ver [Rastrear costo y uso](/docs/es/agent-sdk/cost-tracking) para advertencias de facturación. |

1767| `contextWindow` | `int` | Tamaño de ventana de contexto para este modelo. |1767| `contextWindow` | `int` | Tamaño de ventana de contexto para este modelo. |

1768| `maxOutputTokens` | `int` | Límite de token de salida máximo para este modelo. |1768| `maxOutputTokens` | `int` | Límite de token de salida máximo para este modelo. |

1769 1769 


2090 Tipos de hook2090 Tipos de hook

2091</h2>2091</h2>

2092 2092 

2093Para una guía completa sobre el uso de hooks con ejemplos y patrones comunes, ver la [Guía de Hooks](/es/agent-sdk/hooks).2093Para una guía completa sobre el uso de hooks con ejemplos y patrones comunes, ver la [Guía de Hooks](/docs/es/agent-sdk/hooks).

2094 2094 

2095<h3 id="hookevent">2095<h3 id="hookevent">

2096 `HookEvent`2096 `HookEvent`


2474 `HookSpecificOutput`2474 `HookSpecificOutput`

2475</h4>2475</h4>

2476 2476 

2477Un `TypedDict` que contiene el nombre del evento de hook y campos específicos del evento. La forma depende del valor `hookEventName`. Para detalles completos sobre campos disponibles por evento de hook, ver [Control execution with hooks](/es/agent-sdk/hooks#outputs).2477Un `TypedDict` que contiene el nombre del evento de hook y campos específicos del evento. La forma depende del valor `hookEventName`. Para detalles completos sobre campos disponibles por evento de hook, ver [Control execution with hooks](/docs/es/agent-sdk/hooks#outputs).

2478 2478 

2479Una unión discriminada de tipos de salida específicos del evento. El campo `hookEventName` determina qué campos son válidos.2479Una unión discriminada de tipos de salida específicos del evento. El campo `hookEventName` determina qué campos son válidos.

2480 2480 


2639 2639 

2640**Nombre de herramienta:** `AskUserQuestion`2640**Nombre de herramienta:** `AskUserQuestion`

2641 2641 

2642Hace preguntas aclaratorias al usuario durante la ejecución. Ver [Manejar aprobaciones e entrada del usuario](/es/agent-sdk/user-input#handle-clarifying-questions) para detalles de uso.2642Hace preguntas aclaratorias al usuario durante la ejecución. Ver [Manejar aprobaciones e entrada del usuario](/docs/es/agent-sdk/user-input#handle-clarifying-questions) para detalles de uso.

2643 2643 

2644**Entrada:**2644**Entrada:**

2645 2645 


2717 2717 

2718Ejecuta una fuente de fondo y entrega cada evento a Claude para que pueda reaccionar sin sondeo: `command` ejecuta un script y emite un evento por línea stdout, y `ws` abre un WebSocket y emite un evento por marco de texto. Proporcione exactamente uno de `command` o `ws`.2718Ejecuta una fuente de fondo y entrega cada evento a Claude para que pueda reaccionar sin sondeo: `command` ejecuta un script y emite un evento por línea stdout, y `ws` abre un WebSocket y emite un evento por marco de texto. Proporcione exactamente uno de `command` o `ws`.

2719 2719 

2720Cuando Monitor ejecuta un comando, sigue las mismas reglas de permiso que Bash; una vigilancia de WebSocket solicita aprobación por separado. {/* min-version: 2.1.195 */}La fuente `ws` requiere Claude Code v2.1.195 o posterior. Ver la [referencia de herramienta Monitor](/es/tools-reference#monitor-tool) para comportamiento y disponibilidad de proveedor.2720Cuando Monitor ejecuta un comando, sigue las mismas reglas de permiso que Bash; una vigilancia de WebSocket solicita aprobación por separado. La fuente `ws` requiere Claude Code v2.1.195 o posterior. Ver la [referencia de herramienta Monitor](/docs/es/tools-reference#monitor-tool) para comportamiento y disponibilidad de proveedor.

2721 2721 

2722**Entrada:**2722**Entrada:**

2723 2723 


2995**Nombre de herramienta:** `TodoWrite`2995**Nombre de herramienta:** `TodoWrite`

2996 2996 

2997<Note>2997<Note>

2998 A partir de Claude Code v2.1.142, `TodoWrite` está deshabilitado de forma predeterminada. Use `TaskCreate`, `TaskGet`, `TaskUpdate`, y `TaskList` en su lugar. Ver [Migrar a herramientas Task](/es/agent-sdk/todo-tracking#migrate-to-task-tools) para actualizar su código de monitoreo, o establezca `CLAUDE_CODE_ENABLE_TASKS=0` para revertir a `TodoWrite`.2998 A partir de Claude Code v2.1.142, `TodoWrite` está deshabilitado de forma predeterminada. Use `TaskCreate`, `TaskGet`, `TaskUpdate`, y `TaskList` en su lugar. Ver [Migrar a herramientas Task](/docs/es/agent-sdk/todo-tracking#migrate-to-task-tools) para actualizar su código de monitoreo, o establezca `CLAUDE_CODE_ENABLE_TASKS=0` para revertir a `TodoWrite`.

2999</Note>2999</Note>

3000 3000 

3001**Entrada:**3001**Entrada:**


3699 `SandboxNetworkConfig`3699 `SandboxNetworkConfig`

3700</h3>3700</h3>

3701 3701 

3702Configuración específica de red para modo sandbox. Estas configuraciones se aplican a comandos Bash en sandbox cuando `enabled` es `True` en la [`SandboxSettings`](#sandboxsettings) principal. No restringen la herramienta WebFetch, que utiliza [reglas de permisos](/es/permissions#webfetch) en su lugar.3702Configuración específica de red para modo sandbox. Estas configuraciones se aplican a comandos Bash en sandbox cuando `enabled` es `True` en la [`SandboxSettings`](#sandboxsettings) principal. No restringen la herramienta WebFetch, que utiliza [reglas de permisos](/docs/es/permissions#webfetch) en su lugar.

3703 3703 

3704```python theme={null}3704```python theme={null}

3705class SandboxNetworkConfig(TypedDict, total=False):3705class SandboxNetworkConfig(TypedDict, total=False):


3727| `socksProxyPort` | `int` | `None` | Puerto proxy SOCKS para solicitudes de red |3727| `socksProxyPort` | `int` | `None` | Puerto proxy SOCKS para solicitudes de red |

3728 3728 

3729<Note>3729<Note>

3730 El proxy de sandbox integrado aplica la lista de permitidos de red basada en el nombre de host solicitado y no termina ni inspecciona el tráfico TLS, por lo que técnicas como [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) potencialmente pueden evitarlo. Consulte [Limitaciones de seguridad de sandboxing](/es/sandboxing#security-limitations) para obtener detalles y [Implementación segura](/es/agent-sdk/secure-deployment#traffic-forwarding) para configurar un proxy que termine TLS.3730 El proxy de sandbox integrado aplica la lista de permitidos de red basada en el nombre de host solicitado y no termina ni inspecciona el tráfico TLS, por lo que técnicas como [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) potencialmente pueden evitarlo. Consulte [Limitaciones de seguridad de sandboxing](/docs/es/sandboxing#security-limitations) para obtener detalles y [Implementación segura](/docs/es/agent-sdk/secure-deployment#traffic-forwarding) para configurar un proxy que termine TLS.

3731</Note>3731</Note>

3732 3732 

3733<h3 id="sandboxignoreviolations">3733<h3 id="sandboxignoreviolations">


3831 Ver también3831 Ver también

3832</h2>3832</h2>

3833 3833 

3834* [SDK overview](/es/agent-sdk/overview) - Conceptos generales del SDK3834* [SDK overview](/docs/es/agent-sdk/overview) - Conceptos generales del SDK

3835* [TypeScript SDK reference](/es/agent-sdk/typescript) - Documentación del SDK de TypeScript3835* [TypeScript SDK reference](/docs/es/agent-sdk/typescript) - Documentación del SDK de TypeScript

3836* [CLI reference](/es/cli-reference) - Interfaz de línea de comandos3836* [CLI reference](/docs/es/cli-reference) - Interfaz de línea de comandos

3837* [Common workflows](/es/common-workflows) - Guías paso a paso3837* [Common workflows](/docs/es/common-workflows) - Guías paso a paso

Details

17 17 

18Puede crear subagentes de tres formas:18Puede crear subagentes de tres formas:

19 19 

20* **Programáticamente**: use el parámetro `agents` en sus opciones `query()`. Consulte las referencias de [TypeScript](/es/agent-sdk/typescript#agentdefinition) y [Python](/es/agent-sdk/python#agentdefinition)20* **Programáticamente**: use el parámetro `agents` en sus opciones `query()`. Consulte las referencias de [TypeScript](/docs/es/agent-sdk/typescript#agentdefinition) y [Python](/docs/es/agent-sdk/python#agentdefinition)

21* **Basado en sistema de archivos**: defina agentes como archivos markdown en directorios `.claude/agents/`. Consulte [definición de subagentes como archivos](/es/sub-agents)21* **Basado en sistema de archivos**: defina agentes como archivos markdown en directorios `.claude/agents/`. Consulte [definición de subagentes como archivos](/docs/es/sub-agents)

22* **Propósito general integrado**: Claude puede invocar el subagente integrado `general-purpose` en cualquier momento a través de la herramienta Agent sin que usted defina nada22* **Propósito general integrado**: Claude puede invocar el subagente integrado `general-purpose` en cualquier momento a través de la herramienta Agent sin que usted defina nada

23 23 

24Esta guía se enfoca en el enfoque programático, que se recomienda para aplicaciones SDK.24Esta guía se enfoca en el enfoque programático, que se recomienda para aplicaciones SDK.


197| `effort` | `'low' \| 'medium' \| 'high' \| 'xhigh' \| 'max' \| number` | No | Nivel de esfuerzo de razonamiento para este agente |197| `effort` | `'low' \| 'medium' \| 'high' \| 'xhigh' \| 'max' \| number` | No | Nivel de esfuerzo de razonamiento para este agente |

198| `permissionMode` | `PermissionMode` | No | Modo de permiso para la ejecución de herramientas dentro de este agente |198| `permissionMode` | `PermissionMode` | No | Modo de permiso para la ejecución de herramientas dentro de este agente |

199 199 

200En el SDK de Python, los nombres de campo de varias palabras como `disallowedTools` y `mcpServers` mantienen su ortografía camelCase para coincidir con el formato de cable en lugar de seguir la convención snake\_case de Python. Consulte la referencia [`AgentDefinition`](/es/agent-sdk/python#agentdefinition) para obtener detalles.200En el SDK de Python, los nombres de campo de varias palabras como `disallowedTools` y `mcpServers` mantienen su ortografía camelCase para coincidir con el formato de cable en lugar de seguir la convención snake\_case de Python. Consulte la referencia [`AgentDefinition`](/docs/es/agent-sdk/python#agentdefinition) para obtener detalles.

201 201 

202Dos comportamientos de subagentes cambiaron en Claude Code v2.1.198:202Dos comportamientos de subagentes cambiaron en Claude Code v2.1.198:

203 203 

204* Los subagentes se ejecutan en segundo plano de forma predeterminada. Una llamada a la herramienta Agent que omite la entrada [`run_in_background`](/es/agent-sdk/typescript) inicia un subagente en segundo plano, y Claude establece `run_in_background: false` cuando necesita el resultado antes de continuar. Antes de v2.1.198, omitir `run_in_background` ejecutaba el subagente de forma síncrona. Establezca el campo `background` en `true` para forzar la ejecución en segundo plano para un agente específico independientemente de lo que Claude solicite.204* Los subagentes se ejecutan en segundo plano de forma predeterminada. Una llamada a la herramienta Agent que omite la entrada [`run_in_background`](/docs/es/agent-sdk/typescript) inicia un subagente en segundo plano, y Claude establece `run_in_background: false` cuando necesita el resultado antes de continuar. Antes de v2.1.198, omitir `run_in_background` ejecutaba el subagente de forma síncrona. Establezca el campo `background` en `true` para forzar la ejecución en segundo plano para un agente específico independientemente de lo que Claude solicite.

205* Un subagente hereda la configuración de pensamiento extendido de la sesión principal. En versiones anteriores, el pensamiento extendido está deshabilitado dentro de los subagentes independientemente de la configuración de la sesión principal.205* Un subagente hereda la configuración de pensamiento extendido de la sesión principal. En versiones anteriores, el pensamiento extendido está deshabilitado dentro de los subagentes independientemente de la configuración de la sesión principal.

206 206 

207<Note>207<Note>

208 {/* min-version: 2.1.172 */}A partir de Claude Code v2.1.172, los subagentes pueden generar sus propios subagentes. Un subagente cinco niveles por debajo del agente principal no puede generar más subagentes, independientemente de si se ejecuta en primer plano o en segundo plano. Para evitar que un subagente genere otros, omita `Agent` de su matriz `tools` o agréguelo a `disallowedTools`. Consulte [subagentes anidados](/es/sub-agents#spawn-nested-subagents) para conocer las reglas de profundidad completas.208 A partir de Claude Code v2.1.172, los subagentes pueden generar sus propios subagentes. Un subagente cinco niveles por debajo del agente principal no puede generar más subagentes, independientemente de si se ejecuta en primer plano o en segundo plano. Para evitar que un subagente genere otros, omita `Agent` de su matriz `tools` o agréguelo a `disallowedTools`. Consulte [subagentes anidados](/docs/es/sub-agents#spawn-nested-subagents) para conocer las reglas de profundidad completas.

209</Note>209</Note>

210 210 

211<h3 id="filesystem-based-definition-alternative">211<h3 id="filesystem-based-definition-alternative">

212 Definición basada en sistema de archivos (alternativa)212 Definición basada en sistema de archivos (alternativa)

213</h3>213</h3>

214 214 

215También puede definir subagentes como archivos markdown en directorios `.claude/agents/`. Consulte la [documentación de subagentes de Claude Code](/es/sub-agents) para obtener detalles sobre este enfoque. Los agentes definidos programáticamente tienen prioridad sobre los agentes basados en sistema de archivos con el mismo nombre.215También puede definir subagentes como archivos markdown en directorios `.claude/agents/`. Consulte la [documentación de subagentes de Claude Code](/docs/es/sub-agents) para obtener detalles sobre este enfoque. Los agentes definidos programáticamente tienen prioridad sobre los agentes basados en sistema de archivos con el mismo nombre.

216 216 

217<Note>217<Note>

218 Incluso sin definir subagentes personalizados, Claude puede generar el subagente integrado `general-purpose`. Esto es útil para delegar tareas de investigación o exploración sin crear agentes especializados. Incluya `Agent` en `allowedTools` para que estas invocaciones se aprueben automáticamente sin un aviso de permiso.218 Incluso sin definir subagentes personalizados, Claude puede generar el subagente integrado `general-purpose`. Esto es útil para delegar tareas de investigación o exploración sin crear agentes especializados. Incluya `Agent` en `allowedTools` para que estas invocaciones se aprueben automáticamente sin un aviso de permiso.


224 224 

225La ventana de contexto de un subagente comienza nueva, sin conversación padre, pero no está vacía. El único contenido que pasa del padre al subagente es la cadena de prompt de la herramienta Agent, así que incluya cualquier ruta de archivo, mensaje de error o decisión que el subagente necesite directamente en ese prompt.225La ventana de contexto de un subagente comienza nueva, sin conversación padre, pero no está vacía. El único contenido que pasa del padre al subagente es la cadena de prompt de la herramienta Agent, así que incluya cualquier ruta de archivo, mensaje de error o decisión que el subagente necesite directamente en ese prompt.

226 226 

227{/* min-version: 2.1.206 */}Un subagente que tiene la herramienta [`SendMessage`](/es/tools-reference) comienza con una lista de los otros agentes nombrados ejecutándose en la sesión, así sabe qué nombres puede usar para enviar mensajes. Claude Code añade la lista al primer turno del subagente automáticamente. Un [fork](/es/sub-agents#fork-the-current-conversation) no obtiene la lista porque hereda la conversación padre en su lugar. La lista requiere Claude Code v2.1.206 o posterior.227Un subagente que tiene la herramienta [`SendMessage`](/docs/es/tools-reference) comienza con una lista de los otros agentes nombrados ejecutándose en la sesión, así sabe qué nombres puede usar para enviar mensajes. Claude Code añade la lista al primer turno del subagente automáticamente. Un [fork](/docs/es/sub-agents#fork-the-current-conversation) no obtiene la lista porque hereda la conversación padre en su lugar. La lista requiere Claude Code v2.1.206 o posterior.

228 228 

229| El subagente recibe | El subagente no recibe |229| El subagente recibe | El subagente no recibe |

230| :-------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------- |230| :-------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------- |

231| Su propio prompt del sistema (`AgentDefinition.prompt`) y el prompt de la herramienta Agent | El historial de conversación del padre o resultados de herramientas |231| Su propio prompt del sistema (`AgentDefinition.prompt`) y el prompt de la herramienta Agent | El historial de conversación del padre o resultados de herramientas |

232| CLAUDE.md del proyecto (cargado a través de [`settingSources`](/es/agent-sdk/claude-code-features#control-filesystem-settings-with-settingsources)) | Contenido de skill precargado, a menos que esté listado en `AgentDefinition.skills` |232| CLAUDE.md del proyecto (cargado a través de [`settingSources`](/docs/es/agent-sdk/claude-code-features#control-filesystem-settings-with-settingsources)) | Contenido de skill precargado, a menos que esté listado en `AgentDefinition.skills` |

233| Definiciones de herramientas (heredadas del padre, o el subconjunto en `tools`) | El prompt del sistema del padre |233| Definiciones de herramientas (heredadas del padre, o el subconjunto en `tools`) | El prompt del sistema del padre |

234 234 

235<Note>235<Note>

236 El padre recibe el mensaje final del subagente textualmente como el resultado de la herramienta Agent, pero puede resumirlo en su propia respuesta. Para preservar la salida del subagente textualmente en la respuesta visible para el usuario, incluya una instrucción para hacerlo en el prompt u opción `systemPrompt` que pase a la llamada `query()` principal.236 El padre recibe el mensaje final del subagente textualmente como el resultado de la herramienta Agent, pero puede resumirlo en su propia respuesta. Para preservar la salida del subagente textualmente en la respuesta visible para el usuario, incluya una instrucción para hacerlo en el prompt u opción `systemPrompt` que pase a la llamada `query()` principal.

237</Note>237</Note>

238 238 

239Un error de API que termina el subagente anticipadamente, como un límite de velocidad, nunca se entrega como su resultado. Si un límite de velocidad, sobrecarga o error del servidor corta un subagente en primer plano que ya produjo salida de texto, la herramienta Agent devuelve esa salida parcial con una nota de que el subagente no terminó. Un subagente que no produjo nada, o cuya única salida fueron llamadas de herramientas sin texto, falla con un mensaje de error, `Agent terminated early due to an API error`, seguido del detalle del error. Consulte [API errors in subagents](/es/sub-agents#api-errors-in-subagents) para el comportamiento en primer plano y en segundo plano.239Un error de API que termina el subagente anticipadamente, como un límite de velocidad, nunca se entrega como su resultado. Si un límite de velocidad, sobrecarga o error del servidor corta un subagente en primer plano que ya produjo salida de texto, la herramienta Agent devuelve esa salida parcial con una nota de que el subagente no terminó. Un subagente que no produjo nada, o cuya única salida fueron llamadas de herramientas sin texto, falla con un mensaje de error, `Agent terminated early due to an API error`, seguido del detalle del error. Consulte [API errors in subagents](/docs/es/sub-agents#api-errors-in-subagents) para el comportamiento en primer plano y en segundo plano.

240 240 

241Este manejo de salida parcial requiere Claude Code v2.1.199 o posterior. En v2.1.199, un límite de velocidad, sobrecarga o error del servidor dejó la forma de solo llamadas de herramientas con un resultado parcial vacío que contiene solo la nota de corte.241Este manejo de salida parcial requiere Claude Code v2.1.199 o posterior. En v2.1.199, un límite de velocidad, sobrecarga o error del servidor dejó la forma de solo llamadas de herramientas con un resultado parcial vacío que contiene solo la nota de corte.

242 242 


441 441 

442Puede reanudar un subagente para continuar donde se detuvo en lugar de comenzar de nuevo. Un subagente reanudado retiene su historial de conversación completo, incluidas todas las llamadas a herramientas anteriores, resultados y razonamiento.442Puede reanudar un subagente para continuar donde se detuvo en lugar de comenzar de nuevo. Un subagente reanudado retiene su historial de conversación completo, incluidas todas las llamadas a herramientas anteriores, resultados y razonamiento.

443 443 

444Cuando un subagente se completa, el resultado de la herramienta Agent incluye un bloque de texto que contiene `agentId: <id>`. Los agentes integrados [`Explore` y `Plan`](/es/sub-agents#built-in-subagents) son de una sola ejecución y no devuelven un `agentId`, así que use un agente personalizado o `general-purpose` cuando necesite reanudar. Para reanudar un subagente programáticamente:444Cuando un subagente se completa, el resultado de la herramienta Agent incluye un bloque de texto que contiene `agentId: <id>`. Los agentes integrados [`Explore` y `Plan`](/docs/es/sub-agents#built-in-subagents) son de una sola ejecución y no devuelven un `agentId`, así que use un agente personalizado o `general-purpose` cuando necesite reanudar. Para reanudar un subagente programáticamente:

445 445 

4461. **Capture el ID de sesión**: Extraiga `session_id` de los mensajes durante la primera consulta4461. **Capture el ID de sesión**: Extraiga `session_id` de los mensajes durante la primera consulta

4472. **Extraiga el ID del agente**: Analice `agentId` del texto del resultado de la herramienta Agent4472. **Extraiga el ID del agente**: Analice `agentId` del texto del resultado de la herramienta Agent


661 Escalar con flujos de trabajo dinámicos661 Escalar con flujos de trabajo dinámicos

662</h2>662</h2>

663 663 

664Los subagentes funcionan bien para algunas tareas delegadas por turno. Para ejecuciones que coordinan docenas a cientos de agentes, use la herramienta `Workflow`, que mueve la orquestación a un script que el tiempo de ejecución ejecuta fuera del contexto de la conversación. Consulte [flujos de trabajo dinámicos](/es/workflows) para ver cómo los flujos de trabajo difieren de la delegación de subagentes turno a turno.664Los subagentes funcionan bien para algunas tareas delegadas por turno. Para ejecuciones que coordinan docenas a cientos de agentes, use la herramienta `Workflow`, que mueve la orquestación a un script que el tiempo de ejecución ejecuta fuera del contexto de la conversación. Consulte [flujos de trabajo dinámicos](/docs/es/workflows) para ver cómo los flujos de trabajo difieren de la delegación de subagentes turno a turno.

665 665 

666La herramienta `Workflow` está disponible en el SDK de TypeScript Agent v0.3.149 y posterior. Incluya `Workflow` en `allowedTools` para aprobar automáticamente las ejecuciones de flujo de trabajo. Los esquemas de entrada y salida de la herramienta se enumeran en la [referencia de TypeScript](/es/agent-sdk/typescript#workflow).666La herramienta `Workflow` está disponible en el SDK de TypeScript Agent v0.3.149 y posterior. Incluya `Workflow` en `allowedTools` para aprobar automáticamente las ejecuciones de flujo de trabajo. Los esquemas de entrada y salida de la herramienta se enumeran en la [referencia de TypeScript](/docs/es/agent-sdk/typescript#workflow).

667 667 

668<h2 id="troubleshooting">668<h2 id="troubleshooting">

669 Solución de problemas669 Solución de problemas


690* **`--disable-slash-commands`**: las sesiones iniciadas con esta bandera no observan estos directorios y siempre necesitan un reinicio para cargar archivos nuevos.690* **`--disable-slash-commands`**: las sesiones iniciadas con esta bandera no observan estos directorios y siempre necesitan un reinicio para cargar archivos nuevos.

691* **Un agente programático con el mismo nombre**: los `agents` pasados a `query()` anulan un agente del sistema de archivos con el mismo nombre.691* **Un agente programático con el mismo nombre**: los `agents` pasados a `query()` anulan un agente del sistema de archivos con el mismo nombre.

692 692 

693Para el formato de archivo, consulte [cómo escribir archivos de subagente](/es/sub-agents#write-subagent-files).693Para el formato de archivo, consulte [cómo escribir archivos de subagente](/docs/es/sub-agents#write-subagent-files).

694 694 

695<h3 id="long-prompt-failures-on-windows">695<h3 id="long-prompt-failures-on-windows">

696 Fallos de prompt largo en Windows696 Fallos de prompt largo en Windows


702 Documentación relacionada702 Documentación relacionada

703</h2>703</h2>

704 704 

705* [Subagentes de Claude Code](/es/sub-agents): documentación completa de subagentes incluyendo definiciones basadas en sistema de archivos705* [Subagentes de Claude Code](/docs/es/sub-agents): documentación completa de subagentes incluyendo definiciones basadas en sistema de archivos

706* [Flujos de trabajo dinámicos](/es/workflows): orqueste muchos subagentes desde un script para trabajos demasiado grandes para una conversación706* [Flujos de trabajo dinámicos](/docs/es/workflows): orqueste muchos subagentes desde un script para trabajos demasiado grandes para una conversación

707* [Descripción general del SDK](/es/agent-sdk/overview): introducción al Claude Agent SDK707* [Descripción general del SDK](/docs/es/agent-sdk/overview): introducción al Claude Agent SDK

Details

40 Ejemplos40 Ejemplos

41</h2>41</h2>

42 42 

43Antes de ejecutar estos ejemplos, instale el Claude Agent SDK siguiendo el [inicio rápido](/es/agent-sdk/quickstart).43Antes de ejecutar estos ejemplos, instale el Claude Agent SDK siguiendo el [inicio rápido](/docs/es/agent-sdk/quickstart).

44 44 

45Cada ejemplo se ejecuta hasta que el agente termina y produce su mensaje de resultado final. Si una sesión alcanza primero su límite de turnos, ese mensaje de resultado tiene el subtipo `error_max_turns`. Verifique `subtype` para detectar ese final.45Cada ejemplo se ejecuta hasta que el agente termina y produce su mensaje de resultado final. Si una sesión alcanza primero su límite de turnos, ese mensaje de resultado tiene el subtipo `error_max_turns`. Verifique `subtype` para detectar ese final.

46 46 

47Estos ejemplos utilizan llamadas `query()` de un solo disparo. Después de producir un resultado `error_max_turns`, `query()` genera un error que incluye `Reached maximum number of turns`. Cada ejemplo envuelve su bucle en un bloque try para salir limpiamente cuando eso sucede.47Estos ejemplos utilizan llamadas `query()` de un solo disparo. Después de producir un resultado `error_max_turns`, `query()` genera un error que incluye `Reached maximum number of turns`. Cada ejemplo envuelve su bucle en un bloque try para salir limpiamente cuando eso sucede.

48 48 

49Consulte [Manejar el resultado](/es/agent-sdk/agent-loop#handle-the-result) para los subtipos de resultado.49Consulte [Manejar el resultado](/docs/es/agent-sdk/agent-loop#handle-the-result) para los subtipos de resultado.

50 50 

51<h3 id="monitoring-todo-changes">51<h3 id="monitoring-todo-changes">

52 Monitoreo de Cambios en Tareas52 Monitoreo de Cambios en Tareas


253 Migrar a herramientas Task253 Migrar a herramientas Task

254</h2>254</h2>

255 255 

256Las herramientas Task dividen la única llamada `TodoWrite` en `TaskCreate` para cada elemento nuevo y `TaskUpdate` para cada cambio de estado, con `TaskList` y `TaskGet` disponibles para que el modelo lea la lista actual. Su código de monitoreo aún inspecciona bloques `tool_use` en la secuencia del asistente, pero mantiene un mapa codificado por ID de tarea en lugar de reemplazar la lista completa en cada llamada. {/* min-version: 2.1.142 */}Las herramientas Task son las predeterminadas a partir del TypeScript Agent SDK 0.3.142 y Claude Code v2.1.142, por lo que no se necesita cambio en `options.env`.256Las herramientas Task dividen la única llamada `TodoWrite` en `TaskCreate` para cada elemento nuevo y `TaskUpdate` para cada cambio de estado, con `TaskList` y `TaskGet` disponibles para que el modelo lea la lista actual. Su código de monitoreo aún inspecciona bloques `tool_use` en la secuencia del asistente, pero mantiene un mapa codificado por ID de tarea en lugar de reemplazar la lista completa en cada llamada. Las herramientas Task son las predeterminadas a partir del TypeScript Agent SDK 0.3.142 y Claude Code v2.1.142, por lo que no se necesita cambio en `options.env`.

257 257 

258| Con `TodoWrite` | Con herramientas Task |258| Con `TodoWrite` | Con herramientas Task |

259| -------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |259| -------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |


338 Documentación Relacionada338 Documentación Relacionada

339</h2>339</h2>

340 340 

341* [Referencia del SDK de TypeScript](/es/agent-sdk/typescript)341* [Referencia del SDK de TypeScript](/docs/es/agent-sdk/typescript)

342* [Referencia del SDK de Python](/es/agent-sdk/python)342* [Referencia del SDK de Python](/docs/es/agent-sdk/python)

343* [Modo de Streaming vs Modo Único](/es/agent-sdk/streaming-vs-single-mode)343* [Modo de Streaming vs Modo Único](/docs/es/agent-sdk/streaming-vs-single-mode)

344* [Herramientas Personalizadas](/es/agent-sdk/custom-tools)344* [Herramientas Personalizadas](/docs/es/agent-sdk/custom-tools)

Details

6 6 

7> Referencia completa de la API del SDK de Agent de TypeScript, incluyendo todas las funciones, tipos e interfaces.7> Referencia completa de la API del SDK de Agent de TypeScript, incluyendo todas las funciones, tipos e interfaces.

8 8 

9<script src="/components/typescript-sdk-type-links.js" defer />9<script src="/docs/components/typescript-sdk-type-links.js" defer />

10 10 

11<h2 id="installation">11<h2 id="installation">

12 Instalación12 Instalación


296</h4>296</h4>

297 297 

298| Propiedad | Tipo | Descripción |298| Propiedad | Tipo | Descripción |

299| :------------------- | :---------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |299| :------------------- | :---------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

300| `type` | `"user" \| "assistant"` | Rol del mensaje |300| `type` | `"user" \| "assistant"` | Rol del mensaje |

301| `uuid` | `string` | Identificador de mensaje único |301| `uuid` | `string` | Identificador de mensaje único |

302| `session_id` | `string` | Sesión a la que pertenece este mensaje |302| `session_id` | `string` | Sesión a la que pertenece este mensaje |

303| `message` | `unknown` | Carga útil de mensaje sin procesar de la transcripción |303| `message` | `unknown` | Carga útil de mensaje sin procesar de la transcripción |

304| `parent_tool_use_id` | `string \| null` | Para mensajes de subagente, el `tool_use_id` de la llamada de herramienta `Agent` que lo generó. `null` para mensajes de sesión principal y sesiones más antiguas |304| `parent_tool_use_id` | `string \| null` | Para mensajes de subagente, el `tool_use_id` de la llamada de herramienta `Agent` que lo generó. `null` para mensajes de sesión principal y sesiones más antiguas |

305| `parent_agent_id` | `string \| null` | Para mensajes de un [subagente anidado](/es/sub-agents#spawn-nested-subagents), el `agentId` del subagente que lo generó. `null` para mensajes de sesión principal, mensajes de subagentes de nivel superior y sesiones más antiguas. {/* min-version: 2.1.202 */}Requiere Claude Code v2.1.202 o posterior |305| `parent_agent_id` | `string \| null` | Para mensajes de un [subagente anidado](/docs/es/sub-agents#spawn-nested-subagents), el `agentId` del subagente que lo generó. `null` para mensajes de sesión principal, mensajes de subagentes de nivel superior y sesiones más antiguas. Requiere Claude Code v2.1.202 o posterior |

306 306 

307<h4 id="example-3">307<h4 id="example-3">

308 Ejemplo308 Ejemplo


423| :------------------------------ | :------------------------------------ | :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |423| :------------------------------ | :------------------------------------ | :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

424| `options.cwd` | `string` | `process.cwd()` | Directorio para resolver la configuración del proyecto y local relativa a |424| `options.cwd` | `string` | `process.cwd()` | Directorio para resolver la configuración del proyecto y local relativa a |

425| `options.settingSources` | [`SettingSource`](#settingsource)`[]` | Todas las fuentes | Qué fuentes del sistema de archivos cargar. Pase `[]` para omitir la configuración del usuario, proyecto y local. La configuración de políticas administradas se carga en todos los casos. La configuración administrada por servidor se toma de `serverManagedSettings` cuando el host la pasa, o se lee de la caché en disco de la CLI en caso contrario; la instantánea no las obtiene de la red |425| `options.settingSources` | [`SettingSource`](#settingsource)`[]` | Todas las fuentes | Qué fuentes del sistema de archivos cargar. Pase `[]` para omitir la configuración del usuario, proyecto y local. La configuración de políticas administradas se carga en todos los casos. La configuración administrada por servidor se toma de `serverManagedSettings` cuando el host la pasa, o se lee de la caché en disco de la CLI en caso contrario; la instantánea no las obtiene de la red |

426| `options.managedSettings` | `Settings` | `undefined` | Configuración de política restrictiva suministrada por el host de incrustación. Se descarta por defecto cuando una política administrada implementada por el administrador está presente; se fusiona bajo ese nivel cuando [`parentSettingsBehavior`](/es/settings#available-settings) es `"merge"`. Las claves no restrictivas como `model` se descartan silenciosamente para que esta opción pueda restringir la política administrada pero no flexibilizarla |426| `options.managedSettings` | `Settings` | `undefined` | Configuración de política restrictiva suministrada por el host de incrustación. Se descarta por defecto cuando una política administrada implementada por el administrador está presente; se fusiona bajo ese nivel cuando [`parentSettingsBehavior`](/docs/es/settings#available-settings) es `"merge"`. Las claves no restrictivas como `model` se descartan silenciosamente para que esta opción pueda restringir la política administrada pero no flexibilizarla |

427| `options.serverManagedSettings` | `Settings` | `undefined` | Carga útil de configuración administrada por servidor desde `/api/claude_code/settings`. Las claves no restrictivas pasan sin filtrar |427| `options.serverManagedSettings` | `Settings` | `undefined` | Carga útil de configuración administrada por servidor desde `/api/claude_code/settings`. Las claves no restrictivas pasan sin filtrar |

428 428 

429<h4 id="return-type-resolvedsettings">429<h4 id="return-type-resolvedsettings">


474| `agents` | `Record<string, [`AgentDefinition`](#agentdefinition)>` | `undefined` | Defina subagentes mediante programación |474| `agents` | `Record<string, [`AgentDefinition`](#agentdefinition)>` | `undefined` | Defina subagentes mediante programación |

475| `agentProgressSummaries` | `boolean` | `false` | Cuando es `true`, genere resúmenes de progreso de una línea para subagentes y reenvíelos en eventos [`task_progress`](#sdktaskprogressmessage) a través del campo `summary`. Se aplica a subagentes en primer plano y en segundo plano |475| `agentProgressSummaries` | `boolean` | `false` | Cuando es `true`, genere resúmenes de progreso de una línea para subagentes y reenvíelos en eventos [`task_progress`](#sdktaskprogressmessage) a través del campo `summary`. Se aplica a subagentes en primer plano y en segundo plano |

476| `allowDangerouslySkipPermissions` | `boolean` | `false` | Habilite omitir permisos. Requerido cuando se usa `permissionMode: 'bypassPermissions'` |476| `allowDangerouslySkipPermissions` | `boolean` | `false` | Habilite omitir permisos. Requerido cuando se usa `permissionMode: 'bypassPermissions'` |

477| `allowedTools` | `string[]` | `[]` | Herramientas para aprobar automáticamente sin solicitar. Esto no restringe Claude a solo estas herramientas; las herramientas no listadas caen en `permissionMode` y `canUseTool`. Use `disallowedTools` para bloquear herramientas. Vea [Permissions](/es/agent-sdk/permissions#allow-and-deny-rules) |477| `allowedTools` | `string[]` | `[]` | Herramientas para aprobar automáticamente sin solicitar. Esto no restringe Claude a solo estas herramientas; las herramientas no listadas caen en `permissionMode` y `canUseTool`. Use `disallowedTools` para bloquear herramientas. Vea [Permissions](/docs/es/agent-sdk/permissions#allow-and-deny-rules) |

478| `betas` | [`SdkBeta`](#sdkbeta)`[]` | `[]` | Habilite características beta |478| `betas` | [`SdkBeta`](#sdkbeta)`[]` | `[]` | Habilite características beta |

479| `canUseTool` | [`CanUseTool`](#canusetool) | `undefined` | Función de permiso personalizado, invocada solo cuando el [flujo de permisos](/es/agent-sdk/permissions#how-permissions-are-evaluated) cae en un mensaje. No se invoca para llamadas preaprobadas por `allowedTools`, reglas de permiso, o `permissionMode`. `AskUserQuestion`, herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) la alcanzan incluso si las ha permitido; en modo `dontAsk` se niegan en su lugar. Vea [`CanUseTool`](#canusetool) para detalles |479| `canUseTool` | [`CanUseTool`](#canusetool) | `undefined` | Función de permiso personalizado, invocada solo cuando el [flujo de permisos](/docs/es/agent-sdk/permissions#how-permissions-are-evaluated) cae en un mensaje. No se invoca para llamadas preaprobadas por `allowedTools`, reglas de permiso, o `permissionMode`. `AskUserQuestion`, herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) la alcanzan incluso si las ha permitido; en modo `dontAsk` se niegan en su lugar. Vea [`CanUseTool`](#canusetool) para detalles |

480| `continue` | `boolean` | `false` | Continúe la conversación más reciente |480| `continue` | `boolean` | `false` | Continúe la conversación más reciente |

481| `cwd` | `string` | `process.cwd()` | Directorio de trabajo actual |481| `cwd` | `string` | `process.cwd()` | Directorio de trabajo actual |

482| `debug` | `boolean` | `false` | Habilite el modo de depuración para el proceso de Claude Code |482| `debug` | `boolean` | `false` | Habilite el modo de depuración para el proceso de Claude Code |

483| `debugFile` | `string` | `undefined` | Escriba registros de depuración en una ruta de archivo específica. Habilita implícitamente el modo de depuración |483| `debugFile` | `string` | `undefined` | Escriba registros de depuración en una ruta de archivo específica. Habilita implícitamente el modo de depuración |

484| `disallowedTools` | `string[]` | `[]` | Herramientas a negar. Un nombre simple como `"Bash"` elimina la herramienta del contexto de Claude. Una regla con alcance como `"Bash(rm *)"` deja la herramienta disponible y niega las llamadas coincidentes en cada modo de permiso, incluyendo `bypassPermissions`. Vea [Permissions](/es/agent-sdk/permissions#allow-and-deny-rules) |484| `disallowedTools` | `string[]` | `[]` | Herramientas a negar. Un nombre simple como `"Bash"` elimina la herramienta del contexto de Claude. Una regla con alcance como `"Bash(rm *)"` deja la herramienta disponible y niega las llamadas coincidentes en cada modo de permiso, incluyendo `bypassPermissions`. Vea [Permissions](/docs/es/agent-sdk/permissions#allow-and-deny-rules) |

485| `effort` | `'low' \| 'medium' \| 'high' \| 'xhigh' \| 'max'` | Predeterminado del modelo | Controla cuánto esfuerzo pone Claude en su respuesta. Funciona con el pensamiento adaptativo para guiar la profundidad del pensamiento. Vea [adjust the effort level](/es/model-config#adjust-effort-level) |485| `effort` | `'low' \| 'medium' \| 'high' \| 'xhigh' \| 'max'` | Predeterminado del modelo | Controla cuánto esfuerzo pone Claude en su respuesta. Funciona con el pensamiento adaptativo para guiar la profundidad del pensamiento. Vea [adjust the effort level](/docs/es/model-config#adjust-effort-level) |

486| `enableFileCheckpointing` | `boolean` | `false` | Habilite el seguimiento de cambios de archivo para rebobinar. Vea [File checkpointing](/es/agent-sdk/file-checkpointing) |486| `enableFileCheckpointing` | `boolean` | `false` | Habilite el seguimiento de cambios de archivo para rebobinar. Vea [File checkpointing](/docs/es/agent-sdk/file-checkpointing) |

487| `env` | `Record<string, string \| undefined>` | `process.env` | Variables de entorno. Cuando se establece, esto reemplaza el entorno del subproceso en lugar de fusionarse con `process.env`, así que pase `{ ...process.env, YOUR_VAR: 'value' }` para mantener variables heredadas como `PATH`. Vea [Handle slow or stalled API responses](#handle-slow-or-stalled-api-responses) para un ejemplo de este patrón, y [Environment variables](/es/env-vars) para variables que la CLI subyacente lee. Establezca `CLAUDE_AGENT_SDK_CLIENT_APP` para identificar su aplicación en el encabezado User-Agent |487| `env` | `Record<string, string \| undefined>` | `process.env` | Variables de entorno. Cuando se establece, esto reemplaza el entorno del subproceso en lugar de fusionarse con `process.env`, así que pase `{ ...process.env, YOUR_VAR: 'value' }` para mantener variables heredadas como `PATH`. Vea [Handle slow or stalled API responses](#handle-slow-or-stalled-api-responses) para un ejemplo de este patrón, y [Environment variables](/docs/es/env-vars) para variables que la CLI subyacente lee. Establezca `CLAUDE_AGENT_SDK_CLIENT_APP` para identificar su aplicación en el encabezado User-Agent |

488| `executable` | `'bun' \| 'deno' \| 'node'` | Detectado automáticamente | Tiempo de ejecución de JavaScript a usar |488| `executable` | `'bun' \| 'deno' \| 'node'` | Detectado automáticamente | Tiempo de ejecución de JavaScript a usar |

489| `executableArgs` | `string[]` | `[]` | Argumentos a pasar al ejecutable |489| `executableArgs` | `string[]` | `[]` | Argumentos a pasar al ejecutable |

490| `extraArgs` | `Record<string, string \| null>` | `{}` | Argumentos adicionales |490| `extraArgs` | `Record<string, string \| null>` | `{}` | Argumentos adicionales |


496| `includePartialMessages` | `boolean` | `false` | Incluya eventos de mensaje parcial |496| `includePartialMessages` | `boolean` | `false` | Incluya eventos de mensaje parcial |

497| `loadTimeoutMs` | `number` | `60000` | *Alpha.* Tiempo de espera en milisegundos para cada llamada `sessionStore.load()` y `sessionStore.listSubkeys()` durante la materialización de reanudación. Si el adaptador no se resuelve dentro de esta ventana, la consulta falla en lugar de colgarse. Se ignora cuando `sessionStore` no está establecido |497| `loadTimeoutMs` | `number` | `60000` | *Alpha.* Tiempo de espera en milisegundos para cada llamada `sessionStore.load()` y `sessionStore.listSubkeys()` durante la materialización de reanudación. Si el adaptador no se resuelve dentro de esta ventana, la consulta falla en lugar de colgarse. Se ignora cuando `sessionStore` no está establecido |

498| `managedSettings` | `Settings` | `undefined` | Configuración de nivel de política suministrada por el proceso padre que genera. Se descarta cuando ya existe una capa de configuración administrada controlada por TI en la máquina, a menos que ese administrador opte por `parentSettingsBehavior: 'merge'`. Se filtra a solo claves restrictivas independientemente |498| `managedSettings` | `Settings` | `undefined` | Configuración de nivel de política suministrada por el proceso padre que genera. Se descarta cuando ya existe una capa de configuración administrada controlada por TI en la máquina, a menos que ese administrador opte por `parentSettingsBehavior: 'merge'`. Se filtra a solo claves restrictivas independientemente |

499| `maxBudgetUsd` | `number` | `undefined` | Detenga la consulta cuando la estimación de costo del lado del cliente alcance este valor en USD. Comparado con la misma estimación que `total_cost_usd`; vea [Track cost and usage](/es/agent-sdk/cost-tracking) para advertencias de precisión |499| `maxBudgetUsd` | `number` | `undefined` | Detenga la consulta cuando la estimación de costo del lado del cliente alcance este valor en USD. Comparado con la misma estimación que `total_cost_usd`; vea [Track cost and usage](/docs/es/agent-sdk/cost-tracking) para advertencias de precisión |

500| `maxThinkingTokens` | `number` | `undefined` | *Deprecado:* Use `thinking` en su lugar. Tokens máximos para el proceso de pensamiento |500| `maxThinkingTokens` | `number` | `undefined` | *Deprecado:* Use `thinking` en su lugar. Tokens máximos para el proceso de pensamiento |

501| `maxTurns` | `number` | `undefined` | Número máximo de turnos agentes (viajes de ronda de uso de herramientas) |501| `maxTurns` | `number` | `undefined` | Número máximo de turnos agentes (viajes de ronda de uso de herramientas) |

502| `mcpServers` | `Record<string, [`McpServerConfig`](#mcpserverconfig)>` | `{}` | Configuraciones de servidor MCP |502| `mcpServers` | `Record<string, [`McpServerConfig`](#mcpserverconfig)>` | `{}` | Configuraciones de servidor MCP |

503| `model` | `string` | Predeterminado de CLI | Alias de modelo Claude o nombre de modelo completo. Vea [accepted values and provider-specific IDs](/es/model-config#available-models) |503| `model` | `string` | Predeterminado de CLI | Alias de modelo Claude o nombre de modelo completo. Vea [accepted values and provider-specific IDs](/docs/es/model-config#available-models) |

504| `onElicitation` | `(request: ElicitationRequest, options: { signal: AbortSignal }) => Promise<ElicitationResult>` | `undefined` | Devolución de llamada para manejar solicitudes de elicitación de MCP. Se llama cuando un servidor MCP solicita entrada del usuario y ningún hook la maneja primero. Cuando no se proporciona, las solicitudes de elicitación no manejadas se rechazan automáticamente |504| `onElicitation` | `(request: ElicitationRequest, options: { signal: AbortSignal }) => Promise<ElicitationResult>` | `undefined` | Devolución de llamada para manejar solicitudes de elicitación de MCP. Se llama cuando un servidor MCP solicita entrada del usuario y ningún hook la maneja primero. Cuando no se proporciona, las solicitudes de elicitación no manejadas se rechazan automáticamente |

505| `outputFormat` | `{ type: 'json_schema', schema: JSONSchema }` | `undefined` | Defina el formato de salida para los resultados del agente. Vea [Structured outputs](/es/agent-sdk/structured-outputs) para detalles |505| `outputFormat` | `{ type: 'json_schema', schema: JSONSchema }` | `undefined` | Defina el formato de salida para los resultados del agente. Vea [Structured outputs](/docs/es/agent-sdk/structured-outputs) para detalles |

506| `outputStyle` | `string` | `undefined` | No es un campo `Options`. Establezca `outputStyle` en el objeto [`settings`](/es/settings) en línea o en un archivo de configuración en su lugar. Vea [Activate an output style](/es/agent-sdk/modifying-system-prompts#activate-an-output-style) |506| `outputStyle` | `string` | `undefined` | No es un campo `Options`. Establezca `outputStyle` en el objeto [`settings`](/docs/es/settings) en línea o en un archivo de configuración en su lugar. Vea [Activate an output style](/docs/es/agent-sdk/modifying-system-prompts#activate-an-output-style) |

507| `pathToClaudeCodeExecutable` | `string` | Auto-resuelto desde el binario nativo incluido | Ruta al ejecutable de Claude Code. Solo se necesita si las dependencias opcionales se omitieron durante la instalación o su plataforma no está en el conjunto compatible |507| `pathToClaudeCodeExecutable` | `string` | Auto-resuelto desde el binario nativo incluido | Ruta al ejecutable de Claude Code. Solo se necesita si las dependencias opcionales se omitieron durante la instalación o su plataforma no está en el conjunto compatible |

508| `permissionMode` | [`PermissionMode`](#permissionmode) | `'default'` | Modo de permiso para la sesión |508| `permissionMode` | [`PermissionMode`](#permissionmode) | `'default'` | Modo de permiso para la sesión |

509| `permissionPromptToolName` | `string` | `undefined` | Nombre de herramienta MCP para solicitudes de permiso |509| `permissionPromptToolName` | `string` | `undefined` | Nombre de herramienta MCP para solicitudes de permiso |

510| `persistSession` | `boolean` | `true` | Cuando es `false`, deshabilita la persistencia de sesión en disco. Las sesiones no se pueden reanudar más tarde |510| `persistSession` | `boolean` | `true` | Cuando es `false`, deshabilita la persistencia de sesión en disco. Las sesiones no se pueden reanudar más tarde |

511| `planModeInstructions` | `string` | `undefined` | Instrucciones de flujo de trabajo personalizado para Plan Mode. Cuando `permissionMode` es `'plan'`, esta cadena reemplaza el cuerpo de flujo de trabajo de Plan Mode predeterminado. La CLI aún lo envuelve con el preámbulo de cumplimiento de solo lectura y el pie de página del protocolo ExitPlanMode |511| `planModeInstructions` | `string` | `undefined` | Instrucciones de flujo de trabajo personalizado para Plan Mode. Cuando `permissionMode` es `'plan'`, esta cadena reemplaza el cuerpo de flujo de trabajo de Plan Mode predeterminado. La CLI aún lo envuelve con el preámbulo de cumplimiento de solo lectura y el pie de página del protocolo ExitPlanMode |

512| `plugins` | [`SdkPluginConfig`](#sdkpluginconfig)`[]` | `[]` | Cargue plugins personalizados desde rutas locales. Vea [Plugins](/es/agent-sdk/plugins) para detalles |512| `plugins` | [`SdkPluginConfig`](#sdkpluginconfig)`[]` | `[]` | Cargue plugins personalizados desde rutas locales. Vea [Plugins](/docs/es/agent-sdk/plugins) para detalles |

513| `promptSuggestions` | `boolean` | `false` | Habilite sugerencias de mensaje. Emite un mensaje `prompt_suggestion` después de cada turno con un mensaje de usuario predicho siguiente |513| `promptSuggestions` | `boolean` | `false` | Habilite sugerencias de mensaje. Emite un mensaje `prompt_suggestion` después de cada turno con un mensaje de usuario predicho siguiente |

514| `resume` | `string` | `undefined` | ID de sesión a reanudar |514| `resume` | `string` | `undefined` | ID de sesión a reanudar |

515| `resumeSessionAt` | `string` | `undefined` | Reanude la sesión en un UUID de mensaje específico |515| `resumeSessionAt` | `string` | `undefined` | Reanude la sesión en un UUID de mensaje específico |

516| `sandbox` | [`SandboxSettings`](#sandboxsettings) | `undefined` | Configure el comportamiento de sandbox mediante programación. Vea [Sandbox settings](#sandboxsettings) para detalles |516| `sandbox` | [`SandboxSettings`](#sandboxsettings) | `undefined` | Configure el comportamiento de sandbox mediante programación. Vea [Sandbox settings](#sandboxsettings) para detalles |

517| `sessionId` | `string` | Auto-generado | Use un UUID específico para la sesión en lugar de generar uno automáticamente |517| `sessionId` | `string` | Auto-generado | Use un UUID específico para la sesión en lugar de generar uno automáticamente |

518| `sessionStore` | [`SessionStore`](/es/agent-sdk/session-storage#the-sessionstore-interface) | `undefined` | Refleje transcripciones de sesión en un backend externo para que cualquier host pueda reanudarlas. Vea [Persist sessions to external storage](/es/agent-sdk/session-storage) |518| `sessionStore` | [`SessionStore`](/docs/es/agent-sdk/session-storage#the-sessionstore-interface) | `undefined` | Refleje transcripciones de sesión en un backend externo para que cualquier host pueda reanudarlas. Vea [Persist sessions to external storage](/docs/es/agent-sdk/session-storage) |

519| `sessionStoreFlush` | `'batched' \| 'eager'` | `'batched'` | *Alpha.* Modo de vaciado para `sessionStore`. Se ignora cuando `sessionStore` no está establecido |519| `sessionStoreFlush` | `'batched' \| 'eager'` | `'batched'` | *Alpha.* Modo de vaciado para `sessionStore`. Se ignora cuando `sessionStore` no está establecido |

520| `settings` | `string \| Settings` | `undefined` | Objeto de [settings](/es/settings) en línea o ruta a un archivo de configuración. Completa la capa de configuración de marca en el [orden de precedencia](/es/settings#settings-precedence). Cambie en tiempo de ejecución con [`applyFlagSettings()`](#applyflagsettings) |520| `settings` | `string \| Settings` | `undefined` | Objeto de [settings](/docs/es/settings) en línea o ruta a un archivo de configuración. Completa la capa de configuración de marca en el [orden de precedencia](/docs/es/settings#settings-precedence). Cambie en tiempo de ejecución con [`applyFlagSettings()`](#applyflagsettings) |

521| `settingSources` | [`SettingSource`](#settingsource)`[]` | Valores predeterminados de CLI (todas las fuentes) | Controle qué configuración del sistema de archivos cargar. Pase `[]` para deshabilitar la configuración de usuario, proyecto y local. La configuración de política administrada se carga independientemente; la configuración administrada por servidor se obtiene cuando la sesión se autentica con una credencial de organización en una [configuración elegible](/es/server-managed-settings#platform-availability). Vea [Use Claude Code features](/es/agent-sdk/claude-code-features#what-settingsources-does-not-control) |521| `settingSources` | [`SettingSource`](#settingsource)`[]` | Valores predeterminados de CLI (todas las fuentes) | Controle qué configuración del sistema de archivos cargar. Pase `[]` para deshabilitar la configuración de usuario, proyecto y local. La configuración de política administrada se carga independientemente; la configuración administrada por servidor se obtiene cuando la sesión se autentica con una credencial de organización en una [configuración elegible](/docs/es/server-managed-settings#platform-availability). Vea [Use Claude Code features](/docs/es/agent-sdk/claude-code-features#what-settingsources-does-not-control) |

522| `skills` | `string[] \| 'all'` | `undefined` | Skills disponibles para la sesión. Pase `'all'` para habilitar cada skill descubierto, o una lista de nombres de skills. Cuando se establece, el SDK agrega la herramienta Skill a `allowedTools` automáticamente. Si también pasa `tools`, incluya `'Skill'` en esa lista. Vea [Skills](/es/agent-sdk/skills) |522| `skills` | `string[] \| 'all'` | `undefined` | Skills disponibles para la sesión. Pase `'all'` para habilitar cada skill descubierto, o una lista de nombres de skills. Cuando se establece, el SDK agrega la herramienta Skill a `allowedTools` automáticamente. Si también pasa `tools`, incluya `'Skill'` en esa lista. Vea [Skills](/docs/es/agent-sdk/skills) |

523| `spawnClaudeCodeProcess` | `(options: SpawnOptions) => SpawnedProcess` | `undefined` | Función personalizada para generar el proceso de Claude Code. Use para ejecutar Claude Code en máquinas virtuales, contenedores o entornos remotos |523| `spawnClaudeCodeProcess` | `(options: SpawnOptions) => SpawnedProcess` | `undefined` | Función personalizada para generar el proceso de Claude Code. Use para ejecutar Claude Code en máquinas virtuales, contenedores o entornos remotos |

524| `stderr` | `(data: string) => void` | `undefined` | Devolución de llamada para salida de stderr |524| `stderr` | `(data: string) => void` | `undefined` | Devolución de llamada para salida de stderr |

525| `strictMcpConfig` | `boolean` | `false` | Use solo los servidores pasados en `mcpServers` e ignore el proyecto `.mcp.json`, la configuración del usuario, los servidores MCP proporcionados por plugins, y [conectores de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai) |525| `strictMcpConfig` | `boolean` | `false` | Use solo los servidores pasados en `mcpServers` e ignore el proyecto `.mcp.json`, la configuración del usuario, los servidores MCP proporcionados por plugins, y [conectores de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai) |

526| `systemPrompt` | `string \| { type: 'preset'; preset: 'claude_code'; append?: string; excludeDynamicSections?: boolean }` | `undefined` (mensaje mínimo) | Configuración de mensaje del sistema. Pase una cadena para un mensaje personalizado, o `{ type: 'preset', preset: 'claude_code' }` para usar el mensaje del sistema de Claude Code. Cuando use la forma de objeto preestablecido, agregue `append` para extenderlo con instrucciones adicionales, y establezca `excludeDynamicSections: true` para mover el contexto por sesión al primer mensaje de usuario para [mejor reutilización de caché de mensaje en máquinas](/es/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |526| `systemPrompt` | `string \| { type: 'preset'; preset: 'claude_code'; append?: string; excludeDynamicSections?: boolean }` | `undefined` (mensaje mínimo) | Configuración de mensaje del sistema. Pase una cadena para un mensaje personalizado, o `{ type: 'preset', preset: 'claude_code' }` para usar el mensaje del sistema de Claude Code. Cuando use la forma de objeto preestablecido, agregue `append` para extenderlo con instrucciones adicionales, y establezca `excludeDynamicSections: true` para mover el contexto por sesión al primer mensaje de usuario para [mejor reutilización de caché de mensaje en máquinas](/docs/es/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |

527| `taskBudget` | `{ total: number }` | `undefined` | *Alpha.* Presupuesto de tarea del lado de la API en tokens. Cuando se establece, se le dice al modelo su presupuesto de token restante para que pueda controlar el uso de herramientas y terminar antes del límite |527| `taskBudget` | `{ total: number }` | `undefined` | *Alpha.* Presupuesto de tarea del lado de la API en tokens. Cuando se establece, se le dice al modelo su presupuesto de token restante para que pueda controlar el uso de herramientas y terminar antes del límite |

528| `thinking` | [`ThinkingConfig`](#thinkingconfig) | `{ type: 'adaptive' }` para modelos compatibles | Controla el comportamiento de pensamiento/razonamiento de Claude. Vea [`ThinkingConfig`](#thinkingconfig) para opciones |528| `thinking` | [`ThinkingConfig`](#thinkingconfig) | `{ type: 'adaptive' }` para modelos compatibles | Controla el comportamiento de pensamiento/razonamiento de Claude. Vea [`ThinkingConfig`](#thinkingconfig) para opciones |

529| `title` | `string` | `undefined` | Título de visualización para la sesión. Cuando se reanuda a través de `resume` o `continue`, el título persistente de la sesión reanudada tiene precedencia; use [`renameSession()`](#renamesession) para cambiar el título de una sesión existente |529| `title` | `string` | `undefined` | Título de visualización para la sesión. Cuando se reanuda a través de `resume` o `continue`, el título persistente de la sesión reanudada tiene precedencia; use [`renameSession()`](#renamesession) para cambiar el título de una sesión existente |


552```552```

553 553 

554* `API_TIMEOUT_MS`: tiempo de espera por solicitud en el cliente de Anthropic, en milisegundos. Predeterminado `600000`. Se aplica al bucle principal y a todos los subagentes.554* `API_TIMEOUT_MS`: tiempo de espera por solicitud en el cliente de Anthropic, en milisegundos. Predeterminado `600000`. Se aplica al bucle principal y a todos los subagentes.

555* `CLAUDE_CODE_MAX_RETRIES`: máximo de reintentos de API. Predeterminado `10`, limitado a `15`. Cada reintento obtiene su propia ventana `API_TIMEOUT_MS`, por lo que el tiempo de pared en el peor caso es aproximadamente `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` más retroceso. Para ejecuciones desatendidas que necesitan esperar a través de interrupciones más largas, establezca `CLAUDE_CODE_RETRY_WATCHDOG=1`: reintenta errores de capacidad indefinidamente, y {/* min-version: 2.1.199 */}a partir de Claude Code v2.1.199 eleva el predeterminado para otros errores transitorios a `300` y elimina el límite en esta variable.555* `CLAUDE_CODE_MAX_RETRIES`: máximo de reintentos de API. Predeterminado `10`, limitado a `15`. Cada reintento obtiene su propia ventana `API_TIMEOUT_MS`, por lo que el tiempo de pared en el peor caso es aproximadamente `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` más retroceso. Para ejecuciones desatendidas que necesitan esperar a través de interrupciones más largas, establezca `CLAUDE_CODE_RETRY_WATCHDOG=1`: reintenta errores de capacidad indefinidamente, y a partir de Claude Code v2.1.199 eleva el predeterminado para otros errores transitorios a `300` y elimina el límite en esta variable.

556* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: perro guardián de estancamiento para subagentes lanzados con `run_in_background`. Predeterminado `600000`. Se reinicia en cada evento de transmisión; en caso de estancamiento, aborta el subagente, marca la tarea como fallida y expone el error al padre con cualquier resultado parcial. No se aplica a subagentes síncronos.556* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: perro guardián de estancamiento para subagentes lanzados con `run_in_background`. Predeterminado `600000`. Se reinicia en cada evento de transmisión; en caso de estancamiento, aborta el subagente, marca la tarea como fallida y expone el error al padre con cualquier resultado parcial. No se aplica a subagentes síncronos.

557* `CLAUDE_ENABLE_STREAM_WATCHDOG` con `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: aborta la solicitud cuando los encabezados han llegado pero el cuerpo de respuesta deja de transmitirse. El perro guardián está activado de forma predeterminada para todos los proveedores; establezca `CLAUDE_ENABLE_STREAM_WATCHDOG=0` para desactivarlo. `CLAUDE_STREAM_IDLE_TIMEOUT_MS` tiene un valor predeterminado de `300000` y se fija a ese mínimo. La solicitud abortada pasa por la ruta de reintento normal.557* `CLAUDE_ENABLE_STREAM_WATCHDOG` con `CLAUDE_STREAM_IDLE_TIMEOUT_MS`: aborta la solicitud cuando los encabezados han llegado pero el cuerpo de respuesta deja de transmitirse. El perro guardián está activado de forma predeterminada para todos los proveedores; establezca `CLAUDE_ENABLE_STREAM_WATCHDOG=0` para desactivarlo. `CLAUDE_STREAM_IDLE_TIMEOUT_MS` tiene un valor predeterminado de `300000` y se fija a ese mínimo. La solicitud abortada pasa por la ruta de reintento normal.

558 558 


594</h4>594</h4>

595 595 

596| Método | Descripción |596| Método | Descripción |

597| :------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |597| :------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

598| `interrupt()` | Interrumpe la consulta. Solo disponible en modo de entrada de transmisión. {/* min-version: 2.1.205 */}Cuando la CLI anuncia la capacidad `interrupt_receipt_v1` en [`SDKSystemMessage.capabilities`](#sdksystemmessage), se resuelve con un [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse) que enumera los mensajes en cola que sobreviven a la interrupción. Se resuelve a `undefined` en CLIs anteriores a v2.1.205 |598| `interrupt()` | Interrumpe la consulta. Solo disponible en modo de entrada de transmisión. Cuando la CLI anuncia la capacidad `interrupt_receipt_v1` en [`SDKSystemMessage.capabilities`](#sdksystemmessage), se resuelve con un [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse) que enumera los mensajes en cola que sobreviven a la interrupción. Se resuelve a `undefined` en CLIs anteriores a v2.1.205 |

599| `rewindFiles(userMessageId, options?)` | Restaura archivos a su estado en el mensaje de usuario especificado. Pase `{ dryRun: true }` para obtener una vista previa de los cambios. Requiere `enableFileCheckpointing: true`. Vea [File checkpointing](/es/agent-sdk/file-checkpointing) |599| `rewindFiles(userMessageId, options?)` | Restaura archivos a su estado en el mensaje de usuario especificado. Pase `{ dryRun: true }` para obtener una vista previa de los cambios. Requiere `enableFileCheckpointing: true`. Vea [File checkpointing](/docs/es/agent-sdk/file-checkpointing) |

600| `setPermissionMode()` | Cambia el modo de permiso (solo disponible en modo de entrada de transmisión) |600| `setPermissionMode()` | Cambia el modo de permiso (solo disponible en modo de entrada de transmisión) |

601| `setModel()` | Cambia el modelo (solo disponible en modo de entrada de transmisión) |601| `setModel()` | Cambia el modelo (solo disponible en modo de entrada de transmisión) |

602| `setMaxThinkingTokens()` | *Deprecado:* Use la opción `thinking` en su lugar. Cambia los tokens de pensamiento máximos. Pasar `null` reinicia el pensamiento al valor predeterminado de la sesión: se borra una anulación a mitad de sesión, y el pensamiento permanece desactivado para sesiones que lo tienen deshabilitado |602| `setMaxThinkingTokens()` | *Deprecado:* Use la opción `thinking` en su lugar. Cambia los tokens de pensamiento máximos. Pasar `null` reinicia el pensamiento al valor predeterminado de la sesión: se borra una anulación a mitad de sesión, y el pensamiento permanece desactivado para sesiones que lo tienen deshabilitado |

603| `applyFlagSettings(settings)` | Fusiona la configuración en la capa de configuración de marca de la sesión en tiempo de ejecución (solo disponible en modo de entrada de transmisión). Vea [`applyFlagSettings()`](#applyflagsettings) |603| `applyFlagSettings(settings)` | Fusiona la configuración en la capa de configuración de marca de la sesión en tiempo de ejecución (solo disponible en modo de entrada de transmisión). Vea [`applyFlagSettings()`](#applyflagsettings) |

604| `initializationResult()` | Devuelve el resultado de inicialización completo incluyendo comandos compatibles, modelos, información de cuenta y configuración de estilo de salida |604| `initializationResult()` | Devuelve el resultado de inicialización completo incluyendo comandos compatibles, modelos, información de cuenta y configuración de estilo de salida |

605| `reinitialize()` | {/* min-version: 2.1.195 */}Reenvía la solicitud de control `initialize` a la CLI en ejecución y devuelve un resultado nuevo en lugar del resultado de primera conexión en caché. Úselo después de una brecha de transporte, como reconectarse a una sesión después de una desconexión, para que las solicitudes de permiso pendientes lleguen a su devolución de llamada `canUseTool` nuevamente. Haga que la devolución de llamada sea idempotente por ID de solicitud, porque una solicitud cuya respuesta se perdió se envía nuevamente. Requiere Claude Code v2.1.195 o posterior |605| `reinitialize()` | Reenvía la solicitud de control `initialize` a la CLI en ejecución y devuelve un resultado nuevo en lugar del resultado de primera conexión en caché. Úselo después de una brecha de transporte, como reconectarse a una sesión después de una desconexión, para que las solicitudes de permiso pendientes lleguen a su devolución de llamada `canUseTool` nuevamente. Haga que la devolución de llamada sea idempotente por ID de solicitud, porque una solicitud cuya respuesta se perdió se envía nuevamente. Requiere Claude Code v2.1.195 o posterior |

606| `supportedCommands()` | Devuelve comandos slash disponibles |606| `supportedCommands()` | Devuelve comandos slash disponibles |

607| `supportedModels()` | Devuelve modelos disponibles con información de visualización |607| `supportedModels()` | Devuelve modelos disponibles con información de visualización |

608| `supportedAgents()` | Devuelve subagentes disponibles como [`AgentInfo`](#agentinfo)`[]` |608| `supportedAgents()` | Devuelve subagentes disponibles como [`AgentInfo`](#agentinfo)`[]` |


619 `applyFlagSettings()`619 `applyFlagSettings()`

620</h4>620</h4>

621 621 

622Cambia [settings](/es/settings) en una sesión en ejecución sin reiniciar la consulta. Úselo cuando una configuración que no tiene un setter dedicado necesite cambiar a mitad de sesión, como restringir `permissions` después de que el agente lea entrada no confiable. `setModel()` y `setPermissionMode()` son setters dedicados para esas dos claves; `applyFlagSettings()` es la forma general que acepta cualquier subconjunto de las claves de configuración, y pasar `model` aquí se comporta igual que `setModel()`.622Cambia [settings](/docs/es/settings) en una sesión en ejecución sin reiniciar la consulta. Úselo cuando una configuración que no tiene un setter dedicado necesite cambiar a mitad de sesión, como restringir `permissions` después de que el agente lea entrada no confiable. `setModel()` y `setPermissionMode()` son setters dedicados para esas dos claves; `applyFlagSettings()` es la forma general que acepta cualquier subconjunto de las claves de configuración, y pasar `model` aquí se comporta igual que `setModel()`.

623 623 

624Solo algunas claves tienen efecto a mitad de sesión:624Solo algunas claves tienen efecto a mitad de sesión:

625 625 

626* **Aplicadas en el siguiente turno**: `model`, `effortLevel`, `ultracode`, `permissions`, `hooks`, `skillOverrides`, `fastMode`, `agent`. Cambiar `agent` también aplica la anulación de modelo, hooks y mensaje del sistema de ese agente en el siguiente turno.626* **Aplicadas en el siguiente turno**: `model`, `effortLevel`, `ultracode`, `permissions`, `hooks`, `skillOverrides`, `fastMode`, `agent`. Cambiar `agent` también aplica la anulación de modelo, hooks y mensaje del sistema de ese agente en el siguiente turno.

627* **Sin efecto a mitad de sesión**: las opciones de mensaje del sistema. Estos se resuelven una vez al inicio, por lo que la sesión en ejecución mantiene el valor original aunque la llamada tenga éxito. Para cambiarlos, inicie una nueva sesión.627* **Sin efecto a mitad de sesión**: las opciones de mensaje del sistema. Estos se resuelven una vez al inicio, por lo que la sesión en ejecución mantiene el valor original aunque la llamada tenga éxito. Para cambiarlos, inicie una nueva sesión.

628 628 

629`effortLevel` acepta un nombre de [nivel de esfuerzo](/es/model-config#adjust-effort-level). También acepta `"ultracode"`, que ejecuta la sesión a esfuerzo `xhigh` y activa [ultracode](/es/workflows#let-claude-decide-with-ultracode). El tipo `Settings` declara `effortLevel` sin ese valor, así que pase el equivalente `{ ultracode: true }` en TypeScript. {/* min-version: 2.1.203 */}El valor `ultracode` requiere Claude Code v2.1.203 o posterior y solo es aceptado por `applyFlagSettings()`, no por la clave `effortLevel` en un archivo de configuración.629`effortLevel` acepta un nombre de [nivel de esfuerzo](/docs/es/model-config#adjust-effort-level). También acepta `"ultracode"`, que ejecuta la sesión a esfuerzo `xhigh` y activa [ultracode](/docs/es/workflows#let-claude-decide-with-ultracode). El tipo `Settings` declara `effortLevel` sin ese valor, así que pase el equivalente `{ ultracode: true }` en TypeScript. El valor `ultracode` requiere Claude Code v2.1.203 o posterior y solo es aceptado por `applyFlagSettings()`, no por la clave `effortLevel` en un archivo de configuración.

630 630 

631Los valores se escriben en la capa de configuración de marca, la misma capa que la opción `settings` en línea de `query()` completa al inicio. La configuración de marca se encuentra cerca de la parte superior del [orden de precedencia de configuración](/es/settings#settings-precedence): anulan la configuración de usuario, proyecto y local, y solo la configuración de política administrada puede anularlas. Esta es la misma capa que la [sección de precedencia en la página](#settings-precedence) llama opciones programáticas.631Los valores se escriben en la capa de configuración de marca, la misma capa que la opción `settings` en línea de `query()` completa al inicio. La configuración de marca se encuentra cerca de la parte superior del [orden de precedencia de configuración](/docs/es/settings#settings-precedence): anulan la configuración de usuario, proyecto y local, y solo la configuración de política administrada puede anularlas. Esta es la misma capa que la [sección de precedencia en la página](#settings-precedence) llama opciones programáticas.

632 632 

633Las llamadas sucesivas fusionan superficialmente las claves de nivel superior. Una segunda llamada con `{ permissions: {...} }` reemplaza el objeto `permissions` completo de la llamada anterior en lugar de fusionarse profundamente en él. Para borrar una clave de la capa de marca y recurrir a fuentes de menor precedencia, pase `null` para esa clave. Pasar `undefined` no tiene efecto porque la serialización JSON lo elimina.633Las llamadas sucesivas fusionan superficialmente las claves de nivel superior. Una segunda llamada con `{ permissions: {...} }` reemplaza el objeto `permissions` completo de la llamada anterior en lugar de fusionarse profundamente en él. Para borrar una clave de la capa de marca y recurrir a fuentes de menor precedencia, pase `null` para esa clave. Pasar `undefined` no tiene efecto porque la serialización JSON lo elimina.

634 634 


714 714 

715* Solo los mensajes que fueron encolados con un UUID aparecen. Una matriz vacía no significa que nada más se ejecutará.715* Solo los mensajes que fueron encolados con un UUID aparecen. Una matriz vacía no significa que nada más se ejecutará.

716* Solo se enumeran los mensajes del hilo principal. Los mensajes dirigidos a un subagente están fuera del alcance.716* Solo se enumeran los mensajes del hilo principal. Los mensajes dirigidos a un subagente están fuera del alcance.

717* La lista puede incluir UUIDs que su cliente nunca envió, como [activadores de tareas programadas](/es/scheduled-tasks). Ignore los UUIDs que no reconozca en lugar de tratarlos como un error.717* La lista puede incluir UUIDs que su cliente nunca envió, como [activadores de tareas programadas](/docs/es/scheduled-tasks). Ignore los UUIDs que no reconozca en lugar de tratarlos como un error.

718 718 

719El recibo es una instantánea tomada en el momento en que se procesa la interrupción, y en una interrupción limpia llega antes del [`SDKResultMessage`](#sdkresultmessage) del turno interrumpido. Lea el recibo en lugar de inspeccionar la cola después de ese resultado: el bucle inicia el siguiente turno en cola inmediatamente, por lo que la cola que inspecciona después del resultado ya ha cambiado.719El recibo es una instantánea tomada en el momento en que se procesa la interrupción, y en una interrupción limpia llega antes del [`SDKResultMessage`](#sdkresultmessage) del turno interrumpido. Lea el recibo en lugar de inspeccionar la cola después de ese resultado: el bucle inicia el siguiente turno en cola inmediatamente, por lo que la cola que inspecciona después del resultado ya ha cambiado.

720 720 


792 Comportamiento predeterminado792 Comportamiento predeterminado

793</h4>793</h4>

794 794 

795Cuando `settingSources` se omite o es `undefined`, `query()` carga la misma configuración del sistema de archivos que la CLI de Claude Code: usuario, proyecto y local. La configuración de política administrada se carga en todos los casos; la configuración administrada por servidor se obtiene cuando la sesión se autentica con una credencial de organización en una [configuración elegible](/es/server-managed-settings#platform-availability). Vea [What settingSources does not control](/es/agent-sdk/claude-code-features#what-settingsources-does-not-control) para entradas que se leen independientemente de esta opción, y cómo deshabilitarlas.795Cuando `settingSources` se omite o es `undefined`, `query()` carga la misma configuración del sistema de archivos que la CLI de Claude Code: usuario, proyecto y local. La configuración de política administrada se carga en todos los casos; la configuración administrada por servidor se obtiene cuando la sesión se autentica con una credencial de organización en una [configuración elegible](/docs/es/server-managed-settings#platform-availability). Vea [What settingSources does not control](/docs/es/agent-sdk/claude-code-features#what-settingsources-does-not-control) para entradas que se leen independientemente de esta opción, y cómo deshabilitarlas.

796 796 

797<h4 id="why-use-settingsources">797<h4 id="why-use-settingsources">

798 Por qué usar settingSources798 Por qué usar settingSources


913 913 

914Tipo de función de permiso personalizado para controlar el uso de herramientas.914Tipo de función de permiso personalizado para controlar el uso de herramientas.

915 915 

916La función es el reemplazo del SDK para el mensaje de permiso interactivo: se invoca solo cuando el [flujo de evaluación de permisos](/es/agent-sdk/permissions#how-permissions-are-evaluated) se resuelve en un mensaje. Las llamadas de herramientas ya aprobadas por una entrada `allowedTools`, una regla de permiso de configuración, o el modo de permiso, como `acceptEdits` o `bypassPermissions`, nunca la invocan. Para controlar cada llamada de herramienta, use un [hook `PreToolUse`](/es/agent-sdk/hooks) en su lugar.916La función es el reemplazo del SDK para el mensaje de permiso interactivo: se invoca solo cuando el [flujo de evaluación de permisos](/docs/es/agent-sdk/permissions#how-permissions-are-evaluated) se resuelve en un mensaje. Las llamadas de herramientas ya aprobadas por una entrada `allowedTools`, una regla de permiso de configuración, o el modo de permiso, como `acceptEdits` o `bypassPermissions`, nunca la invocan. Para controlar cada llamada de herramienta, use un [hook `PreToolUse`](/docs/es/agent-sdk/hooks) en su lugar.

917 917 

918`AskUserQuestion`, herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool), y herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools) la alcanzan incluso cuando una regla de permiso coincide. En modo `dontAsk` estas llamadas se niegan en su lugar, sin invocarla.918`AskUserQuestion`, herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool), y herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools) la alcanzan incluso cuando una regla de permiso coincide. En modo `dontAsk` estas llamadas se niegan en su lugar, sin invocarla.

919 919 

920```typescript theme={null}920```typescript theme={null}

921type CanUseTool = (921type CanUseTool = (


985 985 

986| Campo | Tipo | Descripción |986| Campo | Tipo | Descripción |

987| :------------------------------ | :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |987| :------------------------------ | :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

988| `askUserQuestion.previewFormat` | `'markdown' \| 'html'` | Opte por el campo `preview` en las opciones de [`AskUserQuestion`](/es/agent-sdk/user-input#question-format) y establezca su formato de contenido. Cuando no está establecido, Claude no emite vistas previas |988| `askUserQuestion.previewFormat` | `'markdown' \| 'html'` | Opte por el campo `preview` en las opciones de [`AskUserQuestion`](/docs/es/agent-sdk/user-input#question-format) y establezca su formato de contenido. Cuando no está establecido, Claude no emite vistas previas |

989 989 

990<h3 id="mcpserverconfig">990<h3 id="mcpserverconfig">

991 `McpServerConfig`991 `McpServerConfig`


1091];1091];

1092```1092```

1093 1093 

1094Para información completa sobre la creación y uso de plugins, vea [Plugins](/es/agent-sdk/plugins).1094Para información completa sobre la creación y uso de plugins, vea [Plugins](/docs/es/agent-sdk/plugins).

1095 1095 

1096<h2 id="message-types">1096<h2 id="message-types">

1097 Tipos de Mensaje1097 Tipos de Mensaje


1210};1210};

1211```1211```

1212 1212 

1213Un turno de usuario inyectado desde fuera de la sesión, uno cuyo [`origin`](#sdkmessageorigin) es `peer` o `channel`, llega a la transmisión como una reproducción ya sea que se entregó durante un turno activo o inició un nuevo turno mientras la sesión estaba inactiva. {/* min-version: 2.1.207 */}Antes de v2.1.207, un turno inyectado entregado mientras la sesión estaba inactiva no producía ningún mensaje en la transmisión y solo aparecía cuando volvía a leer la transcripción.1213Un turno de usuario inyectado desde fuera de la sesión, uno cuyo [`origin`](#sdkmessageorigin) es `peer` o `channel`, llega a la transmisión como una reproducción ya sea que se entregó durante un turno activo o inició un nuevo turno mientras la sesión estaba inactiva. Antes de v2.1.207, un turno inyectado entregado mientras la sesión estaba inactiva no producía ningún mensaje en la transmisión y solo aparecía cuando volvía a leer la transcripción.

1214 1214 

1215<h3 id="sdkresultmessage">1215<h3 id="sdkresultmessage">

1216 `SDKResultMessage`1216 `SDKResultMessage`


1279 1279 

1280El campo `origin` reenvía el [`SDKMessageOrigin`](#sdkmessageorigin) del mensaje de usuario que activó este resultado. Cuando una tarea de fondo finaliza y el SDK inyecta un turno de seguimiento sintético, el `SDKResultMessage` resultante lleva `origin: { kind: "task-notification" }`. Verifique este campo para distinguir los resultados que responden a su solicitud de los resultados emitidos para seguimientos de tareas de fondo, para que pueda enrutar o suprimir estos últimos. El campo está ausente para los resultados emitidos antes de cualquier turno de usuario, como errores de inicio.1280El campo `origin` reenvía el [`SDKMessageOrigin`](#sdkmessageorigin) del mensaje de usuario que activó este resultado. Cuando una tarea de fondo finaliza y el SDK inyecta un turno de seguimiento sintético, el `SDKResultMessage` resultante lleva `origin: { kind: "task-notification" }`. Verifique este campo para distinguir los resultados que responden a su solicitud de los resultados emitidos para seguimientos de tareas de fondo, para que pueda enrutar o suprimir estos últimos. El campo está ausente para los resultados emitidos antes de cualquier turno de usuario, como errores de inicio.

1281 1281 

1282Cuando un hook `PreToolUse` devuelve `permissionDecision: "defer"`, el resultado tiene `stop_reason: "tool_deferred"` y `deferred_tool_use` lleva el `id`, `name` e `input` de la herramienta pendiente. Lea este campo para mostrar la solicitud en su propia interfaz de usuario, luego reanude con el mismo `session_id` para continuar. Consulte [Diferir una llamada de herramienta para más tarde](/es/hooks#defer-a-tool-call-for-later) para el viaje completo.1282Cuando un hook `PreToolUse` devuelve `permissionDecision: "defer"`, el resultado tiene `stop_reason: "tool_deferred"` y `deferred_tool_use` lleva el `id`, `name` e `input` de la herramienta pendiente. Lea este campo para mostrar la solicitud en su propia interfaz de usuario, luego reanude con el mismo `session_id` para continuar. Consulte [Diferir una llamada de herramienta para más tarde](/docs/es/hooks#defer-a-tool-call-for-later) para el viaje completo.

1283 1283 

1284<h3 id="sdksystemmessage">1284<h3 id="sdksystemmessage">

1285 `SDKSystemMessage`1285 `SDKSystemMessage`


1313};1313};

1314```1314```

1315 1315 

1316{/* min-version: 2.1.205 */}

1317 

1318El array `capabilities` nombra los comportamientos de protocolo que esta CLI implementa, para que pueda detectar características en lugar de comparar cadenas `claude_code_version`. Es un conjunto abierto: ignore los valores que no reconozca y verifique la capacidad específica cuyo comportamiento depende. El campo requiere Claude Code v2.1.205 o posterior y está ausente en CLI anteriores.1316El array `capabilities` nombra los comportamientos de protocolo que esta CLI implementa, para que pueda detectar características en lugar de comparar cadenas `claude_code_version`. Es un conjunto abierto: ignore los valores que no reconozca y verifique la capacidad específica cuyo comportamiento depende. El campo requiere Claude Code v2.1.205 o posterior y está ausente en CLI anteriores.

1319 1317 

1320| Capacidad | Significado |1318| Capacidad | Significado |


1396 `SDKPluginInstallMessage`1394 `SDKPluginInstallMessage`

1397</h3>1395</h3>

1398 1396 

1399Evento de progreso de instalación de plugin. Se emite cuando [`CLAUDE_CODE_SYNC_PLUGIN_INSTALL`](/es/env-vars) está establecido, para que su aplicación Agent SDK pueda rastrear la instalación de plugins del mercado antes del primer turno. Los estados `started` y `completed` cierran la instalación general. Los estados `installed` y `failed` reportan mercados individuales e incluyen `name`.1397Evento de progreso de instalación de plugin. Se emite cuando [`CLAUDE_CODE_SYNC_PLUGIN_INSTALL`](/docs/es/env-vars) está establecido, para que su aplicación Agent SDK pueda rastrear la instalación de plugins del mercado antes del primer turno. Los estados `started` y `completed` cierran la instalación general. Los estados `installed` y `failed` reportan mercados individuales e incluyen `name`.

1400 1398 

1401```typescript theme={null}1399```typescript theme={null}

1402type SDKPluginInstallMessage = {1400type SDKPluginInstallMessage = {


1479```1477```

1480 1478 

1481| `kind` | Significado |1479| `kind` | Significado |

1482| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |1480| ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1483| `human` | Entrada directa del usuario final. En mensajes de usuario, una `origin` ausente también significa entrada humana. |1481| `human` | Entrada directa del usuario final. En mensajes de usuario, una `origin` ausente también significa entrada humana. |

1484| `channel` | Mensaje que llega en un [canal](/es/channels). `server` es el nombre del servidor MCP de origen. |1482| `channel` | Mensaje que llega en un [canal](/docs/es/channels). `server` es el nombre del servidor MCP de origen. |

1485| `peer` | Mensaje de otro agente. Para un [compañero](/es/agent-teams) en proceso enviando a `main` a través de `SendMessage`, `from` es el nombre del compañero y `senderTaskId` es su ID de tarea. Para un par entre sesiones como otro proceso local de Claude Code, `from` es la dirección del remitente y `senderTaskId` está ausente. {/* min-version: 2.1.205 */}`name` y `body` requieren Claude Code v2.1.205 o posterior. `name` es el nombre para mostrar del remitente, normalizado por Claude Code: elimina puntos de código de control, formato, sustituto, y separador de línea o párrafo Unicode, luego recorta el resultado y lo limita a 64 puntos de código con puntos suspensivos. `body` es el cuerpo del mensaje decodificado con la envoltura de par eliminada, byte exacto con lo que el modelo ve. Para un mensaje de compañero `body` siempre está presente; para un par entre sesiones está presente solo cuando el turno es exactamente una envoltura de par formada por Claude Code. Renderice `name` y `body` en lugar de volver a analizar el texto del mensaje. |1483| `peer` | Mensaje de otro agente. Para un [compañero](/docs/es/agent-teams) en proceso enviando a `main` a través de `SendMessage`, `from` es el nombre del compañero y `senderTaskId` es su ID de tarea. Para un par entre sesiones como otro proceso local de Claude Code, `from` es la dirección del remitente y `senderTaskId` está ausente. `name` y `body` requieren Claude Code v2.1.205 o posterior. `name` es el nombre para mostrar del remitente, normalizado por Claude Code: elimina puntos de código de control, formato, sustituto, y separador de línea o párrafo Unicode, luego recorta el resultado y lo limita a 64 puntos de código con puntos suspensivos. `body` es el cuerpo del mensaje decodificado con la envoltura de par eliminada, byte exacto con lo que el modelo ve. Para un mensaje de compañero `body` siempre está presente; para un par entre sesiones está presente solo cuando el turno es exactamente una envoltura de par formada por Claude Code. Renderice `name` y `body` en lugar de volver a analizar el texto del mensaje. |

1486| `task-notification` | Turno sintético inyectado después de que finalizó una tarea de fondo. Consulte [`SDKTaskNotificationMessage`](#sdktasknotificationmessage). |1484| `task-notification` | Turno sintético inyectado después de que finalizó una tarea de fondo. Consulte [`SDKTaskNotificationMessage`](#sdktasknotificationmessage). |

1487| `coordinator` | Mensaje de un coordinador de equipo en un [equipo de agentes](/es/agent-teams). |1485| `coordinator` | Mensaje de un coordinador de equipo en un [equipo de agentes](/docs/es/agent-teams). |

1488| `auto-continuation` | Turno sintético inyectado cuando la sesión continúa sin entrada de usuario nueva, como un resultado de comando que activa un aviso de seguimiento. |1486| `auto-continuation` | Turno sintético inyectado cuando la sesión continúa sin entrada de usuario nueva, como un resultado de comando que activa un aviso de seguimiento. |

1489 1487 

1490<h2 id="hook-types">1488<h2 id="hook-types">

1491 Tipos de Hook1489 Tipos de Hook

1492</h2>1490</h2>

1493 1491 

1494Para una guía completa sobre el uso de hooks con ejemplos y patrones comunes, vea la [guía de Hooks](/es/agent-sdk/hooks).1492Para una guía completa sobre el uso de hooks con ejemplos y patrones comunes, vea la [guía de Hooks](/docs/es/agent-sdk/hooks).

1495 1493 

1496<h3 id="hookevent">1494<h3 id="hookevent">

1497 `HookEvent`1495 `HookEvent`


1600};1598};

1601```1599```

1602 1600 

1603El campo `prompt_id` es un UUID que identifica el mensaje del usuario que se está procesando actualmente. Coincide con el [atributo `prompt.id` en eventos de OpenTelemetry](/es/monitoring-usage#event-correlation-attributes) y está ausente hasta la primera entrada del usuario. Requiere Claude Code v2.1.196 o posterior.1601El campo `prompt_id` es un UUID que identifica el mensaje del usuario que se está procesando actualmente. Coincide con el [atributo `prompt.id` en eventos de OpenTelemetry](/docs/es/monitoring-usage#event-correlation-attributes) y está ausente hasta la primera entrada del usuario. Requiere Claude Code v2.1.196 o posterior.

1604 1602 

1605<h4 id="pretoolusehookinput">1603<h4 id="pretoolusehookinput">

1606 `PreToolUseHookInput`1604 `PreToolUseHookInput`


2071};2069};

2072```2070```

2073 2071 

2074Hace preguntas aclaratorias al usuario durante la ejecución. Vea [Manejar aprobaciones e entrada del usuario](/es/agent-sdk/user-input#handle-clarifying-questions) para detalles de uso.2072Hace preguntas aclaratorias al usuario durante la ejecución. Vea [Manejar aprobaciones e entrada del usuario](/docs/es/agent-sdk/user-input#handle-clarifying-questions) para detalles de uso.

2075 2073 

2076<h3 id="bash">2074<h3 id="bash">

2077 Bash2075 Bash


2110};2108};

2111```2109```

2112 2110 

2113Ejecuta una fuente de fondo y entrega cada evento a Claude para que pueda reaccionar sin sondeo: `command` ejecuta un script y emite un evento por línea de stdout, y `ws` abre un WebSocket y emite un evento por marco de texto. Proporcione exactamente uno de `command` o `ws`. {/* min-version: 2.1.195 */}La fuente `ws` requiere Claude Code v2.1.195 o posterior.2111Ejecuta una fuente de fondo y entrega cada evento a Claude para que pueda reaccionar sin sondeo: `command` ejecuta un script y emite un evento por línea de stdout, y `ws` abre un WebSocket y emite un evento por marco de texto. Proporcione exactamente uno de `command` o `ws`. La fuente `ws` requiere Claude Code v2.1.195 o posterior.

2114 2112 

2115Establezca `persistent: true` para vigilancias de duración de sesión como colas de registro. Cuando Monitor ejecuta un comando, sigue las mismas reglas de permiso que Bash; una vigilancia de WebSocket solicita aprobación por separado. Vea la [referencia de herramienta Monitor](/es/tools-reference#monitor-tool) para comportamiento y disponibilidad de proveedor.2113Establezca `persistent: true` para vigilancias de duración de sesión como colas de registro. Cuando Monitor ejecuta un comando, sigue las mismas reglas de permiso que Bash; una vigilancia de WebSocket solicita aprobación por separado. Vea la [referencia de herramienta Monitor](/docs/es/tools-reference#monitor-tool) para comportamiento y disponibilidad de proveedor.

2116 2114 

2117<h3 id="taskoutput">2115<h3 id="taskoutput">

2118 TaskOutput2116 TaskOutput


2234};2232};

2235```2233```

2236 2234 

2237Detiene una tarea de fondo en ejecución o shell por ID. {/* min-version: 2.1.198 */}A partir de v2.1.198, `task_id` también acepta un compañero de equipo de agentes o un agente de fondo nombrado por ID de agente o nombre.2235Detiene una tarea de fondo en ejecución o shell por ID. A partir de v2.1.198, `task_id` también acepta un compañero de equipo de agentes o un agente de fondo nombrado por ID de agente o nombre.

2238 2236 

2239<h3 id="notebookedit">2237<h3 id="notebookedit">

2240 NotebookEdit2238 NotebookEdit


2301};2299};

2302```2300```

2303 2301 

2304Ejecuta un [flujo de trabajo dinámico](/es/workflows): un script que orquesta muchos subagentes en segundo plano y devuelve un resultado consolidado. La herramienta `Workflow` está disponible en Agent SDK v0.3.149 y posterior. Se requiere al menos uno de `script`, `name` o `scriptPath`.2302Ejecuta un [flujo de trabajo dinámico](/docs/es/workflows): un script que orquesta muchos subagentes en segundo plano y devuelve un resultado consolidado. La herramienta `Workflow` está disponible en Agent SDK v0.3.149 y posterior. Se requiere al menos uno de `script`, `name` o `scriptPath`.

2305 2303 

2306| Campo | Tipo | Descripción |2304| Campo | Tipo | Descripción |

2307| ----------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |2305| ----------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |


2330Crea y gestiona una lista de tareas estructurada para rastrear el progreso.2328Crea y gestiona una lista de tareas estructurada para rastrear el progreso.

2331 2329 

2332<Note>2330<Note>

2333 A partir de TypeScript Agent SDK 0.3.142, `TodoWrite` está deshabilitado de forma predeterminada. Use `TaskCreate`, `TaskGet`, `TaskUpdate` y `TaskList` en su lugar. Vea [Migrar a herramientas Task](/es/agent-sdk/todo-tracking#migrate-to-task-tools) para actualizar su código de monitoreo, o establezca `CLAUDE_CODE_ENABLE_TASKS=0` para revertir a `TodoWrite`.2331 A partir de TypeScript Agent SDK 0.3.142, `TodoWrite` está deshabilitado de forma predeterminada. Use `TaskCreate`, `TaskGet`, `TaskUpdate` y `TaskList` en su lugar. Vea [Migrar a herramientas Task](/docs/es/agent-sdk/todo-tracking#migrate-to-task-tools) para actualizar su código de monitoreo, o establezca `CLAUDE_CODE_ENABLE_TASKS=0` para revertir a `TodoWrite`.

2334</Note>2332</Note>

2335 2333 

2336<h3 id="taskcreate">2334<h3 id="taskcreate">


2570 2568 

2571Devuelve el resultado del subagente. Discriminado en el campo `status`: `"completed"` para tareas terminadas, `"async_launched"` para tareas de fondo, y `"remote_launched"` para tareas que Claude Code envió a una sesión en la nube remota, donde `sessionUrl` vincula a esa sesión e `taskId` la identifica.2569Devuelve el resultado del subagente. Discriminado en el campo `status`: `"completed"` para tareas terminadas, `"async_launched"` para tareas de fondo, y `"remote_launched"` para tareas que Claude Code envió a una sesión en la nube remota, donde `sessionUrl` vincula a esa sesión e `taskId` la identifica.

2572 2570 

2573El campo `resolvedModel` en las variantes `completed` y `async_launched` nombra el modelo en el que el subagente realmente se ejecutó, que puede diferir del modelo `model` solicitado cuando [`availableModels`](/es/model-config#restrict-model-selection) u otra anulación se aplica. {/* min-version: 2.1.174 */}Este campo requiere Claude Code v2.1.174 o posterior.2571El campo `resolvedModel` en las variantes `completed` y `async_launched` nombra el modelo en el que el subagente realmente se ejecutó, que puede diferir del modelo `model` solicitado cuando [`availableModels`](/docs/es/model-config#restrict-model-selection) u otra anulación se aplica. Este campo requiere Claude Code v2.1.174 o posterior.

2574 2572 

2575En la variante `completed`, `worktreePath` se establece cuando el subagente se ejecutó en un worktree git aislado, y `worktreeBranch` nombra la rama de ese worktree cuando Claude Code la creó. `usage.service_tier` lleva la cadena de nivel de servicio que la API reportó para las solicitudes del subagente.2573En la variante `completed`, `worktreePath` se establece cuando el subagente se ejecutó en un worktree git aislado, y `worktreeBranch` nombra la rama de ese worktree cuando Claude Code la creó. `usage.service_tier` lleva la cadena de nivel de servicio que la API reportó para las solicitudes del subagente.

2576 2574 


2936Devuelve las listas de tareas anteriores y actualizadas.2934Devuelve las listas de tareas anteriores y actualizadas.

2937 2935 

2938<Note>2936<Note>

2939 A partir de TypeScript Agent SDK 0.3.142, `TodoWrite` está deshabilitado de forma predeterminada. Use `TaskCreate`, `TaskGet`, `TaskUpdate`, y `TaskList` en su lugar. Consulte [Migrar a herramientas de tareas](/es/agent-sdk/todo-tracking#migrate-to-task-tools) para actualizar su código de monitoreo, o establezca `CLAUDE_CODE_ENABLE_TASKS=0` para revertir a `TodoWrite`.2937 A partir de TypeScript Agent SDK 0.3.142, `TodoWrite` está deshabilitado de forma predeterminada. Use `TaskCreate`, `TaskGet`, `TaskUpdate`, y `TaskList` en su lugar. Consulte [Migrar a herramientas de tareas](/docs/es/agent-sdk/todo-tracking#migrate-to-task-tools) para actualizar su código de monitoreo, o establezca `CLAUDE_CODE_ENABLE_TASKS=0` para revertir a `TodoWrite`.

2940</Note>2938</Note>

2941 2939 

2942<h3 id="taskcreate-2">2940<h3 id="taskcreate-2">


3230```3228```

3231 3229 

3232| Campo | Tipo | Descripción |3230| Campo | Tipo | Descripción |

3233| :------------------------- | :----------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |3231| :------------------------- | :----------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

3234| `value` | `string` | Identificador de modelo para pasar en llamadas API |3232| `value` | `string` | Identificador de modelo para pasar en llamadas API |

3235| `resolvedModel` | `string \| undefined` | ID de modelo canónico que el `value` de esta entrada se resuelve a. Una entrada de alias como `sonnet` se resuelve a un ID de modelo explícito como `claude-sonnet-5`, por lo que un host puede coincidir un ID de modelo explícito almacenado contra la entrada de alias que lo cubre. {/* min-version: 2.1.197 */}Requiere Claude Code v2.1.197 o posterior. |3233| `resolvedModel` | `string \| undefined` | ID de modelo canónico que el `value` de esta entrada se resuelve a. Una entrada de alias como `sonnet` se resuelve a un ID de modelo explícito como `claude-sonnet-5`, por lo que un host puede coincidir un ID de modelo explícito almacenado contra la entrada de alias que lo cubre. Requiere Claude Code v2.1.197 o posterior. |

3236| `displayName` | `string` | Nombre de visualización legible para humanos |3234| `displayName` | `string` | Nombre de visualización legible para humanos |

3237| `description` | `string` | Descripción de las capacidades del modelo |3235| `description` | `string` | Descripción de las capacidades del modelo |

3238| `supportsEffort` | `boolean \| undefined` | Si este modelo admite niveles de esfuerzo |3236| `supportsEffort` | `boolean \| undefined` | Si este modelo admite niveles de esfuerzo |


3327 `ModelUsage`3325 `ModelUsage`

3328</h3>3326</h3>

3329 3327 

3330Estadísticas de uso por modelo devueltas en mensajes de resultado. El valor `costUSD` es una estimación del lado del cliente. Vea [Rastrear costo y uso](/es/agent-sdk/cost-tracking) para advertencias de facturación.3328Estadísticas de uso por modelo devueltas en mensajes de resultado. El valor `costUSD` es una estimación del lado del cliente. Vea [Rastrear costo y uso](/docs/es/agent-sdk/cost-tracking) para advertencias de facturación.

3331 3329 

3332```typescript theme={null}3330```typescript theme={null}

3333type ModelUsage = {3331type ModelUsage = {


3392 `CallToolResult`3390 `CallToolResult`

3393</h3>3391</h3>

3394 3392 

3395Tipo de resultado de herramienta MCP (desde `@modelcontextprotocol/sdk/types.js`). `structuredContent` es un objeto JSON que se puede devolver junto con `content`, incluyendo bloques de imagen. Vea [Devolver datos estructurados](/es/agent-sdk/custom-tools#return-structured-data).3393Tipo de resultado de herramienta MCP (desde `@modelcontextprotocol/sdk/types.js`). `structuredContent` es un objeto JSON que se puede devolver junto con `content`, incluyendo bloques de imagen. Vea [Devolver datos estructurados](/docs/es/agent-sdk/custom-tools#return-structured-data).

3396 3394 

3397```typescript theme={null}3395```typescript theme={null}

3398type CallToolResult = {3396type CallToolResult = {


3742 3740 

3743Nada se emite al inicio. Reinicie a un conjunto vacío siempre que el proceso CLI de la sesión comience o se reinicie y deje que el siguiente cambio de membresía lo repuele.3741Nada se emite al inicio. Reinicie a un conjunto vacío siempre que el proceso CLI de la sesión comience o se reinicie y deje que el siguiente cambio de membresía lo repuele.

3744 3742 

3745{/* min-version: 2.1.203 */}Requiere Claude Code v2.1.203 o posterior.3743Requiere Claude Code v2.1.203 o posterior.

3746 3744 

3747```typescript theme={null}3745```typescript theme={null}

3748type SDKBackgroundTasksChangedMessage = {3746type SDKBackgroundTasksChangedMessage = {


3762 `SDKThinkingTokensMessage`3760 `SDKThinkingTokensMessage`

3763</h3>3761</h3>

3764 3762 

3765Se emite mientras Claude está produciendo un bloque de pensamiento, incluyendo uno redactado, llevando una estimación en ejecución de los tokens de pensamiento generados hasta ahora. `estimated_tokens` es el total en ejecución para el bloque de pensamiento actual y `estimated_tokens_delta` es el incremento llevado por este fotograma. Úselo para visualización de progreso. El recuento final para el bucle de agente de nivel superior es el `usage.output_tokens` del mensaje de resultado, que [no incluye tokens de subagente](/es/agent-sdk/cost-tracking#get-the-total-cost-of-a-query); use [`modelUsage`](#modelusage) para contabilidad de árbol completo.3763Se emite mientras Claude está produciendo un bloque de pensamiento, incluyendo uno redactado, llevando una estimación en ejecución de los tokens de pensamiento generados hasta ahora. `estimated_tokens` es el total en ejecución para el bloque de pensamiento actual y `estimated_tokens_delta` es el incremento llevado por este fotograma. Úselo para visualización de progreso. El recuento final para el bucle de agente de nivel superior es el `usage.output_tokens` del mensaje de resultado, que [no incluye tokens de subagente](/docs/es/agent-sdk/cost-tracking#get-the-total-cost-of-a-query); use [`modelUsage`](#modelusage) para contabilidad de árbol completo.

3766 3764 

3767{/* min-version: 2.1.153 */}Requiere Claude Code v2.1.153 o posterior.3765Requiere Claude Code v2.1.153 o posterior.

3768 3766 

3769```typescript theme={null}3767```typescript theme={null}

3770type SDKThinkingTokensMessage = {3768type SDKThinkingTokensMessage = {


3817};3815};

3818```3816```

3819 3817 

3820{/* min-version: 2.1.181 */}Cuando `errorCode` es `"credits_required"`, el rechazo proviene de una suscripción de claude.ai cuyo uso incluido se ha agotado, y la sesión no puede continuar hasta que el usuario compre créditos de uso. `canUserPurchaseCredits` indica si el usuario autenticado puede comprar créditos para la cuenta, y `hasChargeableSavedPaymentMethod` indica si hay un método de pago guardado en el archivo. Los tres campos están ausentes en eventos de límite de velocidad que no son rechazos de créditos requeridos. Requiere Claude Code v2.1.181 o posterior.3818Cuando `errorCode` es `"credits_required"`, el rechazo proviene de una suscripción de claude.ai cuyo uso incluido se ha agotado, y la sesión no puede continuar hasta que el usuario compre créditos de uso. `canUserPurchaseCredits` indica si el usuario autenticado puede comprar créditos para la cuenta, y `hasChargeableSavedPaymentMethod` indica si hay un método de pago guardado en el archivo. Los tres campos están ausentes en eventos de límite de velocidad que no son rechazos de créditos requeridos. Requiere Claude Code v2.1.181 o posterior.

3821 3819 

3822<h3 id="sdklocalcommandoutputmessage">3820<h3 id="sdklocalcommandoutputmessage">

3823 `SDKLocalCommandOutputMessage`3821 `SDKLocalCommandOutputMessage`


3881};3879};

3882```3880```

3883 3881 

3884{/* min-version: 2.1.203 */}Las tipificaciones publicadas del SDK declaran `SDKConversationResetMessage` en Claude Code v2.1.203 y posterior. Antes de v2.1.203, `SDKMessage` hacía referencia al tipo sin declararlo, por lo que el estrechamiento en `type === "conversation_reset"` no pasaba la verificación de tipos cuando `skipLibCheck` estaba deshabilitado.3882Las tipificaciones publicadas del SDK declaran `SDKConversationResetMessage` en Claude Code v2.1.203 y posterior. Antes de v2.1.203, `SDKMessage` hacía referencia al tipo sin declararlo, por lo que el estrechamiento en `type === "conversation_reset"` no pasaba la verificación de tipos cuando `skipLibCheck` estaba deshabilitado.

3885 3883 

3886<h3 id="aborterror">3884<h3 id="aborterror">

3887 `AbortError`3885 `AbortError`


3932| `ripgrep` | `{ command: string; args?: string[] }` | `undefined` | Configuración de binario ripgrep personalizado para entornos sandbox |3930| `ripgrep` | `{ command: string; args?: string[] }` | `undefined` | Configuración de binario ripgrep personalizado para entornos sandbox |

3933 3931 

3934<Note>3932<Note>

3935 El sandbox depende de la compatibilidad de la plataforma y, en Linux, de herramientas como `bubblewrap` y `socat`. Cuando `enabled` es `true` y el sandbox no puede iniciarse, `query()` reporta un mensaje `result` con `subtype: "error_during_execution"` y la razón en `errors`. Para una única llamada a `query()`, el SDK lanza después de ceder ese resultado de error, así que envuelva el bucle en un bloque try para continuar más allá. Consulte [Manejar el resultado](/es/agent-sdk/agent-loop#handle-the-result) para el contrato de error.3933 El sandbox depende de la compatibilidad de la plataforma y, en Linux, de herramientas como `bubblewrap` y `socat`. Cuando `enabled` es `true` y el sandbox no puede iniciarse, `query()` reporta un mensaje `result` con `subtype: "error_during_execution"` y la razón en `errors`. Para una única llamada a `query()`, el SDK lanza después de ceder ese resultado de error, así que envuelva el bucle en un bloque try para continuar más allá. Consulte [Manejar el resultado](/docs/es/agent-sdk/agent-loop#handle-the-result) para el contrato de error.

3936 3934 

3937 Para ejecutar sin sandbox en su lugar, establezca `failIfUnavailable: false`.3935 Para ejecutar sin sandbox en su lugar, establezca `failIfUnavailable: false`.

3938</Note>3936</Note>


3974 `SandboxNetworkConfig`3972 `SandboxNetworkConfig`

3975</h3>3973</h3>

3976 3974 

3977Configuración específica de red para el modo sandbox. Estas configuraciones se aplican a comandos Bash en sandbox cuando `enabled` es `true` en la [`SandboxSettings`](#sandboxsettings) principal. No restringen la herramienta WebFetch, que utiliza [reglas de permisos](/es/permissions#webfetch) en su lugar.3975Configuración específica de red para el modo sandbox. Estas configuraciones se aplican a comandos Bash en sandbox cuando `enabled` es `true` en la [`SandboxSettings`](#sandboxsettings) principal. No restringen la herramienta WebFetch, que utiliza [reglas de permisos](/docs/es/permissions#webfetch) en su lugar.

3978 3976 

3979```typescript theme={null}3977```typescript theme={null}

3980type SandboxNetworkConfig = {3978type SandboxNetworkConfig = {


3993| :------------------------ | :--------- | :------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |3991| :------------------------ | :--------- | :------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

3994| `allowedDomains` | `string[]` | `[]` | Nombres de dominio a los que los procesos en sandbox pueden acceder |3992| `allowedDomains` | `string[]` | `[]` | Nombres de dominio a los que los procesos en sandbox pueden acceder |

3995| `deniedDomains` | `string[]` | `[]` | Nombres de dominio a los que los procesos en sandbox no pueden acceder. Tiene prioridad sobre `allowedDomains` |3993| `deniedDomains` | `string[]` | `[]` | Nombres de dominio a los que los procesos en sandbox no pueden acceder. Tiene prioridad sobre `allowedDomains` |

3996| `allowManagedDomainsOnly` | `boolean` | `false` | Solo configuración administrada. Cuando se establece en [configuración administrada](/es/permissions#managed-settings), solo se respetan las entradas `allowedDomains` de la configuración administrada y se ignoran las entradas de la configuración de usuario, proyecto o local. No tiene efecto cuando se establece a través de opciones de SDK |3994| `allowManagedDomainsOnly` | `boolean` | `false` | Solo configuración administrada. Cuando se establece en [configuración administrada](/docs/es/permissions#managed-settings), solo se respetan las entradas `allowedDomains` de la configuración administrada y se ignoran las entradas de la configuración de usuario, proyecto o local. No tiene efecto cuando se establece a través de opciones de SDK |

3997| `allowLocalBinding` | `boolean` | `false` | Permita que los procesos se vinculen a puertos locales (por ejemplo, para servidores de desarrollo) |3995| `allowLocalBinding` | `boolean` | `false` | Permita que los procesos se vinculen a puertos locales (por ejemplo, para servidores de desarrollo) |

3998| `allowUnixSockets` | `string[]` | `[]` | Rutas de socket Unix a las que los procesos pueden acceder (por ejemplo, socket de Docker) |3996| `allowUnixSockets` | `string[]` | `[]` | Rutas de socket Unix a las que los procesos pueden acceder (por ejemplo, socket de Docker) |

3999| `allowAllUnixSockets` | `boolean` | `false` | Permita el acceso a todos los sockets Unix |3997| `allowAllUnixSockets` | `boolean` | `false` | Permita el acceso a todos los sockets Unix |


4001| `socksProxyPort` | `number` | `undefined` | Puerto proxy SOCKS para solicitudes de red |3999| `socksProxyPort` | `number` | `undefined` | Puerto proxy SOCKS para solicitudes de red |

4002 4000 

4003<Note>4001<Note>

4004 El proxy de sandbox integrado aplica `allowedDomains` basándose en el nombre de host solicitado y no termina ni inspecciona el tráfico TLS, por lo que técnicas como [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) potencialmente pueden omitirlo. Consulte [Limitaciones de seguridad de sandboxing](/es/sandboxing#security-limitations) para obtener detalles y [Implementación segura](/es/agent-sdk/secure-deployment#traffic-forwarding) para configurar un proxy que termine TLS.4002 El proxy de sandbox integrado aplica `allowedDomains` basándose en el nombre de host solicitado y no termina ni inspecciona el tráfico TLS, por lo que técnicas como [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) potencialmente pueden omitirlo. Consulte [Limitaciones de seguridad de sandboxing](/docs/es/sandboxing#security-limitations) para obtener detalles y [Implementación segura](/docs/es/agent-sdk/secure-deployment#traffic-forwarding) para configurar un proxy que termine TLS.

4005</Note>4003</Note>

4006 4004 

4007<h3 id="sandboxfilesystemconfig">4005<h3 id="sandboxfilesystemconfig">


4079<Warning>4077<Warning>

4080 Los comandos que se ejecutan con `dangerouslyDisableSandbox: true` tienen acceso completo al sistema. Asegúrese de que su controlador `canUseTool` valide estas solicitudes cuidadosamente.4078 Los comandos que se ejecutan con `dangerouslyDisableSandbox: true` tienen acceso completo al sistema. Asegúrese de que su controlador `canUseTool` valide estas solicitudes cuidadosamente.

4081 4079 

4082 Si `permissionMode` se establece en `bypassPermissions` y `allowUnsandboxedCommands` está habilitado, el modelo puede ejecutar autónomamente comandos fuera del sandbox sin solicitudes de aprobación (una [regla `ask`](/es/agent-sdk/permissions#how-permissions-are-evaluated) explícita aún fuerza una). Esta combinación efectivamente permite que el modelo escape del aislamiento de sandbox silenciosamente.4080 Si `permissionMode` se establece en `bypassPermissions` y `allowUnsandboxedCommands` está habilitado, el modelo puede ejecutar autónomamente comandos fuera del sandbox sin solicitudes de aprobación (una [regla `ask`](/docs/es/agent-sdk/permissions#how-permissions-are-evaluated) explícita aún fuerza una). Esta combinación efectivamente permite que el modelo escape del aislamiento de sandbox silenciosamente.

4083</Warning>4081</Warning>

4084 4082 

4085<h2 id="see-also">4083<h2 id="see-also">

4086 Ver también4084 Ver también

4087</h2>4085</h2>

4088 4086 

4089* [Descripción general del SDK](/es/agent-sdk/overview) - Conceptos generales del SDK4087* [Descripción general del SDK](/docs/es/agent-sdk/overview) - Conceptos generales del SDK

4090* [Referencia del SDK de Python](/es/agent-sdk/python) - Documentación del SDK de Python4088* [Referencia del SDK de Python](/docs/es/agent-sdk/python) - Documentación del SDK de Python

4091* [Referencia de CLI](/es/cli-reference) - Interfaz de línea de comandos4089* [Referencia de CLI](/docs/es/cli-reference) - Interfaz de línea de comandos

4092* [Flujos de trabajo comunes](/es/common-workflows) - Guías paso a paso4090* [Flujos de trabajo comunes](/docs/es/common-workflows) - Guías paso a paso

Details

12 12 

13Para preguntas aclaratorias, Claude genera las preguntas y opciones. Su función es presentarlas a los usuarios y devolver sus selecciones. No puede agregar sus propias preguntas a este flujo; si necesita preguntarle algo a los usuarios usted mismo, hágalo por separado en la lógica de su aplicación.13Para preguntas aclaratorias, Claude genera las preguntas y opciones. Su función es presentarlas a los usuarios y devolver sus selecciones. No puede agregar sus propias preguntas a este flujo; si necesita preguntarle algo a los usuarios usted mismo, hágalo por separado en la lógica de su aplicación.

14 14 

15El callback puede permanecer pendiente indefinidamente. La ejecución permanece pausada hasta que su callback regrese, y el SDK solo cancela la espera cuando la consulta misma se cancela. Si un usuario podría tardar más en responder de lo que su proceso puede razonablemente mantenerse ejecutando, devuelva la [decisión del hook `defer`](/es/hooks#defer-a-tool-call-for-later), que permite que el proceso salga y se reanude más tarde desde la sesión persistida.15El callback puede permanecer pendiente indefinidamente. La ejecución permanece pausada hasta que su callback regrese, y el SDK solo cancela la espera cuando la consulta misma se cancela. Si un usuario podría tardar más en responder de lo que su proceso puede razonablemente mantenerse ejecutando, devuelva la [decisión del hook `defer`](/docs/es/hooks#defer-a-tool-call-for-later), que permite que el proceso salga y se reanude más tarde desde la sesión persistida.

16 16 

17Esta guía le muestra cómo detectar cada tipo de solicitud y responder apropiadamente.17Esta guía le muestra cómo detectar cada tipo de solicitud y responder apropiadamente.

18 18 


44 44 

45El callback se activa en dos casos:45El callback se activa en dos casos:

46 46 

471. **La herramienta necesita aprobación**: Claude quiere usar una herramienta que no está aprobada automáticamente por una [regla de permisos](/es/agent-sdk/permissions) o modo de permisos. Verifique `tool_name` para la herramienta (por ejemplo, `"Bash"`, `"Write"`).471. **La herramienta necesita aprobación**: Claude quiere usar una herramienta que no está aprobada automáticamente por una [regla de permisos](/docs/es/agent-sdk/permissions) o modo de permisos. Verifique `tool_name` para la herramienta (por ejemplo, `"Bash"`, `"Write"`).

482. **Claude hace una pregunta**: Claude llama a la herramienta `AskUserQuestion`. Verifique si `tool_name == "AskUserQuestion"` para manejarlo de manera diferente. Si especifica un array `tools`, incluya `AskUserQuestion` para que esto funcione. Vea [Manejar preguntas aclaratorias](#handle-clarifying-questions) para más detalles.482. **Claude hace una pregunta**: Claude llama a la herramienta `AskUserQuestion`. Verifique si `tool_name == "AskUserQuestion"` para manejarlo de manera diferente. Si especifica un array `tools`, incluya `AskUserQuestion` para que esto funcione. Vea [Manejar preguntas aclaratorias](#handle-clarifying-questions) para más detalles.

49 49 

50<Warning>50<Warning>

51 **El callback nunca se activa para herramientas aprobadas automáticamente.** Cualquier aprobación anterior en el [flujo de evaluación de permisos](/es/agent-sdk/permissions#how-permissions-are-evaluated), una regla de permiso o un modo como `acceptEdits` o `bypassPermissions`, resuelve la llamada antes de que se consulte `canUseTool`. Si enumera una herramienta directamente en `allowed_tools`, una verificación `canUseTool` para esa herramienta nunca se ejecuta a menos que una regla de pregunta o modo `plan` redirija la llamada de vuelta a un prompt. Para lógica que debe aplicarse a cada llamada de herramienta, use un [hook `PreToolUse`](/es/agent-sdk/hooks), que se ejecuta antes del resto del flujo y puede permitir, denegar o modificar solicitudes.51 **El callback nunca se activa para herramientas aprobadas automáticamente.** Cualquier aprobación anterior en el [flujo de evaluación de permisos](/docs/es/agent-sdk/permissions#how-permissions-are-evaluated), una regla de permiso o un modo como `acceptEdits` o `bypassPermissions`, resuelve la llamada antes de que se consulte `canUseTool`. Si enumera una herramienta directamente en `allowed_tools`, una verificación `canUseTool` para esa herramienta nunca se ejecuta a menos que una regla de pregunta o modo `plan` redirija la llamada de vuelta a un prompt. Para lógica que debe aplicarse a cada llamada de herramienta, use un [hook `PreToolUse`](/docs/es/agent-sdk/hooks), que se ejecuta antes del resto del flujo y puede permitir, denegar o modificar solicitudes.

52 52 

53 `AskUserQuestion`, herramientas MCP marcadas como [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool), y herramientas de conector [que su organización configuró como `ask`](/es/mcp#organization-controls-on-connector-tools) llegan al callback incluso cuando una regla de permiso coincide. En modo `dontAsk` estas llamadas se deniegan en su lugar, sin invocar el callback.53 `AskUserQuestion`, herramientas MCP marcadas como [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool), y herramientas de conector [que su organización configuró como `ask`](/docs/es/mcp#organization-controls-on-connector-tools) llegan al callback incluso cuando una regla de permiso coincide. En modo `dontAsk` estas llamadas se deniegan en su lugar, sin invocar el callback.

54</Warning>54</Warning>

55 55 

56También puede usar el [hook `PermissionRequest`](/es/agent-sdk/hooks#available-hooks) para enviar notificaciones externas (Slack, correo electrónico, push) cuando Claude está esperando aprobación.56También puede usar el [hook `PermissionRequest`](/docs/es/agent-sdk/hooks#available-hooks) para enviar notificaciones externas (Slack, correo electrónico, push) cuando Claude está esperando aprobación.

57 57 

58<h2 id="handle-tool-approval-requests">58<h2 id="handle-tool-approval-requests">

59 Manejar solicitudes de aprobación de herramientas59 Manejar solicitudes de aprobación de herramientas


65| ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |65| ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

66| `toolName` | El nombre de la herramienta que Claude quiere usar (por ejemplo, `"Bash"`, `"Write"`, `"Edit"`) |66| `toolName` | El nombre de la herramienta que Claude quiere usar (por ejemplo, `"Bash"`, `"Write"`, `"Edit"`) |

67| `input` | Los parámetros que Claude está pasando a la herramienta. El contenido varía según la herramienta. |67| `input` | Los parámetros que Claude está pasando a la herramienta. El contenido varía según la herramienta. |

68| `options` (TS) / `context` (Python) | Contexto adicional incluyendo `suggestions` opcional (entradas `PermissionUpdate` propuestas para evitar re-solicitar) y una señal de cancelación. En TypeScript, `signal` es un `AbortSignal`; en Python, el campo de señal está reservado para uso futuro. Vea [`ToolPermissionContext`](/es/agent-sdk/python#toolpermissioncontext) para Python. |68| `options` (TS) / `context` (Python) | Contexto adicional incluyendo `suggestions` opcional (entradas `PermissionUpdate` propuestas para evitar re-solicitar) y una señal de cancelación. En TypeScript, `signal` es un `AbortSignal`; en Python, el campo de señal está reservado para uso futuro. Vea [`ToolPermissionContext`](/docs/es/agent-sdk/python#toolpermissioncontext) para Python. |

69 69 

70El objeto `input` contiene parámetros específicos de la herramienta. Ejemplos comunes:70El objeto `input` contiene parámetros específicos de la herramienta. Ejemplos comunes:

71 71 


76| `Edit` | `file_path`, `old_string`, `new_string` |76| `Edit` | `file_path`, `old_string`, `new_string` |

77| `Read` | `file_path`, `offset`, `limit` |77| `Read` | `file_path`, `offset`, `limit` |

78 78 

79Vea la referencia del SDK para esquemas de entrada completos: [Python](/es/agent-sdk/python#tool-input%2Foutput-types) | [TypeScript](/es/agent-sdk/typescript#tool-input-types).79Vea la referencia del SDK para esquemas de entrada completos: [Python](/docs/es/agent-sdk/python#tool-input%2Foutput-types) | [TypeScript](/docs/es/agent-sdk/typescript#tool-input-types).

80 80 

81Puede mostrar esta información al usuario para que pueda decidir si permitir o rechazar la acción, luego devolver la respuesta apropiada.81Puede mostrar esta información al usuario para que pueda decidir si permitir o rechazar la acción, luego devolver la respuesta apropiada.

82 82 


200</CodeGroup>200</CodeGroup>

201 201 

202<Note>202<Note>

203 En Python, `can_use_tool` requiere [modo de flujo](/es/agent-sdk/streaming-vs-single-mode). Cuando pasa un flujo de mensajes finito a través de `query(prompt=generator)` o `ClaudeSDKClient.connect(prompt=async_iterable)`, el SDK cierra el flujo de entrada después del último mensaje, antes de que se pueda invocar el callback de permiso, a menos que un hook registrado o un servidor MCP en proceso lo mantenga abierto. El ejemplo anterior lo mantiene abierto con un hook `PreToolUse` que devuelve `{"continue_": True}`. Conectarse sin un aviso y enviar mensajes a través de `ClaudeSDKClient.query()` mantiene el flujo abierto por sí solo y no necesita ningún hook.203 En Python, `can_use_tool` requiere [modo de flujo](/docs/es/agent-sdk/streaming-vs-single-mode). Cuando pasa un flujo de mensajes finito a través de `query(prompt=generator)` o `ClaudeSDKClient.connect(prompt=async_iterable)`, el SDK cierra el flujo de entrada después del último mensaje, antes de que se pueda invocar el callback de permiso, a menos que un hook registrado o un servidor MCP en proceso lo mantenga abierto. El ejemplo anterior lo mantiene abierto con un hook `PreToolUse` que devuelve `{"continue_": True}`. Conectarse sin un aviso y enviar mensajes a través de `ClaudeSDKClient.query()` mantiene el flujo abierto por sí solo y no necesita ningún hook.

204</Note>204</Note>

205 205 

206Este ejemplo usa un flujo s/n donde cualquier entrada que no sea `y` se trata como una denegación. En la práctica, podría construir una interfaz de usuario más rica que permita a los usuarios modificar la solicitud, proporcionar retroalimentación o redirigir a Claude completamente. Vea [Responder a solicitudes de herramientas](#respond-to-tool-requests) para todas las formas en que puede responder.206Este ejemplo usa un flujo s/n donde cualquier entrada que no sea `y` se trata como una denegación. En la práctica, podría construir una interfaz de usuario más rica que permita a los usuarios modificar la solicitud, proporcionar retroalimentación o redirigir a Claude completamente. Vea [Responder a solicitudes de herramientas](#respond-to-tool-requests) para todas las formas en que puede responder.


216| **Permitir** | `PermissionResultAllow(updated_input=...)` | `{ behavior: "allow", updatedInput }` |216| **Permitir** | `PermissionResultAllow(updated_input=...)` | `{ behavior: "allow", updatedInput }` |

217| **Denegar** | `PermissionResultDeny(message=...)` | `{ behavior: "deny", message }` |217| **Denegar** | `PermissionResultDeny(message=...)` | `{ behavior: "deny", message }` |

218 218 

219Al permitir, la herramienta se ejecuta con la entrada que Claude solicitó a menos que devuelva una entrada modificada, `updatedInput` en TypeScript o `updated_input` en Python. {/* min-version: 2.1.207 */}Antes de v2.1.207, Claude Code rechazaba un resultado de permiso que omitía `updatedInput` y denegaba la llamada de herramienta con un error de validación.219Al permitir, la herramienta se ejecuta con la entrada que Claude solicitó a menos que devuelva una entrada modificada, `updatedInput` en TypeScript o `updated_input` en Python. Antes de v2.1.207, Claude Code rechazaba un resultado de permiso que omitía `updatedInput` y denegaba la llamada de herramienta con un error de validación.

220 220 

221Al denegar, proporcione un mensaje explicando por qué. Claude ve este mensaje y puede ajustar su enfoque.221Al denegar, proporcione un mensaje explicando por qué. Claude ve este mensaje y puede ajustar su enfoque.

222 222 


247* **Aprobar y recordar**: devolver una regla de permiso sugerida para que las llamadas coincidentes omitan el aviso la próxima vez247* **Aprobar y recordar**: devolver una regla de permiso sugerida para que las llamadas coincidentes omitan el aviso la próxima vez

248* **Rechazar**: bloquear la herramienta y decirle a Claude por qué248* **Rechazar**: bloquear la herramienta y decirle a Claude por qué

249* **Sugerir alternativa**: bloquear pero guiar a Claude hacia lo que el usuario quiere en su lugar249* **Sugerir alternativa**: bloquear pero guiar a Claude hacia lo que el usuario quiere en su lugar

250* **Redirigir completamente**: usar [entrada de flujo](/es/agent-sdk/streaming-vs-single-mode) para enviar a Claude una instrucción completamente nueva250* **Redirigir completamente**: usar [entrada de flujo](/docs/es/agent-sdk/streaming-vs-single-mode) para enviar a Claude una instrucción completamente nueva

251 251 

252<Tabs>252<Tabs>

253 <Tab title="Aprobar">253 <Tab title="Aprobar">


311 </Tab>311 </Tab>

312 312 

313 <Tab title="Aprobar y recordar">313 <Tab title="Aprobar y recordar">

314 El usuario aprueba y no quiere ser preguntado de nuevo para este tipo de llamada. El tercer argumento de callback lleva `suggestions`, una matriz de entradas [`PermissionUpdate`](/es/agent-sdk/typescript#permissionupdate) listas para usar. Devuelva una en `updatedPermissions` para aplicarla. Una sugerencia con el destino `localSettings` escribe la regla en `.claude/settings.local.json` para que futuras sesiones omitan el aviso para llamadas coincidentes.314 El usuario aprueba y no quiere ser preguntado de nuevo para este tipo de llamada. El tercer argumento de callback lleva `suggestions`, una matriz de entradas [`PermissionUpdate`](/docs/es/agent-sdk/typescript#permissionupdate) listas para usar. Devuelva una en `updatedPermissions` para aplicarla. Una sugerencia con el destino `localSettings` escribe la regla en `.claude/settings.local.json` para que futuras sesiones omitan el aviso para llamadas coincidentes.

315 315 

316 El ejemplo de Python requiere `claude-agent-sdk` 0.1.80 o posterior.316 El ejemplo de Python requiere `claude-agent-sdk` 0.1.80 o posterior.

317 317 


415 </Tab>415 </Tab>

416 416 

417 <Tab title="Redirigir completamente">417 <Tab title="Redirigir completamente">

418 Para un cambio de dirección completo (no solo un empujón), use [entrada de flujo](/es/agent-sdk/streaming-vs-single-mode) para enviar a Claude una nueva instrucción directamente. Esto evita la solicitud de herramienta actual y le da a Claude instrucciones completamente nuevas para seguir.418 Para un cambio de dirección completo (no solo un empujón), use [entrada de flujo](/docs/es/agent-sdk/streaming-vs-single-mode) para enviar a Claude una nueva instrucción directamente. Esto evita la solicitud de herramienta actual y le da a Claude instrucciones completamente nuevas para seguir.

419 </Tab>419 </Tab>

420</Tabs>420</Tabs>

421 421 


426Cuando Claude necesita más dirección en una tarea con múltiples enfoques válidos, llama a la herramienta `AskUserQuestion`. Esto activa su callback `canUseTool` con `toolName` establecido en `AskUserQuestion`. La entrada contiene las preguntas de Claude como opciones de opción múltiple, que muestra al usuario y devuelve sus selecciones.426Cuando Claude necesita más dirección en una tarea con múltiples enfoques válidos, llama a la herramienta `AskUserQuestion`. Esto activa su callback `canUseTool` con `toolName` establecido en `AskUserQuestion`. La entrada contiene las preguntas de Claude como opciones de opción múltiple, que muestra al usuario y devuelve sus selecciones.

427 427 

428<Tip>428<Tip>

429 Las preguntas aclaratorias son especialmente comunes en [`plan` mode](/es/agent-sdk/permissions#plan-mode-plan), donde Claude explora la base de código y hace preguntas antes de proponer un plan. Esto hace que el modo plan sea ideal para flujos de trabajo interactivos donde desea que Claude recopile requisitos antes de hacer cambios.429 Las preguntas aclaratorias son especialmente comunes en [`plan` mode](/docs/es/agent-sdk/permissions#plan-mode-plan), donde Claude explora la base de código y hace preguntas antes de proponer un plan. Esto hace que el modo plan sea ideal para flujos de trabajo interactivos donde desea que Claude recopile requisitos antes de hacer cambios.

430</Tip>430</Tip>

431 431 

432Los siguientes pasos muestran cómo manejar preguntas aclaratorias:432Los siguientes pasos muestran cómo manejar preguntas aclaratorias:


864 Entrada de flujo864 Entrada de flujo

865</h3>865</h3>

866 866 

867Use [entrada de flujo](/es/agent-sdk/streaming-vs-single-mode) cuando necesite:867Use [entrada de flujo](/docs/es/agent-sdk/streaming-vs-single-mode) cuando necesite:

868 868 

869* **Interrumpir el agente a mitad de tarea**: enviar una señal de cancelación o cambiar de dirección mientras Claude está trabajando869* **Interrumpir el agente a mitad de tarea**: enviar una señal de cancelación o cambiar de dirección mientras Claude está trabajando

870* **Proporcionar contexto adicional**: agregar información que Claude necesita sin esperar a que la solicite870* **Proporcionar contexto adicional**: agregar información que Claude necesita sin esperar a que la solicite


876 Herramientas personalizadas876 Herramientas personalizadas

877</h3>877</h3>

878 878 

879Use [herramientas personalizadas](/es/agent-sdk/custom-tools) cuando necesite:879Use [herramientas personalizadas](/docs/es/agent-sdk/custom-tools) cuando necesite:

880 880 

881* **Recopilar entrada estructurada**: construir formularios, asistentes o flujos de trabajo de varios pasos que vayan más allá del formato de opción múltiple de `AskUserQuestion`881* **Recopilar entrada estructurada**: construir formularios, asistentes o flujos de trabajo de varios pasos que vayan más allá del formato de opción múltiple de `AskUserQuestion`

882* **Integrar sistemas de aprobación externos**: conectarse a plataformas de tickets, flujo de trabajo o aprobación existentes882* **Integrar sistemas de aprobación externos**: conectarse a plataformas de tickets, flujo de trabajo o aprobación existentes


888 Recursos relacionados888 Recursos relacionados

889</h2>889</h2>

890 890 

891* [Configurar permisos](/es/agent-sdk/permissions): configurar modos y reglas de permisos891* [Configurar permisos](/docs/es/agent-sdk/permissions): configurar modos y reglas de permisos

892* [Controlar la ejecución con hooks](/es/agent-sdk/hooks): ejecutar código personalizado en puntos clave del ciclo de vida del agente892* [Controlar la ejecución con hooks](/docs/es/agent-sdk/hooks): ejecutar código personalizado en puntos clave del ciclo de vida del agente

893* [Referencia del SDK de TypeScript](/es/agent-sdk/typescript#canusetool): documentación completa de la API canUseTool893* [Referencia del SDK de TypeScript](/docs/es/agent-sdk/typescript#canusetool): documentación completa de la API canUseTool

agent-teams.md +30 −30

Details

7> Coordine múltiples instancias de Claude Code trabajando juntas como un equipo, con tareas compartidas, mensajería entre agentes y gestión centralizada.7> Coordine múltiples instancias de Claude Code trabajando juntas como un equipo, con tareas compartidas, mensajería entre agentes y gestión centralizada.

8 8 

9<Warning>9<Warning>

10 Los equipos de agentes son experimentales y están deshabilitados por defecto. Habilítelos agregando `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` a su [settings.json](/es/settings) o entorno. Sin esa variable, ningún equipo se configura al inicio de la sesión, no se escriben directorios de equipo, y Claude no genera ni propone compañeros de equipo. Los equipos de agentes tienen [limitaciones conocidas](#limitations) alrededor de la reanudación de sesiones, coordinación de tareas y comportamiento de apagado.10 Los equipos de agentes son experimentales y están deshabilitados por defecto. Habilítelos agregando `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` a su [settings.json](/docs/es/settings) o entorno. Sin esa variable, ningún equipo se configura al inicio de la sesión, no se escriben directorios de equipo, y Claude no genera ni propone compañeros de equipo. Los equipos de agentes tienen [limitaciones conocidas](#limitations) alrededor de la reanudación de sesiones, coordinación de tareas y comportamiento de apagado.

11</Warning>11</Warning>

12 12 

13Los equipos de agentes le permiten coordinar múltiples instancias de Claude Code trabajando juntas. Una sesión actúa como el líder del equipo, coordinando el trabajo, asignando tareas y sintetizando resultados. Los compañeros de equipo trabajan de forma independiente, cada uno en su propia ventana de contexto, y se comunican directamente entre sí.13Los equipos de agentes le permiten coordinar múltiples instancias de Claude Code trabajando juntas. Una sesión actúa como el líder del equipo, coordinando el trabajo, asignando tareas y sintetizando resultados. Los compañeros de equipo trabajan de forma independiente, cada uno en su propia ventana de contexto, y se comunican directamente entre sí.

14 14 

15A diferencia de los [subagents](/es/sub-agents), que se ejecutan dentro de una única sesión y solo pueden reportar al agente principal, también puede interactuar directamente con compañeros de equipo individuales sin pasar por el líder.15A diferencia de los [subagents](/docs/es/sub-agents), que se ejecutan dentro de una única sesión y solo pueden reportar al agente principal, también puede interactuar directamente con compañeros de equipo individuales sin pasar por el líder.

16 16 

17<Note>17<Note>

18 Esta página describe equipos de agentes a partir de v2.1.178. Con `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` configurado, generar un compañero de equipo ya no necesita un paso de configuración, y la limpieza ocurre automáticamente cuando la sesión sale. Antes de v2.1.178, usted le pedía a Claude que creara y nombrara un equipo primero, y Claude usaba las herramientas `TeamCreate` y `TeamDelete` para configurarlo y eliminarlo. Ambas herramientas ya no existen. La entrada `team_name` en la herramienta Agent se acepta pero se ignora, y el campo `team_name` en `TaskCreated`, `TaskCompleted`, y `TeammateIdle` [cargas útiles de hooks](/es/hooks#taskcreated) lleva el nombre derivado de la sesión y está deprecado.18 Esta página describe equipos de agentes a partir de v2.1.178. Con `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` configurado, generar un compañero de equipo ya no necesita un paso de configuración, y la limpieza ocurre automáticamente cuando la sesión sale. Antes de v2.1.178, usted le pedía a Claude que creara y nombrara un equipo primero, y Claude usaba las herramientas `TeamCreate` y `TeamDelete` para configurarlo y eliminarlo. Ambas herramientas ya no existen. La entrada `team_name` en la herramienta Agent se acepta pero se ignora, y el campo `team_name` en `TaskCreated`, `TaskCompleted`, y `TeammateIdle` [cargas útiles de hooks](/docs/es/hooks#taskcreated) lleva el nombre derivado de la sesión y está deprecado.

19</Note>19</Note>

20 20 

21<h2 id="when-to-use-agent-teams">21<h2 id="when-to-use-agent-teams">


29* **Depuración con hipótesis competidoras**: los compañeros de equipo prueban diferentes teorías en paralelo y convergen en la respuesta más rápidamente29* **Depuración con hipótesis competidoras**: los compañeros de equipo prueban diferentes teorías en paralelo y convergen en la respuesta más rápidamente

30* **Coordinación entre capas**: cambios que abarcan frontend, backend y pruebas, cada uno propiedad de un compañero de equipo diferente30* **Coordinación entre capas**: cambios que abarcan frontend, backend y pruebas, cada uno propiedad de un compañero de equipo diferente

31 31 

32Los equipos de agentes agregan sobrecarga de coordinación y usan significativamente más tokens que una única sesión. Funcionan mejor cuando los compañeros de equipo pueden operar de forma independiente. Para tareas secuenciales, ediciones del mismo archivo o trabajo con muchas dependencias, una única sesión o [subagents](/es/sub-agents) son más efectivos.32Los equipos de agentes agregan sobrecarga de coordinación y usan significativamente más tokens que una única sesión. Funcionan mejor cuando los compañeros de equipo pueden operar de forma independiente. Para tareas secuenciales, ediciones del mismo archivo o trabajo con muchas dependencias, una única sesión o [subagents](/docs/es/sub-agents) son más efectivos.

33 33 

34<h3 id="compare-with-subagents">34<h3 id="compare-with-subagents">

35 Comparar con subagents35 Comparar con subagents

36</h3>36</h3>

37 37 

38Tanto los equipos de agentes como los [subagents](/es/sub-agents) le permiten paralelizar el trabajo, pero operan de manera diferente. Elija según si sus trabajadores necesitan comunicarse entre sí:38Tanto los equipos de agentes como los [subagents](/docs/es/sub-agents) le permiten paralelizar el trabajo, pero operan de manera diferente. Elija según si sus trabajadores necesitan comunicarse entre sí:

39 39 

40<Frame caption="Los subagents solo reportan resultados al agente principal y nunca se hablan entre sí. En los equipos de agentes, los compañeros de equipo comparten una lista de tareas, reclaman trabajo y se comunican directamente entre sí.">40<Frame caption="Los subagents solo reportan resultados al agente principal y nunca se hablan entre sí. En los equipos de agentes, los compañeros de equipo comparten una lista de tareas, reclaman trabajo y se comunican directamente entre sí.">

41 <img src="https://mintcdn.com/claude-code/nsvRFSDNfpSU5nT7/images/subagents-vs-agent-teams-light.png?fit=max&auto=format&n=nsvRFSDNfpSU5nT7&q=85&s=2f8db9b4f3705dd3ab931fbe2d96e42a" className="dark:hidden" alt="Diagrama comparando arquitecturas de subagent y equipo de agentes. Los subagents son generados por el agente principal, hacen trabajo y reportan resultados. Los equipos de agentes se coordinan a través de una lista de tareas compartida, con compañeros de equipo comunicándose directamente entre sí." width="4245" height="1615" data-path="images/subagents-vs-agent-teams-light.png" />41 <img src="https://mintcdn.com/claude-code/nsvRFSDNfpSU5nT7/images/subagents-vs-agent-teams-light.png?fit=max&auto=format&n=nsvRFSDNfpSU5nT7&q=85&s=2f8db9b4f3705dd3ab931fbe2d96e42a" className="dark:hidden" alt="Diagrama comparando arquitecturas de subagent y equipo de agentes. Los subagents son generados por el agente principal, hacen trabajo y reportan resultados. Los equipos de agentes se coordinan a través de una lista de tareas compartida, con compañeros de equipo comunicándose directamente entre sí." width="4245" height="1615" data-path="images/subagents-vs-agent-teams-light.png" />


57 Habilitar equipos de agentes57 Habilitar equipos de agentes

58</h2>58</h2>

59 59 

60Los equipos de agentes están deshabilitados por defecto. Habilítelos configurando la variable de entorno `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` a `1`, ya sea en su entorno de shell o a través de [settings.json](/es/settings):60Los equipos de agentes están deshabilitados por defecto. Habilítelos configurando la variable de entorno `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` a `1`, ya sea en su entorno de shell o a través de [settings.json](/docs/es/settings):

61 61 

62```json settings.json theme={null}62```json settings.json theme={null}

63{63{


82al abogado del diablo.82al abogado del diablo.

83```83```

84 84 

85A partir de ahí, Claude completa una [lista de tareas compartida](/es/interactive-mode#task-list), genera compañeros de equipo para cada perspectiva, los hace explorar el problema, y sintetiza hallazgos cuando termina.85A partir de ahí, Claude completa una [lista de tareas compartida](/docs/es/interactive-mode#task-list), genera compañeros de equipo para cada perspectiva, los hace explorar el problema, y sintetiza hallazgos cuando termina.

86 86 

87El panel del agente del líder enumera los compañeros de equipo debajo de la entrada del indicador. Desde el panel:87El panel del agente del líder enumera los compañeros de equipo debajo de la entrada del indicador. Desde el panel:

88 88 


90* **Intro**: abrir la transcripción del compañero de equipo seleccionado y enviarle un mensaje directamente90* **Intro**: abrir la transcripción del compañero de equipo seleccionado y enviarle un mensaje directamente

91* **Escape**: interrumpir el turno actual del compañero de equipo seleccionado91* **Escape**: interrumpir el turno actual del compañero de equipo seleccionado

92 92 

93{/* min-version: 2.1.199 */}A partir de v2.1.199, la fila de un compañero de equipo inactivo permanece en el panel mientras cualquier compañero de equipo o subagente siga trabajando, por lo que puede seleccionarlo para revisar su transcripción o enviarle más trabajo. Una vez que cada agente en el panel está inactivo, las filas inactivas se ocultan después de 30 segundos y reaparecen en el siguiente turno del compañero de equipo; el compañero de equipo sigue ejecutándose y es direccionable mientras está oculto. En v2.1.181 a v2.1.198, una fila inactiva se ocultaba 30 segundos después de que su propio turno terminaba, incluso mientras otros compañeros de equipo seguían trabajando; las filas inactivas no se ocultan en versiones anteriores a v2.1.181.93A partir de v2.1.199, la fila de un compañero de equipo inactivo permanece en el panel mientras cualquier compañero de equipo o subagente siga trabajando, por lo que puede seleccionarlo para revisar su transcripción o enviarle más trabajo. Una vez que cada agente en el panel está inactivo, las filas inactivas se ocultan después de 30 segundos y reaparecen en el siguiente turno del compañero de equipo; el compañero de equipo sigue ejecutándose y es direccionable mientras está oculto. En v2.1.181 a v2.1.198, una fila inactiva se ocultaba 30 segundos después de que su propio turno terminaba, incluso mientras otros compañeros de equipo seguían trabajando; las filas inactivas no se ocultan en versiones anteriores a v2.1.181.

94 94 

95Cuando más de tres compañeros de equipo están inactivos a la vez, las filas más allá de las primeras tres se contraen en una sola fila que cuenta los compañeros de equipo contraídos, como `2 idle agents` cuando cinco están inactivos. Selecciónela y presione Intro para expandir las filas contraídas, o presione Esc para contraerlas de nuevo. Los compañeros de equipo que trabajan, los compañeros de equipo que fallaron, y el compañero de equipo que está viendo siempre mantienen sus propias filas.95Cuando más de tres compañeros de equipo están inactivos a la vez, las filas más allá de las primeras tres se contraen en una sola fila que cuenta los compañeros de equipo contraídos, como `2 idle agents` cuando cinco están inactivos. Selecciónela y presione Intro para expandir las filas contraídas, o presione Esc para contraerlas de nuevo. Los compañeros de equipo que trabajan, los compañeros de equipo que fallaron, y el compañero de equipo que está viendo siempre mantienen sus propias filas.

96 96 


117 117 

118El valor predeterminado es `"in-process"`. Antes de v2.1.179, el valor predeterminado era `"auto"`, por lo que las sesiones actualizadas que anteriormente abrían paneles divididos ahora permanecen en una terminal a menos que establezca el modo explícitamente. Configure `"auto"` para habilitar paneles divididos cuando ya esté ejecutándose dentro de una sesión tmux o su terminal sea iTerm2, retrocediendo a en proceso de lo contrario. La configuración `"tmux"` habilita el modo de panel dividido y detecta automáticamente si usar tmux o iTerm2 según su terminal.118El valor predeterminado es `"in-process"`. Antes de v2.1.179, el valor predeterminado era `"auto"`, por lo que las sesiones actualizadas que anteriormente abrían paneles divididos ahora permanecen en una terminal a menos que establezca el modo explícitamente. Configure `"auto"` para habilitar paneles divididos cuando ya esté ejecutándose dentro de una sesión tmux o su terminal sea iTerm2, retrocediendo a en proceso de lo contrario. La configuración `"tmux"` habilita el modo de panel dividido y detecta automáticamente si usar tmux o iTerm2 según su terminal.

119 119 

120{/* min-version: 2.1.186 */}A partir de v2.1.186, configure `"iterm2"` para usar explícitamente paneles divididos nativos de iTerm2. Este modo requiere la [CLI `it2`](https://github.com/mkusaka/it2) y muestra un error con el comando de instalación si falta `it2`. El indicador de configuración que ofrece instalar `it2` o cambiar a tmux aparece bajo `"auto"` o `"tmux"` cuando su terminal es iTerm2 y tmux está disponible como alternativa.120A partir de v2.1.186, configure `"iterm2"` para usar explícitamente paneles divididos nativos de iTerm2. Este modo requiere la [CLI `it2`](https://github.com/mkusaka/it2) y muestra un error con el comando de instalación si falta `it2`. El indicador de configuración que ofrece instalar `it2` o cambiar a tmux aparece bajo `"auto"` o `"tmux"` cuando su terminal es iTerm2 y tmux está disponible como alternativa.

121 121 

122Para anular el valor predeterminado, configure [`teammateMode`](/es/settings#available-settings) en `~/.claude/settings.json`:122Para anular el valor predeterminado, configure [`teammateMode`](/docs/es/settings#available-settings) en `~/.claude/settings.json`:

123 123 

124```json theme={null}124```json theme={null}

125{125{


151 151 

152Los compañeros de equipo no heredan la selección `/model` del líder de forma predeterminada. Para cambiar el modelo utilizado cuando el indicador no especifica uno, configure **Modelo de compañero de equipo predeterminado** en `/config`. Seleccione **Predeterminado (modelo del líder)** para que los compañeros de equipo sigan el modelo actual del líder.152Los compañeros de equipo no heredan la selección `/model` del líder de forma predeterminada. Para cambiar el modelo utilizado cuando el indicador no especifica uno, configure **Modelo de compañero de equipo predeterminado** en `/config`. Seleccione **Predeterminado (modelo del líder)** para que los compañeros de equipo sigan el modelo actual del líder.

153 153 

154{/* min-version: 2.1.186 */}Los compañeros de equipo heredan el [nivel de esfuerzo](/es/model-config#adjust-effort-level) del líder. En modo de panel dividido esto se aplica desde v2.1.186; las versiones anteriores no pasaban el esfuerzo de sesión del líder a los compañeros de equipo de panel dividido.154Los compañeros de equipo heredan el [nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) del líder. En modo de panel dividido esto se aplica desde v2.1.186; las versiones anteriores no pasaban el esfuerzo de sesión del líder a los compañeros de equipo de panel dividido.

155 155 

156<h3 id="require-plan-approval-for-teammates">156<h3 id="require-plan-approval-for-teammates">

157 Requerir aprobación de plan para compañeros de equipo157 Requerir aprobación de plan para compañeros de equipo


177* **Modo en proceso**: use las teclas de flecha arriba y abajo en el panel del agente para seleccionar un compañero de equipo, luego presione Intro para ver su sesión y escriba para enviarle un mensaje. Presione `x` en un compañero de equipo seleccionado para detenerlo. Presione Ctrl+T para alternar la lista de tareas.177* **Modo en proceso**: use las teclas de flecha arriba y abajo en el panel del agente para seleccionar un compañero de equipo, luego presione Intro para ver su sesión y escriba para enviarle un mensaje. Presione `x` en un compañero de equipo seleccionado para detenerlo. Presione Ctrl+T para alternar la lista de tareas.

178* **Modo de panel dividido**: haga clic en el panel de un compañero de equipo para interactuar directamente con su sesión. Cada compañero de equipo tiene una vista completa de su propio terminal.178* **Modo de panel dividido**: haga clic en el panel de un compañero de equipo para interactuar directamente con su sesión. Cada compañero de equipo tiene una vista completa de su propio terminal.

179 179 

180Mientras está viendo un compañero de equipo en proceso, el texto sin formato y las [skills](/es/skills) van a ese compañero de equipo, pero los comandos integrados aún se ejecutan en la sesión del líder.180Mientras está viendo un compañero de equipo en proceso, el texto sin formato y las [skills](/docs/es/skills) van a ese compañero de equipo, pero los comandos integrados aún se ejecutan en la sesión del líder.

181 181 

182El modelo y el modo rápido de un compañero de equipo se fijan cuando se genera, por lo que `/model` y `/fast` solo cambian la configuración del líder. {/* min-version: 2.1.199 */}A partir de v2.1.199, escribir cualquiera de estos comandos mientras se ve un compañero de equipo muestra un aviso de que el cambio se aplica al líder; las versiones anteriores lo aplicaban al líder sin indicación. `/effort` aún se aplica a los turnos posteriores del compañero de equipo visto, porque los compañeros de equipo siguen el [nivel de esfuerzo](/es/model-config#adjust-effort-level) del líder.182El modelo y el modo rápido de un compañero de equipo se fijan cuando se genera, por lo que `/model` y `/fast` solo cambian la configuración del líder. A partir de v2.1.199, escribir cualquiera de estos comandos mientras se ve un compañero de equipo muestra un aviso de que el cambio se aplica al líder; las versiones anteriores lo aplicaban al líder sin indicación. `/effort` aún se aplica a los turnos posteriores del compañero de equipo visto, porque los compañeros de equipo siguen el [nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) del líder.

183 183 

184<h3 id="assign-and-claim-tasks">184<h3 id="assign-and-claim-tasks">

185 Asignar y reclamar tareas185 Asignar y reclamar tareas


212 Aplicar puertas de calidad con hooks212 Aplicar puertas de calidad con hooks

213</h3>213</h3>

214 214 

215Use [hooks](/es/hooks) para aplicar reglas cuando los compañeros de equipo terminen el trabajo o las tareas se creen o completen:215Use [hooks](/docs/es/hooks) para aplicar reglas cuando los compañeros de equipo terminen el trabajo o las tareas se creen o completen:

216 216 

217* [`TeammateIdle`](/es/hooks#teammateidle): se ejecuta cuando un compañero de equipo está a punto de quedarse inactivo. Salga con código 2 para enviar retroalimentación y mantener al compañero de equipo trabajando.217* [`TeammateIdle`](/docs/es/hooks#teammateidle): se ejecuta cuando un compañero de equipo está a punto de quedarse inactivo. Salga con código 2 para enviar retroalimentación y mantener al compañero de equipo trabajando.

218* [`TaskCreated`](/es/hooks#taskcreated): se ejecuta cuando una tarea está siendo creada. Salga con código 2 para prevenir la creación y enviar retroalimentación.218* [`TaskCreated`](/docs/es/hooks#taskcreated): se ejecuta cuando una tarea está siendo creada. Salga con código 2 para prevenir la creación y enviar retroalimentación.

219* [`TaskCompleted`](/es/hooks#taskcompleted): se ejecuta cuando una tarea está siendo marcada como completada. Salga con código 2 para prevenir la finalización y enviar retroalimentación.219* [`TaskCompleted`](/docs/es/hooks#taskcompleted): se ejecuta cuando una tarea está siendo marcada como completada. Salga con código 2 para prevenir la finalización y enviar retroalimentación.

220 220 

221<h2 id="how-agent-teams-work">221<h2 id="how-agent-teams-work">

222 Cómo funcionan los equipos de agentes222 Cómo funcionan los equipos de agentes


259* **Configuración del equipo**: `~/.claude/teams/{team-name}/config.json`259* **Configuración del equipo**: `~/.claude/teams/{team-name}/config.json`

260* **Lista de tareas**: `~/.claude/tasks/{team-name}/`260* **Lista de tareas**: `~/.claude/tasks/{team-name}/`

261 261 

262Claude Code genera ambos automáticamente al inicio de la sesión y los actualiza a medida que los compañeros de equipo se unen, se quedan inactivos o se van. El directorio de configuración del equipo se elimina cuando la sesión termina. El directorio de lista de tareas persiste localmente y nunca se carga, por lo que las sesiones reanudadas mantienen sus tareas. La retención se rige por el mismo [`cleanupPeriodDays`](/es/settings#available-settings) que ya controla para transcripciones de sesión.262Claude Code genera ambos automáticamente al inicio de la sesión y los actualiza a medida que los compañeros de equipo se unen, se quedan inactivos o se van. El directorio de configuración del equipo se elimina cuando la sesión termina. El directorio de lista de tareas persiste localmente y nunca se carga, por lo que las sesiones reanudadas mantienen sus tareas. La retención se rige por el mismo [`cleanupPeriodDays`](/docs/es/settings#available-settings) que ya controla para transcripciones de sesión.

263 263 

264La configuración del equipo contiene estado de tiempo de ejecución como IDs de sesión e IDs de panel tmux, así que no la edite manualmente ni la pre-autorice: sus cambios se sobrescriben en la siguiente actualización de estado.264La configuración del equipo contiene estado de tiempo de ejecución como IDs de sesión e IDs de panel tmux, así que no la edite manualmente ni la pre-autorice: sus cambios se sobrescriben en la siguiente actualización de estado.

265 265 


273 Usar definiciones de subagents para compañeros de equipo273 Usar definiciones de subagents para compañeros de equipo

274</h3>274</h3>

275 275 

276Al generar un compañero de equipo, puede hacer referencia a un tipo de [subagent](/es/sub-agents) de cualquier [alcance de subagent](/es/sub-agents#choose-the-subagent-scope): proyecto, usuario, plugin o definido por CLI. Esto le permite definir un rol una vez, como un revisor de seguridad o ejecutor de pruebas, y reutilizarlo tanto como un subagent delegado como un compañero de equipo de equipo de agentes.276Al generar un compañero de equipo, puede hacer referencia a un tipo de [subagent](/docs/es/sub-agents) de cualquier [alcance de subagent](/docs/es/sub-agents#choose-the-subagent-scope): proyecto, usuario, plugin o definido por CLI. Esto le permite definir un rol una vez, como un revisor de seguridad o ejecutor de pruebas, y reutilizarlo tanto como un subagent delegado como un compañero de equipo de equipo de agentes.

277 277 

278Para usar una definición de subagent, mencione por nombre cuando le pida a Claude que genere el compañero de equipo:278Para usar una definición de subagent, mencione por nombre cuando le pida a Claude que genere el compañero de equipo:

279 279 


293 293 

294Los compañeros de equipo comienzan con la configuración de permisos del líder. Si el líder se ejecuta con `--dangerously-skip-permissions`, todos los compañeros de equipo también lo hacen. Después de generar, puede cambiar los modos de compañeros de equipo individuales, pero no puede establecer modos por compañero de equipo en el momento de la generación.294Los compañeros de equipo comienzan con la configuración de permisos del líder. Si el líder se ejecuta con `--dangerously-skip-permissions`, todos los compañeros de equipo también lo hacen. Después de generar, puede cambiar los modos de compañeros de equipo individuales, pero no puede establecer modos por compañero de equipo en el momento de la generación.

295 295 

296Cuando un agente envía un mensaje a otro a través de `SendMessage`, se le dice al agente receptor que provino de otra sesión de Claude, no de usted. Un compañero de equipo no puede aprobar una solicitud de permiso o proporcionar consentimiento en su nombre, y un compañero de equipo al que se le negó una acción no puede retransmitirla a otro compañero de equipo para eludir la verificación. En [modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode), el clasificador trata una afirmación de aprobación retransmitida desde otro agente como entrada no confiable en lugar de confirmación de usted.296Cuando un agente envía un mensaje a otro a través de `SendMessage`, se le dice al agente receptor que provino de otra sesión de Claude, no de usted. Un compañero de equipo no puede aprobar una solicitud de permiso o proporcionar consentimiento en su nombre, y un compañero de equipo al que se le negó una acción no puede retransmitirla a otro compañero de equipo para eludir la verificación. En [modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode), el clasificador trata una afirmación de aprobación retransmitida desde otro agente como entrada no confiable en lugar de confirmación de usted.

297 297 

298Las solicitudes de permiso de compañeros de equipo aparecen en la sesión del líder, así que apruébelas allí usted mismo. [Aprobación de plan](#require-plan-approval-for-teammates) es la excepción diseñada: la sesión del líder otorga aprobaciones de plan de compañeros de equipo sin una solicitud separada para usted.298Las solicitudes de permiso de compañeros de equipo aparecen en la sesión del líder, así que apruébelas allí usted mismo. [Aprobación de plan](#require-plan-approval-for-teammates) es la excepción diseñada: la sesión del líder otorga aprobaciones de plan de compañeros de equipo sin una solicitud separada para usted.

299 299 


306**Cómo los compañeros de equipo comparten información:**306**Cómo los compañeros de equipo comparten información:**

307 307 

308* **Entrega automática de mensajes**: cuando los compañeros de equipo envían mensajes, se entregan automáticamente a los destinatarios. El líder no necesita sondear actualizaciones.308* **Entrega automática de mensajes**: cuando los compañeros de equipo envían mensajes, se entregan automáticamente a los destinatarios. El líder no necesita sondear actualizaciones.

309* **Notificaciones de inactividad**: cuando un compañero de equipo termina y se detiene, notifica automáticamente al líder. {/* min-version: 2.1.198 */}A partir de v2.1.198, un compañero de equipo cuyo turno termina en un error de API notifica al líder que falló e incluye el texto del error, en lugar de parecer que termina normalmente.309* **Notificaciones de inactividad**: cuando un compañero de equipo termina y se detiene, notifica automáticamente al líder. A partir de v2.1.198, un compañero de equipo cuyo turno termina en un error de API notifica al líder que falló e incluye el texto del error, en lugar de parecer que termina normalmente.

310* **Lista de tareas compartida**: todos los agentes pueden ver el estado de la tarea y reclamar trabajo disponible.310* **Lista de tareas compartida**: todos los agentes pueden ver el estado de la tarea y reclamar trabajo disponible.

311* **Mensajería de compañeros de equipo**: enviar un mensaje a un compañero de equipo específico por nombre. Para llegar a todos, envíe un mensaje por destinatario.311* **Mensajería de compañeros de equipo**: enviar un mensaje a un compañero de equipo específico por nombre. Para llegar a todos, envíe un mensaje por destinatario.

312 312 


316 Uso de tokens316 Uso de tokens

317</h3>317</h3>

318 318 

319Los equipos de agentes usan significativamente más tokens que una única sesión. Cada compañero de equipo tiene su propia ventana de contexto, y el uso de tokens escala con el número de compañeros de equipo activos. Para investigación, revisión y trabajo de nuevas características, los tokens adicionales generalmente valen la pena. Para tareas rutinarias, una única sesión es más rentable. Vea [costos de tokens de equipos de agentes](/es/costs#agent-team-token-costs) para orientación de uso.319Los equipos de agentes usan significativamente más tokens que una única sesión. Cada compañero de equipo tiene su propia ventana de contexto, y el uso de tokens escala con el número de compañeros de equipo activos. Para investigación, revisión y trabajo de nuevas características, los tokens adicionales generalmente valen la pena. Para tareas rutinarias, una única sesión es más rentable. Vea [costos de tokens de equipos de agentes](/docs/es/costs#agent-team-token-costs) para orientación de uso.

320 320 

321<h2 id="use-case-examples">321<h2 id="use-case-examples">

322 Ejemplos de casos de uso322 Ejemplos de casos de uso


381 381 

382No hay límite duro en el número de compañeros de equipo, pero se aplican restricciones prácticas:382No hay límite duro en el número de compañeros de equipo, pero se aplican restricciones prácticas:

383 383 

384* **Los costos de tokens escalan linealmente**: cada compañero de equipo tiene su propia ventana de contexto y consume tokens independientemente. Vea [costos de tokens de equipos de agentes](/es/costs#agent-team-token-costs) para detalles.384* **Los costos de tokens escalan linealmente**: cada compañero de equipo tiene su propia ventana de contexto y consume tokens independientemente. Vea [costos de tokens de equipos de agentes](/docs/es/costs#agent-team-token-costs) para detalles.

385* **La sobrecarga de coordinación aumenta**: más compañeros de equipo significa más comunicación, coordinación de tareas y potencial para conflictos385* **La sobrecarga de coordinación aumenta**: más compañeros de equipo significa más comunicación, coordinación de tareas y potencial para conflictos

386* **Rendimientos decrecientes**: más allá de cierto punto, compañeros de equipo adicionales no aceleran el trabajo proporcionalmente386* **Rendimientos decrecientes**: más allá de cierto punto, compañeros de equipo adicionales no aceleran el trabajo proporcionalmente

387 387 

388Comience con 3-5 compañeros de equipo para la mayoría de flujos de trabajo. Esto equilibra el trabajo paralelo con coordinación manejable. Los ejemplos en esta guía usan 3-5 compañeros de equipo porque ese rango funciona bien en diferentes tipos de tareas.388Comience con 3-5 compañeros de equipo para la mayoría de flujos de trabajo. Esto equilibra el trabajo paralelo con coordinación manejable. Los ejemplos en esta guía usan 3-5 compañeros de equipo porque ese rango funciona bien en diferentes tipos de tareas.

389 389 

390Tener 5-6 [tareas](/es/agent-teams#architecture) por compañero de equipo mantiene a todos productivos sin cambio de contexto excesivo. Si tiene 15 tareas independientes, 3 compañeros de equipo es un buen punto de partida.390Tener 5-6 [tareas](/docs/es/agent-teams#architecture) por compañero de equipo mantiene a todos productivos sin cambio de contexto excesivo. Si tiene 15 tareas independientes, 3 compañeros de equipo es un buen punto de partida.

391 391 

392Escale solo cuando el trabajo genuinamente se beneficie de tener compañeros de equipo trabajando simultáneamente. Tres compañeros de equipo enfocados a menudo superan a cinco dispersos.392Escale solo cuando el trabajo genuinamente se beneficie de tener compañeros de equipo trabajando simultáneamente. Tres compañeros de equipo enfocados a menudo superan a cinco dispersos.

393 393 


454 Demasiados avisos de permisos454 Demasiados avisos de permisos

455</h3>455</h3>

456 456 

457Las solicitudes de permisos de compañeros de equipo suben al líder, lo que puede crear fricción. Pre-apruebe operaciones comunes en su [configuración de permisos](/es/permissions) antes de generar compañeros de equipo para reducir interrupciones.457Las solicitudes de permisos de compañeros de equipo suben al líder, lo que puede crear fricción. Pre-apruebe operaciones comunes en su [configuración de permisos](/docs/es/permissions) antes de generar compañeros de equipo para reducir interrupciones.

458 458 

459<h3 id="teammates-stopping-on-errors">459<h3 id="teammates-stopping-on-errors">

460 Los compañeros de equipo se detienen en errores460 Los compañeros de equipo se detienen en errores


465* Deles instrucciones adicionales directamente465* Deles instrucciones adicionales directamente

466* Genere un compañero de equipo de reemplazo para continuar el trabajo466* Genere un compañero de equipo de reemplazo para continuar el trabajo

467 467 

468{/* min-version: 2.1.198 */}A partir de v2.1.198, un mensaje del líder u otro compañero de equipo despierta a un compañero de equipo en proceso que está esperando reintentar una solicitud de API fallida, por lo que lo reintenta inmediatamente en lugar de esperar el retraso de reintento completo.468A partir de v2.1.198, un mensaje del líder u otro compañero de equipo despierta a un compañero de equipo en proceso que está esperando reintentar una solicitud de API fallida, por lo que lo reintenta inmediatamente en lugar de esperar el retraso de reintento completo.

469 469 

470<h3 id="lead-shuts-down-before-work-is-done">470<h3 id="lead-shuts-down-before-work-is-done">

471 El líder se apaga antes de que el trabajo esté hecho471 El líder se apaga antes de que el trabajo esté hecho


495* **El apagado puede ser lento**: los compañeros de equipo terminan su solicitud actual o llamada de herramienta antes de apagarse, lo que puede tomar tiempo.495* **El apagado puede ser lento**: los compañeros de equipo terminan su solicitud actual o llamada de herramienta antes de apagarse, lo que puede tomar tiempo.

496* **Un equipo por sesión**: una sesión tiene exactamente un equipo, limitado a esa sesión. No puede crear equipos nombrados adicionales ni compartir un equipo entre sesiones.496* **Un equipo por sesión**: una sesión tiene exactamente un equipo, limitado a esa sesión. No puede crear equipos nombrados adicionales ni compartir un equipo entre sesiones.

497* **Sin equipos anidados**: los compañeros de equipo no pueden generar sus propios compañeros de equipo. Solo el líder puede gestionar el equipo.497* **Sin equipos anidados**: los compañeros de equipo no pueden generar sus propios compañeros de equipo. Solo el líder puede gestionar el equipo.

498* **Sin subagentes de fondo de compañeros de equipo en proceso**: los propios subagentes de un compañero de equipo en proceso se ejecutan en primer plano. Solicitar uno de fondo, ya sea con `run_in_background` o una definición de subagente que establezca `background: true`, devuelve un error, porque el trabajo de fondo de un compañero de equipo no puede sobrevivir al proceso del líder. Los subagentes lanzados desde la conversación principal siguen el [valor predeterminado de fondo](/es/sub-agents#run-subagents-in-foreground-or-background).498* **Sin subagentes de fondo de compañeros de equipo en proceso**: los propios subagentes de un compañero de equipo en proceso se ejecutan en primer plano. Solicitar uno de fondo, ya sea con `run_in_background` o una definición de subagente que establezca `background: true`, devuelve un error, porque el trabajo de fondo de un compañero de equipo no puede sobrevivir al proceso del líder. Los subagentes lanzados desde la conversación principal siguen el [valor predeterminado de fondo](/docs/es/sub-agents#run-subagents-in-foreground-or-background).

499* **El líder es fijo**: la sesión principal es el líder de por vida. No puede promover un compañero de equipo a líder ni transferir liderazgo.499* **El líder es fijo**: la sesión principal es el líder de por vida. No puede promover un compañero de equipo a líder ni transferir liderazgo.

500* **Permisos establecidos en la generación**: todos los compañeros de equipo comienzan con el modo de permiso del líder. Puede cambiar modos de compañeros de equipo individuales después de generar, pero no puede establecer modos por compañero de equipo en el momento de la generación.500* **Permisos establecidos en la generación**: todos los compañeros de equipo comienzan con el modo de permiso del líder. Puede cambiar modos de compañeros de equipo individuales después de generar, pero no puede establecer modos por compañero de equipo en el momento de la generación.

501* **Los paneles divididos requieren tmux o iTerm2**: el modo en proceso predeterminado funciona en cualquier terminal. El modo de panel dividido no es compatible con la terminal integrada de VS Code, Windows Terminal o Ghostty.501* **Los paneles divididos requieren tmux o iTerm2**: el modo en proceso predeterminado funciona en cualquier terminal. El modo de panel dividido no es compatible con la terminal integrada de VS Code, Windows Terminal o Ghostty.


510 510 

511Explore enfoques relacionados para trabajo paralelo y delegación:511Explore enfoques relacionados para trabajo paralelo y delegación:

512 512 

513* **Delegación ligera**: [subagents](/es/sub-agents) generan agentes auxiliares para investigación o verificación dentro de su sesión, mejor para tareas que no necesitan coordinación entre agentes513* **Delegación ligera**: [subagents](/docs/es/sub-agents) generan agentes auxiliares para investigación o verificación dentro de su sesión, mejor para tareas que no necesitan coordinación entre agentes

514* **Sesiones paralelas manuales**: [Git worktrees](/es/worktrees) le permiten ejecutar múltiples sesiones de Claude Code usted mismo sin coordinación de equipo automatizada514* **Sesiones paralelas manuales**: [Git worktrees](/docs/es/worktrees) le permiten ejecutar múltiples sesiones de Claude Code usted mismo sin coordinación de equipo automatizada

515* **Comparar enfoques**: vea la comparación [subagent vs agent team](/es/features-overview#compare-similar-features) para un desglose lado a lado515* **Comparar enfoques**: vea la comparación [subagent vs agent team](/docs/es/features-overview#compare-similar-features) para un desglose lado a lado

agent-view.md +87 −87

Details

16 16 

17Cuando desee trabajar de forma más directa en la sesión de cualquier agente, conéctese a la fila para entrar en la conversación completa.17Cuando desee trabajar de forma más directa en la sesión de cualquier agente, conéctese a la fila para entrar en la conversación completa.

18 18 

19Para comparar la vista de agentes con subagentes, equipos de agentes y worktrees, consulte [Ejecutar agentes en paralelo](/es/agents).19Para comparar la vista de agentes con subagentes, equipos de agentes y worktrees, consulte [Ejecutar agentes en paralelo](/docs/es/agents).

20 20 

21<Note>21<Note>

22 La vista de agentes es una vista previa de investigación y requiere Claude Code v2.1.139 o posterior. Verifique su versión con `claude --version`. La interfaz y los atajos de teclado pueden cambiar a medida que la función evoluciona.22 La vista de agentes es una vista previa de investigación y requiere Claude Code v2.1.139 o posterior. Verifique su versión con `claude --version`. La interfaz y los atajos de teclado pueden cambiar a medida que la función evoluciona.


70 70 

71Puede usar `claude agents` como su punto de entrada principal en lugar de `claude`: distribuya cada tarea desde la vista de agentes, conéctese cuando desee la conversación completa, y presione `←` para volver a la tabla.71Puede usar `claude agents` como su punto de entrada principal en lugar de `claude`: distribuya cada tarea desde la vista de agentes, conéctese cuando desee la conversación completa, y presione `←` para volver a la tabla.

72 72 

73{/* min-version: 2.1.205 */}Dentro de una sesión regular de `claude`, la pista `←` del pie de página del mensaje cuenta los agentes en segundo plano que están esperando su entrada, como `← 2 agents`, y vuelve a `← for agents` cuando ninguno necesita entrada. Los conteos superiores a 99 se muestran como `99+`. El conteo se actualiza aproximadamente cada diez segundos mientras la terminal está enfocada e inmediatamente cuando el enfoque regresa. Cambia brevemente de color cuando se mueve y cuando un agente se completa, a menos que la configuración [`prefersReducedMotion`](/es/settings#available-settings) esté activada, y se oculta en [modo de lector de pantalla](/es/accessibility). En [Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry](/es/third-party-integrations), la pista permanece en su forma simple `← for agents` sin el conteo. Requiere Claude Code v2.1.205 o posterior.73Dentro de una sesión regular de `claude`, la pista `←` del pie de página del mensaje cuenta los agentes en segundo plano que están esperando su entrada, como `← 2 agents`, y vuelve a `← for agents` cuando ninguno necesita entrada. Los conteos superiores a 99 se muestran como `99+`. El conteo se actualiza aproximadamente cada diez segundos mientras la terminal está enfocada e inmediatamente cuando el enfoque regresa. Cambia brevemente de color cuando se mueve y cuando un agente se completa, a menos que la configuración [`prefersReducedMotion`](/docs/es/settings#available-settings) esté activada, y se oculta en [modo de lector de pantalla](/docs/es/accessibility). En [Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry](/docs/es/third-party-integrations), la pista permanece en su forma simple `← for agents` sin el conteo. Requiere Claude Code v2.1.205 o posterior.

74 74 

75<h2 id="monitor-sessions-with-agent-view">75<h2 id="monitor-sessions-with-agent-view">

76 Monitorear sesiones con la vista de agentes76 Monitorear sesiones con la vista de agentes


78 78 

79Ejecute `claude agents` para abrir la vista de agentes. Toma el control de la terminal completa y enumera cada sesión agrupada por estado, con sesiones fijadas y las que lo necesitan en la parte superior. Cada fila muestra el nombre de la sesión, la actividad actual y su antigüedad, contada desde cuándo se creó la sesión; la antigüedad de una sesión terminada se congela en cuánto tiempo tardó la ejecución.79Ejecute `claude agents` para abrir la vista de agentes. Toma el control de la terminal completa y enumera cada sesión agrupada por estado, con sesiones fijadas y las que lo necesitan en la parte superior. Cada fila muestra el nombre de la sesión, la actividad actual y su antigüedad, contada desde cuándo se creó la sesión; la antigüedad de una sesión terminada se congela en cuánto tiempo tardó la ejecución.

80 80 

81El nombre está teñido con el color establecido por [`/color`](/es/commands) en esa sesión. {/* min-version: 2.1.199 */}A partir de v2.1.199, el color se mantiene cuando [envía una sesión al segundo plano](#from-inside-a-session) con `←` o `/background`.81El nombre está teñido con el color establecido por [`/color`](/docs/es/commands) en esa sesión. A partir de v2.1.199, el color se mantiene cuando [envía una sesión al segundo plano](#from-inside-a-session) con `←` o `/background`.

82 82 

83De forma predeterminada, la lista muestra cada sesión en segundo plano que ha iniciado, en todos sus proyectos. Una sesión que trabaja en un repositorio y otra en un worktree diferente aparecen aquí, independientemente de qué directorio abrió la vista de agentes. Para limitar la lista a un proyecto, pase `--cwd`:83De forma predeterminada, la lista muestra cada sesión en segundo plano que ha iniciado, en todos sus proyectos. Una sesión que trabaja en un repositorio y otra en un worktree diferente aparecen aquí, independientemente de qué directorio abrió la vista de agentes. Para limitar la lista a un proyecto, pase `--cwd`:

84 84 


88 88 

89Esto muestra solo las sesiones iniciadas en ese directorio. Una sesión que se ha [movido a un worktree](#how-file-edits-are-isolated) bajo `~/projects/my-app/.claude/worktrees/` sigue contando como perteneciente a `~/projects/my-app`.89Esto muestra solo las sesiones iniciadas en ese directorio. Una sesión que se ha [movido a un worktree](#how-file-edits-are-isolated) bajo `~/projects/my-app/.claude/worktrees/` sigue contando como perteneciente a `~/projects/my-app`.

90 90 

91Las sesiones interactivas que tiene abiertas en otras terminales no aparecen hasta que las [envíe al segundo plano](#from-inside-a-session). Los [subagentes](/es/sub-agents) y [compañeros de equipo](/es/agent-teams) que una sesión genera no se enumeran como filas separadas.91Las sesiones interactivas que tiene abiertas en otras terminales no aparecen hasta que las [envíe al segundo plano](#from-inside-a-session). Los [subagentes](/docs/es/sub-agents) y [compañeros de equipo](/docs/es/agent-teams) que una sesión genera no se enumeran como filas separadas.

92 92 

93```text theme={null}93```text theme={null}

94Pinned94Pinned


131| :---------------- | :------------------------------------------------------------------------------------------------------------------------------------- |131| :---------------- | :------------------------------------------------------------------------------------------------------------------------------------- |

132| `✻` o `✽` animado | El proceso de la sesión está activo y responde inmediatamente |132| `✻` o `✽` animado | El proceso de la sesión está activo y responde inmediatamente |

133| `∙` | El proceso ha salido. Aún puede echar un vistazo, responder o conectarse, y Claude reinicia desde donde se quedó |133| `∙` | El proceso ha salido. Aún puede echar un vistazo, responder o conectarse, y Claude reinicia desde donde se quedó |

134| `✢` | Una sesión [`/loop`](/es/scheduled-tasks) durmiendo entre iteraciones. La fila muestra su recuento de ejecución y una cuenta regresiva |134| `✢` | Una sesión [`/loop`](/docs/es/scheduled-tasks) durmiendo entre iteraciones. La fila muestra su recuento de ejecución y una cuenta regresiva |

135 135 

136La etiqueta `#N` que puede aparecer en el borde derecho de una fila es la [solicitud de extracción que abrió la sesión](#pull-request-status), no parte del icono de estado.136La etiqueta `#N` que puede aparecer en el borde derecho de una fila es la [solicitud de extracción que abrió la sesión](#pull-request-status), no parte del icono de estado.

137 137 

138El título de la pestaña de terminal muestra el recuento de entrada pendiente mientras la vista de agentes está abierta: `2 awaiting input · claude agents` cuando las sesiones necesitan entrada, o `claude agents` cuando no lo hacen.138El título de la pestaña de terminal muestra el recuento de entrada pendiente mientras la vista de agentes está abierta: `2 awaiting input · claude agents` cuando las sesiones necesitan entrada, o `claude agents` cuando no lo hacen.

139 139 

140A partir de v2.1.198, mientras la vista de agentes está abierta, Claude Code también envía una notificación a través de su [canal de notificación de terminal](/es/terminal-config#get-a-terminal-bell-or-notification) configurado cuando una sesión en segundo plano local comienza a necesitar su entrada, se completa o falla. Las sesiones que se ejecutan según un cronograma, como sesiones [`/loop`](/es/scheduled-tasks), notifican solo cuando necesitan su entrada. Las notificaciones utilizan la misma configuración [`preferredNotifChannel`](/es/settings#available-settings) que el resto de Claude Code y activan el hook [`Notification`](/es/hooks#notification) con el tipo `agent_needs_input` o `agent_completed`.140A partir de v2.1.198, mientras la vista de agentes está abierta, Claude Code también envía una notificación a través de su [canal de notificación de terminal](/docs/es/terminal-config#get-a-terminal-bell-or-notification) configurado cuando una sesión en segundo plano local comienza a necesitar su entrada, se completa o falla. Las sesiones que se ejecutan según un cronograma, como sesiones [`/loop`](/docs/es/scheduled-tasks), notifican solo cuando necesitan su entrada. Las notificaciones utilizan la misma configuración [`preferredNotifChannel`](/docs/es/settings#available-settings) que el resto de Claude Code y activan el hook [`Notification`](/docs/es/hooks#notification) con el tipo `agent_needs_input` o `agent_completed`.

141 141 

142Las sesiones en segundo plano no necesitan ninguna terminal abierta para seguir funcionando. Un [proceso supervisor](#the-supervisor-process) separado las ejecuta, por lo que puede cerrar la vista de agentes, cerrar su shell o iniciar una nueva sesión interactiva y su trabajo distribuido sigue adelante.142Las sesiones en segundo plano no necesitan ninguna terminal abierta para seguir funcionando. Un [proceso supervisor](#the-supervisor-process) separado las ejecuta, por lo que puede cerrar la vista de agentes, cerrar su shell o iniciar una nueva sesión interactiva y su trabajo distribuido sigue adelante.

143 143 


149 Resúmenes de filas149 Resúmenes de filas

150</h3>150</h3>

151 151 

152El resumen de una línea en cada fila es generado por un [modelo de clase Haiku](/es/model-config) para que la fila pueda decirle qué está haciendo la sesión, qué necesita o qué produjo sin abrir la transcripción. Mientras una sesión está funcionando activamente, el texto de la fila se actualiza como máximo una vez cada 15 segundos desde la salida reciente de la sesión sin enviar una solicitud de modelo, y el modelo escribe un resumen nuevo cuando cada turno termina.152El resumen de una línea en cada fila es generado por un [modelo de clase Haiku](/docs/es/model-config) para que la fila pueda decirle qué está haciendo la sesión, qué necesita o qué produjo sin abrir la transcripción. Mientras una sesión está funcionando activamente, el texto de la fila se actualiza como máximo una vez cada 15 segundos desde la salida reciente de la sesión sin enviar una solicitud de modelo, y el modelo escribe un resumen nuevo cuando cada turno termina.

153 153 

154Una fila funcionando muestra lo que la sesión dice que está haciendo, y una fila bloqueada muestra la pregunta que está haciendo. Durante un turno largo, el modelo también reescribe el resumen aproximadamente una vez por minuto, esperando el doble después de cada reescritura hasta cuatro minutos, por lo que una fila ocupada no sigue mostrando un resumen desactualizado. Antes de v2.1.205, una fila funcionando podría mostrar una invocación de herramienta sin procesar en lugar de un informe, y una sesión que ejecuta elementos de trabajo paralelos mostraba un recuento `done/total` como `2/5` antes del texto.154Una fila funcionando muestra lo que la sesión dice que está haciendo, y una fila bloqueada muestra la pregunta que está haciendo. Durante un turno largo, el modelo también reescribe el resumen aproximadamente una vez por minuto, esperando el doble después de cada reescritura hasta cuatro minutos, por lo que una fila ocupada no sigue mostrando un resumen desactualizado. Antes de v2.1.205, una fila funcionando podría mostrar una invocación de herramienta sin procesar en lugar de un informe, y una sesión que ejecuta elementos de trabajo paralelos mostraba un recuento `done/total` como `2/5` antes del texto.

155 155 


157 157 

158Cuando la lista está [agrupada por directorio](#organize-the-list), el resumen se abre con el estado de la sesión como una palabra coloreada, como `Needs input · double jump or wall climb?`. En la agrupación de estado predeterminada, el encabezado del grupo ya nombra el estado, por lo que la fila muestra solo el resumen. Antes de v2.1.205, las filas agrupadas por directorio no llevaban palabra de estado.158Cuando la lista está [agrupada por directorio](#organize-the-list), el resumen se abre con el estado de la sesión como una palabra coloreada, como `Needs input · double jump or wall climb?`. En la agrupación de estado predeterminada, el encabezado del grupo ya nombra el estado, por lo que la fila muestra solo el resumen. Antes de v2.1.205, las filas agrupadas por directorio no llevaban palabra de estado.

159 159 

160Un turno cuya salida completa no contiene letras ni dígitos, como una sesión [`/loop`](/es/scheduled-tasks) que imprime un símbolo solitario en una iteración tranquila, mantiene el resumen y estado anterior de la fila. Antes de v2.1.205, ese turno fue reclasificado y podría voltear una sesión que estaba esperando su entrada de vuelta a `Working`.160Un turno cuya salida completa no contiene letras ni dígitos, como una sesión [`/loop`](/docs/es/scheduled-tasks) que imprime un símbolo solitario en una iteración tranquila, mantiene el resumen y estado anterior de la fila. Antes de v2.1.205, ese turno fue reclasificado y podría voltear una sesión que estaba esperando su entrada de vuelta a `Working`.

161 161 

162El resumen de fin de turno y cada reescritura a mitad de turno son una solicitud corta de clase Haiku a través de su proveedor normal, facturada y manejada bajo los mismos [términos de uso de datos](/es/data-usage) que la sesión misma. Las actualizaciones de 15 segundos entre reescrituras de modelo reutilizan la salida de la sesión y no envían una solicitud. En proveedores de terceros como Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y puertas de enlace personalizadas, la solicitud se revierte al modelo principal de la sesión cuando no hay ningún modelo Haiku configurado. Establezca [`ANTHROPIC_DEFAULT_HAIKU_MODEL`](/es/model-config#environment-variables) para elegir el modelo para estos resúmenes en esos proveedores.162El resumen de fin de turno y cada reescritura a mitad de turno son una solicitud corta de clase Haiku a través de su proveedor normal, facturada y manejada bajo los mismos [términos de uso de datos](/docs/es/data-usage) que la sesión misma. Las actualizaciones de 15 segundos entre reescrituras de modelo reutilizan la salida de la sesión y no envían una solicitud. En proveedores de terceros como Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y puertas de enlace personalizadas, la solicitud se revierte al modelo principal de la sesión cuando no hay ningún modelo Haiku configurado. Establezca [`ANTHROPIC_DEFAULT_HAIKU_MODEL`](/docs/es/model-config#environment-variables) para elegir el modelo para estos resúmenes en esos proveedores.

163 163 

164<h3 id="pull-request-status">164<h3 id="pull-request-status">

165 Estado de la solicitud de extracción165 Estado de la solicitud de extracción


204 204 

205Una respuesta que no se puede entregar, porque el servicio en segundo plano es inaccesible o el envío falla, se guarda y se envía a la sesión como su próximo mensaje cuando su proceso se inicia nuevamente, y el mensaje de error dice que la respuesta fue guardada. Una respuesta con prefijo `!` no se guarda, porque el texto guardado llegaría a la sesión como un mensaje simple en lugar de ejecutarse como un comando Bash.205Una respuesta que no se puede entregar, porque el servicio en segundo plano es inaccesible o el envío falla, se guarda y se envía a la sesión como su próximo mensaje cuando su proceso se inicia nuevamente, y el mensaje de error dice que la respuesta fue guardada. Una respuesta con prefijo `!` no se guarda, porque el texto guardado llegaría a la sesión como un mensaje simple en lugar de ejecutarse como un comando Bash.

206 206 

207Con [dictado de voz](/es/voice-dictation) habilitado, mantenga o toque su tecla de pulsar para hablar mientras la entrada de respuesta está enfocada para dictar una respuesta en lugar de escribirla. Lo mismo funciona en la entrada de distribución en la parte inferior de la vista de agentes.207Con [dictado de voz](/docs/es/voice-dictation) habilitado, mantenga o toque su tecla de pulsar para hablar mientras la entrada de respuesta está enfocada para dictar una respuesta en lugar de escribirla. Lo mismo funciona en la entrada de distribución en la parte inferior de la vista de agentes.

208 208 

209Use `↑` y `↓` para echar un vistazo a sesiones adyacentes sin cerrar el panel, o `→` para conectarse.209Use `↑` y `↓` para echar un vistazo a sesiones adyacentes sin cerrar el panel, o `→` para conectarse.

210 210 


214 214 

215Presione `Enter` o `→` en una fila seleccionada para conectarse. La vista de agentes es reemplazada por la sesión interactiva completa. Cuando se conecta, Claude publica un breve resumen de lo que sucedió mientras estaba fuera.215Presione `Enter` o `→` en una fila seleccionada para conectarse. La vista de agentes es reemplazada por la sesión interactiva completa. Cuando se conecta, Claude publica un breve resumen de lo que sucedió mientras estaba fuera.

216 216 

217Mientras está conectado, la sesión se comporta como cualquier otra sesión de Claude Code: [comandos](/es/commands), atajos de teclado y características funcionan todos, con las excepciones a continuación.217Mientras está conectado, la sesión se comporta como cualquier otra sesión de Claude Code: [comandos](/docs/es/commands), atajos de teclado y características funcionan todos, con las excepciones a continuación.

218 218 

219Una sesión en segundo plano rechaza `/install-github-app` y la lista de configuración [`/mcp`](/es/mcp), incluidas sus acciones de autenticación, ya sea que esté conectado o respondiendo desde el panel de vista previa. El mensaje lo dirige a una sesión `claude` regular, y `/mcp reconnect <server>`, `/mcp enable` y `/mcp disable` aún funcionan.219Una sesión en segundo plano rechaza `/install-github-app` y la lista de configuración [`/mcp`](/docs/es/mcp), incluidas sus acciones de autenticación, ya sea que esté conectado o respondiendo desde el panel de vista previa. El mensaje lo dirige a una sesión `claude` regular, y `/mcp reconnect <server>`, `/mcp enable` y `/mcp disable` aún funcionan.

220 220 

221Las sesiones conectadas siempre se renderizan en [modo de pantalla completa](/es/fullscreen), independientemente de su configuración `tui`, porque una sesión en segundo plano no tiene desplazamiento de terminal para agregar. Desplácese con `PgUp`, `PgDn` o la rueda del ratón, y presione `Ctrl+O` para el modo de transcripción. El desplazamiento nativo de su terminal y el modo de copia de tmux muestran solo la ventana gráfica actual, igual que cuando ejecuta cualquier aplicación de pantalla completa.221Las sesiones conectadas siempre se renderizan en [modo de pantalla completa](/docs/es/fullscreen), independientemente de su configuración `tui`, porque una sesión en segundo plano no tiene desplazamiento de terminal para agregar. Desplácese con `PgUp`, `PgDn` o la rueda del ratón, y presione `Ctrl+O` para el modo de transcripción. El desplazamiento nativo de su terminal y el modo de copia de tmux muestran solo la ventana gráfica actual, igual que cuando ejecuta cualquier aplicación de pantalla completa.

222 222 

223Presione `←` en un mensaje vacío, o ejecute `/exit`, para desconectarse y volver a la vista de agentes. A partir de v2.1.198, esto funciona de la misma manera si abrió la sesión desde la vista de agentes o con `claude attach <id>` desde su shell.223Presione `←` en un mensaje vacío, o ejecute `/exit`, para desconectarse y volver a la vista de agentes. A partir de v2.1.198, esto funciona de la misma manera si abrió la sesión desde la vista de agentes o con `claude attach <id>` desde su shell.

224 224 


232 232 

233Si una herramienta se está ejecutando cuando presiona `←`, Claude Code espera hasta aproximadamente diez segundos para que termine antes de enviar al segundo plano, y la respuesta continúa en la sesión en segundo plano. Presione `←` nuevamente para enviar al segundo plano inmediatamente en lugar de esperar. Cuando el trabajo en vuelo no puede trasladarse a la sesión en segundo plano, aparece primero el diálogo `Background this session?`, igual que con [`/background`](#from-inside-a-session).233Si una herramienta se está ejecutando cuando presiona `←`, Claude Code espera hasta aproximadamente diez segundos para que termine antes de enviar al segundo plano, y la respuesta continúa en la sesión en segundo plano. Presione `←` nuevamente para enviar al segundo plano inmediatamente en lugar de esperar. Cuando el trabajo en vuelo no puede trasladarse a la sesión en segundo plano, aparece primero el diálogo `Background this session?`, igual que con [`/background`](#from-inside-a-session).

234 234 

235El límite de diez segundos no se aplica mientras [subagentes](/es/sub-agents) están en ejecución. Claude Code sigue esperando para que su trabajo se traslade, y muestra un aviso `Still backgrounding after the current tool` mientras espera; presione `←` nuevamente para enviar al segundo plano sin esperar, lo que reinicia los subagentes desde el principio. Antes de v2.1.203, la espera terminaba después de diez segundos y los subagentes en ejecución se reiniciaban desde el principio sin advertencia.235El límite de diez segundos no se aplica mientras [subagentes](/docs/es/sub-agents) están en ejecución. Claude Code sigue esperando para que su trabajo se traslade, y muestra un aviso `Still backgrounding after the current tool` mientras espera; presione `←` nuevamente para enviar al segundo plano sin esperar, lo que reinicia los subagentes desde el principio. Antes de v2.1.203, la espera terminaba después de diez segundos y los subagentes en ejecución se reiniciaban desde el principio sin advertencia.

236 236 

237La fila se crea incluso desde una sesión nueva sin historial de conversación, por lo que `→` vuelve a ella. {/* max-version: 2.1.202 */}Antes de v2.1.203, la vista de agentes mostraba una sugerencia de incorporación debajo de esa fila cuando era la única.237La fila se crea incluso desde una sesión nueva sin historial de conversación, por lo que `→` vuelve a ella. Antes de v2.1.203, la vista de agentes mostraba una sugerencia de incorporación debajo de esa fila cuando era la única.

238 238 

239Puede desactivar este atajo con la configuración `leftArrowOpensAgents` en `/config`.239Puede desactivar este atajo con la configuración `leftArrowOpensAgents` en `/config`.

240 240 


313 313 

314Escriba un mensaje en la entrada en la parte inferior de la vista de agentes y presione `Enter` para iniciar una nueva sesión en segundo plano. La sesión se nombra automáticamente a partir del mensaje; renómbrela más tarde con `Ctrl+R`.314Escriba un mensaje en la entrada en la parte inferior de la vista de agentes y presione `Enter` para iniciar una nueva sesión en segundo plano. La sesión se nombra automáticamente a partir del mensaje; renómbrela más tarde con `Ctrl+R`.

315 315 

316Un nombre que la sesión obtiene más tarde también aparece en su fila, incluido el nombre que Claude deriva cuando [acepta un plan](/es/permission-modes#review-and-approve-a-plan) en esa sesión. Antes de v2.1.207, una sesión en segundo plano nombrada al aceptar un plan mostraba ese nombre en `/status` pero no en su fila de vista de agentes hasta que la renombraba usted mismo.316Un nombre que la sesión obtiene más tarde también aparece en su fila, incluido el nombre que Claude deriva cuando [acepta un plan](/docs/es/permission-modes#review-and-approve-a-plan) en esa sesión. Antes de v2.1.207, una sesión en segundo plano nombrada al aceptar un plan mostraba ese nombre en `/status` pero no en su fila de vista de agentes hasta que la renombraba usted mismo.

317 317 

318Pegue una imagen en el mensaje para incluir una captura de pantalla o diagrama con la tarea.318Pegue una imagen en el mensaje para incluir una captura de pantalla o diagrama con la tarea.

319 319 

320El texto pegado más largo que 800 caracteres o más de dos líneas se contrae a un marcador de posición `[Pasted text #N]` para que la entrada permanezca en una línea; el texto completo se envía cuando distribuye. {/* min-version: 2.1.207 */}Para revisar o editar el texto contraído antes de distribuir, pegue el mismo texto nuevamente y el marcador de posición se expande nuevamente en la entrada. Un recordatorio `paste again to expand` aparece debajo de la entrada durante unos segundos después del pegado en terminales de al menos 90 columnas de ancho. Antes de v2.1.207, pegar el mismo texto nuevamente agregaba un segundo marcador de posición en lugar de expandir el primero.320El texto pegado más largo que 800 caracteres o más de dos líneas se contrae a un marcador de posición `[Pasted text #N]` para que la entrada permanezca en una línea; el texto completo se envía cuando distribuye. Para revisar o editar el texto contraído antes de distribuir, pegue el mismo texto nuevamente y el marcador de posición se expande nuevamente en la entrada. Un recordatorio `paste again to expand` aparece debajo de la entrada durante unos segundos después del pegado en terminales de al menos 90 columnas de ancho. Antes de v2.1.207, pegar el mismo texto nuevamente agregaba un segundo marcador de posición en lugar de expandir el primero.

321 321 

322Prefije o mencione partes del mensaje para controlar cómo comienza la sesión:322Prefije o mencione partes del mensaje para controlar cómo comienza la sesión:

323 323 

324| Entrada | Efecto |324| Entrada | Efecto |

325| :----------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |325| :----------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

326| `<agent-name> <prompt>` | Si la primera palabra coincide con un nombre de [subagente](/es/sub-agents) personalizado, ese subagente se ejecuta como el agente principal de la sesión con la configuración de su frontmatter |326| `<agent-name> <prompt>` | Si la primera palabra coincide con un nombre de [subagente](/docs/es/sub-agents) personalizado, ese subagente se ejecuta como el agente principal de la sesión con la configuración de su frontmatter |

327| `@<agent-name>` | Mencione un subagente personalizado en cualquier lugar del mensaje para ejecutarlo como el agente principal |327| `@<agent-name>` | Mencione un subagente personalizado en cualquier lugar del mensaje para ejecutarlo como el agente principal |

328| `@<repo>` | Mencione un repositorio para ejecutar la sesión allí. Consulte [Distribuir a un directorio específico](#dispatch-to-a-specific-directory) para ver qué repositorios se enumeran |328| `@<repo>` | Mencione un repositorio para ejecutar la sesión allí. Consulte [Distribuir a un directorio específico](#dispatch-to-a-specific-directory) para ver qué repositorios se enumeran |

329| `/<command>` | Sugiera [skills](/es/skills) y [commands](/es/commands) para distribuir como el mensaje |329| `/<command>` | Sugiera [skills](/docs/es/skills) y [commands](/docs/es/commands) para distribuir como el mensaje |

330| `! <command>` | Ejecute un comando de shell como un trabajo en segundo plano en lugar de iniciar una sesión de Claude. El trabajo aparece como una fila a la que puede conectarse, observar y desconectarse |330| `! <command>` | Ejecute un comando de shell como un trabajo en segundo plano en lugar de iniciar una sesión de Claude. El trabajo aparece como una fila a la que puede conectarse, observar y desconectarse |

331| `#<number>` o una URL de solicitud de extracción | Si una sesión ya está trabajando en ese PR, selecciónela en lugar de distribuir |331| `#<number>` o una URL de solicitud de extracción | Si una sesión ya está trabajando en ese PR, selecciónela en lugar de distribuir |

332| `Shift+Enter` | Distribuya e inmediatamente conéctese a la nueva sesión |332| `Shift+Enter` | Distribuya e inmediatamente conéctese a la nueva sesión |


336* `/exit` y `/quit` cierran la vista de agentes336* `/exit` y `/quit` cierran la vista de agentes

337* `/logout` cierra su sesión337* `/logout` cierra su sesión

338* `/model` establece el [modelo de distribución](#set-the-model)338* `/model` establece el [modelo de distribución](#set-the-model)

339* {/* min-version: 2.1.198 */}A partir de v2.1.198, `/login` abre el diálogo de inicio de sesión para que pueda iniciar sesión nuevamente sin conectarse a una sesión339* A partir de v2.1.198, `/login` abre el diálogo de inicio de sesión para que pueda iniciar sesión nuevamente sin conectarse a una sesión

340 340 

341Skills, sus propios comandos y built-ins que expanden prompts como `/init` se envían a una nueva sesión en segundo plano como su primer mensaje. Otros comandos built-in muestran una sugerencia `attach to a session to run it` en su lugar. {/* min-version: 2.1.203 */}Todo lo que escribió permanece en la entrada junto a la sugerencia para que pueda editarlo. Antes de v2.1.203, la sugerencia borraba la entrada y el texto escrito se perdía.341Skills, sus propios comandos y built-ins que expanden prompts como `/init` se envían a una nueva sesión en segundo plano como su primer mensaje. Otros comandos built-in muestran una sugerencia `attach to a session to run it` en su lugar. Todo lo que escribió permanece en la entrada junto a la sugerencia para que pueda editarlo. Antes de v2.1.203, la sugerencia borraba la entrada y el texto escrito se perdía.

342 342 

343Empaquetar una tarea recurrente como un [skill](/es/skills) le permite iniciar el mismo flujo de trabajo desde la vista de agentes repetidamente sin reescribir el mensaje.343Empaquetar una tarea recurrente como un [skill](/docs/es/skills) le permite iniciar el mismo flujo de trabajo desde la vista de agentes repetidamente sin reescribir el mensaje.

344 344 

345Cuando el mismo `@name` coincide tanto con un subagente como con un repositorio hermano, el subagente tiene prioridad. La coincidencia de primera palabra sin `@` también se aplica, por lo que un mensaje que comienza con uno de sus nombres de subagente distribuye ese subagente en lugar de tratar la palabra como texto plano. Use la forma `@` cuando desee ser explícito, o comience el mensaje con una palabra diferente para evitar la coincidencia.345Cuando el mismo `@name` coincide tanto con un subagente como con un repositorio hermano, el subagente tiene prioridad. La coincidencia de primera palabra sin `@` también se aplica, por lo que un mensaje que comienza con uno de sus nombres de subagente distribuye ese subagente en lugar de tratar la palabra como texto plano. Use la forma `@` cuando desee ser explícito, o comience el mensaje con una palabra diferente para evitar la coincidencia.

346 346 


354* Abra `claude agents` en un directorio padre y mencione un repositorio hijo con `@<repo>` en el mensaje. Escribir `@` enumera estos objetivos:354* Abra `claude agents` en un directorio padre y mencione un repositorio hijo con `@<repo>` en el mensaje. Escribir `@` enumera estos objetivos:

355 355 

356 * Repositorios Git un nivel por debajo del directorio de lanzamiento356 * Repositorios Git un nivel por debajo del directorio de lanzamiento

357 * Los [git worktrees](/es/worktrees) registrados del repositorio desde el que se lanzó que viven dentro de su árbol de directorios, como los que Claude crea bajo `.claude/worktrees/`, etiquetados con su rama extraída. Los worktrees agregados fuera del repositorio, como con `git worktree add ../feature`, no se enumeran357 * Los [git worktrees](/docs/es/worktrees) registrados del repositorio desde el que se lanzó que viven dentro de su árbol de directorios, como los que Claude crea bajo `.claude/worktrees/`, etiquetados con su rama extraída. Los worktrees agregados fuera del repositorio, como con `git worktree add ../feature`, no se enumeran

358 * Cualquier directorio que ya tenga una sesión en la lista358 * Cualquier directorio que ya tenga una sesión en la lista

359 359 

360 Un directorio cuyo nombre contiene un espacio no se enumera. {/* min-version: 2.1.203 */}Antes de v2.1.203, los worktrees registrados no se enumeraban, por lo que distribuir en uno significaba ejecutar `claude --bg` desde el directorio de ese worktree.360 Un directorio cuyo nombre contiene un espacio no se enumera. Antes de v2.1.203, los worktrees registrados no se enumeraban, por lo que distribuir en uno significaba ejecutar `claude --bg` desde el directorio de ese worktree.

361* Desde el shell, `cd` al directorio y ejecute `claude --bg "<prompt>"`.361* Desde el shell, `cd` al directorio y ejecute `claude --bg "<prompt>"`.

362 362 

363Cuando la vista de agentes se agrupa por directorio, el directorio de la fila resaltada se convierte en el objetivo de distribución, por lo que puede desplazarse a un grupo y distribuir en él sin reescribir la ruta.363Cuando la vista de agentes se agrupa por directorio, el directorio de la fila resaltada se convierte en el objetivo de distribución, por lo que puede desplazarse a un grupo y distribuir en él sin reescribir la ruta.


368 368 

369Ejecute `/background` o su alias `/bg` para mover la conversación actual a una sesión en segundo plano. Pase un mensaje como `/bg run the test suite and fix any failures` para dar una instrucción más primero. Si Claude está respondiendo cuando ejecuta `/bg`, la respuesta continúa en la sesión en segundo plano.369Ejecute `/background` o su alias `/bg` para mover la conversación actual a una sesión en segundo plano. Pase un mensaje como `/bg run the test suite and fix any failures` para dar una instrucción más primero. Si Claude está respondiendo cuando ejecuta `/bg`, la respuesta continúa en la sesión en segundo plano.

370 370 

371Salir de una sesión interactiva que aún tiene trabajo en segundo plano en ejecución, como subagentes, comandos de shell en segundo plano, flujos de trabajo o [monitores](/es/tools-reference#monitor-tool), muestra un diálogo `Background work is running` en lugar de salir inmediatamente. {/* min-version: 2.1.198 */}A partir de v2.1.198, el diálogo ofrece `Move to background and exit` junto con `Exit anyway` y `Stay`. Elegirlo mueve la sesión al segundo plano de la misma manera que `/background` lo hace, luego lo devuelve a su shell, por lo que el trabajo que puede continuar sigue ejecutándose y la sesión aparece en la vista de agentes. La opción no se muestra cuando la vista de agentes está [desactivada](#turn-off-agent-view).371Salir de una sesión interactiva que aún tiene trabajo en segundo plano en ejecución, como subagentes, comandos de shell en segundo plano, flujos de trabajo o [monitores](/docs/es/tools-reference#monitor-tool), muestra un diálogo `Background work is running` en lugar de salir inmediatamente. A partir de v2.1.198, el diálogo ofrece `Move to background and exit` junto con `Exit anyway` y `Stay`. Elegirlo mueve la sesión al segundo plano de la misma manera que `/background` lo hace, luego lo devuelve a su shell, por lo que el trabajo que puede continuar sigue ejecutándose y la sesión aparece en la vista de agentes. La opción no se muestra cuando la vista de agentes está [desactivada](#turn-off-agent-view).

372 372 

373Enviar al segundo plano desde una sesión interactiva inicia un proceso nuevo que se reanuda desde la conversación guardada, y el trabajo en vuelo se traslada a él: comandos shell en segundo plano en ejecución, subagentes en segundo plano, flujos de trabajo dinámicos y tareas programadas que creó con [`/loop`](/es/scheduled-tasks) se trasladan a la sesión en segundo plano y siguen ejecutándose allí. Un subagente se traslada junto con todo lo que inició, por lo que se traslada solo cuando todo ese trabajo puede trasladarse también, incluso en Windows. Para detener el trabajo en vuelo en lugar de trasladarlo, establezca la variable de entorno [`CLAUDE_DISABLE_ADOPT=1`](/es/env-vars#variables); Claude Code luego le pide que confirme antes de enviar al segundo plano.373Enviar al segundo plano desde una sesión interactiva inicia un proceso nuevo que se reanuda desde la conversación guardada, y el trabajo en vuelo se traslada a él: comandos shell en segundo plano en ejecución, subagentes en segundo plano, flujos de trabajo dinámicos y tareas programadas que creó con [`/loop`](/docs/es/scheduled-tasks) se trasladan a la sesión en segundo plano y siguen ejecutándose allí. Un subagente se traslada junto con todo lo que inició, por lo que se traslada solo cuando todo ese trabajo puede trasladarse también, incluso en Windows. Para detener el trabajo en vuelo en lugar de trasladarlo, establezca la variable de entorno [`CLAUDE_DISABLE_ADOPT=1`](/docs/es/env-vars#variables); Claude Code luego le pide que confirme antes de enviar al segundo plano.

374 374 

375El trabajo que no puede trasladarse, como un [monitor](/es/tools-reference#monitor-tool) en ejecución, se detiene. Un subagente en segundo plano que posee un monitor se detiene junto con él. Cuando algún trabajo de este tipo se está ejecutando, Claude Code muestra un diálogo `Background this session?` para que pueda confirmar antes de que se detenga.375El trabajo que no puede trasladarse, como un [monitor](/docs/es/tools-reference#monitor-tool) en ejecución, se detiene. Un subagente en segundo plano que posee un monitor se detiene junto con él. Cuando algún trabajo de este tipo se está ejecutando, Claude Code muestra un diálogo `Background this session?` para que pueda confirmar antes de que se detenga.

376 376 

377Una vez en segundo plano, la sesión puede iniciar nuevos subagentes, monitores y comandos en segundo plano, y esos continúan ejecutándose en desconexiones y reconexiones posteriores.377Una vez en segundo plano, la sesión puede iniciar nuevos subagentes, monitores y comandos en segundo plano, y esos continúan ejecutándose en desconexiones y reconexiones posteriores.

378 378 


385* `--fallback-model`385* `--fallback-model`

386* `--allow-dangerously-skip-permissions`386* `--allow-dangerously-skip-permissions`

387 387 

388Los directorios que agregó durante la sesión con [`/add-dir`](/es/permissions#additional-directories-grant-file-access-not-configuration) también se transfieren.388Los directorios que agregó durante la sesión con [`/add-dir`](/docs/es/permissions#additional-directories-grant-file-access-not-configuration) también se transfieren.

389 389 

390Transferir `--allow-dangerously-skip-permissions` mantiene `bypassPermissions` accesible en la sesión enviada al segundo plano, pero no otorga nada nuevo. El modo aún requiere la misma aceptación interactiva única descrita en [Modo de permiso, modelo y esfuerzo](#permission-mode-model-and-effort) antes de que cualquier sesión pueda usarlo.390Transferir `--allow-dangerously-skip-permissions` mantiene `bypassPermissions` accesible en la sesión enviada al segundo plano, pero no otorga nada nuevo. El modo aún requiere la misma aceptación interactiva única descrita en [Modo de permiso, modelo y esfuerzo](#permission-mode-model-and-effort) antes de que cualquier sesión pueda usarlo.

391 391 


399claude --bg "investigate the flaky SettingsChangeDetector test"399claude --bg "investigate the flaky SettingsChangeDetector test"

400```400```

401 401 

402El mensaje es el argumento posicional, no un valor `-p`. {/* min-version: 2.1.198 */}A partir de v2.1.198, combinar `--bg` con `-p` o `--print` se rechaza con un error antes de que se cree cualquier sesión, porque `--print` nunca inicia la sesión interactiva a la que `claude agents` se conecta.402El mensaje es el argumento posicional, no un valor `-p`. A partir de v2.1.198, combinar `--bg` con `-p` o `--print` se rechaza con un error antes de que se cree cualquier sesión, porque `--print` nunca inicia la sesión interactiva a la que `claude agents` se conecta.

403 403 

404Para ejecutar un subagente específico como el agente principal de la sesión, combine `--bg` con `--agent`:404Para ejecutar un subagente específico como el agente principal de la sesión, combine `--bg` con `--agent`:

405 405 


447 Cómo se aíslan las ediciones de archivos447 Cómo se aíslan las ediciones de archivos

448</h3>448</h3>

449 449 

450Cada sesión en segundo plano, ya sea iniciada desde la vista de agentes, `/bg` o `claude --bg`, comienza en su directorio de trabajo. Antes de editar archivos, Claude mueve la sesión a un [git worktree](/es/worktrees) aislado bajo `.claude/worktrees/`, de modo que las sesiones paralelas pueden leer el mismo checkout pero cada una escribe en la suya propia.450Cada sesión en segundo plano, ya sea iniciada desde la vista de agentes, `/bg` o `claude --bg`, comienza en su directorio de trabajo. Antes de editar archivos, Claude mueve la sesión a un [git worktree](/docs/es/worktrees) aislado bajo `.claude/worktrees/`, de modo que las sesiones paralelas pueden leer el mismo checkout pero cada una escribe en la suya propia.

451 451 

452Claude omite el worktree cuando:452Claude omite el worktree cuando:

453 453 

454* La sesión ya está dentro de un git worktree vinculado, ya sea que Claude lo haya creado bajo `.claude/worktrees/` o que lo haya creado con `git worktree add` en otro lugar454* La sesión ya está dentro de un git worktree vinculado, ya sea que Claude lo haya creado bajo `.claude/worktrees/` o que lo haya creado con `git worktree add` en otro lugar

455* El directorio de trabajo no es un repositorio git y no hay ningún hook [`WorktreeCreate`](/es/hooks#worktreecreate) configurado455* El directorio de trabajo no es un repositorio git y no hay ningún hook [`WorktreeCreate`](/docs/es/hooks#worktreecreate) configurado

456* La escritura está fuera del directorio de trabajo456* La escritura está fuera del directorio de trabajo

457 457 

458Para desactivar el aislamiento de worktree para un repositorio donde los git worktrees no son prácticos, establezca [`worktree.bgIsolation`](/es/settings#worktree-settings) en `"none"`. Las sesiones en segundo plano editarán su copia de trabajo directamente sin moverse a un worktree primero. Agregue la configuración al archivo `.claude/settings.json` del proyecto:458Para desactivar el aislamiento de worktree para un repositorio donde los git worktrees no son prácticos, establezca [`worktree.bgIsolation`](/docs/es/settings#worktree-settings) en `"none"`. Las sesiones en segundo plano editarán su copia de trabajo directamente sin moverse a un worktree primero. Agregue la configuración al archivo `.claude/settings.json` del proyecto:

459 459 

460```json theme={null}460```json theme={null}

461{461{


465}465}

466```466```

467 467 

468Fuera de un repositorio git, las sesiones escriben en el directorio de trabajo directamente y no están aisladas entre sí, por lo que evite distribuir sesiones paralelas que editen los mismos archivos. Si utiliza un sistema de control de versiones diferente, configure un hook [`WorktreeCreate`](/es/worktrees#non-git-version-control) y Claude aísla las ediciones de la misma manera que lo hace para git.468Fuera de un repositorio git, las sesiones escriben en el directorio de trabajo directamente y no están aisladas entre sí, por lo que evite distribuir sesiones paralelas que editen los mismos archivos. Si utiliza un sistema de control de versiones diferente, configure un hook [`WorktreeCreate`](/docs/es/worktrees#non-git-version-control) y Claude aísla las ediciones de la misma manera que lo hace para git.

469 469 

470Cuando el hook falla en un directorio que no es un repositorio git, la sesión omite el aislamiento para ese directorio y edita el directorio de trabajo en su lugar. Dentro de un repositorio git, las escrituras permanecen bloqueadas hasta que la sesión se aísle. Antes de v2.1.203, una sesión en segundo plano en ese estado no podía editar ningún archivo: cada escritura se rechazaba hasta que se aislaba, y el hook nunca podía aislar ese directorio.470Cuando el hook falla en un directorio que no es un repositorio git, la sesión omite el aislamiento para ese directorio y edita el directorio de trabajo en su lugar. Dentro de un repositorio git, las escrituras permanecen bloqueadas hasta que la sesión se aísle. Antes de v2.1.203, una sesión en segundo plano en ese estado no podía editar ningún archivo: cada escritura se rechazaba hasta que se aislaba, y el hook nunca podía aislar ese directorio.

471 471 


478 478 

479Para encontrar la ruta del worktree de una sesión, eche un vistazo a la sesión o conéctese y verifique su directorio de trabajo.479Para encontrar la ruta del worktree de una sesión, eche un vistazo a la sesión o conéctese y verifique su directorio de trabajo.

480 480 

481Un [subagente](/es/sub-agents) que la sesión en segundo plano genera hereda el directorio de trabajo de la sesión, por lo que sus ediciones de archivos se realizan en el worktree de la sesión en lugar de su copia de trabajo. Para darle a un subagente su propio worktree separado en su lugar, establezca [`isolation: worktree`](/es/sub-agents#supported-frontmatter-fields) en su frontmatter o pase `isolation: "worktree"` al generarlo.481Un [subagente](/docs/es/sub-agents) que la sesión en segundo plano genera hereda el directorio de trabajo de la sesión, por lo que sus ediciones de archivos se realizan en el worktree de la sesión en lugar de su copia de trabajo. Para darle a un subagente su propio worktree separado en su lugar, establezca [`isolation: worktree`](/docs/es/sub-agents#supported-frontmatter-fields) en su frontmatter o pase `isolation: "worktree"` al generarlo.

482 482 

483A partir de v2.1.198, una sesión en segundo plano que aisló sus cambios de código en un worktree también confirma, envía su propia rama y abre una solicitud de extracción en borrador sin detenerse a preguntar. La etiqueta [`#N`](#pull-request-status) aparece en su fila cuando se abre la solicitud de extracción. Nunca envía a `main` o `master`, nunca fuerza-envía o fusiona, y omite la solicitud de extracción cuando le dijo que no abriera una o el repositorio no tiene remoto.483A partir de v2.1.198, una sesión en segundo plano que aisló sus cambios de código en un worktree también confirma, envía su propia rama y abre una solicitud de extracción en borrador sin detenerse a preguntar. La etiqueta [`#N`](#pull-request-status) aparece en su fila cuando se abre la solicitud de extracción. Nunca envía a `main` o `master`, nunca fuerza-envía o fusiona, y omite la solicitud de extracción cuando le dijo que no abriera una o el repositorio no tiene remoto.

484 484 


488 Establecer el modelo488 Establecer el modelo

489</h3>489</h3>

490 490 

491El nombre del modelo mostrado en el encabezado de la vista de agentes es el valor predeterminado de distribución. Las nuevas sesiones que inicia desde la entrada utilizan este modelo, que proviene de la configuración [`model`](/es/settings#available-settings) en su configuración de usuario. Establézcalo seleccionando un modelo en el selector [`/model`](/es/model-config), o edite la configuración directamente.491El nombre del modelo mostrado en el encabezado de la vista de agentes es el valor predeterminado de distribución. Las nuevas sesiones que inicia desde la entrada utilizan este modelo, que proviene de la configuración [`model`](/docs/es/settings#available-settings) en su configuración de usuario. Establézcalo seleccionando un modelo en el selector [`/model`](/docs/es/model-config), o edite la configuración directamente.

492 492 

493Para anularlo para toda la sesión de vista de agentes, pase `--model` al abrir la vista de agentes. Consulte [Modo de permiso, modelo y esfuerzo](#permission-mode-model-and-effort).493Para anularlo para toda la sesión de vista de agentes, pase `--model` al abrir la vista de agentes. Consulte [Modo de permiso, modelo y esfuerzo](#permission-mode-model-and-effort).

494 494 


505 505 

506* Desde el shell, pase `--model` con `claude --bg`.506* Desde el shell, pase `--model` con `claude --bg`.

507* Conéctese a una sesión en ejecución y ejecute `/model` para cambiar: una selección del selector, o un `/model <name>` escrito, se guarda como su valor predeterminado para nuevas sesiones a menos que presione `s` en el selector para un cambio solo de sesión. Un cambio solo de sesión persiste si la sesión se reinicia.507* Conéctese a una sesión en ejecución y ejecute `/model` para cambiar: una selección del selector, o un `/model <name>` escrito, se guarda como su valor predeterminado para nuevas sesiones a menos que presione `s` en el selector para un cambio solo de sesión. Un cambio solo de sesión persiste si la sesión se reinicia.

508* Distribuya un [subagente](/es/sub-agents) cuyo frontmatter establezca un campo `model`.508* Distribuya un [subagente](/docs/es/sub-agents) cuyo frontmatter establezca un campo `model`.

509 509 

510<h3 id="permission-mode-model-and-effort">510<h3 id="permission-mode-model-and-effort">

511 Modo de permiso, modelo y esfuerzo511 Modo de permiso, modelo y esfuerzo

512</h3>512</h3>

513 513 

514Una sesión en segundo plano lee su [configuración](/es/settings) desde el directorio en el que se ejecuta, igual que si hubiera iniciado `claude` allí. Esto incluye valores [`env`](/es/settings#available-settings) en la configuración del proyecto, por lo que una variable `ANTHROPIC_MODEL` o de proveedor establecida allí se aplica a las sesiones en segundo plano en ese directorio.514Una sesión en segundo plano lee su [configuración](/docs/es/settings) desde el directorio en el que se ejecuta, igual que si hubiera iniciado `claude` allí. Esto incluye valores [`env`](/docs/es/settings#available-settings) en la configuración del proyecto, por lo que una variable `ANTHROPIC_MODEL` o de proveedor establecida allí se aplica a las sesiones en segundo plano en ese directorio.

515 515 

516La selección del proveedor en la nube, como `CLAUDE_CODE_USE_BEDROCK` o `CLAUDE_CODE_USE_VERTEX`, y los alias `ANTHROPIC_DEFAULT_*_MODEL` siguen el shell que distribuyó la sesión. {/* min-version: 2.1.206 */}Si exporta una anulación de cuerpo de solicitud [`CLAUDE_CODE_EXTRA_BODY`](/es/env-vars) en ese shell, llega a la sesión de la misma manera. Antes de v2.1.206, los trabajadores en segundo plano ignoraban un `CLAUDE_CODE_EXTRA_BODY` exportado por shell.516La selección del proveedor en la nube, como `CLAUDE_CODE_USE_BEDROCK` o `CLAUDE_CODE_USE_VERTEX`, y los alias `ANTHROPIC_DEFAULT_*_MODEL` siguen el shell que distribuyó la sesión. Si exporta una anulación de cuerpo de solicitud [`CLAUDE_CODE_EXTRA_BODY`](/docs/es/env-vars) en ese shell, llega a la sesión de la misma manera. Antes de v2.1.206, los trabajadores en segundo plano ignoraban un `CLAUDE_CODE_EXTRA_BODY` exportado por shell.

517 517 

518Si exporta una puerta de enlace `ANTHROPIC_BASE_URL` en el shell de distribución, también llega a la sesión, junto con `ANTHROPIC_CUSTOM_HEADERS`, cuando el supervisor se ejecuta con el mismo entorno de puerta de enlace y la sesión se ejecuta en el directorio desde el que distribuye o es su propia sesión enviada al segundo plano con `←` o `/background`. Ese es el caso normal cuando el primer shell en abrir la vista de agentes o distribuir una sesión en segundo plano es el shell de puerta de enlace. Distribuir a un directorio diferente con `@repo` o `--cwd` no lleva la puerta de enlace del shell; la [configuración](/es/settings) de ese proyecto suministra el punto final. Consulte [el proceso supervisor](#the-supervisor-process) para ver cómo las sesiones en segundo plano obtienen la configuración del proveedor y las credenciales.518Si exporta una puerta de enlace `ANTHROPIC_BASE_URL` en el shell de distribución, también llega a la sesión, junto con `ANTHROPIC_CUSTOM_HEADERS`, cuando el supervisor se ejecuta con el mismo entorno de puerta de enlace y la sesión se ejecuta en el directorio desde el que distribuye o es su propia sesión enviada al segundo plano con `←` o `/background`. Ese es el caso normal cuando el primer shell en abrir la vista de agentes o distribuir una sesión en segundo plano es el shell de puerta de enlace. Distribuir a un directorio diferente con `@repo` o `--cwd` no lleva la puerta de enlace del shell; la [configuración](/docs/es/settings) de ese proyecto suministra el punto final. Consulte [el proceso supervisor](#the-supervisor-process) para ver cómo las sesiones en segundo plano obtienen la configuración del proveedor y las credenciales.

519 519 

520El [modo de permiso](/es/permissions) depende de cómo inició la sesión. Enviar al segundo plano una sesión existente con `/bg` o `←` mantiene el modo de permiso actual, por lo que una sesión que cambió a `acceptEdits` o `auto` permanece en ese modo después de desconectarse. Distribuir desde la entrada de la vista de agentes o ejecutar `claude --bg` desde su shell utiliza el `defaultMode` de la configuración de ese directorio, o el `permissionMode` del [frontmatter del subagente distribuido](/es/sub-agents#supported-frontmatter-fields).520El [modo de permiso](/docs/es/permissions) depende de cómo inició la sesión. Enviar al segundo plano una sesión existente con `/bg` o `←` mantiene el modo de permiso actual, por lo que una sesión que cambió a `acceptEdits` o `auto` permanece en ese modo después de desconectarse. Distribuir desde la entrada de la vista de agentes o ejecutar `claude --bg` desde su shell utiliza el `defaultMode` de la configuración de ese directorio, o el `permissionMode` del [frontmatter del subagente distribuido](/docs/es/sub-agents#supported-frontmatter-fields).

521 521 

522El modo de permiso, modelo y esfuerzo con el que inicia una sesión en segundo plano, junto con las [banderas de configuración que lleva](#from-inside-a-session), todos persisten cuando el supervisor posteriormente [detiene y reinicia](#the-supervisor-process) su proceso. Una sesión que lanzó con `claude --bg --dangerously-skip-permissions` o `claude --bg --permission-mode bypassPermissions` permanece en `bypassPermissions` después de ese reinicio en lugar de volver al `defaultMode` del directorio, y un modelo o esfuerzo que cambió a mitad de sesión con `/model` o `/effort` se mantiene.522El modo de permiso, modelo y esfuerzo con el que inicia una sesión en segundo plano, junto con las [banderas de configuración que lleva](#from-inside-a-session), todos persisten cuando el supervisor posteriormente [detiene y reinicia](#the-supervisor-process) su proceso. Una sesión que lanzó con `claude --bg --dangerously-skip-permissions` o `claude --bg --permission-mode bypassPermissions` permanece en `bypassPermissions` después de ese reinicio en lugar de volver al `defaultMode` del directorio, y un modelo o esfuerzo que cambió a mitad de sesión con `/model` o `/effort` se mantiene.

523 523 

524Un esfuerzo que la sesión tomó de la configuración [`effortLevel`](/es/settings#available-settings) en lugar de `--effort` o `/effort` no se fija en la distribución: cada proceso iniciado para la sesión lee la configuración nuevamente, por lo que editar `effortLevel` en `settings.json` llega a las sesiones que envía al segundo plano con `←` o `/bg` y sus reinicios posteriores. Antes de v2.1.203, enviar al segundo plano una sesión registraba su esfuerzo derivado de configuración como si hubiera pasado `--effort`, por lo que ediciones posteriores de `effortLevel` nunca lo alcanzaban.524Un esfuerzo que la sesión tomó de la configuración [`effortLevel`](/docs/es/settings#available-settings) en lugar de `--effort` o `/effort` no se fija en la distribución: cada proceso iniciado para la sesión lee la configuración nuevamente, por lo que editar `effortLevel` en `settings.json` llega a las sesiones que envía al segundo plano con `←` o `/bg` y sus reinicios posteriores. Antes de v2.1.203, enviar al segundo plano una sesión registraba su esfuerzo derivado de configuración como si hubiera pasado `--effort`, por lo que ediciones posteriores de `effortLevel` nunca lo alcanzaban.

525 525 

526Un nombre que estableció con [`/rename`](/es/commands) o `Ctrl+R` también persiste en ese reinicio, por lo que [`claude --resume <name>`](/es/sessions#name-your-sessions) aún resuelve la sesión. Antes de v2.1.202, el reinicio revertía la sesión al nombre con el que se distribuyó y el nuevo nombre dejaba de resolverse.526Un nombre que estableció con [`/rename`](/docs/es/commands) o `Ctrl+R` también persiste en ese reinicio, por lo que [`claude --resume <name>`](/docs/es/sessions#name-your-sessions) aún resuelve la sesión. Antes de v2.1.202, el reinicio revertía la sesión al nombre con el que se distribuyó y el nuevo nombre dejaba de resolverse.

527 527 

528Para establecer valores predeterminados para cada sesión que distribuya desde la vista de agentes, pase cualquiera de `--permission-mode`, `--model`, `--effort` o `--agent` al abrirla:528Para establecer valores predeterminados para cada sesión que distribuya desde la vista de agentes, pase cualquiera de `--permission-mode`, `--model`, `--effort` o `--agent` al abrirla:

529 529 


531claude agents --permission-mode plan --model opus --effort high531claude agents --permission-mode plan --model opus --effort high

532```532```

533 533 

534`--agent` establece el [subagente](/es/sub-agents) utilizado cuando un mensaje de distribución no nombra uno, ya sea con `@name` o como la primera palabra. Por defecto es la configuración [`agent`](/es/settings#available-settings) si se establece una, de lo contrario el agente integrado `claude` que lo captura todo. Nombrar un subagente en la entrada de distribución anula ambos.534`--agent` establece el [subagente](/docs/es/sub-agents) utilizado cuando un mensaje de distribución no nombra uno, ya sea con `@name` o como la primera palabra. Por defecto es la configuración [`agent`](/docs/es/settings#available-settings) si se establece una, de lo contrario el agente integrado `claude` que lo captura todo. Nombrar un subagente en la entrada de distribución anula ambos.

535 535 

536`claude agents` también acepta `--dangerously-skip-permissions` como abreviatura de `--permission-mode bypassPermissions`, y `--allow-dangerously-skip-permissions` para hacer que `bypassPermissions` esté disponible en el ciclo `Shift+Tab` de cada sesión distribuida sin comenzar en ese modo. Ambos coinciden con las [banderas CLI de nivel superior](/es/cli-reference).536`claude agents` también acepta `--dangerously-skip-permissions` como abreviatura de `--permission-mode bypassPermissions`, y `--allow-dangerously-skip-permissions` para hacer que `bypassPermissions` esté disponible en el ciclo `Shift+Tab` de cada sesión distribuida sin comenzar en ese modo. Ambos coinciden con las [banderas CLI de nivel superior](/docs/es/cli-reference).

537 537 

538Los valores predeterminados activos aparecen en el pie de página debajo de la entrada de distribución.538Los valores predeterminados activos aparecen en el pie de página debajo de la entrada de distribución.

539 539 

540Sin estas banderas, la sesión utiliza el `defaultMode` de la configuración de ese directorio o el `permissionMode` del [frontmatter del subagente distribuido](/es/sub-agents#supported-frontmatter-fields), y el modelo mostrado en el encabezado de la vista de agentes.540Sin estas banderas, la sesión utiliza el `defaultMode` de la configuración de ese directorio o el `permissionMode` del [frontmatter del subagente distribuido](/docs/es/sub-agents#supported-frontmatter-fields), y el modelo mostrado en el encabezado de la vista de agentes.

541 541 

542El uso de `bypassPermissions` con `claude --bg --permission-mode` se rechaza hasta que haya aceptado el descargo de responsabilidad de bypass ejecutando `claude --dangerously-skip-permissions` una vez de forma interactiva, ya que ese modo permite que una sesión que no está viendo actúe sin aprobación. Pasar `--dangerously-skip-permissions` o `--permission-mode bypassPermissions` a `claude agents` muestra el mismo descargo de responsabilidad cuando no lo ha aceptado antes, y aceptar aplica `bypassPermissions` a las sesiones que lanza desde la vista. Pasar `--allow-dangerously-skip-permissions` muestra el mismo descargo de responsabilidad también, y aceptar hace que `bypassPermissions` esté disponible en el ciclo `Shift+Tab` de esas sesiones sin iniciarlas en él.542El uso de `bypassPermissions` con `claude --bg --permission-mode` se rechaza hasta que haya aceptado el descargo de responsabilidad de bypass ejecutando `claude --dangerously-skip-permissions` una vez de forma interactiva, ya que ese modo permite que una sesión que no está viendo actúe sin aprobación. Pasar `--dangerously-skip-permissions` o `--permission-mode bypassPermissions` a `claude agents` muestra el mismo descargo de responsabilidad cuando no lo ha aceptado antes, y aceptar aplica `bypassPermissions` a las sesiones que lanza desde la vista. Pasar `--allow-dangerously-skip-permissions` muestra el mismo descargo de responsabilidad también, y aceptar hace que `bypassPermissions` esté disponible en el ciclo `Shift+Tab` de esas sesiones sin iniciarlas en él.

543 543 


549 549 

550| Bandera | Efecto |550| Bandera | Efecto |

551| :----------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------- |551| :----------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------- |

552| [`--settings <file-or-json>`](/es/settings) | Anule la configuración para la vista de agentes y las sesiones distribuidas |552| [`--settings <file-or-json>`](/docs/es/settings) | Anule la configuración para la vista de agentes y las sesiones distribuidas |

553| [`--add-dir <path>`](/es/permissions#additional-directories-grant-file-access-not-configuration) | Otorgue acceso a archivos a un directorio adicional |553| [`--add-dir <path>`](/docs/es/permissions#additional-directories-grant-file-access-not-configuration) | Otorgue acceso a archivos a un directorio adicional |

554| [`--plugin-dir <path>`](/es/plugins) | Cargue un plugin desde un directorio local |554| [`--plugin-dir <path>`](/docs/es/plugins) | Cargue un plugin desde un directorio local |

555| [`--mcp-config <file-or-json>`](/es/mcp) | Cargue servidores MCP desde un archivo de configuración o cadena JSON |555| [`--mcp-config <file-or-json>`](/docs/es/mcp) | Cargue servidores MCP desde un archivo de configuración o cadena JSON |

556| `--strict-mcp-config` | Use solo los servidores MCP de `--mcp-config`, ignorando otra configuración de MCP |556| `--strict-mcp-config` | Use solo los servidores MCP de `--mcp-config`, ignorando otra configuración de MCP |

557 557 

558Repita `--add-dir`, `--plugin-dir` o `--mcp-config` una vez por valor. La forma separada por espacios, como `--add-dir a b c`, no es compatible con `claude agents`.558Repita `--add-dir`, `--plugin-dir` o `--mcp-config` una vez por valor. La forma separada por espacios, como `--add-dir a b c`, no es compatible con `claude agents`.


603 603 

604El `PATH` del shell de envío se aplica al trabajador de la misma manera, por lo que los comandos de shell que ejecuta la sesión encuentran las mismas herramientas que su terminal. Antes de v2.1.203, una sesión en segundo plano mantenía el `PATH` del shell que inició primero el supervisor, por lo que las herramientas agregadas a su `PATH` desde entonces podrían faltar, más a menudo en Windows.604El `PATH` del shell de envío se aplica al trabajador de la misma manera, por lo que los comandos de shell que ejecuta la sesión encuentran las mismas herramientas que su terminal. Antes de v2.1.203, una sesión en segundo plano mantenía el `PATH` del shell que inició primero el supervisor, por lo que las herramientas agregadas a su `PATH` desde entonces podrían faltar, más a menudo en Windows.

605 605 

606Una sesión en segundo plano no hereda variables de punto final de puerta de enlace como `ANTHROPIC_BASE_URL` o las variables de URL base equivalentes de Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry del shell que inició el supervisor. Sin una puerta de enlace exportada en el shell desde el que envía, la sesión utiliza sus credenciales almacenadas y cualquier valor `env` en la [configuración](/es/settings) del directorio del proyecto. Para apuntar cada sesión en un proyecto a una [puerta de enlace LLM](/es/llm-gateway), establezca `ANTHROPIC_BASE_URL` en el bloque `env` de `settings.json` de ese proyecto en `.claude/`.606Una sesión en segundo plano no hereda variables de punto final de puerta de enlace como `ANTHROPIC_BASE_URL` o las variables de URL base equivalentes de Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry del shell que inició el supervisor. Sin una puerta de enlace exportada en el shell desde el que envía, la sesión utiliza sus credenciales almacenadas y cualquier valor `env` en la [configuración](/docs/es/settings) del directorio del proyecto. Para apuntar cada sesión en un proyecto a una [puerta de enlace LLM](/docs/es/llm-gateway), establezca `ANTHROPIC_BASE_URL` en el bloque `env` de `settings.json` de ese proyecto en `.claude/`.

607 607 

608{/* min-version: 2.1.203 */}Si exporta una puerta de enlace `ANTHROPIC_BASE_URL` en el shell desde el que envía, llega al trabajador de esa sesión. `ANTHROPIC_CUSTOM_HEADERS` y la credencial exportada junto a ellos se reenvían con él. Esto sucede cuando el supervisor se inició desde un entorno con la misma puerta de enlace. El supervisor captura su entorno desde el primer shell que abre la vista de agentes o envía una sesión en segundo plano, por lo que comenzar desde el shell de la puerta de enlace le da ese entorno. El reenvío también se aplica solo a las sesiones enviadas al directorio desde el que está enviando, o enviadas al segundo plano desde su propia sesión con `←` o `/background`: enviar a un directorio diferente con `@repo` o `--cwd` no lleva la puerta de enlace del shell, y el bloque `env` de `settings.json` de ese proyecto proporciona el punto final en su lugar. Cuando el entorno del supervisor lleva una puerta de enlace diferente o ninguna, el trabajador mantiene sus credenciales almacenadas contra el punto final predeterminado en lugar de mezclar la credencial de un entorno con el punto final de otro. Antes de v2.1.203, el `ANTHROPIC_BASE_URL` del shell de envío se descartaba mientras que el `ANTHROPIC_API_KEY` exportado junto a él se mantenía, por lo que la clave de la puerta de enlace se enviaba al punto final predeterminado y cada solicitud fallaba con un 401.608Si exporta una puerta de enlace `ANTHROPIC_BASE_URL` en el shell desde el que envía, llega al trabajador de esa sesión. `ANTHROPIC_CUSTOM_HEADERS` y la credencial exportada junto a ellos se reenvían con él. Esto sucede cuando el supervisor se inició desde un entorno con la misma puerta de enlace. El supervisor captura su entorno desde el primer shell que abre la vista de agentes o envía una sesión en segundo plano, por lo que comenzar desde el shell de la puerta de enlace le da ese entorno. El reenvío también se aplica solo a las sesiones enviadas al directorio desde el que está enviando, o enviadas al segundo plano desde su propia sesión con `←` o `/background`: enviar a un directorio diferente con `@repo` o `--cwd` no lleva la puerta de enlace del shell, y el bloque `env` de `settings.json` de ese proyecto proporciona el punto final en su lugar. Cuando el entorno del supervisor lleva una puerta de enlace diferente o ninguna, el trabajador mantiene sus credenciales almacenadas contra el punto final predeterminado en lugar de mezclar la credencial de un entorno con el punto final de otro. Antes de v2.1.203, el `ANTHROPIC_BASE_URL` del shell de envío se descartaba mientras que el `ANTHROPIC_API_KEY` exportado junto a él se mantenía, por lo que la clave de la puerta de enlace se enviaba al punto final predeterminado y cada solicitud fallaba con un 401.

609 609 

610El punto final reenviado se aplica solo a ese proceso activo y nunca se escribe en el disco. Cuando el supervisor detiene una sesión inactiva y luego la reinicia, el proceso reiniciado lee su punto final desde su configuración nuevamente: con un `ANTHROPIC_AUTH_TOKEN` de puerta de enlace vuelve a sus credenciales almacenadas, y con un `ANTHROPIC_API_KEY` emitido por la puerta de enlace puede fallar al autenticarse hasta que la puerta de enlace se establezca en la configuración.610El punto final reenviado se aplica solo a ese proceso activo y nunca se escribe en el disco. Cuando el supervisor detiene una sesión inactiva y luego la reinicia, el proceso reiniciado lee su punto final desde su configuración nuevamente: con un `ANTHROPIC_AUTH_TOKEN` de puerta de enlace vuelve a sus credenciales almacenadas, y con un `ANTHROPIC_API_KEY` emitido por la puerta de enlace puede fallar al autenticarse hasta que la puerta de enlace se establezca en la configuración.

611 611 


617 617 

618* Un comando de shell en segundo plano que terminó en el ínterin se reporta como completado con su salida618* Un comando de shell en segundo plano que terminó en el ínterin se reporta como completado con su salida

619* Un flujo de trabajo dinámico se reanuda desde donde se quedó619* Un flujo de trabajo dinámico se reanuda desde donde se quedó

620* Un [subagente en segundo plano](/es/sub-agents#run-subagents-in-foreground-or-background) se reanuda desde su propia transcripción620* Un [subagente en segundo plano](/docs/es/sub-agents#run-subagents-in-foreground-or-background) se reanuda desde su propia transcripción

621 621 

622{/* min-version: 2.1.198 */}A partir de v2.1.198 la entrega cubre los tres. Antes de v2.1.198 cubría solo comandos de shell y flujos de trabajo, por lo que un subagente en segundo plano se detenía con el proceso y se reportaba como fallido en el próximo despertar.622A partir de v2.1.198 la entrega cubre los tres. Antes de v2.1.198 cubría solo comandos de shell y flujos de trabajo, por lo que un subagente en segundo plano se detenía con el proceso y se reportaba como fallido en el próximo despertar.

623 623 

624El trabajo cuyo estado vive solo dentro del proceso mismo se detiene con él en lugar de ser entregado. Eso son comandos de shell que un subagente inició, que el subagente reanudado puede iniciar nuevamente, y [monitores](/es/tools-reference#monitor-tool) en ejecución, cuya secuencia de eventos no se puede mover a otro proceso.624El trabajo cuyo estado vive solo dentro del proceso mismo se detiene con él en lugar de ser entregado. Eso son comandos de shell que un subagente inició, que el subagente reanudado puede iniciar nuevamente, y [monitores](/docs/es/tools-reference#monitor-tool) en ejecución, cuya secuencia de eventos no se puede mover a otro proceso.

625 625 

626Eliminar la sesión detiene todo lo que entregó. Para detener todo el trabajo en segundo plano de la sesión con el proceso en lugar de entregarlo, establezca la variable de entorno [`CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF`](/es/env-vars#variables) en `1`.626Eliminar la sesión detiene todo lo que entregó. Para detener todo el trabajo en segundo plano de la sesión con el proceso en lugar de entregarlo, establezca la variable de entorno [`CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF`](/docs/es/env-vars#variables) en `1`.

627 627 

628Un proceso reiniciado encuentra la conversación de una sesión que [se movió a un worktree](#how-file-edits-are-isolated) a mitad de la tarea: cuando la transcripción no está donde la sesión comenzó, Claude Code también busca bajo los worktrees registrados del repositorio. Antes de v2.1.207, reabriendo esa sesión desde la vista de agentes después de que su proceso se había detenido podría mostrar una conversación vacía con solo su mensaje original, con la transcripción aún intacta en el disco; abrir la sesión nuevamente en v2.1.207 o posterior la recupera.628Un proceso reiniciado encuentra la conversación de una sesión que [se movió a un worktree](#how-file-edits-are-isolated) a mitad de la tarea: cuando la transcripción no está donde la sesión comenzó, Claude Code también busca bajo los worktrees registrados del repositorio. Antes de v2.1.207, reabriendo esa sesión desde la vista de agentes después de que su proceso se había detenido podría mostrar una conversación vacía con solo su mensaje original, con la transcripción aún intacta en el disco; abrir la sesión nuevamente en v2.1.207 o posterior la recupera.

629 629 


633 633 

634Cuando el host tiene poca memoria, el supervisor detiene primero las sesiones inactivas no fijadas y detiene las fijadas inactivas solo si eso no liberó nada.634Cuando el host tiene poca memoria, el supervisor detiene primero las sesiones inactivas no fijadas y detiene las fijadas inactivas solo si eso no liberó nada.

635 635 

636El supervisor observa el binario de Claude Code instalado en el disco y se reinicia en la nueva versión después de que el [actualizador automático](/es/setup#auto-updates) regular lo reemplace. Esta es una observación de archivo local, no una verificación de red. Las sesiones en segundo plano son procesos desconectados, por lo que siguen ejecutándose durante el reinicio y el nuevo supervisor se reconecta a ellas. Una sesión fijada inactiva también se reinicia en su lugar en la nueva versión para que recoja la actualización sin que usted se reconecte.636El supervisor observa el binario de Claude Code instalado en el disco y se reinicia en la nueva versión después de que el [actualizador automático](/docs/es/setup#auto-updates) regular lo reemplace. Esta es una observación de archivo local, no una verificación de red. Las sesiones en segundo plano son procesos desconectados, por lo que siguen ejecutándose durante el reinicio y el nuevo supervisor se reconecta a ellas. Una sesión fijada inactiva también se reinicia en su lugar en la nueva versión para que recoja la actualización sin que usted se reconecte.

637 637 

638Una vez que el nuevo supervisor toma el control, también reinicia las sesiones inactivas restantes en la nueva versión, algunas a la vez en segundo plano, después de un breve retraso que permite que las terminales conectadas durante el reinicio se reconecten primero. Una sesión que está funcionando, esperando su entrada o tiene una terminal conectada no se interrumpe; se mueve a la nueva versión la próxima vez que su proceso se reinicia. Antes de v2.1.206, el supervisor movía solo algunas sesiones inactivas por minuto a una nueva versión, por lo que las sesiones podrían seguir ejecutando la antigua durante un tiempo después de una actualización.638Una vez que el nuevo supervisor toma el control, también reinicia las sesiones inactivas restantes en la nueva versión, algunas a la vez en segundo plano, después de un breve retraso que permite que las terminales conectadas durante el reinicio se reconecten primero. Una sesión que está funcionando, esperando su entrada o tiene una terminal conectada no se interrumpe; se mueve a la nueva versión la próxima vez que su proceso se reinicia. Antes de v2.1.206, el supervisor movía solo algunas sesiones inactivas por minuto a una nueva versión, por lo que las sesiones podrían seguir ejecutando la antigua durante un tiempo después de una actualización.

639 639 


645 Dónde se almacena el estado645 Dónde se almacena el estado

646</h3>646</h3>

647 647 

648El estado de la sesión se almacena en su directorio de configuración de Claude Code. Si establece [`CLAUDE_CONFIG_DIR`](/es/env-vars), el supervisor usa ese directorio en lugar de `~/.claude` y se ejecuta como una instancia separada con sus propias sesiones.648El estado de la sesión se almacena en su directorio de configuración de Claude Code. Si establece [`CLAUDE_CONFIG_DIR`](/docs/es/env-vars), el supervisor usa ese directorio en lugar de `~/.claude` y se ejecuta como una instancia separada con sus propias sesiones.

649 649 

650| Ruta | Contenidos |650| Ruta | Contenidos |

651| :------------------------------- | :-------------------------------------------------------------------------------------------------------------------------- |651| :------------------------------- | :-------------------------------------------------------------------------------------------------------------------------- |


660 660 

661El comando también advierte cuando el supervisor en ejecución está en una versión diferente a la de `claude` que invocó, lo que sucede después de una actualización en la que el supervisor aún no se ha reiniciado. La advertencia muestra ambas versiones y le indica que ejecute `claude daemon stop --any` para adoptar la nueva versión. Cuando Claude Code se instala como un servicio del sistema operativo, el comando sugerido es `claude daemon stop` sin la bandera.661El comando también advierte cuando el supervisor en ejecución está en una versión diferente a la de `claude` que invocó, lo que sucede después de una actualización en la que el supervisor aún no se ha reiniciado. La advertencia muestra ambas versiones y le indica que ejecute `claude daemon stop --any` para adoptar la nueva versión. Cuando Claude Code se instala como un servicio del sistema operativo, el comando sugerido es `claude daemon stop` sin la bandera.

662 662 

663Las sesiones sobreviven a ese desajuste de versión intactas: una versión anterior de Claude Code que actualiza el `state.json` de una sesión preserva campos que no reconoce y mantiene la sesión listada. {/* min-version: 2.1.200 */}La lista de sesiones en `roster.json` sigue la misma regla: una versión anterior que la reescribe preserva campos que una versión más nueva escribió, por lo que las sesiones iniciadas por la versión más nueva permanecen accesibles y continúan aceptando entrada después de que el supervisor se reinicia. Antes de v2.1.200, las versiones anteriores podrían descartar esos campos al reescribir.663Las sesiones sobreviven a ese desajuste de versión intactas: una versión anterior de Claude Code que actualiza el `state.json` de una sesión preserva campos que no reconoce y mantiene la sesión listada. La lista de sesiones en `roster.json` sigue la misma regla: una versión anterior que la reescribe preserva campos que una versión más nueva escribió, por lo que las sesiones iniciadas por la versión más nueva permanecen accesibles y continúan aceptando entrada después de que el supervisor se reinicia. Antes de v2.1.200, las versiones anteriores podrían descartar esos campos al reescribir.

664 664 

665En Windows, `claude daemon status` expone el error de archivo subyacente cuando el archivo de clave de tubería del daemon está bloqueado o no es legible en lugar de informar una falla de conexión genérica.665En Windows, `claude daemon status` expone el error de archivo subyacente cuando el archivo de clave de tubería del daemon está bloqueado o no es legible en lugar de informar una falla de conexión genérica.

666 666 


668 Desactivar la vista de agentes668 Desactivar la vista de agentes

669</h3>669</h3>

670 670 

671Para desactivar completamente los agentes en segundo plano y la vista de agentes, establezca la configuración `disableAgentView` [setting](/es/settings) en `true` o establezca la variable de entorno `CLAUDE_CODE_DISABLE_AGENT_VIEW`. Los administradores pueden aplicar esto a través de [configuraciones administradas](/es/permissions#managed-settings).671Para desactivar completamente los agentes en segundo plano y la vista de agentes, establezca la configuración `disableAgentView` [setting](/docs/es/settings) en `true` o establezca la variable de entorno `CLAUDE_CODE_DISABLE_AGENT_VIEW`. Los administradores pueden aplicar esto a través de [configuraciones administradas](/docs/es/permissions#managed-settings).

672 672 

673<h2 id="troubleshooting">673<h2 id="troubleshooting">

674 Solución de problemas674 Solución de problemas


692 Backgrounding muestra un diálogo `Background this session?`692 Backgrounding muestra un diálogo `Background this session?`

693</h3>693</h3>

694 694 

695Si presionar `←` para enviar al segundo plano la sesión actual muestra un diálogo `Background this session?`, la sesión tiene trabajo en vuelo que no puede trasladarse a la sesión en segundo plano, como un [monitor](/es/tools-reference#monitor-tool) en ejecución, y Claude Code no lo detendrá silenciosamente. El diálogo nombra el trabajo que se detendrá y, por separado, cuenta las tareas que se trasladan. Ejecute `/tasks` para ver todo lo que se está ejecutando, luego confirme para enviar al segundo plano de todas formas o elija `Stay` para dejar que el trabajo termine primero. Consulte [Desde dentro de una sesión](#from-inside-a-session) para saber qué tipos de tareas se trasladan y cuáles se detienen.695Si presionar `←` para enviar al segundo plano la sesión actual muestra un diálogo `Background this session?`, la sesión tiene trabajo en vuelo que no puede trasladarse a la sesión en segundo plano, como un [monitor](/docs/es/tools-reference#monitor-tool) en ejecución, y Claude Code no lo detendrá silenciosamente. El diálogo nombra el trabajo que se detendrá y, por separado, cuenta las tareas que se trasladan. Ejecute `/tasks` para ver todo lo que se está ejecutando, luego confirme para enviar al segundo plano de todas formas o elija `Stay` para dejar que el trabajo termine primero. Consulte [Desde dentro de una sesión](#from-inside-a-session) para saber qué tipos de tareas se trasladan y cuáles se detienen.

696 696 

697<h3 id="prompt-rejected-as-too-short">697<h3 id="prompt-rejected-as-too-short">

698 Mensaje rechazado por ser demasiado corto698 Mensaje rechazado por ser demasiado corto


754 754 

755El siguiente `claude agents` o `claude --bg` inicia un supervisor nuevo que lee sus credenciales almacenadas. Si se autentica con una variable de entorno como `ANTHROPIC_API_KEY` en lugar de `/login`, ejecute ese comando siguiente desde un shell donde la variable esté configurada.755El siguiente `claude agents` o `claude --bg` inicia un supervisor nuevo que lee sus credenciales almacenadas. Si se autentica con una variable de entorno como `ANTHROPIC_API_KEY` en lugar de `/login`, ejecute ese comando siguiente desde un shell donde la variable esté configurada.

756 756 

757Vea la [referencia de errores](/es/errors#could-not-resolve-authentication-method) para la lista completa de causas y soluciones.757Vea la [referencia de errores](/docs/es/errors#could-not-resolve-authentication-method) para la lista completa de causas y soluciones.

758 758 

759<h3 id="background-sessions-can’t-read-desktop-documents-or-downloads-on-macos">759<h3 id="background-sessions-can’t-read-desktop-documents-or-downloads-on-macos">

760 Las sesiones en segundo plano no pueden leer Desktop, Documents o Downloads en macOS760 Las sesiones en segundo plano no pueden leer Desktop, Documents o Downloads en macOS


768 Las sesiones en segundo plano no pueden alcanzar hosts de red local en macOS768 Las sesiones en segundo plano no pueden alcanzar hosts de red local en macOS

769</h3>769</h3>

770 770 

771En macOS 15 y posterior, el sistema bloquea un proceso para que no alcance dispositivos en su red local hasta que otorgue permiso de Red Local. Antes de v2.1.198, el host de sesión en segundo plano nunca solicitó ese permiso, por lo que los comandos dirigidos a una dirección LAN fallaban con `connect: no route to host` aunque el mismo comando funcionaba en una terminal en primer plano. {/* min-version: 2.1.198 */}A partir de v2.1.198, el primer comando en una sesión en segundo plano que se conecta a una dirección de red local activa la solicitud de permiso de Red Local de macOS para Claude Code. Otórguelo una vez y esos comandos alcanzarán hosts LAN de la misma manera que lo hacen en una terminal en primer plano.771En macOS 15 y posterior, el sistema bloquea un proceso para que no alcance dispositivos en su red local hasta que otorgue permiso de Red Local. Antes de v2.1.198, el host de sesión en segundo plano nunca solicitó ese permiso, por lo que los comandos dirigidos a una dirección LAN fallaban con `connect: no route to host` aunque el mismo comando funcionaba en una terminal en primer plano. A partir de v2.1.198, el primer comando en una sesión en segundo plano que se conecta a una dirección de red local activa la solicitud de permiso de Red Local de macOS para Claude Code. Otórguelo una vez y esos comandos alcanzarán hosts LAN de la misma manera que lo hacen en una terminal en primer plano.

772 772 

773<h3 id="a-session-is-slow-to-respond-after-attaching">773<h3 id="a-session-is-slow-to-respond-after-attaching">

774 Una sesión es lenta para responder después de conectarse774 Una sesión es lenta para responder después de conectarse


782 `.claude/worktrees/` se está llenando782 `.claude/worktrees/` se está llenando

783</h3>783</h3>

784 784 

785Eliminar una sesión en la vista de agentes elimina el worktree que Claude creó para ella, y un worktree que no se puede eliminar de forma segura [mantiene su fila de sesión](#organize-the-list) para que no quede huérfano. `claude rm` mantiene un worktree que tiene cambios sin confirmar, y su fila de sesión, e imprime la ruta mantenida. Enumere las entradas sobrantes con `git worktree list` en el directorio del proyecto y elimine cada una con `git worktree remove <path>`. Vea [Limpiar worktrees](/es/worktrees#clean-up-worktrees).785Eliminar una sesión en la vista de agentes elimina el worktree que Claude creó para ella, y un worktree que no se puede eliminar de forma segura [mantiene su fila de sesión](#organize-the-list) para que no quede huérfano. `claude rm` mantiene un worktree que tiene cambios sin confirmar, y su fila de sesión, e imprime la ruta mantenida. Enumere las entradas sobrantes con `git worktree list` en el directorio del proyecto y elimine cada una con `git worktree remove <path>`. Vea [Limpiar worktrees](/docs/es/worktrees#clean-up-worktrees).

786 786 

787<h2 id="limitations">787<h2 id="limitations">

788 Limitaciones788 Limitaciones


800 800 

801Para otras formas de ejecutar Claude en paralelo, consulte:801Para otras formas de ejecutar Claude en paralelo, consulte:

802 802 

803* [Ejecutar agentes en paralelo](/es/agents): compare la vista de agentes con subagentes, equipos de agentes y worktrees803* [Ejecutar agentes en paralelo](/docs/es/agents): compare la vista de agentes con subagentes, equipos de agentes y worktrees

804* [Equipos de agentes](/es/agent-teams): coordine múltiples sesiones que se envíen mensajes entre sí804* [Equipos de agentes](/docs/es/agent-teams): coordine múltiples sesiones que se envíen mensajes entre sí

805* [Claude Code en la web](/es/claude-code-on-the-web): ejecute sesiones en un entorno en la nube administrado en lugar de localmente805* [Claude Code en la web](/docs/es/claude-code-on-the-web): ejecute sesiones en un entorno en la nube administrado en lugar de localmente

806 806 

807<h2 id="version-history">807<h2 id="version-history">

808 Historial de versiones808 Historial de versiones


811La vista de agentes ha evolucionado rápidamente durante la vista previa de investigación. Si está en una versión anterior de Claude Code, algunos comportamientos en esta página pueden diferir; en particular, `claude agents` rechaza banderas que aún no admite con un error `unknown option`. La tabla a continuación enumera cuándo se agregó cada bandera y comportamiento.811La vista de agentes ha evolucionado rápidamente durante la vista previa de investigación. Si está en una versión anterior de Claude Code, algunos comportamientos en esta página pueden diferir; en particular, `claude agents` rechaza banderas que aún no admite con un error `unknown option`. La tabla a continuación enumera cuándo se agregó cada bandera y comportamiento.

812 812 

813| Versión | Cambio |813| Versión | Cambio |

814| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |814| -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

815| v2.1.208 | {/* min-version: 2.1.208 */}Conectarse a una sesión cuyo proceso se ha detenido muestra la última pantalla de su transcripción mientras el proceso se inicia, en lugar de solo una nota `Session is starting`. Una respuesta que no se puede entregar porque el servicio de fondo es inaccesible o el envío falla se guarda y se envía como el siguiente prompt de la sesión cuando su proceso se inicia nuevamente; antes de esta versión, una respuesta perdida mientras el servicio de fondo era inaccesible se descartaba. Un proceso cuyo propio binario fue reemplazado por una actualización aún puede iniciar el supervisor, desde el lanzador `claude` instalado o la versión más nueva en disco, en lugar de fallar hasta que Claude Code se reiniciara. Un supervisor que ejecuta una versión anterior nunca reinicia una sesión inactiva iniciada por una versión más nueva en su propio binario más antiguo. Eliminar una sesión elimina su worktree incluso después de que la sesión movió el worktree a una rama diferente, y mantiene el worktree junto con la fila de sesión cuando el worktree tiene commits que no se han enviado a ningún lugar u otra sesión lo reclama, en lugar de destruir los commits u orfandar el worktree. `/install-github-app` y la lista de configuración `/mcp` y sus acciones de autenticación se rechazan en una sesión de fondo con un mensaje que nombra la alternativa; en v2.1.208 solamente, el selector `/model` fue rechazado de la misma manera y un `/model <name>` escrito cambió solo esa sesión en lugar de también guardar su modelo predeterminado. |815| v2.1.208 | Conectarse a una sesión cuyo proceso se ha detenido muestra la última pantalla de su transcripción mientras el proceso se inicia, en lugar de solo una nota `Session is starting`. Una respuesta que no se puede entregar porque el servicio de fondo es inaccesible o el envío falla se guarda y se envía como el siguiente prompt de la sesión cuando su proceso se inicia nuevamente; antes de esta versión, una respuesta perdida mientras el servicio de fondo era inaccesible se descartaba. Un proceso cuyo propio binario fue reemplazado por una actualización aún puede iniciar el supervisor, desde el lanzador `claude` instalado o la versión más nueva en disco, en lugar de fallar hasta que Claude Code se reiniciara. Un supervisor que ejecuta una versión anterior nunca reinicia una sesión inactiva iniciada por una versión más nueva en su propio binario más antiguo. Eliminar una sesión elimina su worktree incluso después de que la sesión movió el worktree a una rama diferente, y mantiene el worktree junto con la fila de sesión cuando el worktree tiene commits que no se han enviado a ningún lugar u otra sesión lo reclama, en lugar de destruir los commits u orfandar el worktree. `/install-github-app` y la lista de configuración `/mcp` y sus acciones de autenticación se rechazan en una sesión de fondo con un mensaje que nombra la alternativa; en v2.1.208 solamente, el selector `/model` fue rechazado de la misma manera y un `/model <name>` escrito cambió solo esa sesión en lugar de también guardar su modelo predeterminado. |

816| v2.1.207 | {/* min-version: 2.1.207 */}El panel de vista previa se abre con la oración que la fila trunca, como la pregunta exacta para una sesión que lo espera a usted, y muestra cuánto tiempo una sesión bloqueada ha estado esperando como una única línea `waiting 3m` en lugar de prefijar la misma marca de tiempo a la oración de estado y la pregunta. Pegar el mismo texto nuevamente en la entrada de distribución expande el marcador de posición colapsado `[Pasted text #N]` en lugar de agregar uno segundo. Una sesión en segundo plano nombrada al aceptar un plan muestra ese nombre en su fila. Una sesión en segundo plano que se movió a un worktree mantiene su conversación cuando su proceso se reinicia desde la vista de agentes. |816| v2.1.207 | El panel de vista previa se abre con la oración que la fila trunca, como la pregunta exacta para una sesión que lo espera a usted, y muestra cuánto tiempo una sesión bloqueada ha estado esperando como una única línea `waiting 3m` en lugar de prefijar la misma marca de tiempo a la oración de estado y la pregunta. Pegar el mismo texto nuevamente en la entrada de distribución expande el marcador de posición colapsado `[Pasted text #N]` en lugar de agregar uno segundo. Una sesión en segundo plano nombrada al aceptar un plan muestra ese nombre en su fila. Una sesión en segundo plano que se movió a un worktree mantiene su conversación cuando su proceso se reinicia desde la vista de agentes. |

817| v2.1.206 | {/* min-version: 2.1.206 */}Los resúmenes de filas llenan el ancho restante de la fila y se truncan solo en el borde derecho de la terminal en lugar de en 64 columnas. Después de que el supervisor se reinicia en una nueva versión de Claude Code, reinicia las sesiones en segundo plano inactivas restantes en esa versión en el fondo en lugar de algunas por minuto. Eliminar una sesión con `Ctrl+X` o `claude rm` también la borra de la lista de sesiones del supervisor, por lo que la fila ya no reaparece después de un reinicio del supervisor. |817| v2.1.206 | Los resúmenes de filas llenan el ancho restante de la fila y se truncan solo en el borde derecho de la terminal en lugar de en 64 columnas. Después de que el supervisor se reinicia en una nueva versión de Claude Code, reinicia las sesiones en segundo plano inactivas restantes en esa versión en el fondo en lugar de algunas por minuto. Eliminar una sesión con `Ctrl+X` o `claude rm` también la borra de la lista de sesiones del supervisor, por lo que la fila ya no reaparece después de un reinicio del supervisor. |

818| v2.1.205 | {/* min-version: 2.1.205 */}Los resúmenes de filas muestran el informe de una línea propia de la sesión, truncado en 64 columnas, en lugar de una invocación de herramienta sin procesar o un recuento `done/total`; las filas agrupadas por directorio se abren con una palabra de estado coloreada. El panel de vista previa se abre con la oración de estado completa y, para una sesión que espera por usted, su pregunta exacta encima de la entrada de respuesta. Las sesiones que editan, comentan, cierran o marcan una solicitud de extracción como lista con `gh` están vinculadas a ella, no solo las que crean o verifican una solicitud de extracción, un push vincula una solicitud de extracción incluso cuando el nombre de rama local no coincide, y una solicitud de extracción cuya salida del comando de creación excedió el límite en línea también está vinculada. Un turno sin texto legible mantiene el estado anterior de la sesión en lugar de voltearlo de nuevo a `Working`. `claude attach` espera hasta aproximadamente 60 segundos una sesión que se está reiniciando, con una línea de estado que indica por qué, en lugar de fallar. |818| v2.1.205 | Los resúmenes de filas muestran el informe de una línea propia de la sesión, truncado en 64 columnas, en lugar de una invocación de herramienta sin procesar o un recuento `done/total`; las filas agrupadas por directorio se abren con una palabra de estado coloreada. El panel de vista previa se abre con la oración de estado completa y, para una sesión que espera por usted, su pregunta exacta encima de la entrada de respuesta. Las sesiones que editan, comentan, cierran o marcan una solicitud de extracción como lista con `gh` están vinculadas a ella, no solo las que crean o verifican una solicitud de extracción, un push vincula una solicitud de extracción incluso cuando el nombre de rama local no coincide, y una solicitud de extracción cuya salida del comando de creación excedió el límite en línea también está vinculada. Un turno sin texto legible mantiene el estado anterior de la sesión en lugar de voltearlo de nuevo a `Working`. `claude attach` espera hasta aproximadamente 60 segundos una sesión que se está reiniciando, con una línea de estado que indica por qué, en lugar de fallar. |

819| v2.1.203 | {/* min-version: 2.1.203 */}Una puerta de enlace `ANTHROPIC_BASE_URL` exportada en el shell de distribución llega a las sesiones distribuidas desde él en ese mismo directorio cuando el supervisor comparte ese entorno de puerta de enlace, en lugar de ser descartada mientras la clave API exportada junto a ella se mantenía. El `PATH` del shell de distribución se aplica al worker de cada sesión. Presionar `←` mientras los subagentes se están ejecutando espera a que terminen en lugar de reiniciarlos después de diez segundos. La lista vacía siempre muestra los encabezados de sección con una descripción bajo cada uno. Escribir `@` en la entrada de distribución también enumera los worktrees de git registrados del repositorio de lanzamiento que viven dentro de su árbol de directorios. Un esfuerzo heredado de la configuración `effortLevel` sigue ediciones posteriores a esa configuración en lugar de ser fijado en la distribución. Abrir una sesión detenida cuya conversación ya está abierta en otra sesión en ejecución se rechaza con un mensaje en lugar de fallar la fila. Un comando que no está disponible en la vista de agentes deja el texto escrito en la entrada. Un hook `WorktreeCreate` que falla fuera de un repositorio de git ya no bloquea la sesión de editar archivos. |819| v2.1.203 | Una puerta de enlace `ANTHROPIC_BASE_URL` exportada en el shell de distribución llega a las sesiones distribuidas desde él en ese mismo directorio cuando el supervisor comparte ese entorno de puerta de enlace, en lugar de ser descartada mientras la clave API exportada junto a ella se mantenía. El `PATH` del shell de distribución se aplica al worker de cada sesión. Presionar `←` mientras los subagentes se están ejecutando espera a que terminen en lugar de reiniciarlos después de diez segundos. La lista vacía siempre muestra los encabezados de sección con una descripción bajo cada uno. Escribir `@` en la entrada de distribución también enumera los worktrees de git registrados del repositorio de lanzamiento que viven dentro de su árbol de directorios. Un esfuerzo heredado de la configuración `effortLevel` sigue ediciones posteriores a esa configuración en lugar de ser fijado en la distribución. Abrir una sesión detenida cuya conversación ya está abierta en otra sesión en ejecución se rechaza con un mensaje en lugar de fallar la fila. Un comando que no está disponible en la vista de agentes deja el texto escrito en la entrada. Un hook `WorktreeCreate` que falla fuera de un repositorio de git ya no bloquea la sesión de editar archivos. |

820| v2.1.202 | {/* min-version: 2.1.202 */}Un nombre establecido con `/rename` o `Ctrl+R` en una sesión en segundo plano persiste cuando el supervisor detiene y reinicia su proceso, en lugar de revertir al nombre con el que se distribuyó la sesión. |820| v2.1.202 | Un nombre establecido con `/rename` o `Ctrl+R` en una sesión en segundo plano persiste cuando el supervisor detiene y reinicia su proceso, en lugar de revertir al nombre con el que se distribuyó la sesión. |

821| v2.1.200 | {/* min-version: 2.1.200 */}Una versión anterior de Claude Code que reescribe la lista de sesiones en `roster.json` preserva campos escritos por una versión más nueva, coincidiendo con la garantía existente de `state.json`, por lo que las sesiones iniciadas por la versión más nueva continúan aceptando entrada después de que el supervisor se reinicia. Cuando abre una sesión que ha dejado de responder, el supervisor reinicia su proceso y la sesión continúa la respuesta interrumpida desde donde se quedó. |821| v2.1.200 | Una versión anterior de Claude Code que reescribe la lista de sesiones en `roster.json` preserva campos escritos por una versión más nueva, coincidiendo con la garantía existente de `state.json`, por lo que las sesiones iniciadas por la versión más nueva continúan aceptando entrada después de que el supervisor se reinicia. Cuando abre una sesión que ha dejado de responder, el supervisor reinicia su proceso y la sesión continúa la respuesta interrumpida desde donde se quedó. |

822| v2.1.199 | {/* min-version: 2.1.199 */}Una sesión en segundo plano cuyo proceso se cierra antes de terminar de iniciarse en un host con poca memoria muestra `possibly low memory — free some up and retry` en su estado de fila en lugar de solo la razón de salida desnuda. Enviar al segundo plano una sesión con `←` o `/background` lleva su `/color` a la nueva fila. |822| v2.1.199 | Una sesión en segundo plano cuyo proceso se cierra antes de terminar de iniciarse en un host con poca memoria muestra `possibly low memory — free some up and retry` en su estado de fila en lugar de solo la razón de salida desnuda. Enviar al segundo plano una sesión con `←` o `/background` lleva su `/color` a la nueva fila. |

823| v2.1.198 | {/* min-version: 2.1.198 */}La vista de agentes envía una notificación a través de `preferredNotifChannel` cuando una sesión en segundo plano necesita entrada, finaliza o falla, y dispara el hook `Notification` con el tipo `agent_needs_input` o `agent_completed`. `←` y `/exit` dentro de `claude attach <id>` regresan a la vista de agentes en lugar de salir al shell; `Ctrl+Z` regresa al shell. Una sesión en segundo plano que aisló su trabajo en un worktree confirma, envía su propia rama aislada, nunca `main` o `master`, y abre una solicitud de extracción en borrador cuando finaliza en lugar de preguntar primero. `/login` se ejecuta en la vista de agentes y abre el diálogo de inicio de sesión. El diálogo de salida `Background work is running` ofrece `Move to background and exit`. La entrega de salida también cubre subagentes en segundo plano, que se reanudan desde su transcripción en el próximo despertar en lugar de ser reportados como fallidos. `claude --bg` combinado con `-p` o `--print` se rechaza con un error. |823| v2.1.198 | La vista de agentes envía una notificación a través de `preferredNotifChannel` cuando una sesión en segundo plano necesita entrada, finaliza o falla, y dispara el hook `Notification` con el tipo `agent_needs_input` o `agent_completed`. `←` y `/exit` dentro de `claude attach <id>` regresan a la vista de agentes en lugar de salir al shell; `Ctrl+Z` regresa al shell. Una sesión en segundo plano que aisló su trabajo en un worktree confirma, envía su propia rama aislada, nunca `main` o `master`, y abre una solicitud de extracción en borrador cuando finaliza en lugar de preguntar primero. `/login` se ejecuta en la vista de agentes y abre el diálogo de inicio de sesión. El diálogo de salida `Background work is running` ofrece `Move to background and exit`. La entrega de salida también cubre subagentes en segundo plano, que se reanudan desde su transcripción en el próximo despertar en lugar de ser reportados como fallidos. `claude --bg` combinado con `-p` o `--print` se rechaza con un error. |

824| v2.1.196 | {/* min-version: 2.1.196 */}Un único presionar `←` envía al segundo plano una sesión en primer plano; las versiones anteriores requerían dos presiones, con una sugerencia de pie de página y una confirmación. `--dangerously-skip-permissions` pasado a `claude agents` muestra el descargo de responsabilidad de bypass en lugar de ser silenciosamente descartado. Las sesiones interactivas que nunca nombró llevan un nombre predeterminado como `my-app-3f` en listados de sesiones y `claude agents --json`. Los comandos shell en segundo plano y flujos de trabajo dinámicos sobreviven al proceso de la sesión siendo detenido, reiniciado o actualizado, incluso en Windows; establezca `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF=1` para desactivar la entrega. Una transcripción malinterpretada como vacía al reiniciar se renombra con un sufijo `.orphaned-` en lugar de eliminarse. |824| v2.1.196 | Un único presionar `←` envía al segundo plano una sesión en primer plano; las versiones anteriores requerían dos presiones, con una sugerencia de pie de página y una confirmación. `--dangerously-skip-permissions` pasado a `claude agents` muestra el descargo de responsabilidad de bypass en lugar de ser silenciosamente descartado. Las sesiones interactivas que nunca nombró llevan un nombre predeterminado como `my-app-3f` en listados de sesiones y `claude agents --json`. Los comandos shell en segundo plano y flujos de trabajo dinámicos sobreviven al proceso de la sesión siendo detenido, reiniciado o actualizado, incluso en Windows; establezca `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF=1` para desactivar la entrega. Una transcripción malinterpretada como vacía al reiniciar se renombra con un sufijo `.orphaned-` en lugar de eliminarse. |

825| v2.1.195 | {/* min-version: 2.1.195 */}El trabajo en vuelo se traslada cuando envía al segundo plano una sesión en Windows también; establezca `CLAUDE_DISABLE_ADOPT=1` para detenerlo en su lugar. El grupo `Completed` llena el espacio vertical restante y el encabezado se compacta en terminales cortas. Una versión anterior de Claude Code ya no descarta campos `state.json` más nuevos de sesiones o oculta esas sesiones de `claude agents`. Conectarse a una sesión detenida cambia inmediatamente en lugar de mostrar una pantalla en blanco durante hasta cinco segundos. Un supervisor que no puede aceptar conexiones sale y libera su bloqueo por sí solo. |825| v2.1.195 | El trabajo en vuelo se traslada cuando envía al segundo plano una sesión en Windows también; establezca `CLAUDE_DISABLE_ADOPT=1` para detenerlo en su lugar. El grupo `Completed` llena el espacio vertical restante y el encabezado se compacta en terminales cortas. Una versión anterior de Claude Code ya no descarta campos `state.json` más nuevos de sesiones o oculta esas sesiones de `claude agents`. Conectarse a una sesión detenida cambia inmediatamente en lugar de mostrar una pantalla en blanco durante hasta cinco segundos. Un supervisor que no puede aceptar conexiones sale y libera su bloqueo por sí solo. |

826| v2.1.174 | {/* min-version: 2.1.174 */}Las sesiones en segundo plano ya no heredan variables de punto final de puerta de enlace como `ANTHROPIC_BASE_URL` del shell de lanzamiento del supervisor; el supervisor proporciona una instantánea de credencial nueva a workers precalentados, corrigiendo errores espurios de `Could not resolve authentication method`. |826| v2.1.174 | Las sesiones en segundo plano ya no heredan variables de punto final de puerta de enlace como `ANTHROPIC_BASE_URL` del shell de lanzamiento del supervisor; el supervisor proporciona una instantánea de credencial nueva a workers precalentados, corrigiendo errores espurios de `Could not resolve authentication method`. |

827| v2.1.172 | {/* min-version: 2.1.172 */}`/model` en la entrada de distribución establece una anulación de modelo de distribución con alcance de sesión. |827| v2.1.172 | `/model` en la entrada de distribución establece una anulación de modelo de distribución con alcance de sesión. |

828| v2.1.161 | {/* min-version: 2.1.161 */}Los resúmenes de filas muestran un recuento `done/total` para elementos de trabajo paralelos; el panel de vista previa nombra el elemento de trabajo paralelo que más tiempo lleva ejecutándose. |828| v2.1.161 | Los resúmenes de filas muestran un recuento `done/total` para elementos de trabajo paralelos; el panel de vista previa nombra el elemento de trabajo paralelo que más tiempo lleva ejecutándose. |

829| v2.1.157 | {/* min-version: 2.1.157 */}`claude agents` acepta `--agent`; las sesiones distribuidas honran la configuración `agent`. |829| v2.1.157 | `claude agents` acepta `--agent`; las sesiones distribuidas honran la configuración `agent`. |

830| v2.1.145 | {/* min-version: 2.1.145 */}Dictado de voz compatible en la entrada de respuesta del panel de vista previa y la entrada de distribución. |830| v2.1.145 | Dictado de voz compatible en la entrada de respuesta del panel de vista previa y la entrada de distribución. |

831| v2.1.143 | {/* min-version: 2.1.143 */}Se agregó la configuración `worktree.bgIsolation`; `claude agents` acepta `--allow-dangerously-skip-permissions`. |831| v2.1.143 | Se agregó la configuración `worktree.bgIsolation`; `claude agents` acepta `--allow-dangerously-skip-permissions`. |

832| v2.1.142 | {/* min-version: 2.1.142 */}`claude agents` acepta `--permission-mode`, `--model`, `--effort`, `--dangerously-skip-permissions`, `--settings`, `--add-dir`, `--plugin-dir`, `--mcp-config` y `--strict-mcp-config`. |832| v2.1.142 | `claude agents` acepta `--permission-mode`, `--model`, `--effort`, `--dangerously-skip-permissions`, `--settings`, `--add-dir`, `--plugin-dir`, `--mcp-config` y `--strict-mcp-config`. |

833| v2.1.141 | {/* min-version: 2.1.141 */}`claude agents` acepta `--cwd` para limitar la lista a un proyecto. |833| v2.1.141 | `claude agents` acepta `--cwd` para limitar la lista a un proyecto. |

834| v2.1.139 | {/* min-version: 2.1.139 */}La vista de agentes se introdujo como una vista previa de investigación. |834| v2.1.139 | La vista de agentes se introdujo como una vista previa de investigación. |

agents.md +25 −25

Details

6 6 

7> Compare las formas en que Claude Code puede realizar múltiples tareas simultáneamente: subagentes, vista de agentes, equipos de agentes y flujos de trabajo dinámicos.7> Compare las formas en que Claude Code puede realizar múltiples tareas simultáneamente: subagentes, vista de agentes, equipos de agentes y flujos de trabajo dinámicos.

8 8 

9[Subagentes](/es/sub-agents), [vista de agentes](/es/agent-view), [equipos de agentes](/es/agent-teams) y [flujos de trabajo dinámicos](/es/workflows) cada uno paraleliza el trabajo de una manera diferente. El correcto depende de si desea permanecer en cada conversación usted mismo, delegar tareas y volver a verificar más tarde, o si desea que Claude coordine un grupo de trabajadores para usted.9[Subagentes](/docs/es/sub-agents), [vista de agentes](/docs/es/agent-view), [equipos de agentes](/docs/es/agent-teams) y [flujos de trabajo dinámicos](/docs/es/workflows) cada uno paraleliza el trabajo de una manera diferente. El correcto depende de si desea permanecer en cada conversación usted mismo, delegar tareas y volver a verificar más tarde, o si desea que Claude coordine un grupo de trabajadores para usted.

10 10 

11| Enfoque | Lo que le proporciona | Úselo cuando |11| Enfoque | Lo que le proporciona | Úselo cuando |

12| :------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |12| :------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

13| [Subagentes](/es/sub-agents) | Trabajadores delegados dentro de una sesión que realizan una tarea secundaria en su propio contexto y devuelven un resumen | Una tarea secundaria inundaría su conversación principal con resultados de búsqueda, registros o contenidos de archivos que no volverá a consultar |13| [Subagentes](/docs/es/sub-agents) | Trabajadores delegados dentro de una sesión que realizan una tarea secundaria en su propio contexto y devuelven un resumen | Una tarea secundaria inundaría su conversación principal con resultados de búsqueda, registros o contenidos de archivos que no volverá a consultar |

14| [Vista de agentes](/es/agent-view) | Una pantalla para enviar y monitorear sesiones que se ejecutan en segundo plano, abierta con `claude agents`. Vista previa de investigación | Tiene varias tareas independientes y desea delegarlas, verificar el estado de un vistazo e intervenir solo cuando una lo necesite |14| [Vista de agentes](/docs/es/agent-view) | Una pantalla para enviar y monitorear sesiones que se ejecutan en segundo plano, abierta con `claude agents`. Vista previa de investigación | Tiene varias tareas independientes y desea delegarlas, verificar el estado de un vistazo e intervenir solo cuando una lo necesite |

15| [Equipos de agentes](/es/agent-teams) | Múltiples sesiones coordinadas con una lista de tareas compartida y mensajería entre agentes, administradas por un líder. Experimental y deshabilitado por defecto | Desea que Claude divida un proyecto en partes, las asigne y mantenga a los trabajadores sincronizados |15| [Equipos de agentes](/docs/es/agent-teams) | Múltiples sesiones coordinadas con una lista de tareas compartida y mensajería entre agentes, administradas por un líder. Experimental y deshabilitado por defecto | Desea que Claude divida un proyecto en partes, las asigne y mantenga a los trabajadores sincronizados |

16| [Flujos de trabajo dinámicos](/es/workflows) | Un script que ejecuta muchos subagentes y verifica sus resultados, para un trabajo demasiado grande para coordinar en un solo turno o que necesita más de un solo paso | Una tarea crece más allá de un puñado de subagentes, o desea que los hallazgos se verifiquen entre sí: una auditoría en toda la base de código, una migración de 500 archivos, investigación verificada de forma cruzada, o un plan elaborado desde varios ángulos |16| [Flujos de trabajo dinámicos](/docs/es/workflows) | Un script que ejecuta muchos subagentes y verifica sus resultados, para un trabajo demasiado grande para coordinar en un solo turno o que necesita más de un solo paso | Una tarea crece más allá de un puñado de subagentes, o desea que los hallazgos se verifiquen entre sí: una auditoría en toda la base de código, una migración de 500 archivos, investigación verificada de forma cruzada, o un plan elaborado desde varios ángulos |

17 17 

18En cada enfoque, los trabajadores son sesiones de Claude. Para involucrar una herramienta diferente, expóngala a Claude como un [servidor MCP](/es/mcp).18En cada enfoque, los trabajadores son sesiones de Claude. Para involucrar una herramienta diferente, expóngala a Claude como un [servidor MCP](/docs/es/mcp).

19 19 

20Dos herramientas más apoyan este trabajo sin ser una forma de ejecutar agentes en sí mismos:20Dos herramientas más apoyan este trabajo sin ser una forma de ejecutar agentes en sí mismos:

21 21 

22* [Worktrees](/es/worktrees) le dan a cada sesión un checkout de git separado, por lo que las sesiones paralelas nunca editan los mismos archivos. Úselos para sesiones que ejecuta usted mismo. La vista de agentes mueve automáticamente cada sesión enviada a su propio worktree, y los subagentes que genera pueden obtener uno también.22* [Worktrees](/docs/es/worktrees) le dan a cada sesión un checkout de git separado, por lo que las sesiones paralelas nunca editan los mismos archivos. Úselos para sesiones que ejecuta usted mismo. La vista de agentes mueve automáticamente cada sesión enviada a su propio worktree, y los subagentes que genera pueden obtener uno también.

23* [`/batch`](/es/commands) es una [skill](/es/skills) que hace que Claude divida un cambio grande en 5 a 30 subagentes aislados en worktree que cada uno abre una solicitud de extracción. Es un uso empaquetado de subagentes y worktrees, no un estilo de coordinación separado.23* [`/batch`](/docs/es/commands) es una [skill](/docs/es/skills) que hace que Claude divida un cambio grande en 5 a 30 subagentes aislados en worktree que cada uno abre una solicitud de extracción. Es un uso empaquetado de subagentes y worktrees, no un estilo de coordinación separado.

24 24 

25Algunas otras características ejecutan Claude sin que usted dirija cada paso, pero resuelven un problema diferente al de dividir el trabajo entre agentes:25Algunas otras características ejecutan Claude sin que usted dirija cada paso, pero resuelven un problema diferente al de dividir el trabajo entre agentes:

26 26 

27* Un [comando bash en segundo plano](/es/interactive-mode#background-bash-commands) ejecuta un comando de shell sin bloquear la conversación. No genera un agente.27* Un [comando bash en segundo plano](/docs/es/interactive-mode#background-bash-commands) ejecuta un comando de shell sin bloquear la conversación. No genera un agente.

28* Un [subagente bifurcado](/es/sub-agents#fork-the-current-conversation) es un subagente que hereda su contexto de conversación completo en lugar de comenzar de nuevo. Es una forma de generar un subagente, no una superficie separada.28* Un [subagente bifurcado](/docs/es/sub-agents#fork-the-current-conversation) es un subagente que hereda su contexto de conversación completo en lugar de comenzar de nuevo. Es una forma de generar un subagente, no una superficie separada.

29* Una [rutina](/es/routines) ejecuta una sesión según un cronograma en la nube de Anthropic, no en paralelo en su máquina.29* Una [rutina](/docs/es/routines) ejecuta una sesión según un cronograma en la nube de Anthropic, no en paralelo en su máquina.

30 30 

31<Note>31<Note>

32 Ejecutar varias sesiones o subagentes a la vez multiplica el uso de tokens. Consulte [Costos](/es/costs) para obtener detalles de uso y límites de velocidad.32 Ejecutar varias sesiones o subagentes a la vez multiplica el uso de tokens. Consulte [Costos](/docs/es/costs) para obtener detalles de uso y límites de velocidad.

33</Note>33</Note>

34 34 

35<h2 id="choose-an-approach">35<h2 id="choose-an-approach">


39El enfoque correcto depende de quién coordina el trabajo, si los trabajadores necesitan comunicarse y si editan los mismos archivos:39El enfoque correcto depende de quién coordina el trabajo, si los trabajadores necesitan comunicarse y si editan los mismos archivos:

40 40 

41* **¿Quién coordina el trabajo?**41* **¿Quién coordina el trabajo?**

42 * Claude delega y recopila resultados dentro de una conversación: [subagentes](/es/sub-agents)42 * Claude delega y recopila resultados dentro de una conversación: [subagentes](/docs/es/sub-agents)

43 * Usted entrega tareas independientes y verifica más tarde: [vista de agentes](/es/agent-view)43 * Usted entrega tareas independientes y verifica más tarde: [vista de agentes](/docs/es/agent-view)

44 * Claude planifica, asigna y supervisa un grupo de trabajadores: [equipos de agentes](/es/agent-teams), experimental y deshabilitado por defecto44 * Claude planifica, asigna y supervisa un grupo de trabajadores: [equipos de agentes](/docs/es/agent-teams), experimental y deshabilitado por defecto

45 * Un script mantiene el plan en lugar del juicio turno a turno de Claude: [flujos de trabajo dinámicos](/es/workflows). Vea [cómo los flujos de trabajo se comparan con los subagentes y las skills](/es/workflows#when-to-use-a-workflow)45 * Un script mantiene el plan en lugar del juicio turno a turno de Claude: [flujos de trabajo dinámicos](/docs/es/workflows). Vea [cómo los flujos de trabajo se comparan con los subagentes y las skills](/docs/es/workflows#when-to-use-a-workflow)

46* **¿Necesitan los trabajadores hablar entre sí?** Los subagentes reportan resultados nuevamente a la conversación que los generó, y las sesiones de vista de agentes reportan solo a usted. Los compañeros de equipo en un equipo de agentes comparten una lista de tareas y se envían mensajes directamente entre sí.46* **¿Necesitan los trabajadores hablar entre sí?** Los subagentes reportan resultados nuevamente a la conversación que los generó, y las sesiones de vista de agentes reportan solo a usted. Los compañeros de equipo en un equipo de agentes comparten una lista de tareas y se envían mensajes directamente entre sí.

47* **¿Tocan las tareas los mismos archivos?** Aísle el trabajo con [worktrees](/es/worktrees). Los subagentes y las sesiones que ejecuta usted mismo pueden usar cada uno un worktree separado. Los equipos de agentes no aíslan a los compañeros de equipo en worktrees, así que [particione el trabajo](/es/agent-teams#avoid-file-conflicts) para que cada compañero de equipo sea propietario de un conjunto diferente de archivos.47* **¿Tocan las tareas los mismos archivos?** Aísle el trabajo con [worktrees](/docs/es/worktrees). Los subagentes y las sesiones que ejecuta usted mismo pueden usar cada uno un worktree separado. Los equipos de agentes no aíslan a los compañeros de equipo en worktrees, así que [particione el trabajo](/docs/es/agent-teams#avoid-file-conflicts) para que cada compañero de equipo sea propietario de un conjunto diferente de archivos.

48 48 

49<h2 id="check-on-running-work">49<h2 id="check-on-running-work">

50 Verifique el trabajo en ejecución50 Verifique el trabajo en ejecución


52 52 

53El comando para verificar el trabajo en ejecución depende de qué enfoque utilizó:53El comando para verificar el trabajo en ejecución depende de qué enfoque utilizó:

54 54 

55* Para sesiones en segundo plano, `claude agents` abre [vista de agentes](/es/agent-view): una pantalla que muestra cada sesión, su estado y cuáles necesitan su entrada.55* Para sesiones en segundo plano, `claude agents` abre [vista de agentes](/docs/es/agent-view): una pantalla que muestra cada sesión, su estado y cuáles necesitan su entrada.

56* Para subagentes en la sesión actual, los subagentes en segundo plano nombrados aparecen en la escritura de mención @- con su estado. {/* min-version: 2.1.198 */}A partir de v2.1.198, `/agents` ya no abre un panel; imprime un aviso que apunta a las ubicaciones de archivos de subagentes. Para [crear y editar subagentes personalizados](/es/sub-agents#configure-subagents), pregunte a Claude o edite los archivos directamente. A pesar del nombre similar, `/agents` es separado de `claude agents`.56* Para subagentes en la sesión actual, los subagentes en segundo plano nombrados aparecen en la escritura de mención @- con su estado. A partir de v2.1.198, `/agents` ya no abre un panel; imprime un aviso que apunta a las ubicaciones de archivos de subagentes. Para [crear y editar subagentes personalizados](/docs/es/sub-agents#configure-subagents), pregunte a Claude o edite los archivos directamente. A pesar del nombre similar, `/agents` es separado de `claude agents`.

57* Para cualquier cosa que se ejecute en segundo plano de la sesión actual, `/tasks` enumera cada elemento y le permite verificar, adjuntar o detener. La lista también incluye subagentes que han terminado.57* Para cualquier cosa que se ejecute en segundo plano de la sesión actual, `/tasks` enumera cada elemento y le permite verificar, adjuntar o detener. La lista también incluye subagentes que han terminado.

58* Para flujos de trabajo dinámicos, `/workflows` enumera ejecuciones en ejecución y completadas, la fase en la que se encuentra cada una y cuántos agentes han terminado.58* Para flujos de trabajo dinámicos, `/workflows` enumera ejecuciones en ejecución y completadas, la fase en la que se encuentra cada una y cuántos agentes han terminado.

59 59 

60Para una vista de escritorio de todas sus sesiones, consulte [sesiones paralelas en la aplicación de escritorio](/es/desktop#work-in-parallel-with-sessions).60Para una vista de escritorio de todas sus sesiones, consulte [sesiones paralelas en la aplicación de escritorio](/docs/es/desktop#work-in-parallel-with-sessions).

61 61 

62<h2 id="learn-more">62<h2 id="learn-more">

63 Obtenga más información63 Obtenga más información


65 65 

66Cada guía a continuación cubre la configuración y configuración para un enfoque:66Cada guía a continuación cubre la configuración y configuración para un enfoque:

67 67 

68* [Crear subagentes personalizados](/es/sub-agents): defina especialistas reutilizables y controle qué herramientas pueden usar.68* [Crear subagentes personalizados](/docs/es/sub-agents): defina especialistas reutilizables y controle qué herramientas pueden usar.

69* [Administrar agentes con vista de agentes](/es/agent-view): envíe sesiones, observe su estado y adjunte cuando una lo necesite.69* [Administrar agentes con vista de agentes](/docs/es/agent-view): envíe sesiones, observe su estado y adjunte cuando una lo necesite.

70* [Orquestar equipos de agentes](/es/agent-teams): configure un líder y compañeros de equipo, asigne tareas y revise su trabajo.70* [Orquestar equipos de agentes](/docs/es/agent-teams): configure un líder y compañeros de equipo, asigne tareas y revise su trabajo.

71* [Orquestar flujos de trabajo dinámicos](/es/workflows): ejecute un flujo de trabajo agrupado o haga que Claude escriba uno que ejecute muchos subagentes y verifique sus hallazgos entre sí.71* [Orquestar flujos de trabajo dinámicos](/docs/es/workflows): ejecute un flujo de trabajo agrupado o haga que Claude escriba uno que ejecute muchos subagentes y verifique sus hallazgos entre sí.

72* [Ejecutar sesiones paralelas con worktrees](/es/worktrees): inicie Claude en un checkout aislado, controle qué se copia y limpie después.72* [Ejecutar sesiones paralelas con worktrees](/docs/es/worktrees): inicie Claude en un checkout aislado, controle qué se copia y limpie después.

amazon-bedrock.md +28 −28

Details

107 </Step>107 </Step>

108 108 

109 <Step title="Siga los mensajes del asistente">109 <Step title="Siga los mensajes del asistente">

110 Elija cómo se autentica en AWS: un perfil de AWS detectado desde su directorio `~/.aws`, una clave de API de Amazon Bedrock, una clave de acceso y secreto, o credenciales ya en su entorno. El asistente recoge su región, verifica qué modelos de Claude puede invocar su cuenta, y le permite fijarlos. Guarda el resultado en el bloque `env` de su [archivo de configuración de usuario](/es/settings), por lo que no necesita exportar variables de entorno usted mismo.110 Elija cómo se autentica en AWS: un perfil de AWS detectado desde su directorio `~/.aws`, una clave de API de Amazon Bedrock, una clave de acceso y secreto, o credenciales ya en su entorno. El asistente recoge su región, verifica qué modelos de Claude puede invocar su cuenta, y le permite fijarlos. Guarda el resultado en el bloque `env` de su [archivo de configuración de usuario](/docs/es/settings), por lo que no necesita exportar variables de entorno usted mismo.

111 </Step>111 </Step>

112</Steps>112</Steps>

113 113 

114Después de haber iniciado sesión, ejecute `/setup-bedrock` en cualquier momento para reabrirlo el asistente y cambiar sus credenciales, región o fijaciones de modelo. El paso de fijación de modelo comienza desde sus modelos actualmente fijados. El asistente escribe en `~/.claude/settings.json`, o en `$CLAUDE_CONFIG_DIR/settings.json` cuando [`CLAUDE_CONFIG_DIR`](/es/env-vars#variables) está configurado.114Después de haber iniciado sesión, ejecute `/setup-bedrock` en cualquier momento para reabrirlo el asistente y cambiar sus credenciales, región o fijaciones de modelo. El paso de fijación de modelo comienza desde sus modelos actualmente fijados. El asistente escribe en `~/.claude/settings.json`, o en `$CLAUDE_CONFIG_DIR/settings.json` cuando [`CLAUDE_CONFIG_DIR`](/docs/es/env-vars#variables) está configurado.

115 115 

116<h2 id="set-up-manually">116<h2 id="set-up-manually">

117 Configurar manualmente117 Configurar manualmente


162export AWS_PROFILE=your-profile-name162export AWS_PROFILE=your-profile-name

163```163```

164 164 

165Claude Code solicita credenciales de rol desde la región del Centro de Identidades de IAM nombrada por el `sso_region` del perfil, que no necesita coincidir con la región en la que ejecuta Amazon Bedrock. {/* min-version: 2.1.208 */}En v2.1.207, la región de Amazon Bedrock anuló `sso_region`, por lo que un perfil cuya instancia del Centro de Identidades de IAM está en una región diferente no se autenticó con un error `Session token not found or invalid`.165Claude Code solicita credenciales de rol desde la región del Centro de Identidades de IAM nombrada por el `sso_region` del perfil, que no necesita coincidir con la región en la que ejecuta Amazon Bedrock. En v2.1.207, la región de Amazon Bedrock anuló `sso_region`, por lo que un perfil cuya instancia del Centro de Identidades de IAM está en una región diferente no se autenticó con un error `Session token not found or invalid`.

166 166 

167**Opción D: Credenciales de la consola de administración de AWS**167**Opción D: Credenciales de la consola de administración de AWS**

168 168 


188 188 

189Antes de v2.1.207, Claude Code resolvía la cadena en cada solicitud de API, por lo que un perfil respaldado por SSO solicitaba credenciales nuevas del Centro de Identidades de IAM cada vez y podría ser limitado en implementaciones grandes.189Antes de v2.1.207, Claude Code resolvía la cadena en cada solicitud de API, por lo que un perfil respaldado por SSO solicitaba credenciales nuevas del Centro de Identidades de IAM cada vez y podría ser limitado en implementaciones grandes.

190 190 

191El caché cubre todas las opciones de credenciales anteriores excepto una clave de API de Amazon Bedrock, que no utiliza la cadena de proveedores. Para resolver la cadena en cada solicitud en su lugar, establezca [`CLAUDE_CODE_SKIP_AWS_CRED_CACHE=1`](/es/env-vars).191El caché cubre todas las opciones de credenciales anteriores excepto una clave de API de Amazon Bedrock, que no utiliza la cadena de proveedores. Para resolver la cadena en cada solicitud en su lugar, establezca [`CLAUDE_CODE_SKIP_AWS_CRED_CACHE=1`](/docs/es/env-vars).

192 192 

193Cada resolución de la cadena agota el tiempo de espera después de 60 segundos. Si un paso en la cadena se detiene, por ejemplo un asistente `credential_process` que espera entrada que no puede recibir, la solicitud falla con [`AWS default-chain credential resolve timed out`](/es/errors#aws-default-chain-credential-resolve-timed-out). Si su cadena ejecuta un inicio de sesión interactivo que legítimamente necesita más tiempo, como SSO basado en navegador con MFA a través de un contenedor como `aws-vault`, aumente el límite en milisegundos con [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/es/env-vars). Antes de v2.1.207, una resolución de credencial detenida dejaba la solicitud esperando indefinidamente.193Cada resolución de la cadena agota el tiempo de espera después de 60 segundos. Si un paso en la cadena se detiene, por ejemplo un asistente `credential_process` que espera entrada que no puede recibir, la solicitud falla con [`AWS default-chain credential resolve timed out`](/docs/es/errors#aws-default-chain-credential-resolve-timed-out). Si su cadena ejecuta un inicio de sesión interactivo que legítimamente necesita más tiempo, como SSO basado en navegador con MFA a través de un contenedor como `aws-vault`, aumente el límite en milisegundos con [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/es/env-vars). Antes de v2.1.207, una resolución de credencial detenida dejaba la solicitud esperando indefinidamente.

194 194 

195<h4 id="advanced-credential-configuration">195<h4 id="advanced-credential-configuration">

196 Configuración avanzada de credenciales196 Configuración avanzada de credenciales

197</h4>197</h4>

198 198 

199Claude Code admite la actualización automática de credenciales para AWS SSO y proveedores de identidad corporativos. Agregue estas configuraciones a su archivo de configuración de Claude Code (vea [Configuración](/es/settings) para ubicaciones de archivos).199Claude Code admite la actualización automática de credenciales para AWS SSO y proveedores de identidad corporativos. Agregue estas configuraciones a su archivo de configuración de Claude Code (vea [Configuración](/docs/es/settings) para ubicaciones de archivos).

200 200 

201Estas dos configuraciones tienen diferentes condiciones de activación:201Estas dos configuraciones tienen diferentes condiciones de activación:

202 202 


235}235}

236```236```

237 237 

238{/* min-version: 2.1.181 */}A partir de Claude Code v2.1.181, la salida plana de `aws configure export-credentials --format process` también se acepta, con las mismas claves en el nivel superior en lugar de anidadas bajo `Credentials`.238A partir de Claude Code v2.1.181, la salida plana de `aws configure export-credentials --format process` también se acepta, con las mismas claves en el nivel superior en lugar de anidadas bajo `Credentials`.

239 239 

240`Expiration` es opcional. {/* min-version: 2.1.176 */}A partir de Claude Code v2.1.176, cuando el comando devuelve un `Expiration` válido en ISO 8601, Claude Code almacena en caché las credenciales hasta cinco minutos antes de esa hora. Sin él, o en versiones anteriores, las credenciales se almacenan en caché durante una hora.240`Expiration` es opcional. A partir de Claude Code v2.1.176, cuando el comando devuelve un `Expiration` válido en ISO 8601, Claude Code almacena en caché las credenciales hasta cinco minutos antes de esa hora. Sin él, o en versiones anteriores, las credenciales se almacenan en caché durante una hora.

241 241 

242Cuando configura `awsCredentialExport` sin `awsAuthRefresh`, Claude Code utiliza las credenciales exportadas directamente y no re-resuelve la cadena de proveedores de credenciales predeterminada de AWS al inicio. Antes de v2.1.206, el inicio también re-resolvía la cadena de proveedores predeterminada, lo que realizaba una llamada SSO o STS en vivo fuera de su configuración de proxy y podría bloquear el primer mensaje durante varios minutos en redes con salida restringida.242Cuando configura `awsCredentialExport` sin `awsAuthRefresh`, Claude Code utiliza las credenciales exportadas directamente y no re-resuelve la cadena de proveedores de credenciales predeterminada de AWS al inicio. Antes de v2.1.206, el inicio también re-resolvía la cadena de proveedores predeterminada, lo que realizaba una llamada SSO o STS en vivo fuera de su configuración de proxy y podría bloquear el primer mensaje durante varios minutos en redes con salida restringida.

243 243 


263 263 

264Al habilitar Amazon Bedrock para Claude Code, tenga en cuenta lo siguiente:264Al habilitar Amazon Bedrock para Claude Code, tenga en cuenta lo siguiente:

265 265 

266* {/* min-version: 2.1.172 */}A partir de v2.1.172, solo necesita establecer `AWS_REGION` para anular la región de su perfil de AWS o cuando su perfil no tiene región. Claude Code resuelve la región en este orden:266* A partir de v2.1.172, solo necesita establecer `AWS_REGION` para anular la región de su perfil de AWS o cuando su perfil no tiene región. Claude Code resuelve la región en este orden:

267 267 

268 * `AWS_REGION`268 * `AWS_REGION`

269 * `AWS_DEFAULT_REGION`269 * `AWS_DEFAULT_REGION`


272 272 

273 El perfil activo es `AWS_PROFILE` si está establecido, de lo contrario `default`. Establezca `AWS_SHARED_CREDENTIALS_FILE` o `AWS_CONFIG_FILE` para apuntar a rutas de archivo no predeterminadas. Ejecute `/status` para ver la región resuelta. Cuando la región proviene de sus archivos de configuración de AWS o del fallback predeterminado, `/status` también anota la fuente. En v2.1.171 y anteriores, Claude Code no lee los archivos de configuración de AWS, así que establezca `AWS_REGION` explícitamente.273 El perfil activo es `AWS_PROFILE` si está establecido, de lo contrario `default`. Establezca `AWS_SHARED_CREDENTIALS_FILE` o `AWS_CONFIG_FILE` para apuntar a rutas de archivo no predeterminadas. Ejecute `/status` para ver la región resuelta. Cuando la región proviene de sus archivos de configuración de AWS o del fallback predeterminado, `/status` también anota la fuente. En v2.1.171 y anteriores, Claude Code no lee los archivos de configuración de AWS, así que establezca `AWS_REGION` explícitamente.

274* Cuando se usa Amazon Bedrock, el comando `/logout` no está disponible ya que la autenticación se maneja a través de credenciales de AWS.274* Cuando se usa Amazon Bedrock, el comando `/logout` no está disponible ya que la autenticación se maneja a través de credenciales de AWS.

275* La herramienta WebSearch no está disponible en Amazon Bedrock. Vea [Comportamiento de la herramienta WebSearch](/es/tools-reference#websearch-tool-behavior).275* La herramienta WebSearch no está disponible en Amazon Bedrock. Vea [Comportamiento de la herramienta WebSearch](/docs/es/tools-reference#websearch-tool-behavior).

276* Puede usar archivos de configuración para variables de entorno como `AWS_PROFILE` que no desea filtrar a otros procesos. Vea [Configuración](/es/settings) para más información.276* Puede usar archivos de configuración para variables de entorno como `AWS_PROFILE` que no desea filtrar a otros procesos. Vea [Configuración](/docs/es/settings) para más información.

277 277 

278<h3 id="4-pin-model-versions">278<h3 id="4-pin-model-versions">

279 4. Fijar versiones de modelo279 4. Fijar versiones de modelo


293export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'293export ANTHROPIC_DEFAULT_HAIKU_MODEL='us.anthropic.claude-haiku-4-5-20251001-v1:0'

294```294```

295 295 

296Estas variables utilizan IDs de perfil de inferencia entre regiones (con el prefijo `us.`). Si utiliza un prefijo de región diferente o perfiles de inferencia de aplicación, ajuste en consecuencia. En regiones de AWS GovCloud, utilice el prefijo `us-gov.`. Para IDs de modelo actuales y heredados, vea [Descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Vea [Configuración de modelo](/es/model-config#pin-models-for-third-party-deployments) para la lista completa de variables de entorno.296Estas variables utilizan IDs de perfil de inferencia entre regiones (con el prefijo `us.`). Si utiliza un prefijo de región diferente o perfiles de inferencia de aplicación, ajuste en consecuencia. En regiones de AWS GovCloud, utilice el prefijo `us-gov.`. Para IDs de modelo actuales y heredados, vea [Descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Vea [Configuración de modelo](/docs/es/model-config#pin-models-for-third-party-deployments) para la lista completa de variables de entorno.

297 297 

298Claude Code utiliza estos modelos predeterminados cuando no se establecen variables de fijación:298Claude Code utiliza estos modelos predeterminados cuando no se establecen variables de fijación:

299 299 


311 Los modelos Opus tienen un precio por token más alto que los modelos Sonnet, por lo que una implementación que no fija un modelo principal se factura a la tasa de Opus una vez que se actualiza a v2.1.207 o posterior. Para mantener Sonnet 4.5 como el modelo principal, establezca `ANTHROPIC_MODEL` en su ID de modelo completo. Una implementación que dirige el valor predeterminado con `ANTHROPIC_DEFAULT_SONNET_MODEL` y no establece `ANTHROPIC_DEFAULT_OPUS_MODEL` mantiene su modelo Sonnet dirigido como el valor predeterminado.311 Los modelos Opus tienen un precio por token más alto que los modelos Sonnet, por lo que una implementación que no fija un modelo principal se factura a la tasa de Opus una vez que se actualiza a v2.1.207 o posterior. Para mantener Sonnet 4.5 como el modelo principal, establezca `ANTHROPIC_MODEL` en su ID de modelo completo. Una implementación que dirige el valor predeterminado con `ANTHROPIC_DEFAULT_SONNET_MODEL` y no establece `ANTHROPIC_DEFAULT_OPUS_MODEL` mantiene su modelo Sonnet dirigido como el valor predeterminado.

312</Warning>312</Warning>

313 313 

314{/* min-version: 2.1.207 */}Antes de v2.1.207, el modelo principal en Amazon Bedrock se establecía de forma predeterminada en Sonnet 4.5, el alias `opus` se resolvía a Opus 4.6, y las tareas en segundo plano siempre utilizaban el modelo principal.314Antes de v2.1.207, el modelo principal en Amazon Bedrock se establecía de forma predeterminada en Sonnet 4.5, el alias `opus` se resolvía a Opus 4.6, y las tareas en segundo plano siempre utilizaban el modelo principal.

315 315 

316Para personalizar modelos aún más, utilice uno de estos métodos:316Para personalizar modelos aún más, utilice uno de estos métodos:

317 317 


330export ENABLE_PROMPT_CACHING_1H=1330export ENABLE_PROMPT_CACHING_1H=1

331```331```

332 332 

333La TTL de caché de 1 hora se factura a una tasa más alta que la predeterminada de 5 minutos. Vea [duración del caché](/es/prompt-caching#cache-lifetime).333La TTL de caché de 1 hora se factura a una tasa más alta que la predeterminada de 5 minutos. Vea [duración del caché](/docs/es/prompt-caching#cache-lifetime).

334 334 

335<Note>Prompt caching puede no estar disponible en todas las regiones de Amazon Bedrock. Si los recuentos de tokens de caché permanecen en cero, verifique [modelos, regiones y límites compatibles](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-caching.html#prompt-caching-models) en la documentación de Amazon Bedrock.</Note>335<Note>Prompt caching puede no estar disponible en todas las regiones de Amazon Bedrock. Si los recuentos de tokens de caché permanecen en cero, verifique [modelos, regiones y límites compatibles](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-caching.html#prompt-caching-models) en la documentación de Amazon Bedrock.</Note>

336 336 


338 Asignar cada versión de modelo a un perfil de inferencia338 Asignar cada versión de modelo a un perfil de inferencia

339</h4>339</h4>

340 340 

341Las variables de entorno `ANTHROPIC_DEFAULT_*_MODEL` configuran un perfil de inferencia por familia de modelo. Si su organización necesita exponer varias versiones de la misma familia en el selector `/model`, cada una enrutada a su propio ARN de perfil de inferencia de aplicación, utilice la configuración `modelOverrides` en su [archivo de configuración](/es/settings#settings-files) en su lugar.341Las variables de entorno `ANTHROPIC_DEFAULT_*_MODEL` configuran un perfil de inferencia por familia de modelo. Si su organización necesita exponer varias versiones de la misma familia en el selector `/model`, cada una enrutada a su propio ARN de perfil de inferencia de aplicación, utilice la configuración `modelOverrides` en su [archivo de configuración](/docs/es/settings#settings-files) en su lugar.

342 342 

343Este ejemplo asigna cuatro versiones de Opus a ARN distintos para que los usuarios puedan cambiar entre ellas sin eludir los perfiles de inferencia de su organización:343Este ejemplo asigna cuatro versiones de Opus a ARN distintos para que los usuarios puedan cambiar entre ellas sin eludir los perfiles de inferencia de su organización:

344 344 


353}353}

354```354```

355 355 

356Cuando un usuario selecciona una de estas versiones en `/model`, Claude Code llama a Amazon Bedrock con el ARN asignado. {/* min-version: 2.1.200 */}La misma asignación se aplica cuando pasa el ID de modelo de Anthropic directamente a través de `--model` o `ANTHROPIC_MODEL`. Las versiones sin una anulación se revierten al ID de modelo de Amazon Bedrock integrado o a cualquier perfil de inferencia coincidente descubierto al inicio. Antes de v2.1.200, los valores de `--model` y `ANTHROPIC_MODEL` llegaban a Amazon Bedrock tal cual sin pasar por el mapa de anulación. Vea [Anular IDs de modelo por versión](/es/model-config#override-model-ids-per-version) para detalles sobre cómo las anulaciones interactúan con `availableModels` y otras configuraciones de modelo.356Cuando un usuario selecciona una de estas versiones en `/model`, Claude Code llama a Amazon Bedrock con el ARN asignado. La misma asignación se aplica cuando pasa el ID de modelo de Anthropic directamente a través de `--model` o `ANTHROPIC_MODEL`. Las versiones sin una anulación se revierten al ID de modelo de Amazon Bedrock integrado o a cualquier perfil de inferencia coincidente descubierto al inicio. Antes de v2.1.200, los valores de `--model` y `ANTHROPIC_MODEL` llegaban a Amazon Bedrock tal cual sin pasar por el mapa de anulación. Vea [Anular IDs de modelo por versión](/docs/es/model-config#override-model-ids-per-version) para detalles sobre cómo las anulaciones interactúan con `availableModels` y otras configuraciones de modelo.

357 357 

358<h2 id="startup-model-checks">358<h2 id="startup-model-checks">

359 Verificaciones de modelo al inicio359 Verificaciones de modelo al inicio


361 361 

362Cuando Claude Code se inicia con Amazon Bedrock configurado, verifica que los modelos que pretende usar sean accesibles en su cuenta.362Cuando Claude Code se inicia con Amazon Bedrock configurado, verifica que los modelos que pretende usar sean accesibles en su cuenta.

363 363 

364Si ha fijado una versión de modelo que es más antigua que el valor predeterminado actual de Claude Code, y su cuenta puede invocar la versión más reciente, Claude Code le solicita que actualice la fijación. Aceptar escribe el nuevo ID de modelo en su [archivo de configuración de usuario](/es/settings) y reinicia Claude Code. Rechazar se recuerda hasta el próximo cambio de versión predeterminada. Las fijaciones que apuntan a un [ARN de perfil de inferencia de aplicación](#map-each-model-version-to-an-inference-profile) se omiten, ya que son administradas por su administrador.364Si ha fijado una versión de modelo que es más antigua que el valor predeterminado actual de Claude Code, y su cuenta puede invocar la versión más reciente, Claude Code le solicita que actualice la fijación. Aceptar escribe el nuevo ID de modelo en su [archivo de configuración de usuario](/docs/es/settings) y reinicia Claude Code. Rechazar se recuerda hasta el próximo cambio de versión predeterminada. Las fijaciones que apuntan a un [ARN de perfil de inferencia de aplicación](#map-each-model-version-to-an-inference-profile) se omiten, ya que son administradas por su administrador.

365 365 

366Si no ha fijado un modelo y el valor predeterminado actual no está disponible en su cuenta, Claude Code retrocede para la sesión actual y muestra un aviso. Intenta primero versiones anteriores del modelo predeterminado y, cuando el valor predeterminado es un modelo Opus y no hay ninguna versión de Opus disponible, retrocede al modelo Sonnet predeterminado. El retroceso no se persiste. Habilite el modelo más reciente en su cuenta de Amazon Bedrock o [fije una versión](#4-pin-model-versions) para hacer la opción permanente.366Si no ha fijado un modelo y el valor predeterminado actual no está disponible en su cuenta, Claude Code retrocede para la sesión actual y muestra un aviso. Intenta primero versiones anteriores del modelo predeterminado y, cuando el valor predeterminado es un modelo Opus y no hay ninguna versión de Opus disponible, retrocede al modelo Sonnet predeterminado. El retroceso no se persiste. Habilite el modelo más reciente en su cuenta de Amazon Bedrock o [fije una versión](#4-pin-model-versions) para hacer la opción permanente.

367 367 


426 426 

427Claude Sonnet 5, Opus 4.6 y posteriores, y Sonnet 4.6 admiten la [ventana de contexto de 1M de tokens](https://platform.claude.com/docs/es/build-with-claude/context-windows#context-window-sizes-by-model) en Amazon Bedrock. Sonnet 5 se sirve a través del [punto de conexión Mantle](#use-the-mantle-endpoint) y siempre se ejecuta con la ventana de 1M, sin variante `[1m]` para seleccionar. Para los otros modelos, Claude Code habilita automáticamente la ventana de contexto extendida cuando selecciona una variante de modelo de 1M.427Claude Sonnet 5, Opus 4.6 y posteriores, y Sonnet 4.6 admiten la [ventana de contexto de 1M de tokens](https://platform.claude.com/docs/es/build-with-claude/context-windows#context-window-sizes-by-model) en Amazon Bedrock. Sonnet 5 se sirve a través del [punto de conexión Mantle](#use-the-mantle-endpoint) y siempre se ejecuta con la ventana de 1M, sin variante `[1m]` para seleccionar. Para los otros modelos, Claude Code habilita automáticamente la ventana de contexto extendida cuando selecciona una variante de modelo de 1M.

428 428 

429El [asistente de configuración](#sign-in-with-bedrock) ofrece una opción de contexto de 1M cuando fija modelos. Para habilitarlo para un modelo fijado manualmente en su lugar, agregue `[1m]` al ID del modelo. Vea [Fijar modelos para implementaciones de terceros](/es/model-config#pin-models-for-third-party-deployments) para detalles.429El [asistente de configuración](#sign-in-with-bedrock) ofrece una opción de contexto de 1M cuando fija modelos. Para habilitarlo para un modelo fijado manualmente en su lugar, agregue `[1m]` al ID del modelo. Vea [Fijar modelos para implementaciones de terceros](/docs/es/model-config#pin-models-for-third-party-deployments) para detalles.

430 430 

431<h2 id="service-tiers">431<h2 id="service-tiers">

432 Niveles de servicio432 Niveles de servicio


444 AWS Guardrails444 AWS Guardrails

445</h2>445</h2>

446 446 

447[Amazon Bedrock Guardrails](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html) le permite implementar filtrado de contenido para Claude Code. Cree un Guardrail en la [consola de Amazon Bedrock](https://console.aws.amazon.com/bedrock/), publique una versión, luego agregue los encabezados de Guardrail a su [archivo de configuración](/es/settings). Habilite la inferencia entre regiones en su Guardrail si está utilizando perfiles de inferencia entre regiones.447[Amazon Bedrock Guardrails](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html) le permite implementar filtrado de contenido para Claude Code. Cree un Guardrail en la [consola de Amazon Bedrock](https://console.aws.amazon.com/bedrock/), publique una versión, luego agregue los encabezados de Guardrail a su [archivo de configuración](/docs/es/settings). Habilite la inferencia entre regiones en su Guardrail si está utilizando perfiles de inferencia entre regiones.

448 448 

449Configuración de ejemplo:449Configuración de ejemplo:

450 450 


473export AWS_REGION=us-east-1473export AWS_REGION=us-east-1

474```474```

475 475 

476Claude Code construye la URL del punto final desde la región de AWS. {/* min-version: 2.1.172 */}A partir de v2.1.172, la región se resuelve con la misma precedencia que [Amazon Bedrock anterior](#3-configure-claude-code); las versiones anteriores utilizan solo `AWS_REGION`. Para anular la URL para un punto final personalizado o puerta de enlace, establezca `ANTHROPIC_BEDROCK_MANTLE_BASE_URL`.476Claude Code construye la URL del punto final desde la región de AWS. A partir de v2.1.172, la región se resuelve con la misma precedencia que [Amazon Bedrock anterior](#3-configure-claude-code); las versiones anteriores utilizan solo `AWS_REGION`. Para anular la URL para un punto final personalizado o puerta de enlace, establezca `ANTHROPIC_BEDROCK_MANTLE_BASE_URL`.

477 477 

478Ejecute `/status` dentro de Claude Code para confirmar. La línea del proveedor muestra `Amazon Bedrock (Mantle)` cuando Mantle está activo.478Ejecute `/status` dentro de Claude Code para confirmar. La línea del proveedor muestra `Amazon Bedrock (Mantle)` cuando Mantle está activo.

479 479 


500export CLAUDE_CODE_USE_MANTLE=1500export CLAUDE_CODE_USE_MANTLE=1

501```501```

502 502 

503Para mostrar un modelo de Mantle en el selector `/model`, enumere su ID en `availableModels` en su [archivo de configuración](/es/settings). Esta configuración también restringe el selector a las entradas enumeradas. Enumerar `anthropic.claude-haiku-4-5` elimina el alias `haiku` simple del selector, así que también enumere prefijos de versión o IDs completos para las versiones que desee mantener seleccionables. El ID de Mantle y el alias `haiku` se resuelven en la misma familia de modelos, por lo que la fusión mantiene solo la entrada más específica. Vea [Comportamiento de fusión](/es/model-config#merge-behavior):503Para mostrar un modelo de Mantle en el selector `/model`, enumere su ID en `availableModels` en su [archivo de configuración](/docs/es/settings). Esta configuración también restringe el selector a las entradas enumeradas. Enumerar `anthropic.claude-haiku-4-5` elimina el alias `haiku` simple del selector, así que también enumere prefijos de versión o IDs completos para las versiones que desee mantener seleccionables. El ID de Mantle y el alias `haiku` se resuelven en la misma familia de modelos, por lo que la fusión mantiene solo la entrada más específica. Vea [Comportamiento de fusión](/docs/es/model-config#merge-behavior):

504 504 

505```json theme={null}505```json theme={null}

506{506{


508}508}

509```509```

510 510 

511Las entradas con el prefijo `anthropic.` se agregan como opciones de selector personalizado y se enrutan a Mantle. Reemplace `anthropic.claude-haiku-4-5` con el ID de modelo que su cuenta ha sido autorizada. Vea [Restringir selección de modelo](/es/model-config#restrict-model-selection) para cómo `availableModels` interactúa con otras configuraciones de modelo.511Las entradas con el prefijo `anthropic.` se agregan como opciones de selector personalizado y se enrutan a Mantle. Reemplace `anthropic.claude-haiku-4-5` con el ID de modelo que su cuenta ha sido autorizada. Vea [Restringir selección de modelo](/docs/es/model-config#restrict-model-selection) para cómo `availableModels` interactúa con otras configuraciones de modelo.

512 512 

513Cuando ambos proveedores están activos, `/status` muestra `Amazon Bedrock + Amazon Bedrock (Mantle)`.513Cuando ambos proveedores están activos, `/status` muestra `Amazon Bedrock + Amazon Bedrock (Mantle)`.

514 514 


516 Enrutar Mantle a través de una puerta de enlace516 Enrutar Mantle a través de una puerta de enlace

517</h3>517</h3>

518 518 

519Si su organización enruta el tráfico de modelo a través de una [puerta de enlace LLM](/es/llm-gateway) centralizada que inyecta credenciales de AWS del lado del servidor, deshabilite la autenticación del lado del cliente para que Claude Code envíe solicitudes sin firmas SigV4 o encabezados `x-api-key`:519Si su organización enruta el tráfico de modelo a través de una [puerta de enlace LLM](/docs/es/llm-gateway) centralizada que inyecta credenciales de AWS del lado del servidor, deshabilite la autenticación del lado del cliente para que Claude Code envíe solicitudes sin firmas SigV4 o encabezados `x-api-key`:

520 520 

521```bash theme={null}521```bash theme={null}

522export CLAUDE_CODE_USE_MANTLE=1522export CLAUDE_CODE_USE_MANTLE=1


528 Variables de entorno de Mantle528 Variables de entorno de Mantle

529</h3>529</h3>

530 530 

531Estas variables son específicas del punto final de Mantle. Vea [Variables de entorno](/es/env-vars) para la lista completa.531Estas variables son específicas del punto final de Mantle. Vea [Variables de entorno](/docs/es/env-vars) para la lista completa.

532 532 

533| Variable | Propósito |533| Variable | Propósito |

534| :-------------------------------------- | :------------------------------------------------------------------------------------ |534| :-------------------------------------- | :------------------------------------------------------------------------------------ |


545 Bucle de autenticación con SSO y proxies corporativos545 Bucle de autenticación con SSO y proxies corporativos

546</h3>546</h3>

547 547 

548Si las pestañas del navegador se abren repetidamente cuando se usa AWS SSO, elimine la configuración `awsAuthRefresh` de su [archivo de configuración](/es/settings). Esto puede ocurrir cuando las VPN corporativas o los proxies de inspección TLS interrumpen el flujo del navegador SSO. Claude Code trata la conexión interrumpida como un error de autenticación, vuelve a ejecutar `awsAuthRefresh` y entra en un bucle indefinido.548Si las pestañas del navegador se abren repetidamente cuando se usa AWS SSO, elimine la configuración `awsAuthRefresh` de su [archivo de configuración](/docs/es/settings). Esto puede ocurrir cuando las VPN corporativas o los proxies de inspección TLS interrumpen el flujo del navegador SSO. Claude Code trata la conexión interrumpida como un error de autenticación, vuelve a ejecutar `awsAuthRefresh` y entra en un bucle indefinido.

549 549 

550Si su entorno de red interfiere con los flujos de SSO automáticos basados en navegador, use `aws sso login` manualmente antes de iniciar Claude Code en lugar de depender de `awsAuthRefresh`.550Si su entorno de red interfiere con los flujos de SSO automáticos basados en navegador, use `aws sso login` manualmente antes de iniciar Claude Code en lugar de depender de `awsAuthRefresh`.

551 551 


573 573 

574Antes de v2.1.208, la misma configuración incorrecta aparecía como `API Error: Truncated event message received` después de que toda la respuesta había sido almacenada en búfer.574Antes de v2.1.208, la misma configuración incorrecta aparecía como `API Error: Truncated event message received` después de que toda la respuesta había sido almacenada en búfer.

575 575 

576Para solucionarlo, configure la puerta de enlace para pasar el cuerpo de la respuesta `InvokeModelWithResponseStream` y su encabezado `Content-Type` sin modificar. Si la puerta de enlace reescribe solo el encabezado y pasa el cuerpo binario intacto, establezca [`CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD=1`](/es/env-vars) para omitir la verificación hasta que se corrija la puerta de enlace. Con la verificación desactivada, un cuerpo de respuesta que fue transformado falla con `Truncated event message received` nuevamente.576Para solucionarlo, configure la puerta de enlace para pasar el cuerpo de la respuesta `InvokeModelWithResponseStream` y su encabezado `Content-Type` sin modificar. Si la puerta de enlace reescribe solo el encabezado y pasa el cuerpo binario intacto, establezca [`CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD=1`](/docs/es/env-vars) para omitir la verificación hasta que se corrija la puerta de enlace. Con la verificación desactivada, un cuerpo de respuesta que fue transformado falla con `Truncated event message received` nuevamente.

577 577 

578<h3 id="zero-token-counts-in-/context">578<h3 id="zero-token-counts-in-/context">

579 Recuentos de tokens cero en /context579 Recuentos de tokens cero en /context

580</h3>580</h3>

581 581 

582El comando `/context` cuenta tokens para cada grupo de herramientas enviando los esquemas de herramientas a la API de conteo de tokens de Amazon Bedrock. {/* min-version: 2.1.196 */}En versiones de Claude Code anteriores a v2.1.196, Amazon Bedrock rechazó esa solicitud porque los esquemas llevaban campos que su API de conteo de tokens no acepta, por lo que cada grupo de herramientas mostraba 0 tokens. Otras filas en el desglose, como archivos de mensajes y memoria, no se ven afectadas.582El comando `/context` cuenta tokens para cada grupo de herramientas enviando los esquemas de herramientas a la API de conteo de tokens de Amazon Bedrock. En versiones de Claude Code anteriores a v2.1.196, Amazon Bedrock rechazó esa solicitud porque los esquemas llevaban campos que su API de conteo de tokens no acepta, por lo que cada grupo de herramientas mostraba 0 tokens. Otras filas en el desglose, como archivos de mensajes y memoria, no se ven afectadas.

583 583 

584Actualice a v2.1.196 o posterior.584Actualice a v2.1.196 o posterior.

585 585 


587 Errores del punto final de Mantle587 Errores del punto final de Mantle

588</h3>588</h3>

589 589 

590Si `/status` no muestra `Amazon Bedrock (Mantle)` después de establecer `CLAUDE_CODE_USE_MANTLE`, la variable no está llegando al proceso. Confirme que se exporta en el shell donde lanzó `claude`, o establézcala en el bloque `env` de su [archivo de configuración](/es/settings).590Si `/status` no muestra `Amazon Bedrock (Mantle)` después de establecer `CLAUDE_CODE_USE_MANTLE`, la variable no está llegando al proceso. Confirme que se exporta en el shell donde lanzó `claude`, o establézcala en el bloque `env` de su [archivo de configuración](/docs/es/settings).

591 591 

592Un `403` del punto final de Mantle con credenciales válidas significa que su cuenta de AWS no ha sido autorizada para acceder al modelo que solicitó. Póngase en contacto con su equipo de cuenta de AWS para solicitar acceso.592Un `403` del punto final de Mantle con credenciales válidas significa que su cuenta de AWS no ha sido autorizada para acceder al modelo que solicitó. Póngase en contacto con su equipo de cuenta de AWS para solicitar acceso.

593 593 

artifacts.md +15 −19

Details

6 6 

7> Los artefactos convierten el trabajo de Claude Code en páginas interactivas en vivo en claude.ai que puede mantener privadas, compartir con su organización o publicar en un enlace público.7> Los artefactos convierten el trabajo de Claude Code en páginas interactivas en vivo en claude.ai que puede mantener privadas, compartir con su organización o publicar en un enlace público.

8 8 

9{/* plan-availability: feature=artifacts plans=pro,max,team,enterprise providers=anthropic */}

10 

11<Note>9<Note>

12 Los artefactos están disponibles en los planes Pro, Max, Team y Enterprise y requieren una sesión iniciada con [`/login`](/es/setup#authenticate). Consulte [Disponibilidad](#availability) para ver el conjunto completo de requisitos.10 Los artefactos están disponibles en los planes Pro, Max, Team y Enterprise y requieren una sesión iniciada con [`/login`](/docs/es/setup#authenticate). Consulte [Disponibilidad](#availability) para ver el conjunto completo de requisitos.

13</Note>11</Note>

14 12 

15Un artefacto es una página web interactiva en vivo que Claude Code publica desde su sesión en una URL privada en claude.ai. Puede abrirla en un navegador y se actualiza en el lugar mientras la sesión continúa. Compártala desde el encabezado de la página cuando desee que otra persona también la vea. Por ejemplo, use un artefacto para guiar a un revisor a través de una solicitud de extracción con diffs anotados, crear un panel de control a partir de datos de sesión, o mantener una línea de tiempo de investigación que se complete mientras Claude trabaja.13Un artefacto es una página web interactiva en vivo que Claude Code publica desde su sesión en una URL privada en claude.ai. Puede abrirla en un navegador y se actualiza en el lugar mientras la sesión continúa. Compártala desde el encabezado de la página cuando desee que otra persona también la vea. Por ejemplo, use un artefacto para guiar a un revisor a través de una solicitud de extracción con diffs anotados, crear un panel de control a partir de datos de sesión, o mantener una línea de tiempo de investigación que se complete mientras Claude trabaja.


22 Cuándo usar un artefacto20 Cuándo usar un artefacto

23</h2>21</h2>

24 22 

25Use un artefacto cuando el texto de terminal sea el medio incorrecto para lo que Claude produjo: salida que es más fácil de ver e interactuar que de leer línea por línea. Claude construye la página a partir de cualquier cosa a la que su sesión pueda acceder, incluida su base de código y los datos que extrae a través de sus [herramientas conectadas](/es/mcp), por lo que la página puede mostrar cosas que tomaría párrafos describir. Por ejemplo, pida a Claude que:23Use un artefacto cuando el texto de terminal sea el medio incorrecto para lo que Claude produjo: salida que es más fácil de ver e interactuar que de leer línea por línea. Claude construye la página a partir de cualquier cosa a la que su sesión pueda acceder, incluida su base de código y los datos que extrae a través de sus [herramientas conectadas](/docs/es/mcp), por lo que la página puede mostrar cosas que tomaría párrafos describir. Por ejemplo, pida a Claude que:

26 24 

27* Guíe a un revisor a través de una solicitud de extracción con diffs anotados25* Guíe a un revisor a través de una solicitud de extracción con diffs anotados

28* Represente un panel de control a partir de datos que la sesión ya extrajo26* Represente un panel de control a partir de datos que la sesión ya extrajo


104 Extraer datos en vivo con conectores MCP102 Extraer datos en vivo con conectores MCP

105</h2>103</h2>

106 104 

107{/* plan-availability: feature=artifact-mcp plans=pro,max,team,enterprise providers=anthropic */}105Un artefacto puede llamar a [conectores MCP](/docs/es/mcp#use-mcp-servers-from-claude-ai) cada vez que alguien lo visualiza, de modo que la página muestre datos actuales en lugar de una instantánea de la sesión que la construyó. Las llamadas de conectores desde artefactos están disponibles en los planes Pro, Max, Team y Enterprise y requieren Claude Code v2.1.209 o posterior. En versiones anteriores, Claude publica la página con los datos que la sesión recopiló mientras la construía.

108 

109Un artefacto puede llamar a [conectores MCP](/es/mcp#use-mcp-servers-from-claude-ai) cada vez que alguien lo visualiza, de modo que la página muestre datos actuales en lugar de una instantánea de la sesión que la construyó. Las llamadas de conectores desde artefactos están disponibles en los planes Pro, Max, Team y Enterprise y requieren Claude Code v2.1.209 o posterior. En versiones anteriores, Claude publica la página con los datos que la sesión recopiló mientras la construía.

110 106 

111Para crear una página respaldada por un conector, nombre el conector y los datos que desea en su indicación:107Para crear una página respaldada por un conector, nombre el conector y los datos que desea en su indicación:

112 108 


202 Mejorar el diseño visual198 Mejorar el diseño visual

203</h2>199</h2>

204 200 

205A partir de Claude Code v2.1.183, Claude aplica una skill de diseño integrada cuando construye un artefacto, por lo que las páginas obtienen una paleta deliberada, tipografía y diseño sin indicaciones adicionales. Esa skill también busca un sistema de diseño existente en su proyecto antes de elegir el suyo. Para mantener los artefactos consistentes con la marca de su producto, registre sus tokens de diseño donde Claude pueda encontrarlos, como el [CLAUDE.md](/es/memory) del proyecto o un archivo de tema en su repositorio:201A partir de Claude Code v2.1.183, Claude aplica una skill de diseño integrada cuando construye un artefacto, por lo que las páginas obtienen una paleta deliberada, tipografía y diseño sin indicaciones adicionales. Esa skill también busca un sistema de diseño existente en su proyecto antes de elegir el suyo. Para mantener los artefactos consistentes con la marca de su producto, registre sus tokens de diseño donde Claude pueda encontrarlos, como el [CLAUDE.md](/docs/es/memory) del proyecto o un archivo de tema en su repositorio:

206 202 

207```markdown theme={null}203```markdown theme={null}

208## Design system204## Design system


243| Requisito | Disponible cuando |239| Requisito | Disponible cuando |

244| :----------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |240| :----------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

245| Plan | Pro, Max, Team o Enterprise. En planes Pro y Max, los artefactos son privados para usted hasta que los comparta, y no se aplica ninguna gestión de administrador. En planes de Team, los artefactos están habilitados de forma predeterminada. En planes de Enterprise, un propietario [los habilita](#manage-artifacts-for-your-organization) en la configuración de administrador de claude.ai. |241| Plan | Pro, Max, Team o Enterprise. En planes Pro y Max, los artefactos son privados para usted hasta que los comparta, y no se aplica ninguna gestión de administrador. En planes de Team, los artefactos están habilitados de forma predeterminada. En planes de Enterprise, un propietario [los habilita](#manage-artifacts-for-your-organization) en la configuración de administrador de claude.ai. |

246| Autenticación | La sesión está respaldada por una cuenta de claude.ai: inicie sesión con `/login` en la CLI o la aplicación de escritorio. Las sesiones de Claude Tag están autenticadas a través de la identidad del agente, por lo que no se requiere ningún paso. Las sesiones que usan una clave API, [token de puerta de enlace](/es/llm-gateway) o credencial de proveedor de nube no pueden publicar. |242| Autenticación | La sesión está respaldada por una cuenta de claude.ai: inicie sesión con `/login` en la CLI o la aplicación de escritorio. Las sesiones de Claude Tag están autenticadas a través de la identidad del agente, por lo que no se requiere ningún paso. Las sesiones que usan una clave API, [token de puerta de enlace](/docs/es/llm-gateway) o credencial de proveedor de nube no pueden publicar. |

247| Proveedor de modelo | API de Anthropic. No disponible en [Amazon Bedrock](/es/amazon-bedrock), [Google Cloud's Agent Platform](/es/google-vertex-ai) o [Microsoft Foundry](/es/microsoft-foundry). |243| Proveedor de modelo | API de Anthropic. No disponible en [Amazon Bedrock](/docs/es/amazon-bedrock), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai) o [Microsoft Foundry](/docs/es/microsoft-foundry). |

248| Política de organización | Las claves de cifrado administradas por el cliente (CMEK), HIPAA y [Retención de datos cero](/es/zero-data-retention) no están habilitadas para la organización. |244| Política de organización | Las claves de cifrado administradas por el cliente (CMEK), HIPAA y [Retención de datos cero](/docs/es/zero-data-retention) no están habilitadas para la organización. |

249| Superficie | CLI de Claude Code versión 2.1.183 o posterior, o la aplicación de escritorio Claude versión 1.13576.0 o posterior. Las sesiones de [Claude Tag](https://claude.com/docs/claude-tag/overview) también pueden publicar artefactos cuando tanto Claude Tag como los artefactos están habilitados para la organización. Deshabilitado de forma predeterminada en contextos de [Agent SDK](/es/agent-sdk/overview), GitHub Action y MCP-server, y cuando [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/es/env-vars) está establecido. |245| Superficie | CLI de Claude Code versión 2.1.183 o posterior, o la aplicación de escritorio Claude versión 1.13576.0 o posterior. Las sesiones de [Claude Tag](https://claude.com/docs/claude-tag/overview) también pueden publicar artefactos cuando tanto Claude Tag como los artefactos están habilitados para la organización. Deshabilitado de forma predeterminada en contextos de [Agent SDK](/docs/es/agent-sdk/overview), GitHub Action y MCP-server, y cuando [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/es/env-vars) está establecido. |

250 246 

251<h2 id="disable-artifacts">247<h2 id="disable-artifacts">

252 Deshabilitar artefactos248 Deshabilitar artefactos


256 252 

257| Método | Configuración |253| Método | Configuración |

258| :--------------------------------------- | :-------------------------------------- |254| :--------------------------------------- | :-------------------------------------- |

259| [Archivo de configuración](/es/settings) | `"disableArtifact": true` |255| [Archivo de configuración](/docs/es/settings) | `"disableArtifact": true` |

260| [Variable de entorno](/es/env-vars) | `CLAUDE_CODE_DISABLE_ARTIFACT=1` |256| [Variable de entorno](/docs/es/env-vars) | `CLAUDE_CODE_DISABLE_ARTIFACT=1` |

261| [Regla de permiso](/es/permissions) | Agregue `Artifact` a `permissions.deny` |257| [Regla de permiso](/docs/es/permissions) | Agregue `Artifact` a `permissions.deny` |

262 258 

263<h2 id="manage-artifacts-for-your-organization">259<h2 id="manage-artifacts-for-your-organization">

264 Gestionar artefactos para su organización260 Gestionar artefactos para su organización


300 Permitir el dominio del visor296 Permitir el dominio del visor

301</h3>297</h3>

302 298 

303El visor en claude.ai carga cada artefacto desde un origen `*.claudeusercontent.com` aislado. Si su organización restringe el acceso a la red saliente, agregue ese dominio a su lista de permitidos junto con `claude.ai`. Consulte [Requisitos de acceso a la red](/es/network-config#network-access-requirements) para la lista completa.299El visor en claude.ai carga cada artefacto desde un origen `*.claudeusercontent.com` aislado. Si su organización restringe el acceso a la red saliente, agregue ese dominio a su lista de permitidos junto con `claude.ai`. Consulte [Requisitos de acceso a la red](/docs/es/network-config#network-access-requirements) para la lista completa.

304 300 

305<h3 id="list-and-delete-artifacts-with-the-compliance-api">301<h3 id="list-and-delete-artifacts-with-the-compliance-api">

306 Enumerar y eliminar artefactos con la API de Cumplimiento302 Enumerar y eliminar artefactos con la API de Cumplimiento


320 Recursos relacionados316 Recursos relacionados

321</h2>317</h2>

322 318 

323* Explore [patrones de indicaciones y flujos de trabajo](/es/prompt-library) que se emparejan con artefactos319* Explore [patrones de indicaciones y flujos de trabajo](/docs/es/prompt-library) que se emparejan con artefactos

324* Convierta un indicador de artefacto que reutiliza en una [skill](/es/skills) para que pueda invocarlo como un comando320* Convierta un indicador de artefacto que reutiliza en una [skill](/docs/es/skills) para que pueda invocarlo como un comando

325* [Conecte servidores MCP](/es/mcp) para que Claude pueda extraer datos en un artefacto mientras lo construye321* [Conecte servidores MCP](/docs/es/mcp) para que Claude pueda extraer datos en un artefacto mientras lo construye

authentication.md +28 −28

Details

12 Inicie sesión en Claude Code12 Inicie sesión en Claude Code

13</h2>13</h2>

14 14 

15Después de [instalar Claude Code](/es/setup#install-claude-code), ejecute `claude` en su terminal. En el primer lanzamiento, Claude Code abre una ventana del navegador para que inicie sesión.15Después de [instalar Claude Code](/docs/es/setup#install-claude-code), ejecute `claude` en su terminal. En el primer lanzamiento, Claude Code abre una ventana del navegador para que inicie sesión.

16 16 

17Si el navegador no se abre automáticamente, presione `c` para copiar la URL de inicio de sesión al portapapeles y luego péguelo en su navegador.17Si el navegador no se abre automáticamente, presione `c` para copiar la URL de inicio de sesión al portapapeles y luego péguelo en su navegador.

18 18 


25* **Suscripción Claude Pro o Max**: inicie sesión con su cuenta de Claude.ai. Suscríbase en [claude.com/pricing](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=authentication_pro_max).25* **Suscripción Claude Pro o Max**: inicie sesión con su cuenta de Claude.ai. Suscríbase en [claude.com/pricing](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=authentication_pro_max).

26* **Claude for Teams o Enterprise**: inicie sesión con la cuenta de Claude.ai que su administrador de equipo le invitó a usar.26* **Claude for Teams o Enterprise**: inicie sesión con la cuenta de Claude.ai que su administrador de equipo le invitó a usar.

27* **Claude Console**: inicie sesión con sus credenciales de Console. Su administrador debe haberle [invitado](#claude-console-authentication) primero.27* **Claude Console**: inicie sesión con sus credenciales de Console. Su administrador debe haberle [invitado](#claude-console-authentication) primero.

28* **Proveedores de nube**: si su organización usa [Amazon Bedrock](/es/amazon-bedrock), [Google Cloud's Agent Platform](/es/google-vertex-ai) o [Microsoft Foundry](/es/microsoft-foundry), establezca las variables de entorno requeridas antes de ejecutar `claude`, o seleccione **plataforma de terceros** en el símbolo del sistema de inicio de sesión, que inicia un asistente de configuración interactivo para Bedrock y Vertex AI. No se necesita inicio de sesión en el navegador.28* **Proveedores de nube**: si su organización usa [Amazon Bedrock](/docs/es/amazon-bedrock), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai) o [Microsoft Foundry](/docs/es/microsoft-foundry), establezca las variables de entorno requeridas antes de ejecutar `claude`, o seleccione **plataforma de terceros** en el símbolo del sistema de inicio de sesión, que inicia un asistente de configuración interactivo para Bedrock y Vertex AI. No se necesita inicio de sesión en el navegador.

29* **Puerta de enlace en la nube**: si su organización ejecuta una [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) autohospedada, inicie sesión con SSO corporativo a través de `/login`. El token emitido por la puerta de enlace es la única credencial de la sesión.29* **Puerta de enlace en la nube**: si su organización ejecuta una [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) autohospedada, inicie sesión con SSO corporativo a través de `/login`. El token emitido por la puerta de enlace es la única credencial de la sesión.

30 30 

31Los administradores pueden restringir el inicio de sesión interactivo con la configuración administrada [`forceLoginMethod` y `forceLoginOrgUUID`](/es/settings#available-settings). Cuando se establece cualquiera de ellas, las sesiones autenticadas por `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` o `apiKeyHelper` se bloquean al inicio; las sesiones de proveedores de nube no se ven afectadas.31Los administradores pueden restringir el inicio de sesión interactivo con la configuración administrada [`forceLoginMethod` y `forceLoginOrgUUID`](/docs/es/settings#available-settings). Cuando se establece cualquiera de ellas, las sesiones autenticadas por `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` o `apiKeyHelper` se bloquean al inicio; las sesiones de proveedores de nube no se ven afectadas.

32 32 

33Para cerrar sesión y volver a autenticarse, escriba `/logout` en el símbolo del sistema de Claude Code. Cerrar sesión también restablece su estado de configuración de primer lanzamiento, por lo que la próxima vez que ejecute `claude` le guiará a través del inicio de sesión y la configuración nuevamente.33Para cerrar sesión y volver a autenticarse, escriba `/logout` en el símbolo del sistema de Claude Code. Cerrar sesión también restablece su estado de configuración de primer lanzamiento, por lo que la próxima vez que ejecute `claude` le guiará a través del inicio de sesión y la configuración nuevamente.

34 34 

35Si tiene problemas para iniciar sesión, consulte [solución de problemas de autenticación](/es/troubleshoot-install#login-and-authentication).35Si tiene problemas para iniciar sesión, consulte [solución de problemas de autenticación](/docs/es/troubleshoot-install#login-and-authentication).

36 36 

37<h2 id="set-up-team-authentication">37<h2 id="set-up-team-authentication">

38 Configure la autenticación del equipo38 Configure la autenticación del equipo


42 42 

43* [Claude for Teams o Enterprise](#claude-for-teams-or-enterprise), recomendado para la mayoría de los equipos43* [Claude for Teams o Enterprise](#claude-for-teams-or-enterprise), recomendado para la mayoría de los equipos

44* [Claude Console](#claude-console-authentication)44* [Claude Console](#claude-console-authentication)

45* [Puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway), una puerta de enlace autohospedada que inicia sesión a los desarrolladores con su IdP y enruta la inferencia al proveedor de nube que configure45* [Puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway), una puerta de enlace autohospedada que inicia sesión a los desarrolladores con su IdP y enruta la inferencia al proveedor de nube que configure

46* [Amazon Bedrock](/es/amazon-bedrock)46* [Amazon Bedrock](/docs/es/amazon-bedrock)

47* [Plataforma de agentes de Google Cloud](/es/google-vertex-ai)47* [Plataforma de agentes de Google Cloud](/docs/es/google-vertex-ai)

48* [Microsoft Foundry](/es/microsoft-foundry)48* [Microsoft Foundry](/docs/es/microsoft-foundry)

49 49 

50<h3 id="claude-for-teams-or-enterprise">50<h3 id="claude-for-teams-or-enterprise">

51 Claude for Teams o Enterprise51 Claude for Teams o Enterprise


99 Cada usuario invitado necesita:99 Cada usuario invitado necesita:

100 100 

101 * Aceptar la invitación de Console101 * Aceptar la invitación de Console

102 * [Verificar requisitos del sistema](/es/setup#system-requirements)102 * [Verificar requisitos del sistema](/docs/es/setup#system-requirements)

103 * [Instalar Claude Code](/es/setup#install-claude-code)103 * [Instalar Claude Code](/docs/es/setup#install-claude-code)

104 * Iniciar sesión con credenciales de cuenta de Console104 * Iniciar sesión con credenciales de cuenta de Console

105 </Step>105 </Step>

106</Steps>106</Steps>


113 113 

114<Steps>114<Steps>

115 <Step title="Seguir la configuración del proveedor">115 <Step title="Seguir la configuración del proveedor">

116 Siga la [documentación de Amazon Bedrock](/es/amazon-bedrock), [documentación de Plataforma de agentes de Google Cloud](/es/google-vertex-ai) o [documentación de Microsoft Foundry](/es/microsoft-foundry).116 Siga la [documentación de Amazon Bedrock](/docs/es/amazon-bedrock), [documentación de Plataforma de agentes de Google Cloud](/docs/es/google-vertex-ai) o [documentación de Microsoft Foundry](/docs/es/microsoft-foundry).

117 </Step>117 </Step>

118 118 

119 <Step title="Distribuir configuración">119 <Step title="Distribuir configuración">

120 Distribuya las variables de entorno e instrucciones para generar credenciales de nube a sus usuarios. Lea más sobre cómo [administrar la configuración aquí](/es/settings).120 Distribuya las variables de entorno e instrucciones para generar credenciales de nube a sus usuarios. Lea más sobre cómo [administrar la configuración aquí](/docs/es/settings).

121 </Step>121 </Step>

122 122 

123 <Step title="Instalar Claude Code">123 <Step title="Instalar Claude Code">

124 Los usuarios pueden [instalar Claude Code](/es/setup#install-claude-code).124 Los usuarios pueden [instalar Claude Code](/docs/es/setup#install-claude-code).

125 </Step>125 </Step>

126</Steps>126</Steps>

127 127 


136 * En Linux, las credenciales se almacenan en `~/.claude/.credentials.json` con modo de archivo `0600`.136 * En Linux, las credenciales se almacenan en `~/.claude/.credentials.json` con modo de archivo `0600`.

137 * En Windows, las credenciales se almacenan en `%USERPROFILE%\.claude\.credentials.json` y heredan los controles de acceso del directorio de su perfil de usuario, lo que restringe el archivo a su cuenta de usuario de forma predeterminada.137 * En Windows, las credenciales se almacenan en `%USERPROFILE%\.claude\.credentials.json` y heredan los controles de acceso del directorio de su perfil de usuario, lo que restringe el archivo a su cuenta de usuario de forma predeterminada.

138 * Si ha establecido la variable de entorno `CLAUDE_CONFIG_DIR` en Linux o Windows, el archivo `.credentials.json` se encuentra en ese directorio en su lugar.138 * Si ha establecido la variable de entorno `CLAUDE_CONFIG_DIR` en Linux o Windows, el archivo `.credentials.json` se encuentra en ese directorio en su lugar.

139 * Claude Code administra `.credentials.json` a través de `/login` y `/logout`. Para enrutar solicitudes a través de un punto final de API personalizado, establezca la variable de entorno [`ANTHROPIC_BASE_URL`](/es/env-vars) en su lugar.139 * Claude Code administra `.credentials.json` a través de `/login` y `/logout`. Para enrutar solicitudes a través de un punto final de API personalizado, establezca la variable de entorno [`ANTHROPIC_BASE_URL`](/docs/es/env-vars) en su lugar.

140* **Tipos de autenticación admitidos**: credenciales de Claude.ai, credenciales de API de Claude, Microsoft Foundry Auth, Bedrock Auth, Vertex Auth y tokens de sesión de [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway).140* **Tipos de autenticación admitidos**: credenciales de Claude.ai, credenciales de API de Claude, Microsoft Foundry Auth, Bedrock Auth, Vertex Auth y tokens de sesión de [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway).

141* **Scripts de credenciales personalizados**: la configuración [`apiKeyHelper`](/es/settings#available-settings) se puede configurar para ejecutar un script de shell que devuelva una clave API.141* **Scripts de credenciales personalizados**: la configuración [`apiKeyHelper`](/docs/es/settings#available-settings) se puede configurar para ejecutar un script de shell que devuelva una clave API.

142* **Intervalos de actualización**: por defecto, `apiKeyHelper` se llama después de 5 minutos o en respuesta HTTP 401. Establezca la variable de entorno `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` para intervalos de actualización personalizados.142* **Intervalos de actualización**: por defecto, `apiKeyHelper` se llama después de 5 minutos o en respuesta HTTP 401. Establezca la variable de entorno `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` para intervalos de actualización personalizados.

143* **Aviso de helper lento**: si `apiKeyHelper` tarda más de 10 segundos en devolver una clave, Claude Code muestra un aviso de advertencia en la barra de símbolo del sistema mostrando el tiempo transcurrido. Si ve este aviso regularmente, verifique si su script de credenciales se puede optimizar.143* **Aviso de helper lento**: si `apiKeyHelper` tarda más de 10 segundos en devolver una clave, Claude Code muestra un aviso de advertencia en la barra de símbolo del sistema mostrando el tiempo transcurrido. Si ve este aviso regularmente, verifique si su script de credenciales se puede optimizar.

144* **Fallos del helper**: {/* min-version: 2.1.208 */}cuando el script sale con un error, agota el tiempo de espera o no imprime nada, las solicitudes fallan con [`Your apiKeyHelper script is failing`](/es/errors#your-apikeyhelper-script-is-failing) dentro de tres intentos. Antes de v2.1.208, los fallos del helper aparecían como un 401 genérico después de aproximadamente diez reintentos silenciosos.144* **Fallos del helper**: cuando el script sale con un error, agota el tiempo de espera o no imprime nada, las solicitudes fallan con [`Your apiKeyHelper script is failing`](/docs/es/errors#your-apikeyhelper-script-is-failing) dentro de tres intentos. Antes de v2.1.208, los fallos del helper aparecían como un 401 genérico después de aproximadamente diez reintentos silenciosos.

145 145 

146`apiKeyHelper`, `ANTHROPIC_API_KEY` y `ANTHROPIC_AUTH_TOKEN` se aplican a la CLI y a las superficies que la envuelven, incluida la extensión de VS Code, el Agent SDK y GitHub Actions. Claude Desktop y las sesiones en la nube no llaman a `apiKeyHelper` ni leen estas variables de entorno: utilizan OAuth, excepto las sesiones de escritorio que ejecutan una [configuración de inferencia de terceros](/es/llm-gateway-connect#desktop-app), que se autentican con la credencial de esa configuración.146`apiKeyHelper`, `ANTHROPIC_API_KEY` y `ANTHROPIC_AUTH_TOKEN` se aplican a la CLI y a las superficies que la envuelven, incluida la extensión de VS Code, el Agent SDK y GitHub Actions. Claude Desktop y las sesiones en la nube no llaman a `apiKeyHelper` ni leen estas variables de entorno: utilizan OAuth, excepto las sesiones de escritorio que ejecutan una [configuración de inferencia de terceros](/docs/es/llm-gateway-connect#desktop-app), que se autentican con la credencial de esa configuración.

147 147 

148<h3 id="renew-an-expiring-login">148<h3 id="renew-an-expiring-login">

149 Renovar un inicio de sesión que está por expirar149 Renovar un inicio de sesión que está por expirar


153 153 

154Ejecute `/login` para renovar. La advertencia es informativa y nunca bloquea una solicitud: la autenticación sigue funcionando hasta que el inicio de sesión realmente expire. La duración del inicio de sesión en sí no cambia; la advertencia anticipada es lo que v2.1.203 añade.154Ejecute `/login` para renovar. La advertencia es informativa y nunca bloquea una solicitud: la autenticación sigue funcionando hasta que el inicio de sesión realmente expire. La duración del inicio de sesión en sí no cambia; la advertencia anticipada es lo que v2.1.203 añade.

155 155 

156{/* min-version: 2.1.206 */}Una vez que el inicio de sesión almacenado expira y no se puede actualizar, cada solicitud falla con [`Login expired · Please run /login`](/es/errors#login-expired) hasta que inicie sesión nuevamente. Antes de v2.1.206, un inicio de sesión expirado aparecía como un error de modelo en su lugar.156Una vez que el inicio de sesión almacenado expira y no se puede actualizar, cada solicitud falla con [`Login expired · Please run /login`](/docs/es/errors#login-expired) hasta que inicie sesión nuevamente. Antes de v2.1.206, un inicio de sesión expirado aparecía como un error de modelo en su lugar.

157 157 

158La advertencia aparece solo cuando un inicio de sesión de claude.ai o Claude Console es la credencial activa, y no cuando un proveedor de nube, `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` o `apiKeyHelper` proporciona la credencial.158La advertencia aparece solo cuando un inicio de sesión de claude.ai o Claude Console es la credencial activa, y no cuando un proveedor de nube, `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` o `apiKeyHelper` proporciona la credencial.

159 159 

160Renovar anticipadamente es más importante para sesiones que se ejecutan sin supervisión. Una [sesión en segundo plano en vista de agente](/es/agent-view) o una sesión de [Remote Control](/es/remote-control) que sobrevive al inicio de sesión deja de hacer progreso una vez que la credencial expira y no puede recuperarse hasta que inicie sesión nuevamente.160Renovar anticipadamente es más importante para sesiones que se ejecutan sin supervisión. Una [sesión en segundo plano en vista de agente](/docs/es/agent-view) o una sesión de [Remote Control](/docs/es/remote-control) que sobrevive al inicio de sesión deja de hacer progreso una vez que la credencial expira y no puede recuperarse hasta que inicie sesión nuevamente.

161 161 

162<h3 id="authentication-precedence">162<h3 id="authentication-precedence">

163 Precedencia de autenticación163 Precedencia de autenticación


165 165 

166Cuando hay múltiples credenciales presentes, Claude Code elige una en este orden:166Cuando hay múltiples credenciales presentes, Claude Code elige una en este orden:

167 167 

1681. Credenciales del proveedor de nube, cuando `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX` o `CLAUDE_CODE_USE_FOUNDRY` está establecido. Consulte [integraciones de terceros](/es/third-party-integrations) para la configuración.1681. Credenciales del proveedor de nube, cuando `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX` o `CLAUDE_CODE_USE_FOUNDRY` está establecido. Consulte [integraciones de terceros](/docs/es/third-party-integrations) para la configuración.

1692. Variable de entorno `ANTHROPIC_AUTH_TOKEN`. Se envía como encabezado `Authorization: Bearer`. Use esto cuando enrute a través de una [puerta de enlace LLM o proxy](/es/llm-gateway) que se autentica con tokens de portador en lugar de claves API de Anthropic.1692. Variable de entorno `ANTHROPIC_AUTH_TOKEN`. Se envía como encabezado `Authorization: Bearer`. Use esto cuando enrute a través de una [puerta de enlace LLM o proxy](/docs/es/llm-gateway) que se autentica con tokens de portador en lugar de claves API de Anthropic.

1703. Variable de entorno `ANTHROPIC_API_KEY`. Se envía como encabezado `X-Api-Key`. Use esto para acceso directo a la API de Anthropic con una clave de [Claude Console](https://platform.claude.com). En modo interactivo, se le solicita una vez que apruebe o rechace la clave, y su elección se recuerda. Para cambiarla más tarde, use el botón de alternancia "Use custom API key" en `/config`. El botón de alternancia solo aparece mientras `ANTHROPIC_API_KEY` está establecido en su entorno. En modo no interactivo (`-p`), la clave siempre se usa cuando está presente.1703. Variable de entorno `ANTHROPIC_API_KEY`. Se envía como encabezado `X-Api-Key`. Use esto para acceso directo a la API de Anthropic con una clave de [Claude Console](https://platform.claude.com). En modo interactivo, se le solicita una vez que apruebe o rechace la clave, y su elección se recuerda. Para cambiarla más tarde, use el botón de alternancia "Use custom API key" en `/config`. El botón de alternancia solo aparece mientras `ANTHROPIC_API_KEY` está establecido en su entorno. En modo no interactivo (`-p`), la clave siempre se usa cuando está presente.

1714. Salida del script [`apiKeyHelper`](/es/settings#available-settings). Use esto para credenciales dinámicas o rotativas, como tokens de corta duración obtenidos de un almacén.1714. Salida del script [`apiKeyHelper`](/docs/es/settings#available-settings). Use esto para credenciales dinámicas o rotativas, como tokens de corta duración obtenidos de un almacén.

1725. Variable de entorno `CLAUDE_CODE_OAUTH_TOKEN`. Un token OAuth de larga duración generado por [`claude setup-token`](#generate-a-long-lived-token). Use esto para canalizaciones de CI y scripts donde el inicio de sesión del navegador no está disponible.1725. Variable de entorno `CLAUDE_CODE_OAUTH_TOKEN`. Un token OAuth de larga duración generado por [`claude setup-token`](#generate-a-long-lived-token). Use esto para canalizaciones de CI y scripts donde el inicio de sesión del navegador no está disponible.

1736. Credenciales OAuth de suscripción de `/login`. Este es el predeterminado para usuarios de Claude Pro, Max, Team y Enterprise.1736. Credenciales OAuth de suscripción de `/login`. Este es el predeterminado para usuarios de Claude Pro, Max, Team y Enterprise.

174 174 

175Una sesión de [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) con sesión iniciada se encuentra fuera de esta lista: es una selección de proveedor como Amazon Bedrock o la Plataforma de Agentes de Google Cloud, y los supera. Cuando existe una sesión de puerta de enlace, la CLI se autentica con el token de puerta de enlace incluso si `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX` o `CLAUDE_CODE_USE_FOUNDRY` está establecido, y las entradas de token de portador, clave API y `apiKeyHelper` anteriores no se utilizan.175Una sesión de [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) con sesión iniciada se encuentra fuera de esta lista: es una selección de proveedor como Amazon Bedrock o la Plataforma de Agentes de Google Cloud, y los supera. Cuando existe una sesión de puerta de enlace, la CLI se autentica con el token de puerta de enlace incluso si `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX` o `CLAUDE_CODE_USE_FOUNDRY` está establecido, y las entradas de token de portador, clave API y `apiKeyHelper` anteriores no se utilizan.

176 176 

177Si tiene una suscripción activa de Claude pero también tiene `ANTHROPIC_API_KEY` establecido en su entorno, la clave API tiene precedencia una vez aprobada. Esto puede causar fallos de autenticación si la clave pertenece a una organización deshabilitada o expirada. Ejecute `unset ANTHROPIC_API_KEY` para volver a su suscripción y verifique `/status` para confirmar qué método está activo. La fila `Login method` muestra su cuenta de suscripción, y aparece una fila `API key` cuando se está utilizando una clave API.177Si tiene una suscripción activa de Claude pero también tiene `ANTHROPIC_API_KEY` establecido en su entorno, la clave API tiene precedencia una vez aprobada. Esto puede causar fallos de autenticación si la clave pertenece a una organización deshabilitada o expirada. Ejecute `unset ANTHROPIC_API_KEY` para volver a su suscripción y verifique `/status` para confirmar qué método está activo. La fila `Login method` muestra su cuenta de suscripción, y aparece una fila `API key` cuando se está utilizando una clave API.

178 178 

179[Claude Code en la Web](/es/claude-code-on-the-web) siempre usa sus credenciales de suscripción. Si establece `ANTHROPIC_API_KEY` o `ANTHROPIC_AUTH_TOKEN` en el entorno de sandbox, no anula sus credenciales de suscripción.179[Claude Code en la Web](/docs/es/claude-code-on-the-web) siempre usa sus credenciales de suscripción. Si establece `ANTHROPIC_API_KEY` o `ANTHROPIC_AUTH_TOKEN` en el entorno de sandbox, no anula sus credenciales de suscripción.

180 180 

181<h3 id="generate-a-long-lived-token">181<h3 id="generate-a-long-lived-token">

182 Generar un token de larga duración182 Generar un token de larga duración


194export CLAUDE_CODE_OAUTH_TOKEN=your-token194export CLAUDE_CODE_OAUTH_TOKEN=your-token

195```195```

196 196 

197Este token se autentica con su suscripción de Claude y requiere un plan Pro, Max, Team o Enterprise. Se limita solo a inferencia y no puede establecer sesiones de [Remote Control](/es/remote-control).197Este token se autentica con su suscripción de Claude y requiere un plan Pro, Max, Team o Enterprise. Se limita solo a inferencia y no puede establecer sesiones de [Remote Control](/docs/es/remote-control).

198 198 

199[Bare mode](/es/headless#start-faster-with-bare-mode) no lee `CLAUDE_CODE_OAUTH_TOKEN`. Si su script pasa `--bare`, autentíquese con `ANTHROPIC_API_KEY` o un `apiKeyHelper` en su lugar.199[Bare mode](/docs/es/headless#start-faster-with-bare-mode) no lee `CLAUDE_CODE_OAUTH_TOKEN`. Si su script pasa `--bare`, autentíquese con `ANTHROPIC_API_KEY` o un `apiKeyHelper` en su lugar.

Details

6 6 

7> Indique al clasificador del modo automático qué repositorios, buckets y dominios confía su organización. Establezca el contexto del entorno, anule las reglas de bloqueo y permiso predeterminadas e inspeccione su configuración efectiva con los subcomandos de la CLI del modo automático.7> Indique al clasificador del modo automático qué repositorios, buckets y dominios confía su organización. Establezca el contexto del entorno, anule las reglas de bloqueo y permiso predeterminadas e inspeccione su configuración efectiva con los subcomandos de la CLI del modo automático.

8 8 

9[El modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode) permite que Claude Code se ejecute sin solicitudes de permiso rutinarias al enrutar las llamadas de herramientas a través de un clasificador que bloquea cualquier cosa irreversible, destructiva o dirigida fuera de su entorno. Las reglas de denegación y solicitud explícita se evalúan antes del clasificador y aún bloquean o solicitan. Utilice el bloque de configuración `autoMode` para indicar a ese clasificador qué repositorios, buckets y dominios confía su organización, de modo que deje de bloquear operaciones internas rutinarias.9[El modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode) permite que Claude Code se ejecute sin solicitudes de permiso rutinarias al enrutar las llamadas de herramientas a través de un clasificador que bloquea cualquier cosa irreversible, destructiva o dirigida fuera de su entorno. Las reglas de denegación y solicitud explícita se evalúan antes del clasificador y aún bloquean o solicitan. Utilice el bloque de configuración `autoMode` para indicar a ese clasificador qué repositorios, buckets y dominios confía su organización, de modo que deje de bloquear operaciones internas rutinarias.

10 10 

11<Note>11<Note>

12 El modo automático está disponible para todos los usuarios en cada proveedor, incluida la API de Anthropic, Amazon Bedrock, la plataforma de agentes de Google Cloud, Microsoft Foundry y sesiones de [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) con sesión iniciada. Si Claude Code informa que el modo automático no está disponible para su cuenta, consulte los [requisitos completos](/es/permission-modes#eliminate-prompts-with-auto-mode), que también cubren los modelos admitidos y la habilitación del propietario en planes de equipo y empresa. {/* min-version: 2.1.207 */}En v2.1.158 a v2.1.206, el modo automático en Amazon Bedrock, la plataforma de agentes de Google Cloud, Microsoft Foundry y sesiones de puerta de enlace de aplicaciones Claude requería establecer `CLAUDE_CODE_ENABLE_AUTO_MODE=1`; v2.1.207 eliminó el requisito.12 El modo automático está disponible para todos los usuarios en cada proveedor, incluida la API de Anthropic, Amazon Bedrock, la plataforma de agentes de Google Cloud, Microsoft Foundry y sesiones de [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) con sesión iniciada. Si Claude Code informa que el modo automático no está disponible para su cuenta, consulte los [requisitos completos](/docs/es/permission-modes#eliminate-prompts-with-auto-mode), que también cubren los modelos admitidos y la habilitación del propietario en planes de equipo y empresa. En v2.1.158 a v2.1.206, el modo automático en Amazon Bedrock, la plataforma de agentes de Google Cloud, Microsoft Foundry y sesiones de puerta de enlace de aplicaciones Claude requería establecer `CLAUDE_CODE_ENABLE_AUTO_MODE=1`; v2.1.207 eliminó el requisito.

13</Note>13</Note>

14 14 

15De forma predeterminada, el clasificador confía solo en el directorio de trabajo y en los remotos configurados del repositorio actual. Las acciones como insertar en la organización de control de código fuente de su empresa o escribir en un bucket de nube de equipo se bloquean hasta que las agregue a `autoMode.environment`.15De forma predeterminada, el clasificador confía solo en el directorio de trabajo y en los remotos configurados del repositorio actual. Las acciones como insertar en la organización de control de código fuente de su empresa o escribir en un bucket de nube de equipo se bloquean hasta que las agregue a `autoMode.environment`.

16 16 

17Para saber cómo habilitar el modo automático y qué bloquea de forma predeterminada, consulte [Modos de permiso](/es/permission-modes#eliminate-prompts-with-auto-mode). Esta página es la referencia de configuración.17Para saber cómo habilitar el modo automático y qué bloquea de forma predeterminada, consulte [Modos de permiso](/docs/es/permission-modes#eliminate-prompts-with-auto-mode). Esta página es la referencia de configuración.

18 18 

19Esta página cubre cómo:19Esta página cubre cómo:

20 20 


32 32 

33El modo automático permite inserciones en su rama de trabajo, inserciones rutinarias en la rama predeterminada del repositorio y creación de solicitudes de extracción de forma predeterminada. El clasificador bloquea una inserción solo cuando conlleva riesgo, como una inserción forzada o contenido que elude una revisión que configuró. Si desea un punto de control humano antes de cada inserción o solicitud de extracción, agregue reglas de permisos: las recetas a continuación mantienen el modo automático activado para todo lo demás.33El modo automático permite inserciones en su rama de trabajo, inserciones rutinarias en la rama predeterminada del repositorio y creación de solicitudes de extracción de forma predeterminada. El clasificador bloquea una inserción solo cuando conlleva riesgo, como una inserción forzada o contenido que elude una revisión que configuró. Si desea un punto de control humano antes de cada inserción o solicitud de extracción, agregue reglas de permisos: las recetas a continuación mantienen el modo automático activado para todo lo demás.

34 34 

35El mecanismo más directo es [`permissions.ask`](/es/permissions#permission-rule-syntax). Las reglas de solicitud con alcance de contenido como las que se muestran a continuación se evalúan antes del clasificador y siempre fuerzan un aviso de permiso, incluso en modo automático, porque una regla de solicitud explícita es su intención declarada de ser solicitado para esa acción. Agregue las reglas en su [configuración](/es/settings#settings-files):35El mecanismo más directo es [`permissions.ask`](/docs/es/permissions#permission-rule-syntax). Las reglas de solicitud con alcance de contenido como las que se muestran a continuación se evalúan antes del clasificador y siempre fuerzan un aviso de permiso, incluso en modo automático, porque una regla de solicitud explícita es su intención declarada de ser solicitado para esa acción. Agregue las reglas en su [configuración](/docs/es/settings#settings-files):

36 36 

37```json theme={null}37```json theme={null}

38{38{


51| :---------------------------- | :--------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |51| :---------------------------- | :--------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

52| Solicitar antes de la acción | `permissions.ask` | Siempre solicita para reglas con alcance de contenido como la receta anterior. El clasificador no puede aprobar automáticamente una acción coincidente. |52| Solicitar antes de la acción | `permissions.ask` | Siempre solicita para reglas con alcance de contenido como la receta anterior. El clasificador no puede aprobar automáticamente una acción coincidente. |

53| Nunca ejecutar la acción | `permissions.deny` | Bloquea antes de que se consulte el clasificador. Ni el clasificador ni la intención del usuario pueden anularlo. |53| Nunca ejecutar la acción | `permissions.deny` | Bloquea antes de que se consulte el clasificador. Ni el clasificador ni la intención del usuario pueden anularlo. |

54| Límite único para esta sesión | Indíquelo en la conversación, como "no inserte hasta que revise" | El clasificador bloquea las acciones coincidentes, pero el límite se puede perder si la [compactación de contexto](/es/costs#reduce-token-usage) elimina el mensaje que lo indicaba. Utilice una regla de solicitud o denegación para una garantía duradera. |54| Límite único para esta sesión | Indíquelo en la conversación, como "no inserte hasta que revise" | El clasificador bloquea las acciones coincidentes, pero el límite se puede perder si la [compactación de contexto](/docs/es/costs#reduce-token-usage) elimina el mensaje que lo indicaba. Utilice una regla de solicitud o denegación para una garantía duradera. |

55 55 

56<h2 id="where-the-classifier-reads-configuration">56<h2 id="where-the-classifier-reads-configuration">

57 Dónde el clasificador lee la configuración57 Dónde el clasificador lee la configuración

58</h2>58</h2>

59 59 

60El clasificador lee el mismo contenido de [CLAUDE.md](/es/memory) que Claude carga, por lo que una instrucción como "nunca hagas push forzado" en el CLAUDE.md de su proyecto dirige tanto a Claude como al clasificador al mismo tiempo. Comience allí para las convenciones del proyecto y las reglas de comportamiento.60El clasificador lee el mismo contenido de [CLAUDE.md](/docs/es/memory) que Claude carga, por lo que una instrucción como "nunca hagas push forzado" en el CLAUDE.md de su proyecto dirige tanto a Claude como al clasificador al mismo tiempo. Comience allí para las convenciones del proyecto y las reglas de comportamiento.

61 61 

62Para las reglas que se aplican en todos los proyectos, como la infraestructura de confianza o las reglas de denegación en toda la organización, utilice el bloque de configuración `autoMode`. El clasificador lee `autoMode` de los siguientes ámbitos:62Para las reglas que se aplican en todos los proyectos, como la infraestructura de confianza o las reglas de denegación en toda la organización, utilice el bloque de configuración `autoMode`. El clasificador lee `autoMode` de los siguientes ámbitos:

63 63 

64| Ámbito | Archivo | Usar para |64| Ámbito | Archivo | Usar para |

65| :------------------------------- | :-------------------------------------------------------- | :------------------------------------------------------------------- |65| :------------------------------- | :-------------------------------------------------------- | :------------------------------------------------------------------- |

66| Un desarrollador | `~/.claude/settings.json` | Infraestructura de confianza personal |66| Un desarrollador | `~/.claude/settings.json` | Infraestructura de confianza personal |

67| En toda la organización | [Configuración administrada](/es/server-managed-settings) | Infraestructura de confianza distribuida a todos los desarrolladores |67| En toda la organización | [Configuración administrada](/docs/es/server-managed-settings) | Infraestructura de confianza distribuida a todos los desarrolladores |

68| Bandera `--settings` o Agent SDK | JSON en línea | Anulaciones por invocación para automatización |68| Bandera `--settings` o Agent SDK | JSON en línea | Anulaciones por invocación para automatización |

69 69 

70El clasificador no lee `autoMode` de la configuración del proyecto en `.claude/settings.json` o `.claude/settings.local.json`. Ambos archivos residen en el directorio del repositorio, por lo que un repositorio registrado o un paso de compilación podría inyectar sus propias reglas de permiso. Antes de v2.1.207, el clasificador también leía `.claude/settings.local.json`; mueva cualquier bloque `autoMode` en ese archivo a `~/.claude/settings.json`. Excluir `.claude/settings.local.json` también cierra el caso en el que un repositorio confirma el archivo o una herramienta local o paso de compilación lo escribe.70El clasificador no lee `autoMode` de la configuración del proyecto en `.claude/settings.json` o `.claude/settings.local.json`. Ambos archivos residen en el directorio del repositorio, por lo que un repositorio registrado o un paso de compilación podría inyectar sus propias reglas de permiso. Antes de v2.1.207, el clasificador también leía `.claude/settings.local.json`; mueva cualquier bloque `autoMode` en ese archivo a `~/.claude/settings.json`. Excluir `.claude/settings.local.json` también cierra el caso en el que un repositorio confirma el archivo o una herramienta local o paso de compilación lo escribe.


72Las entradas de cada ámbito se combinan. Un desarrollador puede extender `environment`, `allow`, `soft_deny` y `hard_deny` con entradas personales pero no puede eliminar las entradas que proporciona la configuración administrada. Debido a que las reglas de permiso actúan como excepciones a las reglas de bloqueo suave dentro del clasificador, una entrada `allow` agregada por un desarrollador puede anular una entrada `soft_deny` de la organización: la combinación es aditiva, no un límite de política dura.72Las entradas de cada ámbito se combinan. Un desarrollador puede extender `environment`, `allow`, `soft_deny` y `hard_deny` con entradas personales pero no puede eliminar las entradas que proporciona la configuración administrada. Debido a que las reglas de permiso actúan como excepciones a las reglas de bloqueo suave dentro del clasificador, una entrada `allow` agregada por un desarrollador puede anular una entrada `soft_deny` de la organización: la combinación es aditiva, no un límite de política dura.

73 73 

74<Note>74<Note>

75 El clasificador es una segunda puerta que se ejecuta después del [sistema de permisos](/es/permissions). Para acciones que nunca deben ejecutarse independientemente de la intención del usuario o la configuración del clasificador, utilice `permissions.deny` en la configuración administrada, que bloquea la acción antes de que se consulte el clasificador y no puede ser anulada.75 El clasificador es una segunda puerta que se ejecuta después del [sistema de permisos](/docs/es/permissions). Para acciones que nunca deben ejecutarse independientemente de la intención del usuario o la configuración del clasificador, utilice `permissions.deny` en la configuración administrada, que bloquea la acción antes de que se consulte el clasificador y no puede ser anulada.

76</Note>76</Note>

77 77 

78<h2 id="define-trusted-infrastructure">78<h2 id="define-trusted-infrastructure">


87 * **Organización**87 * **Organización**

88 * **Uso principal de Claude Code**: se establece de forma predeterminada en desarrollo de software88 * **Uso principal de Claude Code**: se establece de forma predeterminada en desarrollo de software

89 * **Proveedor(es) de nube**89 * **Proveedor(es) de nube**

90 * **Visibilidad del repositorio**: se asume que un repositorio es privado a menos que su host remoto y nombre indiquen lo contrario, {/* min-version: 2.1.200 */}o una verificación de visibilidad anterior en la conversación que el clasificador lee muestre que es público. El clasificador lee sus mensajes y los comandos que ejecuta Claude, no su salida, por lo que la evidencia tiene que ser algo que pueda leer, como su propio mensaje nombrando el repositorio como público; la salida de un `gh repo view` por sí sola no llega a él. La verificación de evidencia de transcripción requiere Claude Code v2.1.200 o posterior90 * **Visibilidad del repositorio**: se asume que un repositorio es privado a menos que su host remoto y nombre indiquen lo contrario, o una verificación de visibilidad anterior en la conversación que el clasificador lee muestre que es público. El clasificador lee sus mensajes y los comandos que ejecuta Claude, no su salida, por lo que la evidencia tiene que ser algo que pueda leer, como su propio mensaje nombrando el repositorio como público; la salida de un `gh repo view` por sí sola no llega a él. La verificación de evidencia de transcripción requiere Claude Code v2.1.200 o posterior

91 * **Compartición interna / alojamiento de fragmentos**: los servicios públicos de paste y gist se tratan como fuera del límite de confianza hasta que nombre uno91 * **Compartición interna / alojamiento de fragmentos**: los servicios públicos de paste y gist se tratan como fuera del límite de confianza hasta que nombre uno

92 * **CLI específicas de la organización**92 * **CLI específicas de la organización**

93 * **Gestión de secretos**93 * **Gestión de secretos**


96 * **Postura de red**96 * **Postura de red**

97 * **Espacios de nombres / entornos de implementación protegidos**: recurre a la heurística de objetivos remotos sensibles hasta que nombre algunos97 * **Espacios de nombres / entornos de implementación protegidos**: recurre a la heurística de objetivos remotos sensibles hasta que nombre algunos

98 * **Retención de datos / desclasificación**98 * **Retención de datos / desclasificación**

99* **Espacios de confianza**: nombran lo que el clasificador trata como dentro de su límite. Los espacios son Repositorio de confianza, Control de código fuente, Dominios internos de confianza, Buckets de nube de confianza, Servicios internos clave y Registro de paquetes interno. Las entradas de repositorio y control de código fuente se establecen de forma predeterminada en el repositorio de trabajo y sus remotos configurados. Todos los demás espacios de confianza se establecen de forma predeterminada en `None configured`, por lo que nada más es de confianza hasta que lo agregue. {/* min-version: 2.1.203 */}La visibilidad de un repositorio solo abarca material confidencial: un repositorio privado es un destino aceptable para material confidencial, pero hacer que un repositorio sea privado nunca borra secretos o datos personales o confiados en él, y el clasificador trata el contenido portado, reapuntado o leído por primera vez desde fuera del repositorio de trabajo como no siendo trabajo propio de ese repositorio. Este alcance requiere Claude Code v2.1.203 o posterior.99* **Espacios de confianza**: nombran lo que el clasificador trata como dentro de su límite. Los espacios son Repositorio de confianza, Control de código fuente, Dominios internos de confianza, Buckets de nube de confianza, Servicios internos clave y Registro de paquetes interno. Las entradas de repositorio y control de código fuente se establecen de forma predeterminada en el repositorio de trabajo y sus remotos configurados. Todos los demás espacios de confianza se establecen de forma predeterminada en `None configured`, por lo que nada más es de confianza hasta que lo agregue. La visibilidad de un repositorio solo abarca material confidencial: un repositorio privado es un destino aceptable para material confidencial, pero hacer que un repositorio sea privado nunca borra secretos o datos personales o confiados en él, y el clasificador trata el contenido portado, reapuntado o leído por primera vez desde fuera del repositorio de trabajo como no siendo trabajo propio de ese repositorio. Este alcance requiere Claude Code v2.1.203 o posterior.

100* **Espacios de sensibilidad**: nombran lo que las reglas de protección tratan como de alto riesgo. Los espacios son Ubicaciones de datos sensibles y audiencias, Objetivos remotos sensibles y Ámbitos de IaC protegidos. Cada uno se establece de forma predeterminada en una heurística amplia, como tratar cualquier host o espacio de nombres cuyo nombre lleve `prod` o `production` como un objetivo remoto sensible, por lo que las reglas de protección están activas antes de que configure nada. Nombrar objetivos concretos en un espacio de sensibilidad hace que esas reglas se apliquen a los objetivos nombrados en lugar de la heurística.100* **Espacios de sensibilidad**: nombran lo que las reglas de protección tratan como de alto riesgo. Los espacios son Ubicaciones de datos sensibles y audiencias, Objetivos remotos sensibles y Ámbitos de IaC protegidos. Cada uno se establece de forma predeterminada en una heurística amplia, como tratar cualquier host o espacio de nombres cuyo nombre lleve `prod` o `production` como un objetivo remoto sensible, por lo que las reglas de protección están activas antes de que configure nada. Nombrar objetivos concretos en un espacio de sensibilidad hace que esas reglas se apliquen a los objetivos nombrados en lugar de la heurística.

101 101 

102Para agregar sus propias entradas junto con los valores predeterminados, incluya la cadena literal `"$defaults"` en la matriz. Las entradas predeterminadas se insertan en esa posición, por lo que sus entradas personalizadas pueden ir antes o después de ellas.102Para agregar sus propias entradas junto con los valores predeterminados, incluya la cadena literal `"$defaults"` en la matriz. Las entradas predeterminadas se insertan en esa posición, por lo que sus entradas personalizadas pueden ir antes o después de ellas.


125* **Dominios internos de confianza**: nombres de host para API, paneles y servicios dentro de su red, como `*.internal.example.com`125* **Dominios internos de confianza**: nombres de host para API, paneles y servicios dentro de su red, como `*.internal.example.com`

126* **Servicios internos clave**: CI, registros de artefactos, índices de paquetes internos, herramientas de incidentes126* **Servicios internos clave**: CI, registros de artefactos, índices de paquetes internos, herramientas de incidentes

127* **Registro de paquetes interno**: el registro npm, PyPI u otro privado a través del cual deben enrutarse las instalaciones, de modo que las instalaciones que lo omitan para un registro público se bloqueen127* **Registro de paquetes interno**: el registro npm, PyPI u otro privado a través del cual deben enrutarse las instalaciones, de modo que las instalaciones que lo omitan para un registro público se bloqueen

128* **Ubicaciones de datos sensibles y audiencias**: los buckets, bases de datos o rutas que contienen datos personales, datos comerciales confidenciales, credenciales, datos regulados o material similar sensible, y las audiencias con las que los datos en cada ubicación pueden compartirse, para que el clasificador proteja esas ubicaciones en lugar de adivinar por el contenido. {/* min-version: 2.1.195 */}{/* max-version: 2.1.197 */}Claude Code v2.1.195 a v2.1.197 nombran esta entrada ubicaciones de PII / datos regulados y cubren solo ubicaciones que contienen datos personales o regulados, sin la dimensión de audiencia128* **Ubicaciones de datos sensibles y audiencias**: los buckets, bases de datos o rutas que contienen datos personales, datos comerciales confidenciales, credenciales, datos regulados o material similar sensible, y las audiencias con las que los datos en cada ubicación pueden compartirse, para que el clasificador proteja esas ubicaciones en lugar de adivinar por el contenido. Claude Code v2.1.195 a v2.1.197 nombran esta entrada ubicaciones de PII / datos regulados y cubren solo ubicaciones que contienen datos personales o regulados, sin la dimensión de audiencia

129* **Objetivos remotos sensibles**: los espacios de nombres, hosts o contenedores que cuentan como producción, de modo que los shells remotos y los reenvíos de puertos hacia ellos necesiten su aprobación explícita129* **Objetivos remotos sensibles**: los espacios de nombres, hosts o contenedores que cuentan como producción, de modo que los shells remotos y los reenvíos de puertos hacia ellos necesiten su aprobación explícita

130* **Ámbitos de IaC protegidos**: los recursos de infraestructura cuya aplicación o destrucción siempre debe requerir que nombre el cambio130* **Ámbitos de IaC protegidos**: los recursos de infraestructura cuya aplicación o destrucción siempre debe requerir que nombre el cambio

131* **Contexto adicional**: restricciones de industria regulada, infraestructura multiinquilino o requisitos de cumplimiento que afecten lo que el clasificador debe tratar como riesgoso131* **Contexto adicional**: restricciones de industria regulada, infraestructura multiinquilino o requisitos de cumplimiento que afecten lo que el clasificador debe tratar como riesgoso


165* `autoMode.soft_deny`: acciones destructivas que la intención del usuario puede anular165* `autoMode.soft_deny`: acciones destructivas que la intención del usuario puede anular

166* `autoMode.allow`: excepciones a las reglas de bloqueo suave166* `autoMode.allow`: excepciones a las reglas de bloqueo suave

167 167 

168Cada uno es una matriz de descripciones en prosa, leídas como reglas en lenguaje natural. Para bloqueos basados en patrones de herramientas que se ejecutan antes del clasificador, utilice [`permissions.deny`](/es/permissions).168Cada uno es una matriz de descripciones en prosa, leídas como reglas en lenguaje natural. Para bloqueos basados en patrones de herramientas que se ejecutan antes del clasificador, utilice [`permissions.deny`](/docs/es/permissions).

169 169 

170Dentro del clasificador, la precedencia funciona en cuatro niveles:170Dentro del clasificador, la precedencia funciona en cuatro niveles:

171 171 


252claude auto-mode defaults252claude auto-mode defaults

253```253```

254 254 

255{/* min-version: 2.1.208 */}Para leer la redacción completa de una regla sin canalizar a través de `jq`, pase `--label` con el inicio de la etiqueta de la regla, como `claude auto-mode defaults --label 'Git Destructive'`. La coincidencia es un prefijo que no distingue mayúsculas de minúsculas en la etiqueta de cada regla, y las secciones sin coincidencia se imprimen como listas vacías. Requiere Claude Code v2.1.208 o posterior.255Para leer la redacción completa de una regla sin canalizar a través de `jq`, pase `--label` con el inicio de la etiqueta de la regla, como `claude auto-mode defaults --label 'Git Destructive'`. La coincidencia es un prefijo que no distingue mayúsculas de minúsculas en la etiqueta de cada regla, y las secciones sin coincidencia se imprimen como listas vacías. Requiere Claude Code v2.1.208 o posterior.

256 256 

257Imprima lo que el clasificador realmente utiliza como JSON, con su configuración aplicada donde se establece y valores predeterminados en caso contrario:257Imprima lo que el clasificador realmente utiliza como JSON, con su configuración aplicada donde se establece y valores predeterminados en caso contrario:

258 258 


280 280 

281Las denegaciones repetidas para el mismo destino generalmente significan que el clasificador carece de contexto. Agregue ese destino a `autoMode.environment`, luego ejecute `claude auto-mode config` para confirmar que surtió efecto.281Las denegaciones repetidas para el mismo destino generalmente significan que el clasificador carece de contexto. Agregue ese destino a `autoMode.environment`, luego ejecute `claude auto-mode config` para confirmar que surtió efecto.

282 282 

283Para reaccionar a las denegaciones mediante programación, utilice el [hook `PermissionDenied`](/es/hooks#permissiondenied).283Para reaccionar a las denegaciones mediante programación, utilice el [hook `PermissionDenied`](/docs/es/hooks#permissiondenied).

284 284 

285<h2 id="see-also">285<h2 id="see-also">

286 Ver también286 Ver también

287</h2>287</h2>

288 288 

289* [Modos de permiso](/es/permission-modes#eliminate-prompts-with-auto-mode): qué es el modo automático, qué bloquea de forma predeterminada y cómo habilitarlo289* [Modos de permiso](/docs/es/permission-modes#eliminate-prompts-with-auto-mode): qué es el modo automático, qué bloquea de forma predeterminada y cómo habilitarlo

290* [Configuración administrada](/es/server-managed-settings): implemente la configuración `autoMode` en toda su organización290* [Configuración administrada](/docs/es/server-managed-settings): implemente la configuración `autoMode` en toda su organización

291* [Permisos](/es/permissions): reglas de permiso, pregunta y denegación que se aplican antes de que se ejecute el clasificador291* [Permisos](/docs/es/permissions): reglas de permiso, pregunta y denegación que se aplican antes de que se ejecute el clasificador

292* [Configuración](/es/settings): la referencia de configuración completa, incluida la clave `autoMode`292* [Configuración](/docs/es/settings): la referencia de configuración completa, incluida la clave `autoMode`

Details

21Claude Code realiza un seguimiento de todos los cambios realizados por sus herramientas de edición de archivos:21Claude Code realiza un seguimiento de todos los cambios realizados por sus herramientas de edición de archivos:

22 22 

23* Cada solicitud del usuario crea un nuevo checkpoint23* Cada solicitud del usuario crea un nuevo checkpoint

24* Claude Code mantiene snapshots de archivos para los 100 checkpoints más recientes en una sesión. Descartar un checkpoint anterior elimina los archivos de snapshot que ningún checkpoint restante referencia, excepto el primer snapshot de cada archivo, que la extensión de VS Code utiliza como línea base para sus diffs de sesión. {/* min-version: 2.1.208 */}Antes de v2.1.208, esos archivos de snapshot reemplazados permanecían en el disco hasta que la sesión se limpiaba.24* Claude Code mantiene snapshots de archivos para los 100 checkpoints más recientes en una sesión. Descartar un checkpoint anterior elimina los archivos de snapshot que ningún checkpoint restante referencia, excepto el primer snapshot de cada archivo, que la extensión de VS Code utiliza como línea base para sus diffs de sesión. Antes de v2.1.208, esos archivos de snapshot reemplazados permanecían en el disco hasta que la sesión se limpiaba.

25* Los checkpoints se guardan con la conversación, por lo que una sesión reanudada aún puede `/rewind` a ellos25* Los checkpoints se guardan con la conversación, por lo que una sesión reanudada aún puede `/rewind` a ellos

26* Se limpian automáticamente junto con las sesiones después de 30 días (configurable)26* Se limpian automáticamente junto con las sesiones después de 30 días (configurable)

27 27 


66En ambos casos, los mensajes originales se conservan en la transcripción de la sesión, por lo que Claude puede hacer referencia a los detalles si es necesario. Puede escribir instrucciones opcionales para guiar en qué se enfoca el resumen. Esto es similar a `/compact`, pero dirigido: en lugar de resumir toda la conversación, elige qué lado del mensaje seleccionado comprimir.66En ambos casos, los mensajes originales se conservan en la transcripción de la sesión, por lo que Claude puede hacer referencia a los detalles si es necesario. Puede escribir instrucciones opcionales para guiar en qué se enfoca el resumen. Esto es similar a `/compact`, pero dirigido: en lugar de resumir toda la conversación, elige qué lado del mensaje seleccionado comprimir.

67 67 

68<Note>68<Note>

69 Resumir lo mantiene en la misma sesión y comprime el contexto. Si desea ramificarse e intentar un enfoque diferente mientras preserva la sesión original intacta, use [fork](/es/sessions#branch-a-session) en su lugar (`claude --continue --fork-session`).69 Resumir lo mantiene en la misma sesión y comprime el contexto. Si desea ramificarse e intentar un enfoque diferente mientras preserva la sesión original intacta, use [fork](/docs/es/sessions#branch-a-session) en su lugar (`claude --continue --fork-session`).

70</Note>70</Note>

71 71 

72<h2 id="common-use-cases">72<h2 id="common-use-cases">


118 Ver también118 Ver también

119</h2>119</h2>

120 120 

121* [Modo interactivo](/es/interactive-mode) - Atajos de teclado y controles de sesión121* [Modo interactivo](/docs/es/interactive-mode) - Atajos de teclado y controles de sesión

122* [Comandos](/es/commands) - Acceso a checkpoints usando `/rewind`122* [Comandos](/docs/es/commands) - Acceso a checkpoints usando `/rewind`

123* [Referencia de CLI](/es/cli-reference) - Opciones de línea de comandos123* [Referencia de CLI](/docs/es/cli-reference) - Opciones de línea de comandos

Details

64<Note>64<Note>

65 **Implemente en su red privada.** Claude Code solo se conecta a una puerta de enlace cuya dirección es privada. Esta es una protección de seguridad, porque una puerta de enlace confiable puede insertar configuración que ejecute comandos en máquinas de desarrolladores. Coloque la puerta de enlace detrás de un equilibrador de carga interno o VPN y asígnele un nombre de host que se resuelva solo a direcciones IP privadas.65 **Implemente en su red privada.** Claude Code solo se conecta a una puerta de enlace cuya dirección es privada. Esta es una protección de seguridad, porque una puerta de enlace confiable puede insertar configuración que ejecute comandos en máquinas de desarrolladores. Coloque la puerta de enlace detrás de un equilibrador de carga interno o VPN y asígnele un nombre de host que se resuelva solo a direcciones IP privadas.

66 66 

67 Los puntos finales de puerta de enlace pública operados por Anthropic son la excepción: `/login` los acepta sobre `https://`. Estos son un conjunto pequeño y fijo de puertas de enlace que el propio Anthropic opera; no son una opción de implementación que pueda seleccionar o configurar. La lista se compila en Claude Code, por lo que ninguna configuración puede agregar un nombre de host a ella y ninguna puerta de enlace que aloje califica para la exención. {/* min-version: 2.1.206 */}Antes de v2.1.206, `/login` rechazaba esos puntos finales como cualquier otra dirección pública.67 Los puntos finales de puerta de enlace pública operados por Anthropic son la excepción: `/login` los acepta sobre `https://`. Estos son un conjunto pequeño y fijo de puertas de enlace que el propio Anthropic opera; no son una opción de implementación que pueda seleccionar o configurar. La lista se compila en Claude Code, por lo que ninguna configuración puede agregar un nombre de host a ella y ninguna puerta de enlace que aloje califica para la exención. Antes de v2.1.206, `/login` rechazaba esos puntos finales como cualquier otra dirección pública.

68</Note>68</Note>

69 69 

70<h3 id="prerequisites">70<h3 id="prerequisites">


74Tenga estos en lugar antes de comenzar:74Tenga estos en lugar antes de comenzar:

75 75 

76| Lo que necesita | Detalles |76| Lo que necesita | Detalles |

77| -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |77| -------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

78| Claude Code v2.1.195 o posterior | El subcomando `claude gateway` y el flujo de inicio de sesión de la puerta de enlace se envían en v2.1.195. Las compilaciones públicas anteriores no las incluyen. Tanto la máquina que ejecuta el servidor de puerta de enlace como la máquina de cada desarrollador deben estar en v2.1.195 o posterior; ejecute `claude update` para obtener la última versión. {/* min-version: 2.1.198 */}La [Plataforma de Claude en AWS ascendente](/docs/es/claude-apps-gateway-config#claude-platform-on-aws) requiere Claude Code v2.1.198 o posterior en el servidor de puerta de enlace. |78| Claude Code v2.1.195 o posterior | El subcomando `claude gateway` y el flujo de inicio de sesión de la puerta de enlace se envían en v2.1.195. Las compilaciones públicas anteriores no las incluyen. Tanto la máquina que ejecuta el servidor de puerta de enlace como la máquina de cada desarrollador deben estar en v2.1.195 o posterior; ejecute `claude update` para obtener la última versión. La [Plataforma de Claude en AWS ascendente](/docs/es/claude-apps-gateway-config#claude-platform-on-aws) requiere Claude Code v2.1.198 o posterior en el servidor de puerta de enlace. |

79| Proveedor de identidad OpenID Connect (OIDC) | Okta, Microsoft Entra ID, Google Workspace, Keycloak, o Dex, u otro IdP compatible con OIDC como PingFederate. La puerta de enlace ejecuta el descubrimiento OIDC estándar y el flujo de código de autorización contra ella. SAML y LDAP no son compatibles. |79| Proveedor de identidad OpenID Connect (OIDC) | Okta, Microsoft Entra ID, Google Workspace, Keycloak, o Dex, u otro IdP compatible con OIDC como PingFederate. La puerta de enlace ejecuta el descubrimiento OIDC estándar y el flujo de código de autorización contra ella. SAML y LDAP no son compatibles. |

80| PostgreSQL 14 o posterior | Respalda el flujo de inicio de sesión del dispositivo, donde la devolución de llamada del navegador escribe y la CLI de sondeo lee, más contadores de límite de velocidad. Cualquier Postgres administrado funciona, incluido el nivel más pequeño. Sin límites de gasto configurados, la puerta de enlace almacena algunos KB de estado de autenticación de corta duración; con [límites de gasto](/docs/es/claude-apps-gateway-spend-limits), también mantiene tablas de gasto, auditoría e identidad duraderas que deben respaldarse. TLS a través de `?sslmode=require` se recomienda. |80| PostgreSQL 14 o posterior | Respalda el flujo de inicio de sesión del dispositivo, donde la devolución de llamada del navegador escribe y la CLI de sondeo lee, más contadores de límite de velocidad. Cualquier Postgres administrado funciona, incluido el nivel más pequeño. Sin límites de gasto configurados, la puerta de enlace almacena algunos KB de estado de autenticación de corta duración; con [límites de gasto](/docs/es/claude-apps-gateway-spend-limits), también mantiene tablas de gasto, auditoría e identidad duraderas que deben respaldarse. TLS a través de `?sslmode=require` se recomienda. |

81| Ascendente de modelo | Credenciales de Amazon Bedrock, credenciales de Plataforma de Claude en AWS, credenciales de Google Cloud, un recurso de Microsoft Foundry, o una clave API de Anthropic. Se admiten múltiples ascendentes con conmutación por error. |81| Ascendente de modelo | Credenciales de Amazon Bedrock, credenciales de Plataforma de Claude en AWS, credenciales de Google Cloud, un recurso de Microsoft Foundry, o una clave API de Anthropic. Se admiten múltiples ascendentes con conmutación por error. |

82| HTTPS | La puerta de enlace debe ser accesible sobre `https://` desde computadoras portátiles de desarrolladores y desde cualquier navegador utilizado para el inicio de sesión; la puerta de enlace sirve la página de verificación del dispositivo en el mismo oyente. Proporcione un certificado TLS a través de `listen.tls`, o ejecute detrás de una entrada que termina TLS y establezca `listen.public_url`. Un origen `http://` simple se acepta solo en loopback, para desarrollo local. |82| HTTPS | La puerta de enlace debe ser accesible sobre `https://` desde computadoras portátiles de desarrolladores y desde cualquier navegador utilizado para el inicio de sesión; la puerta de enlace sirve la página de verificación del dispositivo en el mismo oyente. Proporcione un certificado TLS a través de `listen.tls`, o ejecute detrás de una entrada que termina TLS y establezca `listen.public_url`. Un origen `http://` simple se acepta solo en loopback, para desarrollo local. |

83| Dirección de red privada | En `/login`, Claude Code requiere que el nombre de host o la dirección IP de la puerta de enlace se resuelvan solo a direcciones privadas: RFC 1918, CGNAT `100.64.0.0/10`, ULA IPv6 `fc00::/7`, o loopback para desarrollo local. La verificación se ejecuta en cada IP resuelta, por lo que si alguna dirección a la que se resuelve el nombre es pública, `/login` rechaza la URL. Si las máquinas de desarrolladores enrutan HTTPS a través de un proxy corporativo, el inicio de sesión también requiere que el host del proxy se resuelva a direcciones privadas; si no es así, agregue el host de la puerta de enlace a `NO_PROXY` para que la CLI se conecte directamente. {/* min-version: 2.1.206 */}Los puntos finales de puerta de enlace operados por Anthropic son exentos de las verificaciones de dirección privada y proxy: `/login` los acepta sobre `https://` por coincidencia exacta de nombre de host, por lo que el requisito de red privada se aplica solo a una puerta de enlace que aloje usted mismo. Antes de v2.1.206, `/login` rechazaba un punto final operado por Anthropic como cualquier otra dirección pública. |83| Dirección de red privada | En `/login`, Claude Code requiere que el nombre de host o la dirección IP de la puerta de enlace se resuelvan solo a direcciones privadas: RFC 1918, CGNAT `100.64.0.0/10`, ULA IPv6 `fc00::/7`, o loopback para desarrollo local. La verificación se ejecuta en cada IP resuelta, por lo que si alguna dirección a la que se resuelve el nombre es pública, `/login` rechaza la URL. Si las máquinas de desarrolladores enrutan HTTPS a través de un proxy corporativo, el inicio de sesión también requiere que el host del proxy se resuelva a direcciones privadas; si no es así, agregue el host de la puerta de enlace a `NO_PROXY` para que la CLI se conecte directamente. Los puntos finales de puerta de enlace operados por Anthropic son exentos de las verificaciones de dirección privada y proxy: `/login` los acepta sobre `https://` por coincidencia exacta de nombre de host, por lo que el requisito de red privada se aplica solo a una puerta de enlace que aloje usted mismo. Antes de v2.1.206, `/login` rechazaba un punto final operado por Anthropic como cualquier otra dirección pública. |

84| Tiempo de ejecución de Linux | El servidor de puerta de enlace solo se ejecuta en el binario nativo de Linux. macOS funciona para desarrollo local. Windows no es compatible como plataforma de servidor. |84| Tiempo de ejecución de Linux | El servidor de puerta de enlace solo se ejecuta en el binario nativo de Linux. macOS funciona para desarrollo local. Windows no es compatible como plataforma de servidor. |

85 85 

86El servidor de puerta de enlace requiere el binario `claude` nativo; descargue una versión fija como se describe en [Instalar Claude Code](/docs/es/setup). El servidor utiliza características de tiempo de ejecución que no están disponibles cuando Claude Code se ejecuta bajo Node. Si ve `requires the native binary` al arrancar, cambie a uno de los métodos de instalación independientes.86El servidor de puerta de enlace requiere el binario `claude` nativo; descargue una versión fija como se describe en [Instalar Claude Code](/docs/es/setup). El servidor utiliza características de tiempo de ejecución que no están disponibles cuando Claude Code se ejecuta bajo Node. Si ve `requires the native binary` al arrancar, cambie a uno de los métodos de instalación independientes.


332| Búsqueda web del lado del servidor | No disponible | La CLI no puede ver qué proveedor ascendente enruta la puerta de enlace, por lo que no puede verificar la compatibilidad de búsqueda web y deshabilita WebSearch en sesiones de puerta de enlace |332| Búsqueda web del lado del servidor | No disponible | La CLI no puede ver qué proveedor ascendente enruta la puerta de enlace, por lo que no puede verificar la compatibilidad de búsqueda web y deshabilita WebSearch en sesiones de puerta de enlace |

333| Almacenamiento en caché de indicación estándar | Disponible | Los puntos de interrupción `cache_control` se reenvían a cada ascendente |333| Almacenamiento en caché de indicación estándar | Disponible | Los puntos de interrupción `cache_control` se reenvían a cada ascendente |

334| TTL de caché de 1 hora | No disponible | La CLI omite la beta de ttl de caché extendido en sesiones de puerta de enlace, porque no todos los ascendentes a los que la puerta de enlace puede enrutar soportan el TTL de 1 hora, por lo que el almacenamiento en caché de indicación a través de la puerta de enlace utiliza el TTL de 5 minutos; consulte la nota de encabezado de beta anterior |334| TTL de caché de 1 hora | No disponible | La CLI omite la beta de ttl de caché extendido en sesiones de puerta de enlace, porque no todos los ascendentes a los que la puerta de enlace puede enrutar soportan el TTL de 1 hora, por lo que el almacenamiento en caché de indicación a través de la puerta de enlace utiliza el TTL de 5 minutos; consulte la nota de encabezado de beta anterior |

335| Modo automático | Disponible | Sigue las [reglas del proveedor de terceros](/docs/es/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry): solo los modelos elegibles en proveedores de terceros pueden usarlo. {/* min-version: 2.1.207 */}Antes de v2.1.207, el modo automático en sesiones de puerta de enlace requería establecer `CLAUDE_CODE_ENABLE_AUTO_MODE=1`, entregable a través del bloque `env` de política administrada |335| Modo automático | Disponible | Sigue las [reglas del proveedor de terceros](/docs/es/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry): solo los modelos elegibles en proveedores de terceros pueden usarlo. Antes de v2.1.207, el modo automático en sesiones de puerta de enlace requería establecer `CLAUDE_CODE_ENABLE_AUTO_MODE=1`, entregable a través del bloque `env` de política administrada |

336| Optimizaciones solo de primera parte como alcance de caché global y herramientas eficientes en tokens | No disponible | La CLI no las habilita en sesiones de puerta de enlace; consulte la nota de encabezado de beta anterior |336| Optimizaciones solo de primera parte como alcance de caché global y herramientas eficientes en tokens | No disponible | La CLI no las habilita en sesiones de puerta de enlace; consulte la nota de encabezado de beta anterior |

337| OTLP/gRPC | No compatible | OTLP sobre HTTP solo |337| OTLP/gRPC | No compatible | OTLP sobre HTTP solo |

338| SAML, LDAP y otra autenticación no OIDC | No compatible | Solo OIDC. Frente con un puente OIDC si es necesario |338| SAML, LDAP y otra autenticación no OIDC | No compatible | Solo OIDC. Frente con un puente OIDC si es necesario |

Details

20<Note>20<Note>

21 **Implemente en su red privada.** Claude Code solo se conecta a una puerta de enlace cuya dirección es privada. Esta es una protección de seguridad, porque una puerta de enlace de confianza puede enviar configuraciones que ejecuten comandos en máquinas de desarrolladores. Coloque la puerta de enlace que implemente detrás de un equilibrador de carga interno o VPN y asígnele un nombre de host que se resuelva solo en direcciones IP privadas.21 **Implemente en su red privada.** Claude Code solo se conecta a una puerta de enlace cuya dirección es privada. Esta es una protección de seguridad, porque una puerta de enlace de confianza puede enviar configuraciones que ejecuten comandos en máquinas de desarrolladores. Coloque la puerta de enlace que implemente detrás de un equilibrador de carga interno o VPN y asígnele un nombre de host que se resuelva solo en direcciones IP privadas.

22 22 

23 Los puntos finales de puerta de enlace pública operados por Anthropic son la excepción: `/login` los acepta sobre `https://`. Estos son un conjunto pequeño y fijo de puertas de enlace que Anthropic mismo opera; no son una opción de implementación que pueda seleccionar o configurar. La lista se compila en Claude Code, por lo que ninguna configuración puede agregar un nombre de host a ella y ninguna puerta de enlace que aloje califica para la exención. {/* min-version: 2.1.206 */}Antes de v2.1.206, `/login` rechazaba esos puntos finales como cualquier otra dirección pública.23 Los puntos finales de puerta de enlace pública operados por Anthropic son la excepción: `/login` los acepta sobre `https://`. Estos son un conjunto pequeño y fijo de puertas de enlace que Anthropic mismo opera; no son una opción de implementación que pueda seleccionar o configurar. La lista se compila en Claude Code, por lo que ninguna configuración puede agregar un nombre de host a ella y ninguna puerta de enlace que aloje califica para la exención. Antes de v2.1.206, `/login` rechazaba esos puntos finales como cualquier otra dirección pública.

24</Note>24</Note>

25 25 

26<h2 id="identity-provider-setup">26<h2 id="identity-provider-setup">

Details

140 140 

141Cada sesión en la nube tiene una URL de transcripción en claude.ai, y la sesión puede leer su propio ID desde la variable de entorno `CLAUDE_CODE_REMOTE_SESSION_ID`. Use esto para poner un enlace rastreable en cuerpos de PR, mensajes de confirmación, publicaciones de Slack o informes generados para que un revisor pueda abrir la ejecución que los produjo.141Cada sesión en la nube tiene una URL de transcripción en claude.ai, y la sesión puede leer su propio ID desde la variable de entorno `CLAUDE_CODE_REMOTE_SESSION_ID`. Use esto para poner un enlace rastreable en cuerpos de PR, mensajes de confirmación, publicaciones de Slack o informes generados para que un revisor pueda abrir la ejecución que los produjo.

142 142 

143A partir de v2.1.179, los commits que Claude crea en una sesión web incluyen un trailer de git `Claude-Session: <url>`, y los cuerpos de PR incluyen la URL de la sesión en su propia línea. {/* min-version: 2.1.182 */}Desde v2.1.182, establezca [`attribution.sessionUrl`](/docs/es/settings#attribution-settings) en `false` para omitir el trailer y el enlace del cuerpo de PR.143A partir de v2.1.179, los commits que Claude crea en una sesión web incluyen un trailer de git `Claude-Session: <url>`, y los cuerpos de PR incluyen la URL de la sesión en su propia línea. Desde v2.1.182, establezca [`attribution.sessionUrl`](/docs/es/settings#attribution-settings) en `false` para omitir el trailer y el enlace del cuerpo de PR.

144 144 

145Para incluir el enlace de sesión en algo que no sea un commit o PR, como un mensaje de Slack que Claude publica o un archivo de informe que escribe, haga que Claude ejecute el siguiente comando y use su salida. El comando convierte el prefijo `cse_` en el valor de la variable de entorno al prefijo `session_` que la URL de transcripción espera:145Para incluir el enlace de sesión en algo que no sea un commit o PR, como un mensaje de Slack que Claude publica o un archivo de informe que escribe, haga que Claude ejecute el siguiente comando y use su salida. El comando convierte el prefijo `cse_` en el valor de la variable de entorno al prefijo `session_` que la URL de transcripción espera:

146 146 


669 669 

670Esto crea una nueva sesión en la nube en claude.ai. La sesión clona el remoto de GitHub de su directorio actual en su rama actual, por lo que inserte primero si tiene confirmaciones locales, ya que la VM clona desde GitHub en lugar de su máquina. `--cloud` funciona con un único repositorio a la vez. La tarea se ejecuta en la nube mientras continúa trabajando localmente. La ortografía anterior `--remote` aún funciona como un alias deprecado para `--cloud`.670Esto crea una nueva sesión en la nube en claude.ai. La sesión clona el remoto de GitHub de su directorio actual en su rama actual, por lo que inserte primero si tiene confirmaciones locales, ya que la VM clona desde GitHub en lugar de su máquina. `--cloud` funciona con un único repositorio a la vez. La tarea se ejecuta en la nube mientras continúa trabajando localmente. La ortografía anterior `--remote` aún funciona como un alias deprecado para `--cloud`.

671 671 

672{/* min-version: 2.1.195 */}A partir de v2.1.195, la CLI muestra una lista de verificación en vivo de pasos de configuración, como clonar el repositorio y ejecutar su [script de configuración](#setup-scripts), mientras se inicia el contenedor en la nube. Los mensajes que escribe mientras se aprovisiona el contenedor se ponen en cola y se envían una vez que la sesión está lista.672A partir de v2.1.195, la CLI muestra una lista de verificación en vivo de pasos de configuración, como clonar el repositorio y ejecutar su [script de configuración](#setup-scripts), mientras se inicia el contenedor en la nube. Los mensajes que escribe mientras se aprovisiona el contenedor se ponen en cola y se envían una vez que la sesión está lista.

673 673 

674<Note>674<Note>

675 `--cloud` crea sesiones en la nube. `--remote-control` no está relacionado: expone una sesión de CLI local para monitoreo desde la web. Consulte [Control Remoto](/docs/es/remote-control).675 `--cloud` crea sesiones en la nube. `--remote-control` no está relacionado: expone una sesión de CLI local para monitoreo desde la web. Consulte [Control Remoto](/docs/es/remote-control).


772 772 

773Las sesiones en la nube admiten [comandos integrados](/docs/es/commands) que producen salida de texto. Los comandos que solo se ejecutan en la interfaz de terminal, como `/plugin` o `/resume`, no están disponibles. Los comandos que abren un selector o panel en la terminal se comportan de manera diferente en sesiones en la nube:773Las sesiones en la nube admiten [comandos integrados](/docs/es/commands) que producen salida de texto. Los comandos que solo se ejecutan en la interfaz de terminal, como `/plugin` o `/resume`, no están disponibles. Los comandos que abren un selector o panel en la terminal se comportan de manera diferente en sesiones en la nube:

774 774 

775* {/* min-version: 2.1.205 */}**`/model`, `/effort`, `/fast`, `/color` y `/rename`**: pase el valor como argumento, por ejemplo `/model sonnet`, en lugar de abrir el selector de terminal o el control deslizante. Los formularios de argumento requieren Claude Code v2.1.205 o posterior en el entorno de la sesión y siguen las [notas de disponibilidad](/docs/es/commands#all-commands) de cada comando: `/effort` reporta `Not applied` mientras que el [esfuerzo predeterminado de lanzamiento](/docs/es/model-config#adjust-effort-level) de un modelo está en vigor, y `/fast` funciona solo en una sesión que comenzó con el modo rápido activado.775* **`/model`, `/effort`, `/fast`, `/color` y `/rename`**: pase el valor como argumento, por ejemplo `/model sonnet`, en lugar de abrir el selector de terminal o el control deslizante. Los formularios de argumento requieren Claude Code v2.1.205 o posterior en el entorno de la sesión y siguen las [notas de disponibilidad](/docs/es/commands#all-commands) de cada comando: `/effort` reporta `Not applied` mientras que el [esfuerzo predeterminado de lanzamiento](/docs/es/model-config#adjust-effort-level) de un modelo está en vigor, y `/fast` funciona solo en una sesión que comenzó con el modo rápido activado.

776* **`/config`**: en la web, abre la sección Claude Code de su configuración en lugar de establecer un valor, y el texto después del comando, incluyendo `key=value`, se ignora. Para cambiar la configuración de una sesión en la nube, use [variables de entorno](#configure-your-environment) o confirme [archivos de configuración](/docs/es/settings) en el repositorio.776* **`/config`**: en la web, abre la sección Claude Code de su configuración en lugar de establecer un valor, y el texto después del comando, incluyendo `key=value`, se ignora. Para cambiar la configuración de una sesión en la nube, use [variables de entorno](#configure-your-environment) o confirme [archivos de configuración](/docs/es/settings) en el repositorio.

777 777 

778Para administración de contexto específicamente:778Para administración de contexto específicamente:

Details

188 188 

189<Experiment flag="docs-contact-sales-cta" treatment={<ContactSalesCard surface="claude_platform_on_aws" />} />189<Experiment flag="docs-contact-sales-cta" treatment={<ContactSalesCard surface="claude_platform_on_aws" />} />

190 190 

191Claude Platform on AWS es la API de Claude operada por Anthropic con autenticación de AWS, control de acceso IAM y facturación de AWS Marketplace. Las solicitudes llegan directamente a la API de Anthropic, por lo que obtiene los mismos modelos y características de API que la [Claude API](https://platform.claude.com/docs) en el mismo calendario de lanzamientos. Las características del lado del cliente que Claude Code activa a través del servicio de banderas de características de Anthropic, como [`/loop` auto-ritmo](/es/scheduled-tasks#let-claude-choose-the-interval), están desactivadas de forma predeterminada, y la [herramienta de asesor](/es/advisor) no está disponible. Consulte la [matriz de disponibilidad de características](/es/feature-availability#summary-by-provider) para obtener la lista completa. Se autentica con credenciales de AWS o una clave API de espacio de trabajo, y paga a través de AWS Marketplace.191Claude Platform on AWS es la API de Claude operada por Anthropic con autenticación de AWS, control de acceso IAM y facturación de AWS Marketplace. Las solicitudes llegan directamente a la API de Anthropic, por lo que obtiene los mismos modelos y características de API que la [Claude API](https://platform.claude.com/docs) en el mismo calendario de lanzamientos. Las características del lado del cliente que Claude Code activa a través del servicio de banderas de características de Anthropic, como [`/loop` auto-ritmo](/docs/es/scheduled-tasks#let-claude-choose-the-interval), están desactivadas de forma predeterminada, y la [herramienta de asesor](/docs/es/advisor) no está disponible. Consulte la [matriz de disponibilidad de características](/docs/es/feature-availability#summary-by-provider) para obtener la lista completa. Se autentica con credenciales de AWS o una clave API de espacio de trabajo, y paga a través de AWS Marketplace.

192 192 

193Utilice esta guía para dirigir Claude Code a un espacio de trabajo que ya haya aprovisionado a través de Claude Platform on AWS. Para la suscripción de AWS y la configuración del espacio de trabajo que viene antes, consulte la [documentación de Claude Platform on AWS](https://platform.claude.com/docs/en/build-with-claude/claude-platform-on-aws).193Utilice esta guía para dirigir Claude Code a un espacio de trabajo que ya haya aprovisionado a través de Claude Platform on AWS. Para la suscripción de AWS y la configuración del espacio de trabajo que viene antes, consulte la [documentación de Claude Platform on AWS](https://platform.claude.com/docs/en/build-with-claude/claude-platform-on-aws).

194 194 


230 230 

231Para CI y automatización, proporcione al ejecutor un rol de IAM con permiso para invocar el servicio de Anthropic y establezca `AWS_REGION`. La cadena de credenciales recoge el rol automáticamente.231Para CI y automatización, proporcione al ejecutor un rol de IAM con permiso para invocar el servicio de Anthropic y establezca `AWS_REGION`. La cadena de credenciales recoge el rol automáticamente.

232 232 

233Si sus credenciales de SSO expiran durante la sesión, configure [`awsAuthRefresh`](/es/amazon-bedrock#advanced-credential-configuration) para que Claude Code vuelva a ejecutar su comando de inicio de sesión y reintente en lugar de fallar. La actualización automática en Claude Platform on AWS requiere Claude Code v2.1.198 o posterior; las versiones anteriores se detienen con un mensaje para ejecutar `/login`, que no puede actualizar credenciales de AWS. Agregue el comando a su `settings.json`:233Si sus credenciales de SSO expiran durante la sesión, configure [`awsAuthRefresh`](/docs/es/amazon-bedrock#advanced-credential-configuration) para que Claude Code vuelva a ejecutar su comando de inicio de sesión y reintente en lugar de fallar. La actualización automática en Claude Platform on AWS requiere Claude Code v2.1.198 o posterior; las versiones anteriores se detienen con un mensaje para ejecutar `/login`, que no puede actualizar credenciales de AWS. Agregue el comando a su `settings.json`:

234 234 

235```json theme={null}235```json theme={null}

236{236{


250 250 

251La clave se envía como `x-api-key` y tiene prioridad sobre SigV4, por lo que cualquier credencial de AWS en su entorno se ignora. Las claves API de una organización separada de Claude Console no funcionarán aquí.251La clave se envía como `x-api-key` y tiene prioridad sobre SigV4, por lo que cualquier credencial de AWS en su entorno se ignora. Las claves API de una organización separada de Claude Console no funcionarán aquí.

252 252 

253Trate las claves API del espacio de trabajo como cualquier otra credencial de producción. El bloque `env` del [archivo de configuración del usuario](/es/settings) es una forma conveniente de limitar la clave a su máquina sin exportarla globalmente.253Trate las claves API del espacio de trabajo como cualquier otra credencial de producción. El bloque `env` del [archivo de configuración del usuario](/docs/es/settings) es una forma conveniente de limitar la clave a su máquina sin exportarla globalmente.

254 254 

255<Note>255<Note>

256 Los comandos `/login` y `/logout` no lo registran en una suscripción de Claude.ai para Claude Platform on AWS. La autenticación se ejecuta a través de sus credenciales de AWS o clave API del espacio de trabajo. La excepción es la opción **actualizar credenciales** que `/login` muestra cuando `awsAuthRefresh` está configurado, que vuelve a leer sus credenciales de AWS como se describe arriba.256 Los comandos `/login` y `/logout` no lo registran en una suscripción de Claude.ai para Claude Platform on AWS. La autenticación se ejecuta a través de sus credenciales de AWS o clave API del espacio de trabajo. La excepción es la opción **actualizar credenciales** que `/login` muestra cuando `awsAuthRefresh` está configurado, que vuelve a leer sus credenciales de AWS como se describe arriba.


278 278 

279Claude Platform on AWS utiliza los mismos ID de modelo que la API de Claude directa.279Claude Platform on AWS utiliza los mismos ID de modelo que la API de Claude directa.

280 280 

281Los alias predeterminados `fable`, `opus`, `sonnet` y `haiku` se resuelven a los valores predeterminados integrados de Claude Code para Claude Platform on AWS, que pueden estar retrasados respecto a la versión más reciente. Sin `ANTHROPIC_DEFAULT_OPUS_MODEL`, el alias `opus` se resuelve a Opus 4.8. {/* min-version: 2.1.207 */}Antes de v2.1.207, se resolvía a Opus 4.7.281Los alias predeterminados `fable`, `opus`, `sonnet` y `haiku` se resuelven a los valores predeterminados integrados de Claude Code para Claude Platform on AWS, que pueden estar retrasados respecto a la versión más reciente. Sin `ANTHROPIC_DEFAULT_OPUS_MODEL`, el alias `opus` se resuelve a Opus 4.8. Antes de v2.1.207, se resolvía a Opus 4.7.

282 282 

283Si implementa Claude Code en un equipo, fije explícitamente los ID de modelo para que un nuevo lanzamiento no mueva a todos a la vez:283Si implementa Claude Code en un equipo, fije explícitamente los ID de modelo para que un nuevo lanzamiento no mueva a todos a la vez:

284 284 


289export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-haiku-4-5289export ANTHROPIC_DEFAULT_HAIKU_MODEL=claude-haiku-4-5

290```290```

291 291 

292Para la lista completa de ID de modelo y alias, consulte [Descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Para otras variables relacionadas con modelos, consulte [Configuración de modelo](/es/model-config).292Para la lista completa de ID de modelo y alias, consulte [Descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Para otras variables relacionadas con modelos, consulte [Configuración de modelo](/docs/es/model-config).

293 293 

294[Prompt caching](/es/prompt-caching) está habilitado automáticamente. Para solicitar un TTL de caché de 1 hora en lugar del predeterminado de 5 minutos, establezca `ENABLE_PROMPT_CACHING_1H=1`. La API factura las escrituras de caché de 1 hora a una tasa más alta. Consulte [precios de prompt caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#pricing) para conocer las tarifas.294[Prompt caching](/docs/es/prompt-caching) está habilitado automáticamente. Para solicitar un TTL de caché de 1 hora en lugar del predeterminado de 5 minutos, establezca `ENABLE_PROMPT_CACHING_1H=1`. La API factura las escrituras de caché de 1 hora a una tasa más alta. Consulte [precios de prompt caching](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#pricing) para conocer las tarifas.

295 295 

296<h2 id="use-the-agent-sdk">296<h2 id="use-the-agent-sdk">

297 Usar el Agent SDK297 Usar el Agent SDK

298</h2>298</h2>

299 299 

300El [Agent SDK](/es/agent-sdk/overview) lee las mismas variables de entorno que la CLI, por lo que cualquier programa que genere el subproceso de Claude Code puede dirigirse a Claude Platform on AWS exportando `CLAUDE_CODE_USE_ANTHROPIC_AWS`, `ANTHROPIC_AWS_WORKSPACE_ID` y `ANTHROPIC_AWS_API_KEY` o credenciales de AWS antes de la llamada.300El [Agent SDK](/docs/es/agent-sdk/overview) lee las mismas variables de entorno que la CLI, por lo que cualquier programa que genere el subproceso de Claude Code puede dirigirse a Claude Platform on AWS exportando `CLAUDE_CODE_USE_ANTHROPIC_AWS`, `ANTHROPIC_AWS_WORKSPACE_ID` y `ANTHROPIC_AWS_API_KEY` o credenciales de AWS antes de la llamada.

301 301 

302```typescript theme={null}302```typescript theme={null}

303import { query } from "@anthropic-ai/claude-agent-sdk";303import { query } from "@anthropic-ai/claude-agent-sdk";


311}311}

312```312```

313 313 

314Este ejemplo se basa en la cadena de credenciales de AWS ambiental para SigV4. Para autenticarse con una clave API del espacio de trabajo en su lugar, establezca `ANTHROPIC_AWS_API_KEY` de la misma manera. Para la superficie más amplia del Agent SDK, consulte [Descripción general del Agent SDK](/es/agent-sdk/overview).314Este ejemplo se basa en la cadena de credenciales de AWS ambiental para SigV4. Para autenticarse con una clave API del espacio de trabajo en su lugar, establezca `ANTHROPIC_AWS_API_KEY` de la misma manera. Para la superficie más amplia del Agent SDK, consulte [Descripción general del Agent SDK](/docs/es/agent-sdk/overview).

315 315 

316<h2 id="route-through-a-corporate-proxy">316<h2 id="route-through-a-corporate-proxy">

317 Enrutar a través de un proxy corporativo317 Enrutar a través de un proxy corporativo

318</h2>318</h2>

319 319 

320Para enrutar el tráfico a través de un proxy o [puerta de enlace LLM](/es/llm-gateway), establezca `ANTHROPIC_AWS_BASE_URL` en la dirección del proxy. Claude Code envía solicitudes a esa URL con los mismos encabezados de espacio de trabajo y autenticación, por lo que cualquier puerta de enlace que los reenvíe sin cambios funciona.320Para enrutar el tráfico a través de un proxy o [puerta de enlace LLM](/docs/es/llm-gateway), establezca `ANTHROPIC_AWS_BASE_URL` en la dirección del proxy. Claude Code envía solicitudes a esa URL con los mismos encabezados de espacio de trabajo y autenticación, por lo que cualquier puerta de enlace que los reenvíe sin cambios funciona.

321 321 

322```bash theme={null}322```bash theme={null}

323export CLAUDE_CODE_USE_ANTHROPIC_AWS=1323export CLAUDE_CODE_USE_ANTHROPIC_AWS=1

cli-reference.md +68 −68

Details

22| `claude -c -p "query"` | Continuar a través de SDK | `claude -c -p "Check for type errors"` |22| `claude -c -p "query"` | Continuar a través de SDK | `claude -c -p "Check for type errors"` |

23| `claude -r "<session>" "query"` | Reanudar sesión por ID o nombre | `claude -r "auth-refactor" "Finish this PR"` |23| `claude -r "<session>" "query"` | Reanudar sesión por ID o nombre | `claude -r "auth-refactor" "Finish this PR"` |

24| `claude update` | Actualizar a la versión más reciente | `claude update` |24| `claude update` | Actualizar a la versión más reciente | `claude update` |

25| `claude gateway` | Iniciar el servidor de [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) autohospedado, para administradores que implementan SSO y política frente a Claude Code en Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry. Requiere `--config` apuntando a un [`gateway.yaml`](/es/claude-apps-gateway-config). Disponible en Claude Code v2.1.195 y posterior. | `claude gateway --config gateway.yaml` |25| `claude gateway` | Iniciar el servidor de [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) autohospedado, para administradores que implementan SSO y política frente a Claude Code en Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry. Requiere `--config` apuntando a un [`gateway.yaml`](/docs/es/claude-apps-gateway-config). Disponible en Claude Code v2.1.195 y posterior. | `claude gateway --config gateway.yaml` |

26| `claude install [version]` | Instalar o reinstalar el binario nativo. Acepta una versión como `2.1.118`, o `stable` o `latest`. Consulte [Instalar una versión específica](/es/setup#install-a-specific-version) | `claude install stable` |26| `claude install [version]` | Instalar o reinstalar el binario nativo. Acepta una versión como `2.1.118`, o `stable` o `latest`. Consulte [Instalar una versión específica](/docs/es/setup#install-a-specific-version) | `claude install stable` |

27| `claude auth login` | Inicie sesión en su cuenta de Anthropic. Use `--email` para rellenar previamente su dirección de correo electrónico, `--sso` para forzar la autenticación SSO y `--console` para iniciar sesión con Anthropic Console para facturación de uso de API en lugar de una suscripción a Claude | `claude auth login --console` |27| `claude auth login` | Inicie sesión en su cuenta de Anthropic. Use `--email` para rellenar previamente su dirección de correo electrónico, `--sso` para forzar la autenticación SSO y `--console` para iniciar sesión con Anthropic Console para facturación de uso de API en lugar de una suscripción a Claude | `claude auth login --console` |

28| `claude auth logout` | Cerrar sesión en su cuenta de Anthropic | `claude auth logout` |28| `claude auth logout` | Cerrar sesión en su cuenta de Anthropic | `claude auth logout` |

29| `claude auth status` | Mostrar estado de autenticación como JSON. Use `--text` para salida legible por humanos. Sale con código 0 si ha iniciado sesión, 1 si no | `claude auth status` |29| `claude auth status` | Mostrar estado de autenticación como JSON. Use `--text` para salida legible por humanos. Sale con código 0 si ha iniciado sesión, 1 si no | `claude auth status` |

30| `claude agents` | Abrir [vista de agentes](/es/agent-view) para monitorear y enviar sesiones de fondo paralelas. Use `--cwd <path>` para mostrar solo sesiones iniciadas en ese directorio, o `--json` para imprimir sesiones activas como una matriz JSON para scripts (`--json --all` también incluye sesiones de fondo completadas). Pase `--permission-mode`, `--model`, `--effort` o `--agent` para establecer [valores predeterminados para sesiones enviadas](/es/agent-view#permission-mode-model-and-effort). Acepta `--settings`, `--add-dir`, `--plugin-dir` y `--mcp-config` como el comando `claude` de nivel superior. Abrir la vista de agentes requiere una terminal interactiva | `claude agents --json` |30| `claude agents` | Abrir [vista de agentes](/docs/es/agent-view) para monitorear y enviar sesiones de fondo paralelas. Use `--cwd <path>` para mostrar solo sesiones iniciadas en ese directorio, o `--json` para imprimir sesiones activas como una matriz JSON para scripts (`--json --all` también incluye sesiones de fondo completadas). Pase `--permission-mode`, `--model`, `--effort` o `--agent` para establecer [valores predeterminados para sesiones enviadas](/docs/es/agent-view#permission-mode-model-and-effort). Acepta `--settings`, `--add-dir`, `--plugin-dir` y `--mcp-config` como el comando `claude` de nivel superior. Abrir la vista de agentes requiere una terminal interactiva | `claude agents --json` |

31| `claude attach <id>` | Adjuntar a una [sesión de fondo](/es/agent-view#manage-sessions-from-the-shell) en esta terminal | `claude attach 7c5dcf5d` |31| `claude attach <id>` | Adjuntar a una [sesión de fondo](/docs/es/agent-view#manage-sessions-from-the-shell) en esta terminal | `claude attach 7c5dcf5d` |

32| `claude auto-mode defaults` | Imprimir las reglas del clasificador de [auto mode](/es/permission-modes#eliminate-prompts-with-auto-mode) integradas como JSON. Use `claude auto-mode config` para ver su configuración efectiva con la configuración aplicada. {/* min-version: 2.1.208 */}}`--label <prefix>` imprime solo las reglas cuya etiqueta comienza con ese prefijo, coincidiendo sin distinción de mayúsculas y minúsculas. Requiere Claude Code v2.1.208 o posterior | `claude auto-mode defaults --label 'Git Destructive'` |32| `claude auto-mode defaults` | Imprimir las reglas del clasificador de [auto mode](/docs/es/permission-modes#eliminate-prompts-with-auto-mode) integradas como JSON. Use `claude auto-mode config` para ver su configuración efectiva con la configuración aplicada. }`--label <prefix>` imprime solo las reglas cuya etiqueta comienza con ese prefijo, coincidiendo sin distinción de mayúsculas y minúsculas. Requiere Claude Code v2.1.208 o posterior | `claude auto-mode defaults --label 'Git Destructive'` |

33| `claude daemon status` | Imprimir el estado del [supervisor](/es/agent-view#the-supervisor-process) de sesión de fondo, versión, directorio de socket y recuento de trabajadores para diagnósticos. Sale con 1 si el supervisor no se está ejecutando | `claude daemon status` |33| `claude daemon status` | Imprimir el estado del [supervisor](/docs/es/agent-view#the-supervisor-process) de sesión de fondo, versión, directorio de socket y recuento de trabajadores para diagnósticos. Sale con 1 si el supervisor no se está ejecutando | `claude daemon status` |

34| `claude daemon stop --any` | Detener el [supervisor](/es/agent-view#the-supervisor-process) de sesión de fondo y las sesiones que aloja. Pase `--keep-workers` para dejar las sesiones de fondo en ejecución para que el próximo supervisor se reconecte a ellas. `--any` confirma la detención de un supervisor bajo demanda, que es el predeterminado. Use esto para recuperarse de un [supervisor que no responde](/es/agent-view#agent-view-says-the-background-service-did-not-respond) | `claude daemon stop --any --keep-workers` |34| `claude daemon stop --any` | Detener el [supervisor](/docs/es/agent-view#the-supervisor-process) de sesión de fondo y las sesiones que aloja. Pase `--keep-workers` para dejar las sesiones de fondo en ejecución para que el próximo supervisor se reconecte a ellas. `--any` confirma la detención de un supervisor bajo demanda, que es el predeterminado. Use esto para recuperarse de un [supervisor que no responde](/docs/es/agent-view#agent-view-says-the-background-service-did-not-respond) | `claude daemon stop --any --keep-workers` |

35| `claude doctor` | Imprimir diagnósticos de instalación y configuración de solo lectura desde la terminal sin iniciar una sesión, incluida la salud de la instalación, errores de validación de archivos de configuración e idoneidad de Remote Control. Para la verificación de configuración en sesión que también puede aplicar correcciones, ejecute [`/doctor`](/es/commands#all-commands) | `claude doctor` |35| `claude doctor` | Imprimir diagnósticos de instalación y configuración de solo lectura desde la terminal sin iniciar una sesión, incluida la salud de la instalación, errores de validación de archivos de configuración e idoneidad de Remote Control. Para la verificación de configuración en sesión que también puede aplicar correcciones, ejecute [`/doctor`](/docs/es/commands#all-commands) | `claude doctor` |

36| `claude logs <id>` | Imprimir salida reciente de una [sesión de fondo](/es/agent-view#manage-sessions-from-the-shell) | `claude logs 7c5dcf5d` |36| `claude logs <id>` | Imprimir salida reciente de una [sesión de fondo](/docs/es/agent-view#manage-sessions-from-the-shell) | `claude logs 7c5dcf5d` |

37| `claude mcp` | Configurar servidores Model Context Protocol (MCP) | Consulte la [documentación de Claude Code MCP](/es/mcp). |37| `claude mcp` | Configurar servidores Model Context Protocol (MCP) | Consulte la [documentación de Claude Code MCP](/docs/es/mcp). |

38| `claude mcp login <name>` | {/* min-version: 2.1.186 */}Ejecutar el flujo OAuth de un servidor MCP configurado sin abrir el panel interactivo `/mcp`. Funciona para servidores HTTP, SSE y conectores de claude.ai. Agregue `--no-browser` sobre SSH para imprimir la URL de autorización en lugar de abrir un navegador, luego pegue la URL de redirección nuevamente en el indicador. Requiere Claude Code v2.1.186 o posterior. Consulte [Autenticar desde la línea de comandos](/es/mcp#authenticate-from-the-command-line) | `claude mcp login sentry` |38| `claude mcp login <name>` | Ejecutar el flujo OAuth de un servidor MCP configurado sin abrir el panel interactivo `/mcp`. Funciona para servidores HTTP, SSE y conectores de claude.ai. Agregue `--no-browser` sobre SSH para imprimir la URL de autorización en lugar de abrir un navegador, luego pegue la URL de redirección nuevamente en el indicador. Requiere Claude Code v2.1.186 o posterior. Consulte [Autenticar desde la línea de comandos](/docs/es/mcp#authenticate-from-the-command-line) | `claude mcp login sentry` |

39| `claude mcp logout <name>` | {/* min-version: 2.1.186 */}Borrar credenciales OAuth almacenadas para un servidor MCP. Requiere Claude Code v2.1.186 o posterior | `claude mcp logout sentry` |39| `claude mcp logout <name>` | Borrar credenciales OAuth almacenadas para un servidor MCP. Requiere Claude Code v2.1.186 o posterior | `claude mcp logout sentry` |

40| `claude plugin` | Administrar Claude Code [plugins](/es/plugins). Alias: `claude plugins`. Consulte [referencia de plugins](/es/plugins-reference#cli-commands-reference) para subcomandos | `claude plugin install code-review@claude-plugins-official` |40| `claude plugin` | Administrar Claude Code [plugins](/docs/es/plugins). Alias: `claude plugins`. Consulte [referencia de plugins](/docs/es/plugins-reference#cli-commands-reference) para subcomandos | `claude plugin install code-review@claude-plugins-official` |

41| `claude project purge [path]` | Eliminar todo el estado local de Claude Code para un proyecto: transcripciones, listas de tareas, registros de depuración, historial de edición de archivos, líneas de historial de indicaciones y la entrada del proyecto en `~/.claude.json`. Omita `[path]` para elegir de una lista interactiva. Banderas: `--dry-run` para vista previa, `-y`/`--yes` para omitir confirmación, `-i`/`--interactive` para confirmar cada elemento, `--all` para cada proyecto. Consulte [Borrar datos locales](/es/claude-directory#clear-local-data) | `claude project purge ~/work/repo --dry-run` |41| `claude project purge [path]` | Eliminar todo el estado local de Claude Code para un proyecto: transcripciones, listas de tareas, registros de depuración, historial de edición de archivos, líneas de historial de indicaciones y la entrada del proyecto en `~/.claude.json`. Omita `[path]` para elegir de una lista interactiva. Banderas: `--dry-run` para vista previa, `-y`/`--yes` para omitir confirmación, `-i`/`--interactive` para confirmar cada elemento, `--all` para cada proyecto. Consulte [Borrar datos locales](/docs/es/claude-directory#clear-local-data) | `claude project purge ~/work/repo --dry-run` |

42| `claude remote-control` | Iniciar un servidor de [Remote Control](/es/remote-control) para controlar Claude Code desde Claude.ai o la aplicación Claude. Se ejecuta en modo servidor (sin sesión interactiva local). Consulte [Banderas de modo servidor](/es/remote-control#start-a-remote-control-session) | `claude remote-control --name "My Project"` |42| `claude remote-control` | Iniciar un servidor de [Remote Control](/docs/es/remote-control) para controlar Claude Code desde Claude.ai o la aplicación Claude. Se ejecuta en modo servidor (sin sesión interactiva local). Consulte [Banderas de modo servidor](/docs/es/remote-control#start-a-remote-control-session) | `claude remote-control --name "My Project"` |

43| `claude respawn <id>` | Reiniciar una [sesión de fondo](/es/agent-view#manage-sessions-from-the-shell), en ejecución o detenida, con su conversación intacta. Use `--all` para reiniciar cada sesión en ejecución, por ejemplo, para recoger un binario de Claude Code actualizado | `claude respawn 7c5dcf5d` |43| `claude respawn <id>` | Reiniciar una [sesión de fondo](/docs/es/agent-view#manage-sessions-from-the-shell), en ejecución o detenida, con su conversación intacta. Use `--all` para reiniciar cada sesión en ejecución, por ejemplo, para recoger un binario de Claude Code actualizado | `claude respawn 7c5dcf5d` |

44| `claude rm <id>` | Eliminar una [sesión de fondo](/es/agent-view#manage-sessions-from-the-shell) de la lista. La transcripción de la conversación permanece en su máquina local, disponible a través de `claude --resume` | `claude rm 7c5dcf5d` |44| `claude rm <id>` | Eliminar una [sesión de fondo](/docs/es/agent-view#manage-sessions-from-the-shell) de la lista. La transcripción de la conversación permanece en su máquina local, disponible a través de `claude --resume` | `claude rm 7c5dcf5d` |

45| `claude setup-token` | Generar un token OAuth de larga duración para CI y scripts. Imprime el token en la terminal sin guardarlo. Requiere una suscripción a Claude. Consulte [Generar un token de larga duración](/es/authentication#generate-a-long-lived-token) | `claude setup-token` |45| `claude setup-token` | Generar un token OAuth de larga duración para CI y scripts. Imprime el token en la terminal sin guardarlo. Requiere una suscripción a Claude. Consulte [Generar un token de larga duración](/docs/es/authentication#generate-a-long-lived-token) | `claude setup-token` |

46| `claude stop <id>` | Detener una [sesión de fondo](/es/agent-view#manage-sessions-from-the-shell). También acepta `claude kill` | `claude stop 7c5dcf5d` |46| `claude stop <id>` | Detener una [sesión de fondo](/docs/es/agent-view#manage-sessions-from-the-shell). También acepta `claude kill` | `claude stop 7c5dcf5d` |

47| `claude ultrareview [target]` | Ejecutar [ultrareview](/es/ultrareview#run-ultrareview-non-interactively) de forma no interactiva. Imprime los hallazgos en stdout y sale con 0 en caso de éxito o 1 en caso de fallo. Use `--json` para la carga útil sin procesar y `--timeout <minutes>` para anular el valor predeterminado de 30 minutos | `claude ultrareview 1234 --json` |47| `claude ultrareview [target]` | Ejecutar [ultrareview](/docs/es/ultrareview#run-ultrareview-non-interactively) de forma no interactiva. Imprime los hallazgos en stdout y sale con 0 en caso de éxito o 1 en caso de fallo. Use `--json` para la carga útil sin procesar y `--timeout <minutes>` para anular el valor predeterminado de 30 minutos | `claude ultrareview 1234 --json` |

48 48 

49Si escribe mal un subcomando, Claude Code sugiere la coincidencia más cercana y sale sin iniciar una sesión. Por ejemplo, `claude udpate` imprime `Did you mean claude update?`.49Si escribe mal un subcomando, Claude Code sugiere la coincidencia más cercana y sale sin iniciar una sesión. Por ejemplo, `claude udpate` imprime `Did you mean claude update?`.

50 50 

51{/* min-version: 2.1.199 */}A partir de v2.1.199, `claude --dangerously-skip-permissions daemon <subcommand>` ejecuta el subcomando `daemon`. Las versiones anteriores trataban `daemon <subcommand>` como el indicador para una nueva sesión interactiva, por lo que el subcomando nunca se ejecutaba cuando la bandera venía primero, una configuración común cuando `claude` tiene un alias que incluye la bandera. Solo un `--dangerously-skip-permissions` o `--allow-dangerously-skip-permissions` inicial enruta a `daemon` de esta manera; cualquier otra bandera inicial aún inicia una sesión interactiva.51A partir de v2.1.199, `claude --dangerously-skip-permissions daemon <subcommand>` ejecuta el subcomando `daemon`. Las versiones anteriores trataban `daemon <subcommand>` como el indicador para una nueva sesión interactiva, por lo que el subcomando nunca se ejecutaba cuando la bandera venía primero, una configuración común cuando `claude` tiene un alias que incluye la bandera. Solo un `--dangerously-skip-permissions` o `--allow-dangerously-skip-permissions` inicial enruta a `daemon` de esta manera; cualquier otra bandera inicial aún inicia una sesión interactiva.

52 52 

53<h2 id="cli-flags">53<h2 id="cli-flags">

54 Banderas CLI54 Banderas CLI


57Personalice el comportamiento de Claude Code con estas banderas de línea de comandos. `claude --help` no enumera todas las banderas, por lo que la ausencia de una bandera en `--help` no significa que no esté disponible.57Personalice el comportamiento de Claude Code con estas banderas de línea de comandos. `claude --help` no enumera todas las banderas, por lo que la ausencia de una bandera en `--help` no significa que no esté disponible.

58 58 

59| Bandera | Descripción | Ejemplo |59| Bandera | Descripción | Ejemplo |

60| :---------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------- |60| :---------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------- |

61| `--add-dir` | Agregar directorios de trabajo adicionales para que Claude lea y edite archivos. Otorga acceso a archivos; la mayoría de la configuración de `.claude/` [no se descubre](/es/permissions#additional-directories-grant-file-access-not-configuration) desde estos directorios. Valida que cada ruta exista como directorio. Para persistir estos directorios entre sesiones, establezca [`permissions.additionalDirectories`](/es/settings#permission-settings) en configuración | `claude --add-dir ../apps ../lib` |61| `--add-dir` | Agregar directorios de trabajo adicionales para que Claude lea y edite archivos. Otorga acceso a archivos; la mayoría de la configuración de `.claude/` [no se descubre](/docs/es/permissions#additional-directories-grant-file-access-not-configuration) desde estos directorios. Valida que cada ruta exista como directorio. Para persistir estos directorios entre sesiones, establezca [`permissions.additionalDirectories`](/docs/es/settings#permission-settings) en configuración | `claude --add-dir ../apps ../lib` |

62| `--advisor <model>` | Habilitar la [herramienta advisor](/es/advisor) del lado del servidor para esta sesión con un alias de modelo: `opus`, `sonnet` o `fable` ({/* min-version: 2.1.170 */}v2.1.170+), o un ID de modelo completo. Tiene prioridad sobre la configuración `advisorModel` para la sesión | `claude --advisor opus` |62| `--advisor <model>` | Habilitar la [herramienta advisor](/docs/es/advisor) del lado del servidor para esta sesión con un alias de modelo: `opus`, `sonnet` o `fable` (v2.1.170+), o un ID de modelo completo. Tiene prioridad sobre la configuración `advisorModel` para la sesión | `claude --advisor opus` |

63| `--agent` | Especificar un agente para la sesión actual (anula la configuración `agent`) | `claude --agent my-custom-agent` |63| `--agent` | Especificar un agente para la sesión actual (anula la configuración `agent`) | `claude --agent my-custom-agent` |

64| `--agents` | Definir subagents personalizados dinámicamente a través de JSON. Utiliza los mismos nombres de campo que el [frontmatter](/es/sub-agents#supported-frontmatter-fields) de subagent, más un campo `prompt` para las instrucciones del agente | `claude --agents '{"reviewer":{"description":"Reviews code","prompt":"You are a code reviewer"}}'` |64| `--agents` | Definir subagents personalizados dinámicamente a través de JSON. Utiliza los mismos nombres de campo que el [frontmatter](/docs/es/sub-agents#supported-frontmatter-fields) de subagent, más un campo `prompt` para las instrucciones del agente | `claude --agents '{"reviewer":{"description":"Reviews code","prompt":"You are a code reviewer"}}'` |

65| `--allow-dangerously-skip-permissions` | Agregar `bypassPermissions` al ciclo de modo `Shift+Tab` sin comenzar en él. Permite comenzar en un modo diferente como `plan` y cambiar a `bypassPermissions` más tarde. Consulte [modos de permiso](/es/permission-modes#skip-all-checks-with-bypasspermissions-mode) | `claude --permission-mode plan --allow-dangerously-skip-permissions` |65| `--allow-dangerously-skip-permissions` | Agregar `bypassPermissions` al ciclo de modo `Shift+Tab` sin comenzar en él. Permite comenzar en un modo diferente como `plan` y cambiar a `bypassPermissions` más tarde. Consulte [modos de permiso](/docs/es/permission-modes#skip-all-checks-with-bypasspermissions-mode) | `claude --permission-mode plan --allow-dangerously-skip-permissions` |

66| `--allowedTools`, `--allowed-tools` | Herramientas que se ejecutan sin solicitar permiso. Consulte [sintaxis de regla de permiso](/es/settings#permission-rule-syntax) para coincidencia de patrones. Para restringir qué herramientas están disponibles, use `--tools` en su lugar | `"Bash(git log *)" "Bash(git diff *)" "Read"` |66| `--allowedTools`, `--allowed-tools` | Herramientas que se ejecutan sin solicitar permiso. Consulte [sintaxis de regla de permiso](/docs/es/settings#permission-rule-syntax) para coincidencia de patrones. Para restringir qué herramientas están disponibles, use `--tools` en su lugar | `"Bash(git log *)" "Bash(git diff *)" "Read"` |

67| `--append-subagent-system-prompt` | {/* min-version: 2.1.205 */}Agregar texto personalizado al final del indicador del sistema de cada [subagent](/es/sub-agents), incluidos subagents anidados. Solo se aplica en modo no interactivo con `-p`. Requiere Claude Code v2.1.205 o posterior | `claude -p --append-subagent-system-prompt "Cite file paths in every answer" "query"` |67| `--append-subagent-system-prompt` | Agregar texto personalizado al final del indicador del sistema de cada [subagent](/docs/es/sub-agents), incluidos subagents anidados. Solo se aplica en modo no interactivo con `-p`. Requiere Claude Code v2.1.205 o posterior | `claude -p --append-subagent-system-prompt "Cite file paths in every answer" "query"` |

68| `--append-system-prompt` | Agregar texto personalizado al final del indicador del sistema predeterminado | `claude --append-system-prompt "Always use TypeScript"` |68| `--append-system-prompt` | Agregar texto personalizado al final del indicador del sistema predeterminado | `claude --append-system-prompt "Always use TypeScript"` |

69| `--append-system-prompt-file` | Cargar texto de indicación del sistema adicional desde un archivo y agregar al indicador predeterminado | `claude --append-system-prompt-file ./extra-rules.txt` |69| `--append-system-prompt-file` | Cargar texto de indicación del sistema adicional desde un archivo y agregar al indicador predeterminado | `claude --append-system-prompt-file ./extra-rules.txt` |

70| `--ax-screen-reader` | {/* min-version: 2.1.181 */}Renderizar salida compatible con lector de pantalla: texto plano sin bordes decorativos ni animaciones. Fuerza el renderizador clásico, por lo que la configuración [`tui`](/es/settings#available-settings) no tiene efecto; las [sesiones de fondo](/es/agent-view) adjuntas aún se renderizan a pantalla completa. Tiene prioridad sobre [`CLAUDE_AX_SCREEN_READER`](/es/env-vars) y la configuración [`axScreenReader`](/es/settings#available-settings). Requiere Claude Code v2.1.181 o posterior | `claude --ax-screen-reader` |70| `--ax-screen-reader` | Renderizar salida compatible con lector de pantalla: texto plano sin bordes decorativos ni animaciones. Fuerza el renderizador clásico, por lo que la configuración [`tui`](/docs/es/settings#available-settings) no tiene efecto; las [sesiones de fondo](/docs/es/agent-view) adjuntas aún se renderizan a pantalla completa. Tiene prioridad sobre [`CLAUDE_AX_SCREEN_READER`](/docs/es/env-vars) y la configuración [`axScreenReader`](/docs/es/settings#available-settings). Requiere Claude Code v2.1.181 o posterior | `claude --ax-screen-reader` |

71| `--bare` | Modo mínimo: omitir el descubrimiento automático de hooks, skills, plugins, servidores MCP, memoria automática y CLAUDE.md para que las llamadas con script se inicien más rápido. Claude tiene acceso a herramientas Bash, lectura de archivos y edición de archivos. Establece [`CLAUDE_CODE_SIMPLE`](/es/env-vars). Consulte [bare mode](/es/headless#start-faster-with-bare-mode) | `claude --bare -p "query"` |71| `--bare` | Modo mínimo: omitir el descubrimiento automático de hooks, skills, plugins, servidores MCP, memoria automática y CLAUDE.md para que las llamadas con script se inicien más rápido. Claude tiene acceso a herramientas Bash, lectura de archivos y edición de archivos. Establece [`CLAUDE_CODE_SIMPLE`](/docs/es/env-vars). Consulte [bare mode](/docs/es/headless#start-faster-with-bare-mode) | `claude --bare -p "query"` |

72| `--betas` | Encabezados beta para incluir en solicitudes de API (solo usuarios con clave API) | `claude --betas interleaved-thinking` |72| `--betas` | Encabezados beta para incluir en solicitudes de API (solo usuarios con clave API) | `claude --betas interleaved-thinking` |

73| `--bg`, `--background` | Iniciar la sesión como un [agente de fondo](/es/agent-view) y regresar inmediatamente. Imprime el ID de sesión y comandos de administración. Combine con `--exec` para ejecutar un comando de shell como un trabajo de fondo en lugar de una sesión de Claude, o con `--agent` para ejecutar un subagent específico. {/* min-version: 2.1.198 */}No se puede combinar con `-p`/`--print`; consulte la [referencia de errores](/es/errors#command-line-errors) | `claude --bg "investigate the flaky test"` |73| `--bg`, `--background` | Iniciar la sesión como un [agente de fondo](/docs/es/agent-view) y regresar inmediatamente. Imprime el ID de sesión y comandos de administración. Combine con `--exec` para ejecutar un comando de shell como un trabajo de fondo en lugar de una sesión de Claude, o con `--agent` para ejecutar un subagent específico. No se puede combinar con `-p`/`--print`; consulte la [referencia de errores](/docs/es/errors#command-line-errors) | `claude --bg "investigate the flaky test"` |

74| `--channels` | (Vista previa de investigación) Servidores MCP cuyas notificaciones de [channel](/es/channels) Claude debe escuchar en esta sesión. Lista separada por espacios de entradas `plugin:<name>@<marketplace>`. Requiere autenticación de Claude.ai | `claude --channels plugin:my-notifier@my-marketplace` |74| `--channels` | (Vista previa de investigación) Servidores MCP cuyas notificaciones de [channel](/docs/es/channels) Claude debe escuchar en esta sesión. Lista separada por espacios de entradas `plugin:<name>@<marketplace>`. Requiere autenticación de Claude.ai | `claude --channels plugin:my-notifier@my-marketplace` |

75| `--chrome` | Habilitar [integración del navegador Chrome](/es/chrome) para automatización web y pruebas | `claude --chrome` |75| `--chrome` | Habilitar [integración del navegador Chrome](/docs/es/chrome) para automatización web y pruebas | `claude --chrome` |

76| `--cloud` | Crear una nueva [sesión web](/es/claude-code-on-the-web) en claude.ai con la descripción de tarea proporcionada | `claude --cloud "Fix the login bug"` |76| `--cloud` | Crear una nueva [sesión web](/docs/es/claude-code-on-the-web) en claude.ai con la descripción de tarea proporcionada | `claude --cloud "Fix the login bug"` |

77| `--continue`, `-c` | Cargar la conversación más reciente en el directorio actual. Incluye sesiones que agregaron este directorio con `/add-dir` | `claude --continue` |77| `--continue`, `-c` | Cargar la conversación más reciente en el directorio actual. Incluye sesiones que agregaron este directorio con `/add-dir` | `claude --continue` |

78| `--dangerously-load-development-channels` | Habilitar [channels](/es/channels-reference#test-during-the-research-preview) que no están en la lista de permitidos aprobada, para desarrollo local. Acepta entradas `plugin:<name>@<marketplace>` y `server:<name>`. Solicita confirmación | `claude --dangerously-load-development-channels server:webhook` |78| `--dangerously-load-development-channels` | Habilitar [channels](/docs/es/channels-reference#test-during-the-research-preview) que no están en la lista de permitidos aprobada, para desarrollo local. Acepta entradas `plugin:<name>@<marketplace>` y `server:<name>`. Solicita confirmación | `claude --dangerously-load-development-channels server:webhook` |

79| `--dangerously-skip-permissions` | Omitir indicadores de permiso. Equivalente a `--permission-mode bypassPermissions`. Consulte [modos de permiso](/es/permission-modes#skip-all-checks-with-bypasspermissions-mode) para ver qué hace y no hace esto. Para sesiones iniciadas con `--bg`, el modo [persiste cuando el supervisor reinicia la sesión](/es/agent-view#permission-mode-model-and-effort) | `claude --dangerously-skip-permissions` |79| `--dangerously-skip-permissions` | Omitir indicadores de permiso. Equivalente a `--permission-mode bypassPermissions`. Consulte [modos de permiso](/docs/es/permission-modes#skip-all-checks-with-bypasspermissions-mode) para ver qué hace y no hace esto. Para sesiones iniciadas con `--bg`, el modo [persiste cuando el supervisor reinicia la sesión](/docs/es/agent-view#permission-mode-model-and-effort) | `claude --dangerously-skip-permissions` |

80| `--debug` | Habilitar modo de depuración con filtrado de categoría opcional (por ejemplo, `"api,hooks"` o `"!statsig,!file"`) | `claude --debug "api,mcp"` |80| `--debug` | Habilitar modo de depuración con filtrado de categoría opcional (por ejemplo, `"api,hooks"` o `"!statsig,!file"`) | `claude --debug "api,mcp"` |

81| `--debug-file <path>` | Escribir registros de depuración en una ruta de archivo específica. Habilita implícitamente el modo de depuración. Tiene prioridad sobre `CLAUDE_CODE_DEBUG_LOGS_DIR` | `claude --debug-file /tmp/claude-debug.log` |81| `--debug-file <path>` | Escribir registros de depuración en una ruta de archivo específica. Habilita implícitamente el modo de depuración. Tiene prioridad sobre `CLAUDE_CODE_DEBUG_LOGS_DIR` | `claude --debug-file /tmp/claude-debug.log` |

82| `--disable-slash-commands` | Deshabilitar todas las skills y comandos para esta sesión | `claude --disable-slash-commands` |82| `--disable-slash-commands` | Deshabilitar todas las skills y comandos para esta sesión | `claude --disable-slash-commands` |

83| `--disallowedTools`, `--disallowed-tools` | Reglas de denegación. Un nombre de herramienta simple elimina esa herramienta del contexto del modelo: `"Edit"` elimina Edit, `"*"` elimina todas las herramientas, y `"mcp__*"` elimina todas las herramientas MCP. Una regla con alcance como `Bash(rm *)` deja la herramienta disponible y deniega solo las llamadas coincidentes | `"Bash(git log *)" "Bash(git diff *)" "Edit"` |83| `--disallowedTools`, `--disallowed-tools` | Reglas de denegación. Un nombre de herramienta simple elimina esa herramienta del contexto del modelo: `"Edit"` elimina Edit, `"*"` elimina todas las herramientas, y `"mcp__*"` elimina todas las herramientas MCP. Una regla con alcance como `Bash(rm *)` deja la herramienta disponible y deniega solo las llamadas coincidentes | `"Bash(git log *)" "Bash(git diff *)" "Edit"` |

84| `--effort` | Establecer el [nivel de esfuerzo](/es/model-config#adjust-effort-level) para la sesión actual. Opciones: `low`, `medium`, `high`, `xhigh`, `max`, o {/* min-version: 2.1.203 */}`ultracode`. Los niveles disponibles dependen del modelo. `ultracode` inicia la sesión en esfuerzo `xhigh` con [ultracode](/es/workflows#let-claude-decide-with-ultracode) activado, y requiere Claude Code v2.1.203 o posterior. Anula la configuración [`effortLevel`](/es/settings#available-settings) para esta sesión y no persiste | `claude --effort high` |84| `--effort` | Establecer el [nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) para la sesión actual. Opciones: `low`, `medium`, `high`, `xhigh`, `max`, o `ultracode`. Los niveles disponibles dependen del modelo. `ultracode` inicia la sesión en esfuerzo `xhigh` con [ultracode](/docs/es/workflows#let-claude-decide-with-ultracode) activado, y requiere Claude Code v2.1.203 o posterior. Anula la configuración [`effortLevel`](/docs/es/settings#available-settings) para esta sesión y no persiste | `claude --effort high` |

85| `--enable-auto-mode` | {/* max-version: 2.1.110 */}Eliminado en v2.1.111. Auto mode ahora está en el ciclo `Shift+Tab` de forma predeterminada; use `--permission-mode auto` para comenzar en él | `claude --permission-mode auto` |85| `--enable-auto-mode` | Eliminado en v2.1.111. Auto mode ahora está en el ciclo `Shift+Tab` de forma predeterminada; use `--permission-mode auto` para comenzar en él | `claude --permission-mode auto` |

86| `--exclude-dynamic-system-prompt-sections` | Mover secciones por máquina del indicador del sistema (directorio de trabajo, información del entorno, rutas de memoria, estado de git) al primer mensaje del usuario. Mejora la reutilización de caché de indicación en diferentes usuarios y máquinas que ejecutan la misma tarea. Solo se aplica con el indicador del sistema predeterminado; se ignora cuando se establece `--system-prompt` o `--system-prompt-file`. Use con `-p` para cargas de trabajo con script y múltiples usuarios | `claude -p --exclude-dynamic-system-prompt-sections "query"` |86| `--exclude-dynamic-system-prompt-sections` | Mover secciones por máquina del indicador del sistema (directorio de trabajo, información del entorno, rutas de memoria, estado de git) al primer mensaje del usuario. Mejora la reutilización de caché de indicación en diferentes usuarios y máquinas que ejecutan la misma tarea. Solo se aplica con el indicador del sistema predeterminado; se ignora cuando se establece `--system-prompt` o `--system-prompt-file`. Use con `-p` para cargas de trabajo con script y múltiples usuarios | `claude -p --exclude-dynamic-system-prompt-sections "query"` |

87| `--exec` | Ejecutar un comando de shell como un trabajo de fondo respaldado por PTY en lugar de iniciar una sesión de Claude. Use con `--bg` para lanzar desde el shell | `claude --bg --exec 'pytest -x'` |87| `--exec` | Ejecutar un comando de shell como un trabajo de fondo respaldado por PTY en lugar de iniciar una sesión de Claude. Use con `--bg` para lanzar desde el shell | `claude --bg --exec 'pytest -x'` |

88| `--fallback-model` | Habilitar fallback automático a los modelos especificados cuando el modelo principal está sobrecargado o no está disponible, por ejemplo un modelo retirado. Acepta una lista separada por comas probada en orden. Consulte [Cadenas de modelo de fallback](/es/model-config#fallback-model-chains). Para persistir una cadena entre sesiones, use la configuración [`fallbackModel`](/es/settings#available-settings), que esta bandera anula | `claude --fallback-model sonnet,haiku` |88| `--fallback-model` | Habilitar fallback automático a los modelos especificados cuando el modelo principal está sobrecargado o no está disponible, por ejemplo un modelo retirado. Acepta una lista separada por comas probada en orden. Consulte [Cadenas de modelo de fallback](/docs/es/model-config#fallback-model-chains). Para persistir una cadena entre sesiones, use la configuración [`fallbackModel`](/docs/es/settings#available-settings), que esta bandera anula | `claude --fallback-model sonnet,haiku` |

89| `--fork-session` | Al reanudar, crear un nuevo ID de sesión en lugar de reutilizar el original (usar con `--resume` o `--continue`) | `claude --resume abc123 --fork-session` |89| `--fork-session` | Al reanudar, crear un nuevo ID de sesión en lugar de reutilizar el original (usar con `--resume` o `--continue`) | `claude --resume abc123 --fork-session` |

90| `--from-pr` | Reanudar sesiones vinculadas a una solicitud de extracción específica. Acepta un número de PR, una URL de PR de GitHub o GitHub Enterprise, una URL de solicitud de fusión de GitLab o una URL de solicitud de extracción de Bitbucket. Las sesiones se vinculan automáticamente cuando Claude crea la solicitud de extracción | `claude --from-pr 123` |90| `--from-pr` | Reanudar sesiones vinculadas a una solicitud de extracción específica. Acepta un número de PR, una URL de PR de GitHub o GitHub Enterprise, una URL de solicitud de fusión de GitLab o una URL de solicitud de extracción de Bitbucket. Las sesiones se vinculan automáticamente cuando Claude crea la solicitud de extracción | `claude --from-pr 123` |

91| `--ide` | Conectarse automáticamente al IDE al iniciar si exactamente un IDE válido está disponible | `claude --ide` |91| `--ide` | Conectarse automáticamente al IDE al iniciar si exactamente un IDE válido está disponible | `claude --ide` |

92| `--init` | Ejecutar [Setup hooks](/es/hooks#setup) con el matcher `init` antes de la sesión (solo modo impresión) | `claude -p --init "query"` |92| `--init` | Ejecutar [Setup hooks](/docs/es/hooks#setup) con el matcher `init` antes de la sesión (solo modo impresión) | `claude -p --init "query"` |

93| `--init-only` | Ejecutar hooks de [Setup](/es/hooks#setup) y `SessionStart`, luego salir sin iniciar una conversación | `claude --init-only` |93| `--init-only` | Ejecutar hooks de [Setup](/docs/es/hooks#setup) y `SessionStart`, luego salir sin iniciar una conversación | `claude --init-only` |

94| `--include-hook-events` | Incluir eventos del ciclo de vida del hook de cada evento de hook en el flujo de salida. Los eventos de hook `SessionStart` y `Setup` siempre se incluyen y no necesitan esta bandera. Requiere `--output-format stream-json` | `claude -p --output-format stream-json --verbose --include-hook-events "query"` |94| `--include-hook-events` | Incluir eventos del ciclo de vida del hook de cada evento de hook en el flujo de salida. Los eventos de hook `SessionStart` y `Setup` siempre se incluyen y no necesitan esta bandera. Requiere `--output-format stream-json` | `claude -p --output-format stream-json --verbose --include-hook-events "query"` |

95| `--include-partial-messages` | Incluir eventos de transmisión parcial en la salida. Requiere `--print` y `--output-format stream-json` | `claude -p --output-format stream-json --verbose --include-partial-messages "query"` |95| `--include-partial-messages` | Incluir eventos de transmisión parcial en la salida. Requiere `--print` y `--output-format stream-json` | `claude -p --output-format stream-json --verbose --include-partial-messages "query"` |

96| `--input-format` | Especificar formato de entrada para modo impresión (opciones: `text`, `stream-json`) | `claude -p --output-format json --input-format stream-json` |96| `--input-format` | Especificar formato de entrada para modo impresión (opciones: `text`, `stream-json`) | `claude -p --output-format json --input-format stream-json` |

97| `--json-schema` | Obtener salida JSON validada que coincida con un JSON Schema después de que el agente complete su flujo de trabajo (solo modo impresión). Consulte [salidas estructuradas](/es/agent-sdk/structured-outputs). {/* min-version: 2.1.205 */}Claude Code sale con un error en un esquema inválido y acepta la palabra clave `format` como anotación sin validación del lado del cliente. Antes de v2.1.205, un esquema inválido producía salida no estructurada sin error, y esquemas que usaban `format` se trataban como inválidos | `claude -p --json-schema '{"type":"object","properties":{...}}' "query"` |97| `--json-schema` | Obtener salida JSON validada que coincida con un JSON Schema después de que el agente complete su flujo de trabajo (solo modo impresión). Consulte [salidas estructuradas](/docs/es/agent-sdk/structured-outputs). Claude Code sale con un error en un esquema inválido y acepta la palabra clave `format` como anotación sin validación del lado del cliente. Antes de v2.1.205, un esquema inválido producía salida no estructurada sin error, y esquemas que usaban `format` se trataban como inválidos | `claude -p --json-schema '{"type":"object","properties":{...}}' "query"` |

98| `--maintenance` | Ejecutar [Setup hooks](/es/hooks#setup) con el matcher `maintenance` antes de la sesión (solo modo impresión) | `claude -p --maintenance "query"` |98| `--maintenance` | Ejecutar [Setup hooks](/docs/es/hooks#setup) con el matcher `maintenance` antes de la sesión (solo modo impresión) | `claude -p --maintenance "query"` |

99| `--max-budget-usd` | Cantidad máxima en dólares a gastar en llamadas API antes de detener (solo modo impresión) | `claude -p --max-budget-usd 5.00 "query"` |99| `--max-budget-usd` | Cantidad máxima en dólares a gastar en llamadas API antes de detener (solo modo impresión) | `claude -p --max-budget-usd 5.00 "query"` |

100| `--max-turns` | Limitar el número de turnos de agente (solo modo impresión). Sale con un error cuando se alcanza el límite. Sin límite por defecto. {/* min-version: 2.1.205 */}Con `--input-format stream-json`, un mensaje enviado mientras Claude está trabajando permanece en cola y se ejecuta como su propio turno, con su propio límite, cuando el límite termina el actual. Antes de v2.1.205, Claude Code descartaba ese mensaje | `claude -p --max-turns 3 "query"` |100| `--max-turns` | Limitar el número de turnos de agente (solo modo impresión). Sale con un error cuando se alcanza el límite. Sin límite por defecto. Con `--input-format stream-json`, un mensaje enviado mientras Claude está trabajando permanece en cola y se ejecuta como su propio turno, con su propio límite, cuando el límite termina el actual. Antes de v2.1.205, Claude Code descartaba ese mensaje | `claude -p --max-turns 3 "query"` |

101| `--mcp-config` | Cargar servidores MCP desde archivos JSON o cadenas (separados por espacios) | `claude --mcp-config ./mcp.json` |101| `--mcp-config` | Cargar servidores MCP desde archivos JSON o cadenas (separados por espacios) | `claude --mcp-config ./mcp.json` |

102| `--model` | Establece el modelo para la sesión actual con un alias para el modelo más reciente (`sonnet`, `opus`, `haiku` o `fable`) o el nombre completo de un modelo. Anula la configuración [`model`](/es/settings#available-settings) y [`ANTHROPIC_MODEL`](/es/model-config#environment-variables) | `claude --model claude-sonnet-5` |102| `--model` | Establece el modelo para la sesión actual con un alias para el modelo más reciente (`sonnet`, `opus`, `haiku` o `fable`) o el nombre completo de un modelo. Anula la configuración [`model`](/docs/es/settings#available-settings) y [`ANTHROPIC_MODEL`](/docs/es/model-config#environment-variables) | `claude --model claude-sonnet-5` |

103| `--name`, `-n` | Establecer un nombre para mostrar para la sesión, que se muestra en `/resume` y en el título de la terminal. Puede reanudar una sesión nombrada con `claude --resume <name>`. <br /><br />[`/rename`](/es/commands) cambia el nombre durante la sesión y también lo muestra en la barra de indicación | `claude -n "my-feature-work"` |103| `--name`, `-n` | Establecer un nombre para mostrar para la sesión, que se muestra en `/resume` y en el título de la terminal. Puede reanudar una sesión nombrada con `claude --resume <name>`. <br /><br />[`/rename`](/docs/es/commands) cambia el nombre durante la sesión y también lo muestra en la barra de indicación | `claude -n "my-feature-work"` |

104| `--no-chrome` | Deshabilitar [integración del navegador Chrome](/es/chrome) para esta sesión | `claude --no-chrome` |104| `--no-chrome` | Deshabilitar [integración del navegador Chrome](/docs/es/chrome) para esta sesión | `claude --no-chrome` |

105| `--no-session-persistence` | Deshabilitar la persistencia de sesión para que las sesiones no se guarden en disco y no se puedan reanudar. Solo modo impresión. La variable de entorno [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/es/env-vars) hace lo mismo en cualquier modo | `claude -p --no-session-persistence "query"` |105| `--no-session-persistence` | Deshabilitar la persistencia de sesión para que las sesiones no se guarden en disco y no se puedan reanudar. Solo modo impresión. La variable de entorno [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/docs/es/env-vars) hace lo mismo en cualquier modo | `claude -p --no-session-persistence "query"` |

106| `--output-format` | Especificar formato de salida para modo impresión (opciones: `text`, `json`, `stream-json`) | `claude -p "query" --output-format json` |106| `--output-format` | Especificar formato de salida para modo impresión (opciones: `text`, `json`, `stream-json`) | `claude -p "query" --output-format json` |

107| `--permission-mode` | Comenzar en un [modo de permiso](/es/permission-modes) especificado. Acepta `default`, `acceptEdits`, `plan`, `auto`, `dontAsk`, `bypassPermissions` o {/* min-version: 2.1.200 */}`manual` como alias para `default`. El alias `manual` selecciona el modo que la interfaz de usuario etiqueta como Manual y requiere Claude Code v2.1.200 o posterior; `claude --help` lo enumera en lugar de `default`, y ambos valores funcionan. Anula `defaultMode` de archivos de configuración | `claude --permission-mode plan` |107| `--permission-mode` | Comenzar en un [modo de permiso](/docs/es/permission-modes) especificado. Acepta `default`, `acceptEdits`, `plan`, `auto`, `dontAsk`, `bypassPermissions` o `manual` como alias para `default`. El alias `manual` selecciona el modo que la interfaz de usuario etiqueta como Manual y requiere Claude Code v2.1.200 o posterior; `claude --help` lo enumera en lugar de `default`, y ambos valores funcionan. Anula `defaultMode` de archivos de configuración | `claude --permission-mode plan` |

108| `--permission-prompt-tool` | Especificar una herramienta MCP para manejar indicadores de permiso en modo no interactivo. {/* min-version: 2.1.206 */}Claude Code espera a que el servidor MCP de esa herramienta se conecte antes de ejecutar el primer turno, hasta el tiempo de espera de inicio [`MCP_TIMEOUT`](/es/env-vars) de 30 segundos. Antes de v2.1.206, un servidor que se inicia lentamente podría hacer que la ejecución [salga con un error de que la herramienta MCP no se encontró](/es/errors#mcp-permission-prompt-tool-not-found). <br /><br />{/* min-version: 2.1.199 */}La herramienta de indicación no puede aprobar una herramienta MCP marcada como [requiriendo interacción del usuario](/es/mcp#require-approval-for-a-specific-tool): Claude Code convierte un resultado `allow` para una en una denegación. Esta restricción requiere Claude Code v2.1.199 o posterior | `claude -p --permission-prompt-tool mcp_auth_tool "query"` |108| `--permission-prompt-tool` | Especificar una herramienta MCP para manejar indicadores de permiso en modo no interactivo. Claude Code espera a que el servidor MCP de esa herramienta se conecte antes de ejecutar el primer turno, hasta el tiempo de espera de inicio [`MCP_TIMEOUT`](/docs/es/env-vars) de 30 segundos. Antes de v2.1.206, un servidor que se inicia lentamente podría hacer que la ejecución [salga con un error de que la herramienta MCP no se encontró](/docs/es/errors#mcp-permission-prompt-tool-not-found). <br /><br />La herramienta de indicación no puede aprobar una herramienta MCP marcada como [requiriendo interacción del usuario](/docs/es/mcp#require-approval-for-a-specific-tool): Claude Code convierte un resultado `allow` para una en una denegación. Esta restricción requiere Claude Code v2.1.199 o posterior | `claude -p --permission-prompt-tool mcp_auth_tool "query"` |

109| `--plugin-dir` | Cargar un plugin desde un directorio o archivo `.zip` solo para esta sesión. Cada bandera toma una ruta. Repita la bandera para múltiples plugins: `--plugin-dir A --plugin-dir B.zip` | `claude --plugin-dir ./my-plugin` |109| `--plugin-dir` | Cargar un plugin desde un directorio o archivo `.zip` solo para esta sesión. Cada bandera toma una ruta. Repita la bandera para múltiples plugins: `--plugin-dir A --plugin-dir B.zip` | `claude --plugin-dir ./my-plugin` |

110| `--plugin-url` | Obtener un archivo `.zip` de plugin desde una URL solo para esta sesión. Repita la bandera para múltiples plugins, o pase URLs separadas por espacios en un valor único entre comillas | `claude --plugin-url https://example.com/plugin.zip` |110| `--plugin-url` | Obtener un archivo `.zip` de plugin desde una URL solo para esta sesión. Repita la bandera para múltiples plugins, o pase URLs separadas por espacios en un valor único entre comillas | `claude --plugin-url https://example.com/plugin.zip` |

111| `--print`, `-p` | Imprimir respuesta sin modo interactivo (consulte [documentación de Agent SDK](/es/agent-sdk/overview) para detalles de uso programático) | `claude -p "query"` |111| `--print`, `-p` | Imprimir respuesta sin modo interactivo (consulte [documentación de Agent SDK](/docs/es/agent-sdk/overview) para detalles de uso programático) | `claude -p "query"` |

112| `--prompt-suggestions` | Emitir un mensaje `prompt_suggestion` después de cada turno con un siguiente indicador de usuario predicho. Requiere `--print`, `--output-format stream-json` y `--verbose`. Consulte [Sugerencias de indicación](/es/interactive-mode#prompt-suggestions) | `claude -p --prompt-suggestions --output-format stream-json --verbose "query"` |112| `--prompt-suggestions` | Emitir un mensaje `prompt_suggestion` después de cada turno con un siguiente indicador de usuario predicho. Requiere `--print`, `--output-format stream-json` y `--verbose`. Consulte [Sugerencias de indicación](/docs/es/interactive-mode#prompt-suggestions) | `claude -p --prompt-suggestions --output-format stream-json --verbose "query"` |

113| `--remote` | Alias obsoleto para `--cloud` | `claude --remote "Fix the login bug"` |113| `--remote` | Alias obsoleto para `--cloud` | `claude --remote "Fix the login bug"` |

114| `--remote-control`, `--rc` | Iniciar una sesión interactiva con [Remote Control](/es/remote-control#start-a-remote-control-session) habilitado para que también pueda controlarlo desde claude.ai o la aplicación Claude. Opcionalmente pase un nombre para la sesión | `claude --remote-control "My Project"` |114| `--remote-control`, `--rc` | Iniciar una sesión interactiva con [Remote Control](/docs/es/remote-control#start-a-remote-control-session) habilitado para que también pueda controlarlo desde claude.ai o la aplicación Claude. Opcionalmente pase un nombre para la sesión | `claude --remote-control "My Project"` |

115| `--remote-control-session-name-prefix <prefix>` | Prefijo para nombres de sesión de [Remote Control](/es/remote-control) generados automáticamente cuando no se establece un nombre explícito. Por defecto es el nombre de host de su máquina, produciendo nombres como `myhost-graceful-unicorn`. Establezca `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` para el mismo efecto | `claude remote-control --remote-control-session-name-prefix dev-box` |115| `--remote-control-session-name-prefix <prefix>` | Prefijo para nombres de sesión de [Remote Control](/docs/es/remote-control) generados automáticamente cuando no se establece un nombre explícito. Por defecto es el nombre de host de su máquina, produciendo nombres como `myhost-graceful-unicorn`. Establezca `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` para el mismo efecto | `claude remote-control --remote-control-session-name-prefix dev-box` |

116| `--replay-user-messages` | Re-emitir mensajes de usuario desde stdin de vuelta en stdout para reconocimiento. Requiere `--input-format stream-json` y `--output-format stream-json` | `claude -p --input-format stream-json --output-format stream-json --verbose --replay-user-messages` |116| `--replay-user-messages` | Re-emitir mensajes de usuario desde stdin de vuelta en stdout para reconocimiento. Requiere `--input-format stream-json` y `--output-format stream-json` | `claude -p --input-format stream-json --output-format stream-json --verbose --replay-user-messages` |

117| `--resume`, `-r` | Reanudar una sesión específica por ID o nombre, o mostrar un selector interactivo para elegir una sesión. El selector y la búsqueda de nombre incluyen sesiones que agregaron este directorio con `/add-dir`; pasar un ID de sesión busca solo en el directorio del proyecto actual y sus git worktrees. A partir de v2.1.144, [sesiones de fondo](/es/agent-view) aparecen en el selector marcadas con `bg` | `claude --resume auth-refactor` |117| `--resume`, `-r` | Reanudar una sesión específica por ID o nombre, o mostrar un selector interactivo para elegir una sesión. El selector y la búsqueda de nombre incluyen sesiones que agregaron este directorio con `/add-dir`; pasar un ID de sesión busca solo en el directorio del proyecto actual y sus git worktrees. A partir de v2.1.144, [sesiones de fondo](/docs/es/agent-view) aparecen en el selector marcadas con `bg` | `claude --resume auth-refactor` |

118| `--safe-mode` | {/* min-version: 2.1.169 */}Comenzar con todas las personalizaciones deshabilitadas para solucionar problemas de una configuración rota: CLAUDE.md, skills, plugins, hooks, servidores MCP, comandos y agentes personalizados, estilos de salida, flujos de trabajo, temas personalizados, atajos de teclado personalizados, comandos de línea de estado y sugerencia de archivos, servidores LSP y memoria automática no se cargan. La autenticación, selección de modelo, herramientas integradas y permisos funcionan normalmente, lo que difiere de [`--bare`](/es/headless#start-faster-with-bare-mode). La política de configuración administrada aún se aplica, incluidos hooks configurados por política, línea de estado y comandos de sugerencia de archivos; plugins administrados, skills administrados, CLAUDE.md administrado y servidores MCP configurados por política no. Útil para verificar si una personalización es lo que desencadena [fallback automático de Fable 5](/es/model-config#automatic-model-fallback). Establece [`CLAUDE_CODE_SAFE_MODE`](/es/env-vars) | `claude --safe-mode` |118| `--safe-mode` | Comenzar con todas las personalizaciones deshabilitadas para solucionar problemas de una configuración rota: CLAUDE.md, skills, plugins, hooks, servidores MCP, comandos y agentes personalizados, estilos de salida, flujos de trabajo, temas personalizados, atajos de teclado personalizados, comandos de línea de estado y sugerencia de archivos, servidores LSP y memoria automática no se cargan. La autenticación, selección de modelo, herramientas integradas y permisos funcionan normalmente, lo que difiere de [`--bare`](/docs/es/headless#start-faster-with-bare-mode). La política de configuración administrada aún se aplica, incluidos hooks configurados por política, línea de estado y comandos de sugerencia de archivos; plugins administrados, skills administrados, CLAUDE.md administrado y servidores MCP configurados por política no. Útil para verificar si una personalización es lo que desencadena [fallback automático de Fable 5](/docs/es/model-config#automatic-model-fallback). Establece [`CLAUDE_CODE_SAFE_MODE`](/docs/es/env-vars) | `claude --safe-mode` |

119| `--session-id` | Usar un ID de sesión específico para la conversación (debe ser un UUID válido) | `claude --session-id "550e8400-e29b-41d4-a716-446655440000"` |119| `--session-id` | Usar un ID de sesión específico para la conversación (debe ser un UUID válido) | `claude --session-id "550e8400-e29b-41d4-a716-446655440000"` |

120| `--setting-sources` | Lista separada por comas de fuentes de configuración a cargar (`user`, `project`, `local`) | `claude --setting-sources user,project` |120| `--setting-sources` | Lista separada por comas de fuentes de configuración a cargar (`user`, `project`, `local`) | `claude --setting-sources user,project` |

121| `--settings` | Ruta a un archivo JSON de configuración o una cadena JSON en línea. Los valores que establezca aquí anulan las mismas claves en sus archivos `settings.json` para esta sesión. Las claves que omita mantienen sus valores basados en archivos. Consulte [precedencia de configuración](/es/settings#settings-precedence) | `claude --settings ./settings.json` |121| `--settings` | Ruta a un archivo JSON de configuración o una cadena JSON en línea. Los valores que establezca aquí anulan las mismas claves en sus archivos `settings.json` para esta sesión. Las claves que omita mantienen sus valores basados en archivos. Consulte [precedencia de configuración](/docs/es/settings#settings-precedence) | `claude --settings ./settings.json` |

122| `--strict-mcp-config` | Usar solo servidores MCP de `--mcp-config`, ignorando todas las demás configuraciones de MCP | `claude --strict-mcp-config --mcp-config ./mcp.json` |122| `--strict-mcp-config` | Usar solo servidores MCP de `--mcp-config`, ignorando todas las demás configuraciones de MCP | `claude --strict-mcp-config --mcp-config ./mcp.json` |

123| `--system-prompt` | Reemplazar todo el indicador del sistema con texto personalizado | `claude --system-prompt "You are a Python expert"` |123| `--system-prompt` | Reemplazar todo el indicador del sistema con texto personalizado | `claude --system-prompt "You are a Python expert"` |

124| `--system-prompt-file` | Cargar indicación del sistema desde un archivo, reemplazando el indicador predeterminado | `claude --system-prompt-file ./custom-prompt.txt` |124| `--system-prompt-file` | Cargar indicación del sistema desde un archivo, reemplazando el indicador predeterminado | `claude --system-prompt-file ./custom-prompt.txt` |

125| `--teleport` | Reanudar una [sesión web](/es/claude-code-on-the-web) en su terminal local | `claude --teleport` |125| `--teleport` | Reanudar una [sesión web](/docs/es/claude-code-on-the-web) en su terminal local | `claude --teleport` |

126| `--teammate-mode` | Establecer cómo se muestran los compañeros de [equipo de agente](/es/agent-teams): `in-process` (predeterminado), `auto`, `tmux` o {/* min-version: 2.1.186 */}`iterm2` (agregado en v2.1.186). El predeterminado cambió de `auto` en v2.1.179. Anula la configuración [`teammateMode`](/es/settings#available-settings) para esta sesión. Consulte [Elegir un modo de visualización](/es/agent-teams#choose-a-display-mode) | `claude --teammate-mode auto` |126| `--teammate-mode` | Establecer cómo se muestran los compañeros de [equipo de agente](/docs/es/agent-teams): `in-process` (predeterminado), `auto`, `tmux` o `iterm2` (agregado en v2.1.186). El predeterminado cambió de `auto` en v2.1.179. Anula la configuración [`teammateMode`](/docs/es/settings#available-settings) para esta sesión. Consulte [Elegir un modo de visualización](/docs/es/agent-teams#choose-a-display-mode) | `claude --teammate-mode auto` |

127| `--tmux` | Crear una sesión tmux para el worktree. Requiere `--worktree`. Utiliza paneles nativos de iTerm2 cuando están disponibles; pase `--tmux=classic` para tmux tradicional | `claude -w feature-auth --tmux` |127| `--tmux` | Crear una sesión tmux para el worktree. Requiere `--worktree`. Utiliza paneles nativos de iTerm2 cuando están disponibles; pase `--tmux=classic` para tmux tradicional | `claude -w feature-auth --tmux` |

128| `--tools` | Restringir qué herramientas integradas puede usar Claude. Use `""` para deshabilitar todas, `"default"` para todas, o nombres de herramientas como `"Bash,Edit,Read"`. Las herramientas MCP no se ven afectadas; para denegar también esas, use `--disallowedTools "mcp__*"`, o pase `--strict-mcp-config` sin `--mcp-config` para que no se carguen servidores MCP | `claude --tools "Bash,Edit,Read"` |128| `--tools` | Restringir qué herramientas integradas puede usar Claude. Use `""` para deshabilitar todas, `"default"` para todas, o nombres de herramientas como `"Bash,Edit,Read"`. Las herramientas MCP no se ven afectadas; para denegar también esas, use `--disallowedTools "mcp__*"`, o pase `--strict-mcp-config` sin `--mcp-config` para que no se carguen servidores MCP | `claude --tools "Bash,Edit,Read"` |

129| `--verbose` | Habilitar registro detallado, muestra salida completa turno por turno. Anula la configuración [`viewMode`](/es/settings#available-settings) para esta sesión | `claude --verbose` |129| `--verbose` | Habilitar registro detallado, muestra salida completa turno por turno. Anula la configuración [`viewMode`](/docs/es/settings#available-settings) para esta sesión | `claude --verbose` |

130| `--version`, `-v` | Mostrar el número de versión | `claude -v` |130| `--version`, `-v` | Mostrar el número de versión | `claude -v` |

131| `--worktree`, `-w` | Iniciar Claude en un [git worktree](/es/worktrees) aislado en `<repo>/.claude/worktrees/<name>`. Si no se proporciona un nombre, se genera automáticamente. Pase `#<number>` o una URL de solicitud de extracción de GitHub para obtener ese PR de `origin` y ramificar el worktree desde él | `claude -w feature-auth` |131| `--worktree`, `-w` | Iniciar Claude en un [git worktree](/docs/es/worktrees) aislado en `<repo>/.claude/worktrees/<name>`. Si no se proporciona un nombre, se genera automáticamente. Pase `#<number>` o una URL de solicitud de extracción de GitHub para obtener ese PR de `origin` y ramificar el worktree desde él | `claude -w feature-auth` |

132 132 

133<h3 id="system-prompt-flags">133<h3 id="system-prompt-flags">

134 Banderas de indicación del sistema134 Banderas de indicación del sistema


147 147 

148Elija según si la identidad predeterminada de Claude Code aún se ajusta a su tarea. Use una bandera de adición cuando Claude deba seguir siendo un asistente de codificación que también sigue sus reglas adicionales: instrucciones por invocación, formato de salida o contexto de dominio para un script `-p`. Agregar preserva la orientación de herramientas predeterminada, instrucciones de seguridad y convenciones de codificación, por lo que solo proporciona lo que difiere. Use una bandera de reemplazo cuando la superficie, identidad o modelo de permiso difiera del de Claude Code, como un agente no codificador en una canalización que ningún humano observa. Reemplazar elimina todo el indicador predeterminado, incluida la orientación de herramientas e instrucciones de seguridad, por lo que usted es responsable de lo que su tarea aún necesita.148Elija según si la identidad predeterminada de Claude Code aún se ajusta a su tarea. Use una bandera de adición cuando Claude deba seguir siendo un asistente de codificación que también sigue sus reglas adicionales: instrucciones por invocación, formato de salida o contexto de dominio para un script `-p`. Agregar preserva la orientación de herramientas predeterminada, instrucciones de seguridad y convenciones de codificación, por lo que solo proporciona lo que difiere. Use una bandera de reemplazo cuando la superficie, identidad o modelo de permiso difiera del de Claude Code, como un agente no codificador en una canalización que ningún humano observa. Reemplazar elimina todo el indicador predeterminado, incluida la orientación de herramientas e instrucciones de seguridad, por lo que usted es responsable de lo que su tarea aún necesita.

149 149 

150Estas banderas se aplican solo a la invocación actual. Para personas persistentes que puede cambiar y compartir en un proyecto, use [estilos de salida](/es/output-styles). Para convenciones de proyecto que Claude siempre debe seguir, use [CLAUDE.md](/es/memory). La [guía de Agent SDK sobre indicaciones del sistema](/es/agent-sdk/modifying-system-prompts#decide-on-a-starting-point) cubre la misma decisión con más profundidad.150Estas banderas se aplican solo a la invocación actual. Para personas persistentes que puede cambiar y compartir en un proyecto, use [estilos de salida](/docs/es/output-styles). Para convenciones de proyecto que Claude siempre debe seguir, use [CLAUDE.md](/docs/es/memory). La [guía de Agent SDK sobre indicaciones del sistema](/docs/es/agent-sdk/modifying-system-prompts#decide-on-a-starting-point) cubre la misma decisión con más profundidad.

151 151 

152<h2 id="see-also">152<h2 id="see-also">

153 Ver también153 Ver también

154</h2>154</h2>

155 155 

156* [Extensión de Chrome](/es/chrome) - Automatización de navegador y pruebas web156* [Extensión de Chrome](/docs/es/chrome) - Automatización de navegador y pruebas web

157* [Modo interactivo](/es/interactive-mode) - Atajos de teclado, modos de entrada y características interactivas157* [Modo interactivo](/docs/es/interactive-mode) - Atajos de teclado, modos de entrada y características interactivas

158* [Guía de inicio rápido](/es/quickstart) - Introducción a Claude Code158* [Guía de inicio rápido](/docs/es/quickstart) - Introducción a Claude Code

159* [Flujos de trabajo comunes](/es/common-workflows) - Flujos de trabajo avanzados y patrones159* [Flujos de trabajo comunes](/docs/es/common-workflows) - Flujos de trabajo avanzados y patrones

160* [Configuración](/es/settings) - Opciones de configuración160* [Configuración](/docs/es/settings) - Opciones de configuración

161* [Documentación de Agent SDK](/es/agent-sdk/overview) - Uso programático e integraciones161* [Documentación de Agent SDK](/docs/es/agent-sdk/overview) - Uso programático e integraciones

code-review.md +14 −14

Details

7> Configure revisiones automatizadas de PR que detecten errores lógicos, vulnerabilidades de seguridad y regresiones mediante análisis multiagente de su base de código completa7> Configure revisiones automatizadas de PR que detecten errores lógicos, vulnerabilidades de seguridad y regresiones mediante análisis multiagente de su base de código completa

8 8 

9<Note>9<Note>

10 Code Review está en vista previa de investigación, disponible para suscripciones de [Team y Enterprise](https://claude.ai/admin-settings/claude-code). No está disponible para organizaciones con [Zero Data Retention](/es/zero-data-retention) habilitado.10 Code Review está en vista previa de investigación, disponible para suscripciones de [Team y Enterprise](https://claude.ai/admin-settings/claude-code). No está disponible para organizaciones con [Zero Data Retention](/docs/es/zero-data-retention) habilitado.

11</Note>11</Note>

12 12 

13Code Review analiza sus solicitudes de extracción de GitHub y publica hallazgos como comentarios en línea en las líneas de código donde encontró problemas. Una flota de agentes especializados examina los cambios de código en el contexto de su base de código completa, buscando errores lógicos, vulnerabilidades de seguridad, casos límite rotos y regresiones sutiles.13Code Review analiza sus solicitudes de extracción de GitHub y publica hallazgos como comentarios en línea en las líneas de código donde encontró problemas. Una flota de agentes especializados examina los cambios de código en el contexto de su base de código completa, buscando errores lógicos, vulnerabilidades de seguridad, casos límite rotos y regresiones sutiles.

14 14 

15Los hallazgos se etiquetan por severidad y no aprueban ni bloquean su PR, por lo que los flujos de trabajo de revisión existentes permanecen intactos. Puede ajustar lo que Claude marca agregando un archivo `CLAUDE.md` o `REVIEW.md` a su repositorio.15Los hallazgos se etiquetan por severidad y no aprueban ni bloquean su PR, por lo que los flujos de trabajo de revisión existentes permanecen intactos. Puede ajustar lo que Claude marca agregando un archivo `CLAUDE.md` o `REVIEW.md` a su repositorio.

16 16 

17Para ejecutar Claude en su propia infraestructura de CI en lugar de este servicio administrado, consulte [GitHub Actions](/es/github-actions) o [GitLab CI/CD](/es/gitlab-ci-cd). Para repositorios en una instancia de GitHub autohospedada, consulte [GitHub Enterprise Server](/es/github-enterprise-server).17Para ejecutar Claude en su propia infraestructura de CI en lugar de este servicio administrado, consulte [GitHub Actions](/docs/es/github-actions) o [GitLab CI/CD](/docs/es/gitlab-ci-cd). Para repositorios en una instancia de GitHub autohospedada, consulte [GitHub Enterprise Server](/docs/es/github-enterprise-server).

18 18 

19Esta página cubre:19Esta página cubre:

20 20 


112 * **Issues**: lectura y escritura112 * **Issues**: lectura y escritura

113 * **Pull requests**: lectura y escritura113 * **Pull requests**: lectura y escritura

114 114 

115 Code Review utiliza acceso de lectura a contenidos y acceso de escritura a solicitudes de extracción. El conjunto de permisos más amplio también admite [GitHub Actions](/es/github-actions) si lo habilita más adelante.115 Code Review utiliza acceso de lectura a contenidos y acceso de escritura a solicitudes de extracción. El conjunto de permisos más amplio también admite [GitHub Actions](/docs/es/github-actions) si lo habilita más adelante.

116 </Step>116 </Step>

117 117 

118 <Step title="Seleccionar repositorios">118 <Step title="Seleccionar repositorios">


173 173 

174Code Review lee sus archivos `CLAUDE.md` del repositorio y trata las violaciones recién introducidas como hallazgos de [nivel nit](#severity-levels). Esto funciona bidireccionalamente: si su PR cambia el código de una manera que hace que una declaración `CLAUDE.md` esté desactualizada, Claude marca que los documentos necesitan actualización también.174Code Review lee sus archivos `CLAUDE.md` del repositorio y trata las violaciones recién introducidas como hallazgos de [nivel nit](#severity-levels). Esto funciona bidireccionalamente: si su PR cambia el código de una manera que hace que una declaración `CLAUDE.md` esté desactualizada, Claude marca que los documentos necesitan actualización también.

175 175 

176Claude lee archivos `CLAUDE.md` en cada nivel de su jerarquía de directorios, por lo que las reglas en el `CLAUDE.md` de un subdirectorio se aplican solo a archivos bajo esa ruta. Consulte la [documentación de memoria](/es/memory) para obtener más información sobre cómo funciona `CLAUDE.md`.176Claude lee archivos `CLAUDE.md` en cada nivel de su jerarquía de directorios, por lo que las reglas en el `CLAUDE.md` de un subdirectorio se aplican solo a archivos bajo esa ruta. Consulte la [documentación de memoria](/docs/es/memory) para obtener más información sobre cómo funciona `CLAUDE.md`.

177 177 

178Para orientación específica de revisión que no desea aplicar a sesiones generales de Claude Code, use [`REVIEW.md`](#review-md) en su lugar.178Para orientación específica de revisión que no desea aplicar a sesiones generales de Claude Code, use [`REVIEW.md`](#review-md) en su lugar.

179 179 


183 183 

184`REVIEW.md` es un archivo en la raíz de su repositorio que anula cómo se comporta Code Review en su repositorio. Su contenido se inyecta en el prompt del sistema de cada agente en la canalización de revisión como el bloque de instrucción de prioridad más alta, tomando precedencia sobre la orientación de revisión predeterminada.184`REVIEW.md` es un archivo en la raíz de su repositorio que anula cómo se comporta Code Review en su repositorio. Su contenido se inyecta en el prompt del sistema de cada agente en la canalización de revisión como el bloque de instrucción de prioridad más alta, tomando precedencia sobre la orientación de revisión predeterminada.

185 185 

186Porque se pega textualmente, `REVIEW.md` es instrucciones simples: la [sintaxis de importación `@`](/es/memory#import-additional-files) no se expande, y los archivos referenciados no se leen en el prompt. Ponga las reglas que desea aplicar directamente en el archivo.186Porque se pega textualmente, `REVIEW.md` es instrucciones simples: la [sintaxis de importación `@`](/docs/es/memory#import-additional-files) no se expande, y los archivos referenciados no se leen en el prompt. Ponga las reglas que desea aplicar directamente en el archivo.

187 187 

188<h4 id="what-you-can-tune">188<h4 id="what-you-can-tune">

189 Qué puede ajustar189 Qué puede ajustar


315 Revisar un diff localmente315 Revisar un diff localmente

316</h2>316</h2>

317 317 

318El comando [`/code-review`](/es/commands) revisa un diff en su terminal sin instalar la aplicación de GitHub. Ejecutelo en cualquier sesión de Claude Code: reporta errores de corrección y {/* min-version: 2.1.151 */}reutilización, simplificación y limpiezas de eficiencia. De forma predeterminada, la revisión local cubre los commits de su rama por delante de su rama ascendente más cualquier cambio sin confirmar en el árbol de trabajo. Pase `--comment` para publicar hallazgos como comentarios de PR en línea, o `--fix` para aplicar los hallazgos a su árbol de trabajo después de la revisión.318El comando [`/code-review`](/docs/es/commands) revisa un diff en su terminal sin instalar la aplicación de GitHub. Ejecutelo en cualquier sesión de Claude Code: reporta errores de corrección y reutilización, simplificación y limpiezas de eficiencia. De forma predeterminada, la revisión local cubre los commits de su rama por delante de su rama ascendente más cualquier cambio sin confirmar en el árbol de trabajo. Pase `--comment` para publicar hallazgos como comentarios de PR en línea, o `--fix` para aplicar los hallazgos a su árbol de trabajo después de la revisión.

319 319 

320Los [niveles de esfuerzo](/es/model-config#adjust-effort-level) más bajos devuelven menos hallazgos con mayor confianza, mientras que `high` hasta `max` dan cobertura más amplia y pueden incluir hallazgos inciertos. Sin un argumento de esfuerzo, la revisión utiliza el esfuerzo actual de la sesión. Para revisar algo diferente del diff predeterminado, pase un objetivo: una ruta de archivo, un número de PR, un nombre de rama o un rango de ref como `main...my-feature`. La forma de rango de ref revisa el diff confirmado que una solicitud de extracción de `my-feature` a `main` contendría, independientemente de cómo esté configurada la rama ascendente de la rama.320Los [niveles de esfuerzo](/docs/es/model-config#adjust-effort-level) más bajos devuelven menos hallazgos con mayor confianza, mientras que `high` hasta `max` dan cobertura más amplia y pueden incluir hallazgos inciertos. Sin un argumento de esfuerzo, la revisión utiliza el esfuerzo actual de la sesión. Para revisar algo diferente del diff predeterminado, pase un objetivo: una ruta de archivo, un número de PR, un nombre de rama o un rango de ref como `main...my-feature`. La forma de rango de ref revisa el diff confirmado que una solicitud de extracción de `my-feature` a `main` contendría, independientemente de cómo esté configurada la rama ascendente de la rama.

321 321 

322`/code-review ultra --fix` ejecuta la [ultrareview](/es/ultrareview) más profunda en la nube, luego aplica sus hallazgos a su árbol de trabajo cuando regresan a su sesión. Ultrareview utiliza su propio alcance: su rama actual contra la rama predeterminada del repositorio, más cualquier cambio sin confirmar y preparado en el árbol de trabajo.322`/code-review ultra --fix` ejecuta la [ultrareview](/docs/es/ultrareview) más profunda en la nube, luego aplica sus hallazgos a su árbol de trabajo cuando regresan a su sesión. Ultrareview utiliza su propio alcance: su rama actual contra la rama predeterminada del repositorio, más cualquier cambio sin confirmar y preparado en el árbol de trabajo.

323 323 

324El comando se llamaba `/simplify` antes de v2.1.147, cuando aplicaba correcciones de forma predeterminada. {/* min-version: 2.1.154 */}A partir de v2.1.154, `/simplify` ejecuta una revisión separada de solo limpieza que aplica correcciones sin buscar errores. Si escribió scripts con `/simplify` para búsqueda de errores, cambie a `/code-review --fix`, que no ha cambiado.324El comando se llamaba `/simplify` antes de v2.1.147, cuando aplicaba correcciones de forma predeterminada. A partir de v2.1.154, `/simplify` ejecuta una revisión separada de solo limpieza que aplica correcciones sin buscar errores. Si escribió scripts con `/simplify` para búsqueda de errores, cambie a `/code-review --fix`, que no ha cambiado.

325 325 

326<h2 id="related-resources">326<h2 id="related-resources">

327 Recursos relacionados327 Recursos relacionados


329 329 

330Code Review está diseñado para funcionar junto con el resto de Claude Code. Si desea ejecutar revisiones localmente antes de abrir un PR, necesita una configuración autohospedada, o desea profundizar en cómo `CLAUDE.md` forma el comportamiento de Claude en todas las herramientas, estas páginas son buenos siguientes pasos:330Code Review está diseñado para funcionar junto con el resto de Claude Code. Si desea ejecutar revisiones localmente antes de abrir un PR, necesita una configuración autohospedada, o desea profundizar en cómo `CLAUDE.md` forma el comportamiento de Claude en todas las herramientas, estas páginas son buenos siguientes pasos:

331 331 

332* [Commands](/es/commands): ejecute `/code-review` en una sesión local de Claude Code para verificar un diff antes de hacer push332* [Commands](/docs/es/commands): ejecute `/code-review` en una sesión local de Claude Code para verificar un diff antes de hacer push

333* [GitHub Actions](/es/github-actions): ejecute Claude en sus propios flujos de trabajo de GitHub Actions para automatización personalizada más allá de la revisión de código333* [GitHub Actions](/docs/es/github-actions): ejecute Claude en sus propios flujos de trabajo de GitHub Actions para automatización personalizada más allá de la revisión de código

334* [GitLab CI/CD](/es/gitlab-ci-cd): integración de Claude autohospedada para canalizaciones de GitLab334* [GitLab CI/CD](/docs/es/gitlab-ci-cd): integración de Claude autohospedada para canalizaciones de GitLab

335* [Memory](/es/memory): cómo funcionan los archivos `CLAUDE.md` en Claude Code335* [Memory](/docs/es/memory): cómo funcionan los archivos `CLAUDE.md` en Claude Code

336* [Analytics](/es/analytics): rastrear el uso de Claude Code más allá de la revisión de código336* [Analytics](/docs/es/analytics): rastrear el uso de Claude Code más allá de la revisión de código

commands.md +31 −31

Details

10 10 

11Escriba `/` para ver todos los comandos disponibles para usted, o escriba `/` seguido de letras para filtrar.11Escriba `/` para ver todos los comandos disponibles para usted, o escriba `/` seguido de letras para filtrar.

12 12 

13Un comando solo se reconoce al inicio de su mensaje. El texto que sigue al nombre del comando se le pasa como argumentos. {/* min-version: 2.1.199 */}A partir de v2.1.199, los [skills](/docs/es/skills#pass-arguments-to-skills) son la excepción: una invocación de skill seguida de más skills, como `/skill-a /skill-b do XYZ`, carga cada skill nombrado al inicio y pasa el texto final a cada uno como argumentos. Se pueden encadenar hasta seis skills.13Un comando solo se reconoce al inicio de su mensaje. El texto que sigue al nombre del comando se le pasa como argumentos. A partir de v2.1.199, los [skills](/docs/es/skills#pass-arguments-to-skills) son la excepción: una invocación de skill seguida de más skills, como `/skill-a /skill-b do XYZ`, carga cada skill nombrado al inicio y pasa el texto final a cada uno como argumentos. Se pueden encadenar hasta seis skills.

14 14 

15Si envía un comando mientras Claude está respondiendo, se pone en cola y se ejecuta después de que termine el turno actual. Algunos comandos, como `/status`, `/tasks` y `/usage`, se ejecutan inmediatamente sin interrumpir la respuesta.15Si envía un comando mientras Claude está respondiendo, se pone en cola y se ejecuta después de que termine el turno actual. Algunos comandos, como `/status`, `/tasks` y `/usage`, se ejecutan inmediatamente sin interrumpir la respuesta.

16 16 


50</Note>50</Note>

51 51 

52| Comando | Propósito |52| Comando | Propósito |

53| :--------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |53| :--------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

54| `/add-dir <path>` | Agregar un directorio de trabajo para acceso a archivos durante la sesión actual. Escribir una ruta parcial muestra sugerencias de directorio coincidentes; presione `Tab` para aceptar una. La mayoría de la configuración de `.claude/` [no se descubre](/docs/es/permissions#additional-directories-grant-file-access-not-configuration) desde el directorio agregado. Puede reanudar la sesión más tarde desde el directorio agregado con `--continue` o `--resume` |54| `/add-dir <path>` | Agregar un directorio de trabajo para acceso a archivos durante la sesión actual. Escribir una ruta parcial muestra sugerencias de directorio coincidentes; presione `Tab` para aceptar una. La mayoría de la configuración de `.claude/` [no se descubre](/docs/es/permissions#additional-directories-grant-file-access-not-configuration) desde el directorio agregado. Puede reanudar la sesión más tarde desde el directorio agregado con `--continue` o `--resume` |

55| `/advisor [model\|off]` | Habilitar o deshabilitar la [herramienta advisor](/docs/es/advisor), que consulta un segundo modelo para obtener orientación en momentos clave durante una tarea. Acepta `opus`, `sonnet`, `fable` ({/* min-version: 2.1.170 */}v2.1.170+), o un ID de modelo completo. Sin un argumento, abre un selector |55| `/advisor [model\|off]` | Habilitar o deshabilitar la [herramienta advisor](/docs/es/advisor), que consulta un segundo modelo para obtener orientación en momentos clave durante una tarea. Acepta `opus`, `sonnet`, `fable` (v2.1.170+), o un ID de modelo completo. Sin un argumento, abre un selector |

56| `/agents` | {/* min-version: 2.1.198 */}A partir de v2.1.198, ejecutar `/agents` imprime un recordatorio para pedirle a Claude que cree o administre [subagentes](/docs/es/sub-agents), o para editar `.claude/agents/` o `~/.claude/agents/` directamente. {/* max-version: 2.1.197 */}En v2.1.197 y anteriores, abre una interfaz interactiva para crear y administrar configuraciones de subagentes |56| `/agents` | A partir de v2.1.198, ejecutar `/agents` imprime un recordatorio para pedirle a Claude que cree o administre [subagentes](/docs/es/sub-agents), o para editar `.claude/agents/` o `~/.claude/agents/` directamente. En v2.1.197 y anteriores, abre una interfaz interactiva para crear y administrar configuraciones de subagentes |

57| `/autofix-pr [prompt]` | Generar una sesión de [Claude Code en la web](/docs/es/claude-code-on-the-web#auto-fix-pull-requests) que observe la PR de la rama actual e impulse correcciones cuando CI falla o los revisores dejan comentarios. Detecta la PR abierta de su rama extraída con `gh pr view`; para observar una PR diferente, primero extraiga su rama. De forma predeterminada, se le indica a la sesión remota que corrija todos los errores de CI y comentarios de revisión; pase un prompt para darle instrucciones diferentes, por ejemplo `/autofix-pr only fix lint and type errors`. Requiere la CLI `gh` y acceso a [Claude Code en la web](/docs/es/claude-code-on-the-web) |57| `/autofix-pr [prompt]` | Generar una sesión de [Claude Code en la web](/docs/es/claude-code-on-the-web#auto-fix-pull-requests) que observe la PR de la rama actual e impulse correcciones cuando CI falla o los revisores dejan comentarios. Detecta la PR abierta de su rama extraída con `gh pr view`; para observar una PR diferente, primero extraiga su rama. De forma predeterminada, se le indica a la sesión remota que corrija todos los errores de CI y comentarios de revisión; pase un prompt para darle instrucciones diferentes, por ejemplo `/autofix-pr only fix lint and type errors`. Requiere la CLI `gh` y acceso a [Claude Code en la web](/docs/es/claude-code-on-the-web) |

58| `/background [prompt]` | Desconectar la sesión actual para ejecutarse como un [agente de fondo](/docs/es/agent-view) y liberar esta terminal. Pase un prompt para enviar una instrucción más antes de desconectar. Monitoree la sesión con `claude agents`. Alias: `/bg` |58| `/background [prompt]` | Desconectar la sesión actual para ejecutarse como un [agente de fondo](/docs/es/agent-view) y liberar esta terminal. Pase un prompt para enviar una instrucción más antes de desconectar. Monitoree la sesión con `claude agents`. Alias: `/bg` |

59| `/batch <instruction>` | **[Skill](/docs/es/skills#bundled-skills).** Orquestar cambios a gran escala en una base de código en paralelo. Investiga la base de código, descompone el trabajo en 5 a 30 unidades independientes y presenta un plan. Una vez aprobado, genera un [subagente de fondo](/docs/es/sub-agents#run-subagents-in-foreground-or-background) por unidad en un [git worktree](/docs/es/worktrees) aislado. Cada subagente implementa su unidad, ejecuta pruebas y abre una solicitud de extracción. Requiere un repositorio de git. Ejemplo: `/batch migrate src/ from Solid to React` |59| `/batch <instruction>` | **[Skill](/docs/es/skills#bundled-skills).** Orquestar cambios a gran escala en una base de código en paralelo. Investiga la base de código, descompone el trabajo en 5 a 30 unidades independientes y presenta un plan. Una vez aprobado, genera un [subagente de fondo](/docs/es/sub-agents#run-subagents-in-foreground-or-background) por unidad en un [git worktree](/docs/es/worktrees) aislado. Cada subagente implementa su unidad, ejecuta pruebas y abre una solicitud de extracción. Requiere un repositorio de git. Ejemplo: `/batch migrate src/ from Solid to React` |

60| `/branch [name]` | Crear una rama de la conversación actual en este punto, para que pueda probar una dirección diferente sin perder la conversación tal como está. Lo cambia a la rama y preserva la original, a la que puede volver con `/resume`. Para entregar una tarea secundaria a un subagente de fondo en lugar de cambiar a una copia usted mismo, use `/fork` |60| `/branch [name]` | Crear una rama de la conversación actual en este punto, para que pueda probar una dirección diferente sin perder la conversación tal como está. Lo cambia a la rama y preserva la original, a la que puede volver con `/resume`. Para entregar una tarea secundaria a un subagente de fondo en lugar de cambiar a una copia usted mismo, use `/fork` |

61| `/btw <question>` | Hacer una [pregunta rápida](/docs/es/interactive-mode#side-questions-with-%2Fbtw) sin agregar a la conversación |61| `/btw <question>` | Hacer una [pregunta rápida](/docs/es/interactive-mode#side-questions-with-%2Fbtw) sin agregar a la conversación |

62| `/cd <path>` | {/* min-version: 2.1.169 */}Mover esta sesión a un nuevo directorio de trabajo. La caché de prompts de la conversación se preserva: el [`CLAUDE.md`](/docs/es/memory) del nuevo directorio se agrega como un mensaje en lugar de reconstruir el prompt del sistema. La sesión se reubica al almacenamiento de proyecto del nuevo directorio, por lo que `--resume` y `--continue` lo encuentran desde allí. Le solicita que confíe en el directorio si no ha trabajado en él antes. {/* min-version: 2.1.206 */}Escribir una ruta parcial muestra sugerencias de directorio coincidentes; presione `Tab` para aceptar una. Las sugerencias requieren Claude Code v2.1.206 o posterior. Para otorgar acceso a un directorio adicional sin mover la sesión, use `/add-dir`. Restrinja o deshabilite los destinos de `/cd` con [reglas de permiso `Cd`](/docs/es/permissions#cd). Requiere Claude Code v2.1.169 o posterior; las versiones anteriores reportan `Unknown command: /cd` |62| `/cd <path>` | Mover esta sesión a un nuevo directorio de trabajo. La caché de prompts de la conversación se preserva: el [`CLAUDE.md`](/docs/es/memory) del nuevo directorio se agrega como un mensaje en lugar de reconstruir el prompt del sistema. La sesión se reubica al almacenamiento de proyecto del nuevo directorio, por lo que `--resume` y `--continue` lo encuentran desde allí. Le solicita que confíe en el directorio si no ha trabajado en él antes. Escribir una ruta parcial muestra sugerencias de directorio coincidentes; presione `Tab` para aceptar una. Las sugerencias requieren Claude Code v2.1.206 o posterior. Para otorgar acceso a un directorio adicional sin mover la sesión, use `/add-dir`. Restrinja o deshabilite los destinos de `/cd` con [reglas de permiso `Cd`](/docs/es/permissions#cd). Requiere Claude Code v2.1.169 o posterior; las versiones anteriores reportan `Unknown command: /cd` |

63| `/chrome` | Configurar ajustes de [Claude in Chrome](/docs/es/chrome) |63| `/chrome` | Configurar ajustes de [Claude in Chrome](/docs/es/chrome) |

64| `/claude-api [migrate\|managed-agents-onboard]` | **[Skill](/docs/es/skills#bundled-skills).** Cargar material de referencia de la API de Claude para el idioma de su proyecto (Python, TypeScript, Java, Go, Ruby, C#, PHP o cURL) y referencia de Managed Agents. Cubre uso de herramientas, streaming, lotes, salidas estructuradas y trampas comunes. También se activa automáticamente cuando su código importa `anthropic` o `@anthropic-ai/sdk`. Ejecute `/claude-api migrate` para actualizar el código existente de la API de Claude a un modelo más nuevo: Claude pregunta qué archivos escanear y qué modelo dirigirse, luego actualiza los ID de modelo, configuración de pensamiento y otros parámetros que cambiaron entre versiones. Ejecute `/claude-api managed-agents-onboard` para un tutorial interactivo que crea un nuevo Managed Agent desde cero |64| `/claude-api [migrate\|managed-agents-onboard]` | **[Skill](/docs/es/skills#bundled-skills).** Cargar material de referencia de la API de Claude para el idioma de su proyecto (Python, TypeScript, Java, Go, Ruby, C#, PHP o cURL) y referencia de Managed Agents. Cubre uso de herramientas, streaming, lotes, salidas estructuradas y trampas comunes. También se activa automáticamente cuando su código importa `anthropic` o `@anthropic-ai/sdk`. Ejecute `/claude-api migrate` para actualizar el código existente de la API de Claude a un modelo más nuevo: Claude pregunta qué archivos escanear y qué modelo dirigirse, luego actualiza los ID de modelo, configuración de pensamiento y otros parámetros que cambiaron entre versiones. Ejecute `/claude-api managed-agents-onboard` para un tutorial interactivo que crea un nuevo Managed Agent desde cero |

65| `/clear [name]` | Iniciar una nueva conversación con contexto vacío. Pase un nombre para etiquetar la conversación anterior en el selector `/resume`. Para liberar contexto mientras continúa la misma conversación, use `/compact` en su lugar. Reanude la conversación anterior con `/resume`, o, en el mismo proceso de Claude Code, {/* min-version: 2.1.191 */}restáurela desde [la entrada de sesión anterior del menú de rebobinado](/docs/es/checkpointing#rewind-past-a-cleared-conversation). Alias: `/reset`, `/new` |65| `/clear [name]` | Iniciar una nueva conversación con contexto vacío. Pase un nombre para etiquetar la conversación anterior en el selector `/resume`. Para liberar contexto mientras continúa la misma conversación, use `/compact` en su lugar. Reanude la conversación anterior con `/resume`, o, en el mismo proceso de Claude Code, restáurela desde [la entrada de sesión anterior del menú de rebobinado](/docs/es/checkpointing#rewind-past-a-cleared-conversation). Alias: `/reset`, `/new` |

66| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [target]` | **[Skill](/docs/es/skills#bundled-skills).** Revisar el diff actual para detectar errores de corrección y para reutilización, simplificación y limpiezas de eficiencia. Pase `--fix` para aplicar hallazgos a su árbol de trabajo, `--comment` para publicarlos como comentarios en línea en la PR de GitHub, o `ultra` para ejecutar una [revisión en la nube](/docs/es/ultrareview) profunda. {/* min-version: 2.1.154 */}A partir de v2.1.154, `/simplify` ejecuta una revisión separada solo de limpieza que aplica correcciones sin buscar errores de corrección. Consulte [Revisar un diff localmente](/docs/es/code-review#review-a-diff-locally) para niveles de esfuerzo y orientación |66| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [target]` | **[Skill](/docs/es/skills#bundled-skills).** Revisar el diff actual para detectar errores de corrección y para reutilización, simplificación y limpiezas de eficiencia. Pase `--fix` para aplicar hallazgos a su árbol de trabajo, `--comment` para publicarlos como comentarios en línea en la PR de GitHub, o `ultra` para ejecutar una [revisión en la nube](/docs/es/ultrareview) profunda. A partir de v2.1.154, `/simplify` ejecuta una revisión separada solo de limpieza que aplica correcciones sin buscar errores de corrección. Consulte [Revisar un diff localmente](/docs/es/code-review#review-a-diff-locally) para niveles de esfuerzo y orientación |

67| `/color [color\|default]` | Establecer el color de la barra de solicitud para la sesión actual. Colores disponibles: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. Use `default` para restablecer, o ejecute sin argumento para elegir un color aleatorio. Cuando [Remote Control](/docs/es/remote-control) está conectado, el color se sincroniza con claude.ai/code. {/* min-version: 2.1.205 */}También disponible en modo no interactivo (`-p`); requiere Claude Code v2.1.205 o posterior |67| `/color [color\|default]` | Establecer el color de la barra de solicitud para la sesión actual. Colores disponibles: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. Use `default` para restablecer, o ejecute sin argumento para elegir un color aleatorio. Cuando [Remote Control](/docs/es/remote-control) está conectado, el color se sincroniza con claude.ai/code. También disponible en modo no interactivo (`-p`); requiere Claude Code v2.1.205 o posterior |

68| `/compact [instructions]` | Liberar contexto resumiendo la conversación hasta ahora. Opcionalmente pase instrucciones de enfoque para el resumen. Consulte [cómo la compactación maneja reglas, skills y archivos de memoria](/docs/es/context-window#what-survives-compaction) |68| `/compact [instructions]` | Liberar contexto resumiendo la conversación hasta ahora. Opcionalmente pase instrucciones de enfoque para el resumen. Consulte [cómo la compactación maneja reglas, skills y archivos de memoria](/docs/es/context-window#what-survives-compaction) |

69| `/config [key=value ...]` | Abrir la interfaz de [Settings](/docs/es/settings) para ajustar tema, modelo, [estilo de salida](/docs/es/output-styles) y otras preferencias. {/* min-version: 2.1.181 */}A partir de v2.1.181, pase uno o más pares `key=value` para establecer una configuración directamente sin abrir la interfaz, por ejemplo `/config thinking=false`. {/* min-version: 2.1.182 */}A partir de v2.1.182, también se aceptan claves de abreviatura nombradas, como `/config theme=dark` o `/config model=sonnet`. El formulario `key=value` también funciona en modo no interactivo (`-p`) y desde la aplicación móvil Claude a través de [Remote Control](/docs/es/remote-control). Ejecute `/config --help` para listar todas las claves configurables con sus opciones. Alias: `/settings` |69| `/config [key=value ...]` | Abrir la interfaz de [Settings](/docs/es/settings) para ajustar tema, modelo, [estilo de salida](/docs/es/output-styles) y otras preferencias. A partir de v2.1.181, pase uno o más pares `key=value` para establecer una configuración directamente sin abrir la interfaz, por ejemplo `/config thinking=false`. A partir de v2.1.182, también se aceptan claves de abreviatura nombradas, como `/config theme=dark` o `/config model=sonnet`. El formulario `key=value` también funciona en modo no interactivo (`-p`) y desde la aplicación móvil Claude a través de [Remote Control](/docs/es/remote-control). Ejecute `/config --help` para listar todas las claves configurables con sus opciones. Alias: `/settings` |

70| `/context [all]` | Visualizar el uso actual del contexto como una cuadrícula de colores. Muestra sugerencias de optimización para herramientas con mucho contexto, inflación de memoria y advertencias de capacidad. En [modo de pantalla completa](/docs/es/fullscreen) el desglose por elemento se colapsa para mantener la cuadrícula visible. Pase `all` para expandirlo |70| `/context [all]` | Visualizar el uso actual del contexto como una cuadrícula de colores. Muestra sugerencias de optimización para herramientas con mucho contexto, inflación de memoria y advertencias de capacidad. En [modo de pantalla completa](/docs/es/fullscreen) el desglose por elemento se colapsa para mantener la cuadrícula visible. Pase `all` para expandirlo |

71| `/copy [N]` | Copiar la última respuesta del asistente al portapapeles. Pase un número `N` para copiar la respuesta N-ésima más reciente: `/copy 2` copia la segunda más reciente. Cuando hay bloques de código presentes, muestra un selector interactivo para seleccionar bloques individuales o la respuesta completa. Presione `w` en el selector para escribir la selección en un archivo en lugar del portapapeles, lo cual es útil a través de SSH |71| `/copy [N]` | Copiar la última respuesta del asistente al portapapeles. Pase un número `N` para copiar la respuesta N-ésima más reciente: `/copy 2` copia la segunda más reciente. Cuando hay bloques de código presentes, muestra un selector interactivo para seleccionar bloques individuales o la respuesta completa. Presione `w` en el selector para escribir la selección en un archivo en lugar del portapapeles, lo cual es útil a través de SSH |

72| `/cost` | Alias para `/usage` |72| `/cost` | Alias para `/usage` |

73| `/dataviz [request]` | **[Skill](/docs/es/skills#bundled-skills).** Orientación de diseño para gráficos, diagramas y paneles de control. Claude elige la forma de gráfico para los datos, asigna color por rol, valida la paleta para seguridad de daltonismo y contraste con un script agrupado, y aplica reglas de marca, interacción y accesibilidad. Utiliza una paleta de marcador neutral de marca que reemplaza con la suya propia. {/* min-version: 2.1.198 */}Requiere Claude Code v2.1.198 o posterior |73| `/dataviz [request]` | **[Skill](/docs/es/skills#bundled-skills).** Orientación de diseño para gráficos, diagramas y paneles de control. Claude elige la forma de gráfico para los datos, asigna color por rol, valida la paleta para seguridad de daltonismo y contraste con un script agrupado, y aplica reglas de marca, interacción y accesibilidad. Utiliza una paleta de marcador neutral de marca que reemplaza con la suya propia. Requiere Claude Code v2.1.198 o posterior |

74| `/debug [description]` | **[Skill](/docs/es/skills#bundled-skills).** Habilitar registro de depuración para la sesión actual y solucionar problemas leyendo el registro de depuración de la sesión. El registro de depuración está desactivado de forma predeterminada a menos que haya iniciado con `claude --debug`, por lo que ejecutar `/debug` a mitad de sesión comienza a capturar registros desde ese punto en adelante. Opcionalmente describa el problema para enfocar el análisis |74| `/debug [description]` | **[Skill](/docs/es/skills#bundled-skills).** Habilitar registro de depuración para la sesión actual y solucionar problemas leyendo el registro de depuración de la sesión. El registro de depuración está desactivado de forma predeterminada a menos que haya iniciado con `claude --debug`, por lo que ejecutar `/debug` a mitad de sesión comienza a capturar registros desde ese punto en adelante. Opcionalmente describa el problema para enfocar el análisis |

75| `/deep-research <question>` | **[Workflow](/docs/es/workflows#bundled-workflows).** Expandir búsquedas web en una pregunta, obtener y verificar cruzadamente fuentes, y sintetizar un informe citado |75| `/deep-research <question>` | **[Workflow](/docs/es/workflows#bundled-workflows).** Expandir búsquedas web en una pregunta, obtener y verificar cruzadamente fuentes, y sintetizar un informe citado |

76| `/design-login` | Autorizar acceso al sistema de diseño para `/design-sync` con su cuenta claude.ai |76| `/design-login` | Autorizar acceso al sistema de diseño para `/design-sync` con su cuenta claude.ai |

77| `/design-sync [hint]` | **[Skill](/docs/es/skills#bundled-skills).** Convertir el sistema de diseño React de su repositorio y cargarlo en [Claude Design](https://claude.ai/design), para que los diseños que produce utilicen sus componentes reales. Opcionalmente nombre el sistema de diseño, por ejemplo `/design-sync Acme DS`. Una sincronización por primera vez verifica cada componente y puede tomar algunas horas en un repositorio grande. Disponible en la API de Anthropic; en Amazon Bedrock, la plataforma de agentes de Google Cloud, Microsoft Foundry y Claude Platform en AWS, la herramienta subyacente no puede alcanzar claude.ai, por lo que el comando no está disponible |77| `/design-sync [hint]` | **[Skill](/docs/es/skills#bundled-skills).** Convertir el sistema de diseño React de su repositorio y cargarlo en [Claude Design](https://claude.ai/design), para que los diseños que produce utilicen sus componentes reales. Opcionalmente nombre el sistema de diseño, por ejemplo `/design-sync Acme DS`. Una sincronización por primera vez verifica cada componente y puede tomar algunas horas en un repositorio grande. Disponible en la API de Anthropic; en Amazon Bedrock, la plataforma de agentes de Google Cloud, Microsoft Foundry y Claude Platform en AWS, la herramienta subyacente no puede alcanzar claude.ai, por lo que el comando no está disponible |

78| `/desktop` | Continuar la sesión actual en la aplicación Claude Code Desktop. Requiere macOS o Windows y una suscripción de Claude. Alias: `/app` |78| `/desktop` | Continuar la sesión actual en la aplicación Claude Code Desktop. Requiere macOS o Windows y una suscripción de Claude. Alias: `/app` |

79| `/diff` | Abrir un visor de diferencias interactivo que muestre cambios sin confirmar y diferencias por turno. Use las flechas izquierda/derecha para cambiar entre el diff de git actual y los turnos individuales de Claude, y arriba/abajo para examinar archivos. Presione Enter para abrir el diff del archivo seleccionado, desplácese con arriba/abajo o PageUp/PageDown, y presione Esc para volver a la lista de archivos. {/* min-version: 2.1.198 */}A partir de v2.1.198, el visor abierto también se actualiza automáticamente cuando el estado de git del repositorio cambia fuera de la sesión, como un cambio de rama o confirmación en otra terminal |79| `/diff` | Abrir un visor de diferencias interactivo que muestre cambios sin confirmar y diferencias por turno. Use las flechas izquierda/derecha para cambiar entre el diff de git actual y los turnos individuales de Claude, y arriba/abajo para examinar archivos. Presione Enter para abrir el diff del archivo seleccionado, desplácese con arriba/abajo o PageUp/PageDown, y presione Esc para volver a la lista de archivos. A partir de v2.1.198, el visor abierto también se actualiza automáticamente cuando el estado de git del repositorio cambia fuera de la sesión, como un cambio de rama o confirmación en otra terminal |

80| `/doctor` | **[Skill](/docs/es/skills#bundled-skills).** Ejecutar una verificación de configuración que diagnostica problemas y puede corregirlos. Verifica la salud de la instalación, incluidas instalaciones duplicadas o sobrantes, problemas de `PATH` y archivos de configuración no analizables. Encuentra skills no utilizados, servidores MCP y plugins versus su costo de contexto, marca [hooks](/docs/es/hooks) lentos y verifica una versión más nueva en su canal de lanzamiento. Deduplica archivos locales `CLAUDE.md` contra los registrados, recorta archivos [`CLAUDE.md`](/docs/es/memory) registrados cortando contenido que Claude podría derivar de la base de código, y migra la orientación siempre cargada que permanece en [skills](/docs/es/skills) y archivos `CLAUDE.md` anidados que se cargan bajo demanda. El recorte corta secciones como diseños de directorio, listas de dependencias y descripción general de arquitectura, y mantiene trampas, justificación y convenciones que difieren de los valores predeterminados de herramientas. También ofrece hacer que [auto mode](/docs/es/permissions#permission-modes) sea su predeterminado y [pre-aprobar](/docs/es/permissions) comandos de solo lectura frecuentemente denegados. Informa hallazgos primero y pide confirmación antes de cambiar nada. Desde la terminal, `claude doctor` imprime diagnósticos de instalación de solo lectura sin iniciar una sesión. Alias: `/checkup`. {/* min-version: 2.1.206 */}La verificación de recorte de `CLAUDE.md` requiere Claude Code v2.1.206 o posterior. Antes de v2.1.206, la verificación de versión comparaba instalaciones de Homebrew contra la configuración `autoUpdatesChannel` en lugar del [canal del cask instalado](/docs/es/setup#configure-release-channel). {/* min-version: 2.1.205 */}Antes de v2.1.205, `/doctor` abría una pantalla de diagnósticos de solo lectura y presionar `f` enviaba el informe a Claude |80| `/doctor` | **[Skill](/docs/es/skills#bundled-skills).** Ejecutar una verificación de configuración que diagnostica problemas y puede corregirlos. Verifica la salud de la instalación, incluidas instalaciones duplicadas o sobrantes, problemas de `PATH` y archivos de configuración no analizables. Encuentra skills no utilizados, servidores MCP y plugins versus su costo de contexto, marca [hooks](/docs/es/hooks) lentos y verifica una versión más nueva en su canal de lanzamiento. Deduplica archivos locales `CLAUDE.md` contra los registrados, recorta archivos [`CLAUDE.md`](/docs/es/memory) registrados cortando contenido que Claude podría derivar de la base de código, y migra la orientación siempre cargada que permanece en [skills](/docs/es/skills) y archivos `CLAUDE.md` anidados que se cargan bajo demanda. El recorte corta secciones como diseños de directorio, listas de dependencias y descripción general de arquitectura, y mantiene trampas, justificación y convenciones que difieren de los valores predeterminados de herramientas. También ofrece hacer que [auto mode](/docs/es/permissions#permission-modes) sea su predeterminado y [pre-aprobar](/docs/es/permissions) comandos de solo lectura frecuentemente denegados. Informa hallazgos primero y pide confirmación antes de cambiar nada. Desde la terminal, `claude doctor` imprime diagnósticos de instalación de solo lectura sin iniciar una sesión. Alias: `/checkup`. La verificación de recorte de `CLAUDE.md` requiere Claude Code v2.1.206 o posterior. Antes de v2.1.206, la verificación de versión comparaba instalaciones de Homebrew contra la configuración `autoUpdatesChannel` en lugar del [canal del cask instalado](/docs/es/setup#configure-release-channel). Antes de v2.1.205, `/doctor` abría una pantalla de diagnósticos de solo lectura y presionar `f` enviaba el informe a Claude |

81| `/effort [level\|auto]` | Establecer el [nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) del modelo. Acepta `low`, `medium`, `high`, `xhigh`, `max` o `ultracode`; los niveles disponibles dependen del modelo, y `max` y `ultracode` son solo para sesión. `ultracode` es una configuración de Claude Code que combina razonamiento `xhigh` con orquestación automática de [workflow](/docs/es/workflows#let-claude-decide-with-ultracode). `auto` se restablece al valor predeterminado del modelo. Sin un argumento, abre un control deslizante interactivo; use las flechas izquierda y derecha para elegir un nivel y `Enter` para aplicar. Entra en vigor inmediatamente sin esperar a que se complete la respuesta actual. {/* min-version: 2.1.205 */}También disponible en modo no interactivo (`-p`) con un argumento de nivel, donde se aplica solo a la sesión actual y no se guarda como su predeterminado; requiere Claude Code v2.1.205 o posterior. En Fable 5, Opus 4.8 y Opus 4.7, un `/effort` no interactivo reporta `Not applied` mientras el [modelo-default effort hold](/docs/es/model-config#adjust-effort-level) está en vigor, así que pase `--effort` en el lanzamiento en su lugar |81| `/effort [level\|auto]` | Establecer el [nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) del modelo. Acepta `low`, `medium`, `high`, `xhigh`, `max` o `ultracode`; los niveles disponibles dependen del modelo, y `max` y `ultracode` son solo para sesión. `ultracode` es una configuración de Claude Code que combina razonamiento `xhigh` con orquestación automática de [workflow](/docs/es/workflows#let-claude-decide-with-ultracode). `auto` se restablece al valor predeterminado del modelo. Sin un argumento, abre un control deslizante interactivo; use las flechas izquierda y derecha para elegir un nivel y `Enter` para aplicar. Entra en vigor inmediatamente sin esperar a que se complete la respuesta actual. También disponible en modo no interactivo (`-p`) con un argumento de nivel, donde se aplica solo a la sesión actual y no se guarda como su predeterminado; requiere Claude Code v2.1.205 o posterior. En Fable 5, Opus 4.8 y Opus 4.7, un `/effort` no interactivo reporta `Not applied` mientras el [modelo-default effort hold](/docs/es/model-config#adjust-effort-level) está en vigor, así que pase `--effort` en el lanzamiento en su lugar |

82| `/exit` | Salir de la CLI. En una [sesión de fondo](/docs/es/agent-view#attach-to-a-session) conectada, esto desconecta y la sesión continúa ejecutándose. Alias: `/quit` |82| `/exit` | Salir de la CLI. En una [sesión de fondo](/docs/es/agent-view#attach-to-a-session) conectada, esto desconecta y la sesión continúa ejecutándose. Alias: `/quit` |

83| `/export [filename]` | Exportar la conversación actual como texto sin formato. Con un nombre de archivo, escribe directamente en ese archivo. Sin uno, abre un diálogo para copiar al portapapeles o guardar en un archivo |83| `/export [filename]` | Exportar la conversación actual como texto sin formato. Con un nombre de archivo, escribe directamente en ese archivo. Sin uno, abre un diálogo para copiar al portapapeles o guardar en un archivo |

84| `/fast [on\|off]` | Alternar [fast mode](/docs/es/fast-mode) activado o desactivado. {/* min-version: 2.1.205 */}En modo no interactivo (`-p`), `/fast` funciona solo en una sesión lanzada con fast mode en su valor [`--settings`](/docs/es/cli-reference#cli-flags), por ejemplo `claude -p --settings '{"fastMode": true}'`; el cambio se aplica solo a la sesión actual y no se guarda como su predeterminado, y en cualquier otra sesión no interactiva el comando reporta que fast mode no está disponible. Requiere Claude Code v2.1.205 o posterior |84| `/fast [on\|off]` | Alternar [fast mode](/docs/es/fast-mode) activado o desactivado. En modo no interactivo (`-p`), `/fast` funciona solo en una sesión lanzada con fast mode en su valor [`--settings`](/docs/es/cli-reference#cli-flags), por ejemplo `claude -p --settings '{"fastMode": true}'`; el cambio se aplica solo a la sesión actual y no se guarda como su predeterminado, y en cualquier otra sesión no interactiva el comando reporta que fast mode no está disponible. Requiere Claude Code v2.1.205 o posterior |

85| `/feedback [report]` | Enviar comentarios, reportar un error o compartir su conversación. Enviar a Anthropic requiere [autenticación](/docs/es/authentication). Alias: `/bug`, `/share` |85| `/feedback [report]` | Enviar comentarios, reportar un error o compartir su conversación. Enviar a Anthropic requiere [autenticación](/docs/es/authentication). Alias: `/bug`, `/share` |

86| `/fewer-permission-prompts` | **[Skill](/docs/es/skills#bundled-skills).** Escanear sus transcripciones para llamadas comunes de herramientas Bash y MCP de solo lectura, luego agregar una lista de permitidos priorizada al proyecto `.claude/settings.json` para reducir solicitudes de permiso |86| `/fewer-permission-prompts` | **[Skill](/docs/es/skills#bundled-skills).** Escanear sus transcripciones para llamadas comunes de herramientas Bash y MCP de solo lectura, luego agregar una lista de permitidos priorizada al proyecto `.claude/settings.json` para reducir solicitudes de permiso |

87| `/focus` | Alternar la vista de enfoque, que muestra solo su último prompt, un resumen de llamada de herramienta de una línea con estadísticas de edición de diferencias y la respuesta final. {/* min-version: 2.1.198 */}A partir de v2.1.198, el resumen de llamada de herramienta también cuenta los subagentes lanzados en el turno y colapsa las notificaciones de tareas de fondo completadas en un único recuento. La selección persiste entre sesiones; establezca [`viewMode`](/docs/es/settings#available-settings) en configuración para anularlo. Solo disponible en [renderizado de pantalla completa](/docs/es/fullscreen) |87| `/focus` | Alternar la vista de enfoque, que muestra solo su último prompt, un resumen de llamada de herramienta de una línea con estadísticas de edición de diferencias y la respuesta final. A partir de v2.1.198, el resumen de llamada de herramienta también cuenta los subagentes lanzados en el turno y colapsa las notificaciones de tareas de fondo completadas en un único recuento. La selección persiste entre sesiones; establezca [`viewMode`](/docs/es/settings#available-settings) en configuración para anularlo. Solo disponible en [renderizado de pantalla completa](/docs/es/fullscreen) |

88| `/fork <directive>` | {/* min-version: 2.1.161 */}Generar un [subagente bifurcado](/docs/es/sub-agents#fork-the-current-conversation): un subagente de fondo que hereda la conversación completa y trabaja en la directiva mientras usted continúa. Su resultado regresa a su conversación cuando termina. Para cambiar a una copia de la conversación usted mismo, use `/branch`. Antes de v2.1.161, `/fork` es un alias para `/branch` |88| `/fork <directive>` | Generar un [subagente bifurcado](/docs/es/sub-agents#fork-the-current-conversation): un subagente de fondo que hereda la conversación completa y trabaja en la directiva mientras usted continúa. Su resultado regresa a su conversación cuando termina. Para cambiar a una copia de la conversación usted mismo, use `/branch`. Antes de v2.1.161, `/fork` es un alias para `/branch` |

89| `/goal [condition\|clear]` | Establecer un [goal](/docs/es/goal): Claude continúa trabajando entre turnos hasta que se cumpla la condición. Sin un argumento, muestra el goal actual o el más recientemente logrado. `clear`, `stop`, `off`, `reset`, `none` o `cancel` elimina un goal activo temprano |89| `/goal [condition\|clear]` | Establecer un [goal](/docs/es/goal): Claude continúa trabajando entre turnos hasta que se cumpla la condición. Sin un argumento, muestra el goal actual o el más recientemente logrado. `clear`, `stop`, `off`, `reset`, `none` o `cancel` elimina un goal activo temprano |

90| `/heapdump` | Escribir una instantánea de montón de JavaScript y un desglose de memoria en `~/Desktop`, o su directorio de inicio en Linux sin una carpeta Desktop, para diagnosticar uso alto de memoria. El archivo `.heapsnapshot` contiene su conversación completa y credenciales, así que no lo comparta. Consulte [solución de problemas](/docs/es/troubleshooting#high-cpu-or-memory-usage) |90| `/heapdump` | Escribir una instantánea de montón de JavaScript y un desglose de memoria en `~/Desktop`, o su directorio de inicio en Linux sin una carpeta Desktop, para diagnosticar uso alto de memoria. El archivo `.heapsnapshot` contiene su conversación completa y credenciales, así que no lo comparta. Consulte [solución de problemas](/docs/es/troubleshooting#high-cpu-or-memory-usage) |

91| `/help` | Mostrar ayuda y comandos disponibles |91| `/help` | Mostrar ayuda y comandos disponibles |


99| `/login` | Iniciar sesión en su cuenta de Anthropic |99| `/login` | Iniciar sesión en su cuenta de Anthropic |

100| `/logout` | Cerrar sesión de su cuenta de Anthropic |100| `/logout` | Cerrar sesión de su cuenta de Anthropic |

101| `/loop [interval] [prompt]` | **[Skill](/docs/es/skills#bundled-skills).** Ejecutar un prompt repetidamente mientras la sesión permanece abierta. Omita el intervalo y Claude se autoajusta entre iteraciones. Omita el prompt y, [donde esté disponible](/docs/es/scheduled-tasks#run-the-built-in-maintenance-prompt), Claude ejecuta una verificación de mantenimiento autónoma o el prompt en `.claude/loop.md`. Ejemplo: `/loop 5m check if the deploy finished`. Consulte [Ejecutar prompts en un horario](/docs/es/scheduled-tasks). Alias: `/proactive` |101| `/loop [interval] [prompt]` | **[Skill](/docs/es/skills#bundled-skills).** Ejecutar un prompt repetidamente mientras la sesión permanece abierta. Omita el intervalo y Claude se autoajusta entre iteraciones. Omita el prompt y, [donde esté disponible](/docs/es/scheduled-tasks#run-the-built-in-maintenance-prompt), Claude ejecuta una verificación de mantenimiento autónoma o el prompt en `.claude/loop.md`. Ejemplo: `/loop 5m check if the deploy finished`. Consulte [Ejecutar prompts en un horario](/docs/es/scheduled-tasks). Alias: `/proactive` |

102| `/mcp [reconnect <server>\|enable\|disable [<server>\|all]]` | Administrar conexiones de servidores MCP y autenticación OAuth. Ejecute sin argumento para abrir la lista interactiva, pase `reconnect <server>` para reconectar un servidor desconectado, o pase `enable`/`disable` con un nombre de servidor o `all` para cambiar el estado de conexión sin abrir el diálogo. {/* min-version: 2.1.205 */}También disponible en modo no interactivo (`-p`), donde ejecutarlo sin argumento imprime un resumen de texto del estado del servidor en lugar de abrir la lista; requiere Claude Code v2.1.205 o posterior |102| `/mcp [reconnect <server>\|enable\|disable [<server>\|all]]` | Administrar conexiones de servidores MCP y autenticación OAuth. Ejecute sin argumento para abrir la lista interactiva, pase `reconnect <server>` para reconectar un servidor desconectado, o pase `enable`/`disable` con un nombre de servidor o `all` para cambiar el estado de conexión sin abrir el diálogo. También disponible en modo no interactivo (`-p`), donde ejecutarlo sin argumento imprime un resumen de texto del estado del servidor en lugar de abrir la lista; requiere Claude Code v2.1.205 o posterior |

103| `/memory` | Editar archivos de memoria `CLAUDE.md`, habilitar o deshabilitar [auto-memory](/docs/es/memory#auto-memory) y ver entradas de auto-memory |103| `/memory` | Editar archivos de memoria `CLAUDE.md`, habilitar o deshabilitar [auto-memory](/docs/es/memory#auto-memory) y ver entradas de auto-memory |

104| `/mobile` | Mostrar código QR para descargar la aplicación móvil Claude. Alias: `/ios`, `/android` |104| `/mobile` | Mostrar código QR para descargar la aplicación móvil Claude. Alias: `/ios`, `/android` |

105| `/model [model]` | Cambiar el modelo de IA y guardarlo como su predeterminado para nuevas sesiones. Para modelos que lo admitan, use las flechas izquierda/derecha para [ajustar el nivel de esfuerzo](/docs/es/model-config#adjust-effort-level). Sin un argumento, abre un selector; presione `s` en una fila para cambiar solo para la sesión actual. El selector pide confirmación cuando la conversación tiene salida anterior, ya que la siguiente respuesta relee el historial completo sin contexto en caché. Una vez confirmado, el cambio se aplica sin esperar a que se complete la respuesta actual. {/* min-version: 2.1.205 */}También disponible en modo no interactivo (`-p`) con un argumento de modelo en lugar del selector, donde se aplica solo a la sesión actual y no se guarda como su predeterminado; requiere Claude Code v2.1.205 o posterior |105| `/model [model]` | Cambiar el modelo de IA y guardarlo como su predeterminado para nuevas sesiones. Para modelos que lo admitan, use las flechas izquierda/derecha para [ajustar el nivel de esfuerzo](/docs/es/model-config#adjust-effort-level). Sin un argumento, abre un selector; presione `s` en una fila para cambiar solo para la sesión actual. El selector pide confirmación cuando la conversación tiene salida anterior, ya que la siguiente respuesta relee el historial completo sin contexto en caché. Una vez confirmado, el cambio se aplica sin esperar a que se complete la respuesta actual. También disponible en modo no interactivo (`-p`) con un argumento de modelo en lugar del selector, donde se aplica solo a la sesión actual y no se guarda como su predeterminado; requiere Claude Code v2.1.205 o posterior |

106| `/passes` | Compartir una semana gratuita de Claude Code con amigos. Solo visible si su cuenta es elegible |106| `/passes` | Compartir una semana gratuita de Claude Code con amigos. Solo visible si su cuenta es elegible |

107| `/permissions` | Administrar reglas de permitir, preguntar y denegar para permisos de herramientas. Abre un diálogo interactivo donde puede ver reglas por alcance, agregar o eliminar reglas, administrar directorios de trabajo y revisar [denegaciones automáticas recientes](/docs/es/auto-mode-config#review-denials). Alias: `/allowed-tools` |107| `/permissions` | Administrar reglas de permitir, preguntar y denegar para permisos de herramientas. Abre un diálogo interactivo donde puede ver reglas por alcance, agregar o eliminar reglas, administrar directorios de trabajo y revisar [denegaciones automáticas recientes](/docs/es/auto-mode-config#review-denials). Alias: `/allowed-tools` |

108| `/plan [description]` | Entrar en Plan Mode directamente desde el prompt. Pase una descripción opcional para entrar en Plan Mode e inmediatamente comenzar con esa tarea, por ejemplo `/plan fix the auth bug` |108| `/plan [description]` | Entrar en Plan Mode directamente desde el prompt. Pase una descripción opcional para entrar en Plan Mode e inmediatamente comenzar con esa tarea, por ejemplo `/plan fix the auth bug` |

109| `/plugin [subcommand]` | Administrar [plugins](/docs/es/plugins) de Claude Code. Ejecute sin argumento para abrir el menú de plugins, o pase un subcomando como `list`, `install`, `enable` o `disable` para actuar directamente |109| `/plugin [subcommand]` | Administrar [plugins](/docs/es/plugins) de Claude Code. Ejecute sin argumento para abrir el menú de plugins, o pase un subcomando como `list`, `install`, `enable` o `disable` para actuar directamente |

110| `/powerup` | Descubrir características de Claude Code a través de lecciones interactivas rápidas con demostraciones animadas |110| `/powerup` | Descubrir características de Claude Code a través de lecciones interactivas rápidas con demostraciones animadas |

111| `/pr-comments [PR]` | {/* max-version: 2.1.90 */}Eliminado en v2.1.91. Pida a Claude directamente que vea comentarios de solicitud de extracción en su lugar. En versiones anteriores, obtiene y muestra comentarios de una solicitud de extracción de GitHub; detecta automáticamente la PR para la rama actual, o pase una URL o número de PR. Requiere la CLI `gh` |111| `/pr-comments [PR]` | Eliminado en v2.1.91. Pida a Claude directamente que vea comentarios de solicitud de extracción en su lugar. En versiones anteriores, obtiene y muestra comentarios de una solicitud de extracción de GitHub; detecta automáticamente la PR para la rama actual, o pase una URL o número de PR. Requiere la CLI `gh` |

112| `/privacy-settings` | Ver y actualizar su configuración de privacidad. Solo disponible para suscriptores de planes Pro y Max |112| `/privacy-settings` | Ver y actualizar su configuración de privacidad. Solo disponible para suscriptores de planes Pro y Max |

113| `/radio` | Abrir Claude FM lo-fi radio en su navegador. Imprime la URL de transmisión cuando no hay navegador disponible. No disponible en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o Claude Platform en AWS |113| `/radio` | Abrir Claude FM lo-fi radio en su navegador. Imprime la URL de transmisión cuando no hay navegador disponible. No disponible en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o Claude Platform en AWS |

114| `/recap` | Generar un resumen de una línea de la sesión actual bajo demanda. Consulte [Session recap](/docs/es/interactive-mode#session-recap) para el resumen automático que aparece después de que ha estado ausente |114| `/recap` | Generar un resumen de una línea de la sesión actual bajo demanda. Consulte [Session recap](/docs/es/interactive-mode#session-recap) para el resumen automático que aparece después de que ha estado ausente |

115| `/release-notes` | Ver el registro de cambios en un selector de versión interactivo. Seleccione una versión específica para ver sus notas de lanzamiento, o elija mostrar todas las versiones. {/* min-version: 2.1.208 */}Las notas aparecen en su transcripción sin entrar en la conversación que Claude ve. Antes de v2.1.208, las notas vistas entraban en la conversación, incluido el registro de cambios completo cuando se muestran todas las versiones |115| `/release-notes` | Ver el registro de cambios en un selector de versión interactivo. Seleccione una versión específica para ver sus notas de lanzamiento, o elija mostrar todas las versiones. Las notas aparecen en su transcripción sin entrar en la conversación que Claude ve. Antes de v2.1.208, las notas vistas entraban en la conversación, incluido el registro de cambios completo cuando se muestran todas las versiones |

116| `/reload-plugins [--force]` | Recargar todos los [plugins](/docs/es/plugins) activos para aplicar cambios pendientes sin reiniciar. Informa qué se cargó para cada componente recargado e indica cualquier error de carga. Cuando la recarga cambiaría qué herramientas MCP se cargan e invalidaría la caché de prompts, el comando advierte y omite a menos que pase `--force` |116| `/reload-plugins [--force]` | Recargar todos los [plugins](/docs/es/plugins) activos para aplicar cambios pendientes sin reiniciar. Informa qué se cargó para cada componente recargado e indica cualquier error de carga. Cuando la recarga cambiaría qué herramientas MCP se cargan e invalidaría la caché de prompts, el comando advierte y omite a menos que pase `--force` |

117| `/reload-skills` | {/* min-version: 2.1.152 */}Volver a escanear directorios de [skill](/docs/es/skills) y comandos para que los skills agregados o cambiados en el disco durante la sesión estén disponibles sin reiniciar. Informa cuántos skills están disponibles y cuántos se agregaron o eliminaron. Agregado en v2.1.152 |117| `/reload-skills` | Volver a escanear directorios de [skill](/docs/es/skills) y comandos para que los skills agregados o cambiados en el disco durante la sesión estén disponibles sin reiniciar. Informa cuántos skills están disponibles y cuántos se agregaron o eliminaron. Agregado en v2.1.152 |

118| `/remote-control` | Hacer que esta sesión esté disponible para [Remote Control](/docs/es/remote-control) desde claude.ai. {/* min-version: 2.1.206 */}Ejecutarlo mientras está desconectado imprime que Remote Control requiere una suscripción a claude.ai y le dice cómo iniciar sesión; antes de v2.1.206 reportaba `Unknown command: /remote-control`. Alias: `/rc` |118| `/remote-control` | Hacer que esta sesión esté disponible para [Remote Control](/docs/es/remote-control) desde claude.ai. Ejecutarlo mientras está desconectado imprime que Remote Control requiere una suscripción a claude.ai y le dice cómo iniciar sesión; antes de v2.1.206 reportaba `Unknown command: /remote-control`. Alias: `/rc` |

119| `/remote-env` | Elegir el entorno predeterminado para [agentes en la nube](/docs/es/claude-code-on-the-web#configure-your-environment) |119| `/remote-env` | Elegir el entorno predeterminado para [agentes en la nube](/docs/es/claude-code-on-the-web#configure-your-environment) |

120| `/rename [name]` | Renombrar la sesión actual y mostrar el nombre en la barra de solicitud. Sin un nombre, genera automáticamente uno a partir del historial de conversación. {/* min-version: 2.1.205 */}También disponible en modo no interactivo (`-p`); requiere Claude Code v2.1.205 o posterior |120| `/rename [name]` | Renombrar la sesión actual y mostrar el nombre en la barra de solicitud. Sin un nombre, genera automáticamente uno a partir del historial de conversación. También disponible en modo no interactivo (`-p`); requiere Claude Code v2.1.205 o posterior |

121| `/resume [session]` | Reanudar una conversación por ID o nombre, o abrir el selector de sesión. A partir de v2.1.144, [las sesiones de fondo](/docs/es/agent-view) aparecen en el selector marcadas con `bg`; una que aún se está ejecutando no se puede reanudar aquí, así que conéctese a ella desde `claude agents` o deténgala allí primero. Alias: `/continue` |121| `/resume [session]` | Reanudar una conversación por ID o nombre, o abrir el selector de sesión. A partir de v2.1.144, [las sesiones de fondo](/docs/es/agent-view) aparecen en el selector marcadas con `bg`; una que aún se está ejecutando no se puede reanudar aquí, así que conéctese a ella desde `claude agents` o deténgala allí primero. Alias: `/continue` |

122| `/review [PR]` | {/* min-version: 2.1.202 */}Ejecutar una revisión rápida de un solo paso y de solo lectura de una solicitud de extracción de GitHub por número. Sin argumento, enumera las PR abiertas para elegir; el texto después del número de PR se convierte en instrucciones de revisión adicionales. De v2.1.186 a v2.1.201, `/review` ejecutó el mismo motor multiagente que `/code-review medium`. Para una revisión multiagente en un nivel de esfuerzo elegido, use [`/code-review <level> <pr#>`](/docs/es/code-review#review-a-diff-locally); para una revisión basada en la nube, consulte [`/code-review ultra`](/docs/es/ultrareview) |122| `/review [PR]` | Ejecutar una revisión rápida de un solo paso y de solo lectura de una solicitud de extracción de GitHub por número. Sin argumento, enumera las PR abiertas para elegir; el texto después del número de PR se convierte en instrucciones de revisión adicionales. De v2.1.186 a v2.1.201, `/review` ejecutó el mismo motor multiagente que `/code-review medium`. Para una revisión multiagente en un nivel de esfuerzo elegido, use [`/code-review <level> <pr#>`](/docs/es/code-review#review-a-diff-locally); para una revisión basada en la nube, consulte [`/code-review ultra`](/docs/es/ultrareview) |

123| `/rewind` | Rebobinar la conversación y/o código a un punto anterior, o resumir desde un mensaje seleccionado. Consulte [checkpointing](/docs/es/checkpointing). Alias: `/checkpoint`, `/undo` |123| `/rewind` | Rebobinar la conversación y/o código a un punto anterior, o resumir desde un mensaje seleccionado. Consulte [checkpointing](/docs/es/checkpointing). Alias: `/checkpoint`, `/undo` |

124| `/run` | **[Skill](/docs/es/skills#bundled-skills).** Lanzar y conducir la aplicación de su proyecto para ver un cambio funcionando en la aplicación en ejecución, no solo en pruebas. Consulte [Ejecutar y verificar su aplicación](/docs/es/skills#run-and-verify-your-app). {/* min-version: 2.1.145 */}Requiere Claude Code v2.1.145 o posterior |124| `/run` | **[Skill](/docs/es/skills#bundled-skills).** Lanzar y conducir la aplicación de su proyecto para ver un cambio funcionando en la aplicación en ejecución, no solo en pruebas. Consulte [Ejecutar y verificar su aplicación](/docs/es/skills#run-and-verify-your-app). Requiere Claude Code v2.1.145 o posterior |

125| `/run-skill-generator` | **[Skill](/docs/es/skills#bundled-skills).** Enseñar a `/run` y `/verify` cómo construir, lanzar y conducir la aplicación de su proyecto desde un entorno limpio escribiendo un [skill](/docs/es/skills#run-and-verify-your-app) por proyecto. {/* min-version: 2.1.145 */}Requiere Claude Code v2.1.145 o posterior |125| `/run-skill-generator` | **[Skill](/docs/es/skills#bundled-skills).** Enseñar a `/run` y `/verify` cómo construir, lanzar y conducir la aplicación de su proyecto desde un entorno limpio escribiendo un [skill](/docs/es/skills#run-and-verify-your-app) por proyecto. Requiere Claude Code v2.1.145 o posterior |

126| `/sandbox` | Alternar [sandbox mode](/docs/es/sandboxing). Disponible solo en plataformas compatibles |126| `/sandbox` | Alternar [sandbox mode](/docs/es/sandboxing). Disponible solo en plataformas compatibles |

127| `/schedule [description]` | Crear, actualizar, listar o ejecutar [routines](/docs/es/routines), que se ejecutan en infraestructura en la nube administrada por Anthropic. Claude lo guía a través de la configuración de manera conversacional. Alias: `/routines` |127| `/schedule [description]` | Crear, actualizar, listar o ejecutar [routines](/docs/es/routines), que se ejecutan en infraestructura en la nube administrada por Anthropic. Claude lo guía a través de la configuración de manera conversacional. Alias: `/routines` |

128| `/scroll-speed` | Ajustar la [velocidad de desplazamiento](/docs/es/fullscreen#mouse-wheel-scrolling) de la rueda del ratón de forma interactiva, con una regla que puede desplazar mientras el diálogo está abierto para obtener una vista previa del cambio. Disponible solo en [renderizado de pantalla completa](/docs/es/fullscreen) y no en el terminal del IDE JetBrains |128| `/scroll-speed` | Ajustar la [velocidad de desplazamiento](/docs/es/fullscreen#mouse-wheel-scrolling) de la rueda del ratón de forma interactiva, con una regla que puede desplazar mientras el diálogo está abierto para obtener una vista previa del cambio. Disponible solo en [renderizado de pantalla completa](/docs/es/fullscreen) y no en el terminal del IDE JetBrains |

129| `/security-review` | Analizar cambios pendientes en la rama actual para detectar vulnerabilidades de seguridad. Revisa el diff de git e identifica riesgos como inyección, problemas de autenticación y exposición de datos |129| `/security-review` | Analizar cambios pendientes en la rama actual para detectar vulnerabilidades de seguridad. Revisa el diff de git e identifica riesgos como inyección, problemas de autenticación y exposición de datos |

130| `/setup-bedrock` | Configurar autenticación de [Amazon Bedrock](/docs/es/amazon-bedrock), región y fijaciones de modelo a través de un asistente interactivo. Solo visible cuando se establece `CLAUDE_CODE_USE_BEDROCK=1`. Los usuarios de Bedrock por primera vez también pueden acceder a este asistente desde la pantalla de inicio de sesión |130| `/setup-bedrock` | Configurar autenticación de [Amazon Bedrock](/docs/es/amazon-bedrock), región y fijaciones de modelo a través de un asistente interactivo. Solo visible cuando se establece `CLAUDE_CODE_USE_BEDROCK=1`. Los usuarios de Bedrock por primera vez también pueden acceder a este asistente desde la pantalla de inicio de sesión |

131| `/setup-vertex` | Configurar autenticación de [Google Cloud's Agent Platform](/docs/es/google-vertex-ai), proyecto, región y fijaciones de modelo a través de un asistente interactivo. Solo visible cuando se establece `CLAUDE_CODE_USE_VERTEX=1`. Los usuarios de Google Cloud's Agent Platform por primera vez también pueden acceder a este asistente desde la pantalla de inicio de sesión |131| `/setup-vertex` | Configurar autenticación de [Google Cloud's Agent Platform](/docs/es/google-vertex-ai), proyecto, región y fijaciones de modelo a través de un asistente interactivo. Solo visible cuando se establece `CLAUDE_CODE_USE_VERTEX=1`. Los usuarios de Google Cloud's Agent Platform por primera vez también pueden acceder a este asistente desde la pantalla de inicio de sesión |

132| `/simplify [target]` | {/* min-version: 2.1.154 */}**[Skill](/docs/es/skills#bundled-skills).** Revisar el código cambiado para detectar oportunidades de limpieza y aplicar las correcciones. Cuatro [agentes](/docs/es/sub-agents) de revisión se ejecutan en paralelo, cubriendo reutilización de ayudantes existentes, simplificación, eficiencia y si el cambio se encuentra en el nivel correcto de abstracción. A partir de v2.1.154, la revisión no busca errores de corrección. Use `/code-review` para encontrar errores. En versiones anteriores `/simplify` es equivalente a `/code-review --fix`. Pase una ruta o referencia de PR para revisar un objetivo específico |132| `/simplify [target]` | **[Skill](/docs/es/skills#bundled-skills).** Revisar el código cambiado para detectar oportunidades de limpieza y aplicar las correcciones. Cuatro [agentes](/docs/es/sub-agents) de revisión se ejecutan en paralelo, cubriendo reutilización de ayudantes existentes, simplificación, eficiencia y si el cambio se encuentra en el nivel correcto de abstracción. A partir de v2.1.154, la revisión no busca errores de corrección. Use `/code-review` para encontrar errores. En versiones anteriores `/simplify` es equivalente a `/code-review --fix`. Pase una ruta o referencia de PR para revisar un objetivo específico |

133| `/skills` | Listar [skills](/docs/es/skills) disponibles. {/* min-version: 2.1.121 */}A partir de v2.1.121, escriba para filtrar la lista por nombre. Presione `t` para ordenar por recuento de tokens. Presione `Space` para [ocultar un skill de Claude o del menú `/`](/docs/es/skills#override-skill-visibility-from-settings), luego `Enter` para guardar |133| `/skills` | Listar [skills](/docs/es/skills) disponibles. A partir de v2.1.121, escriba para filtrar la lista por nombre. Presione `t` para ordenar por recuento de tokens. Presione `Space` para [ocultar un skill de Claude o del menú `/`](/docs/es/skills#override-skill-visibility-from-settings), luego `Enter` para guardar |

134| `/stats` | Alias para `/usage`. Se abre en la pestaña Stats |134| `/stats` | Alias para `/usage`. Se abre en la pestaña Stats |

135| `/status` | Abrir la interfaz de Settings (pestaña Status) que muestra versión, modelo, cuenta y conectividad. Funciona mientras Claude está respondiendo |135| `/status` | Abrir la interfaz de Settings (pestaña Status) que muestra versión, modelo, cuenta y conectividad. Funciona mientras Claude está respondiendo |

136| `/statusline` | Configurar la [status line](/docs/es/statusline) de Claude Code. Describa lo que desea, o ejecute sin argumentos para auto-configurar desde su símbolo del sistema de shell |136| `/statusline` | Configurar la [status line](/docs/es/statusline) de Claude Code. Describa lo que desea, o ejecute sin argumentos para auto-configurar desde su símbolo del sistema de shell |


146| `/ultrareview [PR]` | Ejecutar una revisión de código profunda y multiagente en una sandbox en la nube con [ultrareview](/docs/es/ultrareview). La invocación preferida ahora es `/code-review ultra`, y `/ultrareview` permanece como un alias. Incluye 3 ejecuciones gratuitas en Pro y Max, luego requiere [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |146| `/ultrareview [PR]` | Ejecutar una revisión de código profunda y multiagente en una sandbox en la nube con [ultrareview](/docs/es/ultrareview). La invocación preferida ahora es `/code-review ultra`, y `/ultrareview` permanece como un alias. Incluye 3 ejecuciones gratuitas en Pro y Max, luego requiere [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) |

147| `/upgrade` | Abrir la página de actualización en su navegador para cambiar a un nivel de plan superior. Cuando el navegador no se abre, el comando muestra un prompt de inicio de sesión sin imprimir la URL |147| `/upgrade` | Abrir la página de actualización en su navegador para cambiar a un nivel de plan superior. Cuando el navegador no se abre, el comando muestra un prompt de inicio de sesión sin imprimir la URL |

148| `/usage` | Mostrar costo de sesión, límites de uso del plan y estadísticas de actividad. En un plan Pro, Max, Team o Enterprise, incluye un desglose del uso por skill, subagente, plugin y servidor MCP. Consulte la [guía de seguimiento de costos](/docs/es/costs#using-the-%2Fusage-command) para detalles. `/cost` y `/stats` son alias |148| `/usage` | Mostrar costo de sesión, límites de uso del plan y estadísticas de actividad. En un plan Pro, Max, Team o Enterprise, incluye un desglose del uso por skill, subagente, plugin y servidor MCP. Consulte la [guía de seguimiento de costos](/docs/es/costs#using-the-%2Fusage-command) para detalles. `/cost` y `/stats` son alias |

149| `/usage-credits` | Configurar créditos de uso para continuar trabajando cuando se alcanzan los límites. En planes Pro y Max, abre un [diálogo en la CLI](/docs/es/costs#set-a-spend-limit-on-pro-and-max) para comprar créditos de uso, establecer un límite de gasto mensual y configurar recarga automática; en versiones de Claude Code anteriores a v2.1.207 y en otros planes, abre la página de facturación de créditos de uso en su navegador, excepto que los miembros de Team y Enterprise sin acceso de facturación envían una solicitud de créditos de uso a su administrador desde la CLI. {/* min-version: 2.1.205 */}Cuando no se puede abrir ningún navegador, por ejemplo a través de SSH, el comando imprime la URL para visitar en su lugar; esto requiere Claude Code v2.1.205 o posterior, y las versiones anteriores no mostraban nada en ese caso. Anteriormente `/extra-usage` |149| `/usage-credits` | Configurar créditos de uso para continuar trabajando cuando se alcanzan los límites. En planes Pro y Max, abre un [diálogo en la CLI](/docs/es/costs#set-a-spend-limit-on-pro-and-max) para comprar créditos de uso, establecer un límite de gasto mensual y configurar recarga automática; en versiones de Claude Code anteriores a v2.1.207 y en otros planes, abre la página de facturación de créditos de uso en su navegador, excepto que los miembros de Team y Enterprise sin acceso de facturación envían una solicitud de créditos de uso a su administrador desde la CLI. Cuando no se puede abrir ningún navegador, por ejemplo a través de SSH, el comando imprime la URL para visitar en su lugar; esto requiere Claude Code v2.1.205 o posterior, y las versiones anteriores no mostraban nada en ese caso. Anteriormente `/extra-usage` |

150| `/verify` | **[Skill](/docs/es/skills#bundled-skills).** Confirmar que un cambio de código hace lo que debe haciendo construir la aplicación de su proyecto, ejecutándola y observando el resultado, en lugar de confiar en pruebas o verificaciones de tipo. Consulte [Ejecutar y verificar su aplicación](/docs/es/skills#run-and-verify-your-app). {/* min-version: 2.1.145 */}Requiere Claude Code v2.1.145 o posterior |150| `/verify` | **[Skill](/docs/es/skills#bundled-skills).** Confirmar que un cambio de código hace lo que debe haciendo construir la aplicación de su proyecto, ejecutándola y observando el resultado, en lugar de confiar en pruebas o verificaciones de tipo. Consulte [Ejecutar y verificar su aplicación](/docs/es/skills#run-and-verify-your-app). Requiere Claude Code v2.1.145 o posterior |

151| `/vim` | {/* max-version: 2.1.91 */}Eliminado en v2.1.92. Para alternar entre modos de edición Vim y Normal, use `/config` → Editor mode |151| `/vim` | Eliminado en v2.1.92. Para alternar entre modos de edición Vim y Normal, use `/config` → Editor mode |

152| `/voice [hold\|tap\|off]` | Alternar [voice dictation](/docs/es/voice-dictation), o habilitarlo en un modo específico. Requiere una cuenta Claude.ai |152| `/voice [hold\|tap\|off]` | Alternar [voice dictation](/docs/es/voice-dictation), o habilitarlo en un modo específico. Requiere una cuenta Claude.ai |

153| `/web-setup` | Conectar su cuenta de GitHub a [Claude Code en la web](/docs/es/web-quickstart#connect-from-your-terminal) usando sus credenciales locales de `gh` CLI. `/schedule` solicita esto automáticamente si GitHub no está conectado |153| `/web-setup` | Conectar su cuenta de GitHub a [Claude Code en la web](/docs/es/web-quickstart#connect-from-your-terminal) usando sus credenciales locales de `gh` CLI. `/schedule` solicita esto automáticamente si GitHub no está conectado |

154| `/workflows` | Abrir la vista de progreso de [workflow](/docs/es/workflows#watch-the-run) para observar, pausar, reanudar o guardar workflows en ejecución y completados |154| `/workflows` | Abrir la vista de progreso de [workflow](/docs/es/workflows#watch-the-run) para observar, pausar, reanudar o guardar workflows en ejecución y completados |

computer-use.md +11 −11

Details

12 12 

13Computer use permite que Claude abra aplicaciones, controle su pantalla y trabaje en su máquina de la manera que lo haría usted. Desde la CLI, Claude puede compilar una aplicación Swift, lanzarla, hacer clic en cada botón y capturar una pantalla del resultado, todo en la misma conversación donde escribió el código.13Computer use permite que Claude abra aplicaciones, controle su pantalla y trabaje en su máquina de la manera que lo haría usted. Desde la CLI, Claude puede compilar una aplicación Swift, lanzarla, hacer clic en cada botón y capturar una pantalla del resultado, todo en la misma conversación donde escribió el código.

14 14 

15Esta página cubre cómo funciona computer use en la CLI. Para la aplicación de escritorio en macOS o Windows, consulte [computer use en Desktop](/es/desktop#let-claude-use-your-computer).15Esta página cubre cómo funciona computer use en la CLI. Para la aplicación de escritorio en macOS o Windows, consulte [computer use en Desktop](/docs/es/desktop#let-claude-use-your-computer).

16 16 

17<h2 id="what-you-can-do-with-computer-use">17<h2 id="what-you-can-do-with-computer-use">

18 Qué puede hacer con computer use18 Qué puede hacer con computer use


31 31 

32Claude tiene varias formas de interactuar con una aplicación o servicio. Computer use es la más amplia y lenta, por lo que Claude intenta la herramienta más precisa primero:32Claude tiene varias formas de interactuar con una aplicación o servicio. Computer use es la más amplia y lenta, por lo que Claude intenta la herramienta más precisa primero:

33 33 

34* Si tiene un [servidor MCP](/es/mcp) para el servicio, Claude lo usa.34* Si tiene un [servidor MCP](/docs/es/mcp) para el servicio, Claude lo usa.

35* Si la tarea es un comando shell, Claude usa Bash.35* Si la tarea es un comando shell, Claude usa Bash.

36* Si la tarea es trabajo en navegador y tiene [Claude en Chrome](/es/chrome) configurado, Claude lo usa.36* Si la tarea es trabajo en navegador y tiene [Claude en Chrome](/docs/es/chrome) configurado, Claude lo usa.

37* Si ninguno de esos se aplica, Claude usa computer use.37* Si ninguno de esos se aplica, Claude usa computer use.

38 38 

39El control de pantalla se reserva para cosas que nada más puede alcanzar: aplicaciones nativas, simuladores y herramientas sin API.39El control de pantalla se reserva para cosas que nada más puede alcanzar: aplicaciones nativas, simuladores y herramientas sin API.


98 98 

99Estas aplicaciones no están bloqueadas. La advertencia le permite decidir si la tarea justifica ese nivel de acceso.99Estas aplicaciones no están bloqueadas. La advertencia le permite decidir si la tarea justifica ese nivel de acceso.

100 100 

101El nivel de control de Claude también varía según la categoría de aplicación: los navegadores y plataformas de trading son solo lectura, las terminales e IDEs son solo clic, y todo lo demás obtiene control total. Consulte [permisos de aplicación en Desktop](/es/desktop#app-permissions) para el desglose completo de niveles.101El nivel de control de Claude también varía según la categoría de aplicación: los navegadores y plataformas de trading son solo lectura, las terminales e IDEs son solo clic, y todo lo demás obtiene control total. Consulte [permisos de aplicación en Desktop](/docs/es/desktop#app-permissions) para el desglose completo de niveles.

102 102 

103<h2 id="how-claude-works-on-your-screen">103<h2 id="how-claude-works-on-your-screen">

104 Cómo Claude trabaja en su pantalla104 Cómo Claude trabaja en su pantalla


110 Una sesión a la vez110 Una sesión a la vez

111</h3>111</h3>

112 112 

113Computer use mantiene un bloqueo en toda la máquina desde la primera acción de computer use hasta que la sesión que lo adquirió sale. {/* min-version: 2.1.195 */}A partir de v2.1.195, terminar la tarea no libera el bloqueo; solo salir de la sesión lo hace. Si otra sesión de Claude Code ya está usando su computadora, los nuevos intentos fallan con un mensaje que le dice qué sesión mantiene el bloqueo. Salga de esa sesión primero.113Computer use mantiene un bloqueo en toda la máquina desde la primera acción de computer use hasta que la sesión que lo adquirió sale. A partir de v2.1.195, terminar la tarea no libera el bloqueo; solo salir de la sesión lo hace. Si otra sesión de Claude Code ya está usando su computadora, los nuevos intentos fallan con un mensaje que le dice qué sesión mantiene el bloqueo. Salga de esa sesión primero.

114 114 

115<h3 id="apps-are-hidden-while-claude-works">115<h3 id="apps-are-hidden-while-claude-works">

116 Las aplicaciones se ocultan mientras Claude trabaja116 Las aplicaciones se ocultan mientras Claude trabaja


141</h2>141</h2>

142 142 

143<Warning>143<Warning>

144 A diferencia de la [herramienta Bash en sandbox](/es/sandboxing), computer use se ejecuta en su escritorio real con acceso a las aplicaciones que aprueba. Claude verifica cada acción e identifica posibles inyecciones de solicitud desde el contenido en pantalla, pero el límite de confianza es diferente. Consulte la [guía de seguridad de computer use](https://support.claude.com/en/articles/14128542) para mejores prácticas.144 A diferencia de la [herramienta Bash en sandbox](/docs/es/sandboxing), computer use se ejecuta en su escritorio real con acceso a las aplicaciones que aprueba. Claude verifica cada acción e identifica posibles inyecciones de solicitud desde el contenido en pantalla, pero el límite de confianza es diferente. Consulte la [guía de seguridad de computer use](https://support.claude.com/en/articles/14128542) para mejores prácticas.

145</Warning>145</Warning>

146 146 

147Los guardarraíles integrados reducen el riesgo sin requerir configuración:147Los guardarraíles integrados reducen el riesgo sin requerir configuración:


235 235 

236El servidor solo aparece en configuraciones elegibles. Verifique que:236El servidor solo aparece en configuraciones elegibles. Verifique que:

237 237 

238* Está en macOS. Computer use en la CLI no está disponible en Linux o Windows. En Windows, use [computer use en Desktop](/es/desktop#let-claude-use-your-computer) en su lugar.238* Está en macOS. Computer use en la CLI no está disponible en Linux o Windows. En Windows, use [computer use en Desktop](/docs/es/desktop#let-claude-use-your-computer) en su lugar.

239* Está en un plan Pro o Max. Ejecute `/status` para confirmar su suscripción.239* Está en un plan Pro o Max. Ejecute `/status` para confirmar su suscripción.

240* Está autenticado a través de claude.ai. Computer use no está disponible con proveedores de terceros como Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry. Si accede a Claude exclusivamente a través de un proveedor de terceros, necesita una cuenta separada de claude.ai para usar esta característica.240* Está autenticado a través de claude.ai. Computer use no está disponible con proveedores de terceros como Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry. Si accede a Claude exclusivamente a través de un proveedor de terceros, necesita una cuenta separada de claude.ai para usar esta característica.

241* Está en una sesión interactiva. Computer use no está disponible en modo no interactivo con la bandera `-p`.241* Está en una sesión interactiva. Computer use no está disponible en modo no interactivo con la bandera `-p`.


244 Ver también244 Ver también

245</h2>245</h2>

246 246 

247* [Computer use en Desktop](/es/desktop#let-claude-use-your-computer): la misma capacidad con una página de configuración gráfica247* [Computer use en Desktop](/docs/es/desktop#let-claude-use-your-computer): la misma capacidad con una página de configuración gráfica

248* [Claude en Chrome](/es/chrome): automatización de navegador para tareas basadas en web248* [Claude en Chrome](/docs/es/chrome): automatización de navegador para tareas basadas en web

249* [MCP](/es/mcp): conecte Claude a herramientas y APIs estructuradas249* [MCP](/docs/es/mcp): conecte Claude a herramientas y APIs estructuradas

250* [Sandboxing](/es/sandboxing): cómo la herramienta Bash de Claude aísla el acceso al sistema de archivos y red250* [Sandboxing](/docs/es/sandboxing): cómo la herramienta Bash de Claude aísla el acceso al sistema de archivos y red

251* [Guía de seguridad de computer use](https://support.claude.com/en/articles/14128542): mejores prácticas para computer use seguro251* [Guía de seguridad de computer use](https://support.claude.com/en/articles/14128542): mejores prácticas para computer use seguro

context-window.md +13 −13

Details

1578 1578 

1579La sesión recorre un flujo realista con conteos de tokens representativos:1579La sesión recorre un flujo realista con conteos de tokens representativos:

1580 1580 

1581* **Antes de que escriba algo**: CLAUDE.md, memoria automática, nombres de herramientas MCP y descripciones de skills se cargan en el contexto. Su propia configuración puede agregar más aquí, como un [estilo de salida](/es/output-styles) o texto de [`--append-system-prompt`](/es/cli-reference), que ambos van al prompt del sistema de la misma manera.1581* **Antes de que escriba algo**: CLAUDE.md, memoria automática, nombres de herramientas MCP y descripciones de skills se cargan en el contexto. Su propia configuración puede agregar más aquí, como un [estilo de salida](/docs/es/output-styles) o texto de [`--append-system-prompt`](/docs/es/cli-reference), que ambos van al prompt del sistema de la misma manera.

1582* **Mientras Claude trabaja**: cada lectura de archivo se suma al contexto, [reglas con alcance de ruta](/es/memory#path-specific-rules) se cargan automáticamente junto con archivos coincidentes, y un [hook PostToolUse](/es/hooks-guide) se activa después de cada edición.1582* **Mientras Claude trabaja**: cada lectura de archivo se suma al contexto, [reglas con alcance de ruta](/docs/es/memory#path-specific-rules) se cargan automáticamente junto con archivos coincidentes, y un [hook PostToolUse](/docs/es/hooks-guide) se activa después de cada edición.

1583* **El prompt de seguimiento**: un [subagent](/es/sub-agents) maneja la investigación en su propia ventana de contexto separada, por lo que las lecturas de archivos grandes se mantienen fuera de la suya. Solo el resumen y un pequeño remolque de metadatos regresan.1583* **El prompt de seguimiento**: un [subagent](/docs/es/sub-agents) maneja la investigación en su propia ventana de contexto separada, por lo que las lecturas de archivos grandes se mantienen fuera de la suya. Solo el resumen y un pequeño remolque de metadatos regresan.

1584* **Al final**: `/compact` reemplaza la conversación con un resumen estructurado. La mayoría del contenido de inicio se recarga automáticamente; la tabla a continuación muestra qué sucede con cada mecanismo.1584* **Al final**: `/compact` reemplaza la conversación con un resumen estructurado. La mayoría del contenido de inicio se recarga automáticamente; la tabla a continuación muestra qué sucede con cada mecanismo.

1585 1585 

1586<h2 id="what-survives-compaction">1586<h2 id="what-survives-compaction">

1587 Qué sobrevive a la compactación1587 Qué sobrevive a la compactación

1588</h2>1588</h2>

1589 1589 

1590Cuando una sesión larga se compacta, Claude Code resume el historial de conversación para que quepa en la ventana de contexto. {/* min-version: 2.1.198 */}A partir de v2.1.198, la solicitud de resumen hereda la configuración de [pensamiento extendido](/es/model-config#extended-thinking) de su sesión, por lo que razona con el pensamiento habilitado cuando su sesión lo tiene habilitado y se mantiene desactivado en caso contrario. El pensamiento afecta solo cómo se produce el resumen; la configuración de su sesión permanece sin cambios después. Lo que sucede con sus instrucciones depende de cómo se cargaron:1590Cuando una sesión larga se compacta, Claude Code resume el historial de conversación para que quepa en la ventana de contexto. A partir de v2.1.198, la solicitud de resumen hereda la configuración de [pensamiento extendido](/docs/es/model-config#extended-thinking) de su sesión, por lo que razona con el pensamiento habilitado cuando su sesión lo tiene habilitado y se mantiene desactivado en caso contrario. El pensamiento afecta solo cómo se produce el resumen; la configuración de su sesión permanece sin cambios después. Lo que sucede con sus instrucciones depende de cómo se cargaron:

1591 1591 

1592| Mecanismo | Después de la compactación |1592| Mecanismo | Después de la compactación |

1593| :-------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------- |1593| :-------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------- |


1607 Cuando su contexto se llena1607 Cuando su contexto se llena

1608</h2>1608</h2>

1609 1609 

1610Claude Code se compacta automáticamente a medida que se acerca al límite, por lo que una ventana de contexto llena no termina su sesión. El paso automático funciona de la misma manera que el paso `/compact` en la línea de tiempo. Vea [Cuando el contexto se llena](/es/how-claude-code-works#when-context-fills-up) para saber qué preserva.1610Claude Code se compacta automáticamente a medida que se acerca al límite, por lo que una ventana de contexto llena no termina su sesión. El paso automático funciona de la misma manera que el paso `/compact` en la línea de tiempo. Vea [Cuando el contexto se llena](/docs/es/how-claude-code-works#when-context-fills-up) para saber qué preserva.

1611 1611 

1612También puede actuar antes de que se ejecute el paso automático:1612También puede actuar antes de que se ejecute el paso automático:

1613 1613 

1614* **Compactar con un enfoque**: ejecute `/compact` con instrucciones, como `/compact focus on the auth bug fix`, antes de comenzar una tarea nueva larga. El resumen mantiene lo que usted elige en lugar de lo que el paso automático adivina que es importante.1614* **Compactar con un enfoque**: ejecute `/compact` con instrucciones, como `/compact focus on the auth bug fix`, antes de comenzar una tarea nueva larga. El resumen mantiene lo que usted elige en lugar de lo que el paso automático adivina que es importante.

1615* **Limpiar entre tareas**: ejecute `/clear` cuando cambie a trabajo no relacionado. La conversación antigua desplaza los archivos que necesita a continuación y cuesta tokens en cada mensaje.1615* **Limpiar entre tareas**: ejecute `/clear` cuando cambie a trabajo no relacionado. La conversación antigua desplaza los archivos que necesita a continuación y cuesta tokens en cada mensaje.

1616* **Delegar lecturas grandes**: envíe investigación a un [subagent](/es/sub-agents) para que el contenido del archivo permanezca en su ventana de contexto, no en la suya.1616* **Delegar lecturas grandes**: envíe investigación a un [subagent](/docs/es/sub-agents) para que el contenido del archivo permanezca en su ventana de contexto, no en la suya.

1617 1617 

1618Si necesita una ventana más grande en lugar de una conversación más pequeña, Fable 5, Sonnet 5, Opus 4.6 y posteriores, y Sonnet 4.6 admiten una ventana de contexto de 1 millón de tokens. Vea [Contexto extendido](/es/model-config#extended-context) para disponibilidad por plan y cómo seleccionar una variante de modelo `[1m]`. Sonnet 5 se ejecuta a 1M sin variante `[1m]` para seleccionar; vea [Ventana de contexto de Sonnet 5](/es/model-config#sonnet-5-context-window) para sus umbrales de compactación automática y la excepción de la puerta de enlace LLM. La compactación funciona de la misma manera en el límite más grande.1618Si necesita una ventana más grande en lugar de una conversación más pequeña, Fable 5, Sonnet 5, Opus 4.6 y posteriores, y Sonnet 4.6 admiten una ventana de contexto de 1 millón de tokens. Vea [Contexto extendido](/docs/es/model-config#extended-context) para disponibilidad por plan y cómo seleccionar una variante de modelo `[1m]`. Sonnet 5 se ejecuta a 1M sin variante `[1m]` para seleccionar; vea [Ventana de contexto de Sonnet 5](/docs/es/model-config#sonnet-5-context-window) para sus umbrales de compactación automática y la excepción de la puerta de enlace LLM. La compactación funciona de la misma manera en el límite más grande.

1619 1619 

1620<h2 id="check-your-own-session">1620<h2 id="check-your-own-session">

1621 Verifique su propia sesión1621 Verifique su propia sesión


1629 1629 

1630Para una cobertura más profunda de las características mostradas en la línea de tiempo, vea estas páginas:1630Para una cobertura más profunda de las características mostradas en la línea de tiempo, vea estas páginas:

1631 1631 

1632* [Extender Claude Code](/es/features-overview): cuándo usar CLAUDE.md vs skills vs reglas vs hooks vs MCP1632* [Extender Claude Code](/docs/es/features-overview): cuándo usar CLAUDE.md vs skills vs reglas vs hooks vs MCP

1633* [Almacenar instrucciones y memorias](/es/memory): jerarquía de CLAUDE.md y memoria automática1633* [Almacenar instrucciones y memorias](/docs/es/memory): jerarquía de CLAUDE.md y memoria automática

1634* [Subagents](/es/sub-agents): delegar investigación a una ventana de contexto separada1634* [Subagents](/docs/es/sub-agents): delegar investigación a una ventana de contexto separada

1635* [Mejores prácticas](/es/best-practices): gestionar el contexto como su restricción principal1635* [Mejores prácticas](/docs/es/best-practices): gestionar el contexto como su restricción principal

1636* [Almacenamiento en caché de prompts](/es/prompt-caching): qué acciones invalidan el prefijo en caché1636* [Almacenamiento en caché de prompts](/docs/es/prompt-caching): qué acciones invalidan el prefijo en caché

1637* [Reducir el uso de tokens](/es/costs#reduce-token-usage): estrategias para mantener el uso de contexto bajo1637* [Reducir el uso de tokens](/docs/es/costs#reduce-token-usage): estrategias para mantener el uso de contexto bajo

Details

8 8 

9Cuando Claude ignora una instrucción o una característica que configuró no aparece, la causa suele ser que el archivo no se cargó, se cargó desde una ubicación diferente a la que esperaba, u otro archivo la anuló. Esta guía muestra cómo inspeccionar qué cargó realmente Claude Code para que pueda reducir cuál se aplica.9Cuando Claude ignora una instrucción o una característica que configuró no aparece, la causa suele ser que el archivo no se cargó, se cargó desde una ubicación diferente a la que esperaba, u otro archivo la anuló. Esta guía muestra cómo inspeccionar qué cargó realmente Claude Code para que pueda reducir cuál se aplica.

10 10 

11Para problemas de instalación, autenticación y conectividad, consulte [Troubleshooting installation and login](/es/troubleshoot-install) en su lugar.11Para problemas de instalación, autenticación y conectividad, consulte [Troubleshooting installation and login](/docs/es/troubleshoot-install) en su lugar.

12 12 

13<h2 id="see-what-loaded-into-context">13<h2 id="see-what-loaded-into-context">

14 Ver qué se cargó en el contexto14 Ver qué se cargó en el contexto


25| `/hooks` | Configuraciones de hook activas |25| `/hooks` | Configuraciones de hook activas |

26| `/mcp` | Servidores MCP conectados y su estado |26| `/mcp` | Servidores MCP conectados y su estado |

27| `/permissions` | Reglas de permitir y denegar resueltas actualmente en vigor |27| `/permissions` | Reglas de permitir y denegar resueltas actualmente en vigor |

28| `/doctor` | Diagnóstico de configuración: salud de la instalación, archivos de configuración inválidos, extensiones no utilizadas, nombres de [subagentes](/es/sub-agents) duplicados en el mismo directorio, y contenido de `CLAUDE.md` registrado que Claude puede derivar de la base de código, con correcciones propuestas |28| `/doctor` | Diagnóstico de configuración: salud de la instalación, archivos de configuración inválidos, extensiones no utilizadas, nombres de [subagentes](/docs/es/sub-agents) duplicados en el mismo directorio, y contenido de `CLAUDE.md` registrado que Claude puede derivar de la base de código, con correcciones propuestas |

29| `/debug [issue]` | Habilita el registro de depuración para la sesión e indica a Claude que diagnostique usando la salida del registro y las rutas de configuración |29| `/debug [issue]` | Habilita el registro de depuración para la sesión e indica a Claude que diagnostique usando la salida del registro y las rutas de configuración |

30| `/status` | Fuentes de configuración activas, incluido si la configuración administrada está en vigor |30| `/status` | Fuentes de configuración activas, incluido si la configuración administrada está en vigor |

31 31 

32Si falta un archivo de memoria en `/memory`, verifique su ubicación contra [cómo se cargan los archivos CLAUDE.md](/es/memory#how-claude-md-files-load). Los archivos `CLAUDE.md` del subdirectorio se cargan bajo demanda cuando Claude lee un archivo en ese directorio con la herramienta Read, no al inicio de la sesión.32Si falta un archivo de memoria en `/memory`, verifique su ubicación contra [cómo se cargan los archivos CLAUDE.md](/docs/es/memory#how-claude-md-files-load). Los archivos `CLAUDE.md` del subdirectorio se cargan bajo demanda cuando Claude lee un archivo en ese directorio con la herramienta Read, no al inicio de la sesión.

33 33 

34Si `/memory` confirma que el archivo se cargó pero Claude aún no sigue una instrucción particular, el problema probablemente sea cómo se escribe la instrucción en lugar de si se cargó. CLAUDE.md funciona bien para el tipo de orientación que daría a un nuevo compañero de equipo, como convenciones de proyecto, comandos de compilación y dónde pertenecen los archivos.34Si `/memory` confirma que el archivo se cargó pero Claude aún no sigue una instrucción particular, el problema probablemente sea cómo se escribe la instrucción en lugar de si se cargó. CLAUDE.md funciona bien para el tipo de orientación que daría a un nuevo compañero de equipo, como convenciones de proyecto, comandos de compilación y dónde pertenecen los archivos.

35 35 

36La adherencia disminuye cuando una instrucción es lo suficientemente vaga como para interpretarse de múltiples formas, cuando dos archivos dan direcciones conflictivas, o cuando el archivo ha crecido lo suficiente como para que las reglas individuales reciban menos atención. [Escribir instrucciones efectivas](/es/memory#write-effective-instructions) cubre los patrones de especificidad, tamaño y estructura que mantienen la adherencia alta.36La adherencia disminuye cuando una instrucción es lo suficientemente vaga como para interpretarse de múltiples formas, cuando dos archivos dan direcciones conflictivas, o cuando el archivo ha crecido lo suficiente como para que las reglas individuales reciban menos atención. [Escribir instrucciones efectivas](/docs/es/memory#write-effective-instructions) cubre los patrones de especificidad, tamaño y estructura que mantienen la adherencia alta.

37 37 

38<Note>38<Note>

39 CLAUDE.md y los permisos resuelven problemas diferentes. CLAUDE.md le dice a Claude cómo funciona su proyecto para que tome buenas decisiones. [Permisos](/es/permissions) y [hooks](/es/hooks) aplican límites independientemente de lo que Claude decida. Use CLAUDE.md para "lo hacemos de esta manera aquí". Use permisos o hooks para límites de seguridad y cualquier cosa que nunca deba suceder, donde necesita una garantía en lugar de orientación.39 CLAUDE.md y los permisos resuelven problemas diferentes. CLAUDE.md le dice a Claude cómo funciona su proyecto para que tome buenas decisiones. [Permisos](/docs/es/permissions) y [hooks](/docs/es/hooks) aplican límites independientemente de lo que Claude decida. Use CLAUDE.md para "lo hacemos de esta manera aquí". Use permisos o hooks para límites de seguridad y cualquier cosa que nunca deba suceder, donde necesita una garantía en lugar de orientación.

40</Note>40</Note>

41 41 

42<h2 id="check-resolved-settings">42<h2 id="check-resolved-settings">

43 Verificar configuración resuelta43 Verificar configuración resuelta

44</h2>44</h2>

45 45 

46La configuración se fusiona en ámbitos administrados, de usuario, de proyecto y locales. La configuración administrada siempre gana cuando está presente. Entre el resto, el ámbito más cercano anula el más amplio en el orden local, luego proyecto, luego usuario. Algunos ajustes también se pueden establecer mediante banderas de línea de comandos o [variables de entorno](/es/env-vars), que actúan como otra capa de anulación. Cuando una configuración no parece aplicarse, el valor que estableció generalmente se anula por otro ámbito o una variable de entorno.46La configuración se fusiona en ámbitos administrados, de usuario, de proyecto y locales. La configuración administrada siempre gana cuando está presente. Entre el resto, el ámbito más cercano anula el más amplio en el orden local, luego proyecto, luego usuario. Algunos ajustes también se pueden establecer mediante banderas de línea de comandos o [variables de entorno](/docs/es/env-vars), que actúan como otra capa de anulación. Cuando una configuración no parece aplicarse, el valor que estableció generalmente se anula por otro ámbito o una variable de entorno.

47 47 

48Ejecute `/doctor` para verificar su configuración e instalación. Informa lo que encuentra, incluidos archivos de configuración inválidos, instalaciones duplicadas, extensiones no utilizadas y {/* min-version: 2.1.206 */}contenido de `CLAUDE.md` registrado que Claude puede derivar de la base de código, luego propone correcciones que aplica solo después de que usted confirme. La verificación de recorte de `CLAUDE.md` requiere Claude Code v2.1.206 o posterior. Antes de v2.1.205, `/doctor` abría una pantalla de diagnóstico de solo lectura y presionar `f` enviaba el informe a Claude para corregir.48Ejecute `/doctor` para verificar su configuración e instalación. Informa lo que encuentra, incluidos archivos de configuración inválidos, instalaciones duplicadas, extensiones no utilizadas y contenido de `CLAUDE.md` registrado que Claude puede derivar de la base de código, luego propone correcciones que aplica solo después de que usted confirme. La verificación de recorte de `CLAUDE.md` requiere Claude Code v2.1.206 o posterior. Antes de v2.1.205, `/doctor` abría una pantalla de diagnóstico de solo lectura y presionar `f` enviaba el informe a Claude para corregir.

49 49 

50Desde la terminal, `claude doctor` imprime diagnósticos de instalación y configuración de solo lectura sin iniciar una sesión.50Desde la terminal, `claude doctor` imprime diagnósticos de instalación y configuración de solo lectura sin iniciar una sesión.

51 51 

52Ejecute `/status` para ver qué fuentes de configuración están activas, incluido si la configuración administrada está en vigor. Para entender qué ámbito gana para una clave determinada, consulte [Cómo interactúan los ámbitos](/es/settings#how-scopes-interact).52Ejecute `/status` para ver qué fuentes de configuración están activas, incluido si la configuración administrada está en vigor. Para entender qué ámbito gana para una clave determinada, consulte [Cómo interactúan los ámbitos](/docs/es/settings#how-scopes-interact).

53 53 

54<h2 id="check-mcp-servers">54<h2 id="check-mcp-servers">

55 Verificar servidores MCP55 Verificar servidores MCP


61* Un servidor que no se inicia se muestra como fallido en `/mcp`. Las rutas de archivo relativas en `command` o `args` son una causa frecuente, ya que se resuelven contra el directorio desde el que lanzó Claude Code en lugar de la ubicación de `.mcp.json`.61* Un servidor que no se inicia se muestra como fallido en `/mcp`. Las rutas de archivo relativas en `command` o `args` son una causa frecuente, ya que se resuelven contra el directorio desde el que lanzó Claude Code en lugar de la ubicación de `.mcp.json`.

62* Un servidor que se muestra como conectado pero enumera cero herramientas se ha iniciado correctamente pero no devuelve una lista de herramientas. Seleccione **Reconnect** desde `/mcp`. Si el recuento permanece en cero, ejecute `claude --debug mcp` para ver la salida stderr del servidor.62* Un servidor que se muestra como conectado pero enumera cero herramientas se ha iniciado correctamente pero no devuelve una lista de herramientas. Seleccione **Reconnect** desde `/mcp`. Si el recuento permanece en cero, ejecute `claude --debug mcp` para ver la salida stderr del servidor.

63 63 

64Para ubicaciones de configuración y reglas de ámbito, consulte [MCP](/es/mcp).64Para ubicaciones de configuración y reglas de ámbito, consulte [MCP](/docs/es/mcp).

65 65 

66<h2 id="check-hooks">66<h2 id="check-hooks">

67 Verificar hooks67 Verificar hooks


73 73 

74* El campo `matcher` es una cadena única que usa `|` para coincidir con múltiples nombres de herramientas, por ejemplo `"Edit|Write"`. Un separador `,` es equivalente, por lo que `"Edit,Write"` coincide con las mismas herramientas. Antes de v2.1.191, una coma se evaluaba como expresión regular y el matcher nunca coincidía, así que use `|` si no está en v2.1.191 aún.74* El campo `matcher` es una cadena única que usa `|` para coincidir con múltiples nombres de herramientas, por ejemplo `"Edit|Write"`. Un separador `,` es equivalente, por lo que `"Edit,Write"` coincide con las mismas herramientas. Antes de v2.1.191, una coma se evaluaba como expresión regular y el matcher nunca coincidía, así que use `|` si no está en v2.1.191 aún.

75* Un nombre de herramienta mal escrito produce un matcher que no coincide con nada, por lo que el hook falla silenciosamente.75* Un nombre de herramienta mal escrito produce un matcher que no coincide con nada, por lo que el hook falla silenciosamente.

76* Un valor de matriz es un error de esquema: Claude Code muestra un aviso de error de configuración y rechaza todo el archivo de configuración del usuario, proyecto o local, `claude doctor` informa del error de validación, y ningún hook de ese archivo aparece en `/hooks`. En [configuración administrada](/es/settings#settings-files), solo se elimina la entrada inválida y los otros hooks del archivo aún se aplican.76* Un valor de matriz es un error de esquema: Claude Code muestra un aviso de error de configuración y rechaza todo el archivo de configuración del usuario, proyecto o local, `claude doctor` informa del error de validación, y ningún hook de ese archivo aparece en `/hooks`. En [configuración administrada](/docs/es/settings#settings-files), solo se elimina la entrada inválida y los otros hooks del archivo aún se aplican.

77 77 

78Las ediciones en `settings.json` surten efecto en la sesión en ejecución después de un breve retraso de estabilidad de archivo. No necesita reiniciar. Si `/hooks` aún muestra la definición anterior unos segundos después de guardar, ejecute `/hooks` nuevamente para actualizar la vista.78Las ediciones en `settings.json` surten efecto en la sesión en ejecución después de un breve retraso de estabilidad de archivo. No necesita reiniciar. Si `/hooks` aún muestra la definición anterior unos segundos después de guardar, ejecute `/hooks` nuevamente para actualizar la vista.

79 79 

80Si `/hooks` muestra el hook pero aún no se dispara, el siguiente paso es ver la evaluación del hook en vivo. Inicie una sesión con `claude --debug hooks` y active la llamada de herramienta. El registro de depuración registra cada evento, qué matchers se verificaron, y el código de salida y la salida del hook. Consulte [Depurar hooks](/es/hooks#debug-hooks) para el formato del registro y [solución de problemas de hooks](/es/hooks-guide#limitations-and-troubleshooting) para patrones de fallo comunes.80Si `/hooks` muestra el hook pero aún no se dispara, el siguiente paso es ver la evaluación del hook en vivo. Inicie una sesión con `claude --debug hooks` y active la llamada de herramienta. El registro de depuración registra cada evento, qué matchers se verificaron, y el código de salida y la salida del hook. Consulte [Depurar hooks](/docs/es/hooks#debug-hooks) para el formato del registro y [solución de problemas de hooks](/docs/es/hooks-guide#limitations-and-troubleshooting) para patrones de fallo comunes.

81 81 

82<h2 id="test-against-a-clean-configuration">82<h2 id="test-against-a-clean-configuration">

83 Probar contra una configuración limpia83 Probar contra una configuración limpia

84</h2>84</h2>

85 85 

86{/* min-version: 2.1.169 */}Comience con [`claude --safe-mode`](/es/cli-reference#cli-flags), que inicia una sesión con todas las personalizaciones deshabilitadas, incluidos `CLAUDE.md`, skills, plugins, hooks, servidores MCP y comandos y agentes personalizados. La autenticación, la selección de modelo, las herramientas integradas y los permisos funcionan normalmente. Si el problema desaparece en modo seguro, una de esas superficies es la causa; use las comprobaciones dirigidas anteriores para encontrar cuál. El modo seguro aún aplica hooks administrados y la política de configuración de su organización. Los plugins administrados, skills, CLAUDE.md y servidores MCP están desactivados.86Comience con [`claude --safe-mode`](/docs/es/cli-reference#cli-flags), que inicia una sesión con todas las personalizaciones deshabilitadas, incluidos `CLAUDE.md`, skills, plugins, hooks, servidores MCP y comandos y agentes personalizados. La autenticación, la selección de modelo, las herramientas integradas y los permisos funcionan normalmente. Si el problema desaparece en modo seguro, una de esas superficies es la causa; use las comprobaciones dirigidas anteriores para encontrar cuál. El modo seguro aún aplica hooks administrados y la política de configuración de su organización. Los plugins administrados, skills, CLAUDE.md y servidores MCP están desactivados.

87 87 

88Si el problema persiste en modo seguro, o si su configuración en sí es sospechosa, compare contra una sesión que no carga nada de su configuración habitual. Apunte [`CLAUDE_CONFIG_DIR`](/es/env-vars) a un directorio vacío para omitir todo bajo `~/.claude`, e inicie desde un directorio que no tenga carpeta `.claude`, `.mcp.json` o `CLAUDE.md` para que la configuración del proyecto también se omita.88Si el problema persiste en modo seguro, o si su configuración en sí es sospechosa, compare contra una sesión que no carga nada de su configuración habitual. Apunte [`CLAUDE_CONFIG_DIR`](/docs/es/env-vars) a un directorio vacío para omitir todo bajo `~/.claude`, e inicie desde un directorio que no tenga carpeta `.claude`, `.mcp.json` o `CLAUDE.md` para que la configuración del proyecto también se omita.

89 89 

90```bash theme={null}90```bash theme={null}

91cd /tmp && CLAUDE_CONFIG_DIR=/tmp/claude-clean claude91cd /tmp && CLAUDE_CONFIG_DIR=/tmp/claude-clean claude


97* En Linux y Windows, se le pedirá que inicie sesión nuevamente porque las credenciales se almacenan en el directorio de configuración97* En Linux y Windows, se le pedirá que inicie sesión nuevamente porque las credenciales se almacenan en el directorio de configuración

98* En macOS, las credenciales están en el Keychain y se transfieren a la sesión limpia98* En macOS, las credenciales están en el Keychain y se transfieren a la sesión limpia

99 99 

100Si el problema desaparece aquí, la causa está en algún lugar de sus archivos reales `~/.claude` o `.claude` del proyecto. Reintrodúzcalos uno a la vez, copiando archivos en el directorio temporal o iniciando desde su proyecto, para encontrar cuál es. Si persiste en la sesión limpia, la causa está fuera de su configuración de usuario y proyecto. Ejecute `/status` para verificar si la configuración administrada está en vigor, busque [variables de entorno](/es/env-vars) que afecten a Claude Code, luego consulte [Solución de problemas](/es/troubleshooting).100Si el problema desaparece aquí, la causa está en algún lugar de sus archivos reales `~/.claude` o `.claude` del proyecto. Reintrodúzcalos uno a la vez, copiando archivos en el directorio temporal o iniciando desde su proyecto, para encontrar cuál es. Si persiste en la sesión limpia, la causa está fuera de su configuración de usuario y proyecto. Ejecute `/status` para verificar si la configuración administrada está en vigor, busque [variables de entorno](/docs/es/env-vars) que afecten a Claude Code, luego consulte [Solución de problemas](/docs/es/troubleshooting).

101 101 

102<h2 id="check-common-causes">102<h2 id="check-common-causes">

103 Verificar causas comunes103 Verificar causas comunes


107 107 

108| Síntoma | Causa | Solución |108| Síntoma | Causa | Solución |

109| :------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |109| :------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

110| Hook nunca se dispara | `matcher` es una matriz JSON en lugar de una cadena | Use una cadena única con `\|` para coincidir con múltiples herramientas, por ejemplo `"Edit\|Write"`. Consulte [patrones de matcher](/es/hooks#matcher-patterns). |110| Hook nunca se dispara | `matcher` es una matriz JSON en lugar de una cadena | Use una cadena única con `\|` para coincidir con múltiples herramientas, por ejemplo `"Edit\|Write"`. Consulte [patrones de matcher](/docs/es/hooks#matcher-patterns). |

111| Hook nunca se dispara | `matcher` usa `,` como separador en una versión anterior a v2.1.191 | {/* min-version: 2.1.191 */}Claude Code v2.1.191 o posterior trata `,` como un separador de lista como `\|`. Las versiones anteriores evalúan una coma como un carácter literal, por lo que `"Edit,Write"` no coincide con nada. Use `\|` en su lugar, o actualice Claude Code. |111| Hook nunca se dispara | `matcher` usa `,` como separador en una versión anterior a v2.1.191 | Claude Code v2.1.191 o posterior trata `,` como un separador de lista como `\|`. Las versiones anteriores evalúan una coma como un carácter literal, por lo que `"Edit,Write"` no coincide con nada. Use `\|` en su lugar, o actualice Claude Code. |

112| Hook nunca se dispara | El valor `matcher` está en minúsculas, por ejemplo `"bash"` | La coincidencia distingue mayúsculas de minúsculas. Los nombres de herramientas están capitalizados: `Bash`, `Edit`, `Write`, `Read`. |112| Hook nunca se dispara | El valor `matcher` está en minúsculas, por ejemplo `"bash"` | La coincidencia distingue mayúsculas de minúsculas. Los nombres de herramientas están capitalizados: `Bash`, `Edit`, `Write`, `Read`. |

113| Hook nunca se dispara | Los hooks están definidos en un archivo independiente en lugar de en `settings.json` | No hay archivo de hooks independiente para la configuración del proyecto o del usuario. Defina hooks bajo la clave `"hooks"` en `settings.json`. Solo los [plugins](/es/plugins-reference#hooks) cargan un archivo `hooks/hooks.json` separado. Consulte [configuración de hook](/es/hooks). |113| Hook nunca se dispara | Los hooks están definidos en un archivo independiente en lugar de en `settings.json` | No hay archivo de hooks independiente para la configuración del proyecto o del usuario. Defina hooks bajo la clave `"hooks"` en `settings.json`. Solo los [plugins](/docs/es/plugins-reference#hooks) cargan un archivo `hooks/hooks.json` separado. Consulte [configuración de hook](/docs/es/hooks). |

114| Los permisos, hooks o env establecidos globalmente se ignoran | La configuración se agregó a `~/.claude.json` | `~/.claude.json` contiene el estado de la aplicación y los cambios de interfaz de usuario. `permissions`, `hooks` y `env` pertenecen a `~/.claude/settings.json`. Estos son dos archivos diferentes. |114| Los permisos, hooks o env establecidos globalmente se ignoran | La configuración se agregó a `~/.claude.json` | `~/.claude.json` contiene el estado de la aplicación y los cambios de interfaz de usuario. `permissions`, `hooks` y `env` pertenecen a `~/.claude/settings.json`. Estos son dos archivos diferentes. |

115| Un valor `settings.json` parece ignorado | La misma clave se establece en `settings.local.json` | `settings.local.json` anula `settings.json`, y ambos anulan `~/.claude/settings.json`. Consulte [precedencia de configuración](/es/settings#how-scopes-interact). |115| Un valor `settings.json` parece ignorado | La misma clave se establece en `settings.local.json` | `settings.local.json` anula `settings.json`, y ambos anulan `~/.claude/settings.json`. Consulte [precedencia de configuración](/docs/es/settings#how-scopes-interact). |

116| Skill no aparece en `/skills` | El archivo de skill está en `.claude/skills/name.md` en lugar de en una carpeta | Use una carpeta con `SKILL.md` dentro: `.claude/skills/name/SKILL.md`. |116| Skill no aparece en `/skills` | El archivo de skill está en `.claude/skills/name.md` en lugar de en una carpeta | Use una carpeta con `SKILL.md` dentro: `.claude/skills/name/SKILL.md`. |

117| Skill aparece en `/skills` pero Claude nunca lo invoca | Skill tiene `disable-model-invocation: true` en su frontmatter, o su descripción no coincide con cómo formula la solicitud | Verifique la insignia en `/skills`: una etiqueta "user-only" significa que Claude no lo activará por su cuenta. Consulte [invocación de skill](/es/skills). |117| Skill aparece en `/skills` pero Claude nunca lo invoca | Skill tiene `disable-model-invocation: true` en su frontmatter, o su descripción no coincide con cómo formula la solicitud | Verifique la insignia en `/skills`: una etiqueta "user-only" significa que Claude no lo activará por su cuenta. Consulte [invocación de skill](/docs/es/skills). |

118| Las instrucciones de `CLAUDE.md` del subdirectorio parecen ignoradas | Los archivos del subdirectorio se cargan bajo demanda, no al inicio de la sesión | Se cargan cuando Claude lee un archivo en ese directorio con la herramienta Read, no al lanzar y no al escribir o crear archivos allí. Consulte [cómo se cargan los archivos CLAUDE.md](/es/memory#how-claude-md-files-load). |118| Las instrucciones de `CLAUDE.md` del subdirectorio parecen ignoradas | Los archivos del subdirectorio se cargan bajo demanda, no al inicio de la sesión | Se cargan cuando Claude lee un archivo en ese directorio con la herramienta Read, no al lanzar y no al escribir o crear archivos allí. Consulte [cómo se cargan los archivos CLAUDE.md](/docs/es/memory#how-claude-md-files-load). |

119| El subagente ignora las instrucciones de `CLAUDE.md` | Los agentes Explore y Plan integrados omiten `CLAUDE.md`. Los subagentes personalizados lo cargan de la misma manera que la conversación principal | Para Explore o Plan, restate la instrucción en su indicador delegado. Para un subagente personalizado, coloque las instrucciones críticas en el cuerpo del archivo del agente, que se convierte en el indicador del sistema del subagente. Consulte [qué se carga al inicio](/es/sub-agents#what-loads-at-startup). |119| El subagente ignora las instrucciones de `CLAUDE.md` | Los agentes Explore y Plan integrados omiten `CLAUDE.md`. Los subagentes personalizados lo cargan de la misma manera que la conversación principal | Para Explore o Plan, restate la instrucción en su indicador delegado. Para un subagente personalizado, coloque las instrucciones críticas en el cuerpo del archivo del agente, que se convierte en el indicador del sistema del subagente. Consulte [qué se carga al inicio](/docs/es/sub-agents#what-loads-at-startup). |

120| La lógica de limpieza nunca se ejecuta al final de la sesión | No hay hook `SessionEnd` configurado | Agregue un hook `SessionEnd` en `settings.json`. Consulte la [lista de eventos de hook](/es/hooks#hook-events). |120| La lógica de limpieza nunca se ejecuta al final de la sesión | No hay hook `SessionEnd` configurado | Agregue un hook `SessionEnd` en `settings.json`. Consulte la [lista de eventos de hook](/docs/es/hooks#hook-events). |

121| Los servidores MCP en `.mcp.json` nunca se cargan | El archivo está bajo `.claude/` o usa el formato de configuración de Claude Desktop | La configuración de MCP del proyecto va en la raíz del repositorio como `.mcp.json`, no dentro de `.claude/`. Consulte [configuración de MCP](/es/mcp). |121| Los servidores MCP en `.mcp.json` nunca se cargan | El archivo está bajo `.claude/` o usa el formato de configuración de Claude Desktop | La configuración de MCP del proyecto va en la raíz del repositorio como `.mcp.json`, no dentro de `.claude/`. Consulte [configuración de MCP](/docs/es/mcp). |

122| Los servidores MCP agregados bajo `mcpServers` en `settings.json` nunca aparecen | `settings.json` no lee una clave `mcpServers` | Defina servidores de proyecto en `.mcp.json` en la raíz del repositorio, o ejecute `claude mcp add --scope user` para servidores con ámbito de usuario. Consulte [configuración de MCP](/es/mcp). |122| Los servidores MCP agregados bajo `mcpServers` en `settings.json` nunca aparecen | `settings.json` no lee una clave `mcpServers` | Defina servidores de proyecto en `.mcp.json` en la raíz del repositorio, o ejecute `claude mcp add --scope user` para servidores con ámbito de usuario. Consulte [configuración de MCP](/docs/es/mcp). |

123| El servidor MCP del proyecto agregado pero no aparece | Se descartó el mensaje de aprobación única | Los servidores con ámbito de proyecto requieren aprobación. Ejecute `/mcp` para ver el estado y aprobar. |123| El servidor MCP del proyecto agregado pero no aparece | Se descartó el mensaje de aprobación única | Los servidores con ámbito de proyecto requieren aprobación. Ejecute `/mcp` para ver el estado y aprobar. |

124| El servidor MCP no se inicia desde algunos directorios | `command` o `args` usa una ruta de archivo relativa | Use rutas absolutas para scripts locales. Los ejecutables en su `PATH` como `npx` o `uvx` funcionan tal cual. |124| El servidor MCP no se inicia desde algunos directorios | `command` o `args` usa una ruta de archivo relativa | Use rutas absolutas para scripts locales. Los ejecutables en su `PATH` como `npx` o `uvx` funcionan tal cual. |

125| El servidor MCP se inicia sin las variables de entorno esperadas | Las variables están en `settings.json` `env`, que no se propaga a procesos secundarios de MCP | Establezca `env` por servidor dentro de `.mcp.json` en su lugar. |125| El servidor MCP se inicia sin las variables de entorno esperadas | Las variables están en `settings.json` `env`, que no se propaga a procesos secundarios de MCP | Establezca `env` por servidor dentro de `.mcp.json` en su lugar. |

126| La regla de denegación `Bash(rm *)` no bloquea `/bin/rm` o `find -delete` | Las reglas de prefijo coinciden con la cadena de comando literal, no con el ejecutable subyacente | Agregue patrones explícitos para cada variante, o use un [hook PreToolUse](/es/hooks-guide) o el [sandbox](/es/sandboxing) para una garantía dura. |126| La regla de denegación `Bash(rm *)` no bloquea `/bin/rm` o `find -delete` | Las reglas de prefijo coinciden con la cadena de comando literal, no con el ejecutable subyacente | Agregue patrones explícitos para cada variante, o use un [hook PreToolUse](/docs/es/hooks-guide) o el [sandbox](/docs/es/sandboxing) para una garantía dura. |

127 127 

128<h2 id="related-resources">128<h2 id="related-resources">

129 Recursos relacionados129 Recursos relacionados


131 131 

132Para una referencia completa en cada superficie de configuración, consulte la página dedicada:132Para una referencia completa en cada superficie de configuración, consulte la página dedicada:

133 133 

134* **[Referencia del directorio `.claude`](/es/claude-directory)**: cada ubicación de archivo de configuración y qué lo lee134* **[Referencia del directorio `.claude`](/docs/es/claude-directory)**: cada ubicación de archivo de configuración y qué lo lee

135* **[Configuración](/es/settings)**: orden de precedencia y la lista completa de claves135* **[Configuración](/docs/es/settings)**: orden de precedencia y la lista completa de claves

136* **[Referencia de hooks](/es/hooks)**: nombres de eventos, cargas útiles y formato de salida `--debug hooks`136* **[Referencia de hooks](/docs/es/hooks)**: nombres de eventos, cargas útiles y formato de salida `--debug hooks`

137* **[MCP](/es/mcp)**: configuración del servidor, aprobación y salida `/mcp`137* **[MCP](/docs/es/mcp)**: configuración del servidor, aprobación y salida `/mcp`

138* **[Solucionar problemas de instalación e inicio de sesión](/es/troubleshoot-install)**: `comando no encontrado`, PATH y problemas de autenticación138* **[Solucionar problemas de instalación e inicio de sesión](/docs/es/troubleshoot-install)**: `comando no encontrado`, PATH y problemas de autenticación

139* **[Solución de problemas](/es/troubleshooting)**: rendimiento, bloqueos y problemas de búsqueda139* **[Solución de problemas](/docs/es/troubleshooting)**: rendimiento, bloqueos y problemas de búsqueda

desktop.md +72 −72

Details

17 For x64 processors17 For x64 processors

18 </Card>18 </Card>

19 19 

20 <Card title="Get Claude for Linux (beta)" icon="linux" href="/en/desktop-linux">20 <Card title="Get Claude for Linux (beta)" icon="linux" href="/docs/en/desktop-linux">

21 apt or .deb for Ubuntu and Debian21 apt or .deb for Ubuntu and Debian

22 </Card>22 </Card>

23</CardGroup>23</CardGroup>

24 24 

25For Windows ARM64, download the [ARM64 installer](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs). On Linux, install with apt; see [Claude Desktop on Linux](/en/desktop-linux).25For Windows ARM64, download the [ARM64 installer](https://claude.ai/api/desktop/win32/arm64/setup/latest/redirect?utm_source=claude_code\&utm_medium=docs). On Linux, install with apt; see [Claude Desktop on Linux](/docs/en/desktop-linux).

26 26 

27Después de instalar, inicie Claude, inicie sesión y haga clic en la pestaña **Code**. La primera vez que la abra en Windows, necesita tener [Git for Windows](https://git-scm.com/downloads/win) instalado; reinicie la aplicación después de instalarlo. Para un recorrido de su primera sesión, consulte la [guía de introducción](/es/desktop-quickstart).27Después de instalar, inicie Claude, inicie sesión y haga clic en la pestaña **Code**. La primera vez que la abra en Windows, necesita tener [Git for Windows](https://git-scm.com/downloads/win) instalado; reinicie la aplicación después de instalarlo. Para un recorrido de su primera sesión, consulte la [guía de introducción](/docs/es/desktop-quickstart).

28 28 

29En la pestaña Code, cada conversación es una **sesión**: tiene su propio historial de chat, carpeta de proyecto y cambios de código, independiente de cualquier otra sesión. La barra lateral enumera sus sesiones y le permite ejecutar varias en paralelo. Dentro de una sesión puede:29En la pestaña Code, cada conversación es una **sesión**: tiene su propio historial de chat, carpeta de proyecto y cambios de código, independiente de cualquier otra sesión. La barra lateral enumera sus sesiones y le permite ejecutar varias en paralelo. Dentro de una sesión puede:

30 30 


36* Permitir que Claude [abra aplicaciones y controle su pantalla](#let-claude-use-your-computer)36* Permitir que Claude [abra aplicaciones y controle su pantalla](#let-claude-use-your-computer)

37* Ejecutar en su máquina, en la [nube](#run-long-running-tasks-remotely), o sobre [SSH](#ssh-sessions)37* Ejecutar en su máquina, en la [nube](#run-long-running-tasks-remotely), o sobre [SSH](#ssh-sessions)

38 38 

39Para [trabajo recurrente programado](/es/desktop-scheduled-tasks), [atajos de teclado](#keyboard-shortcuts), o [enviar tareas desde su teléfono](#sessions-from-dispatch), consulte las páginas y secciones vinculadas. Si ya usa la CLI basada en terminal, consulte la [comparación de CLI](#coming-from-the-cli) para ver qué se transfiere.39Para [trabajo recurrente programado](/docs/es/desktop-scheduled-tasks), [atajos de teclado](#keyboard-shortcuts), o [enviar tareas desde su teléfono](#sessions-from-dispatch), consulte las páginas y secciones vinculadas. Si ya usa la CLI basada en terminal, consulte la [comparación de CLI](#coming-from-the-cli) para ver qué se transfiere.

40 40 

41<h2 id="start-a-session">41<h2 id="start-a-session">

42 Iniciar una sesión42 Iniciar una sesión


44 44 

45Antes de enviar su primer mensaje, configure cuatro cosas en el área de solicitud:45Antes de enviar su primer mensaje, configure cuatro cosas en el área de solicitud:

46 46 

47* **Entorno**: elija dónde se ejecuta Claude. Seleccione **Local** para su máquina, **Remote** para sesiones en la nube alojadas por Anthropic, una [**conexión SSH**](#ssh-sessions) para una máquina remota que usted administra, o en Windows una [**distribución WSL**](/es/desktop-wsl). Consulte [configuración del entorno](#environment-configuration).47* **Entorno**: elija dónde se ejecuta Claude. Seleccione **Local** para su máquina, **Remote** para sesiones en la nube alojadas por Anthropic, una [**conexión SSH**](#ssh-sessions) para una máquina remota que usted administra, o en Windows una [**distribución WSL**](/docs/es/desktop-wsl). Consulte [configuración del entorno](#environment-configuration).

48* **Carpeta del proyecto**: seleccione la carpeta o repositorio en el que Claude trabaja. Para sesiones remotas, puede agregar [múltiples repositorios](#run-long-running-tasks-remotely).48* **Carpeta del proyecto**: seleccione la carpeta o repositorio en el que Claude trabaja. Para sesiones remotas, puede agregar [múltiples repositorios](#run-long-running-tasks-remotely).

49* **Modelo**: elija un [modelo](/es/model-config#available-models) del menú desplegable junto al botón de envío. Puede cambiar esto durante la sesión.49* **Modelo**: elija un [modelo](/docs/es/model-config#available-models) del menú desplegable junto al botón de envío. Puede cambiar esto durante la sesión.

50* **Modo de permisos**: elija cuánta autonomía tiene Claude desde el [selector de modo](#choose-a-permission-mode). Puede cambiar esto durante la sesión.50* **Modo de permisos**: elija cuánta autonomía tiene Claude desde el [selector de modo](#choose-a-permission-mode). Puede cambiar esto durante la sesión.

51 51 

52Escriba su tarea y presione **Enter** para comenzar. Cada sesión rastrea su propio contexto y cambios de forma independiente.52Escriba su tarea y presione **Enter** para comenzar. Cada sesión rastrea su propio contexto y cambios de forma independiente.


80 80 

81Los modos de permisos controlan cuánta autonomía tiene Claude durante una sesión: si pregunta antes de editar archivos, ejecutar comandos o ambos. Puede cambiar de modo en cualquier momento usando el selector de modo junto al botón de envío. Comience con Manual para ver exactamente qué hace Claude, luego pase a Accept edits o Plan a medida que se sienta cómodo.81Los modos de permisos controlan cuánta autonomía tiene Claude durante una sesión: si pregunta antes de editar archivos, ejecutar comandos o ambos. Puede cambiar de modo en cualquier momento usando el selector de modo junto al botón de envío. Comience con Manual para ver exactamente qué hace Claude, luego pase a Accept edits o Plan a medida que se sienta cómodo.

82 82 

83Para establecer un modo predeterminado para nuevas sesiones locales, agregue `permissions.defaultMode` a su [archivo de configuración](/es/settings#settings-files). La aplicación de escritorio lee los mismos archivos de configuración que la CLI. Un modo que selecciona en el selector se recuerda por carpeta y tiene prioridad sobre `defaultMode` para esa carpeta, excepto Plan, que se aplica solo a la sesión actual.83Para establecer un modo predeterminado para nuevas sesiones locales, agregue `permissions.defaultMode` a su [archivo de configuración](/docs/es/settings#settings-files). La aplicación de escritorio lee los mismos archivos de configuración que la CLI. Un modo que selecciona en el selector se recuerda por carpeta y tiene prioridad sobre `defaultMode` para esa carpeta, excepto Plan, que se aplica solo a la sesión actual.

84 84 

85| Modo | Clave de configuración | Comportamiento |85| Modo | Clave de configuración | Comportamiento |

86| ---------------------- | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |86| ---------------------- | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |


88| **Accept edits** | `acceptEdits` | Claude acepta automáticamente ediciones de archivos y comandos comunes del sistema de archivos como `mkdir`, `touch` y `mv`, pero aún pregunta antes de ejecutar otros comandos de terminal. Use esto cuando confíe en cambios de archivos y desee una iteración más rápida. |88| **Accept edits** | `acceptEdits` | Claude acepta automáticamente ediciones de archivos y comandos comunes del sistema de archivos como `mkdir`, `touch` y `mv`, pero aún pregunta antes de ejecutar otros comandos de terminal. Use esto cuando confíe en cambios de archivos y desee una iteración más rápida. |

89| **Plan** | `plan` | Claude lee archivos y ejecuta comandos para explorar, luego propone un plan sin editar su código fuente. Bueno para tareas complejas donde desea revisar el enfoque primero. |89| **Plan** | `plan` | Claude lee archivos y ejecuta comandos para explorar, luego propone un plan sin editar su código fuente. Bueno para tareas complejas donde desea revisar el enfoque primero. |

90| **Auto** | `auto` | Claude ejecuta todas las acciones con verificaciones de seguridad en segundo plano que verifican la alineación con su solicitud. Reduce solicitudes de permisos mientras mantiene supervisión. Aparece cuando su cuenta cumple con los [requisitos de disponibilidad](#auto-mode-availability) a continuación; no hay un control deslizante de Configuración separado para esto. |90| **Auto** | `auto` | Claude ejecuta todas las acciones con verificaciones de seguridad en segundo plano que verifican la alineación con su solicitud. Reduce solicitudes de permisos mientras mantiene supervisión. Aparece cuando su cuenta cumple con los [requisitos de disponibilidad](#auto-mode-availability) a continuación; no hay un control deslizante de Configuración separado para esto. |

91| **Bypass permissions** | `bypassPermissions` | Claude se ejecuta sin avisos de permisos, excepto aquellos forzados por [reglas de solicitud](/es/permissions#manage-permissions) explícitas, herramientas de conectores [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools), herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool), o clasificadores de seguridad cuando Claude [actúa en sitios externos](#browse-external-sites); equivalente a `--dangerously-skip-permissions` en la CLI. En planes Pro y Max, habilítelo en su Configuración → Claude Code bajo "Allow bypass permissions mode"; en planes Team y Enterprise no hay un control deslizante de Configuración, y la política de la organización lo controla en su lugar. Use solo en contenedores o máquinas virtuales sandboxed. |91| **Bypass permissions** | `bypassPermissions` | Claude se ejecuta sin avisos de permisos, excepto aquellos forzados por [reglas de solicitud](/docs/es/permissions#manage-permissions) explícitas, herramientas de conectores [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool), o clasificadores de seguridad cuando Claude [actúa en sitios externos](#browse-external-sites); equivalente a `--dangerously-skip-permissions` en la CLI. En planes Pro y Max, habilítelo en su Configuración → Claude Code bajo "Allow bypass permissions mode"; en planes Team y Enterprise no hay un control deslizante de Configuración, y la política de la organización lo controla en su lugar. Use solo en contenedores o máquinas virtuales sandboxed. |

92 92 

93Las versiones anteriores de la pestaña Code etiquetaban estos modos como Ask permissions, Auto accept edits y Plan mode.93Las versiones anteriores de la pestaña Code etiquetaban estos modos como Ask permissions, Auto accept edits y Plan mode.

94 94 

95El modo de permisos `dontAsk` está disponible solo en la [CLI](/es/permission-modes#allow-only-pre-approved-tools-with-dontask-mode).95El modo de permisos `dontAsk` está disponible solo en la [CLI](/docs/es/permission-modes#allow-only-pre-approved-tools-with-dontask-mode).

96 96 

97<span id="auto-mode-availability" />97<span id="auto-mode-availability" />

98 98 

99Auto mode está disponible para todos los usuarios en la API de Anthropic y requiere Claude Opus 4.6 o posterior, u Sonnet 4.6 o posterior. Los administradores de la organización pueden desactivar auto mode con la clave `disableAutoMode` en [configuración administrada](#managed-settings).99Auto mode está disponible para todos los usuarios en la API de Anthropic y requiere Claude Opus 4.6 o posterior, u Sonnet 4.6 o posterior. Los administradores de la organización pueden desactivar auto mode con la clave `disableAutoMode` en [configuración administrada](#managed-settings).

100 100 

101En implementaciones empresariales que enrutan Desktop a Google Cloud's Agent Platform, auto mode está [disponible de forma predeterminada](/es/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry), y solo Claude Sonnet 5, Opus 4.7 y Opus 4.8 son compatibles allí. {/* min-version: 2.1.207 */}Antes de Claude Code v2.1.207, las implementaciones empresariales en Google Cloud's Agent Platform tenían que establecer `CLAUDE_CODE_ENABLE_AUTO_MODE` para habilitar auto mode.101En implementaciones empresariales que enrutan Desktop a Google Cloud's Agent Platform, auto mode está [disponible de forma predeterminada](/docs/es/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry), y solo Claude Sonnet 5, Opus 4.7 y Opus 4.8 son compatibles allí. Antes de Claude Code v2.1.207, las implementaciones empresariales en Google Cloud's Agent Platform tenían que establecer `CLAUDE_CODE_ENABLE_AUTO_MODE` para habilitar auto mode.

102 102 

103<Tip title="Mejor práctica">103<Tip title="Mejor práctica">

104 Comience tareas complejas en Plan para que Claude mapee un enfoque antes de realizar cambios. Una vez que apruebe el plan, cambie a Accept edits o Manual para ejecutarlo. Consulte [explorar primero, luego planificar, luego codificar](/es/best-practices#explore-first-then-plan-then-code) para obtener más información sobre este flujo de trabajo.104 Comience tareas complejas en Plan para que Claude mapee un enfoque antes de realizar cambios. Una vez que apruebe el plan, cambie a Accept edits o Manual para ejecutarlo. Consulte [explorar primero, luego planificar, luego codificar](/docs/es/best-practices#explore-first-then-plan-then-code) para obtener más información sobre este flujo de trabajo.

105</Tip>105</Tip>

106 106 

107Las sesiones en la nube admiten Accept edits, Plan y Auto. Accept edits corresponde al modo `default`: las sesiones en la nube aceptan automáticamente ediciones de archivos, por lo que el selector muestra Accept edits en lugar de Manual. Bypass permissions no está disponible porque el entorno en la nube ya está sandboxed.107Las sesiones en la nube admiten Accept edits, Plan y Auto. Accept edits corresponde al modo `default`: las sesiones en la nube aceptan automáticamente ediciones de archivos, por lo que el selector muestra Accept edits en lugar de Manual. Bypass permissions no está disponible porque el entorno en la nube ya está sandboxed.


145 145 

146La primera vez que Claude actúa en un sitio externo, aparece una tarjeta de permisos y Claude espera su elección: **Allow once**, **Always allow** o **Deny**. **Allow once** aprueba la acción sin guardar nada. **Always allow** guarda la aprobación para ese sitio en su dispositivo, y puede revocarla en Configuración. Cada sitio necesita su propia aprobación, incluidos los subdominios. Sus servidores de desarrollo local y archivos de proyecto no necesitan aprobación, por lo que [auto-verify](#auto-verify-changes) sigue funcionando sin avisos.146La primera vez que Claude actúa en un sitio externo, aparece una tarjeta de permisos y Claude espera su elección: **Allow once**, **Always allow** o **Deny**. **Allow once** aprueba la acción sin guardar nada. **Always allow** guarda la aprobación para ese sitio en su dispositivo, y puede revocarla en Configuración. Cada sitio necesita su propia aprobación, incluidos los subdominios. Sus servidores de desarrollo local y archivos de proyecto no necesitan aprobación, por lo que [auto-verify](#auto-verify-changes) sigue funcionando sin avisos.

147 147 

148Incluso en un sitio aprobado, Claude no comprará artículos, creará cuentas ni omitirá CAPTCHAs sin su entrada. Navegar en el panel del navegador usa el mismo modelo de seguridad que la [extensión Claude en Chrome](/es/chrome). Consulte [Usar Claude en Chrome de forma segura](https://support.claude.com/en/articles/12902428-using-claude-in-chrome-safely) para saber cómo Claude maneja sitios sensibles y acciones riesgosas.148Incluso en un sitio aprobado, Claude no comprará artículos, creará cuentas ni omitirá CAPTCHAs sin su entrada. Navegar en el panel del navegador usa el mismo modelo de seguridad que la [extensión Claude en Chrome](/docs/es/chrome). Consulte [Usar Claude en Chrome de forma segura](https://support.claude.com/en/articles/12902428-using-claude-in-chrome-safely) para saber cómo Claude maneja sitios sensibles y acciones riesgosas.

149 149 

150<h4 id="choose-between-the-browser-and-the-chrome-extension">150<h4 id="choose-between-the-browser-and-the-chrome-extension">

151 Elegir entre el panel del navegador y la extensión de Chrome151 Elegir entre el panel del navegador y la extensión de Chrome

152</h4>152</h4>

153 153 

154El panel del navegador usa un perfil de navegador limpio, separado de su navegador personal, sin ninguno de sus inicios de sesión guardados o historial. Úselo para construir y probar su aplicación y para sitios que no necesitan su identidad. Cuando desee que Claude actúe como usted en sus sesiones iniciadas, use la [extensión Claude en Chrome](/es/chrome) en su lugar, que comparte el estado de inicio de sesión de su navegador.154El panel del navegador usa un perfil de navegador limpio, separado de su navegador personal, sin ninguno de sus inicios de sesión guardados o historial. Úselo para construir y probar su aplicación y para sitios que no necesitan su identidad. Cuando desee que Claude actúe como usted en sus sesiones iniciadas, use la [extensión Claude en Chrome](/docs/es/chrome) en su lugar, que comparte el estado de inicio de sesión de su navegador.

155 155 

156<h4 id="restrict-external-browsing-for-your-organization">156<h4 id="restrict-external-browsing-for-your-organization">

157 Restringir la navegación externa para su organización157 Restringir la navegación externa para su organización


274| `Cmd` `Shift` `E` | Abrir menú de esfuerzo |274| `Cmd` `Shift` `E` | Abrir menú de esfuerzo |

275| `1`–`9` | Seleccionar elemento en un menú abierto |275| `1`–`9` | Seleccionar elemento en un menú abierto |

276 276 

277Estos atajos se aplican solo a la pestaña Code. Los [atajos de modo interactivo](/es/interactive-mode#keyboard-shortcuts) basados en terminal, como `Shift+Tab` para ciclar modos, no se aplican en Desktop.277Estos atajos se aplican solo a la pestaña Code. Los [atajos de modo interactivo](/docs/es/interactive-mode#keyboard-shortcuts) basados en terminal, como `Shift+Tab` para ciclar modos, no se aplican en Desktop.

278 278 

279<h3 id="check-usage">279<h3 id="check-usage">

280 Verificar uso280 Verificar uso


295El uso de computadora está deshabilitado de forma predeterminada. [Habilítelo en Configuración](#enable-computer-use) antes de que Claude pueda controlar su pantalla. En macOS, también necesita otorgar permisos de Accesibilidad y Grabación de pantalla.295El uso de computadora está deshabilitado de forma predeterminada. [Habilítelo en Configuración](#enable-computer-use) antes de que Claude pueda controlar su pantalla. En macOS, también necesita otorgar permisos de Accesibilidad y Grabación de pantalla.

296 296 

297<Warning>297<Warning>

298 A diferencia de la [herramienta Bash sandboxed](/es/sandboxing), el uso de computadora se ejecuta en su escritorio real con acceso a lo que apruebe. Claude verifica cada acción e identifica posibles inyecciones de solicitud desde contenido en pantalla, pero el límite de confianza es diferente. Consulte la [guía de seguridad de uso de computadora](https://support.claude.com/en/articles/14128542) para obtener mejores prácticas.298 A diferencia de la [herramienta Bash sandboxed](/docs/es/sandboxing), el uso de computadora se ejecuta en su escritorio real con acceso a lo que apruebe. Claude verifica cada acción e identifica posibles inyecciones de solicitud desde contenido en pantalla, pero el límite de confianza es diferente. Consulte la [guía de seguridad de uso de computadora](https://support.claude.com/en/articles/14128542) para obtener mejores prácticas.

299</Warning>299</Warning>

300 300 

301<h3 id="when-computer-use-applies">301<h3 id="when-computer-use-applies">


306 306 

307* Si tiene un [conector](#connect-external-tools) para un servicio, Claude usa el conector.307* Si tiene un [conector](#connect-external-tools) para un servicio, Claude usa el conector.

308* Si la tarea es un comando de shell, Claude usa Bash.308* Si la tarea es un comando de shell, Claude usa Bash.

309* Si la tarea es trabajo en navegador y tiene [Claude en Chrome](/es/chrome) configurado, Claude usa eso.309* Si la tarea es trabajo en navegador y tiene [Claude en Chrome](/docs/es/chrome) configurado, Claude usa eso.

310* Si ninguno de esos se aplica, Claude usa el uso de computadora.310* Si ninguno de esos se aplica, Claude usa el uso de computadora.

311 311 

312Los [niveles de acceso por aplicación](#app-permissions) refuerzan esto: los navegadores están limitados a solo lectura, y las terminales e IDE a solo clic, dirigiendo a Claude hacia la herramienta dedicada incluso cuando el uso de computadora está activo. El control de pantalla se reserva para cosas que nada más puede alcanzar, como aplicaciones nativas, paneles de control de hardware, simuladores móviles o herramientas propietarias sin una API.312Los [niveles de acceso por aplicación](#app-permissions) refuerzan esto: los navegadores están limitados a solo lectura, y las terminales e IDE a solo clic, dirigiendo a Claude hacia la herramienta dedicada incluso cuando el uso de computadora está activo. El control de pantalla se reserva para cosas que nada más puede alcanzar, como aplicaciones nativas, paneles de control de hardware, simuladores móviles o herramientas propietarias sin una API.


319 319 

320<Steps>320<Steps>

321 <Step title="Actualizar la aplicación de escritorio">321 <Step title="Actualizar la aplicación de escritorio">

322 Asegúrese de tener la última versión de Claude Desktop. En macOS y Windows, descargue o actualice en [claude.com/download](https://claude.com/download); en Linux, actualice a través de su gestor de paquetes ([instrucciones](/es/desktop-linux)). Luego reinicie la aplicación.322 Asegúrese de tener la última versión de Claude Desktop. En macOS y Windows, descargue o actualice en [claude.com/download](https://claude.com/download); en Linux, actualice a través de su gestor de paquetes ([instrucciones](/docs/es/desktop-linux)). Luego reinicie la aplicación.

323 </Step>323 </Step>

324 324 

325 <Step title="Activar el control deslizante">325 <Step title="Activar el control deslizante">


369 Trabajar en paralelo con sesiones369 Trabajar en paralelo con sesiones

370</h3>370</h3>

371 371 

372Haga clic en **+ New session** en la barra lateral, o presione **Cmd+N** en macOS o **Ctrl+N** en Windows, para trabajar en múltiples tareas en paralelo. Presione **Ctrl+Tab** y **Ctrl+Shift+Tab** para ciclar a través de sesiones en la barra lateral. Para repositorios de Git, cada sesión obtiene su propia copia aislada de su proyecto usando [Git worktrees](/es/worktrees), por lo que los cambios en una sesión no afectan otras sesiones hasta que los confirme.372Haga clic en **+ New session** en la barra lateral, o presione **Cmd+N** en macOS o **Ctrl+N** en Windows, para trabajar en múltiples tareas en paralelo. Presione **Ctrl+Tab** y **Ctrl+Shift+Tab** para ciclar a través de sesiones en la barra lateral. Para repositorios de Git, cada sesión obtiene su propia copia aislada de su proyecto usando [Git worktrees](/docs/es/worktrees), por lo que los cambios en una sesión no afectan otras sesiones hasta que los confirme.

373 373 

374Para ver dos sesiones a la vez, mantenga presionado **Cmd** en macOS o **Ctrl** en Windows y haga clic en una sesión en la barra lateral. La sesión se abre en un segundo panel junto al que ya tiene abierto. Mientras la división está activa, hacer clic en otra sesión de la barra lateral reemplaza el panel que tenga el foco. Presione **Cmd+\\** en macOS o **Ctrl+\\** en Windows para cerrar el panel enfocado y volver a una única sesión.374Para ver dos sesiones a la vez, mantenga presionado **Cmd** en macOS o **Ctrl** en Windows y haga clic en una sesión en la barra lateral. La sesión se abre en un segundo panel junto al que ya tiene abierto. Mientras la división está activa, hacer clic en otra sesión de la barra lateral reemplaza el panel que tenga el foco. Presione **Cmd+\\** en macOS o **Ctrl+\\** en Windows para cerrar el panel enfocado y volver a una única sesión.

375 375 

376Los worktrees se almacenan en `<project-root>/.claude/worktrees/` de forma predeterminada. Puede cambiar esto a un directorio personalizado en Configuración → Claude Code bajo "Worktree location". También puede establecer un prefijo de rama que se antepone a cada nombre de rama de worktree, lo que es útil para mantener las ramas creadas por Claude organizadas. Para eliminar un worktree cuando haya terminado, pase el cursor sobre la sesión en la barra lateral y haga clic en el icono de archivo. Para que las sesiones se archiven automáticamente cuando su solicitud de extracción se fusiona o cierra, active **Auto-archive after PR merge or close** en Configuración → Claude Code. Auto-archive solo se aplica a sesiones locales que han terminado de ejecutarse.376Los worktrees se almacenan en `<project-root>/.claude/worktrees/` de forma predeterminada. Puede cambiar esto a un directorio personalizado en Configuración → Claude Code bajo "Worktree location". También puede establecer un prefijo de rama que se antepone a cada nombre de rama de worktree, lo que es útil para mantener las ramas creadas por Claude organizadas. Para eliminar un worktree cuando haya terminado, pase el cursor sobre la sesión en la barra lateral y haga clic en el icono de archivo. Para que las sesiones se archiven automáticamente cuando su solicitud de extracción se fusiona o cierra, active **Auto-archive after PR merge or close** en Configuración → Claude Code. Auto-archive solo se aplica a sesiones locales que han terminado de ejecutarse.

377 377 

378Para incluir archivos ignorados por git como `.env` en nuevos worktrees, cree un [archivo `.worktreeinclude`](/es/worktrees#copy-gitignored-files-into-worktrees) en la raíz de su proyecto.378Para incluir archivos ignorados por git como `.env` en nuevos worktrees, cree un [archivo `.worktreeinclude`](/docs/es/worktrees#copy-gitignored-files-into-worktrees) en la raíz de su proyecto.

379 379 

380<Note>380<Note>

381 El aislamiento de sesión requiere [Git](https://git-scm.com/downloads). La mayoría de las Macs incluyen Git de forma predeterminada. Ejecute `git --version` en Terminal para verificar. En Windows, Git es necesario para que la pestaña Code funcione: [descargue Git para Windows](https://git-scm.com/downloads/win), instálelo y reinicie la aplicación. Si encuentra errores de Git, pida ayuda a Claude en la [pestaña Cowork](https://claude.com/product/cowork) para solucionar problemas de su configuración.381 El aislamiento de sesión requiere [Git](https://git-scm.com/downloads). La mayoría de las Macs incluyen Git de forma predeterminada. Ejecute `git --version` en Terminal para verificar. En Windows, Git es necesario para que la pestaña Code funcione: [descargue Git para Windows](https://git-scm.com/downloads/win), instálelo y reinicie la aplicación. Si encuentra errores de Git, pida ayuda a Claude en la [pestaña Cowork](https://claude.com/product/cowork) para solucionar problemas de su configuración.

382</Note>382</Note>

383 383 

384Use los controles en la parte superior de la barra lateral para filtrar sesiones por estado, proyecto o entorno, y para agrupar sesiones por proyecto. Para renombrar una sesión, haga clic en el título de la sesión en la barra de herramientas en la parte superior de la sesión activa. Para verificar el uso del contexto, consulte [Verificar uso](#check-usage). Cuando el contexto se llena, Claude resume automáticamente la conversación y continúa trabajando. También puede escribir `/compact` para activar la compresión antes y liberar espacio de contexto. Consulte [la ventana de contexto](/es/how-claude-code-works#the-context-window) para obtener detalles sobre cómo funciona la compresión.384Use los controles en la parte superior de la barra lateral para filtrar sesiones por estado, proyecto o entorno, y para agrupar sesiones por proyecto. Para renombrar una sesión, haga clic en el título de la sesión en la barra de herramientas en la parte superior de la sesión activa. Para verificar el uso del contexto, consulte [Verificar uso](#check-usage). Cuando el contexto se llena, Claude resume automáticamente la conversación y continúa trabajando. También puede escribir `/compact` para activar la compresión antes y liberar espacio de contexto. Consulte [la ventana de contexto](/docs/es/how-claude-code-works#the-context-window) para obtener detalles sobre cómo funciona la compresión.

385 385 

386La aplicación de escritorio envía una notificación del sistema operativo cuando una sesión de Code termina una tarea y usted no está viendo actualmente esa sesión.386La aplicación de escritorio envía una notificación del sistema operativo cuando una sesión de Code termina una tarea y usted no está viendo actualmente esa sesión.

387 387 


397 Ver tareas en segundo plano397 Ver tareas en segundo plano

398</h3>398</h3>

399 399 

400El panel de tareas muestra el trabajo en segundo plano que se ejecuta dentro de la sesión actual: subagentes, comandos de shell en segundo plano y [flujos de trabajo dinámicos](/es/workflows). Ábralo desde el menú **Views** o arrástrelo a su diseño.400El panel de tareas muestra el trabajo en segundo plano que se ejecuta dentro de la sesión actual: subagentes, comandos de shell en segundo plano y [flujos de trabajo dinámicos](/docs/es/workflows). Ábralo desde el menú **Views** o arrástrelo a su diseño.

401 401 

402Haga clic en cualquier entrada para ver su salida en el panel de subagente o detenerla. Para ver qué están haciendo otras sesiones, use la [barra lateral](#work-in-parallel-with-sessions).402Haga clic en cualquier entrada para ver su salida en el panel de subagente o detenerla. Para ver qué están haciendo otras sesiones, use la [barra lateral](#work-in-parallel-with-sessions).

403 403 


409 409 

410Las sesiones remotas también admiten múltiples repositorios. Después de seleccionar un entorno en la nube, haga clic en el botón **+** junto a la píldora de repositorio para agregar repositorios adicionales a la sesión. Cada repositorio obtiene su propio selector de rama. Esto es útil para tareas que abarcan múltiples bases de código, como actualizar una biblioteca compartida y sus consumidores.410Las sesiones remotas también admiten múltiples repositorios. Después de seleccionar un entorno en la nube, haga clic en el botón **+** junto a la píldora de repositorio para agregar repositorios adicionales a la sesión. Cada repositorio obtiene su propio selector de rama. Esto es útil para tareas que abarcan múltiples bases de código, como actualizar una biblioteca compartida y sus consumidores.

411 411 

412Consulte [Claude Code en la web](/es/claude-code-on-the-web) para obtener más información sobre cómo funcionan las sesiones remotas.412Consulte [Claude Code en la web](/docs/es/claude-code-on-the-web) para obtener más información sobre cómo funcionan las sesiones remotas.

413 413 

414<h3 id="continue-in-another-surface">414<h3 id="continue-in-another-surface">

415 Continuar en otra superficie415 Continuar en otra superficie


434 434 

435Para configuración, emparejamiento y configuración de Dispatch, consulte el [artículo de ayuda de Dispatch](https://support.claude.com/en/articles/13947068). Dispatch requiere un plan Pro o Max y no está disponible en planes Team o Enterprise.435Para configuración, emparejamiento y configuración de Dispatch, consulte el [artículo de ayuda de Dispatch](https://support.claude.com/en/articles/13947068). Dispatch requiere un plan Pro o Max y no está disponible en planes Team o Enterprise.

436 436 

437Dispatch es una de varias formas de trabajar con Claude cuando está lejos de su terminal. Consulte [Plataformas e integraciones](/es/platforms#work-when-you-are-away-from-your-terminal) para compararlo con Remote Control, Channels, Slack y tareas programadas.437Dispatch es una de varias formas de trabajar con Claude cuando está lejos de su terminal. Consulte [Plataformas e integraciones](/docs/es/platforms#work-when-you-are-away-from-your-terminal) para compararlo con Remote Control, Channels, Slack y tareas programadas.

438 438 

439<h2 id="extend-claude-code">439<h2 id="extend-claude-code">

440 Extender Claude Code440 Extender Claude Code


446 Conectar herramientas externas446 Conectar herramientas externas

447</h3>447</h3>

448 448 

449Para sesiones locales y [SSH](#ssh-sessions), haga clic en el botón **+** junto al cuadro de solicitud y seleccione **Connectors** para agregar integraciones como Google Calendar, Slack, GitHub, Linear, Notion y más. Puede agregar conectores antes o durante una sesión. El botón **+** no está disponible en sesiones en la nube o WSL, pero [routines](/es/routines) configuran conectores en el momento de la creación de la rutina.449Para sesiones locales y [SSH](#ssh-sessions), haga clic en el botón **+** junto al cuadro de solicitud y seleccione **Connectors** para agregar integraciones como Google Calendar, Slack, GitHub, Linear, Notion y más. Puede agregar conectores antes o durante una sesión. El botón **+** no está disponible en sesiones en la nube o WSL, pero [routines](/docs/es/routines) configuran conectores en el momento de la creación de la rutina.

450 450 

451Para administrar o desconectar conectores, vaya a Configuración → Connectors en la aplicación de escritorio, o seleccione **Manage connectors** desde el menú Connectors en el cuadro de solicitud.451Para administrar o desconectar conectores, vaya a Configuración → Connectors en la aplicación de escritorio, o seleccione **Manage connectors** desde el menú Connectors en el cuadro de solicitud.

452 452 

453Una vez conectado, Claude puede leer su calendario, enviar mensajes, crear problemas e interactuar con sus herramientas directamente. Puede preguntarle a Claude qué conectores están configurados en su sesión.453Una vez conectado, Claude puede leer su calendario, enviar mensajes, crear problemas e interactuar con sus herramientas directamente. Puede preguntarle a Claude qué conectores están configurados en su sesión.

454 454 

455Los conectores son [MCP servers](/es/mcp) con un flujo de configuración gráfico. Úselos para integración rápida con servicios compatibles. Para integraciones no listadas en Connectors, agregue MCP servers manualmente a través de [archivos de configuración](/es/mcp#installing-mcp-servers). También puede [crear conectores personalizados](https://support.claude.com/en/articles/11175166-getting-started-with-custom-connectors-using-remote-mcp).455Los conectores son [MCP servers](/docs/es/mcp) con un flujo de configuración gráfico. Úselos para integración rápida con servicios compatibles. Para integraciones no listadas en Connectors, agregue MCP servers manualmente a través de [archivos de configuración](/docs/es/mcp#installing-mcp-servers). También puede [crear conectores personalizados](https://support.claude.com/en/articles/11175166-getting-started-with-custom-connectors-using-remote-mcp).

456 456 

457<h3 id="use-skills">457<h3 id="use-skills">

458 Usar skills458 Usar skills

459</h3>459</h3>

460 460 

461[Skills](/es/skills) extienden lo que Claude puede hacer. Claude los carga automáticamente cuando son relevantes, o puede invocar uno directamente: escriba `/` en el cuadro de solicitud o haga clic en el botón **+** y seleccione **Slash commands** para ver lo que está disponible. Esto incluye [comandos integrados](/es/commands), sus [skills personalizados](/es/skills#create-your-first-skill), skills del proyecto desde su base de código y skills de cualquier [plugin instalado](/es/plugins). Seleccione uno y aparecerá resaltado en el campo de entrada. Escriba su tarea después de él y envíe como de costumbre.461[Skills](/docs/es/skills) extienden lo que Claude puede hacer. Claude los carga automáticamente cuando son relevantes, o puede invocar uno directamente: escriba `/` en el cuadro de solicitud o haga clic en el botón **+** y seleccione **Slash commands** para ver lo que está disponible. Esto incluye [comandos integrados](/docs/es/commands), sus [skills personalizados](/docs/es/skills#create-your-first-skill), skills del proyecto desde su base de código y skills de cualquier [plugin instalado](/docs/es/plugins). Seleccione uno y aparecerá resaltado en el campo de entrada. Escriba su tarea después de él y envíe como de costumbre.

462 462 

463Puede enviar un comando mientras Claude está trabajando, igual que cualquier otro mensaje, y la sesión vuelve a estar inactiva una vez que se completa el turno. Antes de v2.1.206, un comando enviado a mitad de turno podría dejar la sesión mostrándose como en ejecución y los mensajes que envió después no se entregaban.463Puede enviar un comando mientras Claude está trabajando, igual que cualquier otro mensaje, y la sesión vuelve a estar inactiva una vez que se completa el turno. Antes de v2.1.206, un comando enviado a mitad de turno podría dejar la sesión mostrándose como en ejecución y los mensajes que envió después no se entregaban.

464 464 


466 Instalar plugins466 Instalar plugins

467</h3>467</h3>

468 468 

469[Plugins](/es/plugins) son paquetes reutilizables que agregan skills, agentes, hooks, MCP servers y configuraciones LSP a Claude Code. Puede instalar plugins desde la aplicación de escritorio sin usar la terminal.469[Plugins](/docs/es/plugins) son paquetes reutilizables que agregan skills, agentes, hooks, MCP servers y configuraciones LSP a Claude Code. Puede instalar plugins desde la aplicación de escritorio sin usar la terminal.

470 470 

471Para sesiones locales y [SSH](#ssh-sessions), haga clic en el botón **+** junto al cuadro de solicitud y seleccione **Plugins** para ver sus plugins instalados y sus skills. Para agregar un plugin, seleccione **Add plugin** del submenú para abrir el navegador de plugins, que muestra plugins disponibles desde sus [marketplaces](/es/plugin-marketplaces) configurados incluyendo el marketplace oficial de Anthropic. Seleccione **Manage plugins** para habilitar, deshabilitar o desinstalar plugins.471Para sesiones locales y [SSH](#ssh-sessions), haga clic en el botón **+** junto al cuadro de solicitud y seleccione **Plugins** para ver sus plugins instalados y sus skills. Para agregar un plugin, seleccione **Add plugin** del submenú para abrir el navegador de plugins, que muestra plugins disponibles desde sus [marketplaces](/docs/es/plugin-marketplaces) configurados incluyendo el marketplace oficial de Anthropic. Seleccione **Manage plugins** para habilitar, deshabilitar o desinstalar plugins.

472 472 

473Los plugins pueden estar limitados a su cuenta de usuario, un proyecto específico o solo locales. Si su organización gestiona plugins centralmente, esos plugins están disponibles en sesiones de escritorio de la misma manera que en la CLI. Los plugins no están disponibles para sesiones en la nube o WSL. Para la referencia completa de plugins incluyendo crear sus propios plugins, consulte [plugins](/es/plugins).473Los plugins pueden estar limitados a su cuenta de usuario, un proyecto específico o solo locales. Si su organización gestiona plugins centralmente, esos plugins están disponibles en sesiones de escritorio de la misma manera que en la CLI. Los plugins no están disponibles para sesiones en la nube o WSL. Para la referencia completa de plugins incluyendo crear sus propios plugins, consulte [plugins](/docs/es/plugins).

474 474 

475<h3 id="configure-preview-servers">475<h3 id="configure-preview-servers">

476 Configurar servidores de vista previa476 Configurar servidores de vista previa


636* **Local**: se ejecuta en su máquina con acceso directo a sus archivos636* **Local**: se ejecuta en su máquina con acceso directo a sus archivos

637* **Remote**: se ejecuta en la infraestructura en la nube de Anthropic. Las sesiones continúan incluso si cierra la aplicación.637* **Remote**: se ejecuta en la infraestructura en la nube de Anthropic. Las sesiones continúan incluso si cierra la aplicación.

638* **SSH**: se ejecuta en una máquina remota a la que se conecta a través de SSH, como sus propios servidores, máquinas virtuales en la nube o contenedores de desarrollo638* **SSH**: se ejecuta en una máquina remota a la que se conecta a través de SSH, como sus propios servidores, máquinas virtuales en la nube o contenedores de desarrollo

639* **WSL** (Windows): se ejecuta dentro de una [distribución WSL 2](/es/desktop-wsl) en su máquina, utilizando su cadena de herramientas Linux y rutas nativas639* **WSL** (Windows): se ejecuta dentro de una [distribución WSL 2](/docs/es/desktop-wsl) en su máquina, utilizando su cadena de herramientas Linux y rutas nativas

640 640 

641<h3 id="local-sessions">641<h3 id="local-sessions">

642 Sesiones locales642 Sesiones locales


644 644 

645La aplicación de escritorio no siempre hereda su entorno de shell completo. En macOS, cuando inicia la aplicación desde el Dock o Finder, lee su perfil de shell, como `~/.zshrc` o `~/.bashrc`, para extraer `PATH` y un conjunto fijo de variables de Claude Code, pero otras variables que exporta allí no se recogen. En Windows, la aplicación hereda variables de entorno de usuario y sistema pero no lee perfiles de PowerShell.645La aplicación de escritorio no siempre hereda su entorno de shell completo. En macOS, cuando inicia la aplicación desde el Dock o Finder, lee su perfil de shell, como `~/.zshrc` o `~/.bashrc`, para extraer `PATH` y un conjunto fijo de variables de Claude Code, pero otras variables que exporta allí no se recogen. En Windows, la aplicación hereda variables de entorno de usuario y sistema pero no lee perfiles de PowerShell.

646 646 

647Para establecer variables de entorno para sesiones locales y servidores de desarrollo en cualquier plataforma, abra el menú desplegable de entorno en el cuadro de solicitud, pase el cursor sobre **Local** y haga clic en el icono de engranaje para abrir el editor de entorno local. Las variables que guarda aquí se almacenan cifradas en su máquina y se aplican a cada sesión local y servidor de vista previa que inicia. También puede agregar variables a la clave `env` en su archivo `~/.claude/settings.json`, aunque estas llegan solo a sesiones de Claude y no a servidores de desarrollo. Consulte [variables de entorno](/es/env-vars) para la lista completa de variables compatibles.647Para establecer variables de entorno para sesiones locales y servidores de desarrollo en cualquier plataforma, abra el menú desplegable de entorno en el cuadro de solicitud, pase el cursor sobre **Local** y haga clic en el icono de engranaje para abrir el editor de entorno local. Las variables que guarda aquí se almacenan cifradas en su máquina y se aplican a cada sesión local y servidor de vista previa que inicia. También puede agregar variables a la clave `env` en su archivo `~/.claude/settings.json`, aunque estas llegan solo a sesiones de Claude y no a servidores de desarrollo. Consulte [variables de entorno](/docs/es/env-vars) para la lista completa de variables compatibles.

648 648 

649[Extended thinking](/es/model-config#extended-thinking) está habilitado de forma predeterminada, lo que mejora el rendimiento en tareas de razonamiento complejo pero usa tokens adicionales. Para deshabilitar el pensamiento, establezca `MAX_THINKING_TOKENS` en `0` en el editor de entorno local; esto no tiene efecto en Fable 5, que siempre usa extended thinking. En [proveedores de terceros](/es/third-party-integrations), `0` omite el parámetro `thinking` en su lugar, y los modelos de razonamiento adaptativo aún pueden pensar. En modelos con [razonamiento adaptativo](/es/model-config#adjust-effort-level), cualquier otro valor de `MAX_THINKING_TOKENS` se ignora porque el razonamiento adaptativo controla la profundidad del pensamiento en su lugar. En Opus 4.6 y Sonnet 4.6, establezca `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` en `1` para usar un presupuesto de pensamiento fijo; Fable 5, Sonnet 5 y Opus 4.7 y posteriores siempre usan razonamiento adaptativo y no tienen modo de presupuesto fijo.649[Extended thinking](/docs/es/model-config#extended-thinking) está habilitado de forma predeterminada, lo que mejora el rendimiento en tareas de razonamiento complejo pero usa tokens adicionales. Para deshabilitar el pensamiento, establezca `MAX_THINKING_TOKENS` en `0` en el editor de entorno local; esto no tiene efecto en Fable 5, que siempre usa extended thinking. En [proveedores de terceros](/docs/es/third-party-integrations), `0` omite el parámetro `thinking` en su lugar, y los modelos de razonamiento adaptativo aún pueden pensar. En modelos con [razonamiento adaptativo](/docs/es/model-config#adjust-effort-level), cualquier otro valor de `MAX_THINKING_TOKENS` se ignora porque el razonamiento adaptativo controla la profundidad del pensamiento en su lugar. En Opus 4.6 y Sonnet 4.6, establezca `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` en `1` para usar un presupuesto de pensamiento fijo; Fable 5, Sonnet 5 y Opus 4.7 y posteriores siempre usan razonamiento adaptativo y no tienen modo de presupuesto fijo.

650 650 

651<h3 id="cloud-sessions">651<h3 id="cloud-sessions">

652 Sesiones remotas652 Sesiones remotas

653</h3>653</h3>

654 654 

655Las sesiones remotas continúan en segundo plano incluso si cierra la aplicación. El uso cuenta hacia los límites de su [plan de suscripción](/es/costs) sin cargos de computación separados.655Las sesiones remotas continúan en segundo plano incluso si cierra la aplicación. El uso cuenta hacia los límites de su [plan de suscripción](/docs/es/costs) sin cargos de computación separados.

656 656 

657Puede crear entornos en la nube personalizados con diferentes niveles de acceso a la red y variables de entorno. Seleccione el menú desplegable de entorno al iniciar una sesión remota y elija **Add environment**. Consulte [el entorno en la nube](/es/claude-code-on-the-web#the-cloud-environment) para obtener detalles sobre la configuración del acceso a la red y variables de entorno.657Puede crear entornos en la nube personalizados con diferentes niveles de acceso a la red y variables de entorno. Seleccione el menú desplegable de entorno al iniciar una sesión remota y elija **Add environment**. Consulte [el entorno en la nube](/docs/es/claude-code-on-the-web#the-cloud-environment) para obtener detalles sobre la configuración del acceso a la red y variables de entorno.

658 658 

659<h3 id="ssh-sessions">659<h3 id="ssh-sessions">

660 Sesiones SSH660 Sesiones SSH


677 Pre-configurar conexiones SSH para su equipo677 Pre-configurar conexiones SSH para su equipo

678</h4>678</h4>

679 679 

680Los administradores pueden distribuir conexiones SSH a los miembros del equipo agregando `sshConfigs` a un archivo de [configuración administrada](/es/settings#settings-precedence). Las conexiones definidas de esta manera aparecen en el menú desplegable de entorno de cada usuario automáticamente y se muestran como administradas, por lo que los usuarios pueden seleccionarlas pero no pueden editarlas ni eliminarlas en la aplicación.680Los administradores pueden distribuir conexiones SSH a los miembros del equipo agregando `sshConfigs` a un archivo de [configuración administrada](/docs/es/settings#settings-precedence). Las conexiones definidas de esta manera aparecen en el menú desplegable de entorno de cada usuario automáticamente y se muestran como administradas, por lo que los usuarios pueden seleccionarlas pero no pueden editarlas ni eliminarlas en la aplicación.

681 681 

682El siguiente ejemplo pre-configura una única conexión que se abre en `~/projects` en el host remoto:682El siguiente ejemplo pre-configura una única conexión que se abre en `~/projects` en el host remoto:

683 683 


702 Restringir a qué hosts SSH pueden conectarse los usuarios702 Restringir a qué hosts SSH pueden conectarse los usuarios

703</h4>703</h4>

704 704 

705Los administradores pueden limitar las sesiones SSH de Desktop a un conjunto aprobado de hosts agregando `sshHostAllowlist` a un archivo de [configuración administrada](/es/settings#settings-precedence). Cuando se establece, los usuarios solo pueden conectarse a hosts cuyo nombre de host resuelto coincida con uno de los patrones. Establézcalo en una matriz vacía para deshabilitar completamente las sesiones SSH.705Los administradores pueden limitar las sesiones SSH de Desktop a un conjunto aprobado de hosts agregando `sshHostAllowlist` a un archivo de [configuración administrada](/docs/es/settings#settings-precedence). Cuando se establece, los usuarios solo pueden conectarse a hosts cuyo nombre de host resuelto coincida con uno de los patrones. Establézcalo en una matriz vacía para deshabilitar completamente las sesiones SSH.

706 706 

707El siguiente ejemplo permite conexiones a cualquier host bajo `devboxes.example.com` y a un único host bastión nombrado:707El siguiente ejemplo permite conexiones a cualquier host bajo `devboxes.example.com` y a un único host bastión nombrado:

708 708 


729Estas configuraciones se configuran a través de la [consola de configuración de administración](https://claude.ai/admin-settings/claude-code):729Estas configuraciones se configuran a través de la [consola de configuración de administración](https://claude.ai/admin-settings/claude-code):

730 730 

731* **Code in the desktop**: controle si los usuarios en su organización pueden acceder a Claude Code en la aplicación de escritorio731* **Code in the desktop**: controle si los usuarios en su organización pueden acceder a Claude Code en la aplicación de escritorio

732* **Code in the web**: habilite o deshabilite [sesiones web](/es/claude-code-on-the-web) para su organización732* **Code in the web**: habilite o deshabilite [sesiones web](/docs/es/claude-code-on-the-web) para su organización

733* **Remote Control**: habilite o deshabilite [Remote Control](/es/remote-control) para su organización733* **Remote Control**: habilite o deshabilite [Remote Control](/docs/es/remote-control) para su organización

734* **Disable Bypass permissions mode**: evite que los usuarios en su organización habiliten el modo bypass permissions734* **Disable Bypass permissions mode**: evite que los usuarios en su organización habiliten el modo bypass permissions

735 735 

736<h3 id="managed-settings">736<h3 id="managed-settings">

737 Configuración administrada737 Configuración administrada

738</h3>738</h3>

739 739 

740La configuración administrada anula la configuración del proyecto y usuario y se aplica a las sesiones de Claude Code en Desktop. Puede establecer estas claves en el archivo de [configuración administrada](/es/settings#settings-precedence) de su organización o enviarlas de forma remota a través de la consola de administración.740La configuración administrada anula la configuración del proyecto y usuario y se aplica a las sesiones de Claude Code en Desktop. Puede establecer estas claves en el archivo de [configuración administrada](/docs/es/settings#settings-precedence) de su organización o enviarlas de forma remota a través de la consola de administración.

741 741 

742| Clave | Descripción |742| Clave | Descripción |

743| ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |743| ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

744| `permissions.disableBypassPermissionsMode` | establezca en `"disable"` para evitar que los usuarios habiliten el modo bypass permissions. |744| `permissions.disableBypassPermissionsMode` | establezca en `"disable"` para evitar que los usuarios habiliten el modo bypass permissions. |

745| `disableAutoMode` | establezca en `"disable"` para evitar que los usuarios habiliten el modo [Auto](/es/permission-modes#eliminate-prompts-with-auto-mode). Elimina Auto del selector de modo. También aceptado bajo `permissions`. |745| `disableAutoMode` | establezca en `"disable"` para evitar que los usuarios habiliten el modo [Auto](/docs/es/permission-modes#eliminate-prompts-with-auto-mode). Elimina Auto del selector de modo. También aceptado bajo `permissions`. |

746| `autoMode` | personalice lo que el clasificador de modo auto confía y bloquea en toda su organización. Consulte [Configurar el modo auto](/es/auto-mode-config). |746| `autoMode` | personalice lo que el clasificador de modo auto confía y bloquea en toda su organización. Consulte [Configurar el modo auto](/docs/es/auto-mode-config). |

747| `browserExternalPageTools` | establezca en `"disabled"` para evitar que Claude use herramientas para leer o actuar en páginas externas en el [panel del navegador](#browse-external-sites). Los usuarios aún pueden navegar a sitios externos por sí mismos, y las vistas previas del servidor de desarrollo local no se ven afectadas. |747| `browserExternalPageTools` | establezca en `"disabled"` para evitar que Claude use herramientas para leer o actuar en páginas externas en el [panel del navegador](#browse-external-sites). Los usuarios aún pueden navegar a sitios externos por sí mismos, y las vistas previas del servidor de desarrollo local no se ven afectadas. |

748| `disableBrowserExternalNavigation` | establezca en `true` para desactivar completamente la navegación externa en el [panel del navegador](#browse-external-sites). Ni los usuarios ni Claude pueden navegar a sitios externos, y las vistas previas del servidor de desarrollo localhost no se ven afectadas. El valor debe ser el booleano JSON `true`; la cadena `"true"` se ignora. |748| `disableBrowserExternalNavigation` | establezca en `true` para desactivar completamente la navegación externa en el [panel del navegador](#browse-external-sites). Ni los usuarios ni Claude pueden navegar a sitios externos, y las vistas previas del servidor de desarrollo localhost no se ven afectadas. El valor debe ser el booleano JSON `true`; la cadena `"true"` se ignora. |

749| `sshConfigs` | pre-configure [conexiones SSH](#pre-configure-ssh-connections-for-your-team) que aparecen en el menú desplegable de entorno. Los usuarios no pueden editar ni eliminar conexiones administradas. |749| `sshConfigs` | pre-configure [conexiones SSH](#pre-configure-ssh-connections-for-your-team) que aparecen en el menú desplegable de entorno. Los usuarios no pueden editar ni eliminar conexiones administradas. |

750| `sshHostAllowlist` | restrinja [sesiones SSH](#restrict-which-ssh-hosts-users-can-connect-to) a hosts cuyo nombre de host resuelto coincida con uno de estos patrones. Una matriz vacía deshabilita las sesiones SSH. Se lee solo desde configuración administrada. |750| `sshHostAllowlist` | restrinja [sesiones SSH](#restrict-which-ssh-hosts-users-can-connect-to) a hosts cuyo nombre de host resuelto coincida con uno de estos patrones. Una matriz vacía deshabilita las sesiones SSH. Se lee solo desde configuración administrada. |

751| `managedMcpServers` | envíe configuraciones de servidor MCP a todos los usuarios en una implementación de terceros. Cada entrada especifica un transporte de `"http"`, `"sse"` o `"stdio"`, detalles de conexión y opcionalmente un mapa `toolPolicy` que restringe qué herramientas en ese servidor pueden invocar los usuarios. Disponible solo en implementaciones de Desktop de terceros (3P). Entregue esta clave a través del archivo de configuración administrada o MDM, ya que las implementaciones de terceros no reciben configuraciones de consola de administración. |751| `managedMcpServers` | envíe configuraciones de servidor MCP a todos los usuarios en una implementación de terceros. Cada entrada especifica un transporte de `"http"`, `"sse"` o `"stdio"`, detalles de conexión y opcionalmente un mapa `toolPolicy` que restringe qué herramientas en ese servidor pueden invocar los usuarios. Disponible solo en implementaciones de Desktop de terceros (3P). Entregue esta clave a través del archivo de configuración administrada o MDM, ya que las implementaciones de terceros no reciben configuraciones de consola de administración. |

752 752 

753Las restricciones de modelo como [`availableModels`](/es/model-config#restrict-model-selection) se aplican en las sesiones de Claude Code de Desktop de la misma manera que en la CLI de terminal; consulte [cobertura de superficie](/es/model-config#surface-coverage).753Las restricciones de modelo como [`availableModels`](/docs/es/model-config#restrict-model-selection) se aplican en las sesiones de Claude Code de Desktop de la misma manera que en la CLI de terminal; consulte [cobertura de superficie](/docs/es/model-config#surface-coverage).

754 754 

755* **Sesiones locales en esta máquina**: se aplica un archivo de configuración administrada implementado en disco. La configuración administrada enviada de forma remota a través de la consola de administración también llega a estas sesiones en la API de Anthropic cuando la sesión se autentica con un inicio de sesión de organización o una clave API configurada directamente, siguiendo la misma [precedencia de configuración](/es/settings#settings-precedence) que la CLI de terminal.755* **Sesiones locales en esta máquina**: se aplica un archivo de configuración administrada implementado en disco. La configuración administrada enviada de forma remota a través de la consola de administración también llega a estas sesiones en la API de Anthropic cuando la sesión se autentica con un inicio de sesión de organización o una clave API configurada directamente, siguiendo la misma [precedencia de configuración](/docs/es/settings#settings-precedence) que la CLI de terminal.

756* **[Sesiones en la nube](#cloud-sessions)**: se ejecutan en máquinas virtuales administradas por Anthropic y reciben solo [configuración administrada por servidor](/es/server-managed-settings).756* **[Sesiones en la nube](#cloud-sessions)**: se ejecutan en máquinas virtuales administradas por Anthropic y reciben solo [configuración administrada por servidor](/docs/es/server-managed-settings).

757* **[Sesiones SSH](#ssh-sessions)**: la sesión lee el archivo de configuración administrada desde el host remoto. Desktop mismo lee `sshConfigs` y `sshHostAllowlist` desde la configuración administrada de la máquina local al crear la conexión.757* **[Sesiones SSH](#ssh-sessions)**: la sesión lee el archivo de configuración administrada desde el host remoto. Desktop mismo lee `sshConfigs` y `sshHostAllowlist` desde la configuración administrada de la máquina local al crear la conexión.

758 758 

759`permissions.disableBypassPermissionsMode` y `disableAutoMode` también funcionan en configuración de usuario y proyecto, pero colocarlos en configuración administrada evita que los usuarios los anulen.759`permissions.disableBypassPermissionsMode` y `disableAutoMode` también funcionan en configuración de usuario y proyecto, pero colocarlos en configuración administrada evita que los usuarios los anulen.

760 760 

761{/* min-version: 2.1.207 */}Claude Code lee `autoMode` desde configuración de usuario, la bandera `--settings` y configuración administrada, pero no desde `.claude/settings.json` o `.claude/settings.local.json`: ambos archivos viven en el directorio del repositorio, por lo que un repositorio clonado o paso de compilación no puede inyectar sus propias reglas de clasificador. Antes de v2.1.207, Claude Code también leía `.claude/settings.local.json`.761Claude Code lee `autoMode` desde configuración de usuario, la bandera `--settings` y configuración administrada, pero no desde `.claude/settings.json` o `.claude/settings.local.json`: ambos archivos viven en el directorio del repositorio, por lo que un repositorio clonado o paso de compilación no puede inyectar sus propias reglas de clasificador. Antes de v2.1.207, Claude Code también leía `.claude/settings.local.json`.

762 762 

763Para la lista completa de configuraciones solo administradas incluyendo `allowManagedPermissionRulesOnly` y `allowManagedHooksOnly`, consulte [configuraciones solo administradas](/es/permissions#managed-only-settings).763Para la lista completa de configuraciones solo administradas incluyendo `allowManagedPermissionRulesOnly` y `allowManagedHooksOnly`, consulte [configuraciones solo administradas](/docs/es/permissions#managed-only-settings).

764 764 

765<h3 id="device-management-policies">765<h3 id="device-management-policies">

766 Políticas de gestión de dispositivos766 Políticas de gestión de dispositivos


790*.claudemcpcontent.com790*.claudemcpcontent.com

791```791```

792 792 

793El tráfico es HTTPS en el puerto 443 a menos que configure un puerto personalizado para [OTLP](/es/monitoring-usage), una puerta de enlace LLM o un servidor MCP.793El tráfico es HTTPS en el puerto 443 a menos que configure un puerto personalizado para [OTLP](/docs/es/monitoring-usage), una puerta de enlace LLM o un servidor MCP.

794 794 

795Para servidores proxy, autoridades de certificados personalizadas, mTLS y los dominios que necesita la CLI independiente, consulte [configuración de red](/es/network-config).795Para servidores proxy, autoridades de certificados personalizadas, mTLS y los dominios que necesita la CLI independiente, consulte [configuración de red](/docs/es/network-config).

796 796 

797Para reducir el número de caracteres comodín de firewall, permita estos hosts de Anthropic en su lugar. Ciertos subdominios se generan dinámicamente y deben permanecer como caracteres comodín.797Para reducir el número de caracteres comodín de firewall, permita estos hosts de Anthropic en su lugar. Ciertos subdominios se generan dinámicamente y deben permanecer como caracteres comodín.

798 798 


820 Autenticación y SSO820 Autenticación y SSO

821</h3>821</h3>

822 822 

823Las organizaciones empresariales pueden requerir SSO para todos los usuarios. Consulte [autenticación](/es/authentication) para obtener detalles a nivel de plan y [Configurar SSO](https://support.claude.com/en/articles/13132885-setting-up-single-sign-on-sso) para la configuración de SAML; la configuración de OIDC se cubre en la [Guía del administrador empresarial de Claude](https://claude.com/resources/tutorials/claude-enterprise-administrator-guide).823Las organizaciones empresariales pueden requerir SSO para todos los usuarios. Consulte [autenticación](/docs/es/authentication) para obtener detalles a nivel de plan y [Configurar SSO](https://support.claude.com/en/articles/13132885-setting-up-single-sign-on-sso) para la configuración de SAML; la configuración de OIDC se cubre en la [Guía del administrador empresarial de Claude](https://claude.com/resources/tutorials/claude-enterprise-administrator-guide).

824 824 

825<h3 id="data-handling">825<h3 id="data-handling">

826 Manejo de datos826 Manejo de datos

827</h3>827</h3>

828 828 

829Claude Code procesa su código localmente en sesiones locales o en la infraestructura en la nube de Anthropic en sesiones en la nube. Las conversaciones y el contexto del código se envían a la API de Anthropic para procesamiento. Consulte [manejo de datos](/es/data-usage) para obtener detalles sobre retención de datos, privacidad y cumplimiento.829Claude Code procesa su código localmente en sesiones locales o en la infraestructura en la nube de Anthropic en sesiones en la nube. Las conversaciones y el contexto del código se envían a la API de Anthropic para procesamiento. Consulte [manejo de datos](/docs/es/data-usage) para obtener detalles sobre retención de datos, privacidad y cumplimiento.

830 830 

831<h3 id="deployment">831<h3 id="deployment">

832 Implementación832 Implementación


837* **macOS**: distribuya a través de MDM como Jamf o Kandji usando el instalador `.dmg`837* **macOS**: distribuya a través de MDM como Jamf o Kandji usando el instalador `.dmg`

838* **Windows**: implemente a través del paquete MSIX. Consulte [Deploy Claude Desktop for Windows](https://support.claude.com/en/articles/12622703-deploy-claude-desktop-for-windows) para opciones de implementación empresarial incluyendo instalación silenciosa838* **Windows**: implemente a través del paquete MSIX. Consulte [Deploy Claude Desktop for Windows](https://support.claude.com/en/articles/12622703-deploy-claude-desktop-for-windows) para opciones de implementación empresarial incluyendo instalación silenciosa

839 839 

840Para los dominios a permitir en su firewall, consulte [requisitos de acceso a la red](#network-access-requirements) arriba. Para configuración de proxy, autoridades de certificados personalizadas y puertas de enlace LLM, consulte [configuración de red](/es/network-config).840Para los dominios a permitir en su firewall, consulte [requisitos de acceso a la red](#network-access-requirements) arriba. Para configuración de proxy, autoridades de certificados personalizadas y puertas de enlace LLM, consulte [configuración de red](/docs/es/network-config).

841 841 

842Para la referencia completa de configuración empresarial, consulte la [guía de configuración empresarial](https://support.claude.com/en/articles/12622667-enterprise-configuration).842Para la referencia completa de configuración empresarial, consulte la [guía de configuración empresarial](https://support.claude.com/en/articles/12622667-enterprise-configuration).

843 843 


866| `--permission-mode` | Selector de modo junto al botón de envío |866| `--permission-mode` | Selector de modo junto al botón de envío |

867| `--dangerously-skip-permissions` | Modo Bypass permissions. En planes Pro y Max, habilítelo en Configuración → Claude Code → "Allow bypass permissions mode"; en planes Team y Enterprise, la política de la organización lo controla |867| `--dangerously-skip-permissions` | Modo Bypass permissions. En planes Pro y Max, habilítelo en Configuración → Claude Code → "Allow bypass permissions mode"; en planes Team y Enterprise, la política de la organización lo controla |

868| `--add-dir` | Agregue múltiples repositorios con el botón **+** en sesiones remotas |868| `--add-dir` | Agregue múltiples repositorios con el botón **+** en sesiones remotas |

869| `--allowedTools`, `--disallowedTools` | Sin equivalente por sesión. Las reglas de permisos en [archivos de configuración](/es/settings) aún se aplican. |869| `--allowedTools`, `--disallowedTools` | Sin equivalente por sesión. Las reglas de permisos en [archivos de configuración](/docs/es/settings) aún se aplican. |

870| `--verbose` | Modo de vista [Verbose](#switch-view-modes) en el menú desplegable de vista de transcripción |870| `--verbose` | Modo de vista [Verbose](#switch-view-modes) en el menú desplegable de vista de transcripción |

871| `--print`, `--output-format` | No disponible. Desktop es solo interactivo. |871| `--print`, `--output-format` | No disponible. Desktop es solo interactivo. |

872| Variable de entorno `ANTHROPIC_MODEL` | Menú desplegable de modelo junto al botón de envío |872| Variable de entorno `ANTHROPIC_MODEL` | Menú desplegable de modelo junto al botón de envío |


878 878 

879Desktop y CLI leen los mismos archivos de configuración, por lo que su configuración se transfiere:879Desktop y CLI leen los mismos archivos de configuración, por lo que su configuración se transfiere:

880 880 

881* Los archivos **[CLAUDE.md](/es/memory)** y `CLAUDE.local.md` en su proyecto son utilizados por ambos881* Los archivos **[CLAUDE.md](/docs/es/memory)** y `CLAUDE.local.md` en su proyecto son utilizados por ambos

882* Los **[MCP servers](/es/mcp)** configurados en `~/.claude.json` o `.mcp.json` funcionan en ambos882* Los **[MCP servers](/docs/es/mcp)** configurados en `~/.claude.json` o `.mcp.json` funcionan en ambos

883* Los **[Hooks](/es/hooks)** y **[skills](/es/skills)** definidos en configuración se aplican a ambos883* Los **[Hooks](/docs/es/hooks)** y **[skills](/docs/es/skills)** definidos en configuración se aplican a ambos

884* La **[Configuración](/es/settings)** en `~/.claude.json` y `~/.claude/settings.json` se comparte. Las reglas de permisos, herramientas permitidas y otras configuraciones en `settings.json` se aplican a sesiones de Desktop.884* La **[Configuración](/docs/es/settings)** en `~/.claude.json` y `~/.claude/settings.json` se comparte. Las reglas de permisos, herramientas permitidas y otras configuraciones en `settings.json` se aplican a sesiones de Desktop.

885* **Modelos**: los mismos [modelos](/es/model-config#available-models) están disponibles en ambos. En Desktop, seleccione el modelo del menú desplegable junto al botón de envío. Puede cambiar el modelo durante la sesión desde el mismo menú desplegable.885* **Modelos**: los mismos [modelos](/docs/es/model-config#available-models) están disponibles en ambos. En Desktop, seleccione el modelo del menú desplegable junto al botón de envío. Puede cambiar el modelo durante la sesión desde el mismo menú desplegable.

886 886 

887<Note>887<Note>

888 **MCP servers de la aplicación de chat de Claude Desktop**: la aplicación Desktop carga MCP servers de `claude_desktop_config.json` en sesiones de la pestaña Code, junto con servidores de `~/.claude.json` y `.mcp.json`. Un servidor definido en `claude_desktop_config.json` está disponible tanto en la superficie de chat de Desktop como en la pestaña Code.888 **MCP servers de la aplicación de chat de Claude Desktop**: la aplicación Desktop carga MCP servers de `claude_desktop_config.json` en sesiones de la pestaña Code, junto con servidores de `~/.claude.json` y `.mcp.json`. Un servidor definido en `claude_desktop_config.json` está disponible tanto en la superficie de chat de Desktop como en la pestaña Code.

889 889 

890 La CLI independiente no lee `claude_desktop_config.json`. En macOS y WSL, ejecute `claude mcp add-from-claude-desktop` para copiar esos servidores en `~/.claude.json`. Consulte [Importar MCP servers desde Claude Desktop](/es/mcp#import-mcp-servers-from-claude-desktop) para el flujo de importación y opciones de alcance.890 La CLI independiente no lee `claude_desktop_config.json`. En macOS y WSL, ejecute `claude mcp add-from-claude-desktop` para copiar esos servidores en `~/.claude.json`. Consulte [Importar MCP servers desde Claude Desktop](/docs/es/mcp#import-mcp-servers-from-claude-desktop) para el flujo de importación y opciones de alcance.

891</Note>891</Note>

892 892 

893<h3 id="feature-comparison">893<h3 id="feature-comparison">

894 Comparación de características894 Comparación de características

895</h3>895</h3>

896 896 

897Esta tabla compara capacidades principales entre la CLI y Desktop. Para una lista completa de banderas de CLI, consulte la [referencia de CLI](/es/cli-reference).897Esta tabla compara capacidades principales entre la CLI y Desktop. Para una lista completa de banderas de CLI, consulte la [referencia de CLI](/docs/es/cli-reference).

898 898 

899| Característica | CLI | Desktop |899| Característica | CLI | Desktop |

900| ------------------------------------------------------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |900| ------------------------------------------------------- | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

901| Modos de permisos | Todos los modos incluyendo `dontAsk` | Manual, Aceptar ediciones, Plan y Auto. Bypass permissions aparece en el selector de modo una vez habilitado: a través del botón de alternancia de Configuración en planes Pro y Max, o a través de la política de la organización en planes Team y Enterprise |901| Modos de permisos | Todos los modos incluyendo `dontAsk` | Manual, Aceptar ediciones, Plan y Auto. Bypass permissions aparece en el selector de modo una vez habilitado: a través del botón de alternancia de Configuración en planes Pro y Max, o a través de la política de la organización en planes Team y Enterprise |

902| `--dangerously-skip-permissions` | Bandera de CLI | Modo Bypass permissions. En planes Pro y Max, habilítelo en Configuración → Claude Code → "Allow bypass permissions mode"; en planes Team y Enterprise, la política de la organización lo controla |902| `--dangerously-skip-permissions` | Bandera de CLI | Modo Bypass permissions. En planes Pro y Max, habilítelo en Configuración → Claude Code → "Allow bypass permissions mode"; en planes Team y Enterprise, la política de la organización lo controla |

903| [Proveedores de terceros](/es/third-party-integrations) | Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry | API de Anthropic de forma predeterminada. Para enrutamiento de puerta de enlace, consulte [conectar la aplicación de escritorio a una puerta de enlace](/es/llm-gateway-connect#desktop-app). Para ejecutar la pestaña Code en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o una puerta de enlace LLM autohospedada, consulte [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview). |903| [Proveedores de terceros](/docs/es/third-party-integrations) | Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry | API de Anthropic de forma predeterminada. Para enrutamiento de puerta de enlace, consulte [conectar la aplicación de escritorio a una puerta de enlace](/docs/es/llm-gateway-connect#desktop-app). Para ejecutar la pestaña Code en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o una puerta de enlace LLM autohospedada, consulte [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview). |

904| [MCP servers](/es/mcp) | Configurar en archivos de configuración | UI de Connectors para sesiones locales y SSH, o archivos de configuración |904| [MCP servers](/docs/es/mcp) | Configurar en archivos de configuración | UI de Connectors para sesiones locales y SSH, o archivos de configuración |

905| [Plugins](/es/plugins) | Comando `/plugin` | UI del administrador de plugins |905| [Plugins](/docs/es/plugins) | Comando `/plugin` | UI del administrador de plugins |

906| Archivos @mention | Basado en texto | Con autocompletado; sesiones locales y SSH solamente |906| Archivos @mention | Basado en texto | Con autocompletado; sesiones locales y SSH solamente |

907| Archivos adjuntos | No disponible | Imágenes, PDF |907| Archivos adjuntos | No disponible | Imágenes, PDF |

908| Aislamiento de sesión | Bandera [`--worktree`](/es/cli-reference) | Worktrees automáticos |908| Aislamiento de sesión | Bandera [`--worktree`](/docs/es/cli-reference) | Worktrees automáticos |

909| Múltiples sesiones | Terminales separadas | Pestañas de barra lateral |909| Múltiples sesiones | Terminales separadas | Pestañas de barra lateral |

910| Tareas recurrentes | Trabajos cron, tuberías de CI | [Tareas programadas](/es/desktop-scheduled-tasks) |910| Tareas recurrentes | Trabajos cron, tuberías de CI | [Tareas programadas](/docs/es/desktop-scheduled-tasks) |

911| Uso de computadora | [Habilitar a través de `/mcp`](/es/computer-use) en macOS | [Control de aplicaciones y pantalla](#let-claude-use-your-computer) en macOS y Windows |911| Uso de computadora | [Habilitar a través de `/mcp`](/docs/es/computer-use) en macOS | [Control de aplicaciones y pantalla](#let-claude-use-your-computer) en macOS y Windows |

912| Integración de Dispatch | No disponible | [Sesiones de Dispatch](#sessions-from-dispatch) en la barra lateral |912| Integración de Dispatch | No disponible | [Sesiones de Dispatch](#sessions-from-dispatch) en la barra lateral |

913| Scripting y automatización | [`--print`](/es/cli-reference), [Agent SDK](/es/headless) | No disponible |913| Scripting y automatización | [`--print`](/docs/es/cli-reference), [Agent SDK](/docs/es/headless) | No disponible |

914 914 

915<h3 id="what’s-not-available-in-desktop">915<h3 id="what’s-not-available-in-desktop">

916 Lo que no está disponible en Desktop916 Lo que no está disponible en Desktop


918 918 

919Las siguientes características están disponibles solo en la CLI o extensión de VS Code, excepto donde se indique:919Las siguientes características están disponibles solo en la CLI o extensión de VS Code, excepto donde se indique:

920 920 

921* **Proveedores de terceros**: Desktop se conecta a la API de Anthropic de forma predeterminada. Para enrutar Desktop a través de una puerta de enlace, consulte [conectar la aplicación de escritorio a una puerta de enlace](/es/llm-gateway-connect#desktop-app). Las implementaciones empresariales pueden configurar Google Cloud's Agent Platform y proveedores de puerta de enlace a través de [configuración administrada](https://claude.com/docs/third-party/claude-desktop/configuration). Para Amazon Bedrock o Microsoft Foundry en la CLI, consulte el [inicio rápido](/es/quickstart). Como excepción a la sección anterior, [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview) ejecuta la pestaña Code en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o una puerta de enlace LLM autohospedada.921* **Proveedores de terceros**: Desktop se conecta a la API de Anthropic de forma predeterminada. Para enrutar Desktop a través de una puerta de enlace, consulte [conectar la aplicación de escritorio a una puerta de enlace](/docs/es/llm-gateway-connect#desktop-app). Las implementaciones empresariales pueden configurar Google Cloud's Agent Platform y proveedores de puerta de enlace a través de [configuración administrada](https://claude.com/docs/third-party/claude-desktop/configuration). Para Amazon Bedrock o Microsoft Foundry en la CLI, consulte el [inicio rápido](/docs/es/quickstart). Como excepción a la sección anterior, [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview) ejecuta la pestaña Code en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o una puerta de enlace LLM autohospedada.

922* **Linux (beta)**: Computer Use aún no está disponible en la aplicación de escritorio Linux. Consulte [Claude Desktop en Linux](/es/desktop-linux).922* **Linux (beta)**: Computer Use aún no está disponible en la aplicación de escritorio Linux. Consulte [Claude Desktop en Linux](/docs/es/desktop-linux).

923* **Sugerencias de código en línea**: Desktop no proporciona sugerencias de estilo autocompletado. Funciona a través de solicitudes conversacionales y cambios de código explícitos.923* **Sugerencias de código en línea**: Desktop no proporciona sugerencias de estilo autocompletado. Funciona a través de solicitudes conversacionales y cambios de código explícitos.

924* **Equipos de agentes**: sesiones paralelas de Claude Code que se comunican entre sí están disponibles en la [CLI](/es/agent-teams), no en Desktop. Para trabajo multiagente dentro de una sesión, use [flujos de trabajo dinámicos](/es/workflows), que se ejecutan en Desktop.924* **Equipos de agentes**: sesiones paralelas de Claude Code que se comunican entre sí están disponibles en la [CLI](/docs/es/agent-teams), no en Desktop. Para trabajo multiagente dentro de una sesión, use [flujos de trabajo dinámicos](/docs/es/workflows), que se ejecutan en Desktop.

925* **Comandos de diálogo de terminal**: comandos integrados que abren un panel interactivo en la terminal se comportan de manera diferente en la pestaña Code. Edite [archivos de configuración](/es/settings) directamente para gestionar reglas de permisos y configuración, o ejecute los comandos desde la CLI independiente.925* **Comandos de diálogo de terminal**: comandos integrados que abren un panel interactivo en la terminal se comportan de manera diferente en la pestaña Code. Edite [archivos de configuración](/docs/es/settings) directamente para gestionar reglas de permisos y configuración, o ejecute los comandos desde la CLI independiente.

926 * Los comandos sin forma de argumento, como `/permissions`, responden con `isn't available in this environment`.926 * Los comandos sin forma de argumento, como `/permissions`, responden con `isn't available in this environment`.

927 * `/config` abre Configuración → Claude Code. El texto después del comando se ignora, por lo que `/config theme=dark` no establece el tema.927 * `/config` abre Configuración → Claude Code. El texto después del comando se ignora, por lo que `/config theme=dark` no establece el tema.

928 928 


930 Solución de problemas930 Solución de problemas

931</h2>931</h2>

932 932 

933Las secciones a continuación cubren problemas específicos de la aplicación de escritorio. Para errores de API en tiempo de ejecución que aparecen en el chat como `API Error: 500`, `529 Overloaded`, `429` o `Prompt is too long`, consulte la [referencia de errores](/es/errors). Esos errores y sus soluciones son los mismos en la CLI, escritorio y web.933Las secciones a continuación cubren problemas específicos de la aplicación de escritorio. Para errores de API en tiempo de ejecución que aparecen en el chat como `API Error: 500`, `529 Overloaded`, `429` o `Prompt is too long`, consulte la [referencia de errores](/docs/es/errors). Esos errores y sus soluciones son los mismos en la CLI, escritorio y web.

934 934 

935<h3 id="check-your-version">935<h3 id="check-your-version">

936 Verificar su versión936 Verificar su versión


961Si la aplicación se abre pero muestra una pantalla en blanco o sin respuesta:961Si la aplicación se abre pero muestra una pantalla en blanco o sin respuesta:

962 962 

9631. Reinicie la aplicación.9631. Reinicie la aplicación.

9642. Verifique si hay actualizaciones pendientes. En macOS y Windows la aplicación se actualiza automáticamente al iniciar; en Linux, actualice a través de apt como se describe en [Claude Desktop en Linux](/es/desktop-linux).9642. Verifique si hay actualizaciones pendientes. En macOS y Windows la aplicación se actualiza automáticamente al iniciar; en Linux, actualice a través de apt como se describe en [Claude Desktop en Linux](/docs/es/desktop-linux).

9653. En una red administrada, confirme que su firewall permite los hosts de CDN en [requisitos de acceso a la red](#network-access-requirements).9653. En una red administrada, confirme que su firewall permite los hosts de CDN en [requisitos de acceso a la red](#network-access-requirements).

9664. En Windows, verifique Event Viewer para registros de bloqueo bajo **Windows Logs → Application**.9664. En Windows, verifique Event Viewer para registros de bloqueo bajo **Windows Logs → Application**.

967 967 

Details

8 8 

9Los plugins extienden Claude Code con skills, agentes, hooks y servidores MCP. Los mercados de plugins son catálogos que le ayudan a descubrir e instalar estas extensiones sin construirlas usted mismo.9Los plugins extienden Claude Code con skills, agentes, hooks y servidores MCP. Los mercados de plugins son catálogos que le ayudan a descubrir e instalar estas extensiones sin construirlas usted mismo.

10 10 

11¿Busca crear y distribuir su propio mercado? Consulte [Crear y distribuir un mercado de plugins](/es/plugin-marketplaces).11¿Busca crear y distribuir su propio mercado? Consulte [Crear y distribuir un mercado de plugins](/docs/es/plugin-marketplaces).

12 12 

13<h2 id="how-marketplaces-work">13<h2 id="how-marketplaces-work">

14 Cómo funcionan los mercados14 Cómo funcionan los mercados


43Si Claude Code reporta que el plugin no se encuentra en ningún mercado, su mercado está faltando o desactualizado. Ejecute `/plugin marketplace update claude-plugins-official` para actualizarlo, o `/plugin marketplace add anthropics/claude-plugins-official` si no lo ha agregado antes. Luego reintente la instalación.43Si Claude Code reporta que el plugin no se encuentra en ningún mercado, su mercado está faltando o desactualizado. Ejecute `/plugin marketplace update claude-plugins-official` para actualizarlo, o `/plugin marketplace add anthropics/claude-plugins-official` si no lo ha agregado antes. Luego reintente la instalación.

44 44 

45<Note>45<Note>

46 El mercado oficial es curado por Anthropic, y la inclusión está a discreción de Anthropic. Los formularios de envío en la aplicación agregan plugins al [mercado comunitario](#community-marketplace), no al oficial. Para distribuir plugins de forma independiente, [cree su propio mercado](/es/plugin-marketplaces) y compártalo con los usuarios.46 El mercado oficial es curado por Anthropic, y la inclusión está a discreción de Anthropic. Los formularios de envío en la aplicación agregan plugins al [mercado comunitario](#community-marketplace), no al oficial. Para distribuir plugins de forma independiente, [cree su propio mercado](/docs/es/plugin-marketplaces) y compártalo con los usuarios.

47</Note>47</Note>

48 48 

49El mercado oficial incluye varias categorías de plugins:49El mercado oficial incluye varias categorías de plugins:


70| Swift | `swift-lsp` | `sourcekit-lsp` |70| Swift | `swift-lsp` | `sourcekit-lsp` |

71| TypeScript | `typescript-lsp` | `typescript-language-server` |71| TypeScript | `typescript-lsp` | `typescript-language-server` |

72 72 

73También puede [crear su propio plugin LSP](/es/plugins-reference#lsp-servers) para otros lenguajes.73También puede [crear su propio plugin LSP](/docs/es/plugins-reference#lsp-servers) para otros lenguajes.

74 74 

75<Note>75<Note>

76 Si ve `Executable not found in $PATH` en la pestaña Errors de `/plugin` después de instalar un plugin, instale el binario requerido de la tabla anterior.76 Si ve `Executable not found in $PATH` en la pestaña Errors de `/plugin` después de instalar un plugin, instale el binario requerido de la tabla anterior.


91 External integrations91 External integrations

92</h3>92</h3>

93 93 

94Estos plugins incluyen [servidores MCP](/es/mcp) preconfigurados para que pueda conectar Claude a servicios externos sin configuración manual:94Estos plugins incluyen [servidores MCP](/docs/es/mcp) preconfigurados para que pueda conectar Claude a servicios externos sin configuración manual:

95 95 

96* **Source control**: `github`, `gitlab`96* **Source control**: `github`, `gitlab`

97* **Project management**: `atlassian` (Jira/Confluence), `asana`, `linear`, `notion`97* **Project management**: `atlassian` (Jira/Confluence), `asana`, `linear`, `notion`


104 Automatic security review104 Automatic security review

105</h3>105</h3>

106 106 

107El plugin `security-guidance` revisa cada cambio que Claude realiza en busca de vulnerabilidades comunes e instruye a Claude para que corrija lo que encuentra en la misma sesión. Consulte [Detectar problemas de seguridad mientras Claude escribe código](/es/security-guidance) para ver qué verifica y cómo agregar reglas específicas del proyecto.107El plugin `security-guidance` revisa cada cambio que Claude realiza en busca de vulnerabilidades comunes e instruye a Claude para que corrija lo que encuentra en la misma sesión. Consulte [Detectar problemas de seguridad mientras Claude escribe código](/docs/es/security-guidance) para ver qué verifica y cómo agregar reglas específicas del proyecto.

108 108 

109<h3 id="development-workflows">109<h3 id="development-workflows">

110 Development workflows110 Development workflows


142/plugin install <plugin-name>@claude-community142/plugin install <plugin-name>@claude-community

143```143```

144 144 

145Para enviar su propio plugin al mercado comunitario, consulte [Enviar su plugin al mercado comunitario](/es/plugins#submit-your-plugin-to-the-community-marketplace) en la guía de creación de plugins.145Para enviar su propio plugin al mercado comunitario, consulte [Enviar su plugin al mercado comunitario](/docs/es/plugins#submit-your-plugin-to-the-community-marketplace) en la guía de creación de plugins.

146 146 

147<h2 id="try-it-add-the-demo-marketplace">147<h2 id="try-it-add-the-demo-marketplace">

148 Pruébelo: agregue el mercado de demostración148 Pruébelo: agregue el mercado de demostración


169 * **Marketplaces**: agregue, elimine o actualice sus mercados agregados169 * **Marketplaces**: agregue, elimine o actualice sus mercados agregados

170 * **Errors**: vea cualquier error de carga de plugins170 * **Errors**: vea cualquier error de carga de plugins

171 171 

172 Vaya a la pestaña **Discover** para ver plugins del mercado que acaba de agregar. {/* min-version: 2.1.154 */}Cuando su administrador ha incluido en la lista blanca el mercado a través de la configuración administrada [`pluginSuggestionMarketplaces`](/es/settings#available-settings), los plugins marcados como relevantes para su directorio de trabajo actual se fijan en la parte superior con una etiqueta **suggested for this directory**.172 Vaya a la pestaña **Discover** para ver plugins del mercado que acaba de agregar. Cuando su administrador ha incluido en la lista blanca el mercado a través de la configuración administrada [`pluginSuggestionMarketplaces`](/docs/es/settings#available-settings), los plugins marcados como relevantes para su directorio de trabajo actual se fijan en la parte superior con una etiqueta **suggested for this directory**.

173 </Step>173 </Step>

174 174 

175 <Step title="Instalar un plugin">175 <Step title="Instalar un plugin">

176 Seleccione un plugin para ver sus detalles. El panel de detalles muestra lo que contiene el plugin y cuánto cuesta:176 Seleccione un plugin para ver sus detalles. El panel de detalles muestra lo que contiene el plugin y cuánto cuesta:

177 177 

178 * {/* min-version: 2.1.143 */}Una estimación de **Context cost** para que pueda ver cuántos tokens el plugin agregará a su [ventana de contexto](/es/features-overview#understand-context-costs) en cada turno (Claude Code v2.1.143 y posteriores)178 * Una estimación de **Context cost** para que pueda ver cuántos tokens el plugin agregará a su [ventana de contexto](/docs/es/features-overview#understand-context-costs) en cada turno (Claude Code v2.1.143 y posteriores)

179 * {/* min-version: 2.1.144 */}La fecha de **Last updated** del plugin (v2.1.144 y posteriores)179 * La fecha de **Last updated** del plugin (v2.1.144 y posteriores)

180 * {/* min-version: 2.1.145 */}Una sección **Will install** que enumera los comandos, agentes, skills, hooks y servidores MCP y LSP del plugin, para que pueda revisar exactamente qué agrega antes de instalar (v2.1.145 y posteriores)180 * Una sección **Will install** que enumera los comandos, agentes, skills, hooks y servidores MCP y LSP del plugin, para que pueda revisar exactamente qué agrega antes de instalar (v2.1.145 y posteriores)

181 181 

182 Elija un alcance de instalación:182 Elija un alcance de instalación:

183 183 


193 /plugin install commit-commands@claude-code-plugins193 /plugin install commit-commands@claude-code-plugins

194 ```194 ```

195 195 

196 Consulte [Configuration scopes](/es/settings#configuration-scopes) para obtener más información sobre alcances.196 Consulte [Configuration scopes](/docs/es/settings#configuration-scopes) para obtener más información sobre alcances.

197 </Step>197 </Step>

198 198 

199 <Step title="Usar su nuevo plugin">199 <Step title="Usar su nuevo plugin">


293```293```

294 294 

295<Note>295<Note>

296 Los mercados basados en URL tienen algunas limitaciones en comparación con los mercados basados en Git. Si encuentra errores "path not found" al instalar plugins, consulte [Troubleshooting](/es/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces).296 Los mercados basados en URL tienen algunas limitaciones en comparación con los mercados basados en Git. Si encuentra errores "path not found" al instalar plugins, consulte [Troubleshooting](/docs/es/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces).

297</Note>297</Note>

298 298 

299<h2 id="install-plugins">299<h2 id="install-plugins">


306/plugin install plugin-name@marketplace-name306/plugin install plugin-name@marketplace-name

307```307```

308 308 

309El comando abre los detalles de ese plugin, donde elige un [alcance de instalación](/es/settings#configuration-scopes). Verá las mismas opciones cuando ejecute `/plugin`, vaya a la pestaña **Discover** y presione **Enter** en un plugin:309El comando abre los detalles de ese plugin, donde elige un [alcance de instalación](/docs/es/settings#configuration-scopes). Verá las mismas opciones cuando ejecute `/plugin`, vaya a la pestaña **Discover** y presione **Enter** en un plugin:

310 310 

311* **User scope** (predeterminado): instale para usted en todos los proyectos311* **User scope** (predeterminado): instale para usted en todos los proyectos

312* **Project scope**: instale para todos los colaboradores en este repositorio, lo que agrega el plugin a `.claude/settings.json`312* **Project scope**: instale para todos los colaboradores en este repositorio, lo que agrega el plugin a `.claude/settings.json`

313* **Local scope**: instale para usted en este repositorio solamente, no compartido con colaboradores313* **Local scope**: instale para usted en este repositorio solamente, no compartido con colaboradores

314 314 

315Para instalar sin un paso interactivo, use el comando shell [`claude plugin install`](/es/plugins-reference#plugin-install), que instala en alcance de usuario a menos que pase `--scope`.315Para instalar sin un paso interactivo, use el comando shell [`claude plugin install`](/docs/es/plugins-reference#plugin-install), que instala en alcance de usuario a menos que pase `--scope`.

316 316 

317También puede ver plugins con alcance **managed**. Estos se instalan por administradores a través de [managed settings](/es/settings#settings-files) y no pueden ser modificados.317También puede ver plugins con alcance **managed**. Estos se instalan por administradores a través de [managed settings](/docs/es/settings#settings-files) y no pueden ser modificados.

318 318 

319<Warning>319<Warning>

320 Asegúrese de confiar en un plugin antes de instalarlo. Anthropic no controla qué servidores MCP, archivos u otro software se incluyen en los plugins y no puede verificar que funcionen como se pretende. Consulte la página de inicio de cada plugin para obtener más información.320 Asegúrese de confiar en un plugin antes de instalarlo. Anthropic no controla qué servidores MCP, archivos u otro software se incluyen en los plugins y no puede verificar que funcionen como se pretende. Consulte la página de inicio de cada plugin para obtener más información.


343* plugins que su organización administra o que carga con `--plugin-dir`343* plugins que su organización administra o que carga con `--plugin-dir`

344* plugins que contribuyen un tema, estilo de salida, monitor o flujo de trabajo, ya que proporcionan valor sin una invocación para rastrear344* plugins que contribuyen un tema, estilo de salida, monitor o flujo de trabajo, ya que proporcionan valor sin una invocación para rastrear

345 345 

346El encabezado **Not used recently** y la línea **Last used** se ocultan cuando su organización restringe los marketplaces con [`strictKnownMarketplaces`](/es/settings#strictknownmarketplaces).346El encabezado **Not used recently** y la línea **Last used** se ocultan cuando su organización restringe los marketplaces con [`strictKnownMarketplaces`](/docs/es/settings#strictknownmarketplaces).

347 347 

348Un [servidor de lenguaje](/es/plugins#add-lsp-servers-to-your-plugin) de un plugin se cuenta como usado cuando entrega diagnósticos o responde a una solicitud de navegación de código, por lo que un plugin LSP cuyo servidor está activo en sus sesiones no se enumera como no utilizado. Antes de v2.1.203, la actividad del servidor de lenguaje no se podía contar como uso, por lo que los plugins que contribuyen un servidor LSP estaban exentos del grupo completamente, de la misma manera que los plugins de tema y estilo de salida aún lo están.348Un [servidor de lenguaje](/docs/es/plugins#add-lsp-servers-to-your-plugin) de un plugin se cuenta como usado cuando entrega diagnósticos o responde a una solicitud de navegación de código, por lo que un plugin LSP cuyo servidor está activo en sus sesiones no se enumera como no utilizado. Antes de v2.1.203, la actividad del servidor de lenguaje no se podía contar como uso, por lo que los plugins que contribuyen un servidor LSP estaban exentos del grupo completamente, de la misma manera que los plugins de tema y estilo de salida aún lo están.

349 349 

350La primera sesión en una versión que cuenta la actividad del servidor de lenguaje también restablece el registro de uso de cada plugin LSP que aún no había registrado ningún uso, por lo que Claude Code no juzga un plugin que instaló anteriormente como no utilizado basándose en datos registrados antes de que se rastreara la actividad de su servidor. Antes de v2.1.206, esa primera sesión podría enumerar un plugin LSP usado activamente bajo **Not used recently** y sugerir revisarlo.350La primera sesión en una versión que cuenta la actividad del servidor de lenguaje también restablece el registro de uso de cada plugin LSP que aún no había registrado ningún uso, por lo que Claude Code no juzga un plugin que instaló anteriormente como no utilizado basándose en datos registrados antes de que se rastreara la actividad de su servidor. Antes de v2.1.206, esa primera sesión podría enumerar un plugin LSP usado activamente bajo **Not used recently** y sugerir revisarlo.

351 351 


373/plugin enable plugin-name@marketplace-name373/plugin enable plugin-name@marketplace-name

374```374```

375 375 

376En estos identificadores, `plugin-name` es el `name` del plugin en la [entrada del marketplace](/es/plugin-marketplaces#plugin-entries), que puede diferir del `name` en el `plugin.json` del plugin.376En estos identificadores, `plugin-name` es el `name` del plugin en la [entrada del marketplace](/docs/es/plugin-marketplaces#plugin-entries), que puede diferir del `name` en el `plugin.json` del plugin.

377 377 

378A partir de Claude Code v2.1.195, **Enable** y **Disable** en la interfaz `/plugin` funcionan para plugins cuyos dos nombres difieren, y `/plugin enable` y `/plugin disable` aceptan cualquiera de los nombres. Cuando deshabilita tal plugin en una versión anterior, Claude Code reporta `already disabled` y lo deja habilitado.378A partir de Claude Code v2.1.195, **Enable** y **Disable** en la interfaz `/plugin` funcionan para plugins cuyos dos nombres difieren, y `/plugin enable` y `/plugin disable` aceptan cualquiera de los nombres. Cuando deshabilita tal plugin en una versión anterior, Claude Code reporta `already disabled` y lo deja habilitado.

379 379 


402 402 

403Claude Code recarga todos los plugins activos y muestra conteos para plugins, skills, agentes, hooks, servidores MCP de plugins y servidores LSP de plugins.403Claude Code recarga todos los plugins activos y muestra conteos para plugins, skills, agentes, hooks, servidores MCP de plugins y servidores LSP de plugins.

404 404 

405La recarga tiene un costo de tokens en la siguiente solicitud: los componentes recién cargados se anuncian a sí mismos en el contenido añadido a la conversación, mientras que el historial existente aún se lee desde la caché de prompts. Un plugin que proporciona servidores MCP cuesta más cuando sus herramientas no se difieren por [búsqueda de herramientas MCP](/es/mcp#scale-with-mcp-tool-search): el cambio invalida la caché y la siguiente solicitud vuelve a leer toda la conversación. {/* min-version: 2.1.163 */}En ese caso `/reload-plugins` muestra una advertencia y no aplica la recarga; pase `--force` para aplicarla de todas formas. Consulte [habilitar o deshabilitar un plugin](/es/prompt-caching#enabling-or-disabling-a-plugin) para obtener más detalles.405La recarga tiene un costo de tokens en la siguiente solicitud: los componentes recién cargados se anuncian a sí mismos en el contenido añadido a la conversación, mientras que el historial existente aún se lee desde la caché de prompts. Un plugin que proporciona servidores MCP cuesta más cuando sus herramientas no se difieren por [búsqueda de herramientas MCP](/docs/es/mcp#scale-with-mcp-tool-search): el cambio invalida la caché y la siguiente solicitud vuelve a leer toda la conversación. En ese caso `/reload-plugins` muestra una advertencia y no aplica la recarga; pase `--force` para aplicarla de todas formas. Consulte [habilitar o deshabilitar un plugin](/docs/es/prompt-caching#enabling-or-disabling-a-plugin) para obtener más detalles.

406 406 

407<h2 id="manage-marketplaces">407<h2 id="manage-marketplaces">

408 Administrar mercados408 Administrar mercados


466 466 

467Los mercados oficiales de Anthropic tienen la actualización automática habilitada por defecto. Los mercados de terceros y de desarrollo local tienen la actualización automática deshabilitada por defecto.467Los mercados oficiales de Anthropic tienen la actualización automática habilitada por defecto. Los mercados de terceros y de desarrollo local tienen la actualización automática deshabilitada por defecto.

468 468 

469Los administradores también pueden establecer `"autoUpdate": true` en cada entrada [`extraKnownMarketplaces`](/es/settings#extraknownmarketplaces) en la configuración administrada para habilitar la actualización automática para un mercado de la organización sin requerir que cada usuario la active.469Los administradores también pueden establecer `"autoUpdate": true` en cada entrada [`extraKnownMarketplaces`](/docs/es/settings#extraknownmarketplaces) en la configuración administrada para habilitar la actualización automática para un mercado de la organización sin requerir que cada usuario la active.

470 470 

471Para deshabilitar todas las actualizaciones automáticas completamente tanto para Claude Code como para todos los plugins, establezca la variable de entorno `DISABLE_AUTOUPDATER`. Consulte [Auto updates](/es/setup#auto-updates) para obtener detalles.471Para deshabilitar todas las actualizaciones automáticas completamente tanto para Claude Code como para todos los plugins, establezca la variable de entorno `DISABLE_AUTOUPDATER`. Consulte [Auto updates](/docs/es/setup#auto-updates) para obtener detalles.

472 472 

473Para mantener las actualizaciones automáticas de plugins habilitadas mientras se deshabilitan las actualizaciones automáticas de Claude Code, establezca `FORCE_AUTOUPDATE_PLUGINS=1` junto con `DISABLE_AUTOUPDATER`:473Para mantener las actualizaciones automáticas de plugins habilitadas mientras se deshabilitan las actualizaciones automáticas de Claude Code, establezca `FORCE_AUTOUPDATE_PLUGINS=1` junto con `DISABLE_AUTOUPDATER`:

474 474 


502}502}

503```503```

504 504 

505Para opciones de configuración completas incluyendo `extraKnownMarketplaces` y `enabledPlugins`, consulte [Plugin settings](/es/settings#plugin-settings).505Para opciones de configuración completas incluyendo `extraKnownMarketplaces` y `enabledPlugins`, consulte [Plugin settings](/docs/es/settings#plugin-settings).

506 506 

507<h2 id="security">507<h2 id="security">

508 Seguridad508 Seguridad

509</h2>509</h2>

510 510 

511Los plugins y mercados son componentes altamente confiables que pueden ejecutar código arbitrario en su máquina con sus privilegios de usuario. Solo instale plugins y agregue mercados de fuentes en las que confíe. Las organizaciones pueden restringir qué mercados se permite a los usuarios agregar usando [restricciones de mercado administrado](/es/plugin-marketplaces#managed-marketplace-restrictions).511Los plugins y mercados son componentes altamente confiables que pueden ejecutar código arbitrario en su máquina con sus privilegios de usuario. Solo instale plugins y agregue mercados de fuentes en las que confíe. Las organizaciones pueden restringir qué mercados se permite a los usuarios agregar usando [restricciones de mercado administrado](/docs/es/plugin-marketplaces#managed-marketplace-restrictions).

512 512 

513<h2 id="troubleshooting">513<h2 id="troubleshooting">

514 Troubleshooting514 Troubleshooting


5242. **Actualice Claude Code**:5242. **Actualice Claude Code**:

525 * **Homebrew**: `brew upgrade claude-code`, o `brew upgrade claude-code@latest` si instaló ese cask525 * **Homebrew**: `brew upgrade claude-code`, o `brew upgrade claude-code@latest` si instaló ese cask

526 * **npm**: `npm install -g @anthropic-ai/claude-code@latest`526 * **npm**: `npm install -g @anthropic-ai/claude-code@latest`

527 * **Native installer**: Vuelva a ejecutar el comando de instalación desde [Setup](/es/setup)527 * **Native installer**: Vuelva a ejecutar el comando de instalación desde [Setup](/docs/es/setup)

5283. **Reinicie Claude Code**: Después de actualizar, reinicie su terminal y ejecute `claude` nuevamente.5283. **Reinicie Claude Code**: Después de actualizar, reinicie su terminal y ejecute `claude` nuevamente.

529 529 

530<h3 id="common-issues">530<h3 id="common-issues">


536* **Files not found after installation**: Los plugins se copian a un caché, por lo que las rutas que hacen referencia a archivos fuera del directorio del plugin no funcionarán536* **Files not found after installation**: Los plugins se copian a un caché, por lo que las rutas que hacen referencia a archivos fuera del directorio del plugin no funcionarán

537* **Plugin skills not appearing**: Limpie el caché con `rm -rf ~/.claude/plugins/cache`, reinicie Claude Code e reinstale el plugin.537* **Plugin skills not appearing**: Limpie el caché con `rm -rf ~/.claude/plugins/cache`, reinicie Claude Code e reinstale el plugin.

538 538 

539Para solución de problemas detallada con soluciones, consulte [Troubleshooting](/es/plugin-marketplaces#troubleshooting) en la guía de mercados. Para herramientas de depuración, consulte [Debugging and development tools](/es/plugins-reference#debugging-and-development-tools).539Para solución de problemas detallada con soluciones, consulte [Troubleshooting](/docs/es/plugin-marketplaces#troubleshooting) en la guía de mercados. Para herramientas de depuración, consulte [Debugging and development tools](/docs/es/plugins-reference#debugging-and-development-tools).

540 540 

541<h3 id="code-intelligence-issues">541<h3 id="code-intelligence-issues">

542 Code intelligence issues542 Code intelligence issues


550 Próximos pasos550 Próximos pasos

551</h2>551</h2>

552 552 

553* **Cree sus propios plugins**: Consulte [Plugins](/es/plugins) para crear skills, agentes y hooks553* **Cree sus propios plugins**: Consulte [Plugins](/docs/es/plugins) para crear skills, agentes y hooks

554* **Cree un marketplace**: Consulte [Cree un marketplace de plugins](/es/plugin-marketplaces) para distribuir plugins a su equipo o comunidad554* **Cree un marketplace**: Consulte [Cree un marketplace de plugins](/docs/es/plugin-marketplaces) para distribuir plugins a su equipo o comunidad

555* **Referencia técnica**: Consulte [Referencia de Plugins](/es/plugins-reference) para especificaciones completas555* **Referencia técnica**: Consulte [Referencia de Plugins](/docs/es/plugins-reference) para especificaciones completas

env-vars.md +194 −194

Details

6 6 

7> Referencia para variables de entorno que controlan el comportamiento de Claude Code.7> Referencia para variables de entorno que controlan el comportamiento de Claude Code.

8 8 

9Las variables de entorno pueden controlar el comportamiento de Claude Code, como la selección de modelo, autenticación, enrutamiento de solicitudes y alternadores de características. Muchos de los mismos comportamientos también se pueden configurar a través de un [archivo de configuración](/es/settings), una [bandera CLI](/es/cli-reference) o un comando en sesión como `/model`.9Las variables de entorno pueden controlar el comportamiento de Claude Code, como la selección de modelo, autenticación, enrutamiento de solicitudes y alternadores de características. Muchos de los mismos comportamientos también se pueden configurar a través de un [archivo de configuración](/docs/es/settings), una [bandera CLI](/docs/es/cli-reference) o un comando en sesión como `/model`.

10 10 

11Esta página cubre cómo:11Esta página cubre cómo:

12 12 


79| `.claude/settings.local.json` | Usted, solo en este proyecto (agréguelo a su gitignore si lo crea manualmente) |79| `.claude/settings.local.json` | Usted, solo en este proyecto (agréguelo a su gitignore si lo crea manualmente) |

80| Configuración administrada | Todos en su organización, implementado por un administrador |80| Configuración administrada | Todos en su organización, implementado por un administrador |

81 81 

82Consulte [Archivos de configuración](/es/settings#settings-files) para saber dónde vive cada archivo y [Precedencia de configuración](/es/settings#settings-precedence) para saber cómo se combinan cuando más de uno establece la misma variable.82Consulte [Archivos de configuración](/docs/es/settings#settings-files) para saber dónde vive cada archivo y [Precedencia de configuración](/docs/es/settings#settings-precedence) para saber cómo se combinan cuando más de uno establece la misma variable.

83 83 

84<h2 id="precedence">84<h2 id="precedence">

85 Precedencia85 Precedencia


87 87 

88Cuando el mismo comportamiento tiene tanto una variable de entorno como un campo de configuración, la variable de entorno tiene precedencia. Por ejemplo, `ANTHROPIC_MODEL` anula la configuración `model`, y `CLAUDE_CODE_AUTO_CONNECT_IDE` anula `autoConnectIde`. El campo de configuración se aplica cuando la variable de entorno no está establecida.88Cuando el mismo comportamiento tiene tanto una variable de entorno como un campo de configuración, la variable de entorno tiene precedencia. Por ejemplo, `ANTHROPIC_MODEL` anula la configuración `model`, y `CLAUDE_CODE_AUTO_CONNECT_IDE` anula `autoConnectIde`. El campo de configuración se aplica cuando la variable de entorno no está establecida.

89 89 

90Cuando la misma variable se establece tanto en su shell como en un archivo de configuración bloque `env`, se aplica el valor del archivo de configuración. Claude Code escribe cada entrada `env` en el entorno del proceso al inicio, reemplazando el valor heredado del shell. Algunas variables tienen casos especiales; la [configuración `env`](/es/settings#available-settings) enumera las excepciones.90Cuando la misma variable se establece tanto en su shell como en un archivo de configuración bloque `env`, se aplica el valor del archivo de configuración. Claude Code escribe cada entrada `env` en el entorno del proceso al inicio, reemplazando el valor heredado del shell. Algunas variables tienen casos especiales; la [configuración `env`](/docs/es/settings#available-settings) enumera las excepciones.

91 91 

92Entre archivos de configuración, los valores `env` siguen la [precedencia de configuración](/es/settings#settings-precedence), por lo que una entrada de configuración administrada anula la misma variable en la configuración de usuario o proyecto.92Entre archivos de configuración, los valores `env` siguen la [precedencia de configuración](/docs/es/settings#settings-precedence), por lo que una entrada de configuración administrada anula la misma variable en la configuración de usuario o proyecto.

93 93 

94Cómo una variable de entorno interactúa con banderas CLI y comandos en sesión varía por característica: `--model` y `/model` anulan `ANTHROPIC_MODEL`, mientras que `CLAUDE_CODE_EFFORT_LEVEL` anula `/effort`. Cuando una variable interactúa con otra fuente de configuración, su fila en la lista [Variables](#variables) indica la precedencia o vincula a la página que la documenta.94Cómo una variable de entorno interactúa con banderas CLI y comandos en sesión varía por característica: `--model` y `/model` anulan `ANTHROPIC_MODEL`, mientras que `CLAUDE_CODE_EFFORT_LEVEL` anula `/effort`. Cuando una variable interactúa con otra fuente de configuración, su fila en la lista [Variables](#variables) indica la precedencia o vincula a la página que la documenta.

95 95 


103| :------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |103| :------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

104| `ANTHROPIC_API_KEY` | Clave de API enviada como encabezado `X-Api-Key`. Cuando se establece, esta clave se utiliza en lugar de su suscripción de Claude Pro, Max, Team o Enterprise incluso si ha iniciado sesión. En modo no interactivo (`-p`), la clave siempre se utiliza cuando está presente. En modo interactivo, se le solicita que apruebe la clave una vez antes de que anule su suscripción. Para utilizar su suscripción en su lugar, ejecute `unset ANTHROPIC_API_KEY` |104| `ANTHROPIC_API_KEY` | Clave de API enviada como encabezado `X-Api-Key`. Cuando se establece, esta clave se utiliza en lugar de su suscripción de Claude Pro, Max, Team o Enterprise incluso si ha iniciado sesión. En modo no interactivo (`-p`), la clave siempre se utiliza cuando está presente. En modo interactivo, se le solicita que apruebe la clave una vez antes de que anule su suscripción. Para utilizar su suscripción en su lugar, ejecute `unset ANTHROPIC_API_KEY` |

105| `ANTHROPIC_AUTH_TOKEN` | Valor personalizado para el encabezado `Authorization` (el valor que establezca aquí tendrá el prefijo `Bearer `) |105| `ANTHROPIC_AUTH_TOKEN` | Valor personalizado para el encabezado `Authorization` (el valor que establezca aquí tendrá el prefijo `Bearer `) |

106| `ANTHROPIC_AWS_API_KEY` | Clave de API del espacio de trabajo para [Claude Platform on AWS](/es/claude-platform-on-aws), generada en la Consola de AWS. Se envía como `x-api-key` y tiene precedencia sobre AWS SigV4 |106| `ANTHROPIC_AWS_API_KEY` | Clave de API del espacio de trabajo para [Claude Platform on AWS](/docs/es/claude-platform-on-aws), generada en la Consola de AWS. Se envía como `x-api-key` y tiene precedencia sobre AWS SigV4 |

107| `ANTHROPIC_AWS_BASE_URL` | Anule la URL del endpoint de [Claude Platform on AWS](/es/claude-platform-on-aws). Utilice para regiones personalizadas o cuando enrute a través de una [puerta de enlace LLM](/es/llm-gateway). El valor predeterminado es `https://aws-external-anthropic.{AWS_REGION}.api.aws` |107| `ANTHROPIC_AWS_BASE_URL` | Anule la URL del endpoint de [Claude Platform on AWS](/docs/es/claude-platform-on-aws). Utilice para regiones personalizadas o cuando enrute a través de una [puerta de enlace LLM](/docs/es/llm-gateway). El valor predeterminado es `https://aws-external-anthropic.{AWS_REGION}.api.aws` |

108| `ANTHROPIC_AWS_WORKSPACE_ID` | Requerido para [Claude Platform on AWS](/es/claude-platform-on-aws). Se envía en cada solicitud como encabezado `anthropic-workspace-id` |108| `ANTHROPIC_AWS_WORKSPACE_ID` | Requerido para [Claude Platform on AWS](/docs/es/claude-platform-on-aws). Se envía en cada solicitud como encabezado `anthropic-workspace-id` |

109| `ANTHROPIC_BASE_URL` | Anule el endpoint de API para enrutar solicitudes a través de un proxy o puerta de enlace. Cuando se establece en un host que no es de primera parte, [búsqueda de herramientas MCP](/es/mcp#scale-with-mcp-tool-search) está deshabilitada de forma predeterminada. Establezca `ENABLE_TOOL_SEARCH=true` si su proxy reenvía bloques `tool_reference`. {/* min-version: 2.1.196 */}A partir de v2.1.196, [Control Remoto](/es/remote-control#requirements) está deshabilitado cuando esto apunta a un host distinto de `api.anthropic.com`, coincidiendo con su comportamiento en Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry |109| `ANTHROPIC_BASE_URL` | Anule el endpoint de API para enrutar solicitudes a través de un proxy o puerta de enlace. Cuando se establece en un host que no es de primera parte, [búsqueda de herramientas MCP](/docs/es/mcp#scale-with-mcp-tool-search) está deshabilitada de forma predeterminada. Establezca `ENABLE_TOOL_SEARCH=true` si su proxy reenvía bloques `tool_reference`. A partir de v2.1.196, [Control Remoto](/docs/es/remote-control#requirements) está deshabilitado cuando esto apunta a un host distinto de `api.anthropic.com`, coincidiendo con su comportamiento en Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry |

110| `ANTHROPIC_BEDROCK_BASE_URL` | Anule la URL del endpoint de Amazon Bedrock. Utilice para endpoints de Amazon Bedrock personalizados o cuando enrute a través de una [puerta de enlace LLM](/es/llm-gateway). Consulte [Amazon Bedrock](/es/amazon-bedrock) |110| `ANTHROPIC_BEDROCK_BASE_URL` | Anule la URL del endpoint de Amazon Bedrock. Utilice para endpoints de Amazon Bedrock personalizados o cuando enrute a través de una [puerta de enlace LLM](/docs/es/llm-gateway). Consulte [Amazon Bedrock](/docs/es/amazon-bedrock) |

111| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Anule la URL del endpoint de Amazon Bedrock Mantle. Consulte [Endpoint Mantle](/es/amazon-bedrock#use-the-mantle-endpoint) |111| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Anule la URL del endpoint de Amazon Bedrock Mantle. Consulte [Endpoint Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint) |

112| `ANTHROPIC_BEDROCK_SERVICE_TIER` | [Nivel de servicio](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html) de Amazon Bedrock (`default`, `flex` o `priority`). Se envía como encabezado `X-Amzn-Bedrock-Service-Tier`. Consulte [Amazon Bedrock](/es/amazon-bedrock#service-tiers) |112| `ANTHROPIC_BEDROCK_SERVICE_TIER` | [Nivel de servicio](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html) de Amazon Bedrock (`default`, `flex` o `priority`). Se envía como encabezado `X-Amzn-Bedrock-Service-Tier`. Consulte [Amazon Bedrock](/docs/es/amazon-bedrock#service-tiers) |

113| `ANTHROPIC_BETAS` | Lista separada por comas de valores de encabezado `anthropic-beta` adicionales para incluir en solicitudes de API. Claude Code ya envía los encabezados beta que necesita; utilice esto para optar por un [beta de API de Anthropic](https://platform.claude.com/docs/en/api/beta-headers) antes de que Claude Code agregue soporte nativo. A diferencia de la [bandera `--betas`](/es/cli-reference#cli-flags), que requiere autenticación de clave de API, esta variable funciona con todos los métodos de autenticación, incluida la suscripción de Claude.ai |113| `ANTHROPIC_BETAS` | Lista separada por comas de valores de encabezado `anthropic-beta` adicionales para incluir en solicitudes de API. Claude Code ya envía los encabezados beta que necesita; utilice esto para optar por un [beta de API de Anthropic](https://platform.claude.com/docs/en/api/beta-headers) antes de que Claude Code agregue soporte nativo. A diferencia de la [bandera `--betas`](/docs/es/cli-reference#cli-flags), que requiere autenticación de clave de API, esta variable funciona con todos los métodos de autenticación, incluida la suscripción de Claude.ai |

114| `ANTHROPIC_CUSTOM_HEADERS` | Encabezados personalizados para agregar a las solicitudes (formato `Name: Value`, separados por saltos de línea para múltiples encabezados) |114| `ANTHROPIC_CUSTOM_HEADERS` | Encabezados personalizados para agregar a las solicitudes (formato `Name: Value`, separados por saltos de línea para múltiples encabezados) |

115| `ANTHROPIC_CUSTOM_MODEL_OPTION` | ID de modelo para agregar como entrada personalizada en el selector `/model`. Utilice esto para hacer que un modelo no estándar o específico de puerta de enlace sea seleccionable sin reemplazar alias integrados. Consulte [Configuración de modelo](/es/model-config#add-a-custom-model-option) |115| `ANTHROPIC_CUSTOM_MODEL_OPTION` | ID de modelo para agregar como entrada personalizada en el selector `/model`. Utilice esto para hacer que un modelo no estándar o específico de puerta de enlace sea seleccionable sin reemplazar alias integrados. Consulte [Configuración de modelo](/docs/es/model-config#add-a-custom-model-option) |

116| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | Descripción de visualización para la entrada de modelo personalizado en el selector `/model`. El valor predeterminado es `Custom model (<model-id>)` cuando no se establece |116| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | Descripción de visualización para la entrada de modelo personalizado en el selector `/model`. El valor predeterminado es `Custom model (<model-id>)` cuando no se establece |

117| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Nombre de visualización para la entrada de modelo personalizado en el selector `/model`. El valor predeterminado es el ID de modelo cuando no se establece |117| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Nombre de visualización para la entrada de modelo personalizado en el selector `/model`. El valor predeterminado es el ID de modelo cuando no se establece |

118| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |118| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

119| `ANTHROPIC_DEFAULT_FABLE_MODEL` | Consulte [Configuración de modelo](/es/model-config#environment-variables) |119| `ANTHROPIC_DEFAULT_FABLE_MODEL` | Consulte [Configuración de modelo](/docs/es/model-config#environment-variables) |

120| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |120| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

121| `ANTHROPIC_DEFAULT_FABLE_MODEL_NAME` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |121| `ANTHROPIC_DEFAULT_FABLE_MODEL_NAME` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

122| `ANTHROPIC_DEFAULT_FABLE_MODEL_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |122| `ANTHROPIC_DEFAULT_FABLE_MODEL_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

123| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | Consulte [Configuración de modelo](/es/model-config#environment-variables) |123| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | Consulte [Configuración de modelo](/docs/es/model-config#environment-variables) |

124| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |124| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

125| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |125| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

126| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |126| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

127| `ANTHROPIC_DEFAULT_OPUS_MODEL` | Consulte [Configuración de modelo](/es/model-config#environment-variables) |127| `ANTHROPIC_DEFAULT_OPUS_MODEL` | Consulte [Configuración de modelo](/docs/es/model-config#environment-variables) |

128| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |128| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

129| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |129| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

130| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |130| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

131| `ANTHROPIC_DEFAULT_SONNET_MODEL` | Consulte [Configuración de modelo](/es/model-config#environment-variables) |131| `ANTHROPIC_DEFAULT_SONNET_MODEL` | Consulte [Configuración de modelo](/docs/es/model-config#environment-variables) |

132| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |132| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

133| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |133| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

134| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/es/model-config#customize-pinned-model-display-and-capabilities) |134| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Consulte [Configuración de modelo](/docs/es/model-config#customize-pinned-model-display-and-capabilities) |

135| `ANTHROPIC_FOUNDRY_API_KEY` | Clave de API para autenticación de Microsoft Foundry (consulte [Microsoft Foundry](/es/microsoft-foundry)) |135| `ANTHROPIC_FOUNDRY_API_KEY` | Clave de API para autenticación de Microsoft Foundry (consulte [Microsoft Foundry](/docs/es/microsoft-foundry)) |

136| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | {/* min-version: 2.1.203 */}Token portador para autenticación de Microsoft Foundry, como un token de acceso de Microsoft Entra. Claude Code lo envía como encabezado `Authorization: Bearer`. Tiene precedencia sobre `ANTHROPIC_FOUNDRY_API_KEY` y sobre la cadena de credenciales predeterminada de Azure. Consulte [Microsoft Foundry](/es/microsoft-foundry). Requiere Claude Code v2.1.203 o posterior |136| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | Token portador para autenticación de Microsoft Foundry, como un token de acceso de Microsoft Entra. Claude Code lo envía como encabezado `Authorization: Bearer`. Tiene precedencia sobre `ANTHROPIC_FOUNDRY_API_KEY` y sobre la cadena de credenciales predeterminada de Azure. Consulte [Microsoft Foundry](/docs/es/microsoft-foundry). Requiere Claude Code v2.1.203 o posterior |

137| `ANTHROPIC_FOUNDRY_BASE_URL` | URL base completa para el recurso Microsoft Foundry (por ejemplo, `https://my-resource.services.ai.azure.com/anthropic`). Alternativa a `ANTHROPIC_FOUNDRY_RESOURCE` (consulte [Microsoft Foundry](/es/microsoft-foundry)) |137| `ANTHROPIC_FOUNDRY_BASE_URL` | URL base completa para el recurso Microsoft Foundry (por ejemplo, `https://my-resource.services.ai.azure.com/anthropic`). Alternativa a `ANTHROPIC_FOUNDRY_RESOURCE` (consulte [Microsoft Foundry](/docs/es/microsoft-foundry)) |

138| `ANTHROPIC_FOUNDRY_RESOURCE` | Nombre del recurso Microsoft Foundry (por ejemplo, `my-resource`). Requerido si `ANTHROPIC_FOUNDRY_BASE_URL` no está establecido (consulte [Microsoft Foundry](/es/microsoft-foundry)) |138| `ANTHROPIC_FOUNDRY_RESOURCE` | Nombre del recurso Microsoft Foundry (por ejemplo, `my-resource`). Requerido si `ANTHROPIC_FOUNDRY_BASE_URL` no está establecido (consulte [Microsoft Foundry](/docs/es/microsoft-foundry)) |

139| `ANTHROPIC_MODEL` | Nombre de la configuración de modelo a utilizar (consulte [Configuración de modelo](/es/model-config#environment-variables)) |139| `ANTHROPIC_MODEL` | Nombre de la configuración de modelo a utilizar (consulte [Configuración de modelo](/docs/es/model-config#environment-variables)) |

140| `ANTHROPIC_SMALL_FAST_MODEL` | \[DEPRECATED] Nombre de [modelo de clase Haiku para tareas en segundo plano](/es/costs) |140| `ANTHROPIC_SMALL_FAST_MODEL` | \[DEPRECATED] Nombre de [modelo de clase Haiku para tareas en segundo plano](/docs/es/costs) |

141| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Anule la región de AWS para el modelo de clase Haiku al usar Amazon Bedrock o Amazon Bedrock Mantle. En Amazon Bedrock, esto solo tiene efecto cuando `ANTHROPIC_DEFAULT_HAIKU_MODEL` o el deprecated `ANTHROPIC_SMALL_FAST_MODEL` también está establecido, ya que Amazon Bedrock de otra manera ejecuta tareas en segundo plano en el [modelo Sonnet predeterminado o el modelo principal](/es/amazon-bedrock#4-pin-model-versions) en la región de sesión |141| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Anule la región de AWS para el modelo de clase Haiku al usar Amazon Bedrock o Amazon Bedrock Mantle. En Amazon Bedrock, esto solo tiene efecto cuando `ANTHROPIC_DEFAULT_HAIKU_MODEL` o el deprecated `ANTHROPIC_SMALL_FAST_MODEL` también está establecido, ya que Amazon Bedrock de otra manera ejecuta tareas en segundo plano en el [modelo Sonnet predeterminado o el modelo principal](/docs/es/amazon-bedrock#4-pin-model-versions) en la región de sesión |

142| `ANTHROPIC_VERTEX_BASE_URL` | Anule la URL del endpoint de Google Cloud's Agent Platform. Utilice para endpoints de Google Cloud's Agent Platform personalizados o cuando enrute a través de una [puerta de enlace LLM](/es/llm-gateway). Consulte [Google Cloud's Agent Platform](/es/google-vertex-ai) |142| `ANTHROPIC_VERTEX_BASE_URL` | Anule la URL del endpoint de Google Cloud's Agent Platform. Utilice para endpoints de Google Cloud's Agent Platform personalizados o cuando enrute a través de una [puerta de enlace LLM](/docs/es/llm-gateway). Consulte [Google Cloud's Agent Platform](/docs/es/google-vertex-ai) |

143| `ANTHROPIC_VERTEX_PROJECT_ID` | ID de proyecto de GCP para solicitudes de Google Cloud's Agent Platform. Anulado por `GCLOUD_PROJECT`, `GOOGLE_CLOUD_PROJECT` o el proyecto en su archivo de credenciales `GOOGLE_APPLICATION_CREDENTIALS`. Consulte [Google Cloud's Agent Platform](/es/google-vertex-ai) |143| `ANTHROPIC_VERTEX_PROJECT_ID` | ID de proyecto de GCP para solicitudes de Google Cloud's Agent Platform. Anulado por `GCLOUD_PROJECT`, `GOOGLE_CLOUD_PROJECT` o el proyecto en su archivo de credenciales `GOOGLE_APPLICATION_CREDENTIALS`. Consulte [Google Cloud's Agent Platform](/docs/es/google-vertex-ai) |

144| `ANTHROPIC_WORKSPACE_ID` | ID de espacio de trabajo para [federación de identidad de carga de trabajo](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Establezca esto cuando su regla de federación esté limitada a más de un espacio de trabajo para que el intercambio de tokens sepa a qué espacio de trabajo dirigirse |144| `ANTHROPIC_WORKSPACE_ID` | ID de espacio de trabajo para [federación de identidad de carga de trabajo](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Establezca esto cuando su regla de federación esté limitada a más de un espacio de trabajo para que el intercambio de tokens sepa a qué espacio de trabajo dirigirse |

145| `API_FORCE_IDLE_TIMEOUT` | {/* min-version: 2.1.169 */}Anule el tiempo de espera de inactividad de 5 minutos que aborta una respuesta de modelo transmitida cuando no llegan bytes. Establezca en `0` para deshabilitar el tiempo de espera, por ejemplo cuando una [puerta de enlace](/es/llm-gateway) lenta o un modelo local se pausa más de 5 minutos entre fragmentos. Establezca en `1` para mantener el tiempo de espera en cada proveedor. Cuando no se establece, el tiempo de espera está inactivo en conexiones directas de API de Anthropic y [Claude Platform on AWS](/es/claude-platform-on-aws), donde se ejecuta el perro guardián de transmisión a nivel de byte propio de Claude Code, y activo en todos los demás proveedores, incluidos [Google Cloud's Agent Platform](/es/google-vertex-ai), [Microsoft Foundry](/es/microsoft-foundry), [Mantle](/es/amazon-bedrock#use-the-mantle-endpoint), [Amazon Bedrock](/es/amazon-bedrock) y conexiones de puerta de enlace, por lo que una transmisión estancada se aborta en lugar de colgarse. A partir de v2.1.169 |145| `API_FORCE_IDLE_TIMEOUT` | Anule el tiempo de espera de inactividad de 5 minutos que aborta una respuesta de modelo transmitida cuando no llegan bytes. Establezca en `0` para deshabilitar el tiempo de espera, por ejemplo cuando una [puerta de enlace](/docs/es/llm-gateway) lenta o un modelo local se pausa más de 5 minutos entre fragmentos. Establezca en `1` para mantener el tiempo de espera en cada proveedor. Cuando no se establece, el tiempo de espera está inactivo en conexiones directas de API de Anthropic y [Claude Platform on AWS](/docs/es/claude-platform-on-aws), donde se ejecuta el perro guardián de transmisión a nivel de byte propio de Claude Code, y activo en todos los demás proveedores, incluidos [Google Cloud's Agent Platform](/docs/es/google-vertex-ai), [Microsoft Foundry](/docs/es/microsoft-foundry), [Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint), [Amazon Bedrock](/docs/es/amazon-bedrock) y conexiones de puerta de enlace, por lo que una transmisión estancada se aborta en lugar de colgarse. A partir de v2.1.169 |

146| `API_TIMEOUT_MS` | Tiempo de espera para solicitudes de API en milisegundos (predeterminado: 600000, o 10 minutos; máximo: 2147483647). Aumente esto cuando las solicitudes agoten el tiempo de espera en redes lentas o cuando enrute a través de un proxy. Los valores por encima del máximo desbordan el temporizador subyacente y causan que las solicitudes fallen inmediatamente |146| `API_TIMEOUT_MS` | Tiempo de espera para solicitudes de API en milisegundos (predeterminado: 600000, o 10 minutos; máximo: 2147483647). Aumente esto cuando las solicitudes agoten el tiempo de espera en redes lentas o cuando enrute a través de un proxy. Los valores por encima del máximo desbordan el temporizador subyacente y causan que las solicitudes fallen inmediatamente |

147| `AWS_BEARER_TOKEN_BEDROCK` | Clave de API de Amazon Bedrock para autenticación (consulte [Claves de API de Amazon Bedrock](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |147| `AWS_BEARER_TOKEN_BEDROCK` | Clave de API de Amazon Bedrock para autenticación (consulte [Claves de API de Amazon Bedrock](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |

148| `BASH_DEFAULT_TIMEOUT_MS` | Tiempo de espera predeterminado para comandos bash de larga duración (predeterminado: 120000, o 2 minutos) |148| `BASH_DEFAULT_TIMEOUT_MS` | Tiempo de espera predeterminado para comandos bash de larga duración (predeterminado: 120000, o 2 minutos) |

149| `BASH_MAX_OUTPUT_LENGTH` | Número máximo de caracteres en salidas bash antes de que la salida completa se guarde en un archivo y Claude reciba la ruta más una vista previa corta. Consulte [Comportamiento de la herramienta Bash](/es/tools-reference#bash-tool-behavior) |149| `BASH_MAX_OUTPUT_LENGTH` | Número máximo de caracteres en salidas bash antes de que la salida completa se guarde en un archivo y Claude reciba la ruta más una vista previa corta. Consulte [Comportamiento de la herramienta Bash](/docs/es/tools-reference#bash-tool-behavior) |

150| `BASH_MAX_TIMEOUT_MS` | Tiempo de espera máximo que el modelo puede establecer para comandos bash de larga duración (predeterminado: 600000, o 10 minutos) |150| `BASH_MAX_TIMEOUT_MS` | Tiempo de espera máximo que el modelo puede establecer para comandos bash de larga duración (predeterminado: 600000, o 10 minutos) |

151| `CCR_FORCE_BUNDLE` | Establezca en `1` para forzar [`claude --cloud`](/es/claude-code-on-the-web#send-local-repositories-without-github) a agrupar y cargar su repositorio local incluso cuando el acceso a GitHub está disponible |151| `CCR_FORCE_BUNDLE` | Establezca en `1` para forzar [`claude --cloud`](/docs/es/claude-code-on-the-web#send-local-repositories-without-github) a agrupar y cargar su repositorio local incluso cuando el acceso a GitHub está disponible |

152| `CLAUDECODE` | Establezca en `1` en subprocesos que Claude Code genera (herramientas Bash y PowerShell, sesiones tmux, comandos [hook](/es/hooks), comandos [línea de estado](/es/statusline), subprocesos de [servidor MCP](/es/mcp) stdio). Las extensiones de IDE también establecen esto en sus terminales integrados. Utilice para detectar cuándo un script se está ejecutando dentro de un subproceso generado por Claude Code. Para verificar si el proceso actual fue generado directamente por una llamada de herramienta o hook, en lugar de dentro de un servidor MCP stdio que Claude Code inició, utilice `CLAUDE_CODE_CHILD_SESSION` en su lugar |152| `CLAUDECODE` | Establezca en `1` en subprocesos que Claude Code genera (herramientas Bash y PowerShell, sesiones tmux, comandos [hook](/docs/es/hooks), comandos [línea de estado](/docs/es/statusline), subprocesos de [servidor MCP](/docs/es/mcp) stdio). Las extensiones de IDE también establecen esto en sus terminales integrados. Utilice para detectar cuándo un script se está ejecutando dentro de un subproceso generado por Claude Code. Para verificar si el proceso actual fue generado directamente por una llamada de herramienta o hook, en lugar de dentro de un servidor MCP stdio que Claude Code inició, utilice `CLAUDE_CODE_CHILD_SESSION` en su lugar |

153| `CLAUDE_AFK_COUNTDOWN_MS` | {/* min-version: 2.1.198 */}Cuántos milisegundos antes de auto-continuar aparece la cuenta regresiva en pantalla en un diálogo [`AskUserQuestion`](/es/tools-reference) sin respuesta. Predeterminado `20000` (20 segundos), limitado al tiempo de espera de auto-continuación. No tiene efecto a menos que auto-continuar esté activado; consulte la configuración [`askUserQuestionTimeout`](/es/settings#available-settings) y `CLAUDE_AFK_TIMEOUT_MS`. Requiere Claude Code v2.1.198 o posterior |153| `CLAUDE_AFK_COUNTDOWN_MS` | Cuántos milisegundos antes de auto-continuar aparece la cuenta regresiva en pantalla en un diálogo [`AskUserQuestion`](/docs/es/tools-reference) sin respuesta. Predeterminado `20000` (20 segundos), limitado al tiempo de espera de auto-continuación. No tiene efecto a menos que auto-continuar esté activado; consulte la configuración [`askUserQuestionTimeout`](/docs/es/settings#available-settings) y `CLAUDE_AFK_TIMEOUT_MS`. Requiere Claude Code v2.1.198 o posterior |

154| `CLAUDE_AFK_TIMEOUT_MS` | {/* min-version: 2.1.198 */}Cuántos milisegundos de tiempo inactivo antes de que un diálogo [`AskUserQuestion`](/es/tools-reference) sin respuesta se auto-continúe sin usted. {/* min-version: 2.1.200 */}Auto-continuar está desactivado de forma predeterminada; opte por participar con la configuración [`askUserQuestionTimeout`](/es/settings#available-settings). Esta variable es una anulación para demostraciones y pruebas automatizadas: cuando se establece, tiene precedencia sobre esa configuración y activa auto-continuar incluso cuando la configuración no está establecida o es `never`. Establecer `0` no desactiva el tiempo de espera; cierra el diálogo inmediatamente. En v2.1.198 y v2.1.199, auto-continuar estaba activado de forma predeterminada con un tiempo de espera de `60000` (60 segundos). Requiere Claude Code v2.1.198 o posterior |154| `CLAUDE_AFK_TIMEOUT_MS` | Cuántos milisegundos de tiempo inactivo antes de que un diálogo [`AskUserQuestion`](/docs/es/tools-reference) sin respuesta se auto-continúe sin usted. Auto-continuar está desactivado de forma predeterminada; opte por participar con la configuración [`askUserQuestionTimeout`](/docs/es/settings#available-settings). Esta variable es una anulación para demostraciones y pruebas automatizadas: cuando se establece, tiene precedencia sobre esa configuración y activa auto-continuar incluso cuando la configuración no está establecida o es `never`. Establecer `0` no desactiva el tiempo de espera; cierra el diálogo inmediatamente. En v2.1.198 y v2.1.199, auto-continuar estaba activado de forma predeterminada con un tiempo de espera de `60000` (60 segundos). Requiere Claude Code v2.1.198 o posterior |

155| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Establezca en `1` para deshabilitar todos los tipos de [subagentes](/es/sub-agents) integrados, como Explore y Plan. Solo se aplica en modo no interactivo (la bandera `-p`). Útil para usuarios de SDK que desean una pizarra en blanco |155| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Establezca en `1` para deshabilitar todos los tipos de [subagentes](/docs/es/sub-agents) integrados, como Explore y Plan. Solo se aplica en modo no interactivo (la bandera `-p`). Útil para usuarios de SDK que desean una pizarra en blanco |

156| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Establezca en `1` para omitir el prefijo `mcp__<server>__` en nombres de herramientas de servidores MCP creados por SDK. Las herramientas utilizan sus nombres originales. Solo uso de SDK |156| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Establezca en `1` para omitir el prefijo `mcp__<server>__` en nombres de herramientas de servidores MCP creados por SDK. Las herramientas utilizan sus nombres originales. Solo uso de SDK |

157| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Tiempo de espera de estancamiento en milisegundos para subagentes en segundo plano. Predeterminado `600000` (10 minutos). El temporizador se reinicia en cada evento de progreso de transmisión; si no llega progreso dentro de la ventana, el subagente se aborta y la tarea se marca como fallida, mostrando cualquier resultado parcial al padre |157| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Tiempo de espera de estancamiento en milisegundos para subagentes en segundo plano. Predeterminado `600000` (10 minutos). El temporizador se reinicia en cada evento de progreso de transmisión; si no llega progreso dentro de la ventana, el subagente se aborta y la tarea se marca como fallida, mostrando cualquier resultado parcial al padre |

158| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Establezca el porcentaje (1-100) de la ventana de compactación automática en el que se activa la compactación automática. Utilice valores más bajos como `50` para compactar antes. Esta variable solo causa compactación anterior cuando Claude Code compacta de forma proactiva: cuando se establece `CLAUDE_CODE_AUTO_COMPACT_WINDOW`, en [sesiones en la nube](/es/claude-code-on-the-web) y en Sonnet 4.6 y Opus 4.6 sin [contexto extendido](/es/model-config#extended-context), que compactan en el límite de 200K de forma predeterminada. En Sonnet 5, la compactación proactiva se aplica en el [umbral predeterminado](/es/model-config#sonnet-5-context-window) del modelo. En otros casos, como una sesión local en Opus 4.8, la compactación automática se activa cuando la conversación alcanza el límite de contexto del modelo. La anulación solo puede bajar el umbral, por lo que los valores por encima del predeterminado no tienen efecto. Se aplica tanto a conversaciones principales como a subagentes |158| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Establezca el porcentaje (1-100) de la ventana de compactación automática en el que se activa la compactación automática. Utilice valores más bajos como `50` para compactar antes. Esta variable solo causa compactación anterior cuando Claude Code compacta de forma proactiva: cuando se establece `CLAUDE_CODE_AUTO_COMPACT_WINDOW`, en [sesiones en la nube](/docs/es/claude-code-on-the-web) y en Sonnet 4.6 y Opus 4.6 sin [contexto extendido](/docs/es/model-config#extended-context), que compactan en el límite de 200K de forma predeterminada. En Sonnet 5, la compactación proactiva se aplica en el [umbral predeterminado](/docs/es/model-config#sonnet-5-context-window) del modelo. En otros casos, como una sesión local en Opus 4.8, la compactación automática se activa cuando la conversación alcanza el límite de contexto del modelo. La anulación solo puede bajar el umbral, por lo que los valores por encima del predeterminado no tienen efecto. Se aplica tanto a conversaciones principales como a subagentes |

159| `CLAUDE_AUTO_BACKGROUND_TASKS` | Establezca en `1` para forzar la habilitación del envío automático a segundo plano de tareas de agentes de larga duración. Cuando se habilita, los subagentes se mueven al segundo plano después de ejecutarse durante aproximadamente dos minutos |159| `CLAUDE_AUTO_BACKGROUND_TASKS` | Establezca en `1` para forzar la habilitación del envío automático a segundo plano de tareas de agentes de larga duración. Cuando se habilita, los subagentes se mueven al segundo plano después de ejecutarse durante aproximadamente dos minutos |

160| `CLAUDE_AX_SCREEN_READER` | {/* min-version: 2.1.181 */}Establezca en `1` para renderizar salida amigable con lector de pantalla: texto plano sin bordes decorativos ni animaciones. Establezca en `0` para forzar el modo lector de pantalla desactivado incluso cuando [`axScreenReader`](/es/settings#available-settings) es `true`. La bandera [`--ax-screen-reader`](/es/cli-reference#cli-flags) tiene precedencia. Requiere Claude Code v2.1.181 o posterior |160| `CLAUDE_AX_SCREEN_READER` | Establezca en `1` para renderizar salida amigable con lector de pantalla: texto plano sin bordes decorativos ni animaciones. Establezca en `0` para forzar el modo lector de pantalla desactivado incluso cuando [`axScreenReader`](/docs/es/settings#available-settings) es `true`. La bandera [`--ax-screen-reader`](/docs/es/cli-reference#cli-flags) tiene precedencia. Requiere Claude Code v2.1.181 o posterior |

161| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Vuelva al directorio de trabajo original después de cada comando Bash o PowerShell en la sesión principal |161| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Vuelva al directorio de trabajo original después de cada comando Bash o PowerShell en la sesión principal |

162| `CLAUDE_CLIENT_PRESENCE_FILE` | {/* min-version: 2.1.181 */}Ruta a un archivo que una herramienta externa, como un oyente de bloqueo de pantalla, crea cuando desbloquea su pantalla y elimina cuando la bloquea. Mientras el archivo existe, Claude Code omite [notificaciones push móviles de Control Remoto](/es/remote-control#mobile-push-notifications), por lo que deja de recibir notificaciones mientras está usando activamente la computadora. Cuando el archivo está ausente o no se puede leer, las notificaciones se envían normalmente. Claude Code verifica el archivo una vez por evento de activación de notificación en lugar de sondear. Requiere Claude Code v2.1.181 o posterior |162| `CLAUDE_CLIENT_PRESENCE_FILE` | Ruta a un archivo que una herramienta externa, como un oyente de bloqueo de pantalla, crea cuando desbloquea su pantalla y elimina cuando la bloquea. Mientras el archivo existe, Claude Code omite [notificaciones push móviles de Control Remoto](/docs/es/remote-control#mobile-push-notifications), por lo que deja de recibir notificaciones mientras está usando activamente la computadora. Cuando el archivo está ausente o no se puede leer, las notificaciones se envían normalmente. Claude Code verifica el archivo una vez por evento de activación de notificación en lugar de sondear. Requiere Claude Code v2.1.181 o posterior |

163| `CLAUDE_CODE_ACCESSIBILITY` | Establezca en `1` para mantener visible el cursor del terminal nativo y deshabilitar el indicador de cursor de texto invertido. Permite que ampliadores de pantalla como macOS Zoom rastreen la posición del cursor |163| `CLAUDE_CODE_ACCESSIBILITY` | Establezca en `1` para mantener visible el cursor del terminal nativo y deshabilitar el indicador de cursor de texto invertido. Permite que ampliadores de pantalla como macOS Zoom rastreen la posición del cursor |

164| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Establezca en `1` para cargar archivos de memoria desde directorios especificados con `--add-dir`. Carga `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md` y `CLAUDE.local.md`. De forma predeterminada, los directorios adicionales no cargan archivos de memoria |164| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Establezca en `1` para cargar archivos de memoria desde directorios especificados con `--add-dir`. Carga `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md` y `CLAUDE.local.md`. De forma predeterminada, los directorios adicionales no cargan archivos de memoria |

165| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Establezca en `1` para repintar la pantalla completa en cada fotograma en [renderizado a pantalla completa](/es/fullscreen) en lugar de enviar actualizaciones incrementales. Utilice esto si el modo pantalla completa muestra fragmentos de texto obsoletos o mal colocados. Claude Code habilita esto automáticamente para sesiones en segundo plano y [vista de agentes](/es/agent-view) en Windows |165| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Establezca en `1` para repintar la pantalla completa en cada fotograma en [renderizado a pantalla completa](/docs/es/fullscreen) en lugar de enviar actualizaciones incrementales. Utilice esto si el modo pantalla completa muestra fragmentos de texto obsoletos o mal colocados. Claude Code habilita esto automáticamente para sesiones en segundo plano y [vista de agentes](/docs/es/agent-view) en Windows |

166| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Establezca en `1` para enviar el parámetro [esfuerzo](/es/model-config#adjust-effort-level) con cada solicitud, incluso cuando Claude Code no reconoce el ID de modelo como capaz de esfuerzo. Utilice esto cuando enrute a través de una [puerta de enlace LLM](/es/llm-gateway) o proveedor de terceros que sirve modelos bajo identificadores personalizados. Los modelos que rechazan el parámetro de esfuerzo en la API, incluidos los modelos Claude 3, Sonnet 4.0 y 4.5, Opus 4.0 y 4.1 y Haiku 4.5, aún se excluyen para que las solicitudes no fallen |166| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Establezca en `1` para enviar el parámetro [esfuerzo](/docs/es/model-config#adjust-effort-level) con cada solicitud, incluso cuando Claude Code no reconoce el ID de modelo como capaz de esfuerzo. Utilice esto cuando enrute a través de una [puerta de enlace LLM](/docs/es/llm-gateway) o proveedor de terceros que sirve modelos bajo identificadores personalizados. Los modelos que rechazan el parámetro de esfuerzo en la API, incluidos los modelos Claude 3, Sonnet 4.0 y 4.5, Opus 4.0 y 4.1 y Haiku 4.5, aún se excluyen para que las solicitudes no fallen |

167| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Intervalo en milisegundos en el que se deben actualizar las credenciales (al usar [`apiKeyHelper`](/es/settings#available-settings)) |167| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Intervalo en milisegundos en el que se deben actualizar las credenciales (al usar [`apiKeyHelper`](/docs/es/settings#available-settings)) |

168| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Establezca en `0` para evitar que Claude Code abra el navegador automáticamente cuando se publica un nuevo artefacto. Volver a publicar un artefacto existente no abre el navegador independientemente de esta configuración |168| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Establezca en `0` para evitar que Claude Code abra el navegador automáticamente cuando se publica un nuevo artefacto. Volver a publicar un artefacto existente no abre el navegador independientemente de esta configuración |

169| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Establezca en `0` para omitir el bloque de atribución (versión del cliente e huella digital del indicador) desde el inicio del indicador del sistema. Deshabilitarlo mejora las tasas de acierto de caché de indicadores cuando se enruta a través de una [puerta de enlace LLM](/es/llm-gateway). El almacenamiento en caché de API de Anthropic no se ve afectado de ninguna manera |169| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Establezca en `0` para omitir el bloque de atribución (versión del cliente e huella digital del indicador) desde el inicio del indicador del sistema. Deshabilitarlo mejora las tasas de acierto de caché de indicadores cuando se enruta a través de una [puerta de enlace LLM](/docs/es/llm-gateway). El almacenamiento en caché de API de Anthropic no se ve afectado de ninguna manera |

170| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Establezca la capacidad de contexto en tokens utilizada para cálculos de compactación automática. El valor predeterminado es la ventana de contexto del modelo: 200K para modelos estándar o 1M para modelos de [contexto extendido](/es/model-config#extended-context), excepto en Sonnet 5, que tiene su propio [umbral predeterminado](/es/model-config#sonnet-5-context-window). Utilice un valor más bajo como `500000` en un modelo de 1M para tratar la ventana como 500K para propósitos de compactación. El valor se limita a la ventana de contexto real del modelo. `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` se aplica como porcentaje de este valor. Establecer esta variable desvincula el umbral de compactación del `used_percentage` de la línea de estado, que siempre utiliza la ventana de contexto completa del modelo |170| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Establezca la capacidad de contexto en tokens utilizada para cálculos de compactación automática. El valor predeterminado es la ventana de contexto del modelo: 200K para modelos estándar o 1M para modelos de [contexto extendido](/docs/es/model-config#extended-context), excepto en Sonnet 5, que tiene su propio [umbral predeterminado](/docs/es/model-config#sonnet-5-context-window). Utilice un valor más bajo como `500000` en un modelo de 1M para tratar la ventana como 500K para propósitos de compactación. El valor se limita a la ventana de contexto real del modelo. `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` se aplica como porcentaje de este valor. Establecer esta variable desvincula el umbral de compactación del `used_percentage` de la línea de estado, que siempre utiliza la ventana de contexto completa del modelo |

171| `CLAUDE_CODE_AUTO_CONNECT_IDE` | Anule la [conexión automática de IDE](/es/vs-code). De forma predeterminada, Claude Code se conecta automáticamente cuando se lanza dentro del terminal integrado de un IDE compatible. Establezca en `false` para evitar esto. Establezca en `true` para forzar un intento de conexión cuando la detección automática falla, como cuando tmux oculta el terminal principal. Tiene precedencia sobre la configuración global [`autoConnectIde`](/es/settings#global-config-settings) |171| `CLAUDE_CODE_AUTO_CONNECT_IDE` | Anule la [conexión automática de IDE](/docs/es/vs-code). De forma predeterminada, Claude Code se conecta automáticamente cuando se lanza dentro del terminal integrado de un IDE compatible. Establezca en `false` para evitar esto. Establezca en `true` para forzar un intento de conexión cuando la detección automática falla, como cuando tmux oculta el terminal principal. Tiene precedencia sobre la configuración global [`autoConnectIde`](/docs/es/settings#global-config-settings) |

172| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | {/* min-version: 2.1.207 */}Tiempo en milisegundos que Claude Code espera a que la cadena de proveedor de credenciales predeterminada de AWS produzca credenciales antes de que la solicitud falle con [`AWS default-chain credential resolve timed out`](/es/errors#aws-default-chain-credential-resolve-timed-out) (predeterminado: `60000`). Aumente cuando un paso en su cadena legítimamente necesita más tiempo, como un inicio de sesión SSO basado en navegador con MFA a través de un contenedor como `aws-vault`. Se aplica donde Claude Code firma con la cadena predeterminada: [Amazon Bedrock](/es/amazon-bedrock#credential-caching-and-resolution-timeout), [Claude Platform on AWS](/es/claude-platform-on-aws) y el [endpoint Mantle](/es/amazon-bedrock#use-the-mantle-endpoint). Requiere Claude Code v2.1.207 o posterior |172| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Tiempo en milisegundos que Claude Code espera a que la cadena de proveedor de credenciales predeterminada de AWS produzca credenciales antes de que la solicitud falle con [`AWS default-chain credential resolve timed out`](/docs/es/errors#aws-default-chain-credential-resolve-timed-out) (predeterminado: `60000`). Aumente cuando un paso en su cadena legítimamente necesita más tiempo, como un inicio de sesión SSO basado en navegador con MFA a través de un contenedor como `aws-vault`. Se aplica donde Claude Code firma con la cadena predeterminada: [Amazon Bedrock](/docs/es/amazon-bedrock#credential-caching-and-resolution-timeout), [Claude Platform on AWS](/docs/es/claude-platform-on-aws) y el [endpoint Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint). Requiere Claude Code v2.1.207 o posterior |

173| `CLAUDE_CODE_BRIDGE_SESSION_ID` | {/* min-version: 2.1.199 */}Se establece automáticamente en subprocesos de herramientas Bash y [comandos hook](/es/hooks) mientras la sesión tiene una conexión activa de [Control Remoto](/es/remote-control), y se elimina cuando la conexión termina. El valor es el ID de la sesión en forma `session_`, el mismo identificador que aparece en la URL `claude.ai/code` de la sesión, para que un script pueda vincular de vuelta a la sesión que lo ejecutó. Requiere Claude Code v2.1.199 o posterior. En [sesiones en la nube](/es/claude-code-on-the-web), lea `CLAUDE_CODE_REMOTE_SESSION_ID` en su lugar |173| `CLAUDE_CODE_BRIDGE_SESSION_ID` | Se establece automáticamente en subprocesos de herramientas Bash y [comandos hook](/docs/es/hooks) mientras la sesión tiene una conexión activa de [Control Remoto](/docs/es/remote-control), y se elimina cuando la conexión termina. El valor es el ID de la sesión en forma `session_`, el mismo identificador que aparece en la URL `claude.ai/code` de la sesión, para que un script pueda vincular de vuelta a la sesión que lo ejecutó. Requiere Claude Code v2.1.199 o posterior. En [sesiones en la nube](/docs/es/claude-code-on-the-web), lea `CLAUDE_CODE_REMOTE_SESSION_ID` en su lugar |

174| `CLAUDE_CODE_CERT_STORE` | Lista separada por comas de fuentes de certificados CA para conexiones TLS. `bundled` es el conjunto de CA de Mozilla incluido con Claude Code. `system` es el almacén de confianza del sistema operativo, de solo lectura en tiempos de ejecución con `tls.getCACertificates`: el binario nativo, o Node 22.15 o posterior para instalaciones npm. Consulte [Almacén de certificados CA](/es/network-config#ca-certificate-store). El valor predeterminado es `bundled,system` |174| `CLAUDE_CODE_CERT_STORE` | Lista separada por comas de fuentes de certificados CA para conexiones TLS. `bundled` es el conjunto de CA de Mozilla incluido con Claude Code. `system` es el almacén de confianza del sistema operativo, de solo lectura en tiempos de ejecución con `tls.getCACertificates`: el binario nativo, o Node 22.15 o posterior para instalaciones npm. Consulte [Almacén de certificados CA](/docs/es/network-config#ca-certificate-store). El valor predeterminado es `bundled,system` |

175| `CLAUDE_CODE_CHILD_SESSION` | {/* min-version: 2.1.172 */}Establezca en `1` en subprocesos que Claude Code genera a través de las herramientas Bash, PowerShell y Monitor, comandos [hook](/es/hooks) y comandos de [línea de estado](/es/statusline). No se establece para subprocesos de [servidor MCP](/es/mcp) stdio, que son de larga duración y sobreviven a la sesión que los generó. A diferencia de `CLAUDECODE`, esto solo se establece por Claude Code mismo cuando lanza un subproceso y no por extensiones de IDE, por lo que distingue de manera confiable una sesión anidada de un `claude` de nivel superior lanzado en un terminal integrado de IDE. Una `claude` TUI interactiva anidada iniciada de esta manera se excluye automáticamente de `--resume`, `--continue`, historial de flecha hacia arriba y la lista `claude agents`. Las sesiones `claude -p` no interactivas aún persisten. Establezca `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` para anular esta exclusión. Requiere Claude Code v2.1.172 o posterior |175| `CLAUDE_CODE_CHILD_SESSION` | Establezca en `1` en subprocesos que Claude Code genera a través de las herramientas Bash, PowerShell y Monitor, comandos [hook](/docs/es/hooks) y comandos de [línea de estado](/docs/es/statusline). No se establece para subprocesos de [servidor MCP](/docs/es/mcp) stdio, que son de larga duración y sobreviven a la sesión que los generó. A diferencia de `CLAUDECODE`, esto solo se establece por Claude Code mismo cuando lanza un subproceso y no por extensiones de IDE, por lo que distingue de manera confiable una sesión anidada de un `claude` de nivel superior lanzado en un terminal integrado de IDE. Una `claude` TUI interactiva anidada iniciada de esta manera se excluye automáticamente de `--resume`, `--continue`, historial de flecha hacia arriba y la lista `claude agents`. Las sesiones `claude -p` no interactivas aún persisten. Establezca `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` para anular esta exclusión. Requiere Claude Code v2.1.172 o posterior |

176| `CLAUDE_CODE_CLIENT_CERT` | Ruta al archivo de certificado de cliente para autenticación mTLS |176| `CLAUDE_CODE_CLIENT_CERT` | Ruta al archivo de certificado de cliente para autenticación mTLS |

177| `CLAUDE_CODE_CLIENT_KEY` | Ruta al archivo de clave privada de cliente para autenticación mTLS |177| `CLAUDE_CODE_CLIENT_KEY` | Ruta al archivo de clave privada de cliente para autenticación mTLS |

178| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Frase de contraseña para CLAUDE\_CODE\_CLIENT\_KEY cifrada (opcional) |178| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Frase de contraseña para CLAUDE\_CODE\_CLIENT\_KEY cifrada (opcional) |

179| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | {/* max-version: 2.1.185 */}Eliminado en v2.1.186 y ahora es un no-op. Anteriormente establecía un tiempo de espera separado para la fase de conexión, TLS y encabezado de respuesta de una solicitud de API transmitida. Use `API_TIMEOUT_MS` para el tiempo de espera por solicitud |179| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | Eliminado en v2.1.186 y ahora es un no-op. Anteriormente establecía un tiempo de espera separado para la fase de conexión, TLS y encabezado de respuesta de una solicitud de API transmitida. Use `API_TIMEOUT_MS` para el tiempo de espera por solicitud |

180| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Anule la ruta del archivo de registro de depuración. A pesar del nombre, esta es una ruta de archivo, no un directorio. Requiere que el modo de depuración se habilite por separado a través de `--debug`, `/debug` o la variable de entorno `DEBUG`: establecer esta variable sola no habilita el registro. La bandera [`--debug-file`](/es/cli-reference#cli-flags) hace ambas cosas a la vez. El valor predeterminado es `~/.claude/debug/<session-id>.txt` |180| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Anule la ruta del archivo de registro de depuración. A pesar del nombre, esta es una ruta de archivo, no un directorio. Requiere que el modo de depuración se habilite por separado a través de `--debug`, `/debug` o la variable de entorno `DEBUG`: establecer esta variable sola no habilita el registro. La bandera [`--debug-file`](/docs/es/cli-reference#cli-flags) hace ambas cosas a la vez. El valor predeterminado es `~/.claude/debug/<session-id>.txt` |

181| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Nivel de registro mínimo escrito en el archivo de registro de depuración. Valores: `verbose`, `debug` (predeterminado), `info`, `warn`, `error`. Establezca en `verbose` para incluir diagnósticos de alto volumen como salida completa de comandos de línea de estado, o aumente a `error` para reducir ruido |181| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Nivel de registro mínimo escrito en el archivo de registro de depuración. Valores: `verbose`, `debug` (predeterminado), `info`, `warn`, `error`. Establezca en `verbose` para incluir diagnósticos de alto volumen como salida completa de comandos de línea de estado, o aumente a `error` para reducir ruido |

182| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Establezca en `1` para deshabilitar el soporte de [ventana de contexto de 1M](/es/model-config#extended-context). Cuando se establece, las variantes de modelo de 1M no están disponibles en el selector de modelo, y las sesiones de [Sonnet 5](/es/model-config#sonnet-5-context-window) se tratan como si tuvieran una ventana de 200K. Útil para entornos empresariales con requisitos de cumplimiento |182| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Establezca en `1` para deshabilitar el soporte de [ventana de contexto de 1M](/docs/es/model-config#extended-context). Cuando se establece, las variantes de modelo de 1M no están disponibles en el selector de modelo, y las sesiones de [Sonnet 5](/docs/es/model-config#sonnet-5-context-window) se tratan como si tuvieran una ventana de 200K. Útil para entornos empresariales con requisitos de cumplimiento |

183| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Establezca en `1` para deshabilitar [razonamiento adaptativo](/es/model-config#adjust-effort-level) en Opus 4.6 y Sonnet 4.6 y volver al presupuesto de pensamiento fijo controlado por `MAX_THINKING_TOKENS`. {/* min-version: 2.1.111 */}A partir de v2.1.111, no tiene efecto en Fable 5, Sonnet 5 u Opus 4.7 y posterior, que siempre utilizan razonamiento adaptativo |183| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Establezca en `1` para deshabilitar [razonamiento adaptativo](/docs/es/model-config#adjust-effort-level) en Opus 4.6 y Sonnet 4.6 y volver al presupuesto de pensamiento fijo controlado por `MAX_THINKING_TOKENS`. A partir de v2.1.111, no tiene efecto en Fable 5, Sonnet 5 u Opus 4.7 y posterior, que siempre utilizan razonamiento adaptativo |

184| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Establezca en `1` para deshabilitar la [herramienta asesor](/es/advisor). El comando `/advisor` no estará disponible, cualquier `advisorModel` configurado se ignora, y la bandera `--advisor` se acepta pero no tiene efecto, por lo que los scripts existentes que la pasan continúan funcionando sin errores |184| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Establezca en `1` para deshabilitar la [herramienta asesor](/docs/es/advisor). El comando `/advisor` no estará disponible, cualquier `advisorModel` configurado se ignora, y la bandera `--advisor` se acepta pero no tiene efecto, por lo que los scripts existentes que la pasan continúan funcionando sin errores |

185| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | Establezca en `1` para desactivar [agentes en segundo plano y vista de agentes](/es/agent-view): `claude agents`, `--bg`, `/background` y el supervisor bajo demanda. Equivalente a la configuración [`disableAgentView`](/es/settings#available-settings) |185| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | Establezca en `1` para desactivar [agentes en segundo plano y vista de agentes](/docs/es/agent-view): `claude agents`, `--bg`, `/background` y el supervisor bajo demanda. Equivalente a la configuración [`disableAgentView`](/docs/es/settings#available-settings) |

186| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Establezca en `1` para deshabilitar [renderizado a pantalla completa](/es/fullscreen) y utilizar el renderizador de pantalla principal clásico. La conversación permanece en el desplazamiento nativo de su terminal para que `Cmd+f` y el modo de copia de tmux funcionen como de costumbre. Tiene precedencia sobre `CLAUDE_CODE_NO_FLICKER` y la configuración [`tui`](/es/settings#available-settings). También puede cambiar con `/tui default`. No se aplica a sesiones en segundo plano abiertas desde [vista de agentes](/es/agent-view), que siempre utilizan renderizado a pantalla completa |186| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Establezca en `1` para deshabilitar [renderizado a pantalla completa](/docs/es/fullscreen) y utilizar el renderizador de pantalla principal clásico. La conversación permanece en el desplazamiento nativo de su terminal para que `Cmd+f` y el modo de copia de tmux funcionen como de costumbre. Tiene precedencia sobre `CLAUDE_CODE_NO_FLICKER` y la configuración [`tui`](/docs/es/settings#available-settings). También puede cambiar con `/tui default`. No se aplica a sesiones en segundo plano abiertas desde [vista de agentes](/docs/es/agent-view), que siempre utilizan renderizado a pantalla completa |

187| `CLAUDE_CODE_DISABLE_ARTIFACT` | Establezca en `1` para deshabilitar la herramienta de artefacto, que publica la salida de sesión como una página web privada en claude.ai. Equivalente a la configuración [`disableArtifact`](/es/settings#available-settings) |187| `CLAUDE_CODE_DISABLE_ARTIFACT` | Establezca en `1` para deshabilitar la herramienta de artefacto, que publica la salida de sesión como una página web privada en claude.ai. Equivalente a la configuración [`disableArtifact`](/docs/es/settings#available-settings) |

188| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Establezca en `1` para deshabilitar el procesamiento de archivos adjuntos. Las menciones de archivos con sintaxis `@` se envían como texto sin formato en lugar de expandirse en contenido de archivo |188| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Establezca en `1` para deshabilitar el procesamiento de archivos adjuntos. Las menciones de archivos con sintaxis `@` se envían como texto sin formato en lugar de expandirse en contenido de archivo |

189| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Establezca en `1` para deshabilitar [memoria automática](/es/memory#auto-memory). Establezca en `0` para forzar la memoria automática incluso cuando el modo `--bare` o [`autoMemoryEnabled: false`](/es/settings#available-settings) la deshabilitaría de otra manera. Cuando se deshabilita, Claude no crea ni carga archivos de memoria automática |189| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Establezca en `1` para deshabilitar [memoria automática](/docs/es/memory#auto-memory). Establezca en `0` para forzar la memoria automática incluso cuando el modo `--bare` o [`autoMemoryEnabled: false`](/docs/es/settings#available-settings) la deshabilitaría de otra manera. Cuando se deshabilita, Claude no crea ni carga archivos de memoria automática |

190| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Establezca en `1` para deshabilitar toda la funcionalidad de tareas en segundo plano, incluido el parámetro `run_in_background` en herramientas Bash y subagentes, auto-backgrounding y el atajo Ctrl+B |190| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Establezca en `1` para deshabilitar toda la funcionalidad de tareas en segundo plano, incluido el parámetro `run_in_background` en herramientas Bash y subagentes, auto-backgrounding y el atajo Ctrl+B |

191| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | {/* min-version: 2.1.208 */}Establezca en `1` para omitir la verificación de que una respuesta transmitida de [Amazon Bedrock](/es/amazon-bedrock) lleve el tipo de contenido `application/vnd.amazon.eventstream`. Sin esta variable, una respuesta con un tipo de contenido diferente falla con un error que nombra ese tipo de contenido, lo que significa que una [puerta de enlace o proxy está transformando la respuesta](/es/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Establézcalo solo cuando la puerta de enlace reescribe el encabezado `Content-Type` pero pasa el cuerpo de flujo de eventos binario sin modificar; si el cuerpo en sí fue transformado, las solicitudes fallan con `Truncated event message received` en su lugar. Requiere Claude Code v2.1.208 o posterior |191| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Establezca en `1` para omitir la verificación de que una respuesta transmitida de [Amazon Bedrock](/docs/es/amazon-bedrock) lleve el tipo de contenido `application/vnd.amazon.eventstream`. Sin esta variable, una respuesta con un tipo de contenido diferente falla con un error que nombra ese tipo de contenido, lo que significa que una [puerta de enlace o proxy está transformando la respuesta](/docs/es/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Establézcalo solo cuando la puerta de enlace reescribe el encabezado `Content-Type` pero pasa el cuerpo de flujo de eventos binario sin modificar; si el cuerpo en sí fue transformado, las solicitudes fallan con `Truncated event message received` en su lugar. Requiere Claude Code v2.1.208 o posterior |

192| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | {/* min-version: 2.1.196 */}Establezca en `1` para detener los comandos de shell en segundo plano en ejecución de una [sesión en segundo plano](/es/agent-view), flujos de trabajo dinámicos y {/* min-version: 2.1.198 */}a partir de v2.1.198, subagentes en segundo plano cuando el [supervisor](/es/agent-view#the-supervisor-process) detiene, reinicia o actualiza el proceso de esa sesión, en lugar de entregarlos al siguiente proceso de la sesión. Afecta solo a esa entrega: poner una sesión en segundo plano con `←` o [`/background`](/es/agent-view#from-inside-a-session) aún lleva el trabajo en vuelo, y `CLAUDE_DISABLE_ADOPT` desactiva ambos. Requiere Claude Code v2.1.196 o posterior |192| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Establezca en `1` para detener los comandos de shell en segundo plano en ejecución de una [sesión en segundo plano](/docs/es/agent-view), flujos de trabajo dinámicos y a partir de v2.1.198, subagentes en segundo plano cuando el [supervisor](/docs/es/agent-view#the-supervisor-process) detiene, reinicia o actualiza el proceso de esa sesión, en lugar de entregarlos al siguiente proceso de la sesión. Afecta solo a esa entrega: poner una sesión en segundo plano con `←` o [`/background`](/docs/es/agent-view#from-inside-a-session) aún lleva el trabajo en vuelo, y `CLAUDE_DISABLE_ADOPT` desactiva ambos. Requiere Claude Code v2.1.196 o posterior |

193| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | {/* min-version: 2.1.193 */}Establezca en `1` para detener que Claude Code termine [comandos de shell en segundo plano](/es/interactive-mode#background-bash-commands) cuando el sistema operativo reporta presión de memoria. De forma predeterminada, en macOS y Linux, Claude Code termina un shell en segundo plano iniciado en la sesión principal en una señal de presión de memoria una vez que la sesión ha estado inactiva durante 30 minutos y no hay turno o subagente en ejecución. Windows no tiene una señal de presión de memoria, por lo que esta variable no tiene efecto allí. Requiere Claude Code v2.1.193 o posterior |193| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Establezca en `1` para detener que Claude Code termine [comandos de shell en segundo plano](/docs/es/interactive-mode#background-bash-commands) cuando el sistema operativo reporta presión de memoria. De forma predeterminada, en macOS y Linux, Claude Code termina un shell en segundo plano iniciado en la sesión principal en una señal de presión de memoria una vez que la sesión ha estado inactiva durante 30 minutos y no hay turno o subagente en ejecución. Windows no tiene una señal de presión de memoria, por lo que esta variable no tiene efecto allí. Requiere Claude Code v2.1.193 o posterior |

194| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Establezca en `1` para deshabilitar las [skills](/es/skills) y flujos de trabajo que se incluyen con Claude Code: las skills agrupadas y los flujos de trabajo integrados se eliminan completamente, mientras que los comandos slash integrados como `/init` permanecen escribibles pero se ocultan del modelo. `/doctor` permanece escribible como los comandos integrados; ocúltalo con `DISABLE_DOCTOR_COMMAND` en su lugar. Las skills de plugins, `.claude/skills/` y `.claude/commands/` no se ven afectadas. Equivalente a la configuración [`disableBundledSkills`](/es/settings#available-settings); `0` no la anula |194| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Establezca en `1` para deshabilitar las [skills](/docs/es/skills) y flujos de trabajo que se incluyen con Claude Code: las skills agrupadas y los flujos de trabajo integrados se eliminan completamente, mientras que los comandos slash integrados como `/init` permanecen escribibles pero se ocultan del modelo. `/doctor` permanece escribible como los comandos integrados; ocúltalo con `DISABLE_DOCTOR_COMMAND` en su lugar. Las skills de plugins, `.claude/skills/` y `.claude/commands/` no se ven afectadas. Equivalente a la configuración [`disableBundledSkills`](/docs/es/settings#available-settings); `0` no la anula |

195| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Establezca en `1` para evitar cargar cualquier archivo de memoria CLAUDE.md en contexto, incluidos archivos de usuario, proyecto y memoria automática |195| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Establezca en `1` para evitar cargar cualquier archivo de memoria CLAUDE.md en contexto, incluidos archivos de usuario, proyecto y memoria automática |

196| `CLAUDE_CODE_DISABLE_CRON` | Establezca en `1` para deshabilitar [tareas programadas](/es/scheduled-tasks). La skill `/loop` y las herramientas cron no estarán disponibles y cualquier tarea ya programada dejará de ejecutarse, incluidas las tareas que ya se están ejecutando en mitad de sesión |196| `CLAUDE_CODE_DISABLE_CRON` | Establezca en `1` para deshabilitar [tareas programadas](/docs/es/scheduled-tasks). La skill `/loop` y las herramientas cron no estarán disponibles y cualquier tarea ya programada dejará de ejecutarse, incluidas las tareas que ya se están ejecutando en mitad de sesión |

197| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Establezca en `1` para eliminar encabezados de solicitud `anthropic-beta` específicos de Anthropic y campos de esquema de herramienta beta (como `defer_loading` y `eager_input_streaming`) de solicitudes de API. Utilice esto cuando una puerta de enlace proxy rechace solicitudes con errores como "Unexpected value(s) for the `anthropic-beta` header" o "Extra inputs are not permitted". Los campos estándar (`name`, `description`, `input_schema`, `cache_control`) se conservan. [búsqueda de herramientas MCP](/es/mcp#scale-with-mcp-tool-search) está deshabilitada y todas las herramientas MCP se cargan por adelantado, incluso cuando se establece `ENABLE_TOOL_SEARCH` |197| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Establezca en `1` para eliminar encabezados de solicitud `anthropic-beta` específicos de Anthropic y campos de esquema de herramienta beta (como `defer_loading` y `eager_input_streaming`) de solicitudes de API. Utilice esto cuando una puerta de enlace proxy rechace solicitudes con errores como "Unexpected value(s) for the `anthropic-beta` header" o "Extra inputs are not permitted". Los campos estándar (`name`, `description`, `input_schema`, `cache_control`) se conservan. [búsqueda de herramientas MCP](/docs/es/mcp#scale-with-mcp-tool-search) está deshabilitada y todas las herramientas MCP se cargan por adelantado, incluso cuando se establece `ENABLE_TOOL_SEARCH` |

198| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | {/* min-version: 2.1.198 */}Establezca en `1` para deshabilitar los [subagentes Explore y Plan integrados](/es/sub-agents#built-in-subagents). Claude explora con sus herramientas de búsqueda o el subagente de propósito general en su lugar, y [plan mode](/es/permission-modes#analyze-before-you-edit-with-plan-mode) lee archivos directamente en lugar de lanzar agentes Explore y Plan. Los subagentes personalizados nombrados `Explore` o `Plan` no se ven afectados. Para eliminar cada tipo de subagente integrado en el Agent SDK o modo no interactivo, use `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` en su lugar. Requiere Claude Code v2.1.198 o posterior |198| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | Establezca en `1` para deshabilitar los [subagentes Explore y Plan integrados](/docs/es/sub-agents#built-in-subagents). Claude explora con sus herramientas de búsqueda o el subagente de propósito general en su lugar, y [plan mode](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode) lee archivos directamente en lugar de lanzar agentes Explore y Plan. Los subagentes personalizados nombrados `Explore` o `Plan` no se ven afectados. Para eliminar cada tipo de subagente integrado en el Agent SDK o modo no interactivo, use `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` en su lugar. Requiere Claude Code v2.1.198 o posterior |

199| `CLAUDE_CODE_DISABLE_FAST_MODE` | Establezca en `1` para deshabilitar [modo rápido](/es/fast-mode) |199| `CLAUDE_CODE_DISABLE_FAST_MODE` | Establezca en `1` para deshabilitar [modo rápido](/docs/es/fast-mode) |

200| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Establezca en `1` para deshabilitar las encuestas de calidad de sesión "¿Cómo está funcionando Claude?". Las encuestas también se deshabilitan cuando se establece `DISABLE_TELEMETRY`, `DO_NOT_TRACK` o `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, a menos que `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` opte por participar nuevamente. Para establecer una tasa de muestreo en lugar de deshabilitar completamente, utilice la configuración [`feedbackSurveyRate`](/es/settings#available-settings). Consulte [Encuestas de calidad de sesión](/es/data-usage#session-quality-surveys) |200| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Establezca en `1` para deshabilitar las encuestas de calidad de sesión "¿Cómo está funcionando Claude?". Las encuestas también se deshabilitan cuando se establece `DISABLE_TELEMETRY`, `DO_NOT_TRACK` o `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, a menos que `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` opte por participar nuevamente. Para establecer una tasa de muestreo en lugar de deshabilitar completamente, utilice la configuración [`feedbackSurveyRate`](/docs/es/settings#available-settings). Consulte [Encuestas de calidad de sesión](/docs/es/data-usage#session-quality-surveys) |

201| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Establezca en `1` para deshabilitar el [checkpointing](/es/checkpointing) de archivos. El comando `/rewind` no podrá restaurar cambios de código |201| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Establezca en `1` para deshabilitar el [checkpointing](/docs/es/checkpointing) de archivos. El comando `/rewind` no podrá restaurar cambios de código |

202| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Establezca en `1` para eliminar las instrucciones de flujo de trabajo de confirmación y PR integradas y la instantánea de estado de git del indicador del sistema de Claude. Útil cuando se utilizan sus propias skills de flujo de trabajo de git. Tiene precedencia sobre la configuración [`includeGitInstructions`](/es/settings#available-settings) cuando se establece |202| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Establezca en `1` para eliminar las instrucciones de flujo de trabajo de confirmación y PR integradas y la instantánea de estado de git del indicador del sistema de Claude. Útil cuando se utilizan sus propias skills de flujo de trabajo de git. Tiene precedencia sobre la configuración [`includeGitInstructions`](/docs/es/settings#available-settings) cuando se establece |

203| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Establezca en `1` para evitar el remapeo automático de Opus 4.0 y 4.1 a la versión actual de Opus en la API de Anthropic. Utilice cuando desee fijar intencionalmente un modelo anterior. El remapeo no se ejecuta en Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry |203| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Establezca en `1` para evitar el remapeo automático de Opus 4.0 y 4.1 a la versión actual de Opus en la API de Anthropic. Utilice cuando desee fijar intencionalmente un modelo anterior. El remapeo no se ejecuta en Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry |

204| `CLAUDE_CODE_DISABLE_MOUSE` | Establezca en `1` para deshabilitar el seguimiento del ratón en [renderizado a pantalla completa](/es/fullscreen). El desplazamiento por teclado con `PgUp` y `PgDn` sigue funcionando. Utilice esto para mantener el comportamiento nativo de copiar al seleccionar de su terminal |204| `CLAUDE_CODE_DISABLE_MOUSE` | Establezca en `1` para deshabilitar el seguimiento del ratón en [renderizado a pantalla completa](/docs/es/fullscreen). El desplazamiento por teclado con `PgUp` y `PgDn` sigue funcionando. Utilice esto para mantener el comportamiento nativo de copiar al seleccionar de su terminal |

205| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | {/* min-version: 2.1.195 */}Establezca en `1` para deshabilitar el manejo de clics, arrastres y desplazamientos en [renderizado a pantalla completa](/es/fullscreen) mientras se mantiene el desplazamiento de la rueda del ratón. Utilice esto cuando desee que el desplazamiento de la rueda funcione dentro de Claude Code pero no desee que los clics posicionen el cursor, expandan la salida de herramientas o abran enlaces. `CLAUDE_CODE_DISABLE_MOUSE` tiene precedencia cuando ambos se establecen. Requiere Claude Code v2.1.195 o posterior |205| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | Establezca en `1` para deshabilitar el manejo de clics, arrastres y desplazamientos en [renderizado a pantalla completa](/docs/es/fullscreen) mientras se mantiene el desplazamiento de la rueda del ratón. Utilice esto cuando desee que el desplazamiento de la rueda funcione dentro de Claude Code pero no desee que los clics posicionen el cursor, expandan la salida de herramientas o abran enlaces. `CLAUDE_CODE_DISABLE_MOUSE` tiene precedencia cuando ambos se establecen. Requiere Claude Code v2.1.195 o posterior |

206| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Equivalente a establecer `DISABLE_AUTOUPDATER`, `DISABLE_FEEDBACK_COMMAND`, `DISABLE_ERROR_REPORTING` y `DISABLE_TELEMETRY` |206| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Equivalente a establecer `DISABLE_AUTOUPDATER`, `DISABLE_FEEDBACK_COMMAND`, `DISABLE_ERROR_REPORTING` y `DISABLE_TELEMETRY` |

207| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Establezca en `1` para deshabilitar el respaldo no transmitido cuando una solicitud transmitida falla a mitad de transmisión. Los errores de transmisión se propagan a la capa de reintento en su lugar. Útil cuando un proxy o puerta de enlace causa que el respaldo produzca ejecución de herramientas duplicadas |207| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Establezca en `1` para deshabilitar el respaldo no transmitido cuando una solicitud transmitida falla a mitad de transmisión. Los errores de transmisión se propagan a la capa de reintento en su lugar. Útil cuando un proxy o puerta de enlace causa que el respaldo produzca ejecución de herramientas duplicadas |

208| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | {/* min-version: 2.1.193 */}Establezca en `1` para enviar la notificación de escritorio de la herramienta `PushNotification` incluso mientras está escribiendo en o enfocado en la terminal. De forma predeterminada, la herramienta omite tanto la notificación de escritorio como el [push móvil](/es/remote-control#mobile-push-notifications) cuando detecta actividad de teclado reciente o enfoque de terminal. Esta variable deshabilita solo esa verificación local, por lo que el servidor aún puede suprimir el push móvil cuando detecta que está activo. Requiere Claude Code v2.1.193 o posterior |208| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | Establezca en `1` para enviar la notificación de escritorio de la herramienta `PushNotification` incluso mientras está escribiendo en o enfocado en la terminal. De forma predeterminada, la herramienta omite tanto la notificación de escritorio como el [push móvil](/docs/es/remote-control#mobile-push-notifications) cuando detecta actividad de teclado reciente o enfoque de terminal. Esta variable deshabilita solo esa verificación local, por lo que el servidor aún puede suprimir el push móvil cuando detecta que está activo. Requiere Claude Code v2.1.193 o posterior |

209| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Establezca en `1` para omitir la adición automática del marketplace oficial de plugins en la primera ejecución |209| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Establezca en `1` para omitir la adición automática del marketplace oficial de plugins en la primera ejecución |

210| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Establezca en `1` para omitir la carga de skills desde el directorio de skills administradas en todo el sistema. Útil para sesiones de contenedor o CI que no deben cargar skills aprovisionadas por operadores |210| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Establezca en `1` para omitir la carga de skills desde el directorio de skills administradas en todo el sistema. Útil para sesiones de contenedor o CI que no deben cargar skills aprovisionadas por operadores |

211| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Establezca en `1` para deshabilitar las actualizaciones automáticas del título del terminal basadas en el contexto de la conversación. En sesiones de Agent SDK y `claude -p`, esto también omite la solicitud de Haiku en segundo plano que genera el título de la sesión |211| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Establezca en `1` para deshabilitar las actualizaciones automáticas del título del terminal basadas en el contexto de la conversación. En sesiones de Agent SDK y `claude -p`, esto también omite la solicitud de Haiku en segundo plano que genera el título de la sesión |

212| `CLAUDE_CODE_DISABLE_THINKING` | Establezca en `1` para omitir el parámetro `thinking` de solicitudes de API completamente. Esta es una opción de compatibilidad para proxies y puertas de enlace que rechazan el parámetro. El comportamiento de la variable es sin cambios desde versiones anteriores; en modelos que piensan de forma predeterminada, omitir el parámetro significa que el modelo aún puede pensar. Para deshabilitar explícitamente [pensamiento extendido](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) en la API de Anthropic, utilice `MAX_THINKING_TOKENS=0` en su lugar, que también es inefectivo en Fable 5 ya que no puede tener el pensamiento desactivado. En [proveedores de terceros](/es/third-party-integrations), `0` asimismo omite el parámetro, por lo que las dos variables se comportan igual allí |212| `CLAUDE_CODE_DISABLE_THINKING` | Establezca en `1` para omitir el parámetro `thinking` de solicitudes de API completamente. Esta es una opción de compatibilidad para proxies y puertas de enlace que rechazan el parámetro. El comportamiento de la variable es sin cambios desde versiones anteriores; en modelos que piensan de forma predeterminada, omitir el parámetro significa que el modelo aún puede pensar. Para deshabilitar explícitamente [pensamiento extendido](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) en la API de Anthropic, utilice `MAX_THINKING_TOKENS=0` en su lugar, que también es inefectivo en Fable 5 ya que no puede tener el pensamiento desactivado. En [proveedores de terceros](/docs/es/third-party-integrations), `0` asimismo omite el parámetro, por lo que las dos variables se comportan igual allí |

213| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Establezca en `1` para deshabilitar el desplazamiento virtual en [renderizado a pantalla completa](/es/fullscreen) y renderizar cada mensaje en la transcripción. Utilice esto si el desplazamiento en modo pantalla completa muestra regiones en blanco donde deberían aparecer mensajes |213| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Establezca en `1` para deshabilitar el desplazamiento virtual en [renderizado a pantalla completa](/docs/es/fullscreen) y renderizar cada mensaje en la transcripción. Utilice esto si el desplazamiento en modo pantalla completa muestra regiones en blanco donde deberían aparecer mensajes |

214| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Establezca en `1` para deshabilitar [flujos de trabajo](/es/workflows#turn-workflows-off). Equivalente a la configuración [`disableWorkflows`](/es/settings#available-settings) |214| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Establezca en `1` para deshabilitar [flujos de trabajo](/docs/es/workflows#turn-workflows-off). Equivalente a la configuración [`disableWorkflows`](/docs/es/settings#available-settings) |

215| `CLAUDE_CODE_EFFORT_LEVEL` | Establezca el nivel de esfuerzo para modelos compatibles. Valores: `low`, `medium`, `high`, `xhigh`, `max` o `auto` para usar el valor predeterminado del modelo. Los niveles disponibles dependen del modelo. Tiene precedencia sobre `/effort` y la configuración `effortLevel`. Consulte [Ajustar nivel de esfuerzo](/es/model-config#adjust-effort-level) |215| `CLAUDE_CODE_EFFORT_LEVEL` | Establezca el nivel de esfuerzo para modelos compatibles. Valores: `low`, `medium`, `high`, `xhigh`, `max` o `auto` para usar el valor predeterminado del modelo. Los niveles disponibles dependen del modelo. Tiene precedencia sobre `/effort` y la configuración `effortLevel`. Consulte [Ajustar nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) |

216| `CLAUDE_CODE_ENABLE_APPEND_SUBAGENT_PROMPT` | {/* min-version: 2.1.205 */}Establezca en `1` para habilitar la adición de texto extra al final del indicador del sistema de cada [subagente](/es/sub-agents). La bandera [`--append-subagent-system-prompt`](/es/cli-reference#cli-flags) proporciona el texto añadido y establece esta variable automáticamente, por lo que no necesita establecerla usted mismo. Requiere Claude Code v2.1.205 o posterior |216| `CLAUDE_CODE_ENABLE_APPEND_SUBAGENT_PROMPT` | Establezca en `1` para habilitar la adición de texto extra al final del indicador del sistema de cada [subagente](/docs/es/sub-agents). La bandera [`--append-subagent-system-prompt`](/docs/es/cli-reference#cli-flags) proporciona el texto añadido y establece esta variable automáticamente, por lo que no necesita establecerla usted mismo. Requiere Claude Code v2.1.205 o posterior |

217| `CLAUDE_CODE_ENABLE_AUTO_MODE` | {/* min-version: 2.1.207 */}Aceptado para compatibilidad con versiones anteriores y no tiene efecto. El modo automático está disponible de forma predeterminada en cada proveedor, incluidos Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y sesiones de [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) con sesión iniciada. En v2.1.158 a v2.1.206, establecer esto en `1` era necesario para hacer que [modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode) estuviera disponible en esos proveedores |217| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Aceptado para compatibilidad con versiones anteriores y no tiene efecto. El modo automático está disponible de forma predeterminada en cada proveedor, incluidos Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y sesiones de [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) con sesión iniciada. En v2.1.158 a v2.1.206, establecer esto en `1` era necesario para hacer que [modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode) estuviera disponible en esos proveedores |

218| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Anule la disponibilidad de [resumen de sesión](/es/interactive-mode#session-recap). Establezca en `0` para forzar los resúmenes desactivados independientemente del toggle `/config`. Establezca en `1` para forzar los resúmenes activados cuando [`awaySummaryEnabled`](/es/settings#available-settings) es `false`. Tiene precedencia sobre la configuración y el toggle `/config` |218| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Anule la disponibilidad de [resumen de sesión](/docs/es/interactive-mode#session-recap). Establezca en `0` para forzar los resúmenes desactivados independientemente del toggle `/config`. Establezca en `1` para forzar los resúmenes activados cuando [`awaySummaryEnabled`](/docs/es/settings#available-settings) es `false`. Tiene precedencia sobre la configuración y el toggle `/config` |

219| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Establezca en `1` para actualizar el estado del plugin en los límites de turno en [modo no interactivo](/es/headless) después de que se complete una instalación en segundo plano. Desactivado de forma predeterminada porque la actualización cambia el indicador del sistema a mitad de sesión, lo que invalida el [almacenamiento en caché de indicadores](/es/prompt-caching) para ese turno |219| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Establezca en `1` para actualizar el estado del plugin en los límites de turno en [modo no interactivo](/docs/es/headless) después de que se complete una instalación en segundo plano. Desactivado de forma predeterminada porque la actualización cambia el indicador del sistema a mitad de sesión, lo que invalida el [almacenamiento en caché de indicadores](/docs/es/prompt-caching) para ese turno |

220| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Establezca en `1` para enrutar la encuesta de calidad de sesión "¿Cómo está funcionando Claude?" a su propio [recopilador de OpenTelemetry](/es/monitoring-usage) cuando el tráfico no esencial vinculado a Anthropic está bloqueado. Las calificaciones de encuesta se emiten solo como eventos OTEL a su recopilador configurado. No se envían datos de encuesta a Anthropic en este modo. Se aplica cuando se establece `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, `DISABLE_TELEMETRY` o `DO_NOT_TRACK`, y no tiene efecto de otra manera. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` y la política de comentarios del producto de la organización tienen precedencia |220| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Establezca en `1` para enrutar la encuesta de calidad de sesión "¿Cómo está funcionando Claude?" a su propio [recopilador de OpenTelemetry](/docs/es/monitoring-usage) cuando el tráfico no esencial vinculado a Anthropic está bloqueado. Las calificaciones de encuesta se emiten solo como eventos OTEL a su recopilador configurado. No se envían datos de encuesta a Anthropic en este modo. Se aplica cuando se establece `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, `DISABLE_TELEMETRY` o `DO_NOT_TRACK`, y no tiene efecto de otra manera. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` y la política de comentarios del producto de la organización tienen precedencia |

221| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | Controla si las entradas de llamadas de herramientas se transmiten desde la API mientras Claude las genera. Con esto desactivado, una entrada de herramienta grande como una escritura de archivo larga llega solo después de que Claude termina de generarla, lo que puede parecer que se está colgando. Habilitado de forma predeterminada en la API de Anthropic. En Amazon Bedrock y Google Cloud's Agent Platform, habilitado por modelo donde el contenedor implementado lo admite. Establezca en `0` para optar por no participar. Establezca en `1` para forzar la habilitación cuando se enruta a través de un proxy a través de `ANTHROPIC_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL` o `ANTHROPIC_BEDROCK_BASE_URL`. Desactivado de forma predeterminada en Microsoft Foundry y conexiones de [puerta de enlace](/es/llm-gateway) |221| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | Controla si las entradas de llamadas de herramientas se transmiten desde la API mientras Claude las genera. Con esto desactivado, una entrada de herramienta grande como una escritura de archivo larga llega solo después de que Claude termina de generarla, lo que puede parecer que se está colgando. Habilitado de forma predeterminada en la API de Anthropic. En Amazon Bedrock y Google Cloud's Agent Platform, habilitado por modelo donde el contenedor implementado lo admite. Establezca en `0` para optar por no participar. Establezca en `1` para forzar la habilitación cuando se enruta a través de un proxy a través de `ANTHROPIC_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL` o `ANTHROPIC_BEDROCK_BASE_URL`. Desactivado de forma predeterminada en Microsoft Foundry y conexiones de [puerta de enlace](/docs/es/llm-gateway) |

222| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Establezca en `1` para rellenar el selector `/model` desde el endpoint `/v1/models` de su puerta de enlace cuando `ANTHROPIC_BASE_URL` apunta a una puerta de enlace compatible con Anthropic como LiteLLM, Kong o un proxy interno. Desactivado de forma predeterminada porque las puertas de enlace respaldadas por una clave de API compartida de otra manera mostrarían a cada usuario cada modelo que la clave puede acceder. Los modelos descubiertos aún se filtran por la lista de permitidos [`availableModels`](/es/settings#available-settings) que la sesión recibe; entregue la lista a través de [MDM o un archivo de configuración administrado](/es/settings#settings-files), ya que [la entrega administrada por servidor no está disponible en configuraciones de puerta de enlace](/es/server-managed-settings#platform-availability) |222| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Establezca en `1` para rellenar el selector `/model` desde el endpoint `/v1/models` de su puerta de enlace cuando `ANTHROPIC_BASE_URL` apunta a una puerta de enlace compatible con Anthropic como LiteLLM, Kong o un proxy interno. Desactivado de forma predeterminada porque las puertas de enlace respaldadas por una clave de API compartida de otra manera mostrarían a cada usuario cada modelo que la clave puede acceder. Los modelos descubiertos aún se filtran por la lista de permitidos [`availableModels`](/docs/es/settings#available-settings) que la sesión recibe; entregue la lista a través de [MDM o un archivo de configuración administrado](/docs/es/settings#settings-files), ya que [la entrega administrada por servidor no está disponible en configuraciones de puerta de enlace](/docs/es/server-managed-settings#platform-availability) |

223| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | {/* max-version: 2.1.141 */}Eliminado en v2.1.142, cuando el [modo rápido](/es/fast-mode) predeterminado se movió de Opus 4.6 a Opus 4.7 |223| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | Eliminado en v2.1.142, cuando el [modo rápido](/docs/es/fast-mode) predeterminado se movió de Opus 4.6 a Opus 4.7 |

224| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | Establezca en `false` para deshabilitar sugerencias de indicador (el toggle "Prompt suggestions" en `/config`). Estas son las predicciones atenuadas que aparecen en su entrada de indicador después de que Claude responda. Consulte [Sugerencias de indicador](/es/interactive-mode#prompt-suggestions) |224| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | Establezca en `false` para deshabilitar sugerencias de indicador (el toggle "Prompt suggestions" en `/config`). Estas son las predicciones atenuadas que aparecen en su entrada de indicador después de que Claude responda. Consulte [Sugerencias de indicador](/docs/es/interactive-mode#prompt-suggestions) |

225| `CLAUDE_CODE_ENABLE_TASKS` | Controla si las sesiones utilizan las herramientas Task estructuradas (`TaskCreate`, `TaskUpdate`, `TaskGet`, `TaskList`) o la herramienta legacy `TodoWrite`. {/* min-version: 2.1.142 */}A partir de Claude Code v2.1.142, las herramientas Task son el valor predeterminado en todos los modos. Establezca en `0` para revertir a `TodoWrite`. Consulte [Lista de tareas](/es/interactive-mode#task-list) y [Migrar a herramientas Task](/es/agent-sdk/todo-tracking#migrate-to-task-tools) |225| `CLAUDE_CODE_ENABLE_TASKS` | Controla si las sesiones utilizan las herramientas Task estructuradas (`TaskCreate`, `TaskUpdate`, `TaskGet`, `TaskList`) o la herramienta legacy `TodoWrite`. A partir de Claude Code v2.1.142, las herramientas Task son el valor predeterminado en todos los modos. Establezca en `0` para revertir a `TodoWrite`. Consulte [Lista de tareas](/docs/es/interactive-mode#task-list) y [Migrar a herramientas Task](/docs/es/agent-sdk/todo-tracking#migrate-to-task-tools) |

226| `CLAUDE_CODE_ENABLE_TELEMETRY` | Establezca en `1` para habilitar la recopilación de datos de OpenTelemetry para métricas y registro. Requerido antes de configurar exportadores de OTel. Consulte [Monitoreo](/es/monitoring-usage) |226| `CLAUDE_CODE_ENABLE_TELEMETRY` | Establezca en `1` para habilitar la recopilación de datos de OpenTelemetry para métricas y registro. Requerido antes de configurar exportadores de OTel. Consulte [Monitoreo](/docs/es/monitoring-usage) |

227| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Tiempo en milisegundos a esperar después de que el bucle de consulta se vuelva inactivo antes de salir automáticamente. Útil para flujos de trabajo automatizados y scripts que utilizan modo SDK |227| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Tiempo en milisegundos a esperar después de que el bucle de consulta se vuelva inactivo antes de salir automáticamente. Útil para flujos de trabajo automatizados y scripts que utilizan modo SDK |

228| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Establezca en `1` para habilitar [equipos de agentes](/es/agent-teams). Los equipos de agentes son experimentales y están deshabilitados de forma predeterminada |228| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Establezca en `1` para habilitar [equipos de agentes](/docs/es/agent-teams). Los equipos de agentes son experimentales y están deshabilitados de forma predeterminada |

229| `CLAUDE_CODE_EXTRA_BODY` | Objeto JSON para fusionar en el nivel superior de cada cuerpo de solicitud de API. Útil para pasar parámetros específicos del proveedor que Claude Code no expone directamente. {/* min-version: 2.1.206 */}Un valor exportado en su shell también se aplica a las [sesiones en segundo plano](/es/agent-view) que distribuye con `claude agents` o `--bg`. Antes de v2.1.206, las sesiones en segundo plano ignoraban un valor exportado por shell y utilizaban cualquier copia que el proceso supervisor de sesiones en segundo plano heredara |229| `CLAUDE_CODE_EXTRA_BODY` | Objeto JSON para fusionar en el nivel superior de cada cuerpo de solicitud de API. Útil para pasar parámetros específicos del proveedor que Claude Code no expone directamente. Un valor exportado en su shell también se aplica a las [sesiones en segundo plano](/docs/es/agent-view) que distribuye con `claude agents` o `--bg`. Antes de v2.1.206, las sesiones en segundo plano ignoraban un valor exportado por shell y utilizaban cualquier copia que el proceso supervisor de sesiones en segundo plano heredara |

230| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Anule el límite de tokens predeterminado para lecturas de archivos. Útil cuando necesita leer archivos más grandes en su totalidad |230| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Anule el límite de tokens predeterminado para lecturas de archivos. Útil cuando necesita leer archivos más grandes en su totalidad |

231| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | {/* min-version: 2.1.172 */}Establezca en `1` para forzar la persistencia de transcripción, historial de indicadores y registro de `claude agents` incluso cuando este `claude` se lanzó desde dentro de otra sesión de Claude Code. Utilice cuando un valor `CLAUDE_CODE_CHILD_SESSION` heredado, por ejemplo de una sesión tmux iniciada primero por la herramienta Bash de Claude Code, causa que una sesión genuina de nivel superior se clasifique erróneamente como anidada. {/* min-version: 2.1.178 */}A partir de v2.1.178, Claude Code detecta automáticamente el caso de tmux e ignora el marcador heredado, por lo que tmux ya no necesita esta variable. También se honra en v2.1.169 y anterior; no tiene efecto en v2.1.170 y v2.1.171, donde se eliminó la detección de sesión anidada que anulaba |231| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Establezca en `1` para forzar la persistencia de transcripción, historial de indicadores y registro de `claude agents` incluso cuando este `claude` se lanzó desde dentro de otra sesión de Claude Code. Utilice cuando un valor `CLAUDE_CODE_CHILD_SESSION` heredado, por ejemplo de una sesión tmux iniciada primero por la herramienta Bash de Claude Code, causa que una sesión genuina de nivel superior se clasifique erróneamente como anidada. A partir de v2.1.178, Claude Code detecta automáticamente el caso de tmux e ignora el marcador heredado, por lo que tmux ya no necesita esta variable. También se honra en v2.1.169 y anterior; no tiene efecto en v2.1.170 y v2.1.171, donde se eliminó la detección de sesión anidada que anulaba |

232| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | {/* min-version: 2.1.186 */}Establezca en `1` para forzar el renderizado de tachado para `~~text~~` en las respuestas de Claude cuando su terminal lo admite pero no se detecta automáticamente, como sobre SSH sin `TERM_PROGRAM` reenviado. Sin esto, los terminales no detectados muestran los marcadores literales `~~` en lugar de renderizar el texto como tachado. Requiere Claude Code v2.1.186 o posterior |232| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Establezca en `1` para forzar el renderizado de tachado para `~~text~~` en las respuestas de Claude cuando su terminal lo admite pero no se detecta automáticamente, como sobre SSH sin `TERM_PROGRAM` reenviado. Sin esto, los terminales no detectados muestran los marcadores literales `~~` en lugar de renderizar el texto como tachado. Requiere Claude Code v2.1.186 o posterior |

233| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Establezca en `1` para forzar la habilitación del modo privado DEC 2026 [salida sincronizada](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) cuando su terminal lo admite pero no se detecta automáticamente. Útil para emuladores como `eat` de Emacs que implementan BSU/ESU pero no responden a la sonda de capacidad. No tiene efecto bajo tmux. A diferencia de `CLAUDE_CODE_NO_FLICKER`, que cambia a [renderizado a pantalla completa](/es/fullscreen), esto no cambia el renderizador |233| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Establezca en `1` para forzar la habilitación del modo privado DEC 2026 [salida sincronizada](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) cuando su terminal lo admite pero no se detecta automáticamente. Útil para emuladores como `eat` de Emacs que implementan BSU/ESU pero no responden a la sonda de capacidad. No tiene efecto bajo tmux. A diferencia de `CLAUDE_CODE_NO_FLICKER`, que cambia a [renderizado a pantalla completa](/docs/es/fullscreen), esto no cambia el renderizador |

234| `CLAUDE_CODE_FORK_SUBAGENT` | Establezca en `1` para permitir que Claude genere [subagentes bifurcados](/es/sub-agents#fork-the-current-conversation), o `0` para deshabilitarlos, anulando cualquier implementación del lado del servidor. Cuando se habilita, Claude puede solicitar el tipo de subagente `fork` para generar una bifurcación, un subagente que hereda el contexto de conversación completo en lugar de comenzar desde cero. Los despliegues sin un tipo de subagente siguen usando el subagente de propósito general, y todos los despliegues de subagentes se ejecutan en segundo plano. El comando explícito [`/fork`](/es/commands) funciona sin esta variable. Funciona en modo interactivo y a través del SDK o `claude -p` |234| `CLAUDE_CODE_FORK_SUBAGENT` | Establezca en `1` para permitir que Claude genere [subagentes bifurcados](/docs/es/sub-agents#fork-the-current-conversation), o `0` para deshabilitarlos, anulando cualquier implementación del lado del servidor. Cuando se habilita, Claude puede solicitar el tipo de subagente `fork` para generar una bifurcación, un subagente que hereda el contexto de conversación completo en lugar de comenzar desde cero. Los despliegues sin un tipo de subagente siguen usando el subagente de propósito general, y todos los despliegues de subagentes se ejecutan en segundo plano. El comando explícito [`/fork`](/docs/es/commands) funciona sin esta variable. Funciona en modo interactivo y a través del SDK o `claude -p` |

235| `CLAUDE_CODE_GIT_BASH_PATH` | Solo Windows: ruta al ejecutable de Git Bash (`bash.exe`). Utilice cuando Git Bash está instalado pero no en su PATH. Consulte [Configuración de Windows](/es/setup#set-up-on-windows) |235| `CLAUDE_CODE_GIT_BASH_PATH` | Solo Windows: ruta al ejecutable de Git Bash (`bash.exe`). Utilice cuando Git Bash está instalado pero no en su PATH. Consulte [Configuración de Windows](/docs/es/setup#set-up-on-windows) |

236| `CLAUDE_CODE_GLOB_HIDDEN` | Establezca en `false` para excluir dotfiles de los resultados cuando Claude invoca la [herramienta Glob](/es/tools-reference#glob-tool-behavior). Se incluye de forma predeterminada. No afecta a la autocompletación de archivos `@`, `ls`, Grep o Read |236| `CLAUDE_CODE_GLOB_HIDDEN` | Establezca en `false` para excluir dotfiles de los resultados cuando Claude invoca la [herramienta Glob](/docs/es/tools-reference#glob-tool-behavior). Se incluye de forma predeterminada. No afecta a la autocompletación de archivos `@`, `ls`, Grep o Read |

237| `CLAUDE_CODE_GLOB_NO_IGNORE` | Establezca en `false` para hacer que la [herramienta Glob](/es/tools-reference#glob-tool-behavior) respete patrones `.gitignore`. De forma predeterminada, Glob devuelve todos los archivos coincidentes, incluidos los ignorados por git. No afecta a la autocompletación de archivos `@`, que tiene su propia configuración [`respectGitignore`](/es/settings#available-settings) |237| `CLAUDE_CODE_GLOB_NO_IGNORE` | Establezca en `false` para hacer que la [herramienta Glob](/docs/es/tools-reference#glob-tool-behavior) respete patrones `.gitignore`. De forma predeterminada, Glob devuelve todos los archivos coincidentes, incluidos los ignorados por git. No afecta a la autocompletación de archivos `@`, que tiene su propia configuración [`respectGitignore`](/docs/es/settings#available-settings) |

238| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Tiempo de espera en segundos para el descubrimiento de archivos de la herramienta Glob. El valor predeterminado es 20 segundos en la mayoría de plataformas y 60 segundos en WSL |238| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Tiempo de espera en segundos para el descubrimiento de archivos de la herramienta Glob. El valor predeterminado es 20 segundos en la mayoría de plataformas y 60 segundos en WSL |

239| `CLAUDE_CODE_HIDE_CWD` | Establezca en `1` para ocultar el directorio de trabajo en el logo de inicio. Útil para compartir pantalla o grabaciones donde la ruta expone su nombre de usuario del SO |239| `CLAUDE_CODE_HIDE_CWD` | Establezca en `1` para ocultar el directorio de trabajo en el logo de inicio. Útil para compartir pantalla o grabaciones donde la ruta expone su nombre de usuario del SO |

240| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Anule la dirección de host utilizada para conectarse a la extensión de IDE. De forma predeterminada, Claude Code detecta automáticamente la dirección correcta, incluido el enrutamiento de WSL a Windows |240| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Anule la dirección de host utilizada para conectarse a la extensión de IDE. De forma predeterminada, Claude Code detecta automáticamente la dirección correcta, incluido el enrutamiento de WSL a Windows |

241| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Omita la instalación automática de extensiones de IDE. Equivalente a establecer [`autoInstallIdeExtension`](/es/settings#global-config-settings) en `false` |241| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Omita la instalación automática de extensiones de IDE. Equivalente a establecer [`autoInstallIdeExtension`](/docs/es/settings#global-config-settings) en `false` |

242| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Establezca en `1` para omitir la validación de entradas de archivo de bloqueo de IDE durante la conexión. Utilice cuando la conexión automática no encuentra su IDE a pesar de que se está ejecutando |242| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Establezca en `1` para omitir la validación de entradas de archivo de bloqueo de IDE durante la conexión. Utilice cuando la conexión automática no encuentra su IDE a pesar de que se está ejecutando |

243| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Anule el tamaño de la ventana de contexto que Claude Code asume para el modelo activo. {/* min-version: 2.1.193 */}A partir de v2.1.193, se aplica directamente para nombres de modelo que Claude Code no reconoce como un modelo Claude; para modelos Claude reconocidos solo tiene efecto cuando `DISABLE_COMPACT` también está establecido. Utilice esto cuando enrute a un modelo a través de `ANTHROPIC_BASE_URL` cuya ventana de contexto no coincide con el tamaño integrado para su nombre |243| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Anule el tamaño de la ventana de contexto que Claude Code asume para el modelo activo. A partir de v2.1.193, se aplica directamente para nombres de modelo que Claude Code no reconoce como un modelo Claude; para modelos Claude reconocidos solo tiene efecto cuando `DISABLE_COMPACT` también está establecido. Utilice esto cuando enrute a un modelo a través de `ANTHROPIC_BASE_URL` cuya ventana de contexto no coincide con el tamaño integrado para su nombre |

244| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Establezca el número máximo de tokens de salida para la mayoría de solicitudes. Los valores predeterminados y máximos varían según el modelo; consulte [tokens de salida máximos](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison). Aumentar este valor reduce la ventana de contexto efectiva disponible antes de que se active la [compactación automática](/es/costs#reduce-token-usage) |244| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Establezca el número máximo de tokens de salida para la mayoría de solicitudes. Los valores predeterminados y máximos varían según el modelo; consulte [tokens de salida máximos](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison). Aumentar este valor reduce la ventana de contexto efectiva disponible antes de que se active la [compactación automática](/docs/es/costs#reduce-token-usage) |

245| `CLAUDE_CODE_MAX_RETRIES` | Anule el número de veces para reintentar solicitudes de API fallidas (predeterminado: 10). {/* min-version: 2.1.186 */}Limitado a 15 a partir de v2.1.186; {/* min-version: 2.1.199 */}a partir de v2.1.199, `CLAUDE_CODE_RETRY_WATCHDOG` eleva el predeterminado y elimina el límite. Para sesiones desatendidas que necesitan esperar a través de interrupciones más largas, establezca `CLAUDE_CODE_RETRY_WATCHDOG` en su lugar |245| `CLAUDE_CODE_MAX_RETRIES` | Anule el número de veces para reintentar solicitudes de API fallidas (predeterminado: 10). Limitado a 15 a partir de v2.1.186; a partir de v2.1.199, `CLAUDE_CODE_RETRY_WATCHDOG` eleva el predeterminado y elimina el límite. Para sesiones desatendidas que necesitan esperar a través de interrupciones más largas, establezca `CLAUDE_CODE_RETRY_WATCHDOG` en su lugar |

246| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | Número máximo de herramientas de solo lectura y subagentes que pueden ejecutarse en paralelo (predeterminado: 10). Los valores más altos aumentan el paralelismo pero consumen más recursos |246| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | Número máximo de herramientas de solo lectura y subagentes que pueden ejecutarse en paralelo (predeterminado: 10). Los valores más altos aumentan el paralelismo pero consumen más recursos |

247| `CLAUDE_CODE_MAX_TURNS` | Limite el número de turnos agentivos cuando no se pasa un límite explícito. Equivalente a pasar [`--max-turns`](/es/cli-reference#cli-flags), que tiene precedencia cuando ambos se establecen. Un valor que no es un entero positivo se rechaza al inicio con un error en lugar de tratarse como sin límite |247| `CLAUDE_CODE_MAX_TURNS` | Limite el número de turnos agentivos cuando no se pasa un límite explícito. Equivalente a pasar [`--max-turns`](/docs/es/cli-reference#cli-flags), que tiene precedencia cuando ambos se establecen. Un valor que no es un entero positivo se rechaza al inicio con un error en lugar de tratarse como sin límite |

248| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | Establezca en `1` para generar servidores MCP stdio con solo un entorno de línea base segura más el `env` configurado del servidor, en lugar de heredar su entorno de shell |248| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | Establezca en `1` para generar servidores MCP stdio con solo un entorno de línea base segura más el `env` configurado del servidor, en lugar de heredar su entorno de shell |

249| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | {/* min-version: 2.1.187 */}Tiempo de espera de inactividad en milisegundos para llamadas de herramientas MCP. Cuando un servidor MCP stdio, HTTP, SSE, WebSocket o [conector de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai) no envía respuesta ni notificación de progreso durante este tiempo, la llamada de herramienta se aborta con un error en lugar de esperar el `MCP_TOOL_TIMEOUT` general. Anula los valores predeterminados por transporte de 300000 (5 minutos) para servidores de red y 1800000 (30 minutos) para servidores stdio. Establezca en `0` para deshabilitar la verificación de inactividad. Los valores por debajo de 1000 se elevan a un segundo, y el valor se limita al `MCP_TOOL_TIMEOUT` efectivo. Un `timeout` por servidor en `.mcp.json` de al menos 1000 eleva la ventana de inactividad de ese servidor a al menos el valor de `timeout`. No se aplica a servidores IDE o servidores en proceso de SDK. Requiere Claude Code v2.1.187 o posterior. {/* min-version: 2.1.203 */}Antes de v2.1.203, los servidores stdio estaban exentos del tiempo de espera de inactividad |249| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | Tiempo de espera de inactividad en milisegundos para llamadas de herramientas MCP. Cuando un servidor MCP stdio, HTTP, SSE, WebSocket o [conector de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai) no envía respuesta ni notificación de progreso durante este tiempo, la llamada de herramienta se aborta con un error en lugar de esperar el `MCP_TOOL_TIMEOUT` general. Anula los valores predeterminados por transporte de 300000 (5 minutos) para servidores de red y 1800000 (30 minutos) para servidores stdio. Establezca en `0` para deshabilitar la verificación de inactividad. Los valores por debajo de 1000 se elevan a un segundo, y el valor se limita al `MCP_TOOL_TIMEOUT` efectivo. Un `timeout` por servidor en `.mcp.json` de al menos 1000 eleva la ventana de inactividad de ese servidor a al menos el valor de `timeout`. No se aplica a servidores IDE o servidores en proceso de SDK. Requiere Claude Code v2.1.187 o posterior. Antes de v2.1.203, los servidores stdio estaban exentos del tiempo de espera de inactividad |

250| `CLAUDE_CODE_NATIVE_CURSOR` | Establezca en `1` para mostrar el cursor propio del terminal en el símbolo de inserción en lugar de un bloque dibujado. El cursor respeta la configuración de parpadeo, forma y enfoque del terminal |250| `CLAUDE_CODE_NATIVE_CURSOR` | Establezca en `1` para mostrar el cursor propio del terminal en el símbolo de inserción en lugar de un bloque dibujado. El cursor respeta la configuración de parpadeo, forma y enfoque del terminal |

251| `CLAUDE_CODE_NEW_INIT` | Establezca en `1` para hacer que `/init` ejecute un flujo de configuración interactivo. El flujo pregunta qué archivos generar, incluidos CLAUDE.md, skills y hooks, antes de explorar la base de código y escribirlos. Sin esta variable, `/init` genera un CLAUDE.md automáticamente sin solicitar |251| `CLAUDE_CODE_NEW_INIT` | Establezca en `1` para hacer que `/init` ejecute un flujo de configuración interactivo. El flujo pregunta qué archivos generar, incluidos CLAUDE.md, skills y hooks, antes de explorar la base de código y escribirlos. Sin esta variable, `/init` genera un CLAUDE.md automáticamente sin solicitar |

252| `CLAUDE_CODE_NO_FLICKER` | Establezca en `1` para habilitar [renderizado a pantalla completa](/es/fullscreen), una vista previa de investigación que reduce el parpadeo y mantiene la memoria plana en conversaciones largas. Equivalente a la configuración [`tui`](/es/settings#available-settings); también puede cambiar con `/tui fullscreen` |252| `CLAUDE_CODE_NO_FLICKER` | Establezca en `1` para habilitar [renderizado a pantalla completa](/docs/es/fullscreen), una vista previa de investigación que reduce el parpadeo y mantiene la memoria plana en conversaciones largas. Equivalente a la configuración [`tui`](/docs/es/settings#available-settings); también puede cambiar con `/tui fullscreen` |

253| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Token de actualización de OAuth para autenticación de Claude.ai. Cuando se establece, `claude auth login` intercambia este token directamente en lugar de abrir un navegador. Requiere `CLAUDE_CODE_OAUTH_SCOPES`. Útil para aprovisionar autenticación en entornos automatizados |253| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Token de actualización de OAuth para autenticación de Claude.ai. Cuando se establece, `claude auth login` intercambia este token directamente en lugar de abrir un navegador. Requiere `CLAUDE_CODE_OAUTH_SCOPES`. Útil para aprovisionar autenticación en entornos automatizados |

254| `CLAUDE_CODE_OAUTH_SCOPES` | Alcances de OAuth separados por espacios con los que se emitió el token de actualización, como `"user:profile user:inference user:sessions:claude_code"`. Requerido cuando se establece `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` |254| `CLAUDE_CODE_OAUTH_SCOPES` | Alcances de OAuth separados por espacios con los que se emitió el token de actualización, como `"user:profile user:inference user:sessions:claude_code"`. Requerido cuando se establece `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` |

255| `CLAUDE_CODE_OAUTH_TOKEN` | Token de acceso de OAuth para autenticación de Claude.ai. Alternativa a `/login` para SDK y entornos automatizados. Tiene precedencia sobre credenciales almacenadas en llavero. Genere uno con [`claude setup-token`](/es/authentication#generate-a-long-lived-token) |255| `CLAUDE_CODE_OAUTH_TOKEN` | Token de acceso de OAuth para autenticación de Claude.ai. Alternativa a `/login` para SDK y entornos automatizados. Tiene precedencia sobre credenciales almacenadas en llavero. Genere uno con [`claude setup-token`](/docs/es/authentication#generate-a-long-lived-token) |

256| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | {/* max-version: 2.1.159 */}Eliminado en v2.1.160 y ahora es un no-op. Anteriormente fijaba [modo rápido](/es/fast-mode) a Claude Opus 4.6 en lugar del predeterminado actual. Opus 4.6 ya no admite modo rápido |256| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | Eliminado en v2.1.160 y ahora es un no-op. Anteriormente fijaba [modo rápido](/docs/es/fast-mode) a Claude Opus 4.6 en lugar del predeterminado actual. Opus 4.6 ya no admite modo rápido |

257| `CLAUDE_CODE_OTEL_DIAG_STDERR` | {/* min-version: 2.1.179 */}Establezca en `1` para escribir errores de diagnóstico del exportador de OpenTelemetry en stderr. De forma predeterminada, estos errores solo aparecen con `--debug`, por lo que un exportador mal configurado como una colisión de puerto de Prometheus falla silenciosamente de otra manera. Requiere Claude Code v2.1.179 o posterior. Consulte [Monitoreo](/es/monitoring-usage) |257| `CLAUDE_CODE_OTEL_DIAG_STDERR` | Establezca en `1` para escribir errores de diagnóstico del exportador de OpenTelemetry en stderr. De forma predeterminada, estos errores solo aparecen con `--debug`, por lo que un exportador mal configurado como una colisión de puerto de Prometheus falla silenciosamente de otra manera. Requiere Claude Code v2.1.179 o posterior. Consulte [Monitoreo](/docs/es/monitoring-usage) |

258| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Tiempo de espera en milisegundos para vaciar spans de OpenTelemetry pendientes (predeterminado: 5000). Consulte [Monitoreo](/es/monitoring-usage) |258| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Tiempo de espera en milisegundos para vaciar spans de OpenTelemetry pendientes (predeterminado: 5000). Consulte [Monitoreo](/docs/es/monitoring-usage) |

259| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Intervalo para actualizar encabezados dinámicos de OpenTelemetry en milisegundos (predeterminado: 1740000 / 29 minutos). Consulte [Encabezados dinámicos](/es/monitoring-usage#dynamic-headers) |259| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Intervalo para actualizar encabezados dinámicos de OpenTelemetry en milisegundos (predeterminado: 1740000 / 29 minutos). Consulte [Encabezados dinámicos](/docs/es/monitoring-usage#dynamic-headers) |

260| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | Tiempo de espera en milisegundos para que el exportador de OpenTelemetry termine al apagar (predeterminado: 2000). Aumente si las métricas se descartan al salir. Consulte [Monitoreo](/es/monitoring-usage) |260| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | Tiempo de espera en milisegundos para que el exportador de OpenTelemetry termine al apagar (predeterminado: 2000). Aumente si las métricas se descartan al salir. Consulte [Monitoreo](/docs/es/monitoring-usage) |

261| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | Establezca en `1` para permitir que Claude Code ejecute el comando de actualización de su gestor de paquetes en segundo plano cuando una nueva versión esté disponible. Se aplica a instalaciones de Homebrew y WinGet. Otros gestores de paquetes continúan mostrando el comando de actualización sin ejecutarlo. Consulte [Actualizaciones automáticas](/es/setup#auto-updates) |261| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | Establezca en `1` para permitir que Claude Code ejecute el comando de actualización de su gestor de paquetes en segundo plano cuando una nueva versión esté disponible. Se aplica a instalaciones de Homebrew y WinGet. Otros gestores de paquetes continúan mostrando el comando de actualización sin ejecutarlo. Consulte [Actualizaciones automáticas](/docs/es/setup#auto-updates) |

262| `CLAUDE_CODE_PERFORCE_MODE` | Establezca en `1` para habilitar la protección de escritura consciente de Perforce. Cuando se establece, Edit, Write y NotebookEdit fallan con una sugerencia `p4 edit <file>` si el archivo de destino carece del bit de escritura del propietario, que Perforce borra en archivos sincronizados hasta que `p4 edit` los abre. Esto evita que Claude Code omita el seguimiento de cambios de Perforce |262| `CLAUDE_CODE_PERFORCE_MODE` | Establezca en `1` para habilitar la protección de escritura consciente de Perforce. Cuando se establece, Edit, Write y NotebookEdit fallan con una sugerencia `p4 edit <file>` si el archivo de destino carece del bit de escritura del propietario, que Perforce borra en archivos sincronizados hasta que `p4 edit` los abre. Esto evita que Claude Code omita el seguimiento de cambios de Perforce |

263| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | Anule el directorio raíz de plugins. A pesar del nombre, esto establece el directorio principal, no el caché en sí: los marketplaces y el caché de plugins viven en subdirectorios bajo esta ruta. El valor predeterminado es `~/.claude/plugins` |263| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | Anule el directorio raíz de plugins. A pesar del nombre, esto establece el directorio principal, no el caché en sí: los marketplaces y el caché de plugins viven en subdirectorios bajo esta ruta. El valor predeterminado es `~/.claude/plugins` |

264| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | Tiempo de espera en milisegundos para operaciones de git al instalar o actualizar plugins (predeterminado: 120000). Aumente este valor para repositorios grandes o conexiones de red lentas. Consulte [Las operaciones de Git agotan el tiempo de espera](/es/plugin-marketplaces#git-operations-time-out) |264| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | Tiempo de espera en milisegundos para operaciones de git al instalar o actualizar plugins (predeterminado: 120000). Aumente este valor para repositorios grandes o conexiones de red lentas. Consulte [Las operaciones de Git agotan el tiempo de espera](/docs/es/plugin-marketplaces#git-operations-time-out) |

265| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | Establezca en `1` para mantener el caché de marketplace existente cuando un `git pull` falla en lugar de borrar y volver a clonar. Útil en entornos sin conexión o aislados donde volver a clonar fallaría de la misma manera. Consulte [Las actualizaciones de Marketplace fallan en entornos sin conexión](/es/plugin-marketplaces#marketplace-updates-fail-in-offline-environments) |265| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | Establezca en `1` para mantener el caché de marketplace existente cuando un `git pull` falla en lugar de borrar y volver a clonar. Útil en entornos sin conexión o aislados donde volver a clonar fallaría de la misma manera. Consulte [Las actualizaciones de Marketplace fallan en entornos sin conexión](/docs/es/plugin-marketplaces#marketplace-updates-fail-in-offline-environments) |

266| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | Establezca en `1` para clonar fuentes de plugins de GitHub `owner/repo` sobre HTTPS en lugar de SSH. Se aplica a la instalación de plugins y actualización, y a `/plugin marketplace add` y `update`. Útil en ejecutores de CI, contenedores o cualquier entorno sin una clave SSH configurada para `github.com` |266| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | Establezca en `1` para clonar fuentes de plugins de GitHub `owner/repo` sobre HTTPS en lugar de SSH. Se aplica a la instalación de plugins y actualización, y a `/plugin marketplace add` y `update`. Útil en ejecutores de CI, contenedores o cualquier entorno sin una clave SSH configurada para `github.com` |

267| `CLAUDE_CODE_PLUGIN_SEED_DIR` | Ruta a uno o más directorios de semilla de plugins de solo lectura, separados por `:` en Unix o `;` en Windows. Utilice esto para agrupar un directorio de plugins previamente poblado en una imagen de contenedor. Claude Code registra mercados desde estos directorios al inicio y utiliza plugins almacenados en caché previamente sin volver a clonar. Consulte [Pre-popular plugins para contenedores](/es/plugin-marketplaces#pre-populate-plugins-for-containers) |267| `CLAUDE_CODE_PLUGIN_SEED_DIR` | Ruta a uno o más directorios de semilla de plugins de solo lectura, separados por `:` en Unix o `;` en Windows. Utilice esto para agrupar un directorio de plugins previamente poblado en una imagen de contenedor. Claude Code registra mercados desde estos directorios al inicio y utiliza plugins almacenados en caché previamente sin volver a clonar. Consulte [Pre-popular plugins para contenedores](/docs/es/plugin-marketplaces#pre-populate-plugins-for-containers) |

268| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Establezca en `1` para dejar de pasar `-ExecutionPolicy Bypass` cuando Claude Code genera PowerShell para llamadas de herramientas, hooks y comandos de línea de estado, y respete la política de ejecución efectiva de la máquina en su lugar. De forma predeterminada, Claude Code omite la política de ejecución en el ámbito del proceso para que scripts `.ps1` e importaciones de módulos funcionen en instalaciones de Windows predeterminadas restringidas. El bypass de ámbito de proceso nunca anula la Política de Grupo `MachinePolicy` o `UserPolicy` independientemente de esta configuración |268| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Establezca en `1` para dejar de pasar `-ExecutionPolicy Bypass` cuando Claude Code genera PowerShell para llamadas de herramientas, hooks y comandos de línea de estado, y respete la política de ejecución efectiva de la máquina en su lugar. De forma predeterminada, Claude Code omite la política de ejecución en el ámbito del proceso para que scripts `.ps1` e importaciones de módulos funcionen en instalaciones de Windows predeterminadas restringidas. El bypass de ámbito de proceso nunca anula la Política de Grupo `MachinePolicy` o `UserPolicy` independientemente de esta configuración |

269| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | {/* min-version: 2.1.182 */}Tiempo máximo en milisegundos que [modo no interactivo](/es/headless#background-tasks-at-exit) con la bandera `-p` espera después del turno final para subagentes en segundo plano y flujos de trabajo cuyo resultado es parte de la salida. Predeterminado: `600000`, o 10 minutos. Cuando se excede el límite, los subagentes en segundo plano restantes se terminan y el proceso sale. Establezca en `0` para esperar indefinidamente. Este límite es separado del período de gracia de cinco segundos que se aplica a shells de fondo simples |269| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | Tiempo máximo en milisegundos que [modo no interactivo](/docs/es/headless#background-tasks-at-exit) con la bandera `-p` espera después del turno final para subagentes en segundo plano y flujos de trabajo cuyo resultado es parte de la salida. Predeterminado: `600000`, o 10 minutos. Cuando se excede el límite, los subagentes en segundo plano restantes se terminan y el proceso sale. Establezca en `0` para esperar indefinidamente. Este límite es separado del período de gracia de cinco segundos que se aplica a shells de fondo simples |

270| `CLAUDE_CODE_PROCESS_WRAPPER` | {{/* min-version: 2.1.208 */}}Lance los procesos que Claude Code inicia desde su propio binario a través de un ejecutable contenedor, dado como un prefijo argv como `/opt/corp/launcher`. Cubre el servicio en segundo plano que aloja sesiones de [vista de agentes](/es/agent-view), cada sesión que genera, y el relanzamiento que Claude Code realiza de sí mismo para terminar de instalar una actualización. El primer token debe ser la ruta absoluta de un ejecutable que termine ejecutando `exec "$@"`, y la mayoría de lanzadores son ese único camino. El valor es una lista de argumentos, no un comando de shell: el espacio en blanco separa tokens, las comillas dobles agrupan una ruta que contiene espacios, y un valor que comienza con `[` se lee como una matriz de cadenas JSON. Establézcalo en el bloque `env` de configuración de usuario o [administrada](/es/permissions#managed-settings), no como una exportación de shell, para que el servicio en segundo plano desconectado lo herede; la configuración de proyecto y local no puede establecerla. La extensión de VS Code configura su propio lanzador por separado a través de su configuración `claudeProcessWrapper`. Se ignora en Windows. `CLAUDE_CODE_SHELL_PREFIX` es un control separado: envuelve los comandos de shell que Claude Code ejecuta como una cadena entrecomillada única, mientras que esta variable envuelve los procesos propios de Claude Code como un prefijo argv. Consulte [Ejecutar Claude Code detrás de un lanzador corporativo](/es/corporate-launcher) |270| `CLAUDE_CODE_PROCESS_WRAPPER` | {{/* min-version: 2.1.208 */}}Lance los procesos que Claude Code inicia desde su propio binario a través de un ejecutable contenedor, dado como un prefijo argv como `/opt/corp/launcher`. Cubre el servicio en segundo plano que aloja sesiones de [vista de agentes](/docs/es/agent-view), cada sesión que genera, y el relanzamiento que Claude Code realiza de sí mismo para terminar de instalar una actualización. El primer token debe ser la ruta absoluta de un ejecutable que termine ejecutando `exec "$@"`, y la mayoría de lanzadores son ese único camino. El valor es una lista de argumentos, no un comando de shell: el espacio en blanco separa tokens, las comillas dobles agrupan una ruta que contiene espacios, y un valor que comienza con `[` se lee como una matriz de cadenas JSON. Establézcalo en el bloque `env` de configuración de usuario o [administrada](/docs/es/permissions#managed-settings), no como una exportación de shell, para que el servicio en segundo plano desconectado lo herede; la configuración de proyecto y local no puede establecerla. La extensión de VS Code configura su propio lanzador por separado a través de su configuración `claudeProcessWrapper`. Se ignora en Windows. `CLAUDE_CODE_SHELL_PREFIX` es un control separado: envuelve los comandos de shell que Claude Code ejecuta como una cadena entrecomillada única, mientras que esta variable envuelve los procesos propios de Claude Code como un prefijo argv. Consulte [Ejecutar Claude Code detrás de un lanzador corporativo](/docs/es/corporate-launcher) |

271| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | {/* min-version: 2.1.152 */}Establezca en `1` para propagar el contexto de traza W3C cuando `ANTHROPIC_BASE_URL` apunta a un proxy personalizado. La propagación cubre el encabezado `traceparent` en solicitudes de modelo y MCP HTTP y la variable de entorno `TRACEPARENT` para subprocesos Bash, PowerShell y hook. De forma predeterminada, la propagación se habilita solo cuando se conecta directamente a la API de Anthropic. Agregado en v2.1.152. Consulte [Trazas (beta)](/es/monitoring-usage#traces-beta) |271| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | Establezca en `1` para propagar el contexto de traza W3C cuando `ANTHROPIC_BASE_URL` apunta a un proxy personalizado. La propagación cubre el encabezado `traceparent` en solicitudes de modelo y MCP HTTP y la variable de entorno `TRACEPARENT` para subprocesos Bash, PowerShell y hook. De forma predeterminada, la propagación se habilita solo cuando se conecta directamente a la API de Anthropic. Agregado en v2.1.152. Consulte [Trazas (beta)](/docs/es/monitoring-usage#traces-beta) |

272| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Se establece por plataformas host que incrustan Claude Code y administran el enrutamiento del proveedor de modelo en su nombre. Cuando se establece, la selección de proveedor, endpoint y variables de autenticación como `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL` y `ANTHROPIC_API_KEY` en archivos de configuración se ignoran para que la configuración del usuario no pueda anular el enrutamiento del host. La opción de exclusión automática de telemetría para Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry también se omite, por lo que la telemetría sigue la opción de exclusión estándar `DISABLE_TELEMETRY`. Consulte [Comportamientos predeterminados por proveedor de API](/es/data-usage#default-behaviors-by-api-provider) |272| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Se establece por plataformas host que incrustan Claude Code y administran el enrutamiento del proveedor de modelo en su nombre. Cuando se establece, la selección de proveedor, endpoint y variables de autenticación como `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL` y `ANTHROPIC_API_KEY` en archivos de configuración se ignoran para que la configuración del usuario no pueda anular el enrutamiento del host. La opción de exclusión automática de telemetría para Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry también se omite, por lo que la telemetría sigue la opción de exclusión estándar `DISABLE_TELEMETRY`. Consulte [Comportamientos predeterminados por proveedor de API](/docs/es/data-usage#default-behaviors-by-api-provider) |

273| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Establezca en `1` para permitir que el proxy realice la resolución de DNS en lugar de la persona que llama. Opción de inclusión para entornos donde el proxy debe manejar la resolución de nombres de host |273| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Establezca en `1` para permitir que el proxy realice la resolución de DNS en lugar de la persona que llama. Opción de inclusión para entornos donde el proxy debe manejar la resolución de nombres de host |

274| `CLAUDE_CODE_REMOTE` | Se establece automáticamente en `true` cuando Claude Code se ejecuta como una [sesión en la nube](/es/claude-code-on-the-web). Lea esto desde un hook o script de configuración para detectar si se encuentra en un entorno en la nube |274| `CLAUDE_CODE_REMOTE` | Se establece automáticamente en `true` cuando Claude Code se ejecuta como una [sesión en la nube](/docs/es/claude-code-on-the-web). Lea esto desde un hook o script de configuración para detectar si se encuentra en un entorno en la nube |

275| `CLAUDE_CODE_REMOTE_SESSION_ID` | Se establece automáticamente en [sesiones en la nube](/es/claude-code-on-the-web) en el ID de la sesión actual. Lea esto para construir un enlace de vuelta a la transcripción de la sesión. Consulte [Vincular salida de vuelta a la sesión](/es/claude-code-on-the-web#link-output-back-to-the-session) |275| `CLAUDE_CODE_REMOTE_SESSION_ID` | Se establece automáticamente en [sesiones en la nube](/docs/es/claude-code-on-the-web) en el ID de la sesión actual. Lea esto para construir un enlace de vuelta a la transcripción de la sesión. Consulte [Vincular salida de vuelta a la sesión](/docs/es/claude-code-on-the-web#link-output-back-to-the-session) |

276| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | Establezca en `1` para reanudar automáticamente si la sesión anterior terminó a mitad de turno. Se utiliza en modo SDK para que el modelo continúe sin requerir que el SDK reenvíe el indicador |276| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | Establezca en `1` para reanudar automáticamente si la sesión anterior terminó a mitad de turno. Se utiliza en modo SDK para que el modelo continúe sin requerir que el SDK reenvíe el indicador |

277| `CLAUDE_CODE_RESUME_PROMPT` | Anule el mensaje de continuación inyectado al reanudar una sesión que terminó a mitad de turno. El valor predeterminado es `Continue from where you left off.`. Los scripts de generación para agentes de larga duración pueden establecer esto en un mensaje de arranque más directivo. Una cadena vacía utiliza el valor predeterminado |277| `CLAUDE_CODE_RESUME_PROMPT` | Anule el mensaje de continuación inyectado al reanudar una sesión que terminó a mitad de turno. El valor predeterminado es `Continue from where you left off.`. Los scripts de generación para agentes de larga duración pueden establecer esto en un mensaje de arranque más directivo. Una cadena vacía utiliza el valor predeterminado |

278| `CLAUDE_CODE_RETRY_WATCHDOG` | {/* min-version: 2.1.186 */}Establezca en `1` para sesiones desatendidas como harnesses de evaluación, trabajos de CI o trabajadores remotos. Reintenta errores de capacidad `429` y `529` indefinidamente en lugar de fallar después de `CLAUDE_CODE_MAX_RETRIES` intentos. El perro guardián se retira hasta 5 minutos entre intentos, o hasta que se reinicie el límite cuando la respuesta lleva un tiempo de reinicio de límite de velocidad, por lo que una sesión que alcanza un límite de uso espera la ventana restante. {/* min-version: 2.1.199 */}A partir de v2.1.199, también eleva el recuento de reintentos predeterminado para otros errores transitorios, como errores de servidor, tiempos de espera y conexiones perdidas, a 300, aproximadamente tres horas de retroceso, y elimina el límite de 15 en `CLAUDE_CODE_MAX_RETRIES` si establece esa variable explícitamente. Requiere Claude Code v2.1.186 o posterior |278| `CLAUDE_CODE_RETRY_WATCHDOG` | Establezca en `1` para sesiones desatendidas como harnesses de evaluación, trabajos de CI o trabajadores remotos. Reintenta errores de capacidad `429` y `529` indefinidamente en lugar de fallar después de `CLAUDE_CODE_MAX_RETRIES` intentos. El perro guardián se retira hasta 5 minutos entre intentos, o hasta que se reinicie el límite cuando la respuesta lleva un tiempo de reinicio de límite de velocidad, por lo que una sesión que alcanza un límite de uso espera la ventana restante. A partir de v2.1.199, también eleva el recuento de reintentos predeterminado para otros errores transitorios, como errores de servidor, tiempos de espera y conexiones perdidas, a 300, aproximadamente tres horas de retroceso, y elimina el límite de 15 en `CLAUDE_CODE_MAX_RETRIES` si establece esa variable explícitamente. Requiere Claude Code v2.1.186 o posterior |

279| `CLAUDE_CODE_SAFE_MODE` | Establezca en `1` para iniciar en modo seguro: CLAUDE.md, skills, plugins, hooks, servidores MCP, comandos personalizados y agentes, estilos de salida, flujos de trabajo, temas personalizados, atajos de teclado personalizados, comandos de línea de estado y sugerencia de archivos, servidores LSP y memoria automática no se cargan, para solucionar problemas de una configuración rota. La política de configuración administrada aún se aplica, incluidos hooks, línea de estado y comandos de sugerencia de archivos configurados por política; plugins administrados, skills administradas, CLAUDE.md administrado y servidores MCP configurados por política no lo hacen. Equivalente a pasar [`--safe-mode`](/es/cli-reference#cli-flags). Los procesos secundarios generados directamente heredan la variable |279| `CLAUDE_CODE_SAFE_MODE` | Establezca en `1` para iniciar en modo seguro: CLAUDE.md, skills, plugins, hooks, servidores MCP, comandos personalizados y agentes, estilos de salida, flujos de trabajo, temas personalizados, atajos de teclado personalizados, comandos de línea de estado y sugerencia de archivos, servidores LSP y memoria automática no se cargan, para solucionar problemas de una configuración rota. La política de configuración administrada aún se aplica, incluidos hooks, línea de estado y comandos de sugerencia de archivos configurados por política; plugins administrados, skills administradas, CLAUDE.md administrado y servidores MCP configurados por política no lo hacen. Equivalente a pasar [`--safe-mode`](/docs/es/cli-reference#cli-flags). Los procesos secundarios generados directamente heredan la variable |

280| `CLAUDE_CODE_SCRIPT_CAPS` | Objeto JSON que limita cuántas veces se pueden invocar scripts específicos por sesión cuando se establece `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`. Las claves son subcadenas coincidentes contra el texto del comando; los valores son límites de llamadas enteros. Por ejemplo, `{"deploy.sh": 2}` permite que `deploy.sh` se llame como máximo dos veces. La coincidencia se basa en subcadenas, por lo que trucos de expansión de shell como `./scripts/deploy.sh $(evil)` siguen contando contra el límite. El fan-out en tiempo de ejecución a través de `xargs` o `find -exec` no se detecta; este es un control de defensa en profundidad |280| `CLAUDE_CODE_SCRIPT_CAPS` | Objeto JSON que limita cuántas veces se pueden invocar scripts específicos por sesión cuando se establece `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`. Las claves son subcadenas coincidentes contra el texto del comando; los valores son límites de llamadas enteros. Por ejemplo, `{"deploy.sh": 2}` permite que `deploy.sh` se llame como máximo dos veces. La coincidencia se basa en subcadenas, por lo que trucos de expansión de shell como `./scripts/deploy.sh $(evil)` siguen contando contra el límite. El fan-out en tiempo de ejecución a través de `xargs` o `find -exec` no se detecta; este es un control de defensa en profundidad |

281| `CLAUDE_CODE_SCROLL_SPEED` | Establezca el multiplicador de desplazamiento de la rueda del ratón en [renderizado a pantalla completa](/es/fullscreen#mouse-wheel-scrolling). Acepta valores de 1 a 20, y valores fraccionarios por debajo de 1 como `0.5` para ralentizar el desplazamiento acelerado del trackpad y la rueda en terminales que ya amplifican eventos de rueda. Establezca en `3` para coincidir con `vim` si su terminal envía un evento de rueda por muesca sin amplificación. Se ignora en el terminal de IDE de JetBrains, donde Claude Code utiliza su propio manejo de desplazamiento |281| `CLAUDE_CODE_SCROLL_SPEED` | Establezca el multiplicador de desplazamiento de la rueda del ratón en [renderizado a pantalla completa](/docs/es/fullscreen#mouse-wheel-scrolling). Acepta valores de 1 a 20, y valores fraccionarios por debajo de 1 como `0.5` para ralentizar el desplazamiento acelerado del trackpad y la rueda en terminales que ya amplifican eventos de rueda. Establezca en `3` para coincidir con `vim` si su terminal envía un evento de rueda por muesca sin amplificación. Se ignora en el terminal de IDE de JetBrains, donde Claude Code utiliza su propio manejo de desplazamiento |

282| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | Anule el presupuesto de tiempo en milisegundos para hooks [SessionEnd](/es/hooks#sessionend). Se aplica a la salida de sesión, `/clear` y cambio de sesiones a través de `/resume` interactivo. De forma predeterminada, el presupuesto es de 1,5 segundos, aumentado automáticamente al `timeout` más alto por hook configurado en archivos de configuración, hasta 60 segundos. Los tiempos de espera en hooks proporcionados por plugins no aumentan el presupuesto |282| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | Anule el presupuesto de tiempo en milisegundos para hooks [SessionEnd](/docs/es/hooks#sessionend). Se aplica a la salida de sesión, `/clear` y cambio de sesiones a través de `/resume` interactivo. De forma predeterminada, el presupuesto es de 1,5 segundos, aumentado automáticamente al `timeout` más alto por hook configurado en archivos de configuración, hasta 60 segundos. Los tiempos de espera en hooks proporcionados por plugins no aumentan el presupuesto |

283| `CLAUDE_CODE_SESSION_ID` | Se establece automáticamente en el ID de sesión actual en subprocesos de herramientas Bash y PowerShell, subprocesos de comandos [hook](/es/hooks) y subprocesos de [servidor MCP](/es/mcp) stdio. Para Bash, PowerShell y hooks, esto coincide con el campo `session_id` en la entrada JSON del hook y se actualiza en `/clear`. Un subproceso de servidor MCP retiene el ID con el que se generó. En `--resume <session-id>` recibe el ID reanudado, coincidiendo con hooks y Bash. En `--continue` o `--resume` sin un ID explícito puede recibir el ID de inicio inicial en su lugar. Utilice para correlacionar scripts y herramientas externas con la sesión de Claude Code que las lanzó |283| `CLAUDE_CODE_SESSION_ID` | Se establece automáticamente en el ID de sesión actual en subprocesos de herramientas Bash y PowerShell, subprocesos de comandos [hook](/docs/es/hooks) y subprocesos de [servidor MCP](/docs/es/mcp) stdio. Para Bash, PowerShell y hooks, esto coincide con el campo `session_id` en la entrada JSON del hook y se actualiza en `/clear`. Un subproceso de servidor MCP retiene el ID con el que se generó. En `--resume <session-id>` recibe el ID reanudado, coincidiendo con hooks y Bash. En `--continue` o `--resume` sin un ID explícito puede recibir el ID de inicio inicial en su lugar. Utilice para correlacionar scripts y herramientas externas con la sesión de Claude Code que las lanzó |

284| `CLAUDE_CODE_SHELL` | Establezca la shell que Claude Code utiliza para ejecutar comandos de herramientas Bash. Acepta una ruta a un binario `bash` o `zsh`, por ejemplo `/opt/homebrew/bin/bash`. Otras shells como `fish` no son compatibles. Si el valor no es una ruta `bash` o `zsh` funcional, Claude Code la ignora y vuelve a la detección automática. La detección automática utiliza su `$SHELL` cuando apunta a `bash` o `zsh`, de lo contrario elige el primer `zsh` funcional y luego `bash` encontrado en su `PATH` y ubicaciones de instalación estándar |284| `CLAUDE_CODE_SHELL` | Establezca la shell que Claude Code utiliza para ejecutar comandos de herramientas Bash. Acepta una ruta a un binario `bash` o `zsh`, por ejemplo `/opt/homebrew/bin/bash`. Otras shells como `fish` no son compatibles. Si el valor no es una ruta `bash` o `zsh` funcional, Claude Code la ignora y vuelve a la detección automática. La detección automática utiliza su `$SHELL` cuando apunta a `bash` o `zsh`, de lo contrario elige el primer `zsh` funcional y luego `bash` encontrado en su `PATH` y ubicaciones de instalación estándar |

285| `CLAUDE_CODE_SHELL_PREFIX` | Prefijo de comando que envuelve comandos shell que Claude Code genera: llamadas de herramienta Bash, comandos [hook](/es/hooks), comandos de [línea de estado](/es/statusline) y comandos de inicio de [servidor MCP](/es/mcp) stdio. Los hooks de PowerShell y hooks de forma exec se ejecutan sin el prefijo. Útil para registro o auditoría. Establecer una ruta de ejecutable desnuda como `/path/to/logger.sh` ejecuta cada comando como `/path/to/logger.sh '<command>'`. El contenedor recibe la línea de comando como un argumento de shell entrecomillado único en `$1`, por lo que el contenedor debe re-evaluar `$1` con un shell, por ejemplo `exec bash -c "$1"`. Tratar `$1` como una ruta de ejecutable desnuda rompe servidores MCP stdio que pasan argumentos como `npx -y <package>`. Para llamadas de herramienta Bash, `$1` contiene la invocación de shell completa que Claude Code ensambla, incluida la configuración del entorno, no solo el comando que Claude ejecutó |285| `CLAUDE_CODE_SHELL_PREFIX` | Prefijo de comando que envuelve comandos shell que Claude Code genera: llamadas de herramienta Bash, comandos [hook](/docs/es/hooks), comandos de [línea de estado](/docs/es/statusline) y comandos de inicio de [servidor MCP](/docs/es/mcp) stdio. Los hooks de PowerShell y hooks de forma exec se ejecutan sin el prefijo. Útil para registro o auditoría. Establecer una ruta de ejecutable desnuda como `/path/to/logger.sh` ejecuta cada comando como `/path/to/logger.sh '<command>'`. El contenedor recibe la línea de comando como un argumento de shell entrecomillado único en `$1`, por lo que el contenedor debe re-evaluar `$1` con un shell, por ejemplo `exec bash -c "$1"`. Tratar `$1` como una ruta de ejecutable desnuda rompe servidores MCP stdio que pasan argumentos como `npx -y <package>`. Para llamadas de herramienta Bash, `$1` contiene la invocación de shell completa que Claude Code ensambla, incluida la configuración del entorno, no solo el comando que Claude ejecutó |

286| `CLAUDE_CODE_SIMPLE` | Establezca en `1` para ejecutar con un indicador del sistema mínimo y solo las herramientas Bash, lectura de archivo y edición de archivo. Las herramientas MCP de `--mcp-config` siguen estando disponibles. Deshabilita el descubrimiento automático de hooks, skills, plugins, servidores MCP, memoria automática y CLAUDE.md. OAuth tokens y credenciales de llavero no se leen, por lo que la autenticación de Anthropic debe provenir de `ANTHROPIC_API_KEY` o un `apiKeyHelper` en `--settings`. Equivalente a pasar [`--bare`](/es/headless#start-faster-with-bare-mode) |286| `CLAUDE_CODE_SIMPLE` | Establezca en `1` para ejecutar con un indicador del sistema mínimo y solo las herramientas Bash, lectura de archivo y edición de archivo. Las herramientas MCP de `--mcp-config` siguen estando disponibles. Deshabilita el descubrimiento automático de hooks, skills, plugins, servidores MCP, memoria automática y CLAUDE.md. OAuth tokens y credenciales de llavero no se leen, por lo que la autenticación de Anthropic debe provenir de `ANTHROPIC_API_KEY` o un `apiKeyHelper` en `--settings`. Equivalente a pasar [`--bare`](/docs/es/headless#start-faster-with-bare-mode) |

287| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Establezca en `1` para utilizar un indicador del sistema más corto y descripciones de herramientas abreviadas en cualquier modelo. Establezca en `0`, `false`, `no` u `off` para optar por no participar incluso en modelos donde el experimento o la configuración del servidor lo habilitaría de otra manera. El conjunto completo de herramientas, hooks, servidores MCP y descubrimiento de CLAUDE.md permanecen habilitados |287| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Establezca en `1` para utilizar un indicador del sistema más corto y descripciones de herramientas abreviadas en cualquier modelo. Establezca en `0`, `false`, `no` u `off` para optar por no participar incluso en modelos donde el experimento o la configuración del servidor lo habilitaría de otra manera. El conjunto completo de herramientas, hooks, servidores MCP y descubrimiento de CLAUDE.md permanecen habilitados |

288| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Omita la autenticación del lado del cliente para [Claude Platform on AWS](/es/claude-platform-on-aws), para puertas de enlace que firman solicitudes por sí mismas |288| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Omita la autenticación del lado del cliente para [Claude Platform on AWS](/docs/es/claude-platform-on-aws), para puertas de enlace que firman solicitudes por sí mismas |

289| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | {{/* min-version: 2.1.207 */}}Establezca en `1` para desactivar el caché en proceso de credenciales resueltas desde la cadena de proveedor de credenciales predeterminada de AWS, para que Claude Code resuelva la cadena en cada solicitud de API. Con el caché desactivado, un perfil respaldado por SSO solicita credenciales de IAM Identity Center en cada solicitud. Consulte [almacenamiento en caché de credenciales y tiempo de espera de resolución](/es/amazon-bedrock#credential-caching-and-resolution-timeout). Requiere Claude Code v2.1.207 o posterior |289| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | {{/* min-version: 2.1.207 */}}Establezca en `1` para desactivar el caché en proceso de credenciales resueltas desde la cadena de proveedor de credenciales predeterminada de AWS, para que Claude Code resuelva la cadena en cada solicitud de API. Con el caché desactivado, un perfil respaldado por SSO solicita credenciales de IAM Identity Center en cada solicitud. Consulte [almacenamiento en caché de credenciales y tiempo de espera de resolución](/docs/es/amazon-bedrock#credential-caching-and-resolution-timeout). Requiere Claude Code v2.1.207 o posterior |

290| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Omita la autenticación de AWS para Amazon Bedrock (por ejemplo, cuando se utiliza una puerta de enlace LLM) |290| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Omita la autenticación de AWS para Amazon Bedrock (por ejemplo, cuando se utiliza una puerta de enlace LLM) |

291| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Omita la autenticación de Azure para Microsoft Foundry, para un proxy o puerta de enlace que inyecta su propio encabezado `Authorization`. Claude Code envía solicitudes sin una credencial de Azure y preserva el encabezado `Authorization` que proporciona, por ejemplo a través de `ANTHROPIC_CUSTOM_HEADERS`. Se ignora cuando se establece `ANTHROPIC_FOUNDRY_API_KEY` o `ANTHROPIC_FOUNDRY_AUTH_TOKEN`. {/* min-version: 2.1.203 */}Antes de v2.1.203, esta variable dejaba al cliente de Microsoft Foundry incapaz de enviar solicitudes a menos que también se estableciera una clave de API |291| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Omita la autenticación de Azure para Microsoft Foundry, para un proxy o puerta de enlace que inyecta su propio encabezado `Authorization`. Claude Code envía solicitudes sin una credencial de Azure y preserva el encabezado `Authorization` que proporciona, por ejemplo a través de `ANTHROPIC_CUSTOM_HEADERS`. Se ignora cuando se establece `ANTHROPIC_FOUNDRY_API_KEY` o `ANTHROPIC_FOUNDRY_AUTH_TOKEN`. Antes de v2.1.203, esta variable dejaba al cliente de Microsoft Foundry incapaz de enviar solicitudes a menos que también se estableciera una clave de API |

292| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Omita la autenticación de AWS para Amazon Bedrock Mantle (por ejemplo, cuando se utiliza una puerta de enlace LLM) |292| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Omita la autenticación de AWS para Amazon Bedrock Mantle (por ejemplo, cuando se utiliza una puerta de enlace LLM) |

293| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | Establezca en `1` para omitir escribir historial de indicadores y transcripciones de sesiones en disco. Las sesiones iniciadas con esta variable establecida no aparecen en `--resume`, `--continue` o historial de flecha hacia arriba. Útil para sesiones con scripts efímeros |293| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | Establezca en `1` para omitir escribir historial de indicadores y transcripciones de sesiones en disco. Las sesiones iniciadas con esta variable establecida no aparecen en `--resume`, `--continue` o historial de flecha hacia arriba. Útil para sesiones con scripts efímeros |

294| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Omita la autenticación de Google para Google Cloud's Agent Platform (por ejemplo, cuando se utiliza una puerta de enlace LLM) |294| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Omita la autenticación de Google para Google Cloud's Agent Platform (por ejemplo, cuando se utiliza una puerta de enlace LLM) |

295| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | Número máximo de veces consecutivas que un hook [Stop](/es/hooks#stop) o [SubagentStop](/es/hooks#subagentstop) puede bloquear el final del turno antes de que Claude Code lo anule y termine el turno de todas formas (predeterminado: 8). Establezca en `0` para deshabilitar el límite. Aumente esto si su hook legítimamente necesita más iteraciones para resolver |295| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | Número máximo de veces consecutivas que un hook [Stop](/docs/es/hooks#stop) o [SubagentStop](/docs/es/hooks#subagentstop) puede bloquear el final del turno antes de que Claude Code lo anule y termine el turno de todas formas (predeterminado: 8). Establezca en `0` para deshabilitar el límite. Aumente esto si su hook legítimamente necesita más iteraciones para resolver |

296| `CLAUDE_CODE_SUBAGENT_MODEL` | Consulte [Configuración de modelo](/es/model-config). {/* min-version: 2.1.196 */}A partir de v2.1.196, establecerlo en `inherit` es lo mismo que dejarlo sin establecer; las versiones anteriores trataban `inherit` como una anulación que forzaba cada subagente al modelo de la conversación principal |296| `CLAUDE_CODE_SUBAGENT_MODEL` | Consulte [Configuración de modelo](/docs/es/model-config). A partir de v2.1.196, establecerlo en `inherit` es lo mismo que dejarlo sin establecer; las versiones anteriores trataban `inherit` como una anulación que forzaba cada subagente al modelo de la conversación principal |

297| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Establezca en `1` para eliminar credenciales de Anthropic y proveedores de nube de entornos de subprocesos (herramienta Bash, hooks, servidores MCP stdio). El proceso Claude principal mantiene estas credenciales para llamadas de API, pero los procesos secundarios no pueden leerlas, reduciendo la exposición a ataques de inyección de indicadores que intentan exfiltrar secretos a través de expansión de shell. En Linux, esto también ejecuta subprocesos Bash en un espacio de nombres PID aislado para que no puedan leer entornos de procesos de host a través de `/proc`; como efecto secundario, `ps`, `pgrep` y `kill` no pueden ver ni señalar procesos de host. `claude-code-action` establece esto automáticamente cuando se configura `allowed_non_write_users` |297| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Establezca en `1` para eliminar credenciales de Anthropic y proveedores de nube de entornos de subprocesos (herramienta Bash, hooks, servidores MCP stdio). El proceso Claude principal mantiene estas credenciales para llamadas de API, pero los procesos secundarios no pueden leerlas, reduciendo la exposición a ataques de inyección de indicadores que intentan exfiltrar secretos a través de expansión de shell. En Linux, esto también ejecuta subprocesos Bash en un espacio de nombres PID aislado para que no puedan leer entornos de procesos de host a través de `/proc`; como efecto secundario, `ps`, `pgrep` y `kill` no pueden ver ni señalar procesos de host. `claude-code-action` establece esto automáticamente cuando se configura `allowed_non_write_users` |

298| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | Establezca en `1` en modo no interactivo (la bandera `-p`) para esperar a que se complete la instalación de plugins antes de la primera consulta. Sin esto, los plugins se instalan en segundo plano y pueden no estar disponibles en el primer turno. Combine con `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` para limitar la espera |298| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | Establezca en `1` en modo no interactivo (la bandera `-p`) para esperar a que se complete la instalación de plugins antes de la primera consulta. Sin esto, los plugins se instalan en segundo plano y pueden no estar disponibles en el primer turno. Combine con `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` para limitar la espera |

299| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | Tiempo de espera en milisegundos para la instalación sincrónica de plugins. Cuando se excede, Claude Code continúa sin plugins y registra un error. Sin predeterminado: sin esta variable, la instalación sincrónica espera hasta completarse |299| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | Tiempo de espera en milisegundos para la instalación sincrónica de plugins. Cuando se excede, Claude Code continúa sin plugins y registra un error. Sin predeterminado: sin esta variable, la instalación sincrónica espera hasta completarse |

300| `CLAUDE_CODE_SYNC_SKILLS` | Establezca en `1` para descargar sus skills habilitadas de claude.ai en `~/.claude/skills/` antes de la primera consulta y resincronizar cada 10 minutos. Se aplica solo en modo no interactivo con la bandera `-p`. Requiere autenticación de claude.ai. Las sesiones de [Claude Code en la web](/es/claude-code-on-the-web) reciben sus skills habilitadas de claude.ai automáticamente; no necesita establecer esto allí |300| `CLAUDE_CODE_SYNC_SKILLS` | Establezca en `1` para descargar sus skills habilitadas de claude.ai en `~/.claude/skills/` antes de la primera consulta y resincronizar cada 10 minutos. Se aplica solo en modo no interactivo con la bandera `-p`. Requiere autenticación de claude.ai. Las sesiones de [Claude Code en la web](/docs/es/claude-code-on-the-web) reciben sus skills habilitadas de claude.ai automáticamente; no necesita establecer esto allí |

301| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | Tiempo de espera en milisegundos para una resincronización de skills a mitad de sesión cuando se establece `CLAUDE_CODE_SYNC_SKILLS` (predeterminado: 30000). Limita la descarga activada cuando el host solicita una recarga de skill durante la sesión. Cuando se excede, la resincronización se detiene y las descargas de skills restantes continúan en segundo plano |301| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | Tiempo de espera en milisegundos para una resincronización de skills a mitad de sesión cuando se establece `CLAUDE_CODE_SYNC_SKILLS` (predeterminado: 30000). Limita la descarga activada cuando el host solicita una recarga de skill durante la sesión. Cuando se excede, la resincronización se detiene y las descargas de skills restantes continúan en segundo plano |

302| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | Tiempo de espera en milisegundos para que la primera consulta espere en la sincronización inicial de skills cuando se establece `CLAUDE_CODE_SYNC_SKILLS` (predeterminado: 5000). Cuando se excede, la consulta continúa y las descargas de skills restantes continúan en segundo plano |302| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | Tiempo de espera en milisegundos para que la primera consulta espere en la sincronización inicial de skills cuando se establece `CLAUDE_CODE_SYNC_SKILLS` (predeterminado: 5000). Cuando se excede, la consulta continúa y las descargas de skills restantes continúan en segundo plano |

303| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Establezca en `false` para deshabilitar el resaltado de sintaxis en salida de diff. Útil cuando los colores interfieren con su configuración de terminal. Para también deshabilitar el resaltado en bloques de código y vistas previas de archivos, utilice la configuración [`syntaxHighlightingDisabled`](/es/settings) |303| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Establezca en `false` para deshabilitar el resaltado de sintaxis en salida de diff. Útil cuando los colores interfieren con su configuración de terminal. Para también deshabilitar el resaltado en bloques de código y vistas previas de archivos, utilice la configuración [`syntaxHighlightingDisabled`](/docs/es/settings) |

304| `CLAUDE_CODE_TASK_LIST_ID` | Comparta una lista de tareas entre sesiones. Establezca el mismo ID en múltiples instancias de Claude Code para coordinar una lista de tareas compartida. Consulte [Lista de tareas](/es/interactive-mode#task-list) |304| `CLAUDE_CODE_TASK_LIST_ID` | Comparta una lista de tareas entre sesiones. Establezca el mismo ID en múltiples instancias de Claude Code para coordinar una lista de tareas compartida. Consulte [Lista de tareas](/docs/es/interactive-mode#task-list) |

305| `CLAUDE_CODE_TEAM_NAME` | Nombre del equipo de agentes al que pertenece este compañero de equipo. Se establece automáticamente en miembros de [equipo de agentes](/es/agent-teams) |305| `CLAUDE_CODE_TEAM_NAME` | Nombre del equipo de agentes al que pertenece este compañero de equipo. Se establece automáticamente en miembros de [equipo de agentes](/docs/es/agent-teams) |

306| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | {{/* min-version: 2.1.206 */}}Anule, en milisegundos, cuánto tiempo una sesión no interactiva espera al salir para que su [equipo de agentes](/es/agent-teams) termine de desmantelarse. Acepta 1000 a 60000; un valor fuera de rango se ignora y se aplica el predeterminado de 10000. Requiere Claude Code v2.1.206 o posterior |306| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | {{/* min-version: 2.1.206 */}}Anule, en milisegundos, cuánto tiempo una sesión no interactiva espera al salir para que su [equipo de agentes](/docs/es/agent-teams) termine de desmantelarse. Acepta 1000 a 60000; un valor fuera de rango se ignora y se aplica el predeterminado de 10000. Requiere Claude Code v2.1.206 o posterior |

307| `CLAUDE_CODE_TMPDIR` | Anule el directorio temporal utilizado para archivos temporales internos. Claude Code añade `/claude-{uid}/` en Unix o `/claude/` en Windows a esta ruta. Predeterminado: `/tmp` en macOS, `os.tmpdir()` en Linux y Windows. {/* min-version: 2.1.161 */}A partir de v2.1.161, en macOS y Linux, los subprocesos Bash [sandboxed](/es/sandboxing) reciben un `$TMPDIR` de respaldo corto bajo el predeterminado del sistema cuando su anulación es una ruta larga, ya que algunas herramientas fallan cuando las rutas temporales se vuelven demasiado largas. Los comandos Bash no sandboxed heredan su `$TMPDIR` de shell sin cambios. Los archivos temporales propios de Claude Code siempre utilizan su anulación |307| `CLAUDE_CODE_TMPDIR` | Anule el directorio temporal utilizado para archivos temporales internos. Claude Code añade `/claude-{uid}/` en Unix o `/claude/` en Windows a esta ruta. Predeterminado: `/tmp` en macOS, `os.tmpdir()` en Linux y Windows. A partir de v2.1.161, en macOS y Linux, los subprocesos Bash [sandboxed](/docs/es/sandboxing) reciben un `$TMPDIR` de respaldo corto bajo el predeterminado del sistema cuando su anulación es una ruta larga, ya que algunas herramientas fallan cuando las rutas temporales se vuelven demasiado largas. Los comandos Bash no sandboxed heredan su `$TMPDIR` de shell sin cambios. Los archivos temporales propios de Claude Code siempre utilizan su anulación |

308| `CLAUDE_CODE_TMUX_TRUECOLOR` | Establezca en `1` para permitir salida de truecolor de 24 bits dentro de tmux. De forma predeterminada, Claude Code se limita a 256 colores cuando se establece `$TMUX` porque tmux no pasa a través de secuencias de escape de truecolor a menos que se configure. Establezca esto después de agregar `set -ga terminal-overrides ',*:Tc'` a su `~/.tmux.conf`. Consulte [Configuración de terminal](/es/terminal-config) para otras configuraciones de tmux |308| `CLAUDE_CODE_TMUX_TRUECOLOR` | Establezca en `1` para permitir salida de truecolor de 24 bits dentro de tmux. De forma predeterminada, Claude Code se limita a 256 colores cuando se establece `$TMUX` porque tmux no pasa a través de secuencias de escape de truecolor a menos que se configure. Establezca esto después de agregar `set -ga terminal-overrides ',*:Tc'` a su `~/.tmux.conf`. Consulte [Configuración de terminal](/docs/es/terminal-config) para otras configuraciones de tmux |

309| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Use [Claude Platform on AWS](/es/claude-platform-on-aws) |309| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Use [Claude Platform on AWS](/docs/es/claude-platform-on-aws) |

310| `CLAUDE_CODE_USE_BEDROCK` | Use [Amazon Bedrock](/es/amazon-bedrock) |310| `CLAUDE_CODE_USE_BEDROCK` | Use [Amazon Bedrock](/docs/es/amazon-bedrock) |

311| `CLAUDE_CODE_USE_FOUNDRY` | Use [Microsoft Foundry](/es/microsoft-foundry) |311| `CLAUDE_CODE_USE_FOUNDRY` | Use [Microsoft Foundry](/docs/es/microsoft-foundry) |

312| `CLAUDE_CODE_USE_MANTLE` | Use el endpoint [Mantle](/es/amazon-bedrock#use-the-mantle-endpoint) de Amazon Bedrock |312| `CLAUDE_CODE_USE_MANTLE` | Use el endpoint [Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint) de Amazon Bedrock |

313| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | Establezca en `1` para descubrir comandos personalizados, subagentes y estilos de salida utilizando APIs de archivo de Node.js en lugar de ripgrep. Establezca esto si el binario ripgrep incluido no está disponible o está bloqueado en su entorno. No afecta a las herramientas Grep o búsqueda de archivos |313| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | Establezca en `1` para descubrir comandos personalizados, subagentes y estilos de salida utilizando APIs de archivo de Node.js en lugar de ripgrep. Establezca esto si el binario ripgrep incluido no está disponible o está bloqueado en su entorno. No afecta a las herramientas Grep o búsqueda de archivos |

314| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | Controla la herramienta PowerShell. En Windows sin Git Bash, la herramienta se habilita automáticamente; establezca en `0` para deshabilitarla. En Windows con Git Bash instalado, la herramienta se está implementando progresivamente: establezca en `1` para optar por participar o `0` para optar por no participar. En Linux, macOS y WSL, establezca en `1` para habilitarla, lo que requiere `pwsh` en su `PATH`. Cuando se habilita en Windows, Claude puede ejecutar comandos de PowerShell de forma nativa en lugar de enrutarlos a través de Git Bash. Consulte [Herramienta PowerShell](/es/tools-reference#powershell-tool) |314| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | Controla la herramienta PowerShell. En Windows sin Git Bash, la herramienta se habilita automáticamente; establezca en `0` para deshabilitarla. En Windows con Git Bash instalado, la herramienta se está implementando progresivamente: establezca en `1` para optar por participar o `0` para optar por no participar. En Linux, macOS y WSL, establezca en `1` para habilitarla, lo que requiere `pwsh` en su `PATH`. Cuando se habilita en Windows, Claude puede ejecutar comandos de PowerShell de forma nativa en lugar de enrutarlos a través de Git Bash. Consulte [Herramienta PowerShell](/docs/es/tools-reference#powershell-tool) |

315| `CLAUDE_CODE_USE_VERTEX` | Use [Google Cloud's Agent Platform](/es/google-vertex-ai) |315| `CLAUDE_CODE_USE_VERTEX` | Use [Google Cloud's Agent Platform](/docs/es/google-vertex-ai) |

316| `CLAUDE_CONFIG_DIR` | Anule el directorio de configuración (predeterminado: `~/.claude`). Todos los ajustes, historial de sesiones y plugins se almacenan bajo esta ruta, así como credenciales en Linux y Windows; en macOS, las credenciales están en el Keychain del sistema. Útil para ejecutar múltiples cuentas lado a lado: por ejemplo, `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'` |316| `CLAUDE_CONFIG_DIR` | Anule el directorio de configuración (predeterminado: `~/.claude`). Todos los ajustes, historial de sesiones y plugins se almacenan bajo esta ruta, así como credenciales en Linux y Windows; en macOS, las credenciales están en el Keychain del sistema. Útil para ejecutar múltiples cuentas lado a lado: por ejemplo, `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'` |

317| `CLAUDE_DISABLE_ADOPT` | {/* min-version: 2.1.195 */}Establezca en `1` para detener el trabajo en segundo plano en vuelo en lugar de llevarlo cuando pone una sesión en segundo plano presionando `←` o con [`/background`](/es/agent-view#from-inside-a-session). Claude Code le pide que confirme antes de poner en segundo plano, luego detiene las tareas que de otra manera se llevarían. Requiere Claude Code v2.1.195 o posterior |317| `CLAUDE_DISABLE_ADOPT` | Establezca en `1` para detener el trabajo en segundo plano en vuelo en lugar de llevarlo cuando pone una sesión en segundo plano presionando `←` o con [`/background`](/docs/es/agent-view#from-inside-a-session). Claude Code le pide que confirme antes de poner en segundo plano, luego detiene las tareas que de otra manera se llevarían. Requiere Claude Code v2.1.195 o posterior |

318| `CLAUDE_EFFORT` | Se establece automáticamente en subprocesos de herramientas Bash y comandos hook en el [nivel de esfuerzo](/es/model-config#adjust-effort-level) activo para el turno: `low`, `medium`, `high`, `xhigh` o `max`. Ultracode no es un nivel distinto e informa como `xhigh`. Coincide con el campo `effort.level` pasado a [hooks](/es/hooks). Solo se establece cuando el modelo actual admite el parámetro de esfuerzo |318| `CLAUDE_EFFORT` | Se establece automáticamente en subprocesos de herramientas Bash y comandos hook en el [nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) activo para el turno: `low`, `medium`, `high`, `xhigh` o `max`. Ultracode no es un nivel distinto e informa como `xhigh`. Coincide con el campo `effort.level` pasado a [hooks](/docs/es/hooks). Solo se establece cuando el modelo actual admite el parámetro de esfuerzo |

319| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Establezca en `1` para forzar la habilitación del perro guardián de inactividad de transmisión a nivel de byte, o establezca en `0` para forzar su deshabilitación. Cuando no se establece, el perro guardián se habilita de forma predeterminada para conexiones de API de Anthropic directas y [Claude Platform on AWS](/es/claude-platform-on-aws). El perro guardián de byte aborta una conexión cuando no llegan bytes en el cable durante 180 segundos de forma predeterminada en conexiones de API de Anthropic directas, 300 segundos en Claude Platform on AWS y cuando se habilita en Amazon Bedrock, o para el valor de `CLAUDE_STREAM_IDLE_TIMEOUT_MS` cuando se establece, que se fija a un mínimo de 5 minutos, independientemente del perro guardián a nivel de evento |319| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Establezca en `1` para forzar la habilitación del perro guardián de inactividad de transmisión a nivel de byte, o establezca en `0` para forzar su deshabilitación. Cuando no se establece, el perro guardián se habilita de forma predeterminada para conexiones de API de Anthropic directas y [Claude Platform on AWS](/docs/es/claude-platform-on-aws). El perro guardián de byte aborta una conexión cuando no llegan bytes en el cable durante 180 segundos de forma predeterminada en conexiones de API de Anthropic directas, 300 segundos en Claude Platform on AWS y cuando se habilita en Amazon Bedrock, o para el valor de `CLAUDE_STREAM_IDLE_TIMEOUT_MS` cuando se establece, que se fija a un mínimo de 5 minutos, independientemente del perro guardián a nivel de evento |

320| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Establezca en `1` para habilitar el perro guardián de inactividad de transmisión a nivel de byte en respuestas `vnd.amazon.eventstream` de Amazon Bedrock. Desactivado de forma predeterminado. Configure el tiempo de espera con `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |320| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Establezca en `1` para habilitar el perro guardián de inactividad de transmisión a nivel de byte en respuestas `vnd.amazon.eventstream` de Amazon Bedrock. Desactivado de forma predeterminado. Configure el tiempo de espera con `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |

321| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Establezca en `0` para forzar la deshabilitación del perro guardián de inactividad de transmisión a nivel de evento, o establezca en `1` para forzar su habilitación. {/* min-version: 2.1.196 */}Cuando no se establece, el perro guardián está activado de forma predeterminada para todos los proveedores. Antes de v2.1.196, el predeterminado sin establecer era controlado por servidor en la API de Anthropic directa y desactivado en otros proveedores. {/* min-version: 2.1.169 */}A partir de v2.1.169, los proveedores distintos de la API de Anthropic directa y Claude Platform on AWS también tienen un tiempo de espera de inactividad de cuerpo de 5 minutos predeterminado independiente de esta variable; consulte `API_FORCE_IDLE_TIMEOUT`. En Amazon Bedrock, también puede habilitar el perro guardián independiente a nivel de byte con `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK`; los dos se ejecutan juntos cuando ambos se establecen. Configure el tiempo de espera con `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |321| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Establezca en `0` para forzar la deshabilitación del perro guardián de inactividad de transmisión a nivel de evento, o establezca en `1` para forzar su habilitación. Cuando no se establece, el perro guardián está activado de forma predeterminada para todos los proveedores. Antes de v2.1.196, el predeterminado sin establecer era controlado por servidor en la API de Anthropic directa y desactivado en otros proveedores. A partir de v2.1.169, los proveedores distintos de la API de Anthropic directa y Claude Platform on AWS también tienen un tiempo de espera de inactividad de cuerpo de 5 minutos predeterminado independiente de esta variable; consulte `API_FORCE_IDLE_TIMEOUT`. En Amazon Bedrock, también puede habilitar el perro guardián independiente a nivel de byte con `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK`; los dos se ejecutan juntos cuando ambos se establecen. Configure el tiempo de espera con `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |

322| `CLAUDE_ENV_FILE` | Ruta a un script de shell cuyo contenido Claude Code ejecuta antes de cada comando Bash en el mismo proceso de shell, por lo que las exportaciones en el archivo son visibles para el comando. Utilice para persistir la activación de virtualenv o conda entre comandos. También se completa dinámicamente por hooks [SessionStart](/es/hooks#persist-environment-variables), [Setup](/es/hooks#setup), [CwdChanged](/es/hooks#cwdchanged) y [FileChanged](/es/hooks#filechanged) |322| `CLAUDE_ENV_FILE` | Ruta a un script de shell cuyo contenido Claude Code ejecuta antes de cada comando Bash en el mismo proceso de shell, por lo que las exportaciones en el archivo son visibles para el comando. Utilice para persistir la activación de virtualenv o conda entre comandos. También se completa dinámicamente por hooks [SessionStart](/docs/es/hooks#persist-environment-variables), [Setup](/docs/es/hooks#setup), [CwdChanged](/docs/es/hooks#cwdchanged) y [FileChanged](/docs/es/hooks#filechanged) |

323| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Prefijo para nombres de sesión de [Control Remoto](/es/remote-control) generados automáticamente cuando no se proporciona un nombre explícito. El valor predeterminado es el nombre de host de su máquina, produciendo nombres como `myhost-graceful-unicorn`. La bandera CLI `--remote-control-session-name-prefix` establece el mismo valor para una única invocación |323| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Prefijo para nombres de sesión de [Control Remoto](/docs/es/remote-control) generados automáticamente cuando no se proporciona un nombre explícito. El valor predeterminado es el nombre de host de su máquina, produciendo nombres como `myhost-graceful-unicorn`. La bandera CLI `--remote-control-session-name-prefix` establece el mismo valor para una única invocación |

324| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Tiempo de espera en milisegundos antes de que el perro guardián de inactividad de transmisión cierre una conexión estancada. Cuando establece esta variable explícitamente, el mínimo es `300000` (5 minutos); los valores más bajos se fijan silenciosamente para absorber pausas de pensamiento extendido y almacenamiento en búfer de proxy. Cuando no se establece, el perro guardián a nivel de evento predeterminado es 300 segundos y el perro guardián a nivel de byte predeterminado es 180 segundos en conexiones de API de Anthropic directas (300 segundos en Claude Platform on AWS y otros proveedores). El predeterminado de 180 segundos del perro guardián de byte sin establecer es un valor separado y no está sujeto a la fijación de 5 minutos. El tiempo de espera de inactividad de cuerpo descrito bajo `API_FORCE_IDLE_TIMEOUT` se aplica independientemente. En Amazon Bedrock, también se aplica cuando `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1` |324| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Tiempo de espera en milisegundos antes de que el perro guardián de inactividad de transmisión cierre una conexión estancada. Cuando establece esta variable explícitamente, el mínimo es `300000` (5 minutos); los valores más bajos se fijan silenciosamente para absorber pausas de pensamiento extendido y almacenamiento en búfer de proxy. Cuando no se establece, el perro guardián a nivel de evento predeterminado es 300 segundos y el perro guardián a nivel de byte predeterminado es 180 segundos en conexiones de API de Anthropic directas (300 segundos en Claude Platform on AWS y otros proveedores). El predeterminado de 180 segundos del perro guardián de byte sin establecer es un valor separado y no está sujeto a la fijación de 5 minutos. El tiempo de espera de inactividad de cuerpo descrito bajo `API_FORCE_IDLE_TIMEOUT` se aplica independientemente. En Amazon Bedrock, también se aplica cuando `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1` |

325| `DEBUG` | Establezca en `1` para habilitar el modo de depuración, equivalente a lanzar con [`--debug`](/es/cli-reference#cli-flags). Los registros de depuración se escriben en `~/.claude/debug/<session-id>.txt`, o en la ruta establecida por `CLAUDE_CODE_DEBUG_LOGS_DIR`. Solo los valores verdaderos `1`, `true`, `yes` y `on` habilitan el modo de depuración, por lo que patrones de espacio de nombres como `DEBUG=express:*` establecidos para otras herramientas no lo activan |325| `DEBUG` | Establezca en `1` para habilitar el modo de depuración, equivalente a lanzar con [`--debug`](/docs/es/cli-reference#cli-flags). Los registros de depuración se escriben en `~/.claude/debug/<session-id>.txt`, o en la ruta establecida por `CLAUDE_CODE_DEBUG_LOGS_DIR`. Solo los valores verdaderos `1`, `true`, `yes` y `on` habilitan el modo de depuración, por lo que patrones de espacio de nombres como `DEBUG=express:*` establecidos para otras herramientas no lo activan |

326| `DISABLE_AUTOUPDATER` | Establezca en `1` para deshabilitar actualizaciones automáticas en segundo plano. El comando manual `claude update` sigue funcionando. Use `DISABLE_UPDATES` para bloquear ambos |326| `DISABLE_AUTOUPDATER` | Establezca en `1` para deshabilitar actualizaciones automáticas en segundo plano. El comando manual `claude update` sigue funcionando. Use `DISABLE_UPDATES` para bloquear ambos |

327| `DISABLE_AUTO_COMPACT` | Establezca en `1` para deshabilitar la compactación automática cuando se aproxime al límite de contexto. El comando manual `/compact` sigue estando disponible. Utilice cuando desee control explícito sobre cuándo ocurre la compactación |327| `DISABLE_AUTO_COMPACT` | Establezca en `1` para deshabilitar la compactación automática cuando se aproxime al límite de contexto. El comando manual `/compact` sigue estando disponible. Utilice cuando desee control explícito sobre cuándo ocurre la compactación |

328| `DISABLE_COMPACT` | Establezca en `1` para deshabilitar toda la compactación: tanto la compactación automática como el comando manual `/compact` |328| `DISABLE_COMPACT` | Establezca en `1` para deshabilitar toda la compactación: tanto la compactación automática como el comando manual `/compact` |

329| `DISABLE_COST_WARNINGS` | Establezca en `1` para deshabilitar mensajes de advertencia de costo |329| `DISABLE_COST_WARNINGS` | Establezca en `1` para deshabilitar mensajes de advertencia de costo |

330| `DISABLE_DOCTOR_COMMAND` | Establezca en `1` para ocultar la skill de verificación de configuración [`/doctor`](/es/commands#all-commands) y su alias `/checkup`. Útil para despliegues administrados donde los usuarios no deben ejecutar diagnósticos de configuración desde una sesión. No afecta al comando de terminal `claude doctor`. {/* min-version: 2.1.205 */}Antes de v2.1.205, esta variable ocultaba la pantalla de diagnósticos `/doctor` |330| `DISABLE_DOCTOR_COMMAND` | Establezca en `1` para ocultar la skill de verificación de configuración [`/doctor`](/docs/es/commands#all-commands) y su alias `/checkup`. Útil para despliegues administrados donde los usuarios no deben ejecutar diagnósticos de configuración desde una sesión. No afecta al comando de terminal `claude doctor`. Antes de v2.1.205, esta variable ocultaba la pantalla de diagnósticos `/doctor` |

331| `DISABLE_ERROR_REPORTING` | Establezca en `1` para optar por no participar en el informe de errores |331| `DISABLE_ERROR_REPORTING` | Establezca en `1` para optar por no participar en el informe de errores |

332| `DISABLE_EXTRA_USAGE_COMMAND` | Establezca en `1` para ocultar el comando `/usage-credits` que permite a los usuarios comprar uso adicional más allá de los límites de velocidad |332| `DISABLE_EXTRA_USAGE_COMMAND` | Establezca en `1` para ocultar el comando `/usage-credits` que permite a los usuarios comprar uso adicional más allá de los límites de velocidad |

333| `DISABLE_FEEDBACK_COMMAND` | Establezca en `1` para deshabilitar el comando `/feedback`. El nombre anterior `DISABLE_BUG_COMMAND` también se acepta |333| `DISABLE_FEEDBACK_COMMAND` | Establezca en `1` para deshabilitar el comando `/feedback`. El nombre anterior `DISABLE_BUG_COMMAND` también se acepta |


346| `DISABLE_UPDATES` | Establezca en `1` para bloquear todas las actualizaciones, incluido el comando manual `claude update` y `claude install`. Más estricto que `DISABLE_AUTOUPDATER`. Utilice cuando distribuya Claude Code a través de sus propios canales y los usuarios no deben auto-actualizarse |346| `DISABLE_UPDATES` | Establezca en `1` para bloquear todas las actualizaciones, incluido el comando manual `claude update` y `claude install`. Más estricto que `DISABLE_AUTOUPDATER`. Utilice cuando distribuya Claude Code a través de sus propios canales y los usuarios no deben auto-actualizarse |

347| `DISABLE_UPGRADE_COMMAND` | Establezca en `1` para ocultar el comando `/upgrade` |347| `DISABLE_UPGRADE_COMMAND` | Establezca en `1` para ocultar el comando `/upgrade` |

348| `DO_NOT_TRACK` | Establezca en `1` para optar por no participar en la telemetría. Equivalente a establecer `DISABLE_TELEMETRY`. Claude Code honra esto como la convención estándar entre herramientas reconocida por muchas CLI de desarrolladores |348| `DO_NOT_TRACK` | Establezca en `1` para optar por no participar en la telemetría. Equivalente a establecer `DISABLE_TELEMETRY`. Claude Code honra esto como la convención estándar entre herramientas reconocida por muchas CLI de desarrolladores |

349| `ENABLE_CLAUDEAI_MCP_SERVERS` | Establezca en `false` para deshabilitar [servidores MCP de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai) en Claude Code. Habilitado de forma predeterminada para usuarios conectados. Para deshabilitar por proyecto u organización, establezca [`disableClaudeAiConnectors`](/es/settings#available-settings) en configuración en su lugar |349| `ENABLE_CLAUDEAI_MCP_SERVERS` | Establezca en `false` para deshabilitar [servidores MCP de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai) en Claude Code. Habilitado de forma predeterminada para usuarios conectados. Para deshabilitar por proyecto u organización, establezca [`disableClaudeAiConnectors`](/docs/es/settings#available-settings) en configuración en su lugar |

350| `ENABLE_PROMPT_CACHING_1H` | Establezca en `1` para solicitar un TTL de caché de indicador de 1 hora en lugar de los 5 minutos predeterminados. Destinado a usuarios de clave de API, [Amazon Bedrock](/es/amazon-bedrock), [Google Cloud's Agent Platform](/es/google-vertex-ai), [Microsoft Foundry](/es/microsoft-foundry) y [Claude Platform on AWS](/es/claude-platform-on-aws). Los usuarios de suscripción reciben TTL de 1 hora automáticamente. Las escrituras de caché de 1 hora se facturan a una tasa más alta |350| `ENABLE_PROMPT_CACHING_1H` | Establezca en `1` para solicitar un TTL de caché de indicador de 1 hora en lugar de los 5 minutos predeterminados. Destinado a usuarios de clave de API, [Amazon Bedrock](/docs/es/amazon-bedrock), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai), [Microsoft Foundry](/docs/es/microsoft-foundry) y [Claude Platform on AWS](/docs/es/claude-platform-on-aws). Los usuarios de suscripción reciben TTL de 1 hora automáticamente. Las escrituras de caché de 1 hora se facturan a una tasa más alta |

351| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Deprecated. Use `ENABLE_PROMPT_CACHING_1H` instead |351| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Deprecated. Use `ENABLE_PROMPT_CACHING_1H` instead |

352| `ENABLE_TOOL_SEARCH` | Controla [búsqueda de herramientas MCP](/es/mcp#scale-with-mcp-tool-search). Sin establecer: todas las herramientas MCP diferidas de forma predeterminada, pero cargadas por adelantado en Google Cloud's Agent Platform o cuando `ANTHROPIC_BASE_URL` apunta a un host que no es de primera parte. Valores: `true` (siempre diferir e incluir el encabezado beta, las solicitudes fallan en modelos de Google Cloud's Agent Platform anteriores a Sonnet 4.5 u Opus 4.5, o en proxies que no admiten `tool_reference`), `auto` (modo de umbral: cargar por adelantado si las herramientas caben dentro del 10% del contexto), `auto:N` (umbral personalizado, p. ej., `auto:5` para 5%), `false` (cargar todo por adelantado). Se ignora cuando se establece `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`, que fuerza todas las herramientas a cargar por adelantado |352| `ENABLE_TOOL_SEARCH` | Controla [búsqueda de herramientas MCP](/docs/es/mcp#scale-with-mcp-tool-search). Sin establecer: todas las herramientas MCP diferidas de forma predeterminada, pero cargadas por adelantado en Google Cloud's Agent Platform o cuando `ANTHROPIC_BASE_URL` apunta a un host que no es de primera parte. Valores: `true` (siempre diferir e incluir el encabezado beta, las solicitudes fallan en modelos de Google Cloud's Agent Platform anteriores a Sonnet 4.5 u Opus 4.5, o en proxies que no admiten `tool_reference`), `auto` (modo de umbral: cargar por adelantado si las herramientas caben dentro del 10% del contexto), `auto:N` (umbral personalizado, p. ej., `auto:5` para 5%), `false` (cargar todo por adelantado). Se ignora cuando se establece `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`, que fuerza todas las herramientas a cargar por adelantado |

353| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | Establezca en cualquier valor no vacío para hacer que todos los modelos, no solo Opus, dejen de reintentar con un error de sobrecarga repetido cuando no hay modelo de respaldo configurado. {/* min-version: 2.1.160 */}A partir de v2.1.160, una [cadena de modelo de respaldo](/es/model-config#fallback-model-chains) configurada se activa en errores de sobrecarga repetidos para cualquier modelo principal, por lo que esta variable no afecta el cambio a un modelo de respaldo |353| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | Establezca en cualquier valor no vacío para hacer que todos los modelos, no solo Opus, dejen de reintentar con un error de sobrecarga repetido cuando no hay modelo de respaldo configurado. A partir de v2.1.160, una [cadena de modelo de respaldo](/docs/es/model-config#fallback-model-chains) configurada se activa en errores de sobrecarga repetidos para cualquier modelo principal, por lo que esta variable no afecta el cambio a un modelo de respaldo |

354| `FORCE_AUTOUPDATE_PLUGINS` | Establezca en `1` para forzar actualizaciones automáticas de plugins incluso cuando el actualizador automático principal está deshabilitado mediante `DISABLE_AUTOUPDATER` |354| `FORCE_AUTOUPDATE_PLUGINS` | Establezca en `1` para forzar actualizaciones automáticas de plugins incluso cuando el actualizador automático principal está deshabilitado mediante `DISABLE_AUTOUPDATER` |

355| `FORCE_HYPERLINK` | Establezca en `1` para habilitar hipervínculos OSC 8 clicables cuando su terminal los admite pero no se detectan automáticamente, o `0` para deshabilitarlos |355| `FORCE_HYPERLINK` | Establezca en `1` para habilitar hipervínculos OSC 8 clicables cuando su terminal los admite pero no se detectan automáticamente, o `0` para deshabilitarlos |

356| `FORCE_PROMPT_CACHING_5M` | Establezca en `1` para forzar el TTL de caché de indicador de 5 minutos incluso cuando el TTL de 1 hora se aplicaría de otra manera. Anula `ENABLE_PROMPT_CACHING_1H` |356| `FORCE_PROMPT_CACHING_5M` | Establezca en `1` para forzar el TTL de caché de indicador de 5 minutos incluso cuando el TTL de 1 hora se aplicaría de otra manera. Anula `ENABLE_PROMPT_CACHING_1H` |

357| `HTTP_PROXY` | Especifique el servidor proxy HTTP para conexiones de red |357| `HTTP_PROXY` | Especifique el servidor proxy HTTP para conexiones de red |

358| `HTTPS_PROXY` | Especifique el servidor proxy HTTPS para conexiones de red |358| `HTTPS_PROXY` | Especifique el servidor proxy HTTPS para conexiones de red |

359| `IS_DEMO` | Establezca en `1` para habilitar el modo de demostración: oculta su correo electrónico y nombre de organización del encabezado y salida de `/status`, y omite la incorporación. Útil cuando transmite o graba una sesión |359| `IS_DEMO` | Establezca en `1` para habilitar el modo de demostración: oculta su correo electrónico y nombre de organización del encabezado y salida de `/status`, y omite la incorporación. Útil cuando transmite o graba una sesión |

360| `MAX_MCP_OUTPUT_TOKENS` | Número máximo de tokens permitidos en respuestas de herramientas MCP. Claude Code muestra una advertencia cuando la salida excede 10,000 tokens. Las herramientas que declaran [`anthropic/maxResultSizeChars`](/es/mcp#raise-the-limit-for-a-specific-tool) utilizan ese límite de caracteres para contenido de texto en su lugar, pero el contenido de imagen de esas herramientas sigue estando sujeto a esta variable (predeterminado: 25000) |360| `MAX_MCP_OUTPUT_TOKENS` | Número máximo de tokens permitidos en respuestas de herramientas MCP. Claude Code muestra una advertencia cuando la salida excede 10,000 tokens. Las herramientas que declaran [`anthropic/maxResultSizeChars`](/docs/es/mcp#raise-the-limit-for-a-specific-tool) utilizan ese límite de caracteres para contenido de texto en su lugar, pero el contenido de imagen de esas herramientas sigue estando sujeto a esta variable (predeterminado: 25000) |

361| `MAX_STRUCTURED_OUTPUT_RETRIES` | Número de veces para reintentar cuando la respuesta del modelo falla la validación contra el [`--json-schema`](/es/cli-reference#cli-flags) en modo no interactivo (la bandera `-p`). El valor predeterminado es 5 |361| `MAX_STRUCTURED_OUTPUT_RETRIES` | Número de veces para reintentar cuando la respuesta del modelo falla la validación contra el [`--json-schema`](/docs/es/cli-reference#cli-flags) en modo no interactivo (la bandera `-p`). El valor predeterminado es 5 |

362| `MAX_THINKING_TOKENS` | Anule el presupuesto de tokens de [pensamiento extendido](https://platform.claude.com/docs/en/build-with-claude/extended-thinking). El techo es el [máximo de tokens de salida](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison) del modelo menos uno. Establezca en `0` para deshabilitar el pensamiento en la API de Anthropic excepto en Fable 5, que no puede tener el pensamiento desactivado. En [proveedores de terceros](/es/third-party-integrations), `0` asimismo omite el parámetro, y los modelos con [razonamiento adaptativo](/es/model-config#adjust-effort-level) aún pueden pensar. Para valores distintos de cero en modelos de razonamiento adaptativo, el presupuesto se ignora a menos que el razonamiento adaptativo esté deshabilitado a través de `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` |362| `MAX_THINKING_TOKENS` | Anule el presupuesto de tokens de [pensamiento extendido](https://platform.claude.com/docs/en/build-with-claude/extended-thinking). El techo es el [máximo de tokens de salida](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison) del modelo menos uno. Establezca en `0` para deshabilitar el pensamiento en la API de Anthropic excepto en Fable 5, que no puede tener el pensamiento desactivado. En [proveedores de terceros](/docs/es/third-party-integrations), `0` asimismo omite el parámetro, y los modelos con [razonamiento adaptativo](/docs/es/model-config#adjust-effort-level) aún pueden pensar. Para valores distintos de cero en modelos de razonamiento adaptativo, el presupuesto se ignora a menos que el razonamiento adaptativo esté deshabilitado a través de `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` |

363| `MCP_CLIENT_SECRET` | Secreto de cliente OAuth para servidores MCP que requieren [credenciales preconfiguradas](/es/mcp#use-pre-configured-oauth-credentials). Evita el indicador interactivo al agregar un servidor con `--client-secret` |363| `MCP_CLIENT_SECRET` | Secreto de cliente OAuth para servidores MCP que requieren [credenciales preconfiguradas](/docs/es/mcp#use-pre-configured-oauth-credentials). Evita el indicador interactivo al agregar un servidor con `--client-secret` |

364| `MCP_CONNECTION_NONBLOCKING` | Controla si el inicio espera a que se conecten los servidores MCP antes de la primera consulta. {/* min-version: 2.1.142 */}A partir de Claude Code v2.1.142, el inicio de MCP es no bloqueante de forma predeterminada: los servidores se conectan en segundo plano y sus herramientas se vuelven disponibles a medida que terminan. Establezca en `0` para restaurar la espera de conexión bloqueante de 5 segundos. Los servidores configurados con [`alwaysLoad: true`](/es/mcp#exempt-a-server-from-deferral) siguen bloqueando el inicio independientemente, ya que sus herramientas deben estar presentes cuando se construye el primer indicador |364| `MCP_CONNECTION_NONBLOCKING` | Controla si el inicio espera a que se conecten los servidores MCP antes de la primera consulta. A partir de Claude Code v2.1.142, el inicio de MCP es no bloqueante de forma predeterminada: los servidores se conectan en segundo plano y sus herramientas se vuelven disponibles a medida que terminan. Establezca en `0` para restaurar la espera de conexión bloqueante de 5 segundos. Los servidores configurados con [`alwaysLoad: true`](/docs/es/mcp#exempt-a-server-from-deferral) siguen bloqueando el inicio independientemente, ya que sus herramientas deben estar presentes cuando se construye el primer indicador |

365| `MCP_CONNECT_TIMEOUT_MS` | Cuánto tiempo espera el inicio bloqueante de MCP, en milisegundos, para que se complete el lote de conexión antes de tomar una instantánea de la lista de herramientas (predeterminado: 5000). Se aplica cuando `MCP_CONNECTION_NONBLOCKING=0` o para servidores marcados [`alwaysLoad: true`](/es/mcp#exempt-a-server-from-deferral). Los servidores aún pendientes en la fecha límite continúan conectándose en segundo plano pero no aparecerán hasta la siguiente consulta. Distinto de `MCP_TIMEOUT`, que limita el intento de conexión de un servidor individual |365| `MCP_CONNECT_TIMEOUT_MS` | Cuánto tiempo espera el inicio bloqueante de MCP, en milisegundos, para que se complete el lote de conexión antes de tomar una instantánea de la lista de herramientas (predeterminado: 5000). Se aplica cuando `MCP_CONNECTION_NONBLOCKING=0` o para servidores marcados [`alwaysLoad: true`](/docs/es/mcp#exempt-a-server-from-deferral). Los servidores aún pendientes en la fecha límite continúan conectándose en segundo plano pero no aparecerán hasta la siguiente consulta. Distinto de `MCP_TIMEOUT`, que limita el intento de conexión de un servidor individual |

366| `MCP_OAUTH_CALLBACK_PORT` | Puerto fijo para la devolución de llamada de redirección de OAuth, como alternativa a `--callback-port` al agregar un servidor MCP con [credenciales preconfiguradas](/es/mcp#use-pre-configured-oauth-credentials) |366| `MCP_OAUTH_CALLBACK_PORT` | Puerto fijo para la devolución de llamada de redirección de OAuth, como alternativa a `--callback-port` al agregar un servidor MCP con [credenciales preconfiguradas](/docs/es/mcp#use-pre-configured-oauth-credentials) |

367| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Número máximo de servidores MCP remotos (HTTP/SSE) para conectar en paralelo durante el inicio (predeterminado: 20) |367| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Número máximo de servidores MCP remotos (HTTP/SSE) para conectar en paralelo durante el inicio (predeterminado: 20) |

368| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Número máximo de servidores MCP locales (stdio) para conectar en paralelo durante el inicio (predeterminado: 3) |368| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Número máximo de servidores MCP locales (stdio) para conectar en paralelo durante el inicio (predeterminado: 3) |

369| `MCP_TIMEOUT` | Tiempo de espera en milisegundos para el inicio del servidor MCP (predeterminado: 30000, o 30 segundos) |369| `MCP_TIMEOUT` | Tiempo de espera en milisegundos para el inicio del servidor MCP (predeterminado: 30000, o 30 segundos) |

370| `MCP_TOOL_TIMEOUT` | Tiempo de espera en milisegundos para la ejecución de herramientas MCP (predeterminado: 100000000, aproximadamente 28 horas). Para un servidor HTTP, SSE o conector de claude.ai, cada solicitud también agota el tiempo de espera después de 60 segundos de forma predeterminada; establezca esta variable, o el `timeout` por servidor, por encima de 60000 para elevar ese límite por solicitud. Un valor más bajo aún acorta el tiempo de espera general de ejecución de herramientas pero deja el límite por solicitud en 60 segundos. Los servidores Stdio y WebSocket no tienen temporizador por solicitud. Un campo `timeout` por servidor en `.mcp.json` anula esto para ese servidor. {{/* min-version: 2.1.203 */}}Un `timeout` por servidor de al menos 1000 también establece la ventana de inactividad mínima para las llamadas de herramientas de ese servidor, por lo que `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` nunca las aborta antes; este piso requiere Claude Code v2.1.203 o posterior. Para la variable env, los valores por debajo de 1000 se redondean a un segundo; para el campo por servidor, los valores por debajo de 1000 se ignoran |370| `MCP_TOOL_TIMEOUT` | Tiempo de espera en milisegundos para la ejecución de herramientas MCP (predeterminado: 100000000, aproximadamente 28 horas). Para un servidor HTTP, SSE o conector de claude.ai, cada solicitud también agota el tiempo de espera después de 60 segundos de forma predeterminada; establezca esta variable, o el `timeout` por servidor, por encima de 60000 para elevar ese límite por solicitud. Un valor más bajo aún acorta el tiempo de espera general de ejecución de herramientas pero deja el límite por solicitud en 60 segundos. Los servidores Stdio y WebSocket no tienen temporizador por solicitud. Un campo `timeout` por servidor en `.mcp.json` anula esto para ese servidor. {{/* min-version: 2.1.203 */}}Un `timeout` por servidor de al menos 1000 también establece la ventana de inactividad mínima para las llamadas de herramientas de ese servidor, por lo que `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` nunca las aborta antes; este piso requiere Claude Code v2.1.203 o posterior. Para la variable env, los valores por debajo de 1000 se redondean a un segundo; para el campo por servidor, los valores por debajo de 1000 se ignoran |

371| `NO_PROXY` | Lista de dominios e IPs a los que se emitirán solicitudes directamente, omitiendo el proxy |371| `NO_PROXY` | Lista de dominios e IPs a los que se emitirán solicitudes directamente, omitiendo el proxy |

372| `OTEL_LOG_ASSISTANT_RESPONSES` | {/* min-version: 2.1.193 */}Establezca en `1` para incluir el texto de respuesta del modelo en eventos de registro de OpenTelemetry `assistant_response`. Cuando no se establece, se utiliza el valor de `OTEL_LOG_USER_PROMPTS` en su lugar. Establezca en `0` para mantener las respuestas redactadas incluso cuando se establece `OTEL_LOG_USER_PROMPTS`. Requiere Claude Code v2.1.193 o posterior. Consulte [Monitoreo](/es/monitoring-usage#assistant-response-event) |372| `OTEL_LOG_ASSISTANT_RESPONSES` | Establezca en `1` para incluir el texto de respuesta del modelo en eventos de registro de OpenTelemetry `assistant_response`. Cuando no se establece, se utiliza el valor de `OTEL_LOG_USER_PROMPTS` en su lugar. Establezca en `0` para mantener las respuestas redactadas incluso cuando se establece `OTEL_LOG_USER_PROMPTS`. Requiere Claude Code v2.1.193 o posterior. Consulte [Monitoreo](/docs/es/monitoring-usage#assistant-response-event) |

373| `OTEL_LOG_RAW_API_BODIES` | Emita el JSON completo de solicitud y respuesta de la API de Mensajes de Anthropic como eventos de registro `api_request_body` / `api_response_body`. Establezca en `1` para cuerpos en línea truncados en 60 KB, o `file:<dir>` para escribir cuerpos sin truncar en disco y emitir una ruta `body_ref` en su lugar. Deshabilitado de forma predeterminada; los cuerpos incluyen todo el historial de conversación. Consulte [Monitoreo](/es/monitoring-usage#api-request-body-event) |373| `OTEL_LOG_RAW_API_BODIES` | Emita el JSON completo de solicitud y respuesta de la API de Mensajes de Anthropic como eventos de registro `api_request_body` / `api_response_body`. Establezca en `1` para cuerpos en línea truncados en 60 KB, o `file:<dir>` para escribir cuerpos sin truncar en disco y emitir una ruta `body_ref` en su lugar. Deshabilitado de forma predeterminada; los cuerpos incluyen todo el historial de conversación. Consulte [Monitoreo](/docs/es/monitoring-usage#api-request-body-event) |

374| `OTEL_LOG_TOOL_CONTENT` | Establezca en `1` para incluir contenido de entrada y salida de herramientas en eventos de span de OpenTelemetry. Deshabilitado de forma predeterminada para proteger datos sensibles. Consulte [Monitoreo](/es/monitoring-usage) |374| `OTEL_LOG_TOOL_CONTENT` | Establezca en `1` para incluir contenido de entrada y salida de herramientas en eventos de span de OpenTelemetry. Deshabilitado de forma predeterminada para proteger datos sensibles. Consulte [Monitoreo](/docs/es/monitoring-usage) |

375| `OTEL_LOG_TOOL_DETAILS` | Establezca en `1` para incluir argumentos de entrada de herramientas, nombres de servidores MCP, nombres de flujos de trabajo creados por el usuario, cadenas de error sin procesar en fallos de herramientas, la categoría de rechazo en eventos `api_refusal` y otros detalles de herramientas en trazas y registros de OpenTelemetry. Deshabilitado de forma predeterminado para proteger PII. Consulte [Monitoreo](/es/monitoring-usage) |375| `OTEL_LOG_TOOL_DETAILS` | Establezca en `1` para incluir argumentos de entrada de herramientas, nombres de servidores MCP, nombres de flujos de trabajo creados por el usuario, cadenas de error sin procesar en fallos de herramientas, la categoría de rechazo en eventos `api_refusal` y otros detalles de herramientas en trazas y registros de OpenTelemetry. Deshabilitado de forma predeterminado para proteger PII. Consulte [Monitoreo](/docs/es/monitoring-usage) |

376| `OTEL_LOG_USER_PROMPTS` | Establezca en `1` para incluir texto de indicador de usuario en trazas y registros de OpenTelemetry. Deshabilitado de forma predeterminado (los indicadores se redactan). Consulte [Monitoreo](/es/monitoring-usage) |376| `OTEL_LOG_USER_PROMPTS` | Establezca en `1` para incluir texto de indicador de usuario en trazas y registros de OpenTelemetry. Deshabilitado de forma predeterminado (los indicadores se redactan). Consulte [Monitoreo](/docs/es/monitoring-usage) |

377| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Establezca en `false` para excluir UUID de cuenta de atributos de métricas (predeterminado: incluido). Consulte [Monitoreo](/es/monitoring-usage) |377| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Establezca en `false` para excluir UUID de cuenta de atributos de métricas (predeterminado: incluido). Consulte [Monitoreo](/docs/es/monitoring-usage) |

378| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | {/* min-version: 2.1.152 */}Establezca en `true` para incluir el punto de entrada de sesión en atributos de métricas (predeterminado: excluido). Agregado en v2.1.152. Consulte [Monitoreo](/es/monitoring-usage) |378| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | Establezca en `true` para incluir el punto de entrada de sesión en atributos de métricas (predeterminado: excluido). Agregado en v2.1.152. Consulte [Monitoreo](/docs/es/monitoring-usage) |

379| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | {/* min-version: 2.1.161 */}A partir de v2.1.161, Claude Code adjunta claves `OTEL_RESOURCE_ATTRIBUTES` a etiquetas de puntos de datos de métricas. Establezca en `false` para excluirlas (predeterminado: incluidas). Consulte [Monitoreo](/es/monitoring-usage#multi-team-organization-support) |379| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | A partir de v2.1.161, Claude Code adjunta claves `OTEL_RESOURCE_ATTRIBUTES` a etiquetas de puntos de datos de métricas. Establezca en `false` para excluirlas (predeterminado: incluidas). Consulte [Monitoreo](/docs/es/monitoring-usage#multi-team-organization-support) |

380| `OTEL_METRICS_INCLUDE_SESSION_ID` | Establezca en `false` para excluir ID de sesión de atributos de métricas (predeterminado: incluido). Consulte [Monitoreo](/es/monitoring-usage) |380| `OTEL_METRICS_INCLUDE_SESSION_ID` | Establezca en `false` para excluir ID de sesión de atributos de métricas (predeterminado: incluido). Consulte [Monitoreo](/docs/es/monitoring-usage) |

381| `OTEL_METRICS_INCLUDE_VERSION` | Establezca en `true` para incluir la versión de Claude Code en atributos de métricas (predeterminado: excluido). Consulte [Monitoreo](/es/monitoring-usage) |381| `OTEL_METRICS_INCLUDE_VERSION` | Establezca en `true` para incluir la versión de Claude Code en atributos de métricas (predeterminado: excluido). Consulte [Monitoreo](/docs/es/monitoring-usage) |

382| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Anule el presupuesto de caracteres para metadatos de skills mostrados a la [herramienta Skill](/es/skills#control-who-invokes-a-skill). El presupuesto se escala dinámicamente al 1% de la ventana de contexto, con un respaldo de 8,000 caracteres. Nombre heredado mantenido para compatibilidad hacia atrás |382| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Anule el presupuesto de caracteres para metadatos de skills mostrados a la [herramienta Skill](/docs/es/skills#control-who-invokes-a-skill). El presupuesto se escala dinámicamente al 1% de la ventana de contexto, con un respaldo de 8,000 caracteres. Nombre heredado mantenido para compatibilidad hacia atrás |

383| `TASK_MAX_OUTPUT_LENGTH` | Número máximo de caracteres en salida de [subagentes](/es/sub-agents) antes del truncamiento (predeterminado: 32000, máximo: 160000). Cuando se trunca, la salida completa se guarda en disco y la ruta se incluye en la respuesta truncada |383| `TASK_MAX_OUTPUT_LENGTH` | Número máximo de caracteres en salida de [subagentes](/docs/es/sub-agents) antes del truncamiento (predeterminado: 32000, máximo: 160000). Cuando se trunca, la salida completa se guarda en disco y la ruta se incluye en la respuesta truncada |

384| `USE_BUILTIN_RIPGREP` | Establezca en `0` para utilizar `rg` instalado en el sistema en lugar de `rg` incluido con Claude Code |384| `USE_BUILTIN_RIPGREP` | Establezca en `0` para utilizar `rg` instalado en el sistema en lugar de `rg` incluido con Claude Code |

385| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Anule la región para Claude 3.5 Haiku al usar Google Cloud's Agent Platform |385| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Anule la región para Claude 3.5 Haiku al usar Google Cloud's Agent Platform |

386| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Anule la región para Claude 3.5 Sonnet al usar Google Cloud's Agent Platform |386| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Anule la región para Claude 3.5 Sonnet al usar Google Cloud's Agent Platform |


392| `VERTEX_REGION_CLAUDE_4_5_SONNET` | Anule la región para Claude Sonnet 4.5 al usar Google Cloud's Agent Platform |392| `VERTEX_REGION_CLAUDE_4_5_SONNET` | Anule la región para Claude Sonnet 4.5 al usar Google Cloud's Agent Platform |

393| `VERTEX_REGION_CLAUDE_4_6_OPUS` | Anule la región para Claude Opus 4.6 al usar Google Cloud's Agent Platform |393| `VERTEX_REGION_CLAUDE_4_6_OPUS` | Anule la región para Claude Opus 4.6 al usar Google Cloud's Agent Platform |

394| `VERTEX_REGION_CLAUDE_4_6_SONNET` | Anule la región para Claude Sonnet 4.6 al usar Google Cloud's Agent Platform |394| `VERTEX_REGION_CLAUDE_4_6_SONNET` | Anule la región para Claude Sonnet 4.6 al usar Google Cloud's Agent Platform |

395| `VERTEX_REGION_CLAUDE_4_7_OPUS` | {/* min-version: 2.1.111 */}Anule la región para Claude Opus 4.7 al usar Google Cloud's Agent Platform. Agreg ado en v2.1.111 |395| `VERTEX_REGION_CLAUDE_4_7_OPUS` | Anule la región para Claude Opus 4.7 al usar Google Cloud's Agent Platform. Agreg ado en v2.1.111 |

396| `VERTEX_REGION_CLAUDE_4_8_OPUS` | {/* min-version: 2.1.154 */}Anule la región para Claude Opus 4.8 al usar Google Cloud's Agent Platform. Agregado en v2.1.154 |396| `VERTEX_REGION_CLAUDE_4_8_OPUS` | Anule la región para Claude Opus 4.8 al usar Google Cloud's Agent Platform. Agregado en v2.1.154 |

397| `VERTEX_REGION_CLAUDE_5_SONNET` | {/* min-version: 2.1.197 */}Anule la región para Claude Sonnet 5 al usar Google Cloud's Agent Platform. Agregado en v2.1.197 |397| `VERTEX_REGION_CLAUDE_5_SONNET` | Anule la región para Claude Sonnet 5 al usar Google Cloud's Agent Platform. Agregado en v2.1.197 |

398| `VERTEX_REGION_CLAUDE_FABLE_5` | {/* min-version: 2.1.170 */}Anule la región para Claude Fable 5 al usar Google Cloud's Agent Platform. Agregado en v2.1.170 |398| `VERTEX_REGION_CLAUDE_FABLE_5` | Anule la región para Claude Fable 5 al usar Google Cloud's Agent Platform. Agregado en v2.1.170 |

399| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | Anule la región para Claude Haiku 4.5 al usar Google Cloud's Agent Platform |399| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | Anule la región para Claude Haiku 4.5 al usar Google Cloud's Agent Platform |

400 400 

401También se admiten variables estándar de exportador de OpenTelemetry (`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES` y variantes específicas de señal). Consulte [Monitoreo](/es/monitoring-usage) para detalles de configuración.401También se admiten variables estándar de exportador de OpenTelemetry (`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES` y variantes específicas de señal). Consulte [Monitoreo](/docs/es/monitoring-usage) para detalles de configuración.

402 402 

403<h2 id="see-also">403<h2 id="see-also">

404 Véase también404 Véase también

405</h2>405</h2>

406 406 

407* [Configuración](/es/settings): todas las configuraciones de `settings.json`, incluida la clave `env`407* [Configuración](/docs/es/settings): todas las configuraciones de `settings.json`, incluida la clave `env`

408* [Referencia de CLI](/es/cli-reference): banderas de tiempo de lanzamiento408* [Referencia de CLI](/docs/es/cli-reference): banderas de tiempo de lanzamiento

409* [Configuración de red](/es/network-config): configuración de proxy y TLS409* [Configuración de red](/docs/es/network-config): configuración de proxy y TLS

410* [Monitoreo](/es/monitoring-usage): configuración de OpenTelemetry410* [Monitoreo](/docs/es/monitoring-usage): configuración de OpenTelemetry

errors.md +148 −148

Details

6 6 

7> Busque mensajes de error en tiempo de ejecución de Claude Code con lo que significa cada uno y cómo solucionarlo.7> Busque mensajes de error en tiempo de ejecución de Claude Code con lo que significa cada uno y cómo solucionarlo.

8 8 

9Esta página enumera los errores en tiempo de ejecución que Claude Code muestra y cómo recuperarse de cada uno, además de qué verificar cuando las respuestas parecen incorrectas sin un error. Para errores de instalación como `command not found` o fallos de TLS durante la configuración, consulte [Solucionar problemas de instalación e inicio de sesión](/es/troubleshoot-install).9Esta página enumera los errores en tiempo de ejecución que Claude Code muestra y cómo recuperarse de cada uno, además de qué verificar cuando las respuestas parecen incorrectas sin un error. Para errores de instalación como `command not found` o fallos de TLS durante la configuración, consulte [Solucionar problemas de instalación e inicio de sesión](/docs/es/troubleshoot-install).

10 10 

11Estos errores y comandos de recuperación se aplican en la CLI, la [aplicación de escritorio](/es/desktop) y [Claude Code en la web](/es/claude-code-on-the-web), ya que los tres envuelven la misma CLI de Claude Code. Para problemas específicos de la superficie, consulte la sección de solución de problemas en la página de esa superficie.11Estos errores y comandos de recuperación se aplican en la CLI, la [aplicación de escritorio](/docs/es/desktop) y [Claude Code en la web](/docs/es/claude-code-on-the-web), ya que los tres envuelven la misma CLI de Claude Code. Para problemas específicos de la superficie, consulte la sección de solución de problemas en la página de esa superficie.

12 12 

13<Note>13<Note>

14 Claude Code llama a la API de Claude para obtener respuestas del modelo, por lo que la mayoría de los errores en tiempo de ejecución se asignan a un código de error de API subyacente. Esta página cubre lo que significa cada error dentro de Claude Code y cómo recuperarse. Para las definiciones de código de estado HTTP sin procesar, consulte la [referencia de errores de la plataforma Claude](https://platform.claude.com/docs/en/api/errors).14 Claude Code llama a la API de Claude para obtener respuestas del modelo, por lo que la mayoría de los errores en tiempo de ejecución se asignan a un código de error de API subyacente. Esta página cubre lo que significa cada error dentro de Claude Code y cómo recuperarse. Para las definiciones de código de estado HTTP sin procesar, consulte la [referencia de errores de la plataforma Claude](https://platform.claude.com/docs/en/api/errors).


97 Reintentos automáticos97 Reintentos automáticos

98</h2>98</h2>

99 99 

100Claude Code reintenta fallos transitorios antes de mostrarle un error. Los errores del servidor, respuestas sobrecargadas, tiempos de espera de solicitud, aceleraciones 429 temporales y conexiones perdidas se reintentan hasta 10 veces con retroceso exponencial. {/* min-version: 2.1.198 */}A partir de v2.1.198, esto cubre conexiones que se cierran en medio de una respuesta antes de que se haya transmitido ninguna salida visible: Claude Code reemite la solicitud con el mismo retroceso y el turno continúa en lugar de detenerse con un error de conexión. {/* min-version: 2.1.199 */}A partir de v2.1.199, las aceleraciones 429 temporales que no llevan los encabezados de cuota de su plan también se reintentan cuando ha iniciado sesión con una suscripción de claude.ai; las versiones anteriores las reintentaban solo para autenticaciones de clave de API y Enterprise.100Claude Code reintenta fallos transitorios antes de mostrarle un error. Los errores del servidor, respuestas sobrecargadas, tiempos de espera de solicitud, aceleraciones 429 temporales y conexiones perdidas se reintentan hasta 10 veces con retroceso exponencial. A partir de v2.1.198, esto cubre conexiones que se cierran en medio de una respuesta antes de que se haya transmitido ninguna salida visible: Claude Code reemite la solicitud con el mismo retroceso y el turno continúa en lugar de detenerse con un error de conexión. A partir de v2.1.199, las aceleraciones 429 temporales que no llevan los encabezados de cuota de su plan también se reintentan cuando ha iniciado sesión con una suscripción de claude.ai; las versiones anteriores las reintentaban solo para autenticaciones de clave de API y Enterprise.

101 101 

102Algunas clases de fallo no se reintentan, porque un reintento no puede tener éxito:102Algunas clases de fallo no se reintentan, porque un reintento no puede tener éxito:

103 103 

104* {/* min-version: 2.1.199 */}A partir de v2.1.199, una falla de validación de certificado TLS, como un proxy que inspecciona TLS, un paquete `NODE_EXTRA_CA_CERTS` faltante, o un certificado expirado, falla en el primer intento para que la corrección aparezca inmediatamente en lugar de después del presupuesto de reintento completo. Consulte [Errores de certificado SSL](#ssl-certificate-errors). Las condiciones TLS transitorias como un tiempo de espera de protocolo de enlace aún se reintentan.104* A partir de v2.1.199, una falla de validación de certificado TLS, como un proxy que inspecciona TLS, un paquete `NODE_EXTRA_CA_CERTS` faltante, o un certificado expirado, falla en el primer intento para que la corrección aparezca inmediatamente en lugar de después del presupuesto de reintento completo. Consulte [Errores de certificado SSL](#ssl-certificate-errors). Las condiciones TLS transitorias como un tiempo de espera de protocolo de enlace aún se reintentan.

105* {/* min-version: 2.1.199 */}A partir de v2.1.199, un error del servidor que llega después de que Claude ya ha transmitido salida visible mantiene la respuesta parcial y agrega un [aviso de respuesta incompleta](#the-response-above-may-be-incomplete) en lugar de reintentar, ya que volver a ejecutar la solicitud podría ejecutar las mismas herramientas dos veces. Las versiones anteriores descartaban la salida parcial e informaban el turno como un error.105* A partir de v2.1.199, un error del servidor que llega después de que Claude ya ha transmitido salida visible mantiene la respuesta parcial y agrega un [aviso de respuesta incompleta](#the-response-above-may-be-incomplete) en lugar de reintentar, ya que volver a ejecutar la solicitud podría ejecutar las mismas herramientas dos veces. Las versiones anteriores descartaban la salida parcial e informaban el turno como un error.

106* {/* min-version: 2.1.208 */}Una [respuesta de streaming de Amazon Bedrock con un tipo de contenido inesperado](#bedrock-streaming-response-has-an-unexpected-content-type) falla en el primer intento, porque la puerta de enlace o proxy que reescribe la respuesta reescribiría el reintento de la misma manera. Requiere Claude Code v2.1.208 o posterior.106* Una [respuesta de streaming de Amazon Bedrock con un tipo de contenido inesperado](#bedrock-streaming-response-has-an-unexpected-content-type) falla en el primer intento, porque la puerta de enlace o proxy que reescribe la respuesta reescribiría el reintento de la misma manera. Requiere Claude Code v2.1.208 o posterior.

107 107 

108Mientras se reintenta, el spinner muestra una cuenta regresiva de `Retrying in Ns · attempt x/y` después de una etiqueta de error. La etiqueta nombra la razón específica del primer intento para fallos en los que puede actuar de inmediato: la red está caída, un protocolo de enlace TLS falló, o alcanzó un límite de velocidad. Para otros errores, dice `API error` al principio. {/* min-version: 2.1.198 */}A partir de v2.1.198, cambia a la razón específica del tercer intento, o en el intento final cuando `CLAUDE_CODE_MAX_RETRIES` permite menos de tres; las versiones anteriores cambian solo en el intento final.108Mientras se reintenta, el spinner muestra una cuenta regresiva de `Retrying in Ns · attempt x/y` después de una etiqueta de error. La etiqueta nombra la razón específica del primer intento para fallos en los que puede actuar de inmediato: la red está caída, un protocolo de enlace TLS falló, o alcanzó un límite de velocidad. Para otros errores, dice `API error` al principio. A partir de v2.1.198, cambia a la razón específica del tercer intento, o en el intento final cuando `CLAUDE_CODE_MAX_RETRIES` permite menos de tres; las versiones anteriores cambian solo en el intento final.

109 109 

110{/* min-version: 2.1.198 */}A partir de v2.1.198, el consejo del spinner habitual se suprime durante los reintentos. Una vez que se revela la razón del error, si el fallo es una sobrecarga 529, la línea debajo de la cuenta regresiva también nombra dónde verificar el estado del servicio: `status.claude.com` en la API de Anthropic, o el host del proveedor o puerta de enlace nombrado en el mensaje en otras configuraciones.110A partir de v2.1.198, el consejo del spinner habitual se suprime durante los reintentos. Una vez que se revela la razón del error, si el fallo es una sobrecarga 529, la línea debajo de la cuenta regresiva también nombra dónde verificar el estado del servicio: `status.claude.com` en la API de Anthropic, o el host del proveedor o puerta de enlace nombrado en el mensaje en otras configuraciones.

111 111 

112{/* min-version: 2.1.185 */}Si no llegan datos en el flujo de respuesta durante 20 segundos mientras una solicitud aún está pendiente, el spinner muestra `Waiting for API response · will retry in … · check your network` antes de que comience cualquier reintento. La solicitud aún no ha fallado: la cuenta regresiva se ejecuta hasta el punto en que Claude Code interrumpe la conexión estancada y reintenta, por lo que el banner se borra por sí solo una vez que se reanuden los datos o el reintento tenga éxito. A partir de v2.1.185, el umbral es de 20 segundos; las versiones anteriores muestran el banner después de 10 segundos con una redacción diferente. Si reaparece en cada intento, trátelo como un [problema de red](#unable-to-connect-to-api).112Si no llegan datos en el flujo de respuesta durante 20 segundos mientras una solicitud aún está pendiente, el spinner muestra `Waiting for API response · will retry in … · check your network` antes de que comience cualquier reintento. La solicitud aún no ha fallado: la cuenta regresiva se ejecuta hasta el punto en que Claude Code interrumpe la conexión estancada y reintenta, por lo que el banner se borra por sí solo una vez que se reanuden los datos o el reintento tenga éxito. A partir de v2.1.185, el umbral es de 20 segundos; las versiones anteriores muestran el banner después de 10 segundos con una redacción diferente. Si reaparece en cada intento, trátelo como un [problema de red](#unable-to-connect-to-api).

113 113 

114Cuando ve uno de los errores en esta página, esos reintentos ya se han agotado, a menos que pertenezca a una clase que no se reintenta, como una falla de validación de certificado. Puede ajustar el comportamiento con estas variables de entorno:114Cuando ve uno de los errores en esta página, esos reintentos ya se han agotado, a menos que pertenezca a una clase que no se reintenta, como una falla de validación de certificado. Puede ajustar el comportamiento con estas variables de entorno:

115 115 

116| Variable | Predeterminado | Efecto |116| Variable | Predeterminado | Efecto |

117| :------------------------------------------- | :------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |117| :------------------------------------------- | :------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

118| [`CLAUDE_CODE_MAX_RETRIES`](/es/env-vars) | 10 | Número de intentos de reintento. {/* min-version: 2.1.186 */}Limitado a 15 a partir de v2.1.186; {/* min-version: 2.1.199 */}a partir de v2.1.199 `CLAUDE_CODE_RETRY_WATCHDOG` aumenta el valor predeterminado y elimina el límite. Redúzcalo para que los fallos aparezcan más rápido en scripts. |118| [`CLAUDE_CODE_MAX_RETRIES`](/docs/es/env-vars) | 10 | Número de intentos de reintento. Limitado a 15 a partir de v2.1.186; a partir de v2.1.199 `CLAUDE_CODE_RETRY_WATCHDOG` aumenta el valor predeterminado y elimina el límite. Redúzcalo para que los fallos aparezcan más rápido en scripts. |

119| [`CLAUDE_CODE_RETRY_WATCHDOG`](/es/env-vars) | sin establecer | Establézcalo en `1` en sesiones desatendidas como trabajos de CI para reintentar errores de capacidad `429` y `529` indefinidamente en lugar de fallar después de `CLAUDE_CODE_MAX_RETRIES` intentos. {/* min-version: 2.1.199 */}A partir de v2.1.199, también aumenta el recuento de reintento predeterminado para otros errores transitorios, como errores del servidor, tiempos de espera y conexiones perdidas, a 300, aproximadamente tres horas de retroceso, y elimina el límite de 15 en `CLAUDE_CODE_MAX_RETRIES` si establece esa variable explícitamente. |119| [`CLAUDE_CODE_RETRY_WATCHDOG`](/docs/es/env-vars) | sin establecer | Establézcalo en `1` en sesiones desatendidas como trabajos de CI para reintentar errores de capacidad `429` y `529` indefinidamente en lugar de fallar después de `CLAUDE_CODE_MAX_RETRIES` intentos. A partir de v2.1.199, también aumenta el recuento de reintento predeterminado para otros errores transitorios, como errores del servidor, tiempos de espera y conexiones perdidas, a 300, aproximadamente tres horas de retroceso, y elimina el límite de 15 en `CLAUDE_CODE_MAX_RETRIES` si establece esa variable explícitamente. |

120| [`API_TIMEOUT_MS`](/es/env-vars) | 600000 | Tiempo de espera por solicitud en milisegundos. Auméntelo para redes lentas o proxies. |120| [`API_TIMEOUT_MS`](/docs/es/env-vars) | 600000 | Tiempo de espera por solicitud en milisegundos. Auméntelo para redes lentas o proxies. |

121 121 

122<h2 id="server-errors">122<h2 id="server-errors">

123 Errores del servidor123 Errores del servidor


196API Error: Response stalled mid-stream. The response above may be incomplete.196API Error: Response stalled mid-stream. The response above may be incomplete.

197```197```

198 198 

199* {/* min-version: 2.1.199 */}`Server error mid-response`: un error de servidor 5xx o sobrecargado a mitad de la transmisión. Esta variante requiere Claude Code v2.1.199 o posterior; antes de eso, ese caso descartaba la salida parcial e informaba todo el turno como un error.199* `Server error mid-response`: un error de servidor 5xx o sobrecargado a mitad de la transmisión. Esta variante requiere Claude Code v2.1.199 o posterior; antes de eso, ese caso descartaba la salida parcial e informaba todo el turno como un error.

200* `Connection closed mid-response`: la conexión se interrumpió.200* `Connection closed mid-response`: la conexión se interrumpió.

201* `Response stalled mid-stream`: la transmisión dejó de enviar datos.201* `Response stalled mid-stream`: la transmisión dejó de enviar datos.

202 202 


210 El modo automático no puede determinar la seguridad de una acción210 El modo automático no puede determinar la seguridad de una acción

211</h3>211</h3>

212 212 

213El modelo que [el modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode) utiliza para clasificar acciones no pudo producir una decisión, por lo que el modo automático no aprobó la acción automáticamente. El mensaje que ve depende de por qué falló el clasificador.213El modelo que [el modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode) utiliza para clasificar acciones no pudo producir una decisión, por lo que el modo automático no aprobó la acción automáticamente. El mensaje que ve depende de por qué falló el clasificador.

214 214 

215Las lecturas, búsquedas y ediciones dentro de su directorio de trabajo omiten el clasificador, por lo que continúan funcionando en todos estos casos.215Las lecturas, búsquedas y ediciones dentro de su directorio de trabajo omiten el clasificador, por lo que continúan funcionando en todos estos casos.

216 216 


224 224 

225* Reintente después de unos segundos; Claude ve el mismo mensaje y generalmente reintenta por su cuenta225* Reintente después de unos segundos; Claude ve el mismo mensaje y generalmente reintenta por su cuenta

226* Si los reintentos continúan fallando, continúe con tareas de solo lectura y vuelva a la acción bloqueada más tarde226* Si los reintentos continúan fallando, continúe con tareas de solo lectura y vuelva a la acción bloqueada más tarde

227* Esto es transitorio e independiente de la [elegibilidad del modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode); no necesita cambiar la configuración227* Esto es transitorio e independiente de la [elegibilidad del modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode); no necesita cambiar la configuración

228 228 

229Cuando el clasificador devolvió una respuesta no analizable:229Cuando el clasificador devolvió una respuesta no analizable:

230 230 


247 247 

248* Esta no es una decisión sobre su acción. El contenido ya en su conversación activó un filtro de seguridad en la API cuando el modo automático envió la conversación al clasificador248* Esta no es una decisión sobre su acción. El contenido ya en su conversación activó un filtro de seguridad en la API cuando el modo automático envió la conversación al clasificador

249* Reintentar no ayudará; el mismo contenido de conversación activará el filtro nuevamente249* Reintentar no ayudará; el mismo contenido de conversación activará el filtro nuevamente

250* Cambie a un [modo de permiso](/es/permission-modes) diferente para que pueda aprobar la acción cuando se le solicite, o inicie una conversación nueva sin el contenido que activa el filtro250* Cambie a un [modo de permiso](/docs/es/permission-modes) diferente para que pueda aprobar la acción cuando se le solicite, o inicie una conversación nueva sin el contenido que activa el filtro

251 251 

252Cuando la conversación ha crecido más que la ventana de contexto del clasificador:252Cuando la conversación ha crecido más que la ventana de contexto del clasificador:

253 253 


255Auto mode classifier transcript exceeded context window — falling back to manual approval (try /compact to reduce conversation size)255Auto mode classifier transcript exceeded context window — falling back to manual approval (try /compact to reduce conversation size)

256```256```

257 257 

258En una sesión interactiva, el modo automático vuelve a un aviso de permiso normal para esa acción para que pueda aprobar o denegar manualmente. En [modo no interactivo](/es/headless) la ejecución se cancela porque la transcripción solo crece y reintentar no puede tener éxito.258En una sesión interactiva, el modo automático vuelve a un aviso de permiso normal para esa acción para que pueda aprobar o denegar manualmente. En [modo no interactivo](/docs/es/headless) la ejecución se cancela porque la transcripción solo crece y reintentar no puede tener éxito.

259 259 

260**Qué hacer:**260**Qué hacer:**

261 261 


266 Agente terminado anticipadamente debido a un error de API266 Agente terminado anticipadamente debido a un error de API

267</h3>267</h3>

268 268 

269{/* min-version: 2.1.199 */}La solicitud de API de un [subagente](/es/sub-agents) falló terminalmente, por ejemplo porque se alcanzó un límite de uso o los reintentos de un error del servidor se agotaron, por lo que el subagente se detuvo antes de terminar su tarea. Este mensaje requiere Claude Code v2.1.199 o posterior; antes de eso, el texto de error de la API se devolvía a Claude como si fuera el resultado del subagente.269La solicitud de API de un [subagente](/docs/es/sub-agents) falló terminalmente, por ejemplo porque se alcanzó un límite de uso o los reintentos de un error del servidor se agotaron, por lo que el subagente se detuvo antes de terminar su tarea. Este mensaje requiere Claude Code v2.1.199 o posterior; antes de eso, el texto de error de la API se devolvía a Claude como si fuera el resultado del subagente.

270 270 

271```text theme={null}271```text theme={null}

272Agent terminated early due to an API error: <error detail>272Agent terminated early due to an API error: <error detail>


275**Qué hacer:**275**Qué hacer:**

276 276 

277* Haga coincidir el detalle del error después de los dos puntos con su propia sección en esta página, como [Límites de uso](#usage-limits) o [Errores del servidor](#server-errors), y siga los pasos de esa sección277* Haga coincidir el detalle del error después de los dos puntos con su propia sección en esta página, como [Límites de uso](#usage-limits) o [Errores del servidor](#server-errors), y siga los pasos de esa sección

278* Una vez que el error subyacente se resuelva, pida a Claude que reintente la tarea o [reanude el subagente](/es/sub-agents#resume-subagents)278* Una vez que el error subyacente se resuelva, pida a Claude que reintente la tarea o [reanude el subagente](/docs/es/sub-agents#resume-subagents)

279 279 

280Cuando un límite de velocidad, sobrecarga o error del servidor interrumpe un subagente en primer plano que ya produjo salida de texto, Claude recibe esa salida parcial marcada como incompleta en lugar de este error. {/* min-version: 2.1.200 */}Un subagente cuya única salida fueron llamadas de herramienta también obtiene este error; en v2.1.199 eso devolvía un resultado parcial vacío en su lugar. Consulte [Errores de API en subagentes](/es/sub-agents#api-errors-in-subagents).280Cuando un límite de velocidad, sobrecarga o error del servidor interrumpe un subagente en primer plano que ya produjo salida de texto, Claude recibe esa salida parcial marcada como incompleta en lugar de este error. Un subagente cuya única salida fueron llamadas de herramienta también obtiene este error; en v2.1.199 eso devolvía un resultado parcial vacío en su lugar. Consulte [Errores de API en subagentes](/docs/es/sub-agents#api-errors-in-subagents).

281 281 

282<h2 id="usage-limits">282<h2 id="usage-limits">

283 Límites de uso283 Límites de uso


309* Ejecute `/usage-credits` para comprar uso adicional en Pro y Max, o para solicitarlo a su administrador en Team y Enterprise. Consulte [usage credits for paid plans](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) para obtener información sobre cómo se factura esto.309* Ejecute `/usage-credits` para comprar uso adicional en Pro y Max, o para solicitarlo a su administrador en Team y Enterprise. Consulte [usage credits for paid plans](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) para obtener información sobre cómo se factura esto.

310* Para actualizar su plan a límites base más altos, consulte [claude.com/pricing](https://claude.com/pricing)310* Para actualizar su plan a límites base más altos, consulte [claude.com/pricing](https://claude.com/pricing)

311 311 

312Para monitorear su asignación restante antes de alcanzar el límite, agregue los campos `rate_limits` a una [línea de estado personalizada](/es/statusline#rate-limit-usage), o en la aplicación de escritorio haga clic en el [anillo de uso](/es/desktop#check-usage) junto al selector de modelo.312Para monitorear su asignación restante antes de alcanzar el límite, agregue los campos `rate_limits` a una [línea de estado personalizada](/docs/es/statusline#rate-limit-usage), o en la aplicación de escritorio haga clic en el [anillo de uso](/docs/es/desktop#check-usage) junto al selector de modelo.

313 313 

314<h3 id="usage-credits-required-for-1m-context">314<h3 id="usage-credits-required-for-1m-context">

315 Se requieren créditos de uso para contexto de 1M315 Se requieren créditos de uso para contexto de 1M


321API Error: Usage credits required for 1M context · run /usage-credits to turn them on, or /model to switch to standard context321API Error: Usage credits required for 1M context · run /usage-credits to turn them on, or /model to switch to standard context

322```322```

323 323 

324Esta es una verificación de derechos, no un agotamiento de cuota. Se activa incluso cuando sus asignaciones de sesión y semanales tienen capacidad restante. Consulte [Extended context](/es/model-config#extended-context) para ver qué planes incluyen contexto de 1M directamente y cuáles requieren créditos de uso.324Esta es una verificación de derechos, no un agotamiento de cuota. Se activa incluso cuando sus asignaciones de sesión y semanales tienen capacidad restante. Consulte [Extended context](/docs/es/model-config#extended-context) para ver qué planes incluyen contexto de 1M directamente y cuáles requieren créditos de uso.

325 325 

326{/* min-version: 2.1.172 */}Cuando este error aparece a mitad de la conversación porque el contexto creció más allá de 200K tokens, Claude Code compacta automáticamente la conversación por debajo del límite de contexto estándar y mantiene la sesión en ese límite después, por lo que no se requiere ninguna acción. En versiones anteriores a v2.1.172, el error se repetía en cada solicitud posterior incluyendo `/compact`; ejecute `/clear` en esas versiones para recuperarse. Los pasos a continuación se aplican cuando seleccionó explícitamente un modelo `[1m]`.326Cuando este error aparece a mitad de la conversación porque el contexto creció más allá de 200K tokens, Claude Code compacta automáticamente la conversación por debajo del límite de contexto estándar y mantiene la sesión en ese límite después, por lo que no se requiere ninguna acción. En versiones anteriores a v2.1.172, el error se repetía en cada solicitud posterior incluyendo `/compact`; ejecute `/clear` en esas versiones para recuperarse. Los pasos a continuación se aplican cuando seleccionó explícitamente un modelo `[1m]`.

327 327 

328**Qué hacer:**328**Qué hacer:**

329 329 

330* Ejecute `/model` y seleccione la variante sin el sufijo `[1m]` para volver a la ventana de contexto estándar330* Ejecute `/model` y seleccione la variante sin el sufijo `[1m]` para volver a la ventana de contexto estándar

331* Ejecute `/usage-credits` para activar la facturación medida para la variante de 1M en Pro y Max, o para solicitarla a su administrador en Team y Enterprise331* Ejecute `/usage-credits` para activar la facturación medida para la variante de 1M en Pro y Max, o para solicitarla a su administrador en Team y Enterprise

332* Si el error persiste después de `/model`, es posible que una ID de modelo de 1M esté configurada en otro lugar. Consulte [There's an issue with the selected model](#theres-an-issue-with-the-selected-model) para ver las ubicaciones de configuración a verificar en orden de prioridad.332* Si el error persiste después de `/model`, es posible que una ID de modelo de 1M esté configurada en otro lugar. Consulte [There's an issue with the selected model](#theres-an-issue-with-the-selected-model) para ver las ubicaciones de configuración a verificar en orden de prioridad.

333* Para eliminar variantes de 1M del selector de modelo por completo, configure [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](/es/env-vars)333* Para eliminar variantes de 1M del selector de modelo por completo, configure [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](/docs/es/env-vars)

334 334 

335<h3 id="server-is-temporarily-limiting-requests">335<h3 id="server-is-temporarily-limiting-requests">

336 El servidor está limitando temporalmente las solicitudes336 El servidor está limitando temporalmente las solicitudes


342API Error: Server is temporarily limiting requests (not your usage limit)342API Error: Server is temporarily limiting requests (not your usage limit)

343```343```

344 344 

345Claude Code distingue estos de su límite de plan por la ausencia de los encabezados de cuota unificada que lleva una respuesta de límite real. {/* min-version: 2.1.199 */}A partir de v2.1.199, esto se [reintenta automáticamente](#automatic-retries) con retroceso antes de mostrarse, independientemente de cómo se autentique. En versiones anteriores, una sesión iniciada con una suscripción de claude.ai falló el turno en la primera ocurrencia; solo las claves API y los inicios de sesión de Enterprise lo reintentaron.345Claude Code distingue estos de su límite de plan por la ausencia de los encabezados de cuota unificada que lleva una respuesta de límite real. A partir de v2.1.199, esto se [reintenta automáticamente](#automatic-retries) con retroceso antes de mostrarse, independientemente de cómo se autentique. En versiones anteriores, una sesión iniciada con una suscripción de claude.ai falló el turno en la primera ocurrencia; solo las claves API y los inicios de sesión de Enterprise lo reintentaron.

346 346 

347**Qué hacer:**347**Qué hacer:**

348 348 


366* Ejecute `/status` y confirme que la credencial activa es la que espera. Una `ANTHROPIC_API_KEY` extraviada en su entorno puede enrutar solicitudes a través de una clave de nivel bajo en lugar de su suscripción.366* Ejecute `/status` y confirme que la credencial activa es la que espera. Una `ANTHROPIC_API_KEY` extraviada en su entorno puede enrutar solicitudes a través de una clave de nivel bajo en lugar de su suscripción.

367* Consulte la consola de su proveedor para ver los límites activos y solicite un nivel más alto si es necesario367* Consulte la consola de su proveedor para ver los límites activos y solicite un nivel más alto si es necesario

368* Para claves API de Anthropic, consulte la [referencia de límites de velocidad](https://platform.claude.com/docs/en/api/rate-limits) para ver cómo funcionan los niveles y cómo establecer límites por espacio de trabajo368* Para claves API de Anthropic, consulte la [referencia de límites de velocidad](https://platform.claude.com/docs/en/api/rate-limits) para ver cómo funcionan los niveles y cómo establecer límites por espacio de trabajo

369* Reduzca la concurrencia: reduzca [`CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY`](/es/env-vars), evite ejecutar muchos subagentos paralelos, o cambie a un modelo más pequeño con `/model` para ejecuciones de alto volumen con scripts369* Reduzca la concurrencia: reduzca [`CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY`](/docs/es/env-vars), evite ejecutar muchos subagentos paralelos, o cambie a un modelo más pequeño con `/model` para ejecuciones de alto volumen con scripts

370 370 

371<h3 id="credit-balance-is-too-low">371<h3 id="credit-balance-is-too-low">

372 El saldo de crédito es demasiado bajo372 El saldo de crédito es demasiado bajo


382 382 

383* Agregue créditos en [platform.claude.com/settings/billing](https://platform.claude.com/settings/billing), y considere habilitar la recarga automática allí para que el saldo se reabastezca antes de llegar a cero383* Agregue créditos en [platform.claude.com/settings/billing](https://platform.claude.com/settings/billing), y considere habilitar la recarga automática allí para que el saldo se reabastezca antes de llegar a cero

384* Cambie a autenticación de suscripción con `/login` si tiene un plan Pro, Max, Team o Enterprise384* Cambie a autenticación de suscripción con `/login` si tiene un plan Pro, Max, Team o Enterprise

385* Establezca límites de gasto por espacio de trabajo en la Console para evitar que un único proyecto agote el saldo de la organización. Consulte [Manage costs effectively](/es/costs).385* Establezca límites de gasto por espacio de trabajo en la Console para evitar que un único proyecto agote el saldo de la organización. Consulte [Manage costs effectively](/docs/es/costs).

386 386 

387<h2 id="authentication-errors">387<h2 id="authentication-errors">

388 Errores de autenticación388 Errores de autenticación


404 404 

405* Ejecute `/login` para autenticarse con su suscripción de Claude o cuenta de Console405* Ejecute `/login` para autenticarse con su suscripción de Claude o cuenta de Console

406* Si esperaba que una variable de entorno lo autenticara, confirme que `ANTHROPIC_API_KEY` esté configurada y exportada en el shell donde lanzó `claude`406* Si esperaba que una variable de entorno lo autenticara, confirme que `ANTHROPIC_API_KEY` esté configurada y exportada en el shell donde lanzó `claude`

407* Para CI o automatización donde el inicio de sesión interactivo no es posible, configure un script [`apiKeyHelper`](/es/settings#available-settings) que obtenga una clave al iniciar407* Para CI o automatización donde el inicio de sesión interactivo no es posible, configure un script [`apiKeyHelper`](/docs/es/settings#available-settings) que obtenga una clave al iniciar

408* Consulte [Precedencia de autenticación](/es/authentication#authentication-precedence) para entender qué credencial usa Claude Code cuando hay varias presentes408* Consulte [Precedencia de autenticación](/docs/es/authentication#authentication-precedence) para entender qué credencial usa Claude Code cuando hay varias presentes

409 409 

410Si se le solicita que inicie sesión repetidamente, consulte [No ha iniciado sesión o token expirado](/es/troubleshoot-install#not-logged-in-or-token-expired) para obtener correcciones del reloj del sistema y Keychain de macOS.410Si se le solicita que inicie sesión repetidamente, consulte [No ha iniciado sesión o token expirado](/docs/es/troubleshoot-install#not-logged-in-or-token-expired) para obtener correcciones del reloj del sistema y Keychain de macOS.

411 411 

412<h3 id="could-not-resolve-authentication-method">412<h3 id="could-not-resolve-authentication-method">

413 No se pudo resolver el método de autenticación413 No se pudo resolver el método de autenticación

414</h3>414</h3>

415 415 

416La sesión llegó al cliente de API sin ninguna credencial. Esto aparece en [sesiones en segundo plano](/es/agent-view), sesiones en la nube y contextos del SDK de Agent donde la verificación de inicio de sesión interactivo no se ejecuta antes de la primera solicitud.416La sesión llegó al cliente de API sin ninguna credencial. Esto aparece en [sesiones en segundo plano](/docs/es/agent-view), sesiones en la nube y contextos del SDK de Agent donde la verificación de inicio de sesión interactivo no se ejecuta antes de la primera solicitud.

417 417 

418```text theme={null}418```text theme={null}

419Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted419Could not resolve authentication method. Expected one of apiKey, authToken, credentials, config, or profile to be set. Or for one of the "X-Api-Key" or "Authorization" headers to be explicitly omitted

420```420```

421 421 

422{/* min-version: 2.1.174 */}Antes de v2.1.174, una sesión en segundo plano o en la nube asignada a un worker pre-inicializado inactivo podría fallar de esta manera incluso cuando las credenciales válidas estaban configuradas. Actualice para recuperarse. En las versiones actuales, el error significa que no había credencial disponible para el proceso del worker.422Antes de v2.1.174, una sesión en segundo plano o en la nube asignada a un worker pre-inicializado inactivo podría fallar de esta manera incluso cuando las credenciales válidas estaban configuradas. Actualice para recuperarse. En las versiones actuales, el error significa que no había credencial disponible para el proceso del worker.

423 423 

424**Qué hacer:**424**Qué hacer:**

425 425 

426* Actualice a v2.1.174 o posterior si esto aparece en una sesión en segundo plano o en la nube y sus credenciales ya están configuradas426* Actualice a v2.1.174 o posterior si esto aparece en una sesión en segundo plano o en la nube y sus credenciales ya están configuradas

427* Confirme que `ANTHROPIC_API_KEY`, `CLAUDE_CODE_OAUTH_TOKEN` o sus credenciales del proveedor de nube estén configuradas en el entorno que lanza el worker, no solo en su shell interactivo427* Confirme que `ANTHROPIC_API_KEY`, `CLAUDE_CODE_OAUTH_TOKEN` o sus credenciales del proveedor de nube estén configuradas en el entorno que lanza el worker, no solo en su shell interactivo

428* Para el SDK de Agent, consulte [configuración de autenticación](/es/agent-sdk/overview#get-started)428* Para el SDK de Agent, consulte [configuración de autenticación](/docs/es/agent-sdk/overview#get-started)

429* Ejecute `/status` en una sesión interactiva en el mismo entorno para confirmar qué fuente de credencial se resuelve429* Ejecute `/status` en una sesión interactiva en el mismo entorno para confirmar qué fuente de credencial se resuelve

430 430 

431<h3 id="invalid-api-key">431<h3 id="invalid-api-key">


443* Verifique si hay errores tipográficos y confirme que la clave no haya sido revocada en la [Console](https://platform.claude.com/settings/keys)443* Verifique si hay errores tipográficos y confirme que la clave no haya sido revocada en la [Console](https://platform.claude.com/settings/keys)

444* Ejecute `env | grep ANTHROPIC` en el mismo shell. Herramientas como direnv, complementos de shell dotenv e IDE terminals pueden cargar una clave obsoleta de un archivo `.env` en su proyecto sin que la configure explícitamente.444* Ejecute `env | grep ANTHROPIC` en el mismo shell. Herramientas como direnv, complementos de shell dotenv e IDE terminals pueden cargar una clave obsoleta de un archivo `.env` en su proyecto sin que la configure explícitamente.

445* Desactive `ANTHROPIC_API_KEY` y ejecute `/login` para usar autenticación de suscripción en su lugar445* Desactive `ANTHROPIC_API_KEY` y ejecute `/login` para usar autenticación de suscripción en su lugar

446* Si la clave proviene de un script [`apiKeyHelper`](/es/settings#available-settings), ejecute el script directamente para confirmar que imprime una clave válida en stdout446* Si la clave proviene de un script [`apiKeyHelper`](/docs/es/settings#available-settings), ejecute el script directamente para confirmar que imprime una clave válida en stdout

447* Ejecute `/status` para confirmar qué fuente de credencial está usando realmente Claude Code447* Ejecute `/status` para confirmar qué fuente de credencial está usando realmente Claude Code

448 448 

449<h3 id="your-apikeyhelper-script-is-failing">449<h3 id="your-apikeyhelper-script-is-failing">

450 Su script apiKeyHelper está fallando450 Su script apiKeyHelper está fallando

451</h3>451</h3>

452 452 

453El comando configurado en la configuración [`apiKeyHelper`](/es/settings#available-settings) salió con un error, agotó el tiempo de espera o no imprimió nada en stdout. Sin una clave del script, la solicitud llega a la API con una credencial de marcador de posición, y la API la rechaza con `401`.453El comando configurado en la configuración [`apiKeyHelper`](/docs/es/settings#available-settings) salió con un error, agotó el tiempo de espera o no imprimió nada en stdout. Sin una clave del script, la solicitud llega a la API con una credencial de marcador de posición, y la API la rechaza con `401`.

454 454 

455```text theme={null}455```text theme={null}

456Your apiKeyHelper script is failing · This usually means you need to re-authenticate with your provider · Run /status to see the script's error output456Your apiKeyHelper script is failing · This usually means you need to re-authenticate with your provider · Run /status to see the script's error output

457```457```

458 458 

459Claude Code vuelve a ejecutar el script y reintenta la solicitud hasta dos veces más antes de mostrar este mensaje, por lo que el fallo aparece dentro de tres intentos. {/* min-version: 2.1.208 */}Antes de v2.1.208, Claude Code gastaba el [presupuesto de reintentos](#automatic-retries) completo reenviando la solicitud con la credencial de marcador de posición y luego reportaba un error de autenticación `401` genérico en lugar del fallo del script.459Claude Code vuelve a ejecutar el script y reintenta la solicitud hasta dos veces más antes de mostrar este mensaje, por lo que el fallo aparece dentro de tres intentos. Antes de v2.1.208, Claude Code gastaba el [presupuesto de reintentos](#automatic-retries) completo reenviando la solicitud con la credencial de marcador de posición y luego reportaba un error de autenticación `401` genérico en lugar del fallo del script.

460 460 

461Ejecutar `/login` no ayuda aquí: la salida del helper [tiene precedencia](/es/authentication#authentication-precedence) sobre un inicio de sesión guardado mientras la configuración esté presente.461Ejecutar `/login` no ayuda aquí: la salida del helper [tiene precedencia](/docs/es/authentication#authentication-precedence) sobre un inicio de sesión guardado mientras la configuración esté presente.

462 462 

463**Qué hacer:**463**Qué hacer:**

464 464 

465* Ejecute el comando configurado en `apiKeyHelper` directamente en su shell para reproducir el fallo465* Ejecute el comando configurado en `apiKeyHelper` directamente en su shell para reproducir el fallo

466* Si el comando reporta una sesión expirada, vuelva a autenticarse con su proveedor de credenciales, por ejemplo iniciando sesión nuevamente en su SSO o bóveda de secretos466* Si el comando reporta una sesión expirada, vuelva a autenticarse con su proveedor de credenciales, por ejemplo iniciando sesión nuevamente en su SSO o bóveda de secretos

467* Corrija el comando para que imprima la clave en stdout y salga con código 0. Consulte [rotar credenciales con apiKeyHelper](/es/llm-gateway-connect#rotate-credentials-with-apikeyhelper) para una configuración funcional.467* Corrija el comando para que imprima la clave en stdout y salga con código 0. Consulte [rotar credenciales con apiKeyHelper](/docs/es/llm-gateway-connect#rotate-credentials-with-apikeyhelper) para una configuración funcional.

468* Ejecute `/status` para confirmar que `apiKeyHelper` es la fuente de credencial activa. Cada vez que el comando falla, su código de salida y salida de error aparecen en un panel `Cloud authentication` en la terminal.468* Ejecute `/status` para confirmar que `apiKeyHelper` es la fuente de credencial activa. Cada vez que el comando falla, su código de salida y salida de error aparecen en un panel `Cloud authentication` en la terminal.

469 469 

470<h3 id="this-organization-has-been-disabled">470<h3 id="this-organization-has-been-disabled">


499Your organization has disabled API key authentication · Unset the apiKeyHelper setting and run /login to sign in with your claude.ai account499Your organization has disabled API key authentication · Unset the apiKeyHelper setting and run /login to sign in with your claude.ai account

500```500```

501 501 

502Las variables de entorno y `apiKeyHelper` tienen precedencia sobre `/login`, por lo que ejecutar `/login` solo no ayuda mientras cualquiera de ellos siga suministrando una clave. Consulte [Precedencia de autenticación](/es/authentication#authentication-precedence).502Las variables de entorno y `apiKeyHelper` tienen precedencia sobre `/login`, por lo que ejecutar `/login` solo no ayuda mientras cualquiera de ellos siga suministrando una clave. Consulte [Precedencia de autenticación](/docs/es/authentication#authentication-precedence).

503 503 

504**Qué hacer:**504**Qué hacer:**

505 505 

506* Si el mensaje menciona `ANTHROPIC_API_KEY`, desactívela en el shell actual y elimínela de su perfil de shell o archivo `.env`, luego relance `claude`506* Si el mensaje menciona `ANTHROPIC_API_KEY`, desactívela en el shell actual y elimínela de su perfil de shell o archivo `.env`, luego relance `claude`

507* Si el mensaje menciona `apiKeyHelper`, elimine la configuración [`apiKeyHelper`](/es/settings#available-settings) de su `settings.json`507* Si el mensaje menciona `apiKeyHelper`, elimine la configuración [`apiKeyHelper`](/docs/es/settings#available-settings) de su `settings.json`

508* Ejecute `/login` para iniciar sesión con su cuenta de claude.ai508* Ejecute `/login` para iniciar sesión con su cuenta de claude.ai

509* Ejecute `/status` después para confirmar que la credencial activa es su suscripción en lugar de una clave de API509* Ejecute `/status` después para confirmar que la credencial activa es su suscripción en lugar de una clave de API

510* Si necesita autenticación por clave de API para automatización, pida al administrador de su organización que la vuelva a habilitar en la Console510* Si necesita autenticación por clave de API para automatización, pida al administrador de su organización que la vuelva a habilitar en la Console


526**Qué hacer:**526**Qué hacer:**

527 527 

528* Pida a su administrador que habilite el acceso a Claude Code para su organización528* Pida a su administrador que habilite el acceso a Claude Code para su organización

529* Autentíquese con una clave de API de Console en lugar de su suscripción. Consulte [Autenticación de Claude Console](/es/authentication#claude-console-authentication) para la configuración.529* Autentíquese con una clave de API de Console en lugar de su suscripción. Consulte [Autenticación de Claude Console](/docs/es/authentication#claude-console-authentication) para la configuración.

530* Si usted es el administrador y no ve una opción para habilitar el acceso, contacte con [soporte de Anthropic](https://support.claude.com)530* Si usted es el administrador y no ve una opción para habilitar el acceso, contacte con [soporte de Anthropic](https://support.claude.com)

531 531 

532<h3 id="routines-are-disabled-by-your-organizations-policy">532<h3 id="routines-are-disabled-by-your-organizations-policy">

533 Las rutinas están deshabilitadas por la política de su organización533 Las rutinas están deshabilitadas por la política de su organización

534</h3>534</h3>

535 535 

536Un Propietario en su organización de Team o Enterprise ha desactivado las rutinas a nivel de organización. El error aparece cuando intenta crear o ejecutar una rutina, incluyendo desde `/schedule` y la interfaz de usuario de [Routines](/es/routines) en claude.ai/code.536Un Propietario en su organización de Team o Enterprise ha desactivado las rutinas a nivel de organización. El error aparece cuando intenta crear o ejecutar una rutina, incluyendo desde `/schedule` y la interfaz de usuario de [Routines](/docs/es/routines) en claude.ai/code.

537 537 

538```text theme={null}538```text theme={null}

539Routines are disabled by your organization's policy.539Routines are disabled by your organization's policy.


544**Qué hacer:**544**Qué hacer:**

545 545 

546* Pida a un Propietario en su organización que habilite el interruptor **Routines** en [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code)546* Pida a un Propietario en su organización que habilite el interruptor **Routines** en [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code)

547* Para trabajo programado único que no requiere rutinas a nivel de organización, consulte [tareas programadas](/es/scheduled-tasks)547* Para trabajo programado único que no requiere rutinas a nivel de organización, consulte [tareas programadas](/docs/es/scheduled-tasks)

548 548 

549<h3 id="remote-control-requires-the-anthropic-api">549<h3 id="remote-control-requires-the-anthropic-api">

550 Remote Control requiere la API de Anthropic550 Remote Control requiere la API de Anthropic

551</h3>551</h3>

552 552 

553La sesión no está hablando directamente con la API de Anthropic, por lo que no hay un backend de claude.ai para que [Remote Control](/es/remote-control) se empareje.553La sesión no está hablando directamente con la API de Anthropic, por lo que no hay un backend de claude.ai para que [Remote Control](/docs/es/remote-control) se empareje.

554 554 

555```text theme={null}555```text theme={null}

556Remote Control is only available when using Claude via api.anthropic.com.556Remote Control is only available when using Claude via api.anthropic.com.

557```557```

558 558 

559Esto aparece en Amazon Bedrock, Agent Platform de Google Cloud y Microsoft Foundry. {/* min-version: 2.1.196 */}A partir de v2.1.196, también aparece cuando [`ANTHROPIC_BASE_URL`](/es/env-vars) apunta a un host diferente de `api.anthropic.com`, como una [puerta de enlace LLM](/es/llm-gateway) o proxy, incluso cuando inicia sesión con claude.ai.559Esto aparece en Amazon Bedrock, Agent Platform de Google Cloud y Microsoft Foundry. A partir de v2.1.196, también aparece cuando [`ANTHROPIC_BASE_URL`](/docs/es/env-vars) apunta a un host diferente de `api.anthropic.com`, como una [puerta de enlace LLM](/docs/es/llm-gateway) o proxy, incluso cuando inicia sesión con claude.ai.

560 560 

561**Qué hacer:**561**Qué hacer:**

562 562 

563* Desactive `ANTHROPIC_BASE_URL` y reinicie la sesión, o inicie Remote Control desde una sesión que hable directamente con la API de Anthropic563* Desactive `ANTHROPIC_BASE_URL` y reinicie la sesión, o inicie Remote Control desde una sesión que hable directamente con la API de Anthropic

564* Para este y los otros mensajes de inicio de Remote Control, consulte [Solucionar problemas de Remote Control](/es/remote-control#troubleshooting)564* Para este y los otros mensajes de inicio de Remote Control, consulte [Solucionar problemas de Remote Control](/docs/es/remote-control#troubleshooting)

565 565 

566<h3 id="oauth-token-revoked-or-expired">566<h3 id="oauth-token-revoked-or-expired">

567 Token OAuth revocado o expirado567 Token OAuth revocado o expirado


581 581 

582* Ejecute `/login` para iniciar sesión nuevamente582* Ejecute `/login` para iniciar sesión nuevamente

583* Si el error regresa dentro de la misma sesión después de volver a autenticarse, ejecute `/logout` primero para borrar completamente el token almacenado, luego `/login`583* Si el error regresa dentro de la misma sesión después de volver a autenticarse, ejecute `/logout` primero para borrar completamente el token almacenado, luego `/login`

584* Para solicitudes repetidas de inicio de sesión entre lanzamientos, consulte las verificaciones del reloj del sistema y Keychain de macOS en [Solución de problemas](/es/troubleshoot-install#not-logged-in-or-token-expired)584* Para solicitudes repetidas de inicio de sesión entre lanzamientos, consulte las verificaciones del reloj del sistema y Keychain de macOS en [Solución de problemas](/docs/es/troubleshoot-install#not-logged-in-or-token-expired)

585* Para otras fallas incluyendo `403 Forbidden` y problemas del navegador OAuth, consulte [Inicio de sesión y autenticación](/es/troubleshoot-install#login-and-authentication)585* Para otras fallas incluyendo `403 Forbidden` y problemas del navegador OAuth, consulte [Inicio de sesión y autenticación](/docs/es/troubleshoot-install#login-and-authentication)

586 586 

587<h3 id="login-expired">587<h3 id="login-expired">

588 Login expirado588 Login expirado

589</h3>589</h3>

590 590 

591Claude Code intentó renovar su inicio de sesión guardado de claude.ai o Claude Console y el servicio OAuth rechazó el token de actualización almacenado, por lo que Claude Code borró las credenciales guardadas. Después de eso, cada solicitud se detiene localmente antes de llegar a la API, porque solo `/login` puede crear nuevas credenciales. {/* min-version: 2.1.206 */}Antes de v2.1.206, Claude Code enviaba la solicitud de todas formas con cualquier credencial que permaneciera en el entorno, y luego cada modelo fallaba con [Hay un problema con el modelo seleccionado](#theres-an-issue-with-the-selected-model) o un 401 en lugar de un aviso para iniciar sesión.591Claude Code intentó renovar su inicio de sesión guardado de claude.ai o Claude Console y el servicio OAuth rechazó el token de actualización almacenado, por lo que Claude Code borró las credenciales guardadas. Después de eso, cada solicitud se detiene localmente antes de llegar a la API, porque solo `/login` puede crear nuevas credenciales. Antes de v2.1.206, Claude Code enviaba la solicitud de todas formas con cualquier credencial que permaneciera en el entorno, y luego cada modelo fallaba con [Hay un problema con el modelo seleccionado](#theres-an-issue-with-the-selected-model) o un 401 en lugar de un aviso para iniciar sesión.

592 592 

593```text theme={null}593```text theme={null}

594Login expired · Please run /login594Login expired · Please run /login

595```595```

596 596 

597En [modo no interactivo](/es/headless) (`-p`) y el [SDK de Agent](/es/agent-sdk/overview), el mensaje se lee de la siguiente manera, y el código de error estructurado es `authentication_failed`:597En [modo no interactivo](/docs/es/headless) (`-p`) y el [SDK de Agent](/docs/es/agent-sdk/overview), el mensaje se lee de la siguiente manera, y el código de error estructurado es `authentication_failed`:

598 598 

599```text theme={null}599```text theme={null}

600Failed to authenticate: OAuth session expired and could not be refreshed600Failed to authenticate: OAuth session expired and could not be refreshed


602 602 

603Este no es el mismo estado que [Token OAuth revocado o expirado](#oauth-token-revoked-or-expired). Esos mensajes reportan un 401 que la API devolvió. Claude Code mismo produce `Login expired` para un inicio de sesión que ya falló al renovar, por lo que no envía ninguna solicitud.603Este no es el mismo estado que [Token OAuth revocado o expirado](#oauth-token-revoked-or-expired). Esos mensajes reportan un 401 que la API devolvió. Claude Code mismo produce `Login expired` para un inicio de sesión que ya falló al renovar, por lo que no envía ninguna solicitud.

604 604 

605Las sesiones autenticadas con una clave de API, [`CLAUDE_CODE_OAUTH_TOKEN`](/es/env-vars) o un proveedor de terceros no usan el inicio de sesión guardado y nunca ven este mensaje.605Las sesiones autenticadas con una clave de API, [`CLAUDE_CODE_OAUTH_TOKEN`](/docs/es/env-vars) o un proveedor de terceros no usan el inicio de sesión guardado y nunca ven este mensaje.

606 606 

607**Qué hacer:**607**Qué hacer:**

608 608 

609* Ejecute `/login` para iniciar sesión nuevamente. Reintentar sin iniciar sesión muestra el mismo mensaje en cada solicitud.609* Ejecute `/login` para iniciar sesión nuevamente. Reintentar sin iniciar sesión muestra el mismo mensaje en cada solicitud.

610* En modo no interactivo, ejecute `claude` en el mismo entorno, complete `/login`, luego reejecutar su comando. Para automatización que no puede iniciar sesión interactivamente, autentíquese con `ANTHROPIC_API_KEY` o [genere un token de larga duración con `claude setup-token`](/es/authentication#generate-a-long-lived-token).610* En modo no interactivo, ejecute `claude` en el mismo entorno, complete `/login`, luego reejecutar su comando. Para automatización que no puede iniciar sesión interactivamente, autentíquese con `ANTHROPIC_API_KEY` o [genere un token de larga duración con `claude setup-token`](/docs/es/authentication#generate-a-long-lived-token).

611* Si iniciar sesión sigue fallando, consulte [Inicio de sesión y autenticación](/es/troubleshoot-install#login-and-authentication)611* Si iniciar sesión sigue fallando, consulte [Inicio de sesión y autenticación](/docs/es/troubleshoot-install#login-and-authentication)

612 612 

613<h3 id="oauth-scope-requirement">613<h3 id="oauth-scope-requirement">

614 Requisito de alcance de OAuth614 Requisito de alcance de OAuth


628 Credenciales de AWS expiradas o no válidas628 Credenciales de AWS expiradas o no válidas

629</h3>629</h3>

630 630 

631{/* min-version: 2.1.198 */}Este mensaje requiere Claude Code v2.1.198 o posterior y solo aparece cuando [`awsAuthRefresh`](/es/amazon-bedrock#advanced-credential-configuration) está configurado en su archivo de configuración. Su token de sesión de AWS expiró o fue rechazado, y la actualización automática que Claude Code ya ejecutó no produjo una credencial que la API acepte. Aparece en un 401 de [Claude Platform on AWS](/es/claude-platform-on-aws) o el [punto final de Mantle](/es/amazon-bedrock#use-the-mantle-endpoint), que es cómo esos proveedores reportan un token de seguridad expirado.631Este mensaje requiere Claude Code v2.1.198 o posterior y solo aparece cuando [`awsAuthRefresh`](/docs/es/amazon-bedrock#advanced-credential-configuration) está configurado en su archivo de configuración. Su token de sesión de AWS expiró o fue rechazado, y la actualización automática que Claude Code ya ejecutó no produjo una credencial que la API acepte. Aparece en un 401 de [Claude Platform on AWS](/docs/es/claude-platform-on-aws) o el [punto final de Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint), que es cómo esos proveedores reportan un token de seguridad expirado.

632 632 

633La sugerencia de acción en el medio nombra el comando `awsAuthRefresh` de su configuración, por lo que varía. La parte estable es el `AWS credentials expired or invalid` inicial:633La sugerencia de acción en el medio nombra el comando `awsAuthRefresh` de su configuración, por lo que varía. La parte estable es el `AWS credentials expired or invalid` inicial:

634 634 


641**Qué hacer:**641**Qué hacer:**

642 642 

643* Ejecute el comando `awsAuthRefresh` nombrado en el mensaje, como `aws sso login --profile myprofile`, en otra terminal y complete el inicio de sesión del navegador, luego reintente643* Ejecute el comando `awsAuthRefresh` nombrado en el mensaje, como `aws sso login --profile myprofile`, en otra terminal y complete el inicio de sesión del navegador, luego reintente

644* En una sesión interactiva, ejecute `/login`, elija **plataforma de terceros**, luego seleccione **Claude Platform on AWS · refresh credentials** bajo **Usando plataformas de terceros** para ejecutar el mismo comando sin reiniciar Claude Code. Consulte [Configurar credenciales de AWS](/es/claude-platform-on-aws#1-configure-aws-credentials)644* En una sesión interactiva, ejecute `/login`, elija **plataforma de terceros**, luego seleccione **Claude Platform on AWS · refresh credentials** bajo **Usando plataformas de terceros** para ejecutar el mismo comando sin reiniciar Claude Code. Consulte [Configurar credenciales de AWS](/docs/es/claude-platform-on-aws#1-configure-aws-credentials)

645* Si el error se repite después de que el comando de actualización tenga éxito, confirme que la identidad es válida fuera de Claude Code con `aws sts get-caller-identity` en el mismo shell y perfil645* Si el error se repite después de que el comando de actualización tenga éxito, confirme que la identidad es válida fuera de Claude Code con `aws sts get-caller-identity` en el mismo shell y perfil

646 646 

647<h3 id="aws-authentication-failed">647<h3 id="aws-authentication-failed">

648 Falló la autenticación de AWS648 Falló la autenticación de AWS

649</h3>649</h3>

650 650 

651{/* min-version: 2.1.198 */}Este mensaje requiere Claude Code v2.1.198 o posterior y solo aparece cuando [`awsAuthRefresh`](/es/amazon-bedrock#advanced-credential-configuration) está configurado en su archivo de configuración. Su proveedor de AWS devolvió un 403, o [Amazon Bedrock](/es/amazon-bedrock) devolvió un 401.651Este mensaje requiere Claude Code v2.1.198 o posterior y solo aparece cuando [`awsAuthRefresh`](/docs/es/amazon-bedrock#advanced-credential-configuration) está configurado en su archivo de configuración. Su proveedor de AWS devolvió un 403, o [Amazon Bedrock](/docs/es/amazon-bedrock) devolvió un 401.

652 652 

653Claude Code no puede decir cuál es la causa que encontró. Amazon Bedrock reporta un token de seguridad expirado como un 403, pero un 403 también es cómo reporta una denegación de autorización, como un `AccessDeniedException` de un permiso de IAM faltante o un modelo que no está habilitado para su cuenta.653Claude Code no puede decir cuál es la causa que encontró. Amazon Bedrock reporta un token de seguridad expirado como un 403, pero un 403 también es cómo reporta una denegación de autorización, como un `AccessDeniedException` de un permiso de IAM faltante o un modelo que no está habilitado para su cuenta.

654 654 


665**Qué hacer:**665**Qué hacer:**

666 666 

667* Ejecute el comando `awsAuthRefresh` nombrado en el mensaje, o `aws sso login`, en caso de que una credencial expirada sea la causa667* Ejecute el comando `awsAuthRefresh` nombrado en el mensaje, o `aws sso login`, en caso de que una credencial expirada sea la causa

668* Si sus credenciales son actuales, confirme que los permisos de IAM en [Configuración de IAM](/es/amazon-bedrock#iam-configuration) estén adjuntos a la identidad que está usando y que el modelo seleccionado esté habilitado para su cuenta y región668* Si sus credenciales son actuales, confirme que los permisos de IAM en [Configuración de IAM](/docs/es/amazon-bedrock#iam-configuration) estén adjuntos a la identidad que está usando y que el modelo seleccionado esté habilitado para su cuenta y región

669* Ejecute `aws sts get-caller-identity` para confirmar qué identidad usan sus solicitudes; un `AWS_PROFILE` obsoleto o perfil predeterminado es una causa común de una falta de coincidencia de permisos669* Ejecute `aws sts get-caller-identity` para confirmar qué identidad usan sus solicitudes; un `AWS_PROFILE` obsoleto o perfil predeterminado es una causa común de una falta de coincidencia de permisos

670 670 

671<h3 id="aws-default-chain-credential-resolve-timed-out">671<h3 id="aws-default-chain-credential-resolve-timed-out">

672 El tiempo de resolución de credenciales de la cadena predeterminada de AWS se agotó672 El tiempo de resolución de credenciales de la cadena predeterminada de AWS se agotó

673</h3>673</h3>

674 674 

675El proveedor de credenciales de cadena predeterminada de AWS no produjo credenciales dentro de 60 segundos, por lo que Claude Code detuvo la resolución y falló la solicitud. El fallo es resolución de credenciales local: la solicitud nunca llegó a [Amazon Bedrock](/es/amazon-bedrock), [Claude Platform on AWS](/es/claude-platform-on-aws) o el [punto final de Mantle](/es/amazon-bedrock#use-the-mantle-endpoint). Claude Code borra su [caché de credenciales](/es/amazon-bedrock#credential-caching-and-resolution-timeout) y reintenta antes de que este error aparezca, por lo que en el momento en que lo ve la cadena se ha estancado en intentos repetidos.675El proveedor de credenciales de cadena predeterminada de AWS no produjo credenciales dentro de 60 segundos, por lo que Claude Code detuvo la resolución y falló la solicitud. El fallo es resolución de credenciales local: la solicitud nunca llegó a [Amazon Bedrock](/docs/es/amazon-bedrock), [Claude Platform on AWS](/docs/es/claude-platform-on-aws) o el [punto final de Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint). Claude Code borra su [caché de credenciales](/docs/es/amazon-bedrock#credential-caching-and-resolution-timeout) y reintenta antes de que este error aparezca, por lo que en el momento en que lo ve la cadena se ha estancado en intentos repetidos.

676 676 

677```text theme={null}677```text theme={null}

678API Error: AWS default-chain credential resolve timed out678API Error: AWS default-chain credential resolve timed out

679```679```

680 680 

681Las causas comunes son un comando `credential_process` en su perfil de AWS que espera entrada que no puede recibir, y un contenedor o VM cuyo servicio de metadatos de instancia (IMDS) nunca responde a la prueba de la cadena. {/* min-version: 2.1.207 */}Antes de v2.1.207, una cadena estancada dejaba la solicitud esperando indefinidamente en lugar de fallar con este mensaje.681Las causas comunes son un comando `credential_process` en su perfil de AWS que espera entrada que no puede recibir, y un contenedor o VM cuyo servicio de metadatos de instancia (IMDS) nunca responde a la prueba de la cadena. Antes de v2.1.207, una cadena estancada dejaba la solicitud esperando indefinidamente en lugar de fallar con este mensaje.

682 682 

683**Qué hacer:**683**Qué hacer:**

684 684 

685* Ejecute `aws sts get-caller-identity` en el mismo shell con el mismo `AWS_PROFILE`. Si también se cuelga, corrija el perfil; un comando `credential_process` que solicita interactivamente es una causa común.685* Ejecute `aws sts get-caller-identity` en el mismo shell con el mismo `AWS_PROFILE`. Si también se cuelga, corrija el perfil; un comando `credential_process` que solicita interactivamente es una causa común.

686* Complete el paso de inicio de sesión antes de iniciar Claude Code, por ejemplo `aws sso login --profile myprofile`, para que la cadena se resuelva desde el caché de SSO local en lugar de esperar un flujo del navegador686* Complete el paso de inicio de sesión antes de iniciar Claude Code, por ejemplo `aws sso login --profile myprofile`, para que la cadena se resuelva desde el caché de SSO local en lugar de esperar un flujo del navegador

687* Si su cadena ejecuta un inicio de sesión interactivo que legítimamente necesita más de 60 segundos, como SSO con MFA a través de un contenedor como `aws-vault`, aumente el límite en milisegundos con [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/es/env-vars)687* Si su cadena ejecuta un inicio de sesión interactivo que legítimamente necesita más de 60 segundos, como SSO con MFA a través de un contenedor como `aws-vault`, aumente el límite en milisegundos con [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/es/env-vars)

688 688 

689<h2 id="network-and-connection-errors">689<h2 id="network-and-connection-errors">

690 Errores de red y conexión690 Errores de red y conexión


712**Qué hacer:**712**Qué hacer:**

713 713 

714* Confirme que puede alcanzar el host de la API desde el mismo shell ejecutando `curl -I https://api.anthropic.com`. En Windows PowerShell use `curl.exe -I https://api.anthropic.com` para que no se use el alias `Invoke-WebRequest` integrado.714* Confirme que puede alcanzar el host de la API desde el mismo shell ejecutando `curl -I https://api.anthropic.com`. En Windows PowerShell use `curl.exe -I https://api.anthropic.com` para que no se use el alias `Invoke-WebRequest` integrado.

715* Si está detrás de un proxy corporativo, establezca `HTTPS_PROXY` antes de lanzar Claude Code y consulte [Configuración de red](/es/network-config)715* Si está detrás de un proxy corporativo, establezca `HTTPS_PROXY` antes de lanzar Claude Code y consulte [Configuración de red](/docs/es/network-config)

716* Si enruta a través de una puerta de enlace LLM o relé, establezca [`ANTHROPIC_BASE_URL`](/es/env-vars) en su dirección. Consulte [Conectar Claude Code a una puerta de enlace LLM](/es/llm-gateway-connect) para la configuración.716* Si enruta a través de una puerta de enlace LLM o relé, establezca [`ANTHROPIC_BASE_URL`](/docs/es/env-vars) en su dirección. Consulte [Conectar Claude Code a una puerta de enlace LLM](/docs/es/llm-gateway-connect) para la configuración.

717* Asegúrese de que su firewall permita los hosts enumerados en [Requisitos de acceso a la red](/es/network-config#network-access-requirements)717* Asegúrese de que su firewall permita los hosts enumerados en [Requisitos de acceso a la red](/docs/es/network-config#network-access-requirements)

718* Los fallos intermitentes se [reintentan automáticamente](#automatic-retries); los fallos persistentes apuntan a un problema de red local718* Los fallos intermitentes se [reintentan automáticamente](#automatic-retries); los fallos persistentes apuntan a un problema de red local

719 719 

720Si `curl` tiene éxito pero Claude Code aún falla, la causa suele ser algo entre el tiempo de ejecución y la red en lugar de la red misma:720Si `curl` tiene éxito pero Claude Code aún falla, la causa suele ser algo entre el tiempo de ejecución y la red en lugar de la red misma:


727 La respuesta de streaming de Bedrock tiene un content-type inesperado727 La respuesta de streaming de Bedrock tiene un content-type inesperado

728</h3>728</h3>

729 729 

730Una puerta de enlace o proxy entre Claude Code y [Amazon Bedrock](/es/amazon-bedrock) está transformando el cuerpo de la respuesta de streaming o su encabezado `Content-Type`. Amazon Bedrock transmite respuestas como `application/vnd.amazon.eventstream`, y Claude Code rechaza una respuesta de streaming exitosa que reporta un content-type diferente en lugar de decodificar un cuerpo que no puede leer. La solicitud no se reintenta.730Una puerta de enlace o proxy entre Claude Code y [Amazon Bedrock](/docs/es/amazon-bedrock) está transformando el cuerpo de la respuesta de streaming o su encabezado `Content-Type`. Amazon Bedrock transmite respuestas como `application/vnd.amazon.eventstream`, y Claude Code rechaza una respuesta de streaming exitosa que reporta un content-type diferente en lugar de decodificar un cuerpo que no puede leer. La solicitud no se reintenta.

731 731 

732```text theme={null}732```text theme={null}

733Bedrock streaming response has content-type "text/event-stream"; expected "application/vnd.amazon.eventstream". A gateway or proxy between Claude Code and Bedrock is likely transforming the response body — Bedrock's binary event-stream format must be passed through unmodified. Set CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD=1 to suppress this check while the gateway is being fixed.733Bedrock streaming response has content-type "text/event-stream"; expected "application/vnd.amazon.eventstream". A gateway or proxy between Claude Code and Bedrock is likely transforming the response body — Bedrock's binary event-stream format must be passed through unmodified. Set CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD=1 to suppress this check while the gateway is being fixed.

734```734```

735 735 

736{/* min-version: 2.1.208 */}Antes de v2.1.208, la misma configuración incorrecta se presentaba como `API Error: Truncated event message received` después de que toda la respuesta había sido almacenada en búfer.736Antes de v2.1.208, la misma configuración incorrecta se presentaba como `API Error: Truncated event message received` después de que toda la respuesta había sido almacenada en búfer.

737 737 

738**Qué hacer:**738**Qué hacer:**

739 739 

740* Configure la puerta de enlace para pasar el cuerpo de la respuesta `InvokeModelWithResponseStream` y su encabezado `Content-Type` sin modificar. Un intermediario que reemite la transmisión como eventos enviados por el servidor es una causa común.740* Configure la puerta de enlace para pasar el cuerpo de la respuesta `InvokeModelWithResponseStream` y su encabezado `Content-Type` sin modificar. Un intermediario que reemite la transmisión como eventos enviados por el servidor es una causa común.

741* Si la puerta de enlace reescribe solo el encabezado y pasa el cuerpo binario intacto, establezca [`CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD=1`](/es/env-vars) para omitir la verificación hasta que la puerta de enlace se corrija. Consulte [Errores de streaming detrás de una puerta de enlace o proxy](/es/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy).741* Si la puerta de enlace reescribe solo el encabezado y pasa el cuerpo binario intacto, establezca [`CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD=1`](/docs/es/env-vars) para omitir la verificación hasta que la puerta de enlace se corrija. Consulte [Errores de streaming detrás de una puerta de enlace o proxy](/docs/es/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy).

742 742 

743<h3 id="ssl-certificate-errors">743<h3 id="ssl-certificate-errors">

744 Errores de certificado SSL744 Errores de certificado SSL


751Unable to connect to API: Self-signed certificate detected751Unable to connect to API: Self-signed certificate detected

752```752```

753 753 

754{/* min-version: 2.1.199 */}A partir de v2.1.199, un fallo de validación de certificado no se reintenta, por lo que este error aparece en el primer intento en lugar de después del [presupuesto de reintentos](#automatic-retries) completo. Las versiones anteriores pasaban unos minutos reintentando antes de mostrarlo. Las condiciones TLS transitorias, como un tiempo de espera de protocolo de enlace, aún se reintentan.754A partir de v2.1.199, un fallo de validación de certificado no se reintenta, por lo que este error aparece en el primer intento en lugar de después del [presupuesto de reintentos](#automatic-retries) completo. Las versiones anteriores pasaban unos minutos reintentando antes de mostrarlo. Las condiciones TLS transitorias, como un tiempo de espera de protocolo de enlace, aún se reintentan.

755 755 

756Durante `/login` y la verificación de conectividad de inicio, el mismo fallo se reporta con el código OpenSSL y la solución en línea:756Durante `/login` y la verificación de conectividad de inicio, el mismo fallo se reporta con el código OpenSSL y la solución en línea:

757 757 


762**Qué hacer:**762**Qué hacer:**

763 763 

764* Exporte el paquete de CA de su organización y apunte Claude Code a él con `NODE_EXTRA_CA_CERTS=/path/to/ca-bundle.pem`764* Exporte el paquete de CA de su organización y apunte Claude Code a él con `NODE_EXTRA_CA_CERTS=/path/to/ca-bundle.pem`

765* Consulte [Configuración de red](/es/network-config#custom-ca-certificates) para obtener instrucciones de configuración completas765* Consulte [Configuración de red](/docs/es/network-config#custom-ca-certificates) para obtener instrucciones de configuración completas

766* No establezca `NODE_TLS_REJECT_UNAUTHORIZED=0`, que desactiva completamente la validación de certificados766* No establezca `NODE_TLS_REJECT_UNAUTHORIZED=0`, que desactiva completamente la validación de certificados

767 767 

768<h3 id="host-not-allowed-in-a-cloud-session">768<h3 id="host-not-allowed-in-a-cloud-session">


778 778 

779También puede ver un certificado TLS que no coincide con el certificado real del destino. El entorno en la nube enruta el tráfico saliente a través de un proxy que aplica la política de red, por lo que un certificado no coincidente significa que el proxy terminó la conexión, no el destino.779También puede ver un certificado TLS que no coincide con el certificado real del destino. El entorno en la nube enruta el tráfico saliente a través de un proxy que aplica la política de red, por lo que un certificado no coincidente significa que el proxy terminó la conexión, no el destino.

780 780 

781Este no es un problema de red del lado del cliente. Las sesiones en la nube y las [rutinas](/es/routines) se ejecutan dentro de un entorno aislado cuyo tráfico saliente se filtra a la lista de permitidos del entorno. El entorno **Default** utiliza acceso **Trusted**, que permite la [lista de permitidos predeterminada](/es/claude-code-on-the-web#default-allowed-domains) de registros de paquetes, API de proveedores de nube, registros de contenedores y dominios de desarrollo comunes, pero bloquea todo lo demás.781Este no es un problema de red del lado del cliente. Las sesiones en la nube y las [rutinas](/docs/es/routines) se ejecutan dentro de un entorno aislado cuyo tráfico saliente se filtra a la lista de permitidos del entorno. El entorno **Default** utiliza acceso **Trusted**, que permite la [lista de permitidos predeterminada](/docs/es/claude-code-on-the-web#default-allowed-domains) de registros de paquetes, API de proveedores de nube, registros de contenedores y dominios de desarrollo comunes, pero bloquea todo lo demás.

782 782 

783**Qué hacer:**783**Qué hacer:**

784 784 

785* Abra la rutina para editar, o inicie una sesión en la nube. Seleccione el icono de nube que muestra el nombre de su entorno, como **Default**, para abrir el selector. Pase el cursor sobre su entorno y haga clic en el icono de configuración.785* Abra la rutina para editar, o inicie una sesión en la nube. Seleccione el icono de nube que muestra el nombre de su entorno, como **Default**, para abrir el selector. Pase el cursor sobre su entorno y haga clic en el icono de configuración.

786* En el diálogo **Update cloud environment**, cambie **Network access** de **Trusted** a **Custom**, luego agregue el dominio bloqueado a **Allowed domains**. Ingrese un dominio por línea. Marque **Also include default list of common package managers** para mantener la [lista de permitidos predeterminada](/es/claude-code-on-the-web#default-allowed-domains) junto con sus dominios personalizados. Seleccione **Full** en su lugar si desea acceso sin restricciones.786* En el diálogo **Update cloud environment**, cambie **Network access** de **Trusted** a **Custom**, luego agregue el dominio bloqueado a **Allowed domains**. Ingrese un dominio por línea. Marque **Also include default list of common package managers** para mantener la [lista de permitidos predeterminada](/docs/es/claude-code-on-the-web#default-allowed-domains) junto con sus dominios personalizados. Seleccione **Full** en su lugar si desea acceso sin restricciones.

787* Haga clic en **Save changes**. La siguiente ejecución utiliza la lista de permitidos actualizada.787* Haga clic en **Save changes**. La siguiente ejecución utiliza la lista de permitidos actualizada.

788 788 

789Consulte [Network access](/es/claude-code-on-the-web#network-access) para los niveles de acceso y la lista de permitidos predeterminada. Las sesiones de CLI locales no se ven afectadas por esta política.789Consulte [Network access](/docs/es/claude-code-on-the-web#network-access) para los niveles de acceso y la lista de permitidos predeterminada. Las sesiones de CLI locales no se ven afectadas por esta política.

790 790 

791<h3 id="couldnt-reconnect-to-your-remote-control-session">791<h3 id="couldnt-reconnect-to-your-remote-control-session">

792 No se pudo reconectar a su sesión de Remote Control792 No se pudo reconectar a su sesión de Remote Control


796Couldn't reconnect to your Remote Control session. Retry, or start a fresh session without --resume.796Couldn't reconnect to your Remote Control session. Retry, or start a fresh session without --resume.

797```797```

798 798 

799Reanudar con `claude --resume` o `claude --continue` se reconecta a la sesión de [Remote Control](/es/remote-control) registrada en esa conversación. Este mensaje significa que la reconexión falló por una razón que puede ser temporal, como una interrupción de red o un error del servidor, por lo que Claude Code no puede confirmar si la sesión remota aún existe. Su sesión local continúa ejecutándose sin Remote Control.799Reanudar con `claude --resume` o `claude --continue` se reconecta a la sesión de [Remote Control](/docs/es/remote-control) registrada en esa conversación. Este mensaje significa que la reconexión falló por una razón que puede ser temporal, como una interrupción de red o un error del servidor, por lo que Claude Code no puede confirmar si la sesión remota aún existe. Su sesión local continúa ejecutándose sin Remote Control.

800 800 

801**Qué hacer:**801**Qué hacer:**

802 802 

803* Ejecute `/remote-control` para reintentar la conexión803* Ejecute `/remote-control` para reintentar la conexión

804* Inicie Claude Code sin `--resume` para crear una nueva sesión de Remote Control804* Inicie Claude Code sin `--resume` para crear una nueva sesión de Remote Control

805* Para otros mensajes de inicio de Remote Control, consulte [Solucionar problemas de Remote Control](/es/remote-control#troubleshooting)805* Para otros mensajes de inicio de Remote Control, consulte [Solucionar problemas de Remote Control](/docs/es/remote-control#troubleshooting)

806 806 

807No verá este mensaje cuando el servidor confirme que la sesión anterior ya no existe; Claude Code crea una nueva en ese caso. {/* min-version: 2.1.200 */}Antes de v2.1.200, cualquier fallo de reconexión creaba una nueva sesión de Remote Control, que dejaba sesiones adicionales en la lista de sesiones en claude.ai/code.807No verá este mensaje cuando el servidor confirme que la sesión anterior ya no existe; Claude Code crea una nueva en ese caso. Antes de v2.1.200, cualquier fallo de reconexión creaba una nueva sesión de Remote Control, que dejaba sesiones adicionales en la lista de sesiones en claude.ai/code.

808 808 

809<h2 id="request-errors">809<h2 id="request-errors">

810 Errores de solicitud810 Errores de solicitud


827* Ejecute `/compact` para resumir turnos anteriores y liberar espacio, o `/clear` para comenzar de nuevo827* Ejecute `/compact` para resumir turnos anteriores y liberar espacio, o `/clear` para comenzar de nuevo

828* Ejecute `/context` para ver un desglose de lo que está consumiendo la ventana: prompt del sistema, herramientas, archivos de memoria y mensajes828* Ejecute `/context` para ver un desglose de lo que está consumiendo la ventana: prompt del sistema, herramientas, archivos de memoria y mensajes

829* Deshabilite los servidores MCP que no está utilizando con `/mcp disable <name>` para eliminar sus definiciones de herramientas del contexto829* Deshabilite los servidores MCP que no está utilizando con `/mcp disable <name>` para eliminar sus definiciones de herramientas del contexto

830* Recorte archivos de memoria `CLAUDE.md` grandes, o mueva instrucciones a [reglas con alcance de ruta](/es/memory#path-specific-rules) que se carguen solo cuando sea relevante830* Recorte archivos de memoria `CLAUDE.md` grandes, o mueva instrucciones a [reglas con alcance de ruta](/docs/es/memory#path-specific-rules) que se carguen solo cuando sea relevante

831* Los suagentes heredan cada definición de herramienta MCP de la sesión principal, lo que puede llenar su ventana de contexto antes del primer turno. Deshabilite los servidores MCP que no está utilizando antes de generar suagentes.831* Los suagentes heredan cada definición de herramienta MCP de la sesión principal, lo que puede llenar su ventana de contexto antes del primer turno. Deshabilite los servidores MCP que no está utilizando antes de generar suagentes.

832* Auto-compact está habilitado de forma predeterminada y normalmente previene este error. Si ha establecido [`DISABLE_AUTO_COMPACT`](/es/env-vars), vuelva a habilitarlo o ejecute `/compact` manualmente antes de que la ventana se llene.832* Auto-compact está habilitado de forma predeterminada y normalmente previene este error. Si ha establecido [`DISABLE_AUTO_COMPACT`](/docs/es/env-vars), vuelva a habilitarlo o ejecute `/compact` manualmente antes de que la ventana se llene.

833 833 

834Consulte [Explore the context window](/es/context-window) para una vista interactiva de cómo se llena el contexto.834Consulte [Explore the context window](/docs/es/context-window) para una vista interactiva de cómo se llena el contexto.

835 835 

836<h3 id="error-during-compaction-conversation-too-long">836<h3 id="error-during-compaction-conversation-too-long">

837 Error durante la compactación: Conversación demasiado larga837 Error durante la compactación: Conversación demasiado larga


879API Error: 400 ... image dimensions exceed max allowed size879API Error: 400 ... image dimensions exceed max allowed size

880```880```

881 881 

882{/* min-version: 2.1.142 */}Claude Code reemplaza la imagen no procesable con un marcador de posición de texto y reintenta, por lo que los mensajes posteriores tienen éxito. En versiones anteriores a 2.1.142, una imagen pegada podría permanecer en la conversación y repetir el mismo error en cada mensaje posterior. Para recuperarse en esas versiones, presione Esc dos veces y retroceda más allá del turno donde se agregó la imagen.882Claude Code reemplaza la imagen no procesable con un marcador de posición de texto y reintenta, por lo que los mensajes posteriores tienen éxito. En versiones anteriores a 2.1.142, una imagen pegada podría permanecer en la conversación y repetir el mismo error en cada mensaje posterior. Para recuperarse en esas versiones, presione Esc dos veces y retroceda más allá del turno donde se agregó la imagen.

883 883 

884**Qué hacer:**884**Qué hacer:**

885 885 


939 939 

940**Qué hacer:**940**Qué hacer:**

941 941 

942* Configure su puerta de enlace para reenviar el encabezado `anthropic-beta`. Consulte [feature pass-through](/es/llm-gateway-protocol#feature-pass-through) para saber qué deben reenviar las puertas de enlace.942* Configure su puerta de enlace para reenviar el encabezado `anthropic-beta`. Consulte [feature pass-through](/docs/es/llm-gateway-protocol#feature-pass-through) para saber qué deben reenviar las puertas de enlace.

943* Como alternativa, establezca [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](/es/env-vars) antes de iniciar. Esto deshabilita características que requieren el encabezado beta para que las solicitudes tengan éxito a través de una puerta de enlace que no puede reenviarlo.943* Como alternativa, establezca [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](/docs/es/env-vars) antes de iniciar. Esto deshabilita características que requieren el encabezado beta para que las solicitudes tengan éxito a través de una puerta de enlace que no puede reenviarlo.

944 944 

945<h3 id="theres-an-issue-with-the-selected-model">945<h3 id="theres-an-issue-with-the-selected-model">

946 Hay un problema con el modelo seleccionado946 Hay un problema con el modelo seleccionado


955**Qué hacer:**955**Qué hacer:**

956 956 

957* **CLI interactivo**: ejecute `/model` para elegir entre los modelos disponibles para su cuenta.957* **CLI interactivo**: ejecute `/model` para elegir entre los modelos disponibles para su cuenta.

958* **Modo no interactivo (`-p`)**: pase `--model` con un alias o ID válido, o establezca [`ANTHROPIC_MODEL`](/es/env-vars). El texto de error muestra `Run --model` en esta superficie.958* **Modo no interactivo (`-p`)**: pase `--model` con un alias o ID válido, o establezca [`ANTHROPIC_MODEL`](/docs/es/env-vars). El texto de error muestra `Run --model` en esta superficie.

959* **Agent SDK**: el texto de error omite la sugerencia porque el modelo se establece mediante programación. Establezca [`model` en `Options`](/es/agent-sdk/typescript#options) en TypeScript o [`ClaudeAgentOptions(model=...)`](/es/agent-sdk/python#claudeagentoptions) en Python, y maneje el error estructurado `model_not_found` para mostrar su propio reintento o selector de modelo.959* **Agent SDK**: el texto de error omite la sugerencia porque el modelo se establece mediante programación. Establezca [`model` en `Options`](/docs/es/agent-sdk/typescript#options) en TypeScript o [`ClaudeAgentOptions(model=...)`](/docs/es/agent-sdk/python#claudeagentoptions) en Python, y maneje el error estructurado `model_not_found` para mostrar su propio reintento o selector de modelo.

960* Use un alias como `sonnet` u `opus` en lugar de un ID versionado completo. Los alias se resuelven a un valor predeterminado mantenido para que no se vuelvan obsoletos. Consulte [Model configuration](/es/model-config).960* Use un alias como `sonnet` u `opus` en lugar de un ID versionado completo. Los alias se resuelven a un valor predeterminado mantenido para que no se vuelvan obsoletos. Consulte [Model configuration](/docs/es/model-config).

961* Si el modelo incorrecto sigue apareciendo en la CLI, hay un ID obsoleto establecido en algún lugar. Verifique en [orden de prioridad](/es/model-config#setting-your-model): la bandera `--model`, la variable de entorno `ANTHROPIC_MODEL`, luego el campo `model` en `.claude/settings.local.json`, el `.claude/settings.json` de su proyecto y `~/.claude/settings.json`. Elimine el valor obsoleto y Claude Code vuelve a su valor predeterminado de cuenta.961* Si el modelo incorrecto sigue apareciendo en la CLI, hay un ID obsoleto establecido en algún lugar. Verifique en [orden de prioridad](/docs/es/model-config#setting-your-model): la bandera `--model`, la variable de entorno `ANTHROPIC_MODEL`, luego el campo `model` en `.claude/settings.local.json`, el `.claude/settings.json` de su proyecto y `~/.claude/settings.json`. Elimine el valor obsoleto y Claude Code vuelve a su valor predeterminado de cuenta.

962* {/* min-version: 2.1.206 */}Claude Code reporta un inicio de sesión de claude.ai expirado como [Login expired](#login-expired), no como este error. Antes de v2.1.206, un inicio de sesión expirado que ya no podía actualizarse fallaba en cada modelo con este error; ejecute `/login` si ve eso en una versión anterior.962* Claude Code reporta un inicio de sesión de claude.ai expirado como [Login expired](#login-expired), no como este error. Antes de v2.1.206, un inicio de sesión expirado que ya no podía actualizarse fallaba en cada modelo con este error; ejecute `/login` si ve eso en una versión anterior.

963* Para implementaciones de Google Cloud's Agent Platform, consulte [Google Cloud's Agent Platform troubleshooting](/es/google-vertex-ai#troubleshooting).963* Para implementaciones de Google Cloud's Agent Platform, consulte [Google Cloud's Agent Platform troubleshooting](/docs/es/google-vertex-ai#troubleshooting).

964 964 

965<h3 id="model-is-not-a-recognized-model-id">965<h3 id="model-is-not-a-recognized-model-id">

966 El modelo no es un ID de modelo reconocido966 El modelo no es un ID de modelo reconocido


974 974 

975La sugerencia final nombra el alias o ID de modelo más cercano. Cuando nada es lo suficientemente cercano, dice `Run /model to see available models.` en su lugar.975La sugerencia final nombra el alias o ID de modelo más cercano. Cuando nada es lo suficientemente cercano, dice `Run /model to see available models.` en su lugar.

976 976 

977Claude Code produce este error localmente en el momento en que se solicita el cambio, antes de que se realice cualquier solicitud de API. Se aplica cuando un modelo se establece a través del método [Agent SDK](/es/agent-sdk/typescript) `setModel()` o por una aplicación como la [Desktop app](/es/desktop) que ejecuta la CLI de Claude Code para usted.977Claude Code produce este error localmente en el momento en que se solicita el cambio, antes de que se realice cualquier solicitud de API. Se aplica cuando un modelo se establece a través del método [Agent SDK](/docs/es/agent-sdk/typescript) `setModel()` o por una aplicación como la [Desktop app](/docs/es/desktop) que ejecuta la CLI de Claude Code para usted.

978 978 

979**Qué hacer:**979**Qué hacer:**

980 980 

981* Ejecute `/model` sin argumento para abrir el selector y elegir entre los modelos disponibles para su cuenta, luego pase el alias o ID que se muestra allí981* Ejecute `/model` sin argumento para abrir el selector y elegir entre los modelos disponibles para su cuenta, luego pase el alias o ID que se muestra allí

982* Si utilizó un alias que una versión más nueva de Claude Code admite, ejecute `claude update`. Un ID completo que comienza con `claude-` pasa esta verificación incluso cuando el modelo es más nuevo que su versión de Claude Code, por lo que la actualización no es necesaria para esos.982* Si utilizó un alias que una versión más nueva de Claude Code admite, ejecute `claude update`. Un ID completo que comienza con `claude-` pasa esta verificación incluso cuando el modelo es más nuevo que su versión de Claude Code, por lo que la actualización no es necesaria para esos.

983* Un modelo guardado antes de v2.1.200 no se repara con esta verificación. Si un valor obsoleto sigue apareciendo, elimínelo de las ubicaciones enumeradas en [Hay un problema con el modelo seleccionado](#theres-an-issue-with-the-selected-model).983* Un modelo guardado antes de v2.1.200 no se repara con esta verificación. Si un valor obsoleto sigue apareciendo, elimínelo de las ubicaciones enumeradas en [Hay un problema con el modelo seleccionado](#theres-an-issue-with-the-selected-model).

984* La verificación se ejecuta solo en la API de Anthropic. En Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, [Claude Platform on AWS](/es/claude-platform-on-aws) y detrás de una [LLM gateway](/es/llm-gateway) o un `ANTHROPIC_BASE_URL` personalizado, su proveedor o puerta de enlace define los nombres de modelo, por lo que Claude Code acepta cualquier cadena y la pasa.984* La verificación se ejecuta solo en la API de Anthropic. En Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, [Claude Platform on AWS](/docs/es/claude-platform-on-aws) y detrás de una [LLM gateway](/docs/es/llm-gateway) o un `ANTHROPIC_BASE_URL` personalizado, su proveedor o puerta de enlace define los nombres de modelo, por lo que Claude Code acepta cualquier cadena y la pasa.

985 985 

986<h3 id="claude-opus-is-not-available-with-the-claude-pro-plan">986<h3 id="claude-opus-is-not-available-with-the-claude-pro-plan">

987 Claude Opus no está disponible con el plan Claude Pro987 Claude Opus no está disponible con el plan Claude Pro


1003 El modelo está restringido por la configuración de su organización1003 El modelo está restringido por la configuración de su organización

1004</h3>1004</h3>

1005 1005 

1006Su administrador de organización ha deshabilitado este modelo en la consola de administración de claude.ai, o está excluido por una lista de permitidos [`availableModels`](/es/model-config#restrict-model-selection) en la configuración administrada. Cuando el modelo restringido se estableció con `--model`, `ANTHROPIC_MODEL` o la configuración `model`, Claude Code sustituye un modelo permitido y continúa. Escribir `/model <name>` para un modelo restringido se rechaza con `Run /model to choose a different model.` y la sesión mantiene su modelo actual.1006Su administrador de organización ha deshabilitado este modelo en la consola de administración de claude.ai, o está excluido por una lista de permitidos [`availableModels`](/docs/es/model-config#restrict-model-selection) en la configuración administrada. Cuando el modelo restringido se estableció con `--model`, `ANTHROPIC_MODEL` o la configuración `model`, Claude Code sustituye un modelo permitido y continúa. Escribir `/model <name>` para un modelo restringido se rechaza con `Run /model to choose a different model.` y la sesión mantiene su modelo actual.

1007 1007 

1008```text theme={null}1008```text theme={null}

1009Model "claude-opus-4-8" is restricted by your organization's settings. Using claude-sonnet-4-6 instead.1009Model "claude-opus-4-8" is restricted by your organization's settings. Using claude-sonnet-4-6 instead.

1010```1010```

1011 1011 

1012Claude Code trata un alias de familia de modelo, uno de `opus`, `sonnet`, `haiku` o `fable`, como una solicitud de esa familia en lugar de su versión más nueva. En la API de Anthropic y en [Claude Platform on AWS](/es/claude-platform-on-aws), un alias de familia restringido se resuelve a la versión más nueva de la familia que su organización y la lista de permitidos `availableModels` permiten, y el aviso de sustitución nombra esa versión. Claude Code rechaza `/model <alias>` solo cuando cada versión de la familia está restringida. Antes de v2.1.205, un alias de familia se sustituía o rechazaba basándose únicamente en su versión más nueva, incluso cuando una versión anterior de la misma familia estaba permitida.1012Claude Code trata un alias de familia de modelo, uno de `opus`, `sonnet`, `haiku` o `fable`, como una solicitud de esa familia en lugar de su versión más nueva. En la API de Anthropic y en [Claude Platform on AWS](/docs/es/claude-platform-on-aws), un alias de familia restringido se resuelve a la versión más nueva de la familia que su organización y la lista de permitidos `availableModels` permiten, y el aviso de sustitución nombra esa versión. Claude Code rechaza `/model <alias>` solo cuando cada versión de la familia está restringida. Antes de v2.1.205, un alias de familia se sustituía o rechazaba basándose únicamente en su versión más nueva, incluso cuando una versión anterior de la misma familia estaba permitida.

1013 1013 

1014**Qué hacer:**1014**Qué hacer:**

1015 1015 

1016* Ejecute `/model` para elegir entre los modelos que su organización permite. Los modelos restringidos están ocultos en el selector.1016* Ejecute `/model` para elegir entre los modelos que su organización permite. Los modelos restringidos están ocultos en el selector.

1017* Si el modelo restringido se estableció en `--model`, `ANTHROPIC_MODEL` o el campo `model` de un archivo de configuración, elimine o actualice ese valor para que el aviso no se repita en cada inicio1017* Si el modelo restringido se estableció en `--model`, `ANTHROPIC_MODEL` o el campo `model` de un archivo de configuración, elimine o actualice ese valor para que el aviso no se repita en cada inicio

1018* Si necesita acceso al modelo restringido, pida a su administrador de organización que lo habilite. Consulte [Organization model restrictions](/es/model-config#organization-model-restrictions).1018* Si necesita acceso al modelo restringido, pida a su administrador de organización que lo habilite. Consulte [Organization model restrictions](/docs/es/model-config#organization-model-restrictions).

1019 1019 

1020<h3 id="thinking-type-enabled-is-not-supported-for-this-model">1020<h3 id="thinking-type-enabled-is-not-supported-for-this-model">

1021 thinking.type.enabled no es compatible con este modelo1021 thinking.type.enabled no es compatible con este modelo


1031 1031 

1032* Ejecute `claude update` y reinicie Claude Code. Opus 4.7 necesita v2.1.111 o posterior. Opus 4.8 necesita v2.1.154 o posterior. Sonnet 5 necesita v2.1.197 o posterior1032* Ejecute `claude update` y reinicie Claude Code. Opus 4.7 necesita v2.1.111 o posterior. Opus 4.8 necesita v2.1.154 o posterior. Sonnet 5 necesita v2.1.197 o posterior

1033* Si no puede actualizar, ejecute `/model` y seleccione Opus 4.6 o Sonnet 4.6 en su lugar1033* Si no puede actualizar, ejecute `/model` y seleccione Opus 4.6 o Sonnet 4.6 en su lugar

1034* {/* min-version: agent-sdk@0.3.197 */}Si encuentra esto en el [Agent SDK](/es/agent-sdk/overview), actualice el paquete SDK en su lugar. Opus 4.8 necesita TypeScript SDK v0.3.154 o posterior y Python SDK v0.2.88 o posterior. Sonnet 5 necesita TypeScript SDK v0.3.197 o posterior1034* Si encuentra esto en el [Agent SDK](/docs/es/agent-sdk/overview), actualice el paquete SDK en su lugar. Opus 4.8 necesita TypeScript SDK v0.3.154 o posterior y Python SDK v0.2.88 o posterior. Sonnet 5 necesita TypeScript SDK v0.3.197 o posterior

1035 1035 

1036<h3 id="thinking-budget-exceeds-output-limit">1036<h3 id="thinking-budget-exceeds-output-limit">

1037 El presupuesto de pensamiento excede el límite de salida1037 El presupuesto de pensamiento excede el límite de salida


1043API Error: 400 ... max_tokens must be greater than thinking.budget_tokens1043API Error: 400 ... max_tokens must be greater than thinking.budget_tokens

1044```1044```

1045 1045 

1046Claude Code ajusta estos valores automáticamente en la API de Anthropic. Normalmente ve este error en Amazon Bedrock o Google Cloud's Agent Platform cuando [`MAX_THINKING_TOKENS`](/es/env-vars) se establece más alto que el límite de salida del proveedor, o cuando el modo de plan aumenta el presupuesto de pensamiento.1046Claude Code ajusta estos valores automáticamente en la API de Anthropic. Normalmente ve este error en Amazon Bedrock o Google Cloud's Agent Platform cuando [`MAX_THINKING_TOKENS`](/docs/es/env-vars) se establece más alto que el límite de salida del proveedor, o cuando el modo de plan aumenta el presupuesto de pensamiento.

1047 1047 

1048**Qué hacer:**1048**Qué hacer:**

1049 1049 

1050* Baje `MAX_THINKING_TOKENS`, o aumente [`CLAUDE_CODE_MAX_OUTPUT_TOKENS`](/es/env-vars) por encima del presupuesto de pensamiento1050* Baje `MAX_THINKING_TOKENS`, o aumente [`CLAUDE_CODE_MAX_OUTPUT_TOKENS`](/docs/es/env-vars) por encima del presupuesto de pensamiento

1051* Consulte [Extended thinking](/es/model-config#extended-thinking) para ver cómo el presupuesto interactúa con la longitud de salida1051* Consulte [Extended thinking](/docs/es/model-config#extended-thinking) para ver cómo el presupuesto interactúa con la longitud de salida

1052 1052 

1053<h3 id="tool-use-or-thinking-block-mismatch">1053<h3 id="tool-use-or-thinking-block-mismatch">

1054 Desajuste de bloque de uso de herramienta o pensamiento1054 Desajuste de bloque de uso de herramienta o pensamiento


1066 1066 

1067**Qué hacer:**1067**Qué hacer:**

1068 1068 

1069* {/* max-version: 2.1.155 */}Si está utilizando Opus 4.7 u Opus 4.8, ejecute `claude update` primero. Las versiones anteriores a v2.1.156 pueden desencadenar este error durante el uso normal de herramientas, y `/rewind` no lo borra.1069* Si está utilizando Opus 4.7 u Opus 4.8, ejecute `claude update` primero. Las versiones anteriores a v2.1.156 pueden desencadenar este error durante el uso normal de herramientas, y `/rewind` no lo borra.

1070* Ejecute `/rewind`, o presione Esc dos veces, para retroceder a un punto de control antes del turno corrupto y continuar desde allí. Consulte [Checkpointing](/es/checkpointing) para ver cómo se crean y restauran los puntos de control.1070* Ejecute `/rewind`, o presione Esc dos veces, para retroceder a un punto de control antes del turno corrupto y continuar desde allí. Consulte [Checkpointing](/docs/es/checkpointing) para ver cómo se crean y restauran los puntos de control.

1071 1071 

1072<h3 id="usage-policy-refusal">1072<h3 id="usage-policy-refusal">

1073 Rechazo de Política de Uso1073 Rechazo de Política de Uso


1079API Error: Claude Code is unable to respond to this request, which appears to violate our Usage Policy (https://www.anthropic.com/legal/aup). Please double press esc to edit your last message or start a new session for Claude Code to assist with a different task.1079API Error: Claude Code is unable to respond to this request, which appears to violate our Usage Policy (https://www.anthropic.com/legal/aup). Please double press esc to edit your last message or start a new session for Claude Code to assist with a different task.

1080```1080```

1081 1081 

1082La verificación evalúa la conversación completa, no solo su prompt más reciente, por lo que enviar un nuevo mensaje en la misma sesión generalmente reactiva el mismo rechazo. Lo mismo se aplica después de salir y reabrir la sesión con `--continue` o `--resume`, ya que la transcripción en disco aún contiene el contenido que desencadena. En [Amazon Bedrock](/es/amazon-bedrock), [Google Cloud's Agent Platform](/es/google-vertex-ai) y [Microsoft Foundry](/es/microsoft-foundry), este mensaje también cubre solicitudes que las medidas de seguridad del modelo marcaron como un tema de ciberseguridad. Consulte [Safety measures flagged a cybersecurity topic](#safety-measures-flagged-a-cybersecurity-topic).1082La verificación evalúa la conversación completa, no solo su prompt más reciente, por lo que enviar un nuevo mensaje en la misma sesión generalmente reactiva el mismo rechazo. Lo mismo se aplica después de salir y reabrir la sesión con `--continue` o `--resume`, ya que la transcripción en disco aún contiene el contenido que desencadena. En [Amazon Bedrock](/docs/es/amazon-bedrock), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai) y [Microsoft Foundry](/docs/es/microsoft-foundry), este mensaje también cubre solicitudes que las medidas de seguridad del modelo marcaron como un tema de ciberseguridad. Consulte [Safety measures flagged a cybersecurity topic](#safety-measures-flagged-a-cybersecurity-topic).

1083 1083 

1084**Qué hacer:**1084**Qué hacer:**

1085 1085 

1086* Presione Esc dos veces o ejecute `/rewind` para retroceder a un punto de control antes del turno que desencadenó el rechazo, luego reformule o tome un enfoque diferente. Consulte [Checkpointing](/es/checkpointing).1086* Presione Esc dos veces o ejecute `/rewind` para retroceder a un punto de control antes del turno que desencadenó el rechazo, luego reformule o tome un enfoque diferente. Consulte [Checkpointing](/docs/es/checkpointing).

1087* Si no puede identificar qué turno lo causó, ejecute `/clear` para iniciar una conversación nueva en el mismo proyecto. Su conversación anterior se conserva en disco y permanece disponible en `/resume`.1087* Si no puede identificar qué turno lo causó, ejecute `/clear` para iniciar una conversación nueva en el mismo proyecto. Su conversación anterior se conserva en disco y permanece disponible en `/resume`.

1088* En [modo no interactivo](/es/headless) (`-p`), donde rewind no está disponible, reintente con un prompt reformulado en una sesión nueva sin `--continue`. Las verificaciones de política varían según el modelo, por lo que cambiar a un modelo diferente con `--model` también puede resolver el rechazo en algunos casos.1088* En [modo no interactivo](/docs/es/headless) (`-p`), donde rewind no está disponible, reintente con un prompt reformulado en una sesión nueva sin `--continue`. Las verificaciones de política varían según el modelo, por lo que cambiar a un modelo diferente con `--model` también puede resolver el rechazo en algunos casos.

1089 1089 

1090<h3 id="safety-measures-flagged-a-cybersecurity-topic">1090<h3 id="safety-measures-flagged-a-cybersecurity-topic">

1091 Las medidas de seguridad marcaron un tema de ciberseguridad1091 Las medidas de seguridad marcaron un tema de ciberseguridad


1103 1103 

1104Lo que ve depende de su proveedor y modo:1104Lo que ve depende de su proveedor y modo:

1105 1105 

1106* En [Amazon Bedrock](/es/amazon-bedrock), [Google Cloud's Agent Platform](/es/google-vertex-ai) y [Microsoft Foundry](/es/microsoft-foundry), una marca de ciberseguridad produce el mensaje de [rechazo de Política de Uso](#usage-policy-refusal) en su lugar.1106* En [Amazon Bedrock](/docs/es/amazon-bedrock), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai) y [Microsoft Foundry](/docs/es/microsoft-foundry), una marca de ciberseguridad produce el mensaje de [rechazo de Política de Uso](#usage-policy-refusal) en su lugar.

1107* [Modo no interactivo](/es/headless) omite la oración `/feedback`.1107* [Modo no interactivo](/docs/es/headless) omite la oración `/feedback`.

1108 1108 

1109{/* max-version: 2.1.202 */}Antes de v2.1.203, el mensaje decía `<model>'s safeguards flagged this message for a cybersecurity topic. If your work requires this access, you can apply for an exemption:` seguido de un enlace de formulario de exención.1109Antes de v2.1.203, el mensaje decía `<model>'s safeguards flagged this message for a cybersecurity topic. If your work requires this access, you can apply for an exemption:` seguido de un enlace de formulario de exención.

1110 1110 

1111**Qué hacer:**1111**Qué hacer:**

1112 1112 

1113* Si su trabajo requiere este contenido, solicite acceso a través del [Cyber Verification Program](https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude)1113* Si su trabajo requiere este contenido, solicite acceso a través del [Cyber Verification Program](https://support.claude.com/en/articles/14604842-real-time-cyber-safeguards-on-claude)

1114* Si su solicitud no era sobre un tema de ciberseguridad, ejecute `/feedback` para reportar el falso positivo1114* Si su solicitud no era sobre un tema de ciberseguridad, ejecute `/feedback` para reportar el falso positivo

1115* Para continuar trabajando en la misma sesión, presione Esc dos veces o ejecute `/rewind` para retroceder a un punto de control antes del turno que desencadenó la marca, luego tome un enfoque diferente. Consulte [Checkpointing](/es/checkpointing).1115* Para continuar trabajando en la misma sesión, presione Esc dos veces o ejecute `/rewind` para retroceder a un punto de control antes del turno que desencadenó la marca, luego tome un enfoque diferente. Consulte [Checkpointing](/docs/es/checkpointing).

1116 1116 

1117<h2 id="installation-errors">1117<h2 id="installation-errors">

1118 Errores de instalación1118 Errores de instalación

1119</h2>1119</h2>

1120 1120 

1121Estos errores aparecen durante la instalación o actualización de Claude Code, desde el [script de instalación](/es/setup#install-claude-code), `claude install`, o `claude update`. Para problemas de `command not found`, PATH, permisos y TLS durante la configuración, consulte [Solucionar problemas de instalación e inicio de sesión](/es/troubleshoot-install).1121Estos errores aparecen durante la instalación o actualización de Claude Code, desde el [script de instalación](/docs/es/setup#install-claude-code), `claude install`, o `claude update`. Para problemas de `command not found`, PATH, permisos y TLS durante la configuración, consulte [Solucionar problemas de instalación e inicio de sesión](/docs/es/troubleshoot-install).

1122 1122 

1123<h3 id="installation-was-killed-before-it-could-finish">1123<h3 id="installation-was-killed-before-it-could-finish">

1124 La instalación fue interrumpida antes de poder finalizar1124 La instalación fue interrumpida antes de poder finalizar


1136**Qué hacer:**1136**Qué hacer:**

1137 1137 

1138* Detenga otros procesos para liberar memoria, luego vuelva a ejecutar el instalador1138* Detenga otros procesos para liberar memoria, luego vuelva a ejecutar el instalador

1139* Agregue espacio de intercambio o muévase a una instancia más grande. Consulte [Instalación interrumpida en servidores Linux con poca memoria](/es/troubleshoot-install#install-killed-on-low-memory-linux-servers) para los comandos del archivo de intercambio.1139* Agregue espacio de intercambio o muévase a una instancia más grande. Consulte [Instalación interrumpida en servidores Linux con poca memoria](/docs/es/troubleshoot-install#install-killed-on-low-memory-linux-servers) para los comandos del archivo de intercambio.

1140 1140 

1141<h3 id="the-connection-dropped-while-downloading-the-update">1141<h3 id="the-connection-dropped-while-downloading-the-update">

1142 La conexión se interrumpió mientras se descargaba la actualización1142 La conexión se interrumpió mientras se descargaba la actualización

1143</h3>1143</h3>

1144 1144 

1145La conexión al servidor de descarga se cerró mientras `claude install`, `claude update`, o el [actualizador automático](/es/setup#auto-updates) estaba obteniendo el binario de Claude Code, y los reintentos no se recuperaron. Claude Code reintenta la descarga cuando la conexión se interrumpe, la transferencia se detiene o el archivo descargado falla su suma de verificación, hasta tres intentos en total. Un error HTTP completado, como un 404, no se reintenta porque el servidor ya respondió. {/* min-version: 2.1.202 */}Antes de v2.1.202, una única conexión interrumpida fallaba la descarga inmediatamente con el error simple `aborted` en lugar de reintentar.1145La conexión al servidor de descarga se cerró mientras `claude install`, `claude update`, o el [actualizador automático](/docs/es/setup#auto-updates) estaba obteniendo el binario de Claude Code, y los reintentos no se recuperaron. Claude Code reintenta la descarga cuando la conexión se interrumpe, la transferencia se detiene o el archivo descargado falla su suma de verificación, hasta tres intentos en total. Un error HTTP completado, como un 404, no se reintenta porque el servidor ya respondió. Antes de v2.1.202, una única conexión interrumpida fallaba la descarga inmediatamente con el error simple `aborted` en lugar de reintentar.

1146 1146 

1147```text theme={null}1147```text theme={null}

1148The connection dropped while downloading the update (attempt 3/3: aborted). Check your network — proxies sometimes cut off large downloads.1148The connection dropped while downloading the update (attempt 3/3: aborted). Check your network — proxies sometimes cut off large downloads.


1157**Qué hacer:**1157**Qué hacer:**

1158 1158 

1159* Ejecute `claude update` nuevamente. En una red de otro modo saludable, la descarga generalmente tiene éxito en la siguiente ejecución. Para el mensaje agotado, ejecútelo nuevamente desde una red más rápida o menos limitada.1159* Ejecute `claude update` nuevamente. En una red de otro modo saludable, la descarga generalmente tiene éxito en la siguiente ejecución. Para el mensaje agotado, ejecútelo nuevamente desde una red más rápida o menos limitada.

1160* Si su red requiere un proxy, establezca `HTTPS_PROXY` antes de ejecutar el instalador o `claude update`. Consulte [Verificar conectividad de red](/es/troubleshoot-install#check-network-connectivity).1160* Si su red requiere un proxy, establezca `HTTPS_PROXY` antes de ejecutar el instalador o `claude update`. Consulte [Verificar conectividad de red](/docs/es/troubleshoot-install#check-network-connectivity).

1161* Si un proxy corporativo sigue cerrando la transferencia, pida a su equipo de red que permita la descarga completa desde `downloads.claude.ai`. Consulte [Requisitos de acceso a la red](/es/network-config#network-access-requirements).1161* Si un proxy corporativo sigue cerrando la transferencia, pida a su equipo de red que permita la descarga completa desde `downloads.claude.ai`. Consulte [Requisitos de acceso a la red](/docs/es/network-config#network-access-requirements).

1162* Ejecute `claude doctor` desde su shell para diagnósticos de instalación1162* Ejecute `claude doctor` desde su shell para diagnósticos de instalación

1163 1163 

1164<h2 id="command-line-errors">1164<h2 id="command-line-errors">


1171 Conflicto entre --bg y --print1171 Conflicto entre --bg y --print

1172</h3>1172</h3>

1173 1173 

1174Este mensaje requiere Claude Code v2.1.198 o posterior. Combinó `--bg` con `-p` o `--print` en la misma invocación de `claude`. `--bg` inicia una [sesión en segundo plano](/es/agent-view#from-your-shell) a la que se conecta posteriormente con `claude agents`, mientras que `--print` se ejecuta [de forma no interactiva](/es/headless) y nunca inicia la sesión interactiva a la que se conecta `claude agents`. Antes de v2.1.198, esta combinación creaba silenciosamente un trabajo en segundo plano que nunca podía conectarse.1174Este mensaje requiere Claude Code v2.1.198 o posterior. Combinó `--bg` con `-p` o `--print` en la misma invocación de `claude`. `--bg` inicia una [sesión en segundo plano](/docs/es/agent-view#from-your-shell) a la que se conecta posteriormente con `claude agents`, mientras que `--print` se ejecuta [de forma no interactiva](/docs/es/headless) y nunca inicia la sesión interactiva a la que se conecta `claude agents`. Antes de v2.1.198, esta combinación creaba silenciosamente un trabajo en segundo plano que nunca podía conectarse.

1175 1175 

1176```text theme={null}1176```text theme={null}

1177--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.1177--bg and --print conflict: --print never starts the interactive session that `claude agents` attaches to, so the job would be unattachable. The prompt is the positional — drop --print: `claude --bg '<task>'`.


1179 1179 

1180**Qué hacer:**1180**Qué hacer:**

1181 1181 

1182* Elimine `-p` o `--print`. `--bg` toma el prompt como su argumento posicional, por lo que `claude --bg "<task>"` es el comando completo. Consulte [Dispatch new agents from your shell](/es/agent-view#from-your-shell).1182* Elimine `-p` o `--print`. `--bg` toma el prompt como su argumento posicional, por lo que `claude --bg "<task>"` es el comando completo. Consulte [Dispatch new agents from your shell](/docs/es/agent-view#from-your-shell).

1183* Para ejecutar el prompt de forma no interactiva e imprimir el resultado en lugar de crear una sesión en segundo plano, elimine `--bg` y ejecute `claude -p "<task>"`1183* Para ejecutar el prompt de forma no interactiva e imprimir el resultado en lugar de crear una sesión en segundo plano, elimine `--bg` y ejecute `claude -p "<task>"`

1184 1184 

1185<h3 id="the-json-schema-value-is-not-a-valid-json-schema">1185<h3 id="the-json-schema-value-is-not-a-valid-json-schema">

1186 El valor de --json-schema no es un JSON Schema válido1186 El valor de --json-schema no es un JSON Schema válido

1187</h3>1187</h3>

1188 1188 

1189El esquema que pasó a [`--json-schema`](/es/cli-reference#cli-flags) en [modo no interactivo](/es/headless#get-structured-output) falló en la compilación del JSON Schema, por lo que `claude` sale con código 1 en lugar de ejecutar el prompt. Antes de v2.1.205, un esquema inválido producía salida no estructurada sin error, y cualquier esquema que usara la palabra clave `format` se trataba como inválido.1189El esquema que pasó a [`--json-schema`](/docs/es/cli-reference#cli-flags) en [modo no interactivo](/docs/es/headless#get-structured-output) falló en la compilación del JSON Schema, por lo que `claude` sale con código 1 en lugar de ejecutar el prompt. Antes de v2.1.205, un esquema inválido producía salida no estructurada sin error, y cualquier esquema que usara la palabra clave `format` se trataba como inválido.

1190 1190 

1191```text theme={null}1191```text theme={null}

1192Error: --json-schema is not a valid JSON Schema: data/type must be equal to one of the allowed values1192Error: --json-schema is not a valid JSON Schema: data/type must be equal to one of the allowed values


1200 1200 

1201* Corrija la parte del esquema que nombra el diagnóstico y luego vuelva a ejecutar el comando1201* Corrija la parte del esquema que nombra el diagnóstico y luego vuelva a ejecutar el comando

1202* Si el diagnóstico es `schema too large`, reduzca el anidamiento del esquema y la reutilización de `$ref`1202* Si el diagnóstico es `schema too large`, reduzca el anidamiento del esquema y la reutilización de `$ref`

1203* Consulte [Get structured output](/es/headless#get-structured-output) para un esquema y comando que funcionen1203* Consulte [Get structured output](/docs/es/headless#get-structured-output) para un esquema y comando que funcionen

1204 1204 

1205<h3 id="could-not-import-a-server-from-claude-desktop">1205<h3 id="could-not-import-a-server-from-claude-desktop">

1206 No se pudo importar un servidor desde Claude Desktop1206 No se pudo importar un servidor desde Claude Desktop


1212Could not import my server: Invalid name my server. Names can only contain letters, numbers, hyphens, and underscores.1212Could not import my server: Invalid name my server. Names can only contain letters, numbers, hyphens, and underscores.

1213```1213```

1214 1214 

1215El texto después del nombre del servidor es la razón. La más común es la comprobación de nombre: Claude Desktop permite caracteres en nombres de servidores, como espacios y puntos, que `claude mcp` restringe a letras, números, guiones y guiones bajos. Otras razones incluyen una configuración de servidor que falla en la validación y un servidor bloqueado por la [política MCP](/es/managed-mcp) de su organización.1215El texto después del nombre del servidor es la razón. La más común es la comprobación de nombre: Claude Desktop permite caracteres en nombres de servidores, como espacios y puntos, que `claude mcp` restringe a letras, números, guiones y guiones bajos. Otras razones incluyen una configuración de servidor que falla en la validación y un servidor bloqueado por la [política MCP](/docs/es/managed-mcp) de su organización.

1216 1216 

1217**Qué hacer:**1217**Qué hacer:**

1218 1218 

1219* Cambie el nombre del servidor en `claude_desktop_config.json` para usar solo letras, números, guiones y guiones bajos, luego ejecute `claude mcp add-from-claude-desktop` nuevamente1219* Cambie el nombre del servidor en `claude_desktop_config.json` para usar solo letras, números, guiones y guiones bajos, luego ejecute `claude mcp add-from-claude-desktop` nuevamente

1220* Agregue ese servidor directamente con `claude mcp add` o `claude mcp add-json` bajo un nombre válido. Consulte [Import MCP servers from Claude Desktop](/es/mcp#import-mcp-servers-from-claude-desktop).1220* Agregue ese servidor directamente con `claude mcp add` o `claude mcp add-json` bajo un nombre válido. Consulte [Import MCP servers from Claude Desktop](/docs/es/mcp#import-mcp-servers-from-claude-desktop).

1221 1221 

1222<h3 id="mcp-permission-prompt-tool-not-found">1222<h3 id="mcp-permission-prompt-tool-not-found">

1223 Herramienta de solicitud de permiso MCP no encontrada1223 Herramienta de solicitud de permiso MCP no encontrada

1224</h3>1224</h3>

1225 1225 

1226La herramienta que pasó a [`--permission-prompt-tool`](/es/cli-reference#cli-flags) no estaba entre las herramientas MCP conectadas cuando la ejecución necesitó por primera vez una decisión de permiso, ya sea porque su servidor nunca se conectó o porque ningún servidor conectado expone una herramienta con ese nombre. Claude Code aún envía su prompt: la ejecución [no interactiva](/es/headless) sale con este error, y código de salida 1, en la primera llamada de herramienta que necesita aprobación, por lo que no produce respuesta aunque la solicitud se haya realizado. Antes del primer prompt, Claude Code espera hasta el tiempo de espera de conexión por servidor de 30 segundos establecido por [`MCP_TIMEOUT`](/es/env-vars) para que ese servidor se conecte. {/* min-version: 2.1.206 */}Antes de v2.1.206, el inicio no esperaba a que el servidor terminara de conectarse, por lo que un servidor que se iniciaba lentamente pero estaba en buen estado también producía este error.1226La herramienta que pasó a [`--permission-prompt-tool`](/docs/es/cli-reference#cli-flags) no estaba entre las herramientas MCP conectadas cuando la ejecución necesitó por primera vez una decisión de permiso, ya sea porque su servidor nunca se conectó o porque ningún servidor conectado expone una herramienta con ese nombre. Claude Code aún envía su prompt: la ejecución [no interactiva](/docs/es/headless) sale con este error, y código de salida 1, en la primera llamada de herramienta que necesita aprobación, por lo que no produce respuesta aunque la solicitud se haya realizado. Antes del primer prompt, Claude Code espera hasta el tiempo de espera de conexión por servidor de 30 segundos establecido por [`MCP_TIMEOUT`](/docs/es/env-vars) para que ese servidor se conecte. Antes de v2.1.206, el inicio no esperaba a que el servidor terminara de conectarse, por lo que un servidor que se iniciaba lentamente pero estaba en buen estado también producía este error.

1227 1227 

1228```text theme={null}1228```text theme={null}

1229Error: MCP tool mcp__permissions__approve (passed via --permission-prompt-tool) not found. Available MCP tools: none1229Error: MCP tool mcp__permissions__approve (passed via --permission-prompt-tool) not found. Available MCP tools: none


1235 1235 

1236* Compruebe que el servidor se inicia y permanece conectado: ejecute `claude mcp list` en el mismo directorio y confirme que el servidor aparece como conectado1236* Compruebe que el servidor se inicia y permanece conectado: ejecute `claude mcp list` en el mismo directorio y confirme que el servidor aparece como conectado

1237* Confirme que el nombre de la herramienta coincida con el nombre `mcp__<server>__<tool>` que expone el servidor1237* Confirme que el nombre de la herramienta coincida con el nombre `mcp__<server>__<tool>` que expone el servidor

1238* Si el servidor necesita más de 30 segundos para iniciarse, aumente [`MCP_TIMEOUT`](/es/env-vars)1238* Si el servidor necesita más de 30 segundos para iniciarse, aumente [`MCP_TIMEOUT`](/docs/es/env-vars)

1239 1239 

1240<h2 id="plugin-errors">1240<h2 id="plugin-errors">

1241 Errores de plugins1241 Errores de plugins

1242</h2>1242</h2>

1243 1243 

1244Estos errores provienen de la configuración de [plugins](/es/plugins) y [marketplace](/es/plugin-marketplaces). Para problemas de plugins que no produzcan uno de los mensajes en esta página, como una URL de marketplace que no carga o un plugin que se instala pero no aparece, consulte [Solución de problemas de plugins](/es/discover-plugins#troubleshooting).1244Estos errores provienen de la configuración de [plugins](/docs/es/plugins) y [marketplace](/docs/es/plugin-marketplaces). Para problemas de plugins que no produzcan uno de los mensajes en esta página, como una URL de marketplace que no carga o un plugin que se instala pero no aparece, consulte [Solución de problemas de plugins](/docs/es/discover-plugins#troubleshooting).

1245 1245 

1246<h3 id="marketplace-is-registered-from-an-untrusted-source">1246<h3 id="marketplace-is-registered-from-an-untrusted-source">

1247 Marketplace registrado desde una fuente no confiable1247 Marketplace registrado desde una fuente no confiable

1248</h3>1248</h3>

1249 1249 

1250El marketplace está registrado bajo un nombre que está [reservado para marketplaces oficiales de Anthropic](/es/plugin-marketplaces#marketplace-schema), pero su fuente registrada no es un repositorio de GitHub de `anthropics`. Claude Code vuelve a verificar los nombres reservados cada vez que carga o actualiza un marketplace, por lo que el marketplace y los plugins instalados desde él dejan de cargarse. Antes de v2.1.205, el nombre se verificaba solo cuando se agregaba el marketplace, por lo que una entrada registrada antes de que su nombre se reservara seguía cargándose.1250El marketplace está registrado bajo un nombre que está [reservado para marketplaces oficiales de Anthropic](/docs/es/plugin-marketplaces#marketplace-schema), pero su fuente registrada no es un repositorio de GitHub de `anthropics`. Claude Code vuelve a verificar los nombres reservados cada vez que carga o actualiza un marketplace, por lo que el marketplace y los plugins instalados desde él dejan de cargarse. Antes de v2.1.205, el nombre se verificaba solo cuando se agregaba el marketplace, por lo que una entrada registrada antes de que su nombre se reservara seguía cargándose.

1251 1251 

1252```text theme={null}1252```text theme={null}

1253Marketplace "claude-community" is registered from an untrusted source: The name 'claude-community' is reserved for official Anthropic marketplaces. Only repositories from 'github.com/anthropics/' can use this name. To fix it, remove the marketplace and re-add it from the official source.1253Marketplace "claude-community" is registered from an untrusted source: The name 'claude-community' is reserved for official Anthropic marketplaces. Only repositories from 'github.com/anthropics/' can use this name. To fix it, remove the marketplace and re-add it from the official source.


1257 1257 

1258* Ejecute `claude plugin marketplace remove <name>`, luego agregue el marketplace nuevamente desde el repositorio oficial `github.com/anthropics`1258* Ejecute `claude plugin marketplace remove <name>`, luego agregue el marketplace nuevamente desde el repositorio oficial `github.com/anthropics`

1259* Si publica un marketplace de terceros que utilizó el nombre antes de que se reservara, cámbielo de nombre y pida a los usuarios que lo vuelvan a agregar desde su fuente1259* Si publica un marketplace de terceros que utilizó el nombre antes de que se reservara, cámbielo de nombre y pida a los usuarios que lo vuelvan a agregar desde su fuente

1260* Consulte la lista de nombres reservados en [Marketplace schema](/es/plugin-marketplaces#marketplace-schema)1260* Consulte la lista de nombres reservados en [Marketplace schema](/docs/es/plugin-marketplaces#marketplace-schema)

1261 1261 

1262<h3 id="plugin-command-references-user-config">1262<h3 id="plugin-command-references-user-config">

1263 Plugin command references user\_config in a shell command1263 Plugin command references user\_config in a shell command

1264</h3>1264</h3>

1265 1265 

1266Un hook de plugin, [monitor](/es/plugins-reference#monitors), o comando MCP [`headersHelper`](/es/mcp#use-dynamic-headers-for-custom-authentication) hace referencia a una [opción de plugin](/es/plugins-reference#user-configuration) `${user_config.KEY}`, y la cadena sustituida se pasaría a un shell. Un valor configurado que contenga `$(...)`, comillas invertidas o `;` se ejecutaría como código allí, por lo que Claude Code se niega a iniciar el componente en lugar de sustituir el valor. La verificación se ejecuta en la plantilla de comando, por lo que el error aparece incluso cuando aún no hay ningún valor configurado. Antes de v2.1.207, el valor se sustituía en el comando del shell.1266Un hook de plugin, [monitor](/docs/es/plugins-reference#monitors), o comando MCP [`headersHelper`](/docs/es/mcp#use-dynamic-headers-for-custom-authentication) hace referencia a una [opción de plugin](/docs/es/plugins-reference#user-configuration) `${user_config.KEY}`, y la cadena sustituida se pasaría a un shell. Un valor configurado que contenga `$(...)`, comillas invertidas o `;` se ejecutaría como código allí, por lo que Claude Code se niega a iniciar el componente en lugar de sustituir el valor. La verificación se ejecuta en la plantilla de comando, por lo que el error aparece incluso cuando aún no hay ningún valor configurado. Antes de v2.1.207, el valor se sustituía en el comando del shell.

1267 1267 

1268La redacción depende de qué superficie hizo referencia a la opción. Un hook de forma de shell informa:1268La redacción depende de qué superficie hizo referencia a la opción. Un hook de forma de shell informa:

1269 1269 


1285 1285 

1286**Qué hacer:**1286**Qué hacer:**

1287 1287 

1288* Para un hook, agregue una matriz `args` para que se ejecute en [forma exec](/es/hooks#exec-form-and-shell-form), donde cada `${user_config.KEY}` se convierte en un argumento sin shell en el medio. O elimine la referencia y lea la variable de entorno `$CLAUDE_PLUGIN_OPTION_<KEY>` dentro del script1288* Para un hook, agregue una matriz `args` para que se ejecute en [forma exec](/docs/es/hooks#exec-form-and-shell-form), donde cada `${user_config.KEY}` se convierte en un argumento sin shell en el medio. O elimine la referencia y lea la variable de entorno `$CLAUDE_PLUGIN_OPTION_<KEY>` dentro del script

1289* Para un monitor, elimine la referencia y haga que el script del monitor lea el valor desde un archivo de configuración1289* Para un monitor, elimine la referencia y haga que el script del monitor lea el valor desde un archivo de configuración

1290* Para un `headersHelper`, mueva `${user_config.KEY}` al campo `headers` del servidor, que no se analiza como shell, o lea el valor dentro del script del helper1290* Para un `headersHelper`, mueva `${user_config.KEY}` al campo `headers` del servidor, que no se analiza como shell, o lea el valor dentro del script del helper

1291 1291 


1299 El agente se generaría con cero herramientas1299 El agente se generaría con cero herramientas

1300</h3>1300</h3>

1301 1301 

1302Nada en la [lista de `tools` de un subagente](/es/sub-agents#supported-frontmatter-fields) se resolvió en una herramienta, por lo que Claude Code se niega a lanzar el subagente en lugar de iniciar uno que no pueda actuar. El mensaje agrupa las entradas por la razón por la que no se resolvieron: no es una herramienta reconocida, una herramienta que no está disponible para subagentes, o reconocida pero sin coincidencia con ninguna herramienta en la sesión actual. Omitir el campo `tools` nunca activa este rechazo. Un patrón de servidor MCP como `mcp__github__*` no está exento: cuando ninguna herramienta conectada proviene de ese servidor, el lanzamiento se rechaza con el patrón en el grupo sin coincidencias. Antes de v2.1.208, el subagente se lanzaba sin herramientas y devolvía un resultado vacío o confuso.1302Nada en la [lista de `tools` de un subagente](/docs/es/sub-agents#supported-frontmatter-fields) se resolvió en una herramienta, por lo que Claude Code se niega a lanzar el subagente en lugar de iniciar uno que no pueda actuar. El mensaje agrupa las entradas por la razón por la que no se resolvieron: no es una herramienta reconocida, una herramienta que no está disponible para subagentes, o reconocida pero sin coincidencia con ninguna herramienta en la sesión actual. Omitir el campo `tools` nunca activa este rechazo. Un patrón de servidor MCP como `mcp__github__*` no está exento: cuando ninguna herramienta conectada proviene de ese servidor, el lanzamiento se rechaza con el patrón en el grupo sin coincidencias. Antes de v2.1.208, el subagente se lanzaba sin herramientas y devolvía un resultado vacío o confuso.

1303 1303 

1304```text theme={null}1304```text theme={null}

1305Agent 'code-reviewer' would be spawned with zero tools — refusing. Its tools list resolved to nothing: unrecognized [Grpe]. Fix the agent's tools frontmatter or pass a different subagent_type.1305Agent 'code-reviewer' would be spawned with zero tools — refusing. Its tools list resolved to nothing: unrecognized [Grpe]. Fix the agent's tools frontmatter or pass a different subagent_type.


1307 1307 

1308**Qué hacer:**1308**Qué hacer:**

1309 1309 

1310* Corrija cada entrada que el error nombra contra las [herramientas disponibles para subagentes](/es/sub-agents#available-tools)1310* Corrija cada entrada que el error nombra contra las [herramientas disponibles para subagentes](/docs/es/sub-agents#available-tools)

1311* Elimine las entradas de herramientas que la sesión no tiene, como herramientas MCP de un servidor que no está conectado1311* Elimine las entradas de herramientas que la sesión no tiene, como herramientas MCP de un servidor que no está conectado

1312* Para dar al subagente todas las herramientas que tiene el padre, elimine el campo `tools` en lugar de listar herramientas1312* Para dar al subagente todas las herramientas que tiene el padre, elimine el campo `tools` en lugar de listar herramientas

1313 1313 


1315 El archivo está cubierto por una regla de denegación de Read1315 El archivo está cubierto por una regla de denegación de Read

1316</h3>1316</h3>

1317 1317 

1318La herramienta Edit fue llamada en una ruta coincidente con una [regla de denegación de `Read`](/es/permissions#read-and-edit), incluyendo la creación de un nuevo archivo en esa ruta. Editar reescribe contenido que Claude debe poder leer de nuevo, por lo que la llamada se rechaza antes de cualquier acceso a archivos. La regla bloquea solo la herramienta Edit: Write y NotebookEdit no están cubiertos por reglas de denegación de `Read`. Antes de v2.1.208, solo una regla de denegación de `Edit` bloqueaba ediciones, y una regla de denegación de `Read` sola no lo hacía.1318La herramienta Edit fue llamada en una ruta coincidente con una [regla de denegación de `Read`](/docs/es/permissions#read-and-edit), incluyendo la creación de un nuevo archivo en esa ruta. Editar reescribe contenido que Claude debe poder leer de nuevo, por lo que la llamada se rechaza antes de cualquier acceso a archivos. La regla bloquea solo la herramienta Edit: Write y NotebookEdit no están cubiertos por reglas de denegación de `Read`. Antes de v2.1.208, solo una regla de denegación de `Edit` bloqueaba ediciones, y una regla de denegación de `Read` sola no lo hacía.

1319 1319 

1320```text theme={null}1320```text theme={null}

1321File is covered by a Read deny rule in your permission settings and cannot be edited.1321File is covered by a Read deny rule in your permission settings and cannot be edited.


1323 1323 

1324**Qué hacer:**1324**Qué hacer:**

1325 1325 

1326* Si Claude debe poder editar el archivo, elimine o reduzca la regla de denegación de `Read` en `/permissions` o en [configuración](/es/settings#permission-settings)1326* Si Claude debe poder editar el archivo, elimine o reduzca la regla de denegación de `Read` en `/permissions` o en [configuración](/docs/es/settings#permission-settings)

1327* Si el archivo debe permanecer intacto, mantenga la regla y agregue una regla de denegación de `Edit` para la misma ruta para que las herramientas Write y NotebookEdit también se bloqueen1327* Si el archivo debe permanecer intacto, mantenga la regla y agregue una regla de denegación de `Edit` para la misma ruta para que las herramientas Write y NotebookEdit también se bloqueen

1328 1328 

1329<h2 id="background-session-errors">1329<h2 id="background-session-errors">

1330 Errores de sesión en segundo plano1330 Errores de sesión en segundo plano

1331</h2>1331</h2>

1332 1332 

1333[Las sesiones en segundo plano](/es/agent-view) se ejecutan sin una terminal interactiva propia, por lo que los comandos que necesitan una se comportan de manera diferente allí. Estos mensajes aparecen en la transcripción de una sesión en segundo plano, en la vista de agente o después de conectarse.1333[Las sesiones en segundo plano](/docs/es/agent-view) se ejecutan sin una terminal interactiva propia, por lo que los comandos que necesitan una se comportan de manera diferente allí. Estos mensajes aparecen en la transcripción de una sesión en segundo plano, en la vista de agente o después de conectarse.

1334 1334 

1335<h3 id="commands-refused-in-a-background-session">1335<h3 id="commands-refused-in-a-background-session">

1336 Comandos rechazados en una sesión en segundo plano1336 Comandos rechazados en una sesión en segundo plano

1337</h3>1337</h3>

1338 1338 

1339Los comandos que abren un diálogo interactivo se rechazan en una sesión en segundo plano con un mensaje que nombra un formulario que funciona allí o le indica que ejecute el comando desde una terminal normal. `/install-github-app`, la lista de configuración `/mcp`, y las acciones de autenticación en el menú del servidor MCP se rechazan de esta manera. Antes de v2.1.208, abrían su diálogo dentro de la sesión en segundo plano.1339Los comandos que abren un diálogo interactivo se rechazan en una sesión en segundo plano con un mensaje que nombra un formulario que funciona allí o le indica que ejecute el comando desde una terminal normal. `/install-github-app`, la lista de configuración `/mcp`, y las acciones de autenticación en el menú del servidor MCP se rechazan de esta manera. Antes de v2.1.208, abrían su diálogo dentro de la sesión en segundo plano.

1340{/* max-version: 2.1.208 */}En v2.1.208 solamente, el selector `/model` también fue rechazado en una sesión en segundo plano, y `/upgrade` imprimió la URL de actualización en lugar de abrir un navegador.1340En v2.1.208 solamente, el selector `/model` también fue rechazado en una sesión en segundo plano, y `/upgrade` imprimió la URL de actualización en lugar de abrir un navegador.

1341 1341 

1342La redacción nombra el comando que fue rechazado. La lista de configuración `/mcp` reporta:1342La redacción nombra el comando que fue rechazado. La lista de configuración `/mcp` reporta:

1343 1343 


1354 Errores del lanzador CLAUDE\_CODE\_PROCESS\_WRAPPER1354 Errores del lanzador CLAUDE\_CODE\_PROCESS\_WRAPPER

1355</h3>1355</h3>

1356 1356 

1357[`CLAUDE_CODE_PROCESS_WRAPPER`](/es/corporate-launcher) está configurado, y su valor no se puede usar, por lo que Claude Code se niega a iniciar el proceso afectado en lugar de ejecutarlo sin el lanzador. Los problemas de configuración se reportan con un mensaje que comienza con el nombre de la variable y establece la razón, por ejemplo:1357[`CLAUDE_CODE_PROCESS_WRAPPER`](/docs/es/corporate-launcher) está configurado, y su valor no se puede usar, por lo que Claude Code se niega a iniciar el proceso afectado en lugar de ejecutarlo sin el lanzador. Los problemas de configuración se reportan con un mensaje que comienza con el nombre de la variable y establece la razón, por ejemplo:

1358 1358 

1359```text theme={null}1359```text theme={null}

1360CLAUDE_CODE_PROCESS_WRAPPER: launcher `/opt/corp/launcher` is not an executable regular file1360CLAUDE_CODE_PROCESS_WRAPPER: launcher `/opt/corp/launcher` is not an executable regular file


1364 1364 

1365**Qué hacer:**1365**Qué hacer:**

1366 1366 

1367* Establezca la variable en la ruta absoluta de un ejecutable que termine llamando a `exec "$@"`. Consulte [el contrato del lanzador](/es/corporate-launcher#the-launcher-contract) para el contrato completo1367* Establezca la variable en la ruta absoluta de un ejecutable que termine llamando a `exec "$@"`. Consulte [el contrato del lanzador](/docs/es/corporate-launcher#the-launcher-contract) para el contrato completo

1368* Verifique `/status`, que muestra el comando de lanzamiento resuelto en su entrada Self-exec y advierte cuando el servicio en segundo plano en ejecución no coincide con él, o ejecute `claude daemon status` desde un shell1368* Verifique `/status`, que muestra el comando de lanzamiento resuelto en su entrada Self-exec y advierte cuando el servicio en segundo plano en ejecución no coincide con él, o ejecute `claude daemon status` desde un shell

1369* Después de corregir el valor en el bloque `env` de [configuración](/es/corporate-launcher#set-up-the-launcher), reinicie el servicio en segundo plano con `claude daemon stop --any` para que el siguiente envío inicie uno envuelto1369* Después de corregir el valor en el bloque `env` de [configuración](/docs/es/corporate-launcher#set-up-the-launcher), reinicie el servicio en segundo plano con `claude daemon stop --any` para que el siguiente envío inicie uno envuelto

1370 1370 

1371<h2 id="configuration-warnings">1371<h2 id="configuration-warnings">

1372 Advertencias de configuración1372 Advertencias de configuración


1378 El espacio de trabajo no ha sido confiable1378 El espacio de trabajo no ha sido confiable

1379</h3>1379</h3>

1380 1380 

1381Claude Code encontró reglas `permissions.allow` o entradas `permissions.additionalDirectories` en el archivo `.claude/settings.json` o `.claude/settings.local.json` del proyecto y no las aplicó, porque [las reglas de permiso del proyecto requieren confianza del espacio de trabajo](/es/permissions#project-allow-rules-and-workspace-trust). El recuento, el nombre de la configuración y el archivo nombrado en el mensaje varían según su configuración. Las reglas `deny` y `ask` no se ven afectadas.1381Claude Code encontró reglas `permissions.allow` o entradas `permissions.additionalDirectories` en el archivo `.claude/settings.json` o `.claude/settings.local.json` del proyecto y no las aplicó, porque [las reglas de permiso del proyecto requieren confianza del espacio de trabajo](/docs/es/permissions#project-allow-rules-and-workspace-trust). El recuento, el nombre de la configuración y el archivo nombrado en el mensaje varían según su configuración. Las reglas `deny` y `ask` no se ven afectadas.

1382 1382 

1383```text theme={null}1383```text theme={null}

1384Ignoring 2 permissions.allow entries from .claude/settings.local.json: this workspace has not been trusted. Run Claude Code interactively here once and accept the trust dialog, or set projects["/Users/you/project"].hasTrustDialogAccepted: true in /Users/you/.claude.json.1384Ignoring 2 permissions.allow entries from .claude/settings.local.json: this workspace has not been trusted. Run Claude Code interactively here once and accept the trust dialog, or set projects["/Users/you/project"].hasTrustDialogAccepted: true in /Users/you/.claude.json.


1386 1386 

1387**Qué hacer:**1387**Qué hacer:**

1388 1388 

1389* Ejecute `claude` en el directorio y acepte el diálogo de confianza. {/* min-version: 2.1.200 */}El diálogo aparece incluso cuando un directorio principal ya es confiable, enumera las reglas que se están reteniendo y le permite rechazar y continuar trabajando sin ellas. Antes de v2.1.200, no aparecía ningún diálogo en esa situación, por lo que este paso no se podía completar allí.1389* Ejecute `claude` en el directorio y acepte el diálogo de confianza. El diálogo aparece incluso cuando un directorio principal ya es confiable, enumera las reglas que se están reteniendo y le permite rechazar y continuar trabajando sin ellas. Antes de v2.1.200, no aparecía ningún diálogo en esa situación, por lo que este paso no se podía completar allí.

1390* En [modo no interactivo](/es/headless) con `-p` no se muestra ningún diálogo. Establezca la entrada `hasTrustDialogAccepted` en `~/.claude.json` usando la clave exacta `projects` que imprime el mensaje.1390* En [modo no interactivo](/docs/es/headless) con `-p` no se muestra ningún diálogo. Establezca la entrada `hasTrustDialogAccepted` en `~/.claude.json` usando la clave exacta `projects` que imprime el mensaje.

1391* {/* min-version: 2.1.200 */}Si el mensaje nombra `.claude/settings.local.json` e inició Claude Code fuera de un repositorio git o en su directorio de inicio, actualice a v2.1.200 o posterior. Las versiones 2.1.196 a 2.1.199 trataron su propio `.claude/settings.local.json` como suministrado por el repositorio en esos espacios de trabajo. {/* min-version: 2.1.207 */}En v2.1.207 y posterior, actualizar no es suficiente fuera de un repositorio git si no ha confiado en la carpeta: determinar que una carpeta no está dentro de un repositorio ejecuta git, y Claude Code ejecuta esa verificación solo después de que acepte el diálogo de confianza, así que use el primer paso. Su directorio de inicio y cualquier otro [directorio de configuración](/es/permissions#project-allow-rules-and-workspace-trust) están exentos y no esperan el diálogo. Consulte [Reglas de permiso del proyecto y confianza del espacio de trabajo](/es/permissions#project-allow-rules-and-workspace-trust).1391* Si el mensaje nombra `.claude/settings.local.json` e inició Claude Code fuera de un repositorio git o en su directorio de inicio, actualice a v2.1.200 o posterior. Las versiones 2.1.196 a 2.1.199 trataron su propio `.claude/settings.local.json` como suministrado por el repositorio en esos espacios de trabajo. En v2.1.207 y posterior, actualizar no es suficiente fuera de un repositorio git si no ha confiado en la carpeta: determinar que una carpeta no está dentro de un repositorio ejecuta git, y Claude Code ejecuta esa verificación solo después de que acepte el diálogo de confianza, así que use el primer paso. Su directorio de inicio y cualquier otro [directorio de configuración](/docs/es/permissions#project-allow-rules-and-workspace-trust) están exentos y no esperan el diálogo. Consulte [Reglas de permiso del proyecto y confianza del espacio de trabajo](/docs/es/permissions#project-allow-rules-and-workspace-trust).

1392 1392 

1393<h2 id="responses-seem-lower-quality-than-usual">1393<h2 id="responses-seem-lower-quality-than-usual">

1394 Las respuestas parecen de menor calidad que lo habitual1394 Las respuestas parecen de menor calidad que lo habitual


1396 1396 

1397Si las respuestas de Claude parecen menos capaces de lo que espera pero no se muestra ningún error, la causa suele ser el estado de la conversación en lugar del modelo en sí. Claude Code no cambia silenciosamente las versiones del modelo. Puede cambiar a un modelo de respaldo en tres casos específicos:1397Si las respuestas de Claude parecen menos capaces de lo que espera pero no se muestra ningún error, la causa suele ser el estado de la conversación en lugar del modelo en sí. Claude Code no cambia silenciosamente las versiones del modelo. Puede cambiar a un modelo de respaldo en tres casos específicos:

1398 1398 

1399* Un [`--fallback-model`](/es/cli-reference#cli-flags) configurado toma el control después de un error de disponibilidad, solo para ese turno, con un aviso en la transcripción1399* Un [`--fallback-model`](/docs/es/cli-reference#cli-flags) configurado toma el control después de un error de disponibilidad, solo para ese turno, con un aviso en la transcripción

1400* Una verificación de inicio de Amazon Bedrock o de la plataforma de agentes de Google Cloud encuentra que su modelo predeterminado no está disponible1400* Una verificación de inicio de Amazon Bedrock o de la plataforma de agentes de Google Cloud encuentra que su modelo predeterminado no está disponible

1401* El [respaldo automático de modelo](/es/model-config#automatic-model-fallback) en Fable 5 mueve la sesión al modelo Opus predeterminado y muestra un aviso en la transcripción1401* El [respaldo automático de modelo](/docs/es/model-config#automatic-model-fallback) en Fable 5 mueve la sesión al modelo Opus predeterminado y muestra un aviso en la transcripción

1402 1402 

1403La verificación de selección de modelo a continuación detecta el segundo y tercer caso; el primero aparece como un aviso de transcripción en lugar de un cambio de `/model`. La [configuración de modelo](/es/model-config) explica cuándo se aplica cada respaldo.1403La verificación de selección de modelo a continuación detecta el segundo y tercer caso; el primero aparece como un aviso de transcripción en lugar de un cambio de `/model`. La [configuración de modelo](/docs/es/model-config) explica cuándo se aplica cada respaldo.

1404 1404 

1405Verifique estos primero:1405Verifique estos primero:

1406 1406 

1407* **Selección de modelo**: ejecute `/model` para confirmar que está en el modelo que espera. Una opción anterior de `/model` o una variable de entorno `ANTHROPIC_MODEL` pueden tenerlo en un modelo más pequeño del que pretendía.1407* **Selección de modelo**: ejecute `/model` para confirmar que está en el modelo que espera. Una opción anterior de `/model` o una variable de entorno `ANTHROPIC_MODEL` pueden tenerlo en un modelo más pequeño del que pretendía.

1408* **Nivel de esfuerzo**: ejecute `/effort` para verificar el nivel de razonamiento actual y auméntelo para depuración difícil o trabajo de diseño. Los valores predeterminados varían según el modelo, así que verifique antes de asumir que está por debajo del máximo. Consulte [Ajustar nivel de esfuerzo](/es/model-config#adjust-effort-level) para los valores predeterminados por modelo y el atajo `ultrathink`.1408* **Nivel de esfuerzo**: ejecute `/effort` para verificar el nivel de razonamiento actual y auméntelo para depuración difícil o trabajo de diseño. Los valores predeterminados varían según el modelo, así que verifique antes de asumir que está por debajo del máximo. Consulte [Ajustar nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) para los valores predeterminados por modelo y el atajo `ultrathink`.

1409* **Presión de contexto**: ejecute `/context` para ver qué tan llena está la ventana. Si está cerca de la capacidad, ejecute `/compact` en un punto natural o `/clear` para comenzar de nuevo. Consulte [Explorar la ventana de contexto](/es/context-window) para ver cómo auto-compact afecta los turnos anteriores.1409* **Presión de contexto**: ejecute `/context` para ver qué tan llena está la ventana. Si está cerca de la capacidad, ejecute `/compact` en un punto natural o `/clear` para comenzar de nuevo. Consulte [Explorar la ventana de contexto](/docs/es/context-window) para ver cómo auto-compact afecta los turnos anteriores.

1410* **Instrucciones obsoletas**: los archivos `CLAUDE.md` grandes u obsoletos y las definiciones de herramientas MCP consumen contexto y pueden dirigir las respuestas. {/* min-version: 2.1.205 */}La revisión `/doctor` marca archivos de memoria de gran tamaño y extensiones no utilizadas, y `/context` muestra el uso de tokens de herramientas MCP. Antes de v2.1.205, `/doctor` abría una pantalla de diagnósticos que marcaba archivos de memoria de gran tamaño y definiciones de subagentos.1410* **Instrucciones obsoletas**: los archivos `CLAUDE.md` grandes u obsoletos y las definiciones de herramientas MCP consumen contexto y pueden dirigir las respuestas. La revisión `/doctor` marca archivos de memoria de gran tamaño y extensiones no utilizadas, y `/context` muestra el uso de tokens de herramientas MCP. Antes de v2.1.205, `/doctor` abría una pantalla de diagnósticos que marcaba archivos de memoria de gran tamaño y definiciones de subagentos.

1411 1411 

1412Cuando una respuesta sale mal, retroceder generalmente funciona mejor que responder con correcciones. Presione Esc dos veces o ejecute `/rewind` para retroceder antes del turno incorrecto, luego reformule el mensaje con más especificidades. Corregir en el hilo mantiene el intento incorrecto en contexto, lo que puede anclar respuestas posteriores a él. Consulte [Checkpointing](/es/checkpointing).1412Cuando una respuesta sale mal, retroceder generalmente funciona mejor que responder con correcciones. Presione Esc dos veces o ejecute `/rewind` para retroceder antes del turno incorrecto, luego reformule el mensaje con más especificidades. Corregir en el hilo mantiene el intento incorrecto en contexto, lo que puede anclar respuestas posteriores a él. Consulte [Checkpointing](/docs/es/checkpointing).

1413 1413 

1414Si la calidad aún parece incorrecta después de verificar lo anterior, ejecute `/feedback` y describa qué esperaba versus qué obtuvo. La retroalimentación enviada de esta manera incluye la transcripción de la conversación, que es la forma más rápida para que Anthropic diagnostique una regresión real. Consulte [Reportar un error](#report-an-error) si `/feedback` no está disponible en su entorno.1414Si la calidad aún parece incorrecta después de verificar lo anterior, ejecute `/feedback` y describa qué esperaba versus qué obtuvo. La retroalimentación enviada de esta manera incluye la transcripción de la conversación, que es la forma más rápida para que Anthropic diagnostique una regresión real. Consulte [Reportar un error](#report-an-error) si `/feedback` no está disponible en su entorno.

1415 1415 

1416Si Claude advierte sobre una inyección de mensaje sospechosa, o rechaza una solicitud debido a una inyección sospechada, y el texto que nombra la advertencia es contexto que Claude Code agrega a la conversación automáticamente en lugar de contenido de archivo o web, ejecute `claude update` e intente de nuevo. Si la advertencia se repite después de actualizar, [repórtela](#report-an-error) en lugar de pegar el contenido marcado nuevamente en el mensaje. {/* min-version: 2.1.201 */}Antes de v2.1.201, Sonnet 5 rechazaba algunas solicitudes de la misma manera.1416Si Claude advierte sobre una inyección de mensaje sospechosa, o rechaza una solicitud debido a una inyección sospechada, y el texto que nombra la advertencia es contexto que Claude Code agrega a la conversación automáticamente en lugar de contenido de archivo o web, ejecute `claude update` e intente de nuevo. Si la advertencia se repite después de actualizar, [repórtela](#report-an-error) en lugar de pegar el contenido marcado nuevamente en el mensaje. Antes de v2.1.201, Sonnet 5 rechazaba algunas solicitudes de la misma manera.

1417 1417 

1418<h2 id="report-an-error">1418<h2 id="report-an-error">

1419 Reportar un error1419 Reportar un error


1421 1421 

1422Para errores de componentes que esta página no cubre, consulte la guía relevante:1422Para errores de componentes que esta página no cubre, consulte la guía relevante:

1423 1423 

1424* El servidor MCP no se pudo conectar o autenticar: [MCP](/es/mcp)1424* El servidor MCP no se pudo conectar o autenticar: [MCP](/docs/es/mcp)

1425* El script de hook falló o bloqueó una herramienta: [Depurar hooks](/es/hooks#debug-hooks)1425* El script de hook falló o bloqueó una herramienta: [Depurar hooks](/docs/es/hooks#debug-hooks)

1426* Permiso denegado o errores del sistema de archivos durante la instalación: [Solucionar problemas de instalación e inicio de sesión](/es/troubleshoot-install)1426* Permiso denegado o errores del sistema de archivos durante la instalación: [Solucionar problemas de instalación e inicio de sesión](/docs/es/troubleshoot-install)

1427 1427 

1428Si un error no aparece aquí o la corrección sugerida no ayuda:1428Si un error no aparece aquí o la corrección sugerida no ayuda:

1429 1429 

1430* Ejecute `/feedback` dentro de Claude Code para enviar la transcripción y una descripción a Anthropic. El comando también ofrece abrir un problema de GitHub rellenado previamente. El envío a Anthropic requiere [autenticación](/es/authentication). En Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y otros proveedores de terceros, o cuando no hay credenciales de Anthropic configuradas, `/feedback` guarda un archivo local que puede enviar a su representante de cuenta de Anthropic en su lugar.1430* Ejecute `/feedback` dentro de Claude Code para enviar la transcripción y una descripción a Anthropic. El comando también ofrece abrir un problema de GitHub rellenado previamente. El envío a Anthropic requiere [autenticación](/docs/es/authentication). En Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y otros proveedores de terceros, o cuando no hay credenciales de Anthropic configuradas, `/feedback` guarda un archivo local que puede enviar a su representante de cuenta de Anthropic en su lugar.

1431* Ejecute `claude doctor` desde su shell para un diagnóstico de solo lectura de su instalación, o ejecute la verificación `/doctor` dentro de Claude Code para encontrar y solucionar problemas de configuración1431* Ejecute `claude doctor` desde su shell para un diagnóstico de solo lectura de su instalación, o ejecute la verificación `/doctor` dentro de Claude Code para encontrar y solucionar problemas de configuración

1432* Consulte [status.claude.com](https://status.claude.com) para incidentes activos1432* Consulte [status.claude.com](https://status.claude.com) para incidentes activos

1433* Busque [problemas existentes](https://github.com/anthropics/claude-code/issues) en GitHub1433* Busque [problemas existentes](https://github.com/anthropics/claude-code/issues) en GitHub

fast-mode.md +11 −11

Details

32Activa el modo rápido de cualquiera de estas formas:32Activa el modo rápido de cualquiera de estas formas:

33 33 

34* Escribe `/fast` y presiona Tab para activar o desactivar34* Escribe `/fast` y presiona Tab para activar o desactivar

35* Establece `"fastMode": true` en tu [archivo de configuración de usuario](/es/settings)35* Establece `"fastMode": true` en tu [archivo de configuración de usuario](/docs/es/settings)

36 36 

37De forma predeterminada, el modo rápido que activas en una sesión interactiva persiste entre sesiones. {/* min-version: 2.1.205 */}En [modo no interactivo](/es/headless), con la bandera `-p`, `/fast` funciona solo en una sesión iniciada con el modo rápido en su valor [`--settings`](/es/cli-reference#cli-flags), por ejemplo `claude -p --settings '{"fastMode": true}'`; el cambio se aplica solo a esa sesión y no se guarda como tu valor predeterminado, y en cualquier otra sesión no interactiva el comando reporta que el modo rápido no está disponible. Puedes configurar el modo rápido para que se reinicie cada sesión. Consulta [opción de participación por sesión](#require-per-session-opt-in) para obtener más detalles.37De forma predeterminada, el modo rápido que activas en una sesión interactiva persiste entre sesiones. En [modo no interactivo](/docs/es/headless), con la bandera `-p`, `/fast` funciona solo en una sesión iniciada con el modo rápido en su valor [`--settings`](/docs/es/cli-reference#cli-flags), por ejemplo `claude -p --settings '{"fastMode": true}'`; el cambio se aplica solo a esa sesión y no se guarda como tu valor predeterminado, y en cualquier otra sesión no interactiva el comando reporta que el modo rápido no está disponible. Puedes configurar el modo rápido para que se reinicie cada sesión. Consulta [opción de participación por sesión](#require-per-session-opt-in) para obtener más detalles.

38 38 

39Para la mejor eficiencia de costos, habilita el modo rápido al inicio de una sesión en lugar de cambiar a mitad de la conversación. Consulta [comprender la compensación de costos](#understand-the-cost-tradeoff) para obtener más detalles.39Para la mejor eficiencia de costos, habilita el modo rápido al inicio de una sesión en lugar de cambiar a mitad de la conversación. Consulta [comprender la compensación de costos](#understand-the-cost-tradeoff) para obtener más detalles.

40 40 


47 47 

48Cuando desactivas el modo rápido con `/fast` nuevamente, permaneces en Opus. El modelo no revierte a tu modelo anterior. Para cambiar a un modelo diferente, usa `/model`.48Cuando desactivas el modo rápido con `/fast` nuevamente, permaneces en Opus. El modelo no revierte a tu modelo anterior. Para cambiar a un modelo diferente, usa `/model`.

49 49 

50Cambiar a un modelo que no admite el modo rápido desactiva el modo rápido. {/* min-version: 2.1.208 */}Cambiar de nuevo a un modelo Opus compatible lo activa nuevamente cuando tu preferencia de modo rápido guardada está activada, la misma preferencia con la que una nueva sesión comienza de forma predeterminada. Con [opción de participación por sesión](#require-per-session-opt-in) configurada, cambiar de nuevo no activa el modo rápido nuevamente; ejecuta `/fast` para reactivarlo. El modo rápido nunca se activa para una sesión cuya preferencia guardada está desactivada, y el icono `↯` y la confirmación `Fast mode ON` aparecen siempre que se activa. Antes de v2.1.208, el modo rápido permanecía desactivado después de que cambiaras de nuevo hasta que ejecutaras `/fast` nuevamente.50Cambiar a un modelo que no admite el modo rápido desactiva el modo rápido. Cambiar de nuevo a un modelo Opus compatible lo activa nuevamente cuando tu preferencia de modo rápido guardada está activada, la misma preferencia con la que una nueva sesión comienza de forma predeterminada. Con [opción de participación por sesión](#require-per-session-opt-in) configurada, cambiar de nuevo no activa el modo rápido nuevamente; ejecuta `/fast` para reactivarlo. El modo rápido nunca se activa para una sesión cuya preferencia guardada está desactivada, y el icono `↯` y la confirmación `Fast mode ON` aparecen siempre que se activa. Antes de v2.1.208, el modo rápido permanecía desactivado después de que cambiaras de nuevo hasta que ejecutaras `/fast` nuevamente.

51 51 

52Opus 4.8 es el valor predeterminado del modo rápido en Claude Code v2.1.154 y posterior. En v2.1.142 a v2.1.153, el modo rápido utiliza Opus 4.7 de forma predeterminada.52Opus 4.8 es el valor predeterminado del modo rápido en Claude Code v2.1.154 y posterior. En v2.1.142 a v2.1.153, el modo rápido utiliza Opus 4.7 de forma predeterminada.

53 53 


64 64 

65Los precios del modo rápido son fijos en toda la ventana de contexto de 1M tokens. Para la tarifa estándar de Opus con la que comparar, consulte la [referencia de precios de Claude](https://platform.claude.com/docs/es/about-claude/pricing).65Los precios del modo rápido son fijos en toda la ventana de contexto de 1M tokens. Para la tarifa estándar de Opus con la que comparar, consulte la [referencia de precios de Claude](https://platform.claude.com/docs/es/about-claude/pricing).

66 66 

67La primera vez que habilita el modo rápido en una conversación, paga el precio completo del token de entrada sin caché del modo rápido para todo el contexto de la conversación. Cuanto más profundo esté en una conversación, más cuesta esto, por lo que habilitar el modo rápido desde el inicio es más económico. El costo se aplica una vez por conversación, por lo que desactivar y activar el modo rápido nuevamente más tarde no lo repite. Para el mecanismo, consulte [cómo el modo rápido interactúa con el caché de indicaciones](/es/prompt-caching#turning-on-fast-mode).67La primera vez que habilita el modo rápido en una conversación, paga el precio completo del token de entrada sin caché del modo rápido para todo el contexto de la conversación. Cuanto más profundo esté en una conversación, más cuesta esto, por lo que habilitar el modo rápido desde el inicio es más económico. El costo se aplica una vez por conversación, por lo que desactivar y activar el modo rápido nuevamente más tarde no lo repite. Para el mecanismo, consulte [cómo el modo rápido interactúa con el caché de indicaciones](/docs/es/prompt-caching#turning-on-fast-mode).

68 68 

69<h2 id="decide-when-to-use-fast-mode">69<h2 id="decide-when-to-use-fast-mode">

70 Decidir cuándo usar el modo rápido70 Decidir cuándo usar el modo rápido


93| **Modo rápido** | Misma calidad de modelo, latencia más baja, costo más alto |93| **Modo rápido** | Misma calidad de modelo, latencia más baja, costo más alto |

94| **Nivel de esfuerzo más bajo** | Menos tiempo de pensamiento, respuestas más rápidas, calidad potencialmente más baja en tareas complejas |94| **Nivel de esfuerzo más bajo** | Menos tiempo de pensamiento, respuestas más rápidas, calidad potencialmente más baja en tareas complejas |

95 95 

96Puedes combinar ambos: usa el modo rápido con un [nivel de esfuerzo](/es/model-config#adjust-effort-level) más bajo para máxima velocidad en tareas sencillas.96Puedes combinar ambos: usa el modo rápido con un [nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) más bajo para máxima velocidad en tareas sencillas.

97 97 

98<h2 id="requirements">98<h2 id="requirements">

99 Requisitos99 Requisitos


111* **Habilitación del propietario para Team y Enterprise**: el modo rápido está deshabilitado de forma predeterminada para organizaciones Team y Enterprise. Un propietario debe [habilitar explícitamente el modo rápido](#enable-fast-mode-for-your-organization) antes de que los usuarios puedan acceder a él.111* **Habilitación del propietario para Team y Enterprise**: el modo rápido está deshabilitado de forma predeterminada para organizaciones Team y Enterprise. Un propietario debe [habilitar explícitamente el modo rápido](#enable-fast-mode-for-your-organization) antes de que los usuarios puedan acceder a él.

112 112 

113<Note>113<Note>

114 Si el modo rápido no ha sido habilitado para su organización, el comando `/fast` mostrará "Fast mode has been disabled by your organization." Si la lista de permitidos [`availableModels`](/es/model-config#restrict-model-selection) de su organización excluye el modelo Opus del modo rápido, `/fast` se rechaza con "is not in your organization's allowed models". La excepción es una sesión ya en ejecución en un modelo Opus permitido que admita modo rápido: `/fast` habilita el modo rápido en su modelo actual en lugar de cambiar de modelos.114 Si el modo rápido no ha sido habilitado para su organización, el comando `/fast` mostrará "Fast mode has been disabled by your organization." Si la lista de permitidos [`availableModels`](/docs/es/model-config#restrict-model-selection) de su organización excluye el modelo Opus del modo rápido, `/fast` se rechaza con "is not in your organization's allowed models". La excepción es una sesión ya en ejecución en un modelo Opus permitido que admita modo rápido: `/fast` habilita el modo rápido en su modelo actual en lugar de cambiar de modelos.

115</Note>115</Note>

116 116 

117<h3 id="enable-fast-mode-for-your-organization">117<h3 id="enable-fast-mode-for-your-organization">


123* **Console** (clientes de API): un administrador lo habilita en [Preferencias de Claude Code](https://platform.claude.com/claude-code/preferences)123* **Console** (clientes de API): un administrador lo habilita en [Preferencias de Claude Code](https://platform.claude.com/claude-code/preferences)

124* **Claude AI** (Team y Enterprise): un propietario lo habilita en [Admin Settings > Claude Code](https://claude.ai/admin-settings/claude-code)124* **Claude AI** (Team y Enterprise): un propietario lo habilita en [Admin Settings > Claude Code](https://claude.ai/admin-settings/claude-code)

125 125 

126Otra opción para desactivar completamente el modo rápido es establecer `CLAUDE_CODE_DISABLE_FAST_MODE=1`. Consulte [Variables de entorno](/es/env-vars).126Otra opción para desactivar completamente el modo rápido es establecer `CLAUDE_CODE_DISABLE_FAST_MODE=1`. Consulte [Variables de entorno](/docs/es/env-vars).

127 127 

128<h3 id="require-per-session-opt-in">128<h3 id="require-per-session-opt-in">

129 Requerir opción de participación por sesión129 Requerir opción de participación por sesión

130</h3>130</h3>

131 131 

132De forma predeterminada, el modo rápido que un usuario activa en una sesión interactiva persiste entre sesiones: permanece activado en futuras sesiones. Para cambiar esto, establezca `fastModePerSessionOptIn` en `true` en cualquier [archivo de configuración](/es/settings#settings-files), lo que hace que cada sesión comience con el modo rápido desactivado y requiere que los usuarios lo habiliten explícitamente con `/fast`. Los propietarios en planes [Team](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_teams#team-&-enterprise) o [Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_enterprise) pueden implementarlo en toda la organización a través de [configuración administrada por servidor](/es/server-managed-settings).132De forma predeterminada, el modo rápido que un usuario activa en una sesión interactiva persiste entre sesiones: permanece activado en futuras sesiones. Para cambiar esto, establezca `fastModePerSessionOptIn` en `true` en cualquier [archivo de configuración](/docs/es/settings#settings-files), lo que hace que cada sesión comience con el modo rápido desactivado y requiere que los usuarios lo habiliten explícitamente con `/fast`. Los propietarios en planes [Team](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_teams#team-&-enterprise) o [Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_enterprise) pueden implementarlo en toda la organización a través de [configuración administrada por servidor](/docs/es/server-managed-settings).

133 133 

134```json theme={null}134```json theme={null}

135{135{


168 Ver también168 Ver también

169</h2>169</h2>

170 170 

171* [Configuración de modelo](/es/model-config): cambiar modelos y ajustar niveles de esfuerzo171* [Configuración de modelo](/docs/es/model-config): cambiar modelos y ajustar niveles de esfuerzo

172* [Gestionar costos de manera efectiva](/es/costs): rastrear el uso de tokens y reducir costos172* [Gestionar costos de manera efectiva](/docs/es/costs): rastrear el uso de tokens y reducir costos

173* [Configuración de línea de estado](/es/statusline): mostrar información de modelo y contexto173* [Configuración de línea de estado](/docs/es/statusline): mostrar información de modelo y contexto

Details

6 6 

7> Compare qué características de Claude Code están disponibles en los planes de suscripción de Anthropic, la Consola de Anthropic, Amazon Bedrock, Claude Platform en AWS, Google Cloud's Agent Platform y Microsoft Foundry.7> Compare qué características de Claude Code están disponibles en los planes de suscripción de Anthropic, la Consola de Anthropic, Amazon Bedrock, Claude Platform en AWS, Google Cloud's Agent Platform y Microsoft Foundry.

8 8 

9El CLI de Claude Code y todo lo que se ejecuta localmente funciona de manera idéntica en cada proveedor. Para obtener instrucciones de configuración por proveedor, consulte la [descripción general de implementación empresarial](/es/third-party-integrations). Para ir directamente a lo que falta en su proveedor, consulte las pestañas de [resumen por proveedor](#summary-by-provider).9El CLI de Claude Code y todo lo que se ejecuta localmente funciona de manera idéntica en cada proveedor. Para obtener instrucciones de configuración por proveedor, consulte la [descripción general de implementación empresarial](/docs/es/third-party-integrations). Para ir directamente a lo que falta en su proveedor, consulte las pestañas de [resumen por proveedor](#summary-by-provider).

10 10 

11En las tablas a continuación, ✓ significa disponible, ✗ significa no disponible, y "Ver nota" enlaza a una nota al pie para soporte parcial. Un calificador después de ✓ reduce la disponibilidad a ese subconjunto, y "Habilitado por administrador" significa que la característica está desactivada hasta que un administrador de la organización la active.11En las tablas a continuación, ✓ significa disponible, ✗ significa no disponible, y "Ver nota" enlaza a una nota al pie para soporte parcial. Un calificador después de ✓ reduce la disponibilidad a ese subconjunto, y "Habilitado por administrador" significa que la característica está desactivada hasta que un administrador de la organización la active.

12 12 


18 18 

19* **Suscripción a Claude**: inicia sesión con una cuenta de claude.ai en el plan Pro, Max, Team o Enterprise19* **Suscripción a Claude**: inicia sesión con una cuenta de claude.ai en el plan Pro, Max, Team o Enterprise

20* **Consola de Anthropic**: se autentica con una clave API de Anthropic20* **Consola de Anthropic**: se autentica con una clave API de Anthropic

21* **Amazon Bedrock**: utiliza modelos de Claude del catálogo de modelos de Bedrock y establece `CLAUDE_CODE_USE_BEDROCK`. El [punto final de Mantle](/es/amazon-bedrock#use-the-mantle-endpoint) (`CLAUDE_CODE_USE_MANTLE`) está cubierto por esta columna21* **Amazon Bedrock**: utiliza modelos de Claude del catálogo de modelos de Bedrock y establece `CLAUDE_CODE_USE_BEDROCK`. El [punto final de Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint) (`CLAUDE_CODE_USE_MANTLE`) está cubierto por esta columna

22* **Claude Platform en AWS**: compró Claude a través de AWS Marketplace pero llama a la API de Anthropic, y establece `CLAUDE_CODE_USE_ANTHROPIC_AWS`22* **Claude Platform en AWS**: compró Claude a través de AWS Marketplace pero llama a la API de Anthropic, y establece `CLAUDE_CODE_USE_ANTHROPIC_AWS`

23* **Google Cloud's Agent Platform**: operado por Google; establece `CLAUDE_CODE_USE_VERTEX`23* **Google Cloud's Agent Platform**: operado por Google; establece `CLAUDE_CODE_USE_VERTEX`

24* **Microsoft Foundry**: operado por Anthropic en Azure; establece `CLAUDE_CODE_USE_FOUNDRY`24* **Microsoft Foundry**: operado por Anthropic en Azure; establece `CLAUDE_CODE_USE_FOUNDRY`


29 29 

30Estas funcionan en cada proveedor:30Estas funcionan en cada proveedor:

31 31 

32* [CLI](/es/quickstart) y [Agent SDK](/es/agent-sdk/overview)32* [CLI](/docs/es/quickstart) y [Agent SDK](/docs/es/agent-sdk/overview)

33* Extensiones de [VS Code](/es/vs-code) y [JetBrains](/es/jetbrains)33* Extensiones de [VS Code](/docs/es/vs-code) y [JetBrains](/docs/es/jetbrains)

34* [Subagentes](/es/sub-agents), [hooks](/es/hooks-guide), [comandos](/es/commands) y [skills](/es/skills)34* [Subagentes](/docs/es/sub-agents), [hooks](/docs/es/hooks-guide), [comandos](/docs/es/commands) y [skills](/docs/es/skills)

35* Memoria [CLAUDE.md](/es/memory), [plugins](/es/plugins) y [servidores MCP](/es/mcp)35* Memoria [CLAUDE.md](/docs/es/memory), [plugins](/docs/es/plugins) y [servidores MCP](/docs/es/mcp)

36* [Checkpoints](/es/checkpointing), [sandboxing](/es/sandboxing) y [Workflows](/es/workflows)36* [Checkpoints](/docs/es/checkpointing), [sandboxing](/docs/es/sandboxing) y [Workflows](/docs/es/workflows)

37* Métricas [OpenTelemetry](/es/monitoring-usage) y el [archivo de configuración administrado](/es/settings#settings-files)37* Métricas [OpenTelemetry](/docs/es/monitoring-usage) y el [archivo de configuración administrado](/docs/es/settings#settings-files)

38 38 

39Tres de estos tienen diferencias específicas del proveedor:39Tres de estos tienen diferencias específicas del proveedor:

40 40 

41* **Servidores MCP**: los [conectores de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai) se cargan solo cuando su suscripción a claude.ai es el método de autenticación activo, y la [búsqueda de herramientas](/es/mcp#configure-tool-search) está desactivada de forma predeterminada en Google Cloud's Agent Platform y cuando `ANTHROPIC_BASE_URL` apunta a un host que no es de primera parte41* **Servidores MCP**: los [conectores de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai) se cargan solo cuando su suscripción a claude.ai es el método de autenticación activo, y la [búsqueda de herramientas](/docs/es/mcp#configure-tool-search) está desactivada de forma predeterminada en Google Cloud's Agent Platform y cuando `ANTHROPIC_BASE_URL` apunta a un host que no es de primera parte

42* **Subagentes**: el [subagente Explore integrado](/es/sub-agents#built-in-subagents) limita su modelo heredado a Opus en la API de Claude, e hereda el modelo de la conversación principal directamente en cualquier otro proveedor, incluido Claude Platform en AWS42* **Subagentes**: el [subagente Explore integrado](/docs/es/sub-agents#built-in-subagents) limita su modelo heredado a Opus en la API de Claude, e hereda el modelo de la conversación principal directamente en cualquier otro proveedor, incluido Claude Platform en AWS

43* **[Comandos](/es/commands#all-commands)**: `/design-sync` y `/radio` no están disponibles en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y Claude Platform en AWS, y `/voice` requiere una cuenta de claude.ai43* **[Comandos](/docs/es/commands#all-commands)**: `/design-sync` y `/radio` no están disponibles en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y Claude Platform en AWS, y `/voice` requiere una cuenta de claude.ai

44 44 

45<h3 id="features-that-require-a-claude-subscription">45<h3 id="features-that-require-a-claude-subscription">

46 Características que requieren una suscripción a Claude46 Características que requieren una suscripción a Claude


48 48 

49Estas requieren iniciar sesión con una cuenta de claude.ai y no son accesibles con una clave API de la Consola de Anthropic o desde un proveedor de terceros:49Estas requieren iniciar sesión con una cuenta de claude.ai y no son accesibles con una clave API de la Consola de Anthropic o desde un proveedor de terceros:

50 50 

51* [Claude Code en la web](/es/claude-code-on-the-web), Claude Code en dispositivos móviles y [Claude Code en Slack](/es/slack)51* [Claude Code en la web](/docs/es/claude-code-on-the-web), Claude Code en dispositivos móviles y [Claude Code en Slack](/docs/es/slack)

52* [Claude Code Desktop](/es/desktop)52* [Claude Code Desktop](/docs/es/desktop)

53* [Routines](/es/routines) (`/schedule`)53* [Routines](/docs/es/routines) (`/schedule`)

54* [Ultraplan](/es/ultraplan) y [Ultrareview](/es/ultrareview)54* [Ultraplan](/docs/es/ultraplan) y [Ultrareview](/docs/es/ultrareview)

55* [Code Review](/es/code-review): planes Team y Enterprise55* [Code Review](/docs/es/code-review): planes Team y Enterprise

56* [Remote Control](/es/remote-control)56* [Remote Control](/docs/es/remote-control)

57* [Extensión de Chrome](/es/chrome)57* [Extensión de Chrome](/docs/es/chrome)

58* [Computer use](/es/computer-use): planes Pro y Max58* [Computer use](/docs/es/computer-use): planes Pro y Max

59* [Artifacts](/es/artifacts): planes Pro, Max, Team y Enterprise59* [Artifacts](/docs/es/artifacts): planes Pro, Max, Team y Enterprise

60* [Voice dictation](/es/voice-dictation)60* [Voice dictation](/docs/es/voice-dictation)

61 61 

62Desktop es la excepción parcial: el [enrutamiento de puerta de enlace se puede configurar en la aplicación o por un administrador](/es/llm-gateway-connect#desktop-app), las implementaciones empresariales pueden enrutar Desktop a Google Cloud's Agent Platform o a un proveedor de puerta de enlace a través de [configuración administrada](https://claude.com/docs/third-party/claude-desktop/configuration), y [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview) ejecuta la pestaña de Code en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o una puerta de enlace LLM autohospedada. Para la disponibilidad por plan de estas características, consulte [Disponibilidad por plan de suscripción](#availability-by-subscription-plan).62Desktop es la excepción parcial: el [enrutamiento de puerta de enlace se puede configurar en la aplicación o por un administrador](/docs/es/llm-gateway-connect#desktop-app), las implementaciones empresariales pueden enrutar Desktop a Google Cloud's Agent Platform o a un proveedor de puerta de enlace a través de [configuración administrada](https://claude.com/docs/third-party/claude-desktop/configuration), y [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview) ejecuta la pestaña de Code en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry o una puerta de enlace LLM autohospedada. Para la disponibilidad por plan de estas características, consulte [Disponibilidad por plan de suscripción](#availability-by-subscription-plan).

63 63 

64<h3 id="cli-capabilities-that-vary-by-provider">64<h3 id="cli-capabilities-that-vary-by-provider">

65 Capacidades de CLI que varían por proveedor65 Capacidades de CLI que varían por proveedor


82 82 

83 <tbody>83 <tbody>

84 <tr>84 <tr>

85 <td>[Búsqueda web](/es/tools-reference#websearch-tool-behavior)</td>85 <td>[Búsqueda web](/docs/es/tools-reference#websearch-tool-behavior)</td>

86 <td>✓</td>86 <td>✓</td>

87 <td>✓</td>87 <td>✓</td>

88 <td>✗</td>88 <td>✗</td>


92 </tr>92 </tr>

93 93 

94 <tr>94 <tr>

95 <td>[Fast mode](/es/fast-mode)</td>95 <td>[Fast mode](/docs/es/fast-mode)</td>

96 <td>✓</td>96 <td>✓</td>

97 <td>✓</td>97 <td>✓</td>

98 <td>✗</td>98 <td>✗</td>


102 </tr>102 </tr>

103 103 

104 <tr>104 <tr>

105 <td>[Auto mode](/es/auto-mode-config)</td>105 <td>[Auto mode](/docs/es/auto-mode-config)</td>

106 <td>✓</td>106 <td>✓</td>

107 <td>✓</td>107 <td>✓</td>

108 <td>Ver nota <sup><a href="#fn2">2</a></sup></td>108 <td>Ver nota <sup><a href="#fn2">2</a></sup></td>


112 </tr>112 </tr>

113 113 

114 <tr>114 <tr>

115 <td>[Advisor](/es/advisor)</td>115 <td>[Advisor](/docs/es/advisor)</td>

116 <td>✓</td>116 <td>✓</td>

117 <td>✓</td>117 <td>✓</td>

118 <td>✗</td>118 <td>✗</td>


122 </tr>122 </tr>

123 123 

124 <tr>124 <tr>

125 <td>[Channels](/es/channels)</td>125 <td>[Channels](/docs/es/channels)</td>

126 <td>✓</td>126 <td>✓</td>

127 <td>✓</td>127 <td>✓</td>

128 <td>✗</td>128 <td>✗</td>


132 </tr>132 </tr>

133 133 

134 <tr>134 <tr>

135 <td>[`/loop` tareas programadas](/es/scheduled-tasks)</td>135 <td>[`/loop` tareas programadas](/docs/es/scheduled-tasks)</td>

136 <td>✓</td>136 <td>✓</td>

137 <td>✓</td>137 <td>✓</td>

138 <td>Ver nota <sup><a href="#fn3">3</a></sup></td>138 <td>Ver nota <sup><a href="#fn3">3</a></sup></td>


142 </tr>142 </tr>

143 143 

144 <tr>144 <tr>

145 <td>[GitHub Actions](/es/github-actions) y [GitLab CI/CD](/es/gitlab-ci-cd)</td>145 <td>[GitHub Actions](/docs/es/github-actions) y [GitLab CI/CD](/docs/es/gitlab-ci-cd)</td>

146 <td>✓</td>146 <td>✓</td>

147 <td>✓</td>147 <td>✓</td>

148 <td>✓</td>148 <td>✓</td>


174 174 

175 <tbody>175 <tbody>

176 <tr>176 <tr>

177 <td>[Panel de análisis y API](/es/analytics)</td>177 <td>[Panel de análisis y API](/docs/es/analytics)</td>

178 <td>✓ (panel: Team y Enterprise; API: Enterprise)</td>178 <td>✓ (panel: Team y Enterprise; API: Enterprise)</td>

179 <td>✓ <sup><a href="#fn5">5</a></sup></td>179 <td>✓ <sup><a href="#fn5">5</a></sup></td>

180 <td>✗</td>180 <td>✗</td>


184 </tr>184 </tr>

185 185 

186 <tr>186 <tr>

187 <td>[Configuración administrada por servidor](/es/server-managed-settings)</td>187 <td>[Configuración administrada por servidor](/docs/es/server-managed-settings)</td>

188 <td>✓ (Team y Enterprise)</td>188 <td>✓ (Team y Enterprise)</td>

189 <td>✓ (Team y Enterprise)</td>189 <td>✓ (Team y Enterprise)</td>

190 <td>✗</td>190 <td>✗</td>


194 </tr>194 </tr>

195 195 

196 <tr>196 <tr>

197 <td>[Zero Data Retention](/es/zero-data-retention)</td>197 <td>[Zero Data Retention](/docs/es/zero-data-retention)</td>

198 <td>✓ (cuentas Enterprise calificadas)</td>198 <td>✓ (cuentas Enterprise calificadas)</td>

199 <td>✓ (cuentas calificadas)</td>199 <td>✓ (cuentas calificadas)</td>

200 <td>Ver nota <sup><a href="#fn4">4</a></sup></td>200 <td>Ver nota <sup><a href="#fn4">4</a></sup></td>


206</table>206</table>

207 207 

208<span id="fn1" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>1</sup> En Google Cloud's Agent Platform, la búsqueda web está disponible para modelos Claude 4 y posteriores.<br />208<span id="fn1" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>1</sup> En Google Cloud's Agent Platform, la búsqueda web está disponible para modelos Claude 4 y posteriores.<br />

209<span id="fn2" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>2</sup> En estos proveedores, el modo automático admite solo Claude Sonnet 5, Opus 4.7 y Opus 4.8. Consulte [Configuración de Auto mode](/es/auto-mode-config). {/* min-version: 2.1.207 */}En v2.1.158 a v2.1.206, el modo automático en estos proveedores también requería establecer `CLAUDE_CODE_ENABLE_AUTO_MODE=1`; v2.1.207 eliminó el requisito.<br />209<span id="fn2" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>2</sup> En estos proveedores, el modo automático admite solo Claude Sonnet 5, Opus 4.7 y Opus 4.8. Consulte [Configuración de Auto mode](/docs/es/auto-mode-config). En v2.1.158 a v2.1.206, el modo automático en estos proveedores también requería establecer `CLAUDE_CODE_ENABLE_AUTO_MODE=1`; v2.1.207 eliminó el requisito.<br />

210<span id="fn3" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>3</sup> Los intervalos explícitos como `/loop every 2 hours` funcionan en cada proveedor. En Amazon Bedrock, Claude Platform en AWS, Google Cloud's Agent Platform y Microsoft Foundry, `/loop` no puede elegir su propio intervalo ni proporcionar el mensaje de mantenimiento predeterminado, por lo que un mensaje sin intervalo se ejecuta cada 10 minutos, y `/loop` sin argumentos muestra el mensaje de uso. Consulte [Tareas programadas](/es/scheduled-tasks).<br />210<span id="fn3" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>3</sup> Los intervalos explícitos como `/loop every 2 hours` funcionan en cada proveedor. En Amazon Bedrock, Claude Platform en AWS, Google Cloud's Agent Platform y Microsoft Foundry, `/loop` no puede elegir su propio intervalo ni proporcionar el mensaje de mantenimiento predeterminado, por lo que un mensaje sin intervalo se ejecuta cada 10 minutos, y `/loop` sin argumentos muestra el mensaje de uso. Consulte [Tareas programadas](/docs/es/scheduled-tasks).<br />

211<span id="fn4" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>4</sup> Sujeto a su acuerdo con el proveedor de nube.<br />211<span id="fn4" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>4</sup> Sujeto a su acuerdo con el proveedor de nube.<br />

212<span id="fn5" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>5</sup> Panel y API solamente. [Métricas de contribución](/es/analytics#enable-contribution-metrics) requiere una organización Team o Enterprise de claude.ai.212<span id="fn5" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>5</sup> Panel y API solamente. [Métricas de contribución](/docs/es/analytics#enable-contribution-metrics) requiere una organización Team o Enterprise de claude.ai.

213 213 

214<Note>214<Note>

215 Si se autentica a través de una [puerta de enlace LLM](/es/llm-gateway), la disponibilidad de características coincide con el proveedor subyacente al que la puerta de enlace reenvía. Algunas características solo de Anthropic, como [Advisor](/es/advisor), funcionan solo si la puerta de enlace reenvía solicitudes intactas a la API de Anthropic.215 Si se autentica a través de una [puerta de enlace LLM](/docs/es/llm-gateway), la disponibilidad de características coincide con el proveedor subyacente al que la puerta de enlace reenvía. Algunas características solo de Anthropic, como [Advisor](/docs/es/advisor), funcionan solo si la puerta de enlace reenvía solicitudes intactas a la API de Anthropic.

216</Note>216</Note>

217 217 

218<h3 id="summary-by-provider">218<h3 id="summary-by-provider">

219 Resumen por proveedor219 Resumen por proveedor

220</h3>220</h3>

221 221 

222Cada pestaña enumera lo que no está disponible o tiene soporte parcial en ese proveedor, con alternativas donde exista una. Todo lo que no aparece en la lista funciona igual que en una suscripción a Claude, aparte de las [diferencias específicas del proveedor](#features-available-on-every-provider) señaladas anteriormente. En Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y Claude Platform en AWS, el informe de errores y la telemetría a Anthropic están desactivados de forma predeterminada. Consulte [comportamientos predeterminados por proveedor de API](/es/data-usage#default-behaviors-by-api-provider) para ver qué tráfico aún llega a Anthropic y cómo optar por no participar.222Cada pestaña enumera lo que no está disponible o tiene soporte parcial en ese proveedor, con alternativas donde exista una. Todo lo que no aparece en la lista funciona igual que en una suscripción a Claude, aparte de las [diferencias específicas del proveedor](#features-available-on-every-provider) señaladas anteriormente. En Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y Claude Platform en AWS, el informe de errores y la telemetría a Anthropic están desactivados de forma predeterminada. Consulte [comportamientos predeterminados por proveedor de API](/docs/es/data-usage#default-behaviors-by-api-provider) para ver qué tráfico aún llega a Anthropic y cómo optar por no participar.

223 223 

224<Tabs>224<Tabs>

225 <Tab title="Amazon Bedrock">225 <Tab title="Amazon Bedrock">

226 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription), más [búsqueda web](/es/tools-reference#websearch-tool-behavior), [fast mode](/es/fast-mode), [Advisor](/es/advisor), [Channels](/es/channels), el [panel de análisis](/es/analytics), [configuración administrada por servidor](/es/server-managed-settings) y los [comandos `/design-sync` y `/radio`](/es/commands#all-commands).226 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription), más [búsqueda web](/docs/es/tools-reference#websearch-tool-behavior), [fast mode](/docs/es/fast-mode), [Advisor](/docs/es/advisor), [Channels](/docs/es/channels), el [panel de análisis](/docs/es/analytics), [configuración administrada por servidor](/docs/es/server-managed-settings) y los [comandos `/design-sync` y `/radio`](/docs/es/commands#all-commands).

227 227 

228 **Soporte parcial:**228 **Soporte parcial:**

229 229 

230 * [Desktop](/es/desktop): solo a través de [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview)230 * [Desktop](/docs/es/desktop): solo a través de [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview)

231 * [Auto mode](/es/auto-mode-config): solo Sonnet 5, Opus 4.7 y Opus 4.8231 * [Auto mode](/docs/es/auto-mode-config): solo Sonnet 5, Opus 4.7 y Opus 4.8

232 * [`/loop`](/es/scheduled-tasks): solo intervalos explícitos232 * [`/loop`](/docs/es/scheduled-tasks): solo intervalos explícitos

233 * [Zero Data Retention](/es/zero-data-retention): sujeto a su acuerdo de AWS233 * [Zero Data Retention](/docs/es/zero-data-retention): sujeto a su acuerdo de AWS

234 234 

235 **Alternativas:** para programación, use [`/loop`](/es/scheduled-tasks) con un intervalo explícito en lugar de `/schedule`. Para sesiones en la nube, use [GitHub Actions](/es/github-actions) o [GitLab CI/CD](/es/gitlab-ci-cd). Para búsquedas web, use la [herramienta WebFetch](/es/tools-reference#webfetch-tool-behavior) con una URL específica.235 **Alternativas:** para programación, use [`/loop`](/docs/es/scheduled-tasks) con un intervalo explícito en lugar de `/schedule`. Para sesiones en la nube, use [GitHub Actions](/docs/es/github-actions) o [GitLab CI/CD](/docs/es/gitlab-ci-cd). Para búsquedas web, use la [herramienta WebFetch](/docs/es/tools-reference#webfetch-tool-behavior) con una URL específica.

236 </Tab>236 </Tab>

237 237 

238 <Tab title="Claude Platform en AWS">238 <Tab title="Claude Platform en AWS">

239 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription), más [fast mode](/es/fast-mode), [Advisor](/es/advisor), [Channels](/es/channels), el [panel de análisis](/es/analytics), [configuración administrada por servidor](/es/server-managed-settings) y los [comandos `/design-sync` y `/radio`](/es/commands#all-commands).239 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription), más [fast mode](/docs/es/fast-mode), [Advisor](/docs/es/advisor), [Channels](/docs/es/channels), el [panel de análisis](/docs/es/analytics), [configuración administrada por servidor](/docs/es/server-managed-settings) y los [comandos `/design-sync` y `/radio`](/docs/es/commands#all-commands).

240 240 

241 **Disponible donde Amazon Bedrock no lo es:** [búsqueda web](/es/tools-reference#websearch-tool-behavior).241 **Disponible donde Amazon Bedrock no lo es:** [búsqueda web](/docs/es/tools-reference#websearch-tool-behavior).

242 242 

243 **Soporte parcial:**243 **Soporte parcial:**

244 244 

245 * [`/loop`](/es/scheduled-tasks): solo intervalos explícitos245 * [`/loop`](/docs/es/scheduled-tasks): solo intervalos explícitos

246 246 

247 **Alternativas:** para programación, use [`/loop`](/es/scheduled-tasks) con un intervalo explícito en lugar de `/schedule`. Para sesiones en la nube, use [GitHub Actions](/es/github-actions) o [GitLab CI/CD](/es/gitlab-ci-cd).247 **Alternativas:** para programación, use [`/loop`](/docs/es/scheduled-tasks) con un intervalo explícito en lugar de `/schedule`. Para sesiones en la nube, use [GitHub Actions](/docs/es/github-actions) o [GitLab CI/CD](/docs/es/gitlab-ci-cd).

248 </Tab>248 </Tab>

249 249 

250 <Tab title="Google Cloud's Agent Platform">250 <Tab title="Google Cloud's Agent Platform">

251 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription), más [fast mode](/es/fast-mode), [Advisor](/es/advisor), [Channels](/es/channels), el [panel de análisis](/es/analytics), [configuración administrada por servidor](/es/server-managed-settings) y los [comandos `/design-sync` y `/radio`](/es/commands#all-commands).251 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription), más [fast mode](/docs/es/fast-mode), [Advisor](/docs/es/advisor), [Channels](/docs/es/channels), el [panel de análisis](/docs/es/analytics), [configuración administrada por servidor](/docs/es/server-managed-settings) y los [comandos `/design-sync` y `/radio`](/docs/es/commands#all-commands).

252 252 

253 **Soporte parcial:**253 **Soporte parcial:**

254 254 

255 * [Desktop](/es/desktop): a través de [configuración administrada](https://claude.com/docs/third-party/claude-desktop/configuration) o [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview)255 * [Desktop](/docs/es/desktop): a través de [configuración administrada](https://claude.com/docs/third-party/claude-desktop/configuration) o [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview)

256 * [Búsqueda web](/es/tools-reference#websearch-tool-behavior): modelos Claude 4 y posteriores256 * [Búsqueda web](/docs/es/tools-reference#websearch-tool-behavior): modelos Claude 4 y posteriores

257 * [Auto mode](/es/auto-mode-config): solo Sonnet 5, Opus 4.7 y Opus 4.8257 * [Auto mode](/docs/es/auto-mode-config): solo Sonnet 5, Opus 4.7 y Opus 4.8

258 * [`/loop`](/es/scheduled-tasks): solo intervalos explícitos258 * [`/loop`](/docs/es/scheduled-tasks): solo intervalos explícitos

259 * [Zero Data Retention](/es/zero-data-retention): sujeto a su acuerdo de Google Cloud259 * [Zero Data Retention](/docs/es/zero-data-retention): sujeto a su acuerdo de Google Cloud

260 260 

261 **Alternativas:** para programación, use [`/loop`](/es/scheduled-tasks) con un intervalo explícito en lugar de `/schedule`. Para sesiones en la nube, use [GitHub Actions](/es/github-actions) o [GitLab CI/CD](/es/gitlab-ci-cd).261 **Alternativas:** para programación, use [`/loop`](/docs/es/scheduled-tasks) con un intervalo explícito en lugar de `/schedule`. Para sesiones en la nube, use [GitHub Actions](/docs/es/github-actions) o [GitLab CI/CD](/docs/es/gitlab-ci-cd).

262 </Tab>262 </Tab>

263 263 

264 <Tab title="Microsoft Foundry">264 <Tab title="Microsoft Foundry">

265 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription), más [fast mode](/es/fast-mode), [Advisor](/es/advisor), [Channels](/es/channels), [GitHub Actions](/es/github-actions) y [GitLab CI/CD](/es/gitlab-ci-cd), el [panel de análisis](/es/analytics), [configuración administrada por servidor](/es/server-managed-settings) y los [comandos `/design-sync` y `/radio`](/es/commands#all-commands).265 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription), más [fast mode](/docs/es/fast-mode), [Advisor](/docs/es/advisor), [Channels](/docs/es/channels), [GitHub Actions](/docs/es/github-actions) y [GitLab CI/CD](/docs/es/gitlab-ci-cd), el [panel de análisis](/docs/es/analytics), [configuración administrada por servidor](/docs/es/server-managed-settings) y los [comandos `/design-sync` y `/radio`](/docs/es/commands#all-commands).

266 266 

267 **Soporte parcial:**267 **Soporte parcial:**

268 268 

269 * [Desktop](/es/desktop): solo a través de [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview)269 * [Desktop](/docs/es/desktop): solo a través de [Claude Desktop en 3P](https://claude.com/docs/third-party/claude-desktop/overview)

270 * [Auto mode](/es/auto-mode-config): solo Sonnet 5, Opus 4.7 y Opus 4.8270 * [Auto mode](/docs/es/auto-mode-config): solo Sonnet 5, Opus 4.7 y Opus 4.8

271 * [`/loop`](/es/scheduled-tasks): solo intervalos explícitos271 * [`/loop`](/docs/es/scheduled-tasks): solo intervalos explícitos

272 * [Zero Data Retention](/es/zero-data-retention): sujeto a su acuerdo de Azure272 * [Zero Data Retention](/docs/es/zero-data-retention): sujeto a su acuerdo de Azure

273 273 

274 **Alternativas:** para programación, use [`/loop`](/es/scheduled-tasks) con un intervalo explícito en lugar de `/schedule`.274 **Alternativas:** para programación, use [`/loop`](/docs/es/scheduled-tasks) con un intervalo explícito en lugar de `/schedule`.

275 </Tab>275 </Tab>

276 276 

277 <Tab title="Consola de Anthropic">277 <Tab title="Consola de Anthropic">

278 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription).278 **No disponible:** todas las [características que requieren una suscripción a Claude](#features-that-require-a-claude-subscription).

279 279 

280 Todo en [Capacidades de CLI que varían por proveedor](#cli-capabilities-that-vary-by-provider) está disponible, así como [configuración administrada por servidor](/es/server-managed-settings) cuando la clave API pertenece a una organización Team o Enterprise.280 Todo en [Capacidades de CLI que varían por proveedor](#cli-capabilities-that-vary-by-provider) está disponible, así como [configuración administrada por servidor](/docs/es/server-managed-settings) cuando la clave API pertenece a una organización Team o Enterprise.

281 </Tab>281 </Tab>

282</Tabs>282</Tabs>

283 283 


289 289 

290| Característica | Pro | Max | Team | Enterprise |290| Característica | Pro | Max | Team | Enterprise |

291| :-------------------------------------------------------------------------- | :-- | :-- | :--------------------------- | :-------------------------------- |291| :-------------------------------------------------------------------------- | :-- | :-- | :--------------------------- | :-------------------------------- |

292| [Claude Code en la web](/es/claude-code-on-the-web) | ✓ | ✓ | ✓ | ✓ <sup><a href="#fn6">6</a></sup> |292| [Claude Code en la web](/docs/es/claude-code-on-the-web) | ✓ | ✓ | ✓ | ✓ <sup><a href="#fn6">6</a></sup> |

293| [Routines](/es/routines) | ✓ | ✓ | ✓ | ✓ |293| [Routines](/docs/es/routines) | ✓ | ✓ | ✓ | ✓ |

294| [Remote Control](/es/remote-control) | ✓ | ✓ | Habilitado por administrador | Habilitado por administrador |294| [Remote Control](/docs/es/remote-control) | ✓ | ✓ | Habilitado por administrador | Habilitado por administrador |

295| [Channels](/es/channels) | ✓ | ✓ | Habilitado por administrador | Habilitado por administrador |295| [Channels](/docs/es/channels) | ✓ | ✓ | Habilitado por administrador | Habilitado por administrador |

296| [Computer use](/es/computer-use) | ✓ | ✓ | ✗ | ✗ |296| [Computer use](/docs/es/computer-use) | ✓ | ✓ | ✗ | ✗ |

297| Dispatch ([Desktop](/es/desktop#sessions-from-dispatch)) | ✓ | ✓ | ✗ | ✗ |297| Dispatch ([Desktop](/docs/es/desktop#sessions-from-dispatch)) | ✓ | ✓ | ✗ | ✗ |

298| [Code Review](/es/code-review) | ✗ | ✗ | ✓ | ✓ |298| [Code Review](/docs/es/code-review) | ✗ | ✗ | ✓ | ✓ |

299| [Artifacts](/es/artifacts) | ✓ | ✓ | ✓ | Habilitado por administrador |299| [Artifacts](/docs/es/artifacts) | ✓ | ✓ | ✓ | Habilitado por administrador |

300| [Panel de análisis y métricas de contribución](/es/analytics) | ✗ | ✗ | ✓ | ✓ |300| [Panel de análisis y métricas de contribución](/docs/es/analytics) | ✗ | ✗ | ✓ | ✓ |

301| [API de análisis empresarial](/es/analytics#access-data-programmatically) | ✗ | ✗ | ✗ | ✓ |301| [API de análisis empresarial](/docs/es/analytics#access-data-programmatically) | ✗ | ✗ | ✗ | ✓ |

302| [Configuración administrada por servidor](/es/server-managed-settings) | ✗ | ✗ | ✓ | ✓ |302| [Configuración administrada por servidor](/docs/es/server-managed-settings) | ✗ | ✗ | ✓ | ✓ |

303| [SSO](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) | ✗ | ✗ | ✓ | ✓ |303| [SSO](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) | ✗ | ✗ | ✓ | ✓ |

304| SCIM | ✗ | ✗ | ✗ | ✓ |304| SCIM | ✗ | ✗ | ✗ | ✓ |

305| [API de cumplimiento](https://platform.claude.com/docs/en/api/compliance) | ✗ | ✗ | ✗ | ✓ |305| [API de cumplimiento](https://platform.claude.com/docs/en/api/compliance) | ✗ | ✗ | ✗ | ✓ |

306| [Zero Data Retention](/es/zero-data-retention) | ✗ | ✗ | ✗ | ✓ <sup><a href="#fn7">7</a></sup> |306| [Zero Data Retention](/docs/es/zero-data-retention) | ✗ | ✗ | ✗ | ✓ <sup><a href="#fn7">7</a></sup> |

307 307 

308<span id="fn6" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>6</sup> En Enterprise, requiere un asiento premium o un asiento de Chat + Claude Code. Consulte [Claude Code en la web](/es/claude-code-on-the-web).<br />308<span id="fn6" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>6</sup> En Enterprise, requiere un asiento premium o un asiento de Chat + Claude Code. Consulte [Claude Code en la web](/docs/es/claude-code-on-the-web).<br />

309<span id="fn7" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>7</sup> No incluido en el plan Enterprise estándar. Requiere habilitación separada por Anthropic para cuentas calificadas. Consulte [Zero Data Retention](/es/zero-data-retention).309<span id="fn7" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>7</sup> No incluido en el plan Enterprise estándar. Requiere habilitación separada por Anthropic para cuentas calificadas. Consulte [Zero Data Retention](/docs/es/zero-data-retention).

310 310 

311Para precios y la comparación completa de planes, consulte [Planes Team](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) y [Planes Enterprise](https://support.claude.com/en/articles/9797531-what-is-the-enterprise-plan).311Para precios y la comparación completa de planes, consulte [Planes Team](https://support.claude.com/en/articles/9266767-what-is-the-team-plan) y [Planes Enterprise](https://support.claude.com/en/articles/9797531-what-is-the-enterprise-plan).

312 312 


314 Disponibilidad de modelos314 Disponibilidad de modelos

315</h2>315</h2>

316 316 

317Para ver qué modelos de Claude y tamaños de ventana de contexto están disponibles por proveedor y región, consulte [Configuración de modelos](/es/model-config) y la [descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Vision, entrada de PDF y pensamiento extendido son capacidades de modelo en lugar de características de Claude Code y funcionan en cada proveedor que ofrece el modelo. [Prompt caching](/es/prompt-caching) funciona de la misma manera en la mayoría de proveedores; en Amazon Bedrock, el soporte varía según el modelo.317Para ver qué modelos de Claude y tamaños de ventana de contexto están disponibles por proveedor y región, consulte [Configuración de modelos](/docs/es/model-config) y la [descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Vision, entrada de PDF y pensamiento extendido son capacidades de modelo en lugar de características de Claude Code y funcionan en cada proveedor que ofrece el modelo. [Prompt caching](/docs/es/prompt-caching) funciona de la misma manera en la mayoría de proveedores; en Amazon Bedrock, el soporte varía según el modelo.

318 318 

319<h2 id="related-resources">319<h2 id="related-resources">

320 Recursos relacionados320 Recursos relacionados

321</h2>321</h2>

322 322 

323* [Descripción general de implementación empresarial](/es/third-party-integrations): compare autenticación, facturación y regiones entre proveedores323* [Descripción general de implementación empresarial](/docs/es/third-party-integrations): compare autenticación, facturación y regiones entre proveedores

324* Guías de configuración de proveedores: [Amazon Bedrock](/es/amazon-bedrock), [Claude Platform en AWS](/es/claude-platform-on-aws), [Google Cloud's Agent Platform](/es/google-vertex-ai), [Microsoft Foundry](/es/microsoft-foundry)324* Guías de configuración de proveedores: [Amazon Bedrock](/docs/es/amazon-bedrock), [Claude Platform en AWS](/docs/es/claude-platform-on-aws), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai), [Microsoft Foundry](/docs/es/microsoft-foundry)

325* [Plataformas e integraciones](/es/platforms): dónde se ejecuta Claude Code, incluidos CLI, Desktop, extensiones de IDE, web, dispositivos móviles e CI/CD325* [Plataformas e integraciones](/docs/es/platforms): dónde se ejecuta Claude Code, incluidos CLI, Desktop, extensiones de IDE, web, dispositivos móviles e CI/CD

fullscreen.md +10 −10

Details

22 Habilitar renderizado a pantalla completa22 Habilitar renderizado a pantalla completa

23</h2>23</h2>

24 24 

25Ejecute `/tui fullscreen` dentro de cualquier conversación de Claude Code. La CLI guarda la [configuración `tui`](/es/settings#available-settings) y se reinicia en pantalla completa con su conversación intacta, por lo que puede cambiar a mitad de sesión sin perder contexto. Ejecute `/tui default` para volver al renderizador clásico, o `/tui` sin argumentos para imprimir qué renderizador está activo.25Ejecute `/tui fullscreen` dentro de cualquier conversación de Claude Code. La CLI guarda la [configuración `tui`](/docs/es/settings#available-settings) y se reinicia en pantalla completa con su conversación intacta, por lo que puede cambiar a mitad de sesión sin perder contexto. Ejecute `/tui default` para volver al renderizador clásico, o `/tui` sin argumentos para imprimir qué renderizador está activo.

26 26 

27La sesión reiniciada mantiene la conversación tal como aparece en pantalla. Si ejecutó [`/rewind`](/es/checkpointing#rewind-and-summarize) anteriormente en la sesión, el reinicio se reanuda desde el punto rebobinado en lugar de la transcripción más larga guardada en disco. Antes de v2.1.207, cambiar renderizadores después de un rebobinado restauraba la conversación que el rebobinado había eliminado.27La sesión reiniciada mantiene la conversación tal como aparece en pantalla. Si ejecutó [`/rewind`](/docs/es/checkpointing#rewind-and-summarize) anteriormente en la sesión, el reinicio se reanuda desde el punto rebobinado en lugar de la transcripción más larga guardada en disco. Antes de v2.1.207, cambiar renderizadores después de un rebobinado restauraba la conversación que el rebobinado había eliminado.

28 28 

29También puede establecer la variable de entorno `CLAUDE_CODE_NO_FLICKER` antes de iniciar Claude Code:29También puede establecer la variable de entorno `CLAUDE_CODE_NO_FLICKER` antes de iniciar Claude Code:

30 30 


90* Desplácese hacia abajo con la rueda del ratón para reanudar el seguimiento.90* Desplácese hacia abajo con la rueda del ratón para reanudar el seguimiento.

91* Reenlace `scroll:bottom` a un atajo de teclado que su teclado pueda enviar.91* Reenlace `scroll:bottom` a un atajo de teclado que su teclado pueda enviar.

92 92 

93Estas acciones se pueden reenlazar. Consulte [Acciones de desplazamiento](/es/keybindings#scroll-actions) para obtener la lista completa de nombres de acciones, incluidas variantes de media página y página completa que no tienen enlace predeterminado.93Estas acciones se pueden reenlazar. Consulte [Acciones de desplazamiento](/docs/es/keybindings#scroll-actions) para obtener la lista completa de nombres de acciones, incluidas variantes de media página y página completa que no tienen enlace predeterminado.

94 94 

95<h3 id="auto-follow">95<h3 id="auto-follow">

96 Seguimiento automático96 Seguimiento automático


100 100 

101Mientras el seguimiento automático está pausado, la vista también permanece donde la desplazó cuando una respuesta termina de transmitirse. Antes de v2.1.207, la vista podría saltar por encima del inicio de la respuesta cuando una respuesta larga terminaba de transmitirse.101Mientras el seguimiento automático está pausado, la vista también permanece donde la desplazó cuando una respuesta termina de transmitirse. Antes de v2.1.207, la vista podría saltar por encima del inicio de la respuesta cuando una respuesta larga terminaba de transmitirse.

102 102 

103La sugerencia de teclado del botón refleja lo que su teclado puede enviar. En macOS sugiere hacer clic, o `Fn+↓` para desplazarse, porque `Ctrl+End` no llega a Claude Code desde un teclado Mac. Reenlace [`scroll:bottom`](/es/keybindings#scroll-actions) y el botón muestra su atajo de teclado en todas las plataformas. Antes de v2.1.206, el botón sugería `Ctrl+End` en macOS.103La sugerencia de teclado del botón refleja lo que su teclado puede enviar. En macOS sugiere hacer clic, o `Fn+↓` para desplazarse, porque `Ctrl+End` no llega a Claude Code desde un teclado Mac. Reenlace [`scroll:bottom`](/docs/es/keybindings#scroll-actions) y el botón muestra su atajo de teclado en todas las plataformas. Antes de v2.1.206, el botón sugería `Ctrl+End` en macOS.

104 104 

105En una terminal demasiado estrecha para la etiqueta completa, el botón acorta la sugerencia en lugar de envolver en la fila de transcripción debajo. Antes de v2.1.206, una etiqueta larga podría envolver sobre la transcripción.105En una terminal demasiado estrecha para la etiqueta completa, el botón acorta la sugerencia en lugar de envolver en la fila de transcripción debajo. Antes de v2.1.206, una etiqueta larga podría envolver sobre la transcripción.

106 106 


126 126 

127El comando escribe el mismo valor que establece la variable de entorno `CLAUDE_CODE_SCROLL_SPEED`, persistido en `~/.claude/settings.json`. El comando no está disponible en la terminal del IDE de JetBrains.127El comando escribe el mismo valor que establece la variable de entorno `CLAUDE_CODE_SCROLL_SPEED`, persistido en `~/.claude/settings.json`. El comando no está disponible en la terminal del IDE de JetBrains.

128 128 

129Independientemente de la velocidad base, Claude Code acelera la velocidad de desplazamiento cuando gira la rueda rápidamente, por lo que un giro rápido cubre más distancia que el mismo número de muescas lentas. Para desactivar la aceleración y mantener una velocidad constante por muesca, establezca `wheelScrollAccelerationEnabled` en `false` en [`settings.json`](/es/settings#available-settings). Esta configuración requiere Claude Code v2.1.174 o posterior.129Independientemente de la velocidad base, Claude Code acelera la velocidad de desplazamiento cuando gira la rueda rápidamente, por lo que un giro rápido cubre más distancia que el mismo número de muescas lentas. Para desactivar la aceleración y mantener una velocidad constante por muesca, establezca `wheelScrollAccelerationEnabled` en `false` en [`settings.json`](/docs/es/settings#available-settings). Esta configuración requiere Claude Code v2.1.174 o posterior.

130 130 

131<h3 id="scroll-in-the-jetbrains-ide-terminal">131<h3 id="scroll-in-the-jetbrains-ide-terminal">

132 Desplazamiento en la terminal del IDE de JetBrains132 Desplazamiento en la terminal del IDE de JetBrains


187 187 

188No todas las versiones de tmux aplican salida sincronizada desde aplicaciones, por lo que puede ver más parpadeo durante los redibujados bajo tmux que cuando ejecuta Claude Code directamente en su terminal. Si el parpadeo es notable, especialmente a través de SSH, actualice a la versión más reciente de tmux o ejecute Claude Code en su propia pestaña de terminal fuera de tmux. Verifique su versión de tmux con `tmux -V`.188No todas las versiones de tmux aplican salida sincronizada desde aplicaciones, por lo que puede ver más parpadeo durante los redibujados bajo tmux que cuando ejecuta Claude Code directamente en su terminal. Si el parpadeo es notable, especialmente a través de SSH, actualice a la versión más reciente de tmux o ejecute Claude Code en su propia pestaña de terminal fuera de tmux. Verifique su versión de tmux con `tmux -V`.

189 189 

190{/* min-version: 2.1.200 */}Claude Code activa la salida sincronizada automáticamente cuando detecta tmux 3.4 o posterior desde la variable `TERM_PROGRAM_VERSION`, y recurre a consultar la terminal directamente para obtener soporte de salida sincronizada cuando no se puede determinar la versión. Si los redibujados realmente se vuelven atómicos depende de que su versión de tmux respete la salida sincronizada; si aún ve parpadeo bajo tmux 3.4 o posterior, actualice a la versión más reciente de tmux. Esta detección requiere Claude Code v2.1.200 o posterior.190Claude Code activa la salida sincronizada automáticamente cuando detecta tmux 3.4 o posterior desde la variable `TERM_PROGRAM_VERSION`, y recurre a consultar la terminal directamente para obtener soporte de salida sincronizada cuando no se puede determinar la versión. Si los redibujados realmente se vuelven atómicos depende de que su versión de tmux respete la salida sincronizada; si aún ve parpadeo bajo tmux 3.4 o posterior, actualice a la versión más reciente de tmux. Esta detección requiere Claude Code v2.1.200 o posterior.

191 191 

192<h2 id="keep-native-text-selection">192<h2 id="keep-native-text-selection">

193 Mantener la selección de texto nativa193 Mantener la selección de texto nativa


203 203 

204Dentro de tmux también escribe en el búfer de pegado de tmux. Sobre SSH se vuelve a secuencias de escape OSC 52. Claude Code imprime un aviso después de cada copia diciéndole qué ruta utilizó.204Dentro de tmux también escribe en el búfer de pegado de tmux. Sobre SSH se vuelve a secuencias de escape OSC 52. Claude Code imprime un aviso después de cada copia diciéndole qué ruta utilizó.

205 205 

206Algunos terminales bloquean OSC 52 de forma predeterminada. iTerm2 lo bloquea hasta que active Configuración → General → Selección → Las aplicaciones en el terminal pueden acceder al portapapeles; ejecutar [`/terminal-setup`](/es/terminal-config) en iTerm2 habilita esto para usted.206Algunos terminales bloquean OSC 52 de forma predeterminada. iTerm2 lo bloquea hasta que active Configuración → General → Selección → Las aplicaciones en el terminal pueden acceder al portapapeles; ejecutar [`/terminal-setup`](/docs/es/terminal-config) en iTerm2 habilita esto para usted.

207 207 

208Para una selección nativa puntual, la tecla a utilizar depende de su terminal:208Para una selección nativa puntual, la tecla a utilizar depende de su terminal:

209 209 


238 238 

239El renderizado a pantalla completa envía solo las celdas que cambiaron entre fotogramas. Algunos terminales, más comúnmente Windows Terminal y otros hosts respaldados por ConPTY, coalescan estas escrituras posicionadas incorrectamente y dejan fragmentos de salida anterior en la pantalla hasta que redimensiona la ventana.239El renderizado a pantalla completa envía solo las celdas que cambiaron entre fotogramas. Algunos terminales, más comúnmente Windows Terminal y otros hosts respaldados por ConPTY, coalescan estas escrituras posicionadas incorrectamente y dejan fragmentos de salida anterior en la pantalla hasta que redimensiona la ventana.

240 240 

241Establezca [`CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1`](/es/env-vars) para repintar cada celda en cada fotograma en lugar de enviar actualizaciones incrementales.241Establezca [`CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1`](/docs/es/env-vars) para repintar cada celda en cada fotograma en lugar de enviar actualizaciones incrementales.

242 242 

243En Windows PowerShell:243En Windows PowerShell:

244 244 


253CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1 claude253CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT=1 claude

254```254```

255 255 

256En Windows, Claude Code ya habilita automáticamente el repintado completo para sesiones en segundo plano y [vista de agente](/es/agent-view), por lo que solo necesita establecer la variable para una sesión interactiva a pantalla completa que inició directamente.256En Windows, Claude Code ya habilita automáticamente el repintado completo para sesiones en segundo plano y [vista de agente](/docs/es/agent-view), por lo que solo necesita establecer la variable para una sesión interactiva a pantalla completa que inició directamente.

257 257 

258<h2 id="research-preview">258<h2 id="research-preview">

259 Vista previa de investigación259 Vista previa de investigación


265 265 

266Para desactivar el renderizado a pantalla completa, ejecute `/tui default`, o desestablezca `CLAUDE_CODE_NO_FLICKER` si la habilitó de esa manera. Para forzar el renderizador clásico independientemente de la configuración `tui` guardada, establezca `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1`. El renderizador clásico mantiene la conversación en el desplazamiento nativo de su terminal para que `Cmd+f` y el modo de copia de tmux funcionen como de costumbre.266Para desactivar el renderizado a pantalla completa, ejecute `/tui default`, o desestablezca `CLAUDE_CODE_NO_FLICKER` si la habilitó de esa manera. Para forzar el renderizador clásico independientemente de la configuración `tui` guardada, establezca `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1`. El renderizador clásico mantiene la conversación en el desplazamiento nativo de su terminal para que `Cmd+f` y el modo de copia de tmux funcionen como de costumbre.

267 267 

268Las sesiones en segundo plano abiertas desde la [vista de agente](/es/agent-view) o `claude attach` siempre utilizan renderizado a pantalla completa. La terminal adjunta entra en el búfer de pantalla alternativa para mostrar la sesión, y el renderizador clásico no tiene desplazamiento ni manejo del ratón allí, por lo que la configuración `tui` y `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` no se aplican a ellas.268Las sesiones en segundo plano abiertas desde la [vista de agente](/docs/es/agent-view) o `claude attach` siempre utilizan renderizado a pantalla completa. La terminal adjunta entra en el búfer de pantalla alternativa para mostrar la sesión, y el renderizador clásico no tiene desplazamiento ni manejo del ratón allí, por lo que la configuración `tui` y `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` no se aplican a ellas.

Details

108 </Step>108 </Step>

109 109 

110 <Step title="Siga los mensajes del asistente">110 <Step title="Siga los mensajes del asistente">

111 Elija cómo se autentica en Google Cloud: Credenciales predeterminadas de aplicación de `gcloud`, un archivo de clave de cuenta de servicio, o credenciales ya en su entorno. El asistente detecta su proyecto y región, verifica qué modelos Claude puede invocar su proyecto, y le permite fijarlos. Guarda el resultado en el bloque `env` de su [archivo de configuración de usuario](/es/settings), por lo que no necesita exportar variables de entorno usted mismo.111 Elija cómo se autentica en Google Cloud: Credenciales predeterminadas de aplicación de `gcloud`, un archivo de clave de cuenta de servicio, o credenciales ya en su entorno. El asistente detecta su proyecto y región, verifica qué modelos Claude puede invocar su proyecto, y le permite fijarlos. Guarda el resultado en el bloque `env` de su [archivo de configuración de usuario](/docs/es/settings), por lo que no necesita exportar variables de entorno usted mismo.

112 </Step>112 </Step>

113</Steps>113</Steps>

114 114 

115Después de haber iniciado sesión, ejecute `/setup-vertex` en cualquier momento para reabrirlo el asistente y cambiar sus credenciales, proyecto, región o fijaciones de modelo. El paso de fijación de modelo comienza desde sus modelos actualmente fijados. El asistente escribe en `~/.claude/settings.json`, o en `$CLAUDE_CONFIG_DIR/settings.json` cuando [`CLAUDE_CONFIG_DIR`](/es/env-vars#variables) está configurado.115Después de haber iniciado sesión, ejecute `/setup-vertex` en cualquier momento para reabrirlo el asistente y cambiar sus credenciales, proyecto, región o fijaciones de modelo. El paso de fijación de modelo comienza desde sus modelos actualmente fijados. El asistente escribe en `~/.claude/settings.json`, o en `$CLAUDE_CONFIG_DIR/settings.json` cuando [`CLAUDE_CONFIG_DIR`](/docs/es/env-vars#variables) está configurado.

116 116 

117<h2 id="region-configuration">117<h2 id="region-configuration">

118 Configuración de región118 Configuración de región


212export VERTEX_REGION_CLAUDE_4_6_SONNET=europe-west1212export VERTEX_REGION_CLAUDE_4_6_SONNET=europe-west1

213```213```

214 214 

215La mayoría de las versiones de modelo tienen una variable `VERTEX_REGION_CLAUDE_*` correspondiente. Consulte la [referencia de variables de entorno](/es/env-vars) para obtener la lista completa. Verifique [Google Cloud's Agent Platform Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) para determinar qué modelos admiten puntos finales globales frente a solo regionales.215La mayoría de las versiones de modelo tienen una variable `VERTEX_REGION_CLAUDE_*` correspondiente. Consulte la [referencia de variables de entorno](/docs/es/env-vars) para obtener la lista completa. Verifique [Google Cloud's Agent Platform Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) para determinar qué modelos admiten puntos finales globales frente a solo regionales.

216 216 

217[Prompt caching](/es/prompt-caching) se habilita automáticamente. Para deshabilitarlo, establezca `DISABLE_PROMPT_CACHING=1`. Para solicitar un TTL de caché de 1 hora en lugar del predeterminado de 5 minutos, establezca `ENABLE_PROMPT_CACHING_1H=1`; las escrituras de caché con un TTL de 1 hora se facturan a una tarifa más alta. Para límites de velocidad elevados, póngase en contacto con el soporte de Google Cloud. Al usar Google Cloud's Agent Platform, el comando `/logout` no está disponible ya que la autenticación se maneja a través de credenciales de Google Cloud.217[Prompt caching](/docs/es/prompt-caching) se habilita automáticamente. Para deshabilitarlo, establezca `DISABLE_PROMPT_CACHING=1`. Para solicitar un TTL de caché de 1 hora en lugar del predeterminado de 5 minutos, establezca `ENABLE_PROMPT_CACHING_1H=1`; las escrituras de caché con un TTL de 1 hora se facturan a una tarifa más alta. Para límites de velocidad elevados, póngase en contacto con el soporte de Google Cloud. Al usar Google Cloud's Agent Platform, el comando `/logout` no está disponible ya que la autenticación se maneja a través de credenciales de Google Cloud.

218 218 

219Claude Code deshabilita [MCP tool search](/es/mcp#scale-with-mcp-tool-search) de forma predeterminada en Google Cloud's Agent Platform, por lo que las definiciones de herramientas MCP se cargan por adelantado. Google Cloud's Agent Platform admite búsqueda de herramientas para Claude Sonnet 4.5 y posterior y Claude Opus 4.5 y posterior. Establezca `ENABLE_TOOL_SEARCH=true` para habilitarlo en esos modelos. Los modelos anteriores en Google Cloud's Agent Platform no aceptan el encabezado beta requerido, y las solicitudes fallan si habilita la búsqueda de herramientas con ellos.219Claude Code deshabilita [MCP tool search](/docs/es/mcp#scale-with-mcp-tool-search) de forma predeterminada en Google Cloud's Agent Platform, por lo que las definiciones de herramientas MCP se cargan por adelantado. Google Cloud's Agent Platform admite búsqueda de herramientas para Claude Sonnet 4.5 y posterior y Claude Opus 4.5 y posterior. Establezca `ENABLE_TOOL_SEARCH=true` para habilitarlo en esos modelos. Los modelos anteriores en Google Cloud's Agent Platform no aceptan el encabezado beta requerido, y las solicitudes fallan si habilita la búsqueda de herramientas con ellos.

220 220 

221<h3 id="5-pin-model-versions">221<h3 id="5-pin-model-versions">

222 5. Fijar versiones de modelo222 5. Fijar versiones de modelo


236export ANTHROPIC_DEFAULT_HAIKU_MODEL='claude-haiku-4-5@20251001'236export ANTHROPIC_DEFAULT_HAIKU_MODEL='claude-haiku-4-5@20251001'

237```237```

238 238 

239Para los ID de modelo actuales y heredados, consulte [Descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Consulte [Configuración de modelo](/es/model-config#pin-models-for-third-party-deployments) para obtener la lista completa de variables de entorno.239Para los ID de modelo actuales y heredados, consulte [Descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Consulte [Configuración de modelo](/docs/es/model-config#pin-models-for-third-party-deployments) para obtener la lista completa de variables de entorno.

240 240 

241Claude Code utiliza estos modelos predeterminados cuando no se establecen variables de fijación:241Claude Code utiliza estos modelos predeterminados cuando no se establecen variables de fijación:

242 242 


254 Los modelos Opus tienen un precio por token más alto que los modelos Sonnet, por lo que una implementación que no fija un modelo principal se factura a la tarifa de Opus una vez que se actualiza a v2.1.207 o posterior. Para mantener Sonnet 4.5 como el modelo principal, establezca `ANTHROPIC_MODEL` en su ID de modelo completo. Una implementación que dirige el valor predeterminado con `ANTHROPIC_DEFAULT_SONNET_MODEL` y no establece `ANTHROPIC_DEFAULT_OPUS_MODEL` mantiene su modelo Sonnet dirigido como el valor predeterminado.254 Los modelos Opus tienen un precio por token más alto que los modelos Sonnet, por lo que una implementación que no fija un modelo principal se factura a la tarifa de Opus una vez que se actualiza a v2.1.207 o posterior. Para mantener Sonnet 4.5 como el modelo principal, establezca `ANTHROPIC_MODEL` en su ID de modelo completo. Una implementación que dirige el valor predeterminado con `ANTHROPIC_DEFAULT_SONNET_MODEL` y no establece `ANTHROPIC_DEFAULT_OPUS_MODEL` mantiene su modelo Sonnet dirigido como el valor predeterminado.

255</Warning>255</Warning>

256 256 

257{/* min-version: 2.1.207 */}Antes de v2.1.207, el modelo principal en Google Cloud's Agent Platform se establecía de forma predeterminada en Sonnet 4.5, el alias `opus` se resolvía a Opus 4.6, y las tareas en segundo plano siempre utilizaban el modelo principal.257Antes de v2.1.207, el modelo principal en Google Cloud's Agent Platform se establecía de forma predeterminada en Sonnet 4.5, el alias `opus` se resolvía a Opus 4.6, y las tareas en segundo plano siempre utilizaban el modelo principal.

258 258 

259Para personalizar aún más los modelos:259Para personalizar aún más los modelos:

260 260 


269 269 

270Cuando Claude Code se inicia con Google Cloud's Agent Platform configurado, verifica que los modelos que pretende usar sean accesibles en su proyecto.270Cuando Claude Code se inicia con Google Cloud's Agent Platform configurado, verifica que los modelos que pretende usar sean accesibles en su proyecto.

271 271 

272Si ha fijado una versión de modelo que es más antigua que el valor predeterminado actual de Claude Code, y su proyecto puede invocar la versión más reciente, Claude Code le solicita que actualice la fijación. Aceptar escribe el nuevo ID de modelo en su [archivo de configuración de usuario](/es/settings) y reinicia Claude Code. Rechazar se recuerda hasta el próximo cambio de versión predeterminada.272Si ha fijado una versión de modelo que es más antigua que el valor predeterminado actual de Claude Code, y su proyecto puede invocar la versión más reciente, Claude Code le solicita que actualice la fijación. Aceptar escribe el nuevo ID de modelo en su [archivo de configuración de usuario](/docs/es/settings) y reinicia Claude Code. Rechazar se recuerda hasta el próximo cambio de versión predeterminada.

273 273 

274Si no ha fijado un modelo y el valor predeterminado actual no está disponible en su proyecto, Claude Code retrocede para la sesión actual y muestra un aviso. Intenta primero versiones anteriores del modelo predeterminado y, cuando el valor predeterminado es un modelo Opus y no hay ninguna versión de Opus disponible, retrocede al modelo Sonnet predeterminado. El retroceso no se persiste. Habilite el modelo más reciente en [Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) o [fije una versión](#5-pin-model-versions) para hacer la opción permanente.274Si no ha fijado un modelo y el valor predeterminado actual no está disponible en su proyecto, Claude Code retrocede para la sesión actual y muestra un aviso. Intenta primero versiones anteriores del modelo predeterminado y, cuando el valor predeterminado es un modelo Opus y no hay ninguna versión de Opus disponible, retrocede al modelo Sonnet predeterminado. El retroceso no se persiste. Habilite el modelo más reciente en [Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) o [fije una versión](#5-pin-model-versions) para hacer la opción permanente.

275 275 


297 297 

298Claude Sonnet 5, Opus 4.6 y posteriores, y Sonnet 4.6 admiten la [ventana de contexto de 1M de tokens](https://platform.claude.com/docs/es/build-with-claude/context-windows#context-window-sizes-by-model) en Google Cloud's Agent Platform. Sonnet 5 siempre se ejecuta con la ventana de 1M, sin ninguna variante `[1m]` para seleccionar. Para los otros modelos, Claude Code habilita automáticamente la ventana de contexto extendida cuando selecciona una variante de modelo de 1M.298Claude Sonnet 5, Opus 4.6 y posteriores, y Sonnet 4.6 admiten la [ventana de contexto de 1M de tokens](https://platform.claude.com/docs/es/build-with-claude/context-windows#context-window-sizes-by-model) en Google Cloud's Agent Platform. Sonnet 5 siempre se ejecuta con la ventana de 1M, sin ninguna variante `[1m]` para seleccionar. Para los otros modelos, Claude Code habilita automáticamente la ventana de contexto extendida cuando selecciona una variante de modelo de 1M.

299 299 

300El [asistente de configuración](#sign-in-with-agent-platform) ofrece una opción de contexto de 1M cuando fija modelos. Para habilitarlo para un modelo fijado manualmente en su lugar, agregue `[1m]` al ID del modelo. Consulte [Fijar modelos para implementaciones de terceros](/es/model-config#pin-models-for-third-party-deployments) para obtener detalles.300El [asistente de configuración](#sign-in-with-agent-platform) ofrece una opción de contexto de 1M cuando fija modelos. Para habilitarlo para un modelo fijado manualmente en su lugar, agregue `[1m]` al ID del modelo. Consulte [Fijar modelos para implementaciones de terceros](/docs/es/model-config#pin-models-for-third-party-deployments) para obtener detalles.

301 301 

302<h2 id="troubleshooting">302<h2 id="troubleshooting">

303 Solución de problemas303 Solución de problemas

headless.md +23 −23

Details

6 6 

7> Utilice el Agent SDK para ejecutar Claude Code mediante programación desde la CLI, Python o TypeScript.7> Utilice el Agent SDK para ejecutar Claude Code mediante programación desde la CLI, Python o TypeScript.

8 8 

9El [Agent SDK](/es/agent-sdk/overview) le proporciona las mismas herramientas, bucle de agente y gestión de contexto que potencian Claude Code. Está disponible como CLI para scripts e CI/CD, o como paquetes de [Python](/es/agent-sdk/python) y [TypeScript](/es/agent-sdk/typescript) para control programático completo.9El [Agent SDK](/docs/es/agent-sdk/overview) le proporciona las mismas herramientas, bucle de agente y gestión de contexto que potencian Claude Code. Está disponible como CLI para scripts e CI/CD, o como paquetes de [Python](/docs/es/agent-sdk/python) y [TypeScript](/docs/es/agent-sdk/typescript) para control programático completo.

10 10 

11Para ejecutar Claude Code en modo no interactivo, pase `-p` con su indicación y cualquier [opción de CLI](/es/cli-reference):11Para ejecutar Claude Code en modo no interactivo, pase `-p` con su indicación y cualquier [opción de CLI](/docs/es/cli-reference):

12 12 

13```bash theme={null}13```bash theme={null}

14claude -p "Find and fix the bug in auth.py" --allowedTools "Read,Edit,Bash"14claude -p "Find and fix the bug in auth.py" --allowedTools "Read,Edit,Bash"

15```15```

16 16 

17Esta página cubre el uso del Agent SDK a través de la CLI (`claude -p`). Para los paquetes SDK de Python y TypeScript con salidas estructuradas, devoluciones de llamada de aprobación de herramientas y objetos de mensaje nativos, consulte la [documentación completa del Agent SDK](/es/agent-sdk/overview).17Esta página cubre el uso del Agent SDK a través de la CLI (`claude -p`). Para los paquetes SDK de Python y TypeScript con salidas estructuradas, devoluciones de llamada de aprobación de herramientas y objetos de mensaje nativos, consulte la [documentación completa del Agent SDK](/docs/es/agent-sdk/overview).

18 18 

19<h2 id="basic-usage">19<h2 id="basic-usage">

20 Uso básico20 Uso básico

21</h2>21</h2>

22 22 

23Agregue la bandera `-p` (o `--print`) a cualquier comando `claude` para ejecutarlo de forma no interactiva. Todas las [opciones de CLI](/es/cli-reference) funcionan con `-p`, incluyendo:23Agregue la bandera `-p` (o `--print`) a cualquier comando `claude` para ejecutarlo de forma no interactiva. Todas las [opciones de CLI](/docs/es/cli-reference) funcionan con `-p`, incluyendo:

24 24 

25* `--continue` para [continuar conversaciones](#continue-conversations)25* `--continue` para [continuar conversaciones](#continue-conversations)

26* `--allowedTools` para [aprobar herramientas automáticamente](#auto-approve-tools)26* `--allowedTools` para [aprobar herramientas automáticamente](#auto-approve-tools)


36 Comenzar más rápido con modo bare36 Comenzar más rápido con modo bare

37</h3>37</h3>

38 38 

39Agregue `--bare` para reducir el tiempo de inicio omitiendo el descubrimiento automático de hooks, skills, plugins, servidores MCP, memoria automática y CLAUDE.md. Sin él, `claude -p` carga el mismo [contexto](/es/how-claude-code-works#the-context-window) que una sesión interactiva, incluyendo cualquier cosa configurada en el directorio de trabajo o `~/.claude`.39Agregue `--bare` para reducir el tiempo de inicio omitiendo el descubrimiento automático de hooks, skills, plugins, servidores MCP, memoria automática y CLAUDE.md. Sin él, `claude -p` carga el mismo [contexto](/docs/es/how-claude-code-works#the-context-window) que una sesión interactiva, incluyendo cualquier cosa configurada en el directorio de trabajo o `~/.claude`.

40 40 

41El modo bare es útil para CI y scripts donde necesita el mismo resultado en cada máquina. Un hook en el `~/.claude` de un compañero de equipo o un servidor MCP en el `.mcp.json` del proyecto no se ejecutarán, porque el modo bare nunca los lee. Solo las banderas que pasa explícitamente tienen efecto.41El modo bare es útil para CI y scripts donde necesita el mismo resultado en cada máquina. Un hook en el `~/.claude` de un compañero de equipo o un servidor MCP en el `.mcp.json` del proyecto no se ejecutarán, porque el modo bare nunca los lee. Solo las banderas que pasa explícitamente tienen efecto.

42 42 


66 Tareas en segundo plano al salir66 Tareas en segundo plano al salir

67</h3>67</h3>

68 68 

69Si Claude inicia una [tarea Bash en segundo plano](/es/tools-reference#bash-tool-behavior) durante una ejecución de `claude -p`, por ejemplo un servidor de desarrollo o una compilación de vigilancia, esa tarea se termina aproximadamente cinco segundos después de que Claude haya devuelto su resultado final y stdin se haya cerrado. El período de gracia permite que una tarea que finaliza justo después del resultado aún entregue su salida. Antes de v2.1.163, un proceso en segundo plano que nunca se cerraba mantendría la invocación de `claude -p` abierta indefinidamente.69Si Claude inicia una [tarea Bash en segundo plano](/docs/es/tools-reference#bash-tool-behavior) durante una ejecución de `claude -p`, por ejemplo un servidor de desarrollo o una compilación de vigilancia, esa tarea se termina aproximadamente cinco segundos después de que Claude haya devuelto su resultado final y stdin se haya cerrado. El período de gracia permite que una tarea que finaliza justo después del resultado aún entregue su salida. Antes de v2.1.163, un proceso en segundo plano que nunca se cerraba mantendría la invocación de `claude -p` abierta indefinidamente.

70 70 

71Los [subagentes](/es/sub-agents) y flujos de trabajo en segundo plano están exentos del período de gracia de cinco segundos porque su resultado es parte de la salida final, por lo que `claude -p` espera a que se completen. A partir de v2.1.182, esa espera se limita a diez minutos de forma predeterminada para que un agente en segundo plano atascado no pueda mantener el proceso abierto indefinidamente. Ajuste el límite con [`CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS`](/es/env-vars), o establézcalo en `0` para esperar sin límite.71Los [subagentes](/docs/es/sub-agents) y flujos de trabajo en segundo plano están exentos del período de gracia de cinco segundos porque su resultado es parte de la salida final, por lo que `claude -p` espera a que se completen. A partir de v2.1.182, esa espera se limita a diez minutos de forma predeterminada para que un agente en segundo plano atascado no pueda mantener el proceso abierto indefinidamente. Ajuste el límite con [`CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS`](/docs/es/env-vars), o establézcalo en `0` para esperar sin límite.

72 72 

73<h2 id="examples">73<h2 id="examples">

74 Ejemplos74 Ejemplos


88cat build-error.txt | claude -p 'concisely explain the root cause of this build error' > output.txt88cat build-error.txt | claude -p 'concisely explain the root cause of this build error' > output.txt

89```89```

90 90 

91Con `--output-format json`, la carga útil de respuesta incluye `total_cost_usd` y un desglose de costos por modelo, por lo que los llamadores con scripts pueden rastrear el gasto por invocación sin consultar el [panel de uso](/es/costs).91Con `--output-format json`, la carga útil de respuesta incluye `total_cost_usd` y un desglose de costos por modelo, por lo que los llamadores con scripts pueden rastrear el gasto por invocación sin consultar el [panel de uso](/docs/es/costs).

92 92 

93<Note>93<Note>

94 A partir de Claude Code v2.1.128, stdin canalizado está limitado a 10MB. Si excede el límite, Claude Code sale con un error claro y un estado distinto de cero. Para trabajar con entradas más grandes, escriba el contenido en un archivo y haga referencia a la ruta del archivo en su indicador en lugar de canalizarlo.94 A partir de Claude Code v2.1.128, stdin canalizado está limitado a 10MB. Si excede el límite, Claude Code sale con un error claro y un estado distinto de cero. Para trabajar con entradas más grandes, escriba el contenido en un archivo y haga referencia a la ruta del archivo en su indicador en lugar de canalizarlo.


163claude -p "Explain recursion" --output-format stream-json --verbose --include-partial-messages163claude -p "Explain recursion" --output-format stream-json --verbose --include-partial-messages

164```164```

165 165 

166La última línea de la transmisión es un mensaje `result` con el texto de respuesta final, el costo y los metadatos de la sesión. {/* min-version: 2.1.208 */}Antes de v2.1.208, canalizar una respuesta grande podría truncar la línea final y omitir el mensaje `result`.166La última línea de la transmisión es un mensaje `result` con el texto de respuesta final, el costo y los metadatos de la sesión. Antes de v2.1.208, canalizar una respuesta grande podría truncar la línea final y omitir el mensaje `result`.

167 167 

168El siguiente ejemplo utiliza [jq](https://jqlang.github.io/jq/) para filtrar deltas de texto y mostrar solo el texto transmitido. La bandera `-r` genera cadenas sin formato (sin comillas) y `-j` se une sin saltos de línea para que los tokens se transmitan continuamente:168El siguiente ejemplo utiliza [jq](https://jqlang.github.io/jq/) para filtrar deltas de texto y mostrar solo el texto transmitido. La bandera `-r` genera cadenas sin formato (sin comillas) y `-j` se une sin saltos de línea para que los tokens se transmitan continuamente:

169 169 


188 188 

189El evento `system/init` informa metadatos de sesión incluyendo el modelo, herramientas, servidores MCP y plugins cargados. Es el primer evento en la transmisión a menos que eventos de inicio lo precedan:189El evento `system/init` informa metadatos de sesión incluyendo el modelo, herramientas, servidores MCP y plugins cargados. Es el primer evento en la transmisión a menos que eventos de inicio lo precedan:

190 190 

191* eventos `plugin_install`, cuando [`CLAUDE_CODE_SYNC_PLUGIN_INSTALL`](/es/env-vars) está configurado.191* eventos `plugin_install`, cuando [`CLAUDE_CODE_SYNC_PLUGIN_INSTALL`](/docs/es/env-vars) está configurado.

192* {/* min-version: 2.1.204 */}[eventos `hook_started`, `hook_progress` y `hook_response`](/es/agent-sdk/typescript#sdkhookstartedmessage), mientras se ejecuta un hook [`SessionStart`](/es/hooks#sessionstart) o [`Setup`](/es/hooks#setup) configurado. Estos se transmiten a medida que el hook los produce. Claude Code v2.1.169 a v2.1.203 los entregó en un lote después de que el hook se completó, aún antes de `system/init`; v2.1.204 restauró la entrega en vivo.192* [eventos `hook_started`, `hook_progress` y `hook_response`](/docs/es/agent-sdk/typescript#sdkhookstartedmessage), mientras se ejecuta un hook [`SessionStart`](/docs/es/hooks#sessionstart) o [`Setup`](/docs/es/hooks#setup) configurado. Estos se transmiten a medida que el hook los produce. Claude Code v2.1.169 a v2.1.203 los entregó en un lote después de que el hook se completó, aún antes de `system/init`; v2.1.204 restauró la entrega en vivo.

193 193 

194El evento también lleva una matriz `capabilities` opcional de cadenas que nombran los comportamientos del protocolo que esta versión de Claude Code implementa, como `interrupt_receipt_v1`. Verifíquelo para detectar características en lugar de comparar cadenas de versión, e ignore valores que no reconozca. El campo requiere Claude Code v2.1.205 o posterior y está ausente en versiones anteriores. Consulte [`SDKSystemMessage`](/es/agent-sdk/typescript#sdksystemmessage) para la lista de capacidades.194El evento también lleva una matriz `capabilities` opcional de cadenas que nombran los comportamientos del protocolo que esta versión de Claude Code implementa, como `interrupt_receipt_v1`. Verifíquelo para detectar características en lugar de comparar cadenas de versión, e ignore valores que no reconozca. El campo requiere Claude Code v2.1.205 o posterior y está ausente en versiones anteriores. Consulte [`SDKSystemMessage`](/docs/es/agent-sdk/typescript#sdksystemmessage) para la lista de capacidades.

195 195 

196Use los campos de plugin para fallar CI cuando un plugin no se cargó:196Use los campos de plugin para fallar CI cuando un plugin no se cargó:

197 197 


200| `plugins` | matriz | plugins que se cargaron exitosamente, cada uno con `name` y `path` |200| `plugins` | matriz | plugins que se cargaron exitosamente, cada uno con `name` y `path` |

201| `plugin_errors` | matriz | errores de tiempo de carga de plugin, cada uno con `plugin`, `type` y `message`. Incluye versiones de dependencia insatisfechas y fallos de carga de `--plugin-dir` como una ruta faltante o archivo inválido. Los plugins afectados se degradan y están ausentes de `plugins`. La clave se omite cuando no hay errores |201| `plugin_errors` | matriz | errores de tiempo de carga de plugin, cada uno con `plugin`, `type` y `message`. Incluye versiones de dependencia insatisfechas y fallos de carga de `--plugin-dir` como una ruta faltante o archivo inválido. Los plugins afectados se degradan y están ausentes de `plugins`. La clave se omite cuando no hay errores |

202 202 

203Cuando [`CLAUDE_CODE_SYNC_PLUGIN_INSTALL`](/es/env-vars) está configurado, Claude Code emite eventos `system/plugin_install` mientras los plugins del marketplace se instalan antes del primer turno. Use estos para mostrar el progreso de instalación en su propia interfaz de usuario.203Cuando [`CLAUDE_CODE_SYNC_PLUGIN_INSTALL`](/docs/es/env-vars) está configurado, Claude Code emite eventos `system/plugin_install` mientras los plugins del marketplace se instalan antes del primer turno. Use estos para mostrar el progreso de instalación en su propia interfaz de usuario.

204 204 

205| Campo | Tipo | Descripción |205| Campo | Tipo | Descripción |

206| ------------ | ------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |206| ------------ | ------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |


212| `uuid` | cadena | identificador único del evento |212| `uuid` | cadena | identificador único del evento |

213| `session_id` | cadena | sesión a la que pertenece el evento |213| `session_id` | cadena | sesión a la que pertenece el evento |

214 214 

215Para transmisión programática con devoluciones de llamada y objetos de mensaje, consulte [Transmitir respuestas en tiempo real](/es/agent-sdk/streaming-output) en la documentación del Agent SDK.215Para transmisión programática con devoluciones de llamada y objetos de mensaje, consulte [Transmitir respuestas en tiempo real](/docs/es/agent-sdk/streaming-output) en la documentación del Agent SDK.

216 216 

217<h3 id="auto-approve-tools">217<h3 id="auto-approve-tools">

218 Aprobar herramientas automáticamente218 Aprobar herramientas automáticamente


225 --allowedTools "Bash,Read,Edit"225 --allowedTools "Bash,Read,Edit"

226```226```

227 227 

228Para establecer una línea base para toda la sesión en lugar de enumerar herramientas individuales, pase un [modo de permiso](/es/permission-modes). `dontAsk` deniega cualquier cosa que no esté en sus reglas `permissions.allow` o el [conjunto de comandos de solo lectura](/es/permissions#read-only-commands), que es útil para ejecuciones de CI bloqueadas. `AskUserQuestion`, herramientas de conector [que su organización configuró para `ask`](/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) se deniegan incluso cuando una regla de permiso coincide.228Para establecer una línea base para toda la sesión en lugar de enumerar herramientas individuales, pase un [modo de permiso](/docs/es/permission-modes). `dontAsk` deniega cualquier cosa que no esté en sus reglas `permissions.allow` o el [conjunto de comandos de solo lectura](/docs/es/permissions#read-only-commands), que es útil para ejecuciones de CI bloqueadas. `AskUserQuestion`, herramientas de conector [que su organización configuró para `ask`](/docs/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) se deniegan incluso cuando una regla de permiso coincide.

229 229 

230`acceptEdits` permite que Claude escriba archivos sin solicitar y también aprueba automáticamente comandos comunes del sistema de archivos como `mkdir`, `touch`, `mv` y `cp`. Otros comandos de shell y solicitudes de red aún necesitan una entrada `--allowedTools` o una regla `permissions.allow`, de lo contrario la ejecución se aborta cuando se intenta uno:230`acceptEdits` permite que Claude escriba archivos sin solicitar y también aprueba automáticamente comandos comunes del sistema de archivos como `mkdir`, `touch`, `mv` y `cp`. Otros comandos de shell y solicitudes de red aún necesitan una entrada `--allowedTools` o una regla `permissions.allow`, de lo contrario la ejecución se aborta cuando se intenta uno:

231 231 


244 --allowedTools "Bash(git diff *),Bash(git log *),Bash(git status *),Bash(git commit *)"244 --allowedTools "Bash(git diff *),Bash(git log *),Bash(git status *),Bash(git commit *)"

245```245```

246 246 

247La bandera `--allowedTools` utiliza [sintaxis de regla de permiso](/es/settings#permission-rule-syntax). El ` *` final habilita la coincidencia de prefijo, por lo que `Bash(git diff *)` permite cualquier comando que comience con `git diff`. El espacio antes de `*` es importante: sin él, `Bash(git diff*)` también coincidiría con `git diff-index`.247La bandera `--allowedTools` utiliza [sintaxis de regla de permiso](/docs/es/settings#permission-rule-syntax). El ` *` final habilita la coincidencia de prefijo, por lo que `Bash(git diff *)` permite cualquier comando que comience con `git diff`. El espacio antes de `*` es importante: sin él, `Bash(git diff*)` también coincidiría con `git diff-index`.

248 248 

249<Note>249<Note>

250 Las skills invocadas por el usuario y los comandos personalizados funcionan en modo `-p`: incluya `/skill-name` en la cadena de indicador y Claude Code lo expande antes de ejecutar. Los comandos integrados que solo se ejecutan en la interfaz de terminal, como `/login`, no están disponibles en modo `-p`. {/* min-version: 2.1.205 */}`/model`, `/effort`, `/fast`, `/color` y `/rename` aceptan el valor como argumento, por ejemplo `/model sonnet`, y `/mcp` sin argumento imprime un resumen de texto del estado del servidor; estas formas requieren Claude Code v2.1.205 o posterior y siguen las [notas de disponibilidad](/es/commands#all-commands) de cada comando. {/* min-version: 2.1.181 */}Para cambiar una configuración desde una invocación `-p`, pase `key=value` a `/config`, por ejemplo `/config thinking=false`.250 Las skills invocadas por el usuario y los comandos personalizados funcionan en modo `-p`: incluya `/skill-name` en la cadena de indicador y Claude Code lo expande antes de ejecutar. Los comandos integrados que solo se ejecutan en la interfaz de terminal, como `/login`, no están disponibles en modo `-p`. `/model`, `/effort`, `/fast`, `/color` y `/rename` aceptan el valor como argumento, por ejemplo `/model sonnet`, y `/mcp` sin argumento imprime un resumen de texto del estado del servidor; estas formas requieren Claude Code v2.1.205 o posterior y siguen las [notas de disponibilidad](/docs/es/commands#all-commands) de cada comando. Para cambiar una configuración desde una invocación `-p`, pase `key=value` a `/config`, por ejemplo `/config thinking=false`.

251</Note>251</Note>

252 252 

253<h3 id="customize-the-system-prompt">253<h3 id="customize-the-system-prompt">


262 --output-format json262 --output-format json

263```263```

264 264 

265Consulte [banderas de indicador del sistema](/es/cli-reference#system-prompt-flags) para más opciones incluyendo `--system-prompt` para reemplazar completamente el indicador predeterminado.265Consulte [banderas de indicador del sistema](/docs/es/cli-reference#system-prompt-flags) para más opciones incluyendo `--system-prompt` para reemplazar completamente el indicador predeterminado.

266 266 

267<h3 id="continue-conversations">267<h3 id="continue-conversations">

268 Continuar conversaciones268 Continuar conversaciones


286claude -p "Continue that review" --resume "$session_id"286claude -p "Continue that review" --resume "$session_id"

287```287```

288 288 

289Ejecute ambos comandos desde el mismo directorio: la búsqueda de ID de sesión está limitada al directorio del proyecto actual y sus git worktrees. Consulte [Reanudar una sesión](/es/sessions#resume-a-session) para las reglas de alcance completo.289Ejecute ambos comandos desde el mismo directorio: la búsqueda de ID de sesión está limitada al directorio del proyecto actual y sus git worktrees. Consulte [Reanudar una sesión](/docs/es/sessions#resume-a-session) para las reglas de alcance completo.

290 290 

291<h2 id="next-steps">291<h2 id="next-steps">

292 Próximos pasos292 Próximos pasos

293</h2>293</h2>

294 294 

295* [Inicio rápido del Agent SDK](/es/agent-sdk/quickstart): construya su primer agente con Python o TypeScript295* [Inicio rápido del Agent SDK](/docs/es/agent-sdk/quickstart): construya su primer agente con Python o TypeScript

296* [Referencia de CLI](/es/cli-reference): todas las banderas y opciones de CLI296* [Referencia de CLI](/docs/es/cli-reference): todas las banderas y opciones de CLI

297* [GitHub Actions](/es/github-actions): utilice el Agent SDK en flujos de trabajo de GitHub297* [GitHub Actions](/docs/es/github-actions): utilice el Agent SDK en flujos de trabajo de GitHub

298* [GitLab CI/CD](/es/gitlab-ci-cd): utilice el Agent SDK en canalizaciones de GitLab298* [GitLab CI/CD](/docs/es/gitlab-ci-cd): utilice el Agent SDK en canalizaciones de GitLab

hooks.md +9 −9

Details

328 328 

329Todos los hooks coincidentes se ejecutan en paralelo, y los controladores idénticos se deduplicarán automáticamente. Los hooks de comando se deduplicarán por cadena de comando y `args`, y los hooks HTTP se deduplicarán por URL.329Todos los hooks coincidentes se ejecutan en paralelo, y los controladores idénticos se deduplicarán automáticamente. Los hooks de comando se deduplicarán por cadena de comando y `args`, y los hooks HTTP se deduplicarán por URL.

330 330 

331Los controladores se ejecutan en el directorio actual con el entorno de Claude Code. La variable de entorno `$CLAUDE_CODE_REMOTE` se establece en `"true"` en entornos web remotos y no se establece en la CLI local. {/* min-version: 2.1.199 */}A partir de v2.1.199, [`$CLAUDE_CODE_BRIDGE_SESSION_ID`](/docs/es/env-vars) se establece en el ID de sesión de [Remote Control](/docs/es/remote-control) mientras la sesión local tiene una conexión Remote Control activa.331Los controladores se ejecutan en el directorio actual con el entorno de Claude Code. La variable de entorno `$CLAUDE_CODE_REMOTE` se establece en `"true"` en entornos web remotos y no se establece en la CLI local. A partir de v2.1.199, [`$CLAUDE_CODE_BRIDGE_SESSION_ID`](/docs/es/env-vars) se establece en el ID de sesión de [Remote Control](/docs/es/remote-control) mientras la sesión local tiene una conexión Remote Control activa.

332 332 

333<h4 id="common-fields">333<h4 id="common-fields">

334 Campos comunes334 Campos comunes


646| Campo | Descripción |646| Campo | Descripción |

647| :---------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |647| :---------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

648| `session_id` | Identificador de sesión actual |648| `session_id` | Identificador de sesión actual |

649| `prompt_id` | UUID que identifica el prompt del usuario que se está procesando actualmente. Coincide con el [atributo `prompt.id` en eventos de OpenTelemetry](/docs/es/monitoring-usage#event-correlation-attributes), para que pueda correlacionar la salida del hook con la telemetría de un único prompt. Ausente hasta la primera entrada del usuario. {/* min-version: 2.1.196 */}Requiere Claude Code v2.1.196 o posterior |649| `prompt_id` | UUID que identifica el prompt del usuario que se está procesando actualmente. Coincide con el [atributo `prompt.id` en eventos de OpenTelemetry](/docs/es/monitoring-usage#event-correlation-attributes), para que pueda correlacionar la salida del hook con la telemetría de un único prompt. Ausente hasta la primera entrada del usuario. Requiere Claude Code v2.1.196 o posterior |

650| `transcript_path` | Ruta al JSON de conversación. El archivo de transcripción se escribe de forma asincrónica y puede rezagarse con respecto a la conversación en memoria, por lo que es posible que aún no incluya los mensajes más recientes del turno actual cuando se activa un hook. Los hooks que necesitan el texto del asistente final del turno actual deben usar `last_assistant_message` en [Stop](#stop) y [SubagentStop](#subagentstop) en lugar de leer la transcripción |650| `transcript_path` | Ruta al JSON de conversación. El archivo de transcripción se escribe de forma asincrónica y puede rezagarse con respecto a la conversación en memoria, por lo que es posible que aún no incluya los mensajes más recientes del turno actual cuando se activa un hook. Los hooks que necesitan el texto del asistente final del turno actual deben usar `last_assistant_message` en [Stop](#stop) y [SubagentStop](#subagentstop) en lugar de leer la transcripción |

651| `cwd` | Directorio de trabajo actual cuando se invoca el hook |651| `cwd` | Directorio de trabajo actual cuando se invoca el hook |

652| `permission_mode` | [Modo de permiso](/docs/es/permissions#permission-modes) actual: `"default"`, `"plan"`, `"acceptEdits"`, `"auto"`, `"dontAsk"` o `"bypassPermissions"`. El modo etiquetado como **Manual** llega como `"default"`, nunca como `"manual"`, por lo que los scripts que coinciden con `"default"` siguen funcionando. No todos los eventos reciben este campo. Consulte el ejemplo JSON en cada sección [hook event](#hook-events) |652| `permission_mode` | [Modo de permiso](/docs/es/permissions#permission-modes) actual: `"default"`, `"plan"`, `"acceptEdits"`, `"auto"`, `"dontAsk"` o `"bypassPermissions"`. El modo etiquetado como **Manual** llega como `"default"`, nunca como `"manual"`, por lo que los scripts que coinciden con `"default"` siguen funcionando. No todos los eventos reciben este campo. Consulte el ejemplo JSON en cada sección [hook event](#hook-events) |


1571En `PostToolUse`, `tool_response` para una llamada Agent completada lleva el texto final del subagente junto con telemetría de uso. Lea estos campos para registrar el costo por subagente desde un hook:1571En `PostToolUse`, `tool_response` para una llamada Agent completada lleva el texto final del subagente junto con telemetría de uso. Lea estos campos para registrar el costo por subagente desde un hook:

1572 1572 

1573| Campo | Tipo | Ejemplo | Descripción |1573| Campo | Tipo | Ejemplo | Descripción |

1574| :------------------ | :----- | :---------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |1574| :------------------ | :----- | :---------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1575| `status` | string | `"completed"` | `"completed"` para subagentes en primer plano, `"async_launched"` para subagentes en segundo plano. {/* min-version: 2.1.198 */}A partir de v2.1.198, los subagentes se ejecutan en segundo plano por defecto, por lo que un `run_in_background` omitido también produce `"async_launched"` |1575| `status` | string | `"completed"` | `"completed"` para subagentes en primer plano, `"async_launched"` para subagentes en segundo plano. A partir de v2.1.198, los subagentes se ejecutan en segundo plano por defecto, por lo que un `run_in_background` omitido también produce `"async_launched"` |

1576| `agentId` | string | `"a4d2c8f1e0b3a297"` | Identificador para la ejecución del subagente |1576| `agentId` | string | `"a4d2c8f1e0b3a297"` | Identificador para la ejecución del subagente |

1577| `content` | array | `[{"type": "text", "text": "Found 12 endpoints..."}]` | Los bloques de texto finales del subagente |1577| `content` | array | `[{"type": "text", "text": "Found 12 endpoints..."}]` | Los bloques de texto finales del subagente |

1578| `resolvedModel` | string | `"claude-sonnet-4-5"` | Modelo en el que se ejecutó el subagente, que puede diferir del modelo solicitado. {/* min-version: 2.1.174 */}Requiere Claude Code v2.1.174 o posterior |1578| `resolvedModel` | string | `"claude-sonnet-4-5"` | Modelo en el que se ejecutó el subagente, que puede diferir del modelo solicitado. Requiere Claude Code v2.1.174 o posterior |

1579| `totalTokens` | number | `12450` | Tokens totales facturados en los turnos del subagente |1579| `totalTokens` | number | `12450` | Tokens totales facturados en los turnos del subagente |

1580| `totalDurationMs` | number | `48211` | Duración de reloj de pared de la ejecución del subagente |1580| `totalDurationMs` | number | `48211` | Duración de reloj de pared de la ejecución del subagente |

1581| `totalToolUseCount` | number | `7` | Recuento de llamadas a herramientas que hizo el subagente |1581| `totalToolUseCount` | number | `7` | Recuento de llamadas a herramientas que hizo el subagente |


1605Presenta un plan y pide al usuario que lo apruebe antes de que Claude salga del [modo plan](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode). Claude escribe el plan en un archivo en el disco antes de llamar a la herramienta, por lo que el `tool_input` literal del modelo es típicamente vacío. Claude Code inyecta el contenido del plan y la ruta del archivo antes de pasar la entrada a los hooks.1605Presenta un plan y pide al usuario que lo apruebe antes de que Claude salga del [modo plan](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode). Claude escribe el plan en un archivo en el disco antes de llamar a la herramienta, por lo que el `tool_input` literal del modelo es típicamente vacío. Claude Code inyecta el contenido del plan y la ruta del archivo antes de pasar la entrada a los hooks.

1606 1606 

1607| Campo | Tipo | Ejemplo | Descripción |1607| Campo | Tipo | Ejemplo | Descripción |

1608| :--------------- | :----- | :------------------------------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |1608| :--------------- | :----- | :------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1609| `plan` | string | `"## Refactor auth\n1. Extract..."` | Contenido del plan en Markdown. Inyectado desde el archivo del plan en el disco |1609| `plan` | string | `"## Refactor auth\n1. Extract..."` | Contenido del plan en Markdown. Inyectado desde el archivo del plan en el disco |

1610| `planFilePath` | string | `"/Users/.../plans/refactor-auth.md"` | Ruta al archivo del plan. Inyectado |1610| `planFilePath` | string | `"/Users/.../plans/refactor-auth.md"` | Ruta al archivo del plan. Inyectado |

1611| `allowedPrompts` | array | `[{"tool": "Bash", "prompt": "run tests"}]` | {/* min-version: 2.1.205 */}Deprecado. Claude Code acepta el campo pero lo ignora. Antes de v2.1.205, llevaba permisos basados en prompts que Claude estaba solicitando para implementar el plan |1611| `allowedPrompts` | array | `[{"tool": "Bash", "prompt": "run tests"}]` | Deprecado. Claude Code acepta el campo pero lo ignora. Antes de v2.1.205, llevaba permisos basados en prompts que Claude estaba solicitando para implementar el plan |

1612 1612 

1613En `PostToolUse`, `tool_response` es un objeto con campos `plan` y `filePath` que contienen el plan aprobado, más banderas de estado internas. Lea `tool_response.plan` para el contenido del plan en lugar de releer el archivo desde el disco.1613En `PostToolUse`, `tool_response` es un objeto con campos `plan` y `filePath` que contienen el plan aprobado, más banderas de estado internas. Lea `tool_response.plan` para el contenido del plan en lugar de releer el archivo desde el disco.

1614 1614 


1766El campo de salida `updatedPermissions` y el campo de entrada [`permission_suggestions`](#permissionrequest-input) ambos usan el mismo array de objetos de entrada. Cada entrada tiene un `type` que determina sus otros campos, y un `destination` que controla dónde se escribe el cambio.1766El campo de salida `updatedPermissions` y el campo de entrada [`permission_suggestions`](#permissionrequest-input) ambos usan el mismo array de objetos de entrada. Cada entrada tiene un `type` que determina sus otros campos, y un `destination` que controla dónde se escribe el cambio.

1767 1767 

1768| `type` | Campos | Efecto |1768| `type` | Campos | Efecto |

1769| :------------------ | :--------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |1769| :------------------ | :--------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

1770| `addRules` | `rules`, `behavior`, `destination` | Agrega reglas de permiso. `rules` es un array de objetos `{toolName, ruleContent?}`. Omita `ruleContent` para coincidir con toda la herramienta. `behavior` es `"allow"`, `"deny"` o `"ask"` |1770| `addRules` | `rules`, `behavior`, `destination` | Agrega reglas de permiso. `rules` es un array de objetos `{toolName, ruleContent?}`. Omita `ruleContent` para coincidir con toda la herramienta. `behavior` es `"allow"`, `"deny"` o `"ask"` |

1771| `replaceRules` | `rules`, `behavior`, `destination` | Reemplaza todas las reglas del `behavior` dado en el `destination` con las `rules` proporcionadas |1771| `replaceRules` | `rules`, `behavior`, `destination` | Reemplaza todas las reglas del `behavior` dado en el `destination` con las `rules` proporcionadas |

1772| `removeRules` | `rules`, `behavior`, `destination` | Elimina reglas coincidentes del `behavior` dado |1772| `removeRules` | `rules`, `behavior`, `destination` | Elimina reglas coincidentes del `behavior` dado |

1773| `setMode` | `mode`, `destination` | Cambia el modo de permiso. Los modos válidos son `default`, `auto`, `acceptEdits`, `dontAsk`, `bypassPermissions`, `plan` y {/* min-version: 2.1.200 */}`manual` como alias para `default`. El alias `manual` requiere Claude Code v2.1.200 o posterior |1773| `setMode` | `mode`, `destination` | Cambia el modo de permiso. Los modos válidos son `default`, `auto`, `acceptEdits`, `dontAsk`, `bypassPermissions`, `plan` y `manual` como alias para `default`. El alias `manual` requiere Claude Code v2.1.200 o posterior |

1774| `addDirectories` | `directories`, `destination` | Agrega directorios de trabajo. `directories` es un array de cadenas de ruta |1774| `addDirectories` | `directories`, `destination` | Agrega directorios de trabajo. `directories` es un array de cadenas de ruta |

1775| `removeDirectories` | `directories`, `destination` | Elimina directorios de trabajo |1775| `removeDirectories` | `directories`, `destination` | Elimina directorios de trabajo |

1776 1776 

hooks-guide.md +1 −1

Details

654}654}

655```655```

656 656 

657El matcher `"Edit|Write"` se activa solo cuando Claude usa la herramienta `Edit` o `Write`, no cuando usa `Bash`, `Read`, u otra herramienta. {/* min-version: 2.1.191 */}En Claude Code v2.1.191 o posterior, una coma separa alternativas de la misma manera, por lo que `"Edit, Write"` es equivalente. Consulta [Matcher patterns](/docs/es/hooks#matcher-patterns) para cómo se evalúan los nombres simples y las expresiones regulares.657El matcher `"Edit|Write"` se activa solo cuando Claude usa la herramienta `Edit` o `Write`, no cuando usa `Bash`, `Read`, u otra herramienta. En Claude Code v2.1.191 o posterior, una coma separa alternativas de la misma manera, por lo que `"Edit, Write"` es equivalente. Consulta [Matcher patterns](/docs/es/hooks#matcher-patterns) para cómo se evalúan los nombres simples y las expresiones regulares.

658 658 

659<Note>659<Note>

660 Claude también puede crear o modificar archivos ejecutando comandos de shell a través de la herramienta `Bash`. Si tu hook debe ver cada cambio de archivo, como para escaneo de cumplimiento o registro de auditoría, añade un hook [`Stop`](/docs/es/hooks#stop) que escanee el árbol de trabajo una vez por turno. Para cobertura por llamada en su lugar, también coincide con `Bash` y haz que tu script liste archivos modificados y sin seguimiento con `git status --porcelain`.660 Claude también puede crear o modificar archivos ejecutando comandos de shell a través de la herramienta `Bash`. Si tu hook debe ver cada cambio de archivo, como para escaneo de cumplimiento o registro de auditoría, añade un hook [`Stop`](/docs/es/hooks#stop) que escanee el árbol de trabajo una vez por turno. Para cobertura por llamada en su lugar, también coincide con `Bash` y haz que tu script liste archivos modificados y sin seguimiento con `git status --porcelain`.

Details

11</h2>11</h2>

12 12 

13<Note>13<Note>

14 Los atajos de teclado pueden variar según la plataforma y la terminal. En [renderizado a pantalla completa](/es/fullscreen), presione `?` en el visor de transcripción para ver los atajos disponibles allí.14 Los atajos de teclado pueden variar según la plataforma y la terminal. En [renderizado a pantalla completa](/docs/es/fullscreen), presione `?` en el visor de transcripción para ver los atajos disponibles allí.

15 15 

16 **Usuarios de macOS**: Los atajos de la tecla Option/Alt (`Alt+B`, `Alt+F`, `Alt+Y`, `Alt+M`, `Alt+P`) requieren configurar Option como Meta en su terminal:16 **Usuarios de macOS**: Los atajos de la tecla Option/Alt (`Alt+B`, `Alt+F`, `Alt+Y`, `Alt+M`, `Alt+P`) requieren configurar Option como Meta en su terminal:

17 17 


19 * **Terminal de Apple**: Configuración → Perfiles → Teclado → marcar "Usar Option como tecla Meta"19 * **Terminal de Apple**: Configuración → Perfiles → Teclado → marcar "Usar Option como tecla Meta"

20 * **VS Code**: establecer `"terminal.integrated.macOptionIsMeta": true` en la configuración de VS Code20 * **VS Code**: establecer `"terminal.integrated.macOptionIsMeta": true` en la configuración de VS Code

21 21 

22 Consulte [Configuración de terminal](/es/terminal-config) para obtener más detalles.22 Consulte [Configuración de terminal](/docs/es/terminal-config) para obtener más detalles.

23</Note>23</Note>

24 24 

25<h3 id="general-controls">25<h3 id="general-controls">


27</h3>27</h3>

28 28 

29| Atajo | Descripción | Contexto |29| Atajo | Descripción | Contexto |

30| :---------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |30| :---------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

31| `Ctrl+C` | Interrumpir, o borrar entrada | Interrumpe una operación en ejecución. Si nada se está ejecutando, la primera pulsación borra la entrada del indicador y una segunda pulsación sale de Claude Code |31| `Ctrl+C` | Interrumpir, o borrar entrada | Interrumpe una operación en ejecución. Si nada se está ejecutando, la primera pulsación borra la entrada del indicador y una segunda pulsación sale de Claude Code |

32| `Ctrl+X Ctrl+K` | Terminar todos los [subagentes en ejecución de fondo](/es/sub-agents#run-subagents-in-foreground-or-background) en esta sesión. Presione dos veces en 3 segundos para confirmar | Control de subagentes |32| `Ctrl+X Ctrl+K` | Terminar todos los [subagentes en ejecución de fondo](/docs/es/sub-agents#run-subagents-in-foreground-or-background) en esta sesión. Presione dos veces en 3 segundos para confirmar | Control de subagentes |

33| `Ctrl+D` | Salir de la sesión de Claude Code | Señal EOF |33| `Ctrl+D` | Salir de la sesión de Claude Code | Señal EOF |

34| `Ctrl+G` o `Ctrl+X Ctrl+E` | Abrir en el editor de texto predeterminado | Edite su indicación o respuesta personalizada en su editor de texto predeterminado. `Ctrl+X Ctrl+E` es el enlace nativo de readline. Active Mostrar última respuesta en editor externo en `/config` para anteponer la respuesta anterior de Claude como contexto comentado con `#` encima de su indicación; el bloque de comentarios se elimina cuando guarda |34| `Ctrl+G` o `Ctrl+X Ctrl+E` | Abrir en el editor de texto predeterminado | Edite su indicación o respuesta personalizada en su editor de texto predeterminado. `Ctrl+X Ctrl+E` es el enlace nativo de readline. Active Mostrar última respuesta en editor externo en `/config` para anteponer la respuesta anterior de Claude como contexto comentado con `#` encima de su indicación; el bloque de comentarios se elimina cuando guarda |

35| `Ctrl+L` | Redibujar pantalla | Fuerza un redibujado completo de la terminal. La entrada y el historial de conversación se mantienen. Use esto para recuperarse si la pantalla se vuelve distorsionada o parcialmente en blanco |35| `Ctrl+L` | Redibujar pantalla | Fuerza un redibujado completo de la terminal. La entrada y el historial de conversación se mantienen. Use esto para recuperarse si la pantalla se vuelve distorsionada o parcialmente en blanco |


37| `Ctrl+R` | Búsqueda inversa del historial de comandos | Buscar a través de comandos anteriores de forma interactiva |37| `Ctrl+R` | Búsqueda inversa del historial de comandos | Buscar a través de comandos anteriores de forma interactiva |

38| `Ctrl+V` o `Cmd+V` (iTerm2) o `Alt+V` (Windows y WSL) | Pegar imagen desde el portapapeles | Inserta un chip `[Image #N]` en el cursor para que pueda hacer referencia a él posicionalmente en su indicación. En WSL, tanto `Ctrl+V` como `Alt+V` están vinculados; use `Alt+V` si su terminal intercepta `Ctrl+V` |38| `Ctrl+V` o `Cmd+V` (iTerm2) o `Alt+V` (Windows y WSL) | Pegar imagen desde el portapapeles | Inserta un chip `[Image #N]` en el cursor para que pueda hacer referencia a él posicionalmente en su indicación. En WSL, tanto `Ctrl+V` como `Alt+V` están vinculados; use `Alt+V` si su terminal intercepta `Ctrl+V` |

39| `Ctrl+B` | Tareas en ejecución de fondo | Coloca comandos Bash y agentes en segundo plano. Los usuarios de Tmux presionan dos veces |39| `Ctrl+B` | Tareas en ejecución de fondo | Coloca comandos Bash y agentes en segundo plano. Los usuarios de Tmux presionan dos veces |

40| `Ctrl+T` | Alternar lista de tareas de Claude | Mostrar u ocultar [la lista de tareas de Claude](#task-list) en el área de estado. Esto no es la vista de tareas en segundo plano; use [`/tasks`](/es/commands) para ver shells y subagentes en ejecución |40| `Ctrl+T` | Alternar lista de tareas de Claude | Mostrar u ocultar [la lista de tareas de Claude](#task-list) en el área de estado. Esto no es la vista de tareas en segundo plano; use [`/tasks`](/docs/es/commands) para ver shells y subagentes en ejecución |

41| `Flechas izquierda/derecha` | Ciclar a través de pestañas de diálogo | Navegar entre pestañas en diálogos de permisos y menús |41| `Flechas izquierda/derecha` | Ciclar a través de pestañas de diálogo | Navegar entre pestañas en diálogos de permisos y menús |

42| `Flechas arriba/abajo` o `Ctrl+P`/`Ctrl+N` | Mover cursor o navegar por el historial de comandos | Cuando la entrada abarca más de una fila visual, ya sea envuelta o multilínea, primero mueve el cursor dentro de la indicación. Una vez que el cursor está en la primera o última fila visual, presionar nuevamente navega por el historial de comandos. {/* min-version: 2.1.169 */}A partir de v2.1.169, la entrada de una sola línea envuelta se comporta igual que la multilínea |42| `Flechas arriba/abajo` o `Ctrl+P`/`Ctrl+N` | Mover cursor o navegar por el historial de comandos | Cuando la entrada abarca más de una fila visual, ya sea envuelta o multilínea, primero mueve el cursor dentro de la indicación. Una vez que el cursor está en la primera o última fila visual, presionar nuevamente navega por el historial de comandos. A partir de v2.1.169, la entrada de una sola línea envuelta se comporta igual que la multilínea |

43| `Esc` | Interrumpir Claude, o cerrar un diálogo | Detener la respuesta actual o la llamada de herramienta a mitad de turno para que pueda redirigir. Claude mantiene el trabajo realizado hasta ahora. Cuando un diálogo como un indicador de permiso está abierto, `Esc` cierra el diálogo en lugar de interrumpir Claude. {/* min-version: 2.1.202 */}Antes de v2.1.202, `Esc` en algunos diálogos interrumpía Claude y dejaba el diálogo abierto |43| `Esc` | Interrumpir Claude, o cerrar un diálogo | Detener la respuesta actual o la llamada de herramienta a mitad de turno para que pueda redirigir. Claude mantiene el trabajo realizado hasta ahora. Cuando un diálogo como un indicador de permiso está abierto, `Esc` cierra el diálogo en lugar de interrumpir Claude. Antes de v2.1.202, `Esc` en algunos diálogos interrumpía Claude y dejaba el diálogo abierto |

44| `Esc` + `Esc` | Borrar borrador de entrada, o rebobinar | Cuando la entrada del indicador contiene texto, doble `Esc` lo borra y guarda el borrador en el historial para que `Arriba` lo recupere. Cuando la entrada está vacía, doble `Esc` abre el [menú de rebobinado](/es/checkpointing) para restaurar o resumir código y conversación desde un punto anterior |44| `Esc` + `Esc` | Borrar borrador de entrada, o rebobinar | Cuando la entrada del indicador contiene texto, doble `Esc` lo borra y guarda el borrador en el historial para que `Arriba` lo recupere. Cuando la entrada está vacía, doble `Esc` abre el [menú de rebobinado](/docs/es/checkpointing) para restaurar o resumir código y conversación desde un punto anterior |

45| `Shift+Tab` o `Alt+M` (algunas configuraciones) | Ciclar modos de permiso | Ciclar a través de `default` (etiquetado como Manual en el indicador de modo), `acceptEdits`, `plan` y cualquier modo que haya habilitado, como `auto` o `bypassPermissions`. Consulte [modos de permiso](/es/permission-modes). |45| `Shift+Tab` o `Alt+M` (algunas configuraciones) | Ciclar modos de permiso | Ciclar a través de `default` (etiquetado como Manual en el indicador de modo), `acceptEdits`, `plan` y cualquier modo que haya habilitado, como `auto` o `bypassPermissions`. Consulte [modos de permiso](/docs/es/permission-modes). |

46| `Option+P` (macOS) o `Alt+P` (Windows/Linux) | Cambiar modelo | Cambiar modelos sin borrar su indicación |46| `Option+P` (macOS) o `Alt+P` (Windows/Linux) | Cambiar modelo | Cambiar modelos sin borrar su indicación |

47| `Option+T` (macOS) o `Alt+T` (Windows/Linux) | Alternar pensamiento extendido | Habilitar o deshabilitar el modo de pensamiento extendido. No tiene efecto en Fable 5, que siempre utiliza pensamiento extendido. {/* min-version: 2.1.132 */}A partir de v2.1.132 este atajo funciona en macOS sin configurar Option como Meta |47| `Option+T` (macOS) o `Alt+T` (Windows/Linux) | Alternar pensamiento extendido | Habilitar o deshabilitar el modo de pensamiento extendido. No tiene efecto en Fable 5, que siempre utiliza pensamiento extendido. A partir de v2.1.132 este atajo funciona en macOS sin configurar Option como Meta |

48| `Option+O` (macOS) o `Alt+O` (Windows/Linux) | Alternar modo rápido | Habilitar o deshabilitar [modo rápido](/es/fast-mode) |48| `Option+O` (macOS) o `Alt+O` (Windows/Linux) | Alternar modo rápido | Habilitar o deshabilitar [modo rápido](/docs/es/fast-mode) |

49 49 

50<h3 id="text-editing">50<h3 id="text-editing">

51 Edición de texto51 Edición de texto


78| Método | Atajo | Contexto |78| Método | Atajo | Contexto |

79| :------------------- | :----------------- | :--------------------------------------------------------------------------------------------------------- |79| :------------------- | :----------------- | :--------------------------------------------------------------------------------------------------------- |

80| Escape rápido | `\` + `Enter` | Funciona en todas las terminales |80| Escape rápido | `\` + `Enter` | Funciona en todas las terminales |

81| Tecla Option | `Option+Enter` | Después de habilitar [Option como Meta](/es/terminal-config#enable-option-key-shortcuts-on-macos) en macOS |81| Tecla Option | `Option+Enter` | Después de habilitar [Option como Meta](/docs/es/terminal-config#enable-option-key-shortcuts-on-macos) en macOS |

82| Shift+Enter | `Shift+Enter` | Nativo en iTerm2, WezTerm, Ghostty, Kitty, Warp, Terminal de Apple, Windows Terminal |82| Shift+Enter | `Shift+Enter` | Nativo en iTerm2, WezTerm, Ghostty, Kitty, Warp, Terminal de Apple, Windows Terminal |

83| Secuencia de control | `Ctrl+J` | Funciona en cualquier terminal sin configuración |83| Secuencia de control | `Ctrl+J` | Funciona en cualquier terminal sin configuración |

84| Modo de pegado | Pegar directamente | Para bloques de código, registros |84| Modo de pegado | Pegar directamente | Para bloques de código, registros |


93 93 

94| Atajo | Descripción | Notas |94| Atajo | Descripción | Notas |

95| :------------ | :------------------------- | :------------------------------------------------------------------------------------------------- |95| :------------ | :------------------------- | :------------------------------------------------------------------------------------------------- |

96| `/` al inicio | Comando o skill | Consulte [comandos](#commands) y [skills](/es/skills) |96| `/` al inicio | Comando o skill | Consulte [comandos](#commands) y [skills](/docs/es/skills) |

97| `!` al inicio | Modo Bash | Ejecutar un comando directamente, agregar su salida a la sesión y hacer que Claude responda a ella |97| `!` al inicio | Modo Bash | Ejecutar un comando directamente, agregar su salida a la sesión y hacer que Claude responda a ella |

98| `@` | Mención de ruta de archivo | Activar autocompletado de ruta de archivo |98| `@` | Mención de ruta de archivo | Activar autocompletado de ruta de archivo |

99 99 


101 Visor de transcripción101 Visor de transcripción

102</h3>102</h3>

103 103 

104Cuando el visor de transcripción está abierto (alternado con `Ctrl+O`), estos atajos están disponibles. En [renderizado a pantalla completa](/es/fullscreen), presione `?` para mostrar el panel de referencia de atajos de teclado completo dentro del visor. `Ctrl+E` se puede reasignar a través de [`transcript:toggleShowAll`](/es/keybindings).104Cuando el visor de transcripción está abierto (alternado con `Ctrl+O`), estos atajos están disponibles. En [renderizado a pantalla completa](/docs/es/fullscreen), presione `?` para mostrar el panel de referencia de atajos de teclado completo dentro del visor. `Ctrl+E` se puede reasignar a través de [`transcript:toggleShowAll`](/docs/es/keybindings).

105 105 

106| Atajo | Descripción |106| Atajo | Descripción |

107| :------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |107| :------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

108| `?` | Alternar el panel de ayuda de atajos de teclado. Requiere [renderizado a pantalla completa](/es/fullscreen) |108| `?` | Alternar el panel de ayuda de atajos de teclado. Requiere [renderizado a pantalla completa](/docs/es/fullscreen) |

109| `{` / `}` | Saltar al indicador de usuario anterior o siguiente, como el movimiento de párrafo de vim. Requiere [renderizado a pantalla completa](/es/fullscreen) |109| `{` / `}` | Saltar al indicador de usuario anterior o siguiente, como el movimiento de párrafo de vim. Requiere [renderizado a pantalla completa](/docs/es/fullscreen) |

110| `Ctrl+E` | Alternar mostrar todo el contenido |110| `Ctrl+E` | Alternar mostrar todo el contenido |

111| `[` | Escribir la conversación completa en el scrollback nativo de su terminal para que `Cmd+F`, el modo de copia de tmux y otras herramientas nativas puedan buscarla. Requiere [renderizado a pantalla completa](/es/fullscreen#search-and-review-the-conversation) |111| `[` | Escribir la conversación completa en el scrollback nativo de su terminal para que `Cmd+F`, el modo de copia de tmux y otras herramientas nativas puedan buscarla. Requiere [renderizado a pantalla completa](/docs/es/fullscreen#search-and-review-the-conversation) |

112| `v` | Escribir la conversación en un archivo temporal y abrirlo en `$VISUAL` o `$EDITOR`. Requiere [renderizado a pantalla completa](/es/fullscreen) |112| `v` | Escribir la conversación en un archivo temporal y abrirlo en `$VISUAL` o `$EDITOR`. Requiere [renderizado a pantalla completa](/docs/es/fullscreen) |

113| `q`, `Ctrl+C`, `Esc` | Salir de la vista de transcripción. Los tres se pueden reasignar a través de [`transcript:exit`](/es/keybindings) |113| `q`, `Ctrl+C`, `Esc` | Salir de la vista de transcripción. Los tres se pueden reasignar a través de [`transcript:exit`](/docs/es/keybindings) |

114 114 

115<h3 id="voice-input">115<h3 id="voice-input">

116 Entrada de voz116 Entrada de voz


118 118 

119| Atajo | Descripción | Notas |119| Atajo | Descripción | Notas |

120| :------------------------------------- | :------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |120| :------------------------------------- | :------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

121| Mantener presionado o pulsar `Espacio` | Dictado de voz | Requiere que [dictado de voz](/es/voice-dictation) esté habilitado. Mantenga presionado para grabar, o ejecute `/voice tap` para alternar con pulsar. [Reasignable](/es/voice-dictation#rebind-the-dictation-key) |121| Mantener presionado o pulsar `Espacio` | Dictado de voz | Requiere que [dictado de voz](/docs/es/voice-dictation) esté habilitado. Mantenga presionado para grabar, o ejecute `/voice tap` para alternar con pulsar. [Reasignable](/docs/es/voice-dictation#rebind-the-dictation-key) |

122 122 

123<h2 id="commands">123<h2 id="commands">

124 Comandos124 Comandos

125</h2>125</h2>

126 126 

127Escriba `/` en Claude Code para ver todos los comandos disponibles, o escriba `/` seguido de cualquier letra para filtrar. El menú `/` muestra todo lo que puede invocar: comandos integrados, [skills](/es/skills) incluidos y creados por el usuario, y comandos contribuidos por [plugins](/es/plugins) y [servidores MCP](/es/mcp#use-mcp-prompts-as-commands). No todos los comandos integrados son visibles para todos los usuarios ya que algunos dependen de su plataforma o plan.127Escriba `/` en Claude Code para ver todos los comandos disponibles, o escriba `/` seguido de cualquier letra para filtrar. El menú `/` muestra todo lo que puede invocar: comandos integrados, [skills](/docs/es/skills) incluidos y creados por el usuario, y comandos contribuidos por [plugins](/docs/es/plugins) y [servidores MCP](/docs/es/mcp#use-mcp-prompts-as-commands). No todos los comandos integrados son visibles para todos los usuarios ya que algunos dependen de su plataforma o plan.

128 128 

129En [renderizado a pantalla completa](/es/fullscreen#use-the-mouse), el comando `/` y las listas de sugerencias de archivos `@` también responden al ratón: pasar el cursor destaca una fila y hacer clic la acepta.129En [renderizado a pantalla completa](/docs/es/fullscreen#use-the-mouse), el comando `/` y las listas de sugerencias de archivos `@` también responden al ratón: pasar el cursor destaca una fila y hacer clic la acepta.

130 130 

131Consulte la [referencia de comandos](/es/commands) para obtener la lista completa de comandos incluidos en Claude Code.131Consulte la [referencia de comandos](/docs/es/commands) para obtener la lista completa de comandos incluidos en Claude Code.

132 132 

133<h2 id="vim-editor-mode">133<h2 id="vim-editor-mode">

134 Modo editor Vim134 Modo editor Vim


156 Remapear secuencias de teclas en modo INSERT156 Remapear secuencias de teclas en modo INSERT

157</h3>157</h3>

158 158 

159La configuración [`vimInsertModeRemaps`](/es/settings#available-settings) mapea una secuencia de dos teclas en modo INSERT a Escape, por lo que un mapeo como `jj` lo devuelve al modo NORMAL. {/* min-version: 2.1.208 */}Requiere Claude Code v2.1.208 o posterior.159La configuración [`vimInsertModeRemaps`](/docs/es/settings#available-settings) mapea una secuencia de dos teclas en modo INSERT a Escape, por lo que un mapeo como `jj` lo devuelve al modo NORMAL. Requiere Claude Code v2.1.208 o posterior.

160 160 

161El siguiente ejemplo de `~/.claude/settings.json` activa el modo vim y mapea `jj` a Escape:161El siguiente ejemplo de `~/.claude/settings.json` activa el modo vim y mapea `jj` a Escape:

162 162 


171 171 

172Escribir el primer carácter de una secuencia lo inserta normalmente. Presionar el segundo carácter dentro de un segundo elimina ese carácter pendiente y cambia al modo NORMAL, sin dejar ningún carácter en su entrada. Después de la ventana de un segundo, o si una tecla diferente sigue, ambos caracteres permanecen como texto literal, por lo que aún puede escribir una palabra que contenga la secuencia haciendo una pausa entre las dos teclas.172Escribir el primer carácter de una secuencia lo inserta normalmente. Presionar el segundo carácter dentro de un segundo elimina ese carácter pendiente y cambia al modo NORMAL, sin dejar ningún carácter en su entrada. Después de la ventana de un segundo, o si una tecla diferente sigue, ambos caracteres permanecen como texto literal, por lo que aún puede escribir una palabra que contenga la secuencia haciendo una pausa entre las dos teclas.

173 173 

174Claude Code lee esta configuración desde su archivo de configuración de usuario, la bandera `--settings` y [configuración administrada](/es/permissions#managed-settings) solamente. Las entradas en el archivo `.claude/settings.json` o `.claude/settings.local.json` de un proyecto se ignoran, por lo que un repositorio extraído no puede remapear sus pulsaciones de teclas.174Claude Code lee esta configuración desde su archivo de configuración de usuario, la bandera `--settings` y [configuración administrada](/docs/es/permissions#managed-settings) solamente. Las entradas en el archivo `.claude/settings.json` o `.claude/settings.local.json` de un proyecto se ignoran, por lo que un repositorio extraído no puede remapear sus pulsaciones de teclas.

175 175 

176<h3 id="navigation-normal-mode">176<h3 id="navigation-normal-mode">

177 Navegación (modo NORMAL)177 Navegación (modo NORMAL)

178</h3>178</h3>

179 179 

180| Comando | Acción |180| Comando | Acción |

181| :-------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |181| :-------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

182| `h`/`j`/`k`/`l` | Mover izquierda/abajo/arriba/derecha |182| `h`/`j`/`k`/`l` | Mover izquierda/abajo/arriba/derecha |

183| `Space` | Mover a la derecha |183| `Space` | Mover a la derecha |

184| `w` | Siguiente palabra |184| `w` | Siguiente palabra |


195| `T{char}` | Saltar justo después de la ocurrencia anterior del carácter |195| `T{char}` | Saltar justo después de la ocurrencia anterior del carácter |

196| `;` | Repetir último movimiento f/F/t/T |196| `;` | Repetir último movimiento f/F/t/T |

197| `,` | Repetir último movimiento f/F/t/T en orden inverso |197| `,` | Repetir último movimiento f/F/t/T en orden inverso |

198| `/` | Abrir búsqueda de historial inverso, igual que `Ctrl+R`. {/* min-version: 2.1.191 */}A partir de v2.1.191, el símbolo del sistema de búsqueda vacío muestra una sugerencia: presione `Esc` luego `i` luego `/` para abrir el menú de comandos en su lugar |198| `/` | Abrir búsqueda de historial inverso, igual que `Ctrl+R`. A partir de v2.1.191, el símbolo del sistema de búsqueda vacío muestra una sugerencia: presione `Esc` luego `i` luego `/` para abrir el menú de comandos en su lugar |

199 199 

200<Note>200<Note>

201 En modo normal de vim, si el cursor está al principio o al final de la entrada y no puede moverse más, `j`/`k` y las teclas de flecha navegan por el historial de comandos en su lugar.201 En modo normal de vim, si el cursor está al principio o al final de la entrada y no puede moverse más, `j`/`k` y las teclas de flecha navegan por el historial de comandos en su lugar.


316 316 

317* La salida se escribe en un archivo y Claude puede recuperarla usando la herramienta Read317* La salida se escribe en un archivo y Claude puede recuperarla usando la herramienta Read

318* Las tareas de fondo tienen ID únicos para el seguimiento y la recuperación de salida318* Las tareas de fondo tienen ID únicos para el seguimiento y la recuperación de salida

319* Las tareas de fondo se limpian automáticamente cuando Claude Code sale. Enviar la sesión a segundo plano en lugar de salir las entrega a la sesión de fondo, donde continúan ejecutándose. Consulte [enviar una sesión en ejecución a segundo plano](/es/agent-view#from-inside-a-session)319* Las tareas de fondo se limpian automáticamente cuando Claude Code sale. Enviar la sesión a segundo plano en lugar de salir las entrega a la sesión de fondo, donde continúan ejecutándose. Consulte [enviar una sesión en ejecución a segundo plano](/docs/es/agent-view#from-inside-a-session)

320* Las tareas de fondo se terminan automáticamente si la salida excede 5GB, con una nota en stderr explicando por qué320* Las tareas de fondo se terminan automáticamente si la salida excede 5GB, con una nota en stderr explicando por qué

321* {/* min-version: 2.1.193 */}A partir de v2.1.193, en macOS y Linux, las tareas de fondo en ejecución se terminan cuando el sistema operativo señala presión de memoria, siempre que la sesión haya estado inactiva durante al menos 30 minutos sin ningún turno o subagenteejecutándose. Establezca [`CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP`](/es/env-vars) en `1` para desactivar esto321* A partir de v2.1.193, en macOS y Linux, las tareas de fondo en ejecución se terminan cuando el sistema operativo señala presión de memoria, siempre que la sesión haya estado inactiva durante al menos 30 minutos sin ningún turno o subagenteejecutándose. Establezca [`CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP`](/docs/es/env-vars) en `1` para desactivar esto

322 322 

323Para deshabilitar toda la funcionalidad de tareas de fondo, establezca la variable de entorno `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` en `1`. Consulte [Variables de entorno](/es/env-vars) para obtener más detalles.323Para deshabilitar toda la funcionalidad de tareas de fondo, establezca la variable de entorno `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` en `1`. Consulte [Variables de entorno](/docs/es/env-vars) para obtener más detalles.

324 324 

325**Comandos comúnmente enviados a segundo plano:**325**Comandos comúnmente enviados a segundo plano:**

326 326 


349* Admite el mismo envío a segundo plano `Ctrl+B` para comandos de larga duración349* Admite el mismo envío a segundo plano `Ctrl+B` para comandos de larga duración

350* No requiere que Claude interprete o apruebe el comando350* No requiere que Claude interprete o apruebe el comando

351* Admite autocompletado basado en historial: escriba un comando parcial y presione `Tab` para completar desde comandos `!` anteriores en el proyecto actual351* Admite autocompletado basado en historial: escriba un comando parcial y presione `Tab` para completar desde comandos `!` anteriores en el proyecto actual

352* {/* min-version: 2.1.193 */}Admite autocompletado de ruta de archivo en vivo a partir de v2.1.193 en todas las plataformas: escriba un token que contenga una barra diagonal, como `./src/` o `~/`, para ver una lista desplegable de archivos y directorios coincidentes, luego presione `Tab` para aceptar. Use barras diagonales en Windows también; la lista desplegable se activa con `/`, no con `\`352* Admite autocompletado de ruta de archivo en vivo a partir de v2.1.193 en todas las plataformas: escriba un token que contenga una barra diagonal, como `./src/` o `~/`, para ver una lista desplegable de archivos y directorios coincidentes, luego presione `Tab` para aceptar. Use barras diagonales en Windows también; la lista desplegable se activa con `/`, no con `\`

353* Salir con `Escape`, `Backspace` o `Ctrl+U` en un indicador vacío353* Salir con `Escape`, `Backspace` o `Ctrl+U` en un indicador vacío

354* Pegar texto que comienza con `!` en un indicador vacío entra automáticamente en modo shell, coincidiendo con el comportamiento de `!` escrito354* Pegar texto que comienza con `!` en un indicador vacío entra automáticamente en modo shell, coincidiendo con el comportamiento de `!` escrito

355 355 

356A partir de v2.1.186, Claude responde automáticamente a la salida del comando una vez que llega a la transcripción, por lo que puede ejecutar `! npm test` y obtener una explicación de los fallos sin un segundo indicador. La respuesta cuesta lo mismo que enviar un indicador normal. Para restaurar el comportamiento anterior donde la salida se agrega al contexto sin una respuesta, establezca [`respondToBashCommands`](/es/settings#available-settings) en `false` en `settings.json`. Antes de v2.1.186, el modo shell siempre agregaba la salida al contexto sin una respuesta.356A partir de v2.1.186, Claude responde automáticamente a la salida del comando una vez que llega a la transcripción, por lo que puede ejecutar `! npm test` y obtener una explicación de los fallos sin un segundo indicador. La respuesta cuesta lo mismo que enviar un indicador normal. Para restaurar el comportamiento anterior donde la salida se agrega al contexto sin una respuesta, establezca [`respondToBashCommands`](/docs/es/settings#available-settings) en `false` en `settings.json`. Antes de v2.1.186, el modo shell siempre agregaba la salida al contexto sin una respuesta.

357 357 

358Esto es útil para operaciones rápidas de shell mientras se mantiene el contexto de la conversación.358Esto es útil para operaciones rápidas de shell mientras se mantiene el contexto de la conversación.

359 359 


370 370 

371La sugerencia se ejecuta como una solicitud de fondo que reutiliza el caché de indicación de la conversación principal, por lo que el costo adicional es mínimo. Claude Code omite la generación de sugerencias cuando el caché está frío para evitar costos innecesarios.371La sugerencia se ejecuta como una solicitud de fondo que reutiliza el caché de indicación de la conversación principal, por lo que el costo adicional es mínimo. Claude Code omite la generación de sugerencias cuando el caché está frío para evitar costos innecesarios.

372 372 

373Las sugerencias se omiten automáticamente después del primer turno de una conversación y en plan mode. En print mode están deshabilitadas de forma predeterminada. Pase [`--prompt-suggestions`](/es/cli-reference#cli-flags) con `--output-format stream-json --verbose` para emitir un mensaje `prompt_suggestion` después de cada turno en su lugar.373Las sugerencias se omiten automáticamente después del primer turno de una conversación y en plan mode. En print mode están deshabilitadas de forma predeterminada. Pase [`--prompt-suggestions`](/docs/es/cli-reference#cli-flags) con `--output-format stream-json --verbose` para emitir un mensaje `prompt_suggestion` después de cada turno en su lugar.

374 374 

375Para deshabilitar completamente las sugerencias de indicación, establezca la variable de entorno o alterne la configuración en `/config`:375Para deshabilitar completamente las sugerencias de indicación, establezca la variable de entorno o alterne la configuración en `/config`:

376 376 


403| :------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |403| :------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

404| `Space`, `Enter`, `Escape` | Descartar la respuesta y volver a la indicación |404| `Space`, `Enter`, `Escape` | Descartar la respuesta y volver a la indicación |

405| `Up` / `Down` | Desplazarse por la respuesta |405| `Up` / `Down` | Desplazarse por la respuesta |

406| `Left` / `Right` | {/* min-version: 2.1.187 */}Cambiar entre esta respuesta y sus respuestas anteriores de `/btw` de la sesión. `Left` se mueve a respuestas más antiguas y `Right` regresa hacia la actual. Requiere Claude Code v2.1.187 o posterior |406| `Left` / `Right` | Cambiar entre esta respuesta y sus respuestas anteriores de `/btw` de la sesión. `Left` se mueve a respuestas más antiguas y `Right` regresa hacia la actual. Requiere Claude Code v2.1.187 o posterior |

407| `c` | Copiar la respuesta al portapapeles como Markdown sin formato. Use esto en lugar de la selección del ratón, que captura la representación terminal con ajuste de línea duro en lugar del texto fuente |407| `c` | Copiar la respuesta al portapapeles como Markdown sin formato. Use esto en lugar de la selección del ratón, que captura la representación terminal con ajuste de línea duro en lugar del texto fuente |

408| `f` | Dividir en una nueva sesión. La división hereda la conversación principal más esta pregunta y respuesta como turnos de transcripción real, por lo que puede continuar con acceso completo a herramientas. La sesión original se conserva en [`/resume`](/es/commands). Disponible solo en sesiones locales |408| `f` | Dividir en una nueva sesión. La división hereda la conversación principal más esta pregunta y respuesta como turnos de transcripción real, por lo que puede continuar con acceso completo a herramientas. La sesión original se conserva en [`/resume`](/docs/es/commands). Disponible solo en sesiones locales |

409| `x` | Borrar la lista de intercambios anteriores de `/btw` mostrados encima de la respuesta actual |409| `x` | Borrar la lista de intercambios anteriores de `/btw` mostrados encima de la respuesta actual |

410 410 

411`/btw` es lo opuesto a un [subagent](/es/sub-agents): ve su conversación completa pero no tiene herramientas, mientras que un subagent tiene herramientas completas pero comienza con un contexto vacío. Use `/btw` para preguntar sobre lo que Claude ya sabe de esta sesión; use un subagent para descubrir algo nuevo.411`/btw` es lo opuesto a un [subagent](/docs/es/sub-agents): ve su conversación completa pero no tiene herramientas, mientras que un subagent tiene herramientas completas pero comienza con un contexto vacío. Use `/btw` para preguntar sobre lo que Claude ya sabe de esta sesión; use un subagent para descubrir algo nuevo.

412 412 

413<h2 id="task-list">413<h2 id="task-list">

414 Lista de tareas414 Lista de tareas

415</h2>415</h2>

416 416 

417La lista de tareas es la lista de verificación de Claude: elementos que Claude creó para planificar trabajo de varios pasos, con indicadores que muestran qué está pendiente, en progreso o completado. Es independiente de la vista de tareas en segundo plano. Para ver shells en ejecución y subagentes, use [`/tasks`](/es/commands) en su lugar.417La lista de tareas es la lista de verificación de Claude: elementos que Claude creó para planificar trabajo de varios pasos, con indicadores que muestran qué está pendiente, en progreso o completado. Es independiente de la vista de tareas en segundo plano. Para ver shells en ejecución y subagentes, use [`/tasks`](/docs/es/commands) en su lugar.

418 418 

419* Presione `Ctrl+T` para alternar la vista de la lista de tareas. La pantalla muestra hasta cinco tareas a la vez. Cuando Claude aún no ha creado ningún elemento de lista de verificación, el botón de alternancia no tiene efecto visible porque no hay nada que mostrar419* Presione `Ctrl+T` para alternar la vista de la lista de tareas. La pantalla muestra hasta cinco tareas a la vez. Cuando Claude aún no ha creado ningún elemento de lista de verificación, el botón de alternancia no tiene efecto visible porque no hay nada que mostrar

420* Para ver todas las tareas o borrarlas, pregunte a Claude directamente: "show me all tasks" o "clear all tasks"420* Para ver todas las tareas o borrarlas, pregunte a Claude directamente: "show me all tasks" o "clear all tasks"


452 Ver también452 Ver también

453</h2>453</h2>

454 454 

455* [Skills](/es/skills) - Indicaciones personalizadas y flujos de trabajo455* [Skills](/docs/es/skills) - Indicaciones personalizadas y flujos de trabajo

456* [Checkpointing](/es/checkpointing) - Rebobinar las ediciones de Claude y restaurar estados anteriores456* [Checkpointing](/docs/es/checkpointing) - Rebobinar las ediciones de Claude y restaurar estados anteriores

457* [Referencia de CLI](/es/cli-reference) - Banderas y opciones de línea de comandos457* [Referencia de CLI](/docs/es/cli-reference) - Banderas y opciones de línea de comandos

458* [Configuración](/es/settings) - Opciones de configuración458* [Configuración](/docs/es/settings) - Opciones de configuración

459* [Gestión de memoria](/es/memory) - Gestión de archivos CLAUDE.md459* [Gestión de memoria](/docs/es/memory) - Gestión de archivos CLAUDE.md

keybindings.md +12 −12

Details

68| `Plugin` | Diálogo de plugin (examinar, descubrir, administrar) |68| `Plugin` | Diálogo de plugin (examinar, descubrir, administrar) |

69| `Scroll` | Desplazamiento de conversación y selección de texto en modo pantalla completa |69| `Scroll` | Desplazamiento de conversación y selección de texto en modo pantalla completa |

70 70 

71{/* max-version: 2.1.204 */}Antes de v2.1.205, existían un contexto `Doctor` y una acción `doctor:fix` para la pantalla de diagnósticos `/doctor`.71Antes de v2.1.205, existían un contexto `Doctor` y una acción `doctor:fix` para la pantalla de diagnósticos `/doctor`.

72 72 

73<h2 id="available-actions">73<h2 id="available-actions">

74 Acciones disponibles74 Acciones disponibles


87| `app:interrupt` | Ctrl+C | Cancelar operación actual |87| `app:interrupt` | Ctrl+C | Cancelar operación actual |

88| `app:exit` | Ctrl+D | Salir de Claude Code |88| `app:exit` | Ctrl+D | Salir de Claude Code |

89| `app:redraw` | (sin vincular) | Forzar redibujo de terminal |89| `app:redraw` | (sin vincular) | Forzar redibujo de terminal |

90| `app:toggleTodos` | Ctrl+T | Alternar visibilidad de la lista de tareas de Claude. Esta no es la vista de tarea de fondo [`/tasks`](/es/commands) |90| `app:toggleTodos` | Ctrl+T | Alternar visibilidad de la lista de tareas de Claude. Esta no es la vista de tarea de fondo [`/tasks`](/docs/es/commands) |

91| `app:toggleTranscript` | Ctrl+O | Alternar transcripción detallada |91| `app:toggleTranscript` | Ctrl+O | Alternar transcripción detallada |

92 92 

93<h3 id="history-actions">93<h3 id="history-actions">


111| Acción | Predeterminado | Descripción |111| Acción | Predeterminado | Descripción |

112| :-------------------- | :------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |112| :-------------------- | :------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

113| `chat:cancel` | Escape | Cancelar entrada actual |113| `chat:cancel` | Escape | Cancelar entrada actual |

114| `chat:clearInput` | Ctrl+L | Forzar un redibujo de pantalla completa, preservando la entrada. En [renderizado de pantalla completa](/es/fullscreen#clear-the-conversation), presione dos veces dentro de dos segundos para ejecutar `/clear` |114| `chat:clearInput` | Ctrl+L | Forzar un redibujo de pantalla completa, preservando la entrada. En [renderizado de pantalla completa](/docs/es/fullscreen#clear-the-conversation), presione dos veces dentro de dos segundos para ejecutar `/clear` |

115| `chat:clearScreen` | Cmd+K | En [renderizado de pantalla completa](/es/fullscreen#clear-the-conversation), presione dos veces dentro de dos segundos para ejecutar `/clear` |115| `chat:clearScreen` | Cmd+K | En [renderizado de pantalla completa](/docs/es/fullscreen#clear-the-conversation), presione dos veces dentro de dos segundos para ejecutar `/clear` |

116| `chat:killAgents` | Ctrl+X Ctrl+K | Detener todos los [subagentes de fondo](/es/sub-agents#run-subagents-in-foreground-or-background) en ejecución en esta sesión |116| `chat:killAgents` | Ctrl+X Ctrl+K | Detener todos los [subagentes de fondo](/docs/es/sub-agents#run-subagents-in-foreground-or-background) en ejecución en esta sesión |

117| `chat:cycleMode` | Shift+Tab\* | Ciclar modos de permiso |117| `chat:cycleMode` | Shift+Tab\* | Ciclar modos de permiso |

118| `chat:modelPicker` | Meta+P | Abrir selector de modelo |118| `chat:modelPicker` | Meta+P | Abrir selector de modelo |

119| `chat:fastMode` | Meta+O | Alternar modo rápido |119| `chat:fastMode` | Meta+O | Alternar modo rápido |


156| `confirm:previousField` | (sin vincular) | Campo anterior |156| `confirm:previousField` | (sin vincular) | Campo anterior |

157| `confirm:toggle` | Espacio | Alternar selección |157| `confirm:toggle` | Espacio | Alternar selección |

158| `confirm:cycleMode` | Shift+Tab | Ciclar modos de permiso |158| `confirm:cycleMode` | Shift+Tab | Ciclar modos de permiso |

159| `confirm:toggleExplanation` | Ctrl+E | Alternar una [explicación generada por modelo del comando](/es/permissions#permission-system) en indicadores de permiso de Bash y PowerShell |159| `confirm:toggleExplanation` | Ctrl+E | Alternar una [explicación generada por modelo del comando](/docs/es/permissions#permission-system) en indicadores de permiso de Bash y PowerShell |

160 160 

161<h3 id="permission-actions">161<h3 id="permission-actions">

162 Acciones de permiso162 Acciones de permiso


200Acciones disponibles en el contexto `Task`:200Acciones disponibles en el contexto `Task`:

201 201 

202| Acción | Predeterminado | Descripción |202| Acción | Predeterminado | Descripción |

203| :---------------- | :-------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------- |203| :---------------- | :-------------------- | :------------------------------------------------------------------------------------------------------------------- |

204| `task:background` | Ctrl+B, Ctrl+X Ctrl+B | Tarea de fondo actual. {/* min-version: 2.1.169 */}El acorde Ctrl+X Ctrl+B requiere v2.1.169 o posterior y evita el conflicto de prefijo de tmux |204| `task:background` | Ctrl+B, Ctrl+X Ctrl+B | Tarea de fondo actual. El acorde Ctrl+X Ctrl+B requiere v2.1.169 o posterior y evita el conflicto de prefijo de tmux |

205 205 

206<h3 id="theme-actions">206<h3 id="theme-actions">

207 Acciones de tema207 Acciones de tema


357 Acciones de voz357 Acciones de voz

358</h3>358</h3>

359 359 

360Acciones disponibles en el contexto `Chat` cuando [dictado de voz](/es/voice-dictation) está habilitado:360Acciones disponibles en el contexto `Chat` cuando [dictado de voz](/docs/es/voice-dictation) está habilitado:

361 361 

362| Acción | Predeterminado | Descripción |362| Acción | Predeterminado | Descripción |

363| :----------------- | :------------- | :------------------------------------------------------------------------ |363| :----------------- | :------------- | :------------------------------------------------------------------------ |


367 Acciones de desplazamiento367 Acciones de desplazamiento

368</h3>368</h3>

369 369 

370Acciones disponibles en el contexto `Scroll` cuando [renderizado de pantalla completa](/es/fullscreen) está habilitado:370Acciones disponibles en el contexto `Scroll` cuando [renderizado de pantalla completa](/docs/es/fullscreen) está habilitado:

371 371 

372| Acción | Predeterminado | Descripción |372| Acción | Predeterminado | Descripción |

373| :-------------------------- | :------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------- |373| :-------------------------- | :------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------- |


526* **Atajos de teclado** manejan acciones a nivel de componente (alternar tareas, enviar, etc.)526* **Atajos de teclado** manejan acciones a nivel de componente (alternar tareas, enviar, etc.)

527* La tecla Escape en modo vim cambia de modo INSERT a NORMAL; no activa `chat:cancel`527* La tecla Escape en modo vim cambia de modo INSERT a NORMAL; no activa `chat:cancel`

528* La mayoría de los atajos Ctrl+tecla pasan a través del modo vim al sistema de atajos de teclado528* La mayoría de los atajos Ctrl+tecla pasan a través del modo vim al sistema de atajos de teclado

529* Las teclas Vim no se pueden remapear a través del archivo de atajos de teclado. Para mapear una secuencia de dos teclas en modo INSERT como `jj` a Escape, use la configuración [`vimInsertModeRemaps`](/es/interactive-mode#remap-insert-mode-key-sequences)529* Las teclas Vim no se pueden remapear a través del archivo de atajos de teclado. Para mapear una secuencia de dos teclas en modo INSERT como `jj` a Escape, use la configuración [`vimInsertModeRemaps`](/docs/es/interactive-mode#remap-insert-mode-key-sequences)

530* En modo NORMAL de vim, `?` muestra el menú de ayuda (comportamiento de vim)530* En modo NORMAL de vim, `?` muestra el menú de ayuda (comportamiento de vim)

531* En modo NORMAL de vim, `/` abre la búsqueda de historial, lo mismo que Ctrl+R en modo estándar531* En modo NORMAL de vim, `/` abre la búsqueda de historial, lo mismo que Ctrl+R en modo estándar

532 532 


542* Conflictos de multiplexor de terminal542* Conflictos de multiplexor de terminal

543* Vinculaciones duplicadas en el mismo contexto543* Vinculaciones duplicadas en el mismo contexto

544 544 

545Claude Code reporta advertencias cuando el archivo se carga y escribe cada una en el registro de depuración. Inicie Claude Code con [`--debug`](/es/cli-reference#cli-flags) para ver los detalles.545Claude Code reporta advertencias cuando el archivo se carga y escribe cada una en el registro de depuración. Inicie Claude Code con [`--debug`](/docs/es/cli-reference#cli-flags) para ver los detalles.

Details

6 6 

7> Apunte Claude Code a la puerta de enlace LLM de su organización. Compruebe si su administrador ya la configuró, o establezca la URL base y las credenciales usted mismo, luego verifique la conexión y corrija los errores de la puerta de enlace.7> Apunte Claude Code a la puerta de enlace LLM de su organización. Compruebe si su administrador ya la configuró, o establezca la URL base y las credenciales usted mismo, luego verifique la conexión y corrija los errores de la puerta de enlace.

8 8 

9Una [puerta de enlace LLM](/es/llm-gateway) es un proxy que su organización ejecuta entre Claude Code y el proveedor del modelo. Cuando su organización usa una, Claude Code se autentica en la puerta de enlace con una credencial que su organización emite en lugar de su inicio de sesión personal en claude.ai.9Una [puerta de enlace LLM](/docs/es/llm-gateway) es un proxy que su organización ejecuta entre Claude Code y el proveedor del modelo. Cuando su organización usa una, Claude Code se autentica en la puerta de enlace con una credencial que su organización emite en lugar de su inicio de sesión personal en claude.ai.

10 10 

11Esta página es para desarrolladores que ejecutan Claude Code a través de una puerta de enlace que opera su organización. Cubre dos caminos: [comprobar si su administrador ya la configuró para usted](#check-for-an-existing-configuration), y [configurarla usted mismo](#configure-claude-code-yourself) cuando no lo haya hecho.11Esta página es para desarrolladores que ejecutan Claude Code a través de una puerta de enlace que opera su organización. Cubre dos caminos: [comprobar si su administrador ya la configuró para usted](#check-for-an-existing-configuration), y [configurarla usted mismo](#configure-claude-code-yourself) cuando no lo haya hecho.

12 12 

13<Note>13<Note>

14 * Para implementar una puerta de enlace para su organización, consulte [Implementar una puerta de enlace LLM](/es/llm-gateway-rollout)14 * Para implementar una puerta de enlace para su organización, consulte [Implementar una puerta de enlace LLM](/docs/es/llm-gateway-rollout)

15 * Para ver qué envía Claude Code a una puerta de enlace, consulte la [referencia del protocolo de puerta de enlace](/es/llm-gateway-protocol)15 * Para ver qué envía Claude Code a una puerta de enlace, consulte la [referencia del protocolo de puerta de enlace](/docs/es/llm-gateway-protocol)

16</Note>16</Note>

17 17 

18<h2 id="check-for-an-existing-configuration">18<h2 id="check-for-an-existing-configuration">

19 Comprobar una configuración existente19 Comprobar una configuración existente

20</h2>20</h2>

21 21 

22Los administradores pueden distribuir la dirección de la puerta de enlace y la credencial a través de [configuración administrada](/es/settings#settings-files), administración de dispositivos, o un [`apiKeyHelper`](#rotate-credentials-with-apikeyhelper), para que Claude Code las recoja al iniciar sin que tenga que configurar nada. Para comprobar si su organización ya lo hizo:22Los administradores pueden distribuir la dirección de la puerta de enlace y la credencial a través de [configuración administrada](/docs/es/settings#settings-files), administración de dispositivos, o un [`apiKeyHelper`](#rotate-credentials-with-apikeyhelper), para que Claude Code las recoja al iniciar sin que tenga que configurar nada. Para comprobar si su organización ya lo hizo:

23 23 

24<Steps>24<Steps>

25 <Step title="Iniciar Claude Code">25 <Step title="Iniciar Claude Code">


107 Establecer en un archivo de configuración107 Establecer en un archivo de configuración

108</h4>108</h4>

109 109 

110Para que la configuración se aplique en todas partes donde se ejecuta Claude Code sin depender de su shell, establezca las variables en el bloque `env` de un [archivo de configuración](/es/settings). Los archivos de configuración tienen diferentes alcances:110Para que la configuración se aplique en todas partes donde se ejecuta Claude Code sin depender de su shell, establezca las variables en el bloque `env` de un [archivo de configuración](/docs/es/settings). Los archivos de configuración tienen diferentes alcances:

111 111 

112* `~/.claude/settings.json` se aplica a todos sus proyectos. En Windows la ruta es `%USERPROFILE%\.claude\settings.json`112* `~/.claude/settings.json` se aplica a todos sus proyectos. En Windows la ruta es `%USERPROFILE%\.claude\settings.json`

113* `.claude/settings.local.json` se aplica a un proyecto. Claude Code lo agrega a su gitignore cuando crea el archivo; si lo crea usted mismo, agréguelo a su gitignore manualmente primero para que no cometa accidentalmente su credencial113* `.claude/settings.local.json` se aplica a un proyecto. Claude Code lo agrega a su gitignore cuando crea el archivo; si lo crea usted mismo, agréguelo a su gitignore manualmente primero para que no cometa accidentalmente su credencial


194 Extensión de VS Code194 Extensión de VS Code

195</h3>195</h3>

196 196 

197Establezca las variables de puerta de enlace para la [extensión de VS Code](/es/vs-code) en `claudeCode.environmentVariables`, en la configuración de usuario propia de VS Code abierta con el comando **Preferences: Open User Settings (JSON)**. La extensión comprueba las credenciales de esta configuración antes de lanzarse, por lo que es el lugar confiable para la credencial de puerta de enlace; los valores en `~/.claude/settings.json` llegan al proceso generado pero no a la comprobación de inicio de sesión propia de la extensión.197Establezca las variables de puerta de enlace para la [extensión de VS Code](/docs/es/vs-code) en `claudeCode.environmentVariables`, en la configuración de usuario propia de VS Code abierta con el comando **Preferences: Open User Settings (JSON)**. La extensión comprueba las credenciales de esta configuración antes de lanzarse, por lo que es el lugar confiable para la credencial de puerta de enlace; los valores en `~/.claude/settings.json` llegan al proceso generado pero no a la comprobación de inicio de sesión propia de la extensión.

198 198 

199```json theme={null}199```json theme={null}

200{200{


211 211 

212La aplicación de escritorio lee el enrutamiento de puerta de enlace de su [configuración de inferencia de terceros](https://claude.com/docs/third-party/claude-desktop/gateway), no de `ANTHROPIC_BASE_URL` o `settings.json`. Esa configuración puede provenir de su organización o de un formulario en la aplicación misma:212La aplicación de escritorio lee el enrutamiento de puerta de enlace de su [configuración de inferencia de terceros](https://claude.com/docs/third-party/claude-desktop/gateway), no de `ANTHROPIC_BASE_URL` o `settings.json`. Esa configuración puede provenir de su organización o de un formulario en la aplicación misma:

213 213 

214* **Distribuida por un administrador**: si su organización ha [implementado la configuración](/es/llm-gateway-rollout#distribute-through-managed-settings), la aplicación de escritorio se enruta a través de la puerta de enlace sin configuración de su parte214* **Distribuida por un administrador**: si su organización ha [implementado la configuración](/docs/es/llm-gateway-rollout#distribute-through-managed-settings), la aplicación de escritorio se enruta a través de la puerta de enlace sin configuración de su parte

215* **Configurada localmente**: para dispositivos sin una configuración distribuida por administrador, abra Help → Troubleshooting → Enable Developer Mode, que reinicia la aplicación con un menú Developer. Luego abra Developer → Configure Third-Party Inference e ingrese su URL base de puerta de enlace. Una configuración distribuida por administrador tiene prioridad y hace que este formulario sea de solo lectura215* **Configurada localmente**: para dispositivos sin una configuración distribuida por administrador, abra Help → Troubleshooting → Enable Developer Mode, que reinicia la aplicación con un menú Developer. Luego abra Developer → Configure Third-Party Inference e ingrese su URL base de puerta de enlace. Una configuración distribuida por administrador tiene prioridad y hace que este formulario sea de solo lectura

216 216 

217Con la configuración de puerta de enlace activa, la aplicación de escritorio ejecuta sesiones solo en su máquina local: el selector de entorno no ofrece sesiones SSH ni entornos en la nube alojados por Anthropic, y [Control Remoto](/es/remote-control) no está disponible. Para usar Claude Code en un host remoto a través de la puerta de enlace, ejecute la CLI en ese host con [`ANTHROPIC_BASE_URL` y la credencial de puerta de enlace](#set-the-base-url-and-credential) establecidas allí.217Con la configuración de puerta de enlace activa, la aplicación de escritorio ejecuta sesiones solo en su máquina local: el selector de entorno no ofrece sesiones SSH ni entornos en la nube alojados por Anthropic, y [Control Remoto](/docs/es/remote-control) no está disponible. Para usar Claude Code en un host remoto a través de la puerta de enlace, ejecute la CLI en ese host con [`ANTHROPIC_BASE_URL` y la credencial de puerta de enlace](#set-the-base-url-and-credential) establecidas allí.

218 218 

219Si la aplicación de escritorio muestra `Gateway was unreachable`, la aplicación no pudo alcanzar la URL base configurada al iniciar; compruebe la URL y la ruta de red con la [prueba de curl anterior](#verify-the-connection).219Si la aplicación de escritorio muestra `Gateway was unreachable`, la aplicación no pudo alcanzar la URL base configurada al iniciar; compruebe la URL y la ruta de red con la [prueba de curl anterior](#verify-the-connection).

220 220 


222 GitHub Actions222 GitHub Actions

223</h3>223</h3>

224 224 

225[Claude Code GitHub Actions](/es/github-actions) lee `ANTHROPIC_BASE_URL` y `ANTHROPIC_CUSTOM_HEADERS` del bloque `env` del flujo de trabajo. Pase la credencial como la entrada `anthropic_api_key` de la acción; la acción la establece como `ANTHROPIC_API_KEY`, por lo que llega a la puerta de enlace en el encabezado `x-api-key`.225[Claude Code GitHub Actions](/docs/es/github-actions) lee `ANTHROPIC_BASE_URL` y `ANTHROPIC_CUSTOM_HEADERS` del bloque `env` del flujo de trabajo. Pase la credencial como la entrada `anthropic_api_key` de la acción; la acción la establece como `ANTHROPIC_API_KEY`, por lo que llega a la puerta de enlace en el encabezado `x-api-key`.

226 226 

227Para una puerta de enlace `x-api-key`, establezca la URL base en `env` y pase la clave de puerta de enlace como entrada:227Para una puerta de enlace `x-api-key`, establezca la URL base en `env` y pase la clave de puerta de enlace como entrada:

228 228 


249 anthropic_api_key: ${{ secrets.GATEWAY_API_KEY }}249 anthropic_api_key: ${{ secrets.GATEWAY_API_KEY }}

250```250```

251 251 

252Para las otras opciones de autenticación de la acción, incluidas `CLAUDE_CODE_OAUTH_TOKEN` y federación de identidad de carga de trabajo, consulte [Claude Code GitHub Actions](/es/github-actions) y el [README](https://github.com/anthropics/claude-code-action#readme) de la acción.252Para las otras opciones de autenticación de la acción, incluidas `CLAUDE_CODE_OAUTH_TOKEN` y federación de identidad de carga de trabajo, consulte [Claude Code GitHub Actions](/docs/es/github-actions) y el [README](https://github.com/anthropics/claude-code-action#readme) de la acción.

253 253 

254<h3 id="agent-sdk">254<h3 id="agent-sdk">

255 Agent SDK255 Agent SDK

256</h3>256</h3>

257 257 

258El [Agent SDK](/es/agent-sdk/overview) no tiene opciones específicas de puerta de enlace; pasa variables de entorno al proceso de Claude Code que genera. Cada SDK acepta una opción `env` que establece el entorno del proceso generado, y los SDK de TypeScript y Python lo tratan de manera diferente:258El [Agent SDK](/docs/es/agent-sdk/overview) no tiene opciones específicas de puerta de enlace; pasa variables de entorno al proceso de Claude Code que genera. Cada SDK acepta una opción `env` que establece el entorno del proceso generado, y los SDK de TypeScript y Python lo tratan de manera diferente:

259 259 

260* TypeScript: el proceso generado hereda el entorno principal de forma predeterminada, pero establecer `options.env` reemplaza el entorno completamente. Extienda `process.env` en él para mantener sus variables de puerta de enlace.260* TypeScript: el proceso generado hereda el entorno principal de forma predeterminada, pero establecer `options.env` reemplaza el entorno completamente. Extienda `process.env` en él para mantener sus variables de puerta de enlace.

261* Python: `ClaudeAgentOptions(env=...)` se fusiona en el entorno heredado, por lo que las variables de puerta de enlace establecidas en el proceso principal se transmiten sin extender.261* Python: `ClaudeAgentOptions(env=...)` se fusiona en el entorno heredado, por lo que las variables de puerta de enlace establecidas en el proceso principal se transmiten sin extender.


288 Slack, web y Control Remoto288 Slack, web y Control Remoto

289</h3>289</h3>

290 290 

291[Claude Code en Slack](/es/slack) y [Claude Code en la web](/es/claude-code-on-the-web) son productos alojados por Anthropic que siempre usan la API de Anthropic; no son parte de una implementación de puerta de enlace. Las variables de puerta de enlace establecidas en la configuración de entorno de una sesión en la nube no se aplican. Si su tráfico debe permanecer en la puerta de enlace, no habilite estas superficies para esos usuarios.291[Claude Code en Slack](/docs/es/slack) y [Claude Code en la web](/docs/es/claude-code-on-the-web) son productos alojados por Anthropic que siempre usan la API de Anthropic; no son parte de una implementación de puerta de enlace. Las variables de puerta de enlace establecidas en la configuración de entorno de una sesión en la nube no se aplican. Si su tráfico debe permanecer en la puerta de enlace, no habilite estas superficies para esos usuarios.

292 292 

293[Control Remoto](/es/remote-control) y [dictado de voz](/es/voice-dictation) ambos se basan en una identidad de claude.ai: Control Remoto para emparejar una sesión en vivo con su cuenta, y dictado de voz para alcanzar el punto final de transcripción de claude.ai. No están disponibles mientras `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, o un `apiKeyHelper` está activo. {/* min-version: 2.1.196 */}A partir de v2.1.196, Control Remoto también está deshabilitado mientras `ANTHROPIC_BASE_URL` apunta a un host que no es de Anthropic, por lo que iniciar sesión con claude.ai no es suficiente por sí solo.293[Control Remoto](/docs/es/remote-control) y [dictado de voz](/docs/es/voice-dictation) ambos se basan en una identidad de claude.ai: Control Remoto para emparejar una sesión en vivo con su cuenta, y dictado de voz para alcanzar el punto final de transcripción de claude.ai. No están disponibles mientras `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, o un `apiKeyHelper` está activo. A partir de v2.1.196, Control Remoto también está deshabilitado mientras `ANTHROPIC_BASE_URL` apunta a un host que no es de Anthropic, por lo que iniciar sesión con claude.ai no es suficiente por sí solo.

294 294 

295Para restaurar cualquiera de estas características, inicie sesión con claude.ai y desestablezca las variables de puerta de enlace que comprueba. La sección Control Remoto de `claude doctor` nombra la variable de credencial a desestablecer.295Para restaurar cualquiera de estas características, inicie sesión con claude.ai y desestablezca las variables de puerta de enlace que comprueba. La sección Control Remoto de `claude doctor` nombra la variable de credencial a desestablecer.

296 296 


307 Enviar encabezados adicionales307 Enviar encabezados adicionales

308</h3>308</h3>

309 309 

310Algunas puertas de enlace enrutan o etiquetan solicitudes usando un encabezado personalizado además de la credencial, por ejemplo un identificador de inquilino o una clave de enrutamiento. Para enviar uno, establezca [`ANTHROPIC_CUSTOM_HEADERS`](/es/env-vars) con un par `Name: Value` por línea. El ejemplo a continuación agrega un encabezado de enrutamiento llamado `X-Org-Route`:310Algunas puertas de enlace enrutan o etiquetan solicitudes usando un encabezado personalizado además de la credencial, por ejemplo un identificador de inquilino o una clave de enrutamiento. Para enviar uno, establezca [`ANTHROPIC_CUSTOM_HEADERS`](/docs/es/env-vars) con un par `Name: Value` por línea. El ejemplo a continuación agrega un encabezado de enrutamiento llamado `X-Org-Route`:

311 311 

312<Tabs>312<Tabs>

313 <Tab title="Bash o Zsh">313 <Tab title="Bash o Zsh">


341 341 

342Habilítelo si su puerta de enlace sirve nombres de modelos que no están en la lista integrada de Claude Code y desea seleccionarlos del selector. Si los modelos integrados son los que usa, no necesita descubrimiento; su administrador también puede haberlo habilitado ya a través de configuración administrada.342Habilítelo si su puerta de enlace sirve nombres de modelos que no están en la lista integrada de Claude Code y desea seleccionarlos del selector. Si los modelos integrados son los que usa, no necesita descubrimiento; su administrador también puede haberlo habilitado ya a través de configuración administrada.

343 343 

344Para habilitarlo, establezca `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1` en su shell o en el bloque `env` de `~/.claude/settings.json`. El descubrimiento requiere Claude Code v2.1.129 o posterior. {/* min-version: 2.1.129 */}344Para habilitarlo, establezca `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1` en su shell o en el bloque `env` de `~/.claude/settings.json`. El descubrimiento requiere Claude Code v2.1.129 o posterior.&#x20;

345 345 

346Los modelos descubiertos aparecen como entradas `/model` adicionales etiquetadas como `From gateway`. Para confirmar que el descubrimiento se ejecutó, inicie `claude --debug` y busque las líneas `[gatewayDiscovery]`: un éxito registra cuántos modelos se almacenaron en caché, y un `404`, tiempo de espera, o redirección se registra allí también. Para cuándo se ejecuta el descubrimiento, qué filtra, y el formato de respuesta que las puertas de enlace sirven, consulte la [referencia de descubrimiento de modelos](/es/llm-gateway-protocol#model-discovery).346Los modelos descubiertos aparecen como entradas `/model` adicionales etiquetadas como `From gateway`. Para confirmar que el descubrimiento se ejecutó, inicie `claude --debug` y busque las líneas `[gatewayDiscovery]`: un éxito registra cuántos modelos se almacenaron en caché, y un `404`, tiempo de espera, o redirección se registra allí también. Para cuándo se ejecuta el descubrimiento, qué filtra, y el formato de respuesta que las puertas de enlace sirven, consulte la [referencia de descubrimiento de modelos](/docs/es/llm-gateway-protocol#model-discovery).

347 347 

348<h3 id="rotate-credentials-with-apikeyhelper">348<h3 id="rotate-credentials-with-apikeyhelper">

349 Rotar credenciales con apiKeyHelper349 Rotar credenciales con apiKeyHelper


353 353 

354Use un asistente cuando la credencial expira en un cronograma, viene de un comando de almacén o SSO, o su administrador le dijo que configure uno. Si su credencial es una cadena fija que establece una vez, la [variable de credencial](#set-the-credential-variable) es todo lo que necesita y puede omitir esta sección.354Use un asistente cuando la credencial expira en un cronograma, viene de un comando de almacén o SSO, o su administrador le dijo que configure uno. Si su credencial es una cadena fija que establece una vez, la [variable de credencial](#set-the-credential-variable) es todo lo que necesita y puede omitir esta sección.

355 355 

356El asistente es cualquier comando de shell que imprime la credencial actual en stdout. Claude Code lo ejecuta a través de su shell del sistema, por lo que en Windows puede ser un ejecutable o una invocación de PowerShell. Escriba el script, hágalo ejecutable, y haga referencia a él desde `apiKeyHelper` en su [archivo de configuración](/es/settings):356El asistente es cualquier comando de shell que imprime la credencial actual en stdout. Claude Code lo ejecuta a través de su shell del sistema, por lo que en Windows puede ser un ejecutable o una invocación de PowerShell. Escriba el script, hágalo ejecutable, y haga referencia a él desde `apiKeyHelper` en su [archivo de configuración](/docs/es/settings):

357 357 

358<Tabs>358<Tabs>

359 <Tab title="Bash o Zsh">359 <Tab title="Bash o Zsh">


419Establecer la variable tiene estos efectos y limitaciones:419Establecer la variable tiene estos efectos y limitaciones:

420 420 

421* Desactiva las actualizaciones automáticas, por lo que planifique otra ruta de actualización, como su gestor de paquetes o distribución administrada.421* Desactiva las actualizaciones automáticas, por lo que planifique otra ruta de actualización, como su gestor de paquetes o distribución administrada.

422* Suprime la comprobación de disponibilidad del [modo rápido](/es/fast-mode). A menos que una comprobación anterior ya haya habilitado el modo rápido en la máquina, `/fast` reporta que el modo rápido no está disponible.422* Suprime la comprobación de disponibilidad del [modo rápido](/docs/es/fast-mode). A menos que una comprobación anterior ya haya habilitado el modo rápido en la máquina, `/fast` reporta que el modo rápido no está disponible.

423* Desactiva el [descubrimiento de modelos de puerta de enlace](#add-gateway-models-to-the-model-picker), aunque el descubrimiento consulta la puerta de enlace en sí. Los modelos descubiertos previamente permanecen disponibles desde el caché local, pero la lista no se actualiza.423* Desactiva el [descubrimiento de modelos de puerta de enlace](#add-gateway-models-to-the-model-picker), aunque el descubrimiento consulta la puerta de enlace en sí. Los modelos descubiertos previamente permanecen disponibles desde el caché local, pero la lista no se actualiza.

424* La comprobación de seguridad de dominio de la herramienta WebFetch no se ve afectada y aún llama a `api.anthropic.com`. Desactívela por separado con `skipWebFetchPreflight: true` en [configuración](/es/settings) si su red bloquea ese host.424* La comprobación de seguridad de dominio de la herramienta WebFetch no se ve afectada y aún llama a `api.anthropic.com`. Desactívela por separado con `skipWebFetchPreflight: true` en [configuración](/docs/es/settings) si su red bloquea ese host.

425* Para cada flujo de telemetría y la variable que lo controla, consulte [servicios de telemetría](/es/data-usage#telemetry-services).425* Para cada flujo de telemetría y la variable que lo controla, consulte [servicios de telemetría](/docs/es/data-usage#telemetry-services).

426 426 

427<h3 id="route-to-a-cloud-provider-through-a-gateway">427<h3 id="route-to-a-cloud-provider-through-a-gateway">

428 Enrutar a un proveedor en la nube a través de una puerta de enlace428 Enrutar a un proveedor en la nube a través de una puerta de enlace


432 432 

433Use una solo si su equipo de puerta de enlace nombró específicamente Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, o Claude Platform en AWS. Si la [solicitud de verificación](#verify-the-connection) anterior devolvió JSON, puede omitir esta sección.433Use una solo si su equipo de puerta de enlace nombró específicamente Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, o Claude Platform en AWS. Si la [solicitud de verificación](#verify-the-connection) anterior devolvió JSON, puede omitir esta sección.

434 434 

435Establezca el bloque para el proveedor que su equipo de puerta de enlace nombró. Las variables de omitir autenticación le dicen a Claude Code que no firme solicitudes con credenciales de proveedor, ya que la puerta de enlace tiene esas. Si la puerta de enlace necesita su propio token, agregue `ANTHROPIC_AUTH_TOKEN` después del bloque, excepto para Microsoft Foundry, que usa `ANTHROPIC_FOUNDRY_API_KEY` como se muestra. {/* min-version: 2.1.203 */}Una puerta de enlace de Microsoft Foundry que espera un token de portador puede usar [`ANTHROPIC_FOUNDRY_AUTH_TOKEN`](/es/env-vars) en su lugar; tiene precedencia sobre `ANTHROPIC_FOUNDRY_API_KEY` cuando ambos están establecidos. `ANTHROPIC_FOUNDRY_AUTH_TOKEN` requiere Claude Code v2.1.203 o posterior.435Establezca el bloque para el proveedor que su equipo de puerta de enlace nombró. Las variables de omitir autenticación le dicen a Claude Code que no firme solicitudes con credenciales de proveedor, ya que la puerta de enlace tiene esas. Si la puerta de enlace necesita su propio token, agregue `ANTHROPIC_AUTH_TOKEN` después del bloque, excepto para Microsoft Foundry, que usa `ANTHROPIC_FOUNDRY_API_KEY` como se muestra. Una puerta de enlace de Microsoft Foundry que espera un token de portador puede usar [`ANTHROPIC_FOUNDRY_AUTH_TOKEN`](/docs/es/env-vars) en su lugar; tiene precedencia sobre `ANTHROPIC_FOUNDRY_API_KEY` cuando ambos están establecidos. `ANTHROPIC_FOUNDRY_AUTH_TOKEN` requiere Claude Code v2.1.203 o posterior.

436 436 

437<h4 id="amazon-bedrock">437<h4 id="amazon-bedrock">

438 Amazon Bedrock438 Amazon Bedrock


486 Microsoft Foundry486 Microsoft Foundry

487</h4>487</h4>

488 488 

489Ponga la credencial de la puerta de enlace en `ANTHROPIC_FOUNDRY_API_KEY`; se envía a la puerta de enlace como el encabezado `x-api-key`. {/* min-version: 2.1.203 */}Una puerta de enlace que espera un token de portador puede tomar [`ANTHROPIC_FOUNDRY_AUTH_TOKEN`](/es/env-vars) en su lugar. Claude Code envía ese valor como el encabezado `Authorization: Bearer`, y tiene precedencia sobre `ANTHROPIC_FOUNDRY_API_KEY` cuando ambos están establecidos. Requiere Claude Code v2.1.203 o posterior.489Ponga la credencial de la puerta de enlace en `ANTHROPIC_FOUNDRY_API_KEY`; se envía a la puerta de enlace como el encabezado `x-api-key`. Una puerta de enlace que espera un token de portador puede tomar [`ANTHROPIC_FOUNDRY_AUTH_TOKEN`](/docs/es/env-vars) en su lugar. Claude Code envía ese valor como el encabezado `Authorization: Bearer`, y tiene precedencia sobre `ANTHROPIC_FOUNDRY_API_KEY` cuando ambos están establecidos. Requiere Claude Code v2.1.203 o posterior.

490 490 

491Para una puerta de enlace que inyecta su propio encabezado `Authorization`, establezca `CLAUDE_CODE_SKIP_FOUNDRY_AUTH=1` y deje ambas variables de credencial sin establecer. Claude Code entonces envía solicitudes sin una credencial de Azure y preserva el encabezado `Authorization` que suministra, por ejemplo a través de `ANTHROPIC_CUSTOM_HEADERS`. {/* min-version: 2.1.203 */}Antes de v2.1.203, `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` sin una clave de API dejaba el cliente de Microsoft Foundry incapaz de enviar solicitudes.491Para una puerta de enlace que inyecta su propio encabezado `Authorization`, establezca `CLAUDE_CODE_SKIP_FOUNDRY_AUTH=1` y deje ambas variables de credencial sin establecer. Claude Code entonces envía solicitudes sin una credencial de Azure y preserva el encabezado `Authorization` que suministra, por ejemplo a través de `ANTHROPIC_CUSTOM_HEADERS`. Antes de v2.1.203, `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` sin una clave de API dejaba el cliente de Microsoft Foundry incapaz de enviar solicitudes.

492 492 

493<Tabs>493<Tabs>

494 <Tab title="Bash o Zsh">494 <Tab title="Bash o Zsh">


512 Claude Platform en AWS512 Claude Platform en AWS

513</h4>513</h4>

514 514 

515Consulte [Claude Platform en AWS](/es/claude-platform-on-aws) para el ID del espacio de trabajo.515Consulte [Claude Platform en AWS](/docs/es/claude-platform-on-aws) para el ID del espacio de trabajo.

516 516 

517<Tabs>517<Tabs>

518 <Tab title="Bash o Zsh">518 <Tab title="Bash o Zsh">


544| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |544| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

545| Una advertencia de inicio que nombra dos fuentes de credencial y termina en `auth may not work as expected`. Las versiones más antiguas muestran `Auth conflict: Both a token (SOURCE) and an API key (SOURCE) are set` en su lugar. | Una credencial de puerta de enlace y un inicio de sesión guardado están ambos activos; la variable se usa para solicitudes, pero el inicio de sesión obsoleto puede causar comportamiento de autenticación inesperado | Desestablezca la variable para usar el inicio de sesión guardado, o ejecute `/logout` para usar la credencial de puerta de enlace |545| Una advertencia de inicio que nombra dos fuentes de credencial y termina en `auth may not work as expected`. Las versiones más antiguas muestran `Auth conflict: Both a token (SOURCE) and an API key (SOURCE) are set` en su lugar. | Una credencial de puerta de enlace y un inicio de sesión guardado están ambos activos; la variable se usa para solicitudes, pero el inicio de sesión obsoleto puede causar comportamiento de autenticación inesperado | Desestablezca la variable para usar el inicio de sesión guardado, o ejecute `/logout` para usar la credencial de puerta de enlace |

546| Errores `401` que nombran un token inválido o no reconocido | La credencial no es una que la puerta de enlace emitió, o está en un encabezado que la puerta de enlace no lee | Confirme que la variable coincida con su tipo de credencial en la [tabla de credencial](#set-the-credential-variable), y regenere la clave en la puerta de enlace si fue revocada |546| Errores `401` que nombran un token inválido o no reconocido | La credencial no es una que la puerta de enlace emitió, o está en un encabezado que la puerta de enlace no lee | Confirme que la variable coincida con su tipo de credencial en la [tabla de credencial](#set-the-credential-variable), y regenere la clave en la puerta de enlace si fue revocada |

547| `Your apiKeyHelper script is failing` | El comando en la configuración [`apiKeyHelper`](/es/settings#available-settings) salió con un error, agotó el tiempo de espera, o no imprimió nada, por lo que las solicitudes llevan una clave de marcador de posición | Ejecute el comando directamente para ver por qué falla, y vuelva a autenticarse con su proveedor de credenciales si reporta una sesión expirada; consulte [la referencia de errores](/es/errors#your-apikeyhelper-script-is-failing) |547| `Your apiKeyHelper script is failing` | El comando en la configuración [`apiKeyHelper`](/docs/es/settings#available-settings) salió con un error, agotó el tiempo de espera, o no imprimió nada, por lo que las solicitudes llevan una clave de marcador de posición | Ejecute el comando directamente para ver por qué falla, y vuelva a autenticarse con su proveedor de credenciales si reporta una sesión expirada; consulte [la referencia de errores](/docs/es/errors#your-apikeyhelper-script-is-failing) |

548| `Unable to connect to API (ConnectionRefused)`, o `(ECONNREFUSED)` de instalaciones de npm, a menudo después de una pausa silenciosa mientras Claude Code [reintenta con retroceso](/es/errors#automatic-retries) | Nada respondió en la URL base: la dirección es incorrecta, o una VPN o firewall bloquea la ruta a la puerta de enlace | Ejecute la [prueba de curl anterior](#verify-the-connection), que falla inmediatamente con la misma causa, y confirme la URL y la ruta de red con su equipo de puerta de enlace |548| `Unable to connect to API (ConnectionRefused)`, o `(ECONNREFUSED)` de instalaciones de npm, a menudo después de una pausa silenciosa mientras Claude Code [reintenta con retroceso](/docs/es/errors#automatic-retries) | Nada respondió en la URL base: la dirección es incorrecta, o una VPN o firewall bloquea la ruta a la puerta de enlace | Ejecute la [prueba de curl anterior](#verify-the-connection), que falla inmediatamente con la misma causa, y confirme la URL y la ruta de red con su equipo de puerta de enlace |

549| `API returned an empty or malformed response (HTTP 200)` | La puerta de enlace o un proxy intermedio devolvió una respuesta que no es de API, a menudo una página de error HTML o de inicio de sesión | Pruebe con la [solicitud de curl anterior](#verify-the-connection); corrija la ruta de puerta de enlace que devuelve JSON no válido |549| `API returned an empty or malformed response (HTTP 200)` | La puerta de enlace o un proxy intermedio devolvió una respuesta que no es de API, a menudo una página de error HTML o de inicio de sesión | Pruebe con la [solicitud de curl anterior](#verify-the-connection); corrija la ruta de puerta de enlace que devuelve JSON no válido |

550| Errores `400` que nombran `context_management`, `Extra inputs are not permitted`, u otros campos no reconocidos | La puerta de enlace reenvía solicitudes a un upstream que rechaza campos que Claude Code envía a puntos finales en formato de Anthropic | Establezca `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`, que suprime la mayoría de campos de pre-lanzamiento; consulte [paso de características](/es/llm-gateway-protocol#feature-pass-through). Algunos betas no están controlados por esta bandera; para esos, establezca la variable de proveedor `CLAUDE_CODE_USE_*` coincidente para que Claude Code envíe solo lo que ese proveedor acepta |550| Errores `400` que nombran `context_management`, `Extra inputs are not permitted`, u otros campos no reconocidos | La puerta de enlace reenvía solicitudes a un upstream que rechaza campos que Claude Code envía a puntos finales en formato de Anthropic | Establezca `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`, que suprime la mayoría de campos de pre-lanzamiento; consulte [paso de características](/docs/es/llm-gateway-protocol#feature-pass-through). Algunos betas no están controlados por esta bandera; para esos, establezca la variable de proveedor `CLAUDE_CODE_USE_*` coincidente para que Claude Code envíe solo lo que ese proveedor acepta |

551| Errores `400` que nombran `thinking` o `adaptive`, como `Input tag 'adaptive' found` | La compilación del modelo upstream no acepta razonamiento adaptativo, que Claude Code solicita para modelos Claude 4.6 y posteriores | Actualice el upstream de la puerta de enlace. En Opus 4.6 y Sonnet 4.6, `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` funciona en su lugar. Las variables de capacidad de [configuración de modelo](/es/model-config) se aplican solo a las configuraciones de proveedor, como `CLAUDE_CODE_USE_BEDROCK` y `CLAUDE_CODE_USE_VERTEX`, no detrás de una puerta de enlace `ANTHROPIC_BASE_URL` |551| Errores `400` que nombran `thinking` o `adaptive`, como `Input tag 'adaptive' found` | La compilación del modelo upstream no acepta razonamiento adaptativo, que Claude Code solicita para modelos Claude 4.6 y posteriores | Actualice el upstream de la puerta de enlace. En Opus 4.6 y Sonnet 4.6, `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` funciona en su lugar. Las variables de capacidad de [configuración de modelo](/docs/es/model-config) se aplican solo a las configuraciones de proveedor, como `CLAUDE_CODE_USE_BEDROCK` y `CLAUDE_CODE_USE_VERTEX`, no detrás de una puerta de enlace `ANTHROPIC_BASE_URL` |

552| Errores `400` que indican un contexto o límite de token en las propias palabras de la puerta de enlace, como `ContextWindowExceededError` o `prompt token count of N exceeds the limit of M` | La puerta de enlace aplica un contexto más pequeño que la ventana nativa del modelo y reescribe el error upstream, por lo que el compacto automático y reintento, que coincide con la redacción `prompt is too long` de Anthropic, no se dispara | Ejecute `/compact` para recuperar la sesión. Para prevenirlo, establezca `CLAUDE_CODE_AUTO_COMPACT_WINDOW` al límite de la puerta de enlace; el valor se fija a al menos 100,000 tokens y como máximo la ventana de contexto del modelo, por lo que un límite de puerta de enlace por debajo de 100,000 no puede coincidir y `/compact` permanece como la recuperación allí. También establezca `CLAUDE_CODE_MAX_OUTPUT_TOKENS` por debajo del límite de salida del modelo de puerta de enlace |552| Errores `400` que indican un contexto o límite de token en las propias palabras de la puerta de enlace, como `ContextWindowExceededError` o `prompt token count of N exceeds the limit of M` | La puerta de enlace aplica un contexto más pequeño que la ventana nativa del modelo y reescribe el error upstream, por lo que el compacto automático y reintento, que coincide con la redacción `prompt is too long` de Anthropic, no se dispara | Ejecute `/compact` para recuperar la sesión. Para prevenirlo, establezca `CLAUDE_CODE_AUTO_COMPACT_WINDOW` al límite de la puerta de enlace; el valor se fija a al menos 100,000 tokens y como máximo la ventana de contexto del modelo, por lo que un límite de puerta de enlace por debajo de 100,000 no puede coincidir y `/compact` permanece como la recuperación allí. También establezca `CLAUDE_CODE_MAX_OUTPUT_TOKENS` por debajo del límite de salida del modelo de puerta de enlace |

553| Modelos faltantes del selector `/model` | Los nombres de modelos de puerta de enlace no están en la lista integrada de Claude Code | Habilite [descubrimiento de modelos de puerta de enlace](#add-gateway-models-to-the-model-picker) o agregue nombres con las variables de [configuración de modelo](/es/model-config) |553| Modelos faltantes del selector `/model` | Los nombres de modelos de puerta de enlace no están en la lista integrada de Claude Code | Habilite [descubrimiento de modelos de puerta de enlace](#add-gateway-models-to-the-model-picker) o agregue nombres con las variables de [configuración de modelo](/docs/es/model-config) |

554| Claude Code le pide que inicie sesión aunque la [prueba de curl](#verify-the-connection) tenga éxito | La CLI no tiene credencial propia: una URL base alcanzable no es una, y un bloque `env` en el `.claude/settings.json` o `.claude/settings.local.json` de un proyecto se aplica solo después del asistente de primera ejecución y la solicitud de confianza | Establezca `ANTHROPIC_AUTH_TOKEN` en algún lugar que Claude Code lea antes de la configuración de primera ejecución: una exportación de shell, el bloque `env` en `~/.claude/settings.json`, o configuración administrada |554| Claude Code le pide que inicie sesión aunque la [prueba de curl](#verify-the-connection) tenga éxito | La CLI no tiene credencial propia: una URL base alcanzable no es una, y un bloque `env` en el `.claude/settings.json` o `.claude/settings.local.json` de un proyecto se aplica solo después del asistente de primera ejecución y la solicitud de confianza | Establezca `ANTHROPIC_AUTH_TOKEN` en algún lugar que Claude Code lea antes de la configuración de primera ejecución: una exportación de shell, el bloque `env` en `~/.claude/settings.json`, o configuración administrada |

555| `ANTHROPIC_API_KEY` está establecido pero ignorado, sin solicitud | La clave necesita una aprobación única en sesiones interactivas, y una clave previamente rechazada se ignora sin preguntar de nuevo | Habilítela bajo `/config` con la opción `Use custom API key` |555| `ANTHROPIC_API_KEY` está establecido pero ignorado, sin solicitud | La clave necesita una aprobación única en sesiones interactivas, y una clave previamente rechazada se ignora sin preguntar de nuevo | Habilítela bajo `/config` con la opción `Use custom API key` |

556| `This machine's managed settings require a first-party login` | La configuración administrada incluye `forceLoginMethod` o `forceLoginOrgUUID`, que en Claude Code v2.1.146 y posterior no pueden coexistir con `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, o `apiKeyHelper` | Su administrador debe eliminar `forceLoginMethod` y `forceLoginOrgUUID` de la configuración administrada para usar credenciales de puerta de enlace, o eliminar la credencial de puerta de enlace para usar inicio de sesión de primera parte. Los dos no pueden combinarse |556| `This machine's managed settings require a first-party login` | La configuración administrada incluye `forceLoginMethod` o `forceLoginOrgUUID`, que en Claude Code v2.1.146 y posterior no pueden coexistir con `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, o `apiKeyHelper` | Su administrador debe eliminar `forceLoginMethod` y `forceLoginOrgUUID` de la configuración administrada para usar credenciales de puerta de enlace, o eliminar la credencial de puerta de enlace para usar inicio de sesión de primera parte. Los dos no pueden combinarse |

557| `403` con un cuerpo HTML como `403 Forbidden`, cuando los registros propios de la puerta de enlace no muestran ninguna solicitud recibida | Un firewall de aplicación web o proxy inverso frente a la puerta de enlace bloqueó el cuerpo de la solicitud antes de que llegara a la puerta de enlace. Los avisos de Claude Code incluyen etiquetas de estilo XML y código fuente que coinciden con reglas de cuerpo de secuencias de comandos entre sitios, por lo que una prueba de curl corta pasa mientras una sesión real no | Exima la ruta `/v1/messages` de la puerta de enlace de la inspección del cuerpo de la solicitud. En AWS WAF esta es la regla administrada `CrossSiteScripting_Body`; en nginx con ModSecurity es la regla de cuerpo OWASP CRS equivalente |557| `403` con un cuerpo HTML como `403 Forbidden`, cuando los registros propios de la puerta de enlace no muestran ninguna solicitud recibida | Un firewall de aplicación web o proxy inverso frente a la puerta de enlace bloqueó el cuerpo de la solicitud antes de que llegara a la puerta de enlace. Los avisos de Claude Code incluyen etiquetas de estilo XML y código fuente que coinciden con reglas de cuerpo de secuencias de comandos entre sitios, por lo que una prueba de curl corta pasa mientras una sesión real no | Exima la ruta `/v1/messages` de la puerta de enlace de la inspección del cuerpo de la solicitud. En AWS WAF esta es la regla administrada `CrossSiteScripting_Body`; en nginx con ModSecurity es la regla de cuerpo OWASP CRS equivalente |

558| Errores de certificado o TLS como `SSL certificate verification failed` o `Self-signed certificate detected`, cuando la [prueba de curl](#verify-the-connection) tiene éxito | El tiempo de ejecución de Claude Code no está confiando en la misma autoridad de certificación que `curl` usa. Común detrás de proxies de inspección TLS corporativos | Establezca `NODE_EXTRA_CA_CERTS` a la ruta del paquete de CA; consulte [almacén de certificados de CA](/es/network-config#ca-certificate-store) |558| Errores de certificado o TLS como `SSL certificate verification failed` o `Self-signed certificate detected`, cuando la [prueba de curl](#verify-the-connection) tiene éxito | El tiempo de ejecución de Claude Code no está confiando en la misma autoridad de certificación que `curl` usa. Común detrás de proxies de inspección TLS corporativos | Establezca `NODE_EXTRA_CA_CERTS` a la ruta del paquete de CA; consulte [almacén de certificados de CA](/docs/es/network-config#ca-certificate-store) |

559 559 

560Si Claude Code le solicita que inicie sesión repetidamente después de eliminar la configuración de puerta de enlace, la causa es generalmente almacenamiento de credenciales en lugar de la puerta de enlace; consulte [errores de autenticación](/es/errors#authentication-errors).560Si Claude Code le solicita que inicie sesión repetidamente después de eliminar la configuración de puerta de enlace, la causa es generalmente almacenamiento de credenciales en lugar de la puerta de enlace; consulte [errores de autenticación](/docs/es/errors#authentication-errors).

561 561 

562<h2 id="related-resources">562<h2 id="related-resources">

563 Recursos relacionados563 Recursos relacionados

564</h2>564</h2>

565 565 

566* [Descripción general de puertas de enlace LLM](/es/llm-gateway): qué es una puerta de enlace y cómo interactúa con las suscripciones de claude.ai566* [Descripción general de puertas de enlace LLM](/docs/es/llm-gateway): qué es una puerta de enlace y cómo interactúa con las suscripciones de claude.ai

567* [Implementar una puerta de enlace LLM para su organización](/es/llm-gateway-rollout): la lista de verificación orientada al administrador para implementar y distribuir la configuración de puerta de enlace567* [Implementar una puerta de enlace LLM para su organización](/docs/es/llm-gateway-rollout): la lista de verificación orientada al administrador para implementar y distribuir la configuración de puerta de enlace

568* [Referencia del protocolo de puerta de enlace](/es/llm-gateway-protocol): qué envía Claude Code a una puerta de enlace, incluidos los encabezados y campos que la puerta de enlace debe reenviar568* [Referencia del protocolo de puerta de enlace](/docs/es/llm-gateway-protocol): qué envía Claude Code a una puerta de enlace, incluidos los encabezados y campos que la puerta de enlace debe reenviar

569* [Configuración](/es/settings): dónde viven los archivos de configuración y cómo se lee el bloque `env`569* [Configuración](/docs/es/settings): dónde viven los archivos de configuración y cómo se lee el bloque `env`

570* [Autenticación](/es/authentication): cómo interactúan las variables de credencial, `apiKeyHelper`, e inicio de sesión OAuth570* [Autenticación](/docs/es/authentication): cómo interactúan las variables de credencial, `apiKeyHelper`, e inicio de sesión OAuth

Details

8 8 

9Esta página documenta las solicitudes que Claude Code envía a una puerta de enlace, incluidos los puntos finales que llama, los encabezados y campos de cuerpo que la puerta de enlace debe reenviar, y qué características dejan de funcionar cuando no lo hace. Está escrita para operadores que configuran un producto de puerta de enlace para trabajar con Claude Code.9Esta página documenta las solicitudes que Claude Code envía a una puerta de enlace, incluidos los puntos finales que llama, los encabezados y campos de cuerpo que la puerta de enlace debe reenviar, y qué características dejan de funcionar cuando no lo hace. Está escrita para operadores que configuran un producto de puerta de enlace para trabajar con Claude Code.

10 10 

11Una [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) en ejecución sirve una versión legible por máquina de este contrato en `GET /protocol`, cubriendo los mismos requisitos de reenvío más los puntos finales específicos de la puerta de enlace de aplicaciones Claude para inicio de sesión SSO, entrega de configuración administrada y telemetría. La puerta de enlace de aplicaciones Claude se ejecuta desde el mismo binario `claude` que la CLI, por lo que el [inicio rápido de la puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway#quickstart) es el camino más corto hacia una instancia en ejecución desde la que puede obtener la especificación.11Una [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) en ejecución sirve una versión legible por máquina de este contrato en `GET /protocol`, cubriendo los mismos requisitos de reenvío más los puntos finales específicos de la puerta de enlace de aplicaciones Claude para inicio de sesión SSO, entrega de configuración administrada y telemetría. La puerta de enlace de aplicaciones Claude se ejecuta desde el mismo binario `claude` que la CLI, por lo que el [inicio rápido de la puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway#quickstart) es el camino más corto hacia una instancia en ejecución desde la que puede obtener la especificación.

12 12 

13<Note>13<Note>

14 * Para implementar una puerta de enlace existente o de terceros para su organización, consulte [Implementar una puerta de enlace LLM](/es/llm-gateway-rollout)14 * Para implementar una puerta de enlace existente o de terceros para su organización, consulte [Implementar una puerta de enlace LLM](/docs/es/llm-gateway-rollout)

15 * Si es un desarrollador individual que autentica Claude Code en una puerta de enlace con una credencial que le proporcionaron, consulte [Conectar Claude Code a una puerta de enlace LLM](/es/llm-gateway-connect)15 * Si es un desarrollador individual que autentica Claude Code en una puerta de enlace con una credencial que le proporcionaron, consulte [Conectar Claude Code a una puerta de enlace LLM](/docs/es/llm-gateway-connect)

16</Note>16</Note>

17 17 

18Esta página cubre:18Esta página cubre:


46 Foundry y Claude Platform en AWS46 Foundry y Claude Platform en AWS

47</h3>47</h3>

48 48 

49Microsoft Foundry y la [Claude Platform en AWS](/es/claude-platform-on-aws) implementan el formato Anthropic Messages. Claude Code se enruta a ellos a través de sus propias variables, `ANTHROPIC_FOUNDRY_BASE_URL` y `ANTHROPIC_AWS_BASE_URL`, pero una puerta de enlace que está frente a cualquiera de ellos implementa la fila Anthropic Messages anterior. Una puerta de enlace que está frente a Claude Platform en AWS también debe reenviar el encabezado `anthropic-workspace-id`, que [esa plataforma requiere en cada solicitud](/es/claude-platform-on-aws).49Microsoft Foundry y la [Claude Platform en AWS](/docs/es/claude-platform-on-aws) implementan el formato Anthropic Messages. Claude Code se enruta a ellos a través de sus propias variables, `ANTHROPIC_FOUNDRY_BASE_URL` y `ANTHROPIC_AWS_BASE_URL`, pero una puerta de enlace que está frente a cualquiera de ellos implementa la fila Anthropic Messages anterior. Una puerta de enlace que está frente a Claude Platform en AWS también debe reenviar el encabezado `anthropic-workspace-id`, que [esa plataforma requiere en cada solicitud](/docs/es/claude-platform-on-aws).

50 50 

51<h3 id="optional-endpoints-and-startup-traffic">51<h3 id="optional-endpoints-and-startup-traffic">

52 Puntos finales opcionales y tráfico de inicio52 Puntos finales opcionales y tráfico de inicio


77 Encabezados de solicitud77 Encabezados de solicitud

78</h2>78</h2>

79 79 

80Claude Code incluye estos encabezados en solicitudes de API. Los nombres de encabezados no distinguen mayúsculas de minúsculas en la red. Reenvíe `anthropic-version` y `anthropic-beta` sin cambios, más `anthropic-workspace-id` cuando el proveedor ascendente es la [Claude Platform en AWS](/es/claude-platform-on-aws); el resto la puerta de enlace puede consumir para enrutamiento, atribución y seguimiento, y no necesita reenviar.80Claude Code incluye estos encabezados en solicitudes de API. Los nombres de encabezados no distinguen mayúsculas de minúsculas en la red. Reenvíe `anthropic-version` y `anthropic-beta` sin cambios, más `anthropic-workspace-id` cuando el proveedor ascendente es la [Claude Platform en AWS](/docs/es/claude-platform-on-aws); el resto la puerta de enlace puede consumir para enrutamiento, atribución y seguimiento, y no necesita reenviar.

81 81 

82| Encabezado | Descripción |82| Encabezado | Descripción |

83| :------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |83| :------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

84| `Authorization`, `x-api-key` | La credencial de puerta de enlace del desarrollador, en uno o ambos encabezados dependiendo de cuál [variable de credencial](/es/llm-gateway-connect#set-the-credential-variable) establezcan |84| `Authorization`, `x-api-key` | La credencial de puerta de enlace del desarrollador, en uno o ambos encabezados dependiendo de cuál [variable de credencial](/docs/es/llm-gateway-connect#set-the-credential-variable) establezcan |

85| `anthropic-version` | Versión de API, actualmente `2023-06-01`. Las solicitudes con formato Amazon Bedrock y Agent Platform de Google Cloud también llevan el campo de cuerpo `anthropic_version`, cuyo valor es la cadena de dialecto del proveedor, no el valor de este encabezado |85| `anthropic-version` | Versión de API, actualmente `2023-06-01`. Las solicitudes con formato Amazon Bedrock y Agent Platform de Google Cloud también llevan el campo de cuerpo `anthropic_version`, cuyo valor es la cadena de dialecto del proveedor, no el valor de este encabezado |

86| `anthropic-beta` | Valores de capacidad separados por comas para la solicitud. Reenvíe el encabezado textualmente; no permita valores individuales, porque el conjunto cambia con las versiones de Claude Code. Cuando el desarrollador se autentica con un inicio de sesión de claude.ai, que es posible cuando `ANTHROPIC_BASE_URL` se establece sin una variable de credencial de puerta de enlace, este encabezado también lleva una capacidad OAuth que el proveedor ascendente requiere, y eliminarlo falla esas solicitudes con `401` |86| `anthropic-beta` | Valores de capacidad separados por comas para la solicitud. Reenvíe el encabezado textualmente; no permita valores individuales, porque el conjunto cambia con las versiones de Claude Code. Cuando el desarrollador se autentica con un inicio de sesión de claude.ai, que es posible cuando `ANTHROPIC_BASE_URL` se establece sin una variable de credencial de puerta de enlace, este encabezado también lleva una capacidad OAuth que el proveedor ascendente requiere, y eliminarlo falla esas solicitudes con `401` |

87| `x-claude-code-session-id` | Un identificador único para la sesión actual de Claude Code. Úselo para agregar todas las solicitudes de una sesión sin analizar cuerpos de solicitud |87| `x-claude-code-session-id` | Un identificador único para la sesión actual de Claude Code. Úselo para agregar todas las solicitudes de una sesión sin analizar cuerpos de solicitud |

88| `x-claude-code-agent-id` | Identificador del [subagente](/es/sub-agents) que emitió la solicitud, presente solo en solicitudes de un agente que Claude Code generó dentro de la sesión. Úselo con el ID de sesión para atribuir costo a agentes paralelos |88| `x-claude-code-agent-id` | Identificador del [subagente](/docs/es/sub-agents) que emitió la solicitud, presente solo en solicitudes de un agente que Claude Code generó dentro de la sesión. Úselo con el ID de sesión para atribuir costo a agentes paralelos |

89| `x-claude-code-parent-agent-id` | Identificador del agente que generó el agente solicitante, presente solo para agentes anidados |89| `x-claude-code-parent-agent-id` | Identificador del agente que generó el agente solicitante, presente solo para agentes anidados |

90 90 

91Los ID de subagente se generan nuevos para cada generación. Los agentes compañeros, los miembros nombrados de un [equipo de agentes](/es/agent-teams), reutilizan un ID estable basado en nombres en reconexiones. En ambos casos, el ID identifica un agente, no una persona o un dispositivo, así que no trate el encabezado de ID de agente como un identificador de usuario.91Los ID de subagente se generan nuevos para cada generación. Los agentes compañeros, los miembros nombrados de un [equipo de agentes](/docs/es/agent-teams), reutilizan un ID estable basado en nombres en reconexiones. En ambos casos, el ID identifica un agente, no una persona o un dispositivo, así que no trate el encabezado de ID de agente como un identificador de usuario.

92 92 

93Si sus desarrolladores establecen `ANTHROPIC_CUSTOM_HEADERS`, esos encabezados también aparecen en las solicitudes.93Si sus desarrolladores establecen `ANTHROPIC_CUSTOM_HEADERS`, esos encabezados también aparecen en las solicitudes.

94 94 


112 112 

113* Reenvíe la matriz `system` exactamente como se recibió, manteniendo el bloque primero: anteponer otro bloque del sistema, reordenar la matriz o convertirla en una sola cadena anula la eliminación, y el bloque luego llega al modelo y a la clave de caché de solicitud.113* Reenvíe la matriz `system` exactamente como se recibió, manteniendo el bloque primero: anteponer otro bloque del sistema, reordenar la matriz o convertirla en una sola cadena anula la eliminación, y el bloque luego llega al modelo y a la clave de caché de solicitud.

114* Mantenga el bloque en su propia entrada de matriz: el punto final trata un bloque fusionado que comienza con el encabezado de atribución como atribución en su totalidad y descarta todo lo fusionado en él, incluido el resto del mensaje del sistema.114* Mantenga el bloque en su propia entrada de matriz: el punto final trata un bloque fusionado que comienza con el encabezado de atribución como atribución en su totalidad y descarta todo lo fusionado en él, incluido el resto del mensaje del sistema.

115* Si su puerta de enlace debe remodelar el contenido del sistema, establezca [`CLAUDE_CODE_ATTRIBUTION_HEADER=0`](/es/env-vars) para que Claude Code omita el bloque. Anthropic y los puntos finales de Claude de los proveedores de nube leen el bloque para atribución, así que omítalo en el cliente en lugar de eliminarlo o moverlo en la puerta de enlace.115* Si su puerta de enlace debe remodelar el contenido del sistema, establezca [`CLAUDE_CODE_ATTRIBUTION_HEADER=0`](/docs/es/env-vars) para que Claude Code omita el bloque. Anthropic y los puntos finales de Claude de los proveedores de nube leen el bloque para atribución, así que omítalo en el cliente en lugar de eliminarlo o moverlo en la puerta de enlace.

116 116 

117Las solicitudes que llegan al punto final sin modificar no se ven afectadas.117Las solicitudes que llegan al punto final sin modificar no se ven afectadas.

118 118 

119{/* min-version: 2.1.181 */}Desde Claude Code v2.1.181, el bloque es estable para la vida útil de una conversación cuando las solicitudes se enrutan a través de una URL base personalizada, por lo que una caché de solicitud de puerta de enlace con clave en el cuerpo de solicitud completo funciona sin deshabilitarlo. Antes de v2.1.181, el bloque incluía un token por solicitud; en esas versiones, establezca `CLAUDE_CODE_ATTRIBUTION_HEADER=0` si su puerta de enlace implementa tal caché.119Desde Claude Code v2.1.181, el bloque es estable para la vida útil de una conversación cuando las solicitudes se enrutan a través de una URL base personalizada, por lo que una caché de solicitud de puerta de enlace con clave en el cuerpo de solicitud completo funciona sin deshabilitarlo. Antes de v2.1.181, el bloque incluía un token por solicitud; en esas versiones, establezca `CLAUDE_CODE_ATTRIBUTION_HEADER=0` si su puerta de enlace implementa tal caché.

120 120 

121<h2 id="feature-pass-through">121<h2 id="feature-pass-through">

122 Paso de características122 Paso de características


126 126 

127Las capacidades que agregan campos de cuerpo los emparejan con un encabezado beta, y el par viaja junto. Una puerta de enlace que elimina el encabezado mientras pasa el cuerpo, o reenvía un cuerpo con formato Anthropic a un proveedor ascendente con un esquema diferente, produce errores `400` duros; solo cuando ambas mitades están ausentes juntas la característica se apaga silenciosamente. Una puerta de enlace que reescribe o redacta cuerpos de solicitud para inspección de contenido rompe el emparejamiento de la misma manera que la eliminación, así que inspeccione sin modificar. La tabla señala dónde una característica se desvía del emparejamiento.127Las capacidades que agregan campos de cuerpo los emparejan con un encabezado beta, y el par viaja junto. Una puerta de enlace que elimina el encabezado mientras pasa el cuerpo, o reenvía un cuerpo con formato Anthropic a un proveedor ascendente con un esquema diferente, produce errores `400` duros; solo cuando ambas mitades están ausentes juntas la característica se apaga silenciosamente. Una puerta de enlace que reescribe o redacta cuerpos de solicitud para inspección de contenido rompe el emparejamiento de la misma manera que la eliminación, así que inspeccione sin modificar. La tabla señala dónde una característica se desvía del emparejamiento.

128 128 

129La transmisión de herramientas de grano fino es uno de los valores predeterminados de conexión directa: está desactivada de forma predeterminada siempre que las solicitudes se enruten a través de una URL base personalizada, y una puerta de enlace la recibe cuando los desarrolladores establecen [`CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING=1`](/es/env-vars).129La transmisión de herramientas de grano fino es uno de los valores predeterminados de conexión directa: está desactivada de forma predeterminada siempre que las solicitudes se enruten a través de una URL base personalizada, y una puerta de enlace la recibe cuando los desarrolladores establecen [`CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING=1`](/docs/es/env-vars).

130 130 

131| Característica | Encabezado y par de cuerpo | Síntoma cuando se rompe | Remediación |131| Característica | Encabezado y par de cuerpo | Síntoma cuando se rompe | Remediación |

132| :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------- |132| :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------- |

133| [Razonamiento adaptativo](/es/model-config#adjust-effort-level) | Sin encabezado beta. Claude Code envía `thinking: {"type": "adaptive"}` para Claude 4.6 y posterior, y trata nombres de modelo que no reconoce, como alias de puerta de enlace, como modelos actuales que reciben el campo | `400` nombrando el campo `thinking` o la etiqueta `adaptive` cuando la compilación del modelo ascendente no la acepta | Actualice el proveedor ascendente. En Opus 4.6 y Sonnet 4.6, los desarrolladores pueden establecer `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` en su lugar |133| [Razonamiento adaptativo](/docs/es/model-config#adjust-effort-level) | Sin encabezado beta. Claude Code envía `thinking: {"type": "adaptive"}` para Claude 4.6 y posterior, y trata nombres de modelo que no reconoce, como alias de puerta de enlace, como modelos actuales que reciben el campo | `400` nombrando el campo `thinking` o la etiqueta `adaptive` cuando la compilación del modelo ascendente no la acepta | Actualice el proveedor ascendente. En Opus 4.6 y Sonnet 4.6, los desarrolladores pueden establecer `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` en su lugar |

134| [Gestión de contexto](https://platform.claude.com/docs/en/build-with-claude/context-management) | El encabezado beta de gestión de contexto se empareja con el campo de cuerpo `context_management` | `400` con `Extra inputs are not permitted`. Común cuando una puerta de enlace acepta solicitudes con formato Anthropic pero las reenvía a Amazon Bedrock | Reenvíe ambos, o [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](/es/env-vars) |134| [Gestión de contexto](https://platform.claude.com/docs/en/build-with-claude/context-management) | El encabezado beta de gestión de contexto se empareja con el campo de cuerpo `context_management` | `400` con `Extra inputs are not permitted`. Común cuando una puerta de enlace acepta solicitudes con formato Anthropic pero las reenvía a Amazon Bedrock | Reenvíe ambos, o [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](/docs/es/env-vars) |

135| [Contexto extendido](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) y [pensamiento intercalado](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) | Solo encabezados beta, sin campo de cuerpo | Silenciosamente no disponible cuando se elimina el encabezado; el proveedor ascendente nunca ve la solicitud de capacidad | Reenvíe `anthropic-beta` textualmente |135| [Contexto extendido](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) y [pensamiento intercalado](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) | Solo encabezados beta, sin campo de cuerpo | Silenciosamente no disponible cuando se elimina el encabezado; el proveedor ascendente nunca ve la solicitud de capacidad | Reenvíe `anthropic-beta` textualmente |

136| Campos de [herramienta](https://platform.claude.com/docs/en/agents-and-tools/tool-use/overview) beta | Los encabezados beta relacionados con herramientas se emparejan con campos de esquema de herramienta como `strict` y `defer_loading` | `400` nombrando el campo de esquema de herramienta no reconocido cuando el cuerpo pasa sin su encabezado | Reenvíe ambos, o `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` |136| Campos de [herramienta](https://platform.claude.com/docs/en/agents-and-tools/tool-use/overview) beta | Los encabezados beta relacionados con herramientas se emparejan con campos de esquema de herramienta como `strict` y `defer_loading` | `400` nombrando el campo de esquema de herramienta no reconocido cuando el cuerpo pasa sin su encabezado | Reenvíe ambos, o `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` |

137| [Esfuerzo](https://platform.claude.com/docs/en/build-with-claude/effort) y [salidas estructuradas](https://platform.claude.com/docs/en/build-with-claude/structured-outputs) | El campo de cuerpo `output_config` lleva esfuerzo, formato de salida estructurada y configuración de presupuesto de tarea; cada uno se empareja con su propio encabezado beta | `400` nombrando `output_config`, a menudo `Extra inputs are not permitted`, en proveedores ascendentes Amazon Bedrock y Agent Platform | Reenvíe el campo y sus encabezados juntos |137| [Esfuerzo](https://platform.claude.com/docs/en/build-with-claude/effort) y [salidas estructuradas](https://platform.claude.com/docs/en/build-with-claude/structured-outputs) | El campo de cuerpo `output_config` lleva esfuerzo, formato de salida estructurada y configuración de presupuesto de tarea; cada uno se empareja con su propio encabezado beta | `400` nombrando `output_config`, a menudo `Extra inputs are not permitted`, en proveedores ascendentes Amazon Bedrock y Agent Platform | Reenvíe el campo y sus encabezados juntos |

138| [Conteo de tokens](https://platform.claude.com/docs/en/build-with-claude/token-counting) | Sin emparejamiento beta; utiliza el punto final `count_tokens` | Claude Code vuelve a estimar el uso de contexto localmente | Exponga el punto final si desea conteos exactos |138| [Conteo de tokens](https://platform.claude.com/docs/en/build-with-claude/token-counting) | Sin emparejamiento beta; utiliza el punto final `count_tokens` | Claude Code vuelve a estimar el uso de contexto localmente | Exponga el punto final si desea conteos exactos |

139 139 

140Las [variables](/es/model-config) `ANTHROPIC_DEFAULT_*_MODEL_SUPPORTED_CAPABILITIES` declaran capacidades de modelo solo en las configuraciones del proveedor: `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX`, `CLAUDE_CODE_USE_FOUNDRY`, y [`CLAUDE_CODE_USE_MANTLE`](/es/amazon-bedrock#use-the-mantle-endpoint). No tienen efecto detrás de una puerta de enlace `ANTHROPIC_BASE_URL`.140Las [variables](/docs/es/model-config) `ANTHROPIC_DEFAULT_*_MODEL_SUPPORTED_CAPABILITIES` declaran capacidades de modelo solo en las configuraciones del proveedor: `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_VERTEX`, `CLAUDE_CODE_USE_FOUNDRY`, y [`CLAUDE_CODE_USE_MANTLE`](/docs/es/amazon-bedrock#use-the-mantle-endpoint). No tienen efecto detrás de una puerta de enlace `ANTHROPIC_BASE_URL`.

141 141 

142<h3 id="automatic-retry-and-error-forwarding">142<h3 id="automatic-retry-and-error-forwarding">

143 Reintento automático y reenvío de errores143 Reintento automático y reenvío de errores


161 161 

162Cuando `ANTHROPIC_BASE_URL` apunta a una puerta de enlace que expone el formato Anthropic Messages, Claude Code puede consultar el punto final `/v1/models` de la puerta de enlace al inicio y agregar los modelos devueltos al selector `/model`.162Cuando `ANTHROPIC_BASE_URL` apunta a una puerta de enlace que expone el formato Anthropic Messages, Claude Code puede consultar el punto final `/v1/models` de la puerta de enlace al inicio y agregar los modelos devueltos al selector `/model`.

163 163 

164Los desarrolladores lo habilitan estableciendo [`CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1`](/es/env-vars), en su propio entorno o a través de configuración administrada. El descubrimiento está desactivado de forma predeterminada para que las puertas de enlace respaldadas por una clave API compartida no expongan cada modelo que la clave puede acceder a cada usuario. Esto requiere Claude Code v2.1.129 o posterior.164Los desarrolladores lo habilitan estableciendo [`CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1`](/docs/es/env-vars), en su propio entorno o a través de configuración administrada. El descubrimiento está desactivado de forma predeterminada para que las puertas de enlace respaldadas por una clave API compartida no expongan cada modelo que la clave puede acceder a cada usuario. Esto requiere Claude Code v2.1.129 o posterior.

165 165 

166<h3 id="when-discovery-runs">166<h3 id="when-discovery-runs">

167 Cuándo se ejecuta el descubrimiento167 Cuándo se ejecuta el descubrimiento


171 171 

172* Se establece cualquier variable de proveedor `CLAUDE_CODE_USE_*`, incluso si `ANTHROPIC_BASE_URL` también se establece172* Se establece cualquier variable de proveedor `CLAUDE_CODE_USE_*`, incluso si `ANTHROPIC_BASE_URL` también se establece

173* `ANTHROPIC_BASE_URL` no se establece o apunta a `api.anthropic.com`173* `ANTHROPIC_BASE_URL` no se establece o apunta a `api.anthropic.com`

174* El tráfico no esencial está deshabilitado, a través de [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/es/env-vars) o política organizacional174* El tráfico no esencial está deshabilitado, a través de [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/es/env-vars) o política organizacional

175 175 

176<h3 id="request-and-response">176<h3 id="request-and-response">

177 Solicitud y respuesta177 Solicitud y respuesta


182La solicitud de descubrimiento envía exactamente un encabezado de credencial:182La solicitud de descubrimiento envía exactamente un encabezado de credencial:

183 183 

184* `ANTHROPIC_AUTH_TOKEN` como un token portador, cuando se establece184* `ANTHROPIC_AUTH_TOKEN` como un token portador, cuando se establece

185* De lo contrario, la clave API resuelta, incluido un valor [`apiKeyHelper`](/es/llm-gateway-connect#rotate-credentials-with-apikeyhelper), en el encabezado `x-api-key`185* De lo contrario, la clave API resuelta, incluido un valor [`apiKeyHelper`](/docs/es/llm-gateway-connect#rotate-credentials-with-apikeyhelper), en el encabezado `x-api-key`

186 186 

187Esto difiere de las solicitudes de inferencia, que envían un valor auxiliar en ambos encabezados. Una puerta de enlace que autentica `/v1/models` debe aceptar `x-api-key` para implementaciones auxiliares. Cualquier encabezado de `ANTHROPIC_CUSTOM_HEADERS` también se incluye.187Esto difiere de las solicitudes de inferencia, que envían un valor auxiliar en ambos encabezados. Una puerta de enlace que autentica `/v1/models` debe aceptar `x-api-key` para implementaciones auxiliares. Cualquier encabezado de `ANTHROPIC_CUSTOM_HEADERS` también se incluye.

188 188 


201 Entradas del selector y almacenamiento en caché201 Entradas del selector y almacenamiento en caché

202</h3>202</h3>

203 203 

204El selector es la lista de modelos interactiva que se abre cuando un desarrollador ejecuta `/model` en Claude Code. Cada entrada descubierta está etiquetada como "Desde puerta de enlace" y utiliza `display_name` cuando se proporciona. La [configuración administrada `availableModels`](/es/settings#available-settings) limita lo que el descubrimiento puede agregar.204El selector es la lista de modelos interactiva que se abre cuando un desarrollador ejecuta `/model` en Claude Code. Cada entrada descubierta está etiquetada como "Desde puerta de enlace" y utiliza `display_name` cuando se proporciona. La [configuración administrada `availableModels`](/docs/es/settings#available-settings) limita lo que el descubrimiento puede agregar.

205 205 

206Una ID descubierta se omite cuando coincide exactamente con una fila ya en el selector, o cuando tanto la ID descubierta como la existente se resuelven en [Fable](/es/model-config#work-with-fable-5). {/* min-version: 2.1.197 */}A partir de Claude Code v2.1.197, una ID explícita descubierta también se pliega en una entrada integrada cuando ambas se resuelven en el mismo modelo. Las filas integradas se clave en alias como `sonnet`, por lo que una ID explícita descubierta del modelo al que el alias se resuelve actualmente, como `claude-sonnet-5`, se colapsa en la fila `sonnet`, mientras que una ID a la que el alias no se resuelve, como `claude-sonnet-4-6`, aún agrega su propia fila "Desde puerta de enlace" junto a la entrada integrada.206Una ID descubierta se omite cuando coincide exactamente con una fila ya en el selector, o cuando tanto la ID descubierta como la existente se resuelven en [Fable](/docs/es/model-config#work-with-fable-5). A partir de Claude Code v2.1.197, una ID explícita descubierta también se pliega en una entrada integrada cuando ambas se resuelven en el mismo modelo. Las filas integradas se clave en alias como `sonnet`, por lo que una ID explícita descubierta del modelo al que el alias se resuelve actualmente, como `claude-sonnet-5`, se colapsa en la fila `sonnet`, mientras que una ID a la que el alias no se resuelve, como `claude-sonnet-4-6`, aún agrega su propia fila "Desde puerta de enlace" junto a la entrada integrada.

207 207 

208Los resultados se almacenan en caché en `~/.claude/cache/gateway-models.json`, o `%USERPROFILE%\.claude\cache\gateway-models.json` en Windows, y se actualizan en cada inicio. Si la solicitud falla o la puerta de enlace no implementa `/v1/models`, el selector vuelve a la lista en caché del inicio anterior o a la lista de modelos integrada. Si su puerta de enlace sirve modelos de Claude bajo alias que no coinciden con el filtro de descubrimiento, los desarrolladores pueden agregar esos alias manualmente con las [variables de configuración de modelo](/es/model-config).208Los resultados se almacenan en caché en `~/.claude/cache/gateway-models.json`, o `%USERPROFILE%\.claude\cache\gateway-models.json` en Windows, y se actualizan en cada inicio. Si la solicitud falla o la puerta de enlace no implementa `/v1/models`, el selector vuelve a la lista en caché del inicio anterior o a la lista de modelos integrada. Si su puerta de enlace sirve modelos de Claude bajo alias que no coinciden con el filtro de descubrimiento, los desarrolladores pueden agregar esos alias manualmente con las [variables de configuración de modelo](/docs/es/model-config).

209 209 

210<h2 id="related-resources">210<h2 id="related-resources">

211 Recursos relacionados211 Recursos relacionados


213 213 

214Para el resto del conjunto de documentación de puerta de enlace y las referencias de API subyacentes:214Para el resto del conjunto de documentación de puerta de enlace y las referencias de API subyacentes:

215 215 

216* [Descripción general de puertas de enlace](/es/gateways): qué es una puerta de enlace y cómo elegir entre la puerta de enlace de aplicaciones Claude y otro producto216* [Descripción general de puertas de enlace](/docs/es/gateways): qué es una puerta de enlace y cómo elegir entre la puerta de enlace de aplicaciones Claude y otro producto

217* [Otras puertas de enlace LLM](/es/llm-gateway): cómo implementar una puerta de enlace que su organización ejecuta y cómo interactúa con suscripciones de claude.ai217* [Otras puertas de enlace LLM](/docs/es/llm-gateway): cómo implementar una puerta de enlace que su organización ejecuta y cómo interactúa con suscripciones de claude.ai

218* [Implementar una puerta de enlace LLM para su organización](/es/llm-gateway-rollout): la lista de verificación de administrador que utiliza este contrato218* [Implementar una puerta de enlace LLM para su organización](/docs/es/llm-gateway-rollout): la lista de verificación de administrador que utiliza este contrato

219* [Conectar Claude Code a una puerta de enlace LLM](/es/llm-gateway-connect): configuración por desarrollador y la tabla de solución de problemas219* [Conectar Claude Code a una puerta de enlace LLM](/docs/es/llm-gateway-connect): configuración por desarrollador y la tabla de solución de problemas

220* [Referencia de encabezados beta](https://platform.claude.com/docs/en/api/beta-headers): el conjunto actual de valores `anthropic-beta`220* [Referencia de encabezados beta](https://platform.claude.com/docs/en/api/beta-headers): el conjunto actual de valores `anthropic-beta`

221* [API de mensajes](https://platform.claude.com/docs/en/api/messages): el formato de API que implementa una puerta de enlace con formato Anthropic221* [API de mensajes](https://platform.claude.com/docs/en/api/messages): el formato de API que implementa una puerta de enlace con formato Anthropic

Details

9Esta página guía a un administrador a través de la implementación de una puerta de enlace LLM para Claude Code. Asume que tiene una puerta de enlace implementada que cumple con los [requisitos de la puerta de enlace](#gateway-requirements). La implementación u operación de ningún producto específico se cubre aquí; implemente el suyo siguiendo la documentación del proveedor.9Esta página guía a un administrador a través de la implementación de una puerta de enlace LLM para Claude Code. Asume que tiene una puerta de enlace implementada que cumple con los [requisitos de la puerta de enlace](#gateway-requirements). La implementación u operación de ningún producto específico se cubre aquí; implemente el suyo siguiendo la documentación del proveedor.

10 10 

11<Note>11<Note>

12 * Para conectar Claude Code en su propia máquina a una puerta de enlace existente, consulte [Conectar Claude Code a una puerta de enlace LLM](/es/llm-gateway-connect)12 * Para conectar Claude Code en su propia máquina a una puerta de enlace existente, consulte [Conectar Claude Code a una puerta de enlace LLM](/docs/es/llm-gateway-connect)

13 * Para saber qué Claude Code envía a una puerta de enlace y qué reenviar, consulte la [referencia del protocolo de puerta de enlace](/es/llm-gateway-protocol)13 * Para saber qué Claude Code envía a una puerta de enlace y qué reenviar, consulte la [referencia del protocolo de puerta de enlace](/docs/es/llm-gateway-protocol)

14</Note>14</Note>

15 15 

16<h2 id="prerequisites">16<h2 id="prerequisites">


22* Una puerta de enlace implementada en su infraestructura, sirviendo HTTPS en la dirección exacta que distribuirá a los desarrolladores, no una dirección que redirija a ella, y configurada para enrutar nombres de modelos Claude a su proveedor22* Una puerta de enlace implementada en su infraestructura, sirviendo HTTPS en la dirección exacta que distribuirá a los desarrolladores, no una dirección que redirija a ella, y configurada para enrutar nombres de modelos Claude a su proveedor

23* Una credencial de proveedor para que la puerta de enlace reenvíe con:23* Una credencial de proveedor para que la puerta de enlace reenvíe con:

24 * Para la API de Anthropic: una clave API de la [Consola Claude](https://platform.claude.com/settings/keys)24 * Para la API de Anthropic: una clave API de la [Consola Claude](https://platform.claude.com/settings/keys)

25 * Para un proveedor en la nube: credenciales en la nube con acceso a modelos. Consulte los requisitos previos en la página [Amazon Bedrock](/es/amazon-bedrock#prerequisites), [Google Cloud's Agent Platform](/es/google-vertex-ai#prerequisites) o [Microsoft Foundry](/es/microsoft-foundry#prerequisites)25 * Para un proveedor en la nube: credenciales en la nube con acceso a modelos. Consulte los requisitos previos en la página [Amazon Bedrock](/docs/es/amazon-bedrock#prerequisites), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai#prerequisites) o [Microsoft Foundry](/docs/es/microsoft-foundry#prerequisites)

26* Una forma de entregar archivos de configuración a máquinas de desarrolladores, como MDM o gestión de configuración26* Una forma de entregar archivos de configuración a máquinas de desarrolladores, como MDM o gestión de configuración

27 * Si aún no tiene una, [cómo llegan las configuraciones a los dispositivos](/es/admin-setup#decide-how-settings-reach-devices) compara las opciones27 * Si aún no tiene una, [cómo llegan las configuraciones a los dispositivos](/docs/es/admin-setup#decide-how-settings-reach-devices) compara las opciones

28 28 

29<h3 id="gateway-requirements">29<h3 id="gateway-requirements">

30 Requisitos de la puerta de enlace30 Requisitos de la puerta de enlace


32 32 

33Cualquiera que sea el producto que proporcione la puerta de enlace, debe:33Cualquiera que sea el producto que proporcione la puerta de enlace, debe:

34 34 

35* **Aceptar un formato de API compatible**: uno de los formatos en la [tabla de formatos de API](/es/llm-gateway-protocol#api-formats). Los pasos de implementación a continuación asumen la API de Mensajes de Anthropic en `POST /v1/messages`, que la mayoría de puertas de enlace sirven35* **Aceptar un formato de API compatible**: uno de los formatos en la [tabla de formatos de API](/docs/es/llm-gateway-protocol#api-formats). Los pasos de implementación a continuación asumen la API de Mensajes de Anthropic en `POST /v1/messages`, que la mayoría de puertas de enlace sirven

36* **Transmitir respuestas**: pasar eventos enviados por el servidor a medida que llegan en lugar de almacenar en búfer la respuesta completa36* **Transmitir respuestas**: pasar eventos enviados por el servidor a medida que llegan en lugar de almacenar en búfer la respuesta completa

37* **Enrutar nombres de modelos Claude**: asignar cada nombre que los desarrolladores usan a un modelo ascendente. Claude Code envía un nombre de modelo como `claude-sonnet-4-6` en cada solicitud; en la mayoría de productos de puerta de enlace la asignación es una lista de modelos o tabla de enrutamiento en la configuración propia de la puerta de enlace37* **Enrutar nombres de modelos Claude**: asignar cada nombre que los desarrolladores usan a un modelo ascendente. Claude Code envía un nombre de modelo como `claude-sonnet-4-6` en cada solicitud; en la mayoría de productos de puerta de enlace la asignación es una lista de modelos o tabla de enrutamiento en la configuración propia de la puerta de enlace

38* **Reenviar encabezados y cuerpo sin cambios**: pasar `anthropic-beta`, `anthropic-version` y el cuerpo de la solicitud en ambas direcciones; la [tabla de paso de características](/es/llm-gateway-protocol#feature-pass-through) asigna cada uno a la característica que se rompe sin él38* **Reenviar encabezados y cuerpo sin cambios**: pasar `anthropic-beta`, `anthropic-version` y el cuerpo de la solicitud en ambas direcciones; la [tabla de paso de características](/docs/es/llm-gateway-protocol#feature-pass-through) asigna cada uno a la característica que se rompe sin él

39* **Devolver errores ascendentes sin modificar**: la recuperación automática de Claude Code coincide con la redacción del error, por lo que envolver errores en el sobre propio de la puerta de enlace lo rompe39* **Devolver errores ascendentes sin modificar**: la recuperación automática de Claude Code coincide con la redacción del error, por lo que envolver errores en el sobre propio de la puerta de enlace lo rompe

40* **Eximir la ruta de la inspección WAF del cuerpo de la solicitud**: los indicadores de Claude Code llevan código fuente y etiquetas de estilo XML que coinciden con reglas de cuerpo de secuencias de comandos entre sitios; un WAF frente a la puerta de enlace devuelve `403` en sesiones reales mientras que las solicitudes de prueba cortas pasan40* **Eximir la ruta de la inspección WAF del cuerpo de la solicitud**: los indicadores de Claude Code llevan código fuente y etiquetas de estilo XML que coinciden con reglas de cuerpo de secuencias de comandos entre sitios; un WAF frente a la puerta de enlace devuelve `403` en sesiones reales mientras que las solicitudes de prueba cortas pasan

41 41 

42Opcionalmente, sirva `GET /v1/models` para que Claude Code pueda rellenar el selector de modelos desde su puerta de enlace con [descubrimiento de modelos](/es/llm-gateway-protocol#model-discovery). {/* min-version: 2.1.129 */}42Opcionalmente, sirva `GET /v1/models` para que Claude Code pueda rellenar el selector de modelos desde su puerta de enlace con [descubrimiento de modelos](/docs/es/llm-gateway-protocol#model-discovery).&#x20;

43 43 

44<h2 id="rollout-steps">44<h2 id="rollout-steps">

45 Pasos de implementación45 Pasos de implementación


96Repita la solicitud una vez por cada nombre de modelo Claude en la configuración de enrutamiento de su puerta de enlace. Un nombre que la puerta de enlace no enruta devuelve `404` a cualquier desarrollador que lo seleccione, así que pruebe cada nombre antes de la implementación.96Repita la solicitud una vez por cada nombre de modelo Claude en la configuración de enrutamiento de su puerta de enlace. Un nombre que la puerta de enlace no enruta devuelve `404` a cualquier desarrollador que lo seleccione, así que pruebe cada nombre antes de la implementación.

97 97 

98<Note>98<Note>

99 Evite servir la puerta de enlace detrás de una redirección. Una redirección puede descartar el cuerpo de la solicitud o eliminar el encabezado de credencial en solicitudes de inferencia, y [descubrimiento de modelos](/es/llm-gateway-protocol#model-discovery) trata cualquier redirección como un fallo para que la credencial no pueda filtrarse a un destino de redirección.99 Evite servir la puerta de enlace detrás de una redirección. Una redirección puede descartar el cuerpo de la solicitud o eliminar el encabezado de credencial en solicitudes de inferencia, y [descubrimiento de modelos](/docs/es/llm-gateway-protocol#model-discovery) trata cualquier redirección como un fallo para que la credencial no pueda filtrarse a un destino de redirección.

100</Note>100</Note>

101 101 

102<h3 id="issue-developer-credentials">102<h3 id="issue-developer-credentials">


130 130 

131**Punto de control**: un `200` con un campo `content` significa que la clave de desarrollador alcanza la puerta de enlace y la puerta de enlace la reenvía. Un `401` aquí, cuando [el paso anterior](#confirm-the-gateway-routes-your-models) tuvo éxito, significa que la clave de desarrollador es incorrecta o aún no ha surtido efecto en la puerta de enlace.131**Punto de control**: un `200` con un campo `content` significa que la clave de desarrollador alcanza la puerta de enlace y la puerta de enlace la reenvía. Un `401` aquí, cuando [el paso anterior](#confirm-the-gateway-routes-your-models) tuvo éxito, significa que la clave de desarrollador es incorrecta o aún no ha surtido efecto en la puerta de enlace.

132 132 

133Emitir una clave por desarrollador en lugar de una clave compartida es lo que hace que la atribución de uso por desarrollador y la desvinculación individual funcionen. La variable de entorno que contiene la clave depende de qué encabezado lee la puerta de enlace. Para una puerta de enlace que verifica credenciales en el encabezado `Authorization: Bearer`, los desarrolladores establecen su clave en `ANTHROPIC_AUTH_TOKEN`. Para una puerta de enlace que lee claves del encabezado `x-api-key`, los desarrolladores establecen `ANTHROPIC_API_KEY` en su lugar; la [tabla de credenciales](/es/llm-gateway-connect#set-the-credential-variable) cubre la asignación.133Emitir una clave por desarrollador en lugar de una clave compartida es lo que hace que la atribución de uso por desarrollador y la desvinculación individual funcionen. La variable de entorno que contiene la clave depende de qué encabezado lee la puerta de enlace. Para una puerta de enlace que verifica credenciales en el encabezado `Authorization: Bearer`, los desarrolladores establecen su clave en `ANTHROPIC_AUTH_TOKEN`. Para una puerta de enlace que lee claves del encabezado `x-api-key`, los desarrolladores establecen `ANTHROPIC_API_KEY` en su lugar; la [tabla de credenciales](/docs/es/llm-gateway-connect#set-the-credential-variable) cubre la asignación.

134 134 

135<h3 id="test-claude-code-against-the-gateway">135<h3 id="test-claude-code-against-the-gateway">

136 Probar Claude Code contra la puerta de enlace136 Probar Claude Code contra la puerta de enlace


165* `Not logged in`: verifique el registro de la puerta de enlace para distinguir las dos causas. Si está vacío, ninguna credencial alcanzó la sesión y ninguna solicitud salió de la máquina; vuelva a ejecutar las exportaciones en el shell que está probando. Si muestra una solicitud rechazada con `x-api-key` en el cuerpo `401`, la puerta de enlace espera claves en ese encabezado en su lugar; cambie a `ANTHROPIC_API_KEY`165* `Not logged in`: verifique el registro de la puerta de enlace para distinguir las dos causas. Si está vacío, ninguna credencial alcanzó la sesión y ninguna solicitud salió de la máquina; vuelva a ejecutar las exportaciones en el shell que está probando. Si muestra una solicitud rechazada con `x-api-key` en el cuerpo `401`, la puerta de enlace espera claves en ese encabezado en su lugar; cambie a `ANTHROPIC_API_KEY`

166* `Failed to authenticate. API Error: 401` significa que se envió una credencial y fue rechazada, y el registro de la puerta de enlace dice dónde: un `401` que nombra `api.anthropic.com` o el punto final de su proveedor significa que la puerta de enlace alcanzó el ascendente pero su credencial de proveedor fue rechazada, así que la clave de desarrollador funcionó y la credencial de proveedor que la puerta de enlace tiene es incorrecta o un marcador de posición166* `Failed to authenticate. API Error: 401` significa que se envió una credencial y fue rechazada, y el registro de la puerta de enlace dice dónde: un `401` que nombra `api.anthropic.com` o el punto final de su proveedor significa que la puerta de enlace alcanzó el ascendente pero su credencial de proveedor fue rechazada, así que la clave de desarrollador funcionó y la credencial de proveedor que la puerta de enlace tiene es incorrecta o un marcador de posición

167 167 

168Una URL base incorrecta o inaccesible produce un síntoma diferente: Claude Code [reintenta la conexión con retroceso](/es/errors#automatic-retries) y puede quedarse sin salida durante varios minutos antes de reportar un error. Si el comando parece colgarse, verifique el registro de la puerta de enlace en lugar de esperar; ninguna solicitud que llegue significa que `ANTHROPIC_BASE_URL` no apunta a la puerta de enlace.168Una URL base incorrecta o inaccesible produce un síntoma diferente: Claude Code [reintenta la conexión con retroceso](/docs/es/errors#automatic-retries) y puede quedarse sin salida durante varios minutos antes de reportar un error. Si el comando parece colgarse, verifique el registro de la puerta de enlace en lugar de esperar; ninguna solicitud que llegue significa que `ANTHROPIC_BASE_URL` no apunta a la puerta de enlace.

169 169 

170<h3 id="distribute-the-configuration">170<h3 id="distribute-the-configuration">

171 Distribuir la configuración171 Distribuir la configuración

172</h3>172</h3>

173 173 

174Cada máquina de desarrollador necesita la dirección de la puerta de enlace y una credencial. Puede distribuirlas centralmente a través de [configuración administrada](/es/settings#settings-files), para que los desarrolladores no configuren nada, o entregue a los desarrolladores los valores para establecer ellos mismos.174Cada máquina de desarrollador necesita la dirección de la puerta de enlace y una credencial. Puede distribuirlas centralmente a través de [configuración administrada](/docs/es/settings#settings-files), para que los desarrolladores no configuren nada, o entregue a los desarrolladores los valores para establecer ellos mismos.

175 175 

176<h4 id="what-to-distribute">176<h4 id="what-to-distribute">

177 Qué distribuir177 Qué distribuir


186| `ANTHROPIC_CUSTOM_HEADERS` | Añade encabezados HTTP adicionales a cada solicitud de API | Su puerta de enlace requiere un encabezado de inquilino o enrutamiento en cada solicitud |186| `ANTHROPIC_CUSTOM_HEADERS` | Añade encabezados HTTP adicionales a cada solicitud de API | Su puerta de enlace requiere un encabezado de inquilino o enrutamiento en cada solicitud |

187| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Consulta `/v1/models` de la puerta de enlace al inicio y añade los nombres devueltos al selector `/model` | Su puerta de enlace sirve `/v1/models` y desea que los selectores de los desarrolladores se rellenen desde ella |187| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Consulta `/v1/models` de la puerta de enlace al inicio y añade los nombres devueltos al selector `/model` | Su puerta de enlace sirve `/v1/models` y desea que los selectores de los desarrolladores se rellenen desde ella |

188| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Detiene el envío de Claude Code de encabezados de capacidad de pre-lanzamiento y campos de cuerpo | Su puerta de enlace reenvía a un ascendente Bedrock o Vertex que rechaza campos beta; consulte [Requisitos de la puerta de enlace](#gateway-requirements) |188| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Detiene el envío de Claude Code de encabezados de capacidad de pre-lanzamiento y campos de cuerpo | Su puerta de enlace reenvía a un ascendente Bedrock o Vertex que rechaza campos beta; consulte [Requisitos de la puerta de enlace](#gateway-requirements) |

189| `ANTHROPIC_MODEL` o [`ANTHROPIC_DEFAULT_HAIKU_MODEL`](/es/model-config) | Establece qué nombre de modelo Claude Code solicita para la sesión principal y para el tráfico de fondo | Su puerta de enlace enruta nombres de modelos que no coinciden con los valores predeterminados de Claude Code, o enruta [funcionalidad de fondo](/es/costs#background-token-usage) a un modelo diferente. Enrute tanto los nombres de anulación como los nombres predeterminados de Claude Code en la puerta de enlace, ya que algunas sub-llamadas pueden solicitar el nombre predeterminado independientemente de la anulación; la [configuración de modelos](/es/model-config) cubre qué modelo usa cada parte de una sesión |189| `ANTHROPIC_MODEL` o [`ANTHROPIC_DEFAULT_HAIKU_MODEL`](/docs/es/model-config) | Establece qué nombre de modelo Claude Code solicita para la sesión principal y para el tráfico de fondo | Su puerta de enlace enruta nombres de modelos que no coinciden con los valores predeterminados de Claude Code, o enruta [funcionalidad de fondo](/docs/es/costs#background-token-usage) a un modelo diferente. Enrute tanto los nombres de anulación como los nombres predeterminados de Claude Code en la puerta de enlace, ya que algunas sub-llamadas pueden solicitar el nombre predeterminado independientemente de la anulación; la [configuración de modelos](/docs/es/model-config) cubre qué modelo usa cada parte de una sesión |

190| `ANTHROPIC_BEDROCK_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL`, `ANTHROPIC_FOUNDRY_BASE_URL`, o `ANTHROPIC_AWS_BASE_URL` con las [variables para ese proveedor](/es/llm-gateway-connect#route-to-a-cloud-provider-through-a-gateway) | Apunte Claude Code a la puerta de enlace a través de una URL base específica del proveedor. Bedrock y Vertex también cambian al formato de solicitud nativo de esos proveedores | Su puerta de enlace está frente a Bedrock, Vertex, Foundry o la Plataforma Claude en AWS; consulte [Formatos de API](/es/llm-gateway-protocol#api-formats) |190| `ANTHROPIC_BEDROCK_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL`, `ANTHROPIC_FOUNDRY_BASE_URL`, o `ANTHROPIC_AWS_BASE_URL` con las [variables para ese proveedor](/docs/es/llm-gateway-connect#route-to-a-cloud-provider-through-a-gateway) | Apunte Claude Code a la puerta de enlace a través de una URL base específica del proveedor. Bedrock y Vertex también cambian al formato de solicitud nativo de esos proveedores | Su puerta de enlace está frente a Bedrock, Vertex, Foundry o la Plataforma Claude en AWS; consulte [Formatos de API](/docs/es/llm-gateway-protocol#api-formats) |

191 191 

192<h4 id="distribute-through-managed-settings">192<h4 id="distribute-through-managed-settings">

193 Distribuir a través de configuración administrada193 Distribuir a través de configuración administrada

194</h4>194</h4>

195 195 

196Entregue las variables a través del bloque `env` de un [archivo de configuración administrada](/es/settings#settings-files), impulsado por MDM, política de registro o gestión de configuración:196Entregue las variables a través del bloque `env` de un [archivo de configuración administrada](/docs/es/settings#settings-files), impulsado por MDM, política de registro o gestión de configuración:

197 197 

198```json theme={null}198```json theme={null}

199{199{


206 206 

207Añada las variables condicionales de la tabla al mismo bloque `env`. Un `ANTHROPIC_BASE_URL` administrado se aplica y no puede ser anulado por una exportación de shell de un desarrollador, ya que Claude Code lo aplica sobre el entorno del proceso y configuraciones de menor precedencia.207Añada las variables condicionales de la tabla al mismo bloque `env`. Un `ANTHROPIC_BASE_URL` administrado se aplica y no puede ser anulado por una exportación de shell de un desarrollador, ya que Claude Code lo aplica sobre el entorno del proceso y configuraciones de menor precedencia.

208 208 

209No incluya `forceLoginMethod` o `forceLoginOrgUUID` en la configuración administrada junto con una credencial de puerta de enlace. En Claude Code v2.1.146 y posterior, cualquiera de las dos claves bloquea `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` y `apiKeyHelper` al inicio, por lo que los desarrolladores ven `This machine's managed settings require a first-party login` y no pueden proceder. {/* min-version: 2.1.146 */}209No incluya `forceLoginMethod` o `forceLoginOrgUUID` en la configuración administrada junto con una credencial de puerta de enlace. En Claude Code v2.1.146 y posterior, cualquiera de las dos claves bloquea `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` y `apiKeyHelper` al inicio, por lo que los desarrolladores ven `This machine's managed settings require a first-party login` y no pueden proceder.&#x20;

210 210 

211La entrega de [configuración administrada por servidor](/es/server-managed-settings#platform-availability) requiere una conexión directa a `api.anthropic.com`, por lo que no alcanza sesiones enrutadas por puerta de enlace. Las implementaciones de puerta de enlace usan esta ruta de configuración administrada basada en archivos, que aplica las mismas claves.211La entrega de [configuración administrada por servidor](/docs/es/server-managed-settings#platform-availability) requiere una conexión directa a `api.anthropic.com`, por lo que no alcanza sesiones enrutadas por puerta de enlace. Las implementaciones de puerta de enlace usan esta ruta de configuración administrada basada en archivos, que aplica las mismas claves.

212 212 

213Para la credencial, distribuya un comando [`apiKeyHelper`](/es/llm-gateway-connect#rotate-credentials-with-apikeyhelper) en el archivo de configuración administrada como se muestra arriba; el comando se autentica en su almacén de secretos como el desarrollador local, por lo que cada máquina recibe su propia clave. Alternativamente, entregue a cada desarrollador su clave a través de su proceso de secretos existente y haga que establezcan `ANTHROPIC_AUTH_TOKEN` ellos mismos.213Para la credencial, distribuya un comando [`apiKeyHelper`](/docs/es/llm-gateway-connect#rotate-credentials-with-apikeyhelper) en el archivo de configuración administrada como se muestra arriba; el comando se autentica en su almacén de secretos como el desarrollador local, por lo que cada máquina recibe su propia clave. Alternativamente, entregue a cada desarrollador su clave a través de su proceso de secretos existente y haga que establezcan `ANTHROPIC_AUTH_TOKEN` ellos mismos.

214 214 

215Algunos entornos necesitan entrega separada:215Algunos entornos necesitan entrega separada:

216 216 

217* La aplicación de escritorio lee el enrutamiento de puerta de enlace solo desde su configuración de inferencia de terceros entregada por MDM; implemente ese archivo junto con la configuración administrada para que las sesiones de escritorio también se enruten a través de la puerta de enlace. Consulte la [documentación de configuración de terceros de escritorio](https://claude.com/docs/third-party/claude-desktop/configuration) y la [documentación de puerta de enlace de escritorio](https://claude.com/docs/third-party/claude-desktop/gateway)217* La aplicación de escritorio lee el enrutamiento de puerta de enlace solo desde su configuración de inferencia de terceros entregada por MDM; implemente ese archivo junto con la configuración administrada para que las sesiones de escritorio también se enruten a través de la puerta de enlace. Consulte la [documentación de configuración de terceros de escritorio](https://claude.com/docs/third-party/claude-desktop/configuration) y la [documentación de puerta de enlace de escritorio](https://claude.com/docs/third-party/claude-desktop/gateway)

218* Los ejecutores de CI necesitan `ANTHROPIC_BASE_URL` y la credencial establecidas en el [entorno del ejecutor](/es/llm-gateway-connect#configure-each-surface)218* Los ejecutores de CI necesitan `ANTHROPIC_BASE_URL` y la credencial establecidas en el [entorno del ejecutor](/docs/es/llm-gateway-connect#configure-each-surface)

219* WSL en máquinas Windows administradas lee la configuración administrada de Windows solo cuando [`wslInheritsWindowsSettings`](/es/settings#available-settings) es `true`219* WSL en máquinas Windows administradas lee la configuración administrada de Windows solo cuando [`wslInheritsWindowsSettings`](/docs/es/settings#available-settings) es `true`

220 220 

221<h4 id="hand-developers-the-values-to-set-themselves">221<h4 id="hand-developers-the-values-to-set-themselves">

222 Entregue a los desarrolladores los valores para establecer ellos mismos222 Entregue a los desarrolladores los valores para establecer ellos mismos

223</h4>223</h4>

224 224 

225Si no tiene distribución de configuración administrada en su lugar, envíe a cada desarrollador lo que necesita para seguir la [página de conexión](/es/llm-gateway-connect#configure-claude-code-yourself):225Si no tiene distribución de configuración administrada en su lugar, envíe a cada desarrollador lo que necesita para seguir la [página de conexión](/docs/es/llm-gateway-connect#configure-claude-code-yourself):

226 226 

227* La URL de la puerta de enlace227* La URL de la puerta de enlace

228* Su credencial personal228* Su credencial personal

229* **Qué variable poner la credencial en**: `ANTHROPIC_AUTH_TOKEN` para una puerta de enlace de token portador, o `ANTHROPIC_API_KEY` para una puerta de enlace `x-api-key`. Decirle a los desarrolladores cuál es ahorra el ensayo y error descrito en la [página de conexión](/es/llm-gateway-connect#set-the-credential-variable)229* **Qué variable poner la credencial en**: `ANTHROPIC_AUTH_TOKEN` para una puerta de enlace de token portador, o `ANTHROPIC_API_KEY` para una puerta de enlace `x-api-key`. Decirle a los desarrolladores cuál es ahorra el ensayo y error descrito en la [página de conexión](/docs/es/llm-gateway-connect#set-the-credential-variable)

230* Cualquier variable condicional de la [tabla Qué distribuir](#what-to-distribute), con sus valores230* Cualquier variable condicional de la [tabla Qué distribuir](#what-to-distribute), con sus valores

231 231 

232La [página de conexión](/es/llm-gateway-connect#configure-claude-code-yourself) guía a los desarrolladores a través de establecer cada una.232La [página de conexión](/docs/es/llm-gateway-connect#configure-claude-code-yourself) guía a los desarrolladores a través de establecer cada una.

233 233 

234**Punto de control**: en una máquina de desarrollador, `claude` inicia una sesión sin mostrar la pantalla de inicio de sesión, ya que la credencial distribuida satisface la autenticación. Luego ejecute `/status` y abra la pestaña **Status**: la línea `Anthropic base URL` muestra la dirección de la puerta de enlace, y para distribución administrada la línea `Setting sources` incluye configuración administrada. Una pantalla de inicio de sesión, o una línea `Anthropic base URL` faltante, significa que la configuración no alcanzó la máquina.234**Punto de control**: en una máquina de desarrollador, `claude` inicia una sesión sin mostrar la pantalla de inicio de sesión, ya que la credencial distribuida satisface la autenticación. Luego ejecute `/status` y abra la pestaña **Status**: la línea `Anthropic base URL` muestra la dirección de la puerta de enlace, y para distribución administrada la línea `Setting sources` incluye configuración administrada. Una pantalla de inicio de sesión, o una línea `Anthropic base URL` faltante, significa que la configuración no alcanzó la máquina.

235 235 


270* Los errores `Failed to authenticate` significan que la puerta de enlace está rechazando solicitudes; su registro dice qué credencial falló. Un rechazo que la puerta de enlace registra a sí misma nombra la clave de desarrollador, mientras que un `401` de `api.anthropic.com` o el punto final de su proveedor significa que la credencial de proveedor que la puerta de enlace tiene fue rechazada270* Los errores `Failed to authenticate` significan que la puerta de enlace está rechazando solicitudes; su registro dice qué credencial falló. Un rechazo que la puerta de enlace registra a sí misma nombra la clave de desarrollador, mientras que un `401` de `api.anthropic.com` o el punto final de su proveedor significa que la credencial de proveedor que la puerta de enlace tiene fue rechazada

271* Un indicador de aprobación de una sola vez para la clave es esperado en el primer uso cuando la puerta de enlace espera claves en el encabezado `x-api-key`, establecidas como `ANTHROPIC_API_KEY`. Con `ANTHROPIC_AUTH_TOKEN`, no aparece ningún indicador y la variable toma el control silenciosamente; un inicio de sesión de claude.ai previamente guardado está inactivo para esa sesión271* Un indicador de aprobación de una sola vez para la clave es esperado en el primer uso cuando la puerta de enlace espera claves en el encabezado `x-api-key`, establecidas como `ANTHROPIC_API_KEY`. Con `ANTHROPIC_AUTH_TOKEN`, no aparece ningún indicador y la variable toma el control silenciosamente; un inicio de sesión de claude.ai previamente guardado está inactivo para esa sesión

272 272 

273Finalmente, verifique los registros de la puerta de enlace para el mensaje que envió: la credencial identifica al desarrollador, y el [encabezado `x-claude-code-session-id`](/es/llm-gateway-protocol#request-headers) agrupa solicitudes por sesión. Si las características fallan con los [síntomas de solución de problemas](/es/llm-gateway-connect#troubleshoot-gateway-errors), la puerta de enlace está eliminando encabezados o reescribiendo errores; consulte los [requisitos de la puerta de enlace](#gateway-requirements) arriba.273Finalmente, verifique los registros de la puerta de enlace para el mensaje que envió: la credencial identifica al desarrollador, y el [encabezado `x-claude-code-session-id`](/docs/es/llm-gateway-protocol#request-headers) agrupa solicitudes por sesión. Si las características fallan con los [síntomas de solución de problemas](/docs/es/llm-gateway-connect#troubleshoot-gateway-errors), la puerta de enlace está eliminando encabezados o reescribiendo errores; consulte los [requisitos de la puerta de enlace](#gateway-requirements) arriba.

274 274 

275<h2 id="maintain-the-gateway">275<h2 id="maintain-the-gateway">

276 Mantener la puerta de enlace276 Mantener la puerta de enlace


280 280 

281| Cambio | Síntoma cuando la puerta de enlace no se ha puesto al día | Acción |281| Cambio | Síntoma cuando la puerta de enlace no se ha puesto al día | Acción |

282| :----------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |282| :----------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

283| Los nuevos lanzamientos de Claude Code añaden valores `anthropic-beta` y campos de cuerpo de solicitud | Los desarrolladores reportan errores `400` que nombran un nuevo campo después de actualizar Claude Code; consulte [paso de características](/es/llm-gateway-protocol#feature-pass-through) | Reenvíe encabezados `anthropic-*` y cuerpos de solicitud textualmente en lugar de permitir listas; pruebe nuevos lanzamientos de Claude Code contra la puerta de enlace antes de que lleguen a los desarrolladores |283| Los nuevos lanzamientos de Claude Code añaden valores `anthropic-beta` y campos de cuerpo de solicitud | Los desarrolladores reportan errores `400` que nombran un nuevo campo después de actualizar Claude Code; consulte [paso de características](/docs/es/llm-gateway-protocol#feature-pass-through) | Reenvíe encabezados `anthropic-*` y cuerpos de solicitud textualmente en lugar de permitir listas; pruebe nuevos lanzamientos de Claude Code contra la puerta de enlace antes de que lleguen a los desarrolladores |

284| Nuevos modelos Claude se vuelven disponibles | Los desarrolladores que seleccionan un nuevo nombre de modelo obtienen `404`; el selector `/model` no lo lista | Añada el nombre del modelo a la configuración de enrutamiento de la puerta de enlace, luego vuelva a ejecutar la [verificación de enrutamiento](#confirm-the-gateway-routes-your-models). Si distribuye `ANTHROPIC_MODEL` o las variables de modelo predeterminado, actualice la configuración administrada |284| Nuevos modelos Claude se vuelven disponibles | Los desarrolladores que seleccionan un nuevo nombre de modelo obtienen `404`; el selector `/model` no lo lista | Añada el nombre del modelo a la configuración de enrutamiento de la puerta de enlace, luego vuelva a ejecutar la [verificación de enrutamiento](#confirm-the-gateway-routes-your-models). Si distribuye `ANTHROPIC_MODEL` o las variables de modelo predeterminado, actualice la configuración administrada |

285| Las credenciales expiran o necesitan rotación | Todas las solicitudes de desarrollador comienzan a fallar con `401` del ascendente | Rote la credencial de proveedor de la puerta de enlace en su propio cronograma; las claves de desarrollador rotan en la puerta de enlace, y un [`apiKeyHelper`](/es/llm-gateway-connect#rotate-credentials-with-apikeyhelper) maneja la rotación por desarrollador sin redistribuir configuración |285| Las credenciales expiran o necesitan rotación | Todas las solicitudes de desarrollador comienzan a fallar con `401` del ascendente | Rote la credencial de proveedor de la puerta de enlace en su propio cronograma; las claves de desarrollador rotan en la puerta de enlace, y un [`apiKeyHelper`](/docs/es/llm-gateway-connect#rotate-credentials-with-apikeyhelper) maneja la rotación por desarrollador sin redistribuir configuración |

286 286 

287Al dimensionar límites de velocidad por clave, tenga en cuenta que el cliente [reintenta fallos transitorios](/es/errors#automatic-retries), incluidas respuestas `429`, hasta 10 veces con retroceso, honrando `Retry-After`. Mantenga la [referencia del protocolo](/es/llm-gateway-protocol) como el contrato para lo que cada lanzamiento de Claude Code envía.287Al dimensionar límites de velocidad por clave, tenga en cuenta que el cliente [reintenta fallos transitorios](/docs/es/errors#automatic-retries), incluidas respuestas `429`, hasta 10 veces con retroceso, honrando `Retry-After`. Mantenga la [referencia del protocolo](/docs/es/llm-gateway-protocol) como el contrato para lo que cada lanzamiento de Claude Code envía.

288 288 

289<h2 id="related-resources">289<h2 id="related-resources">

290 Recursos relacionados290 Recursos relacionados

291</h2>291</h2>

292 292 

293* [Conectar Claude Code a una puerta de enlace LLM](/es/llm-gateway-connect): los pasos de configuración orientados al desarrollador, con configuración por superficie y una tabla de solución de problemas que puede entregar a los desarrolladores293* [Conectar Claude Code a una puerta de enlace LLM](/docs/es/llm-gateway-connect): los pasos de configuración orientados al desarrollador, con configuración por superficie y una tabla de solución de problemas que puede entregar a los desarrolladores

294* [Referencia del protocolo de puerta de enlace](/es/llm-gateway-protocol): el contrato de cable para operadores de puerta de enlace, cubriendo puntos finales, encabezados a reenviar y la tabla de paso de características294* [Referencia del protocolo de puerta de enlace](/docs/es/llm-gateway-protocol): el contrato de cable para operadores de puerta de enlace, cubriendo puntos finales, encabezados a reenviar y la tabla de paso de características

295* [Archivos de configuración y precedencia](/es/settings#settings-files): cómo se combinan configuraciones administradas, de proyecto y de usuario, y dónde va el archivo administrado en cada plataforma295* [Archivos de configuración y precedencia](/docs/es/settings#settings-files): cómo se combinan configuraciones administradas, de proyecto y de usuario, y dónde va el archivo administrado en cada plataforma

296* [Configurar Claude Code para su organización](/es/admin-setup): la implementación más amplia de la que esta puerta de enlace es una parte, incluida la aplicación de políticas, visibilidad de uso y manejo de datos296* [Configurar Claude Code para su organización](/docs/es/admin-setup): la implementación más amplia de la que esta puerta de enlace es una parte, incluida la aplicación de políticas, visibilidad de uso y manejo de datos

managed-mcp.md +24 −24

Details

6 6 

7> Restrinja qué servidores MCP pueden agregar o conectar los usuarios con archivos de configuración administrados, listas de permitidos y listas de bloqueados.7> Restrinja qué servidores MCP pueden agregar o conectar los usuarios con archivos de configuración administrados, listas de permitidos y listas de bloqueados.

8 8 

9De forma predeterminada, cualquiera que ejecute Claude Code puede conectar cualquier [servidor MCP](/es/mcp) que elija. Anthropic revisa los conectores según sus [criterios de listado](https://claude.com/docs/connectors/building/review-criteria) antes de agregarlos al [Directorio de Anthropic](https://claude.ai/directory), pero no realiza auditorías de seguridad ni administra ningún servidor MCP. Como administrador, puede restringir qué servidores se ejecutan en su organización, desde implementar un conjunto fijo aprobado hasta deshabilitar MCP completamente.9De forma predeterminada, cualquiera que ejecute Claude Code puede conectar cualquier [servidor MCP](/docs/es/mcp) que elija. Anthropic revisa los conectores según sus [criterios de listado](https://claude.com/docs/connectors/building/review-criteria) antes de agregarlos al [Directorio de Anthropic](https://claude.ai/directory), pero no realiza auditorías de seguridad ni administra ningún servidor MCP. Como administrador, puede restringir qué servidores se ejecutan en su organización, desde implementar un conjunto fijo aprobado hasta deshabilitar MCP completamente.

10 10 

11Esta página cubre cómo:11Esta página cubre cómo:

12 12 


17* [Monitorear qué servidores usa realmente su organización](#monitor-mcp-usage)17* [Monitorear qué servidores usa realmente su organización](#monitor-mcp-usage)

18 18 

19<Note>19<Note>

20 La página [Security](/es/security) cubre el modelo de amenaza de MCP y cómo evaluar un servidor antes de aprobarlo. [Decide what to enforce](/es/admin-setup#decide-what-to-enforce) cubre restricciones de MCP junto con los otros controles administrativos.20 La página [Security](/docs/es/security) cubre el modelo de amenaza de MCP y cómo evaluar un servidor antes de aprobarlo. [Decide what to enforce](/docs/es/admin-setup#decide-what-to-enforce) cubre restricciones de MCP junto con los otros controles administrativos.

21</Note>21</Note>

22 22 

23<h2 id="choose-a-pattern">23<h2 id="choose-a-pattern">


31| **Deshabilitar MCP** | Ningún servidor se carga en ningún lugar | `managed-mcp.json` con un mapa de servidor vacío |31| **Deshabilitar MCP** | Ningún servidor se carga en ningún lugar | `managed-mcp.json` con un mapa de servidor vacío |

32| **Implementación fija** | Cada usuario obtiene los mismos servidores y no puede agregar otros | `managed-mcp.json` con los servidores que desea |32| **Implementación fija** | Cada usuario obtiene los mismos servidores y no puede agregar otros | `managed-mcp.json` con los servidores que desea |

33| **Catálogo aprobado** | Publique una lista de servidores aprobados; los usuarios agregan los que desean, todo lo demás se bloquea | `allowedMcpServers` + `allowManagedMcpServersOnly: true` |33| **Catálogo aprobado** | Publique una lista de servidores aprobados; los usuarios agregan los que desean, todo lo demás se bloquea | `allowedMcpServers` + `allowManagedMcpServersOnly: true` |

34| **Solo servidores de plugins** | Los servidores solo pueden provenir de plugins; los usuarios no pueden agregar los suyos propios | [`strictPluginOnlyCustomization`](/es/settings#strictpluginonlycustomization) con `mcp` en la lista |34| **Solo servidores de plugins** | Los servidores solo pueden provenir de plugins; los usuarios no pueden agregar los suyos propios | [`strictPluginOnlyCustomization`](/docs/es/settings#strictpluginonlycustomization) con `mcp` en la lista |

35| **Lista de permitidos suave** | Aplicar una lista de permitidos que los usuarios pueden ampliar en su propia configuración | `allowedMcpServers` sin `allowManagedMcpServersOnly` |35| **Lista de permitidos suave** | Aplicar una lista de permitidos que los usuarios pueden ampliar en su propia configuración | `allowedMcpServers` sin `allowManagedMcpServersOnly` |

36| **Solo lista de bloqueados** | Bloquee servidores conocidos como malos, permita todo lo demás | `deniedMcpServers` |36| **Solo lista de bloqueados** | Bloquee servidores conocidos como malos, permita todo lo demás | `deniedMcpServers` |

37| **Sin restricciones** | Los usuarios agregan cualquier cosa | No implemente ninguna configuración administrada de MCP |37| **Sin restricciones** | Los usuarios agregan cualquier cosa | No implemente ninguna configuración administrada de MCP |

38 38 

39<Note>39<Note>

40 Claude Code no tiene un registro de servidor MCP integrado que los usuarios puedan examinar e instalar. Para el patrón de catálogo aprobado, comparta la lista aprobada y sus comandos `claude mcp add` en algún lugar donde sus usuarios los encuentren, como un wiki interno, o distribuya los servidores como plugins a través de un [marketplace de plugins administrado](/es/plugin-marketplaces#managed-marketplace-restrictions) para que los usuarios puedan examinarlos e instalarlos desde `/plugin`.40 Claude Code no tiene un registro de servidor MCP integrado que los usuarios puedan examinar e instalar. Para el patrón de catálogo aprobado, comparta la lista aprobada y sus comandos `claude mcp add` en algún lugar donde sus usuarios los encuentren, como un wiki interno, o distribuya los servidores como plugins a través de un [marketplace de plugins administrado](/docs/es/plugin-marketplaces#managed-marketplace-restrictions) para que los usuarios puedan examinarlos e instalarlos desde `/plugin`.

41</Note>41</Note>

42 42 

43<h2 id="exclusive-control-with-managed-mcp-json">43<h2 id="exclusive-control-with-managed-mcp-json">


53 53 

54Consulte [Cómo se evalúa un servidor](#how-a-server-is-evaluated) para el orden completo de verificaciones.54Consulte [Cómo se evalúa un servidor](#how-a-server-is-evaluated) para el orden completo de verificaciones.

55 55 

56`managed-mcp.json` es un archivo independiente, por lo que no se puede entregar a través de [configuración administrada por servidor](/es/server-managed-settings). Cualquier proceso que pueda escribir en una ruta del sistema con privilegios de administrador puede implementarlo. A escala, eso suele ser a través de herramientas de administración de dispositivos, como Jamf o un perfil de configuración en macOS, Directiva de grupo o Intune en Windows, o su administración de flota de su elección en Linux. Claude Code busca el archivo en una de estas rutas:56`managed-mcp.json` es un archivo independiente, por lo que no se puede entregar a través de [configuración administrada por servidor](/docs/es/server-managed-settings). Cualquier proceso que pueda escribir en una ruta del sistema con privilegios de administrador puede implementarlo. A escala, eso suele ser a través de herramientas de administración de dispositivos, como Jamf o un perfil de configuración en macOS, Directiva de grupo o Intune en Windows, o su administración de flota de su elección en Linux. Claude Code busca el archivo en una de estas rutas:

57 57 

58| Plataforma | Ruta |58| Plataforma | Ruta |

59| :---------- | :--------------------------------------------------------- |59| :---------- | :--------------------------------------------------------- |


61| Linux y WSL | `/etc/claude-code/managed-mcp.json` |61| Linux y WSL | `/etc/claude-code/managed-mcp.json` |

62| Windows | `C:\Program Files\ClaudeCode\managed-mcp.json` |62| Windows | `C:\Program Files\ClaudeCode\managed-mcp.json` |

63 63 

64El archivo utiliza el mismo formato que un archivo de proyecto [`.mcp.json`](/es/mcp#project-scope):64El archivo utiliza el mismo formato que un archivo de proyecto [`.mcp.json`](/docs/es/mcp#project-scope):

65 65 

66```json theme={null}66```json theme={null}

67{67{


92 92 

93Cualquier usuario en la máquina puede leer este archivo, así que no almacene claves API u otras credenciales en bloques `env`. Pase credenciales por usuario con una de estas en su lugar:93Cualquier usuario en la máquina puede leer este archivo, así que no almacene claves API u otras credenciales en bloques `env`. Pase credenciales por usuario con una de estas en su lugar:

94 94 

95* [Expansión `${VAR}`](/es/mcp#environment-variable-expansion-in-mcp-json) para leer secretos del entorno de cada usuario.95* [Expansión `${VAR}`](/docs/es/mcp#environment-variable-expansion-in-mcp-json) para leer secretos del entorno de cada usuario.

96* [OAuth o encabezados por usuario](/es/mcp#authenticate-with-remote-mcp-servers) para que cada usuario se autentique como sí mismo.96* [OAuth o encabezados por usuario](/docs/es/mcp#authenticate-with-remote-mcp-servers) para que cada usuario se autentique como sí mismo.

97* [`headersHelper`](/es/mcp#use-dynamic-headers-for-custom-authentication) para generar credenciales en el momento de la conexión.97* [`headersHelper`](/docs/es/mcp#use-dynamic-headers-for-custom-authentication) para generar credenciales en el momento de la conexión.

98 98 

99<h3 id="validate-the-configuration">99<h3 id="validate-the-configuration">

100 Validar la configuración100 Validar la configuración


123 Permitir conectores de claude.ai junto con el conjunto administrado123 Permitir conectores de claude.ai junto con el conjunto administrado

124</h3>124</h3>

125 125 

126Implementar `managed-mcp.json` suprime [conectores de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai) de forma predeterminada, incluidos los conectores que un administrador configuró para la organización en la consola de administración de claude.ai. Para cargar esos conectores junto con los servidores en `managed-mcp.json`, establezca `"allowAllClaudeAiMcps": true` en una [fuente de configuración administrada](/es/admin-setup#decide-how-settings-reach-devices). Requiere Claude Code v2.1.149 o posterior.126Implementar `managed-mcp.json` suprime [conectores de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai) de forma predeterminada, incluidos los conectores que un administrador configuró para la organización en la consola de administración de claude.ai. Para cargar esos conectores junto con los servidores en `managed-mcp.json`, establezca `"allowAllClaudeAiMcps": true` en una [fuente de configuración administrada](/docs/es/admin-setup#decide-how-settings-reach-devices). Requiere Claude Code v2.1.149 o posterior.

127 127 

128Con la configuración habilitada, Claude Code carga los mismos conectores de claude.ai que cargaría si `managed-mcp.json` no estuviera implementado. [Las listas de permitidos y denegar](#policy-based-control-with-allowlists-and-denylists) aún se aplican a esos conectores, por lo que puede bloquear los específicos con `deniedMcpServers`. La configuración afecta solo a los conectores de claude.ai; los servidores proporcionados por plugins permanecen suprimidos.128Con la configuración habilitada, Claude Code carga los mismos conectores de claude.ai que cargaría si `managed-mcp.json` no estuviera implementado. [Las listas de permitidos y denegar](#policy-based-control-with-allowlists-and-denylists) aún se aplican a esos conectores, por lo que puede bloquear los específicos con `deniedMcpServers`. La configuración afecta solo a los conectores de claude.ai; los servidores proporcionados por plugins permanecen suprimidos.

129 129 


133 Control basado en políticas con listas de permitidos y listas de bloqueados133 Control basado en políticas con listas de permitidos y listas de bloqueados

134</h2>134</h2>

135 135 

136Las listas de permitidos y listas de bloqueados filtran qué servidores configurados pueden cargarse. No son un registro: un servidor aún tiene que ser agregado por un usuario, un plugin o `managed-mcp.json` antes de que la lista de permitidos o la lista de bloqueados se aplique a él. Para implementar servidores a los usuarios, use [`managed-mcp.json`](#exclusive-control-with-managed-mcp-json). Ambas listas también filtran servidores pasados con la bandera CLI [`--mcp-config`](/es/cli-reference#cli-flags); `--strict-mcp-config` limita qué archivos de configuración se cargan y no omite ninguna de las dos listas.136Las listas de permitidos y listas de bloqueados filtran qué servidores configurados pueden cargarse. No son un registro: un servidor aún tiene que ser agregado por un usuario, un plugin o `managed-mcp.json` antes de que la lista de permitidos o la lista de bloqueados se aplique a él. Para implementar servidores a los usuarios, use [`managed-mcp.json`](#exclusive-control-with-managed-mcp-json). Ambas listas también filtran servidores pasados con la bandera CLI [`--mcp-config`](/docs/es/cli-reference#cli-flags); `--strict-mcp-config` limita qué archivos de configuración se cargan y no omite ninguna de las dos listas.

137 137 

138Para hacer que la lista de permitidos sea autoritaria, establezca `allowedMcpServers` y `allowManagedMcpServersOnly: true` juntos en una [fuente de configuración administrada](/es/admin-setup#decide-how-settings-reach-devices), como configuración administrada por servidor o un archivo `managed-settings.json` implementado. [Restringir la lista de permitidos solo a configuración administrada](#restrict-the-allowlist-to-managed-settings-only) muestra la configuración. Sin `allowManagedMcpServersOnly`, las listas de permitidos de cada fuente de configuración se fusionan, incluido el propio `~/.claude/settings.json` de un usuario, por lo que un usuario puede ampliar lo que su lista de permitidos permite. Las listas de bloqueados se fusionan desde cada fuente independientemente.138Para hacer que la lista de permitidos sea autoritaria, establezca `allowedMcpServers` y `allowManagedMcpServersOnly: true` juntos en una [fuente de configuración administrada](/docs/es/admin-setup#decide-how-settings-reach-devices), como configuración administrada por servidor o un archivo `managed-settings.json` implementado. [Restringir la lista de permitidos solo a configuración administrada](#restrict-the-allowlist-to-managed-settings-only) muestra la configuración. Sin `allowManagedMcpServersOnly`, las listas de permitidos de cada fuente de configuración se fusionan, incluido el propio `~/.claude/settings.json` de un usuario, por lo que un usuario puede ampliar lo que su lista de permitidos permite. Las listas de bloqueados se fusionan desde cada fuente independientemente.

139 139 

140<Note>140<Note>

141 `allowManagedMcpServersOnly` es separado de `allowManagedPermissionRulesOnly`, que bloquea solo [reglas de permisos](/es/permissions#managed-settings). Establecer esa bandera no aplica la lista de permitidos de MCP.141 `allowManagedMcpServersOnly` es separado de `allowManagedPermissionRulesOnly`, que bloquea solo [reglas de permisos](/docs/es/permissions#managed-settings). Establecer esa bandera no aplica la lista de permitidos de MCP.

142</Note>142</Note>

143 143 

144<h3 id="match-servers-by-url-command-or-name">144<h3 id="match-servers-by-url-command-or-name">


160| `allowedMcpServers` | Todos los servidores permitidos | Ningún servidor permitido | Solo servidores coincidentes permitidos |160| `allowedMcpServers` | Todos los servidores permitidos | Ningún servidor permitido | Solo servidores coincidentes permitidos |

161| `deniedMcpServers` | Ningún servidor bloqueado | Ningún servidor bloqueado | Servidores coincidentes bloqueados |161| `deniedMcpServers` | Ningún servidor bloqueado | Ningún servidor bloqueado | Servidores coincidentes bloqueados |

162 162 

163Vea [Entradas inválidas en configuración administrada](/es/settings#invalid-entries-in-managed-settings) para saber qué sucede cuando una entrada falla la validación del esquema.163Vea [Entradas inválidas en configuración administrada](/docs/es/settings#invalid-entries-in-managed-settings) para saber qué sucede cuando una entrada falla la validación del esquema.

164 164 

165<Warning>165<Warning>

166 Una entrada `serverName`, en cualquiera de las listas, no es un control de seguridad. El nombre es la etiqueta que un usuario asigna al ejecutar `claude mcp add` o editar un archivo de configuración, no el servidor subyacente, por lo que un usuario puede llamar a cualquier servidor `github`. Para conectores de claude.ai, el nombre es el nombre mostrado devuelto por claude.ai, que puede cambiar. Para aplicar qué servidores realmente se ejecutan, agregue entradas `serverCommand` o `serverUrl`.166 Una entrada `serverName`, en cualquiera de las listas, no es un control de seguridad. El nombre es la etiqueta que un usuario asigna al ejecutar `claude mcp add` o editar un archivo de configuración, no el servidor subyacente, por lo que un usuario puede llamar a cualquier servidor `github`. Para conectores de claude.ai, el nombre es el nombre mostrado devuelto por claude.ai, que puede cambiar. Para aplicar qué servidores realmente se ejecutan, agregue entradas `serverCommand` o `serverUrl`.


168 168 

169La validación de `serverName` difiere entre las dos listas:169La validación de `serverName` difiere entre las dos listas:

170 170 

171* {/* min-version: 2.1.182 */}En `deniedMcpServers`, `serverName` acepta cualquier cadena no vacía, por lo que puede bloquear [conectores de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai) por su nombre mostrado. Por ejemplo, `{ "serverName": "claude.ai Slack" }` bloquea el conector de Slack. Prefiera una entrada `serverUrl` cuando necesite que la denegación sea robusta ante cambios de nombre, o cuando un nombre de conector colisiona y gana un sufijo ` (N)`.171* En `deniedMcpServers`, `serverName` acepta cualquier cadena no vacía, por lo que puede bloquear [conectores de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai) por su nombre mostrado. Por ejemplo, `{ "serverName": "claude.ai Slack" }` bloquea el conector de Slack. Prefiera una entrada `serverUrl` cuando necesite que la denegación sea robusta ante cambios de nombre, o cuando un nombre de conector colisiona y gana un sufijo ` (N)`.

172* En `allowedMcpServers`, `serverName` se limita a letras, números, guiones e guiones bajos. Use `serverUrl` para permitir un conector de claude.ai.172* En `allowedMcpServers`, `serverName` se limita a letras, números, guiones e guiones bajos. Use `serverUrl` para permitir un conector de claude.ai.

173 173 

174Para desactivar todos los conectores de claude.ai, vea [`disableClaudeAiConnectors`](/es/mcp#disable-claude-ai-connectors).174Para desactivar todos los conectores de claude.ai, vea [`disableClaudeAiConnectors`](/docs/es/mcp#disable-claude-ai-connectors).

175 175 

176<h3 id="how-a-server-is-evaluated">176<h3 id="how-a-server-is-evaluated">

177 Cómo se evalúa un servidor177 Cómo se evalúa un servidor


191Tres reglas de coincidencia se aplican dentro de esas verificaciones:191Tres reglas de coincidencia se aplican dentro de esas verificaciones:

192 192 

193* **Los comandos coinciden exactamente.** Cada argumento, en orden. `["npx", "-y", "server"]` no coincide con `["npx", "server"]` o `["npx", "-y", "server", "--flag"]`.193* **Los comandos coinciden exactamente.** Cada argumento, en orden. `["npx", "-y", "server"]` no coincide con `["npx", "server"]` o `["npx", "-y", "server", "--flag"]`.

194* **Los valores `serverCommand` y `serverUrl` se expanden antes de coincidir.** Tanto la entrada de política como el valor configurado del servidor pasan por la misma [expansión `${VAR}` y `${VAR:-default}`](/es/mcp#environment-variable-expansion-in-mcp-json) que `.mcp.json`, por lo que una entrada escrita como `["${HOME}/bin/server"]` coincide con una configuración de servidor que usa la misma referencia o la ruta expandida. En Windows, haga referencia a una variable de entorno que esté configurada allí, como `${USERPROFILE}` en lugar de `${HOME}`. Los valores `serverName` coinciden literalmente y nunca se expanden.194* **Los valores `serverCommand` y `serverUrl` se expanden antes de coincidir.** Tanto la entrada de política como el valor configurado del servidor pasan por la misma [expansión `${VAR}` y `${VAR:-default}`](/docs/es/mcp#environment-variable-expansion-in-mcp-json) que `.mcp.json`, por lo que una entrada escrita como `["${HOME}/bin/server"]` coincide con una configuración de servidor que usa la misma referencia o la ruta expandida. En Windows, haga referencia a una variable de entorno que esté configurada allí, como `${USERPROFILE}` en lugar de `${HOME}`. Los valores `serverName` coinciden literalmente y nunca se expanden.

195* **Las URLs admiten comodines `*`** en cualquier lugar del patrón, incluido el esquema. La coincidencia del nombre de host no distingue mayúsculas de minúsculas e ignora un punto FQDN final, por lo que `https://Mcp.Example.com/*` coincide con `https://mcp.example.com/api`. Las rutas permanecen sensibles a mayúsculas y minúsculas.195* **Las URLs admiten comodines `*`** en cualquier lugar del patrón, incluido el esquema. La coincidencia del nombre de host no distingue mayúsculas de minúsculas e ignora un punto FQDN final, por lo que `https://Mcp.Example.com/*` coincide con `https://mcp.example.com/api`. Las rutas permanecen sensibles a mayúsculas y minúsculas.

196 196 

197| Patrón | Permite |197| Patrón | Permite |


363 Monitorear el uso de MCP363 Monitorear el uso de MCP

364</h2>364</h2>

365 365 

366Cuando se configura [exportación de OpenTelemetry](/es/monitoring-usage), Claude Code puede registrar qué servidores MCP y herramientas invocan los usuarios. Establezca `OTEL_LOG_TOOL_DETAILS=1` para incluir nombres de servidor MCP y herramientas en eventos de herramientas, luego agréguelos en su recopilador para ver qué servidores conectan realmente sus usuarios. Consulte [Monitoring](/es/monitoring-usage) para configurar el exportador y para el esquema de evento completo.366Cuando se configura [exportación de OpenTelemetry](/docs/es/monitoring-usage), Claude Code puede registrar qué servidores MCP y herramientas invocan los usuarios. Establezca `OTEL_LOG_TOOL_DETAILS=1` para incluir nombres de servidor MCP y herramientas en eventos de herramientas, luego agréguelos en su recopilador para ver qué servidores conectan realmente sus usuarios. Consulte [Monitoring](/docs/es/monitoring-usage) para configurar el exportador y para el esquema de evento completo.

367 367 

368<h2 id="configuration-summary">368<h2 id="configuration-summary">

369 Resumen de configuración369 Resumen de configuración


374| Superficie | Qué controla | Dónde vive | Cómo entregar |374| Superficie | Qué controla | Dónde vive | Cómo entregar |

375| :--------------------------- | :--------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |375| :--------------------------- | :--------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

376| `managed-mcp.json` | Conjunto de servidor fijo, control exclusivo | Ruta del sistema: `/Library/Application Support/ClaudeCode/`, `/etc/claude-code/`, o `C:\Program Files\ClaudeCode\` | MDM, GPO, administración de flota, o cualquier proceso con privilegios de administrador. No se puede establecer a través de configuración administrada por servidor |376| `managed-mcp.json` | Conjunto de servidor fijo, control exclusivo | Ruta del sistema: `/Library/Application Support/ClaudeCode/`, `/etc/claude-code/`, o `C:\Program Files\ClaudeCode\` | MDM, GPO, administración de flota, o cualquier proceso con privilegios de administrador. No se puede establecer a través de configuración administrada por servidor |

377| `allowedMcpServers` | Lista de permitidos de servidores permitidos | Cualquier [archivo de configuración](/es/settings#settings-files); las entradas de cada fuente se fusionan a menos que `allowManagedMcpServersOnly` esté establecido | Para aplicación, una [fuente de configuración administrada](/es/admin-setup#decide-how-settings-reach-devices): configuración administrada por servidor, `managed-settings.json`, perfil MDM, o registro |377| `allowedMcpServers` | Lista de permitidos de servidores permitidos | Cualquier [archivo de configuración](/docs/es/settings#settings-files); las entradas de cada fuente se fusionan a menos que `allowManagedMcpServersOnly` esté establecido | Para aplicación, una [fuente de configuración administrada](/docs/es/admin-setup#decide-how-settings-reach-devices): configuración administrada por servidor, `managed-settings.json`, perfil MDM, o registro |

378| `deniedMcpServers` | Lista de bloqueados de servidores bloqueados | Cualquier archivo de configuración; las entradas de cada fuente se fusionan | Igual que `allowedMcpServers` |378| `deniedMcpServers` | Lista de bloqueados de servidores bloqueados | Cualquier archivo de configuración; las entradas de cada fuente se fusionan | Igual que `allowedMcpServers` |

379| `allowManagedMcpServersOnly` | Bloquea la lista de permitidos solo a fuentes administradas | Solo fuentes de configuración administrada; la configuración no tiene efecto en otros lugares | Igual que `allowedMcpServers` |379| `allowManagedMcpServersOnly` | Bloquea la lista de permitidos solo a fuentes administradas | Solo fuentes de configuración administrada; la configuración no tiene efecto en otros lugares | Igual que `allowedMcpServers` |

380| `allowAllClaudeAiMcps` | Carga conectores de claude.ai junto con `managed-mcp.json` en lugar de suprimirlos | Solo fuentes de configuración administrada; la configuración no tiene efecto en otros lugares | Igual que `allowedMcpServers` |380| `allowAllClaudeAiMcps` | Carga conectores de claude.ai junto con `managed-mcp.json` en lugar de suprimirlos | Solo fuentes de configuración administrada; la configuración no tiene efecto en otros lugares | Igual que `allowedMcpServers` |


383 Recursos relacionados383 Recursos relacionados

384</h2>384</h2>

385 385 

386* [Decide what to enforce](/es/admin-setup#decide-what-to-enforce): restricciones de MCP junto con reglas de permisos, sandboxing y los otros controles de administrador386* [Decide what to enforce](/docs/es/admin-setup#decide-what-to-enforce): restricciones de MCP junto con reglas de permisos, sandboxing y los otros controles de administrador

387* [Connect Claude Code to tools via MCP](/es/mcp): la referencia completa de MCP, incluidos transportes, alcances y autenticación387* [Connect Claude Code to tools via MCP](/docs/es/mcp): la referencia completa de MCP, incluidos transportes, alcances y autenticación

388* [Settings](/es/settings): la jerarquía de configuración y cómo la configuración administrada tiene prioridad388* [Settings](/docs/es/settings): la jerarquía de configuración y cómo la configuración administrada tiene prioridad

389* [Server-managed settings](/es/server-managed-settings): entregar `allowedMcpServers` y `deniedMcpServers` desde la consola de administrador de Claude.ai389* [Server-managed settings](/docs/es/server-managed-settings): entregar `allowedMcpServers` y `deniedMcpServers` desde la consola de administrador de Claude.ai

390* [Security](/es/security): el modelo de amenaza que estos controles defienden390* [Security](/docs/es/security): el modelo de amenaza que estos controles defienden

391* [Claude Enterprise Administrator Guide](https://claude.com/resources/tutorials/claude-enterprise-administrator-guide): SSO, SCIM, administración de asientos y guía de implementación391* [Claude Enterprise Administrator Guide](https://claude.com/resources/tutorials/claude-enterprise-administrator-guide): SSO, SCIM, administración de asientos y guía de implementación

mcp.md +36 −36

Details

10 10 

11Conecte un servidor cuando se encuentre copiando datos en el chat desde otra herramienta, como un rastreador de problemas o un panel de monitoreo. Una vez conectado, Claude puede leer y actuar en ese sistema directamente en lugar de trabajar con lo que pegue.11Conecte un servidor cuando se encuentre copiando datos en el chat desde otra herramienta, como un rastreador de problemas o un panel de monitoreo. Una vez conectado, Claude puede leer y actuar en ese sistema directamente en lugar de trabajar con lo que pegue.

12 12 

13Si está conectando su primer servidor, comience con el [inicio rápido de MCP](/es/mcp-quickstart) para un recorrido paso a paso. Esta página es la referencia completa.13Si está conectando su primer servidor, comience con el [inicio rápido de MCP](/docs/es/mcp-quickstart) para un recorrido paso a paso. Esta página es la referencia completa.

14 14 

15<h2 id="what-you-can-do-with-mcp">15<h2 id="what-you-can-do-with-mcp">

16 Qué puede hacer con MCP16 Qué puede hacer con MCP


23* **Consulte bases de datos**: "Encuentre correos electrónicos de 10 usuarios aleatorios que utilizaron la característica ENG-4521, basándose en nuestra base de datos PostgreSQL."23* **Consulte bases de datos**: "Encuentre correos electrónicos de 10 usuarios aleatorios que utilizaron la característica ENG-4521, basándose en nuestra base de datos PostgreSQL."

24* **Integre diseños**: "Actualice nuestra plantilla de correo electrónico estándar basándose en los nuevos diseños de Figma que se publicaron en Slack"24* **Integre diseños**: "Actualice nuestra plantilla de correo electrónico estándar basándose en los nuevos diseños de Figma que se publicaron en Slack"

25* **Automatice flujos de trabajo**: "Cree borradores de Gmail invitando a estos 10 usuarios a una sesión de retroalimentación sobre la nueva característica."25* **Automatice flujos de trabajo**: "Cree borradores de Gmail invitando a estos 10 usuarios a una sesión de retroalimentación sobre la nueva característica."

26* **Reaccione a eventos externos**: Un servidor MCP también puede actuar como un [canal](/es/channels) que envía mensajes a su sesión, para que Claude reaccione a mensajes de Telegram, chats de Discord o eventos de webhook mientras está fuera.26* **Reaccione a eventos externos**: Un servidor MCP también puede actuar como un [canal](/docs/es/channels) que envía mensajes a su sesión, para que Claude reaccione a mensajes de Telegram, chats de Discord o eventos de webhook mientras está fuera.

27 27 

28<h2 id="find-and-build-mcp-servers">28<h2 id="find-and-build-mcp-servers">

29 Buscar y crear servidores MCP29 Buscar y crear servidores MCP


32Explore conectores revisados en el [Directorio de Anthropic](https://claude.ai/directory). Los conectores del Directorio utilizan la misma infraestructura MCP que Claude Code, por lo que puede agregar cualquier servidor remoto listado allí con `claude mcp add`.32Explore conectores revisados en el [Directorio de Anthropic](https://claude.ai/directory). Los conectores del Directorio utilizan la misma infraestructura MCP que Claude Code, por lo que puede agregar cualquier servidor remoto listado allí con `claude mcp add`.

33 33 

34<Warning>34<Warning>

35 Verifique que confía en cada servidor antes de conectarlo. Los servidores que obtienen contenido externo pueden exponerlo al [riesgo de inyección de indicaciones](/es/security#protect-against-prompt-injection).35 Verifique que confía en cada servidor antes de conectarlo. Los servidores que obtienen contenido externo pueden exponerlo al [riesgo de inyección de indicaciones](/docs/es/security#protect-against-prompt-injection).

36</Warning>36</Warning>

37 37 

38Para crear su propio servidor, consulte la [guía del servidor MCP](https://modelcontextprotocol.io/docs/develop/build-server) para los fundamentos del protocolo y la [documentación de construcción de conectores de Claude](https://claude.com/docs/connectors/building) para autenticación, pruebas y envío al Directorio.38Para crear su propio servidor, consulte la [guía del servidor MCP](https://modelcontextprotocol.io/docs/develop/build-server) para los fundamentos del protocolo y la [documentación de construcción de conectores de Claude](https://claude.com/docs/connectors/building) para autenticación, pruebas y envío al Directorio.


115 115 

116Claude Code establece `CLAUDE_PROJECT_DIR` en el entorno del servidor generado a la raíz del proyecto, por lo que su servidor puede resolver rutas relativas al proyecto sin depender del directorio de trabajo. Este es el mismo directorio que los hooks reciben en su variable `CLAUDE_PROJECT_DIR`. Léalo desde dentro de su proceso de servidor, por ejemplo `process.env.CLAUDE_PROJECT_DIR` en Node o `os.environ["CLAUDE_PROJECT_DIR"]` en Python.116Claude Code establece `CLAUDE_PROJECT_DIR` en el entorno del servidor generado a la raíz del proyecto, por lo que su servidor puede resolver rutas relativas al proyecto sin depender del directorio de trabajo. Este es el mismo directorio que los hooks reciben en su variable `CLAUDE_PROJECT_DIR`. Léalo desde dentro de su proceso de servidor, por ejemplo `process.env.CLAUDE_PROJECT_DIR` en Node o `os.environ["CLAUDE_PROJECT_DIR"]` en Python.

117 117 

118`CLAUDE_PROJECT_DIR` es la raíz del proyecto estable y no cambia cuando agrega o elimina directorios de trabajo durante la sesión. Un servidor que limita su propio acceso al sistema de archivos a un conjunto de directorios permitidos debe implementar la solicitud MCP `roots/list` en su lugar. Claude Code responde a `roots/list` con el directorio de lanzamiento de la sesión más cada [directorio de trabajo adicional](/es/permissions#working-directories) que ha otorgado con `--add-dir`, `/add-dir`, o la configuración `additionalDirectories`. Claude Code envía `notifications/roots/list_changed` cuando ese conjunto cambia. Antes de v2.1.203, `roots/list` devolvía solo el directorio de lanzamiento y Claude Code no enviaba `notifications/roots/list_changed`.118`CLAUDE_PROJECT_DIR` es la raíz del proyecto estable y no cambia cuando agrega o elimina directorios de trabajo durante la sesión. Un servidor que limita su propio acceso al sistema de archivos a un conjunto de directorios permitidos debe implementar la solicitud MCP `roots/list` en su lugar. Claude Code responde a `roots/list` con el directorio de lanzamiento de la sesión más cada [directorio de trabajo adicional](/docs/es/permissions#working-directories) que ha otorgado con `--add-dir`, `/add-dir`, o la configuración `additionalDirectories`. Claude Code envía `notifications/roots/list_changed` cuando ese conjunto cambia. Antes de v2.1.203, `roots/list` devolvía solo el directorio de lanzamiento y Claude Code no enviaba `notifications/roots/list_changed`.

119 119 

120Esta variable se establece en el entorno del servidor, no en el entorno propio de Claude Code, por lo que hacer referencia a ella mediante la expansión `${VAR}` en un archivo `.mcp.json` con alcance de proyecto o usuario en `command` o `args` requiere un valor predeterminado como `${CLAUDE_PROJECT_DIR:-.}`. Las configuraciones MCP proporcionadas por plugins sustituyen `${CLAUDE_PROJECT_DIR}` directamente y no necesitan el valor predeterminado.120Esta variable se establece en el entorno del servidor, no en el entorno propio de Claude Code, por lo que hacer referencia a ella mediante la expansión `${VAR}` en un archivo `.mcp.json` con alcance de proyecto o usuario en `command` o `args` requiere un valor predeterminado como `${CLAUDE_PROJECT_DIR:-.}`. Las configuraciones MCP proporcionadas por plugins sustituyen `${CLAUDE_PROJECT_DIR}` directamente y no necesitan el valor predeterminado.

121 121 


180 180 

181Los servidores con alcance de proyecto desde `.mcp.json` que están esperando su aprobación aparecen en `claude mcp list` como `⏸ Pending approval`. Ejecute `claude` de forma interactiva para revisar y aprobar. `claude mcp get <name>` muestra servidores pendientes como `⏸ Pending approval` y servidores rechazados como `✗ Rejected`.181Los servidores con alcance de proyecto desde `.mcp.json` que están esperando su aprobación aparecen en `claude mcp list` como `⏸ Pending approval`. Ejecute `claude` de forma interactiva para revisar y aprobar. `claude mcp get <name>` muestra servidores pendientes como `⏸ Pending approval` y servidores rechazados como `✗ Rejected`.

182 182 

183A partir de v2.1.196, `claude mcp list` y `claude mcp get` leen aprobaciones de `.mcp.json` solo desde archivos de configuración que no están comprometidos en el repositorio hasta que confíe en el espacio de trabajo ejecutando `claude` en él y aceptando el diálogo de confianza del espacio de trabajo. Un repositorio clonado no puede aprobar sus propios servidores: [`enableAllProjectMcpServers` o `enabledMcpjsonServers`](/es/settings#available-settings) comprometido en el archivo `.claude/settings.json` del proyecto se ignora en una carpeta no confiable, y el servidor permanece en `⏸ Pending approval` en lugar de estar conectado y verificado de salud.183A partir de v2.1.196, `claude mcp list` y `claude mcp get` leen aprobaciones de `.mcp.json` solo desde archivos de configuración que no están comprometidos en el repositorio hasta que confíe en el espacio de trabajo ejecutando `claude` en él y aceptando el diálogo de confianza del espacio de trabajo. Un repositorio clonado no puede aprobar sus propios servidores: [`enableAllProjectMcpServers` o `enabledMcpjsonServers`](/docs/es/settings#available-settings) comprometido en el archivo `.claude/settings.json` del proyecto se ignora en una carpeta no confiable, y el servidor permanece en `⏸ Pending approval` en lugar de estar conectado y verificado de salud.

184 184 

185Las aprobaciones de estas fuentes aún se aplican en una carpeta no confiable:185Las aprobaciones de estas fuentes aún se aplican en una carpeta no confiable:

186 186 


188* configuración gestionada188* configuración gestionada

189* configuración pasada con `--settings`189* configuración pasada con `--settings`

190 190 

191Las aprobaciones en un archivo `.claude/settings.local.json` sin rastrear también se aplican, pero solo después de que acepte un diálogo de confianza para esa carpeta o uno de sus directorios principales: Claude Code ejecuta git para verificar si el archivo está rastreado, y ejecuta esa verificación solo en una carpeta confiable. En una carpeta que nunca ha confiado, las aprobaciones del archivo esperan el diálogo de confianza a menos que la carpeta sea su directorio de configuración personal: su directorio de inicio, o un directorio cuyo `.claude` ha establecido como [`CLAUDE_CONFIG_DIR`](/es/env-vars). Antes de v2.1.207, un archivo `.claude/settings.local.json` sin rastrear aprobaba servidores en una carpeta que nunca había confiado.191Las aprobaciones en un archivo `.claude/settings.local.json` sin rastrear también se aplican, pero solo después de que acepte un diálogo de confianza para esa carpeta o uno de sus directorios principales: Claude Code ejecuta git para verificar si el archivo está rastreado, y ejecuta esa verificación solo en una carpeta confiable. En una carpeta que nunca ha confiado, las aprobaciones del archivo esperan el diálogo de confianza a menos que la carpeta sea su directorio de configuración personal: su directorio de inicio, o un directorio cuyo `.claude` ha establecido como [`CLAUDE_CONFIG_DIR`](/docs/es/env-vars). Antes de v2.1.207, un archivo `.claude/settings.local.json` sin rastrear aprobaba servidores en una carpeta que nunca había confiado.

192 192 

193Una entrada `disabledMcpjsonServers` en cualquier archivo de configuración aún rechaza el servidor.193Una entrada `disabledMcpjsonServers` en cualquier archivo de configuración aún rechaza el servidor.

194 194 

195El panel `/mcp` muestra el recuento de herramientas junto a cada servidor conectado e indica los servidores que anuncian la capacidad de herramientas pero no exponen ninguna herramienta.195El panel `/mcp` muestra el recuento de herramientas junto a cada servidor conectado e indica los servidores que anuncian la capacidad de herramientas pero no exponen ninguna herramienta.

196 196 

197Un servidor remoto cuya configuración tiene una `url` vacía se muestra como `not configured` en `/mcp`, en `claude mcp list`, y en el [gestor `/plugin`](/es/plugins), y Claude Code no intenta conectarse a él. Un plugin puede incluir una entrada de marcador de posición como esta para un conector que configura más tarde, por lo que Claude Code no lo informa como un error o un problema de configuración. La vista de detalles del servidor en `/mcp` lee `No URL configured for this server`; establezca la `url` de la entrada para conectarse. Antes de v2.1.208, Claude Code informaba una `url` vacía como un problema de configuración con un aviso para reconectar.197Un servidor remoto cuya configuración tiene una `url` vacía se muestra como `not configured` en `/mcp`, en `claude mcp list`, y en el [gestor `/plugin`](/docs/es/plugins), y Claude Code no intenta conectarse a él. Un plugin puede incluir una entrada de marcador de posición como esta para un conector que configura más tarde, por lo que Claude Code no lo informa como un error o un problema de configuración. La vista de detalles del servidor en `/mcp` lee `No URL configured for this server`; establezca la `url` de la entrada para conectarse. Antes de v2.1.208, Claude Code informaba una `url` vacía como un problema de configuración con un aviso para reconectar.

198 198 

199Si su solicitud necesita herramientas de un servidor que aún se está conectando en segundo plano, Claude espera a que ese servidor continúe. Con [búsqueda de herramientas](#scale-with-mcp-tool-search) habilitada, que es la predeterminada, la espera ocurre dentro de la llamada `ToolSearch`. En configuraciones sin búsqueda de herramientas, como Google Cloud's Agent Platform, un `ANTHROPIC_BASE_URL` personalizado, o `ENABLE_TOOL_SEARCH=false`, Claude utiliza la herramienta `WaitForMcpServers` en su lugar.199Si su solicitud necesita herramientas de un servidor que aún se está conectando en segundo plano, Claude espera a que ese servidor continúe. Con [búsqueda de herramientas](#scale-with-mcp-tool-search) habilitada, que es la predeterminada, la espera ocurre dentro de la llamada `ToolSearch`. En configuraciones sin búsqueda de herramientas, como Google Cloud's Agent Platform, un `ANTHROPIC_BASE_URL` personalizado, o `ENABLE_TOOL_SEARCH=false`, Claude utiliza la herramienta `WaitForMcpServers` en su lugar.

200 200 

201Algunos nombres de servidor están reservados para los servidores integrados de Claude Code: `workspace`, `claude-in-chrome`, `computer-use`, `Claude Preview`, y `Claude Browser`. Si su configuración define un servidor con un nombre reservado, Claude Code lo omite al cargar y muestra una advertencia pidiéndole que lo renombre. `claude mcp add` rechaza un nombre reservado con un error.201Algunos nombres de servidor están reservados para los servidores integrados de Claude Code: `workspace`, `claude-in-chrome`, `computer-use`, `Claude Preview`, y `Claude Browser`. Si su configuración define un servidor con un nombre reservado, Claude Code lo omite al cargar y muestra una advertencia pidiéndole que lo renombre. `claude mcp add` rechaza un nombre reservado con un error.

202 202 

203`Claude Preview` y `Claude Browser` ambos nombran el servidor integrado que el [panel de vista previa de la aplicación de escritorio de Claude Code](/es/desktop#preview-your-app) utiliza. Antes de v2.1.205, `Claude Browser` no estaba reservado, por lo que un servidor configurado por el usuario podría registrarse bajo ese nombre.203`Claude Preview` y `Claude Browser` ambos nombran el servidor integrado que el [panel de vista previa de la aplicación de escritorio de Claude Code](/docs/es/desktop#preview-your-app) utiliza. Antes de v2.1.205, `Claude Browser` no estaba reservado, por lo que un servidor configurado por el usuario podría registrarse bajo ese nombre.

204 204 

205<h3 id="dynamic-tool-updates">205<h3 id="dynamic-tool-updates">

206 Actualizaciones dinámicas de herramientas206 Actualizaciones dinámicas de herramientas


224 Mensajes push con canales224 Mensajes push con canales

225</h3>225</h3>

226 226 

227Un servidor MCP también puede enviar mensajes directamente a su sesión para que Claude pueda reaccionar a eventos externos como resultados de CI, alertas de monitoreo o mensajes de chat. Para habilitar esto, su servidor declara la capacidad `claude/channel` y usted la activa con la bandera `--channels` al iniciar. Vea [Canales](/es/channels) para usar un canal oficialmente soportado, o [Referencia de canales](/es/channels-reference) para construir el suyo propio.227Un servidor MCP también puede enviar mensajes directamente a su sesión para que Claude pueda reaccionar a eventos externos como resultados de CI, alertas de monitoreo o mensajes de chat. Para habilitar esto, su servidor declara la capacidad `claude/channel` y usted la activa con la bandera `--channels` al iniciar. Vea [Canales](/docs/es/channels) para usar un canal oficialmente soportado, o [Referencia de canales](/docs/es/channels-reference) para construir el suyo propio.

228 228 

229<Tip>229<Tip>

230 Consejos:230 Consejos:


241 * Use `/mcp` para autenticarse con servidores remotos que requieren autenticación OAuth 2.0241 * Use `/mcp` para autenticarse con servidores remotos que requieren autenticación OAuth 2.0

242</Tip>242</Tip>

243 243 

244El `timeout` por servidor es un límite de reloj de pared duro por llamada de herramienta, y las notificaciones de progreso del servidor no lo extienden. Los valores por debajo de 1000 se ignoran y caen a `MCP_TOOL_TIMEOUT`, o a su predeterminado de aproximadamente 28 horas cuando esa variable no está establecida. Para un servidor HTTP, SSE, o [conector de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai) también hay un segundo temporizador por solicitud que cubre cada solicitud hasta el primer byte de respuesta del servidor. Ese temporizador es de 60 segundos a menos que establezca el `timeout` por servidor o `MCP_TOOL_TIMEOUT`; establecer cualquiera de ellos a 60 segundos o superior eleva el temporizador por solicitud a ese valor, un valor inferior no lo acorta, y el predeterminado de 28 horas de un `MCP_TOOL_TIMEOUT` no establecido nunca lo alimenta. Los servidores stdio y WebSocket no tienen temporizador por solicitud. {/* min-version: 2.1.162 */}Antes de v2.1.162, los valores por debajo de 1000 se redondeaban hacia abajo a un segundo en su lugar.244El `timeout` por servidor es un límite de reloj de pared duro por llamada de herramienta, y las notificaciones de progreso del servidor no lo extienden. Los valores por debajo de 1000 se ignoran y caen a `MCP_TOOL_TIMEOUT`, o a su predeterminado de aproximadamente 28 horas cuando esa variable no está establecida. Para un servidor HTTP, SSE, o [conector de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai) también hay un segundo temporizador por solicitud que cubre cada solicitud hasta el primer byte de respuesta del servidor. Ese temporizador es de 60 segundos a menos que establezca el `timeout` por servidor o `MCP_TOOL_TIMEOUT`; establecer cualquiera de ellos a 60 segundos o superior eleva el temporizador por solicitud a ese valor, un valor inferior no lo acorta, y el predeterminado de 28 horas de un `MCP_TOOL_TIMEOUT` no establecido nunca lo alimenta. Los servidores stdio y WebSocket no tienen temporizador por solicitud. Antes de v2.1.162, los valores por debajo de 1000 se redondeaban hacia abajo a un segundo en su lugar.

245 245 

246Un `timeout` por servidor de al menos 1000 también actúa como un piso en el tiempo de espera de inactividad descrito a continuación: Claude Code nunca cancela las llamadas de herramientas de ese servidor por inactividad antes que el `timeout` por servidor. Requiere Claude Code v2.1.203 o posterior.246Un `timeout` por servidor de al menos 1000 también actúa como un piso en el tiempo de espera de inactividad descrito a continuación: Claude Code nunca cancela las llamadas de herramientas de ese servidor por inactividad antes que el `timeout` por servidor. Requiere Claude Code v2.1.203 o posterior.

247 247 

248Una llamada de herramienta a un servidor MCP que no envía respuesta ni notificación de progreso durante la ventana de inactividad se cancela con un error en lugar de esperar el límite de reloj de pared. El tiempo de espera de inactividad requiere Claude Code v2.1.187 o posterior. {/* min-version: 2.1.203 */}Se aplica a todos los tipos de servidor excepto servidores IDE y servidores en proceso SDK. La ventana de inactividad predeterminada es de cinco minutos para servidores HTTP, SSE, WebSocket y [conector de claude.ai](#use-mcp-servers-from-claude-ai), y de 30 minutos para servidores stdio. Antes de v2.1.203, los servidores stdio estaban exentos del tiempo de espera de inactividad.248Una llamada de herramienta a un servidor MCP que no envía respuesta ni notificación de progreso durante la ventana de inactividad se cancela con un error en lugar de esperar el límite de reloj de pared. El tiempo de espera de inactividad requiere Claude Code v2.1.187 o posterior. Se aplica a todos los tipos de servidor excepto servidores IDE y servidores en proceso SDK. La ventana de inactividad predeterminada es de cinco minutos para servidores HTTP, SSE, WebSocket y [conector de claude.ai](#use-mcp-servers-from-claude-ai), y de 30 minutos para servidores stdio. Antes de v2.1.203, los servidores stdio estaban exentos del tiempo de espera de inactividad.

249 249 

250Establezca la variable de entorno [`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT`](/es/env-vars) en milisegundos para cambiar la ventana de inactividad, o establézcala en `0` para desactivar la verificación.250Establezca la variable de entorno [`CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT`](/docs/es/env-vars) en milisegundos para cambiar la ventana de inactividad, o establézcala en `0` para desactivar la verificación.

251 251 

252<h3 id="plugin-provided-mcp-servers">252<h3 id="plugin-provided-mcp-servers">

253 Servidores MCP proporcionados por plugins253 Servidores MCP proporcionados por plugins

254</h3>254</h3>

255 255 

256Los [plugins](/es/plugins) pueden agrupar servidores MCP, proporcionando automáticamente herramientas e integraciones cuando el plugin está habilitado. Los servidores MCP de plugins funcionan de manera idéntica a los servidores configurados por el usuario.256Los [plugins](/docs/es/plugins) pueden agrupar servidores MCP, proporcionando automáticamente herramientas e integraciones cuando el plugin está habilitado. Los servidores MCP de plugins funcionan de manera idéntica a los servidores configurados por el usuario.

257 257 

258**Cómo funcionan los servidores MCP de plugins**:258**Cómo funcionan los servidores MCP de plugins**:

259 259 


297**Características de MCP de plugins**:297**Características de MCP de plugins**:

298 298 

299* **Ciclo de vida automático**: Al iniciar la sesión, los servidores de los plugins habilitados se conectan automáticamente. Si habilita o deshabilita un plugin durante una sesión, ejecute `/reload-plugins` para conectar o desconectar sus servidores MCP299* **Ciclo de vida automático**: Al iniciar la sesión, los servidores de los plugins habilitados se conectan automáticamente. Si habilita o deshabilita un plugin durante una sesión, ejecute `/reload-plugins` para conectar o desconectar sus servidores MCP

300* **Variables de entorno**: Use `${CLAUDE_PLUGIN_ROOT}` para archivos agrupados en el plugin, `${CLAUDE_PLUGIN_DATA}` para [estado persistente](/es/plugins-reference#persistent-data-directory) que sobrevive a las actualizaciones de plugins, y `${CLAUDE_PROJECT_DIR}` para la raíz del proyecto estable. La sustitución se aplica a:300* **Variables de entorno**: Use `${CLAUDE_PLUGIN_ROOT}` para archivos agrupados en el plugin, `${CLAUDE_PLUGIN_DATA}` para [estado persistente](/docs/es/plugins-reference#persistent-data-directory) que sobrevive a las actualizaciones de plugins, y `${CLAUDE_PROJECT_DIR}` para la raíz del proyecto estable. La sustitución se aplica a:

301 * servidores `stdio`: `command`, `args`, `env`301 * servidores `stdio`: `command`, `args`, `env`

302 * servidores `http`, `sse` y `ws`: `url`, `headers` y `headersHelper`. {/* min-version: 2.1.195 */}Antes de v2.1.195, `headersHelper` pasaba el marcador de posición como una cadena literal302 * servidores `http`, `sse` y `ws`: `url`, `headers` y `headersHelper`. Antes de v2.1.195, `headersHelper` pasaba el marcador de posición como una cadena literal

303* **Acceso a variables de entorno del usuario**: Acceso a las mismas variables de entorno que los servidores configurados manualmente303* **Acceso a variables de entorno del usuario**: Acceso a las mismas variables de entorno que los servidores configurados manualmente

304* **Múltiples tipos de transporte**: Soporte para transportes stdio, SSE, HTTP y WebSocket, aunque el soporte de transporte puede variar según el servidor304* **Múltiples tipos de transporte**: Soporte para transportes stdio, SSE, HTTP y WebSocket, aunque el soporte de transporte puede variar según el servidor

305 305 


320mcp__plugin_my-plugin_database-tools__query320mcp__plugin_my-plugin_database-tools__query

321```321```

322 322 

323Use este nombre completo cuando haga referencia a la herramienta en [reglas de permisos](/es/permissions), la lista `allowed-tools` de una skill, un [campo `tools` de un subagente](/es/sub-agents#available-tools), o un [matcher de hook](/es/hooks#match-mcp-tools). Un matcher de hook escrito contra la clave del servidor simple, como `mcp__database-tools__.*`, nunca se activa para un servidor agrupado en un plugin.323Use este nombre completo cuando haga referencia a la herramienta en [reglas de permisos](/docs/es/permissions), la lista `allowed-tools` de una skill, un [campo `tools` de un subagente](/docs/es/sub-agents#available-tools), o un [matcher de hook](/docs/es/hooks#match-mcp-tools). Un matcher de hook escrito contra la clave del servidor simple, como `mcp__database-tools__.*`, nunca se activa para un servidor agrupado en un plugin.

324 324 

325El servidor mismo se registra bajo el nombre con alcance `plugin:<plugin-name>:<server-name>`, como `plugin:my-plugin:database-tools`. Use ese nombre donde se espera un nombre de servidor configurado, como un [campo `server` del hook `mcp_tool`](/es/hooks#mcp-tool-hook-fields).325El servidor mismo se registra bajo el nombre con alcance `plugin:<plugin-name>:<server-name>`, como `plugin:my-plugin:database-tools`. Use ese nombre donde se espera un nombre de servidor configurado, como un [campo `server` del hook `mcp_tool`](/docs/es/hooks#mcp-tool-hook-fields).

326 326 

327**Beneficios de los servidores MCP de plugins**:327**Beneficios de los servidores MCP de plugins**:

328 328 


330* **Configuración automática**: No se necesita configuración manual de MCP330* **Configuración automática**: No se necesita configuración manual de MCP

331* **Consistencia del equipo**: Todos obtienen las mismas herramientas cuando se instala el plugin331* **Consistencia del equipo**: Todos obtienen las mismas herramientas cuando se instala el plugin

332 332 

333Vea la [referencia de componentes de plugins](/es/plugins-reference#mcp-servers) para detalles sobre cómo agrupar servidores MCP con plugins.333Vea la [referencia de componentes de plugins](/docs/es/plugins-reference#mcp-servers) para detalles sobre cómo agrupar servidores MCP con plugins.

334 334 

335<h2 id="mcp-installation-scopes">335<h2 id="mcp-installation-scopes">

336 Alcances de instalación de MCP336 Alcances de instalación de MCP


351El alcance local es el predeterminado. Un servidor con alcance local se carga solo en el proyecto donde lo agregó y permanece privado para usted. Claude Code lo almacena en `~/.claude.json` bajo la ruta de ese proyecto, por lo que el mismo servidor no aparecerá en sus otros proyectos. Use el alcance local para servidores de desarrollo personal, configuraciones experimentales o servidores con credenciales que no desea en el control de versiones.351El alcance local es el predeterminado. Un servidor con alcance local se carga solo en el proyecto donde lo agregó y permanece privado para usted. Claude Code lo almacena en `~/.claude.json` bajo la ruta de ese proyecto, por lo que el mismo servidor no aparecerá en sus otros proyectos. Use el alcance local para servidores de desarrollo personal, configuraciones experimentales o servidores con credenciales que no desea en el control de versiones.

352 352 

353<Note>353<Note>

354 El término "alcance local" para servidores MCP difiere de la configuración local general. Los servidores MCP con alcance local se almacenan en `~/.claude.json` (su directorio de inicio), mientras que la configuración local general usa `.claude/settings.local.json` (en el directorio del proyecto). Vea [Configuración](/es/settings#settings-files) para detalles sobre ubicaciones de archivos de configuración.354 El término "alcance local" para servidores MCP difiere de la configuración local general. Los servidores MCP con alcance local se almacenan en `~/.claude.json` (su directorio de inicio), mientras que la configuración local general usa `.claude/settings.local.json` (en el directorio del proyecto). Vea [Configuración](/docs/es/settings#settings-files) para detalles sobre ubicaciones de archivos de configuración.

355</Note>355</Note>

356 356 

357```bash theme={null}357```bash theme={null}


4261. Alcance local4261. Alcance local

4272. Alcance de proyecto4272. Alcance de proyecto

4283. Alcance de usuario4283. Alcance de usuario

4294. [Servidores proporcionados por plugins](/es/plugins)4294. [Servidores proporcionados por plugins](/docs/es/plugins)

4305. [Conectores de claude.ai](#use-mcp-servers-from-claude-ai)4305. [Conectores de claude.ai](#use-mcp-servers-from-claude-ai)

431 431 

432Los tres alcances coinciden duplicados por nombre. Los plugins y conectores coinciden por punto final, por lo que uno que apunta a la misma URL o comando que un servidor anterior se trata como un duplicado.432Los tres alcances coinciden duplicados por nombre. Los plugins y conectores coinciden por punto final, por lo que uno que apunta a la misma URL o comando que un servidor anterior se trata como un duplicado.


805| :---------------------------- | :----------------------------------------------------------------------------------------------------------------------------- |805| :---------------------------- | :----------------------------------------------------------------------------------------------------------------------------- |

806| `CLAUDE_CODE_MCP_SERVER_NAME` | el nombre del servidor MCP |806| `CLAUDE_CODE_MCP_SERVER_NAME` | el nombre del servidor MCP |

807| `CLAUDE_CODE_MCP_SERVER_URL` | la URL del servidor MCP |807| `CLAUDE_CODE_MCP_SERVER_URL` | la URL del servidor MCP |

808| `CLAUDE_PLUGIN_ROOT` | el directorio raíz del plugin. Se establece solo cuando un [plugin](/es/plugins-reference#mcp-servers) proporciona el servidor |808| `CLAUDE_PLUGIN_ROOT` | el directorio raíz del plugin. Se establece solo cuando un [plugin](/docs/es/plugins-reference#mcp-servers) proporciona el servidor |

809 809 

810Use estas para escribir un único script de ayudante que sirva múltiples servidores MCP.810Use estas para escribir un único script de ayudante que sirva múltiples servidores MCP.

811 811 

812Para un servidor proporcionado por un plugin, el ayudante también se ejecuta con su directorio de trabajo establecido en la raíz del plugin, por lo que una ruta `headersHelper` relativa se resuelve dentro del directorio del plugin en lugar de contra el directorio de trabajo de la sesión. Requiere Claude Code v2.1.195 o posterior.812Para un servidor proporcionado por un plugin, el ayudante también se ejecuta con su directorio de trabajo establecido en la raíz del plugin, por lo que una ruta `headersHelper` relativa se resuelve dentro del directorio del plugin en lugar de contra el directorio de trabajo de la sesión. Requiere Claude Code v2.1.195 o posterior.

813 813 

814Un `headersHelper` proporcionado por un plugin no puede hacer referencia a los valores [`${user_config.*}`](/es/plugins-reference#user-configuration) del plugin, porque el comando se ejecuta a través de un shell. Claude Code reporta el servidor como mal configurado con un [error](/es/errors#plugin-command-references-user-config) y no sustituye el valor. Ponga `${user_config.KEY}` en el campo `headers` del servidor en su lugar, que no se analiza como shell, o haga que el script de ayudante lea el valor de su propio entorno o un archivo de configuración. Antes de v2.1.207, `headersHelper` sustituía valores `${user_config.*}`.814Un `headersHelper` proporcionado por un plugin no puede hacer referencia a los valores [`${user_config.*}`](/docs/es/plugins-reference#user-configuration) del plugin, porque el comando se ejecuta a través de un shell. Claude Code reporta el servidor como mal configurado con un [error](/docs/es/errors#plugin-command-references-user-config) y no sustituye el valor. Ponga `${user_config.KEY}` en el campo `headers` del servidor en su lugar, que no se analiza como shell, o haga que el script de ayudante lea el valor de su propio entorno o un archivo de configuración. Antes de v2.1.207, `headersHelper` sustituía valores `${user_config.*}`.

815 815 

816<Note>816<Note>

817 `headersHelper` ejecuta comandos de shell arbitrarios. Cuando se define en alcance de proyecto o local, solo se ejecuta después de que acepte el diálogo de confianza del espacio de trabajo.817 `headersHelper` ejecuta comandos de shell arbitrarios. Cuando se define en alcance de proyecto o local, solo se ejecuta después de que acepte el diálogo de confianza del espacio de trabajo.


920 920 

921A partir de v2.1.161, los conectores en los que nunca ha iniciado sesión se contraen detrás de una fila `Show unused connectors` al final de la sección de claude.ai, por lo que una lista provista por la organización no llena el panel. Seleccione la fila para expandirlos. Un conector en el que inició sesión anteriormente permanece visible incluso cuando actualmente necesita reautenticación.921A partir de v2.1.161, los conectores en los que nunca ha iniciado sesión se contraen detrás de una fila `Show unused connectors` al final de la sección de claude.ai, por lo que una lista provista por la organización no llena el panel. Seleccione la fila para expandirlos. Un conector en el que inició sesión anteriormente permanece visible incluso cuando actualmente necesita reautenticación.

922 922 

923Los conectores de claude.ai se obtienen solo cuando su [método de autenticación](/es/authentication#authentication-precedence) activo es su suscripción a claude.ai. No se cargan cuando `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, `apiKeyHelper`, o un proveedor de terceros como Amazon Bedrock o Google Cloud's Agent Platform está activo, incluso si ejecutó previamente `/login`.923Los conectores de claude.ai se obtienen solo cuando su [método de autenticación](/docs/es/authentication#authentication-precedence) activo es su suscripción a claude.ai. No se cargan cuando `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, `apiKeyHelper`, o un proveedor de terceros como Amazon Bedrock o Google Cloud's Agent Platform está activo, incluso si ejecutó previamente `/login`.

924 924 

925Si `/mcp` no enumera un conector que agregó, ejecute `/status` para confirmar qué método de autenticación está activo, desestablezca esa variable de entorno o elimine la configuración `apiKeyHelper`, luego ejecute `/login` para seleccionar su cuenta de claude.ai.925Si `/mcp` no enumera un conector que agregó, ejecute `/status` para confirmar qué método de autenticación está activo, desestablezca esa variable de entorno o elimine la configuración `apiKeyHelper`, luego ejecute `/login` para seleccionar su cuenta de claude.ai.

926 926 


934 934 

935Su organización puede establecer controles por herramienta en [conectores de claude.ai](https://claude.com/docs/connectors). Claude Code lee estas configuraciones al iniciarse y las aplica localmente. Ejecute `/mcp` para ver qué configuración se aplica a cada herramienta en un conector.935Su organización puede establecer controles por herramienta en [conectores de claude.ai](https://claude.com/docs/connectors). Claude Code lee estas configuraciones al iniciarse y las aplica localmente. Ejecute `/mcp` para ver qué configuración se aplica a cada herramienta en un conector.

936 936 

937* **Herramienta establecida en `ask`**: Claude Code solicita en cada llamada con la razón `Your organization requires approval for this tool`. La solicitud aparece incluso en los [modos de permiso](/es/permissions#permission-modes) `acceptEdits`, `auto` y `bypassPermissions`, y nunca ofrece una opción para recordar su elección. Las [reglas de permiso](/es/permissions) que coinciden con la herramienta tampoco omiten la solicitud. En modo `dontAsk`, que nunca solicita, Claude Code deniega la llamada en su lugar.937* **Herramienta establecida en `ask`**: Claude Code solicita en cada llamada con la razón `Your organization requires approval for this tool`. La solicitud aparece incluso en los [modos de permiso](/docs/es/permissions#permission-modes) `acceptEdits`, `auto` y `bypassPermissions`, y nunca ofrece una opción para recordar su elección. Las [reglas de permiso](/docs/es/permissions) que coinciden con la herramienta tampoco omiten la solicitud. En modo `dontAsk`, que nunca solicita, Claude Code deniega la llamada en su lugar.

938* **Herramienta establecida en `blocked`**: Claude Code filtra la herramienta antes de que Claude la vea, por lo que nunca aparece en la lista de herramientas.938* **Herramienta establecida en `blocked`**: Claude Code filtra la herramienta antes de que Claude la vea, por lo que nunca aparece en la lista de herramientas.

939 939 

940Aplicar estos controles requiere Claude Code v2.1.129 o posterior. Las versiones anteriores ignoran la configuración y aplican el flujo de permiso estándar.940Aplicar estos controles requiere Claude Code v2.1.129 o posterior. Las versiones anteriores ignoran la configuración y aplican el flujo de permiso estándar.


943 Desactivar conectores de claude.ai943 Desactivar conectores de claude.ai

944</h3>944</h3>

945 945 

946Para desactivar servidores MCP de claude.ai en Claude Code, establezca [`disableClaudeAiConnectors`](/es/settings#available-settings) en `true` en cualquier ámbito de configuración:946Para desactivar servidores MCP de claude.ai en Claude Code, establezca [`disableClaudeAiConnectors`](/docs/es/settings#available-settings) en `true` en cualquier ámbito de configuración:

947 947 

948```json theme={null}948```json theme={null}

949{949{


959ENABLE_CLAUDEAI_MCP_SERVERS=false claude959ENABLE_CLAUDEAI_MCP_SERVERS=false claude

960```960```

961 961 

962Para bloquear conectores individuales de claude.ai en lugar de todos ellos, agréguelos a [`deniedMcpServers`](/es/managed-mcp) por nombre o por patrón de URL. Por ejemplo, una entrada `serverName` de `"claude.ai Slack"` bloquea el conector de Slack. Para activar o desactivar un conector solo para el proyecto actual, use el panel `/mcp`.962Para bloquear conectores individuales de claude.ai en lugar de todos ellos, agréguelos a [`deniedMcpServers`](/docs/es/managed-mcp) por nombre o por patrón de URL. Por ejemplo, una entrada `serverName` de `"claude.ai Slack"` bloquea el conector de Slack. Para activar o desactivar un conector solo para el proyecto actual, use el panel `/mcp`.

963 963 

964<Note>964<Note>

965 Estas configuraciones del lado del cliente rigen las sesiones locales de Claude Code. En sesiones de [Claude Code en la web](/es/claude-code-on-the-web), los conectores de claude.ai son aprovisionados por el host remoto y llegan como entradas explícitas de `--mcp-config`, por lo que `disableClaudeAiConnectors` no se aplica allí. Las URL de conectores también se reescriben a través del proxy de sesión, por lo que un patrón `serverUrl` de `deniedMcpServers` dirigido a la URL del proveedor no coincidirá. Gestione qué conectores puede usar una sesión en la nube desde la configuración de su organización en claude.ai.965 Estas configuraciones del lado del cliente rigen las sesiones locales de Claude Code. En sesiones de [Claude Code en la web](/docs/es/claude-code-on-the-web), los conectores de claude.ai son aprovisionados por el host remoto y llegan como entradas explícitas de `--mcp-config`, por lo que `disableClaudeAiConnectors` no se aplica allí. Las URL de conectores también se reescriben a través del proxy de sesión, por lo que un patrón `serverUrl` de `deniedMcpServers` dirigido a la URL del proveedor no coincidirá. Gestione qué conectores puede usar una sesión en la nube desde la configuración de su organización en claude.ai.

966</Note>966</Note>

967 967 

968<h2 id="use-claude-code-as-an-mcp-server">968<h2 id="use-claude-code-as-an-mcp-server">


1095 1095 

1096Si está construyendo un servidor MCP, puede marcar una herramienta como que requiere aprobación explícita en cada llamada estableciendo `_meta["anthropic/requiresUserInteraction"]` en `true` en la entrada de la herramienta en la respuesta `tools/list`. El valor debe ser el booleano JSON `true`; cualquier otro valor se ignora.1096Si está construyendo un servidor MCP, puede marcar una herramienta como que requiere aprobación explícita en cada llamada estableciendo `_meta["anthropic/requiresUserInteraction"]` en `true` en la entrada de la herramienta en la respuesta `tools/list`. El valor debe ser el booleano JSON `true`; cualquier otro valor se ignora.

1097 1097 

1098Claude Code muestra el indicador de permiso de esa herramienta en cada llamada, incluso en modos de permiso `acceptEdits`, `auto` y `bypassPermissions` [permission modes](/es/permissions#permission-modes), y no ofrece una opción "no preguntar de nuevo" para ella. Las [reglas de permiso](/es/permissions#permission-rule-syntax) que coinciden con la herramienta tampoco omiten el indicador. En modo `dontAsk`, que nunca solicita, Claude Code niega la llamada en su lugar.1098Claude Code muestra el indicador de permiso de esa herramienta en cada llamada, incluso en modos de permiso `acceptEdits`, `auto` y `bypassPermissions` [permission modes](/docs/es/permissions#permission-modes), y no ofrece una opción "no preguntar de nuevo" para ella. Las [reglas de permiso](/docs/es/permissions#permission-rule-syntax) que coinciden con la herramienta tampoco omiten el indicador. En modo `dontAsk`, que nunca solicita, Claude Code niega la llamada en su lugar.

1099 1099 

1100El indicador tiene que llegar a una persona. En modo no interactivo con [`--permission-prompt-tool`](/es/cli-reference#cli-flags), un resultado `allow` del indicador de permiso para una herramienta marcada se convierte en una negación con el mensaje `MCP tool requires user interaction; not supported via --permission-prompt-tool`. La devolución de llamada [`canUseTool`](/es/agent-sdk/permissions) del Agent SDK sí recibe estas llamadas y puede aprobarlas, porque se espera que el host del SDK las muestre a un usuario.1100El indicador tiene que llegar a una persona. En modo no interactivo con [`--permission-prompt-tool`](/docs/es/cli-reference#cli-flags), un resultado `allow` del indicador de permiso para una herramienta marcada se convierte en una negación con el mensaje `MCP tool requires user interaction; not supported via --permission-prompt-tool`. La devolución de llamada [`canUseTool`](/docs/es/agent-sdk/permissions) del Agent SDK sí recibe estas llamadas y puede aprobarlas, porque se espera que el host del SDK las muestre a un usuario.

1101 1101 

1102Use esto para herramientas cuyo indicador de permiso es en sí el punto, como un paso de consentimiento o concesión de acceso donde la aprobación automática significaría que ningún humano nunca estuvo de acuerdo. Otras herramientas del mismo servidor mantienen su comportamiento de permiso normal.1102Use esto para herramientas cuyo indicador de permiso es en sí el punto, como un paso de consentimiento o concesión de acceso donde la aprobación automática significaría que ningún humano nunca estuvo de acuerdo. Otras herramientas del mismo servidor mantienen su comportamiento de permiso normal.

1103 1103 


1115 1115 

1116La anotación `anthropic/requiresUserInteraction` requiere Claude Code v2.1.199 o posterior. Las versiones anteriores la ignoran y aplican el flujo de permiso estándar.1116La anotación `anthropic/requiresUserInteraction` requiere Claude Code v2.1.199 o posterior. Las versiones anteriores la ignoran y aplican el flujo de permiso estándar.

1117 1117 

1118Cuando una sesión está conectada a [Remote Control](/es/remote-control) o a un host del SDK, Claude Code marca la solicitud de permiso como que requiere interacción del usuario, por lo que el cliente muestra el indicador de permiso de la herramienta para que usted responda en lugar de una acción de aprobación de un toque.1118Cuando una sesión está conectada a [Remote Control](/docs/es/remote-control) o a un host del SDK, Claude Code marca la solicitud de permiso como que requiere interacción del usuario, por lo que el cliente muestra el indicador de permiso de la herramienta para que usted responda en lugar de una acción de aprobación de un toque.

1119 1119 

1120<h2 id="respond-to-mcp-elicitation-requests">1120<h2 id="respond-to-mcp-elicitation-requests">

1121 Responder a solicitudes de elicitación de MCP1121 Responder a solicitudes de elicitación de MCP


1128* **Modo de formulario**: Claude Code muestra un diálogo con campos de formulario definidos por el servidor (por ejemplo, un indicador de nombre de usuario y contraseña). Complete los campos y envíe.1128* **Modo de formulario**: Claude Code muestra un diálogo con campos de formulario definidos por el servidor (por ejemplo, un indicador de nombre de usuario y contraseña). Complete los campos y envíe.

1129* **Modo de URL**: Claude Code abre una URL del navegador para autenticación o aprobación. Complete el flujo en el navegador, luego confirme en la CLI.1129* **Modo de URL**: Claude Code abre una URL del navegador para autenticación o aprobación. Complete el flujo en el navegador, luego confirme en la CLI.

1130 1130 

1131Para responder automáticamente a solicitudes de elicitación sin mostrar un diálogo, use el [hook `Elicitation`](/es/hooks#elicitation).1131Para responder automáticamente a solicitudes de elicitación sin mostrar un diálogo, use el [hook `Elicitation`](/docs/es/hooks#elicitation).

1132 1132 

1133Si está construyendo un servidor MCP que usa elicitación, vea la [especificación de elicitación de MCP](https://modelcontextprotocol.io/docs/learn/client-concepts#elicitation) para detalles de protocolo y ejemplos de esquema.1133Si está construyendo un servidor MCP que usa elicitación, vea la [especificación de elicitación de MCP](https://modelcontextprotocol.io/docs/learn/client-concepts#elicitation) para detalles de protocolo y ejemplos de esquema.

1134 1134 


1195 Para autores de servidores MCP1195 Para autores de servidores MCP

1196</h3>1196</h3>

1197 1197 

1198Si está construyendo un servidor MCP, el campo de instrucciones del servidor se vuelve más útil con la búsqueda de herramientas habilitada. Las instrucciones del servidor ayudan a Claude a entender cuándo buscar sus herramientas, similar a cómo funcionan las [skills](/es/skills).1198Si está construyendo un servidor MCP, el campo de instrucciones del servidor se vuelve más útil con la búsqueda de herramientas habilitada. Las instrucciones del servidor ayudan a Claude a entender cuándo buscar sus herramientas, similar a cómo funcionan las [skills](/docs/es/skills).

1199 1199 

1200Agregue instrucciones claras y descriptivas del servidor que expliquen:1200Agregue instrucciones claras y descriptivas del servidor que expliquen:

1201 1201 


1211 1211 

1212La búsqueda de herramientas está habilitada de forma predeterminada: las herramientas MCP se difieren y se descubren bajo demanda. Claude Code lo desactiva de forma predeterminada en la Plataforma de Agentes de Google Cloud. También se desactiva cuando `ANTHROPIC_BASE_URL` apunta a un host que no es de primera parte, ya que la mayoría de los proxies no reenvían bloques `tool_reference`. Establezca `ENABLE_TOOL_SEARCH` explícitamente para anular cualquiera de estos comportamientos predeterminados.1212La búsqueda de herramientas está habilitada de forma predeterminada: las herramientas MCP se difieren y se descubren bajo demanda. Claude Code lo desactiva de forma predeterminada en la Plataforma de Agentes de Google Cloud. También se desactiva cuando `ANTHROPIC_BASE_URL` apunta a un host que no es de primera parte, ya que la mayoría de los proxies no reenvían bloques `tool_reference`. Establezca `ENABLE_TOOL_SEARCH` explícitamente para anular cualquiera de estos comportamientos predeterminados.

1213 1213 

1214Configurar [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/es/env-vars) mantiene la búsqueda de herramientas desactivada, y `ENABLE_TOOL_SEARCH` no puede anularla. La variable elimina el encabezado beta que requieren las definiciones de herramientas `defer_loading` y los bloques de contenido `tool_reference`.1214Configurar [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/es/env-vars) mantiene la búsqueda de herramientas desactivada, y `ENABLE_TOOL_SEARCH` no puede anularla. La variable elimina el encabezado beta que requieren las definiciones de herramientas `defer_loading` y los bloques de contenido `tool_reference`.

1215 1215 

1216La búsqueda de herramientas requiere un modelo que admita bloques `tool_reference`: Claude Sonnet 4.5, Claude Haiku 4.5, Claude Opus 4.5 y modelos posteriores. Vea [compatibilidad de modelos en la documentación de API](https://platform.claude.com/docs/en/agents-and-tools/tool-use/tool-search-tool#model-compatibility) para la lista actual. En la Plataforma de Agentes de Google Cloud, la búsqueda de herramientas se admite para Claude Sonnet 4.5 y posterior y Claude Opus 4.5 y posterior.1216La búsqueda de herramientas requiere un modelo que admita bloques `tool_reference`: Claude Sonnet 4.5, Claude Haiku 4.5, Claude Opus 4.5 y modelos posteriores. Vea [compatibilidad de modelos en la documentación de API](https://platform.claude.com/docs/en/agents-and-tools/tool-use/tool-search-tool#model-compatibility) para la lista actual. En la Plataforma de Agentes de Google Cloud, la búsqueda de herramientas se admite para Claude Sonnet 4.5 y posterior y Claude Opus 4.5 y posterior.

1217 1217 


1233ENABLE_TOOL_SEARCH=false claude1233ENABLE_TOOL_SEARCH=false claude

1234```1234```

1235 1235 

1236O establezca el valor en su [campo `env` de settings.json](/es/settings#available-settings).1236O establezca el valor en su [campo `env` de settings.json](/docs/es/settings#available-settings).

1237 1237 

1238También puede desactivar la herramienta `ToolSearch` específicamente:1238También puede desactivar la herramienta `ToolSearch` específicamente:

1239 1239 


1267 1267 

1268El campo `alwaysLoad` está disponible en todos los tipos de servidor y requiere Claude Code v2.1.121 o posterior. Un servidor MCP también puede marcar herramientas individuales como siempre cargadas incluyendo `"anthropic/alwaysLoad": true` en el objeto `_meta` de la herramienta, que tiene el mismo efecto solo para esa herramienta.1268El campo `alwaysLoad` está disponible en todos los tipos de servidor y requiere Claude Code v2.1.121 o posterior. Un servidor MCP también puede marcar herramientas individuales como siempre cargadas incluyendo `"anthropic/alwaysLoad": true` en el objeto `_meta` de la herramienta, que tiene el mismo efecto solo para esa herramienta.

1269 1269 

1270Establecer `alwaysLoad: true` también bloquea el inicio hasta que el servidor se conecte, limitado al tiempo de espera de conexión estándar de 5 segundos. Esto se aplica incluso cuando MCP startup es de otro modo [no bloqueante de forma predeterminada](/es/env-vars), ya que las herramientas deben estar presentes cuando se construye el primer mensaje. Otros servidores aún se conectan en segundo plano.1270Establecer `alwaysLoad: true` también bloquea el inicio hasta que el servidor se conecte, limitado al tiempo de espera de conexión estándar de 5 segundos. Esto se aplica incluso cuando MCP startup es de otro modo [no bloqueante de forma predeterminada](/docs/es/env-vars), ya que las herramientas deben estar presentes cuando se construye el primer mensaje. Otros servidores aún se conectan en segundo plano.

1271 1271 

1272<h2 id="use-mcp-prompts-as-commands">1272<h2 id="use-mcp-prompts-as-commands">

1273 Usar indicaciones MCP como comandos1273 Usar indicaciones MCP como comandos


1316 Configuración MCP gestionada1316 Configuración MCP gestionada

1317</h2>1317</h2>

1318 1318 

1319Para organizaciones que necesitan control centralizado sobre qué servidores MCP pueden conectar los usuarios, consulte [Configuración MCP gestionada](/es/managed-mcp). Cubre la implementación de un conjunto de servidores fijo con `managed-mcp.json`, la restricción de servidores con `allowedMcpServers` y `deniedMcpServers`, y lo que los usuarios ven cuando un servidor está bloqueado.1319Para organizaciones que necesitan control centralizado sobre qué servidores MCP pueden conectar los usuarios, consulte [Configuración MCP gestionada](/docs/es/managed-mcp). Cubre la implementación de un conjunto de servidores fijo con `managed-mcp.json`, la restricción de servidores con `allowedMcpServers` y `deniedMcpServers`, y lo que los usuarios ven cuando un servidor está bloqueado.

memory.md +21 −21

Details

22 CLAUDE.md vs auto memory22 CLAUDE.md vs auto memory

23</h2>23</h2>

24 24 

25Claude Code tiene dos sistemas de memoria complementarios. Ambos se cargan al inicio de cada conversación. Claude los trata como contexto, no como configuración forzada. Para bloquear una acción independientemente de lo que Claude decida, use un [hook PreToolUse](/es/hooks-guide) en su lugar. Cuanto más específicas y concisas sean sus instrucciones, más consistentemente Claude las seguirá.25Claude Code tiene dos sistemas de memoria complementarios. Ambos se cargan al inicio de cada conversación. Claude los trata como contexto, no como configuración forzada. Para bloquear una acción independientemente de lo que Claude decida, use un [hook PreToolUse](/docs/es/hooks-guide) en su lugar. Cuanto más específicas y concisas sean sus instrucciones, más consistentemente Claude las seguirá.

26 26 

27| | Archivos CLAUDE.md | Auto memory |27| | Archivos CLAUDE.md | Auto memory |

28| :------------------- | :----------------------------------------------------------------------- | :----------------------------------------------------------------------------------- |28| :------------------- | :----------------------------------------------------------------------- | :----------------------------------------------------------------------------------- |


34 34 

35Use archivos CLAUDE.md cuando quiera guiar el comportamiento de Claude. Auto memory permite que Claude aprenda de sus correcciones sin esfuerzo manual.35Use archivos CLAUDE.md cuando quiera guiar el comportamiento de Claude. Auto memory permite que Claude aprenda de sus correcciones sin esfuerzo manual.

36 36 

37Los subagents también pueden mantener su propia auto memory. Consulte [configuración de subagent](/es/sub-agents#enable-persistent-memory) para obtener detalles.37Los subagents también pueden mantener su propia auto memory. Consulte [configuración de subagent](/docs/es/sub-agents#enable-persistent-memory) para obtener detalles.

38 38 

39<h2 id="claude-md-files">39<h2 id="claude-md-files">

40 Archivos CLAUDE.md40 Archivos CLAUDE.md


53* Usted escribe la misma corrección o aclaración en el chat que escribió la sesión anterior53* Usted escribe la misma corrección o aclaración en el chat que escribió la sesión anterior

54* Un nuevo compañero de equipo necesitaría el mismo contexto para ser productivo54* Un nuevo compañero de equipo necesitaría el mismo contexto para ser productivo

55 55 

56Manténgalo en hechos que Claude debe retener en cada sesión: comandos de compilación, convenciones, diseño del proyecto, reglas "siempre haz X". Si una entrada es un procedimiento de múltiples pasos o solo importa para una parte de la base de código, muévala a un [skill](/es/skills) o una [regla con alcance de ruta](#organize-rules-with-claude/rules/) en su lugar. La [descripción general de extensiones](/es/features-overview#build-your-setup-over-time) cubre cuándo usar cada mecanismo.56Manténgalo en hechos que Claude debe retener en cada sesión: comandos de compilación, convenciones, diseño del proyecto, reglas "siempre haz X". Si una entrada es un procedimiento de múltiples pasos o solo importa para una parte de la base de código, muévala a un [skill](/docs/es/skills) o una [regla con alcance de ruta](#organize-rules-with-claude/rules/) en su lugar. La [descripción general de extensiones](/docs/es/features-overview#build-your-setup-over-time) cubre cuándo usar cada mecanismo.

57 57 

58<h3 id="choose-where-to-put-claude-md-files">58<h3 id="choose-where-to-put-claude-md-files">

59 Elija dónde colocar los archivos CLAUDE.md59 Elija dónde colocar los archivos CLAUDE.md


88 Escriba instrucciones efectivas88 Escriba instrucciones efectivas

89</h3>89</h3>

90 90 

91Los archivos CLAUDE.md se cargan en la ventana de contexto al inicio de cada sesión, consumiendo tokens junto con su conversación. La [visualización de la ventana de contexto](/es/context-window) muestra dónde se carga CLAUDE.md en relación con el resto del contexto de inicio. Debido a que son contexto en lugar de configuración forzada, cómo escribe las instrucciones afecta qué tan confiablemente Claude las sigue. Las instrucciones específicas, concisas y bien estructuradas funcionan mejor.91Los archivos CLAUDE.md se cargan en la ventana de contexto al inicio de cada sesión, consumiendo tokens junto con su conversación. La [visualización de la ventana de contexto](/docs/es/context-window) muestra dónde se carga CLAUDE.md en relación con el resto del contexto de inicio. Debido a que son contexto en lugar de configuración forzada, cómo escribe las instrucciones afecta qué tan confiablemente Claude las sigue. Las instrucciones específicas, concisas y bien estructuradas funcionan mejor.

92 92 

93**Tamaño**: apunte a menos de 200 líneas por archivo CLAUDE.md. Los archivos más largos consumen más contexto y reducen la adherencia. Si sus instrucciones están creciendo mucho, use [reglas con alcance de ruta](#path-specific-rules) para que las instrucciones se carguen solo cuando Claude trabaje con archivos coincidentes. También puede dividir contenido en [importaciones](#import-additional-files) para organización, aunque los archivos importados aún se cargan e ingresan a la ventana de contexto al iniciar.93**Tamaño**: apunte a menos de 200 líneas por archivo CLAUDE.md. Los archivos más largos consumen más contexto y reducen la adherencia. Si sus instrucciones están creciendo mucho, use [reglas con alcance de ruta](#path-specific-rules) para que las instrucciones se carguen solo cuando Claude trabaje con archivos coincidentes. También puede dividir contenido en [importaciones](#import-additional-files) para organización, aunque los archivos importados aún se cargan e ingresan a la ventana de contexto al iniciar.

94 94 


158 158 

159En Windows, crear un enlace simbólico requiere privilegios de administrador o modo de desarrollador, así que use la importación `@AGENTS.md` en su lugar.159En Windows, crear un enlace simbólico requiere privilegios de administrador o modo de desarrollador, así que use la importación `@AGENTS.md` en su lugar.

160 160 

161Ejecutar [`/init`](/es/commands) en un repositorio que ya tiene un `AGENTS.md` lo lee e incorpora las partes relevantes en el `CLAUDE.md` generado. También lee otras configuraciones de herramientas como `.cursorrules`, `.devin/rules/` y `.windsurfrules`.161Ejecutar [`/init`](/docs/es/commands) en un repositorio que ya tiene un `AGENTS.md` lo lee e incorpora las partes relevantes en el `CLAUDE.md` generado. También lee otras configuraciones de herramientas como `.cursorrules`, `.devin/rules/` y `.windsurfrules`.

162 162 

163<h3 id="how-claude-md-files-load">163<h3 id="how-claude-md-files-load">

164 Cómo se cargan los archivos CLAUDE.md164 Cómo se cargan los archivos CLAUDE.md


170 170 

171Claude también descubre archivos `CLAUDE.md` y `CLAUDE.local.md` en subdirectorios bajo su directorio de trabajo actual. En lugar de cargarlos al iniciar, se incluyen cuando Claude lee archivos en esos subdirectorios.171Claude también descubre archivos `CLAUDE.md` y `CLAUDE.local.md` en subdirectorios bajo su directorio de trabajo actual. En lugar de cargarlos al iniciar, se incluyen cuando Claude lee archivos en esos subdirectorios.

172 172 

173Si trabaja en un monorepo grande donde se recogen archivos CLAUDE.md de otros equipos, use [`claudeMdExcludes`](#exclude-specific-claude-md-files) para omitirlos. Para el diseño completo de archivos CLAUDE.md de raíz y por directorio y reglas, consulte [Monorepos y repositorios grandes](/es/large-codebases).173Si trabaja en un monorepo grande donde se recogen archivos CLAUDE.md de otros equipos, use [`claudeMdExcludes`](#exclude-specific-claude-md-files) para omitirlos. Para el diseño completo de archivos CLAUDE.md de raíz y por directorio y reglas, consulte [Monorepos y repositorios grandes](/docs/es/large-codebases).

174 174 

175Los comentarios HTML a nivel de bloque (`<!-- notas de mantenimiento -->`) en archivos CLAUDE.md se eliminan antes de que el contenido se inyecte en el contexto de Claude. Úselos para dejar notas para los mantenedores humanos sin gastar tokens de contexto en ellas. Los comentarios dentro de bloques de código se conservan. Cuando abre un archivo CLAUDE.md directamente con la herramienta Read, los comentarios permanecen visibles.175Los comentarios HTML a nivel de bloque (`<!-- notas de mantenimiento -->`) en archivos CLAUDE.md se eliminan antes de que el contenido se inyecte en el contexto de Claude. Úselos para dejar notas para los mantenedores humanos sin gastar tokens de contexto en ellas. Los comentarios dentro de bloques de código se conservan. Cuando abre un archivo CLAUDE.md directamente con la herramienta Read, los comentarios permanecen visibles.

176 176 


186CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1 claude --add-dir ../shared-config186CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1 claude --add-dir ../shared-config

187```187```

188 188 

189Esto carga `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md` y `CLAUDE.local.md` desde el directorio adicional. `CLAUDE.local.md` se omite si excluye `local` de [`--setting-sources`](/es/cli-reference).189Esto carga `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md` y `CLAUDE.local.md` desde el directorio adicional. `CLAUDE.local.md` se omite si excluye `local` de [`--setting-sources`](/docs/es/cli-reference).

190 190 

191<h3 id="organize-rules-with-claude/rules/">191<h3 id="organize-rules-with-claude/rules/">

192 Organizar reglas con `.claude/rules/`192 Organizar reglas con `.claude/rules/`


195Para proyectos más grandes, puede organizar instrucciones en múltiples archivos usando el directorio `.claude/rules/`. Esto mantiene las instrucciones modulares y más fáciles de mantener para los equipos. Las reglas también pueden ser [limitadas a rutas de archivo específicas](#path-specific-rules), por lo que solo se cargan en contexto cuando Claude trabaja con archivos coincidentes, reduciendo ruido y ahorrando espacio de contexto.195Para proyectos más grandes, puede organizar instrucciones en múltiples archivos usando el directorio `.claude/rules/`. Esto mantiene las instrucciones modulares y más fáciles de mantener para los equipos. Las reglas también pueden ser [limitadas a rutas de archivo específicas](#path-specific-rules), por lo que solo se cargan en contexto cuando Claude trabaja con archivos coincidentes, reduciendo ruido y ahorrando espacio de contexto.

196 196 

197<Note>197<Note>

198 Las reglas se cargan en contexto cada sesión o cuando se abren archivos coincidentes. Para instrucciones específicas de tareas que no necesitan estar en contexto todo el tiempo, use [skills](/es/skills) en su lugar, que solo se cargan cuando las invoca o cuando Claude determina que son relevantes para su prompt.198 Las reglas se cargan en contexto cada sesión o cuando se abren archivos coincidentes. Para instrucciones específicas de tareas que no necesitan estar en contexto todo el tiempo, use [skills](/docs/es/skills) en su lugar, que solo se cargan cuando las invoca o cuando Claude determina que son relevantes para su prompt.

199</Note>199</Note>

200 200 

201<h4 id="set-up-rules">201<h4 id="set-up-rules">


306 </Step>306 </Step>

307 307 

308 <Step title="Implementar con su sistema de gestión de configuración">308 <Step title="Implementar con su sistema de gestión de configuración">

309 Use MDM, Group Policy, Ansible o herramientas similares para distribuir el archivo en máquinas de desarrolladores. Consulte [configuración gestionada](/es/permissions#managed-settings) para otras opciones de configuración de toda la organización.309 Use MDM, Group Policy, Ansible o herramientas similares para distribuir el archivo en máquinas de desarrolladores. Consulte [configuración gestionada](/docs/es/permissions#managed-settings) para otras opciones de configuración de toda la organización.

310 </Step>310 </Step>

311</Steps>311</Steps>

312 312 


326}326}

327```327```

328 328 

329Un CLAUDE.md gestionado y [configuración gestionada](/es/settings#settings-files) sirven para propósitos diferentes. Use configuración para aplicación técnica y CLAUDE.md para orientación conductual:329Un CLAUDE.md gestionado y [configuración gestionada](/docs/es/settings#settings-files) sirven para propósitos diferentes. Use configuración para aplicación técnica y CLAUDE.md para orientación conductual:

330 330 

331| Preocupación | Configurar en |331| Preocupación | Configurar en |

332| :------------------------------------------------------------- | :---------------------------------------------------------------- |332| :------------------------------------------------------------- | :---------------------------------------------------------------- |


357}357}

358```358```

359 359 

360Los patrones se comparan contra rutas de archivo absolutas usando sintaxis glob. Puede configurar `claudeMdExcludes` en cualquier [capa de configuración](/es/settings#settings-files): usuario, proyecto, local o política gestionada. Los arrays se fusionan entre capas.360Los patrones se comparan contra rutas de archivo absolutas usando sintaxis glob. Puede configurar `claudeMdExcludes` en cualquier [capa de configuración](/docs/es/settings#settings-files): usuario, proyecto, local o política gestionada. Los arrays se fusionan entre capas.

361 361 

362Los archivos CLAUDE.md de política gestionada no pueden ser excluidos. Esto asegura que las instrucciones de toda la organización siempre se apliquen independientemente de la configuración individual.362Los archivos CLAUDE.md de política gestionada no pueden ser excluidos. Esto asegura que las instrucciones de toda la organización siempre se apliquen independientemente de la configuración individual.

363 363 


387 387 

388Cada proyecto obtiene su propio directorio de memoria en `~/.claude/projects/<project>/memory/`. La ruta `<project>` se deriva del repositorio git, por lo que todos los worktrees y subdirectorios dentro del mismo repositorio comparten un directorio de auto memory. Fuera de un repositorio git, se usa la raíz del proyecto en su lugar.388Cada proyecto obtiene su propio directorio de memoria en `~/.claude/projects/<project>/memory/`. La ruta `<project>` se deriva del repositorio git, por lo que todos los worktrees y subdirectorios dentro del mismo repositorio comparten un directorio de auto memory. Fuera de un repositorio git, se usa la raíz del proyecto en su lugar.

389 389 

390Para almacenar auto memory en una ubicación diferente, establezca `autoMemoryDirectory` en su `settings.json`. Se lee desde cualquier [ámbito de configuración](/es/settings#settings-precedence): usuario, proyecto, local, política, o `--settings`.390Para almacenar auto memory en una ubicación diferente, establezca `autoMemoryDirectory` en su `settings.json`. Se lee desde cualquier [ámbito de configuración](/docs/es/settings#settings-precedence): usuario, proyecto, local, política, o `--settings`.

391 391 

392```json theme={null}392```json theme={null}

393{393{


456* Haga instrucciones más específicas. "Usar indentación de 2 espacios" funciona mejor que "formatear código bien".456* Haga instrucciones más específicas. "Usar indentación de 2 espacios" funciona mejor que "formatear código bien".

457* Busque instrucciones conflictivas en archivos CLAUDE.md. Si dos archivos dan orientación diferente para el mismo comportamiento, Claude puede elegir uno arbitrariamente.457* Busque instrucciones conflictivas en archivos CLAUDE.md. Si dos archivos dan orientación diferente para el mismo comportamiento, Claude puede elegir uno arbitrariamente.

458 458 

459Si la instrucción es algo que debe ejecutarse en un punto específico, como antes de cada commit o después de cada edición de archivo, escríbala como un [hook](/es/hooks-guide) en su lugar. Los hooks se ejecutan como comandos de shell en eventos de ciclo de vida fijos y se aplican independientemente de lo que Claude decida hacer.459Si la instrucción es algo que debe ejecutarse en un punto específico, como antes de cada commit o después de cada edición de archivo, escríbala como un [hook](/docs/es/hooks-guide) en su lugar. Los hooks se ejecutan como comandos de shell en eventos de ciclo de vida fijos y se aplican independientemente de lo que Claude decida hacer.

460 460 

461Para instrucciones que desea a nivel de prompt del sistema, use [`--append-system-prompt`](/es/cli-reference#system-prompt-flags). Esto debe pasarse en cada invocación, por lo que es más adecuado para scripts y automatización que para uso interactivo.461Para instrucciones que desea a nivel de prompt del sistema, use [`--append-system-prompt`](/docs/es/cli-reference#system-prompt-flags). Esto debe pasarse en cada invocación, por lo que es más adecuado para scripts y automatización que para uso interactivo.

462 462 

463<Tip>463<Tip>

464 Use el hook [`InstructionsLoaded`](/es/hooks#instructionsloaded) para registrar exactamente qué archivos de instrucciones se cargan, cuándo se cargan y por qué. Esto es útil para depurar reglas específicas de ruta o archivos cargados perezosamente en subdirectorios.464 Use el hook [`InstructionsLoaded`](/docs/es/hooks#instructionsloaded) para registrar exactamente qué archivos de instrucciones se cargan, cuándo se cargan y por qué. Esto es útil para depurar reglas específicas de ruta o archivos cargados perezosamente en subdirectorios.

465</Tip>465</Tip>

466 466 

467<h3 id="i-don’t-know-what-auto-memory-saved">467<h3 id="i-don’t-know-what-auto-memory-saved">


476 476 

477Los archivos de más de 200 líneas consumen más contexto y pueden reducir la adherencia. Use [reglas con alcance de ruta](#path-specific-rules) para cargar instrucciones solo cuando Claude trabaja con archivos coincidentes, o recorte contenido que no sea necesario en cada sesión. Dividir en [importaciones `@path`](#import-additional-files) ayuda a la organización pero no reduce el contexto, ya que los archivos importados se cargan al iniciar.477Los archivos de más de 200 líneas consumen más contexto y pueden reducir la adherencia. Use [reglas con alcance de ruta](#path-specific-rules) para cargar instrucciones solo cuando Claude trabaja con archivos coincidentes, o recorte contenido que no sea necesario en cada sesión. Dividir en [importaciones `@path`](#import-additional-files) ayuda a la organización pero no reduce el contexto, ya que los archivos importados se cargan al iniciar.

478 478 

479{/* min-version: 2.1.206 */}La revisión [`/doctor`](/es/commands#all-commands) propone recortes para un CLAUDE.md registrado: elimina contenido que Claude puede derivar de la base de código, como diseños de directorios, listas de dependencias y descripción general de la arquitectura, y mantiene trampas, justificación y convenciones que difieren de los valores predeterminados de las herramientas. La verificación de recorte requiere Claude Code v2.1.206 o posterior.479La revisión [`/doctor`](/docs/es/commands#all-commands) propone recortes para un CLAUDE.md registrado: elimina contenido que Claude puede derivar de la base de código, como diseños de directorios, listas de dependencias y descripción general de la arquitectura, y mantiene trampas, justificación y convenciones que difieren de los valores predeterminados de las herramientas. La verificación de recorte requiere Claude Code v2.1.206 o posterior.

480 480 

481<h3 id="instructions-seem-lost-after-/compact">481<h3 id="instructions-seem-lost-after-/compact">

482 Las instrucciones parecen perdidas después de `/compact`482 Las instrucciones parecen perdidas después de `/compact`


484 484 

485CLAUDE.md de raíz de proyecto sobrevive a la compactación: después de `/compact`, Claude vuelve a leer desde el disco e lo reinyecta en la sesión. Los archivos CLAUDE.md anidados en subdirectorios no se reinyectan automáticamente; se recargan la próxima vez que Claude lee un archivo en ese subdirectorio.485CLAUDE.md de raíz de proyecto sobrevive a la compactación: después de `/compact`, Claude vuelve a leer desde el disco e lo reinyecta en la sesión. Los archivos CLAUDE.md anidados en subdirectorios no se reinyectan automáticamente; se recargan la próxima vez que Claude lee un archivo en ese subdirectorio.

486 486 

487Si una instrucción desapareció después de la compactación, se dio solo en la conversación o vive en un CLAUDE.md anidado que aún no se ha recargado. Agregue instrucciones solo de conversación a CLAUDE.md para que persistan. Consulte [Qué sobrevive a la compactación](/es/context-window#what-survives-compaction) para el desglose completo.487Si una instrucción desapareció después de la compactación, se dio solo en la conversación o vive en un CLAUDE.md anidado que aún no se ha recargado. Agregue instrucciones solo de conversación a CLAUDE.md para que persistan. Consulte [Qué sobrevive a la compactación](/docs/es/context-window#what-survives-compaction) para el desglose completo.

488 488 

489Consulte [Escriba instrucciones efectivas](#write-effective-instructions) para obtener orientación sobre tamaño, estructura y especificidad.489Consulte [Escriba instrucciones efectivas](#write-effective-instructions) para obtener orientación sobre tamaño, estructura y especificidad.

490 490 


492 Recursos relacionados492 Recursos relacionados

493</h2>493</h2>

494 494 

495* [Depurar su configuración](/es/debug-your-config): diagnosticar por qué CLAUDE.md o configuración no están surtiendo efecto495* [Depurar su configuración](/docs/es/debug-your-config): diagnosticar por qué CLAUDE.md o configuración no están surtiendo efecto

496* [Skills](/es/skills): empaquetar flujos de trabajo repetibles que se cargan bajo demanda496* [Skills](/docs/es/skills): empaquetar flujos de trabajo repetibles que se cargan bajo demanda

497* [Settings](/es/settings): configurar el comportamiento de Claude Code con archivos de configuración497* [Settings](/docs/es/settings): configurar el comportamiento de Claude Code con archivos de configuración

498* [Subagent memory](/es/sub-agents#enable-persistent-memory): permitir que los subagents mantengan su propia auto memory498* [Subagent memory](/docs/es/sub-agents#enable-persistent-memory): permitir que los subagents mantengan su propia auto memory

Details

139 139 

140**Opción C: Autenticación por token portador**140**Opción C: Autenticación por token portador**

141 141 

142{/* min-version: 2.1.203 */}Claude Code envía el valor de `ANTHROPIC_FOUNDRY_AUTH_TOKEN` en cada solicitud como el encabezado `Authorization: Bearer`. Use esta opción cuando otro proceso, como una aplicación host o un script de inicio de sesión, ya haya obtenido un token de acceso para usted. Requiere Claude Code v2.1.203 o posterior.142Claude Code envía el valor de `ANTHROPIC_FOUNDRY_AUTH_TOKEN` en cada solicitud como el encabezado `Authorization: Bearer`. Use esta opción cuando otro proceso, como una aplicación host o un script de inicio de sesión, ya haya obtenido un token de acceso para usted. Requiere Claude Code v2.1.203 o posterior.

143 143 

144Establezca la variable en un token portador que Microsoft Entra ID emitió para su recurso:144Establezca la variable en un token portador que Microsoft Entra ID emitió para su recurso:

145 145 


189 189 

190Las tareas en segundo plano, como la generación de títulos de sesión, utilizan el modelo pequeño/rápido, normalmente un modelo de clase Haiku. En Microsoft Foundry, Claude Code establece por defecto esto al modelo principal porque no todas las cuentas tienen una implementación de Haiku. Para usar Haiku para tareas en segundo plano, establezca `ANTHROPIC_DEFAULT_HAIKU_MODEL` en una implementación de Haiku que esté disponible en su cuenta, como se muestra arriba.190Las tareas en segundo plano, como la generación de títulos de sesión, utilizan el modelo pequeño/rápido, normalmente un modelo de clase Haiku. En Microsoft Foundry, Claude Code establece por defecto esto al modelo principal porque no todas las cuentas tienen una implementación de Haiku. Para usar Haiku para tareas en segundo plano, establezca `ANTHROPIC_DEFAULT_HAIKU_MODEL` en una implementación de Haiku que esté disponible en su cuenta, como se muestra arriba.

191 191 

192Para los ID de modelos actuales y heredados, consulte [Descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Consulte [Configuración de modelo](/es/model-config#pin-models-for-third-party-deployments) para la lista completa de variables de entorno.192Para los ID de modelos actuales y heredados, consulte [Descripción general de modelos](https://platform.claude.com/docs/en/about-claude/models/overview). Consulte [Configuración de modelo](/docs/es/model-config#pin-models-for-third-party-deployments) para la lista completa de variables de entorno.

193 193 

194[Prompt caching](/es/prompt-caching) está habilitado automáticamente. Para solicitar un TTL de caché de 1 hora en lugar del predeterminado de 5 minutos, establezca la siguiente variable; las escrituras de caché con un TTL de 1 hora se facturan a una tasa más alta:194[Prompt caching](/docs/es/prompt-caching) está habilitado automáticamente. Para solicitar un TTL de caché de 1 hora en lugar del predeterminado de 5 minutos, establezca la siguiente variable; las escrituras de caché con un TTL de 1 hora se facturan a una tasa más alta:

195 195 

196```bash theme={null}196```bash theme={null}

197export ENABLE_PROMPT_CACHING_1H=1197export ENABLE_PROMPT_CACHING_1H=1

model-config.md +72 −76

Details

22Para obtener orientación sobre qué modelo y nivel de esfuerzo se ajustan a diferentes tipos de trabajo, consulte [Choosing a Claude model and effort level in Claude Code](https://claude.com/blog/claude-model-and-effort-level-in-claude-code) en el blog.22Para obtener orientación sobre qué modelo y nivel de esfuerzo se ajustan a diferentes tipos de trabajo, consulte [Choosing a Claude model and effort level in Claude Code](https://claude.com/blog/claude-model-and-effort-level-in-claude-code) en el blog.

23 23 

24<Note>24<Note>

25 `ANTHROPIC_BASE_URL` cambia dónde se envían las solicitudes, no qué modelo las responde. Para enrutar Claude a través de una puerta de enlace LLM, consulte [puertas de enlace LLM](/es/llm-gateway).25 `ANTHROPIC_BASE_URL` cambia dónde se envían las solicitudes, no qué modelo las responde. Para enrutar Claude a través de una puerta de enlace LLM, consulte [puertas de enlace LLM](/docs/es/llm-gateway).

26</Note>26</Note>

27 27 

28<h3 id="model-aliases">28<h3 id="model-aliases">


39| **`sonnet`** | Utiliza el último modelo Sonnet para tareas de codificación diaria |39| **`sonnet`** | Utiliza el último modelo Sonnet para tareas de codificación diaria |

40| **`opus`** | Utiliza el último modelo Opus para tareas de razonamiento complejo |40| **`opus`** | Utiliza el último modelo Opus para tareas de razonamiento complejo |

41| **`haiku`** | Utiliza el modelo Haiku rápido y eficiente para tareas simples |41| **`haiku`** | Utiliza el modelo Haiku rápido y eficiente para tareas simples |

42| **`sonnet[1m]`** | Utiliza Sonnet con una [ventana de contexto de 1 millón de tokens](https://platform.claude.com/docs/es/build-with-claude/context-windows#context-window-sizes-by-model) para sesiones largas. Sin efecto cuando `sonnet` ya se resuelve a Sonnet 5 con su ventana nativa de 1M; detrás de una [puerta de enlace LLM](/es/llm-gateway), selecciona la ventana de 1M para Sonnet 5 |42| **`sonnet[1m]`** | Utiliza Sonnet con una [ventana de contexto de 1 millón de tokens](https://platform.claude.com/docs/es/build-with-claude/context-windows#context-window-sizes-by-model) para sesiones largas. Sin efecto cuando `sonnet` ya se resuelve a Sonnet 5 con su ventana nativa de 1M; detrás de una [puerta de enlace LLM](/docs/es/llm-gateway), selecciona la ventana de 1M para Sonnet 5 |

43| **`opus[1m]`** | Utiliza Opus con una [ventana de contexto de 1 millón de tokens](https://platform.claude.com/docs/es/build-with-claude/context-windows#context-window-sizes-by-model) para sesiones largas |43| **`opus[1m]`** | Utiliza Opus con una [ventana de contexto de 1 millón de tokens](https://platform.claude.com/docs/es/build-with-claude/context-windows#context-window-sizes-by-model) para sesiones largas |

44| **`opusplan`** | Modo especial que utiliza `opus` durante Plan Mode, luego cambia a `sonnet` para la ejecución |44| **`opusplan`** | Modo especial que utiliza `opus` durante Plan Mode, luego cambia a `sonnet` para la ejecución |

45 45 


48| Proveedor | `opus` | `sonnet` |48| Proveedor | `opus` | `sonnet` |

49| :---------------------------------------------------- | :------- | :--------- |49| :---------------------------------------------------- | :------- | :--------- |

50| API de Anthropic | Opus 4.8 | Sonnet 5 |50| API de Anthropic | Opus 4.8 | Sonnet 5 |

51| [Claude Platform on AWS](/es/claude-platform-on-aws) | Opus 4.8 | Sonnet 4.6 |51| [Claude Platform on AWS](/docs/es/claude-platform-on-aws) | Opus 4.8 | Sonnet 4.6 |

52| Amazon Bedrock, Plataforma de agentes de Google Cloud | Opus 4.8 | Sonnet 4.5 |52| Amazon Bedrock, Plataforma de agentes de Google Cloud | Opus 4.8 | Sonnet 4.5 |

53| Microsoft Foundry | Opus 4.6 | Sonnet 4.5 |53| Microsoft Foundry | Opus 4.6 | Sonnet 4.5 |

54 54 

55Donde un alias se resuelve a un modelo más antiguo, hay modelos más nuevos disponibles seleccionando explícitamente el nombre de modelo completo o estableciendo `ANTHROPIC_DEFAULT_OPUS_MODEL` o `ANTHROPIC_DEFAULT_SONNET_MODEL`.55Donde un alias se resuelve a un modelo más antiguo, hay modelos más nuevos disponibles seleccionando explícitamente el nombre de modelo completo o estableciendo `ANTHROPIC_DEFAULT_OPUS_MODEL` o `ANTHROPIC_DEFAULT_SONNET_MODEL`.

56 56 

57{/* min-version: 2.1.207 */}Antes de v2.1.207, `opus` se resolvía a Opus 4.7 en Claude Platform on AWS y a Opus 4.6 en Amazon Bedrock y Plataforma de agentes de Google Cloud.57Antes de v2.1.207, `opus` se resolvía a Opus 4.7 en Claude Platform on AWS y a Opus 4.6 en Amazon Bedrock y Plataforma de agentes de Google Cloud.

58 58 

59Los alias apuntan a la versión recomendada para su proveedor y se actualizan con el tiempo. Para fijar una versión específica, utilice el nombre de modelo completo, por ejemplo `claude-opus-4-8`, o establezca la variable de entorno correspondiente como `ANTHROPIC_DEFAULT_OPUS_MODEL`.59Los alias apuntan a la versión recomendada para su proveedor y se actualizan con el tiempo. Para fijar una versión específica, utilice el nombre de modelo completo, por ejemplo `claude-opus-4-8`, o establezca la variable de entorno correspondiente como `ANTHROPIC_DEFAULT_OPUS_MODEL`.

60 60 


72 72 

73Para aprovechar al máximo Fable 5:73Para aprovechar al máximo Fable 5:

74 74 

75* **Describa el resultado, no los pasos**: entrégale el resultado que desea y déjelo planificar el camino. Para mantenerlo funcionando hasta que ese resultado se cumpla, [establezca un objetivo](/es/goal).75* **Describa el resultado, no los pasos**: entrégale el resultado que desea y déjelo planificar el camino. Para mantenerlo funcionando hasta que ese resultado se cumpla, [establezca un objetivo](/docs/es/goal).

76* **Entrégale problemas ambiguos**: las investigaciones de causa raíz, la depuración de interrupciones y las decisiones de arquitectura son donde la investigación y verificación adicionales se rentabilizan.76* **Entrégale problemas ambiguos**: las investigaciones de causa raíz, la depuración de interrupciones y las decisiones de arquitectura son donde la investigación y verificación adicionales se rentabilizan.

77* **Omita los recordatorios de verificación**: verifica su propio trabajo con menos indicaciones, por lo que los recordatorios para probar o verificar generalmente son innecesarios.77* **Omita los recordatorios de verificación**: verifica su propio trabajo con menos indicaciones, por lo que los recordatorios para probar o verificar generalmente son innecesarios.

78* **Dimensione tareas más grandes**: entrégale trabajo que normalmente dividiría en partes. Mantiene sesiones largas sin perder el hilo.78* **Dimensione tareas más grandes**: entrégale trabajo que normalmente dividiría en partes. Mantiene sesiones largas sin perder el hilo.

79 79 

80<Note>80<Note>

81 Fable 5 requiere Claude Code v2.1.170 o posterior. Las versiones anteriores no muestran Fable 5 en el selector de modelo y no pueden seleccionarlo. Ejecute `claude update` para actualizar. Fable 5 no está disponible bajo [retención de datos cero](/es/zero-data-retention), donde el selector `/model` lo omite o lo muestra deshabilitado.81 Fable 5 requiere Claude Code v2.1.170 o posterior. Las versiones anteriores no muestran Fable 5 en el selector de modelo y no pueden seleccionarlo. Ejecute `claude update` para actualizar. Fable 5 no está disponible bajo [retención de datos cero](/docs/es/zero-data-retention), donde el selector `/model` lo omite o lo muestra deshabilitado.

82</Note>82</Note>

83 83 

84<h3 id="setting-your-model">84<h3 id="setting-your-model">


97* `Enter`: cambiar modelo y guardar como predeterminado97* `Enter`: cambiar modelo y guardar como predeterminado

98* `s`: cambiar modelo solo para esta sesión98* `s`: cambiar modelo solo para esta sesión

99 99 

100Escribir `/model <name>` directamente se comporta como `Enter`. {/* min-version: 2.1.205 */}Un modelo establecido con `/model` en [modo no interactivo](/es/headless), con la bandera `-p`, se aplica solo a la sesión actual y no se guarda como su predeterminado. La configuración del proyecto y administrada aún tiene prioridad y se reaplicará en el siguiente lanzamiento. {/* min-version: 2.1.196 */}Un [modelo predeterminado de la organización](#organization-default-model) que su administrador ha configurado para anular la selección del usuario también se reaplicará en el siguiente lanzamiento.100Escribir `/model <name>` directamente se comporta como `Enter`. Un modelo establecido con `/model` en [modo no interactivo](/docs/es/headless), con la bandera `-p`, se aplica solo a la sesión actual y no se guarda como su predeterminado. La configuración del proyecto y administrada aún tiene prioridad y se reaplicará en el siguiente lanzamiento. Un [modelo predeterminado de la organización](#organization-default-model) que su administrador ha configurado para anular la selección del usuario también se reaplicará en el siguiente lanzamiento.

101 101 

102En v2.1.144 a v2.1.152, `/model` se aplicaba solo a la sesión actual y `d` en el selector guardaba un predeterminado.102En v2.1.144 a v2.1.152, `/model` se aplicaba solo a la sesión actual y `d` en el selector guardaba un predeterminado.

103 103 

104La bandera `--model` y la variable de entorno `ANTHROPIC_MODEL` se aplican solo a la sesión que inicia con ellas. Para ejecutar diferentes modelos en diferentes terminales al mismo tiempo, inicie cada uno con su propia bandera `--model` en lugar de cambiar con `/model`.104La bandera `--model` y la variable de entorno `ANTHROPIC_MODEL` se aplican solo a la sesión que inicia con ellas. Para ejecutar diferentes modelos en diferentes terminales al mismo tiempo, inicie cada uno con su propia bandera `--model` en lugar de cambiar con `/model`.

105 105 

106Los precios en el selector `/model` aparecen cuando Claude Code se comunica con la API de Anthropic, directamente o a través de una [puerta de enlace LLM](/es/llm-gateway) que la proxifica, y el precio en una fila es el precio del modelo que esa fila selecciona. En [proveedores de terceros](/es/third-party-integrations) como Amazon Bedrock y en la [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway), su proveedor o puerta de enlace determina lo que paga, por lo que las filas del selector no muestran precio. El precio es solo una etiqueta de visualización; no afecta qué modelo selecciona una fila o qué factura su proveedor. Antes de v2.1.206, [Claude Platform on AWS](/es/claude-platform-on-aws) y las sesiones de puerta de enlace mostraban precios de lista de Anthropic, y una fila podría mostrar el precio de un modelo diferente al que seleccionaba.106Los precios en el selector `/model` aparecen cuando Claude Code se comunica con la API de Anthropic, directamente o a través de una [puerta de enlace LLM](/docs/es/llm-gateway) que la proxifica, y el precio en una fila es el precio del modelo que esa fila selecciona. En [proveedores de terceros](/docs/es/third-party-integrations) como Amazon Bedrock y en la [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway), su proveedor o puerta de enlace determina lo que paga, por lo que las filas del selector no muestran precio. El precio es solo una etiqueta de visualización; no afecta qué modelo selecciona una fila o qué factura su proveedor. Antes de v2.1.206, [Claude Platform on AWS](/docs/es/claude-platform-on-aws) y las sesiones de puerta de enlace mostraban precios de lista de Anthropic, y una fila podría mostrar el precio de un modelo diferente al que seleccionaba.

107 107 

108Las sesiones reanudadas iniciadas con `claude --resume`, `--continue`, o el selector `/resume` mantienen el modelo que estaban usando cuando se guardó la transcripción, independientemente de la configuración actual de `model`. Si ese modelo ha sido retirado o es excluido por [`availableModels`](#restrict-model-selection), la sesión cae en el orden de precedencia normal. Esto evita que la selección de `/model` de otra sesión cambie el modelo al reanudar.108Las sesiones reanudadas iniciadas con `claude --resume`, `--continue`, o el selector `/resume` mantienen el modelo que estaban usando cuando se guardó la transcripción, independientemente de la configuración actual de `model`. Si ese modelo ha sido retirado o es excluido por [`availableModels`](#restrict-model-selection), la sesión cae en el orden de precedencia normal. Esto evita que la selección de `/model` de otra sesión cambie el modelo al reanudar.

109 109 

110Un modelo que elige para el nuevo lanzamiento con `--model` o `ANTHROPIC_MODEL` aún tiene prioridad sobre el modelo restaurado. {/* min-version: 2.1.195 */}A partir de v2.1.195, también lo hace una variable de familia [`ANTHROPIC_DEFAULT_OPUS_MODEL`](#environment-variables).110Un modelo que elige para el nuevo lanzamiento con `--model` o `ANTHROPIC_MODEL` aún tiene prioridad sobre el modelo restaurado. A partir de v2.1.195, también lo hace una variable de familia [`ANTHROPIC_DEFAULT_OPUS_MODEL`](#environment-variables).

111 111 

112Cuando el modelo activo al inicio proviene de la configuración del proyecto o administrada en lugar de su propia selección, el encabezado de inicio muestra qué archivo de configuración lo estableció. Ejecute `/model` para anular; la configuración del proyecto o administrada se reaplicará en el siguiente lanzamiento.112Cuando el modelo activo al inicio proviene de la configuración del proyecto o administrada en lugar de su propia selección, el encabezado de inicio muestra qué archivo de configuración lo estableció. Ejecute `/model` para anular; la configuración del proyecto o administrada se reaplicará en el siguiente lanzamiento.

113 113 

114Cuando se solicita un cambio de modelo a través del método `setModel()` del [Agent SDK](/es/agent-sdk/overview) o por una aplicación como la [aplicación de escritorio](/es/desktop) que ejecuta Claude Code CLI para usted, Claude Code verifica que la cadena sea una que reconozca antes de guardarla. Esta verificación requiere Claude Code v2.1.200 o posterior. En la API de Anthropic, Claude Code reconoce:114Cuando se solicita un cambio de modelo a través del método `setModel()` del [Agent SDK](/docs/es/agent-sdk/overview) o por una aplicación como la [aplicación de escritorio](/docs/es/desktop) que ejecuta Claude Code CLI para usted, Claude Code verifica que la cadena sea una que reconozca antes de guardarla. Esta verificación requiere Claude Code v2.1.200 o posterior. En la API de Anthropic, Claude Code reconoce:

115 115 

116* un alias de modelo116* un alias de modelo

117* una entrada del selector `/model`117* una entrada del selector `/model`

118* cualquier nombre que comience con `claude-`118* cualquier nombre que comience con `claude-`

119* un valor que configuró usted mismo como una [opción de modelo personalizado](#add-a-custom-model-option) o en [`modelOverrides`](#override-model-ids-per-version)119* un valor que configuró usted mismo como una [opción de modelo personalizado](#add-a-custom-model-option) o en [`modelOverrides`](#override-model-ids-per-version)

120 120 

121Claude Code rechaza una cadena no reconocida con `Model "<name>" is not a recognized model id.` y la sesión mantiene su modelo actual, en lugar de guardar la cadena y fallar en la siguiente solicitud. Consulte [la referencia de errores](/es/errors#model-is-not-a-recognized-model-id) para pasos de recuperación.121Claude Code rechaza una cadena no reconocida con `Model "<name>" is not a recognized model id.` y la sesión mantiene su modelo actual, en lugar de guardar la cadena y fallar en la siguiente solicitud. Consulte [la referencia de errores](/docs/es/errors#model-is-not-a-recognized-model-id) para pasos de recuperación.

122 122 

123La verificación se ejecuta solo en la API de Anthropic. En Amazon Bedrock, Plataforma de agentes de Google Cloud, Microsoft Foundry, [Claude Platform on AWS](/es/claude-platform-on-aws), y detrás de una [puerta de enlace LLM](/es/llm-gateway) o un `ANTHROPIC_BASE_URL` personalizado, su proveedor o puerta de enlace define los nombres de modelo, por lo que Claude Code pasa cualquier cadena sin verificarla. La verificación tampoco cubre la bandera `--model`, la variable de entorno `ANTHROPIC_MODEL`, o la configuración `model`; un valor mal escrito allí produce [There's an issue with the selected model](/es/errors#theres-an-issue-with-the-selected-model) en la primera solicitud en su lugar.123La verificación se ejecuta solo en la API de Anthropic. En Amazon Bedrock, Plataforma de agentes de Google Cloud, Microsoft Foundry, [Claude Platform on AWS](/docs/es/claude-platform-on-aws), y detrás de una [puerta de enlace LLM](/docs/es/llm-gateway) o un `ANTHROPIC_BASE_URL` personalizado, su proveedor o puerta de enlace define los nombres de modelo, por lo que Claude Code pasa cualquier cadena sin verificarla. La verificación tampoco cubre la bandera `--model`, la variable de entorno `ANTHROPIC_MODEL`, o la configuración `model`; un valor mal escrito allí produce [There's an issue with the selected model](/docs/es/errors#theres-an-issue-with-the-selected-model) en la primera solicitud en su lugar.

124 124 

125Cuando el modelo solicitado tiene una fecha de retiro programada o se remapea automáticamente a una versión más nueva, Claude Code muestra una advertencia que nombra el modelo solicitado. Las sesiones interactivas la muestran como un aviso de inicio. A partir de v2.1.182, la misma advertencia se escribe en stderr en [modo no interactivo](/es/headless) cuando se utiliza el formato de salida de texto predeterminado. La verificación también cubre un `model` establecido en [frontmatter de subagentos](/es/sub-agents). La advertencia de stderr se suprime para `--output-format json` y `stream-json`; lea el modelo real desde el campo `modelUsage` del [mensaje de resultado](/es/headless#get-structured-output) en su lugar.125Cuando el modelo solicitado tiene una fecha de retiro programada o se remapea automáticamente a una versión más nueva, Claude Code muestra una advertencia que nombra el modelo solicitado. Las sesiones interactivas la muestran como un aviso de inicio. A partir de v2.1.182, la misma advertencia se escribe en stderr en [modo no interactivo](/docs/es/headless) cuando se utiliza el formato de salida de texto predeterminado. La verificación también cubre un `model` establecido en [frontmatter de subagentos](/docs/es/sub-agents). La advertencia de stderr se suprime para `--output-format json` y `stream-json`; lea el modelo real desde el campo `modelUsage` del [mensaje de resultado](/docs/es/headless#get-structured-output) en su lugar.

126 126 

127Ejemplo de uso:127Ejemplo de uso:

128 128 


149 Restringir la selección de modelo149 Restringir la selección de modelo

150</h2>150</h2>

151 151 

152Los administradores empresariales pueden utilizar `availableModels` en [configuración administrada o de política](/es/settings#settings-files) para restringir qué modelos pueden seleccionar los usuarios. Las entradas coinciden con una familia de modelos como `sonnet`, un prefijo de versión como `claude-sonnet-4-5`, o un ID de modelo completo como `claude-sonnet-4-5-20250929`.152Los administradores empresariales pueden utilizar `availableModels` en [configuración administrada o de política](/docs/es/settings#settings-files) para restringir qué modelos pueden seleccionar los usuarios. Las entradas coinciden con una familia de modelos como `sonnet`, un prefijo de versión como `claude-sonnet-4-5`, o un ID de modelo completo como `claude-sonnet-4-5-20250929`.

153 153 

154Cuando se establece `availableModels`, la lista de permitidos se aplica en todas partes donde un usuario puede especificar un modelo:154Cuando se establece `availableModels`, la lista de permitidos se aplica en todas partes donde un usuario puede especificar un modelo:

155 155 

156* **Modelo de sesión principal**: `/model`, la bandera `--model`, la variable de entorno `ANTHROPIC_MODEL`, la configuración `model`, y el modelo restaurado cuando [se reanuda una sesión](#setting-your-model)156* **Modelo de sesión principal**: `/model`, la bandera `--model`, la variable de entorno `ANTHROPIC_MODEL`, la configuración `model`, y el modelo restaurado cuando [se reanuda una sesión](#setting-your-model)

157* **Resolución de alias**: {/* min-version: 2.1.176 */}las variables de entorno `ANTHROPIC_DEFAULT_OPUS_MODEL`, `ANTHROPIC_DEFAULT_SONNET_MODEL`, `ANTHROPIC_DEFAULT_HAIKU_MODEL`, y `ANTHROPIC_DEFAULT_FABLE_MODEL` no pueden redirigir un alias permitido a un modelo fuera de la lista157* **Resolución de alias**: las variables de entorno `ANTHROPIC_DEFAULT_OPUS_MODEL`, `ANTHROPIC_DEFAULT_SONNET_MODEL`, `ANTHROPIC_DEFAULT_HAIKU_MODEL`, y `ANTHROPIC_DEFAULT_FABLE_MODEL` no pueden redirigir un alias permitido a un modelo fuera de la lista

158* **Modo rápido**: {/* min-version: 2.1.176 */}`/fast` se niega a cambiar cuando cambiaría implícitamente a un modelo Opus fuera de la lista, con el mensaje "no está en los modelos permitidos de su organización"158* **Modo rápido**: `/fast` se niega a cambiar cuando cambiaría implícitamente a un modelo Opus fuera de la lista, con el mensaje "no está en los modelos permitidos de su organización"

159* **Modelos de subagentes**: el campo `model` en [frontmatter de subagente](/es/sub-agents#choose-a-model), el parámetro `model` de la herramienta Agent, `CLAUDE_CODE_SUBAGENT_MODEL`, y, en v2.1.197 y anterior, el selector de modelo en el asistente `/agents` {/* max-version: 2.1.197 */}159* **Modelos de subagentes**: el campo `model` en [frontmatter de subagente](/docs/es/sub-agents#choose-a-model), el parámetro `model` de la herramienta Agent, `CLAUDE_CODE_SUBAGENT_MODEL`, y, en v2.1.197 y anterior, el selector de modelo en el asistente `/agents`&#x20;

160* **Modelo de habilidad y comando**: el frontmatter `model` en [habilidades y comandos](/es/skills)160* **Modelo de habilidad y comando**: el frontmatter `model` en [habilidades y comandos](/docs/es/skills)

161* **Modelo de asesor**: la configuración [`advisorModel`](/es/advisor) configurada y la bandera `--advisor`161* **Modelo de asesor**: la configuración [`advisorModel`](/docs/es/advisor) configurada y la bandera `--advisor`

162* **Modelo de agente de fondo**: el modelo seleccionado en el [selector de envío](/es/agent-view)162* **Modelo de agente de fondo**: el modelo seleccionado en el [selector de envío](/docs/es/agent-view)

163 163 

164En la API de Anthropic y [Claude Platform en AWS](/es/claude-platform-on-aws), un alias de familia de modelos, `opus`, `sonnet`, `haiku`, o `fable`, se resuelve a la versión más reciente de su familia que la lista de permitidos permite. Cuando la lista de permitidos fija versiones específicas, por ejemplo `["sonnet", "claude-opus-4-6"]`, tanto `/model opus` como `--model opus` seleccionan Claude Opus 4.6, el Opus más reciente permitido, y muestran un aviso que nombra tanto los modelos solicitados como los sustituidos. Antes de v2.1.205, un alias cuya versión más reciente lanzada estaba fuera de la lista se rechazaba o reemplazaba como cualquier otra selección bloqueada, incluso cuando la lista permitía una versión anterior.164En la API de Anthropic y [Claude Platform en AWS](/docs/es/claude-platform-on-aws), un alias de familia de modelos, `opus`, `sonnet`, `haiku`, o `fable`, se resuelve a la versión más reciente de su familia que la lista de permitidos permite. Cuando la lista de permitidos fija versiones específicas, por ejemplo `["sonnet", "claude-opus-4-6"]`, tanto `/model opus` como `--model opus` seleccionan Claude Opus 4.6, el Opus más reciente permitido, y muestran un aviso que nombra tanto los modelos solicitados como los sustituidos. Antes de v2.1.205, un alias cuya versión más reciente lanzada estaba fuera de la lista se rechazaba o reemplazaba como cualquier otra selección bloqueada, incluso cuando la lista permitía una versión anterior.

165 165 

166Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, y [Mantle](/es/amazon-bedrock#use-the-mantle-endpoint) utilizan IDs de implementación específicos del proveedor en lugar de IDs de modelo de Anthropic, por lo que un alias bloqueado allí sigue el comportamiento de rechazo y reemplazo a continuación.166Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, y [Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint) utilizan IDs de implementación específicos del proveedor en lugar de IDs de modelo de Anthropic, por lo que un alias bloqueado allí sigue el comportamiento de rechazo y reemplazo a continuación.

167 167 

168Claude Code maneja cualquier otra selección bloqueada según dónde se estableció el modelo:168Claude Code maneja cualquier otra selección bloqueada según dónde se estableció el modelo:

169 169 


173* **Configuración `advisorModel`**: el asesor se desactiva para la sesión173* **Configuración `advisorModel`**: el asesor se desactiva para la sesión

174* **Bandera `--advisor`**: Claude Code sale con un error al inicio174* **Bandera `--advisor`**: Claude Code sale con un error al inicio

175 175 

176Los modelos excluidos se ocultan del selector `/model`. {/* min-version: 2.1.199 */}Un ID de modelo completo en la lista que no tiene una fila de selector integrada, como una versión anterior que la lista fija, aparece en el selector `/model` como su propia fila etiquetada. Antes de v2.1.199, ese ID era seleccionable solo escribiendo `/model <id>`.176Los modelos excluidos se ocultan del selector `/model`. Un ID de modelo completo en la lista que no tiene una fila de selector integrada, como una versión anterior que la lista fija, aparece en el selector `/model` como su propia fila etiquetada. Antes de v2.1.199, ese ID era seleccionable solo escribiendo `/model <id>`.

177 177 

178Los cambios de modelo que Claude Code realiza en su nombre se verifican de la misma manera:178Los cambios de modelo que Claude Code realiza en su nombre se verifican de la misma manera:

179 179 

180* **[Cadenas de modelo de reserva](#fallback-model-chains)**: los elementos fuera de la lista de permitidos se descartan180* **[Cadenas de modelo de reserva](#fallback-model-chains)**: los elementos fuera de la lista de permitidos se descartan

181* **Actualizaciones de modo de plan**: en la API de Anthropic y Claude Platform en AWS, una actualización como [`opusplan`](#opusplan-model-setting) a un modelo excluido utiliza la versión más reciente permitida de la familia de actualización. En proveedores con IDs de modelo específicos del proveedor, y cuando no se permite ninguna versión, la actualización se omite y la planificación continúa en el modelo de la sesión181* **Actualizaciones de modo de plan**: en la API de Anthropic y Claude Platform en AWS, una actualización como [`opusplan`](#opusplan-model-setting) a un modelo excluido utiliza la versión más reciente permitida de la familia de actualización. En proveedores con IDs de modelo específicos del proveedor, y cuando no se permite ninguna versión, la actualización se omite y la planificación continúa en el modelo de la sesión

182* **[Fallback automático de modelo](#automatic-model-fallback)**: un fallback cuyo destino está excluido no se ejecuta, por lo que la solicitud marcada termina con un rechazo182* **[Fallback automático de modelo](#automatic-model-fallback)**: un fallback cuyo destino está excluido no se ejecuta, por lo que la solicitud marcada termina con un rechazo

183* **[Modo rápido](/es/fast-mode)**: habilitar el modo rápido se rechaza cuando el modelo en el que se ejecutaría la sesión después está fuera de la lista de permitidos183* **[Modo rápido](/docs/es/fast-mode)**: habilitar el modo rápido se rechaza cuando el modelo en el que se ejecutaría la sesión después está fuera de la lista de permitidos

184 184 

185```json theme={null}185```json theme={null}

186{186{


196 196 

197| Mecanismo de entrega | CLI e IDE | Sesiones locales de escritorio | Sesiones web, móviles y en la nube | Agent SDK y no interactivo | Cowork |197| Mecanismo de entrega | CLI e IDE | Sesiones locales de escritorio | Sesiones web, móviles y en la nube | Agent SDK y no interactivo | Cowork |

198| :-------------------------------------------------------------------------------------------------------- | :-------- | :----------------------------- | :--------------------------------- | :------------------------- | :--------------------------- |198| :-------------------------------------------------------------------------------------------------------- | :-------- | :----------------------------- | :--------------------------------- | :------------------------- | :--------------------------- |

199| [Configuración administrada por servidor](/es/server-managed-settings) desde la consola de administración | Aplicada | Aplicada | Aplicada | Aplicada | No entregada |199| [Configuración administrada por servidor](/docs/es/server-managed-settings) desde la consola de administración | Aplicada | Aplicada | Aplicada | Aplicada | No entregada |

200| [MDM o archivos de configuración administrada](/es/settings#settings-files) | Aplicada | Aplicada | No entregada | Aplicada | Aplicada donde se implementa |200| [MDM o archivos de configuración administrada](/docs/es/settings#settings-files) | Aplicada | Aplicada | No entregada | Aplicada | Aplicada donde se implementa |

201 201 

202* Las sesiones en la nube, en [Claude Code en la web](/es/claude-code-on-the-web) o en la aplicación de escritorio, se ejecutan en máquinas virtuales administradas por Anthropic: la configuración implementada en su dispositivo no las alcanza, por lo que entregue la lista de permitidos a través de configuración administrada por servidor. Un cambio de modelo a mitad de sesión en una sesión en la nube se rechaza cuando el modelo solicitado está excluido por la lista de permitidos. El rechazo del lado del servidor en la creación de sesión se aplica a [restricciones de modelo de organización](#organization-model-restrictions), no a la clave de configuración `availableModels`.202* Las sesiones en la nube, en [Claude Code en la web](/docs/es/claude-code-on-the-web) o en la aplicación de escritorio, se ejecutan en máquinas virtuales administradas por Anthropic: la configuración implementada en su dispositivo no las alcanza, por lo que entregue la lista de permitidos a través de configuración administrada por servidor. Un cambio de modelo a mitad de sesión en una sesión en la nube se rechaza cuando el modelo solicitado está excluido por la lista de permitidos. El rechazo del lado del servidor en la creación de sesión se aplica a [restricciones de modelo de organización](#organization-model-restrictions), no a la clave de configuración `availableModels`.

203* Cowork, la pestaña de trabajo agéntico en la aplicación Claude Desktop, no es una superficie de Claude Code y no recibe configuración administrada por servidor por diseño. Un archivo de configuración administrada se aplica a sesiones de Cowork cuando está presente donde se ejecuta la sesión; las sesiones remotas de Cowork se ejecutan en máquinas virtuales administradas por Anthropic, donde un archivo implementado en el dispositivo no está presente.203* Cowork, la pestaña de trabajo agéntico en la aplicación Claude Desktop, no es una superficie de Claude Code y no recibe configuración administrada por servidor por diseño. Un archivo de configuración administrada se aplica a sesiones de Cowork cuando está presente donde se ejecuta la sesión; las sesiones remotas de Cowork se ejecutan en máquinas virtuales administradas por Anthropic, donde un archivo implementado en el dispositivo no está presente.

204* Las sesiones en [proveedores de terceros](/es/server-managed-settings#platform-availability) como Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, y [Claude Platform en AWS](/es/claude-platform-on-aws) no reciben configuración administrada por servidor, por lo que entregue la lista de permitidos a través de MDM o archivos de configuración administrada allí.204* Las sesiones en [proveedores de terceros](/docs/es/server-managed-settings#platform-availability) como Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, y [Claude Platform en AWS](/docs/es/claude-platform-on-aws) no reciben configuración administrada por servidor, por lo que entregue la lista de permitidos a través de MDM o archivos de configuración administrada allí.

205* La entrega administrada por servidor también requiere que la sesión se autentique con un inicio de sesión de organización o una clave API configurada directamente. Las flotas que generan claves solo a través de un script [`apiKeyHelper`](/es/settings#available-settings) deben entregar la lista de permitidos a través de MDM o archivos de configuración administrada.205* La entrega administrada por servidor también requiere que la sesión se autentique con un inicio de sesión de organización o una clave API configurada directamente. Las flotas que generan claves solo a través de un script [`apiKeyHelper`](/docs/es/settings#available-settings) deben entregar la lista de permitidos a través de MDM o archivos de configuración administrada.

206* La pestaña Código de escritorio también aloja [sesiones SSH](/es/desktop#ssh-sessions), que leen el archivo de configuración administrada del host remoto en el que se ejecutan. Consulte [Configuración administrada de escritorio](/es/desktop#managed-settings).206* La pestaña Código de escritorio también aloja [sesiones SSH](/docs/es/desktop#ssh-sessions), que leen el archivo de configuración administrada del host remoto en el que se ejecutan. Consulte [Configuración administrada de escritorio](/docs/es/desktop#managed-settings).

207* Los selectores de modelo en claude.ai y en la aplicación de escritorio ocultan o atenúan los modelos excluidos por la lista de permitidos de su organización. El estado del selector es una conveniencia para los usuarios; la aplicación ocurre en la sesión.207* Los selectores de modelo en claude.ai y en la aplicación de escritorio ocultan o atenúan los modelos excluidos por la lista de permitidos de su organización. El estado del selector es una conveniencia para los usuarios; la aplicación ocurre en la sesión.

208 208 

209<h3 id="default-model-behavior">209<h3 id="default-model-behavior">


231 231 

232`enforceAvailableModels` no tiene efecto cuando `availableModels` no está establecido o está vacío: con `availableModels: []`, el modelo Predeterminado para el tipo de cuenta permanece utilizable, por lo que la configuración no puede bloquear a los usuarios de cada modelo. Cuando `availableModels` no está vacío pero ninguna entrada se resuelve a un modelo permitido y disponible, la aplicación se degrada y Predeterminado cae al valor predeterminado del tipo de cuenta, con una advertencia visible solo bajo `--debug`. Mantenga al menos una entrada garantizada disponible en la lista para evitar esto.232`enforceAvailableModels` no tiene efecto cuando `availableModels` no está establecido o está vacío: con `availableModels: []`, el modelo Predeterminado para el tipo de cuenta permanece utilizable, por lo que la configuración no puede bloquear a los usuarios de cada modelo. Cuando `availableModels` no está vacío pero ninguna entrada se resuelve a un modelo permitido y disponible, la aplicación se degrada y Predeterminado cae al valor predeterminado del tipo de cuenta, con una advertencia visible solo bajo `--debug`. Mantenga al menos una entrada garantizada disponible en la lista para evitar esto.

233 233 

234Implemente ambas claves en la [fuente administrada de mayor precedencia](/es/settings#settings-precedence): las fuentes administradas implementadas por el administrador no se fusionan, por lo que un par colocado en un archivo de configuración administrada se ignora cuando la consola de administración entrega cualquier configuración.234Implemente ambas claves en la [fuente administrada de mayor precedencia](/docs/es/settings#settings-precedence): las fuentes administradas implementadas por el administrador no se fusionan, por lo que un par colocado en un archivo de configuración administrada se ignora cuando la consola de administración entrega cualquier configuración.

235 235 

236<h3 id="control-the-model-users-run-on">236<h3 id="control-the-model-users-run-on">

237 Controlar el modelo en el que se ejecutan los usuarios237 Controlar el modelo en el que se ejecutan los usuarios


265 Comportamiento de fusión265 Comportamiento de fusión

266</h3>266</h3>

267 267 

268Cuando la [fuente de configuración administrada de mayor precedencia](/es/server-managed-settings#settings-precedence) define `availableModels`, esa lista sola se aplica: las entradas en configuración de usuario, proyecto o local no pueden extenderla, y las fuentes administradas implementadas por el administrador no se fusionan entre sí, por lo que una lista implementada en un archivo de configuración administrada se ignora cuando la configuración administrada por servidor entrega cualquier clave. De lo contrario, las listas de configuración de usuario, proyecto y local se [concatenan y desduplican](/es/settings#settings-precedence) como otras configuraciones de array. {/* min-version: 2.1.175 */}A partir de Claude Code v2.1.175, la lista administrada reemplaza entradas de menor precedencia; las versiones anteriores las fusionan.268Cuando la [fuente de configuración administrada de mayor precedencia](/docs/es/server-managed-settings#settings-precedence) define `availableModels`, esa lista sola se aplica: las entradas en configuración de usuario, proyecto o local no pueden extenderla, y las fuentes administradas implementadas por el administrador no se fusionan entre sí, por lo que una lista implementada en un archivo de configuración administrada se ignora cuando la configuración administrada por servidor entrega cualquier clave. De lo contrario, las listas de configuración de usuario, proyecto y local se [concatenan y desduplican](/docs/es/settings#settings-precedence) como otras configuraciones de array. A partir de Claude Code v2.1.175, la lista administrada reemplaza entradas de menor precedencia; las versiones anteriores las fusionan.

269 269 

270Dentro de la lista efectiva, una entrada que nombra un modelo específico en una familia, ya sea un prefijo de versión o un ID de modelo completo, desactiva la entrada comodín de esa familia: `["sonnet", "claude-sonnet-4-5"]` permite solo versiones de Sonnet 4.5, no cada modelo de Sonnet.270Dentro de la lista efectiva, una entrada que nombra un modelo específico en una familia, ya sea un prefijo de versión o un ID de modelo completo, desactiva la entrada comodín de esa familia: `["sonnet", "claude-sonnet-4-5"]` permite solo versiones de Sonnet 4.5, no cada modelo de Sonnet.

271 271 


273 IDs de modelo Mantle273 IDs de modelo Mantle

274</h3>274</h3>

275 275 

276Cuando el [punto final Bedrock Mantle](/es/amazon-bedrock#use-the-mantle-endpoint) está habilitado, las entradas en `availableModels` que comienzan con `anthropic.` se agregan al selector `/model` como opciones personalizadas y se enrutan al punto final Mantle. Esta es una excepción a la coincidencia de alias descrita en [Fijar modelos para implementaciones de terceros](#pin-models-for-third-party-deployments). La configuración aún restringe el selector a las entradas enumeradas, y un ID de Mantle incrusta un nombre de familia, por lo que cuenta como una entrada específica y desactiva el comodín de esa familia: junto con cualquier ID de Mantle, enumere los prefijos de versión o IDs completos que desea mantener seleccionables. Consulte [Comportamiento de fusión](#merge-behavior).276Cuando el [punto final Bedrock Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint) está habilitado, las entradas en `availableModels` que comienzan con `anthropic.` se agregan al selector `/model` como opciones personalizadas y se enrutan al punto final Mantle. Esta es una excepción a la coincidencia de alias descrita en [Fijar modelos para implementaciones de terceros](#pin-models-for-third-party-deployments). La configuración aún restringe el selector a las entradas enumeradas, y un ID de Mantle incrusta un nombre de familia, por lo que cuenta como una entrada específica y desactiva el comodín de esa familia: junto con cualquier ID de Mantle, enumere los prefijos de versión o IDs completos que desea mantener seleccionables. Consulte [Comportamiento de fusión](#merge-behavior).

277 277 

278<h3 id="organization-model-restrictions">278<h3 id="organization-model-restrictions">

279 Restricciones de modelo de organización279 Restricciones de modelo de organización


283 283 

284La restricción se aplica cuando un miembro inicia sesión o utiliza su propia clave API. Las credenciales con alcance de organización, como las claves de servicio de la organización, no están vinculadas a un usuario, por lo que la restricción no se aplica a ellas.284La restricción se aplica cuando un miembro inicia sesión o utiliza su propia clave API. Las credenciales con alcance de organización, como las claves de servicio de la organización, no están vinculadas a un usuario, por lo que la restricción no se aplica a ellas.

285 285 

286La Consola de Claude no tiene control de restricción de modelo. Las organizaciones sin un plan Claude Enterprise, incluidas aquellas cuyos miembros se autentican a través de la API de Anthropic, restringen modelos con [`availableModels`](#restrict-model-selection) en [configuración administrada](/es/settings#settings-files) en su lugar, agregando [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) para cubrir la opción Predeterminado. Estas configuraciones se aplican por Claude Code mismo, no por el servidor.286La Consola de Claude no tiene control de restricción de modelo. Las organizaciones sin un plan Claude Enterprise, incluidas aquellas cuyos miembros se autentican a través de la API de Anthropic, restringen modelos con [`availableModels`](#restrict-model-selection) en [configuración administrada](/docs/es/settings#settings-files) en su lugar, agregando [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) para cubrir la opción Predeterminado. Estas configuraciones se aplican por Claude Code mismo, no por el servidor.

287 287 

288Un modelo restringido se oculta del selector `/model`. Seleccionarlo por nombre con `--model`, la variable de entorno `ANTHROPIC_MODEL`, o la configuración `model` muestra el aviso `Model "<name>" is restricted by your organization's settings. Using <model> instead.` y la sesión comienza en un modelo permitido. Escribir `/model <name>` para un modelo restringido se rechaza con `Model '<name>' is restricted by your organization's settings. Run /model to choose a different model.` y la sesión mantiene su modelo actual.288Un modelo restringido se oculta del selector `/model`. Seleccionarlo por nombre con `--model`, la variable de entorno `ANTHROPIC_MODEL`, o la configuración `model` muestra el aviso `Model "<name>" is restricted by your organization's settings. Using <model> instead.` y la sesión comienza en un modelo permitido. Escribir `/model <name>` para un modelo restringido se rechaza con `Model '<name>' is restricted by your organization's settings. Run /model to choose a different model.` y la sesión mantiene su modelo actual.

289 289 


296* Los modelos Haiku siempre están disponibles y no se pueden desactivar, por lo que cada miembro mantiene al menos un modelo utilizable.296* Los modelos Haiku siempre están disponibles y no se pueden desactivar, por lo que cada miembro mantiene al menos un modelo utilizable.

297* Un cambio de acceso toma efecto en nuevas solicitudes dentro de aproximadamente un minuto; el selector `/model` lo refleja la próxima vez que comienza una sesión.297* Un cambio de acceso toma efecto en nuevas solicitudes dentro de aproximadamente un minuto; el selector `/model` lo refleja la próxima vez que comienza una sesión.

298 298 

299Ambas restricciones se aplican juntas: un modelo es seleccionable solo cuando está permitido por `availableModels` y no está restringido por la organización. Las restricciones de la organización se entregan a sesiones en la API de Anthropic e implementaciones de [puerta de enlace LLM](/es/llm-gateway). Las sesiones en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, y Claude Platform en AWS no las reciben, por lo que use `availableModels` en esos proveedores en su lugar.299Ambas restricciones se aplican juntas: un modelo es seleccionable solo cuando está permitido por `availableModels` y no está restringido por la organización. Las restricciones de la organización se entregan a sesiones en la API de Anthropic e implementaciones de [puerta de enlace LLM](/docs/es/llm-gateway). Las sesiones en Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, y Claude Platform en AWS no las reciben, por lo que use `availableModels` en esos proveedores en su lugar.

300 300 

301<h2 id="organization-default-model">301<h2 id="organization-default-model">

302 Modelo predeterminado de la organización302 Modelo predeterminado de la organización

303</h2>303</h2>

304 304 

305{/* plan-availability: feature=org-default-model plans=enterprise */}

306 

307Los administradores de la organización en planes Claude Enterprise pueden establecer un modelo predeterminado para los miembros de Claude Code desde la consola de administración de claude.ai, para toda la organización o por rol personalizado. Cuando se establece uno, la opción Predeterminado se resuelve a ese modelo en lugar del [predeterminado del tipo de cuenta](#default-model-setting). Requiere Claude Code v2.1.196 o posterior.305Los administradores de la organización en planes Claude Enterprise pueden establecer un modelo predeterminado para los miembros de Claude Code desde la consola de administración de claude.ai, para toda la organización o por rol personalizado. Cuando se establece uno, la opción Predeterminado se resuelve a ese modelo en lugar del [predeterminado del tipo de cuenta](#default-model-setting). Requiere Claude Code v2.1.196 o posterior.

308 306 

309La fila Predeterminado en el selector `/model` muestra el nombre del modelo predeterminado de la organización con la etiqueta Predeterminado de org. La etiqueta lee Predeterminado de org ya sea que el administrador haya establecido el predeterminado para toda la organización o para su rol. Un predeterminado de rol cubre miembros de ese rol personalizado y tiene prioridad sobre el predeterminado de toda la organización; cuando varios de sus roles establecen diferentes predeterminados, se aplica el modelo más capaz.307La fila Predeterminado en el selector `/model` muestra el nombre del modelo predeterminado de la organización con la etiqueta Predeterminado de org. La etiqueta lee Predeterminado de org ya sea que el administrador haya establecido el predeterminado para toda la organización o para su rol. Un predeterminado de rol cubre miembros de ese rol personalizado y tiene prioridad sobre el predeterminado de toda la organización; cuando varios de sus roles establecen diferentes predeterminados, se aplica el modelo más capaz.


311El modelo predeterminado de la organización es un punto de partida, no una restricción, y cualquier otra selección de modelo tiene prioridad sobre él:309El modelo predeterminado de la organización es un punto de partida, no una restricción, y cualquier otra selección de modelo tiene prioridad sobre él:

312 310 

313* la bandera `--model` y la variable de entorno `ANTHROPIC_MODEL`311* la bandera `--model` y la variable de entorno `ANTHROPIC_MODEL`

314* un valor `model` en [configuración administrada](/es/settings#settings-files) o suministrado a través de `--settings`312* un valor `model` en [configuración administrada](/docs/es/settings#settings-files) o suministrado a través de `--settings`

315* un valor `model` en su configuración de usuario, proyecto o local, incluido un modelo que guarda con `/model`313* un valor `model` en su configuración de usuario, proyecto o local, incluido un modelo que guarda con `/model`

316 314 

317Los administradores también pueden configurar el modelo predeterminado de la organización para anular la selección del usuario. Con la anulación activada, tiene prioridad sobre el valor `model` en la configuración de usuario, proyecto y local, por lo que un modelo que guarda con `/model` se aplica para la sesión actual y el modelo predeterminado de la organización regresa en el siguiente lanzamiento. Cuando su selección difiere, `/model` muestra `Your organization's default (<model>) applies on restart`. La bandera `--model`, `ANTHROPIC_MODEL`, la configuración administrada y `--settings` aún tienen prioridad incluso con la anulación activada. La anulación está disponible para un conjunto limitado de organizaciones; pregunte a su equipo de cuenta de Anthropic sobre disponibilidad.315Los administradores también pueden configurar el modelo predeterminado de la organización para anular la selección del usuario. Con la anulación activada, tiene prioridad sobre el valor `model` en la configuración de usuario, proyecto y local, por lo que un modelo que guarda con `/model` se aplica para la sesión actual y el modelo predeterminado de la organización regresa en el siguiente lanzamiento. Cuando su selección difiere, `/model` muestra `Your organization's default (<model>) applies on restart`. La bandera `--model`, `ANTHROPIC_MODEL`, la configuración administrada y `--settings` aún tienen prioridad incluso con la anulación activada. La anulación está disponible para un conjunto limitado de organizaciones; pregunte a su equipo de cuenta de Anthropic sobre disponibilidad.


326 324 

327* [`availableModels`](#restrict-model-selection) por sí solo nunca limita la opción Predeterminado, por lo que un modelo predeterminado de la organización fuera de la lista de permitidos aún se aplica. Cuando [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) también está establecido, un modelo predeterminado de la organización fuera de la lista de permitidos se remapea a la primera entrada de la lista de permitidos, como cualquier otro Predeterminado325* [`availableModels`](#restrict-model-selection) por sí solo nunca limita la opción Predeterminado, por lo que un modelo predeterminado de la organización fuera de la lista de permitidos aún se aplica. Cuando [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) también está establecido, un modelo predeterminado de la organización fuera de la lista de permitidos se remapea a la primera entrada de la lista de permitidos, como cualquier otro Predeterminado

328* un modelo predeterminado de la organización que [restricciones de modelo de organización](#organization-model-restrictions) niegan para su cuenta se reemplaza por el modelo más nuevo permitido en su familia, o una familia de menor costo cuando cada versión de ella está restringida326* un modelo predeterminado de la organización que [restricciones de modelo de organización](#organization-model-restrictions) niegan para su cuenta se reemplaza por el modelo más nuevo permitido en su familia, o una familia de menor costo cuando cada versión de ella está restringida

329* un modelo predeterminado de la organización que no está disponible para su cuenta en absoluto, como Fable 5 bajo [retención de datos cero](/es/zero-data-retention), se omite, y la opción Predeterminado se resuelve al predeterminado del tipo de cuenta327* un modelo predeterminado de la organización que no está disponible para su cuenta en absoluto, como Fable 5 bajo [retención de datos cero](/docs/es/zero-data-retention), se omite, y la opción Predeterminado se resuelve al predeterminado del tipo de cuenta

330 328 

331A partir de v2.1.199, cuando el modelo predeterminado de la organización es una familia de modelo diferente del predeterminado habitual del tipo de cuenta, el selector `/model` mantiene una fila separada para esa familia habitual, por lo que aún puede cambiar a ella para una sesión. En v2.1.196 a v2.1.198 esa fila falta del selector.329A partir de v2.1.199, cuando el modelo predeterminado de la organización es una familia de modelo diferente del predeterminado habitual del tipo de cuenta, el selector `/model` mantiene una fila separada para esa familia habitual, por lo que aún puede cambiar a ella para una sesión. En v2.1.196 a v2.1.198 esa fila falta del selector.

332 330 

333El modelo predeterminado de la organización se entrega a sesiones autenticadas con la API de Anthropic. Las sesiones en implementaciones de [puerta de enlace LLM](/es/llm-gateway), Amazon Bedrock, Plataforma de Agentes de Google Cloud, Microsoft Foundry, y Claude Platform en AWS no lo reciben. Para establecer un predeterminado en esas implementaciones, use la clave `model` en [configuración administrada](/es/settings#settings-files) en su lugar.331El modelo predeterminado de la organización se entrega a sesiones autenticadas con la API de Anthropic. Las sesiones en implementaciones de [puerta de enlace LLM](/docs/es/llm-gateway), Amazon Bedrock, Plataforma de Agentes de Google Cloud, Microsoft Foundry, y Claude Platform en AWS no lo reciben. Para establecer un predeterminado en esas implementaciones, use la clave `model` en [configuración administrada](/docs/es/settings#settings-files) en su lugar.

334 332 

335<h2 id="organization-effort-limits">333<h2 id="organization-effort-limits">

336 Límites de esfuerzo de la organización334 Límites de esfuerzo de la organización

337</h2>335</h2>

338 336 

339{/* plan-availability: feature=org-effort-limits plans=enterprise */}

340 

341Los administradores de la organización en planes Claude Enterprise pueden establecer un [nivel de esfuerzo](#adjust-effort-level) máximo por modelo para cada rol personalizado, junto con [restricciones de modelo de organización](#organization-model-restrictions) a nivel de rol. Los niveles por encima del límite no se ofrecen en el selector `/effort`, y nombrar un nivel más alto con `--effort` o `/effort` se ejecuta en el límite en su lugar. En sesiones interactivas y ejecuciones de `--print` de texto sin formato, una advertencia nombra los niveles solicitados y aplicados; con salida `json` o `stream-json` o en agentes de fondo, el límite se aplica silenciosamente. Los límites son por modelo, por lo que cambiar de modelos puede cambiar qué niveles están disponibles. Cuando varios de sus roles otorgan el mismo modelo, se aplica el límite menos restrictivo. Requiere Claude Code v2.1.195 o posterior.337Los administradores de la organización en planes Claude Enterprise pueden establecer un [nivel de esfuerzo](#adjust-effort-level) máximo por modelo para cada rol personalizado, junto con [restricciones de modelo de organización](#organization-model-restrictions) a nivel de rol. Los niveles por encima del límite no se ofrecen en el selector `/effort`, y nombrar un nivel más alto con `--effort` o `/effort` se ejecuta en el límite en su lugar. En sesiones interactivas y ejecuciones de `--print` de texto sin formato, una advertencia nombra los niveles solicitados y aplicados; con salida `json` o `stream-json` o en agentes de fondo, el límite se aplica silenciosamente. Los límites son por modelo, por lo que cambiar de modelos puede cambiar qué niveles están disponibles. Cuando varios de sus roles otorgan el mismo modelo, se aplica el límite menos restrictivo. Requiere Claude Code v2.1.195 o posterior.

342 338 

343Los límites de esfuerzo se entregan junto con [restricciones de modelo de organización](#organization-model-restrictions) y siguen la misma disponibilidad de proveedor: las sesiones en Amazon Bedrock, Plataforma de Agentes de Google Cloud, Microsoft Foundry, y Claude Platform en AWS no los reciben.339Los límites de esfuerzo se entregan junto con [restricciones de modelo de organización](#organization-model-restrictions) y siguen la misma disponibilidad de proveedor: las sesiones en Amazon Bedrock, Plataforma de Agentes de Google Cloud, Microsoft Foundry, y Claude Platform en AWS no los reciben.


359 355 

360Enterprise de pago por uso significa una organización Enterprise facturada por uso en lugar de por asiento de suscripción.356Enterprise de pago por uso significa una organización Enterprise facturada por uso en lugar de por asiento de suscripción.

361 357 

362{/* min-version: 2.1.207 */}Antes de v2.1.207, `default` se resolvía a Opus 4.7 en Claude Platform en AWS y a Sonnet 4.5 en Amazon Bedrock y Google Cloud's Agent Platform.358Antes de v2.1.207, `default` se resolvía a Opus 4.7 en Claude Platform en AWS y a Sonnet 4.5 en Amazon Bedrock y Google Cloud's Agent Platform.

363 359 

364Cuando un administrador ha establecido un [modelo predeterminado de la organización](#organization-default-model), `default` se resuelve a ese modelo en lugar del predeterminado del tipo de cuenta anterior. Requiere Claude Code v2.1.196 o posterior.360Cuando un administrador ha establecido un [modelo predeterminado de la organización](#organization-default-model), `default` se resuelve a ese modelo en lugar del predeterminado del tipo de cuenta anterior. Requiere Claude Code v2.1.196 o posterior.

365 361 


382 378 

383Cuando [`availableModels`](#restrict-model-selection) excluye el Opus más nuevo pero permite una versión anterior, por ejemplo `["sonnet", "claude-opus-4-6"]`, `opusplan` utiliza el Opus más nuevo permitido para la planificación y se mantiene solo en Sonnet cuando se excluye cada Opus. Una sesión de Haiku que normalmente se actualizaría a Sonnet en Plan Mode de manera similar utiliza el Sonnet más nuevo permitido, y se mantiene en Haiku solo cuando se excluye cada Sonnet. Antes de v2.1.205, Plan Mode se mantenía en el modelo de la sesión siempre que se excluyera la versión más nueva de la familia de actualización, incluso cuando la lista de permitidos permitía una anterior.379Cuando [`availableModels`](#restrict-model-selection) excluye el Opus más nuevo pero permite una versión anterior, por ejemplo `["sonnet", "claude-opus-4-6"]`, `opusplan` utiliza el Opus más nuevo permitido para la planificación y se mantiene solo en Sonnet cuando se excluye cada Opus. Una sesión de Haiku que normalmente se actualizaría a Sonnet en Plan Mode de manera similar utiliza el Sonnet más nuevo permitido, y se mantiene en Haiku solo cuando se excluye cada Sonnet. Antes de v2.1.205, Plan Mode se mantenía en el modelo de la sesión siempre que se excluyera la versión más nueva de la familia de actualización, incluso cuando la lista de permitidos permitía una anterior.

384 380 

385La sustitución de una versión anterior permitida se aplica en la API de Anthropic y [Claude Platform en AWS](/es/claude-platform-on-aws). En Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y Mantle, cuyos despliegues utilizan ID de modelo específicos del proveedor, Plan Mode se mantiene en el modelo de la sesión siempre que se excluya el modelo de actualización.381La sustitución de una versión anterior permitida se aplica en la API de Anthropic y [Claude Platform en AWS](/docs/es/claude-platform-on-aws). En Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry y Mantle, cuyos despliegues utilizan ID de modelo específicos del proveedor, Plan Mode se mantiene en el modelo de la sesión siempre que se excluya el modelo de actualización.

386 382 

387Para un enfoque híbrido donde Claude decide a mitad de la tarea cuándo consultar un segundo modelo en lugar de cambiar en el límite del plan, consulte la [herramienta advisor](/es/advisor).383Para un enfoque híbrido donde Claude decide a mitad de la tarea cuándo consultar un segundo modelo en lugar de cambiar en el límite del plan, consulte la [herramienta advisor](/docs/es/advisor).

388 384 

389<h3 id="fallback-model-chains">385<h3 id="fallback-model-chains">

390 Cadenas de modelos de respaldo386 Cadenas de modelos de respaldo


400claude --fallback-model sonnet,haiku396claude --fallback-model sonnet,haiku

401```397```

402 398 

403Para persistir una cadena entre sesiones, establezca `fallbackModel` en [configuración](/es/settings) como una matriz:399Para persistir una cadena entre sesiones, establezca `fallbackModel` en [configuración](/docs/es/settings) como una matriz:

404 400 

405```json theme={null}401```json theme={null}

406{402{


421 417 

422Esta sección cubre el respaldo basado en contenido de Fable 5. Para respaldo basado en disponibilidad cuando un modelo está sobrecargado o no disponible, consulte [Cadenas de modelos de respaldo](#fallback-model-chains).418Esta sección cubre el respaldo basado en contenido de Fable 5. Para respaldo basado en disponibilidad cuando un modelo está sobrecargado o no disponible, consulte [Cadenas de modelos de respaldo](#fallback-model-chains).

423 419 

424Fable 5 se ejecuta con clasificadores de seguridad para contenido de ciberseguridad y biología. Cuando un clasificador marca una solicitud, Claude Code vuelve a ejecutar esa solicitud en el modelo Opus predeterminado de su proveedor y muestra un aviso en la transcripción. En la API de Anthropic, despliegues de [puerta de enlace LLM](/es/llm-gateway) y [Claude Platform en AWS](/es/claude-platform-on-aws), ese modelo es Opus 4.8. En la [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway), es Opus 4.7 a menos que apunte el alias [`opus`](#environment-variables) a otro modelo.420Fable 5 se ejecuta con clasificadores de seguridad para contenido de ciberseguridad y biología. Cuando un clasificador marca una solicitud, Claude Code vuelve a ejecutar esa solicitud en el modelo Opus predeterminado de su proveedor y muestra un aviso en la transcripción. En la API de Anthropic, despliegues de [puerta de enlace LLM](/docs/es/llm-gateway) y [Claude Platform en AWS](/docs/es/claude-platform-on-aws), ese modelo es Opus 4.8. En la [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway), es Opus 4.7 a menos que apunte el alias [`opus`](#environment-variables) a otro modelo.

425 421 

426La sesión continúa en ese modelo Opus. Para volver a Fable 5, ejecute `/model fable`.422La sesión continúa en ese modelo Opus. Para volver a Fable 5, ejecute `/model fable`.

427 423 


444Algunos casos se comportan de manera diferente:440Algunos casos se comportan de manera diferente:

445 441 

446* Si ambos modelos marcan la misma solicitud, puede editar el indicador e intentar nuevamente, o iniciar una nueva sesión.442* Si ambos modelos marcan la misma solicitud, puede editar el indicador e intentar nuevamente, o iniciar una nueva sesión.

447* En sesiones móviles de [Claude Code en la web](/es/claude-code-on-the-web), no se admite edición y reintento. Cambie de modelos o continúe la sesión desde un navegador de escritorio o la aplicación de escritorio.443* En sesiones móviles de [Claude Code en la web](/docs/es/claude-code-on-the-web), no se admite edición y reintento. Cambie de modelos o continúe la sesión desde un navegador de escritorio o la aplicación de escritorio.

448* En [modo no interactivo](/es/cli-reference#cli-flags) e integraciones de SDK que no pueden mostrar el indicador, una solicitud marcada termina el turno con un rechazo en su lugar.444* En [modo no interactivo](/docs/es/cli-reference#cli-flags) e integraciones de SDK que no pueden mostrar el indicador, una solicitud marcada termina el turno con un rechazo en su lugar.

449* Cuando el destino de respaldo está bloqueado por [`availableModels`](#restrict-model-selection), el indicador no se muestra. La solicitud marcada termina con el rechazo, igual que el respaldo automático cuando el destino está bloqueado.445* Cuando el destino de respaldo está bloqueado por [`availableModels`](#restrict-model-selection), el indicador no se muestra. La solicitud marcada termina con el rechazo, igual que el respaldo automático cuando el destino está bloqueado.

450 446 

451<h4 id="enable-fallback-on-bedrock-agent-platform-and-foundry">447<h4 id="enable-fallback-on-bedrock-agent-platform-and-foundry">

452 Habilitar respaldo en Bedrock, Agent Platform y Foundry448 Habilitar respaldo en Bedrock, Agent Platform y Foundry

453</h4>449</h4>

454 450 

455En [Amazon Bedrock](/es/amazon-bedrock), [Google Cloud's Agent Platform](/es/google-vertex-ai) y [Microsoft Foundry](/es/microsoft-foundry), los ID de modelo son específicos del proveedor, por lo que el respaldo automático solo funciona cuando Claude Code puede identificar ambos modelos involucrados:451En [Amazon Bedrock](/docs/es/amazon-bedrock), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai) y [Microsoft Foundry](/docs/es/microsoft-foundry), los ID de modelo son específicos del proveedor, por lo que el respaldo automático solo funciona cuando Claude Code puede identificar ambos modelos involucrados:

456 452 

457* Claude Code debe reconocer el modelo actual como Fable 5: el ID del modelo contiene `claude-fable-5`, coincide con el valor de `ANTHROPIC_DEFAULT_FABLE_MODEL`, o se asigna con [`modelOverrides`](#override-model-ids-per-version).453* Claude Code debe reconocer el modelo actual como Fable 5: el ID del modelo contiene `claude-fable-5`, coincide con el valor de `ANTHROPIC_DEFAULT_FABLE_MODEL`, o se asigna con [`modelOverrides`](#override-model-ids-per-version).

458* El destino de respaldo debe resolverse en un modelo Opus: el valor de `ANTHROPIC_DEFAULT_OPUS_MODEL` si se establece, de lo contrario una entrada Opus 4.8 en la lista de modelos del proveedor.454* El destino de respaldo debe resolverse en un modelo Opus: el valor de `ANTHROPIC_DEFAULT_OPUS_MODEL` si se establece, de lo contrario una entrada Opus 4.8 en la lista de modelos del proveedor.


487 483 

488Cuando ejecuta Fable 5, Opus 4.8 u Opus 4.7 por primera vez, Claude Code aplica el esfuerzo predeterminado de ese modelo incluso si estableció anteriormente un nivel diferente para otro modelo: `high` en Fable 5 y Opus 4.8, y `xhigh` en Opus 4.7. Ejecute `/effort` nuevamente para elegir un nivel diferente después de cambiar. Ese predeterminado se mantiene entre sesiones hasta que realice una opción de esfuerzo explícita, como ejecutar `/effort` en una sesión interactiva o iniciar con `--effort`.484Cuando ejecuta Fable 5, Opus 4.8 u Opus 4.7 por primera vez, Claude Code aplica el esfuerzo predeterminado de ese modelo incluso si estableció anteriormente un nivel diferente para otro modelo: `high` en Fable 5 y Opus 4.8, y `xhigh` en Opus 4.7. Ejecute `/effort` nuevamente para elegir un nivel diferente después de cambiar. Ese predeterminado se mantiene entre sesiones hasta que realice una opción de esfuerzo explícita, como ejecutar `/effort` en una sesión interactiva o iniciar con `--effort`.

489 485 

490`low`, `medium`, `high` y `xhigh` persisten entre sesiones cuando los establece en una sesión interactiva. {/* min-version: 2.1.205 */}Un nivel establecido con `/effort` en [modo no interactivo](/es/headless), con la bandera `-p`, se aplica solo a la sesión actual y no se guarda como su predeterminado. Un `/effort` no interactivo tampoco puede liberar la retención de predeterminado del modelo anterior: en Fable 5, Opus 4.8 y Opus 4.7 informa `Not applied` y la sesión permanece en el esfuerzo predeterminado del modelo, por lo que pase `--effort` en el lanzamiento en su lugar. `max` proporciona el razonamiento más profundo sin restricción en el gasto de tokens y se aplica solo a la sesión actual, excepto cuando se establece a través de la variable de entorno `CLAUDE_CODE_EFFORT_LEVEL`.486`low`, `medium`, `high` y `xhigh` persisten entre sesiones cuando los establece en una sesión interactiva. Un nivel establecido con `/effort` en [modo no interactivo](/docs/es/headless), con la bandera `-p`, se aplica solo a la sesión actual y no se guarda como su predeterminado. Un `/effort` no interactivo tampoco puede liberar la retención de predeterminado del modelo anterior: en Fable 5, Opus 4.8 y Opus 4.7 informa `Not applied` y la sesión permanece en el esfuerzo predeterminado del modelo, por lo que pase `--effort` en el lanzamiento en su lugar. `max` proporciona el razonamiento más profundo sin restricción en el gasto de tokens y se aplica solo a la sesión actual, excepto cuando se establece a través de la variable de entorno `CLAUDE_CODE_EFFORT_LEVEL`.

491 487 

492El menú `/effort` también ofrece `ultracode`. Ultracode es una configuración de Claude Code en lugar de un nivel de esfuerzo del modelo: envía `xhigh` al modelo y además tiene Claude orquestar [flujos de trabajo dinámicos](/es/workflows) para tareas sustanciales. Se aplica solo a la sesión actual.488El menú `/effort` también ofrece `ultracode`. Ultracode es una configuración de Claude Code en lugar de un nivel de esfuerzo del modelo: envía `xhigh` al modelo y además tiene Claude orquestar [flujos de trabajo dinámicos](/docs/es/workflows) para tareas sustanciales. Se aplica solo a la sesión actual.

493 489 

494Puede activar ultracode a través de cualquiera de los siguientes:490Puede activar ultracode a través de cualquiera de los siguientes:

495 491 

496* **`/effort`**: ejecute `/effort ultracode`, o selecciónelo del menú492* **`/effort`**: ejecute `/effort ultracode`, o selecciónelo del menú

497* **Bandera `--effort`**: inicie con `claude --effort ultracode`, que inicia la sesión con esfuerzo `xhigh` y ultracode activado493* **Bandera `--effort`**: inicie con `claude --effort ultracode`, que inicia la sesión con esfuerzo `xhigh` y ultracode activado

498* **`--settings` o una solicitud de control del SDK del Agente**: pase `"ultracode": true`. Una solicitud [`applyFlagSettings()`](/es/agent-sdk/typescript#applyflagsettings) también acepta `effortLevel: "ultracode"`494* **`--settings` o una solicitud de control del SDK del Agente**: pase `"ultracode": true`. Una solicitud [`applyFlagSettings()`](/docs/es/agent-sdk/typescript#applyflagsettings) también acepta `effortLevel: "ultracode"`

499 495 

500Pasar `ultracode` a la bandera `--effort` o al valor `effortLevel` del SDK del Agente requiere Claude Code v2.1.203 o posterior. Antes de v2.1.203, `--effort ultracode` imprimía `Unknown --effort value 'ultracode'` y la sesión comenzaba con el esfuerzo predeterminado.496Pasar `ultracode` a la bandera `--effort` o al valor `effortLevel` del SDK del Agente requiere Claude Code v2.1.203 o posterior. Antes de v2.1.203, `--effort ultracode` imprimía `Unknown --effort value 'ultracode'` y la sesión comenzaba con el esfuerzo predeterminado.

501 497 

502La configuración `effortLevel` persistida y la variable de entorno `CLAUDE_CODE_EFFORT_LEVEL` no aceptan `ultracode`.498La configuración `effortLevel` persistida y la variable de entorno `CLAUDE_CODE_EFFORT_LEVEL` no aceptan `ultracode`.

503 499 

504Cuando ultracode no está disponible, por ejemplo cuando [los flujos de trabajo están desactivados](/es/workflows#turn-workflows-off), `--effort ultracode` establece solo esfuerzo `xhigh`.500Cuando ultracode no está disponible, por ejemplo cuando [los flujos de trabajo están desactivados](/docs/es/workflows#turn-workflows-off), `--effort ultracode` establece solo esfuerzo `xhigh`.

505 501 

506<h4 id="choose-an-effort-level">502<h4 id="choose-an-effort-level">

507 Elegir un nivel de esfuerzo503 Elegir un nivel de esfuerzo


516| `high` | Equilibra el uso de tokens e inteligencia. Predeterminado en Fable 5, Sonnet 5, Opus 4.8, Opus 4.6 y Sonnet 4.6 |512| `high` | Equilibra el uso de tokens e inteligencia. Predeterminado en Fable 5, Sonnet 5, Opus 4.8, Opus 4.6 y Sonnet 4.6 |

517| `xhigh` | Razonamiento más profundo con gasto de tokens más alto. Predeterminado en Opus 4.7 |513| `xhigh` | Razonamiento más profundo con gasto de tokens más alto. Predeterminado en Opus 4.7 |

518| `max` | Puede mejorar el rendimiento en tareas exigentes pero puede mostrar rendimientos decrecientes y es propenso a pensar demasiado. Pruebe antes de adoptar ampliamente |514| `max` | Puede mejorar el rendimiento en tareas exigentes pero puede mostrar rendimientos decrecientes y es propenso a pensar demasiado. Pruebe antes de adoptar ampliamente |

519| `ultracode` | Una configuración de Claude Code que planifica un [flujo de trabajo dinámico](/es/workflows) para cada tarea sustancial con razonamiento `xhigh` por mensaje. Solo de sesión |515| `ultracode` | Una configuración de Claude Code que planifica un [flujo de trabajo dinámico](/docs/es/workflows) para cada tarea sustancial con razonamiento `xhigh` por mensaje. Solo de sesión |

520 516 

521La escala de esfuerzo se calibra por modelo, por lo que el mismo nombre de nivel no representa el mismo valor subyacente en todos los modelos.517La escala de esfuerzo se calibra por modelo, por lo que el mismo nombre de nivel no representa el mismo valor subyacente en todos los modelos.

522 518 


537* **Bandera `--effort`**: pase un nombre de nivel para establecerlo para una única sesión al iniciar Claude Code533* **Bandera `--effort`**: pase un nombre de nivel para establecerlo para una única sesión al iniciar Claude Code

538* **Variable de entorno**: establezca `CLAUDE_CODE_EFFORT_LEVEL` en un nombre de nivel o `auto`534* **Variable de entorno**: establezca `CLAUDE_CODE_EFFORT_LEVEL` en un nombre de nivel o `auto`

539* **Configuración**: establezca `effortLevel` en `low`, `medium`, `high` o `xhigh` en su archivo de configuración. `max` y `ultracode` son [solo de sesión](#adjust-effort-level) y no se aceptan aquí535* **Configuración**: establezca `effortLevel` en `low`, `medium`, `high` o `xhigh` en su archivo de configuración. `max` y `ultracode` son [solo de sesión](#adjust-effort-level) y no se aceptan aquí

540* **Frontmatter de skill y subagent**: establezca `effort` en un archivo markdown de [skill](/es/skills#frontmatter-reference) o [subagent](/es/sub-agents#supported-frontmatter-fields) para anular el nivel de esfuerzo cuando ese skill o subagent se ejecuta536* **Frontmatter de skill y subagent**: establezca `effort` en un archivo markdown de [skill](/docs/es/skills#frontmatter-reference) o [subagent](/docs/es/sub-agents#supported-frontmatter-fields) para anular el nivel de esfuerzo cuando ese skill o subagent se ejecuta

541 537 

542La variable de entorno tiene precedencia sobre todos los demás métodos, luego su nivel configurado, luego el predeterminado del modelo. El esfuerzo de frontmatter se aplica cuando ese skill o subagent está activo, anulando el nivel de sesión pero no la variable de entorno.538La variable de entorno tiene precedencia sobre todos los demás métodos, luego su nivel configurado, luego el predeterminado del modelo. El esfuerzo de frontmatter se aplica cuando ese skill o subagent está activo, anulando el nivel de sesión pero no la variable de entorno.

543 539 


551 547 

552Fable 5, Sonnet 5 y Opus 4.7 y posterior siempre utilizan razonamiento adaptativo. El modo de presupuesto de pensamiento fijo y `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` no se aplican a ellos.548Fable 5, Sonnet 5 y Opus 4.7 y posterior siempre utilizan razonamiento adaptativo. El modo de presupuesto de pensamiento fijo y `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` no se aplican a ellos.

553 549 

554En Opus 4.6 y Sonnet 4.6, puede establecer `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` para revertir al presupuesto de pensamiento fijo anterior controlado por `MAX_THINKING_TOKENS`. Consulte [variables de entorno](/es/env-vars).550En Opus 4.6 y Sonnet 4.6, puede establecer `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` para revertir al presupuesto de pensamiento fijo anterior controlado por `MAX_THINKING_TOKENS`. Consulte [variables de entorno](/docs/es/env-vars).

555 551 

556<h3 id="extended-thinking">552<h3 id="extended-thinking">

557 Pensamiento extendido553 Pensamiento extendido


563| :----------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |559| :----------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

564| Alternar para la sesión actual | Presione `Option+T` en macOS o `Alt+T` en Windows y Linux |560| Alternar para la sesión actual | Presione `Option+T` en macOS o `Alt+T` en Windows y Linux |

565| Establecer el predeterminado global | Ejecute `/config` y alterne el modo de pensamiento. Se guarda como `alwaysThinkingEnabled` en `~/.claude/settings.json` |561| Establecer el predeterminado global | Ejecute `/config` y alterne el modo de pensamiento. Se guarda como `alwaysThinkingEnabled` en `~/.claude/settings.json` |

566| Desactivar independientemente del esfuerzo | Establezca [`MAX_THINKING_TOKENS=0`](/es/env-vars), que desactiva el pensamiento en la API de Anthropic excepto en Fable 5. En [proveedores de terceros](/es/third-party-integrations) esto omite el parámetro `thinking` en su lugar, y los modelos de razonamiento adaptativo aún pueden pensar. Otros valores se aplican solo con un [presupuesto de pensamiento fijo](#adaptive-reasoning-and-fixed-thinking-budgets) |562| Desactivar independientemente del esfuerzo | Establezca [`MAX_THINKING_TOKENS=0`](/docs/es/env-vars), que desactiva el pensamiento en la API de Anthropic excepto en Fable 5. En [proveedores de terceros](/docs/es/third-party-integrations) esto omite el parámetro `thinking` en su lugar, y los modelos de razonamiento adaptativo aún pueden pensar. Otros valores se aplican solo con un [presupuesto de pensamiento fijo](#adaptive-reasoning-and-fixed-thinking-budgets) |

567 563 

568El pensamiento no se puede desactivar en Fable 5. El alternar de sesión, `alwaysThinkingEnabled` y `MAX_THINKING_TOKENS=0` no tienen efecto allí, y Fable 5 decide por paso cuánto pensar basado en el nivel de esfuerzo.564El pensamiento no se puede desactivar en Fable 5. El alternar de sesión, `alwaysThinkingEnabled` y `MAX_THINKING_TOKENS=0` no tienen efecto allí, y Fable 5 decide por paso cuánto pensar basado en el nivel de esfuerzo.

569 565 

570La salida de pensamiento se colapsa de forma predeterminada. Presione `Ctrl+O` para alternar el modo detallado y ver el razonamiento como texto gris en cursiva. Las sesiones interactivas en la API de Anthropic reciben bloques de pensamiento redactados de forma predeterminada, por lo que establezca `showThinkingSummaries: true` en [configuración](/es/settings) si desea que los resúmenes completos estén disponibles cuando se expandan. Se le cobra por todos los tokens de pensamiento generados, incluso cuando se colapsan o se redactan.566La salida de pensamiento se colapsa de forma predeterminada. Presione `Ctrl+O` para alternar el modo detallado y ver el razonamiento como texto gris en cursiva. Las sesiones interactivas en la API de Anthropic reciben bloques de pensamiento redactados de forma predeterminada, por lo que establezca `showThinkingSummaries: true` en [configuración](/docs/es/settings) si desea que los resúmenes completos estén disponibles cuando se expandan. Se le cobra por todos los tokens de pensamiento generados, incluso cuando se colapsan o se redactan.

571 567 

572<h3 id="extended-context">568<h3 id="extended-context">

573 Contexto extendido569 Contexto extendido


583| Pro | Requiere [créditos de uso](https://support.claude.com/es/articles/12429409-extra-usage-for-paid-claude-plans) | Requiere [créditos de uso](https://support.claude.com/es/articles/12429409-extra-usage-for-paid-claude-plans) |579| Pro | Requiere [créditos de uso](https://support.claude.com/es/articles/12429409-extra-usage-for-paid-claude-plans) | Requiere [créditos de uso](https://support.claude.com/es/articles/12429409-extra-usage-for-paid-claude-plans) |

584| API y pago por uso | Acceso completo | Acceso completo |580| API y pago por uso | Acceso completo | Acceso completo |

585 581 

586Para desactivar completamente el contexto de 1M, establezca `CLAUDE_CODE_DISABLE_1M_CONTEXT=1`. Esto elimina variantes de modelo de 1M del selector de modelo. Consulte [variables de entorno](/es/env-vars).582Para desactivar completamente el contexto de 1M, establezca `CLAUDE_CODE_DISABLE_1M_CONTEXT=1`. Esto elimina variantes de modelo de 1M del selector de modelo. Consulte [variables de entorno](/docs/es/env-vars).

587 583 

588La ventana de contexto de 1M utiliza precios de modelo estándar sin prima para tokens más allá de 200K. Para planes donde el contexto extendido está incluido en su suscripción, el uso permanece cubierto por su suscripción. Para planes que acceden al contexto extendido a través de créditos de uso, los tokens se facturan a los créditos de uso.584La ventana de contexto de 1M utiliza precios de modelo estándar sin prima para tokens más allá de 200K. Para planes donde el contexto extendido está incluido en su suscripción, el uso permanece cubierto por su suscripción. Para planes que acceden al contexto extendido a través de créditos de uso, los tokens se facturan a los créditos de uso.

589 585 


604 Ventana de contexto de Sonnet 5600 Ventana de contexto de Sonnet 5

605</h4>601</h4>

606 602 

607En la API de Anthropic, Sonnet 5 siempre se ejecuta con la ventana de contexto de 1M. No hay variante de 200K, no hay sufijo `[1m]` que seleccionar y no se requieren créditos de uso en ningún plan. Las sesiones se compactan automáticamente antes de que la ventana se llene, aproximadamente a 967K tokens de forma predeterminada; establezca [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/es/env-vars) para elegir un umbral diferente.603En la API de Anthropic, Sonnet 5 siempre se ejecuta con la ventana de contexto de 1M. No hay variante de 200K, no hay sufijo `[1m]` que seleccionar y no se requieren créditos de uso en ningún plan. Las sesiones se compactan automáticamente antes de que la ventana se llene, aproximadamente a 967K tokens de forma predeterminada; establezca [`CLAUDE_CODE_AUTO_COMPACT_WINDOW`](/docs/es/env-vars) para elegir un umbral diferente.

608 604 

609Dos configuraciones presupuestan la ventana en 200K en su lugar y se compactan automáticamente en ese límite:605Dos configuraciones presupuestan la ventana en 200K en su lugar y se compactan automáticamente en ese límite:

610 606 

611* **Puerta de enlace LLM**: cuando `ANTHROPIC_BASE_URL` apunta a una [puerta de enlace](/es/llm-gateway), Claude Code no puede verificar la compatibilidad con 1M. Para utilizar la ventana completa, seleccione Sonnet 5 (1M context) en el selector de modelo, que se asigna a `sonnet[1m]`.607* **Puerta de enlace LLM**: cuando `ANTHROPIC_BASE_URL` apunta a una [puerta de enlace](/docs/es/llm-gateway), Claude Code no puede verificar la compatibilidad con 1M. Para utilizar la ventana completa, seleccione Sonnet 5 (1M context) en el selector de modelo, que se asigna a `sonnet[1m]`.

612* **`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`**: trata las sesiones de Sonnet 5 como si tuvieran una ventana de 200K, para implementaciones que necesitan limitar el contexto.608* **`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`**: trata las sesiones de Sonnet 5 como si tuvieran una ventana de 200K, para implementaciones que necesitan limitar el contexto.

613 609 

614<h2 id="checking-your-current-model">610<h2 id="checking-your-current-model">


617 613 

618Puede ver qué modelo está utilizando actualmente en dos lugares:614Puede ver qué modelo está utilizando actualmente en dos lugares:

619 615 

620* En la [línea de estado](/es/statusline), si tiene una configurada616* En la [línea de estado](/docs/es/statusline), si tiene una configurada

621* En `/status`, que también muestra la información de su cuenta617* En `/status`, que también muestra la información de su cuenta

622 618 

623<h2 id="add-a-custom-model-option">619<h2 id="add-a-custom-model-option">

624 Agregar una opción de modelo personalizado620 Agregar una opción de modelo personalizado

625</h2>621</h2>

626 622 

627Utilice `ANTHROPIC_CUSTOM_MODEL_OPTION` para agregar una única entrada personalizada al selector `/model` sin reemplazar los alias integrados. Esto es útil para probar IDs de modelo que Claude Code no enumera de forma predeterminada. Para implementaciones de puerta de enlace LLM, Claude Code puede completar automáticamente el selector desde el punto final `/v1/models` de la puerta de enlace cuando se establece `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1`, por lo que esta variable solo es necesaria cuando el descubrimiento está deshabilitado o no devuelve el modelo que desea. Consulte [descubrimiento de modelo de puerta de enlace](/es/llm-gateway-protocol#model-discovery).623Utilice `ANTHROPIC_CUSTOM_MODEL_OPTION` para agregar una única entrada personalizada al selector `/model` sin reemplazar los alias integrados. Esto es útil para probar IDs de modelo que Claude Code no enumera de forma predeterminada. Para implementaciones de puerta de enlace LLM, Claude Code puede completar automáticamente el selector desde el punto final `/v1/models` de la puerta de enlace cuando se establece `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1`, por lo que esta variable solo es necesaria cuando el descubrimiento está deshabilitado o no devuelve el modelo que desea. Consulte [descubrimiento de modelo de puerta de enlace](/docs/es/llm-gateway-protocol#model-discovery).

628 624 

629Este ejemplo establece las tres variables para hacer que una implementación de Opus enrutada por puerta de enlace sea seleccionable:625Este ejemplo establece las tres variables para hacer que una implementación de Opus enrutada por puerta de enlace sea seleccionable:

630 626 


649| `ANTHROPIC_DEFAULT_FABLE_MODEL` | El modelo a utilizar para `fable`, y el ID de modelo que Claude Code reconoce como Fable 5 para [alternancia automática de modelo](#automatic-model-fallback) en proveedores de terceros |645| `ANTHROPIC_DEFAULT_FABLE_MODEL` | El modelo a utilizar para `fable`, y el ID de modelo que Claude Code reconoce como Fable 5 para [alternancia automática de modelo](#automatic-model-fallback) en proveedores de terceros |

650| `ANTHROPIC_DEFAULT_OPUS_MODEL` | El modelo a utilizar para `opus`, o para `opusplan` cuando Plan Mode está activo. |646| `ANTHROPIC_DEFAULT_OPUS_MODEL` | El modelo a utilizar para `opus`, o para `opusplan` cuando Plan Mode está activo. |

651| `ANTHROPIC_DEFAULT_SONNET_MODEL` | El modelo a utilizar para `sonnet`, o para `opusplan` cuando Plan Mode no está activo. |647| `ANTHROPIC_DEFAULT_SONNET_MODEL` | El modelo a utilizar para `sonnet`, o para `opusplan` cuando Plan Mode no está activo. |

652| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | El modelo a utilizar para `haiku`, o [funcionalidad de fondo](/es/costs#background-token-usage) |648| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | El modelo a utilizar para `haiku`, o [funcionalidad de fondo](/docs/es/costs#background-token-usage) |

653| `CLAUDE_CODE_SUBAGENT_MODEL` | El modelo a utilizar para todos los [subagents](/es/sub-agents#choose-a-model), [agent teams](/es/agent-teams), y los agentes que ejecuta un [workflow](/es/workflows). Acepta un alias como `haiku` o un nombre de modelo completo, y anula tanto el parámetro `model` por invocación como el frontmatter `model` de la definición del subagent. Establezca en `inherit` para utilizar la resolución de modelo normal en su lugar |649| `CLAUDE_CODE_SUBAGENT_MODEL` | El modelo a utilizar para todos los [subagents](/docs/es/sub-agents#choose-a-model), [agent teams](/docs/es/agent-teams), y los agentes que ejecuta un [workflow](/docs/es/workflows). Acepta un alias como `haiku` o un nombre de modelo completo, y anula tanto el parámetro `model` por invocación como el frontmatter `model` de la definición del subagent. Establezca en `inherit` para utilizar la resolución de modelo normal en su lugar |

654 650 

655Nota: `ANTHROPIC_SMALL_FAST_MODEL` está deprecado en favor de `ANTHROPIC_DEFAULT_HAIKU_MODEL`.651Nota: `ANTHROPIC_SMALL_FAST_MODEL` está deprecado en favor de `ANTHROPIC_DEFAULT_HAIKU_MODEL`.

656 652 


658 Fijar modelos para implementaciones de terceros654 Fijar modelos para implementaciones de terceros

659</h3>655</h3>

660 656 

661Cuando implemente Claude Code a través de [Amazon Bedrock](/es/amazon-bedrock), [Plataforma de Agentes de Google Cloud](/es/google-vertex-ai), [Microsoft Foundry](/es/microsoft-foundry), o [Claude Platform on AWS](/es/claude-platform-on-aws), fije versiones de modelo antes de implementar para usuarios.657Cuando implemente Claude Code a través de [Amazon Bedrock](/docs/es/amazon-bedrock), [Plataforma de Agentes de Google Cloud](/docs/es/google-vertex-ai), [Microsoft Foundry](/docs/es/microsoft-foundry), o [Claude Platform on AWS](/docs/es/claude-platform-on-aws), fije versiones de modelo antes de implementar para usuarios.

662 658 

663Sin fijar, Claude Code utiliza alias de modelo como `fable`, `opus`, `sonnet` y `haiku` que se resuelven a un ID de modelo predeterminado integrado para cada proveedor. Ese predeterminado puede rezagarse con respecto a la versión más reciente de Anthropic, y el modelo al que apunta puede que aún no esté habilitado en la cuenta de un usuario. Cuando el predeterminado no está disponible, los usuarios de Amazon Bedrock y Plataforma de Agentes de Google Cloud ven un aviso y la sesión retrocede a una versión anterior del modelo predeterminado, o al modelo Sonnet predeterminado cuando el predeterminado es un modelo Opus y no hay versión de Opus disponible. Los usuarios de Microsoft Foundry ven errores en su lugar, porque Microsoft Foundry no tiene ninguna verificación de inicio equivalente.659Sin fijar, Claude Code utiliza alias de modelo como `fable`, `opus`, `sonnet` y `haiku` que se resuelven a un ID de modelo predeterminado integrado para cada proveedor. Ese predeterminado puede rezagarse con respecto a la versión más reciente de Anthropic, y el modelo al que apunta puede que aún no esté habilitado en la cuenta de un usuario. Cuando el predeterminado no está disponible, los usuarios de Amazon Bedrock y Plataforma de Agentes de Google Cloud ven un aviso y la sesión retrocede a una versión anterior del modelo predeterminado, o al modelo Sonnet predeterminado cuando el predeterminado es un modelo Opus y no hay versión de Opus disponible. Los usuarios de Microsoft Foundry ven errores en su lugar, porque Microsoft Foundry no tiene ninguna verificación de inicio equivalente.

664 660 


689* El sufijo se lee por variable, no por modelo. En Amazon Bedrock, Plataforma de Agentes de Google Cloud y Microsoft Foundry, un ID de modelo sin `[1m]` en una variable utiliza contexto de 200K incluso si otra variable establece el mismo modelo con el sufijo. Sonnet 5 siempre se ejecuta con la ventana de 1M en estos proveedores y nunca necesita el sufijo.685* El sufijo se lee por variable, no por modelo. En Amazon Bedrock, Plataforma de Agentes de Google Cloud y Microsoft Foundry, un ID de modelo sin `[1m]` en una variable utiliza contexto de 200K incluso si otra variable establece el mismo modelo con el sufijo. Sonnet 5 siempre se ejecuta con la ventana de 1M en estos proveedores y nunca necesita el sufijo.

690 686 

691<Note>687<Note>

692 Una lista de permitidos `availableModels` entregada a través de [MDM o un archivo de configuración administrado](/es/settings#settings-files) aún se aplica cuando se utilizan proveedores de terceros; [la configuración administrada por servidor no se entrega allí](/es/server-managed-settings#platform-availability). El filtrado coincide con un alias de modelo como `opus`, un prefijo de versión como `claude-opus-4-8`, o el ID de modelo completo en forma de proveedor. Los prefijos específicos del proveedor como `us.anthropic.` no se eliminan, por lo que para permitir un modelo específico, enumere el mismo ID en forma de proveedor que muestra el selector, o asígnelo a través de [`modelOverrides`](#override-model-ids-per-version). Cualquier sufijo `[1m]` se elimina tanto de la entrada de la lista de permitidos como del modelo solicitado antes de coincidir.688 Una lista de permitidos `availableModels` entregada a través de [MDM o un archivo de configuración administrado](/docs/es/settings#settings-files) aún se aplica cuando se utilizan proveedores de terceros; [la configuración administrada por servidor no se entrega allí](/docs/es/server-managed-settings#platform-availability). El filtrado coincide con un alias de modelo como `opus`, un prefijo de versión como `claude-opus-4-8`, o el ID de modelo completo en forma de proveedor. Los prefijos específicos del proveedor como `us.anthropic.` no se eliminan, por lo que para permitir un modelo específico, enumere el mismo ID en forma de proveedor que muestra el selector, o asígnelo a través de [`modelOverrides`](#override-model-ids-per-version). Cualquier sufijo `[1m]` se elimina tanto de la entrada de la lista de permitidos como del modelo solicitado antes de coincidir.

693</Note>689</Note>

694 690 

695<h3 id="customize-pinned-model-display-and-capabilities">691<h3 id="customize-pinned-model-display-and-capabilities">


698 694 

699Cuando fija un modelo en un proveedor de terceros, el ID específico del proveedor aparece tal cual en el selector `/model` y Claude Code puede no reconocer qué características admite el modelo. Puede anular el nombre de visualización y declarar capacidades con variables de entorno complementarias para cada modelo fijo.695Cuando fija un modelo en un proveedor de terceros, el ID específico del proveedor aparece tal cual en el selector `/model` y Claude Code puede no reconocer qué características admite el modelo. Puede anular el nombre de visualización y declarar capacidades con variables de entorno complementarias para cada modelo fijo.

700 696 

701Estas variables tienen efecto en proveedores de terceros como Amazon Bedrock, Plataforma de Agentes de Google Cloud y Microsoft Foundry. Las variables `_NAME` y `_DESCRIPTION` también tienen efecto cuando `ANTHROPIC_BASE_URL` apunta a una [puerta de enlace LLM](/es/llm-gateway). No tienen efecto cuando se conecta directamente a `api.anthropic.com`.697Estas variables tienen efecto en proveedores de terceros como Amazon Bedrock, Plataforma de Agentes de Google Cloud y Microsoft Foundry. Las variables `_NAME` y `_DESCRIPTION` también tienen efecto cuando `ANTHROPIC_BASE_URL` apunta a una [puerta de enlace LLM](/docs/es/llm-gateway). No tienen efecto cuando se conecta directamente a `api.anthropic.com`.

702 698 

703| Variable de entorno | Descripción |699| Variable de entorno | Descripción |

704| ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |700| ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |


713| Valor de capacidad | Habilita |709| Valor de capacidad | Habilita |

714| ---------------------- | ---------------------------------------------------------------------------------------------------- |710| ---------------------- | ---------------------------------------------------------------------------------------------------- |

715| `effort` | [Niveles de esfuerzo](#adjust-effort-level) y el comando `/effort` |711| `effort` | [Niveles de esfuerzo](#adjust-effort-level) y el comando `/effort` |

716| `xhigh_effort` | {/* min-version: 2.1.111 */}El nivel de esfuerzo `xhigh` |712| `xhigh_effort` | El nivel de esfuerzo `xhigh` |

717| `max_effort` | El nivel de esfuerzo `max` |713| `max_effort` | El nivel de esfuerzo `max` |

718| `thinking` | [Pensamiento extendido](#extended-thinking) |714| `thinking` | [Pensamiento extendido](#extended-thinking) |

719| `adaptive_thinking` | Razonamiento adaptativo que asigna dinámicamente el pensamiento basado en la complejidad de la tarea |715| `adaptive_thinking` | Razonamiento adaptativo que asigna dinámicamente el pensamiento basado en la complejidad de la tarea |


740 736 

741Esto permite a los administradores empresariales enrutar cada versión de modelo a un ARN de perfil de inferencia de Amazon Bedrock específico, nombre de versión de Plataforma de Agentes de Google Cloud o nombre de implementación de Microsoft Foundry para gobernanza, asignación de costos o enrutamiento regional.737Esto permite a los administradores empresariales enrutar cada versión de modelo a un ARN de perfil de inferencia de Amazon Bedrock específico, nombre de versión de Plataforma de Agentes de Google Cloud o nombre de implementación de Microsoft Foundry para gobernanza, asignación de costos o enrutamiento regional.

742 738 

743Establezca `modelOverrides` en su [archivo de configuración](/es/settings#settings-files):739Establezca `modelOverrides` en su [archivo de configuración](/docs/es/settings#settings-files):

744 740 

745```json theme={null}741```json theme={null}

746{742{


756 752 

757Las anulaciones reemplazan los IDs de modelo integrados que respaldan cada entrada en el selector `/model`. En Amazon Bedrock, las entradas de `modelOverrides` tienen precedencia sobre cualquier perfil de inferencia que Claude Code descubra automáticamente al inicio. Claude Code pasa valores que ya son específicos del proveedor, como ARNs de perfil de inferencia de Amazon Bedrock o nombres de implementación de Microsoft Foundry, al proveedor tal como están.753Las anulaciones reemplazan los IDs de modelo integrados que respaldan cada entrada en el selector `/model`. En Amazon Bedrock, las entradas de `modelOverrides` tienen precedencia sobre cualquier perfil de inferencia que Claude Code descubra automáticamente al inicio. Claude Code pasa valores que ya son específicos del proveedor, como ARNs de perfil de inferencia de Amazon Bedrock o nombres de implementación de Microsoft Foundry, al proveedor tal como están.

758 754 

759{/* min-version: 2.1.200 */}Las anulaciones también se aplican cuando pasa un ID de modelo de Anthropic directamente a través de `--model`, la variable de entorno `ANTHROPIC_MODEL`, o una variable de entorno `ANTHROPIC_DEFAULT_*_MODEL`. En Amazon Bedrock, Plataforma de Agentes de Google Cloud y [Mantle](/es/amazon-bedrock#use-the-mantle-endpoint), un ID de modelo de Anthropic sin entrada de `modelOverrides` se resuelve al mismo ID específico del proveedor que la fila del selector `/model` para esa versión, cuando el proveedor admite esa versión. Mantle admite un subconjunto de versiones. Para un ID de modelo de Anthropic fuera de ese subconjunto, Claude Code envía el ID sin procesar a Mantle sin asignarlo, a menos que una entrada de `modelOverrides` lo cubra. Antes de v2.1.200, `--model` y los valores de variable de entorno llegaban al proveedor tal como estaban sin pasar por el mapa de anulación.755Las anulaciones también se aplican cuando pasa un ID de modelo de Anthropic directamente a través de `--model`, la variable de entorno `ANTHROPIC_MODEL`, o una variable de entorno `ANTHROPIC_DEFAULT_*_MODEL`. En Amazon Bedrock, Plataforma de Agentes de Google Cloud y [Mantle](/docs/es/amazon-bedrock#use-the-mantle-endpoint), un ID de modelo de Anthropic sin entrada de `modelOverrides` se resuelve al mismo ID específico del proveedor que la fila del selector `/model` para esa versión, cuando el proveedor admite esa versión. Mantle admite un subconjunto de versiones. Para un ID de modelo de Anthropic fuera de ese subconjunto, Claude Code envía el ID sin procesar a Mantle sin asignarlo, a menos que una entrada de `modelOverrides` lo cubra. Antes de v2.1.200, `--model` y los valores de variable de entorno llegaban al proveedor tal como estaban sin pasar por el mapa de anulación.

760 756 

761`modelOverrides` funciona junto con `availableModels`. La lista de permitidos se evalúa contra el ID de modelo de Anthropic, no el valor de anulación, por lo que una entrada como `"opus"` en `availableModels` continúa coincidiendo incluso cuando las versiones de Opus se asignan a ARNs. Cuando `enforceAvailableModels` se establece en configuración administrada, el Predeterminado aplicado se resuelve a través de `modelOverrides` desde la [fuente administrada de mayor precedencia](/es/server-managed-settings#settings-precedence) únicamente. La asignación de un administrador, como una versión fijada a un ARN de perfil de inferencia, se respeta en el Predeterminado aplicado. Las anulaciones de configuración de usuario o proyecto no la afectan.757`modelOverrides` funciona junto con `availableModels`. La lista de permitidos se evalúa contra el ID de modelo de Anthropic, no el valor de anulación, por lo que una entrada como `"opus"` en `availableModels` continúa coincidiendo incluso cuando las versiones de Opus se asignan a ARNs. Cuando `enforceAvailableModels` se establece en configuración administrada, el Predeterminado aplicado se resuelve a través de `modelOverrides` desde la [fuente administrada de mayor precedencia](/docs/es/server-managed-settings#settings-precedence) únicamente. La asignación de un administrador, como una versión fijada a un ARN de perfil de inferencia, se respeta en el Predeterminado aplicado. Las anulaciones de configuración de usuario o proyecto no la afectan.

762 758 

763{/* min-version: 2.1.200 */}Cuando `availableModels` se establece en [configuración administrada](/es/settings#settings-files), solo `modelOverrides` de esa fuente administrada se aplican a un ID de modelo de Anthropic pasado directamente a través de `--model` o las variables de entorno anteriores. Claude Code ignora las anulaciones en configuración de usuario o proyecto para esos IDs, y nunca resuelve un ID que la lista administrada excluye a través de `modelOverrides` de ninguna fuente de configuración. Esta restricción de fuente administrada requiere Claude Code v2.1.200 o posterior. Consulte [Restringir la selección de modelo](#restrict-model-selection) para saber cómo se manejan los IDs bloqueados.759Cuando `availableModels` se establece en [configuración administrada](/docs/es/settings#settings-files), solo `modelOverrides` de esa fuente administrada se aplican a un ID de modelo de Anthropic pasado directamente a través de `--model` o las variables de entorno anteriores. Claude Code ignora las anulaciones en configuración de usuario o proyecto para esos IDs, y nunca resuelve un ID que la lista administrada excluye a través de `modelOverrides` de ninguna fuente de configuración. Esta restricción de fuente administrada requiere Claude Code v2.1.200 o posterior. Consulte [Restringir la selección de modelo](#restrict-model-selection) para saber cómo se manejan los IDs bloqueados.

764 760 

765<h3 id="prompt-caching-configuration">761<h3 id="prompt-caching-configuration">

766 Configuración de almacenamiento en caché de indicaciones762 Configuración de almacenamiento en caché de indicaciones

767</h3>763</h3>

768 764 

769Claude Code utiliza automáticamente [almacenamiento en caché de indicaciones](/es/prompt-caching) para optimizar el rendimiento y reducir costos. Puede desactivar el almacenamiento en caché de indicaciones globalmente o para niveles de modelo específicos:765Claude Code utiliza automáticamente [almacenamiento en caché de indicaciones](/docs/es/prompt-caching) para optimizar el rendimiento y reducir costos. Puede desactivar el almacenamiento en caché de indicaciones globalmente o para niveles de modelo específicos:

770 766 

771| Variable de entorno | Descripción |767| Variable de entorno | Descripción |

772| ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |768| ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |


776| `DISABLE_PROMPT_CACHING_OPUS` | Establezca en `1` para desactivar el almacenamiento en caché de indicaciones solo para modelos Opus |772| `DISABLE_PROMPT_CACHING_OPUS` | Establezca en `1` para desactivar el almacenamiento en caché de indicaciones solo para modelos Opus |

777| `DISABLE_PROMPT_CACHING_FABLE` | Establezca en `1` para desactivar el almacenamiento en caché de indicaciones solo para modelos Fable |773| `DISABLE_PROMPT_CACHING_FABLE` | Establezca en `1` para desactivar el almacenamiento en caché de indicaciones solo para modelos Fable |

778 774 

779Para cambiar el TTL de caché u obtener más información sobre qué desencadena un error de caché, consulte [Cómo Claude Code utiliza el almacenamiento en caché de indicaciones](/es/prompt-caching).775Para cambiar el TTL de caché u obtener más información sobre qué desencadena un error de caché, consulte [Cómo Claude Code utiliza el almacenamiento en caché de indicaciones](/docs/es/prompt-caching).

Details

47 Configuración del administrador47 Configuración del administrador

48</h2>48</h2>

49 49 

50Los administradores pueden configurar los ajustes de OpenTelemetry para todos los usuarios a través del [archivo de configuración administrada](/es/settings#settings-files). Esto permite el control centralizado de los ajustes de telemetría en toda una organización. Consulta la [precedencia de configuración](/es/settings#settings-precedence) para obtener más información sobre cómo se aplican los ajustes.50Los administradores pueden configurar los ajustes de OpenTelemetry para todos los usuarios a través del [archivo de configuración administrada](/docs/es/settings#settings-files). Esto permite el control centralizado de los ajustes de telemetría en toda una organización. Consulta la [precedencia de configuración](/docs/es/settings#settings-precedence) para obtener más información sobre cómo se aplican los ajustes.

51 51 

52Ejemplo de configuración de ajustes administrados:52Ejemplo de configuración de ajustes administrados:

53 53 


93| `OTEL_METRIC_EXPORT_INTERVAL` | Intervalo de exportación en milisegundos (predeterminado: 60000) | `5000`, `60000` |93| `OTEL_METRIC_EXPORT_INTERVAL` | Intervalo de exportación en milisegundos (predeterminado: 60000) | `5000`, `60000` |

94| `OTEL_LOGS_EXPORT_INTERVAL` | Intervalo de exportación de registros en milisegundos (predeterminado: 5000) | `1000`, `10000` |94| `OTEL_LOGS_EXPORT_INTERVAL` | Intervalo de exportación de registros en milisegundos (predeterminado: 5000) | `1000`, `10000` |

95| `OTEL_LOG_USER_PROMPTS` | Habilitar registro del contenido del mensaje del usuario (predeterminado: deshabilitado) | `1` para habilitar |95| `OTEL_LOG_USER_PROMPTS` | Habilitar registro del contenido del mensaje del usuario (predeterminado: deshabilitado) | `1` para habilitar |

96| `OTEL_LOG_ASSISTANT_RESPONSES` | Habilitar registro del texto de respuesta del asistente en eventos `assistant_response` (predeterminado: deshabilitado). Cuando no está establecido, recurre al valor de `OTEL_LOG_USER_PROMPTS`. {/* min-version: 2.1.193 */}Requiere Claude Code v2.1.193 o posterior | `1` para habilitar, `0` para mantener redactado |96| `OTEL_LOG_ASSISTANT_RESPONSES` | Habilitar registro del texto de respuesta del asistente en eventos `assistant_response` (predeterminado: deshabilitado). Cuando no está establecido, recurre al valor de `OTEL_LOG_USER_PROMPTS`. Requiere Claude Code v2.1.193 o posterior | `1` para habilitar, `0` para mantener redactado |

97| `OTEL_LOG_TOOL_DETAILS` | Habilitar registro de parámetros de herramientas e argumentos de entrada en eventos de herramientas y atributos de span de traza: comandos Bash, nombres de servidor MCP y herramienta, nombres de habilidades, e entrada de herramienta. También habilita nombres de comandos personalizados, de plugin y MCP en eventos `user_prompt` (predeterminado: deshabilitado) | `1` para habilitar |97| `OTEL_LOG_TOOL_DETAILS` | Habilitar registro de parámetros de herramientas e argumentos de entrada en eventos de herramientas y atributos de span de traza: comandos Bash, nombres de servidor MCP y herramienta, nombres de habilidades, e entrada de herramienta. También habilita nombres de comandos personalizados, de plugin y MCP en eventos `user_prompt` (predeterminado: deshabilitado) | `1` para habilitar |

98| `OTEL_LOG_TOOL_CONTENT` | Habilitar registro de contenido de entrada y salida de herramientas en eventos de span (predeterminado: deshabilitado). Requiere [trazas](#traces-beta). El contenido se trunca en 60 KB | `1` para habilitar |98| `OTEL_LOG_TOOL_CONTENT` | Habilitar registro de contenido de entrada y salida de herramientas en eventos de span (predeterminado: deshabilitado). Requiere [trazas](#traces-beta). El contenido se trunca en 60 KB | `1` para habilitar |

99| `OTEL_LOG_RAW_API_BODIES` | Emitir el cuerpo completo de solicitud y respuesta JSON de la API de Mensajes de Anthropic como eventos de registro `api_request_body` / `api_response_body` (predeterminado: deshabilitado). Los cuerpos incluyen el historial de conversación completo. Habilitar esto implica consentimiento a todo lo que `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_TOOL_DETAILS`, y `OTEL_LOG_TOOL_CONTENT` revelarían | `1` para cuerpos en línea truncados en 60 KB, o `file:<dir>` para cuerpos sin truncar en disco con un puntero `body_ref` en el evento |99| `OTEL_LOG_RAW_API_BODIES` | Emitir el cuerpo completo de solicitud y respuesta JSON de la API de Mensajes de Anthropic como eventos de registro `api_request_body` / `api_response_body` (predeterminado: deshabilitado). Los cuerpos incluyen el historial de conversación completo. Habilitar esto implica consentimiento a todo lo que `OTEL_LOG_USER_PROMPTS`, `OTEL_LOG_TOOL_DETAILS`, y `OTEL_LOG_TOOL_CONTENT` revelarían | `1` para cuerpos en línea truncados en 60 KB, o `file:<dir>` para cuerpos sin truncar en disco con un puntero `body_ref` en el evento |


108 108 

109| Protocolo | Variables de certificado de cliente | Confiar en la CA del recopilador con |109| Protocolo | Variables de certificado de cliente | Confiar en la CA del recopilador con |

110| :--------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------- |110| :--------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------- |

111| `http/protobuf`, `http/json` | `CLAUDE_CODE_CLIENT_CERT`, `CLAUDE_CODE_CLIENT_KEY`, y opcionalmente `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE`. Consulta [Configuración de red](/es/network-config#mtls-authentication) | `NODE_EXTRA_CA_CERTS` |111| `http/protobuf`, `http/json` | `CLAUDE_CODE_CLIENT_CERT`, `CLAUDE_CODE_CLIENT_KEY`, y opcionalmente `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE`. Consulta [Configuración de red](/docs/es/network-config#mtls-authentication) | `NODE_EXTRA_CA_CERTS` |

112| `grpc` | `OTEL_EXPORTER_OTLP_CLIENT_KEY` y `OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE`, o las variantes por señal como `OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY` para usar un certificado diferente por señal | `OTEL_EXPORTER_OTLP_CERTIFICATE` |112| `grpc` | `OTEL_EXPORTER_OTLP_CLIENT_KEY` y `OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE`, o las variantes por señal como `OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY` para usar un certificado diferente por señal | `OTEL_EXPORTER_OTLP_CERTIFICATE` |

113 113 

114Para `grpc`, el SDK de OpenTelemetry lee las variables OTLP estándar directamente, por lo que las configuraciones existentes que establecen las variables de métricas por señal continúan funcionando.114Para `grpc`, el SDK de OpenTelemetry lee las variables OTLP estándar directamente, por lo que las configuraciones existentes que establecen las variables de métricas por señal continúan funcionando.


198| `query_source` | Subsistema que emitió la solicitud, como `repl_main_thread` o un nombre de subagente | |198| `query_source` | Subsistema que emitió la solicitud, como `repl_main_thread` o un nombre de subagente | |

199| `agent_id` | Identificador del subagente o compañero que emitió la solicitud. Ausente en la sesión principal | |199| `agent_id` | Identificador del subagente o compañero que emitió la solicitud. Ausente en la sesión principal | |

200| `parent_agent_id` | Identificador del agente que generó este. Ausente para la sesión principal y para agentes generados directamente desde ella | |200| `parent_agent_id` | Identificador del agente que generó este. Ausente para la sesión principal y para agentes generados directamente desde ella | |

201| `workflow.run_id` | Identificador de ejecución de la ejecución de la herramienta [Workflow](/es/workflows), prefijado con `wf_`. Ausente para agentes no generados por un workflow | |201| `workflow.run_id` | Identificador de ejecución de la ejecución de la herramienta [Workflow](/docs/es/workflows), prefijado con `wf_`. Ausente para agentes no generados por un workflow | |

202| `workflow.name` | Nombre del workflow que generó este agente. Los nombres creados por el usuario se reemplazan con `custom` a menos que la puerta esté establecida | `OTEL_LOG_TOOL_DETAILS` |202| `workflow.name` | Nombre del workflow que generó este agente. Los nombres creados por el usuario se reemplazan con `custom` a menos que la puerta esté establecida | `OTEL_LOG_TOOL_DETAILS` |

203| `speed` | `fast` o `normal` | |203| `speed` | `fast` o `normal` | |

204| `llm_request.context` | `interaction`, `tool`, o `standalone` dependiendo del span padre | |204| `llm_request.context` | `interaction`, `tool`, o `standalone` dependiendo del span padre | |


314Si el auxiliar falla o imprime salida que no cumple con estos requisitos, Claude Code reporta el error en:314Si el auxiliar falla o imprime salida que no cumple con estos requisitos, Claude Code reporta el error en:

315 315 

316* Salida de `/status`316* Salida de `/status`

317* El registro de depuración, cuando se ejecuta con [`--debug`](/es/cli-reference#cli-flags) o después de ejecutar `/debug` en la sesión317* El registro de depuración, cuando se ejecuta con [`--debug`](/docs/es/cli-reference#cli-flags) o después de ejecutar `/debug` en la sesión

318* stderr, en sesiones no interactivas iniciadas con `-p`318* stderr, en sesiones no interactivas iniciadas con `-p`

319 319 

320<h4 id="refresh-behavior">320<h4 id="refresh-behavior">


441| `terminal.type` | Tipo de terminal, como `iTerm.app`, `vscode`, `cursor`, o `tmux` | Siempre incluido cuando se detecta |441| `terminal.type` | Tipo de terminal, como `iTerm.app`, `vscode`, `cursor`, o `tmux` | Siempre incluido cuando se detecta |

442| Claves de `OTEL_RESOURCE_ATTRIBUTES` | Atributos personalizados que establece, como `department` o `team.id`. Consulte [Soporte de organización multiequipo](#multi-team-organization-support) | `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` (predeterminado: true) |442| Claves de `OTEL_RESOURCE_ATTRIBUTES` | Atributos personalizados que establece, como `department` o `team.id`. Consulte [Soporte de organización multiequipo](#multi-team-organization-support) | `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` (predeterminado: true) |

443 443 

444Cuando Claude Code inicia sesión en una [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway), la CLI marca las exportaciones con la identidad autenticada de la sesión de la puerta de enlace: `user.id` es el asunto del IdP en lugar de un identificador de instalación anónimo, `user.email` es el correo electrónico con sesión iniciada, y `user.groups` lleva la pertenencia al grupo del IdP como una cadena separada por comas. Cada exportación también lleva `identity.source: gateway-oidc`. La identidad de la puerta de enlace se aplica al final, por lo que las claves `user.*` e `identity.*` establecidas a través de `OTEL_RESOURCE_ATTRIBUTES` se ignoran en sesiones de puerta de enlace.444Cuando Claude Code inicia sesión en una [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway), la CLI marca las exportaciones con la identidad autenticada de la sesión de la puerta de enlace: `user.id` es el asunto del IdP en lugar de un identificador de instalación anónimo, `user.email` es el correo electrónico con sesión iniciada, y `user.groups` lleva la pertenencia al grupo del IdP como una cadena separada por comas. Cada exportación también lleva `identity.source: gateway-oidc`. La identidad de la puerta de enlace se aplica al final, por lo que las claves `user.*` e `identity.*` establecidas a través de `OTEL_RESOURCE_ATTRIBUTES` se ignoran en sesiones de puerta de enlace.

445 445 

446Los eventos incluyen adicionalmente los siguientes atributos. Estos nunca se adjuntan a las métricas porque causarían cardinalidad ilimitada:446Los eventos incluyen adicionalmente los siguientes atributos. Estos nunca se adjuntan a las métricas porque causarían cardinalidad ilimitada:

447 447 

448* `prompt.id`: UUID correlacionando un mensaje del usuario con todos los eventos posteriores hasta el siguiente mensaje. Consulte [Atributos de correlación de eventos](#event-correlation-attributes).448* `prompt.id`: UUID correlacionando un mensaje del usuario con todos los eventos posteriores hasta el siguiente mensaje. Consulte [Atributos de correlación de eventos](#event-correlation-attributes).

449* `workspace.host_paths`: directorios de espacio de trabajo del host seleccionados en la aplicación de escritorio, como una matriz de cadenas449* `workspace.host_paths`: directorios de espacio de trabajo del host seleccionados en la aplicación de escritorio, como una matriz de cadenas

450* `workflow.run_id`: identificador de ejecución, con prefijo `wf_`, en los eventos de API y herramienta emitidos por agentes que pertenecen a una ejecución de herramienta [Workflow](/es/workflows). Filtrar eventos por un `workflow.run_id` reconstruye las solicitudes de API y resultados de herramientas de esa ejecución. El identificador cubre los agentes que genera el script de flujo de trabajo y cualquier agente que esos generen a su vez, como invocaciones de habilidades. Coincide con el identificador de ejecución reportado en el resultado de la herramienta Workflow. Ausente en todos los demás eventos. Requiere Claude Code v2.1.202 o posterior450* `workflow.run_id`: identificador de ejecución, con prefijo `wf_`, en los eventos de API y herramienta emitidos por agentes que pertenecen a una ejecución de herramienta [Workflow](/docs/es/workflows). Filtrar eventos por un `workflow.run_id` reconstruye las solicitudes de API y resultados de herramientas de esa ejecución. El identificador cubre los agentes que genera el script de flujo de trabajo y cualquier agente que esos generen a su vez, como invocaciones de habilidades. Coincide con el identificador de ejecución reportado en el resultado de la herramienta Workflow. Ausente en todos los demás eventos. Requiere Claude Code v2.1.202 o posterior

451* `workflow.name`: nombre del flujo de trabajo, el `meta.name` de su script, emitido junto con `workflow.run_id`. Los nombres de flujo de trabajo integrados aparecen tal cual cuando la ejecución ejecuta el script integrado sin modificar. Los nombres creados por el usuario, incluidas copias editadas de scripts integrados, se reemplazan con `custom` a menos que `OTEL_LOG_TOOL_DETAILS=1` esté establecido. Requiere Claude Code v2.1.202 o posterior451* `workflow.name`: nombre del flujo de trabajo, el `meta.name` de su script, emitido junto con `workflow.run_id`. Los nombres de flujo de trabajo integrados aparecen tal cual cuando la ejecución ejecuta el script integrado sin modificar. Los nombres creados por el usuario, incluidas copias editadas de scripts integrados, se reemplazan con `custom` a menos que `OTEL_LOG_TOOL_DETAILS=1` esté establecido. Requiere Claude Code v2.1.202 o posterior

452 452 

453<h3 id="metrics">453<h3 id="metrics">


528* `model`: Identificador de modelo (por ejemplo, "claude-sonnet-5")528* `model`: Identificador de modelo (por ejemplo, "claude-sonnet-5")

529* `query_source`: Categoría del subsistema que emitió la solicitud. Uno de `"main"`, `"subagent"`, o `"auxiliary"`529* `query_source`: Categoría del subsistema que emitió la solicitud. Uno de `"main"`, `"subagent"`, o `"auxiliary"`

530* `speed`: `"fast"` cuando la solicitud utilizó modo rápido. Ausente de otra manera530* `speed`: `"fast"` cuando la solicitud utilizó modo rápido. Ausente de otra manera

531* `effort`: [Nivel de esfuerzo](/es/model-config#adjust-effort-level) aplicado a la solicitud: `"low"`, `"medium"`, `"high"`, `"xhigh"`, o `"max"`. Ausente cuando el modelo no admite esfuerzo.531* `effort`: [Nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) aplicado a la solicitud: `"low"`, `"medium"`, `"high"`, `"xhigh"`, o `"max"`. Ausente cuando el modelo no admite esfuerzo.

532* `agent.name`: Tipo de subagente que emitió la solicitud. Los nombres de agentes integrados y de plugins del mercado oficial aparecen tal cual. Otros nombres de agentes definidos por el usuario se reemplazan con `"custom"`. Ausente cuando la solicitud no fue emitida por un tipo de subagente nombrado.532* `agent.name`: Tipo de subagente que emitió la solicitud. Los nombres de agentes integrados y de plugins del mercado oficial aparecen tal cual. Otros nombres de agentes definidos por el usuario se reemplazan con `"custom"`. Ausente cuando la solicitud no fue emitida por un tipo de subagente nombrado.

533* `skill.name`: Habilidad activa para la solicitud, establecida por la herramienta Skill, un comando `/`, o heredada por un subagente generado. Los nombres de habilidades integradas, agrupadas, definidas por el usuario y de plugins del mercado oficial aparecen tal cual. Los nombres de habilidades de plugins de terceros se reemplazan con `"third-party"`. Ausente cuando no hay habilidad activa.533* `skill.name`: Habilidad activa para la solicitud, establecida por la herramienta Skill, un comando `/`, o heredada por un subagente generado. Los nombres de habilidades integradas, agrupadas, definidas por el usuario y de plugins del mercado oficial aparecen tal cual. Los nombres de habilidades de plugins de terceros se reemplazan con `"third-party"`. Ausente cuando no hay habilidad activa.

534* `plugin.name`: Plugin propietario cuando la habilidad activa o subagente es proporcionado por un plugin. Los nombres de plugins del mercado oficial aparecen tal cual. Los nombres de plugins de terceros se reemplazan con `"third-party"`. Ausente cuando ni la habilidad ni el subagente tienen un plugin propietario.534* `plugin.name`: Plugin propietario cuando la habilidad activa o subagente es proporcionado por un plugin. Los nombres de plugins del mercado oficial aparecen tal cual. Los nombres de plugins de terceros se reemplazan con `"third-party"`. Ausente cuando ni la habilidad ni el subagente tienen un plugin propietario.


549* `model`: Identificador de modelo (por ejemplo, "claude-sonnet-5")549* `model`: Identificador de modelo (por ejemplo, "claude-sonnet-5")

550* `query_source`: Categoría del subsistema que emitió la solicitud. Uno de `"main"`, `"subagent"`, o `"auxiliary"`550* `query_source`: Categoría del subsistema que emitió la solicitud. Uno de `"main"`, `"subagent"`, o `"auxiliary"`

551* `speed`: `"fast"` cuando la solicitud utilizó modo rápido. Ausente de otra manera551* `speed`: `"fast"` cuando la solicitud utilizó modo rápido. Ausente de otra manera

552* `effort`: [Nivel de esfuerzo](/es/model-config#adjust-effort-level) aplicado a la solicitud. Consulte [Contador de costo](#cost-counter) para detalles.552* `effort`: [Nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) aplicado a la solicitud. Consulte [Contador de costo](#cost-counter) para detalles.

553* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Atribución de habilidad, plugin, agente y MCP para la solicitud. Consulte [Contador de costo](#cost-counter) para definiciones y comportamiento de redacción.553* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Atribución de habilidad, plugin, agente y MCP para la solicitud. Consulte [Contador de costo](#cost-counter) para definiciones y comportamiento de redacción.

554 554 

555<h4 id="code-edit-tool-decision-counter">555<h4 id="code-edit-tool-decision-counter">


695* `request_id`: ID de solicitud de API de Anthropic del encabezado `request-id` de la respuesta, como `"req_011..."`. Presente solo cuando la API devuelve uno.695* `request_id`: ID de solicitud de API de Anthropic del encabezado `request-id` de la respuesta, como `"req_011..."`. Presente solo cuando la API devuelve uno.

696* `speed`: `"fast"` o `"normal"`, indicando si el modo rápido estaba activo696* `speed`: `"fast"` o `"normal"`, indicando si el modo rápido estaba activo

697* `query_source`: Subsistema que emitió la solicitud, como `"repl_main_thread"`, `"compact"`, o un nombre de subagente697* `query_source`: Subsistema que emitió la solicitud, como `"repl_main_thread"`, `"compact"`, o un nombre de subagente

698* `effort`: [Nivel de esfuerzo](/es/model-config#adjust-effort-level) aplicado a la solicitud: `"low"`, `"medium"`, `"high"`, `"xhigh"`, o `"max"`. Ausente cuando el modelo no admite esfuerzo.698* `effort`: [Nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) aplicado a la solicitud: `"low"`, `"medium"`, `"high"`, `"xhigh"`, o `"max"`. Ausente cuando el modelo no admite esfuerzo.

699* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Atribución de habilidad, plugin, agente y MCP para la solicitud. Consulte [Contador de costo](#cost-counter) para definiciones y comportamiento de redacción.699* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Atribución de habilidad, plugin, agente y MCP para la solicitud. Consulte [Contador de costo](#cost-counter) para definiciones y comportamiento de redacción.

700 700 

701<h4 id="api-error-event">701<h4 id="api-error-event">


720* `request_id`: ID de solicitud de API de Anthropic del encabezado `request-id` de la respuesta, como `"req_011..."`. Presente solo cuando la API devuelve uno.720* `request_id`: ID de solicitud de API de Anthropic del encabezado `request-id` de la respuesta, como `"req_011..."`. Presente solo cuando la API devuelve uno.

721* `speed`: `"fast"` o `"normal"`, indicando si el modo rápido estaba activo721* `speed`: `"fast"` o `"normal"`, indicando si el modo rápido estaba activo

722* `query_source`: Subsistema que emitió la solicitud, como `"repl_main_thread"`, `"compact"`, o un nombre de subagente722* `query_source`: Subsistema que emitió la solicitud, como `"repl_main_thread"`, `"compact"`, o un nombre de subagente

723* `effort`: [Nivel de esfuerzo](/es/model-config#adjust-effort-level) aplicado a la solicitud. Ausente cuando el modelo no admite esfuerzo.723* `effort`: [Nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) aplicado a la solicitud. Ausente cuando el modelo no admite esfuerzo.

724* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Atribución de habilidad, plugin, agente y MCP para la solicitud. Consulte [Contador de costo](#cost-counter) para definiciones y comportamiento de redacción.724* `agent.name`, `skill.name`, `plugin.name`, `marketplace.name`, `mcp_server.name`, `mcp_tool.name`: Atribución de habilidad, plugin, agente y MCP para la solicitud. Consulte [Contador de costo](#cost-counter) para definiciones y comportamiento de redacción.

725 725 

726<h4 id="api-refusal-event">726<h4 id="api-refusal-event">


740* `model`: Identificador de modelo de la solicitud740* `model`: Identificador de modelo de la solicitud

741* `request_id`: ID de solicitud de API de Anthropic del encabezado `request-id` de la respuesta, como `"req_011..."`. Presente solo cuando la API devuelve uno.741* `request_id`: ID de solicitud de API de Anthropic del encabezado `request-id` de la respuesta, como `"req_011..."`. Presente solo cuando la API devuelve uno.

742* `query_source`: Subsistema que emitió la solicitud, como `"repl_main_thread"`, `"compact"`, o un nombre de subagente. Consulte [`api_request`](#api-request-event) para definiciones.742* `query_source`: Subsistema que emitió la solicitud, como `"repl_main_thread"`, `"compact"`, o un nombre de subagente. Consulte [`api_request`](#api-request-event) para definiciones.

743* `speed`: Ya sea `"fast"` cuando [Modo rápido](/es/fast-mode) está activo, o `"normal"`743* `speed`: Ya sea `"fast"` cuando [Modo rápido](/docs/es/fast-mode) está activo, o `"normal"`

744* `attempt`: Número de intento de reintento. El primer intento es `1`.744* `attempt`: Número de intento de reintento. El primer intento es `1`.

745* `effort`: [Nivel de esfuerzo](/es/model-config#adjust-effort-level) aplicado a la solicitud. Ausente cuando el modelo no admite esfuerzo.745* `effort`: [Nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) aplicado a la solicitud. Ausente cuando el modelo no admite esfuerzo.

746* `server_fallback_hop`: `true` cuando el fallback de modelo del lado del servidor de la API ya reintentó este rechazo en un modelo diferente, por lo que el usuario no vio este rechazo en particular. `false` cuando la solicitud terminó en un rechazo. Un único turno puede emitir tanto un evento hop `true` como un evento final `false` posterior cuando el modelo de fallback también rechaza.746* `server_fallback_hop`: `true` cuando el fallback de modelo del lado del servidor de la API ya reintentó este rechazo en un modelo diferente, por lo que el usuario no vio este rechazo en particular. `false` cuando la solicitud terminó en un rechazo. Un único turno puede emitir tanto un evento hop `true` como un evento final `false` posterior cuando el modelo de fallback también rechaza.

747* `has_category`: `true` cuando la respuesta de la API llevaba una `stop_details.category` de `"cyber"`, `"bio"`, `"frontier_llm"`, o `"reasoning_extraction"`. `false` cuando la respuesta no llevaba categoría o un valor fuera de ese conjunto. Ausente cuando `server_fallback_hop` es `true`, porque los bloques hop no llevan `stop_details`.747* `has_category`: `true` cuando la respuesta de la API llevaba una `stop_details.category` de `"cyber"`, `"bio"`, `"frontier_llm"`, o `"reasoning_extraction"`. `false` cuando la respuesta no llevaba categoría o un valor fuera de ese conjunto. Ausente cuando `server_fallback_hop` es `true`, porque los bloques hop no llevan `stop_details`.

748* `has_explanation`: `true` cuando la respuesta de la API llevaba una `stop_details.explanation`, de otra manera `false`. Ausente cuando `server_fallback_hop` es `true`.748* `has_explanation`: `true` cuando la respuesta de la API llevaba una `stop_details.explanation`, de otra manera `false`. Ausente cuando `server_fallback_hop` es `true`.


949* `skill_path_count`: número de directorios de habilidades que declara el plugin949* `skill_path_count`: número de directorios de habilidades que declara el plugin

950* `command_path_count`: número de directorios de comandos que declara el plugin950* `command_path_count`: número de directorios de comandos que declara el plugin

951* `agent_path_count`: número de directorios de agentes que declara el plugin951* `agent_path_count`: número de directorios de agentes que declara el plugin

952* `safe_mode`: `"true"` cuando la sesión se inició con [`--safe-mode`](/es/cli-reference), `"false"` de otra manera. En modo seguro este evento reporta solo inventario configurado; los comandos, habilidades, hooks y servidores MCP del plugin no se cargan. Requiere Claude Code v2.1.169 o posterior952* `safe_mode`: `"true"` cuando la sesión se inició con [`--safe-mode`](/docs/es/cli-reference), `"false"` de otra manera. En modo seguro este evento reporta solo inventario configurado; los comandos, habilidades, hooks y servidores MCP del plugin no se cargan. Requiere Claude Code v2.1.169 o posterior

953 953 

954<h4 id="skill-activated-event">954<h4 id="skill-activated-event">

955 Evento de habilidad activada955 Evento de habilidad activada


1027* `hook_event`: tipo de evento de hook, como `"PreToolUse"` o `"PostToolUse"`1027* `hook_event`: tipo de evento de hook, como `"PreToolUse"` o `"PostToolUse"`

1028* `hook_type`: tipo de implementación de hook: `"command"`, `"prompt"`, `"mcp_tool"`, `"http"`, o `"agent"`1028* `hook_type`: tipo de implementación de hook: `"command"`, `"prompt"`, `"mcp_tool"`, `"http"`, o `"agent"`

1029* `hook_source`: dónde se define el hook: `"userSettings"`, `"projectSettings"`, `"localSettings"`, `"flagSettings"`, `"policySettings"`, o `"pluginHook"`1029* `hook_source`: dónde se define el hook: `"userSettings"`, `"projectSettings"`, `"localSettings"`, `"flagSettings"`, `"policySettings"`, o `"pluginHook"`

1030* `safe_mode`: `"true"` cuando la sesión se inició con [`--safe-mode`](/es/cli-reference), `"false"` de otra manera. Requiere Claude Code v2.1.169 o posterior1030* `safe_mode`: `"true"` cuando la sesión se inició con [`--safe-mode`](/docs/es/cli-reference), `"false"` de otra manera. Requiere Claude Code v2.1.169 o posterior

1031* `hook_matcher` (cuando `OTEL_LOG_TOOL_DETAILS=1`): la cadena de coincidencia de la configuración del hook, cuando se establece una1031* `hook_matcher` (cuando `OTEL_LOG_TOOL_DETAILS=1`): la cadena de coincidencia de la configuración del hook, cuando se establece una

1032* `plugin.name` (cuando `hook_source` es `"pluginHook"`): nombre del plugin contribuyente. Para plugins fuera del mercado oficial y paquete integrado el valor es `"third-party"` a menos que `OTEL_LOG_TOOL_DETAILS=1`1032* `plugin.name` (cuando `hook_source` es `"pluginHook"`): nombre del plugin contribuyente. Para plugins fuera del mercado oficial y paquete integrado el valor es `"third-party"` a menos que `OTEL_LOG_TOOL_DETAILS=1`

1033* `plugin_id_hash` (cuando `hook_source` es `"pluginHook"`): hash determinista del nombre del plugin y mercado, enviado solo a su exportador configurado. Le permite contar plugins contribuyentes distintos sin registrar sus nombres1033* `plugin_id_hash` (cuando `hook_source` es `"pluginHook"`): hash determinista del nombre del plugin y mercado, enviado solo a su exportador configurado. Le permite contar plugins contribuyentes distintos sin registrar sus nombres


1051* `num_hooks`: Número de comandos de hook coincidentes1051* `num_hooks`: Número de comandos de hook coincidentes

1052* `managed_only`: `"true"` cuando solo se permiten hooks de política administrada1052* `managed_only`: `"true"` cuando solo se permiten hooks de política administrada

1053* `hook_source`: `"policySettings"` o `"merged"`1053* `hook_source`: `"policySettings"` o `"merged"`

1054* `safe_mode`: `"true"` cuando la sesión se inició con [`--safe-mode`](/es/cli-reference), `"false"` de otra manera. Requiere Claude Code v2.1.169 o posterior1054* `safe_mode`: `"true"` cuando la sesión se inició con [`--safe-mode`](/docs/es/cli-reference), `"false"` de otra manera. Requiere Claude Code v2.1.169 o posterior

1055* `hook_definitions`: Configuración de hook serializada en JSON. Se incluye solo cuando tanto el trazado beta detallado como `OTEL_LOG_TOOL_DETAILS=1` están habilitados1055* `hook_definitions`: Configuración de hook serializada en JSON. Se incluye solo cuando tanto el trazado beta detallado como `OTEL_LOG_TOOL_DETAILS=1` están habilitados

1056 1056 

1057<h4 id="hook-execution-complete-event">1057<h4 id="hook-execution-complete-event">


1078* `total_duration_ms`: Duración de pared de todos los hooks coincidentes1078* `total_duration_ms`: Duración de pared de todos los hooks coincidentes

1079* `managed_only`: `"true"` cuando solo se permiten hooks de política administrada1079* `managed_only`: `"true"` cuando solo se permiten hooks de política administrada

1080* `hook_source`: `"policySettings"` o `"merged"`1080* `hook_source`: `"policySettings"` o `"merged"`

1081* `safe_mode`: `"true"` cuando la sesión se inició con [`--safe-mode`](/es/cli-reference), `"false"` de otra manera. Requiere Claude Code v2.1.169 o posterior1081* `safe_mode`: `"true"` cuando la sesión se inició con [`--safe-mode`](/docs/es/cli-reference), `"false"` de otra manera. Requiere Claude Code v2.1.169 o posterior

1082* `hook_definitions`: Configuración de hook serializada en JSON. Se incluye solo cuando tanto el trazado beta detallado como `OTEL_LOG_TOOL_DETAILS=1` están habilitados1082* `hook_definitions`: Configuración de hook serializada en JSON. Se incluye solo cuando tanto el trazado beta detallado como `OTEL_LOG_TOOL_DETAILS=1` están habilitados

1083 1083 

1084<h4 id="hook-plugin-metrics-event">1084<h4 id="hook-plugin-metrics-event">


1125 Evento de encuesta de retroalimentación1125 Evento de encuesta de retroalimentación

1126</h4>1126</h4>

1127 1127 

1128Se registra cuando se muestra una encuesta de calidad de sesión o se responde. Consulte [Encuestas de calidad de sesión](/es/data-usage#session-quality-surveys) para saber qué recopilan las encuestas y cómo controlarlas.1128Se registra cuando se muestra una encuesta de calidad de sesión o se responde. Consulte [Encuestas de calidad de sesión](/docs/es/data-usage#session-quality-surveys) para saber qué recopilan las encuestas y cómo controlarlas.

1129 1129 

1130**Nombre del Evento**: `claude_code.feedback_survey`1130**Nombre del Evento**: `claude_code.feedback_survey`

1131 1131 


1139* `appearance_id`: ID único que vincula los eventos emitidos para una instancia de encuesta1139* `appearance_id`: ID único que vincula los eventos emitidos para una instancia de encuesta

1140* `survey_type`: Qué encuesta produjo el evento. `"session"` es el mensaje de calificación "¿Cómo está Claude?"1140* `survey_type`: Qué encuesta produjo el evento. `"session"` es el mensaje de calificación "¿Cómo está Claude?"

1141* `response`: La selección del usuario en eventos `responded`1141* `response`: La selección del usuario en eventos `responded`

1142* `enabled_via_override`: `true` cuando [`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL`](/es/env-vars) está establecido. Se emite como booleano, no como cadena. Presente en eventos de encuesta `session`. Filtre en este atributo para confirmar que la anulación se aplica en toda una flota1142* `enabled_via_override`: `true` cuando [`CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL`](/docs/es/env-vars) está establecido. Se emite como booleano, no como cadena. Presente en eventos de encuesta `session`. Filtre en este atributo para confirmar que la anulación se aplica en toda una flota

1143 1143 

1144<h2 id="interpret-metrics-and-events-data">1144<h2 id="interpret-metrics-and-events-data">

1145 Interpretar datos de métricas y eventos1145 Interpretar datos de métricas y eventos


1182* Consumo inusual de tokens1182* Consumo inusual de tokens

1183* Alto volumen de sesiones de usuarios específicos1183* Alto volumen de sesiones de usuarios específicos

1184 1184 

1185Todas las métricas pueden segmentarse por los [atributos estándar](#standard-attributes). El atributo `model` está disponible en `claude_code.token.usage`, `claude_code.cost.usage`, y {/* min-version: 2.1.172 */}a partir de v2.1.172, `claude_code.lines_of_code.count`.1185Todas las métricas pueden segmentarse por los [atributos estándar](#standard-attributes). El atributo `model` está disponible en `claude_code.token.usage`, `claude_code.cost.usage`, y a partir de v2.1.172, `claude_code.lines_of_code.count`.

1186 1186 

1187Los desgloses por modelo de confirmaciones solo pueden aproximarse uniéndose contra las métricas de token o costo en `session.id`, ya que una sesión puede abarcar múltiples modelos. Filtre el lado de token o costo a filas donde `query_source` es `"main"` para que las solicitudes auxiliares y de subagente no atribuyan los compromisos de la sesión a un modelo que no los realizó.1187Los desgloses por modelo de confirmaciones solo pueden aproximarse uniéndose contra las métricas de token o costo en `session.id`, ya que una sesión puede abarcar múltiples modelos. Filtre el lado de token o costo a filas donde `query_source` es `"main"` para que las solicitudes auxiliares y de subagente no atribuyan los compromisos de la sesión a un modelo que no los realizó.

1188 1188 


1192 1192 

1193Claude Code reintenta solicitudes de API fallidas internamente y emite un único evento `claude_code.api_error` solo después de rendirse, por lo que el evento en sí es la señal terminal para esa solicitud. Los intentos de reintento intermedios no se registran como eventos separados.1193Claude Code reintenta solicitudes de API fallidas internamente y emite un único evento `claude_code.api_error` solo después de rendirse, por lo que el evento en sí es la señal terminal para esa solicitud. Los intentos de reintento intermedios no se registran como eventos separados.

1194 1194 

1195El atributo `attempt` en el evento registra el número total de intentos. `CLAUDE_CODE_MAX_RETRIES` tiene un valor predeterminado de 10 y está limitado a 15; {/* min-version: 2.1.199 */}a partir de v2.1.199, `CLAUDE_CODE_RETRY_WATCHDOG` aumenta el valor predeterminado y elimina el límite. Cuando la solicitud agota todos los reintentos en un error transitorio, `attempt` es igual a uno más que ese límite efectivo: 11 por defecto, y nunca más de 16 a menos que el vigilante esté configurado. Un valor más bajo indica un error no reintentable como una respuesta `400`.1195El atributo `attempt` en el evento registra el número total de intentos. `CLAUDE_CODE_MAX_RETRIES` tiene un valor predeterminado de 10 y está limitado a 15; a partir de v2.1.199, `CLAUDE_CODE_RETRY_WATCHDOG` aumenta el valor predeterminado y elimina el límite. Cuando la solicitud agota todos los reintentos en un error transitorio, `attempt` es igual a uno más que ese límite efectivo: 11 por defecto, y nunca más de 16 a menos que el vigilante esté configurado. Un valor más bajo indica un error no reintentable como una respuesta `400`.

1196 1196 

1197Para distinguir una sesión que se recuperó de una que se estancó, agrupe eventos por `session.id` y verifique si existe un evento `api_request` posterior después del error.1197Para distinguir una sesión que se recuperó de una que se estancó, agrupe eventos por `session.id` y verifique si existe un evento `api_request` posterior después del error.

1198 1198 


1221 Atribuir acciones a usuarios1221 Atribuir acciones a usuarios

1222</h3>1222</h3>

1223 1223 

1224Los [atributos estándar](#standard-attributes) en cada evento incluyen la identidad del usuario autenticado: `user.email`, `user.account_uuid`, `user.account_id`, y `organization.id` cuando se inicia sesión con una cuenta de Claude, más `user.id` y el `session.id` por sesión. `user.id` es un identificador con alcance de instalación, excepto en sesiones de [Claude apps gateway](/es/claude-apps-gateway), donde es el asunto del IdP del token emitido por la puerta de enlace.1224Los [atributos estándar](#standard-attributes) en cada evento incluyen la identidad del usuario autenticado: `user.email`, `user.account_uuid`, `user.account_id`, y `organization.id` cuando se inicia sesión con una cuenta de Claude, más `user.id` y el `session.id` por sesión. `user.id` es un identificador con alcance de instalación, excepto en sesiones de [Claude apps gateway](/docs/es/claude-apps-gateway), donde es el asunto del IdP del token emitido por la puerta de enlace.

1225 1225 

1226Las llamadas de herramientas MCP, comandos Bash y ediciones de archivos se atribuyen por lo tanto al desarrollador que inició la sesión. Claude Code no actúa bajo una cuenta de servicio separada; la identidad registrada en cada evento es la propia cuenta de Claude del desarrollador, o la identidad del IdP del desarrollador en una sesión de [Claude apps gateway](/es/claude-apps-gateway).1226Las llamadas de herramientas MCP, comandos Bash y ediciones de archivos se atribuyen por lo tanto al desarrollador que inició la sesión. Claude Code no actúa bajo una cuenta de servicio separada; la identidad registrada en cada evento es la propia cuenta de Claude del desarrollador, o la identidad del IdP del desarrollador en una sesión de [Claude apps gateway](/docs/es/claude-apps-gateway).

1227 1227 

1228Cuando Claude Code se autentica con una clave de API directa, o contra Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry, no hay cuenta de Claude en la sesión y solo `user.id` y `session.id` se rellenan. En estas implementaciones, adjunte la identidad del usuario usted mismo con `OTEL_RESOURCE_ATTRIBUTES`, establecido por usuario a través del archivo de [configuración administrada](#administrator-configuration) o un contenedor de lanzamiento. Las sesiones de Claude apps gateway no necesitan nada de esto: la CLI marca la identidad del IdP automáticamente, como se describe en [Atributos estándar](#standard-attributes).1228Cuando Claude Code se autentica con una clave de API directa, o contra Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry, no hay cuenta de Claude en la sesión y solo `user.id` y `session.id` se rellenan. En estas implementaciones, adjunte la identidad del usuario usted mismo con `OTEL_RESOURCE_ATTRIBUTES`, establecido por usuario a través del archivo de [configuración administrada](#administrator-configuration) o un contenedor de lanzamiento. Las sesiones de Claude apps gateway no necesitan nada de esto: la CLI marca la identidad del IdP automáticamente, como se describe en [Atributos estándar](#standard-attributes).

1229 1229 


1343 Seguridad y privacidad1343 Seguridad y privacidad

1344</h2>1344</h2>

1345 1345 

1346* La exportación de OpenTelemetry a tu backend es opcional y requiere configuración explícita. Para la telemetría operativa separada de Anthropic y cómo deshabilitarla, consulta [Uso de datos](/es/data-usage#telemetry-services)1346* La exportación de OpenTelemetry a tu backend es opcional y requiere configuración explícita. Para la telemetría operativa separada de Anthropic y cómo deshabilitarla, consulta [Uso de datos](/docs/es/data-usage#telemetry-services)

1347* Los contenidos de archivos sin procesar y fragmentos de código no se incluyen en métricas o eventos. Las trazas de span son una ruta de datos separada: consulta la viñeta `OTEL_LOG_TOOL_CONTENT` a continuación1347* Los contenidos de archivos sin procesar y fragmentos de código no se incluyen en métricas o eventos. Las trazas de span son una ruta de datos separada: consulta la viñeta `OTEL_LOG_TOOL_CONTENT` a continuación

1348* Cuando está autenticado a través de OAuth, `user.email` se incluye en atributos de telemetría. Si esto es una preocupación para tu organización, trabaja con tu backend de telemetría para filtrar o redactar este campo1348* Cuando está autenticado a través de OAuth, `user.email` se incluye en atributos de telemetría. Si esto es una preocupación para tu organización, trabaja con tu backend de telemetría para filtrar o redactar este campo

1349* El contenido del mensaje del usuario no se recopila por defecto. Solo se registra la longitud del mensaje. Para incluir contenido del mensaje, establece `OTEL_LOG_USER_PROMPTS=1`1349* El contenido del mensaje del usuario no se recopila por defecto. Solo se registra la longitud del mensaje. Para incluir contenido del mensaje, establece `OTEL_LOG_USER_PROMPTS=1`

network-config.md +15 −15

Details

9Claude Code admite varias configuraciones de red y seguridad empresarial a través de variables de entorno. Esto incluye enrutar el tráfico a través de servidores proxy corporativos, confiar en Autoridades de Certificación (CA) personalizadas y autenticarse con certificados de Seguridad de la Capa de Transporte mutua (mTLS) para mayor seguridad.9Claude Code admite varias configuraciones de red y seguridad empresarial a través de variables de entorno. Esto incluye enrutar el tráfico a través de servidores proxy corporativos, confiar en Autoridades de Certificación (CA) personalizadas y autenticarse con certificados de Seguridad de la Capa de Transporte mutua (mTLS) para mayor seguridad.

10 10 

11<Note>11<Note>

12 Todas las variables de entorno que se muestran en esta página también se pueden configurar en [`settings.json`](/es/settings).12 Todas las variables de entorno que se muestran en esta página también se pueden configurar en [`settings.json`](/docs/es/settings).

13</Note>13</Note>

14 14 

15<h2 id="proxy-configuration">15<h2 id="proxy-configuration">


123| `api.anthropic.com` | Solicitudes de API de Claude |123| `api.anthropic.com` | Solicitudes de API de Claude |

124| `claude.ai` | Autenticación de cuenta de claude.ai |124| `claude.ai` | Autenticación de cuenta de claude.ai |

125| `platform.claude.com` | Autenticación de cuenta de Anthropic Console |125| `platform.claude.com` | Autenticación de cuenta de Anthropic Console |

126| `mcp-proxy.anthropic.com` | [Conectores MCP desde claude.ai](/es/mcp#use-mcp-servers-from-claude-ai), incluidos los conectores que configura un administrador de la organización. El tráfico de conectores se enruta a través de este proxy; los conectores están habilitados de forma predeterminada para usuarios autenticados en claude.ai. Para deshabilitarlos, establezca [`ENABLE_CLAUDEAI_MCP_SERVERS=false`](/es/env-vars) o la configuración [`disableClaudeAiConnectors`](/es/settings#available-settings) |126| `mcp-proxy.anthropic.com` | [Conectores MCP desde claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai), incluidos los conectores que configura un administrador de la organización. El tráfico de conectores se enruta a través de este proxy; los conectores están habilitados de forma predeterminada para usuarios autenticados en claude.ai. Para deshabilitarlos, establezca [`ENABLE_CLAUDEAI_MCP_SERVERS=false`](/docs/es/env-vars) o la configuración [`disableClaudeAiConnectors`](/docs/es/settings#available-settings) |

127| `downloads.claude.ai` | Descargas de ejecutables de plugins; instalador nativo y actualizador automático nativo |127| `downloads.claude.ai` | Descargas de ejecutables de plugins; instalador nativo y actualizador automático nativo |

128| `storage.googleapis.com` | Recuentos de instalación y metadatos de plugins mostrados en `/plugin`. Las cargas de [artefactos](/es/artifacts) firmadas intentan este host primero; la publicación recurre a `api.anthropic.com` cuando está bloqueado |128| `storage.googleapis.com` | Recuentos de instalación y metadatos de plugins mostrados en `/plugin`. Las cargas de [artefactos](/docs/es/artifacts) firmadas intentan este host primero; la publicación recurre a `api.anthropic.com` cuando está bloqueado |

129| `storage.googleapis.com` | {/* max-version: 2.1.115 */}Instalador nativo y actualizador automático nativo en versiones anteriores a 2.1.116 |129| `storage.googleapis.com` | Instalador nativo y actualizador automático nativo en versiones anteriores a 2.1.116 |

130| `bridge.claudeusercontent.com` | Puente WebSocket de la extensión [Claude en Chrome](/es/chrome) |130| `bridge.claudeusercontent.com` | Puente WebSocket de la extensión [Claude en Chrome](/docs/es/chrome) |

131| `*.claudeusercontent.com` | Visualización de [artefactos](/es/artifacts) en claude.ai. El visor carga el contenido de cada artefacto desde un subdominio aislado de este origen. Requerido en el navegador del visor, no por la CLI en sí |131| `*.claudeusercontent.com` | Visualización de [artefactos](/docs/es/artifacts) en claude.ai. El visor carga el contenido de cada artefacto desde un subdominio aislado de este origen. Requerido en el navegador del visor, no por la CLI en sí |

132| `raw.githubusercontent.com` | Fuente de registro de cambios para [`/release-notes`](/es/commands) y las notas de la versión mostradas después de actualizar |132| `raw.githubusercontent.com` | Fuente de registro de cambios para [`/release-notes`](/docs/es/commands) y las notas de la versión mostradas después de actualizar |

133 133 

134Si instala Claude Code a través de npm o administra su propia distribución binaria, los usuarios finales no necesitan el instalador nativo y los usos del actualizador automático de `downloads.claude.ai`. Los otros usos en la tabla se aplican independientemente del método de instalación.134Si instala Claude Code a través de npm o administra su propia distribución binaria, los usuarios finales no necesitan el instalador nativo y los usos del actualizador automático de `downloads.claude.ai`. Los otros usos en la tabla se aplican independientemente del método de instalación.

135 135 

136Claude Code también envía telemetría operativa opcional de forma predeterminada, que puede desactivar con variables de entorno. Consulte [Servicios de telemetría](/es/data-usage#telemetry-services) para saber cómo desactivarla antes de finalizar su lista blanca.136Claude Code también envía telemetría operativa opcional de forma predeterminada, que puede desactivar con variables de entorno. Consulte [Servicios de telemetría](/docs/es/data-usage#telemetry-services) para saber cómo desactivarla antes de finalizar su lista blanca.

137 137 

138Cuando utiliza [Amazon Bedrock](/es/amazon-bedrock), [Google Cloud's Agent Platform](/es/google-vertex-ai), [Microsoft Foundry](/es/microsoft-foundry) o una sesión de [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) con sesión iniciada, el tráfico del modelo y la autenticación van a su proveedor o puerta de enlace en lugar de `api.anthropic.com`, `claude.ai` o `platform.claude.com`. La herramienta WebFetch aún llama a `api.anthropic.com` para su [verificación de seguridad de dominio](/es/data-usage#webfetch-domain-safety-check) a menos que establezca `skipWebFetchPreflight: true` en [configuración](/es/settings).138Cuando utiliza [Amazon Bedrock](/docs/es/amazon-bedrock), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai), [Microsoft Foundry](/docs/es/microsoft-foundry) o una sesión de [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) con sesión iniciada, el tráfico del modelo y la autenticación van a su proveedor o puerta de enlace en lugar de `api.anthropic.com`, `claude.ai` o `platform.claude.com`. La herramienta WebFetch aún llama a `api.anthropic.com` para su [verificación de seguridad de dominio](/docs/es/data-usage#webfetch-domain-safety-check) a menos que establezca `skipWebFetchPreflight: true` en [configuración](/docs/es/settings).

139 139 

140[Claude Code en la web](/es/claude-code-on-the-web) y [Code Review](/es/code-review) se conectan a sus repositorios desde infraestructura administrada por Anthropic. Si su organización de GitHub Enterprise Cloud restringe el acceso por dirección IP, habilite [herencia de lista de permitidos de IP para aplicaciones de GitHub instaladas](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#allowing-access-by-github-apps). La aplicación de GitHub de Claude registra sus rangos de IP, por lo que habilitar esta configuración permite el acceso sin configuración manual. Para [agregar los rangos a su lista de permitidos manualmente](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#adding-an-allowed-ip-address) en su lugar, o para configurar otros firewalls, consulte [direcciones IP de la API de Anthropic](https://platform.claude.com/docs/en/api/ip-addresses).140[Claude Code en la web](/docs/es/claude-code-on-the-web) y [Code Review](/docs/es/code-review) se conectan a sus repositorios desde infraestructura administrada por Anthropic. Si su organización de GitHub Enterprise Cloud restringe el acceso por dirección IP, habilite [herencia de lista de permitidos de IP para aplicaciones de GitHub instaladas](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#allowing-access-by-github-apps). La aplicación de GitHub de Claude registra sus rangos de IP, por lo que habilitar esta configuración permite el acceso sin configuración manual. Para [agregar los rangos a su lista de permitidos manualmente](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#adding-an-allowed-ip-address) en su lugar, o para configurar otros firewalls, consulte [direcciones IP de la API de Anthropic](https://platform.claude.com/docs/en/api/ip-addresses).

141 141 

142Para instancias de [GitHub Enterprise Server](/es/github-enterprise-server) autohospedadas detrás de un firewall, agregue a la lista blanca las mismas [direcciones IP de la API de Anthropic](https://platform.claude.com/docs/en/api/ip-addresses) para que la infraestructura de Anthropic pueda acceder a su host GHES para clonar repositorios y publicar comentarios de revisión.142Para instancias de [GitHub Enterprise Server](/docs/es/github-enterprise-server) autohospedadas detrás de un firewall, agregue a la lista blanca las mismas [direcciones IP de la API de Anthropic](https://platform.claude.com/docs/en/api/ip-addresses) para que la infraestructura de Anthropic pueda acceder a su host GHES para clonar repositorios y publicar comentarios de revisión.

143 143 

144<h3 id="desktop-and-claude-ai">144<h3 id="desktop-and-claude-ai">

145 Desktop y claude.ai145 Desktop y claude.ai

146</h3>146</h3>

147 147 

148La tabla anterior cubre principalmente la CLI independiente. La aplicación Claude Desktop y claude.ai en un navegador cargan su código de aplicación desde hosts CDN adicionales de Anthropic, incluido `assets-proxy.anthropic.com`. Permitir `claude.ai` mientras se bloquean esos hosts produce una página en blanco en lugar de un error. Consulte [requisitos de acceso a la red](/es/desktop#network-access-requirements) en la página Desktop.148La tabla anterior cubre principalmente la CLI independiente. La aplicación Claude Desktop y claude.ai en un navegador cargan su código de aplicación desde hosts CDN adicionales de Anthropic, incluido `assets-proxy.anthropic.com`. Permitir `claude.ai` mientras se bloquean esos hosts produce una página en blanco en lugar de un error. Consulte [requisitos de acceso a la red](/docs/es/desktop#network-access-requirements) en la página Desktop.

149 149 

150<h2 id="additional-resources">150<h2 id="additional-resources">

151 Recursos adicionales151 Recursos adicionales

152</h2>152</h2>

153 153 

154* [Configuración de Claude Code](/es/settings)154* [Configuración de Claude Code](/docs/es/settings)

155* [Referencia de variables de entorno](/es/env-vars)155* [Referencia de variables de entorno](/docs/es/env-vars)

156* [Guía de solución de problemas](/es/troubleshooting)156* [Guía de solución de problemas](/docs/es/troubleshooting)

output-styles.md +15 −15

Details

10 10 

11Un estilo de salida personalizado agrega sus instrucciones al mensaje del sistema y le permite elegir si desea mantener las instrucciones integradas de ingeniería de software de Claude Code. Manténgalas cuando esté cambiando cómo Claude se comunica pero sigue codificando, como siempre respondiendo con un diagrama. Déjelas fuera cuando Claude no esté haciendo ingeniería de software en absoluto, como un asistente de escritura o analista de datos.11Un estilo de salida personalizado agrega sus instrucciones al mensaje del sistema y le permite elegir si desea mantener las instrucciones integradas de ingeniería de software de Claude Code. Manténgalas cuando esté cambiando cómo Claude se comunica pero sigue codificando, como siempre respondiendo con un diagrama. Déjelas fuera cuando Claude no esté haciendo ingeniería de software en absoluto, como un asistente de escritura o analista de datos.

12 12 

13Para instrucciones sobre su proyecto, convenciones o base de código, use [CLAUDE.md](/es/memory) en su lugar.13Para instrucciones sobre su proyecto, convenciones o base de código, use [CLAUDE.md](/docs/es/memory) en su lugar.

14 14 

15<h2 id="built-in-output-styles">15<h2 id="built-in-output-styles">

16 Estilos de salida integrados16 Estilos de salida integrados


20 20 

21Hay tres estilos de salida integrados adicionales:21Hay tres estilos de salida integrados adicionales:

22 22 

23* **Proactive**: Claude se ejecuta inmediatamente, realiza suposiciones razonables en lugar de pausarse para decisiones rutinarias, y prefiere la acción sobre la planificación. Esta es una orientación de ejecución autónoma más fuerte que la que aplica el [modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode), y funciona sin cambiar su modo de permisos, por lo que aún ve mensajes de permisos antes de que se ejecuten las herramientas.23* **Proactive**: Claude se ejecuta inmediatamente, realiza suposiciones razonables en lugar de pausarse para decisiones rutinarias, y prefiere la acción sobre la planificación. Esta es una orientación de ejecución autónoma más fuerte que la que aplica el [modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode), y funciona sin cambiar su modo de permisos, por lo que aún ve mensajes de permisos antes de que se ejecuten las herramientas.

24 24 

25* **Explanatory**: Proporciona "Insights" educativos entre ayudarle a completar tareas de ingeniería de software. Le ayuda a entender las opciones de implementación y los patrones de la base de código.25* **Explanatory**: Proporciona "Insights" educativos entre ayudarle a completar tareas de ingeniería de software. Le ayuda a entender las opciones de implementación y los patrones de la base de código.

26 26 


30 Cambiar su estilo de salida30 Cambiar su estilo de salida

31</h2>31</h2>

32 32 

33Ejecute `/config` y seleccione **Output style** para elegir un estilo de un menú. Su selección se guarda en `.claude/settings.local.json` en el [nivel de proyecto local](/es/settings).33Ejecute `/config` y seleccione **Output style** para elegir un estilo de un menú. Su selección se guarda en `.claude/settings.local.json` en el [nivel de proyecto local](/docs/es/settings).

34 34 

35<Note>{/* max-version: 2.1.90 */}El comando independiente `/output-style` quedó obsoleto en v2.1.73 y se eliminó en v2.1.91. Utilice `/config` o edite la configuración `outputStyle` directamente.</Note>35<Note>El comando independiente `/output-style` quedó obsoleto en v2.1.73 y se eliminó en v2.1.91. Utilice `/config` o edite la configuración `outputStyle` directamente.</Note>

36 36 

37Para establecer un estilo sin el menú, edite el campo `outputStyle` directamente en un archivo de configuración:37Para establecer un estilo sin el menú, edite el campo `outputStyle` directamente en un archivo de configuración:

38 38 


42}42}

43```43```

44 44 

45El estilo de salida es parte del mensaje del sistema, que Claude Code lee una vez al inicio de la sesión. Los cambios surten efecto después de `/clear` o una nueva sesión. Consulte [Cómo Claude Code utiliza el almacenamiento en caché de prompts](/es/prompt-caching#changing-output-style) para saber qué hace un cambio de estilo de salida en la caché.45El estilo de salida es parte del mensaje del sistema, que Claude Code lee una vez al inicio de la sesión. Los cambios surten efecto después de `/clear` o una nueva sesión. Consulte [Cómo Claude Code utiliza el almacenamiento en caché de prompts](/docs/es/prompt-caching#changing-output-style) para saber qué hace un cambio de estilo de salida en la caché.

46 46 

47<h2 id="create-a-custom-output-style">47<h2 id="create-a-custom-output-style">

48 Crear un estilo de salida personalizado48 Crear un estilo de salida personalizado


56 56 

57 * Usuario: `~/.claude/output-styles`57 * Usuario: `~/.claude/output-styles`

58 * Proyecto: `.claude/output-styles`58 * Proyecto: `.claude/output-styles`

59 * Política administrada: `.claude/output-styles` dentro del [directorio de configuración administrada](/es/settings#settings-files)59 * Política administrada: `.claude/output-styles` dentro del [directorio de configuración administrada](/docs/es/settings#settings-files)

60 60 

61 Los estilos de salida del proyecto se cargan desde cada `.claude/output-styles/` entre el directorio de trabajo y la raíz del repositorio. {/* min-version: 2.1.178 */}A partir de v2.1.178, cuando más de uno de estos directorios anidados define un estilo con el mismo nombre, Claude Code utiliza el más cercano al directorio de trabajo.61 Los estilos de salida del proyecto se cargan desde cada `.claude/output-styles/` entre el directorio de trabajo y la raíz del repositorio. A partir de v2.1.178, cuando más de uno de estos directorios anidados define un estilo con el mismo nombre, Claude Code utiliza el más cercano al directorio de trabajo.

62 </Step>62 </Step>

63 63 

64 <Step title="Agregar frontmatter e instrucciones">64 <Step title="Agregar frontmatter e instrucciones">


86 </Step>86 </Step>

87</Steps>87</Steps>

88 88 

89[Plugins](/es/plugins-reference) también pueden enviar estilos de salida en un directorio `output-styles/`.89[Plugins](/docs/es/plugins-reference) también pueden enviar estilos de salida en un directorio `output-styles/`.

90 90 

91<h3 id="frontmatter">91<h3 id="frontmatter">

92 Frontmatter92 Frontmatter


122| Característica | Cómo funciona | Úselo cuando |122| Característica | Cómo funciona | Úselo cuando |

123| :----------------------- | :---------------------------------------------------------------------------- | :------------------------------------------------------------------------------------ |123| :----------------------- | :---------------------------------------------------------------------------- | :------------------------------------------------------------------------------------ |

124| Estilos de salida | Modifica el mensaje del sistema | Desea un rol, tono o formato de respuesta predeterminado diferente en cada turno |124| Estilos de salida | Modifica el mensaje del sistema | Desea un rol, tono o formato de respuesta predeterminado diferente en cada turno |

125| [CLAUDE.md](/es/memory) | Agrega un mensaje de usuario después del mensaje del sistema | Claude siempre debe conocer sus convenciones de proyecto y contexto de base de código |125| [CLAUDE.md](/docs/es/memory) | Agrega un mensaje de usuario después del mensaje del sistema | Claude siempre debe conocer sus convenciones de proyecto y contexto de base de código |

126| `--append-system-prompt` | Se agrega al mensaje del sistema sin eliminar nada | Desea una adición única para una única invocación |126| `--append-system-prompt` | Se agrega al mensaje del sistema sin eliminar nada | Desea una adición única para una única invocación |

127| [Agents](/es/sub-agents) | Ejecuta un subagente con su propio mensaje del sistema, modelo y herramientas | Desea un ayudante con alcance separado para una tarea enfocada |127| [Agents](/docs/es/sub-agents) | Ejecuta un subagente con su propio mensaje del sistema, modelo y herramientas | Desea un ayudante con alcance separado para una tarea enfocada |

128| [Skills](/es/skills) | Carga instrucciones específicas de tareas cuando se invoca o es relevante | Tiene un flujo de trabajo reutilizable |128| [Skills](/docs/es/skills) | Carga instrucciones específicas de tareas cuando se invoca o es relevante | Tiene un flujo de trabajo reutilizable |

129 129 

130<h2 id="related-resources">130<h2 id="related-resources">

131 Recursos relacionados131 Recursos relacionados

132</h2>132</h2>

133 133 

134* [Settings](/es/settings): donde vive el campo `outputStyle` y cómo funciona la precedencia de configuración134* [Settings](/docs/es/settings): donde vive el campo `outputStyle` y cómo funciona la precedencia de configuración

135* [Permission modes](/es/permission-modes): cómo el estilo Proactive se compara con el modo automático135* [Permission modes](/docs/es/permission-modes): cómo el estilo Proactive se compara con el modo automático

136* [Plugins](/es/plugins): empaquete y distribuya estilos de salida junto con skills, hooks y agents136* [Plugins](/docs/es/plugins): empaquete y distribuya estilos de salida junto con skills, hooks y agents

137* [Debug your configuration](/es/debug-your-config): diagnostique por qué un estilo de salida no está surtiendo efecto137* [Debug your configuration](/docs/es/debug-your-config): diagnostique por qué un estilo de salida no está surtiendo efecto

Details

27 27 

28En todos los modos excepto `bypassPermissions`, las escrituras en [rutas protegidas](#protected-paths) nunca se aprueban automáticamente, protegiendo el estado del repositorio y la configuración de Claude contra corrupción accidental.28En todos los modos excepto `bypassPermissions`, las escrituras en [rutas protegidas](#protected-paths) nunca se aprueban automáticamente, protegiendo el estado del repositorio y la configuración de Claude contra corrupción accidental.

29 29 

30Los modos establecen la línea base. Superponga [reglas de permisos](/es/permissions#manage-permissions) en la parte superior para preaprobación o bloqueo de herramientas específicas. Las reglas de denegación, las reglas de solicitud explícita, la [configuración de `ask` de la organización en herramientas de conector](/es/mcp#organization-controls-on-connector-tools) y el marcador [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) se aplican en todos los modos, incluido `bypassPermissions`. Las reglas de permitir no tienen efecto en ese modo porque todo lo demás ya está aprobado.30Los modos establecen la línea base. Superponga [reglas de permisos](/docs/es/permissions#manage-permissions) en la parte superior para preaprobación o bloqueo de herramientas específicas. Las reglas de denegación, las reglas de solicitud explícita, la [configuración de `ask` de la organización en herramientas de conector](/docs/es/mcp#organization-controls-on-connector-tools) y el marcador [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) se aplican en todos los modos, incluido `bypassPermissions`. Las reglas de permitir no tienen efecto en ese modo porque todo lo demás ya está aprobado.

31 31 

32<h2 id="switch-permission-modes">32<h2 id="switch-permission-modes">

33 Cambiar modos de permisos33 Cambiar modos de permisos


37 37 

38<Tabs>38<Tabs>

39 <Tab title="CLI">39 <Tab title="CLI">

40 **Durante una sesión**: presione `Shift+Tab` para ciclar `default` → `acceptEdits` → `plan`. El modo actual aparece en la barra de estado. {/* min-version: 2.1.203 */}El modo manual, `default` en ese ciclo, muestra una insignia gris `⏸ manual mode on`. Antes de v2.1.203, la barra de estado no mostraba ninguna insignia en modo Manual.40 **Durante una sesión**: presione `Shift+Tab` para ciclar `default` → `acceptEdits` → `plan`. El modo actual aparece en la barra de estado. El modo manual, `default` en ese ciclo, muestra una insignia gris `⏸ manual mode on`. Antes de v2.1.203, la barra de estado no mostraba ninguna insignia en modo Manual.

41 41 

42 No todos los modos están en el ciclo predeterminado:42 No todos los modos están en el ciclo predeterminado:

43 43 


53 claude --permission-mode plan53 claude --permission-mode plan

54 ```54 ```

55 55 

56 **Como predeterminado**: establezca `defaultMode` en [configuración](/es/settings#settings-files).56 **Como predeterminado**: establezca `defaultMode` en [configuración](/docs/es/settings#settings-files).

57 57 

58 ```json theme={null}58 ```json theme={null}

59 {59 {


63 }63 }

64 ```64 ```

65 65 

66 La misma bandera `--permission-mode` funciona con `-p` para [ejecuciones no interactivas](/es/headless).66 La misma bandera `--permission-mode` funciona con `-p` para [ejecuciones no interactivas](/docs/es/headless).

67 </Tab>67 </Tab>

68 68 

69 <Tab title="VS Code">69 <Tab title="VS Code">


83 83 

84 Antes de v2.1.205, la extensión etiquetaba `plan` como Plan mode y `auto` como Auto mode.84 Antes de v2.1.205, la extensión etiquetaba `plan` como Plan mode y `auto` como Auto mode.

85 85 

86 El modo Auto aparece en el indicador de modo cuando su cuenta cumple con todos los requisitos enumerados en la [sección de modo automático](#eliminate-prompts-with-auto-mode). La configuración `claudeCode.initialPermissionMode` no acepta `auto`. Para iniciar en modo automático de forma predeterminada, establezca `defaultMode` en su [configuración de usuario](/es/settings#settings-files) en su lugar. Claude Code ignora `defaultMode: "auto"` en la configuración de proyecto y local.86 El modo Auto aparece en el indicador de modo cuando su cuenta cumple con todos los requisitos enumerados en la [sección de modo automático](#eliminate-prompts-with-auto-mode). La configuración `claudeCode.initialPermissionMode` no acepta `auto`. Para iniciar en modo automático de forma predeterminada, establezca `defaultMode` en su [configuración de usuario](/docs/es/settings#settings-files) en su lugar. Claude Code ignora `defaultMode: "auto"` en la configuración de proyecto y local.

87 87 

88 Omitir permisos requiere el toggle **Allow dangerously skip permissions** en la configuración de la extensión antes de que aparezca en el indicador de modo.88 Omitir permisos requiere el toggle **Allow dangerously skip permissions** en la configuración de la extensión antes de que aparezca en el indicador de modo.

89 89 

90 Consulte la [guía de VS Code](/es/vs-code) para obtener detalles específicos de la extensión.90 Consulte la [guía de VS Code](/docs/es/vs-code) para obtener detalles específicos de la extensión.

91 </Tab>91 </Tab>

92 92 

93 <Tab title="JetBrains">93 <Tab title="JetBrains">


100 * **Auto**: aparece cuando su cuenta cumple con los [requisitos del modo automático](#eliminate-prompts-with-auto-mode)100 * **Auto**: aparece cuando su cuenta cumple con los [requisitos del modo automático](#eliminate-prompts-with-auto-mode)

101 * **Omitir permisos**: requiere el toggle **Allow bypass permissions mode** en la configuración de Desktop en planes Pro y Max; en planes Team y Enterprise, la política de la organización lo controla en su lugar101 * **Omitir permisos**: requiere el toggle **Allow bypass permissions mode** en la configuración de Desktop en planes Pro y Max; en planes Team y Enterprise, la política de la organización lo controla en su lugar

102 102 

103 Para obtener detalles específicos de desktop, consulte [Elegir un modo de permisos](/es/desktop#choose-a-permission-mode) en la guía de Desktop.103 Para obtener detalles específicos de desktop, consulte [Elegir un modo de permisos](/docs/es/desktop#choose-a-permission-mode) en la guía de Desktop.

104 104 

105 **Como predeterminado**: establezca `defaultMode` en [configuración](/es/settings#settings-files). La aplicación de desktop lee los mismos archivos de configuración que la CLI y aplica el modo a nuevas sesiones locales.105 **Como predeterminado**: establezca `defaultMode` en [configuración](/docs/es/settings#settings-files). La aplicación de desktop lee los mismos archivos de configuración que la CLI y aplica el modo a nuevas sesiones locales.

106 106 

107 Un modo que elige en el selector de modo se recuerda por carpeta y tiene prioridad sobre `defaultMode` para esa carpeta. Plan es la excepción: seleccionarlo se aplica solo a la sesión actual.107 Un modo que elige en el selector de modo se recuerda por carpeta y tiene prioridad sobre `defaultMode` para esa carpeta. Plan es la excepción: seleccionarlo se aplica solo a la sesión actual.

108 108 


120 <Tab title="Web and mobile">120 <Tab title="Web and mobile">

121 Use el menú desplegable de modo junto al cuadro de solicitud en [claude.ai/code](https://claude.ai/code) o en la aplicación móvil. Los avisos de permisos aparecen en claude.ai para aprobación. Los modos que aparecen dependen de dónde se ejecute la sesión:121 Use el menú desplegable de modo junto al cuadro de solicitud en [claude.ai/code](https://claude.ai/code) o en la aplicación móvil. Los avisos de permisos aparecen en claude.ai para aprobación. Los modos que aparecen dependen de dónde se ejecute la sesión:

122 122 

123 * **Sesiones en la nube** en [Claude Code en la web](/es/claude-code-on-the-web): Aceptar ediciones, Plan y Auto. Aceptar ediciones corresponde al modo `default`: el entorno en la nube aprueba previamente ediciones de archivos independientemente del modo, por lo que el menú desplegable muestra Aceptar ediciones en lugar de Manual. Las sesiones en la nube aún respetan `defaultMode: "acceptEdits"` de la configuración. El modo Auto aparece solo cuando su organización lo permite y el modelo seleccionado lo admite. Omitir permisos no está disponible.123 * **Sesiones en la nube** en [Claude Code en la web](/docs/es/claude-code-on-the-web): Aceptar ediciones, Plan y Auto. Aceptar ediciones corresponde al modo `default`: el entorno en la nube aprueba previamente ediciones de archivos independientemente del modo, por lo que el menú desplegable muestra Aceptar ediciones en lugar de Manual. Las sesiones en la nube aún respetan `defaultMode: "acceptEdits"` de la configuración. El modo Auto aparece solo cuando su organización lo permite y el modelo seleccionado lo admite. Omitir permisos no está disponible.

124 * **Sesiones de [Control Remoto](/es/remote-control)** en su máquina local: Manual, Aceptar ediciones y Plan. No puede seleccionar Auto u Omitir permisos desde la aplicación. {/* min-version: 2.1.202 */}El menú desplegable muestra el modo en el que se encuentra la sesión local, incluido un modo establecido desde la terminal, y se actualiza cuando el modo cambia en la aplicación o en la terminal. La única excepción es Omitir permisos: la sesión nunca reporta ese modo a claude.ai, por lo que cambiar a él desde la terminal no cambia lo que muestra el menú desplegable. Antes de v2.1.202, las sesiones conectadas con `/remote-control` o `claude --remote-control` no reportaban su modo en absoluto, por lo que claude.ai y la aplicación móvil podrían mostrar un modo en el que la sesión no estaba. La discrepancia afectó solo la etiqueta: Claude Code generó avisos de permisos desde el modo real de la sesión, y aún aparecieron en la aplicación para aprobación.124 * **Sesiones de [Control Remoto](/docs/es/remote-control)** en su máquina local: Manual, Aceptar ediciones y Plan. No puede seleccionar Auto u Omitir permisos desde la aplicación. El menú desplegable muestra el modo en el que se encuentra la sesión local, incluido un modo establecido desde la terminal, y se actualiza cuando el modo cambia en la aplicación o en la terminal. La única excepción es Omitir permisos: la sesión nunca reporta ese modo a claude.ai, por lo que cambiar a él desde la terminal no cambia lo que muestra el menú desplegable. Antes de v2.1.202, las sesiones conectadas con `/remote-control` o `claude --remote-control` no reportaban su modo en absoluto, por lo que claude.ai y la aplicación móvil podrían mostrar un modo en el que la sesión no estaba. La discrepancia afectó solo la etiqueta: Claude Code generó avisos de permisos desde el modo real de la sesión, y aún aparecieron en la aplicación para aprobación.

125 125 

126 Para Control Remoto, también puede establecer el modo de inicio al iniciar el host:126 Para Control Remoto, también puede establecer el modo de inicio al iniciar el host:

127 127 


137 137 

138El modo `acceptEdits` permite que Claude cree y edite archivos en su directorio de trabajo sin solicitar confirmación. La barra de estado muestra `⏵⏵ accept edits on` mientras este modo está activo.138El modo `acceptEdits` permite que Claude cree y edite archivos en su directorio de trabajo sin solicitar confirmación. La barra de estado muestra `⏵⏵ accept edits on` mientras este modo está activo.

139 139 

140Además de las ediciones de archivos, el modo `acceptEdits` aprueba automáticamente comandos Bash comunes del sistema de archivos: `mkdir`, `touch`, `rm`, `rmdir`, `mv`, `cp` y `sed`. Estos comandos también se aprueban automáticamente cuando van precedidos de variables de entorno seguras como `LANG=C` o `NO_COLOR=1`, o envoltorios de procesos como `timeout`, `nice` o `nohup`. Al igual que las ediciones de archivos, la aprobación automática se aplica solo a las rutas dentro de su directorio de trabajo o `additionalDirectories`. Las rutas fuera de ese alcance, las escrituras en [rutas protegidas](#protected-paths) y todos los demás comandos Bash excepto el [conjunto integrado de solo lectura](/es/permissions#read-only-commands) aún solicitan confirmación.140Además de las ediciones de archivos, el modo `acceptEdits` aprueba automáticamente comandos Bash comunes del sistema de archivos: `mkdir`, `touch`, `rm`, `rmdir`, `mv`, `cp` y `sed`. Estos comandos también se aprueban automáticamente cuando van precedidos de variables de entorno seguras como `LANG=C` o `NO_COLOR=1`, o envoltorios de procesos como `timeout`, `nice` o `nohup`. Al igual que las ediciones de archivos, la aprobación automática se aplica solo a las rutas dentro de su directorio de trabajo o `additionalDirectories`. Las rutas fuera de ese alcance, las escrituras en [rutas protegidas](#protected-paths) y todos los demás comandos Bash excepto el [conjunto integrado de solo lectura](/docs/es/permissions#read-only-commands) aún solicitan confirmación.

141 141 

142Cuando la [herramienta PowerShell](/es/tools-reference#powershell-tool) está habilitada, el modo `acceptEdits` también aprueba automáticamente `Set-Content`, `Add-Content`, `Clear-Content` y `Remove-Item` en rutas dentro del alcance, junto con sus alias comunes. Se aplican las mismas reglas de alcance y rutas protegidas.142Cuando la [herramienta PowerShell](/docs/es/tools-reference#powershell-tool) está habilitada, el modo `acceptEdits` también aprueba automáticamente `Set-Content`, `Add-Content`, `Clear-Content` y `Remove-Item` en rutas dentro del alcance, junto con sus alias comunes. Se aplican las mismas reglas de alcance y rutas protegidas.

143 143 

144Utilice `acceptEdits` cuando desee revisar los cambios en su editor o mediante `git diff` después del hecho en lugar de aprobar cada edición en línea.144Utilice `acceptEdits` cuando desee revisar los cambios en su editor o mediante `git diff` después del hecho en lugar de aprobar cada edición en línea.

145 145 


153 Analice antes de editar con el modo plan153 Analice antes de editar con el modo plan

154</h2>154</h2>

155 155 

156El modo plan le indica a Claude que investigue y proponga cambios sin realizarlos. Claude lee archivos, ejecuta comandos de shell para explorar y escribe un plan, pero no edita su fuente. Los avisos de permiso se aplican como lo hacen en el modo Manual a menos que [el modo automático](/es/auto-mode-config) esté disponible y `useAutoModeDuringPlan` esté activado, que es el valor predeterminado. Con el modo automático activo, el clasificador aprueba comandos de solo lectura como búsquedas y lecturas de archivos sin solicitar confirmación. Las ediciones permanecen bloqueadas de cualquier forma hasta que usted apruebe el plan.156El modo plan le indica a Claude que investigue y proponga cambios sin realizarlos. Claude lee archivos, ejecuta comandos de shell para explorar y escribe un plan, pero no edita su fuente. Los avisos de permiso se aplican como lo hacen en el modo Manual a menos que [el modo automático](/docs/es/auto-mode-config) esté disponible y `useAutoModeDuringPlan` esté activado, que es el valor predeterminado. Con el modo automático activo, el clasificador aprueba comandos de solo lectura como búsquedas y lecturas de archivos sin solicitar confirmación. Las ediciones permanecen bloqueadas de cualquier forma hasta que usted apruebe el plan.

157 157 

158Ingrese al modo plan presionando `Shift+Tab` o prefijando un único aviso con `/plan`. También puede comenzar en modo plan desde la CLI:158Ingrese al modo plan presionando `Shift+Tab` o prefijando un único aviso con `/plan`. También puede comenzar en modo plan desde la CLI:

159 159 


173* Aprobar y aceptar ediciones173* Aprobar y aceptar ediciones

174* Aprobar y revisar cada edición manualmente174* Aprobar y revisar cada edición manualmente

175* Continuar planificando con comentarios175* Continuar planificando con comentarios

176* Refinar con [Ultraplan](/es/ultraplan) para revisión basada en navegador176* Refinar con [Ultraplan](/docs/es/ultraplan) para revisión basada en navegador

177 177 

178Aprobar un plan sale del modo plan y cambia la sesión al modo de permiso que describe cada opción de aprobación, por lo que Claude comienza a editar. Para planificar nuevamente, vuelva al modo plan con `Shift+Tab`, o prefije su próximo aviso con `/plan`.178Aprobar un plan sale del modo plan y cambia la sesión al modo de permiso que describe cada opción de aprobación, por lo que Claude comienza a editar. Para planificar nuevamente, vuelva al modo plan con `Shift+Tab`, o prefije su próximo aviso con `/plan`.

179 179 

180Presione `Ctrl+G` para abrir el plan propuesto en su editor de texto predeterminado y edítelo directamente antes de que Claude continúe. Cuando [`showClearContextOnPlanAccept`](/es/settings#available-settings) está habilitado, cada opción de aprobación también ofrece borrar el contexto de planificación primero.180Presione `Ctrl+G` para abrir el plan propuesto en su editor de texto predeterminado y edítelo directamente antes de que Claude continúe. Cuando [`showClearContextOnPlanAccept`](/docs/es/settings#available-settings) está habilitado, cada opción de aprobación también ofrece borrar el contexto de planificación primero.

181 181 

182Aceptar un plan también nombra la sesión automáticamente a partir del contenido del plan, a menos que ya haya establecido un nombre con `--name` o `/rename`.182Aceptar un plan también nombra la sesión automáticamente a partir del contenido del plan, a menos que ya haya establecido un nombre con `--name` o `/rename`.

183 183 


199 Eliminar solicitudes de permiso con modo automático199 Eliminar solicitudes de permiso con modo automático

200</h2>200</h2>

201 201 

202El modo automático permite que Claude se ejecute sin solicitudes de permiso rutinarias. Un modelo clasificador separado revisa las acciones antes de que se ejecuten, bloqueando cualquier cosa que escale más allá de su solicitud, se dirija a infraestructura no reconocida o parezca impulsada por contenido hostil que Claude haya leído. Las [reglas de solicitud](/es/permissions#manage-permissions) explícitas aún fuerzan una solicitud.202El modo automático permite que Claude se ejecute sin solicitudes de permiso rutinarias. Un modelo clasificador separado revisa las acciones antes de que se ejecuten, bloqueando cualquier cosa que escale más allá de su solicitud, se dirija a infraestructura no reconocida o parezca impulsada por contenido hostil que Claude haya leído. Las [reglas de solicitud](/docs/es/permissions#manage-permissions) explícitas aún fuerzan una solicitud.

203 203 

204Las eliminaciones dirigidas al directorio raíz del sistema de archivos o al directorio de inicio, como `rm -rf /` y `rm -rf ~`, solicitan aprobación en lugar de ir al clasificador. {/* min-version: 2.1.208 */}Esta solicitud también se activa cuando el comando contiene sustitución de comandos con `$(...)` o comillas invertidas, o sustitución de procesos con `<(...)`, ya sea que la eliminación esté dentro de la sustitución, como en `echo "$(rm -rf ~)"`, o en otro lugar del mismo comando. Antes de v2.1.208, los comandos que contenían esas formas iban al clasificador en lugar de solicitar.204Las eliminaciones dirigidas al directorio raíz del sistema de archivos o al directorio de inicio, como `rm -rf /` y `rm -rf ~`, solicitan aprobación en lugar de ir al clasificador. Esta solicitud también se activa cuando el comando contiene sustitución de comandos con `$(...)` o comillas invertidas, o sustitución de procesos con `<(...)`, ya sea que la eliminación esté dentro de la sustitución, como en `echo "$(rm -rf ~)"`, o en otro lugar del mismo comando. Antes de v2.1.208, los comandos que contenían esas formas iban al clasificador en lugar de solicitar.

205 205 

206El modo automático también anima a Claude a seguir trabajando sin detenerse para hacer preguntas aclaratorias, aunque Claude aún pregunta cuando su solicitud o una skill depende explícitamente de ello. Para un comportamiento más autónomo mientras se mantienen las solicitudes de permiso, establezca el [estilo de salida proactivo](/es/output-styles) en su lugar.206El modo automático también anima a Claude a seguir trabajando sin detenerse para hacer preguntas aclaratorias, aunque Claude aún pregunta cuando su solicitud o una skill depende explícitamente de ello. Para un comportamiento más autónomo mientras se mantienen las solicitudes de permiso, establezca el [estilo de salida proactivo](/docs/es/output-styles) en su lugar.

207 207 

208<Warning>208<Warning>

209 El modo automático reduce las solicitudes de permiso pero no garantiza la seguridad. Úselo para tareas donde confía en la dirección general, no como reemplazo de revisión en operaciones sensibles.209 El modo automático reduce las solicitudes de permiso pero no garantiza la seguridad. Úselo para tareas donde confía en la dirección general, no como reemplazo de revisión en operaciones sensibles.


212El modo automático está disponible solo cuando su cuenta cumple con todos estos requisitos:212El modo automático está disponible solo cuando su cuenta cumple con todos estos requisitos:

213 213 

214* **Plan**: Todos los planes.214* **Plan**: Todos los planes.

215* **Propietario**: en Team y Enterprise, un Propietario debe habilitarlo en [configuración de administrador de Claude Code](https://claude.ai/admin-settings/claude-code) antes de que los usuarios puedan activarlo. Los administradores también pueden desactivar el modo automático estableciendo `permissions.disableAutoMode` en `"disable"` en [configuración administrada](/es/permissions#managed-settings). Para la pestaña Code de la aplicación de escritorio, `disableAutoMode` es el control a nivel de organización, y el toggle de configuración de administrador no se aplica.215* **Propietario**: en Team y Enterprise, un Propietario debe habilitarlo en [configuración de administrador de Claude Code](https://claude.ai/admin-settings/claude-code) antes de que los usuarios puedan activarlo. Los administradores también pueden desactivar el modo automático estableciendo `permissions.disableAutoMode` en `"disable"` en [configuración administrada](/docs/es/permissions#managed-settings). Para la pestaña Code de la aplicación de escritorio, `disableAutoMode` es el control a nivel de organización, y el toggle de configuración de administrador no se aplica.

216* **Modelo**: en la API de Anthropic, Claude Opus 4.6 o posterior, o Sonnet 4.6 o posterior. En Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry y sesiones de [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) con sesión iniciada, solo Claude Sonnet 5, Opus 4.7 y Opus 4.8. Los modelos más antiguos, incluidos Sonnet 4.5, Opus 4.5, Haiku y modelos claude-3, no son compatibles en ningún proveedor.216* **Modelo**: en la API de Anthropic, Claude Opus 4.6 o posterior, o Sonnet 4.6 o posterior. En Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry y sesiones de [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) con sesión iniciada, solo Claude Sonnet 5, Opus 4.7 y Opus 4.8. Los modelos más antiguos, incluidos Sonnet 4.5, Opus 4.5, Haiku y modelos claude-3, no son compatibles en ningún proveedor.

217* **Proveedor**: disponible por defecto en la API de Anthropic, Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry y sesiones de puerta de enlace de aplicaciones Claude con sesión iniciada. {/* min-version: 2.1.207 */}En v2.1.158 a v2.1.206, el modo automático estaba desactivado en todos estos proveedores excepto la API de Anthropic hasta que estableciera `CLAUDE_CODE_ENABLE_AUTO_MODE=1`; v2.1.207 eliminó el requisito.217* **Proveedor**: disponible por defecto en la API de Anthropic, Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry y sesiones de puerta de enlace de aplicaciones Claude con sesión iniciada. En v2.1.158 a v2.1.206, el modo automático estaba desactivado en todos estos proveedores excepto la API de Anthropic hasta que estableciera `CLAUDE_CODE_ENABLE_AUTO_MODE=1`; v2.1.207 eliminó el requisito.

218 218 

219Si Claude Code informa que el modo automático no está disponible, uno de estos requisitos no se cumple; esto no es una interrupción transitoria. Un mensaje separado que nombre un modelo y diga que el modo automático "no puede determinar la seguridad" de una acción es una interrupción transitoria del clasificador; consulte la [referencia de errores](/es/errors#auto-mode-cannot-determine-the-safety-of-an-action).219Si Claude Code informa que el modo automático no está disponible, uno de estos requisitos no se cumple; esto no es una interrupción transitoria. Un mensaje separado que nombre un modelo y diga que el modo automático "no puede determinar la seguridad" de una acción es una interrupción transitoria del clasificador; consulte la [referencia de errores](/docs/es/errors#auto-mode-cannot-determine-the-safety-of-an-action).

220 220 

221Si establece `defaultMode: "auto"` en [configuración](/es/settings#available-settings) y la sesión comienza en modo `default` sin error, la configuración probablemente esté en `.claude/settings.json` o `.claude/settings.local.json`. Claude Code v2.1.142 y posterior ignoran `auto` de esos archivos para que un repositorio no pueda otorgarse a sí mismo modo automático. Muévalo a `~/.claude/settings.json`.221Si establece `defaultMode: "auto"` en [configuración](/docs/es/settings#available-settings) y la sesión comienza en modo `default` sin error, la configuración probablemente esté en `.claude/settings.json` o `.claude/settings.local.json`. Claude Code v2.1.142 y posterior ignoran `auto` de esos archivos para que un repositorio no pueda otorgarse a sí mismo modo automático. Muévalo a `~/.claude/settings.json`.

222 222 

223<h3 id="enable-auto-mode-on-bedrock-agent-platform-or-foundry">223<h3 id="enable-auto-mode-on-bedrock-agent-platform-or-foundry">

224 Modo automático en Bedrock, Agent Platform o Foundry224 Modo automático en Bedrock, Agent Platform o Foundry

225</h3>225</h3>

226 226 

227En [Amazon Bedrock](/es/amazon-bedrock), [Agent Platform de Google Cloud](/es/google-vertex-ai), [Microsoft Foundry](/es/microsoft-foundry) y sesiones de [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) con sesión iniciada, el modo automático aparece en el ciclo `Shift+Tab` por defecto. Aparecer en el ciclo no cambia el modo en que comienza una sesión: las sesiones aún comienzan en su [`defaultMode`](/es/settings#available-settings), que es Manual a menos que lo cambie. Solo Claude Sonnet 5, Opus 4.7 y Opus 4.8 son compatibles en estos proveedores.227En [Amazon Bedrock](/docs/es/amazon-bedrock), [Agent Platform de Google Cloud](/docs/es/google-vertex-ai), [Microsoft Foundry](/docs/es/microsoft-foundry) y sesiones de [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) con sesión iniciada, el modo automático aparece en el ciclo `Shift+Tab` por defecto. Aparecer en el ciclo no cambia el modo en que comienza una sesión: las sesiones aún comienzan en su [`defaultMode`](/docs/es/settings#available-settings), que es Manual a menos que lo cambie. Solo Claude Sonnet 5, Opus 4.7 y Opus 4.8 son compatibles en estos proveedores.

228 228 

229Para hacer que el modo automático sea el modo de inicio predeterminado, establezca `"permissions": {"defaultMode": "auto"}` en la configuración de usuario o administrada.229Para hacer que el modo automático sea el modo de inicio predeterminado, establezca `"permissions": {"defaultMode": "auto"}` en la configuración de usuario o administrada.

230 230 

231Para evitar que los desarrolladores usen el modo automático, establezca `disableAutoMode` en `"disable"` en [configuración administrada](/es/permissions#managed-settings). Esto elimina `auto` del ciclo `Shift+Tab` y rechaza `--permission-mode auto` al inicio.231Para evitar que los desarrolladores usen el modo automático, establezca `disableAutoMode` en `"disable"` en [configuración administrada](/docs/es/permissions#managed-settings). Esto elimina `auto` del ciclo `Shift+Tab` y rechaza `--permission-mode auto` al inicio.

232 232 

233En v2.1.158 a v2.1.206, el modo automático estaba desactivado en estos proveedores hasta que estableciera `CLAUDE_CODE_ENABLE_AUTO_MODE=1`, y Claude Code ignoraba `defaultMode: "auto"` en estos proveedores a menos que la variable también estuviera establecida. La variable aún se acepta por compatibilidad y no tiene efecto desde v2.1.207 en adelante.233En v2.1.158 a v2.1.206, el modo automático estaba desactivado en estos proveedores hasta que estableciera `CLAUDE_CODE_ENABLE_AUTO_MODE=1`, y Claude Code ignoraba `defaultMode: "auto"` en estos proveedores a menos que la variable también estuviera establecida. La variable aún se acepta por compatibilidad y no tiene efecto desde v2.1.207 en adelante.

234 234 


236 Qué bloquea el clasificador por defecto236 Qué bloquea el clasificador por defecto

237</h3>237</h3>

238 238 

239El clasificador confía en su directorio de trabajo y en los remotos que se configuraron para él cuando comenzó la sesión. {/* min-version: 2.1.200 */}Un remoto agregado o reapuntado durante la sesión con `git remote add` o `git remote set-url` no es de confianza, y todo lo demás se trata como externo hasta que [configure infraestructura de confianza](/es/auto-mode-config). Antes de v2.1.200, los remotos agregados a mitad de sesión también eran de confianza.239El clasificador confía en su directorio de trabajo y en los remotos que se configuraron para él cuando comenzó la sesión. Un remoto agregado o reapuntado durante la sesión con `git remote add` o `git remote set-url` no es de confianza, y todo lo demás se trata como externo hasta que [configure infraestructura de confianza](/docs/es/auto-mode-config). Antes de v2.1.200, los remotos agregados a mitad de sesión también eran de confianza.

240 240 

241**Bloqueado por defecto**:241**Bloqueado por defecto**:

242 242 


248* Modificar infraestructura compartida248* Modificar infraestructura compartida

249* Destruir irreversiblemente archivos que existían antes de la sesión249* Destruir irreversiblemente archivos que existían antes de la sesión

250* Force push250* Force push

251* {/* min-version: 2.1.203 */}Hacer push a la rama predeterminada del repositorio cuando el push contiene contenido sensible como secretos o datos personales o confiados, contiene cambios ocultos o mal descritos en relación con lo que pidió, contiene contenido portado o leído por primera vez desde fuera del repositorio, o evita una solicitud de extracción, revisión o verificación que pidió. Un push simple a la rama predeterminada no se bloquea por sí solo, y levantar el bloqueo de un push marcado requiere nombrar el contenido marcado o la revisión omitida, no solo el push. El clasificador es una capa: las [reglas `permissions.deny`](/es/permissions#manage-permissions) se aplican en todos los modos y pueden bloquear pushes a la rama predeterminada completamente, y la protección de rama del remoto aún se aplica. Antes de v2.1.203, cualquier push directo a la rama predeterminada se bloqueaba251* Hacer push a la rama predeterminada del repositorio cuando el push contiene contenido sensible como secretos o datos personales o confiados, contiene cambios ocultos o mal descritos en relación con lo que pidió, contiene contenido portado o leído por primera vez desde fuera del repositorio, o evita una solicitud de extracción, revisión o verificación que pidió. Un push simple a la rama predeterminada no se bloquea por sí solo, y levantar el bloqueo de un push marcado requiere nombrar el contenido marcado o la revisión omitida, no solo el push. El clasificador es una capa: las [reglas `permissions.deny`](/docs/es/permissions#manage-permissions) se aplican en todos los modos y pueden bloquear pushes a la rama predeterminada completamente, y la protección de rama del remoto aún se aplica. Antes de v2.1.203, cualquier push directo a la rama predeterminada se bloqueaba

252* {/* min-version: 2.1.182 */}`git reset --hard`, `git checkout -- .`, `git restore .`, `git clean -fd`, `git stash drop` o `git stash clear`, que el clasificador presume descartaría cambios sin confirmar252* `git reset --hard`, `git checkout -- .`, `git restore .`, `git clean -fd`, `git stash drop` o `git stash clear`, que el clasificador presume descartaría cambios sin confirmar

253* `git commit --amend` cuando el commit en HEAD no fue creado en esta sesión253* `git commit --amend` cuando el commit en HEAD no fue creado en esta sesión

254* {/* min-version: 2.1.198 */}Desde v2.1.198, `git commit --amend` cuando el commit en HEAD ya ha sido enviado. Un reword solo de mensaje no se bloquea: `--amend -m` sin nada recién preparado, en un commit que Claude creó durante esta sesión254* Desde v2.1.198, `git commit --amend` cuando el commit en HEAD ya ha sido enviado. Un reword solo de mensaje no se bloquea: `--amend -m` sin nada recién preparado, en un commit que Claude creó durante esta sesión

255* `terraform destroy`, `pulumi destroy`, `cdk destroy` o `terragrunt destroy`, y aplicar un plan que destruya recursos255* `terraform destroy`, `pulumi destroy`, `cdk destroy` o `terragrunt destroy`, y aplicar un plan que destruya recursos

256 256 

257Claude Code v2.1.195 y posterior bloquean más categorías por defecto. Varias dependen de entradas de [entorno](/es/auto-mode-config#define-trusted-infrastructure), como objetivos remotos sensibles y alcances de IaC protegidos, que puede reducir a nombres concretos.257Claude Code v2.1.195 y posterior bloquean más categorías por defecto. Varias dependen de entradas de [entorno](/docs/es/auto-mode-config#define-trusted-infrastructure), como objetivos remotos sensibles y alcances de IaC protegidos, que puede reducir a nombres concretos.

258 258 

259* Escribir en un gestor de secretos, o cambiar registros DNS o certificados TLS259* Escribir en un gestor de secretos, o cambiar registros DNS o certificados TLS

260* Fusionar una solicitud de extracción que ningún humano ha aprobado, aprobar la propia solicitud de extracción de Claude o deshabilitar verificaciones de CI260* Fusionar una solicitud de extracción que ningún humano ha aprobado, aprobar la propia solicitud de extracción de Claude o deshabilitar verificaciones de CI


266* Shells interactivos o port-forwards en un objetivo remoto sensible266* Shells interactivos o port-forwards en un objetivo remoto sensible

267* Abrir un túnel o shell inverso que hace que un servicio local sea accesible desde la internet pública267* Abrir un túnel o shell inverso que hace que un servicio local sea accesible desde la internet pública

268* Imprimir una credencial o token en vivo en la transcripción o un archivo268* Imprimir una credencial o token en vivo en la transcripción o un archivo

269* Acceder a una ubicación listada como ubicación de datos sensibles en su [entorno](/es/auto-mode-config#define-trusted-infrastructure), o copiar datos de una. {/* min-version: 2.1.198 */}A partir de v2.1.198, esto también bloquea enviar datos de uno a una audiencia que la entrada excluye269* Acceder a una ubicación listada como ubicación de datos sensibles en su [entorno](/docs/es/auto-mode-config#define-trusted-infrastructure), o copiar datos de una. A partir de v2.1.198, esto también bloquea enviar datos de uno a una audiencia que la entrada excluye

270* Enrutar una instalación de paquete alrededor de su registro de paquetes interno a un registro público. {/* min-version: 2.1.198 */}A partir de v2.1.198, esto también se aplica cuando le ha dicho a Claude que existe un registro interno o espejo en la conversación, no solo cuando uno está listado en su entorno270* Enrutar una instalación de paquete alrededor de su registro de paquetes interno a un registro público. A partir de v2.1.198, esto también se aplica cuando le ha dicho a Claude que existe un registro interno o espejo en la conversación, no solo cuando uno está listado en su entorno

271* Ejecutar un comando con una bandera que desactiva una protección de seguridad, como `--insecure`271* Ejecutar un comando con una bandera que desactiva una protección de seguridad, como `--insecure`

272* Lanzar un bucle de agente autónomo que se ejecuta sin aprobación humana o sandbox, como uno iniciado con `--dangerously-skip-permissions` o `--no-sandbox`. {/* min-version: 2.1.198 */}A partir de v2.1.198, esto también cubre ejecutar un agente de terceros o harness de evaluación con aislamiento y aprobación por acción deshabilitados, como un runner iniciado con `--yes-always`272* Lanzar un bucle de agente autónomo que se ejecuta sin aprobación humana o sandbox, como uno iniciado con `--dangerously-skip-permissions` o `--no-sandbox`. A partir de v2.1.198, esto también cubre ejecutar un agente de terceros o harness de evaluación con aislamiento y aprobación por acción deshabilitados, como un runner iniciado con `--yes-always`

273* Acciones del navegador de [Claude en Chrome](/es/chrome) que podrían enviar contenido de página, cookies o credenciales fuera del origen273* Acciones del navegador de [Claude en Chrome](/docs/es/chrome) que podrían enviar contenido de página, cookies o credenciales fuera del origen

274 274 

275Claude Code v2.1.198 y posterior también bloquean estos por defecto:275Claude Code v2.1.198 y posterior también bloquean estos por defecto:

276 276 

277* Eliminar archivos en `/tmp`, `$TMPDIR` u otro directorio compartido de scratch o caché por comodín, glob o filtro de edad en lugar de por una ruta nombrada específica277* Eliminar archivos en `/tmp`, `$TMPDIR` u otro directorio compartido de scratch o caché por comodín, glob o filtro de edad en lugar de por una ruta nombrada específica

278* Incluir detalles sensibles en contenido enviado, cargado, publicado o escrito a otras personas o sistemas compartidos, cuando su propio mensaje no autorizó esos detalles para ese destinatario. {/* min-version: 2.1.200 */}Los cuerpos de PR e issue, mensajes de commit y comentarios cuentan como este tipo de contenido saliente cuando el repositorio está fuera del límite de confianza o es público, incluidos los repositorios públicos de su propia organización; las rutas de archivo internas, nombres en código, datos de respuesta de API en vivo como correos electrónicos o identificadores de cuenta e identificadores de infraestructura cuentan como detalles sensibles. El alcance de PR, issue y mensaje de commit requiere Claude Code v2.1.200 o posterior. {/* min-version: 2.1.203 */}Los datos personales en vivo de una respuesta de API en un cuerpo de PR o issue, como una dirección de correo electrónico, un identificador de cuenta u organización o una métrica de uso, requieren que nombre esos detalles y el destinatario independientemente de la visibilidad del repositorio o límite de confianza. Esa verificación requiere Claude Code v2.1.203 o posterior278* Incluir detalles sensibles en contenido enviado, cargado, publicado o escrito a otras personas o sistemas compartidos, cuando su propio mensaje no autorizó esos detalles para ese destinatario. Los cuerpos de PR e issue, mensajes de commit y comentarios cuentan como este tipo de contenido saliente cuando el repositorio está fuera del límite de confianza o es público, incluidos los repositorios públicos de su propia organización; las rutas de archivo internas, nombres en código, datos de respuesta de API en vivo como correos electrónicos o identificadores de cuenta e identificadores de infraestructura cuentan como detalles sensibles. El alcance de PR, issue y mensaje de commit requiere Claude Code v2.1.200 o posterior. Los datos personales en vivo de una respuesta de API en un cuerpo de PR o issue, como una dirección de correo electrónico, un identificador de cuenta u organización o una métrica de uso, requieren que nombre esos detalles y el destinatario independientemente de la visibilidad del repositorio o límite de confianza. Esa verificación requiere Claude Code v2.1.203 o posterior

279* Enviar pulsaciones de teclas a su propio panel tmux de Claude Code para conducir su propia interfaz, que el clasificador trata como Claude cambiando sus propios permisos u supervisión279* Enviar pulsaciones de teclas a su propio panel tmux de Claude Code para conducir su propia interfaz, que el clasificador trata como Claude cambiando sus propios permisos u supervisión

280 280 

281Claude Code v2.1.200 y posterior también bloquean estos por defecto:281Claude Code v2.1.200 y posterior también bloquean estos por defecto:


284* Eliminar o desmantelar un recurso con estado que Claude no creó en la sesión, cuando no se aplica ninguna regla de eliminación más específica y no nombró ese recurso284* Eliminar o desmantelar un recurso con estado que Claude no creó en la sesión, cuando no se aplica ninguna regla de eliminación más específica y no nombró ese recurso

285* Reapuntar una URL base de API, punto final de proxy, receptor de webhook o espejo de registro en un host de terceros que no se ajusta a la tarea, incluidos en archivos de ejemplo como `.env.example`285* Reapuntar una URL base de API, punto final de proxy, receptor de webhook o espejo de registro en un host de terceros que no se ajusta a la tarea, incluidos en archivos de ejemplo como `.env.example`

286* Cambiar dónde van los pushes con `git remote set-url` o `git remote add`, a menos que nombre el nuevo remoto286* Cambiar dónde van los pushes con `git remote set-url` o `git remote add`, a menos que nombre el nuevo remoto

287* Hacer push de secretos o datos personales o confiados a un repositorio conocido como público, o hacer push de material confidencial allí que no sea parte del trabajo propio de ese repositorio. {/* min-version: 2.1.203 */}El tema propio de un repositorio de dotfiles es la única excepción para datos personales o confiados, y el contenido de un repositorio privado que llega a cualquier superficie pública se bloquea de la misma manera; ambos refinamientos requieren Claude Code v2.1.203 o posterior. Antes de v2.1.203, los datos personales se agrupaban con material confidencial y se bloqueaban solo cuando no eran parte del trabajo propio de ese repositorio. Cuando la visibilidad de un repositorio no está establecida, el clasificador no bloquea solo por eso; juzga el contenido contra las otras reglas en su lugar287* Hacer push de secretos o datos personales o confiados a un repositorio conocido como público, o hacer push de material confidencial allí que no sea parte del trabajo propio de ese repositorio. El tema propio de un repositorio de dotfiles es la única excepción para datos personales o confiados, y el contenido de un repositorio privado que llega a cualquier superficie pública se bloquea de la misma manera; ambos refinamientos requieren Claude Code v2.1.203 o posterior. Antes de v2.1.203, los datos personales se agrupaban con material confidencial y se bloqueaban solo cuando no eran parte del trabajo propio de ese repositorio. Cuando la visibilidad de un repositorio no está establecida, el clasificador no bloquea solo por eso; juzga el contenido contra las otras reglas en su lugar

288* Abrir una solicitud de extracción contra un repositorio u organización diferente, hacer fork con `gh repo fork` o hacer push a un repositorio de terceros, a menos que nombre ese objetivo externo288* Abrir una solicitud de extracción contra un repositorio u organización diferente, hacer fork con `gh repo fork` o hacer push a un repositorio de terceros, a menos que nombre ese objetivo externo

289 289 

290Claude Code v2.1.203 y posterior también bloquean estos por defecto:290Claude Code v2.1.203 y posterior también bloquean estos por defecto:


303* Leer `.env` y enviar credenciales a su API coincidente303* Leer `.env` y enviar credenciales a su API coincidente

304* Solicitudes HTTP de solo lectura304* Solicitudes HTTP de solo lectura

305* Hacer push a la rama en la que comenzó o una que Claude creó305* Hacer push a la rama en la que comenzó o una que Claude creó

306* {/* min-version: 2.1.203 */}Pushes rutinarios a la rama predeterminada del repositorio. Antes de v2.1.203, cualquier push directo a la rama predeterminada se bloqueaba306* Pushes rutinarios a la rama predeterminada del repositorio. Antes de v2.1.203, cualquier push directo a la rama predeterminada se bloqueaba

307 307 

308Claude Code v2.1.195 y posterior también permiten estos por defecto:308Claude Code v2.1.195 y posterior también permiten estos por defecto:

309 309 

310* Eliminar los trabajos exactos que Claude creó anteriormente en la misma sesión310* Eliminar los trabajos exactos que Claude creó anteriormente en la misma sesión

311* Leer, revisar o escribir código, configuraciones y modelos de amenaza relacionados con seguridad como parte de su tarea311* Leer, revisar o escribir código, configuraciones y modelos de amenaza relacionados con seguridad como parte de su tarea

312* Mensajes entre agentes que trabajan juntos en la misma sesión multiagente312* Mensajes entre agentes que trabajan juntos en la misma sesión multiagente

313* Enviar datos a los dominios, buckets y servicios de confianza que lista en [`environment`](/es/auto-mode-config#define-trusted-infrastructure). Esto cubre solo el flujo de datos, no operaciones destructivas o de credencial en la misma infraestructura313* Enviar datos a los dominios, buckets y servicios de confianza que lista en [`environment`](/docs/es/auto-mode-config#define-trusted-infrastructure). Esto cubre solo el flujo de datos, no operaciones destructivas o de credencial en la misma infraestructura

314* Navegación de [Claude en Chrome](/es/chrome) a un dominio interno de confianza, localhost o una URL que nombró314* Navegación de [Claude en Chrome](/docs/es/chrome) a un dominio interno de confianza, localhost o una URL que nombró

315 315 

316Las solicitudes de acceso a la red de sandbox se enrutan a través del clasificador en lugar de permitirse por defecto. {/* min-version: 2.1.198 */}A partir de v2.1.198, el clasificador reutiliza su veredicto para un host y puerto de red en lugar de volver a ejecutarse en cada conexión:316Las solicitudes de acceso a la red de sandbox se enrutan a través del clasificador en lugar de permitirse por defecto. A partir de v2.1.198, el clasificador reutiliza su veredicto para un host y puerto de red en lugar de volver a ejecutarse en cada conexión:

317 317 

318* Un permiso se reutiliza hasta que nuevo contenido entra en la conversación, momento en el cual ese host se verifica nuevamente318* Un permiso se reutiliza hasta que nuevo contenido entra en la conversación, momento en el cual ese host se verifica nuevamente

319* En la CLI interactiva, un rechazo se descarta cuando termina el turno319* En la CLI interactiva, un rechazo se descarta cuando termina el turno

320* En [modo no interactivo](/es/headless) y sesiones del SDK de Agent, no hay límite de turno, por lo que un rechazo se reutiliza para el resto de la ejecución320* En [modo no interactivo](/docs/es/headless) y sesiones del SDK de Agent, no hay límite de turno, por lo que un rechazo se reutiliza para el resto de la ejecución

321* Cambiar su modo de permiso o reglas descarta todos los veredictos en caché321* Cambiar su modo de permiso o reglas descarta todos los veredictos en caché

322 322 

323Ejecute `claude auto-mode defaults` para ver las listas de reglas completas. Si las acciones rutinarias se bloquean, un administrador puede agregar repositorios, buckets y servicios de confianza a través de la configuración `autoMode.environment`: consulte [Configurar modo automático](/es/auto-mode-config).323Ejecute `claude auto-mode defaults` para ver las listas de reglas completas. Si las acciones rutinarias se bloquean, un administrador puede agregar repositorios, buckets y servicios de confianza a través de la configuración `autoMode.environment`: consulte [Configurar modo automático](/docs/es/auto-mode-config).

324 324 

325Hacer push a su rama de trabajo, hacer un push rutinario a la rama predeterminada del repositorio y crear una solicitud de extracción que coincida con su solicitud se ejecutan sin una solicitud. El clasificador bloquea un push solo cuando lleva riesgo, como un force push o contenido que evita una revisión que configuró. Para requerir un punto de control humano antes de estas acciones mientras permanece en modo automático, agregue reglas `permissions.ask`: consulte [Límites comunes](/es/auto-mode-config#common-boundaries).325Hacer push a su rama de trabajo, hacer un push rutinario a la rama predeterminada del repositorio y crear una solicitud de extracción que coincida con su solicitud se ejecutan sin una solicitud. El clasificador bloquea un push solo cuando lleva riesgo, como un force push o contenido que evita una revisión que configuró. Para requerir un punto de control humano antes de estas acciones mientras permanece en modo automático, agregue reglas `permissions.ask`: consulte [Límites comunes](/docs/es/auto-mode-config#common-boundaries).

326 326 

327<h3 id="boundaries-you-state-in-conversation">327<h3 id="boundaries-you-state-in-conversation">

328 Límites que establece en la conversación328 Límites que establece en la conversación


330 330 

331El clasificador trata los límites que establece en la conversación como una señal de bloqueo. Si le dice a Claude "no hagas push" o "espera hasta que revise antes de implementar", el clasificador bloquea acciones coincidentes incluso cuando las reglas predeterminadas las permitirían. Un límite permanece en vigor hasta que lo levante en un mensaje posterior. El propio juicio de Claude de que se cumplió una condición no lo levanta.331El clasificador trata los límites que establece en la conversación como una señal de bloqueo. Si le dice a Claude "no hagas push" o "espera hasta que revise antes de implementar", el clasificador bloquea acciones coincidentes incluso cuando las reglas predeterminadas las permitirían. Un límite permanece en vigor hasta que lo levante en un mensaje posterior. El propio juicio de Claude de que se cumplió una condición no lo levanta.

332 332 

333Los límites no se almacenan como reglas. El clasificador los relee de la transcripción en cada verificación, por lo que un límite puede perderse si la [compactación de contexto](/es/costs#reduce-token-usage) elimina el mensaje que lo estableció. Para una garantía dura, agregue una [regla de rechazo](/es/permissions#permission-rule-syntax) en su lugar.333Los límites no se almacenan como reglas. El clasificador los relee de la transcripción en cada verificación, por lo que un límite puede perderse si la [compactación de contexto](/docs/es/costs#reduce-token-usage) elimina el mensaje que lo estableció. Para una garantía dura, agregue una [regla de rechazo](/docs/es/permissions#permission-rule-syntax) en su lugar.

334 334 

335<h3 id="when-auto-mode-falls-back">335<h3 id="when-auto-mode-falls-back">

336 Cuándo el modo automático retrocede336 Cuándo el modo automático retrocede


340 340 

341Si el clasificador bloquea una acción 3 veces seguidas o 20 veces en total, el modo automático se pausa y Claude Code reanuda las solicitudes. Aprobar la acción solicitada reanuda el modo automático. Estos umbrales no son configurables. Cualquier acción permitida reinicia el contador consecutivo, mientras que el contador total persiste para la sesión y se reinicia solo cuando su propio límite desencadena un retroceso.341Si el clasificador bloquea una acción 3 veces seguidas o 20 veces en total, el modo automático se pausa y Claude Code reanuda las solicitudes. Aprobar la acción solicitada reanuda el modo automático. Estos umbrales no son configurables. Cualquier acción permitida reinicia el contador consecutivo, mientras que el contador total persiste para la sesión y se reinicia solo cuando su propio límite desencadena un retroceso.

342 342 

343En [modo no interactivo](/es/headless) con la bandera `-p`, los bloqueos repetidos abortan la sesión ya que no hay usuario para solicitar.343En [modo no interactivo](/docs/es/headless) con la bandera `-p`, los bloqueos repetidos abortan la sesión ya que no hay usuario para solicitar.

344 344 

345Los bloqueos repetidos generalmente significan que el clasificador carece de contexto sobre su infraestructura. Use `/feedback` para reportar falsos positivos, o haga que un administrador [configure infraestructura de confianza](/es/auto-mode-config).345Los bloqueos repetidos generalmente significan que el clasificador carece de contexto sobre su infraestructura. Use `/feedback` para reportar falsos positivos, o haga que un administrador [configure infraestructura de confianza](/docs/es/auto-mode-config).

346 346 

347<AccordionGroup>347<AccordionGroup>

348 <Accordion title="Cómo el clasificador evalúa acciones">348 <Accordion title="Cómo el clasificador evalúa acciones">

349 Cada acción pasa por un orden de decisión fijo. El primer paso coincidente gana:349 Cada acción pasa por un orden de decisión fijo. El primer paso coincidente gana:

350 350 

351 1. Las acciones que coinciden con sus [reglas de permiso, solicitud o rechazo](/es/permissions#manage-permissions) se resuelven inmediatamente. Las escrituras en [rutas protegidas](#protected-paths) se enrutan al clasificador incluso cuando una regla de permiso coincide. Las herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools) y las herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) le solicitan directamente incluso cuando una regla de permiso coincide. Las reglas de solicitud con alcance de contenido retroceden a una solicitud de permiso351 1. Las acciones que coinciden con sus [reglas de permiso, solicitud o rechazo](/docs/es/permissions#manage-permissions) se resuelven inmediatamente. Las escrituras en [rutas protegidas](#protected-paths) se enrutan al clasificador incluso cuando una regla de permiso coincide. Las herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools) y las herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) le solicitan directamente incluso cuando una regla de permiso coincide. Las reglas de solicitud con alcance de contenido retroceden a una solicitud de permiso

352 2. Las acciones de solo lectura y ediciones de archivo en su directorio de trabajo se aprueban automáticamente, excepto las escrituras en [rutas protegidas](#protected-paths)352 2. Las acciones de solo lectura y ediciones de archivo en su directorio de trabajo se aprueban automáticamente, excepto las escrituras en [rutas protegidas](#protected-paths)

353 3. Todo lo demás va al clasificador. Una herramienta de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools) omite el clasificador y le solicita directamente, por lo que una aprobación requerida por la organización nunca se aprueba automáticamente. {/* min-version: 2.1.199 */}A partir de v2.1.199, una herramienta MCP marcada con [`_meta["anthropic/requiresUserInteraction"]`](/es/mcp#require-approval-for-a-specific-tool) también omite el clasificador y le solicita directamente, por lo que un paso de consentimiento nunca se aprueba automáticamente en nombre del autor de la herramienta353 3. Todo lo demás va al clasificador. Una herramienta de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools) omite el clasificador y le solicita directamente, por lo que una aprobación requerida por la organización nunca se aprueba automáticamente. A partir de v2.1.199, una herramienta MCP marcada con [`_meta["anthropic/requiresUserInteraction"]`](/docs/es/mcp#require-approval-for-a-specific-tool) también omite el clasificador y le solicita directamente, por lo que un paso de consentimiento nunca se aprueba automáticamente en nombre del autor de la herramienta

354 4. Si el clasificador bloquea, Claude recibe la razón e intenta una alternativa354 4. Si el clasificador bloquea, Claude recibe la razón e intenta una alternativa

355 355 

356 Al entrar en modo automático, se descartan las reglas de permiso amplias que otorgan ejecución de código arbitraria:356 Al entrar en modo automático, se descartan las reglas de permiso amplias que otorgan ejecución de código arbitraria:


366 </Accordion>366 </Accordion>

367 367 

368 <Accordion title="Cómo el modo automático maneja subagentes">368 <Accordion title="Cómo el modo automático maneja subagentes">

369 El clasificador verifica el trabajo de [subagente](/es/sub-agents) en tres puntos:369 El clasificador verifica el trabajo de [subagente](/docs/es/sub-agents) en tres puntos:

370 370 

371 1. Antes de que comience un subagente, se evalúa la descripción de tarea delegada, por lo que una tarea que parece peligrosa se bloquea en el momento de su creación.371 1. Antes de que comience un subagente, se evalúa la descripción de tarea delegada, por lo que una tarea que parece peligrosa se bloquea en el momento de su creación.

372 2. Mientras se ejecuta el subagente, cada una de sus acciones pasa por el clasificador con las mismas reglas que la sesión principal, y cualquier `permissionMode` en el frontmatter del subagente se ignora.372 2. Mientras se ejecuta el subagente, cada una de sus acciones pasa por el clasificador con las mismas reglas que la sesión principal, y cualquier `permissionMode` en el frontmatter del subagente se ignora.


376 </Accordion>376 </Accordion>

377 377 

378 <Accordion title="Costo y latencia">378 <Accordion title="Costo y latencia">

379 El clasificador se ejecuta en un modelo configurado por servidor que es independiente de su selección de `/model`, por lo que cambiar modelos no cambia la disponibilidad del clasificador. Las llamadas del clasificador cuentan hacia su uso de tokens. Cada verificación envía una porción de la transcripción más la acción pendiente, agregando un viaje de ida y vuelta antes de la ejecución. Las lecturas y ediciones de directorio de trabajo fuera de rutas protegidas omiten el clasificador, por lo que la sobrecarga proviene principalmente de comandos de shell y operaciones de red. {/* min-version: 2.1.198 */}A partir de v2.1.198, un veredicto de red de sandbox para un host y puerto se reutiliza en lugar de reclasificarse en cada conexión, por lo que las conexiones repetidas al mismo host no agregan cada una una verificación. [Qué bloquea el clasificador por defecto](#what-the-classifier-blocks-by-default) describe cuánto tiempo dura un permiso y un rechazo.379 El clasificador se ejecuta en un modelo configurado por servidor que es independiente de su selección de `/model`, por lo que cambiar modelos no cambia la disponibilidad del clasificador. Las llamadas del clasificador cuentan hacia su uso de tokens. Cada verificación envía una porción de la transcripción más la acción pendiente, agregando un viaje de ida y vuelta antes de la ejecución. Las lecturas y ediciones de directorio de trabajo fuera de rutas protegidas omiten el clasificador, por lo que la sobrecarga proviene principalmente de comandos de shell y operaciones de red. A partir de v2.1.198, un veredicto de red de sandbox para un host y puerto se reutiliza en lugar de reclasificarse en cada conexión, por lo que las conexiones repetidas al mismo host no agregan cada una una verificación. [Qué bloquea el clasificador por defecto](#what-the-classifier-blocks-by-default) describe cuánto tiempo dura un permiso y un rechazo.

380 </Accordion>380 </Accordion>

381</AccordionGroup>381</AccordionGroup>

382 382 


384 Permitir solo herramientas preaprobadas con el modo dontAsk384 Permitir solo herramientas preaprobadas con el modo dontAsk

385</h2>385</h2>

386 386 

387Si establece el modo `dontAsk`, Claude Code deniega automáticamente cada llamada de herramienta que de otro modo le solicitaría confirmación. Claude ejecuta solo acciones que coincidan con sus reglas `permissions.allow`, [comandos Bash de solo lectura](/es/permissions#read-only-commands) y llamadas aprobadas por un [hook PreToolUse](/es/permissions#extend-permissions-with-hooks). Utilice este modo para canalizaciones de CI o entornos restringidos donde predefine exactamente qué puede hacer Claude; la sesión nunca espera entrada. La barra de estado muestra `⏵⏵ don't ask on` mientras este modo está activo.387Si establece el modo `dontAsk`, Claude Code deniega automáticamente cada llamada de herramienta que de otro modo le solicitaría confirmación. Claude ejecuta solo acciones que coincidan con sus reglas `permissions.allow`, [comandos Bash de solo lectura](/docs/es/permissions#read-only-commands) y llamadas aprobadas por un [hook PreToolUse](/docs/es/permissions#extend-permissions-with-hooks). Utilice este modo para canalizaciones de CI o entornos restringidos donde predefine exactamente qué puede hacer Claude; la sesión nunca espera entrada. La barra de estado muestra `⏵⏵ don't ask on` mientras este modo está activo.

388 388 

389Claude Code deniega llamadas que coincidan con sus reglas explícitas de [`ask`](/es/permissions#manage-permissions) en lugar de solicitar confirmación. También deniega la herramienta integrada `AskUserQuestion` y las herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools), incluso si sus reglas de permiso coinciden. {/* min-version: 2.1.199 */}Deniega las herramientas MCP marcadas como [`_meta["anthropic/requiresUserInteraction"]`](/es/mcp#require-approval-for-a-specific-tool) de la misma manera, porque su tarjeta de aprobación necesita una respuesta que este modo nunca recopila; esto requiere Claude Code v2.1.199 o posterior.389Claude Code deniega llamadas que coincidan con sus reglas explícitas de [`ask`](/docs/es/permissions#manage-permissions) en lugar de solicitar confirmación. También deniega la herramienta integrada `AskUserQuestion` y las herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), incluso si sus reglas de permiso coinciden. Deniega las herramientas MCP marcadas como [`_meta["anthropic/requiresUserInteraction"]`](/docs/es/mcp#require-approval-for-a-specific-tool) de la misma manera, porque su tarjeta de aprobación necesita una respuesta que este modo nunca recopila; esto requiere Claude Code v2.1.199 o posterior.

390 390 

391Las sesiones en la nube en [Claude Code en la web](/es/claude-code-on-the-web) ignoran `defaultMode: "dontAsk"`; consulte [bypassPermissions](#skip-all-checks-with-bypasspermissions-mode) para obtener más detalles.391Las sesiones en la nube en [Claude Code en la web](/docs/es/claude-code-on-the-web) ignoran `defaultMode: "dontAsk"`; consulte [bypassPermissions](#skip-all-checks-with-bypasspermissions-mode) para obtener más detalles.

392 392 

393Configúrelo al inicio con la bandera:393Configúrelo al inicio con la bandera:

394 394 


402 402 

403El modo `bypassPermissions` desactiva los avisos de permisos y las comprobaciones de seguridad para que las llamadas a herramientas se ejecuten inmediatamente, incluidas las escrituras en [rutas protegidas](#protected-paths). Antes de v2.1.126, las escrituras en rutas protegidas aún solicitaban confirmación en este modo.403El modo `bypassPermissions` desactiva los avisos de permisos y las comprobaciones de seguridad para que las llamadas a herramientas se ejecuten inmediatamente, incluidas las escrituras en [rutas protegidas](#protected-paths). Antes de v2.1.126, las escrituras en rutas protegidas aún solicitaban confirmación en este modo.

404 404 

405Las [reglas ask](/es/permissions#manage-permissions) explícitas y las herramientas de conector [que su organización configuró como `ask`](/es/mcp#organization-controls-on-connector-tools) aún fuerzan un aviso en este modo. {/* min-version: 2.1.199 */}Las herramientas MCP marcadas con [`_meta["anthropic/requiresUserInteraction"]`](/es/mcp#require-approval-for-a-specific-tool) también aún solicitan confirmación; esto requiere Claude Code v2.1.199 o posterior.405Las [reglas ask](/docs/es/permissions#manage-permissions) explícitas y las herramientas de conector [que su organización configuró como `ask`](/docs/es/mcp#organization-controls-on-connector-tools) aún fuerzan un aviso en este modo. Las herramientas MCP marcadas con [`_meta["anthropic/requiresUserInteraction"]`](/docs/es/mcp#require-approval-for-a-specific-tool) también aún solicitan confirmación; esto requiere Claude Code v2.1.199 o posterior.

406 406 

407Las eliminaciones dirigidas al directorio raíz del sistema de archivos o al directorio de inicio, como `rm -rf /` y `rm -rf ~`, aún solicitan confirmación como un cortacircuitos contra errores del modelo. {/* min-version: 2.1.208 */}El cortacircuitos también se activa cuando el comando contiene sustitución de comandos con `$(...)` o comillas invertidas, o sustitución de procesos con `<(...)`, ya sea que la eliminación esté dentro de la sustitución, como en `echo "$(rm -rf ~)"`, o en otro lugar del mismo comando. La forma simple, escrita como su propio comando, ha solicitado confirmación en este modo desde que se introdujo el cortacircuitos; antes de v2.1.208, los comandos que contenían esas formas no solicitaban confirmación.407Las eliminaciones dirigidas al directorio raíz del sistema de archivos o al directorio de inicio, como `rm -rf /` y `rm -rf ~`, aún solicitan confirmación como un cortacircuitos contra errores del modelo. El cortacircuitos también se activa cuando el comando contiene sustitución de comandos con `$(...)` o comillas invertidas, o sustitución de procesos con `<(...)`, ya sea que la eliminación esté dentro de la sustitución, como en `echo "$(rm -rf ~)"`, o en otro lugar del mismo comando. La forma simple, escrita como su propio comando, ha solicitado confirmación en este modo desde que se introdujo el cortacircuitos; antes de v2.1.208, los comandos que contenían esas formas no solicitaban confirmación.

408 408 

409<Warning>409<Warning>

410 Utilice este modo solo en entornos aislados como contenedores, máquinas virtuales o dev containers sin acceso a Internet, donde Claude Code no pueda dañar su sistema anfitrión.410 Utilice este modo solo en entornos aislados como contenedores, máquinas virtuales o dev containers sin acceso a Internet, donde Claude Code no pueda dañar su sistema anfitrión.


424--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons424--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons

425```425```

426 426 

427La comprobación se omite automáticamente dentro de un sandbox reconocido. Para ejecutarse de forma autónoma en un contenedor, utilice la configuración de [dev container](/es/devcontainer), que ejecuta Claude Code como un usuario no root.427La comprobación se omite automáticamente dentro de un sandbox reconocido. Para ejecutarse de forma autónoma en un contenedor, utilice la configuración de [dev container](/docs/es/devcontainer), que ejecuta Claude Code como un usuario no root.

428 428 

429[Claude Code en la web](/es/claude-code-on-the-web) no respeta `defaultMode: "bypassPermissions"` o `"dontAsk"` de sus archivos de configuración, por lo que la configuración registrada en un repositorio no puede iniciar una sesión en la nube en modo bypass-permissions. La configuración se ignora silenciosamente y la sesión se inicia en el modo que se muestra en el menú desplegable de modo. Consulte [Cambiar modos de permisos](#switch-permission-modes) para ver qué modos ofrecen las sesiones en la nube.429[Claude Code en la web](/docs/es/claude-code-on-the-web) no respeta `defaultMode: "bypassPermissions"` o `"dontAsk"` de sus archivos de configuración, por lo que la configuración registrada en un repositorio no puede iniciar una sesión en la nube en modo bypass-permissions. La configuración se ignora silenciosamente y la sesión se inicia en el modo que se muestra en el menú desplegable de modo. Consulte [Cambiar modos de permisos](#switch-permission-modes) para ver qué modos ofrecen las sesiones en la nube.

430 430 

431<Warning>431<Warning>

432 `bypassPermissions` no ofrece protección contra inyección de prompts o acciones no intencionadas. Para comprobaciones de seguridad de fondo con muchos menos avisos de permisos, utilice el [modo automático](#eliminate-prompts-with-auto-mode) en su lugar. Los administradores pueden bloquear este modo estableciendo `permissions.disableBypassPermissionsMode` en `"disable"` en [configuración administrada](/es/permissions#managed-settings).432 `bypassPermissions` no ofrece protección contra inyección de prompts o acciones no intencionadas. Para comprobaciones de seguridad de fondo con muchos menos avisos de permisos, utilice el [modo automático](#eliminate-prompts-with-auto-mode) en su lugar. Los administradores pueden bloquear este modo estableciendo `permissions.disableBypassPermissionsMode` en `"disable"` en [configuración administrada](/docs/es/permissions#managed-settings).

433</Warning>433</Warning>

434 434 

435<h2 id="protected-paths">435<h2 id="protected-paths">


445| `dontAsk` | Denegadas |445| `dontAsk` | Denegadas |

446| `bypassPermissions` | Permitidas |446| `bypassPermissions` | Permitidas |

447 447 

448Las reglas [`permissions.allow`](/es/permissions#manage-permissions) en archivos de configuración no pre-aprueban escrituras en rutas protegidas. La verificación de seguridad se ejecuta antes de que Claude Code evalúe las reglas de permitir desde la configuración, por lo que una entrada como `Edit(.claude/**)` en `~/.claude/settings.json` o `.claude/settings.json` no cambia el resultado por modo en la tabla anterior. En modos que solicitan, la solicitud para una escritura en `.claude/` ofrece **Sí, y permitir que Claude edite su propia configuración para esta sesión**, lo que aprueba escrituras posteriores en `.claude/` en esa sesión sin solicitar de nuevo.448Las reglas [`permissions.allow`](/docs/es/permissions#manage-permissions) en archivos de configuración no pre-aprueban escrituras en rutas protegidas. La verificación de seguridad se ejecuta antes de que Claude Code evalúe las reglas de permitir desde la configuración, por lo que una entrada como `Edit(.claude/**)` en `~/.claude/settings.json` o `.claude/settings.json` no cambia el resultado por modo en la tabla anterior. En modos que solicitan, la solicitud para una escritura en `.claude/` ofrece **Sí, y permitir que Claude edite su propia configuración para esta sesión**, lo que aprueba escrituras posteriores en `.claude/` en esa sesión sin solicitar de nuevo.

449 449 

450Directorios protegidos:450Directorios protegidos:

451 451 


476 Véase también476 Véase también

477</h2>477</h2>

478 478 

479* [Permisos](/es/permissions): reglas de permitir, preguntar y denegar; políticas gestionadas479* [Permisos](/docs/es/permissions): reglas de permitir, preguntar y denegar; políticas gestionadas

480* [Configurar modo automático](/es/auto-mode-config): indique al clasificador qué infraestructura confía su organización480* [Configurar modo automático](/docs/es/auto-mode-config): indique al clasificador qué infraestructura confía su organización

481* [Hooks](/es/hooks): lógica de permisos personalizada mediante hooks `PreToolUse` y `PermissionRequest`481* [Hooks](/docs/es/hooks): lógica de permisos personalizada mediante hooks `PreToolUse` y `PermissionRequest`

482* [Ultraplan](/es/ultraplan): ejecutar modo plan en una sesión de Claude Code en la web con revisión basada en navegador482* [Ultraplan](/docs/es/ultraplan): ejecutar modo plan en una sesión de Claude Code en la web con revisión basada en navegador

483* [Seguridad](/es/security): salvaguardas y mejores prácticas483* [Seguridad](/docs/es/security): salvaguardas y mejores prácticas

484* [Sandboxing](/es/sandboxing): aislamiento del sistema de archivos y red para comandos Bash484* [Sandboxing](/docs/es/sandboxing): aislamiento del sistema de archivos y red para comandos Bash

485* [Modo no interactivo](/es/headless): ejecutar Claude Code con la bandera `-p`485* [Modo no interactivo](/docs/es/headless): ejecutar Claude Code con la bandera `-p`

permissions.md +57 −57

Details

22 22 

23En un mensaje de permiso de Bash o PowerShell, presione `Ctrl+E` para mostrar una explicación del comando: qué hace, por qué Claude lo está ejecutando y qué podría salir mal, etiquetado como **Riesgo bajo**, **Riesgo medio** o **Riesgo alto**. Claude Code envía el comando y la propia descripción de Claude de la llamada al modelo para generar la explicación solo cuando presiona `Ctrl+E`, no en cada mensaje. Mostrar la explicación no ejecuta el comando; presione `Ctrl+E` de nuevo para ocultarla.23En un mensaje de permiso de Bash o PowerShell, presione `Ctrl+E` para mostrar una explicación del comando: qué hace, por qué Claude lo está ejecutando y qué podría salir mal, etiquetado como **Riesgo bajo**, **Riesgo medio** o **Riesgo alto**. Claude Code envía el comando y la propia descripción de Claude de la llamada al modelo para generar la explicación solo cuando presiona `Ctrl+E`, no en cada mensaje. Mostrar la explicación no ejecuta el comando; presione `Ctrl+E` de nuevo para ocultarla.

24 24 

25Para desactivar el atajo, establezca [`permissionExplainerEnabled`](/es/settings#global-config-settings) en `false` en `~/.claude.json`.25Para desactivar el atajo, establezca [`permissionExplainerEnabled`](/docs/es/settings#global-config-settings) en `false` en `~/.claude.json`.

26 26 

27<h2 id="manage-permissions">27<h2 id="manage-permissions">

28 Administrar permisos28 Administrar permisos


41Las reglas deny se comportan de manera diferente dependiendo de si nombran una herramienta o delimitan un patrón dentro de una. Un nombre de herramienta simple como `Bash` elimina la herramienta del contexto de Claude por completo, por lo que Claude nunca la ve. Una regla delimitada como `Bash(rm *)` deja la herramienta disponible y bloquea las llamadas coincidentes cuando Claude intenta usarlas.41Las reglas deny se comportan de manera diferente dependiendo de si nombran una herramienta o delimitan un patrón dentro de una. Un nombre de herramienta simple como `Bash` elimina la herramienta del contexto de Claude por completo, por lo que Claude nunca la ve. Una regla delimitada como `Bash(rm *)` deja la herramienta disponible y bloquea las llamadas coincidentes cuando Claude intenta usarlas.

42 42 

43<Note>43<Note>

44 Las reglas de permisos se aplican mediante Claude Code, no por el modelo. Las instrucciones en su prompt o `CLAUDE.md` determinan lo que Claude intenta hacer, pero no cambian lo que Claude Code permite. Para otorgar o revocar acceso, use `/permissions`, las reglas descritas aquí, un [modo de permisos](/es/permission-modes), o un [hook PreToolUse](#extend-permissions-with-hooks).44 Las reglas de permisos se aplican mediante Claude Code, no por el modelo. Las instrucciones en su prompt o `CLAUDE.md` determinan lo que Claude intenta hacer, pero no cambian lo que Claude Code permite. Para otorgar o revocar acceso, use `/permissions`, las reglas descritas aquí, un [modo de permisos](/docs/es/permission-modes), o un [hook PreToolUse](#extend-permissions-with-hooks).

45</Note>45</Note>

46 46 

47<h2 id="permission-modes">47<h2 id="permission-modes">

48 Modos de permisos48 Modos de permisos

49</h2>49</h2>

50 50 

51Claude Code admite varios modos de permisos que controlan cómo se aprueban las llamadas de herramientas. Consulte [Modos de permisos](/es/permission-modes) para saber cuándo usar cada uno. Establezca `defaultMode` en sus [archivos de configuración](/es/settings#settings-files):51Claude Code admite varios modos de permisos que controlan cómo se aprueban las llamadas de herramientas. Consulte [Modos de permisos](/docs/es/permission-modes) para saber cuándo usar cada uno. Establezca `defaultMode` en sus [archivos de configuración](/docs/es/settings#settings-files):

52 52 

53| Modo | Descripción |53| Modo | Descripción |

54| :------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |54| :------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

55| `default` | Comportamiento estándar: solicita permiso en el primer uso de cada herramienta. {/* min-version: 2.1.200 */}Etiquetado como Manual en la CLI, en las extensiones de VS Code y JetBrains, y en la aplicación de escritorio, y Claude Code acepta `manual` como un alias. La etiqueta y el alias requieren Claude Code v2.1.200 o posterior. La etiqueta de la aplicación de escritorio no depende de su versión de CLI |55| `default` | Comportamiento estándar: solicita permiso en el primer uso de cada herramienta. Etiquetado como Manual en la CLI, en las extensiones de VS Code y JetBrains, y en la aplicación de escritorio, y Claude Code acepta `manual` como un alias. La etiqueta y el alias requieren Claude Code v2.1.200 o posterior. La etiqueta de la aplicación de escritorio no depende de su versión de CLI |

56| `acceptEdits` | Acepta automáticamente ediciones de archivos y comandos comunes del sistema de archivos como `mkdir`, `touch`, `mv` y `cp` para rutas en el directorio de trabajo o `additionalDirectories` |56| `acceptEdits` | Acepta automáticamente ediciones de archivos y comandos comunes del sistema de archivos como `mkdir`, `touch`, `mv` y `cp` para rutas en el directorio de trabajo o `additionalDirectories` |

57| `plan` | Claude lee archivos y ejecuta comandos de shell de solo lectura para explorar pero no edita sus archivos de origen. Etiquetado como Plan en la CLI y en la extensión de VS Code |57| `plan` | Claude lee archivos y ejecuta comandos de shell de solo lectura para explorar pero no edita sus archivos de origen. Etiquetado como Plan en la CLI y en la extensión de VS Code |

58| `auto` | Auto-aprueba llamadas de herramientas con comprobaciones de seguridad en segundo plano que verifican que las acciones se alineen con su solicitud |58| `auto` | Auto-aprueba llamadas de herramientas con comprobaciones de seguridad en segundo plano que verifican que las acciones se alineen con su solicitud |

59| `dontAsk` | Deniega automáticamente las herramientas a menos que estén preaprobadas a través de `/permissions` o reglas `permissions.allow`. `AskUserQuestion`, herramientas de conector [que su organización configuró en `ask`](/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) se deniegan incluso si las ha permitido |59| `dontAsk` | Deniega automáticamente las herramientas a menos que estén preaprobadas a través de `/permissions` o reglas `permissions.allow`. `AskUserQuestion`, herramientas de conector [que su organización configuró en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) se deniegan incluso si las ha permitido |

60| `bypassPermissions` | Omite avisos de permisos, excepto aquellos forzados por reglas `ask` explícitas, herramientas de conector [que su organización configuró en `ask`](/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool). Las eliminaciones de directorio raíz y directorio de inicio como `rm -rf /` también aún solicitan como un disyuntor de circuito |60| `bypassPermissions` | Omite avisos de permisos, excepto aquellos forzados por reglas `ask` explícitas, herramientas de conector [que su organización configuró en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool). Las eliminaciones de directorio raíz y directorio de inicio como `rm -rf /` también aún solicitan como un disyuntor de circuito |

61 61 

62<Warning>62<Warning>

63 El modo `bypassPermissions` omite avisos de permisos, incluyendo escrituras en `.git`, `.config/git`, `.claude`, `.vscode`, `.idea`, `.husky`, `.cargo`, `.devcontainer`, `.yarn` y `.mvn`. Use este modo solo en entornos aislados como contenedores o máquinas virtuales donde Claude Code no pueda causar daño.63 El modo `bypassPermissions` omite avisos de permisos, incluyendo escrituras en `.git`, `.config/git`, `.claude`, `.vscode`, `.idea`, `.husky`, `.cargo`, `.devcontainer`, `.yarn` y `.mvn`. Use este modo solo en entornos aislados como contenedores o máquinas virtuales donde Claude Code no pueda causar daño.

64 64 

65 Algunos avisos aún se activan en este modo. Las reglas `ask` explícitas, herramientas de conector [que su organización configuró en `ask`](/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) aún solicitan. Las eliminaciones dirigidas al directorio raíz del sistema de archivos o al directorio de inicio, como `rm -rf /` y `rm -rf ~`, también solicitan como un disyuntor de circuito contra errores del modelo, {/* min-version: 2.1.208 */}incluyendo cuando el comando contiene sustitución de comandos con `$(...)` o comillas invertidas, o sustitución de procesos con `<(...)`. Antes de v2.1.208, solo la forma simple, como `rm -rf ~` escrito como su propio comando, solicitaba; los comandos que llegaban a la eliminación a través de una sustitución no lo hacían.65 Algunos avisos aún se activan en este modo. Las reglas `ask` explícitas, herramientas de conector [que su organización configuró en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) aún solicitan. Las eliminaciones dirigidas al directorio raíz del sistema de archivos o al directorio de inicio, como `rm -rf /` y `rm -rf ~`, también solicitan como un disyuntor de circuito contra errores del modelo, incluyendo cuando el comando contiene sustitución de comandos con `$(...)` o comillas invertidas, o sustitución de procesos con `<(...)`. Antes de v2.1.208, solo la forma simple, como `rm -rf ~` escrito como su propio comando, solicitaba; los comandos que llegaban a la eliminación a través de una sustitución no lo hacían.

66</Warning>66</Warning>

67 67 

68Para evitar que se use el modo `bypassPermissions` o `auto`, establezca `permissions.disableBypassPermissionsMode` o `permissions.disableAutoMode` en `"disable"` en cualquier [archivo de configuración](/es/settings#settings-files). Estos son más útiles en [configuración administrada](#managed-settings) donde no pueden ser anulados.68Para evitar que se use el modo `bypassPermissions` o `auto`, establezca `permissions.disableBypassPermissionsMode` o `permissions.disableAutoMode` en `"disable"` en cualquier [archivo de configuración](/docs/es/settings#settings-files). Estos son más útiles en [configuración administrada](#managed-settings) donde no pueden ser anulados.

69 69 

70<h2 id="permission-rule-syntax">70<h2 id="permission-rule-syntax">

71 Sintaxis de reglas de permisos71 Sintaxis de reglas de permisos


117* Cada regla nombra un parámetro. Para controlar tanto `model` como `isolation`, escriba dos reglas, `Agent(model:opus)` y `Agent(isolation:worktree)`, en lugar de combinarlas en una regla117* Cada regla nombra un parámetro. Para controlar tanto `model` como `isolation`, escriba dos reglas, `Agent(model:opus)` y `Agent(isolation:worktree)`, en lugar de combinarlas en una regla

118* El valor admite `*` como un comodín que coincide con cualquier secuencia de caracteres, por lo que `Agent(isolation:*)` coincide con cualquier valor de aislamiento explícito. Sin `*` la coincidencia es exacta118* El valor admite `*` como un comodín que coincide con cualquier secuencia de caracteres, por lo que `Agent(isolation:*)` coincide con cualquier valor de aislamiento explícito. Sin `*` la coincidencia es exacta

119* Un parámetro que el modelo omite nunca se coincide, por lo que `Agent(model:*)` no coincide con una llamada que deja `model` sin establecer119* Un parámetro que el modelo omite nunca se coincide, por lo que `Agent(model:*)` no coincide con una llamada que deja `model` sin establecer

120* El valor se compara con la entrada literal que Claude envía, antes de cualquier normalización. `Agent(model:opus)` coincide con el alias `opus` pero no con un ID de modelo completo. Ejecute con [`--verbose`](/es/cli-reference) para ver los nombres y valores exactos de los parámetros en cada llamada de herramienta120* El valor se compara con la entrada literal que Claude envía, antes de cualquier normalización. `Agent(model:opus)` coincide con el alias `opus` pero no con un ID de modelo completo. Ejecute con [`--verbose`](/docs/es/cli-reference) para ver los nombres y valores exactos de los parámetros en cada llamada de herramienta

121* Se ignora el espacio en blanco alrededor de los dos puntos121* Se ignora el espacio en blanco alrededor de los dos puntos

122 122 

123Los campos que una herramienta ya coincide con sus propias reglas de canonicalización no son coincidentes de esta manera: `command` para Bash y PowerShell, `file_path` para Read, Edit y Write, `path` para Grep y Glob, `notebook_path` para NotebookEdit, y `url` para WebFetch. Una regla como `Bash(command:rm *)` sería eludible por un comando compuesto, por lo que Claude Code la ignora y emite una advertencia de inicio. Use `Bash(rm *)`, `Read(./path)`, o `WebFetch(domain:host)` en su lugar.123Los campos que una herramienta ya coincide con sus propias reglas de canonicalización no son coincidentes de esta manera: `command` para Bash y PowerShell, `file_path` para Read, Edit y Write, `path` para Grep y Glob, `notebook_path` para NotebookEdit, y `url` para WebFetch. Una regla como `Bash(command:rm *)` sería eludible por un comando compuesto, por lo que Claude Code la ignora y emite una advertencia de inicio. Use `Bash(rm *)`, `Read(./path)`, o `WebFetch(domain:host)` en su lugar.


169 169 

170Una regla de denegación o solicitud cuyo nombre de herramienta no coincide con ninguna herramienta conocida produce una advertencia de inicio para detectar errores tipográficos. Los nombres de herramientas que contienen `_` o `*` están exentos de la verificación.170Una regla de denegación o solicitud cuyo nombre de herramienta no coincide con ninguna herramienta conocida produce una advertencia de inicio para detectar errores tipográficos. Los nombres de herramientas que contienen `_` o `*` están exentos de la verificación.

171 171 

172La etiqueta mostrada para una herramienta en la transcripción y el diálogo de permisos puede diferir de su nombre canónico. Por ejemplo, la herramienta etiquetada como `Stop Task` en la transcripción tiene el nombre canónico `TaskStop`. Las reglas de permisos y los [coincidentes de hooks](/es/hooks) coinciden solo con el nombre canónico, por lo que una regla escrita como `Stop Task` no coincide. Para reglas de denegación y solicitud, la advertencia de inicio anterior detecta la discrepancia. Use los nombres canónicos enumerados en la [referencia de herramientas](/es/tools-reference).172La etiqueta mostrada para una herramienta en la transcripción y el diálogo de permisos puede diferir de su nombre canónico. Por ejemplo, la herramienta etiquetada como `Stop Task` en la transcripción tiene el nombre canónico `TaskStop`. Las reglas de permisos y los [coincidentes de hooks](/docs/es/hooks) coinciden solo con el nombre canónico, por lo que una regla escrita como `Stop Task` no coincide. Para reglas de denegación y solicitud, la advertencia de inicio anterior detecta la discrepancia. Use los nombres canónicos enumerados en la [referencia de herramientas](/docs/es/tools-reference).

173 173 

174<h2 id="tool-specific-permission-rules">174<h2 id="tool-specific-permission-rules">

175 Reglas de permisos específicas de herramientas175 Reglas de permisos específicas de herramientas


223 223 

224Un `cd` en una ruta dentro de su directorio de trabajo o un [directorio adicional](#working-directories) también es de solo lectura. Un comando compuesto como `cd packages/api && ls` se ejecuta sin un aviso cuando cada parte se califica por su cuenta. Combinar `cd` con `git` en un comando compuesto solicita cuando el `cd` cambia a un directorio diferente, ya que ejecutar `git` en un nuevo directorio puede ejecutar los hooks de ese directorio. Un `cd` cuyo destino se resuelve al directorio de trabajo actual es una no-operación y no activa este aviso.224Un `cd` en una ruta dentro de su directorio de trabajo o un [directorio adicional](#working-directories) también es de solo lectura. Un comando compuesto como `cd packages/api && ls` se ejecuta sin un aviso cuando cada parte se califica por su cuenta. Combinar `cd` con `git` en un comando compuesto solicita cuando el `cd` cambia a un directorio diferente, ya que ejecutar `git` en un nuevo directorio puede ejecutar los hooks de ese directorio. Un `cd` cuyo destino se resuelve al directorio de trabajo actual es una no-operación y no activa este aviso.

225 225 

226Combinar `cd` con una redirección de salida en un comando compuesto también solicita cuando Claude Code no puede determinar a qué directorio se resuelve el objetivo de redirección después de que se ejecuta `cd`. Un comando cuyo único objetivo de redirección es `/dev/null`, como `cd app; grep -r pattern . 2>/dev/null`, no activa este aviso, porque `/dev/null` no depende del directorio de trabajo. {/* min-version: 2.1.207 */}Antes de v2.1.207, un comando compuesto que contenía `cd` solicitaba cualquier redirección de salida, incluyendo una cuyo único objetivo era `/dev/null`.226Combinar `cd` con una redirección de salida en un comando compuesto también solicita cuando Claude Code no puede determinar a qué directorio se resuelve el objetivo de redirección después de que se ejecuta `cd`. Un comando cuyo único objetivo de redirección es `/dev/null`, como `cd app; grep -r pattern . 2>/dev/null`, no activa este aviso, porque `/dev/null` no depende del directorio de trabajo. Antes de v2.1.207, un comando compuesto que contenía `cd` solicitaba cualquier redirección de salida, incluyendo una cuyo único objetivo era `/dev/null`.

227 227 

228<Warning>228<Warning>

229 Los patrones de permisos de Bash que intentan restringir argumentos de comando son frágiles. Por ejemplo, `Bash(curl http://github.com/ *)` intenta restringir curl a URLs de GitHub, pero no coincidirá con variaciones como:229 Los patrones de permisos de Bash que intentan restringir argumentos de comando son frágiles. Por ejemplo, `Bash(curl http://github.com/ *)` intenta restringir curl a URLs de GitHub, pero no coincidirá con variaciones como:


271 Read y Edit271 Read y Edit

272</h3>272</h3>

273 273 

274Las reglas `Edit` se aplican a todas las herramientas integradas que editan archivos. Claude hace un esfuerzo de mejor intento para aplicar reglas `Read` a todas las herramientas integradas que leen archivos como Grep y Glob, a menciones `@file` en sus indicaciones, y a la selección y contexto de archivo abierto que un [IDE](/es/vs-code#the-built-in-ide-mcp-server) conectado comparte con Claude.274Las reglas `Edit` se aplican a todas las herramientas integradas que editan archivos. Claude hace un esfuerzo de mejor intento para aplicar reglas `Read` a todas las herramientas integradas que leen archivos como Grep y Glob, a menciones `@file` en sus indicaciones, y a la selección y contexto de archivo abierto que un [IDE](/docs/es/vs-code#the-built-in-ide-mcp-server) conectado comparte con Claude.

275 275 

276{/* min-version: 2.1.208 */}Una regla de negación `Read` también bloquea la [herramienta Edit](/es/errors#file-is-covered-by-a-read-deny-rule) en la misma ruta, incluyendo crear un archivo nuevo allí. Write y NotebookEdit no están cubiertos, así que agregue una regla de negación `Edit` para rutas que ninguna herramienta pueda cambiar. Requiere Claude Code v2.1.208 o posterior.276Una regla de negación `Read` también bloquea la [herramienta Edit](/docs/es/errors#file-is-covered-by-a-read-deny-rule) en la misma ruta, incluyendo crear un archivo nuevo allí. Write y NotebookEdit no están cubiertos, así que agregue una regla de negación `Edit` para rutas que ninguna herramienta pueda cambiar. Requiere Claude Code v2.1.208 o posterior.

277 277 

278<Warning>278<Warning>

279 Las reglas de negación Read y Edit se aplican a las herramientas de archivo integradas de Claude y a los comandos de archivo que Claude Code reconoce en Bash, como `cat`, `head`, `tail` y `sed`. No se aplican a subprocesos arbitrarios que leen o escriben archivos indirectamente, como un script de Python o Node que abre archivos por sí mismo. Para aplicación a nivel del SO que bloquea todos los procesos de acceder a una ruta, [habilite el sandbox](/es/sandboxing).279 Las reglas de negación Read y Edit se aplican a las herramientas de archivo integradas de Claude y a los comandos de archivo que Claude Code reconoce en Bash, como `cat`, `head`, `tail` y `sed`. No se aplican a subprocesos arbitrarios que leen o escriben archivos indirectamente, como un script de Python o Node que abre archivos por sí mismo. Para aplicación a nivel del SO que bloquea todos los procesos de acceder a una ruta, [habilite el sandbox](/docs/es/sandboxing).

280</Warning>280</Warning>

281 281 

282Las reglas Read y Edit siguen la especificación [gitignore](https://git-scm.com/docs/gitignore) con cuatro tipos de patrones distintos:282Las reglas Read y Edit siguen la especificación [gitignore](https://git-scm.com/docs/gitignore) con cuatro tipos de patrones distintos:


354* `mcp__puppeteer__*` usa sintaxis de comodín y también coincide con todas las herramientas del servidor `puppeteer`354* `mcp__puppeteer__*` usa sintaxis de comodín y también coincide con todas las herramientas del servidor `puppeteer`

355* `mcp__puppeteer__puppeteer_navigate` coincide con la herramienta `puppeteer_navigate` proporcionada por el servidor `puppeteer`355* `mcp__puppeteer__puppeteer_navigate` coincide con la herramienta `puppeteer_navigate` proporcionada por el servidor `puppeteer`

356 356 

357Si su organización ha establecido una herramienta de conector [claude.ai](/es/mcp#organization-controls-on-connector-tools) en `ask`, las reglas de permiso para esa herramienta no tienen efecto: Claude Code solicita en cada llamada, incluso en modos `auto` y `bypassPermissions`. En modo `dontAsk`, que nunca solicita, Claude Code niega la llamada en su lugar. Las herramientas de conector aparecen como `mcp__claude_ai_<server>__<tool>`.357Si su organización ha establecido una herramienta de conector [claude.ai](/docs/es/mcp#organization-controls-on-connector-tools) en `ask`, las reglas de permiso para esa herramienta no tienen efecto: Claude Code solicita en cada llamada, incluso en modos `auto` y `bypassPermissions`. En modo `dontAsk`, que nunca solicita, Claude Code niega la llamada en su lugar. Las herramientas de conector aparecen como `mcp__claude_ai_<server>__<tool>`.

358 358 

359<h3 id="agent-subagents">359<h3 id="agent-subagents">

360 Agent (subagents)360 Agent (subagents)

361</h3>361</h3>

362 362 

363Use reglas `Agent(AgentName)` para controlar qué [subagents](/es/sub-agents) puede usar Claude:363Use reglas `Agent(AgentName)` para controlar qué [subagents](/docs/es/sub-agents) puede usar Claude:

364 364 

365* `Agent(Explore)` coincide con el subagent Explore365* `Agent(Explore)` coincide con el subagent Explore

366* `Agent(Plan)` coincide con el subagent Plan366* `Agent(Plan)` coincide con el subagent Plan


380 Cd380 Cd

381</h3>381</h3>

382 382 

383Las reglas `Cd` controlan a qué directorios el comando [`/cd`](/es/commands) puede mover la sesión. `Cd` no es una herramienta invocable por el modelo: Claude no puede llamarla, y las reglas se aplican solo cuando ejecuta `/cd` usted mismo.383Las reglas `Cd` controlan a qué directorios el comando [`/cd`](/docs/es/commands) puede mover la sesión. `Cd` no es una herramienta invocable por el modelo: Claude no puede llamarla, y las reglas se aplican solo cuando ejecuta `/cd` usted mismo.

384 384 

385Una regla de negación `Cd` desnuda deshabilita `/cd` completamente. Una regla de negación `Cd(<path-pattern>)` bloquea objetivos coincidentes. Las reglas de negación verifican cada ortografía del objetivo, incluyendo cada salto de symlink que resuelve, por lo que una regla escrita para una ruta también bloquea objetivos que se resuelven a ella.385Una regla de negación `Cd` desnuda deshabilita `/cd` completamente. Una regla de negación `Cd(<path-pattern>)` bloquea objetivos coincidentes. Las reglas de negación verifican cada ortografía del objetivo, incluyendo cada salto de symlink que resuelve, por lo que una regla escrita para una ruta también bloquea objetivos que se resuelven a ella.

386 386 


398 Extender permisos con hooks398 Extender permisos con hooks

399</h2>399</h2>

400 400 

401Los [hooks de Claude Code](/es/hooks-guide) proporcionan una forma de registrar comandos de shell personalizados para realizar evaluación de permisos en tiempo de ejecución. Cuando Claude Code realiza una llamada de herramienta, los hooks PreToolUse se ejecutan antes del aviso de permisos. La salida del hook puede denegar la llamada de herramienta, forzar un aviso u omitir el aviso para permitir que la llamada continúe.401Los [hooks de Claude Code](/docs/es/hooks-guide) proporcionan una forma de registrar comandos de shell personalizados para realizar evaluación de permisos en tiempo de ejecución. Cuando Claude Code realiza una llamada de herramienta, los hooks PreToolUse se ejecutan antes del aviso de permisos. La salida del hook puede denegar la llamada de herramienta, forzar un aviso u omitir el aviso para permitir que la llamada continúe.

402 402 

403Las decisiones del hook no omiten las reglas de permisos. Claude Code evalúa las reglas de negación y solicitud independientemente de lo que devuelva un hook PreToolUse: una regla de negación coincidente bloquea la llamada, y una regla de solicitud coincidente aún solicita incluso cuando el hook devolvió `"allow"` u `"ask"`. Esto preserva la precedencia de negación primero descrita en [Administrar permisos](#manage-permissions), incluyendo reglas de negación establecidas en configuración administrada.403Las decisiones del hook no omiten las reglas de permisos. Claude Code evalúa las reglas de negación y solicitud independientemente de lo que devuelva un hook PreToolUse: una regla de negación coincidente bloquea la llamada, y una regla de solicitud coincidente aún solicita incluso cuando el hook devolvió `"allow"` u `"ask"`. Esto preserva la precedencia de negación primero descrita en [Administrar permisos](#manage-permissions), incluyendo reglas de negación establecidas en configuración administrada.

404 404 

405Las herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools) y las herramientas MCP marcadas como [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) también aún solicitan cuando un hook devuelve `"allow"`.405Las herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools) y las herramientas MCP marcadas como [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) también aún solicitan cuando un hook devuelve `"allow"`.

406 406 

407Un hook de bloqueo también tiene precedencia sobre las reglas de permiso. Un hook que sale con código 2 detiene la llamada de herramienta antes de que se evalúen las reglas de permisos, por lo que el bloqueo se aplica incluso cuando una regla de permiso permitiría que la llamada continúe. Para ejecutar todos los comandos Bash sin avisos excepto algunos que desea bloquear, agregue `"Bash"` a su lista de permiso y registre un hook PreToolUse que rechace esos comandos específicos. Consulte [Bloquear ediciones a archivos protegidos](/es/hooks-guide#block-edits-to-protected-files) para un script de hook que puede adaptar.407Un hook de bloqueo también tiene precedencia sobre las reglas de permiso. Un hook que sale con código 2 detiene la llamada de herramienta antes de que se evalúen las reglas de permisos, por lo que el bloqueo se aplica incluso cuando una regla de permiso permitiría que la llamada continúe. Para ejecutar todos los comandos Bash sin avisos excepto algunos que desea bloquear, agregue `"Bash"` a su lista de permiso y registre un hook PreToolUse que rechace esos comandos específicos. Consulte [Bloquear ediciones a archivos protegidos](/docs/es/hooks-guide#block-edits-to-protected-files) para un script de hook que puede adaptar.

408 408 

409<h2 id="working-directories">409<h2 id="working-directories">

410 Directorios de trabajo410 Directorios de trabajo


414 414 

415* **Durante el inicio**: use el argumento CLI `--add-dir <path>`415* **Durante el inicio**: use el argumento CLI `--add-dir <path>`

416* **Durante la sesión**: use el comando `/add-dir`416* **Durante la sesión**: use el comando `/add-dir`

417* **Configuración persistente**: agregue a `additionalDirectories` en [archivos de configuración](/es/settings#settings-files)417* **Configuración persistente**: agregue a `additionalDirectories` en [archivos de configuración](/docs/es/settings#settings-files)

418 418 

419Los archivos en directorios adicionales siguen las mismas reglas de permisos que el directorio de trabajo original: se vuelven legibles sin avisos, y los permisos de edición de archivos siguen el modo de permisos actual.419Los archivos en directorios adicionales siguen las mismas reglas de permisos que el directorio de trabajo original: se vuelven legibles sin avisos, y los permisos de edición de archivos siguen el modo de permisos actual.

420 420 

421En sesiones en segundo plano en macOS, el host de la sesión solicita acceso a carpetas protegidas como `~/Desktop`, `~/Documents` y `~/Downloads` por separado de su terminal cuando Claude necesita leer o escribir archivos allí; si las lecturas allí fallan con `Operation not permitted`, consulte [cómo otorgar acceso a carpetas a sesiones en segundo plano](/es/agent-view#background-sessions-can't-read-desktop-documents-or-downloads-on-macos).421En sesiones en segundo plano en macOS, el host de la sesión solicita acceso a carpetas protegidas como `~/Desktop`, `~/Documents` y `~/Downloads` por separado de su terminal cuando Claude necesita leer o escribir archivos allí; si las lecturas allí fallan con `Operation not permitted`, consulte [cómo otorgar acceso a carpetas a sesiones en segundo plano](/docs/es/agent-view#background-sessions-can't-read-desktop-documents-or-downloads-on-macos).

422 422 

423Para cambiar el directorio de trabajo principal de la sesión en lugar de agregar otro, use [`/cd`](/es/commands). El comando `/cd` requiere Claude Code v2.1.169 o posterior. A diferencia de `/add-dir`, reubica la sesión: se carga el `CLAUDE.md` del nuevo directorio y `--resume` encuentra la sesión desde allí.423Para cambiar el directorio de trabajo principal de la sesión en lugar de agregar otro, use [`/cd`](/docs/es/commands). El comando `/cd` requiere Claude Code v2.1.169 o posterior. A diferencia de `/add-dir`, reubica la sesión: se carga el `CLAUDE.md` del nuevo directorio y `--resume` encuentra la sesión desde allí.

424 424 

425<h3 id="additional-directories-grant-file-access-not-configuration">425<h3 id="additional-directories-grant-file-access-not-configuration">

426 Los directorios adicionales otorgan acceso a archivos, no configuración426 Los directorios adicionales otorgan acceso a archivos, no configuración


434 434 

435| Configuración | Cargado desde `--add-dir` |435| Configuración | Cargado desde `--add-dir` |

436| :--------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |436| :--------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

437| [Skills](/es/skills) en `.claude/skills/` | Sí, con recarga en vivo |437| [Skills](/docs/es/skills) en `.claude/skills/` | Sí, con recarga en vivo |

438| [Subagentes](/es/sub-agents) en `.claude/agents/` | Sí |438| [Subagentes](/docs/es/sub-agents) en `.claude/agents/` | Sí |

439| [Configuración](/es/settings) en `.claude/settings.json` y `.claude/settings.local.json` | Solo las claves `enabledPlugins` y `extraKnownMarketplaces` |439| [Configuración](/docs/es/settings) en `.claude/settings.json` y `.claude/settings.local.json` | Solo las claves `enabledPlugins` y `extraKnownMarketplaces` |

440| Archivos [CLAUDE.md](/es/memory), `.claude/rules/` y `CLAUDE.local.md` | Solo cuando `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1` está establecido. `CLAUDE.local.md` además requiere la fuente de configuración `local`, que está habilitada por defecto |440| Archivos [CLAUDE.md](/docs/es/memory), `.claude/rules/` y `CLAUDE.local.md` | Solo cuando `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1` está establecido. `CLAUDE.local.md` además requiere la fuente de configuración `local`, que está habilitada por defecto |

441 441 

442Los comandos y estilos de salida se descubren desde el directorio de trabajo actual y sus directorios padres, su directorio de usuario en `~/.claude/`, y configuración administrada. Los hooks y otras claves de `settings.json` se cargan desde la carpeta `.claude/` del directorio de trabajo actual sin recurso a directorios padres, junto con su `~/.claude/settings.json` de usuario y configuración administrada. Para compartir esa configuración entre proyectos, use uno de estos enfoques:442Los comandos y estilos de salida se descubren desde el directorio de trabajo actual y sus directorios padres, su directorio de usuario en `~/.claude/`, y configuración administrada. Los hooks y otras claves de `settings.json` se cargan desde la carpeta `.claude/` del directorio de trabajo actual sin recurso a directorios padres, junto con su `~/.claude/settings.json` de usuario y configuración administrada. Para compartir esa configuración entre proyectos, use uno de estos enfoques:

443 443 

444* **Configuración a nivel de usuario**: coloque archivos en `~/.claude/agents/`, `~/.claude/output-styles/`, o `~/.claude/settings.json` para hacerlos disponibles en cada proyecto444* **Configuración a nivel de usuario**: coloque archivos en `~/.claude/agents/`, `~/.claude/output-styles/`, o `~/.claude/settings.json` para hacerlos disponibles en cada proyecto

445* **Plugins**: empaquete y distribuya configuración como un [plugin](/es/plugins) que los equipos pueden instalar445* **Plugins**: empaquete y distribuya configuración como un [plugin](/docs/es/plugins) que los equipos pueden instalar

446* **Lanzar desde el directorio de configuración**: ejecute Claude Code desde el directorio que contiene la configuración `.claude/` que desea446* **Lanzar desde el directorio de configuración**: ejecute Claude Code desde el directorio que contiene la configuración `.claude/` que desea

447 447 

448<h2 id="how-permissions-interact-with-sandboxing">448<h2 id="how-permissions-interact-with-sandboxing">

449 Cómo interactúan los permisos con el sandboxing449 Cómo interactúan los permisos con el sandboxing

450</h2>450</h2>

451 451 

452Los permisos y el [sandboxing](/es/sandboxing) son capas de seguridad complementarias:452Los permisos y el [sandboxing](/docs/es/sandboxing) son capas de seguridad complementarias:

453 453 

454* **Permisos** controlan qué herramientas puede usar Claude Code y qué archivos o dominios puede acceder. Se aplican a todas las herramientas, incluyendo Bash, Read, Edit, WebFetch, y MCP.454* **Permisos** controlan qué herramientas puede usar Claude Code y qué archivos o dominios puede acceder. Se aplican a todas las herramientas, incluyendo Bash, Read, Edit, WebFetch, y MCP.

455* **Sandboxing** proporciona aplicación a nivel del SO que restringe el acceso del sistema de archivos y red de la herramienta Bash. Se aplica solo a comandos Bash y sus procesos secundarios.455* **Sandboxing** proporciona aplicación a nivel del SO que restringe el acceso del sistema de archivos y red de la herramienta Bash. Se aplica solo a comandos Bash y sus procesos secundarios.


458 458 

459* Las reglas de negación de permisos bloquean que Claude intente acceder a recursos restringidos459* Las reglas de negación de permisos bloquean que Claude intente acceder a recursos restringidos

460* Las restricciones de sandbox previenen que comandos Bash alcancen recursos fuera de límites definidos, incluso si una inyección de solicitud omite la toma de decisiones de Claude460* Las restricciones de sandbox previenen que comandos Bash alcancen recursos fuera de límites definidos, incluso si una inyección de solicitud omite la toma de decisiones de Claude

461* Las restricciones del sistema de archivos en el sandbox combinan la configuración [`sandbox.filesystem`](/es/sandboxing) con reglas de negación Read y Edit; ambas se fusionan en el límite final del sandbox461* Las restricciones del sistema de archivos en el sandbox combinan la configuración [`sandbox.filesystem`](/docs/es/sandboxing) con reglas de negación Read y Edit; ambas se fusionan en el límite final del sandbox

462* Las restricciones de red combinan reglas de permisos WebFetch con las listas `allowedDomains` y `deniedDomains` del sandbox462* Las restricciones de red combinan reglas de permisos WebFetch con las listas `allowedDomains` y `deniedDomains` del sandbox

463 463 

464Cuando el sandboxing está habilitado con `autoAllowBashIfSandboxed: true`, que es el valor predeterminado, los comandos Bash en sandbox se ejecutan sin solicitar incluso si sus permisos incluyen una regla ask `Bash` simple, o la [forma equivalente `Bash(*)`](#match-all-uses-of-a-tool): el límite del sandbox sustituye ese aviso de herramienta completa. Estas comprobaciones aún se aplican:464Cuando el sandboxing está habilitado con `autoAllowBashIfSandboxed: true`, que es el valor predeterminado, los comandos Bash en sandbox se ejecutan sin solicitar incluso si sus permisos incluyen una regla ask `Bash` simple, o la [forma equivalente `Bash(*)`](#match-all-uses-of-a-tool): el límite del sandbox sustituye ese aviso de herramienta completa. Estas comprobaciones aún se aplican:


467* Las reglas de negación explícitas aún se aplican467* Las reglas de negación explícitas aún se aplican

468* Los comandos `rm` o `rmdir` que apunten a `/`, su directorio de inicio u otras rutas críticas del sistema aún desencadenan un aviso468* Los comandos `rm` o `rmdir` que apunten a `/`, su directorio de inicio u otras rutas críticas del sistema aún desencadenan un aviso

469 469 

470Los comandos que no se ejecutarán en sandbox, como comandos excluidos, respetan la regla ask `Bash` simple como es habitual. Consulte [modos de sandbox](/es/sandboxing#sandbox-modes) para cambiar este comportamiento.470Los comandos que no se ejecutarán en sandbox, como comandos excluidos, respetan la regla ask `Bash` simple como es habitual. Consulte [modos de sandbox](/docs/es/sandboxing#sandbox-modes) para cambiar este comportamiento.

471 471 

472<h2 id="managed-settings">472<h2 id="managed-settings">

473 Configuración administrada473 Configuración administrada

474</h2>474</h2>

475 475 

476Para organizaciones que necesitan control centralizado sobre la configuración de Claude Code, los administradores pueden implementar configuración administrada que no puede ser anulada por configuración de usuario o proyecto. Estas configuraciones de política siguen el mismo formato que archivos de configuración regulares y se pueden entregar a través de políticas MDM/a nivel del SO, archivos de configuración administrada, [configuración administrada por servidor](/es/server-managed-settings), o una [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) autohospedada. Consulte [archivos de configuración](/es/settings#settings-files) para mecanismos de entrega y ubicaciones de archivos.476Para organizaciones que necesitan control centralizado sobre la configuración de Claude Code, los administradores pueden implementar configuración administrada que no puede ser anulada por configuración de usuario o proyecto. Estas configuraciones de política siguen el mismo formato que archivos de configuración regulares y se pueden entregar a través de políticas MDM/a nivel del SO, archivos de configuración administrada, [configuración administrada por servidor](/docs/es/server-managed-settings), o una [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) autohospedada. Consulte [archivos de configuración](/docs/es/settings#settings-files) para mecanismos de entrega y ubicaciones de archivos.

477 477 

478<h3 id="managed-only-settings">478<h3 id="managed-only-settings">

479 Configuración solo administrada479 Configuración solo administrada


482Las siguientes configuraciones solo se leen desde configuración administrada. Colocarlas en archivos de configuración de usuario o proyecto no tiene efecto.482Las siguientes configuraciones solo se leen desde configuración administrada. Colocarlas en archivos de configuración de usuario o proyecto no tiene efecto.

483 483 

484| Configuración | Descripción |484| Configuración | Descripción |

485| :--------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |485| :--------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

486| `allowAllClaudeAiMcps` | Cuando es `true`, los conectores de claude.ai se cargan junto con un `managed-mcp.json` implementado en lugar de ser suprimidos por su control exclusivo. Consulte [Configuración MCP administrada](/es/managed-mcp) |486| `allowAllClaudeAiMcps` | Cuando es `true`, los conectores de claude.ai se cargan junto con un `managed-mcp.json` implementado en lugar de ser suprimidos por su control exclusivo. Consulte [Configuración MCP administrada](/docs/es/managed-mcp) |

487| `allowedChannelPlugins` | Lista de permitidos de plugins de canal que pueden enviar mensajes. Reemplaza la lista de permitidos predeterminada de Anthropic cuando se establece. Requiere `channelsEnabled: true`. Consulte [Restringir qué plugins de canal pueden ejecutarse](/es/channels#restrict-which-channel-plugins-can-run) |487| `allowedChannelPlugins` | Lista de permitidos de plugins de canal que pueden enviar mensajes. Reemplaza la lista de permitidos predeterminada de Anthropic cuando se establece. Requiere `channelsEnabled: true`. Consulte [Restringir qué plugins de canal pueden ejecutarse](/docs/es/channels#restrict-which-channel-plugins-can-run) |

488| `allowManagedHooksOnly` | Cuando es `true`, solo se cargan hooks administrados, hooks SDK y hooks de plugins forzados habilitados en la configuración administrada `enabledPlugins`. Los hooks de usuario, proyecto y todos los demás plugins están bloqueados |488| `allowManagedHooksOnly` | Cuando es `true`, solo se cargan hooks administrados, hooks SDK y hooks de plugins forzados habilitados en la configuración administrada `enabledPlugins`. Los hooks de usuario, proyecto y todos los demás plugins están bloqueados |

489| `allowManagedMcpServersOnly` | Cuando es `true`, solo se respetan `allowedMcpServers` de configuración administrada. `deniedMcpServers` aún se fusiona de todas las fuentes. Consulte [Configuración MCP administrada](/es/managed-mcp) |489| `allowManagedMcpServersOnly` | Cuando es `true`, solo se respetan `allowedMcpServers` de configuración administrada. `deniedMcpServers` aún se fusiona de todas las fuentes. Consulte [Configuración MCP administrada](/docs/es/managed-mcp) |

490| `allowManagedPermissionRulesOnly` | Cuando es `true`, evita que la configuración de usuario y proyecto defina reglas de permisos `allow`, `ask` o `deny`. Solo se aplican las reglas en configuración administrada. No afecta la lista de permitidos del servidor MCP; para eso, establezca `allowManagedMcpServersOnly` |490| `allowManagedPermissionRulesOnly` | Cuando es `true`, evita que la configuración de usuario y proyecto defina reglas de permisos `allow`, `ask` o `deny`. Solo se aplican las reglas en configuración administrada. No afecta la lista de permitidos del servidor MCP; para eso, establezca `allowManagedMcpServersOnly` |

491| `blockedMarketplaces` | Lista de bloqueo de fuentes de marketplace. Las fuentes bloqueadas se verifican antes de descargar, por lo que nunca tocan el sistema de archivos. Consulte [restricciones de marketplace administradas](/es/plugin-marketplaces#managed-marketplace-restrictions) |491| `blockedMarketplaces` | Lista de bloqueo de fuentes de marketplace. Las fuentes bloqueadas se verifican antes de descargar, por lo que nunca tocan el sistema de archivos. Consulte [restricciones de marketplace administradas](/docs/es/plugin-marketplaces#managed-marketplace-restrictions) |

492| `channelsEnabled` | Permitir [channels](/es/channels) para la organización. Consulte [controles empresariales](/es/channels#enterprise-controls) para el valor predeterminado en cada plan |492| `channelsEnabled` | Permitir [channels](/docs/es/channels) para la organización. Consulte [controles empresariales](/docs/es/channels#enterprise-controls) para el valor predeterminado en cada plan |

493| `disableSideloadFlags` | {/* min-version: 2.1.193 */}Rechazar los indicadores CLI `--plugin-dir`, `--plugin-url`, `--agents` y `--mcp-config` al inicio. Sin esto, los usuarios pueden eludir `strictKnownMarketplaces` para una única ejecución pasando estos indicadores. Consulte [`disableSideloadFlags`](/es/settings#available-settings). Requiere Claude Code v2.1.193 o posterior |493| `disableSideloadFlags` | Rechazar los indicadores CLI `--plugin-dir`, `--plugin-url`, `--agents` y `--mcp-config` al inicio. Sin esto, los usuarios pueden eludir `strictKnownMarketplaces` para una única ejecución pasando estos indicadores. Consulte [`disableSideloadFlags`](/docs/es/settings#available-settings). Requiere Claude Code v2.1.193 o posterior |

494| `forceRemoteSettingsRefresh` | Cuando es `true`, bloquea el inicio de CLI hasta que la configuración administrada remota se obtenga recientemente y sale si la obtención falla. Consulte [aplicación de cierre de falla](/es/server-managed-settings#enforce-fail-closed-startup) |494| `forceRemoteSettingsRefresh` | Cuando es `true`, bloquea el inicio de CLI hasta que la configuración administrada remota se obtenga recientemente y sale si la obtención falla. Consulte [aplicación de cierre de falla](/docs/es/server-managed-settings#enforce-fail-closed-startup) |

495| `pluginTrustMessage` | Mensaje personalizado agregado a la advertencia de confianza de plugin mostrada antes de la instalación |495| `pluginTrustMessage` | Mensaje personalizado agregado a la advertencia de confianza de plugin mostrada antes de la instalación |

496| `sandbox.filesystem.allowManagedReadPathsOnly` | Cuando es `true`, solo se respetan rutas `filesystem.allowRead` de configuración administrada. `denyRead` aún se fusiona de todas las fuentes |496| `sandbox.filesystem.allowManagedReadPathsOnly` | Cuando es `true`, solo se respetan rutas `filesystem.allowRead` de configuración administrada. `denyRead` aún se fusiona de todas las fuentes |

497| `sandbox.network.allowManagedDomainsOnly` | Cuando es `true`, solo se respetan `allowedDomains` y reglas de permiso `WebFetch(domain:...)` de configuración administrada. Los dominios no permitidos se bloquean automáticamente sin solicitar al usuario. Los dominios denegados aún se fusionan de todas las fuentes |497| `sandbox.network.allowManagedDomainsOnly` | Cuando es `true`, solo se respetan `allowedDomains` y reglas de permiso `WebFetch(domain:...)` de configuración administrada. Los dominios no permitidos se bloquean automáticamente sin solicitar al usuario. Los dominios denegados aún se fusionan de todas las fuentes |

498| `strictKnownMarketplaces` | Controla qué marketplaces de plugins pueden agregar los usuarios e instalar plugins desde. Consulte [restricciones de marketplace administradas](/es/plugin-marketplaces#managed-marketplace-restrictions) |498| `strictKnownMarketplaces` | Controla qué marketplaces de plugins pueden agregar los usuarios e instalar plugins desde. Consulte [restricciones de marketplace administradas](/docs/es/plugin-marketplaces#managed-marketplace-restrictions) |

499| `strictPluginOnlyCustomization` | Bloquea skills, agents, hooks y servidores MCP de fuentes de usuario y proyecto, por lo que solo pueden provenir de plugins o configuración administrada. `true` bloquea las cuatro superficies; una matriz como `["skills", "hooks"]` bloquea solo las nombradas. Consulte [`strictPluginOnlyCustomization`](/es/settings#strictpluginonlycustomization) |499| `strictPluginOnlyCustomization` | Bloquea skills, agents, hooks y servidores MCP de fuentes de usuario y proyecto, por lo que solo pueden provenir de plugins o configuración administrada. `true` bloquea las cuatro superficies; una matriz como `["skills", "hooks"]` bloquea solo las nombradas. Consulte [`strictPluginOnlyCustomization`](/docs/es/settings#strictpluginonlycustomization) |

500| `wslInheritsWindowsSettings` | Cuando es `true` en la clave del registro HKLM de Windows o `C:\Program Files\ClaudeCode\managed-settings.json`, WSL lee configuración administrada de la cadena de política de Windows además de `/etc/claude-code`. Consulte [Archivos de configuración](/es/settings#settings-files) |500| `wslInheritsWindowsSettings` | Cuando es `true` en la clave del registro HKLM de Windows o `C:\Program Files\ClaudeCode\managed-settings.json`, WSL lee configuración administrada de la cadena de política de Windows además de `/etc/claude-code`. Consulte [Archivos de configuración](/docs/es/settings#settings-files) |

501 501 

502`disableBypassPermissionsMode` generalmente se coloca en configuración administrada para aplicar la política organizacional, pero funciona desde cualquier alcance. Un usuario puede establecerlo en su propia configuración para bloquearse a sí mismo del modo de bypass.502`disableBypassPermissionsMode` generalmente se coloca en configuración administrada para aplicar la política organizacional, pero funciona desde cualquier alcance. Un usuario puede establecerlo en su propia configuración para bloquearse a sí mismo del modo de bypass.

503 503 

504<Note>504<Note>

505 En planes Team y Enterprise, un propietario habilita o deshabilita [Remote Control](/es/remote-control) y [sesiones web](/es/claude-code-on-the-web) en toda la organización en [configuración de administrador de Claude Code](https://claude.ai/admin-settings/claude-code). Remote Control puede deshabilitarse adicionalmente por dispositivo con la configuración [`disableRemoteControl`](/es/settings#available-settings). Las sesiones web no tienen clave de configuración administrada por dispositivo.505 En planes Team y Enterprise, un propietario habilita o deshabilita [Remote Control](/docs/es/remote-control) y [sesiones web](/docs/es/claude-code-on-the-web) en toda la organización en [configuración de administrador de Claude Code](https://claude.ai/admin-settings/claude-code). Remote Control puede deshabilitarse adicionalmente por dispositivo con la configuración [`disableRemoteControl`](/docs/es/settings#available-settings). Las sesiones web no tienen clave de configuración administrada por dispositivo.

506</Note>506</Note>

507 507 

508<h2 id="settings-precedence">508<h2 id="settings-precedence">

509 Precedencia de configuración509 Precedencia de configuración

510</h2>510</h2>

511 511 

512Las reglas de permisos siguen la misma [precedencia de configuración](/es/settings#settings-precedence) que todas las demás configuraciones de Claude Code:512Las reglas de permisos siguen la misma [precedencia de configuración](/docs/es/settings#settings-precedence) que todas las demás configuraciones de Claude Code:

513 513 

5141. **Configuración administrada**: no puede ser anulada por ningún otro nivel, incluyendo argumentos de línea de comandos5141. **Configuración administrada**: no puede ser anulada por ningún otro nivel, incluyendo argumentos de línea de comandos

5152. **Argumentos de línea de comandos**: anulaciones de sesión temporal5152. **Argumentos de línea de comandos**: anulaciones de sesión temporal


521 521 

522Lo mismo se aplica en todos los ámbitos de configuración: si la configuración de usuario permite un permiso y la configuración de proyecto lo deniega, la regla de negación lo bloquea. Lo contrario también es cierto: una negación a nivel de usuario bloquea un permiso a nivel de proyecto, porque las reglas de negación de cualquier ámbito se evalúan antes que las reglas de permiso.522Lo mismo se aplica en todos los ámbitos de configuración: si la configuración de usuario permite un permiso y la configuración de proyecto lo deniega, la regla de negación lo bloquea. Lo contrario también es cierto: una negación a nivel de usuario bloquea un permiso a nivel de proyecto, porque las reglas de negación de cualquier ámbito se evalúan antes que las reglas de permiso.

523 523 

524Los hosts de inserción pueden proporcionar política administrada adicional a través de la opción `managedSettings` del SDK cuando [`parentSettingsBehavior`](/es/settings#settings-precedence) se establece en `"merge"`; los valores del integrador pueden restringir la política pero no flexibilizarla.524Los hosts de inserción pueden proporcionar política administrada adicional a través de la opción `managedSettings` del SDK cuando [`parentSettingsBehavior`](/docs/es/settings#settings-precedence) se establece en `"merge"`; los valores del integrador pueden restringir la política pero no flexibilizarla.

525 525 

526<h2 id="project-allow-rules-and-workspace-trust">526<h2 id="project-allow-rules-and-workspace-trust">

527 Reglas de permiso del proyecto y confianza del espacio de trabajo527 Reglas de permiso del proyecto y confianza del espacio de trabajo

528</h2>528</h2>

529 529 

530Las reglas `permissions.allow` y las entradas `permissions.additionalDirectories` en el archivo `.claude/settings.json` de un proyecto otorgan capacidad, por lo que Claude Code las aplica solo después de que acepte el [diálogo de confianza del espacio de trabajo](/es/security#additional-safeguards) para ese espacio de trabajo. Hasta entonces, Claude Code lee las reglas pero no las aplica. El diálogo de confianza enumera las reglas de permiso y los directorios adicionales que la carpeta otorgaría para que pueda revisarlos antes de aceptar. Las reglas `deny` y `ask` no se ven afectadas, ya que solo restringen.530Las reglas `permissions.allow` y las entradas `permissions.additionalDirectories` en el archivo `.claude/settings.json` de un proyecto otorgan capacidad, por lo que Claude Code las aplica solo después de que acepte el [diálogo de confianza del espacio de trabajo](/docs/es/security#additional-safeguards) para ese espacio de trabajo. Hasta entonces, Claude Code lee las reglas pero no las aplica. El diálogo de confianza enumera las reglas de permiso y los directorios adicionales que la carpeta otorgaría para que pueda revisarlos antes de aceptar. Las reglas `deny` y `ask` no se ven afectadas, ya que solo restringen.

531 531 

532Claude Code guarda la confianza por espacio de trabajo, identificada por la raíz del repositorio de git o, fuera de un repositorio, el directorio desde el que inició Claude Code. Cuando comienza en su directorio de inicio, la confianza se mantiene solo para la sesión actual y no se escribe en el disco; consulte la nota sobre [salvaguardas adicionales](/es/security#additional-safeguards). Confiar en un directorio principal no aplica las reglas de permiso de un proyecto anidado.532Claude Code guarda la confianza por espacio de trabajo, identificada por la raíz del repositorio de git o, fuera de un repositorio, el directorio desde el que inició Claude Code. Cuando comienza en su directorio de inicio, la confianza se mantiene solo para la sesión actual y no se escribe en el disco; consulte la nota sobre [salvaguardas adicionales](/docs/es/security#additional-safeguards). Confiar en un directorio principal no aplica las reglas de permiso de un proyecto anidado.

533 533 

534`.claude/settings.local.json` es su propio archivo, por lo que la verificación de confianza del espacio de trabajo generalmente no se aplica a él. Cuando un repositorio podría haber proporcionado el archivo, como cuando se confirma en git o `.claude` es un enlace simbólico, sus reglas de permiso y directorios adicionales se someten a la verificación de confianza como la configuración del proyecto.534`.claude/settings.local.json` es su propio archivo, por lo que la verificación de confianza del espacio de trabajo generalmente no se aplica a él. Cuando un repositorio podría haber proporcionado el archivo, como cuando se confirma en git o `.claude` es un enlace simbólico, sus reglas de permiso y directorios adicionales se someten a la verificación de confianza como la configuración del proyecto.

535 535 


538Las reglas de permiso y los directorios adicionales en `.claude/settings.local.json` también se aplican sin confianza del espacio de trabajo en dos casos:538Las reglas de permiso y los directorios adicionales en `.claude/settings.local.json` también se aplican sin confianza del espacio de trabajo en dos casos:

539 539 

540* El directorio desde el que inició Claude Code no está dentro de un repositorio de git.540* El directorio desde el que inició Claude Code no está dentro de un repositorio de git.

541* La sesión se ejecuta en su directorio de configuración personal: su directorio de inicio o cualquier directorio cuyo subdirectorio `.claude` haya establecido como [`CLAUDE_CONFIG_DIR`](/es/env-vars).541* La sesión se ejecuta en su directorio de configuración personal: su directorio de inicio o cualquier directorio cuyo subdirectorio `.claude` haya establecido como [`CLAUDE_CONFIG_DIR`](/docs/es/env-vars).

542 542 

543En ambos casos, el archivo es uno que creó en lugar de uno que un repositorio podría haber proporcionado, y un `.claude/settings.local.json` confirmado en el repositorio aún requiere confianza del espacio de trabajo. Las versiones 2.1.196 a 2.1.199 trataban el archivo como proporcionado por el repositorio en esos espacios de trabajo, ignoraban sus reglas de permiso e imprimían una advertencia [`this workspace has not been trusted`](/es/errors#workspace-has-not-been-trusted) en stderr. Las dos excepciones anteriores coinciden con v2.1.195 y versiones anteriores y se restauraron en v2.1.200.543En ambos casos, el archivo es uno que creó en lugar de uno que un repositorio podría haber proporcionado, y un `.claude/settings.local.json` confirmado en el repositorio aún requiere confianza del espacio de trabajo. Las versiones 2.1.196 a 2.1.199 trataban el archivo como proporcionado por el repositorio en esos espacios de trabajo, ignoraban sus reglas de permiso e imprimían una advertencia [`this workspace has not been trusted`](/docs/es/errors#workspace-has-not-been-trusted) en stderr. Las dos excepciones anteriores coinciden con v2.1.195 y versiones anteriores y se restauraron en v2.1.200.

544 544 

545También a partir de v2.1.200, un espacio de trabajo cuyas reglas de permiso o directorios adicionales aún no se aplican, pero que nunca mostró el diálogo de confianza porque un directorio principal ya era de confianza, muestra el diálogo la próxima vez que inicia Claude Code allí de forma interactiva. El diálogo ofrece dos opciones:545También a partir de v2.1.200, un espacio de trabajo cuyas reglas de permiso o directorios adicionales aún no se aplican, pero que nunca mostró el diálogo de confianza porque un directorio principal ya era de confianza, muestra el diálogo la próxima vez que inicia Claude Code allí de forma interactiva. El diálogo ofrece dos opciones:

546 546 

547* **Yes, I trust this folder**: guarda la confianza para ese espacio de trabajo y aplica las reglas en la misma sesión.547* **Yes, I trust this folder**: guarda la confianza para ese espacio de trabajo y aplica las reglas en la misma sesión.

548* **No, continue without these permissions**: continúa funcionando con esas reglas ignoradas. El diálogo aparece nuevamente en la próxima sesión.548* **No, continue without these permissions**: continúa funcionando con esas reglas ignoradas. El diálogo aparece nuevamente en la próxima sesión.

549 549 

550En [modo no interactivo](/es/headless) con `-p`, no aparece ningún diálogo y las reglas permanecen ignoradas.550En [modo no interactivo](/docs/es/headless) con `-p`, no aparece ningún diálogo y las reglas permanecen ignoradas.

551 551 

552<h2 id="example-configurations">552<h2 id="example-configurations">

553 Configuraciones de ejemplo553 Configuraciones de ejemplo


559 Ver también559 Ver también

560</h2>560</h2>

561 561 

562* [Settings](/es/settings): referencia de configuración completa incluyendo la tabla de configuración de permisos562* [Settings](/docs/es/settings): referencia de configuración completa incluyendo la tabla de configuración de permisos

563* [Configure auto mode](/es/auto-mode-config): indique al clasificador del modo auto qué infraestructura confía su organización563* [Configure auto mode](/docs/es/auto-mode-config): indique al clasificador del modo auto qué infraestructura confía su organización

564* [Sandboxing](/es/sandboxing): aislamiento del sistema de archivos y red a nivel del SO para comandos Bash564* [Sandboxing](/docs/es/sandboxing): aislamiento del sistema de archivos y red a nivel del SO para comandos Bash

565* [Authentication](/es/authentication): configure el acceso de usuario a Claude Code565* [Authentication](/docs/es/authentication): configure el acceso de usuario a Claude Code

566* [Security](/es/security): salvaguardas de seguridad y mejores prácticas566* [Security](/docs/es/security): salvaguardas de seguridad y mejores prácticas

567* [Hooks](/es/hooks-guide): automatice flujos de trabajo y extienda la evaluación de permisos567* [Hooks](/docs/es/hooks-guide): automatice flujos de trabajo y extienda la evaluación de permisos

plugin-hints.md +7 −7

Details

10 10 

11Claude Code elimina la línea de sugerencia de la salida del comando antes de enviarla al modelo, por lo que el marcador nunca aparece en la conversación y no se cuenta hacia el uso de tokens. El protocolo no requiere comandos adicionales y no cambia lo que tu CLI imprime para usuarios fuera de Claude Code.11Claude Code elimina la línea de sugerencia de la salida del comando antes de enviarla al modelo, por lo que el marcador nunca aparece en la conversación y no se cuenta hacia el uso de tokens. El protocolo no requiere comandos adicionales y no cambia lo que tu CLI imprime para usuarios fuera de Claude Code.

12 12 

13Esta página es para mantenedores de CLI y SDK. Si buscas instalar plugins, consulta [Descubre e instala plugins](/es/discover-plugins).13Esta página es para mantenedores de CLI y SDK. Si buscas instalar plugins, consulta [Descubre e instala plugins](/docs/es/discover-plugins).

14 14 

15<h2 id="how-it-works">15<h2 id="how-it-works">

16 Cómo funciona16 Cómo funciona

17</h2>17</h2>

18 18 

19Claude Code establece la variable de entorno [`CLAUDECODE`](/es/env-vars) en `1` para cada comando que ejecuta a través de las herramientas Bash y PowerShell, y para comandos de [hook](/es/hooks). {/* min-version: 2.1.172 */}A partir de v2.1.172 también establece [`CLAUDE_CODE_CHILD_SESSION`](/es/env-vars) en `1` en esos mismos subprocesos. Cuando tu CLI ve una de estas variables, escribe una etiqueta `<claude-code-hint />` que se cierra automáticamente en stderr. En comandos hook la etiqueta de sugerencia se elimina e ignora. Solo la salida de las herramientas Bash y PowerShell activa el mensaje de instalación.19Claude Code establece la variable de entorno [`CLAUDECODE`](/docs/es/env-vars) en `1` para cada comando que ejecuta a través de las herramientas Bash y PowerShell, y para comandos de [hook](/docs/es/hooks). A partir de v2.1.172 también establece [`CLAUDE_CODE_CHILD_SESSION`](/docs/es/env-vars) en `1` en esos mismos subprocesos. Cuando tu CLI ve una de estas variables, escribe una etiqueta `<claude-code-hint />` que se cierra automáticamente en stderr. En comandos hook la etiqueta de sugerencia se elimina e ignora. Solo la salida de las herramientas Bash y PowerShell activa el mensaje de instalación.

20 20 

21Cuando Claude Code recibe la salida del comando, hace lo siguiente:21Cuando Claude Code recibe la salida del comando, hace lo siguiente:

22 22 


36Condiciona la emisión en una variable de entorno para que el marcador sea poco probable que aparezca cuando un usuario humano ejecute tu CLI directamente, luego escribe la etiqueta en stderr en su propia línea. Elige qué variable verificar:36Condiciona la emisión en una variable de entorno para que el marcador sea poco probable que aparezca cuando un usuario humano ejecute tu CLI directamente, luego escribe la etiqueta en stderr en su propia línea. Elige qué variable verificar:

37 37 

38* `CLAUDECODE`: se establece en cada versión de Claude Code, por lo que llega a la mayoría de sesiones. También se establece en sesiones de tmux y subprocesos del servidor MCP de stdio que Claude Code inicia, y las extensiones de IDE la establecen en sus terminales integradas, donde un usuario humano puede estar ejecutando tu CLI directamente.38* `CLAUDECODE`: se establece en cada versión de Claude Code, por lo que llega a la mayoría de sesiones. También se establece en sesiones de tmux y subprocesos del servidor MCP de stdio que Claude Code inicia, y las extensiones de IDE la establecen en sus terminales integradas, donde un usuario humano puede estar ejecutando tu CLI directamente.

39* {/* min-version: 2.1.172 */}`CLAUDE_CODE_CHILD_SESSION`: se establece solo en subprocesos que el propio Claude Code genera, como llamadas de herramientas, comandos de hook y comandos de [línea de estado](/es/statusline), por lo que la etiqueta normalmente no llega a una terminal humana. Un proceso de larga duración que se inició dentro de una sesión, como un servidor tmux, captura la variable, por lo que los shells lanzados posteriormente desde ese proceso aún muestran la etiqueta sin procesar. Requiere Claude Code v2.1.172 o posterior, por lo que las sesiones en versiones anteriores pierden la sugerencia.39* `CLAUDE_CODE_CHILD_SESSION`: se establece solo en subprocesos que el propio Claude Code genera, como llamadas de herramientas, comandos de hook y comandos de [línea de estado](/docs/es/statusline), por lo que la etiqueta normalmente no llega a una terminal humana. Un proceso de larga duración que se inició dentro de una sesión, como un servidor tmux, captura la variable, por lo que los shells lanzados posteriormente desde ese proceso aún muestran la etiqueta sin procesar. Requiere Claude Code v2.1.172 o posterior, por lo que las sesiones en versiones anteriores pierden la sugerencia.

40 40 

41Los siguientes ejemplos condicionan `CLAUDECODE` para máximo alcance y emiten una sugerencia para un plugin llamado `example-cli` en el marketplace oficial:41Los siguientes ejemplos condicionan `CLAUDECODE` para máximo alcance y emiten una sugerencia para un plugin llamado `example-cli` en el marketplace oficial:

42 42 


158 Obtén tu plugin en el marketplace oficial158 Obtén tu plugin en el marketplace oficial

159</h2>159</h2>

160 160 

161El protocolo de sugerencia solo tiene efecto para plugins que se enumeran en el marketplace oficial de Anthropic, `claude-plugins-official`. Anthropic cura ese marketplace a su discreción, y los formularios de envío en la aplicación agregan plugins al [marketplace de la comunidad](/es/plugins#submit-your-plugin-to-the-community-marketplace) en su lugar, que el protocolo de sugerencia no verifica. Si trabajas con un contacto de socio de Anthropic, comunícate con ellos para coordinar una enumeración en el marketplace oficial.161El protocolo de sugerencia solo tiene efecto para plugins que se enumeran en el marketplace oficial de Anthropic, `claude-plugins-official`. Anthropic cura ese marketplace a su discreción, y los formularios de envío en la aplicación agregan plugins al [marketplace de la comunidad](/docs/es/plugins#submit-your-plugin-to-the-community-marketplace) en su lugar, que el protocolo de sugerencia no verifica. Si trabajas con un contacto de socio de Anthropic, comunícate con ellos para coordinar una enumeración en el marketplace oficial.

162 162 

163<h2 id="see-also">163<h2 id="see-also">

164 Ver también164 Ver también

165</h2>165</h2>

166 166 

167* [Crea plugins](/es/plugins): construye el plugin que tu CLI recomienda167* [Crea plugins](/docs/es/plugins): construye el plugin que tu CLI recomienda

168* [Crea y distribuye un marketplace de plugins](/es/plugin-marketplaces): aloja plugins fuera del marketplace oficial168* [Crea y distribuye un marketplace de plugins](/docs/es/plugin-marketplaces): aloja plugins fuera del marketplace oficial

169* [Variables de entorno](/es/env-vars): referencia completa para `CLAUDECODE` y variables relacionadas169* [Variables de entorno](/docs/es/env-vars): referencia completa para `CLAUDECODE` y variables relacionadas

Details

8 8 

9Un **marketplace de plugins** es un catálogo que le permite distribuir plugins a otros. Los marketplaces proporcionan descubrimiento centralizado, seguimiento de versiones, actualizaciones automáticas y soporte para múltiples tipos de fuentes, incluyendo repositorios git y rutas locales. Esta guía le muestra cómo crear su propio marketplace para compartir plugins con su equipo o comunidad.9Un **marketplace de plugins** es un catálogo que le permite distribuir plugins a otros. Los marketplaces proporcionan descubrimiento centralizado, seguimiento de versiones, actualizaciones automáticas y soporte para múltiples tipos de fuentes, incluyendo repositorios git y rutas locales. Esta guía le muestra cómo crear su propio marketplace para compartir plugins con su equipo o comunidad.

10 10 

11¿Busca instalar plugins desde un marketplace existente? Consulte [Descubrir e instalar plugins precompilados](/es/discover-plugins).11¿Busca instalar plugins desde un marketplace existente? Consulte [Descubrir e instalar plugins precompilados](/docs/es/discover-plugins).

12 12 

13<h2 id="overview">13<h2 id="overview">

14 Descripción general14 Descripción general


16 16 

17Crear y distribuir un marketplace implica:17Crear y distribuir un marketplace implica:

18 18 

191. **Crear plugins**: construya uno o más plugins con skills, agentes, hooks, servidores MCP o servidores LSP. Esta guía asume que ya tiene plugins para distribuir; consulte [Crear plugins](/es/plugins) para obtener detalles sobre cómo crearlos.191. **Crear plugins**: construya uno o más plugins con skills, agentes, hooks, servidores MCP o servidores LSP. Esta guía asume que ya tiene plugins para distribuir; consulte [Crear plugins](/docs/es/plugins) para obtener detalles sobre cómo crearlos.

202. **Crear el archivo de marketplace**: defina un `marketplace.json` que enumere sus plugins y dónde encontrarlos. Consulte [Crear el archivo de marketplace](#create-the-marketplace-file).202. **Crear el archivo de marketplace**: defina un `marketplace.json` que enumere sus plugins y dónde encontrarlos. Consulte [Crear el archivo de marketplace](#create-the-marketplace-file).

213. **Alojar el marketplace**: envíe a GitHub, GitLab u otro host git. Consulte [Alojar y distribuir marketplaces](#host-and-distribute-marketplaces).213. **Alojar el marketplace**: envíe a GitHub, GitLab u otro host git. Consulte [Alojar y distribuir marketplaces](#host-and-distribute-marketplaces).

224. **Compartir con usuarios**: los usuarios agregan su marketplace con `/plugin marketplace add` e instalan plugins individuales. Consulte [Descubrir e instalar plugins](/es/discover-plugins).224. **Compartir con usuarios**: los usuarios agregan su marketplace con `/plugin marketplace add` e instalan plugins individuales. Consulte [Descubrir e instalar plugins](/docs/es/discover-plugins).

23 23 

24Una vez que su marketplace esté activo, puede actualizarlo enviando cambios a su repositorio. Los usuarios actualizan su copia local con `/plugin marketplace update`.24Una vez que su marketplace esté activo, puede actualizarlo enviando cambios a su repositorio. Los usuarios actualizan su copia local con `/plugin marketplace update`.

25 25 


110 </Step>110 </Step>

111</Steps>111</Steps>

112 112 

113Para obtener más información sobre lo que los plugins pueden hacer, incluidos hooks, agentes, servidores MCP y servidores LSP, consulte [Plugins](/es/plugins).113Para obtener más información sobre lo que los plugins pueden hacer, incluidos hooks, agentes, servidores MCP y servidores LSP, consulte [Plugins](/docs/es/plugins).

114 114 

115<Note>115<Note>

116 **Cómo se instalan los plugins**: Cuando los usuarios instalan un plugin, Claude Code copia el directorio del plugin a una ubicación de caché. Esto significa que los plugins no pueden hacer referencia a archivos fuera de su directorio usando rutas como `../shared-utils`, porque esos archivos no se copiarán.116 **Cómo se instalan los plugins**: Cuando los usuarios instalan un plugin, Claude Code copia el directorio del plugin a una ubicación de caché. Esto significa que los plugins no pueden hacer referencia a archivos fuera de su directorio usando rutas como `../shared-utils`, porque esos archivos no se copiarán.

117 117 

118 Si necesita compartir archivos entre plugins, use enlaces simbólicos. Consulte [Plugin caching and file resolution](/es/plugins-reference#plugin-caching-and-file-resolution) para obtener detalles.118 Si necesita compartir archivos entre plugins, use enlaces simbólicos. Consulte [Plugin caching and file resolution](/docs/es/plugins-reference#plugin-caching-and-file-resolution) para obtener detalles.

119</Note>119</Note>

120 120 

121<h2 id="create-the-marketplace-file">121<h2 id="create-the-marketplace-file">


172<Note>172<Note>

173 **Nombres reservados**: Los siguientes nombres de marketplace están reservados para uso oficial de Anthropic y no pueden ser utilizados por marketplaces de terceros: `claude-code-marketplace`, `claude-code-plugins`, `claude-plugins-official`, `claude-plugins-community`, `claude-community`, `anthropic-marketplace`, `anthropic-plugins`, `agent-skills`, `anthropic-agent-skills`, `knowledge-work-plugins`, `life-sciences`, `claude-for-legal`, `claude-for-financial-services`, `financial-services-plugins`, `first-party-plugins`, `healthcare`. Los nombres que se hacen pasar por marketplaces oficiales, como `official-claude-plugins` o `anthropic-plugins-v2`, también están bloqueados. Reservar estos nombres evita que un marketplace de terceros se presente como una fuente publicada por Anthropic.173 **Nombres reservados**: Los siguientes nombres de marketplace están reservados para uso oficial de Anthropic y no pueden ser utilizados por marketplaces de terceros: `claude-code-marketplace`, `claude-code-plugins`, `claude-plugins-official`, `claude-plugins-community`, `claude-community`, `anthropic-marketplace`, `anthropic-plugins`, `agent-skills`, `anthropic-agent-skills`, `knowledge-work-plugins`, `life-sciences`, `claude-for-legal`, `claude-for-financial-services`, `financial-services-plugins`, `first-party-plugins`, `healthcare`. Los nombres que se hacen pasar por marketplaces oficiales, como `official-claude-plugins` o `anthropic-plugins-v2`, también están bloqueados. Reservar estos nombres evita que un marketplace de terceros se presente como una fuente publicada por Anthropic.

174 174 

175 Claude Code vuelve a verificar los nombres reservados cada vez que carga un marketplace, no solo cuando agrega uno. Un marketplace que fue registrado bajo uno de estos nombres antes de que el nombre se reservara deja de cargar e informa que está [registrado desde una fuente no confiable](/es/errors#marketplace-is-registered-from-an-untrusted-source). Elimine ese marketplace y vuelva a agregarlo desde la fuente oficial de Anthropic. Un marketplace de terceros afectado por un nombre recién reservado se carga nuevamente tan pronto como lo vuelva a agregar bajo un nombre diferente. Antes de v2.1.205, `first-party-plugins` y `healthcare` no estaban reservados, y un marketplace ya registrado bajo un nombre reservado seguía cargándose.175 Claude Code vuelve a verificar los nombres reservados cada vez que carga un marketplace, no solo cuando agrega uno. Un marketplace que fue registrado bajo uno de estos nombres antes de que el nombre se reservara deja de cargar e informa que está [registrado desde una fuente no confiable](/docs/es/errors#marketplace-is-registered-from-an-untrusted-source). Elimine ese marketplace y vuelva a agregarlo desde la fuente oficial de Anthropic. Un marketplace de terceros afectado por un nombre recién reservado se carga nuevamente tan pronto como lo vuelva a agregar bajo un nombre diferente. Antes de v2.1.205, `first-party-plugins` y `healthcare` no estaban reservados, y un marketplace ya registrado bajo un nombre reservado seguía cargándose.

176</Note>176</Note>

177 177 

178<h3 id="owner-fields">178<h3 id="owner-fields">


189</h3>189</h3>

190 190 

191| Campo | Tipo | Descripción |191| Campo | Tipo | Descripción |

192| :------------------------------------ | :----- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |192| :------------------------------------ | :----- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

193| `$schema` | string | URL del esquema JSON para autocompletado y validación del editor. Claude Code ignora este campo al cargar. |193| `$schema` | string | URL del esquema JSON para autocompletado y validación del editor. Claude Code ignora este campo al cargar. |

194| `description` | string | Descripción breve del marketplace |194| `description` | string | Descripción breve del marketplace |

195| `version` | string | Versión del manifiesto del marketplace |195| `version` | string | Versión del manifiesto del marketplace |

196| `metadata.pluginRoot` | string | Directorio base antepuesto a rutas de fuente de plugin relativas (por ejemplo, `"./plugins"` le permite escribir `"source": "formatter"` en lugar de `"source": "./plugins/formatter"`) |196| `metadata.pluginRoot` | string | Directorio base antepuesto a rutas de fuente de plugin relativas (por ejemplo, `"./plugins"` le permite escribir `"source": "formatter"` en lugar de `"source": "./plugins/formatter"`) |

197| `allowCrossMarketplaceDependenciesOn` | array | Otros marketplaces en los que los plugins en este marketplace pueden depender. Las dependencias de un marketplace no listado aquí se bloquean en la instalación. Consulte [Depender de un plugin de otro marketplace](/es/plugin-dependencies#depend-on-a-plugin-from-another-marketplace). |197| `allowCrossMarketplaceDependenciesOn` | array | Otros marketplaces en los que los plugins en este marketplace pueden depender. Las dependencias de un marketplace no listado aquí se bloquean en la instalación. Consulte [Depender de un plugin de otro marketplace](/docs/es/plugin-dependencies#depend-on-a-plugin-from-another-marketplace). |

198| `renames` | object | {/* min-version: 2.1.193 */}Mapa del anterior `name` de un plugin a su nombre actual, o a `null` si el plugin fue eliminado. Permite que los usuarios existentes migren automáticamente cuando cambia el nombre o elimina una entrada en `plugins`. Consulte [Renombrar o eliminar un plugin](#rename-or-remove-a-plugin). Requiere Claude Code v2.1.193 o posterior. |198| `renames` | object | Mapa del anterior `name` de un plugin a su nombre actual, o a `null` si el plugin fue eliminado. Permite que los usuarios existentes migren automáticamente cuando cambia el nombre o elimina una entrada en `plugins`. Consulte [Renombrar o eliminar un plugin](#rename-or-remove-a-plugin). Requiere Claude Code v2.1.193 o posterior. |

199 199 

200`description` y `version` también se aceptan bajo `metadata` para compatibilidad con versiones anteriores.200`description` y `version` también se aceptan bajo `metadata` para compatibilidad con versiones anteriores.

201 201 


203 Entradas de plugins203 Entradas de plugins

204</h2>204</h2>

205 205 

206Cada entrada de plugin en el array `plugins` describe un plugin y dónde encontrarlo. Puede incluir cualquier campo del [esquema de manifiesto de plugin](/es/plugins-reference#plugin-manifest-schema), como `description`, `version`, `author`, `commands` y `hooks`, más estos campos específicos del marketplace: `source`, `category`, `tags`, `strict` y `relevance`.206Cada entrada de plugin en el array `plugins` describe un plugin y dónde encontrarlo. Puede incluir cualquier campo del [esquema de manifiesto de plugin](/docs/es/plugins-reference#plugin-manifest-schema), como `description`, `version`, `author`, `commands` y `hooks`, más estos campos específicos del marketplace: `source`, `category`, `tags`, `strict` y `relevance`.

207 207 

208<h3 id="required-fields-2">208<h3 id="required-fields-2">

209 Campos requeridos209 Campos requeridos


221**Campos de metadatos estándar:**221**Campos de metadatos estándar:**

222 222 

223| Campo | Tipo | Descripción |223| Campo | Tipo | Descripción |

224| :--------------- | :------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |224| :--------------- | :------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

225| `displayName` | string | {/* min-version: 2.1.143 */}Nombre legible mostrado en superficies de interfaz de usuario. Recurre a `name` cuando se omite. Puede contener espacios y cualquier capitalización. No se utiliza para espacios de nombres o búsqueda. Requiere Claude Code v2.1.143 o posterior. |225| `displayName` | string | Nombre legible mostrado en superficies de interfaz de usuario. Recurre a `name` cuando se omite. Puede contener espacios y cualquier capitalización. No se utiliza para espacios de nombres o búsqueda. Requiere Claude Code v2.1.143 o posterior. |

226| `description` | string | Descripción breve del plugin |226| `description` | string | Descripción breve del plugin |

227| `version` | string | Versión del plugin. Si se establece (aquí o en `plugin.json`), el plugin se fija a esta cadena y los usuarios solo reciben actualizaciones cuando cambia. Omita para recurrir al SHA del commit de git. Consulte [Resolución de versiones](#version-resolution-and-release-channels). |227| `version` | string | Versión del plugin. Si se establece (aquí o en `plugin.json`), el plugin se fija a esta cadena y los usuarios solo reciben actualizaciones cuando cambia. Omita para recurrir al SHA del commit de git. Consulte [Resolución de versiones](#version-resolution-and-release-channels). |

228| `author` | object | Información del autor del plugin (`name` requerido, `email` opcional) |228| `author` | object | Información del autor del plugin (`name` requerido, `email` opcional) |


233| `category` | string | Categoría del plugin para organización |233| `category` | string | Categoría del plugin para organización |

234| `tags` | array | Etiquetas para búsqueda |234| `tags` | array | Etiquetas para búsqueda |

235| `strict` | boolean | Controla si `plugin.json` es la autoridad para definiciones de componentes (predeterminado: true). Consulte [Modo estricto](#strict-mode) a continuación. |235| `strict` | boolean | Controla si `plugin.json` es la autoridad para definiciones de componentes (predeterminado: true). Consulte [Modo estricto](#strict-mode) a continuación. |

236| `relevance` | object | {/* min-version: 2.1.152 */}Señales que indican a Claude Code cuándo sugerir este plugin a los usuarios. Solo tiene efecto para marketplaces que un administrador incluye en la lista de permitidos en la configuración administrada. Consulte [Recomendar plugins para su organización](/es/plugin-relevance). Requiere Claude Code v2.1.152 o posterior. |236| `relevance` | object | Señales que indican a Claude Code cuándo sugerir este plugin a los usuarios. Solo tiene efecto para marketplaces que un administrador incluye en la lista de permitidos en la configuración administrada. Consulte [Recomendar plugins para su organización](/docs/es/plugin-relevance). Requiere Claude Code v2.1.152 o posterior. |

237| `defaultEnabled` | boolean | {/* min-version: 2.1.154 */}Si el plugin está habilitado después de la instalación (predeterminado: true). Establezca en `false` para instalar el plugin deshabilitado hasta que el usuario opte por participar. Tiene prioridad sobre el mismo campo en el `plugin.json` del plugin. Consulte [Habilitación predeterminada](/es/plugins-reference#default-enablement). Requiere Claude Code v2.1.154 o posterior. |237| `defaultEnabled` | boolean | Si el plugin está habilitado después de la instalación (predeterminado: true). Establezca en `false` para instalar el plugin deshabilitado hasta que el usuario opte por participar. Tiene prioridad sobre el mismo campo en el `plugin.json` del plugin. Consulte [Habilitación predeterminada](/docs/es/plugins-reference#default-enablement). Requiere Claude Code v2.1.154 o posterior. |

238 238 

239**Campos de configuración de componentes:**239**Campos de configuración de componentes:**

240 240 


510 510 

511* **`commands` y `agents`**: puede especificar múltiples directorios o archivos individuales. Las rutas son relativas a la raíz del plugin.511* **`commands` y `agents`**: puede especificar múltiples directorios o archivos individuales. Las rutas son relativas a la raíz del plugin.

512* **`${CLAUDE_PLUGIN_ROOT}`**: Use esta variable en hooks y configuraciones de MCP server para hacer referencia a archivos dentro del directorio de instalación del plugin. Esto es necesario porque los plugins se copian a una ubicación de caché cuando se instalan.512* **`${CLAUDE_PLUGIN_ROOT}`**: Use esta variable en hooks y configuraciones de MCP server para hacer referencia a archivos dentro del directorio de instalación del plugin. Esto es necesario porque los plugins se copian a una ubicación de caché cuando se instalan.

513 * Consulte la [tabla de sustitución](/es/plugins-reference#environment-variables) para ver qué campos de configuración la sustituyen por tipo de servidor513 * Consulte la [tabla de sustitución](/docs/es/plugins-reference#environment-variables) para ver qué campos de configuración la sustituyen por tipo de servidor

514 * Para dependencias o estado que deben sobrevivir a las actualizaciones de plugins, use [`${CLAUDE_PLUGIN_DATA}`](/es/plugins-reference#persistent-data-directory) en su lugar514 * Para dependencias o estado que deben sobrevivir a las actualizaciones de plugins, use [`${CLAUDE_PLUGIN_DATA}`](/docs/es/plugins-reference#persistent-data-directory) en su lugar

515* **`strict: false`**: dado que esto se establece en false, el plugin no necesita su propio `plugin.json`. La entrada del marketplace define todo. Consulte [Modo estricto](#strict-mode) a continuación.515* **`strict: false`**: dado que esto se establece en false, el plugin no necesita su propio `plugin.json`. La entrada del marketplace define todo. Consulte [Modo estricto](#strict-mode) a continuación.

516 516 

517Por defecto, las skills de un plugin se cargan desde el directorio `skills/` bajo su `source`. Las rutas listadas en el campo `skills` se agregan a ese escaneo:517Por defecto, las skills de un plugin se cargan desde el directorio `skills/` bajo su `source`. Las rutas listadas en el campo `skills` se agregan a ese escaneo:


575 Repositorios privados575 Repositorios privados

576</h3>576</h3>

577 577 

578Claude Code soporta instalar plugins desde repositorios privados. Para instalación manual y actualizaciones, Claude Code usa sus ayudantes de credenciales de git existentes, por lo que el acceso HTTPS a través de `gh auth login`, Keychain de macOS o `git-credential-store` funciona igual que en su terminal. El acceso SSH funciona siempre que el host ya esté en su archivo `known_hosts` y la clave esté cargada en `ssh-agent`, ya que Claude Code suprime los mensajes interactivos de SSH para la huella digital del host y la contraseña de la clave. Los atajos de teclado de GitHub `owner/repo` clonan sobre SSH de forma predeterminada; establezca [`CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1`](/es/env-vars#variables) para clonarlos sobre HTTPS en su lugar.578Claude Code soporta instalar plugins desde repositorios privados. Para instalación manual y actualizaciones, Claude Code usa sus ayudantes de credenciales de git existentes, por lo que el acceso HTTPS a través de `gh auth login`, Keychain de macOS o `git-credential-store` funciona igual que en su terminal. El acceso SSH funciona siempre que el host ya esté en su archivo `known_hosts` y la clave esté cargada en `ssh-agent`, ya que Claude Code suprime los mensajes interactivos de SSH para la huella digital del host y la contraseña de la clave. Los atajos de teclado de GitHub `owner/repo` clonan sobre SSH de forma predeterminada; establezca [`CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1`](/docs/es/env-vars#variables) para clonarlos sobre HTTPS en su lugar.

579 579 

580Las actualizaciones automáticas en segundo plano funcionan de manera diferente. De forma predeterminada, la actualización en segundo plano deshabilita los ayudantes de credenciales de git para su `git pull`, por lo que la extracción no puede autenticarse en repositorios privados sobre HTTPS incluso cuando un ayudante está configurado. Los remotos SSH no se ven afectados: una clave cargada en `ssh-agent` autentica las extracciones en segundo plano de la misma manera que las operaciones manuales. Cuando la extracción en segundo plano falla, Claude Code vuelve a clonar el marketplace desde cero. El re-clonado sí usa sus credenciales de git almacenadas, pero puede [agotar el tiempo de espera en repositorios grandes](#git-operations-time-out), por lo que las actualizaciones automáticas de marketplace privado pueden fallar intermitentemente.580Las actualizaciones automáticas en segundo plano funcionan de manera diferente. De forma predeterminada, la actualización en segundo plano deshabilita los ayudantes de credenciales de git para su `git pull`, por lo que la extracción no puede autenticarse en repositorios privados sobre HTTPS incluso cuando un ayudante está configurado. Los remotos SSH no se ven afectados: una clave cargada en `ssh-agent` autentica las extracciones en segundo plano de la misma manera que las operaciones manuales. Cuando la extracción en segundo plano falla, Claude Code vuelve a clonar el marketplace desde cero. El re-clonado sí usa sus credenciales de git almacenadas, pero puede [agotar el tiempo de espera en repositorios grandes](#git-operations-time-out), por lo que las actualizaciones automáticas de marketplace privado pueden fallar intermitentemente.

581 581 


619/plugin install quality-review-plugin@my-plugins619/plugin install quality-review-plugin@my-plugins

620```620```

621 621 

622Para el rango completo de comandos add (GitHub, URLs de Git, rutas locales, URLs remotas), consulte [Agregar marketplaces](/es/discover-plugins#add-marketplaces).622Para el rango completo de comandos add (GitHub, URLs de Git, rutas locales, URLs remotas), consulte [Agregar marketplaces](/docs/es/discover-plugins#add-marketplaces).

623 623 

624<h3 id="require-marketplaces-for-your-team">624<h3 id="require-marketplaces-for-your-team">

625 Requerir marketplaces para su equipo625 Requerir marketplaces para su equipo


651}651}

652```652```

653 653 

654Para opciones de configuración completas, consulte [Configuración de plugins](/es/settings#plugin-settings).654Para opciones de configuración completas, consulte [Configuración de plugins](/docs/es/settings#plugin-settings).

655 655 

656<Note>656<Note>

657 Si usa una fuente local `directory` o `file` con una ruta relativa, la ruta se resuelve contra el checkout principal de su repositorio. Cuando ejecuta Claude Code desde un git worktree, la ruta aún apunta al checkout principal, por lo que todos los worktrees comparten la misma ubicación de marketplace. El estado del marketplace se almacena una vez por usuario en `~/.claude/plugins/known_marketplaces.json`, no por proyecto.657 Si usa una fuente local `directory` o `file` con una ruta relativa, la ruta se resuelve contra el checkout principal de su repositorio. Cuando ejecuta Claude Code desde un git worktree, la ruta aún apunta al checkout principal, por lo que todos los worktrees comparten la misma ubicación de marketplace. El estado del marketplace se almacena una vez por usuario en `~/.claude/plugins/known_marketplaces.json`, no por proyecto.


699 Restricciones de marketplace administrado699 Restricciones de marketplace administrado

700</h3>700</h3>

701 701 

702Para organizaciones que requieren control estricto sobre las fuentes de plugins, los administradores pueden restringir qué marketplaces de plugins se permite a los usuarios agregar usando la configuración [`strictKnownMarketplaces`](/es/settings#strictknownmarketplaces) en configuración administrada. Para también rechazar las banderas de CLI que cargan plugins, agentes y servidores MCP para una única ejecución, emparéjelo con [`disableSideloadFlags`](/es/settings#available-settings). Para permitir qué plugins de marketplaces pueden aparecer como sugerencias de instalación contextual, establezca [`pluginSuggestionMarketplaces`](/es/settings#available-settings).702Para organizaciones que requieren control estricto sobre las fuentes de plugins, los administradores pueden restringir qué marketplaces de plugins se permite a los usuarios agregar usando la configuración [`strictKnownMarketplaces`](/docs/es/settings#strictknownmarketplaces) en configuración administrada. Para también rechazar las banderas de CLI que cargan plugins, agentes y servidores MCP para una única ejecución, emparéjelo con [`disableSideloadFlags`](/docs/es/settings#available-settings). Para permitir qué plugins de marketplaces pueden aparecer como sugerencias de instalación contextual, establezca [`pluginSuggestionMarketplaces`](/docs/es/settings#available-settings).

703 703 

704Cuando `strictKnownMarketplaces` se configura en configuración administrada, el comportamiento de restricción depende del valor:704Cuando `strictKnownMarketplaces` se configura en configuración administrada, el comportamiento de restricción depende del valor:

705 705 


743}743}

744```744```

745 745 

746Permitir todos los marketplaces desde un servidor git interno usando coincidencia de patrón regex en el host. Este es el enfoque recomendado para [GitHub Enterprise Server](/es/github-enterprise-server#plugin-marketplaces-on-ghes) o instancias de GitLab autohospedadas:746Permitir todos los marketplaces desde un servidor git interno usando coincidencia de patrón regex en el host. Este es el enfoque recomendado para [GitHub Enterprise Server](/docs/es/github-enterprise-server#plugin-marketplaces-on-ghes) o instancias de GitLab autohospedadas:

747 747 

748```json theme={null}748```json theme={null}

749{749{


772Use `".*"` como `pathPattern` para permitir cualquier ruta del sistema de archivos mientras aún controla fuentes de red con `hostPattern`.772Use `".*"` como `pathPattern` para permitir cualquier ruta del sistema de archivos mientras aún controla fuentes de red con `hostPattern`.

773 773 

774<Note>774<Note>

775 `strictKnownMarketplaces` restringe lo que los usuarios pueden agregar, pero no registra marketplaces por sí solo. Para hacer que los marketplaces permitidos estén disponibles automáticamente sin que los usuarios ejecuten `/plugin marketplace add`, emparéjelo con [`extraKnownMarketplaces`](/es/settings#extraknownmarketplaces) en el mismo `managed-settings.json`. Consulte [Usar ambos juntos](/es/settings#strictknownmarketplaces).775 `strictKnownMarketplaces` restringe lo que los usuarios pueden agregar, pero no registra marketplaces por sí solo. Para hacer que los marketplaces permitidos estén disponibles automáticamente sin que los usuarios ejecuten `/plugin marketplace add`, emparéjelo con [`extraKnownMarketplaces`](/docs/es/settings#extraknownmarketplaces) en el mismo `managed-settings.json`. Consulte [Usar ambos juntos](/docs/es/settings#strictknownmarketplaces).

776</Note>776</Note>

777 777 

778<h4 id="how-restrictions-work">778<h4 id="how-restrictions-work">


790 790 

791La coincidencia exacta no normaliza URLs: una barra diagonal final, sufijo `.git` o forma `ssh://` versus `https://` se tratan como valores diferentes. Si el marketplace de su organización se puede clonar por más de una forma de URL, prefiera una entrada `hostPattern` sobre una URL literal para que todas las formas coincidan.791La coincidencia exacta no normaliza URLs: una barra diagonal final, sufijo `.git` o forma `ssh://` versus `https://` se tratan como valores diferentes. Si el marketplace de su organización se puede clonar por más de una forma de URL, prefiera una entrada `hostPattern` sobre una URL literal para que todas las formas coincidan.

792 792 

793Debido a que `strictKnownMarketplaces` se establece en [configuración administrada](/es/settings#settings-files), los usuarios individuales y las configuraciones del proyecto no pueden anular estas restricciones.793Debido a que `strictKnownMarketplaces` se establece en [configuración administrada](/docs/es/settings#settings-files), los usuarios individuales y las configuraciones del proyecto no pueden anular estas restricciones.

794 794 

795Para detalles de configuración completos incluyendo todos los tipos de fuente soportados y comparación con `extraKnownMarketplaces`, consulte la [referencia de strictKnownMarketplaces](/es/settings#strictknownmarketplaces).795Para detalles de configuración completos incluyendo todos los tipos de fuente soportados y comparación con `extraKnownMarketplaces`, consulte la [referencia de strictKnownMarketplaces](/docs/es/settings#strictknownmarketplaces).

796 796 

797<h3 id="version-resolution-and-release-channels">797<h3 id="version-resolution-and-release-channels">

798 Resolución de versiones y canales de lanzamiento798 Resolución de versiones y canales de lanzamiento


818 Configurar canales de lanzamiento818 Configurar canales de lanzamiento

819</h4>819</h4>

820 820 

821Para soportar canales de lanzamiento "estable" y "último" para sus plugins, puede configurar dos marketplaces que apunten a diferentes refs o SHAs del mismo repositorio. Luego puede asignar los dos marketplaces a diferentes grupos de usuarios a través de [configuración administrada](/es/settings#settings-files).821Para soportar canales de lanzamiento "estable" y "último" para sus plugins, puede configurar dos marketplaces que apunten a diferentes refs o SHAs del mismo repositorio. Luego puede asignar los dos marketplaces a diferentes grupos de usuarios a través de [configuración administrada](/docs/es/settings#settings-files).

822 822 

823<Warning>823<Warning>

824 Cada canal debe resolver a una versión diferente. Si usa versiones explícitas, `plugin.json` debe declarar una `version` diferente en cada ref fijado. Si omite `version`, los SHAs de commit distintos ya distinguen los canales. Si dos refs resuelven a la misma cadena de versión, Claude Code los trata como idénticos y omite la actualización.824 Cada canal debe resolver a una versión diferente. Si usa versiones explícitas, `plugin.json` debe declarar una `version` diferente en cada ref fijado. Si omite `version`, los SHAs de commit distintos ya distinguen los canales. Si dos refs resuelven a la misma cadena de versión, Claude Code los trata como idénticos y omite la actualización.


898 Fijar versiones de dependencias898 Fijar versiones de dependencias

899</h4>899</h4>

900 900 

901Un plugin puede restringir sus dependencias a un rango semver para que las actualizaciones de una dependencia no rompan el plugin dependiente. Consulte [Restringir versiones de dependencias de plugins](/es/plugin-dependencies) para la convención de etiqueta de git `{plugin-name}--v{version}`, sintaxis de rango y cómo se combinan múltiples restricciones en la misma dependencia.901Un plugin puede restringir sus dependencias a un rango semver para que las actualizaciones de una dependencia no rompan el plugin dependiente. Consulte [Restringir versiones de dependencias de plugins](/docs/es/plugin-dependencies) para la convención de etiqueta de git `{plugin-name}--v{version}`, sintaxis de rango y cómo se combinan múltiples restricciones en la misma dependencia.

902 902 

903<h3 id="rename-or-remove-a-plugin">903<h3 id="rename-or-remove-a-plugin">

904 Renombrar o eliminar un plugin904 Renombrar o eliminar un plugin


968/plugin install test-plugin@marketplace-name968/plugin install test-plugin@marketplace-name

969```969```

970 970 

971Para flujos de trabajo completos de prueba de plugins, consulte [Pruebe sus plugins localmente](/es/plugins#test-your-plugins-locally). Para solución de problemas técnicos, consulte [Referencia de plugins](/es/plugins-reference).971Para flujos de trabajo completos de prueba de plugins, consulte [Pruebe sus plugins localmente](/docs/es/plugins#test-your-plugins-locally). Para solución de problemas técnicos, consulte [Referencia de plugins](/docs/es/plugins-reference).

972 972 

973<h2 id="manage-marketplaces-from-the-cli">973<h2 id="manage-marketplaces-from-the-cli">

974 Administrar marketplaces desde la CLI974 Administrar marketplaces desde la CLI


996 996 

997| Opción | Descripción | Predeterminado |997| Opción | Descripción | Predeterminado |

998| :-------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------- | :------------- |998| :-------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------- | :------------- |

999| `--scope <scope>` | Dónde declarar el marketplace: `user`, `project` o `local`. Consulte [Plugin installation scopes](/es/plugins-reference#plugin-installation-scopes) | `user` |999| `--scope <scope>` | Dónde declarar el marketplace: `user`, `project` o `local`. Consulte [Plugin installation scopes](/docs/es/plugins-reference#plugin-installation-scopes) | `user` |

1000| `--sparse <paths...>` | Limitar el checkout a directorios específicos a través de git sparse-checkout. Útil para monorepos | |1000| `--sparse <paths...>` | Limitar el checkout a directorios específicos a través de git sparse-checkout. Útil para monorepos | |

1001 1001 

1002Agregue un marketplace desde GitHub usando la abreviatura `owner/repo`:1002Agregue un marketplace desde GitHub usando la abreviatura `owner/repo`:


1077 1077 

1078| Opción | Descripción | Predeterminado |1078| Opción | Descripción | Predeterminado |

1079| :---------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------- |1079| :---------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------- |

1080| `--scope <scope>` | Restringir la eliminación a un único alcance de configuración: `user`, `project` o `local`. Consulte [Plugin installation scopes](/es/plugins-reference#plugin-installation-scopes). Cuando se omite, la declaración se elimina de cada alcance editable. Cuando se proporciona, solo se elimina la declaración de ese alcance; el estado compartido, la caché y los datos de plugins instalados se conservan cuando el marketplace aún se declara en otro alcance | (todos los alcances) |1080| `--scope <scope>` | Restringir la eliminación a un único alcance de configuración: `user`, `project` o `local`. Consulte [Plugin installation scopes](/docs/es/plugins-reference#plugin-installation-scopes). Cuando se omite, la declaración se elimina de cada alcance editable. Cuando se proporciona, solo se elimina la declaración de ese alcance; el estado compartido, la caché y los datos de plugins instalados se conservan cuando el marketplace aún se declara en otro alcance | (todos los alcances) |

1081 1081 

1082<Warning>1082<Warning>

1083 Eliminar un marketplace de su último alcance restante también desinstala cualquier plugin que haya instalado desde él. Para actualizar un marketplace sin perder plugins instalados, use `claude plugin marketplace update` en su lugar.1083 Eliminar un marketplace de su último alcance restante también desinstala cualquier plugin que haya instalado desde él. Para actualizar un marketplace sin perder plugins instalados, use `claude plugin marketplace update` en su lugar.


1238 1238 

1239**Causa**: Los plugins se copian a un directorio de caché en lugar de usarse en el lugar. Las rutas que hacen referencia a archivos fuera del directorio del plugin (como `../shared-utils`) no funcionarán porque esos archivos no se copian.1239**Causa**: Los plugins se copian a un directorio de caché en lugar de usarse en el lugar. Las rutas que hacen referencia a archivos fuera del directorio del plugin (como `../shared-utils`) no funcionarán porque esos archivos no se copian.

1240 1240 

1241**Soluciones**: Consulte [Plugin caching and file resolution](/es/plugins-reference#plugin-caching-and-file-resolution) para soluciones alternativas incluyendo enlaces simbólicos y reestructuración de directorios.1241**Soluciones**: Consulte [Plugin caching and file resolution](/docs/es/plugins-reference#plugin-caching-and-file-resolution) para soluciones alternativas incluyendo enlaces simbólicos y reestructuración de directorios.

1242 1242 

1243Para herramientas de depuración adicionales y problemas comunes, consulte [Debugging and development tools](/es/plugins-reference#debugging-and-development-tools).1243Para herramientas de depuración adicionales y problemas comunes, consulte [Debugging and development tools](/docs/es/plugins-reference#debugging-and-development-tools).

1244 1244 

1245<h2 id="see-also">1245<h2 id="see-also">

1246 Ver también1246 Ver también

1247</h2>1247</h2>

1248 1248 

1249* [Descubrir e instalar plugins precompilados](/es/discover-plugins) - Instalación de plugins desde marketplaces existentes1249* [Descubrir e instalar plugins precompilados](/docs/es/discover-plugins) - Instalación de plugins desde marketplaces existentes

1250* [Plugins](/es/plugins) - Creación de sus propios plugins1250* [Plugins](/docs/es/plugins) - Creación de sus propios plugins

1251* [Referencia de plugins](/es/plugins-reference) - Especificaciones técnicas completas y esquemas1251* [Referencia de plugins](/docs/es/plugins-reference) - Especificaciones técnicas completas y esquemas

1252* [Configuración de plugins](/es/settings#plugin-settings) - Opciones de configuración de plugins1252* [Configuración de plugins](/docs/es/settings#plugin-settings) - Opciones de configuración de plugins

1253* [Referencia de strictKnownMarketplaces](/es/settings#strictknownmarketplaces) - Restricciones de marketplace administrado1253* [Referencia de strictKnownMarketplaces](/docs/es/settings#strictknownmarketplaces) - Restricciones de marketplace administrado

Details

8 8 

9Si opera un marketplace de plugins para su organización, puede hacer que Claude Code sugiera plugins específicos a los usuarios en función de lo que están haciendo. Agregue un bloque `relevance` a la entrada de un plugin en `marketplace.json`, luego incluya el marketplace en la lista de permitidos en la configuración administrada. Cuando la sesión de un usuario coincide con una de las señales declaradas, Claude Code muestra una sugerencia de instalación para ese plugin.9Si opera un marketplace de plugins para su organización, puede hacer que Claude Code sugiera plugins específicos a los usuarios en función de lo que están haciendo. Agregue un bloque `relevance` a la entrada de un plugin en `marketplace.json`, luego incluya el marketplace en la lista de permitidos en la configuración administrada. Cuando la sesión de un usuario coincide con una de las señales declaradas, Claude Code muestra una sugerencia de instalación para ese plugin.

10 10 

11Las sugerencias declaradas por el marketplace son opcionales por marketplace a través de [configuración administrada](/es/settings#settings-files). Ninguna declaración de `relevance` del marketplace produce sugerencias hasta que un administrador la agregue a la lista de permitidos, incluido el marketplace oficial de Anthropic. Claude Code también incluye una sugerencia integrada que es independiente de esta lista de permitidos; esa sugerencia y todas las sugerencias declaradas por el marketplace se deshabilitan cuando [`spinnerTipsEnabled`](/es/settings#available-settings) se establece en `false`.11Las sugerencias declaradas por el marketplace son opcionales por marketplace a través de [configuración administrada](/docs/es/settings#settings-files). Ninguna declaración de `relevance` del marketplace produce sugerencias hasta que un administrador la agregue a la lista de permitidos, incluido el marketplace oficial de Anthropic. Claude Code también incluye una sugerencia integrada que es independiente de esta lista de permitidos; esa sugerencia y todas las sugerencias declaradas por el marketplace se deshabilitan cuando [`spinnerTipsEnabled`](/docs/es/settings#available-settings) se establece en `false`.

12 12 

13{/* min-version: 2.1.152 */}Esta función requiere Claude Code v2.1.152 o posterior. Los clientes más antiguos ignoran el campo `relevance`.13Esta función requiere Claude Code v2.1.152 o posterior. Los clientes más antiguos ignoran el campo `relevance`.

14 14 

15Esta página es para operadores de marketplace y administradores empresariales. Si está buscando instalar plugins, consulte [Descubrir e instalar plugins](/es/discover-plugins).15Esta página es para operadores de marketplace y administradores empresariales. Si está buscando instalar plugins, consulte [Descubrir e instalar plugins](/docs/es/discover-plugins).

16 16 

17<h2 id="how-it-works">17<h2 id="how-it-works">

18 Cómo funciona18 Cómo funciona


25Cuando una señal coincide y el plugin aún no está instalado, Claude Code muestra el plugin en tres lugares:25Cuando una señal coincide y el plugin aún no está instalado, Claude Code muestra el plugin en tres lugares:

26 26 

27* **Sugerencia de spinner**: un mensaje "¿Trabajando con *tema*? Instale el plugin *plugin*" con el comando `/plugin install` aparece debajo del spinner mientras Claude está respondiendo.27* **Sugerencia de spinner**: un mensaje "¿Trabajando con *tema*? Instale el plugin *plugin*" con el comando `/plugin install` aparece debajo del spinner mientras Claude está respondiendo.

28* **Sugerencia de inicio de sesión**: {/* min-version: 2.1.153 */}si la señal `cwd` coincide con el directorio de trabajo, aparece una notificación de una línea `plugin suggestion: <name>@<marketplace> · /plugin` antes del primer turno. Esta superficie requiere Claude Code v2.1.153 o posterior.28* **Sugerencia de inicio de sesión**: si la señal `cwd` coincide con el directorio de trabajo, aparece una notificación de una línea `plugin suggestion: <name>@<marketplace> · /plugin` antes del primer turno. Esta superficie requiere Claude Code v2.1.153 o posterior.

29* **Pestaña Discover de `/plugin`**: {/* min-version: 2.1.154 */}el plugin se fija en la parte superior de la lista Discover con una anotación como "sugerido para este directorio" o "sugerido para comandos stripe". Esta superficie requiere Claude Code v2.1.154 o posterior.29* **Pestaña Discover de `/plugin`**: el plugin se fija en la parte superior de la lista Discover con una anotación como "sugerido para este directorio" o "sugerido para comandos stripe". Esta superficie requiere Claude Code v2.1.154 o posterior.

30 30 

31La sugerencia de spinner y la notificación de inicio de sesión son parte del sistema de sugerencias de spinner. Ambas se deshabilitan cuando el usuario o proyecto establece `spinnerTipsEnabled` en `false`, o cuando se configura un `spinnerTipsOverride` personalizado con `excludeDefault`. El pin de la pestaña Discover es independiente de la configuración de sugerencias.31La sugerencia de spinner y la notificación de inicio de sesión son parte del sistema de sugerencias de spinner. Ambas se deshabilitan cuando el usuario o proyecto establece `spinnerTipsEnabled` en `false`, o cuando se configura un `spinnerTipsOverride` personalizado con `excludeDefault`. El pin de la pestaña Discover es independiente de la configuración de sugerencias.

32 32 


80 80 

81| Campo | Tipo | Descripción |81| Campo | Tipo | Descripción |

82| :------------- | :--------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |82| :------------- | :--------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

83| `cwd` | array of strings | {/* min-version: 2.1.153 */}Patrones Glob coincididos contra el directorio de trabajo de la sesión. Coincidido como una ruta absoluta y, cuando está dentro de un repositorio git, como una ruta relativa a la raíz del repositorio. Normalizado con barra diagonal y sin distinción de mayúsculas y minúsculas. Cada patrón coincide con el directorio en sí y todo lo que hay debajo, por lo que `infra`, `infra/`, e `infra/**` se comportan de manera idéntica. Esta es la única señal que puede coincidir al inicio de la sesión, antes del primer turno. Máximo 10 patrones de 256 caracteres cada uno. |83| `cwd` | array of strings | Patrones Glob coincididos contra el directorio de trabajo de la sesión. Coincidido como una ruta absoluta y, cuando está dentro de un repositorio git, como una ruta relativa a la raíz del repositorio. Normalizado con barra diagonal y sin distinción de mayúsculas y minúsculas. Cada patrón coincide con el directorio en sí y todo lo que hay debajo, por lo que `infra`, `infra/`, e `infra/**` se comportan de manera idéntica. Esta es la única señal que puede coincidir al inicio de la sesión, antes del primer turno. Máximo 10 patrones de 256 caracteres cada uno. |

84| `cli` | array of strings | Nombres de comandos de comandos de shell que Claude ha ejecutado en esta sesión, por ejemplo `["stripe"]`. Se aplica en todas las plataformas: los comandos ejecutados en Windows a través de PowerShell o Git Bash se registran de la misma manera. Claude Code registra un nombre de comando por invocación de herramienta de shell: el primer token después de cualquier asignación de variable de entorno inicial y `sudo`. Los comandos compuestos contribuyen solo con su comando inicial, por lo que `cd infra && terraform plan` registra `cd`, no `terraform`. Coincidencia exacta. Máximo 10 entradas de 64 caracteres cada una. |84| `cli` | array of strings | Nombres de comandos de comandos de shell que Claude ha ejecutado en esta sesión, por ejemplo `["stripe"]`. Se aplica en todas las plataformas: los comandos ejecutados en Windows a través de PowerShell o Git Bash se registran de la misma manera. Claude Code registra un nombre de comando por invocación de herramienta de shell: el primer token después de cualquier asignación de variable de entorno inicial y `sudo`. Los comandos compuestos contribuyen solo con su comando inicial, por lo que `cd infra && terraform plan` registra `cd`, no `terraform`. Coincidencia exacta. Máximo 10 entradas de 64 caracteres cada una. |

85| `hosts` | array of strings | Nombres de host vistos en URLs `http://` o `https://` en comandos Bash en esta sesión, por ejemplo `["api.stripe.com"]`. Solo nombre de host en minúsculas: sin esquema, puerto o ruta. Coincidencia exacta sin distinción de mayúsculas y minúsculas. Máximo 20 entradas de 128 caracteres cada una. |85| `hosts` | array of strings | Nombres de host vistos en URLs `http://` o `https://` en comandos Bash en esta sesión, por ejemplo `["api.stripe.com"]`. Solo nombre de host en minúsculas: sin esquema, puerto o ruta. Coincidencia exacta sin distinción de mayúsculas y minúsculas. Máximo 20 entradas de 128 caracteres cada una. |

86| `filesRead` | array of strings | {/* min-version: 2.1.153 */}Patrones Glob coincididos contra las rutas de archivos que Claude ha leído en esta sesión, por ejemplo `["**/*.tf"]`. Normalizado con barra diagonal y sin distinción de mayúsculas y minúsculas. Máximo 10 patrones de 256 caracteres cada uno. |86| `filesRead` | array of strings | Patrones Glob coincididos contra las rutas de archivos que Claude ha leído en esta sesión, por ejemplo `["**/*.tf"]`. Normalizado con barra diagonal y sin distinción de mayúsculas y minúsculas. Máximo 10 patrones de 256 caracteres cada uno. |

87| `manifestDeps` | array of objects | Dependencias declaradas en manifiestos de paquetes que Claude ha leído en esta sesión. Cada entrada es `{ "file": "...", "pattern": "..." }`, donde `file` es una expresión regular coincidida contra la ruta del archivo de manifiesto tal como se registra en el estado de la sesión, típicamente una ruta absoluta, y `pattern` es una expresión regular coincidida contra el contenido de ese archivo. Ancle `file` al final, por ejemplo `[/\\\\]package\\.json$` en forma escapada en JSON, porque un patrón anclado al inicio nunca coincide con una ruta absoluta. Las rutas no se normalizan de separador para esta señal, por lo que las rutas de Windows usan barras invertidas. Los archivos de manifiesto más grandes de 512 KB se omiten. Ambos valores son cadenas de fuente `RegExp` de JavaScript de como máximo 256 caracteres. `file` coincide sin distinción de mayúsculas y minúsculas. `pattern` distingue mayúsculas y minúsculas. Máximo 10 entradas. |87| `manifestDeps` | array of objects | Dependencias declaradas en manifiestos de paquetes que Claude ha leído en esta sesión. Cada entrada es `{ "file": "...", "pattern": "..." }`, donde `file` es una expresión regular coincidida contra la ruta del archivo de manifiesto tal como se registra en el estado de la sesión, típicamente una ruta absoluta, y `pattern` es una expresión regular coincidida contra el contenido de ese archivo. Ancle `file` al final, por ejemplo `[/\\\\]package\\.json$` en forma escapada en JSON, porque un patrón anclado al inicio nunca coincide con una ruta absoluta. Las rutas no se normalizan de separador para esta señal, por lo que las rutas de Windows usan barras invertidas. Los archivos de manifiesto más grandes de 512 KB se omiten. Ambos valores son cadenas de fuente `RegExp` de JavaScript de como máximo 256 caracteres. `file` coincide sin distinción de mayúsculas y minúsculas. `pattern` distingue mayúsculas y minúsculas. Máximo 10 entradas. |

88 88 

89Las señales `cli`, `hosts`, `filesRead` y `manifestDeps` necesitan historial de sesión, por lo que solo pueden coincidir en la sugerencia de spinner y la pestaña Discover. Solo `cwd` puede coincidir al inicio de la sesión. Las señales `filesRead` y `manifestDeps` prueban el estado de archivo registrado de la sesión, que también incluye archivos que Claude ha escrito o editado y archivos de memoria `CLAUDE.md` cargados automáticamente.89Las señales `cli`, `hosts`, `filesRead` y `manifestDeps` necesitan historial de sesión, por lo que solo pueden coincidir en la sugerencia de spinner y la pestaña Discover. Solo `cwd` puede coincidir al inicio de la sesión. Las señales `filesRead` y `manifestDeps` prueban el estado de archivo registrado de la sesión, que también incluye archivos que Claude ha escrito o editado y archivos de memoria `CLAUDE.md` cargados automáticamente.


116 Habilitar sugerencias en la configuración administrada116 Habilitar sugerencias en la configuración administrada

117</h2>117</h2>

118 118 

119Declarar `relevance` en `marketplace.json` no es suficiente por sí solo. Un administrador debe incluir el marketplace en la lista de permitidos en [configuración administrada](/es/settings#settings-files) antes de que sus sugerencias aparezcan a los usuarios.119Declarar `relevance` en `marketplace.json` no es suficiente por sí solo. Un administrador debe incluir el marketplace en la lista de permitidos en [configuración administrada](/docs/es/settings#settings-files) antes de que sus sugerencias aparezcan a los usuarios.

120 120 

121Agregue el nombre del marketplace a `pluginSuggestionMarketplaces`. Para cualquier marketplace que no sea el marketplace oficial de Anthropic, también declare la fuente del marketplace en la misma configuración administrada, ya sea como entrada de ese nombre en `extraKnownMarketplaces` o como entrada en `strictKnownMarketplaces`. El nombre incluido en la lista de permitidos se ignora si el marketplace registrado en la máquina proviene de una fuente diferente. Esto evita que una fuente no relacionada se registre bajo un nombre incluido en la lista de permitidos para que sus plugins se sugieran en toda su organización.121Agregue el nombre del marketplace a `pluginSuggestionMarketplaces`. Para cualquier marketplace que no sea el marketplace oficial de Anthropic, también declare la fuente del marketplace en la misma configuración administrada, ya sea como entrada de ese nombre en `extraKnownMarketplaces` o como entrada en `strictKnownMarketplaces`. El nombre incluido en la lista de permitidos se ignora si el marketplace registrado en la máquina proviene de una fuente diferente. Esto evita que una fuente no relacionada se registre bajo un nombre incluido en la lista de permitidos para que sus plugins se sugieran en toda su organización.

122 122 


144}144}

145```145```

146 146 

147Consulte la [referencia de configuración](/es/settings) para `pluginSuggestionMarketplaces` y [`extraKnownMarketplaces`](/es/settings#extraknownmarketplaces) para obtener detalles de configuración completos.147Consulte la [referencia de configuración](/docs/es/settings) para `pluginSuggestionMarketplaces` y [`extraKnownMarketplaces`](/docs/es/settings#extraknownmarketplaces) para obtener detalles de configuración completos.

148 148 

149<h2 id="what-the-user-sees">149<h2 id="what-the-user-sees">

150 Lo que ve el usuario150 Lo que ve el usuario


165 165 

166La sugerencia de un plugin determinado aparece como máximo una vez cada tres sesiones en la sugerencia de spinner y la notificación de inicio de sesión combinadas, y ninguna se repite una vez que el plugin está instalado. La notificación de inicio de sesión además deja de aparecer después de que la sugerencia se ha mostrado dos veces.166La sugerencia de un plugin determinado aparece como máximo una vez cada tres sesiones en la sugerencia de spinner y la notificación de inicio de sesión combinadas, y ninguna se repite una vez que el plugin está instalado. La notificación de inicio de sesión además deja de aparecer después de que la sugerencia se ha mostrado dos veces.

167 167 

168{/* min-version: 2.1.154 */}En la pestaña Discover de `/plugin`, el plugin se fija encima de los otros resultados con una anotación que nombra la señal coincidente, como `suggested for this directory` o `suggested for terraform commands`. La pestaña Discover fija un plugin determinado una vez; las visitas posteriores lo enumeran en orden normal. El pin de la pestaña Discover requiere Claude Code v2.1.154 o posterior. En v2.1.152 solo aparece la sugerencia de spinner; la notificación de inicio de sesión se agrega en v2.1.153.168En la pestaña Discover de `/plugin`, el plugin se fija encima de los otros resultados con una anotación que nombra la señal coincidente, como `suggested for this directory` o `suggested for terraform commands`. La pestaña Discover fija un plugin determinado una vez; las visitas posteriores lo enumeran en orden normal. El pin de la pestaña Discover requiere Claude Code v2.1.154 o posterior. En v2.1.152 solo aparece la sugerencia de spinner; la notificación de inicio de sesión se agrega en v2.1.153.

169 169 

170<h2 id="validate-your-marketplace">170<h2 id="validate-your-marketplace">

171 Validar su marketplace171 Validar su marketplace


183 Véase también183 Véase también

184</h2>184</h2>

185 185 

186* [Crear y distribuir un marketplace de plugins](/es/plugin-marketplaces): construya el marketplace que aloja sus plugins186* [Crear y distribuir un marketplace de plugins](/docs/es/plugin-marketplaces): construya el marketplace que aloja sus plugins

187* [Recomendar su plugin desde su CLI](/es/plugin-hints): solicite a los usuarios desde su propia CLI en lugar de desde las señales de sesión de Claude Code187* [Recomendar su plugin desde su CLI](/docs/es/plugin-hints): solicite a los usuarios desde su propia CLI en lugar de desde las señales de sesión de Claude Code

188* [Configuración](/es/settings): referencia completa para `pluginSuggestionMarketplaces` y `extraKnownMarketplaces`188* [Configuración](/docs/es/settings): referencia completa para `pluginSuggestionMarketplaces` y `extraKnownMarketplaces`

Details

515| Campo | Tipo | Descripción | Ejemplo |515| Campo | Tipo | Descripción | Ejemplo |

516| :--------------- | :------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :---------------------------------------------------------------- |516| :--------------- | :------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :---------------------------------------------------------------- |

517| `$schema` | string | URL del esquema JSON para autocompletado y validación del editor. Claude Code ignora este campo en el momento de la carga. | `"https://json.schemastore.org/claude-code-plugin-manifest.json"` |517| `$schema` | string | URL del esquema JSON para autocompletado y validación del editor. Claude Code ignora este campo en el momento de la carga. | `"https://json.schemastore.org/claude-code-plugin-manifest.json"` |

518| `displayName` | string | {/* min-version: 2.1.143 */}Nombre legible por humanos mostrado en el selector `/plugin` y otras superficies de interfaz de usuario. Recurre a `name` cuando se omite. A diferencia de `name`, puede contener espacios y cualquier capitalización. No se utiliza para espacios de nombres o búsqueda. Requiere Claude Code v2.1.143 o posterior. | `"Deployment Tools"` |518| `displayName` | string | Nombre legible por humanos mostrado en el selector `/plugin` y otras superficies de interfaz de usuario. Recurre a `name` cuando se omite. A diferencia de `name`, puede contener espacios y cualquier capitalización. No se utiliza para espacios de nombres o búsqueda. Requiere Claude Code v2.1.143 o posterior. | `"Deployment Tools"` |

519| `version` | string | Opcional. Versión semántica. Establecer esto fija el plugin a esa cadena de versión, por lo que los usuarios solo reciben actualizaciones cuando la incrementa. Si se omite, Claude Code recurre al SHA del commit de git, por lo que cada commit se trata como una nueva versión. Si también se establece en la entrada del marketplace, `plugin.json` gana. Consulte [Gestión de versiones](#version-management). | `"2.1.0"` |519| `version` | string | Opcional. Versión semántica. Establecer esto fija el plugin a esa cadena de versión, por lo que los usuarios solo reciben actualizaciones cuando la incrementa. Si se omite, Claude Code recurre al SHA del commit de git, por lo que cada commit se trata como una nueva versión. Si también se establece en la entrada del marketplace, `plugin.json` gana. Consulte [Gestión de versiones](#version-management). | `"2.1.0"` |

520| `description` | string | Explicación breve del propósito del plugin | `"Deployment automation tools"` |520| `description` | string | Explicación breve del propósito del plugin | `"Deployment automation tools"` |

521| `author` | object | Información del autor | `{"name": "Dev Team", "email": "dev@company.com"}` |521| `author` | object | Información del autor | `{"name": "Dev Team", "email": "dev@company.com"}` |


523| `repository` | string | URL del código fuente | `"https://github.com/user/plugin"` |523| `repository` | string | URL del código fuente | `"https://github.com/user/plugin"` |

524| `license` | string | Identificador de licencia | `"MIT"`, `"Apache-2.0"` |524| `license` | string | Identificador de licencia | `"MIT"`, `"Apache-2.0"` |

525| `keywords` | array | Etiquetas de descubrimiento | `["deployment", "ci-cd"]` |525| `keywords` | array | Etiquetas de descubrimiento | `["deployment", "ci-cd"]` |

526| `defaultEnabled` | boolean | {/* min-version: 2.1.154 */}Si el plugin se inicia en un estado habilitado cuando el usuario no ha establecido uno. Predeterminado a `true`. Consulte [Habilitación predeterminada](#default-enablement). Requiere Claude Code v2.1.154 o posterior. | `false` |526| `defaultEnabled` | boolean | Si el plugin se inicia en un estado habilitado cuando el usuario no ha establecido uno. Predeterminado a `true`. Consulte [Habilitación predeterminada](#default-enablement). Requiere Claude Code v2.1.154 o posterior. | `false` |

527 527 

528<h3 id="default-enablement">528<h3 id="default-enablement">

529 Habilitación predeterminada529 Habilitación predeterminada


612 612 

613Antes de v2.1.207, estos campos sustituían valores `${user_config.KEY}`; actualice los plugins que dependían de esto.613Antes de v2.1.207, estos campos sustituían valores `${user_config.KEY}`; actualice los plugins que dependían de esto.

614 614 

615Los valores no sensibles se almacenan bajo la clave [`pluginConfigs`](/docs/es/settings#pluginconfigs) en `settings.json` como `pluginConfigs[<plugin-id>].options`. {/* min-version: 2.1.207 */}Claude Code escribe la clave en la configuración del usuario y la lee desde la configuración del usuario, la bandera `--settings` y la configuración administrada solo; las entradas en `.claude/settings.json` o `.claude/settings.local.json` de un proyecto se ignoran. Antes de v2.1.207, Claude Code también leía la configuración del proyecto y local.615Los valores no sensibles se almacenan bajo la clave [`pluginConfigs`](/docs/es/settings#pluginconfigs) en `settings.json` como `pluginConfigs[<plugin-id>].options`. Claude Code escribe la clave en la configuración del usuario y la lee desde la configuración del usuario, la bandera `--settings` y la configuración administrada solo; las entradas en `.claude/settings.json` o `.claude/settings.local.json` de un proyecto se ignoran. Antes de v2.1.207, Claude Code también leía la configuración del proyecto y local.

616 616 

617Los valores sensibles van al Keychain de macOS, o a `~/.claude/.credentials.json` en plataformas donde no hay un keychain soportado disponible. El almacenamiento en keychain se comparte con tokens OAuth y tiene un límite total aproximado de 2 KB, así que mantenga los valores sensibles pequeños.617Los valores sensibles van al Keychain de macOS, o a `~/.claude/.credentials.json` en plataformas donde no hay un keychain soportado disponible. El almacenamiento en keychain se comparte con tokens OAuth y tiene un límite total aproximado de 2 KB, así que mantenga los valores sensibles pequeños.

618 618 

Details

116 116 

117La excepción es un plugin que proporciona [servidores MCP](/docs/es/plugins-reference#mcp-servers). Habilitar o deshabilitar uno sigue las mismas reglas que [conectar o desconectar un servidor MCP](#connecting-or-disconnecting-an-mcp-server): el caché sobrevive cuando las herramientas del servidor se difieren, y la siguiente solicitud vuelve a leer toda la conversación cuando se cargan en el prefijo.117La excepción es un plugin que proporciona [servidores MCP](/docs/es/plugins-reference#mcp-servers). Habilitar o deshabilitar uno sigue las mismas reglas que [conectar o desconectar un servidor MCP](#connecting-or-disconnecting-an-mcp-server): el caché sobrevive cuando las herramientas del servidor se difieren, y la siguiente solicitud vuelve a leer toda la conversación cuando se cargan en el prefijo.

118 118 

119Los cambios de plugin se aplican cuando ejecuta [`/reload-plugins`](/docs/es/discover-plugins#apply-plugin-changes-without-restarting) o inicia una nueva sesión. El costo, ya sean anuncios añadidos o una relectura completa, se muestra en el primer turno después de la recarga, no cuando ejecuta `/plugin install`, `/plugin enable`, o `/plugin disable`. {/* min-version: 2.1.163 */}A partir de v2.1.163, cuando una recarga activaría la relectura completa, `/reload-plugins` muestra una advertencia y no aplica la recarga. Pase `--force` para aplicar de todas formas.119Los cambios de plugin se aplican cuando ejecuta [`/reload-plugins`](/docs/es/discover-plugins#apply-plugin-changes-without-restarting) o inicia una nueva sesión. El costo, ya sean anuncios añadidos o una relectura completa, se muestra en el primer turno después de la recarga, no cuando ejecuta `/plugin install`, `/plugin enable`, o `/plugin disable`. A partir de v2.1.163, cuando una recarga activaría la relectura completa, `/reload-plugins` muestra una advertencia y no aplica la recarga. Pase `--force` para aplicar de todas formas.

120 120 

121Deshabilitar un plugin que habilitó anteriormente en la sesión restaura la forma de solicitud anterior. Si ese prefijo aún está dentro de su [vida útil de caché](#cache-lifetime), la siguiente solicitud lee la entrada de caché más antigua en lugar de reconstruir.121Deshabilitar un plugin que habilitó anteriormente en la sesión restaura la forma de solicitud anterior. Si ese prefijo aún está dentro de su [vida útil de caché](#cache-lifetime), la siguiente solicitud lee la entrada de caché más antigua en lugar de reconstruir.

122 122 

remote-control.md +38 −38

Details

14 14 

15Cuando inicia una sesión de Remote Control en su máquina, Claude sigue ejecutándose localmente todo el tiempo, por lo que su ejecución de código y acceso al sistema de archivos permanecen en su máquina. Con Remote Control puede:15Cuando inicia una sesión de Remote Control en su máquina, Claude sigue ejecutándose localmente todo el tiempo, por lo que su ejecución de código y acceso al sistema de archivos permanecen en su máquina. Con Remote Control puede:

16 16 

17* **Usar su entorno local completo de forma remota**: su sistema de archivos, [MCP servers](/es/mcp), herramientas y configuración del proyecto permanecen disponibles, y escribir `@` completa automáticamente las rutas de archivo de su proyecto local17* **Usar su entorno local completo de forma remota**: su sistema de archivos, [MCP servers](/docs/es/mcp), herramientas y configuración del proyecto permanecen disponibles, y escribir `@` completa automáticamente las rutas de archivo de su proyecto local

18* **Trabajar desde ambas superficies a la vez**: la conversación y el progreso de [subagentes](/es/sub-agents) y [flujos de trabajo dinámicos](/es/workflows) se mantienen sincronizados en todos los dispositivos conectados, por lo que puede enviar mensajes desde su terminal, navegador y teléfono indistintamente. {/* min-version: 2.1.207 */}Antes de v2.1.207, las sesiones alojadas por la [aplicación de escritorio](/es/desktop) no enviaban el progreso de subagentes o flujos de trabajo a los dispositivos conectados.18* **Trabajar desde ambas superficies a la vez**: la conversación y el progreso de [subagentes](/docs/es/sub-agents) y [flujos de trabajo dinámicos](/docs/es/workflows) se mantienen sincronizados en todos los dispositivos conectados, por lo que puede enviar mensajes desde su terminal, navegador y teléfono indistintamente. Antes de v2.1.207, las sesiones alojadas por la [aplicación de escritorio](/docs/es/desktop) no enviaban el progreso de subagentes o flujos de trabajo a los dispositivos conectados.

19* **Enviar imágenes y archivos desde su teléfono o navegador**: cuando agrega un archivo adjunto en la aplicación Claude o en claude.ai/code, Claude Code lo descarga a su máquina y lo pasa a Claude como una referencia de archivo `@`, con o sin un título. {/* min-version: 2.1.202 */}Antes de v2.1.202, Claude Code podría descartar un archivo adjunto enviado sin un título antes de que llegara a la sesión.19* **Enviar imágenes y archivos desde su teléfono o navegador**: cuando agrega un archivo adjunto en la aplicación Claude o en claude.ai/code, Claude Code lo descarga a su máquina y lo pasa a Claude como una referencia de archivo `@`, con o sin un título. Antes de v2.1.202, Claude Code podría descartar un archivo adjunto enviado sin un título antes de que llegara a la sesión.

20* **Sobrevivir a interrupciones**: si su portátil se duerme o su red se cae, la sesión se reconecta automáticamente cuando su máquina vuelve a estar en línea. Claude Code pone en cola las actualizaciones de estado de subagentes y flujos de trabajo mientras se reconstruye la conexión y las entrega una vez que se recupera. {/* min-version: 2.1.207 */}Antes de v2.1.207, una actualización enviada durante una reconexión o actualización de credenciales podría perderse, por lo que el dispositivo conectado seguía mostrando una tarea terminada como en ejecución.20* **Sobrevivir a interrupciones**: si su portátil se duerme o su red se cae, la sesión se reconecta automáticamente cuando su máquina vuelve a estar en línea. Claude Code pone en cola las actualizaciones de estado de subagentes y flujos de trabajo mientras se reconstruye la conexión y las entrega una vez que se recupera. Antes de v2.1.207, una actualización enviada durante una reconexión o actualización de credenciales podría perderse, por lo que el dispositivo conectado seguía mostrando una tarea terminada como en ejecución.

21 21 

22A diferencia de [Claude Code en la web](/es/claude-code-on-the-web), que se ejecuta en infraestructura en la nube, las sesiones de Remote Control se ejecutan directamente en su máquina e interactúan con su sistema de archivos local. Las interfaces web y móvil son una ventana a esa sesión local.22A diferencia de [Claude Code en la web](/docs/es/claude-code-on-the-web), que se ejecuta en infraestructura en la nube, las sesiones de Remote Control se ejecutan directamente en su máquina e interactúan con su sistema de archivos local. Las interfaces web y móvil son una ventana a esa sesión local.

23 23 

24Esta página cubre la configuración, cómo iniciar y conectarse a sesiones, y cómo Remote Control se compara con Claude Code en la web.24Esta página cubre la configuración, cómo iniciar y conectarse a sesiones, y cómo Remote Control se compara con Claude Code en la web.

25 25 


31 31 

32* **Suscripción**: disponible en planes Pro, Max, Team y Enterprise. Las claves API no son compatibles. En Team y Enterprise, un propietario debe habilitar primero el botón de alternancia de Remote Control en [configuración de administración de Claude Code](https://claude.ai/admin-settings/claude-code).32* **Suscripción**: disponible en planes Pro, Max, Team y Enterprise. Las claves API no son compatibles. En Team y Enterprise, un propietario debe habilitar primero el botón de alternancia de Remote Control en [configuración de administración de Claude Code](https://claude.ai/admin-settings/claude-code).

33* **Autenticación**: ejecute `claude` y use `/login` para iniciar sesión a través de claude.ai si aún no lo ha hecho.33* **Autenticación**: ejecute `claude` y use `/login` para iniciar sesión a través de claude.ai si aún no lo ha hecho.

34* **Punto final de API**: no disponible en Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry. {/* min-version: 2.1.196 */}A partir de v2.1.196, Remote Control también se deshabilita cuando [`ANTHROPIC_BASE_URL`](/es/env-vars) apunta a un host distinto de `api.anthropic.com`, como una [puerta de enlace LLM](/es/llm-gateway) o proxy. Desactive la variable para usar Remote Control.34* **Punto final de API**: no disponible en Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry. A partir de v2.1.196, Remote Control también se deshabilita cuando [`ANTHROPIC_BASE_URL`](/docs/es/env-vars) apunta a un host distinto de `api.anthropic.com`, como una [puerta de enlace LLM](/docs/es/llm-gateway) o proxy. Desactive la variable para usar Remote Control.

35* **Confianza del espacio de trabajo**: ejecute `claude` en su directorio de proyecto al menos una vez para aceptar el diálogo de confianza del espacio de trabajo.35* **Confianza del espacio de trabajo**: ejecute `claude` en su directorio de proyecto al menos una vez para aceptar el diálogo de confianza del espacio de trabajo.

36 36 

37<h2 id="start-a-remote-control-session">37<h2 id="start-a-remote-control-session">


56 | ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |56 | ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

57 | `--name "My Project"` | Establezca un título de sesión personalizado visible en la lista de sesiones en claude.ai/code. |57 | `--name "My Project"` | Establezca un título de sesión personalizado visible en la lista de sesiones en claude.ai/code. |

58 | `--remote-control-session-name-prefix <prefix>` | Prefijo para nombres de sesión generados automáticamente cuando no se establece un nombre explícito. El valor predeterminado es el nombre de host de su máquina, produciendo nombres como `myhost-graceful-unicorn`. Establezca `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` para el mismo efecto. |58 | `--remote-control-session-name-prefix <prefix>` | Prefijo para nombres de sesión generados automáticamente cuando no se establece un nombre explícito. El valor predeterminado es el nombre de host de su máquina, produciendo nombres como `myhost-graceful-unicorn`. Establezca `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` para el mismo efecto. |

59 | `-c`, `--continue` | {/* min-version: 2.1.200 */}Reanude la sesión de Remote Control más reciente iniciada desde este directorio en lugar de crear una nueva. No se puede combinar con `--session-id`, `--spawn`, `--capacity`, o `--create-session-in-dir`. Requiere Claude Code v2.1.200 o posterior; las versiones anteriores rechazan la bandera como un argumento desconocido. |59 | `-c`, `--continue` | Reanude la sesión de Remote Control más reciente iniciada desde este directorio en lugar de crear una nueva. No se puede combinar con `--session-id`, `--spawn`, `--capacity`, o `--create-session-in-dir`. Requiere Claude Code v2.1.200 o posterior; las versiones anteriores rechazan la bandera como un argumento desconocido. |

60 | `--session-id <id>` | {/* min-version: 2.1.200 */}Reanude una sesión de Remote Control específica por su ID. No se puede combinar con `--continue`, `--spawn`, `--capacity`, o `--create-session-in-dir`. Requiere Claude Code v2.1.200 o posterior; las versiones anteriores rechazan la bandera como un argumento desconocido. |60 | `--session-id <id>` | Reanude una sesión de Remote Control específica por su ID. No se puede combinar con `--continue`, `--spawn`, `--capacity`, o `--create-session-in-dir`. Requiere Claude Code v2.1.200 o posterior; las versiones anteriores rechazan la bandera como un argumento desconocido. |

61 | `--spawn <mode>` | Cómo el servidor crea sesiones.<br />• `same-dir` (predeterminado): todas las sesiones comparten el directorio de trabajo actual, por lo que pueden entrar en conflicto si editan los mismos archivos.<br />• `worktree`: cada sesión bajo demanda obtiene su propio [git worktree](/es/worktrees). Requiere un repositorio git.<br />• `session`: modo de sesión única. Sirve exactamente una sesión y rechaza conexiones adicionales. Se establece solo al inicio.<br />Presione `w` en tiempo de ejecución para alternar entre `same-dir` y `worktree`. |61 | `--spawn <mode>` | Cómo el servidor crea sesiones.<br />• `same-dir` (predeterminado): todas las sesiones comparten el directorio de trabajo actual, por lo que pueden entrar en conflicto si editan los mismos archivos.<br />• `worktree`: cada sesión bajo demanda obtiene su propio [git worktree](/docs/es/worktrees). Requiere un repositorio git.<br />• `session`: modo de sesión única. Sirve exactamente una sesión y rechaza conexiones adicionales. Se establece solo al inicio.<br />Presione `w` en tiempo de ejecución para alternar entre `same-dir` y `worktree`. |

62 | `--capacity <N>` | Número máximo de sesiones concurrentes. El valor predeterminado es 32. No se puede usar con `--spawn=session`. |62 | `--capacity <N>` | Número máximo de sesiones concurrentes. El valor predeterminado es 32. No se puede usar con `--spawn=session`. |

63 | `--[no-]create-session-in-dir` | Pre-crear una sesión en el directorio actual cuando el servidor se inicia, para que tenga un lugar donde escribir inmediatamente. En modo `worktree` esta sesión permanece en el directorio actual mientras las sesiones bajo demanda obtienen worktrees aislados. Habilitado de forma predeterminada; pase `--no-create-session-in-dir` para comenzar sin ninguno. |63 | `--[no-]create-session-in-dir` | Pre-crear una sesión en el directorio actual cuando el servidor se inicia, para que tenga un lugar donde escribir inmediatamente. En modo `worktree` esta sesión permanece en el directorio actual mientras las sesiones bajo demanda obtienen worktrees aislados. Habilitado de forma predeterminada; pase `--no-create-session-in-dir` para comenzar sin ninguno. |

64 | `--verbose` | Mostrar registros detallados de conexión y sesión. |64 | `--verbose` | Mostrar registros detallados de conexión y sesión. |

65 | `--sandbox` / `--no-sandbox` | Habilitar o deshabilitar [sandboxing](/es/sandboxing) para aislamiento del sistema de archivos y red. Deshabilitado de forma predeterminada. |65 | `--sandbox` / `--no-sandbox` | Habilitar o deshabilitar [sandboxing](/docs/es/sandboxing) para aislamiento del sistema de archivos y red. Deshabilitado de forma predeterminada. |

66 </Tab>66 </Tab>

67 67 

68 <Tab title="Sesión interactiva">68 <Tab title="Sesión interactiva">


100 </Tab>100 </Tab>

101 101 

102 <Tab title="VS Code">102 <Tab title="VS Code">

103 En la [extensión de VS Code de Claude Code](/es/vs-code), escriba `/remote-control` o `/rc` en el cuadro de solicitud, o abra el menú de comandos con `/` y selecciónelo.103 En la [extensión de VS Code de Claude Code](/docs/es/vs-code), escriba `/remote-control` o `/rc` en el cuadro de solicitud, o abra el menú de comandos con `/` y selecciónelo.

104 104 

105 ```text theme={null}105 ```text theme={null}

106 /remote-control106 /remote-control


132* **Escanee el código QR** que se muestra junto a la URL de la sesión para abrirlo directamente en la aplicación Claude. Con `claude remote-control`, presione la barra espaciadora para alternar la visualización del código QR.132* **Escanee el código QR** que se muestra junto a la URL de la sesión para abrirlo directamente en la aplicación Claude. Con `claude remote-control`, presione la barra espaciadora para alternar la visualización del código QR.

133* **Abra [claude.ai/code](https://claude.ai/code) o la aplicación Claude** y encuentre la sesión por nombre en la lista de sesiones. En la aplicación móvil Claude, toque **Code** en la navegación para llegar a la lista de sesiones. Las sesiones de Remote Control muestran un icono de computadora con un punto de estado verde cuando están en línea.133* **Abra [claude.ai/code](https://claude.ai/code) o la aplicación Claude** y encuentre la sesión por nombre en la lista de sesiones. En la aplicación móvil Claude, toque **Code** en la navegación para llegar a la lista de sesiones. Las sesiones de Remote Control muestran un icono de computadora con un punto de estado verde cuando están en línea.

134 134 

135Cuando se conecta, el dispositivo muestra cualquier subagenteagente y flujo de trabajo que la sesión ya tenga ejecutándose en segundo plano. {/* min-version: 2.1.208 */}Antes de v2.1.208, un dispositivo que se conectaba a una sesión alojada en un terminal interactivo no mostraba subagenteagentes y flujos de trabajo que ya estaban ejecutándose hasta que uno de ellos se iniciaba o detenía.135Cuando se conecta, el dispositivo muestra cualquier subagenteagente y flujo de trabajo que la sesión ya tenga ejecutándose en segundo plano. Antes de v2.1.208, un dispositivo que se conectaba a una sesión alojada en un terminal interactivo no mostraba subagenteagentes y flujos de trabajo que ya estaban ejecutándose hasta que uno de ellos se iniciaba o detenía.

136 136 

137El título de la sesión remota se elige en este orden:137El título de la sesión remota se elige en este orden:

138 138 


1413. El último mensaje significativo en el historial de conversación existente1413. El último mensaje significativo en el historial de conversación existente

1424. Un nombre generado automáticamente como `myhost-graceful-unicorn`, donde `myhost` es el nombre de host de su máquina o el prefijo que estableció con `--remote-control-session-name-prefix`1424. Un nombre generado automáticamente como `myhost-graceful-unicorn`, donde `myhost` es el nombre de host de su máquina o el prefijo que estableció con `--remote-control-session-name-prefix`

143 143 

144Si no estableció un nombre explícito, el título se actualiza para reflejar su solicitud una vez que envíe una. {/* min-version: 2.1.176 */}A partir de Claude Code v2.1.176, los títulos generados automáticamente coinciden con el idioma de su conversación, o la configuración [`language`](/es/settings#available-settings) si una está configurada. Renombrar una sesión desde claude.ai o la aplicación Claude también actualiza el título local que se muestra en `claude --resume`.144Si no estableció un nombre explícito, el título se actualiza para reflejar su solicitud una vez que envíe una. A partir de Claude Code v2.1.176, los títulos generados automáticamente coinciden con el idioma de su conversación, o la configuración [`language`](/docs/es/settings#available-settings) si una está configurada. Renombrar una sesión desde claude.ai o la aplicación Claude también actualiza el título local que se muestra en `claude --resume`.

145 145 

146Si el entorno ya tiene una sesión activa, se le preguntará si desea continuarla o iniciar una nueva.146Si el entorno ya tiene una sesión activa, se le preguntará si desea continuarla o iniciar una nueva.

147 147 


151 Habilite Remote Control para todas las sesiones151 Habilite Remote Control para todas las sesiones

152</h3>152</h3>

153 153 

154Remote Control solo se activa cuando ejecuta explícitamente `claude remote-control`, `claude --remote-control`, o `/remote-control`, a menos que la conexión automática esté activada. Para habilitarlo automáticamente para cada sesión interactiva, ejecute `/config` dentro de Claude Code y establezca **Enable Remote Control for all sessions** en `true`. Establézcalo en `false` para nunca conectarse automáticamente, o déjelo sin establecer para seguir el valor predeterminado de su organización. En la aplicación de escritorio, también puede alternar esto desde **Settings → Claude Code → Enable remote control by default**. {/* min-version: 2.1.203 */}En la [extensión de VS Code](/es/vs-code#use-the-prompt-box), el mismo botón de alternancia aparece como **Enable Remote Control for all sessions** en la sección Configuración del menú de comandos; requiere Claude Code v2.1.203 o posterior.154Remote Control solo se activa cuando ejecuta explícitamente `claude remote-control`, `claude --remote-control`, o `/remote-control`, a menos que la conexión automática esté activada. Para habilitarlo automáticamente para cada sesión interactiva, ejecute `/config` dentro de Claude Code y establezca **Enable Remote Control for all sessions** en `true`. Establézcalo en `false` para nunca conectarse automáticamente, o déjelo sin establecer para seguir el valor predeterminado de su organización. En la aplicación de escritorio, también puede alternar esto desde **Settings → Claude Code → Enable remote control by default**. En la [extensión de VS Code](/docs/es/vs-code#use-the-prompt-box), el mismo botón de alternancia aparece como **Enable Remote Control for all sessions** en la sección Configuración del menú de comandos; requiere Claude Code v2.1.203 o posterior.

155 155 

156Con esta configuración activada, cada proceso interactivo de Claude Code registra una sesión remota. Si ejecuta varias instancias, cada una obtiene su propio entorno y sesión. Para ejecutar varias sesiones concurrentes desde un único proceso, use el [modo servidor](#start-a-remote-control-session) en su lugar.156Con esta configuración activada, cada proceso interactivo de Claude Code registra una sesión remota. Si ejecuta varias instancias, cada una obtiene su propio entorno y sesión. Para ejecutar varias sesiones concurrentes desde un único proceso, use el [modo servidor](#start-a-remote-control-session) en su lugar.

157 157 


163 163 

164Todo el tráfico viaja a través de la API de Anthropic sobre TLS, el mismo transporte de seguridad que cualquier sesión de Claude Code. La conexión utiliza múltiples credenciales de corta duración, cada una limitada a un único propósito y expirando de forma independiente.164Todo el tráfico viaja a través de la API de Anthropic sobre TLS, el mismo transporte de seguridad que cualquier sesión de Claude Code. La conexión utiliza múltiples credenciales de corta duración, cada una limitada a un único propósito y expirando de forma independiente.

165 165 

166Mientras Remote Control está conectado, la transcripción de la sesión, incluidos sus mensajes, las respuestas de Claude y la actividad de herramientas, se almacena en los servidores de Anthropic. La transcripción almacenada mantiene la conversación sincronizada en todos sus dispositivos y permite que la sesión se reconecte después de una caída de red. La ejecución y el acceso al sistema de archivos permanecen en su máquina, y las transcripciones almacenadas se retienen bajo la política de [Uso de datos](/es/data-usage).166Mientras Remote Control está conectado, la transcripción de la sesión, incluidos sus mensajes, las respuestas de Claude y la actividad de herramientas, se almacena en los servidores de Anthropic. La transcripción almacenada mantiene la conversación sincronizada en todos sus dispositivos y permite que la sesión se reconecte después de una caída de red. La ejecución y el acceso al sistema de archivos permanecen en su máquina, y las transcripciones almacenadas se retienen bajo la política de [Uso de datos](/docs/es/data-usage).

167 167 

168Para desactivar Remote Control completamente, utilice la configuración [`disableRemoteControl`](/es/settings#available-settings). Las organizaciones con requisitos de cumplimiento como Retención Cero de Datos no pueden habilitar Remote Control.168Para desactivar Remote Control completamente, utilice la configuración [`disableRemoteControl`](/docs/es/settings#available-settings). Las organizaciones con requisitos de cumplimiento como Retención Cero de Datos no pueden habilitar Remote Control.

169 169 

170<h2 id="trusted-devices">170<h2 id="trusted-devices">

171 Dispositivos de confianza171 Dispositivos de confianza


234 Remote Control vs Claude Code en la web234 Remote Control vs Claude Code en la web

235</h2>235</h2>

236 236 

237Remote Control y [Claude Code en la web](/es/claude-code-on-the-web) ambos usan la interfaz claude.ai/code. La diferencia clave es dónde se ejecuta la sesión: Remote Control se ejecuta en su máquina, por lo que sus MCP servers locales, herramientas y configuración del proyecto permanecen disponibles. Claude Code en la web se ejecuta en infraestructura en la nube administrada por Anthropic.237Remote Control y [Claude Code en la web](/docs/es/claude-code-on-the-web) ambos usan la interfaz claude.ai/code. La diferencia clave es dónde se ejecuta la sesión: Remote Control se ejecuta en su máquina, por lo que sus MCP servers locales, herramientas y configuración del proyecto permanecen disponibles. Claude Code en la web se ejecuta en infraestructura en la nube administrada por Anthropic.

238 238 

239Use Remote Control cuando esté en medio del trabajo local y desee continuar desde otro dispositivo. Use Claude Code en la web cuando desee iniciar una tarea sin ninguna configuración local, trabajar en un repositorio que no tiene clonado, o ejecutar varias tareas en paralelo.239Use Remote Control cuando esté en medio del trabajo local y desee continuar desde otro dispositivo. Use Claude Code en la web cuando desee iniciar una tarea sin ninguna configuración local, trabajar en un repositorio que no tiene clonado, o ejecutar varias tareas en paralelo.

240 240 


272* En iOS, los modos Focus y los resúmenes de notificaciones pueden suprimir o retrasar los pushes. Verifique Configuración → Notificaciones → Claude.272* En iOS, los modos Focus y los resúmenes de notificaciones pueden suprimir o retrasar los pushes. Verifique Configuración → Notificaciones → Claude.

273* En Android, la optimización agresiva de batería puede retrasar la entrega. Exima la aplicación Claude de la optimización de batería en la configuración del sistema.273* En Android, la optimización agresiva de batería puede retrasar la entrega. Exima la aplicación Claude de la optimización de batería en la configuración del sistema.

274 274 

275Claude Code omite las notificaciones push móviles mientras usted está escribiendo o enfocado en la terminal conectada. {/* min-version: 2.1.181 */}A partir de v2.1.181, puede establecer [`CLAUDE_CLIENT_PRESENCE_FILE`](/es/env-vars) en una ruta de archivo marcador para extender esto a cualquier momento en que esté en la máquina, incluso en otra ventana: las notificaciones se omiten mientras el archivo existe. Configure un escucha de bloqueo de pantalla o una herramienta similar para crear el archivo cuando su pantalla se desbloquea y eliminarlo cuando su pantalla se bloquea.275Claude Code omite las notificaciones push móviles mientras usted está escribiendo o enfocado en la terminal conectada. A partir de v2.1.181, puede establecer [`CLAUDE_CLIENT_PRESENCE_FILE`](/docs/es/env-vars) en una ruta de archivo marcador para extender esto a cualquier momento en que esté en la máquina, incluso en otra ventana: las notificaciones se omiten mientras el archivo existe. Configure un escucha de bloqueo de pantalla o una herramienta similar para crear el archivo cuando su pantalla se desbloquea y eliminarlo cuando su pantalla se bloquea.

276 276 

277<h2 id="limitations">277<h2 id="limitations">

278 Limitaciones278 Limitaciones


281* **Una sesión remota por proceso interactivo**: fuera del modo servidor, cada instancia de Claude Code admite una sesión remota a la vez. Use el [modo servidor](#start-a-remote-control-session) para ejecutar varias sesiones concurrentes desde un único proceso.281* **Una sesión remota por proceso interactivo**: fuera del modo servidor, cada instancia de Claude Code admite una sesión remota a la vez. Use el [modo servidor](#start-a-remote-control-session) para ejecutar varias sesiones concurrentes desde un único proceso.

282* **El proceso local debe seguir ejecutándose**: Remote Control se ejecuta como un proceso local. Si cierra la terminal, cierra VS Code, o detiene el proceso `claude` de otra manera, la sesión finaliza.282* **El proceso local debe seguir ejecutándose**: Remote Control se ejecuta como un proceso local. Si cierra la terminal, cierra VS Code, o detiene el proceso `claude` de otra manera, la sesión finaliza.

283* **Interrupción de red extendida**: si su máquina está despierta pero no puede alcanzar la red durante más de aproximadamente 10 minutos, la sesión agota el tiempo de espera y el proceso se cierra. Ejecute `claude remote-control` nuevamente para iniciar una nueva sesión.283* **Interrupción de red extendida**: si su máquina está despierta pero no puede alcanzar la red durante más de aproximadamente 10 minutos, la sesión agota el tiempo de espera y el proceso se cierra. Ejecute `claude remote-control` nuevamente para iniciar una nueva sesión.

284* **Ultraplan desconecta Remote Control**: iniciar una sesión de [ultraplan](/es/ultraplan) desconecta cualquier sesión de Remote Control activa porque ambas características ocupan la interfaz claude.ai/code y solo una puede estar conectada a la vez.284* **Ultraplan desconecta Remote Control**: iniciar una sesión de [ultraplan](/docs/es/ultraplan) desconecta cualquier sesión de Remote Control activa porque ambas características ocupan la interfaz claude.ai/code y solo una puede estar conectada a la vez.

285* **Algunos comandos son solo locales**: comandos que solo se ejecutan en la interfaz de terminal, como `/plugin` o `/resume`, funcionan solo desde la CLI local, independientemente de si pasa un argumento o no. Los siguientes funcionan desde móvil y web:285* **Algunos comandos son solo locales**: comandos que solo se ejecutan en la interfaz de terminal, como `/plugin` o `/resume`, funcionan solo desde la CLI local, independientemente de si pasa un argumento o no. Los siguientes funcionan desde móvil y web:

286 * Comandos de salida de texto: `/compact`, `/clear`, `/context`, `/usage`, `/exit`, `/usage-credits` (ejecuta el formulario de texto en lugar de abrir el diálogo en la CLI), `/recap`, `/reload-plugins`286 * Comandos de salida de texto: `/compact`, `/clear`, `/context`, `/usage`, `/exit`, `/usage-credits` (ejecuta el formulario de texto en lugar de abrir el diálogo en la CLI), `/recap`, `/reload-plugins`

287 * `/model`, `/effort`, `/fast`, `/color` y `/rename`: pase el valor como argumento, por ejemplo `/model sonnet` o `/effort high`. Desde móvil y web, `/model` y `/effort` toman el argumento en lugar del selector de terminal o deslizador.287 * `/model`, `/effort`, `/fast`, `/color` y `/rename`: pase el valor como argumento, por ejemplo `/model sonnet` o `/effort high`. Desde móvil y web, `/model` y `/effort` toman el argumento en lugar del selector de terminal o deslizador.

288 * {/* min-version: 2.1.166 */}`/mcp`, a partir de v2.1.166: desde la aplicación móvil, devuelve un resumen de texto del estado del servidor en lugar de abrir el selector. En la web, `/mcp` por sí solo abre un directorio de [conectores de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai) en lugar de devolver el resumen. Los [subcomandos](/es/commands#all-commands) `reconnect`, `enable` y `disable` funcionan desde ambos. A diferencia de la CLI local, `/mcp reconnect` sin nombre de servidor reconecta cada servidor que ha fallado o necesita autenticación.288 * `/mcp`, a partir de v2.1.166: desde la aplicación móvil, devuelve un resumen de texto del estado del servidor en lugar de abrir el selector. En la web, `/mcp` por sí solo abre un directorio de [conectores de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai) en lugar de devolver el resumen. Los [subcomandos](/docs/es/commands#all-commands) `reconnect`, `enable` y `disable` funcionan desde ambos. A diferencia de la CLI local, `/mcp reconnect` sin nombre de servidor reconecta cada servidor que ha fallado o necesita autenticación.

289 * {/* min-version: 2.1.181 */}`/config`, a partir de v2.1.181: desde la aplicación móvil, pase `key=value` para establecer una configuración, o ejecútelo sin argumentos para listar las claves que puede establecer. En la web, `/config` abre la sección Claude Code de su configuración en su lugar, e ignora el texto después del comando.289 * `/config`, a partir de v2.1.181: desde la aplicación móvil, pase `key=value` para establecer una configuración, o ejecútelo sin argumentos para listar las claves que puede establecer. En la web, `/config` abre la sección Claude Code de su configuración en su lugar, e ignora el texto después del comando.

290 290 

291<h2 id="troubleshooting">291<h2 id="troubleshooting">

292 Solución de problemas292 Solución de problemas


298 298 

299No está autenticado con una cuenta de claude.ai. Ejecute `claude auth login` y elija la opción de claude.ai. Si `ANTHROPIC_API_KEY` está configurado en su entorno, desactívelo primero.299No está autenticado con una cuenta de claude.ai. Ejecute `claude auth login` y elija la opción de claude.ai. Si `ANTHROPIC_API_KEY` está configurado en su entorno, desactívelo primero.

300 300 

301{/* min-version: 2.1.206 */}Antes de v2.1.206, ejecutar `/remote-control` mientras no estaba conectado reportaba `Unknown command: /remote-control` en lugar de este mensaje.301Antes de v2.1.206, ejecutar `/remote-control` mientras no estaba conectado reportaba `Unknown command: /remote-control` en lugar de este mensaje.

302 302 

303<h3 id="remote-control-requires-a-full-scope-login-token">303<h3 id="remote-control-requires-a-full-scope-login-token">

304 "Remote Control requires a full-scope login token"304 "Remote Control requires a full-scope login token"


328 "Remote Control is only available when using Claude via api.anthropic.com"328 "Remote Control is only available when using Claude via api.anthropic.com"

329</h3>329</h3>

330 330 

331La sesión no está hablando directamente con la API de Anthropic, por lo que no hay un backend de claude.ai para emparejar. Esto ocurre en Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry. {/* min-version: 2.1.196 */}A partir de v2.1.196 también ocurre cuando [`ANTHROPIC_BASE_URL`](/es/env-vars) apunta a un host distinto de `api.anthropic.com`, como una [puerta de enlace LLM](/es/llm-gateway) o proxy, incluso si inicia sesión con claude.ai. Desactive `ANTHROPIC_BASE_URL` y reinicie la sesión para usar Remote Control.331La sesión no está hablando directamente con la API de Anthropic, por lo que no hay un backend de claude.ai para emparejar. Esto ocurre en Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry. A partir de v2.1.196 también ocurre cuando [`ANTHROPIC_BASE_URL`](/docs/es/env-vars) apunta a un host distinto de `api.anthropic.com`, como una [puerta de enlace LLM](/docs/es/llm-gateway) o proxy, incluso si inicia sesión con claude.ai. Desactive `ANTHROPIC_BASE_URL` y reinicie la sesión para usar Remote Control.

332 332 

333<h3 id="remote-control-is-disabled-by-your-organization’s-policy">333<h3 id="remote-control-is-disabled-by-your-organization’s-policy">

334 "Remote Control is disabled by your organization's policy"334 "Remote Control is disabled by your organization's policy"


339* **Está autenticado con una clave API o cuenta de Console**: Remote Control requiere OAuth de claude.ai. Ejecute `/login` y elija la opción de claude.ai. Si `ANTHROPIC_API_KEY` está configurado en su entorno, desactívelo.339* **Está autenticado con una clave API o cuenta de Console**: Remote Control requiere OAuth de claude.ai. Ejecute `/login` y elija la opción de claude.ai. Si `ANTHROPIC_API_KEY` está configurado en su entorno, desactívelo.

340* **Un propietario no lo ha habilitado para su organización**: Remote Control está deshabilitado de forma predeterminada en los planes Team y Enterprise. Un propietario puede habilitarlo en [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) activando el botón de alternancia **Remote Control**. Este botón de alternancia es una configuración de organización del lado del servidor.340* **Un propietario no lo ha habilitado para su organización**: Remote Control está deshabilitado de forma predeterminada en los planes Team y Enterprise. Un propietario puede habilitarlo en [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code) activando el botón de alternancia **Remote Control**. Este botón de alternancia es una configuración de organización del lado del servidor.

341* **El botón de alternancia del administrador está atenuado**: su organización tiene una configuración de retención de datos o cumplimiento que es incompatible con Remote Control. Esto no se puede cambiar desde el panel de administración. Póngase en contacto con el soporte de Anthropic para discutir opciones.341* **El botón de alternancia del administrador está atenuado**: su organización tiene una configuración de retención de datos o cumplimiento que es incompatible con Remote Control. Esto no se puede cambiar desde el panel de administración. Póngase en contacto con el soporte de Anthropic para discutir opciones.

342* **El error menciona `disableRemoteControl`**: su administrador de TI ha deshabilitado Remote Control en este dispositivo a través de [configuración administrada](/es/settings#settings-files), independientemente del botón de alternancia de toda la organización.342* **El error menciona `disableRemoteControl`**: su administrador de TI ha deshabilitado Remote Control en este dispositivo a través de [configuración administrada](/docs/es/settings#settings-files), independientemente del botón de alternancia de toda la organización.

343 343 

344<h3 id="remote-credentials-fetch-failed">344<h3 id="remote-credentials-fetch-failed">

345 "Remote credentials fetch failed"345 "Remote credentials fetch failed"


365 365 

366Su sesión local continúa ejecutándose sin Remote Control. Ejecute `/remote-control` para reintentar la conexión, o inicie Claude Code sin `--resume` para crear una nueva sesión de Remote Control.366Su sesión local continúa ejecutándose sin Remote Control. Ejecute `/remote-control` para reintentar la conexión, o inicie Claude Code sin `--resume` para crear una nueva sesión de Remote Control.

367 367 

368{/* min-version: 2.1.200 */}Antes de v2.1.200, una falla de reconexión creaba una nueva sesión de Remote Control en lugar de mostrar este mensaje, lo que dejaba sesiones adicionales en la lista de sesiones en claude.ai/code.368Antes de v2.1.200, una falla de reconexión creaba una nueva sesión de Remote Control en lugar de mostrar este mensaje, lo que dejaba sesiones adicionales en la lista de sesiones en claude.ai/code.

369 369 

370<h3 id="your-organization-requires-trusted-devices-for-remote-control-but-this-device-is-not-enrolled">370<h3 id="your-organization-requires-trusted-devices-for-remote-control-but-this-device-is-not-enrolled">

371 "Your organization requires Trusted Devices for Remote Control, but this device is not enrolled"371 "Your organization requires Trusted Devices for Remote Control, but this device is not enrolled"


387 387 

388| | Trigger | Claude runs on | Setup | Best for |388| | Trigger | Claude runs on | Setup | Best for |

389| :--------------------------------------------- | :--------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------ |389| :--------------------------------------------- | :--------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------ |

390| [Dispatch](/en/desktop#sessions-from-dispatch) | Message a task from the Claude mobile app | Your machine (Desktop) | [Pair the mobile app with Desktop](https://support.claude.com/en/articles/13947068) | Delegating work while you're away, minimal setup |390| [Dispatch](/docs/en/desktop#sessions-from-dispatch) | Message a task from the Claude mobile app | Your machine (Desktop) | [Pair the mobile app with Desktop](https://support.claude.com/en/articles/13947068) | Delegating work while you're away, minimal setup |

391| [Remote Control](/en/remote-control) | Drive a running session from [claude.ai/code](https://claude.ai/code) or the Claude mobile app | Your machine (CLI or VS Code) | Run `claude remote-control` | Steering in-progress work from another device |391| [Remote Control](/docs/en/remote-control) | Drive a running session from [claude.ai/code](https://claude.ai/code) or the Claude mobile app | Your machine (CLI or VS Code) | Run `claude remote-control` | Steering in-progress work from another device |

392| [Channels](/en/channels) | Push events from a chat app like Telegram or Discord, or your own server | Your machine (CLI) | [Install a channel plugin](/en/channels#quickstart) or [build your own](/en/channels-reference) | Reacting to external events like CI failures or chat messages |392| [Channels](/docs/en/channels) | Push events from a chat app like Telegram or Discord, or your own server | Your machine (CLI) | [Install a channel plugin](/docs/en/channels#quickstart) or [build your own](/docs/en/channels-reference) | Reacting to external events like CI failures or chat messages |

393| [Slack](/en/slack) | Mention `@Claude` in a team channel | Anthropic cloud | [Install the Slack app](/en/slack#setting-up-claude-code-in-slack) with [Claude Code on the web](/en/claude-code-on-the-web) enabled | PRs and reviews from team chat |393| [Slack](/docs/en/slack) | Mention `@Claude` in a team channel | Anthropic cloud | [Install the Slack app](/docs/en/slack#setting-up-claude-code-in-slack) with [Claude Code on the web](/docs/en/claude-code-on-the-web) enabled | PRs and reviews from team chat |

394| [Scheduled tasks](/en/scheduled-tasks) | Set a schedule | [CLI](/en/scheduled-tasks), [Desktop](/en/desktop-scheduled-tasks), or [cloud](/en/routines) | Pick a frequency | Recurring automation like daily reviews |394| [Scheduled tasks](/docs/en/scheduled-tasks) | Set a schedule | [CLI](/docs/en/scheduled-tasks), [Desktop](/docs/en/desktop-scheduled-tasks), or [cloud](/docs/en/routines) | Pick a frequency | Recurring automation like daily reviews |

395 395 

396<h2 id="related-resources">396<h2 id="related-resources">

397 Recursos relacionados397 Recursos relacionados

398</h2>398</h2>

399 399 

400* [Claude Code en la web](/es/claude-code-on-the-web): ejecute sesiones en entornos en la nube administrados por Anthropic en lugar de en su máquina400* [Claude Code en la web](/docs/es/claude-code-on-the-web): ejecute sesiones en entornos en la nube administrados por Anthropic en lugar de en su máquina

401* [Ultraplan](/es/ultraplan): inicie una sesión de planificación en la nube desde su terminal y revise el plan en su navegador401* [Ultraplan](/docs/es/ultraplan): inicie una sesión de planificación en la nube desde su terminal y revise el plan en su navegador

402* [Channels](/es/channels): reenvíe Telegram, Discord o iMessage a una sesión para que Claude reaccione a los mensajes mientras está fuera402* [Channels](/docs/es/channels): reenvíe Telegram, Discord o iMessage a una sesión para que Claude reaccione a los mensajes mientras está fuera

403* [Dispatch](/es/desktop#sessions-from-dispatch): envíe un mensaje de una tarea desde su teléfono y puede generar una sesión de Desktop para manejarla403* [Dispatch](/docs/es/desktop#sessions-from-dispatch): envíe un mensaje de una tarea desde su teléfono y puede generar una sesión de Desktop para manejarla

404* [Autenticación](/es/authentication): configure `/login` y administre credenciales para claude.ai404* [Autenticación](/docs/es/authentication): configure `/login` y administre credenciales para claude.ai

405* [Referencia de CLI](/es/cli-reference): lista completa de banderas y comandos incluyendo `claude remote-control`405* [Referencia de CLI](/docs/es/cli-reference): lista completa de banderas y comandos incluyendo `claude remote-control`

406* [Seguridad](/es/security): cómo las sesiones de Remote Control se ajustan al modelo de seguridad de Claude Code406* [Seguridad](/docs/es/security): cómo las sesiones de Remote Control se ajustan al modelo de seguridad de Claude Code

407* [Uso de datos](/es/data-usage): qué datos fluyen a través de la API de Anthropic durante sesiones locales y remotas407* [Uso de datos](/docs/es/data-usage): qué datos fluyen a través de la API de Anthropic durante sesiones locales y remotas

sandboxing.md +44 −44

Details

9El sandbox de Bash permite que Claude ejecute la mayoría de comandos de shell sin detenerse para pedir permiso. En lugar de aprobar cada comando, usted define qué archivos y dominios de red pueden tocar los comandos, y el sistema operativo aplica ese límite para cada comando Bash y sus procesos secundarios.9El sandbox de Bash permite que Claude ejecute la mayoría de comandos de shell sin detenerse para pedir permiso. En lugar de aprobar cada comando, usted define qué archivos y dominios de red pueden tocar los comandos, y el sistema operativo aplica ese límite para cada comando Bash y sus procesos secundarios.

10 10 

11<Note>11<Note>

12 Para comparar otros enfoques de aislamiento como contenedores de desarrollo, contenedores personalizados y máquinas virtuales, consulte [Entornos sandbox](/es/sandbox-environments). Para reducir solicitudes de permiso para herramientas distintas de Bash, consulte [modos de permiso](/es/permission-modes).12 Para comparar otros enfoques de aislamiento como contenedores de desarrollo, contenedores personalizados y máquinas virtuales, consulte [Entornos sandbox](/docs/es/sandbox-environments). Para reducir solicitudes de permiso para herramientas distintas de Bash, consulte [modos de permiso](/docs/es/permission-modes).

13</Note>13</Note>

14 14 

15<h2 id="get-started">15<h2 id="get-started">


31 Esto abre el panel de sandbox con tres pestañas:31 Esto abre el panel de sandbox con tres pestañas:

32 32 

33 * **Mode**: elija cómo se aprueban los comandos aislados, cubierto en el siguiente paso33 * **Mode**: elija cómo se aprueban los comandos aislados, cubierto en el siguiente paso

34 * **Overrides**: elija si los comandos que fallan bajo el sandbox pueden volver a ejecutarse sin aislar. Esta es la configuración [`allowUnsandboxedCommands`](/es/settings#sandbox-settings)34 * **Overrides**: elija si los comandos que fallan bajo el sandbox pueden volver a ejecutarse sin aislar. Esta es la configuración [`allowUnsandboxedCommands`](/docs/es/settings#sandbox-settings)

35 * **Config**: vea la configuración de sandbox resuelta35 * **Config**: vea la configuración de sandbox resuelta

36 36 

37 Si el panel muestra solo una pestaña Dependencies, falta un paquete requerido. Instálelo como se describe en [Configurar Linux y WSL2](#set-up-linux-and-wsl2), reinicie Claude Code y ejecute `/sandbox` nuevamente.37 Si el panel muestra solo una pestaña Dependencies, falta un paquete requerido. Instálelo como se describe en [Configurar Linux y WSL2](#set-up-linux-and-wsl2), reinicie Claude Code y ejecute `/sandbox` nuevamente.


48 </Step>48 </Step>

49</Steps>49</Steps>

50 50 

51Seleccionar un modo en el panel escribe en la configuración local de su proyecto en `.claude/settings.local.json`, que se aplica al proyecto actual y no se verifica en git. Para habilitar el sandbox en todos sus proyectos, establezca [`sandbox.enabled`](/es/settings#sandbox-settings) en `true` en su configuración de usuario en `~/.claude/settings.json`. Para aplicar sandboxing para cada desarrollador en una organización, use [configuración administrada](#enforce-sandboxing-with-managed-settings).51Seleccionar un modo en el panel escribe en la configuración local de su proyecto en `.claude/settings.local.json`, que se aplica al proyecto actual y no se verifica en git. Para habilitar el sandbox en todos sus proyectos, establezca [`sandbox.enabled`](/docs/es/settings#sandbox-settings) en `true` en su configuración de usuario en `~/.claude/settings.json`. Para aplicar sandboxing para cada desarrollador en una organización, use [configuración administrada](#enforce-sandboxing-with-managed-settings).

52 52 

53<Warning>53<Warning>

54 De forma predeterminada, si el sandbox no puede iniciarse porque faltan dependencias o la plataforma no es compatible, Claude Code muestra una advertencia y ejecuta comandos sin sandboxing. Para hacer que esto sea un error grave en su lugar, establezca [`sandbox.failIfUnavailable`](/es/settings#sandbox-settings) en `true`. Esto está destinado a implementaciones administradas que requieren sandboxing como una puerta de seguridad.54 De forma predeterminada, si el sandbox no puede iniciarse porque faltan dependencias o la plataforma no es compatible, Claude Code muestra una advertencia y ejecuta comandos sin sandboxing. Para hacer que esto sea un error grave en su lugar, establezca [`sandbox.failIfUnavailable`](/docs/es/settings#sandbox-settings) en `true`. Esto está destinado a implementaciones administradas que requieren sandboxing como una puerta de seguridad.

55</Warning>55</Warning>

56 56 

57<h3 id="set-up-linux-and-wsl2">57<h3 id="set-up-linux-and-wsl2">


111 <Accordion title="Notas de WSL2">111 <Accordion title="Notas de WSL2">

112 Verifique su versión de WSL con `wsl -l -v` desde PowerShell. Si ve `Sandboxing requires WSL2`, su distribución está ejecutando WSL1. Actualícela a WSL2 o ejecute Claude Code sin sandboxing.112 Verifique su versión de WSL con `wsl -l -v` desde PowerShell. Si ve `Sandboxing requires WSL2`, su distribución está ejecutando WSL1. Actualícela a WSL2 o ejecute Claude Code sin sandboxing.

113 113 

114 En WSL2, los comandos aislados no pueden lanzar binarios de Windows como `cmd.exe`, `powershell.exe` o cualquier cosa bajo `/mnt/c/`. WSL entrega estos al host de Windows a través de un socket Unix, que el sandbox bloquea. Si un comando necesita invocar un binario de Windows, agréguelo a [`excludedCommands`](/es/settings#sandbox-settings) para que se ejecute fuera del sandbox.114 En WSL2, los comandos aislados no pueden lanzar binarios de Windows como `cmd.exe`, `powershell.exe` o cualquier cosa bajo `/mnt/c/`. WSL entrega estos al host de Windows a través de un socket Unix, que el sandbox bloquea. Si un comando necesita invocar un binario de Windows, agréguelo a [`excludedCommands`](/docs/es/settings#sandbox-settings) para que se ejecute fuera del sandbox.

115 </Accordion>115 </Accordion>

116</AccordionGroup>116</AccordionGroup>

117 117 


121 121 

122Claude Code ofrece dos modos de sandbox:122Claude Code ofrece dos modos de sandbox:

123 123 

124**Modo auto-allow**: Los comandos Bash intentarán ejecutarse dentro del sandbox y se permitirán automáticamente sin requerir permiso. Los comandos que no pueden ser aislados, como aquellos que necesitan acceso a la red a hosts no permitidos, vuelven al flujo de permiso regular, donde Claude Code verifica sus [reglas de permiso](/es/permissions) y le solicita cualquier comando que esas reglas no permitan, con una solicitud en modo predeterminado o el clasificador en [modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode).124**Modo auto-allow**: Los comandos Bash intentarán ejecutarse dentro del sandbox y se permitirán automáticamente sin requerir permiso. Los comandos que no pueden ser aislados, como aquellos que necesitan acceso a la red a hosts no permitidos, vuelven al flujo de permiso regular, donde Claude Code verifica sus [reglas de permiso](/docs/es/permissions) y le solicita cualquier comando que esas reglas no permitan, con una solicitud en modo predeterminado o el clasificador en [modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode).

125 125 

126Incluso en modo auto-allow, lo siguiente sigue siendo válido:126Incluso en modo auto-allow, lo siguiente sigue siendo válido:

127 127 

128* Las [reglas de denegación](/es/permissions) explícitas siempre se respetan128* Las [reglas de denegación](/docs/es/permissions) explícitas siempre se respetan

129* Los comandos `rm` o `rmdir` que apunten a `/`, su directorio de inicio u otras rutas críticas del sistema aún desencadenan una solicitud de permiso129* Los comandos `rm` o `rmdir` que apunten a `/`, su directorio de inicio u otras rutas críticas del sistema aún desencadenan una solicitud de permiso

130* Las [reglas de solicitud](/es/permissions) con alcance de contenido como `Bash(git push *)` aún fuerzan una solicitud incluso para comandos aislados130* Las [reglas de solicitud](/docs/es/permissions) con alcance de contenido como `Bash(git push *)` aún fuerzan una solicitud incluso para comandos aislados

131* Una regla de solicitud `Bash` simple, o la forma equivalente `Bash(*)`, se omite para comandos que se ejecutan aislados; aún se aplica a comandos que vuelven al flujo de permiso regular131* Una regla de solicitud `Bash` simple, o la forma equivalente `Bash(*)`, se omite para comandos que se ejecutan aislados; aún se aplica a comandos que vuelven al flujo de permiso regular

132 132 

133**Modo de permisos regulares**: Todos los comandos Bash pasan por el flujo de permiso regular, incluso cuando están aislados. Esto proporciona más control pero requiere más aprobaciones.133**Modo de permisos regulares**: Todos los comandos Bash pasan por el flujo de permiso regular, incluso cuando están aislados. Esto proporciona más control pero requiere más aprobaciones.


136 136 

137El directorio temporal de la sesión es escribible dentro del sandbox de forma predeterminada, junto con el directorio de trabajo. Claude Code establece `$TMPDIR` en este directorio para comandos aislados, por lo que las herramientas que escriben archivos temporales funcionan sin configuración adicional. Los comandos no aislados heredan su `$TMPDIR` de shell sin cambios, lo que significa que los comandos aislados y no aislados resuelven `$TMPDIR` a directorios diferentes. Para pasar archivos temporales entre los dos, escríbalos en el directorio de trabajo en su lugar.137El directorio temporal de la sesión es escribible dentro del sandbox de forma predeterminada, junto con el directorio de trabajo. Claude Code establece `$TMPDIR` en este directorio para comandos aislados, por lo que las herramientas que escriben archivos temporales funcionan sin configuración adicional. Los comandos no aislados heredan su `$TMPDIR` de shell sin cambios, lo que significa que los comandos aislados y no aislados resuelven `$TMPDIR` a directorios diferentes. Para pasar archivos temporales entre los dos, escríbalos en el directorio de trabajo en su lugar.

138 138 

139Algunos comandos no pueden ejecutarse dentro del sandbox en absoluto, como herramientas que son incompatibles con él o que necesitan un host que no ha permitido. En lugar de fallar la tarea o requerirle que apague el sandboxing, Claude Code incluye una salida de emergencia: cuando un comando falla debido a restricciones del sandbox, Claude analiza la falla y puede reintentar el comando con el parámetro `dangerouslyDisableSandbox`. El comando reintentado se ejecuta fuera del sandbox, por lo que pasa por el flujo de permiso regular: en modo predeterminado obtiene una solicitud de confirmación; en [modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode) el clasificador evalúa el comando subyacente en lugar de solicitarle. Para que se le solicite en cada reintento sin sandbox incluso en modo automático, agregue una [regla de solicitud](/es/permissions#match-by-input-parameter) para `Bash(dangerouslyDisableSandbox:true)`.139Algunos comandos no pueden ejecutarse dentro del sandbox en absoluto, como herramientas que son incompatibles con él o que necesitan un host que no ha permitido. En lugar de fallar la tarea o requerirle que apague el sandboxing, Claude Code incluye una salida de emergencia: cuando un comando falla debido a restricciones del sandbox, Claude analiza la falla y puede reintentar el comando con el parámetro `dangerouslyDisableSandbox`. El comando reintentado se ejecuta fuera del sandbox, por lo que pasa por el flujo de permiso regular: en modo predeterminado obtiene una solicitud de confirmación; en [modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode) el clasificador evalúa el comando subyacente en lugar de solicitarle. Para que se le solicite en cada reintento sin sandbox incluso en modo automático, agregue una [regla de solicitud](/docs/es/permissions#match-by-input-parameter) para `Bash(dangerouslyDisableSandbox:true)`.

140 140 

141Puede deshabilitar esta salida de emergencia estableciendo `"allowUnsandboxedCommands": false` en su [configuración de sandbox](/es/settings#sandbox-settings). Cuando está deshabilitado, que la pestaña Overrides de `/sandbox` muestra como **Modo de sandbox estricto**, el parámetro `dangerouslyDisableSandbox` se ignora completamente y todos los comandos deben ejecutarse aislados o estar explícitamente listados en `excludedCommands`.141Puede deshabilitar esta salida de emergencia estableciendo `"allowUnsandboxedCommands": false` en su [configuración de sandbox](/docs/es/settings#sandbox-settings). Cuando está deshabilitado, que la pestaña Overrides de `/sandbox` muestra como **Modo de sandbox estricto**, el parámetro `dangerouslyDisableSandbox` se ignora completamente y todos los comandos deben ejecutarse aislados o estar explícitamente listados en `excludedCommands`.

142 142 

143<Info>143<Info>

144 El modo auto-allow funciona independientemente de su configuración de modo de permiso. Incluso si no está en modo "aceptar ediciones", los comandos Bash aislados se ejecutarán automáticamente cuando auto-allow esté habilitado. Esto significa que los comandos Bash que modifican archivos dentro de los límites del sandbox se ejecutarán sin solicitar, incluso cuando las herramientas de edición de archivos normalmente requerirían aprobación.144 El modo auto-allow funciona independientemente de su configuración de modo de permiso. Incluso si no está en modo "aceptar ediciones", los comandos Bash aislados se ejecutarán automáticamente cuando auto-allow esté habilitado. Esto significa que los comandos Bash que modifican archivos dentro de los límites del sandbox se ejecutarán sin solicitar, incluso cuando las herramientas de edición de archivos normalmente requerirían aprobación.


148 Configurar sandboxing148 Configurar sandboxing

149</h2>149</h2>

150 150 

151Personalice el comportamiento del sandbox a través de su archivo `settings.json`. Consulte [Configuración](/es/settings#sandbox-settings) para obtener la referencia de configuración completa.151Personalice el comportamiento del sandbox a través de su archivo `settings.json`. Consulte [Configuración](/docs/es/settings#sandbox-settings) para obtener la referencia de configuración completa.

152 152 

153De forma predeterminada, los comandos aislados solo pueden escribir en el directorio de trabajo actual y el directorio temporal de la sesión. Si comandos de subproceso como `kubectl`, `terraform` o `npm` necesitan escribir fuera de esos directorios, use `sandbox.filesystem.allowWrite` para otorgar acceso a rutas específicas:153De forma predeterminada, los comandos aislados solo pueden escribir en el directorio de trabajo actual y el directorio temporal de la sesión. Si comandos de subproceso como `kubectl`, `terraform` o `npm` necesitan escribir fuera de esos directorios, use `sandbox.filesystem.allowWrite` para otorgar acceso a rutas específicas:

154 154 


165 165 

166Estas rutas se aplican a nivel del sistema operativo, por lo que todos los comandos que se ejecutan dentro del sandbox, incluidos sus procesos secundarios, las respetan. Este es el enfoque recomendado cuando una herramienta necesita acceso de escritura a una ubicación específica, en lugar de excluir la herramienta del sandbox por completo con `excludedCommands`.166Estas rutas se aplican a nivel del sistema operativo, por lo que todos los comandos que se ejecutan dentro del sandbox, incluidos sus procesos secundarios, las respetan. Este es el enfoque recomendado cuando una herramienta necesita acceso de escritura a una ubicación específica, en lugar de excluir la herramienta del sandbox por completo con `excludedCommands`.

167 167 

168Cuando el mismo array del sistema de archivos se define en múltiples [ámbitos de configuración](/es/settings#settings-precedence), los arrays se fusionan: las rutas de cada ámbito se combinan, no se reemplazan.168Cuando el mismo array del sistema de archivos se define en múltiples [ámbitos de configuración](/docs/es/settings#settings-precedence), los arrays se fusionan: las rutas de cada ámbito se combinan, no se reemplazan.

169 169 

170Los prefijos de ruta controlan cómo se resuelven las rutas:170Los prefijos de ruta controlan cómo se resuelven las rutas:

171 171 


175| `~/` | Relativo al directorio de inicio | `~/.kube` se convierte en `$HOME/.kube` |175| `~/` | Relativo al directorio de inicio | `~/.kube` se convierte en `$HOME/.kube` |

176| `./` o sin prefijo | Relativo a la raíz del proyecto para configuración de proyecto, o a `~/.claude` para configuración de usuario | `./output` en `.claude/settings.json` se resuelve a `<project-root>/output` |176| `./` o sin prefijo | Relativo a la raíz del proyecto para configuración de proyecto, o a `~/.claude` para configuración de usuario | `./output` en `.claude/settings.json` se resuelve a `<project-root>/output` |

177 177 

178Esta sintaxis difiere de las [reglas de permiso Read y Edit](/es/permissions#read-and-edit), que usan `//path` para absoluto y `/path` para relativo al proyecto. Las rutas del sistema de archivos del sandbox usan convenciones estándar: `/tmp/build` es absoluto.178Esta sintaxis difiere de las [reglas de permiso Read y Edit](/docs/es/permissions#read-and-edit), que usan `//path` para absoluto y `/path` para relativo al proyecto. Las rutas del sistema de archivos del sandbox usan convenciones estándar: `/tmp/build` es absoluto.

179 179 

180También puede denegar acceso de escritura o lectura usando `sandbox.filesystem.denyWrite` y `sandbox.filesystem.denyRead`, y permitir nuevamente rutas específicas dentro de una región denegada usando `sandbox.filesystem.allowRead`. Cuando las reglas de lectura se superponen, la ruta más específica gana:180También puede denegar acceso de escritura o lectura usando `sandbox.filesystem.denyWrite` y `sandbox.filesystem.denyRead`, y permitir nuevamente rutas específicas dentro de una región denegada usando `sandbox.filesystem.allowRead`. Cuando las reglas de lectura se superponen, la ruta más específica gana:

181 181 


230 230 

231Las entradas de archivo admiten solo `"mode": "deny"`. Las entradas de variables de entorno también aceptan `"mode": "mask"`, descrito a continuación.231Las entradas de archivo admiten solo `"mode": "deny"`. Las entradas de variables de entorno también aceptan `"mode": "mask"`, descrito a continuación.

232 232 

233Las rutas de archivo siguen las mismas [reglas de prefijo](/es/settings#sandbox-path-prefixes) que las configuraciones `sandbox.filesystem.*`, y las entradas `deny` de cada [ámbito de configuración](/es/settings#settings-precedence) se fusionan. Una entrada `deny` solo estrecha el acceso, por lo que cualquier ámbito puede agregar una, pero ningún ámbito puede eliminar una que otro ámbito haya agregado.233Las rutas de archivo siguen las mismas [reglas de prefijo](/docs/es/settings#sandbox-path-prefixes) que las configuraciones `sandbox.filesystem.*`, y las entradas `deny` de cada [ámbito de configuración](/docs/es/settings#settings-precedence) se fusionan. Una entrada `deny` solo estrecha el acceso, por lo que cualquier ámbito puede agregar una, pero ningún ámbito puede eliminar una que otro ámbito haya agregado.

234 234 

235No hay una lista de denegación de credenciales integrada, por lo que solo los archivos y variables que enumere están restringidos. La configuración afecta solo a los comandos Bash aislados. Para eliminar las credenciales de Anthropic y del proveedor de nube de todos los subprocesos independientemente del sandboxing, establezca [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/es/env-vars).235No hay una lista de denegación de credenciales integrada, por lo que solo los archivos y variables que enumere están restringidos. La configuración afecta solo a los comandos Bash aislados. Para eliminar las credenciales de Anthropic y del proveedor de nube de todos los subprocesos independientemente del sandboxing, establezca [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/es/env-vars).

236 236 

237<h4 id="mask-environment-variables">237<h4 id="mask-environment-variables">

238 Enmascarar variables de entorno238 Enmascarar variables de entorno


242 242 

243Con `mask`, el comando aislado ve un valor centinela por sesión en lugar del real. Cuando una solicitud sale del sandbox para uno de los `injectHosts` de la credencial, el [proxy del sandbox](#network-isolation) reemplaza el centinela con el valor real. El comando y cualquier cosa que registre nunca contienen la credencial real, pero sus solicitudes aún se autentican.243Con `mask`, el comando aislado ve un valor centinela por sesión en lugar del real. Cuando una solicitud sale del sandbox para uno de los `injectHosts` de la credencial, el [proxy del sandbox](#network-isolation) reemplaza el centinela con el valor real. El comando y cualquier cosa que registre nunca contienen la credencial real, pero sus solicitudes aún se autentican.

244 244 

245El proxy sustituye la credencial dentro del contenido de la solicitud, por lo que tiene que verla. Establezca [`network.tlsTerminate`](/es/settings#sandbox-settings) para que el proxy termine TLS por sí mismo. Sin él, el enmascaramiento falla cerrado: el comando aún ve solo el centinela, pero el centinela llega al servidor sin cambios y la autenticación falla. Claude Code reporta esta configuración incorrecta al inicio.245El proxy sustituye la credencial dentro del contenido de la solicitud, por lo que tiene que verla. Establezca [`network.tlsTerminate`](/docs/es/settings#sandbox-settings) para que el proxy termine TLS por sí mismo. Sin él, el enmascaramiento falla cerrado: el comando aún ve solo el centinela, pero el centinela llega al servidor sin cambios y la autenticación falla. Claude Code reporta esta configuración incorrecta al inicio.

246 246 

247El ejemplo a continuación enmascara dos tokens. `GH_TOKEN` se sustituye solo en solicitudes a `api.github.com`, mientras que `NPM_TOKEN` no tiene `injectHosts` y se sustituye en solicitudes a cada host en `network.allowedDomains`. Cada entrada `injectHosts` debe estar cubierta por `network.allowedDomains`.247El ejemplo a continuación enmascara dos tokens. `GH_TOKEN` se sustituye solo en solicitudes a `api.github.com`, mientras que `NPM_TOKEN` no tiene `injectHosts` y se sustituye en solicitudes a cada host en `network.allowedDomains`. Cada entrada `injectHosts` debe estar cubierta por `network.allowedDomains`.

248 248 


264}264}

265```265```

266 266 

267A diferencia de `deny`, el enmascaramiento autoriza al proxy a enviar su credencial real a los hosts enumerados, por lo que se honra solo desde configuraciones que usted o su administrador controlan: configuración de usuario, configuración administrada y la bandera CLI `--settings`. Las entradas `mask`, `network.tlsTerminate` y [`credentials.allowPlaintextInject`](/es/settings#sandbox-settings) en el `.claude/settings.json` o `.claude/settings.local.json` de un repositorio se ignoran.267A diferencia de `deny`, el enmascaramiento autoriza al proxy a enviar su credencial real a los hosts enumerados, por lo que se honra solo desde configuraciones que usted o su administrador controlan: configuración de usuario, configuración administrada y la bandera CLI `--settings`. Las entradas `mask`, `network.tlsTerminate` y [`credentials.allowPlaintextInject`](/docs/es/settings#sandbox-settings) en el `.claude/settings.json` o `.claude/settings.local.json` de un repositorio se ignoran.

268 268 

269Cuando la misma variable se enumera con `deny` en cualquier ámbito, `deny` tiene prioridad.269Cuando la misma variable se enumera con `deny` en cualquier ámbito, `deny` tiene prioridad.

270 270 


281* **Comportamiento de escritura predeterminado**: acceso de lectura y escritura al directorio de trabajo actual y sus subdirectorios, más el directorio temporal de sesión al que apunta `$TMPDIR`281* **Comportamiento de escritura predeterminado**: acceso de lectura y escritura al directorio de trabajo actual y sus subdirectorios, más el directorio temporal de sesión al que apunta `$TMPDIR`

282* **Comportamiento de lectura predeterminado**: acceso de lectura a toda la computadora, excepto ciertos directorios denegados. Tenga en cuenta que este comportamiento predeterminado aún permite leer archivos de credenciales como `~/.aws/credentials` y `~/.ssh/`. Utilice [`sandbox.credentials`](#protect-credentials) para bloquear lecturas de estos archivos y desconfigurar variables de entorno secretas, o agregue las rutas a `denyRead`.282* **Comportamiento de lectura predeterminado**: acceso de lectura a toda la computadora, excepto ciertos directorios denegados. Tenga en cuenta que este comportamiento predeterminado aún permite leer archivos de credenciales como `~/.aws/credentials` y `~/.ssh/`. Utilice [`sandbox.credentials`](#protect-credentials) para bloquear lecturas de estos archivos y desconfigurar variables de entorno secretas, o agregue las rutas a `denyRead`.

283* **Acceso bloqueado**: no puede modificar archivos fuera del directorio de trabajo actual y el directorio temporal de sesión sin permiso explícito, incluidos archivos de configuración de shell como `~/.bashrc` y binarios del sistema en `/bin/`283* **Acceso bloqueado**: no puede modificar archivos fuera del directorio de trabajo actual y el directorio temporal de sesión sin permiso explícito, incluidos archivos de configuración de shell como `~/.bashrc` y binarios del sistema en `/bin/`

284* **Git worktrees**: cuando el directorio de trabajo es un [git worktree vinculado](/es/worktrees), el sandbox también permite escrituras en el directorio compartido `.git` del repositorio principal para que comandos como `git commit` puedan actualizar referencias e índices. Las escrituras a `hooks/` y `config` dentro de ese directorio permanecen denegadas.284* **Git worktrees**: cuando el directorio de trabajo es un [git worktree vinculado](/docs/es/worktrees), el sandbox también permite escrituras en el directorio compartido `.git` del repositorio principal para que comandos como `git commit` puedan actualizar referencias e índices. Las escrituras a `hooks/` y `config` dentro de ese directorio permanecen denegadas.

285* **Configurable**: defina rutas permitidas y denegadas personalizadas a través de la configuración285* **Configurable**: defina rutas permitidas y denegadas personalizadas a través de la configuración

286 286 

287Puede otorgar acceso de escritura a rutas adicionales usando `sandbox.filesystem.allowWrite` en su configuración. Estas restricciones se aplican a nivel del sistema operativo, por lo que se aplican a todos los comandos de subproceso, incluidas herramientas como `kubectl`, `terraform` y `npm`, no solo a las herramientas de archivo de Claude.287Puede otorgar acceso de escritura a rutas adicionales usando `sandbox.filesystem.allowWrite` en su configuración. Estas restricciones se aplican a nivel del sistema operativo, por lo que se aplican a todos los comandos de subproceso, incluidas herramientas como `kubectl`, `terraform` y `npm`, no solo a las herramientas de archivo de Claude.


292 292 

293El acceso a la red se controla a través de un servidor proxy que se ejecuta fuera del sandbox:293El acceso a la red se controla a través de un servidor proxy que se ejecuta fuera del sandbox:

294 294 

295* **Restricciones de dominio**: no hay dominios pre-permitidos. La primera vez que un comando necesita un nuevo dominio, Claude Code solicita aprobación. {/* min-version: 2.1.191 */}A partir de v2.1.191, elegir Sí permite el host para el resto de la sesión actual, por lo que las conexiones posteriores al mismo host no solicitan nuevamente. Pre-permita dominios con [`allowedDomains`](/es/settings#sandbox-settings) para evitar la solicitud por completo.295* **Restricciones de dominio**: no hay dominios pre-permitidos. La primera vez que un comando necesita un nuevo dominio, Claude Code solicita aprobación. A partir de v2.1.191, elegir Sí permite el host para el resto de la sesión actual, por lo que las conexiones posteriores al mismo host no solicitan nuevamente. Pre-permita dominios con [`allowedDomains`](/docs/es/settings#sandbox-settings) para evitar la solicitud por completo.

296* **Bloqueo administrado**: si [`allowManagedDomainsOnly`](/es/settings#sandbox-settings) se establece en la configuración administrada, los dominios no permitidos se bloquean automáticamente en lugar de solicitar, y solo se honran `allowedDomains` de la configuración administrada.296* **Bloqueo administrado**: si [`allowManagedDomainsOnly`](/docs/es/settings#sandbox-settings) se establece en la configuración administrada, los dominios no permitidos se bloquean automáticamente en lugar de solicitar, y solo se honran `allowedDomains` de la configuración administrada.

297* **Soporte de proxy personalizado**: los usuarios avanzados pueden implementar reglas personalizadas en el tráfico saliente297* **Soporte de proxy personalizado**: los usuarios avanzados pueden implementar reglas personalizadas en el tráfico saliente

298* **Cobertura integral**: las restricciones se aplican a todos los scripts, programas y subprocesos generados por comandos298* **Cobertura integral**: las restricciones se aplican a todos los scripts, programas y subprocesos generados por comandos

299 299 

300<Note>300<Note>

301 El proxy integrado aplica la lista de permitidos basada en el nombre de host solicitado y, de forma predeterminada, no termina ni inspecciona el tráfico TLS. {/* min-version: 2.1.199 */}La configuración experimental [`network.tlsTerminate`](/es/settings#sandbox-settings), disponible en Claude Code v2.1.199 y posterior, hace que el proxy integrado termine TLS por sí mismo, lo que requieren las entradas de credenciales [`mask`](#protect-credentials). Consulte [Limitaciones de seguridad](#security-limitations) para las implicaciones del comportamiento predeterminado, y [Configuración de proxy personalizado](#custom-proxy-configuration) si su modelo de amenaza requiere inspección de TLS.301 El proxy integrado aplica la lista de permitidos basada en el nombre de host solicitado y, de forma predeterminada, no termina ni inspecciona el tráfico TLS. La configuración experimental [`network.tlsTerminate`](/docs/es/settings#sandbox-settings), disponible en Claude Code v2.1.199 y posterior, hace que el proxy integrado termine TLS por sí mismo, lo que requieren las entradas de credenciales [`mask`](#protect-credentials). Consulte [Limitaciones de seguridad](#security-limitations) para las implicaciones del comportamiento predeterminado, y [Configuración de proxy personalizado](#custom-proxy-configuration) si su modelo de amenaza requiere inspección de TLS.

302</Note>302</Note>

303 303 

304<h3 id="os-level-enforcement">304<h3 id="os-level-enforcement">


313 313 

314WSL1 no es compatible porque bubblewrap requiere características del kernel solo disponibles en WSL2. Estas restricciones a nivel del sistema operativo garantizan que todos los procesos secundarios generados por los comandos de Claude Code hereden los mismos límites de seguridad.314WSL1 no es compatible porque bubblewrap requiere características del kernel solo disponibles en WSL2. Estas restricciones a nivel del sistema operativo garantizan que todos los procesos secundarios generados por los comandos de Claude Code hereden los mismos límites de seguridad.

315 315 

316Estas mismas primitivas están disponibles como el paquete independiente [`@anthropic-ai/sandbox-runtime`](https://github.com/anthropic-experimental/sandbox-runtime), que la página [Entornos sandbox](/es/sandbox-environments#sandbox-runtime) cubre como un enfoque separado para envolver todo el proceso de Claude Code.316Estas mismas primitivas están disponibles como el paquete independiente [`@anthropic-ai/sandbox-runtime`](https://github.com/anthropic-experimental/sandbox-runtime), que la página [Entornos sandbox](/docs/es/sandbox-environments#sandbox-runtime) cubre como un enfoque separado para envolver todo el proceso de Claude Code.

317 317 

318<h2 id="how-sandboxing-relates-to-permissions-and-permission-modes">318<h2 id="how-sandboxing-relates-to-permissions-and-permission-modes">

319 Cómo se relaciona el sandboxing con los permisos y modos de permiso319 Cómo se relaciona el sandboxing con los permisos y modos de permiso

320</h2>320</h2>

321 321 

322El sandboxing, las [reglas de permiso](/es/permissions) y los [modos de permiso](/es/permission-modes) son capas complementarias. Las secciones a continuación cubren cómo el sandbox interactúa con cada una.322El sandboxing, las [reglas de permiso](/docs/es/permissions) y los [modos de permiso](/docs/es/permission-modes) son capas complementarias. Las secciones a continuación cubren cómo el sandbox interactúa con cada una.

323 323 

324<h3 id="permission-rules">324<h3 id="permission-rules">

325 Reglas de permiso325 Reglas de permiso


353 Modos de permiso353 Modos de permiso

354</h3>354</h3>

355 355 

356`/sandbox` no es un [modo de permiso](/es/permission-modes). Los modos de permiso deciden si se ejecuta una llamada de herramienta y si se le solicita primero, mientras que el sandbox restringe lo que un comando Bash puede acceder una vez que se ejecuta. Difieren en lo que controlan y qué reemplaza la solicitud por acción:356`/sandbox` no es un [modo de permiso](/docs/es/permission-modes). Los modos de permiso deciden si se ejecuta una llamada de herramienta y si se le solicita primero, mientras que el sandbox restringe lo que un comando Bash puede acceder una vez que se ejecuta. Difieren en lo que controlan y qué reemplaza la solicitud por acción:

357 357 

358| | Qué controla | Qué reemplaza la solicitud |358| | Qué controla | Qué reemplaza la solicitud |

359| :----------------------------------------------------------------------- | :---------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |359| :----------------------------------------------------------------------- | :---------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

360| `/sandbox` | Lo que un comando Bash puede acceder una vez que se ejecuta | El límite del sandbox en sí, en [modo auto-allow](#sandbox-modes) |360| `/sandbox` | Lo que un comando Bash puede acceder una vez que se ejecuta | El límite del sandbox en sí, en [modo auto-allow](#sandbox-modes) |

361| [Modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode) | Si se ejecuta cada llamada de herramienta | Un clasificador que revisa acciones |361| [Modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode) | Si se ejecuta cada llamada de herramienta | Un clasificador que revisa acciones |

362| `--dangerously-skip-permissions` | Si se ejecuta cada llamada de herramienta | Nada. Las verificaciones de [ruta protegida](/es/permission-modes#protected-paths) también se omiten; solo las [reglas ask](/es/permissions#manage-permissions) explícitas, las herramientas de conector [que su organización configuró en `ask`](/es/mcp#organization-controls-on-connector-tools), las herramientas MCP marcadas como [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) y eliminar `/` o su directorio de inicio aún solicitan |362| `--dangerously-skip-permissions` | Si se ejecuta cada llamada de herramienta | Nada. Las verificaciones de [ruta protegida](/docs/es/permission-modes#protected-paths) también se omiten; solo las [reglas ask](/docs/es/permissions#manage-permissions) explícitas, las herramientas de conector [que su organización configuró en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), las herramientas MCP marcadas como [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) y eliminar `/` o su directorio de inicio aún solicitan |

363 363 

364El [modo auto-allow](#sandbox-modes) del sandbox es separado del [modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode): auto-allow aprueba comandos Bash porque el límite del sandbox los contiene, mientras que el modo automático usa un clasificador para revisar acciones. Los dos funcionan independientemente y pueden combinarse. Para elegir un límite de aislamiento para ejecuciones desatendidas, consulte [Entornos sandbox](/es/sandbox-environments#how-isolation-relates-to-permission-modes).364El [modo auto-allow](#sandbox-modes) del sandbox es separado del [modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode): auto-allow aprueba comandos Bash porque el límite del sandbox los contiene, mientras que el modo automático usa un clasificador para revisar acciones. Los dos funcionan independientemente y pueden combinarse. Para elegir un límite de aislamiento para ejecuciones desatendidas, consulte [Entornos sandbox](/docs/es/sandbox-environments#how-isolation-relates-to-permission-modes).

365 365 

366<h2 id="configure-the-sandbox-for-your-organization">366<h2 id="configure-the-sandbox-for-your-organization">

367 Configurar el sandbox para su organización367 Configurar el sandbox para su organización


373 Aplicar sandboxing con configuración administrada373 Aplicar sandboxing con configuración administrada

374</h3>374</h3>

375 375 

376Para requerir el sandbox para cada desarrollador, entregue las claves `sandbox` a través de [configuración administrada](/es/settings#settings-files), ya sea como un archivo administrado por su MDM o a través de [configuración administrada por servidor](/es/server-managed-settings) en Claude.ai.376Para requerir el sandbox para cada desarrollador, entregue las claves `sandbox` a través de [configuración administrada](/docs/es/settings#settings-files), ya sea como un archivo administrado por su MDM o a través de [configuración administrada por servidor](/docs/es/server-managed-settings) en Claude.ai.

377 377 

378La siguiente configuración de configuración administrada habilita el sandbox, se niega a iniciar Claude Code si el sandbox no puede inicializarse y evita que el modelo reintente comandos fuera del sandbox:378La siguiente configuración de configuración administrada habilita el sandbox, se niega a iniciar Claude Code si el sandbox no puede inicializarse y evita que el modelo reintente comandos fuera del sandbox:

379 379 


402 402 

403Para claves booleanas como `enabled` y `failIfUnavailable`, Claude Code usa el valor administrado e ignora cualquier cosa que un desarrollador establezca localmente. Para claves de array como `excludedCommands` y `allowRead`, Claude Code fusiona entradas de cada ámbito, por lo que un desarrollador puede agregar entradas que amplíen la política.403Para claves booleanas como `enabled` y `failIfUnavailable`, Claude Code usa el valor administrado e ignora cualquier cosa que un desarrollador establezca localmente. Para claves de array como `excludedCommands` y `allowRead`, Claude Code fusiona entradas de cada ámbito, por lo que un desarrollador puede agregar entradas que amplíen la política.

404 404 

405Establezca `allowManagedReadPathsOnly` en `true` en la configuración administrada para que solo se honren las entradas `allowRead` de la configuración administrada. Las entradas `allowRead` de usuario, proyecto y local se ignoran. Esto evita que los desarrolladores amplíen el acceso de lectura más allá de las rutas aprobadas por la organización. Para bloquear dominios de red a los valores administrados de la misma manera, establezca [`allowManagedDomainsOnly`](/es/settings#sandbox-settings).405Establezca `allowManagedReadPathsOnly` en `true` en la configuración administrada para que solo se honren las entradas `allowRead` de la configuración administrada. Las entradas `allowRead` de usuario, proyecto y local se ignoran. Esto evita que los desarrolladores amplíen el acceso de lectura más allá de las rutas aprobadas por la organización. Para bloquear dominios de red a los valores administrados de la misma manera, establezca [`allowManagedDomainsOnly`](/docs/es/settings#sandbox-settings).

406 406 

407`excludedCommands` no tiene un bloqueo equivalente solo administrado, por lo que un desarrollador siempre puede agregar entradas que ejecuten comandos adicionales fuera del sandbox. Mantenga la lista administrada estrecha.407`excludedCommands` no tiene un bloqueo equivalente solo administrado, por lo que un desarrollador siempre puede agregar entradas que ejecuten comandos adicionales fuera del sandbox. Mantenga la lista administrada estrecha.

408 408 


417* Registrar todas las solicitudes de red417* Registrar todas las solicitudes de red

418* Integrar con infraestructura de seguridad existente418* Integrar con infraestructura de seguridad existente

419 419 

420Para apuntar Claude Code a su proxy, establezca los puertos del proxy en [configuración de sandbox](/es/settings#sandbox-settings):420Para apuntar Claude Code a su proxy, establezca los puertos del proxy en [configuración de sandbox](/docs/es/settings#sandbox-settings):

421 421 

422```json theme={null}422```json theme={null}

423{423{


438 438 

439* **Los comandos fallan con un error de host no permitido**: muchas herramientas CLI necesitan alcanzar hosts específicos. Otorgar permiso cuando se solicita agrega el host a su lista de permitidos para que la herramienta se ejecute dentro del sandbox en el futuro.439* **Los comandos fallan con un error de host no permitido**: muchas herramientas CLI necesitan alcanzar hosts específicos. Otorgar permiso cuando se solicita agrega el host a su lista de permitidos para que la herramienta se ejecute dentro del sandbox en el futuro.

440* **`jest` se cuelga o falla**: `watchman` es incompatible con el sandbox. Ejecute `jest --no-watchman` en su lugar.440* **`jest` se cuelga o falla**: `watchman` es incompatible con el sandbox. Ejecute `jest --no-watchman` en su lugar.

441* **Las CLI basadas en Go fallan en la verificación de TLS en macOS**: herramientas como `gh`, `gcloud` y `terraform` pueden fallar en la verificación de TLS bajo Seatbelt. Liste estas herramientas en `excludedCommands` para ejecutarlas fuera del sandbox. Si está usando `httpProxyPort` con un proxy MITM y CA personalizado, establezca [`enableWeakerNetworkIsolation`](/es/settings#sandbox-settings) en `true` en su lugar.441* **Las CLI basadas en Go fallan en la verificación de TLS en macOS**: herramientas como `gh`, `gcloud` y `terraform` pueden fallar en la verificación de TLS bajo Seatbelt. Liste estas herramientas en `excludedCommands` para ejecutarlas fuera del sandbox. Si está usando `httpProxyPort` con un proxy MITM y CA personalizado, establezca [`enableWeakerNetworkIsolation`](/docs/es/settings#sandbox-settings) en `true` en su lugar.

442* **Los comandos `open`, `osascript` o los flujos de autenticación basados en navegador fallan con el error `-600` en macOS**: el sandbox bloquea Apple Events de forma predeterminada. Establezca [`allowAppleEvents`](/es/settings#sandbox-settings) en `true` en su configuración de usuario, administrada o CLI para permitirlos. La configuración del proyecto se ignora para esta clave. Habilitarlo elimina el aislamiento de ejecución de código, ya que los comandos aislados pueden entonces lanzar otras aplicaciones sin aislar sin solicitud del usuario y enviar comandos AppleScript a aplicaciones en ejecución, sujeto a la solicitud de consentimiento de automatización de macOS (TCC). Alternativamente, agregue el comando a `excludedCommands` para ejecutarlo fuera del sandbox.442* **Los comandos `open`, `osascript` o los flujos de autenticación basados en navegador fallan con el error `-600` en macOS**: el sandbox bloquea Apple Events de forma predeterminada. Establezca [`allowAppleEvents`](/docs/es/settings#sandbox-settings) en `true` en su configuración de usuario, administrada o CLI para permitirlos. La configuración del proyecto se ignora para esta clave. Habilitarlo elimina el aislamiento de ejecución de código, ya que los comandos aislados pueden entonces lanzar otras aplicaciones sin aislar sin solicitud del usuario y enviar comandos AppleScript a aplicaciones en ejecución, sujeto a la solicitud de consentimiento de automatización de macOS (TCC). Alternativamente, agregue el comando a `excludedCommands` para ejecutarlo fuera del sandbox.

443* **Los comandos `docker` fallan**: `docker` es incompatible con el sandbox. Agregue `docker *` a `excludedCommands` para ejecutarlo fuera del sandbox.443* **Los comandos `docker` fallan**: `docker` es incompatible con el sandbox. Agregue `docker *` a `excludedCommands` para ejecutarlo fuera del sandbox.

444* **Bubblewrap falla al iniciarse dentro de un contenedor**: en un contenedor sin privilegios, bubblewrap no puede montar un sistema de archivos `/proc` nuevo. Establezca [`enableWeakerNestedSandbox`](/es/settings#sandbox-settings) en `true` para que el sandbox interno monte el `/proc` existente del contenedor en su lugar. Solo use esta configuración cuando el contenedor externo ya proporcione el límite de aislamiento que necesita, ya que expone información de proceso a comandos aislados que un montaje `/proc` nuevo ocultaría.444* **Bubblewrap falla al iniciarse dentro de un contenedor**: en un contenedor sin privilegios, bubblewrap no puede montar un sistema de archivos `/proc` nuevo. Establezca [`enableWeakerNestedSandbox`](/docs/es/settings#sandbox-settings) en `true` para que el sandbox interno monte el `/proc` existente del contenedor en su lugar. Solo use esta configuración cuando el contenedor externo ya proporcione el límite de aislamiento que necesita, ya que expone información de proceso a comandos aislados que un montaje `/proc` nuevo ocultaría.

445* **Filtro seccomp en Linux**: el filtro seccomp es necesario para bloquear sockets de dominio Unix. La pestaña Dependencies en `/sandbox` muestra si está disponible. Si falta, ejecute `npm install -g @anthropic-ai/sandbox-runtime` para instalar el asistente.445* **Filtro seccomp en Linux**: el filtro seccomp es necesario para bloquear sockets de dominio Unix. La pestaña Dependencies en `/sandbox` muestra si está disponible. Si falta, ejecute `npm install -g @anthropic-ai/sandbox-runtime` para instalar el asistente.

446* **`--dangerously-skip-permissions` falla como root**: esta bandera se bloquea cuando se ejecuta como root o a través de sudo en Linux y macOS, porque el acceso root combinado sin solicitudes de permiso puede modificar cualquier archivo o servicio en el sistema. La verificación se omite automáticamente dentro de un sandbox reconocido. Para ejecutar de manera autónoma en un contenedor, use la configuración [contenedor de desarrollo](/es/devcontainer), que ejecuta Claude Code como un usuario no root.446* **`--dangerously-skip-permissions` falla como root**: esta bandera se bloquea cuando se ejecuta como root o a través de sudo en Linux y macOS, porque el acceso root combinado sin solicitudes de permiso puede modificar cualquier archivo o servicio en el sistema. La verificación se omite automáticamente dentro de un sandbox reconocido. Para ejecutar de manera autónoma en un contenedor, use la configuración [contenedor de desarrollo](/docs/es/devcontainer), que ejecuta Claude Code como un usuario no root.

447 447 

448<h2 id="limitations">448<h2 id="limitations">

449 Limitaciones449 Limitaciones


455 Limitaciones de seguridad455 Limitaciones de seguridad

456</h3>456</h3>

457 457 

458* **Filtrado de red**: el sandbox restringe los dominios a los que se permite que se conecten los procesos. De forma predeterminada, el proxy integrado no termina ni inspecciona TLS en el tráfico saliente, por lo que el contenido de las conexiones cifradas no se examina. La configuración experimental [`network.tlsTerminate`](/es/settings#sandbox-settings) termina TLS en el proxy para [sustitución de credenciales `mask`](#protect-credentials) pero no añade filtrado de contenido. Usted es responsable de asegurarse de que solo se permitan dominios confiables en su política.458* **Filtrado de red**: el sandbox restringe los dominios a los que se permite que se conecten los procesos. De forma predeterminada, el proxy integrado no termina ni inspecciona TLS en el tráfico saliente, por lo que el contenido de las conexiones cifradas no se examina. La configuración experimental [`network.tlsTerminate`](/docs/es/settings#sandbox-settings) termina TLS en el proxy para [sustitución de credenciales `mask`](#protect-credentials) pero no añade filtrado de contenido. Usted es responsable de asegurarse de que solo se permitan dominios confiables en su política.

459 459 

460<Warning>460<Warning>

461 Permitir dominios amplios como `github.com` puede crear caminos para exfiltración de datos. Porque el proxy toma su decisión de permitir del nombre de host suministrado por el cliente sin inspeccionar TLS, el código que se ejecuta dentro del sandbox puede potencialmente usar [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) u técnicas similares para alcanzar hosts fuera de la lista de permitidos. Si su modelo de amenaza requiere garantías más fuertes, configure un [proxy personalizado](#custom-proxy-configuration) que termine TLS e inspeccione tráfico, e instale su certificado CA dentro del sandbox. El aislamiento de red consciente de TLS más fuerte es un área activa de desarrollo.461 Permitir dominios amplios como `github.com` puede crear caminos para exfiltración de datos. Porque el proxy toma su decisión de permitir del nombre de host suministrado por el cliente sin inspeccionar TLS, el código que se ejecuta dentro del sandbox puede potencialmente usar [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) u técnicas similares para alcanzar hosts fuera de la lista de permitidos. Si su modelo de amenaza requiere garantías más fuertes, configure un [proxy personalizado](#custom-proxy-configuration) que termine TLS e inspeccione tráfico, e instale su certificado CA dentro del sandbox. El aislamiento de red consciente de TLS más fuerte es un área activa de desarrollo.


481 481 

482El sandbox aísla subprocesos Bash. Otras herramientas operan bajo límites diferentes:482El sandbox aísla subprocesos Bash. Otras herramientas operan bajo límites diferentes:

483 483 

484* **Herramientas de archivo integradas**: Read, Edit y Write usan el sistema de permisos directamente en lugar de ejecutarse a través del sandbox. Consulte [permisos](/es/permissions).484* **Herramientas de archivo integradas**: Read, Edit y Write usan el sistema de permisos directamente en lugar de ejecutarse a través del sandbox. Consulte [permisos](/docs/es/permissions).

485* **Uso de computadora**: cuando Claude abre aplicaciones y controla su pantalla, se ejecuta en su escritorio real en lugar de en un entorno aislado. Las solicitudes de permiso por aplicación controlan cada aplicación. Consulte [uso de computadora en CLI](/es/computer-use) o [uso de computadora en Desktop](/es/desktop#let-claude-use-your-computer).485* **Uso de computadora**: cuando Claude abre aplicaciones y controla su pantalla, se ejecuta en su escritorio real en lugar de en un entorno aislado. Las solicitudes de permiso por aplicación controlan cada aplicación. Consulte [uso de computadora en CLI](/docs/es/computer-use) o [uso de computadora en Desktop](/docs/es/desktop#let-claude-use-your-computer).

486* **Variables de entorno**: los comandos Bash aislados heredan el entorno del proceso padre de forma predeterminada, incluidas las credenciales establecidas allí. Use [`sandbox.credentials`](#protect-credentials) para desactivar o enmascarar variables específicas para comandos aislados, o establezca [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/es/env-vars) para eliminar credenciales de Anthropic y proveedores de nube de todos los subprocesos.486* **Variables de entorno**: los comandos Bash aislados heredan el entorno del proceso padre de forma predeterminada, incluidas las credenciales establecidas allí. Use [`sandbox.credentials`](#protect-credentials) para desactivar o enmascarar variables específicas para comandos aislados, o establezca [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](/docs/es/env-vars) para eliminar credenciales de Anthropic y proveedores de nube de todos los subprocesos.

487* **Subagentes**: los [subagentes](/es/sub-agents) se ejecutan en el mismo proceso que la sesión padre y usan la misma configuración de sandbox. Los comandos Bash dentro de un subagente están aislados cuando el sandboxing está habilitado en la sesión padre.487* **Subagentes**: los [subagentes](/docs/es/sub-agents) se ejecutan en el mismo proceso que la sesión padre y usan la misma configuración de sandbox. Los comandos Bash dentro de un subagente están aislados cuando el sandboxing está habilitado en la sesión padre.

488 488 

489<Warning>489<Warning>

490 El sandboxing efectivo requiere tanto aislamiento del sistema de archivos como de la red. Sin aislamiento de red, un agente comprometido podría exfiltrar archivos sensibles como claves SSH. Sin aislamiento del sistema de archivos, un agente comprometido podría instalar una puerta trasera en recursos del sistema para obtener acceso a la red. Cuando amplíe los valores predeterminados, verifique que una ruta `allowWrite`, una entrada `allowedDomains` amplia o una excepción `excludedCommands` no deshaga una restricción en el otro lado.490 El sandboxing efectivo requiere tanto aislamiento del sistema de archivos como de la red. Sin aislamiento de red, un agente comprometido podría exfiltrar archivos sensibles como claves SSH. Sin aislamiento del sistema de archivos, un agente comprometido podría instalar una puerta trasera en recursos del sistema para obtener acceso a la red. Cuando amplíe los valores predeterminados, verifique que una ruta `allowWrite`, una entrada `allowedDomains` amplia o una excepción `excludedCommands` no deshaga una restricción en el otro lado.


494 Ver también494 Ver también

495</h2>495</h2>

496 496 

497* [Entornos sandbox](/es/sandbox-environments): compare el sandbox integrado con contenedores de desarrollo, contenedores y máquinas virtuales497* [Entornos sandbox](/docs/es/sandbox-environments): compare el sandbox integrado con contenedores de desarrollo, contenedores y máquinas virtuales

498* [Seguridad](/es/security): características de seguridad integral y mejores prácticas498* [Seguridad](/docs/es/security): características de seguridad integral y mejores prácticas

499* [Permisos](/es/permissions): configuración de permisos y control de acceso499* [Permisos](/docs/es/permissions): configuración de permisos y control de acceso

500* [Configuración](/es/settings): referencia de configuración completa500* [Configuración](/docs/es/settings): referencia de configuración completa

501* [Referencia de CLI](/es/cli-reference): opciones de línea de comandos501* [Referencia de CLI](/docs/es/cli-reference): opciones de línea de comandos

scheduled-tasks.md +17 −17

Details

6 6 

7> Utilice /loop y las herramientas de programación cron para ejecutar prompts repetidamente, sondear el estado o establecer recordatorios únicos dentro de una sesión de Claude Code.7> Utilice /loop y las herramientas de programación cron para ejecutar prompts repetidamente, sondear el estado o establecer recordatorios únicos dentro de una sesión de Claude Code.

8 8 

9Las tareas programadas permiten que Claude vuelva a ejecutar un prompt automáticamente en un intervalo. Úselas para sondear una implementación, supervisar un PR, verificar una compilación de larga duración o recordarse a sí mismo que debe hacer algo más adelante en la sesión. Para reaccionar a eventos a medida que ocurren en lugar de sondear, consulte [Channels](/es/channels): su CI puede insertar el error directamente en la sesión. Para mantener la sesión funcionando turno tras turno hasta que se cumpla una condición en lugar de en un intervalo, consulte [`/goal`](/es/goal).9Las tareas programadas permiten que Claude vuelva a ejecutar un prompt automáticamente en un intervalo. Úselas para sondear una implementación, supervisar un PR, verificar una compilación de larga duración o recordarse a sí mismo que debe hacer algo más adelante en la sesión. Para reaccionar a eventos a medida que ocurren en lugar de sondear, consulte [Channels](/docs/es/channels): su CI puede insertar el error directamente en la sesión. Para mantener la sesión funcionando turno tras turno hasta que se cumpla una condición en lugar de en un intervalo, consulte [`/goal`](/docs/es/goal).

10 10 

11Las tareas tienen alcance de sesión: viven en la conversación actual y se detienen cuando inicia una nueva. Reanudar con `--resume` o `--continue` trae de vuelta cualquier tarea que no haya [expirado](#seven-day-expiry): una tarea recurrente creada en los últimos 7 días, o una única cuyo tiempo programado aún no ha pasado. Para la programación que sobrevive independientemente de cualquier sesión, utilice [Routines](/es/routines) para crear una rutina en la infraestructura administrada por Anthropic, configure una [tarea programada de Desktop](/es/desktop-scheduled-tasks) o utilice [GitHub Actions](/es/github-actions).11Las tareas tienen alcance de sesión: viven en la conversación actual y se detienen cuando inicia una nueva. Reanudar con `--resume` o `--continue` trae de vuelta cualquier tarea que no haya [expirado](#seven-day-expiry): una tarea recurrente creada en los últimos 7 días, o una única cuyo tiempo programado aún no ha pasado. Para la programación que sobrevive independientemente de cualquier sesión, utilice [Routines](/docs/es/routines) para crear una rutina en la infraestructura administrada por Anthropic, configure una [tarea programada de Desktop](/docs/es/desktop-scheduled-tasks) o utilice [GitHub Actions](/docs/es/github-actions).

12 12 

13<h2 id="compare-scheduling-options">13<h2 id="compare-scheduling-options">

14 Comparar opciones de programación14 Comparar opciones de programación


16 16 

17Claude Code offers three ways to schedule recurring or one-off work:17Claude Code offers three ways to schedule recurring or one-off work:

18 18 

19| | [Cloud](/en/routines) | [Desktop](/en/desktop-scheduled-tasks) | [`/loop`](/en/scheduled-tasks) |19| | [Cloud](/docs/en/routines) | [Desktop](/docs/en/desktop-scheduled-tasks) | [`/loop`](/docs/en/scheduled-tasks) |

20| :------------------------- | :----------------------------- | :------------------------------------- | :---------------------------------- |20| :------------------------- | :----------------------------- | :------------------------------------- | :---------------------------------- |

21| Runs on | Anthropic cloud | Your machine | Your machine |21| Runs on | Anthropic cloud | Your machine | Your machine |

22| Requires machine on | No | Yes | Yes |22| Requires machine on | No | Yes | Yes |

23| Requires open session | No | No | Yes |23| Requires open session | No | No | Yes |

24| Persistent across restarts | Yes | Yes | Restored on `--resume` if unexpired |24| Persistent across restarts | Yes | Yes | Restored on `--resume` if unexpired |

25| Access to local files | No (fresh clone) | Yes | Yes |25| Access to local files | No (fresh clone) | Yes | Yes |

26| MCP servers | Connectors configured per task | [Config files](/en/mcp) and connectors | Inherits from session |26| MCP servers | Connectors configured per task | [Config files](/docs/en/mcp) and connectors | Inherits from session |

27| Permission prompts | No (runs autonomously) | Configurable per task | Inherits from session |27| Permission prompts | No (runs autonomously) | Configurable per task | Inherits from session |

28| Customizable schedule | Via `/schedule` in the CLI | Yes | Yes |28| Customizable schedule | Via `/schedule` in the CLI | Yes | Yes |

29| Minimum interval | 1 hour | 1 minute | 1 minute |29| Minimum interval | 1 hour | 1 minute | 1 minute |


36 Ejecutar un prompt repetidamente con /loop36 Ejecutar un prompt repetidamente con /loop

37</h2>37</h2>

38 38 

39El `/loop` [bundled skill](/es/commands) es la forma más rápida de ejecutar un prompt repetidamente mientras la sesión permanece abierta. Tanto el intervalo como el prompt son opcionales, y lo que proporcione determina cómo se comporta el bucle.39El `/loop` [bundled skill](/docs/es/commands) es la forma más rápida de ejecutar un prompt repetidamente mientras la sesión permanece abierta. Tanto el intervalo como el prompt son opcionales, y lo que proporcione determina cómo se comporta el bucle.

40 40 

41| Lo que proporciona | Ejemplo | Qué sucede |41| Lo que proporciona | Ejemplo | Qué sucede |

42| :--------------------- | :-------------------------- | :-------------------------------------------------------------------------------------------------------------------- |42| :--------------------- | :-------------------------- | :-------------------------------------------------------------------------------------------------------------------- |


44| Solo prompt | `/loop check the deploy` | Su prompt se ejecuta en un [intervalo que Claude elige](#let-claude-choose-the-interval) en cada iteración |44| Solo prompt | `/loop check the deploy` | Su prompt se ejecuta en un [intervalo que Claude elige](#let-claude-choose-the-interval) en cada iteración |

45| Solo intervalo, o nada | `/loop` | El [prompt de mantenimiento integrado](#run-the-built-in-maintenance-prompt) se ejecuta, o su `loop.md` si existe uno |45| Solo intervalo, o nada | `/loop` | El [prompt de mantenimiento integrado](#run-the-built-in-maintenance-prompt) se ejecuta, o su `loop.md` si existe uno |

46 46 

47También puede pasar un skill como el prompt, por ejemplo `/loop 20m /review-pr 1234`, para volver a ejecutar ese skill en cada iteración. {/* min-version: 2.1.196 */}A partir de v2.1.196, un disparo programado solo ejecuta skills que Claude [está autorizado a invocar por su cuenta](/es/skills#control-who-invokes-a-skill). Lo siguiente llega a Claude como texto sin formato en lugar de ejecutarse:47También puede pasar un skill como el prompt, por ejemplo `/loop 20m /review-pr 1234`, para volver a ejecutar ese skill en cada iteración. {/* min-version: 2.1.196 */}A partir de v2.1.196, un disparo programado solo ejecuta skills que Claude [está autorizado a invocar por su cuenta](/docs/es/skills#control-who-invokes-a-skill). Lo siguiente llega a Claude como texto sin formato en lugar de ejecutarse:

48 48 

49* comandos integrados como `/permissions`, `/model`, o `/clear`49* comandos integrados como `/permissions`, `/model`, o `/clear`

50* skills marcados [`disable-model-invocation: true`](/es/skills#frontmatter-reference)50* skills marcados [`disable-model-invocation: true`](/docs/es/skills#frontmatter-reference)

51* skills retenidos de Claude por una configuración [`skillOverrides`](/es/skills#override-skill-visibility-from-settings) o una regla de [denegación](/es/skills#restrict-claude’s-skill-access) de `Skill`51* skills retenidos de Claude por una configuración [`skillOverrides`](/docs/es/skills#override-skill-visibility-from-settings) o una regla de [denegación](/docs/es/skills#restrict-claude’s-skill-access) de `Skill`

52* [prompts MCP](/es/mcp#use-mcp-prompts-as-commands) como `/mcp__github__list_prs`; los skills que expone un servidor MCP aún se ejecutan52* [prompts MCP](/docs/es/mcp#use-mcp-prompts-as-commands) como `/mcp__github__list_prs`; los skills que expone un servidor MCP aún se ejecutan

53 53 

54<h3 id="run-on-a-fixed-interval">54<h3 id="run-on-a-fixed-interval">

55 Ejecutar en un intervalo fijo55 Ejecutar en un intervalo fijo


77/loop check whether CI passed and address any review comments77/loop check whether CI passed and address any review comments

78```78```

79 79 

80Cuando solicita un horario `/loop` dinámico, Claude puede usar la [herramienta Monitor](/es/tools-reference#monitor-tool) directamente. Monitor ejecuta un script de fondo y transmite cada línea de salida, lo que evita el sondeo por completo y a menudo es más eficiente en tokens y más receptivo que volver a ejecutar un prompt en un intervalo.80Cuando solicita un horario `/loop` dinámico, Claude puede usar la [herramienta Monitor](/docs/es/tools-reference#monitor-tool) directamente. Monitor ejecuta un script de fondo y transmite cada línea de salida, lo que evita el sondeo por completo y a menudo es más eficiente en tokens y más receptivo que volver a ejecutar un prompt en un intervalo.

81 81 

82Un bucle programado dinámicamente aparece en su [lista de tareas programadas](#manage-scheduled-tasks) como cualquier otra tarea, por lo que puede enumerarla o cancelarla de la misma manera. Las [reglas de jitter](#jitter) no se aplican a ella, pero el [vencimiento de siete días](#seven-day-expiry) sí: el bucle termina automáticamente siete días después de iniciarlo.82Un bucle programado dinámicamente aparece en su [lista de tareas programadas](#manage-scheduled-tasks) como cualquier otra tarea, por lo que puede enumerarla o cancelarla de la misma manera. Las [reglas de jitter](#jitter) no se aplican a ella, pero el [vencimiento de siete días](#seven-day-expiry) sí: el bucle termina automáticamente siete días después de iniciarlo.

83 83 


141 141 

142Para detener un `/loop` mientras espera la siguiente iteración, presione `Esc`. Esto borra el despertar pendiente para que el bucle no se ejecute nuevamente. Las tareas que programó [pidiendo a Claude directamente](#manage-scheduled-tasks) no se ven afectadas por `Esc` y permanecen en su lugar hasta que las elimine.142Para detener un `/loop` mientras espera la siguiente iteración, presione `Esc`. Esto borra el despertar pendiente para que el bucle no se ejecute nuevamente. Las tareas que programó [pidiendo a Claude directamente](#manage-scheduled-tasks) no se ven afectadas por `Esc` y permanecen en su lugar hasta que las elimine.

143 143 

144En [modo de ritmo propio](#let-claude-choose-the-interval), Claude también puede terminar el bucle por su cuenta una vez que la tarea se complete. Claude llama a la herramienta [`ScheduleWakeup`](/es/tools-reference) con `stop: true`, que cancela el despertar pendiente inmediatamente. Si una iteración termina sin reprogramar ni detener, Claude Code programa un despertar de respaldo aproximadamente 20 minutos después y termina el bucle cuando esa iteración tampoco se reprograma. Antes de v2.1.202, no reprogramar era la única forma en que Claude podía terminar un bucle por su cuenta.144En [modo de ritmo propio](#let-claude-choose-the-interval), Claude también puede terminar el bucle por su cuenta una vez que la tarea se complete. Claude llama a la herramienta [`ScheduleWakeup`](/docs/es/tools-reference) con `stop: true`, que cancela el despertar pendiente inmediatamente. Si una iteración termina sin reprogramar ni detener, Claude Code programa un despertar de respaldo aproximadamente 20 minutos después y termina el bucle cuando esa iteración tampoco se reprograma. Antes de v2.1.202, no reprogramar era la única forma en que Claude podía terminar un bucle por su cuenta.

145 145 

146Los bucles en un intervalo fijo siguen ejecutándose hasta que los detenga o [transcurran siete días](#seven-day-expiry).146Los bucles en un intervalo fijo siguen ejecutándose hasta que los detenga o [transcurran siete días](#seven-day-expiry).

147 147 


208 Vencimiento de siete días208 Vencimiento de siete días

209</h3>209</h3>

210 210 

211Las tareas recurrentes expiran automáticamente 7 días después de su creación. La tarea se ejecuta una última vez, luego se elimina a sí misma. Esto limita cuánto tiempo puede ejecutarse un bucle olvidado. Si necesita que una tarea recurrente dure más, cancele y recree antes de que expire, o utilice [Routines](/es/routines) o [tareas programadas de Desktop](/es/desktop-scheduled-tasks) para programación duradera.211Las tareas recurrentes expiran automáticamente 7 días después de su creación. La tarea se ejecuta una última vez, luego se elimina a sí misma. Esto limita cuánto tiempo puede ejecutarse un bucle olvidado. Si necesita que una tarea recurrente dure más, cancele y recree antes de que expire, o utilice [Routines](/docs/es/routines) o [tareas programadas de Desktop](/docs/es/desktop-scheduled-tasks) para programación duradera.

212 212 

213<h2 id="cron-expression-reference">213<h2 id="cron-expression-reference">

214 Referencia de expresión cron214 Referencia de expresión cron


233 Deshabilitar tareas programadas233 Deshabilitar tareas programadas

234</h2>234</h2>

235 235 

236Establezca `CLAUDE_CODE_DISABLE_CRON=1` en su entorno para deshabilitar completamente el programador. Las herramientas cron y `/loop` dejan de estar disponibles, y cualquier tarea ya programada deja de ejecutarse. Consulte [Variables de entorno](/es/env-vars) para la lista completa de banderas de deshabilitación.236Establezca `CLAUDE_CODE_DISABLE_CRON=1` en su entorno para deshabilitar completamente el programador. Las herramientas cron y `/loop` dejan de estar disponibles, y cualquier tarea ya programada deja de ejecutarse. Consulte [Variables de entorno](/docs/es/env-vars) para la lista completa de banderas de deshabilitación.

237 237 

238<h2 id="limitations">238<h2 id="limitations">

239 Limitaciones239 Limitaciones


241 241 

242La programación con alcance de sesión tiene limitaciones inherentes:242La programación con alcance de sesión tiene limitaciones inherentes:

243 243 

244* Las tareas solo se ejecutan mientras Claude Code está ejecutándose e inactivo. Cerrar la terminal o dejar que la sesión salga detiene su ejecución. [Poner la sesión en segundo plano](/es/agent-view#from-inside-a-session) traslada las tareas `/loop` a una sesión en segundo plano, que sigue ejecutándose sin una terminal.244* Las tareas solo se ejecutan mientras Claude Code está ejecutándose e inactivo. Cerrar la terminal o dejar que la sesión salga detiene su ejecución. [Poner la sesión en segundo plano](/docs/es/agent-view#from-inside-a-session) traslada las tareas `/loop` a una sesión en segundo plano, que sigue ejecutándose sin una terminal.

245* Sin recuperación de disparos perdidos. Si el tiempo programado de una tarea pasa mientras Claude está ocupado en una solicitud de larga duración, se ejecuta una vez cuando Claude queda inactivo, no una vez por intervalo perdido.245* Sin recuperación de disparos perdidos. Si el tiempo programado de una tarea pasa mientras Claude está ocupado en una solicitud de larga duración, se ejecuta una vez cuando Claude queda inactivo, no una vez por intervalo perdido.

246* Iniciar una conversación nueva borra todas las tareas con alcance de sesión. Reanudar con `claude --resume` o `claude --continue` restaura tareas que no han expirado: tareas recurrentes dentro de siete días de creación, y tareas únicas cuyo tiempo programado aún no ha pasado. Las tareas de Bash de fondo y monitor nunca se restauran al reanudar.246* Iniciar una conversación nueva borra todas las tareas con alcance de sesión. Reanudar con `claude --resume` o `claude --continue` restaura tareas que no han expirado: tareas recurrentes dentro de siete días de creación, y tareas únicas cuyo tiempo programado aún no ha pasado. Las tareas de Bash de fondo y monitor nunca se restauran al reanudar.

247 247 

248Para la automatización impulsada por cron que necesita ejecutarse sin supervisión:248Para la automatización impulsada por cron que necesita ejecutarse sin supervisión:

249 249 

250* [Routines](/es/routines): se ejecutan en infraestructura administrada por Anthropic en un horario, mediante llamada a API o en eventos de GitHub250* [Routines](/docs/es/routines): se ejecutan en infraestructura administrada por Anthropic en un horario, mediante llamada a API o en eventos de GitHub

251* [GitHub Actions](/es/github-actions): utilice un disparador `schedule` en CI251* [GitHub Actions](/docs/es/github-actions): utilice un disparador `schedule` en CI

252* [tareas programadas de Desktop](/es/desktop-scheduled-tasks): se ejecutan localmente en su máquina252* [tareas programadas de Desktop](/docs/es/desktop-scheduled-tasks): se ejecutan localmente en su máquina

Details

10 10 

11Una vez instalado, el plugin se ejecuta automáticamente. No hay nada que invocar y ningún comando separado que recordar.11Una vez instalado, el plugin se ejecuta automáticamente. No hay nada que invocar y ningún comando separado que recordar.

12 12 

13El plugin es el compañero en sesión de [Code Review](/es/code-review), que se ejecuta en solicitudes de extracción. Este plugin reduce lo que llega al PR. Code Review atrapa lo que hace. Para ver cómo el plugin se superpone con revisión bajo demanda y escaneo de CI, consulte [Cómo se ajusta esto con otras herramientas de seguridad](#how-this-fits-with-other-security-tools).13El plugin es el compañero en sesión de [Code Review](/docs/es/code-review), que se ejecuta en solicitudes de extracción. Este plugin reduce lo que llega al PR. Code Review atrapa lo que hace. Para ver cómo el plugin se superpone con revisión bajo demanda y escaneo de CI, consulte [Cómo se ajusta esto con otras herramientas de seguridad](#how-this-fits-with-other-security-tools).

14 14 

15<h2 id="prerequisites">15<h2 id="prerequisites">

16 Requisitos previos16 Requisitos previos


26 Instalar el plugin26 Instalar el plugin

27</h2>27</h2>

28 28 

29En una sesión de Claude Code, instale desde el [marketplace oficial de Anthropic](/es/discover-plugins#official-anthropic-marketplace):29En una sesión de Claude Code, instale desde el [marketplace oficial de Anthropic](/docs/es/discover-plugins#official-anthropic-marketplace):

30 30 

31```text theme={null}31```text theme={null}

32/plugin install security-guidance@claude-plugins-official32/plugin install security-guidance@claude-plugins-official


44 Habilitar en sesiones en la nube y repositorios compartidos44 Habilitar en sesiones en la nube y repositorios compartidos

45</h3>45</h3>

46 46 

47Los plugins con alcance de usuario no se transfieren a [Claude Code en la web](/es/claude-code-on-the-web), porque esas sesiones se ejecutan en la infraestructura de Anthropic en lugar de su máquina. Para habilitar el plugin allí, o para activarlo para todos los que clonan un repositorio, declárelo en la configuración del proyecto registrada:47Los plugins con alcance de usuario no se transfieren a [Claude Code en la web](/docs/es/claude-code-on-the-web), porque esas sesiones se ejecutan en la infraestructura de Anthropic en lugar de su máquina. Para habilitar el plugin allí, o para activarlo para todos los que clonan un repositorio, declárelo en la configuración del proyecto registrada:

48 48 

49```json .claude/settings.json theme={null}49```json .claude/settings.json theme={null}

50{50{


54}54}

55```55```

56 56 

57Los administradores pueden habilitar el plugin en toda la organización configurando [`enabledPlugins`](/es/settings#plugin-settings) en [configuración administrada](/es/admin-setup).57Los administradores pueden habilitar el plugin en toda la organización configurando [`enabledPlugins`](/docs/es/settings#plugin-settings) en [configuración administrada](/docs/es/admin-setup).

58 58 

59<h2 id="what-the-plugin-checks">59<h2 id="what-the-plugin-checks">

60 Qué verifica el plugin60 Qué verifica el plugin


139- Use `crypto.timingSafeEqual` for token comparison instead of `===`.139- Use `crypto.timingSafeEqual` for token comparison instead of `===`.

140```140```

141 141 

142Estas reglas son orientación para el revisor, no guardrails deterministas. El plugin expone las violaciones como hallazgos para que Claude las corrija, pero no bloquea escrituras ni garantiza que se detecte cada violación. La orientación es solo aditiva: una regla que dice ignorar una clase de vulnerabilidad no suprime esos hallazgos. Para aplicación estricta, empareje el plugin con un [hook que bloquee la edición](/es/hooks-guide#block-edits-to-protected-files) o una verificación de CI.142Estas reglas son orientación para el revisor, no guardrails deterministas. El plugin expone las violaciones como hallazgos para que Claude las corrija, pero no bloquea escrituras ni garantiza que se detecte cada violación. La orientación es solo aditiva: una regla que dice ignorar una clase de vulnerabilidad no suprime esos hallazgos. Para aplicación estricta, empareje el plugin con un [hook que bloquee la edición](/docs/es/hooks-guide#block-edits-to-protected-files) o una verificación de CI.

143 143 

144<h3 id="add-custom-per-edit-patterns">144<h3 id="add-custom-per-edit-patterns">

145 Agregue patrones personalizados por edición145 Agregue patrones personalizados por edición


187 Costo de uso187 Costo de uso

188</h2>188</h2>

189 189 

190La [verificación de patrón por edición](#on-each-file-edit) no realiza llamada de modelo y no agrega costo. Las revisiones de [fin de turno](#at-the-end-of-each-turn) y [confirmación](#on-each-commit-or-push-claude-makes) cada una gasta uso de modelo adicional que cuenta hacia su [uso](/es/costs) como cualquier otra solicitud de Claude. La revisión de confirmación es agéntica y puede tomar varios turnos de modelo por confirmación, limitada a 20 revisiones por hora móvil. Espere aproximadamente una llamada de revisión por turno que cambie archivos y una revisión más profunda por confirmación, ambas sujetas a los límites anteriores.190La [verificación de patrón por edición](#on-each-file-edit) no realiza llamada de modelo y no agrega costo. Las revisiones de [fin de turno](#at-the-end-of-each-turn) y [confirmación](#on-each-commit-or-push-claude-makes) cada una gasta uso de modelo adicional que cuenta hacia su [uso](/docs/es/costs) como cualquier otra solicitud de Claude. La revisión de confirmación es agéntica y puede tomar varios turnos de modelo por confirmación, limitada a 20 revisiones por hora móvil. Espere aproximadamente una llamada de revisión por turno que cambie archivos y una revisión más profunda por confirmación, ambas sujetas a los límites anteriores.

191 191 

192Ambas revisiones respaldadas por modelo usan Claude Opus 4.7 de forma predeterminada. Configure `SECURITY_REVIEW_MODEL` para elegir un modelo diferente para la revisión de fin de turno y `SG_AGENTIC_MODEL` para la revisión de confirmación.192Ambas revisiones respaldadas por modelo usan Claude Opus 4.7 de forma predeterminada. Configure `SECURITY_REVIEW_MODEL` para elegir un modelo diferente para la revisión de fin de turno y `SG_AGENTIC_MODEL` para la revisión de confirmación.

193 193 


219/plugin uninstall security-guidance@claude-plugins-official219/plugin uninstall security-guidance@claude-plugins-official

220```220```

221 221 

222Si el plugin se habilitó a través del `.claude/settings.json` de un proyecto, deshabilitarlo desde `/plugin` escribe una anulación a su `.claude/settings.local.json` en lugar de editar el archivo registrado, por lo que el plugin permanece desactivado para usted mientras que los compañeros de equipo no se ven afectados. {/* min-version: 2.1.203 */}El mismo diálogo también ofrece desinstalar el plugin para todos eliminándolo del `.claude/settings.json` compartido; esa opción requiere Claude Code v2.1.203 o posterior. Si se habilitó a través de [configuración administrada](/es/admin-setup), solo un administrador puede deshabilitarlo.222Si el plugin se habilitó a través del `.claude/settings.json` de un proyecto, deshabilitarlo desde `/plugin` escribe una anulación a su `.claude/settings.local.json` en lugar de editar el archivo registrado, por lo que el plugin permanece desactivado para usted mientras que los compañeros de equipo no se ven afectados. El mismo diálogo también ofrece desinstalar el plugin para todos eliminándolo del `.claude/settings.json` compartido; esa opción requiere Claude Code v2.1.203 o posterior. Si se habilitó a través de [configuración administrada](/docs/es/admin-setup), solo un administrador puede deshabilitarlo.

223 223 

224<h2 id="how-the-plugin-integrates-with-claude-code">224<h2 id="how-the-plugin-integrates-with-claude-code">

225 Cómo se integra el plugin con Claude Code225 Cómo se integra el plugin con Claude Code

226</h2>226</h2>

227 227 

228El plugin se construye completamente en [hooks](/es/hooks), el mecanismo para ejecutar su propio código en puntos específicos del bucle de Claude. Se registra:228El plugin se construye completamente en [hooks](/docs/es/hooks), el mecanismo para ejecutar su propio código en puntos específicos del bucle de Claude. Se registra:

229 229 

230| Evento de hook | Propósito |230| Evento de hook | Propósito |

231| :------------------------------------------------------------ | :---------------------------------------------------------------------------------------------------------- |231| :------------------------------------------------------------ | :---------------------------------------------------------------------------------------------------------- |


246| Etapa | Herramienta | Qué cubre |246| Etapa | Herramienta | Qué cubre |

247| :------------------------- | :---------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------- |247| :------------------------- | :---------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------- |

248| En sesión | Plugin de orientación de seguridad | Vulnerabilidades comunes en código que Claude escribe, corregidas en la misma sesión |248| En sesión | Plugin de orientación de seguridad | Vulnerabilidades comunes en código que Claude escribe, corregidas en la misma sesión |

249| Bajo demanda | [`/security-review`](/es/commands#all-commands) | Paso de seguridad único en la rama actual, ejecutado cuando lo solicita |249| Bajo demanda | [`/security-review`](/docs/es/commands#all-commands) | Paso de seguridad único en la rama actual, ejecutado cuando lo solicita |

250| En solicitud de extracción | [Code Review](/es/code-review), planes de equipo y empresa | Revisión de corrección y seguridad multiagente con contexto completo de base de código |250| En solicitud de extracción | [Code Review](/docs/es/code-review), planes de equipo y empresa | Revisión de corrección y seguridad multiagente con contexto completo de base de código |

251| En CI | Sus analizadores estáticos existentes y escáneres de dependencias | Reglas específicas del idioma, verificaciones de cadena de suministro y aplicación de políticas que el plugin no intenta |251| En CI | Sus analizadores estáticos existentes y escáneres de dependencias | Reglas específicas del idioma, verificaciones de cadena de suministro y aplicación de políticas que el plugin no intenta |

252 252 

253Cada etapa posterior atrapa lo que las anteriores pierden. El valor del plugin es reducir el volumen que llega a ellas, no eliminar la necesidad de ellas.253Cada etapa posterior atrapa lo que las anteriores pierden. El valor del plugin es reducir el volumen que llega a ellas, no eliminar la necesidad de ellas.


270 270 

271Para profundizar en los temas que toca esta página:271Para profundizar en los temas que toca esta página:

272 272 

273* [Code Review](/es/code-review): configurar la revisión multiagente en tiempo de PR273* [Code Review](/docs/es/code-review): configurar la revisión multiagente en tiempo de PR

274* [Automatizar flujos de trabajo con hooks](/es/hooks-guide): construir sus propias verificaciones en los mismos puntos del ciclo de vida274* [Automatizar flujos de trabajo con hooks](/docs/es/hooks-guide): construir sus propias verificaciones en los mismos puntos del ciclo de vida

275* [Descubrir e instalar plugins](/es/discover-plugins#official-anthropic-marketplace): explorar otros plugins oficiales275* [Descubrir e instalar plugins](/docs/es/discover-plugins#official-anthropic-marketplace): explorar otros plugins oficiales

Details

28 Elegir entre configuración administrada por servidor y administrada por endpoint28 Elegir entre configuración administrada por servidor y administrada por endpoint

29</h2>29</h2>

30 30 

31Claude Code admite dos enfoques para la configuración centralizada. La configuración administrada por servidor entrega la configuración desde los servidores de Anthropic. La [configuración administrada por endpoint](/es/settings#settings-files) se implementa directamente en dispositivos a través de políticas nativas del sistema operativo (preferencias administradas de macOS, registro de Windows) o archivos de configuración administrados.31Claude Code admite dos enfoques para la configuración centralizada. La configuración administrada por servidor entrega la configuración desde los servidores de Anthropic. La [configuración administrada por endpoint](/docs/es/settings#settings-files) se implementa directamente en dispositivos a través de políticas nativas del sistema operativo (preferencias administradas de macOS, registro de Windows) o archivos de configuración administrados.

32 32 

33| Enfoque | Mejor para | Modelo de seguridad |33| Enfoque | Mejor para | Modelo de seguridad |

34| :------------------------------------------------------------------------- | :------------------------------------------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------- |34| :------------------------------------------------------------------------- | :------------------------------------------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------- |

35| **Configuración administrada por servidor** | Organizaciones sin MDM, o usuarios en dispositivos no administrados | Configuración entregada desde los servidores de Anthropic en el momento de la autenticación |35| **Configuración administrada por servidor** | Organizaciones sin MDM, o usuarios en dispositivos no administrados | Configuración entregada desde los servidores de Anthropic en el momento de la autenticación |

36| **[Configuración administrada por endpoint](/es/settings#settings-files)** | Organizaciones con MDM o administración de endpoint | Configuración implementada en dispositivos a través de perfiles de configuración MDM, políticas de registro o archivos de configuración administrados |36| **[Configuración administrada por endpoint](/docs/es/settings#settings-files)** | Organizaciones con MDM o administración de endpoint | Configuración implementada en dispositivos a través de perfiles de configuración MDM, políticas de registro o archivos de configuración administrados |

37 37 

38Si sus dispositivos están inscritos en una solución MDM o de administración de endpoint, la configuración administrada por endpoint proporciona garantías de seguridad más sólidas porque el archivo de configuración puede protegerse de la modificación del usuario a nivel del sistema operativo. La configuración administrada por endpoint no llega a las [sesiones en la nube](/es/model-config#surface-coverage), por lo que las organizaciones que utilizan Claude Code en la web también deben configurar la configuración administrada por servidor.38Si sus dispositivos están inscritos en una solución MDM o de administración de endpoint, la configuración administrada por endpoint proporciona garantías de seguridad más sólidas porque el archivo de configuración puede protegerse de la modificación del usuario a nivel del sistema operativo. La configuración administrada por endpoint no llega a las [sesiones en la nube](/docs/es/model-config#surface-coverage), por lo que las organizaciones que utilizan Claude Code en la web también deben configurar la configuración administrada por servidor.

39 39 

40<h2 id="configure-server-managed-settings">40<h2 id="configure-server-managed-settings">

41 Configurar la configuración administrada por servidor41 Configurar la configuración administrada por servidor


49 </Step>49 </Step>

50 50 

51 <Step title="Definir su configuración">51 <Step title="Definir su configuración">

52 Agregue su configuración como JSON. Todas las [configuraciones disponibles en `settings.json`](/es/settings#available-settings) son compatibles excepto las restringidas a la entrega de políticas a nivel del sistema operativo; consulte [Limitaciones actuales](#current-limitations) para esa lista breve. Esto incluye [hooks](/es/hooks), [variables de entorno](/es/env-vars) y [configuraciones solo administradas](/es/permissions#managed-only-settings) como `allowManagedPermissionRulesOnly`.52 Agregue su configuración como JSON. Todas las [configuraciones disponibles en `settings.json`](/docs/es/settings#available-settings) son compatibles excepto las restringidas a la entrega de políticas a nivel del sistema operativo; consulte [Limitaciones actuales](#current-limitations) para esa lista breve. Esto incluye [hooks](/docs/es/hooks), [variables de entorno](/docs/es/env-vars) y [configuraciones solo administradas](/docs/es/permissions#managed-only-settings) como `allowManagedPermissionRulesOnly`.

53 53 

54 Este ejemplo aplica una lista de denegación de permisos, impide que los usuarios omitan permisos y restringe las reglas de permisos a las definidas en la configuración administrada:54 Este ejemplo aplica una lista de denegación de permisos, impide que los usuarios omitan permisos y restringe las reglas de permisos a las definidas en la configuración administrada:

55 55 


87 }87 }

88 ```88 ```

89 89 

90 Para configurar el clasificador del [modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode) para que sepa qué repositorios, buckets y dominios confía su organización:90 Para configurar el clasificador del [modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode) para que sepa qué repositorios, buckets y dominios confía su organización:

91 91 

92 ```json theme={null}92 ```json theme={null}

93 {93 {


101 }101 }

102 ```102 ```

103 103 

104 Debido a que los hooks ejecutan comandos de shell, los usuarios ven un [diálogo de aprobación de seguridad](#security-approval-dialogs) antes de que se apliquen. Consulte [Configurar el modo automático](/es/auto-mode-config) para ver cómo las entradas de `autoMode` afectan lo que el clasificador bloquea y advertencias importantes sobre los campos `environment`, `allow`, `soft_deny` y `hard_deny`.104 Debido a que los hooks ejecutan comandos de shell, los usuarios ven un [diálogo de aprobación de seguridad](#security-approval-dialogs) antes de que se apliquen. Consulte [Configurar el modo automático](/docs/es/auto-mode-config) para ver cómo las entradas de `autoMode` afectan lo que el clasificador bloquea y advertencias importantes sobre los campos `environment`, `allow`, `soft_deny` y `hard_deny`.

105 </Step>105 </Step>

106 106 

107 <Step title="Guardar e implementar">107 <Step title="Guardar e implementar">


130 Configuraciones solo administradas130 Configuraciones solo administradas

131</h3>131</h3>

132 132 

133La mayoría de las [claves de configuración](/es/settings#available-settings) funcionan en cualquier ámbito. Un puñado de claves solo se leen de la configuración administrada y no tienen efecto cuando se colocan en archivos de configuración de usuario o proyecto. Consulte [configuraciones solo administradas](/es/permissions#managed-only-settings) para obtener la lista completa. Cualquier configuración que no esté en esa lista aún puede colocarse en la configuración administrada y tiene la precedencia más alta.133La mayoría de las [claves de configuración](/docs/es/settings#available-settings) funcionan en cualquier ámbito. Un puñado de claves solo se leen de la configuración administrada y no tienen efecto cuando se colocan en archivos de configuración de usuario o proyecto. Consulte [configuraciones solo administradas](/docs/es/permissions#managed-only-settings) para obtener la lista completa. Cualquier configuración que no esté en esa lista aún puede colocarse en la configuración administrada y tiene la precedencia más alta.

134 134 

135<h3 id="current-limitations">135<h3 id="current-limitations">

136 Limitaciones actuales136 Limitaciones actuales


139La configuración administrada por servidor tiene las siguientes limitaciones:139La configuración administrada por servidor tiene las siguientes limitaciones:

140 140 

141* La configuración se aplica uniformemente a todos los usuarios de la organización. Las configuraciones por grupo aún no son compatibles.141* La configuración se aplica uniformemente a todos los usuarios de la organización. Las configuraciones por grupo aún no son compatibles.

142* Un archivo [`managed-mcp.json`](/es/managed-mcp) no se puede distribuir a través de la configuración administrada por servidor. Entregue las claves de política `allowedMcpServers` y `deniedMcpServers` allí en su lugar.142* Un archivo [`managed-mcp.json`](/docs/es/managed-mcp) no se puede distribuir a través de la configuración administrada por servidor. Entregue las claves de política `allowedMcpServers` y `deniedMcpServers` allí en su lugar.

143* Las configuraciones restringidas a fuentes de políticas a nivel del sistema operativo, como `policyHelper` y `wslInheritsWindowsSettings`, no se respetan. Impleméntelas a través de MDM o un archivo `managed-settings.json` del sistema en su lugar.143* Las configuraciones restringidas a fuentes de políticas a nivel del sistema operativo, como `policyHelper` y `wslInheritsWindowsSettings`, no se respetan. Impleméntelas a través de MDM o un archivo `managed-settings.json` del sistema en su lugar.

144 144 

145<h2 id="settings-delivery">145<h2 id="settings-delivery">


150 Precedencia de configuración150 Precedencia de configuración

151</h3>151</h3>

152 152 

153La configuración administrada por servidor y la [configuración administrada por endpoint](/es/settings#settings-files) ocupan el nivel más alto en la [jerarquía de configuración](/es/settings#settings-precedence) de Claude Code. Ningún otro nivel de configuración puede anularlas, incluidos los argumentos de línea de comandos.153La configuración administrada por servidor y la [configuración administrada por endpoint](/docs/es/settings#settings-files) ocupan el nivel más alto en la [jerarquía de configuración](/docs/es/settings#settings-precedence) de Claude Code. Ningún otro nivel de configuración puede anularlas, incluidos los argumentos de línea de comandos.

154 154 

155Dentro del nivel administrado, una [policyHelper](/es/settings#compute-managed-settings-with-a-policy-helper) configurada tiene prioridad sobre todas las demás fuentes administradas, incluida la configuración administrada por servidor: su salida se convierte en la única configuración administrada para la ejecución.155Dentro del nivel administrado, una [policyHelper](/docs/es/settings#compute-managed-settings-with-a-policy-helper) configurada tiene prioridad sobre todas las demás fuentes administradas, incluida la configuración administrada por servidor: su salida se convierte en la única configuración administrada para la ejecución.

156 156 

157De lo contrario, Claude Code utiliza la primera fuente que entrega una configuración no vacía. La configuración administrada por servidor se verifica primero, luego la configuración administrada por endpoint. Las fuentes no se fusionan: si la configuración administrada por servidor entrega alguna clave, la configuración administrada por endpoint se ignora. Si la configuración administrada por servidor no entrega nada, se aplica la configuración administrada por endpoint.157De lo contrario, Claude Code utiliza la primera fuente que entrega una configuración no vacía. La configuración administrada por servidor se verifica primero, luego la configuración administrada por endpoint. Las fuentes no se fusionan: si la configuración administrada por servidor entrega alguna clave, la configuración administrada por endpoint se ignora. Si la configuración administrada por servidor no entrega nada, se aplica la configuración administrada por endpoint.

158 158 

159Se aplica una excepción: un pequeño conjunto de [claves de bloqueo entre fuentes](/es/settings#settings-precedence), como los bloqueos de lista de permitidos de sandbox, se respeta cuando cualquier fuente administrada controlada por administrador los establece; el nivel de registro HKCU escribible por el usuario se excluye.159Se aplica una excepción: un pequeño conjunto de [claves de bloqueo entre fuentes](/docs/es/settings#settings-precedence), como los bloqueos de lista de permitidos de sandbox, se respeta cuando cualquier fuente administrada controlada por administrador los establece; el nivel de registro HKCU escribible por el usuario se excluye.

160 160 

161Si borra su configuración administrada por servidor en la consola de administración con la intención de volver a una política plist administrada por endpoint o de registro, tenga en cuenta que la [configuración en caché](#fetch-and-caching-behavior) persiste en máquinas cliente hasta la siguiente obtención exitosa. Ejecute `/status` para ver qué fuente administrada está activa.161Si borra su configuración administrada por servidor en la consola de administración con la intención de volver a una política plist administrada por endpoint o de registro, tenga en cuenta que la [configuración en caché](#fetch-and-caching-behavior) persiste en máquinas cliente hasta la siguiente obtención exitosa. Ejecute `/status` para ver qué fuente administrada está activa.

162 162 


178* Claude Code obtiene configuración nueva en segundo plano178* Claude Code obtiene configuración nueva en segundo plano

179* La configuración en caché persiste a través de fallos de red. Las variables retenidas permanecen retenidas hasta que una obtención se realiza correctamente179* La configuración en caché persiste a través de fallos de red. Las variables retenidas permanecen retenidas hasta que una obtención se realiza correctamente

180 180 

181A partir de v2.1.198, Claude Code retiene tres categorías de variables en el bloque `env` en caché hasta que el servidor confirma la carga útil para la sesión. Esto evita que un valor de proxy, autoridad de certificación, endpoint o credencial en caché redirija, intercepte o reautentique la obtención de configuración que confirma la carga útil. El endurecimiento se aplica solo a la caché de configuración obtenida del servidor: la [configuración administrada por endpoint](/es/settings#settings-files) implementada a través de MDM o `managed-settings.json` no se ve afectada. Las categorías retenidas son:181A partir de v2.1.198, Claude Code retiene tres categorías de variables en el bloque `env` en caché hasta que el servidor confirma la carga útil para la sesión. Esto evita que un valor de proxy, autoridad de certificación, endpoint o credencial en caché redirija, intercepte o reautentique la obtención de configuración que confirma la carga útil. El endurecimiento se aplica solo a la caché de configuración obtenida del servidor: la [configuración administrada por endpoint](/docs/es/settings#settings-files) implementada a través de MDM o `managed-settings.json` no se ve afectada. Las categorías retenidas son:

182 182 

183* Configuración de proxy y TLS, como `HTTPS_PROXY`, `NODE_EXTRA_CA_CERTS` y las variables de certificado de cliente mTLS `CLAUDE_CODE_CLIENT_CERT` y `CLAUDE_CODE_CLIENT_KEY`183* Configuración de proxy y TLS, como `HTTPS_PROXY`, `NODE_EXTRA_CA_CERTS` y las variables de certificado de cliente mTLS `CLAUDE_CODE_CLIENT_CERT` y `CLAUDE_CODE_CLIENT_KEY`

184* Enrutamiento de API y selección de proveedor, incluido `ANTHROPIC_BASE_URL`, las variables de selección de proveedor como `CLAUDE_CODE_USE_BEDROCK` y `CLAUDE_CODE_USE_VERTEX`, y las URL de endpoint del proveedor como `ANTHROPIC_BEDROCK_BASE_URL`184* Enrutamiento de API y selección de proveedor, incluido `ANTHROPIC_BASE_URL`, las variables de selección de proveedor como `CLAUDE_CODE_USE_BEDROCK` y `CLAUDE_CODE_USE_VERTEX`, y las URL de endpoint del proveedor como `ANTHROPIC_BEDROCK_BASE_URL`


186 186 

187Todas las demás claves en el bloque `env` en caché, como la telemetría y la configuración de OpenTelemetry, se aplican al inicio como antes. Una vez que la obtención se realiza correctamente, las variables retenidas se aplican para el resto de la sesión.187Todas las demás claves en el bloque `env` en caché, como la telemetría y la configuración de OpenTelemetry, se aplican al inicio como antes. Una vez que la obtención se realiza correctamente, las variables retenidas se aplican para el resto de la sesión.

188 188 

189Si su organización necesita un proxy para llegar a `api.anthropic.com`, establézcalo en el entorno de shell o en la [configuración del usuario](/es/settings#settings-files) en lugar de solo en el bloque `env` administrado. El primer lanzamiento no tiene caché, por lo que esas fuentes ya eran necesarias para la obtención inicial.189Si su organización necesita un proxy para llegar a `api.anthropic.com`, establézcalo en el entorno de shell o en la [configuración del usuario](/docs/es/settings#settings-files) en lugar de solo en el bloque `env` administrado. El primer lanzamiento no tiene caché, por lo que esas fuentes ya eran necesarias para la obtención inicial.

190 190 

191Claude Code aplica actualizaciones de configuración automáticamente sin reinicio, excepto para configuraciones avanzadas como la configuración de OpenTelemetry, que requieren un reinicio completo para tomar efecto.191Claude Code aplica actualizaciones de configuración automáticamente sin reinicio, excepto para configuraciones avanzadas como la configuración de OpenTelemetry, que requieren un reinicio completo para tomar efecto.

192 192 


194 Entradas inválidas en la configuración entregada194 Entradas inválidas en la configuración entregada

195</h3>195</h3>

196 196 

197Las cargas útiles entregadas se analizan de forma tolerante con las mismas reglas que las otras fuentes administradas. Cuando una carga útil contiene una entrada que falla en la validación del esquema, Claude Code elimina esa entrada, muestra un error de validación y aplica todas las configuraciones válidas restantes. Consulte [Entradas inválidas en configuración administrada](/es/settings#invalid-entries-in-managed-settings) para el comportamiento a nivel de campo, incluida la forma en que se manejan los campos de aplicación de seguridad. Requiere Claude Code v2.1.169 o posterior.197Las cargas útiles entregadas se analizan de forma tolerante con las mismas reglas que las otras fuentes administradas. Cuando una carga útil contiene una entrada que falla en la validación del esquema, Claude Code elimina esa entrada, muestra un error de validación y aplica todas las configuraciones válidas restantes. Consulte [Entradas inválidas en configuración administrada](/docs/es/settings#invalid-entries-in-managed-settings) para el comportamiento a nivel de campo, incluida la forma en que se manejan los campos de aplicación de seguridad. Requiere Claude Code v2.1.169 o posterior.

198 198 

199La entrega administrada por servidor agrega estos comportamientos:199La entrega administrada por servidor agrega estos comportamientos:

200 200 


220}220}

221```221```

222 222 

223También puede establecer esta clave en un [perfil MDM administrado por endpoint](/es/settings#settings-files) o archivo `managed-settings.json` del sistema para aplicar el comportamiento de cierre por fallo en el primer lanzamiento, antes de que se entregue ninguna carga útil del servidor. A partir de v2.1.191, esta bandera es una excepción a la [regla de precedencia](#settings-precedence) anterior: se respeta cuando se establece en cualquier fuente administrada incluso si también está presente una carga útil en caché administrada por servidor, por lo que un valor entregado por MDM no se ignora cuando existen configuraciones administradas por servidor.223También puede establecer esta clave en un [perfil MDM administrado por endpoint](/docs/es/settings#settings-files) o archivo `managed-settings.json` del sistema para aplicar el comportamiento de cierre por fallo en el primer lanzamiento, antes de que se entregue ninguna carga útil del servidor. A partir de v2.1.191, esta bandera es una excepción a la [regla de precedencia](#settings-precedence) anterior: se respeta cuando se establece en cualquier fuente administrada incluso si también está presente una carga útil en caché administrada por servidor, por lo que un valor entregado por MDM no se ignora cuando existen configuraciones administradas por servidor.

224 224 

225La obtención de configuración también envía un encabezado `Cache-Control: no-cache` para que los proxies HTTP intermedios no sirvan una respuesta obsoleta.225La obtención de configuración también envía un encabezado `Cache-Control: no-cache` para que los proxies HTTP intermedios no sirvan una respuesta obsoleta.

226 226 


249 Disponibilidad de plataforma249 Disponibilidad de plataforma

250</h2>250</h2>

251 251 

252La configuración administrada por servidor requiere una conexión directa a `api.anthropic.com`, y la entrega requiere que la sesión se autentique con un inicio de sesión OAuth de organización o una clave API configurada directamente. Las claves devueltas por un script [`apiKeyHelper`](/es/settings#available-settings) no activan la búsqueda de configuración.252La configuración administrada por servidor requiere una conexión directa a `api.anthropic.com`, y la entrega requiere que la sesión se autentique con un inicio de sesión OAuth de organización o una clave API configurada directamente. Las claves devueltas por un script [`apiKeyHelper`](/docs/es/settings#available-settings) no activan la búsqueda de configuración.

253 253 

254La configuración administrada por servidor no está disponible cuando se utilizan proveedores de modelos de terceros:254La configuración administrada por servidor no está disponible cuando se utilizan proveedores de modelos de terceros:

255 255 

256* Amazon Bedrock256* Amazon Bedrock

257* Google Cloud's Agent Platform257* Google Cloud's Agent Platform

258* Microsoft Foundry258* Microsoft Foundry

259* [Claude Platform on AWS](/es/claude-platform-on-aws)259* [Claude Platform on AWS](/docs/es/claude-platform-on-aws)

260* Endpoints de API personalizados a través de `ANTHROPIC_BASE_URL` o [puertas de enlace LLM](/es/llm-gateway) de terceros260* Endpoints de API personalizados a través de `ANTHROPIC_BASE_URL` o [puertas de enlace LLM](/docs/es/llm-gateway) de terceros

261 261 

262Si exporta una variable de proveedor `CLAUDE_CODE_USE_*` o una `ANTHROPIC_BASE_URL` no predeterminada en su shell, Claude Code omite la búsqueda de configuración para sus sesiones. No puede borrar la exportación con un bloque `env` administrado por servidor, porque el bloque llega a través de la búsqueda que la exportación impide. Un bloque `env` de [configuración administrada por endpoint](/es/settings#settings-files) tampoco restaura la búsqueda: Claude Code verifica la elegibilidad antes de aplicar bloques `env` administrados, por lo que la anulación cambia la selección de proveedor de la sesión pero la búsqueda permanece omitida.262Si exporta una variable de proveedor `CLAUDE_CODE_USE_*` o una `ANTHROPIC_BASE_URL` no predeterminada en su shell, Claude Code omite la búsqueda de configuración para sus sesiones. No puede borrar la exportación con un bloque `env` administrado por servidor, porque el bloque llega a través de la búsqueda que la exportación impide. Un bloque `env` de [configuración administrada por endpoint](/docs/es/settings#settings-files) tampoco restaura la búsqueda: Claude Code verifica la elegibilidad antes de aplicar bloques `env` administrados, por lo que la anulación cambia la selección de proveedor de la sesión pero la búsqueda permanece omitida.

263 263 

264Para restaurar la entrega administrada por servidor, elimine la exportación de su shell, o establezca la variable en `""` en su bloque `env` de configuración de usuario, que se aplica antes de la verificación de elegibilidad. Para aplicar la política sin depender de que los usuarios cambien sus shells, entregue la configuración a través del canal administrado por endpoint en su lugar.264Para restaurar la entrega administrada por servidor, elimine la exportación de su shell, o establezca la variable en `""` en su bloque `env` de configuración de usuario, que se aplica antes de la verificación de elegibilidad. Para aplicar la política sin depender de que los usuarios cambien sus shells, entregue la configuración a través del canal administrado por endpoint en su lugar.

265 265 

266Para implementaciones de Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry, una [puerta de enlace de aplicaciones Claude](/es/claude-apps-gateway) autohospedada proporciona la entrega equivalente de configuración administrada remota: los clientes con sesión iniciada en la puerta de enlace obtienen la configuración administrada de la puerta de enlace en lugar de `api.anthropic.com`. La semántica de fallos difiere al inicio: un cliente de puerta de enlace que no puede alcanzar la puerta de enlace sale con un error en lugar de recurrir a la configuración en caché, mientras que la actualización en segundo plano cada hora es de fallo abierto en ambos canales.266Para implementaciones de Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry, una [puerta de enlace de aplicaciones Claude](/docs/es/claude-apps-gateway) autohospedada proporciona la entrega equivalente de configuración administrada remota: los clientes con sesión iniciada en la puerta de enlace obtienen la configuración administrada de la puerta de enlace en lugar de `api.anthropic.com`. La semántica de fallos difiere al inicio: un cliente de puerta de enlace que no puede alcanzar la puerta de enlace sale con un error en lugar de recurrir a la configuración en caché, mientras que la actualización en segundo plano cada hora es de fallo abierto en ambos canales.

267 267 

268<h2 id="audit-logging">268<h2 id="audit-logging">

269 Registro de auditoría269 Registro de auditoría


280La configuración administrada por servidor proporciona aplicación de políticas centralizada, pero funciona como un control del lado del cliente, no como un límite de seguridad. En dispositivos no administrados, un usuario no necesita acceso de administrador o sudo para omitirla.280La configuración administrada por servidor proporciona aplicación de políticas centralizada, pero funciona como un control del lado del cliente, no como un límite de seguridad. En dispositivos no administrados, un usuario no necesita acceso de administrador o sudo para omitirla.

281 281 

282| Escenario | Comportamiento |282| Escenario | Comportamiento |

283| :-------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |283| :-------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

284| El usuario edita el archivo de configuración en caché | El archivo manipulado se aplica al inicio, pero la configuración correcta se restaura en la siguiente obtención del servidor. {/* min-version: 2.1.198 */}A partir de v2.1.198, las variables de entorno de transporte, enrutamiento de API y autenticación en el bloque `env` se [retienen hasta que el servidor confirma la carga útil](#fetch-and-caching-behavior) |284| El usuario edita el archivo de configuración en caché | El archivo manipulado se aplica al inicio, pero la configuración correcta se restaura en la siguiente obtención del servidor. A partir de v2.1.198, las variables de entorno de transporte, enrutamiento de API y autenticación en el bloque `env` se [retienen hasta que el servidor confirma la carga útil](#fetch-and-caching-behavior) |

285| El usuario elimina el archivo de configuración en caché | Ocurre el comportamiento del primer lanzamiento: la configuración se obtiene de forma asincrónica con una breve ventana no aplicada |285| El usuario elimina el archivo de configuración en caché | Ocurre el comportamiento del primer lanzamiento: la configuración se obtiene de forma asincrónica con una breve ventana no aplicada |

286| El usuario ejecuta un binario de Claude Code modificado | Un usuario que puede ejecutar un cliente modificado puede omitir cualquier control del lado del cliente |286| El usuario ejecuta un binario de Claude Code modificado | Un usuario que puede ejecutar un cliente modificado puede omitir cualquier control del lado del cliente |

287| El usuario ejecuta una versión anterior de Claude Code | Las versiones anteriores a la configuración administrada por servidor no obtienen ni aplican la configuración |287| El usuario ejecuta una versión anterior de Claude Code | Las versiones anteriores a la configuración administrada por servidor no obtienen ni aplican la configuración |

288| La API no está disponible | La configuración en caché se aplica si está disponible, de lo contrario, la configuración administrada no se aplica hasta la siguiente obtención exitosa. {/* min-version: 2.1.198 */}A partir de v2.1.198, las variables de entorno de transporte, enrutamiento de API y autenticación en el bloque `env` en caché se [retienen en caso de fallo de obtención](#fetch-and-caching-behavior); el resto de la caché se sigue aplicando. Con `forceRemoteSettingsRefresh: true`, la CLI se cierra en lugar de continuar, excepto para [subcomandos `claude auth`](#enforce-fail-closed-startup) |288| La API no está disponible | La configuración en caché se aplica si está disponible, de lo contrario, la configuración administrada no se aplica hasta la siguiente obtención exitosa. A partir de v2.1.198, las variables de entorno de transporte, enrutamiento de API y autenticación en el bloque `env` en caché se [retienen en caso de fallo de obtención](#fetch-and-caching-behavior); el resto de la caché se sigue aplicando. Con `forceRemoteSettingsRefresh: true`, la CLI se cierra en lugar de continuar, excepto para [subcomandos `claude auth`](#enforce-fail-closed-startup) |

289| El usuario se autentica con una organización diferente | La configuración no se entrega para cuentas fuera de la organización administrada |289| El usuario se autentica con una organización diferente | La configuración no se entrega para cuentas fuera de la organización administrada |

290| El usuario configura un [proveedor de modelo de terceros](#platform-availability) | La configuración administrada por servidor se omite. Esto incluye establecer `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_MANTLE`, `CLAUDE_CODE_USE_VERTEX`, `CLAUDE_CODE_USE_FOUNDRY`, `CLAUDE_CODE_USE_ANTHROPIC_AWS`, o un `ANTHROPIC_BASE_URL` no predeterminado |290| El usuario configura un [proveedor de modelo de terceros](#platform-availability) | La configuración administrada por servidor se omite. Esto incluye establecer `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_MANTLE`, `CLAUDE_CODE_USE_VERTEX`, `CLAUDE_CODE_USE_FOUNDRY`, `CLAUDE_CODE_USE_ANTHROPIC_AWS`, o un `ANTHROPIC_BASE_URL` no predeterminado |

291| El tráfico de red se intercepta o se redirige | La validación de TLS deshabilitada o el tráfico interceptado pueden alterar la configuración que recibe el cliente |291| El tráfico de red se intercepta o se redirige | La validación de TLS deshabilitada o el tráfico interceptado pueden alterar la configuración que recibe el cliente |

292 292 

293Para detectar cambios de configuración en tiempo de ejecución, use [hooks `ConfigChange`](/es/hooks#configchange) para registrar modificaciones o bloquear cambios no autorizados antes de que surtan efecto.293Para detectar cambios de configuración en tiempo de ejecución, use [hooks `ConfigChange`](/docs/es/hooks#configchange) para registrar modificaciones o bloquear cambios no autorizados antes de que surtan efecto.

294 294 

295Para restringir a qué organizaciones pueden acceder los usuarios con las credenciales que proporciona el cliente, consulte [Enforce network-level access control with Tenant Restrictions](https://support.claude.com/en/articles/13198485-enforce-network-level-access-control-with-tenant-restrictions) en el Centro de ayuda de Claude. Para garantías de aplicación más sólidas, use la [configuración administrada por endpoint](/es/settings#settings-files) en dispositivos inscritos en una solución MDM.295Para restringir a qué organizaciones pueden acceder los usuarios con las credenciales que proporciona el cliente, consulte [Enforce network-level access control with Tenant Restrictions](https://support.claude.com/en/articles/13198485-enforce-network-level-access-control-with-tenant-restrictions) en el Centro de ayuda de Claude. Para garantías de aplicación más sólidas, use la [configuración administrada por endpoint](/docs/es/settings#settings-files) en dispositivos inscritos en una solución MDM.

296 296 

297<h2 id="see-also">297<h2 id="see-also">

298 Ver también298 Ver también


300 300 

301Páginas relacionadas para administrar la configuración de Claude Code:301Páginas relacionadas para administrar la configuración de Claude Code:

302 302 

303* [Settings](/es/settings): referencia de configuración completa que incluye todas las configuraciones disponibles303* [Settings](/docs/es/settings): referencia de configuración completa que incluye todas las configuraciones disponibles

304* [Endpoint-managed settings](/es/settings#settings-files): configuración administrada implementada en dispositivos por TI304* [Endpoint-managed settings](/docs/es/settings#settings-files): configuración administrada implementada en dispositivos por TI

305* [Authentication](/es/authentication): configurar el acceso de usuarios a Claude Code305* [Authentication](/docs/es/authentication): configurar el acceso de usuarios a Claude Code

306* [Security](/es/security): salvaguardas de seguridad y mejores prácticas306* [Security](/docs/es/security): salvaguardas de seguridad y mejores prácticas

sessions.md +21 −21

Details

8 8 

9Una sesión es una conversación guardada vinculada a un directorio de proyecto. Claude Code la almacena localmente mientras trabaja, para que pueda reanudar donde lo dejó, ramificarse para probar un enfoque diferente o cambiar entre tareas.9Una sesión es una conversación guardada vinculada a un directorio de proyecto. Claude Code la almacena localmente mientras trabaja, para que pueda reanudar donde lo dejó, ramificarse para probar un enfoque diferente o cambiar entre tareas.

10 10 

11La [aplicación de escritorio](/es/desktop#work-in-parallel-with-sessions), [Claude Code en la web](/es/claude-code-on-the-web) y la [extensión de VS Code](/es/vs-code#resume-past-conversations) mantienen cada una su propio historial de sesiones. Esta página cubre la CLI.11La [aplicación de escritorio](/docs/es/desktop#work-in-parallel-with-sessions), [Claude Code en la web](/docs/es/claude-code-on-the-web) y la [extensión de VS Code](/docs/es/vs-code#resume-past-conversations) mantienen cada una su propio historial de sesiones. Esta página cubre la CLI.

12 12 

13<h2 id="resume-a-session">13<h2 id="resume-a-session">

14 Reanude una sesión14 Reanude una sesión


24| `claude --from-pr <number>` | Reanuda la sesión vinculada a esa solicitud de extracción |24| `claude --from-pr <number>` | Reanuda la sesión vinculada a esa solicitud de extracción |

25| `/resume` | Cambia a una conversación diferente desde dentro de una sesión activa |25| `/resume` | Cambia a una conversación diferente desde dentro de una sesión activa |

26 26 

27Las sesiones creadas con [`claude -p`](/es/headless) o el [Agent SDK](/es/agent-sdk/overview) no aparecen en el selector de sesiones, pero aún puede reanudar una pasando su ID de sesión a `claude --resume <session-id>`. Ejecute esto desde el directorio en el que se inició la sesión: la búsqueda de ID de sesión se limita al directorio del proyecto actual y sus git worktrees, por lo que una sesión creada en otro lugar reporta `No conversation found with session ID: <session-id>`.27Las sesiones creadas con [`claude -p`](/docs/es/headless) o el [Agent SDK](/docs/es/agent-sdk/overview) no aparecen en el selector de sesiones, pero aún puede reanudar una pasando su ID de sesión a `claude --resume <session-id>`. Ejecute esto desde el directorio en el que se inició la sesión: la búsqueda de ID de sesión se limita al directorio del proyecto actual y sus git worktrees, por lo que una sesión creada en otro lugar reporta `No conversation found with session ID: <session-id>`.

28 28 

29<h3 id="where-the-session-picker-looks">29<h3 id="where-the-session-picker-looks">

30 Dónde busca el selector de sesiones30 Dónde busca el selector de sesiones


32 32 

33Las sesiones se almacenan por directorio de proyecto. De forma predeterminada, el selector de sesiones muestra sesiones interactivas del worktree actual, más sesiones iniciadas en otro lugar que agregaron el directorio actual con `/add-dir`. Use `Ctrl+W` para ampliar a todos los worktrees del repositorio o `Ctrl+A` para ampliar a cada proyecto en esta máquina.33Las sesiones se almacenan por directorio de proyecto. De forma predeterminada, el selector de sesiones muestra sesiones interactivas del worktree actual, más sesiones iniciadas en otro lugar que agregaron el directorio actual con `/add-dir`. Use `Ctrl+W` para ampliar a todos los worktrees del repositorio o `Ctrl+A` para ampliar a cada proyecto en esta máquina.

34 34 

35{/* min-version: 2.1.169 */}A partir de v2.1.169, mover una sesión con [`/cd`](/es/commands) la traslada al almacenamiento del proyecto del nuevo directorio, por lo que aparece en el selector de ese directorio después. {/* min-version: 2.1.196 */}A partir de v2.1.196, una sesión movida se mantiene fuera del selector del directorio anterior incluso después de un bloqueo o salida forzada. En versiones anteriores, también podría reaparecer en la lista del directorio anterior después de una salida que no fue limpia cuando la ruta anterior contenía caracteres especiales como guiones bajos.35A partir de v2.1.169, mover una sesión con [`/cd`](/docs/es/commands) la traslada al almacenamiento del proyecto del nuevo directorio, por lo que aparece en el selector de ese directorio después. A partir de v2.1.196, una sesión movida se mantiene fuera del selector del directorio anterior incluso después de un bloqueo o salida forzada. En versiones anteriores, también podría reaparecer en la lista del directorio anterior después de una salida que no fue limpia cuando la ruta anterior contenía caracteres especiales como guiones bajos.

36 36 

37Seleccionar una sesión de otro worktree del mismo repositorio la reanuda en su lugar. Seleccionar una sesión de un proyecto no relacionado copia un comando `cd` y reanuda a su portapapeles en su lugar.37Seleccionar una sesión de otro worktree del mismo repositorio la reanuda en su lugar. Seleccionar una sesión de un proyecto no relacionado copia un comando `cd` y reanuda a su portapapeles en su lugar.

38 38 


54| Al inicio | `claude -n auth-refactor` |54| Al inicio | `claude -n auth-refactor` |

55| Durante una sesión | `/rename auth-refactor`. El nombre también aparece en la barra de indicaciones |55| Durante una sesión | `/rename auth-refactor`. El nombre también aparece en la barra de indicaciones |

56| Desde el selector de sesiones | Resalte una sesión y presione `Ctrl+R` |56| Desde el selector de sesiones | Resalte una sesión y presione `Ctrl+R` |

57| Al aceptar un plan | Aceptar un plan en [modo de plan](/es/permission-modes#analyze-before-you-edit-with-plan-mode) nombra la sesión desde el contenido del plan a menos que ya haya establecido uno |57| Al aceptar un plan | Aceptar un plan en [modo de plan](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode) nombra la sesión desde el contenido del plan a menos que ya haya establecido uno |

58 58 

59Una vez que una sesión está nombrada, vuelva a ella con `claude --resume <name>` o `/resume <name>`. Vea [Reanude una sesión](#resume-a-session) para saber cómo se comporta la resolución de nombres en worktrees.59Una vez que una sesión está nombrada, vuelva a ella con `claude --resume <name>` o `/resume <name>`. Vea [Reanude una sesión](#resume-a-session) para saber cómo se comporta la resolución de nombres en worktrees.

60 60 

61{/* min-version: 2.1.196 */}Las sesiones interactivas que nunca nombra aún obtienen un nombre de visualización predeterminado cuando se inician. Requiere Claude Code v2.1.196 o posterior. El valor predeterminado combina el nombre del directorio de trabajo con un sufijo de dos caracteres, por ejemplo `my-app-3f`, e identifica la sesión en listados de sesiones en ejecución, como [vista de agente](/es/agent-view) y salida de `claude agents --json`.61Las sesiones interactivas que nunca nombra aún obtienen un nombre de visualización predeterminado cuando se inician. Requiere Claude Code v2.1.196 o posterior. El valor predeterminado combina el nombre del directorio de trabajo con un sufijo de dos caracteres, por ejemplo `my-app-3f`, e identifica la sesión en listados de sesiones en ejecución, como [vista de agente](/docs/es/agent-view) y salida de `claude agents --json`.

62 62 

63El valor predeterminado no es un identificador de reanudación: `claude --resume <name>`, `/resume <name>` y el selector de sesiones coinciden solo con nombres que usted establece. Nombrar la sesión reemplaza el valor predeterminado.63El valor predeterminado no es un identificador de reanudación: `claude --resume <name>`, `/resume <name>` y el selector de sesiones coinciden solo con nombres que usted establece. Nombrar la sesión reemplaza el valor predeterminado.

64 64 


97/branch try-streaming-approach97/branch try-streaming-approach

98```98```

99 99 

100Si omite el nombre, Claude Code nombra la nueva rama después del primer mensaje en la conversación. A partir de v2.1.198 esto también se aplica después de [compactación](/es/how-claude-code-works#when-context-fills-up); las versiones anteriores recurrieron al nombre literal `Branched conversation` en lugar de mirar más allá del resumen de compactación al mensaje original.100Si omite el nombre, Claude Code nombra la nueva rama después del primer mensaje en la conversación. A partir de v2.1.198 esto también se aplica después de [compactación](/docs/es/how-claude-code-works#when-context-fills-up); las versiones anteriores recurrieron al nombre literal `Branched conversation` en lugar de mirar más allá del resumen de compactación al mensaje original.

101 101 

102Desde la línea de comandos, combine `--continue` o `--resume` con `--fork-session`:102Desde la línea de comandos, combine `--continue` o `--resume` con `--fork-session`:

103 103 


107 107 

108La sesión original no se modifica y permanece disponible en el selector de sesiones. La confirmación de `/branch` imprime dos IDs de sesión: la nueva rama en la que se encuentra ahora y la original. Para volver a la original, pase su ID a `/resume`, use el selector de sesiones o ejecute `/resume <original-name>`. Los permisos que aprobó con "permitir para esta sesión" no se transfieren a la nueva rama. Si reanuda la misma sesión en dos terminales sin bifurcar, los mensajes de ambos se intercalan en una transcripción.108La sesión original no se modifica y permanece disponible en el selector de sesiones. La confirmación de `/branch` imprime dos IDs de sesión: la nueva rama en la que se encuentra ahora y la original. Para volver a la original, pase su ID a `/resume`, use el selector de sesiones o ejecute `/resume <original-name>`. Los permisos que aprobó con "permitir para esta sesión" no se transfieren a la nueva rama. Si reanuda la misma sesión en dos terminales sin bifurcar, los mensajes de ambos se intercalan en una transcripción.

109 109 

110Para rewind basado en puntos de control dentro de una sola sesión, vea [Checkpointing](/es/checkpointing).110Para rewind basado en puntos de control dentro de una sola sesión, vea [Checkpointing](/docs/es/checkpointing).

111 111 

112<h2 id="manage-context-within-a-session">112<h2 id="manage-context-within-a-session">

113 Gestione el contexto dentro de una sesión113 Gestione el contexto dentro de una sesión


115 115 

116Estos comandos controlan qué hay en la ventana de contexto sin dejar la sesión:116Estos comandos controlan qué hay en la ventana de contexto sin dejar la sesión:

117 117 

118* **`/clear`**: comience de nuevo con un contexto vacío. La conversación anterior se guarda y es reanudable con `/resume`, o, en el mismo proceso de Claude Code, desde [la entrada de sesión anterior del menú de rewind](/es/checkpointing#rewind-past-a-cleared-conversation)118* **`/clear`**: comience de nuevo con un contexto vacío. La conversación anterior se guarda y es reanudable con `/resume`, o, en el mismo proceso de Claude Code, desde [la entrada de sesión anterior del menú de rewind](/docs/es/checkpointing#rewind-past-a-cleared-conversation)

119* **`/compact [instructions]`**: reemplace el historial con un resumen, opcionalmente enfocado en lo que especifique119* **`/compact [instructions]`**: reemplace el historial con un resumen, opcionalmente enfocado en lo que especifique

120* **`/context`**: muestre qué está consumiendo actualmente el contexto120* **`/context`**: muestre qué está consumiendo actualmente el contexto

121 121 

122Para saber cómo la compactación interactúa con CLAUDE.md, skills y reglas, vea la [guía de ventana de contexto](/es/context-window). Para estrategias sobre cuándo limpiar versus compactar, vea [Mejores prácticas](/es/best-practices#manage-your-session).122Para saber cómo la compactación interactúa con CLAUDE.md, skills y reglas, vea la [guía de ventana de contexto](/docs/es/context-window). Para estrategias sobre cuándo limpiar versus compactar, vea [Mejores prácticas](/docs/es/best-practices#manage-your-session).

123 123 

124<h2 id="export-and-locate-session-data">124<h2 id="export-and-locate-session-data">

125 Exporte y localice datos de sesión125 Exporte y localice datos de sesión


133 133 

134`/export` produce una transcripción renderizada para que una persona la lea. Las interfaces a continuación producen datos estructurados para que un script analice: un resultado JSON de una ejecución, la ruta al archivo de transcripción de una sesión, o un flujo en vivo de eventos. Elija según lo que active el script:134`/export` produce una transcripción renderizada para que una persona la lea. Las interfaces a continuación producen datos estructurados para que un script analice: un resultado JSON de una ejecución, la ruta al archivo de transcripción de una sesión, o un flujo en vivo de eventos. Elija según lo que active el script:

135 135 

136* **Ejecute Claude una vez y capture el resultado**: invoque `claude -p` con [`--output-format json` o `stream-json`](/es/headless#get-structured-output) para capturar el resultado, ID de sesión, uso y costo de una ejecución no interactiva como JSON estructurado.136* **Ejecute Claude una vez y capture el resultado**: invoque `claude -p` con [`--output-format json` o `stream-json`](/docs/es/headless#get-structured-output) para capturar el resultado, ID de sesión, uso y costo de una ejecución no interactiva como JSON estructurado.

137* **Haga una pregunta a una sesión existente**: pase un ID de sesión a [`claude -p --resume`](/es/headless#continue-conversations) para enviar un mensaje de seguimiento, como una solicitud de resumen, y capture la respuesta estructurada.137* **Haga una pregunta a una sesión existente**: pase un ID de sesión a [`claude -p --resume`](/docs/es/headless#continue-conversations) para enviar un mensaje de seguimiento, como una solicitud de resumen, y capture la respuesta estructurada.

138* **Reaccione a eventos de sesión**: lea el campo `transcript_path` que [hooks](/es/hooks#common-input-fields) y [comandos de línea de estado](/es/statusline#available-data) reciben como entrada. Un hook `SessionEnd` puede archivar la transcripción cuando finaliza una sesión.138* **Reaccione a eventos de sesión**: lea el campo `transcript_path` que [hooks](/docs/es/hooks#common-input-fields) y [comandos de línea de estado](/docs/es/statusline#available-data) reciben como entrada. Un hook `SessionEnd` puede archivar la transcripción cuando finaliza una sesión.

139* **Integre Claude en una aplicación TypeScript o Python**: use el [Agent SDK](/es/agent-sdk/overview) para recibir cada mensaje mediante programación.139* **Integre Claude en una aplicación TypeScript o Python**: use el [Agent SDK](/docs/es/agent-sdk/overview) para recibir cada mensaje mediante programación.

140 140 

141El ejemplo a continuación utiliza la segunda interfaz. Envía un mensaje de seguimiento a una sesión existente y lee la respuesta con `jq`:141El ejemplo a continuación utiliza la segunda interfaz. Envía un mensaje de seguimiento a una sesión existente y lee la respuesta con `jq`:

142 142 


154 154 

155| Para | Establecer | Dónde |155| Para | Establecer | Dónde |

156| ------------------------------------------------------- | ------------------------------------------------------ | --------------------------- |156| ------------------------------------------------------- | ------------------------------------------------------ | --------------------------- |

157| Mover almacenamiento fuera de `~/.claude` | [`CLAUDE_CONFIG_DIR`](/es/env-vars) | Variable de entorno |157| Mover almacenamiento fuera de `~/.claude` | [`CLAUDE_CONFIG_DIR`](/docs/es/env-vars) | Variable de entorno |

158| Cambiar la retención de 30 días | [`cleanupPeriodDays`](/es/settings#available-settings) | `settings.json` |158| Cambiar la retención de 30 días | [`cleanupPeriodDays`](/docs/es/settings#available-settings) | `settings.json` |

159| Suprimir escrituras de transcripción en todos los modos | [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/es/env-vars) | Variable de entorno |159| Suprimir escrituras de transcripción en todos los modos | [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/docs/es/env-vars) | Variable de entorno |

160| Suprimir escrituras para una ejecución no interactiva | [`--no-session-persistence`](/es/cli-reference) | Bandera CLI con `claude -p` |160| Suprimir escrituras para una ejecución no interactiva | [`--no-session-persistence`](/docs/es/cli-reference) | Bandera CLI con `claude -p` |

161 161 

162<h2 id="see-also">162<h2 id="see-also">

163 Ver también163 Ver también


165 165 

166Estas páginas cubren mecánicas relacionadas de sesión y paralelismo:166Estas páginas cubren mecánicas relacionadas de sesión y paralelismo:

167 167 

168* [Worktrees](/es/worktrees): ejecute sesiones paralelas aisladas en ramas separadas168* [Worktrees](/docs/es/worktrees): ejecute sesiones paralelas aisladas en ramas separadas

169* [Checkpointing](/es/checkpointing): rebobine código y conversación a un punto anterior169* [Checkpointing](/docs/es/checkpointing): rebobine código y conversación a un punto anterior

170* [Ventana de contexto](/es/context-window): qué llena el contexto y qué sobrevive a la compactación170* [Ventana de contexto](/docs/es/context-window): qué llena el contexto y qué sobrevive a la compactación

171* [Modo no interactivo](/es/headless): comportamiento de sesión bajo `claude -p`171* [Modo no interactivo](/docs/es/headless): comportamiento de sesión bajo `claude -p`

settings.md +159 −159

Details

6 6 

7> Configure Claude Code con configuraciones globales y a nivel de proyecto, y variables de entorno.7> Configure Claude Code con configuraciones globales y a nivel de proyecto, y variables de entorno.

8 8 

9Claude Code ofrece una variedad de configuraciones para personalizar su comportamiento según sus necesidades. Puede configurar Claude Code ejecutando el comando `/config`, que abre una interfaz de Configuración con pestañas donde puede ver información de estado y modificar opciones de configuración. {/* min-version: 2.1.181 */}A partir de v2.1.181, puede cambiar una única opción sin abrir la interfaz pasando `key=value` a `/config`, por ejemplo `/config verbose=true`.9Claude Code ofrece una variedad de configuraciones para personalizar su comportamiento según sus necesidades. Puede configurar Claude Code ejecutando el comando `/config`, que abre una interfaz de Configuración con pestañas donde puede ver información de estado y modificar opciones de configuración. A partir de v2.1.181, puede cambiar una única opción sin abrir la interfaz pasando `key=value` a `/config`, por ejemplo `/config verbose=true`.

10 10 

11<h2 id="configuration-scopes">11<h2 id="configuration-scopes">

12 Ámbitos de configuración12 Ámbitos de configuración


96 * `.claude/settings.json` para configuraciones que se verifican en el control de código fuente y se comparten con su equipo96 * `.claude/settings.json` para configuraciones que se verifican en el control de código fuente y se comparten con su equipo

97 * `.claude/settings.local.json` para configuraciones que no se verifican, útil para preferencias personales y experimentación. Cuando Claude Code crea `.claude/settings.local.json`, configura git para ignorar el archivo. Si crea el archivo usted mismo, agréguelo a su gitignore manualmente.97 * `.claude/settings.local.json` para configuraciones que no se verifican, útil para preferencias personales y experimentación. Cuando Claude Code crea `.claude/settings.local.json`, configura git para ignorar el archivo. Si crea el archivo usted mismo, agréguelo a su gitignore manualmente.

98 98 

99 Debido a que este archivo es suyo en lugar del repositorio, sus reglas de permiso `allow` entran en vigor sin el paso de [confianza del espacio de trabajo](/es/permissions#project-allow-rules-and-workspace-trust) que requieren las reglas de permiso `allow` de `.claude/settings.json`. Si el repositorio suministra el archivo, por ejemplo al confirmarlo, la confianza del espacio de trabajo aún se aplica.99 Debido a que este archivo es suyo en lugar del repositorio, sus reglas de permiso `allow` entran en vigor sin el paso de [confianza del espacio de trabajo](/docs/es/permissions#project-allow-rules-and-workspace-trust) que requieren las reglas de permiso `allow` de `.claude/settings.json`. Si el repositorio suministra el archivo, por ejemplo al confirmarlo, la confianza del espacio de trabajo aún se aplica.

100* **Configuraciones administradas**: Para organizaciones que necesitan control centralizado, Claude Code admite múltiples mecanismos de entrega para configuraciones administradas. Todos utilizan el mismo formato JSON y no pueden ser anulados por configuraciones de usuario o proyecto:100* **Configuraciones administradas**: Para organizaciones que necesitan control centralizado, Claude Code admite múltiples mecanismos de entrega para configuraciones administradas. Todos utilizan el mismo formato JSON y no pueden ser anulados por configuraciones de usuario o proyecto:

101 101 

102 * **Configuraciones administradas por servidor**: entregadas remotamente al iniciar sesión, ya sea desde los servidores de Anthropic a través de la consola de administración de claude.ai o desde una [puerta de aplicaciones Claude](/es/claude-apps-gateway) autohospedada. Consulte [configuraciones administradas por servidor](/es/server-managed-settings).102 * **Configuraciones administradas por servidor**: entregadas remotamente al iniciar sesión, ya sea desde los servidores de Anthropic a través de la consola de administración de claude.ai o desde una [puerta de aplicaciones Claude](/docs/es/claude-apps-gateway) autohospedada. Consulte [configuraciones administradas por servidor](/docs/es/server-managed-settings).

103 * **Políticas de MDM/nivel de SO**: entregadas a través de administración de dispositivos nativa en macOS y Windows:103 * **Políticas de MDM/nivel de SO**: entregadas a través de administración de dispositivos nativa en macOS y Windows:

104 * macOS: dominio de preferencias administradas `com.anthropic.claudecode`. Las claves de nivel superior del plist reflejan `managed-settings.json`, con configuraciones anidadas como diccionarios y matrices como matrices de plist. Implemente a través de perfiles de configuración en Jamf, Iru (Kandji) u herramientas MDM similares.104 * macOS: dominio de preferencias administradas `com.anthropic.claudecode`. Las claves de nivel superior del plist reflejan `managed-settings.json`, con configuraciones anidadas como diccionarios y matrices como matrices de plist. Implemente a través de perfiles de configuración en Jamf, Iru (Kandji) u herramientas MDM similares.

105 * Windows: clave de registro `HKLM\SOFTWARE\Policies\ClaudeCode` con un valor `Settings` (REG\_SZ o REG\_EXPAND\_SZ) que contiene JSON (implementado a través de Política de grupo o Intune)105 * Windows: clave de registro `HKLM\SOFTWARE\Policies\ClaudeCode` con un valor `Settings` (REG\_SZ o REG\_EXPAND\_SZ) que contiene JSON (implementado a través de Política de grupo o Intune)


120 120 

121 Use prefijos numéricos para controlar el orden de fusión, por ejemplo `10-telemetry.json` y `20-security.json`.121 Use prefijos numéricos para controlar el orden de fusión, por ejemplo `10-telemetry.json` y `20-security.json`.

122 122 

123 Consulte [configuraciones administradas](/es/permissions#managed-only-settings) y [Configuración de MCP administrada](/es/managed-mcp) para obtener detalles.123 Consulte [configuraciones administradas](/docs/es/permissions#managed-only-settings) y [Configuración de MCP administrada](/docs/es/managed-mcp) para obtener detalles.

124 124 

125 Este [repositorio](https://github.com/anthropics/claude-code/tree/main/examples/mdm) incluye plantillas de implementación de inicio para Jamf, Iru (Kandji), Intune y Política de grupo. Use estas como puntos de partida y ajústelas para que se adapten a sus necesidades.125 Este [repositorio](https://github.com/anthropics/claude-code/tree/main/examples/mdm) incluye plantillas de implementación de inicio para Jamf, Iru (Kandji), Intune y Política de grupo. Use estas como puntos de partida y ajústelas para que se adapten a sus necesidades.

126 126 

127 <Note>127 <Note>

128 Las implementaciones administradas también pueden restringir **adiciones de marketplace de plugins** usando `strictKnownMarketplaces`. Para obtener más información, consulte [Restricciones de marketplace administradas](/es/plugin-marketplaces#managed-marketplace-restrictions).128 Las implementaciones administradas también pueden restringir **adiciones de marketplace de plugins** usando `strictKnownMarketplaces`. Para obtener más información, consulte [Restricciones de marketplace administradas](/docs/es/plugin-marketplaces#managed-marketplace-restrictions).

129 </Note>129 </Note>

130* **Otra configuración** se almacena en `~/.claude.json`. Este archivo contiene su sesión OAuth, configuraciones de [MCP server](/es/mcp) para ámbitos de usuario y local, estado por proyecto (herramientas permitidas, configuración de confianza) y varios cachés. Los MCP servers con ámbito de proyecto se almacenan por separado en `.mcp.json`.130* **Otra configuración** se almacena en `~/.claude.json`. Este archivo contiene su sesión OAuth, configuraciones de [MCP server](/docs/es/mcp) para ámbitos de usuario y local, estado por proyecto (herramientas permitidas, configuración de confianza) y varios cachés. Los MCP servers con ámbito de proyecto se almacenan por separado en `.mcp.json`.

131 131 

132<Note>132<Note>

133 Claude Code crea automáticamente copias de seguridad con marca de tiempo de archivos de configuración y retiene las cinco copias de seguridad más recientes para prevenir pérdida de datos.133 Claude Code crea automáticamente copias de seguridad con marca de tiempo de archivos de configuración y retiene las cinco copias de seguridad más recientes para prevenir pérdida de datos.


169 Cuándo entran en vigor las ediciones169 Cuándo entran en vigor las ediciones

170</h3>170</h3>

171 171 

172Claude Code observa sus archivos de configuración y los recarga cuando cambian, por lo que las ediciones en la mayoría de las claves se aplican a la sesión en ejecución sin necesidad de reinicio. Esto incluye `permissions`, `hooks` y asistentes de credenciales como `apiKeyHelper`. La recarga cubre configuraciones de usuario, proyecto, local y administradas, y el [hook `ConfigChange`](/es/hooks#configchange) se activa para cada cambio detectado.172Claude Code observa sus archivos de configuración y los recarga cuando cambian, por lo que las ediciones en la mayoría de las claves se aplican a la sesión en ejecución sin necesidad de reinicio. Esto incluye `permissions`, `hooks` y asistentes de credenciales como `apiKeyHelper`. La recarga cubre configuraciones de usuario, proyecto, local y administradas, y el [hook `ConfigChange`](/docs/es/hooks#configchange) se activa para cada cambio detectado.

173 173 

174Algunas claves se leen una sola vez al inicio de la sesión y se aplican en el siguiente reinicio:174Algunas claves se leen una sola vez al inicio de la sesión y se aplican en el siguiente reinicio:

175 175 

176* `model`: use [`/model`](/es/model-config#setting-your-model) para cambiar en mitad de sesión176* `model`: use [`/model`](/docs/es/model-config#setting-your-model) para cambiar en mitad de sesión

177* [`outputStyle`](/es/output-styles): parte del indicador del sistema, que se reconstruye en `/clear` o reinicio177* [`outputStyle`](/docs/es/output-styles): parte del indicador del sistema, que se reconstruye en `/clear` o reinicio

178 178 

179<h3 id="invalid-entries-in-managed-settings">179<h3 id="invalid-entries-in-managed-settings">

180 Entradas inválidas en configuraciones administradas180 Entradas inválidas en configuraciones administradas

181</h3>181</h3>

182 182 

183Las configuraciones administradas se analizan con tolerancia. Cuando una configuración administrada contiene una entrada que falla la validación del esquema, Claude Code elimina esa entrada, registra una advertencia y aplica cada política válida restante. Un único error tipográfico no puede deshabilitar el resto de la política de su organización. Ejecute [`/doctor`](/es/debug-your-config#check-resolved-settings) para enumerar las entradas eliminadas con su archivo de origen y campo.183Las configuraciones administradas se analizan con tolerancia. Cuando una configuración administrada contiene una entrada que falla la validación del esquema, Claude Code elimina esa entrada, registra una advertencia y aplica cada política válida restante. Un único error tipográfico no puede deshabilitar el resto de la política de su organización. Ejecute [`/doctor`](/docs/es/debug-your-config#check-resolved-settings) para enumerar las entradas eliminadas con su archivo de origen y campo.

184 184 

185Este comportamiento es consistente en los tres mecanismos de entrega: [configuraciones administradas por servidor](/es/server-managed-settings), políticas de plist y registro implementadas a través de MDM, y archivos `managed-settings.json`. Requiere Claude Code v2.1.169 o posterior.185Este comportamiento es consistente en los tres mecanismos de entrega: [configuraciones administradas por servidor](/docs/es/server-managed-settings), políticas de plist y registro implementadas a través de MDM, y archivos `managed-settings.json`. Requiere Claude Code v2.1.169 o posterior.

186 186 

187Los campos de aplicación de seguridad se manejan por campo en lugar de ser eliminados al por mayor cuando están presentes pero son inválidos:187Los campos de aplicación de seguridad se manejan por campo en lugar de ser eliminados al por mayor cuando están presentes pero son inválidos:

188 188 

189| Campo | Comportamiento cuando está presente pero es inválido |189| Campo | Comportamiento cuando está presente pero es inválido |

190| :--------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |190| :--------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

191| `allowedMcpServers` | Aplicado como una lista blanca vacía, por lo que no se admiten MCP servers hasta que se corrija el valor. Una entrada individual inválida se elimina y se aplica el subconjunto válido. |191| `allowedMcpServers` | Aplicado como una lista blanca vacía, por lo que no se admiten MCP servers hasta que se corrija el valor. Una entrada individual inválida se elimina y se aplica el subconjunto válido. |

192| `allowManagedMcpServersOnly` | Tratado como `true`. |192| `allowManagedMcpServersOnly` | Tratado como `true`. |

193| `availableModels` | {/* min-version: 2.1.175 */}Aplicado como una lista blanca vacía, por lo que solo el modelo Predeterminado está disponible hasta que se corrija el valor. Una entrada individual que no es cadena se elimina y se aplica el subconjunto válido. Se aplica en v2.1.175 y posterior. |193| `availableModels` | Aplicado como una lista blanca vacía, por lo que solo el modelo Predeterminado está disponible hasta que se corrija el valor. Una entrada individual que no es cadena se elimina y se aplica el subconjunto válido. Se aplica en v2.1.175 y posterior. |

194| `enforceAvailableModels` | {/* min-version: 2.1.175 */}Tratado como `true`. Se aplica en v2.1.175 y posterior. |194| `enforceAvailableModels` | Tratado como `true`. Se aplica en v2.1.175 y posterior. |

195| `forceLoginOrgUUID` | No se permite que ninguna organización inicie sesión hasta que se corrija el valor. |195| `forceLoginOrgUUID` | No se permite que ninguna organización inicie sesión hasta que se corrija el valor. |

196| `deniedMcpServers` | Una entrada individual inválida se elimina y se aplica el subconjunto válido. Un valor completamente inválido se descarta con una advertencia, ya que denegar cada servidor bloquearía servidores que la política nunca nombró. |196| `deniedMcpServers` | Una entrada individual inválida se elimina y se aplica el subconjunto válido. Un valor completamente inválido se descarta con una advertencia, ya que denegar cada servidor bloquearía servidores que la política nunca nombró. |

197| `sandbox.credentials` | {/* min-version: 2.1.191 */}Una entrada individual inválida en `files` o `envVars` se elimina con una advertencia y se aplica el subconjunto válido. Un valor completamente inválido de `credentials` se descarta con una advertencia mientras el resto de `sandbox` aún se aplica. Se aplica en v2.1.191 y posterior. |197| `sandbox.credentials` | Una entrada individual inválida en `files` o `envVars` se elimina con una advertencia y se aplica el subconjunto válido. Un valor completamente inválido de `credentials` se descarta con una advertencia mientras el resto de `sandbox` aún se aplica. Se aplica en v2.1.191 y posterior. |

198 198 

199`requiredMinimumVersion` y `requiredMaximumVersion` fallan abiertos por diseño: un valor inválido se elimina en lugar de aplicarse, por lo que un empuje de política defectuoso no puede evitar que Claude Code se inicie.199`requiredMinimumVersion` y `requiredMaximumVersion` fallan abiertos por diseño: un valor inválido se elimina en lugar de aplicarse, por lo que un empuje de política defectuoso no puede evitar que Claude Code se inicie.

200 200 


202 202 

203* Las sesiones interactivas muestran un diálogo al inicio que enumera las entradas inválidas.203* Las sesiones interactivas muestran un diálogo al inicio que enumera las entradas inválidas.

204* Las ejecuciones sin interfaz con `-p` imprimen un resumen en stderr.204* Las ejecuciones sin interfaz con `-p` imprimen un resumen en stderr.

205* [`claude doctor`](/es/debug-your-config) enumera cada entrada inválida con su fuente y campo.205* [`claude doctor`](/docs/es/debug-your-config) enumera cada entrada inválida con su fuente y campo.

206 206 

207Valide cambios de política ejecutando `claude doctor` en una máquina de prueba antes de implementarlos en toda la flota.207Valide cambios de política ejecutando `claude doctor` en una máquina de prueba antes de implementarlos en toda la flota.

208 208 


215`settings.json` admite varias opciones:215`settings.json` admite varias opciones:

216 216 

217| Clave | Descripción | Ejemplo |217| Clave | Descripción | Ejemplo |

218| :--------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------ |218| :--------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------ |

219| `advisorModel` | Modelo para la [herramienta advisor](/es/advisor) del lado del servidor. Acepta un alias de modelo como `"opus"`, `"sonnet"`, o `"fable"` ({/* min-version: 2.1.170 */}v2.1.170+), o un ID de modelo completo. Se escribe automáticamente cuando ejecuta `/advisor`. Desactive para deshabilitar el advisor | `"opus"` |219| `advisorModel` | Modelo para la [herramienta advisor](/docs/es/advisor) del lado del servidor. Acepta un alias de modelo como `"opus"`, `"sonnet"`, o `"fable"` (v2.1.170+), o un ID de modelo completo. Se escribe automáticamente cuando ejecuta `/advisor`. Desactive para deshabilitar el advisor | `"opus"` |

220| `agent` | Ejecutar el hilo principal como un subagent nombrado, y establecer el agente predeterminado para sesiones despachadas desde `claude agents`. Aplica el indicador del sistema del subagent, restricciones de herramientas y modelo. Consulte [Invocar subagents explícitamente](/es/sub-agents#invoke-subagents-explicitly) | `"code-reviewer"` |220| `agent` | Ejecutar el hilo principal como un subagent nombrado, y establecer el agente predeterminado para sesiones despachadas desde `claude agents`. Aplica el indicador del sistema del subagent, restricciones de herramientas y modelo. Consulte [Invocar subagents explícitamente](/docs/es/sub-agents#invoke-subagents-explicitly) | `"code-reviewer"` |

221| `agentPushNotifEnabled` | {/* min-version: 2.1.119 */}**Predeterminado**: `false`. Cuando [Remote Control](/es/remote-control) está conectado, permitir que Claude envíe notificaciones push proactivas a su teléfono, por ejemplo cuando una tarea larga finaliza. Aparece en `/config` como **Push when Claude decides**. Consulte [Notificaciones push móviles](/es/remote-control#mobile-push-notifications). Requiere Claude Code v2.1.119 o posterior | `true` |221| `agentPushNotifEnabled` | **Predeterminado**: `false`. Cuando [Remote Control](/docs/es/remote-control) está conectado, permitir que Claude envíe notificaciones push proactivas a su teléfono, por ejemplo cuando una tarea larga finaliza. Aparece en `/config` como **Push when Claude decides**. Consulte [Notificaciones push móviles](/docs/es/remote-control#mobile-push-notifications). Requiere Claude Code v2.1.119 o posterior | `true` |

222| `allowAllClaudeAiMcps` | (Solo configuraciones administradas) Cargar conectores de claude.ai junto con un `managed-mcp.json` implementado, que de otra manera toma control exclusivo y los suprime. Consulte [Configuración de MCP administrada](/es/managed-mcp) | `true` |222| `allowAllClaudeAiMcps` | (Solo configuraciones administradas) Cargar conectores de claude.ai junto con un `managed-mcp.json` implementado, que de otra manera toma control exclusivo y los suprime. Consulte [Configuración de MCP administrada](/docs/es/managed-mcp) | `true` |

223| `allowedChannelPlugins` | (Solo configuraciones administradas) Lista blanca de plugins de canal que pueden enviar mensajes. Reemplaza la lista blanca predeterminada de Anthropic cuando se establece. Sin definir = recurrir a la predeterminada, matriz vacía = bloquear todos los plugins de canal. Requiere `channelsEnabled: true`. Consulte [Restringir qué plugins de canal pueden ejecutarse](/es/channels#restrict-which-channel-plugins-can-run) | `[{ "marketplace": "claude-plugins-official", "plugin": "telegram" }]` |223| `allowedChannelPlugins` | (Solo configuraciones administradas) Lista blanca de plugins de canal que pueden enviar mensajes. Reemplaza la lista blanca predeterminada de Anthropic cuando se establece. Sin definir = recurrir a la predeterminada, matriz vacía = bloquear todos los plugins de canal. Requiere `channelsEnabled: true`. Consulte [Restringir qué plugins de canal pueden ejecutarse](/docs/es/channels#restrict-which-channel-plugins-can-run) | `[{ "marketplace": "claude-plugins-official", "plugin": "telegram" }]` |

224| `allowedHttpHookUrls` | Lista blanca de patrones de URL que los hooks HTTP pueden dirigirse. Admite `*` como comodín. Cuando se establece, los hooks con URLs que no coinciden se bloquean. Sin definir = sin restricción, matriz vacía = bloquear todos los hooks HTTP. Las matrices se fusionan entre fuentes de configuración. Consulte [Configuración de hooks](#hook-configuration) | `["https://hooks.example.com/*"]` |224| `allowedHttpHookUrls` | Lista blanca de patrones de URL que los hooks HTTP pueden dirigirse. Admite `*` como comodín. Cuando se establece, los hooks con URLs que no coinciden se bloquean. Sin definir = sin restricción, matriz vacía = bloquear todos los hooks HTTP. Las matrices se fusionan entre fuentes de configuración. Consulte [Configuración de hooks](#hook-configuration) | `["https://hooks.example.com/*"]` |

225| `allowedMcpServers` | Cuando se establece en managed-settings.json, lista blanca de MCP servers que los usuarios pueden configurar. Sin definir = sin restricciones, matriz vacía = bloqueo. Se aplica a todos los ámbitos. La lista de denegación tiene precedencia. Consulte [Configuración de MCP administrada](/es/managed-mcp) | `[{ "serverName": "github" }]` |225| `allowedMcpServers` | Cuando se establece en managed-settings.json, lista blanca de MCP servers que los usuarios pueden configurar. Sin definir = sin restricciones, matriz vacía = bloqueo. Se aplica a todos los ámbitos. La lista de denegación tiene precedencia. Consulte [Configuración de MCP administrada](/docs/es/managed-mcp) | `[{ "serverName": "github" }]` |

226| `allowManagedHooksOnly` | (Solo configuraciones administradas) Solo se cargan hooks administrados, hooks SDK y hooks de plugins forzadamente habilitados en la configuración administrada `enabledPlugins`. Se bloquean hooks de usuario, proyecto y todos los demás plugins. Consulte [Configuración de hooks](#hook-configuration) | `true` |226| `allowManagedHooksOnly` | (Solo configuraciones administradas) Solo se cargan hooks administrados, hooks SDK y hooks de plugins forzadamente habilitados en la configuración administrada `enabledPlugins`. Se bloquean hooks de usuario, proyecto y todos los demás plugins. Consulte [Configuración de hooks](#hook-configuration) | `true` |

227| `allowManagedMcpServersOnly` | (Solo configuraciones administradas) Solo se respetan `allowedMcpServers` de configuraciones administradas. `deniedMcpServers` aún se fusiona desde todas las fuentes. Los usuarios aún pueden agregar MCP servers, pero solo se aplica la lista blanca definida por el administrador. Consulte [Configuración de MCP administrada](/es/managed-mcp) | `true` |227| `allowManagedMcpServersOnly` | (Solo configuraciones administradas) Solo se respetan `allowedMcpServers` de configuraciones administradas. `deniedMcpServers` aún se fusiona desde todas las fuentes. Los usuarios aún pueden agregar MCP servers, pero solo se aplica la lista blanca definida por el administrador. Consulte [Configuración de MCP administrada](/docs/es/managed-mcp) | `true` |

228| `allowManagedPermissionRulesOnly` | (Solo configuraciones administradas) Evitar que configuraciones de usuario y proyecto definan reglas de permiso `allow`, `ask` o `deny`. Solo se aplican las reglas en configuraciones administradas. Consulte [Configuraciones solo administradas](/es/permissions#managed-only-settings) | `true` |228| `allowManagedPermissionRulesOnly` | (Solo configuraciones administradas) Evitar que configuraciones de usuario y proyecto definan reglas de permiso `allow`, `ask` o `deny`. Solo se aplican las reglas en configuraciones administradas. Consulte [Configuraciones solo administradas](/docs/es/permissions#managed-only-settings) | `true` |

229| `alwaysThinkingEnabled` | Habilitar [pensamiento extendido](/es/model-config#extended-thinking) de forma predeterminada para todas las sesiones. Típicamente configurado a través del comando `/config` en lugar de editar directamente. Para forzar el pensamiento desactivado independientemente de esta configuración, establezca [`MAX_THINKING_TOKENS=0`](/es/env-vars) en `env`, que deshabilita el pensamiento en la API de Anthropic excepto en Fable 5, que no puede tener el pensamiento desactivado. En [proveedores de terceros](/es/third-party-integrations) esto omite el parámetro `thinking` en su lugar, y los modelos de razonamiento adaptativo aún pueden pensar | `true` |229| `alwaysThinkingEnabled` | Habilitar [pensamiento extendido](/docs/es/model-config#extended-thinking) de forma predeterminada para todas las sesiones. Típicamente configurado a través del comando `/config` en lugar de editar directamente. Para forzar el pensamiento desactivado independientemente de esta configuración, establezca [`MAX_THINKING_TOKENS=0`](/docs/es/env-vars) en `env`, que deshabilita el pensamiento en la API de Anthropic excepto en Fable 5, que no puede tener el pensamiento desactivado. En [proveedores de terceros](/docs/es/third-party-integrations) esto omite el parámetro `thinking` en su lugar, y los modelos de razonamiento adaptativo aún pueden pensar | `true` |

230| `apiKeyHelper` | Script personalizado, a ejecutarse a través del shell del sistema (`/bin/sh` en macOS y Linux, `cmd` en Windows), para generar un valor de autenticación. Este valor se enviará como encabezados `X-Api-Key` y `Authorization: Bearer` para solicitudes de modelo. Establezca el intervalo de actualización con [`CLAUDE_CODE_API_KEY_HELPER_TTL_MS`](/es/env-vars) | `/bin/generate_temp_api_key.sh` |230| `apiKeyHelper` | Script personalizado, a ejecutarse a través del shell del sistema (`/bin/sh` en macOS y Linux, `cmd` en Windows), para generar un valor de autenticación. Este valor se enviará como encabezados `X-Api-Key` y `Authorization: Bearer` para solicitudes de modelo. Establezca el intervalo de actualización con [`CLAUDE_CODE_API_KEY_HELPER_TTL_MS`](/docs/es/env-vars) | `/bin/generate_temp_api_key.sh` |

231| `askUserQuestionTimeout` | {/* min-version: 2.1.200 */}**Predeterminado**: `"never"`. Tiempo de inactividad antes de que un diálogo [`AskUserQuestion`](/es/tools-reference) sin respuesta continúe automáticamente con las opciones que ya había seleccionado. Acepta `"60s"`, `"5m"`, `"10m"`, o `"never"`. Con el predeterminado, las preguntas esperan hasta que responda. Aparece en `/config` como **Question auto-continue timeout**, que escribe esta clave en configuraciones de usuario. No se lee desde configuraciones de proyecto o local. Requiere Claude Code v2.1.200 o posterior | `"5m"` |231| `askUserQuestionTimeout` | **Predeterminado**: `"never"`. Tiempo de inactividad antes de que un diálogo [`AskUserQuestion`](/docs/es/tools-reference) sin respuesta continúe automáticamente con las opciones que ya había seleccionado. Acepta `"60s"`, `"5m"`, `"10m"`, o `"never"`. Con el predeterminado, las preguntas esperan hasta que responda. Aparece en `/config` como **Question auto-continue timeout**, que escribe esta clave en configuraciones de usuario. No se lee desde configuraciones de proyecto o local. Requiere Claude Code v2.1.200 o posterior | `"5m"` |

232| `attribution` | Personalizar atribución para commits de git y solicitudes de extracción. Consulte [Configuración de atribución](#attribution-settings) | `{"commit": "🤖 Generated with Claude Code", "pr": ""}` |232| `attribution` | Personalizar atribución para commits de git y solicitudes de extracción. Consulte [Configuración de atribución](#attribution-settings) | `{"commit": "🤖 Generated with Claude Code", "pr": ""}` |

233| `autoCompactEnabled` | {/* min-version: 2.1.119 */}**Predeterminado**: `true`. Compactar automáticamente la conversación cuando el contexto se acerca al límite. Aparece en `/config` como **Auto-compact**. Para deshabilitar a través de variable de entorno, establezca [`DISABLE_AUTO_COMPACT`](/es/env-vars) en `env` | `false` |233| `autoCompactEnabled` | **Predeterminado**: `true`. Compactar automáticamente la conversación cuando el contexto se acerca al límite. Aparece en `/config` como **Auto-compact**. Para deshabilitar a través de variable de entorno, establezca [`DISABLE_AUTO_COMPACT`](/docs/es/env-vars) en `env` | `false` |

234| `autoMemoryDirectory` | Directorio personalizado para almacenamiento de [memoria automática](/es/memory#storage-location). Acepta una ruta absoluta o una ruta con prefijo `~/`. Se honra desde configuraciones de proyecto o local solo después de aceptar el diálogo de confianza del espacio de trabajo, ya que un repositorio clonado puede proporcionar este archivo | `"~/my-memory-dir"` |234| `autoMemoryDirectory` | Directorio personalizado para almacenamiento de [memoria automática](/docs/es/memory#storage-location). Acepta una ruta absoluta o una ruta con prefijo `~/`. Se honra desde configuraciones de proyecto o local solo después de aceptar el diálogo de confianza del espacio de trabajo, ya que un repositorio clonado puede proporcionar este archivo | `"~/my-memory-dir"` |

235| `autoMemoryEnabled` | **Predeterminado**: `true`. Habilitar [memoria automática](/es/memory#enable-or-disable-auto-memory). Cuando es `false`, Claude no lee ni escribe en el directorio de memoria automática. También puede alternar esto con `/memory` durante una sesión. Para deshabilitar a través de variable de entorno, establezca [`CLAUDE_CODE_DISABLE_AUTO_MEMORY`](/es/env-vars) en `env` | `false` |235| `autoMemoryEnabled` | **Predeterminado**: `true`. Habilitar [memoria automática](/docs/es/memory#enable-or-disable-auto-memory). Cuando es `false`, Claude no lee ni escribe en el directorio de memoria automática. También puede alternar esto con `/memory` durante una sesión. Para deshabilitar a través de variable de entorno, establezca [`CLAUDE_CODE_DISABLE_AUTO_MEMORY`](/docs/es/env-vars) en `env` | `false` |

236| `autoMode` | Personalizar qué bloquea y permite el clasificador de [modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode). Contiene matrices `environment`, `allow`, `soft_deny` y `hard_deny` de reglas en prosa. Incluya la cadena literal `"$defaults"` en una matriz para heredar las reglas integradas en esa posición. Consulte [Configurar modo automático](/es/auto-mode-config). Se lee desde configuraciones de usuario, la bandera `--settings` y configuraciones administradas solamente. Se ignora en `.claude/settings.json` de proyecto y `.claude/settings.local.json` local. {/* min-version: 2.1.207 */}Antes de v2.1.207, `.claude/settings.local.json` también se leía | `{"soft_deny": ["$defaults", "Never run terraform apply"]}` |236| `autoMode` | Personalizar qué bloquea y permite el clasificador de [modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode). Contiene matrices `environment`, `allow`, `soft_deny` y `hard_deny` de reglas en prosa. Incluya la cadena literal `"$defaults"` en una matriz para heredar las reglas integradas en esa posición. Consulte [Configurar modo automático](/docs/es/auto-mode-config). Se lee desde configuraciones de usuario, la bandera `--settings` y configuraciones administradas solamente. Se ignora en `.claude/settings.json` de proyecto y `.claude/settings.local.json` local. Antes de v2.1.207, `.claude/settings.local.json` también se leía | `{"soft_deny": ["$defaults", "Never run terraform apply"]}` |

237| `autoMode.classifyAllShell` | {/* min-version: 2.1.193 */}**Predeterminado**: `false`. Cuando es `true`, suspende cada regla de permiso de Bash y PowerShell mientras el modo automático está activo para que todos los comandos de shell se enruten a través del clasificador, no solo reglas que coincidan con patrones de ejecución de código arbitrario. Consulte [Enrutar todos los comandos de shell a través del clasificador](/es/auto-mode-config#route-all-shell-commands-through-the-classifier). Requiere Claude Code v2.1.193 o posterior | `true` |237| `autoMode.classifyAllShell` | **Predeterminado**: `false`. Cuando es `true`, suspende cada regla de permiso de Bash y PowerShell mientras el modo automático está activo para que todos los comandos de shell se enruten a través del clasificador, no solo reglas que coincidan con patrones de ejecución de código arbitrario. Consulte [Enrutar todos los comandos de shell a través del clasificador](/docs/es/auto-mode-config#route-all-shell-commands-through-the-classifier). Requiere Claude Code v2.1.193 o posterior | `true` |

238| `autoScrollEnabled` | **Predeterminado**: `true`. En [renderizado de pantalla completa](/es/fullscreen), seguir la nueva salida hasta el final de la conversación. Aparece en `/config` como **Auto-scroll**. Los avisos de permiso aún se desplazan a la vista cuando esto está desactivado | `false` |238| `autoScrollEnabled` | **Predeterminado**: `true`. En [renderizado de pantalla completa](/docs/es/fullscreen), seguir la nueva salida hasta el final de la conversación. Aparece en `/config` como **Auto-scroll**. Los avisos de permiso aún se desplazan a la vista cuando esto está desactivado | `false` |

239| `autoUpdatesChannel` | **Predeterminado**: `"latest"`. Canal de lanzamiento a seguir para actualizaciones. Use `"stable"` para una versión que típicamente tiene aproximadamente una semana de antigüedad y omite versiones con regresiones importantes, o `"latest"` para el lanzamiento más reciente. Para deshabilitar completamente las actualizaciones automáticas, establezca [`DISABLE_AUTOUPDATER`](/es/setup#disable-auto-updates) en `env` | `"stable"` |239| `autoUpdatesChannel` | **Predeterminado**: `"latest"`. Canal de lanzamiento a seguir para actualizaciones. Use `"stable"` para una versión que típicamente tiene aproximadamente una semana de antigüedad y omite versiones con regresiones importantes, o `"latest"` para el lanzamiento más reciente. Para deshabilitar completamente las actualizaciones automáticas, establezca [`DISABLE_AUTOUPDATER`](/docs/es/setup#disable-auto-updates) en `env` | `"stable"` |

240| `availableModels` | Restringir qué modelos pueden seleccionar los usuarios para la sesión principal, [subagents](/es/sub-agents), [skills](/es/skills) y el [advisor](/es/advisor). No afecta la opción Predeterminado a menos que `enforceAvailableModels` también esté establecido. Consulte [Restringir selección de modelo](/es/model-config#restrict-model-selection) | `["sonnet", "haiku"]` |240| `availableModels` | Restringir qué modelos pueden seleccionar los usuarios para la sesión principal, [subagents](/docs/es/sub-agents), [skills](/docs/es/skills) y el [advisor](/docs/es/advisor). No afecta la opción Predeterminado a menos que `enforceAvailableModels` también esté establecido. Consulte [Restringir selección de modelo](/docs/es/model-config#restrict-model-selection) | `["sonnet", "haiku"]` |

241| `awaySummaryEnabled` | Mostrar un resumen de sesión de una línea cuando regresa a la terminal después de estar ausente unos minutos. Establezca en `false` o desactive Resumen de sesión en `/config` para deshabilitar. Igual que [`CLAUDE_CODE_ENABLE_AWAY_SUMMARY`](/es/env-vars) | `true` |241| `awaySummaryEnabled` | Mostrar un resumen de sesión de una línea cuando regresa a la terminal después de estar ausente unos minutos. Establezca en `false` o desactive Resumen de sesión en `/config` para deshabilitar. Igual que [`CLAUDE_CODE_ENABLE_AWAY_SUMMARY`](/docs/es/env-vars) | `true` |

242| `awsAuthRefresh` | Script personalizado que modifica el directorio `.aws` (consulte [configuración avanzada de credenciales](/es/amazon-bedrock#advanced-credential-configuration)) | `aws sso login --profile myprofile` |242| `awsAuthRefresh` | Script personalizado que modifica el directorio `.aws` (consulte [configuración avanzada de credenciales](/docs/es/amazon-bedrock#advanced-credential-configuration)) | `aws sso login --profile myprofile` |

243| `awsCredentialExport` | Script personalizado que genera JSON con credenciales de AWS (consulte [configuración avanzada de credenciales](/es/amazon-bedrock#advanced-credential-configuration)) | `/bin/generate_aws_grant.sh` |243| `awsCredentialExport` | Script personalizado que genera JSON con credenciales de AWS (consulte [configuración avanzada de credenciales](/docs/es/amazon-bedrock#advanced-credential-configuration)) | `/bin/generate_aws_grant.sh` |

244| `axScreenReader` | {/* min-version: 2.1.181 */}Renderizar salida amigable con lector de pantalla: texto plano sin bordes decorativos ni animaciones. El modo de lector de pantalla usa el renderizador clásico, por lo que la configuración `tui` no tiene efecto mientras está activo; las sesiones de fondo adjuntas [](/es/agent-view) aún se renderizan en pantalla completa. La variable de entorno [`CLAUDE_AX_SCREEN_READER`](/es/env-vars) y la bandera [`--ax-screen-reader`](/es/cli-reference#cli-flags) tienen precedencia. Requiere Claude Code v2.1.181 o posterior | `true` |244| `axScreenReader` | Renderizar salida amigable con lector de pantalla: texto plano sin bordes decorativos ni animaciones. El modo de lector de pantalla usa el renderizador clásico, por lo que la configuración `tui` no tiene efecto mientras está activo; las sesiones de fondo adjuntas [](/docs/es/agent-view) aún se renderizan en pantalla completa. La variable de entorno [`CLAUDE_AX_SCREEN_READER`](/docs/es/env-vars) y la bandera [`--ax-screen-reader`](/docs/es/cli-reference#cli-flags) tienen precedencia. Requiere Claude Code v2.1.181 o posterior | `true` |

245| `blockedMarketplaces` | (Solo configuraciones administradas) Lista negra de fuentes de marketplace. Aplicada en adición de marketplace y en instalación, actualización, actualización y auto-actualización de plugins, por lo que un marketplace agregado antes de que se estableciera la política no puede usarse para obtener plugins. Las fuentes bloqueadas se verifican antes de descargar, por lo que nunca tocan el sistema de archivos. Consulte [Restricciones de marketplace administradas](/es/plugin-marketplaces#managed-marketplace-restrictions) | `[{ "source": "github", "repo": "untrusted/plugins" }]` |245| `blockedMarketplaces` | (Solo configuraciones administradas) Lista negra de fuentes de marketplace. Aplicada en adición de marketplace y en instalación, actualización, actualización y auto-actualización de plugins, por lo que un marketplace agregado antes de que se estableciera la política no puede usarse para obtener plugins. Las fuentes bloqueadas se verifican antes de descargar, por lo que nunca tocan el sistema de archivos. Consulte [Restricciones de marketplace administradas](/docs/es/plugin-marketplaces#managed-marketplace-restrictions) | `[{ "source": "github", "repo": "untrusted/plugins" }]` |

246| `browserExternalPageTools` | (Solo configuraciones administradas) Establecer en `"disabled"` para evitar que Claude use herramientas para leer o actuar en páginas externas en el panel [Browser](/es/desktop#browse-external-sites) de la aplicación de escritorio. Los usuarios aún pueden navegar a sitios externos por sí mismos, y las vistas previas del servidor de desarrollo local no se ven afectadas | `"disabled"` |246| `browserExternalPageTools` | (Solo configuraciones administradas) Establecer en `"disabled"` para evitar que Claude use herramientas para leer o actuar en páginas externas en el panel [Browser](/docs/es/desktop#browse-external-sites) de la aplicación de escritorio. Los usuarios aún pueden navegar a sitios externos por sí mismos, y las vistas previas del servidor de desarrollo local no se ven afectadas | `"disabled"` |

247| `channelsEnabled` | (Solo configuraciones administradas) Permitir [canales](/es/channels) para la organización. En planes de Claude.ai Team y Enterprise, los canales se bloquean cuando esto no está definido o es `false`. Para cuentas de [Anthropic Console](/es/authentication#claude-console-authentication) que usan autenticación de clave API, los canales se permiten de forma predeterminada a menos que su organización implemente configuraciones administradas, en cuyo caso esta clave debe establecerse en `true` | `true` |247| `channelsEnabled` | (Solo configuraciones administradas) Permitir [canales](/docs/es/channels) para la organización. En planes de Claude.ai Team y Enterprise, los canales se bloquean cuando esto no está definido o es `false`. Para cuentas de [Anthropic Console](/docs/es/authentication#claude-console-authentication) que usan autenticación de clave API, los canales se permiten de forma predeterminada a menos que su organización implemente configuraciones administradas, en cuyo caso esta clave debe establecerse en `true` | `true` |

248| `claudeMd` | (Solo configuraciones administradas) Instrucciones de estilo CLAUDE.md inyectadas como memoria administrada por la organización. Solo se honra cuando se establece en configuraciones administradas o de política e ignorado en configuraciones de usuario, proyecto y local. Consulte [CLAUDE.md en toda la organización](/es/memory#deploy-organization-wide-claude-md) | `"Always run make lint before committing."` |248| `claudeMd` | (Solo configuraciones administradas) Instrucciones de estilo CLAUDE.md inyectadas como memoria administrada por la organización. Solo se honra cuando se establece en configuraciones administradas o de política e ignorado en configuraciones de usuario, proyecto y local. Consulte [CLAUDE.md en toda la organización](/docs/es/memory#deploy-organization-wide-claude-md) | `"Always run make lint before committing."` |

249| `claudeMdExcludes` | Patrones Glob o rutas absolutas de archivos `CLAUDE.md` a omitir al cargar [memoria](/es/memory). Los patrones coinciden con rutas de archivo absolutas. Solo se aplica a memoria de usuario, proyecto y local; los archivos de política administrada no pueden excluirse | `["**/vendor/**/CLAUDE.md"]` |249| `claudeMdExcludes` | Patrones Glob o rutas absolutas de archivos `CLAUDE.md` a omitir al cargar [memoria](/docs/es/memory). Los patrones coinciden con rutas de archivo absolutas. Solo se aplica a memoria de usuario, proyecto y local; los archivos de política administrada no pueden excluirse | `["**/vendor/**/CLAUDE.md"]` |

250| `cleanupPeriodDays` | **Predeterminado**: `30` días, mínimo `1`. Claude Code elimina [archivos de sesión y otros datos de aplicación](/es/claude-directory#cleaned-up-automatically) más antiguos que este período al inicio. Establecer `0` falla con un error de validación. El mismo corte de edad se aplica a la eliminación automática de [worktrees huérfanos](/es/worktrees#clean-up-worktrees) al inicio. {/* min-version: 2.1.203 */}Si Claude Code no puede leer o analizar un archivo de configuración, pausa el barrido de limpieza de retención y muestra una advertencia en `/status` hasta que corrija el archivo, a menos que [configuraciones administradas](/es/server-managed-settings) proporcionen `cleanupPeriodDays`, en cuyo caso el barrido se ejecuta en el valor administrado. Antes de v2.1.203, la limpieza se ejecutaba en el predeterminado de 30 días en ese estado y podría eliminar transcripciones que un `cleanupPeriodDays` más largo estaba destinado a mantener; los archivos más nuevos que 30 días nunca se eliminaban. Para deshabilitar completamente las escrituras de transcripción, establezca la variable de entorno [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/es/env-vars). En modo no interactivo, pase `--no-session-persistence` junto con `-p` o establezca `persistSession: false` en el Agent SDK. | `20` |250| `cleanupPeriodDays` | **Predeterminado**: `30` días, mínimo `1`. Claude Code elimina [archivos de sesión y otros datos de aplicación](/docs/es/claude-directory#cleaned-up-automatically) más antiguos que este período al inicio. Establecer `0` falla con un error de validación. El mismo corte de edad se aplica a la eliminación automática de [worktrees huérfanos](/docs/es/worktrees#clean-up-worktrees) al inicio. Si Claude Code no puede leer o analizar un archivo de configuración, pausa el barrido de limpieza de retención y muestra una advertencia en `/status` hasta que corrija el archivo, a menos que [configuraciones administradas](/docs/es/server-managed-settings) proporcionen `cleanupPeriodDays`, en cuyo caso el barrido se ejecuta en el valor administrado. Antes de v2.1.203, la limpieza se ejecutaba en el predeterminado de 30 días en ese estado y podría eliminar transcripciones que un `cleanupPeriodDays` más largo estaba destinado a mantener; los archivos más nuevos que 30 días nunca se eliminaban. Para deshabilitar completamente las escrituras de transcripción, establezca la variable de entorno [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/docs/es/env-vars). En modo no interactivo, pase `--no-session-persistence` junto con `-p` o establezca `persistSession: false` en el Agent SDK. | `20` |

251| `companyAnnouncements` | Anuncio a mostrar a los usuarios al inicio. Si se proporcionan múltiples anuncios, se alternarán aleatoriamente. | `["Welcome to Acme Corp! Review our code guidelines at docs.acme.com"]` |251| `companyAnnouncements` | Anuncio a mostrar a los usuarios al inicio. Si se proporcionan múltiples anuncios, se alternarán aleatoriamente. | `["Welcome to Acme Corp! Review our code guidelines at docs.acme.com"]` |

252| `defaultShell` | **Predeterminado**: `"bash"`, o `"powershell"` en Windows cuando Bash no está disponible. Shell predeterminado para comandos `!` de cuadro de entrada. Acepta `"bash"` o `"powershell"`. Establecer `"powershell"` enruta comandos `!` interactivos a través de PowerShell en Windows. Requiere `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`. Consulte [herramienta PowerShell](/es/tools-reference#powershell-tool) | `"powershell"` |252| `defaultShell` | **Predeterminado**: `"bash"`, o `"powershell"` en Windows cuando Bash no está disponible. Shell predeterminado para comandos `!` de cuadro de entrada. Acepta `"bash"` o `"powershell"`. Establecer `"powershell"` enruta comandos `!` interactivos a través de PowerShell en Windows. Requiere `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`. Consulte [herramienta PowerShell](/docs/es/tools-reference#powershell-tool) | `"powershell"` |

253| `deniedMcpServers` | Cuando se establece en managed-settings.json, lista negra de MCP servers que están explícitamente bloqueados. Se aplica a todos los ámbitos incluyendo servers administrados. La lista de denegación tiene precedencia sobre la lista blanca. Consulte [Configuración de MCP administrada](/es/managed-mcp) | `[{ "serverName": "filesystem" }]` |253| `deniedMcpServers` | Cuando se establece en managed-settings.json, lista negra de MCP servers que están explícitamente bloqueados. Se aplica a todos los ámbitos incluyendo servers administrados. La lista de denegación tiene precedencia sobre la lista blanca. Consulte [Configuración de MCP administrada](/docs/es/managed-mcp) | `[{ "serverName": "filesystem" }]` |

254| `disableAgentView` | Establecer en `true` para desactivar [agentes de fondo y vista de agentes](/es/agent-view): `claude agents`, `--bg`, `/background` y el supervisor bajo demanda. Típicamente establecido en [configuraciones administradas](/es/permissions#managed-settings). Equivalente a establecer `CLAUDE_CODE_DISABLE_AGENT_VIEW` en `1` | `true` |254| `disableAgentView` | Establecer en `true` para desactivar [agentes de fondo y vista de agentes](/docs/es/agent-view): `claude agents`, `--bg`, `/background` y el supervisor bajo demanda. Típicamente establecido en [configuraciones administradas](/docs/es/permissions#managed-settings). Equivalente a establecer `CLAUDE_CODE_DISABLE_AGENT_VIEW` en `1` | `true` |

255| `disableAllHooks` | Deshabilitar todos los [hooks](/es/hooks) y cualquier [línea de estado](/es/statusline) personalizada | `true` |255| `disableAllHooks` | Deshabilitar todos los [hooks](/docs/es/hooks) y cualquier [línea de estado](/docs/es/statusline) personalizada | `true` |

256| `disableArtifact` | Establecer en `true` para deshabilitar la herramienta [Artifact](/es/artifacts), que publica la salida de sesión como una página web privada en claude.ai. Equivalente a establecer `CLAUDE_CODE_DISABLE_ARTIFACT` en `1` | `true` |256| `disableArtifact` | Establecer en `true` para deshabilitar la herramienta [Artifact](/docs/es/artifacts), que publica la salida de sesión como una página web privada en claude.ai. Equivalente a establecer `CLAUDE_CODE_DISABLE_ARTIFACT` en `1` | `true` |

257| `disableAutoMode` | Establecer en `"disable"` para evitar que se active el [modo automático](/es/permission-modes#eliminate-prompts-with-auto-mode). Elimina `auto` del ciclo `Shift+Tab` y rechaza `--permission-mode auto` al inicio. Más útil en [configuraciones administradas](/es/permissions#managed-settings) donde los usuarios no pueden anularlo | `"disable"` |257| `disableAutoMode` | Establecer en `"disable"` para evitar que se active el [modo automático](/docs/es/permission-modes#eliminate-prompts-with-auto-mode). Elimina `auto` del ciclo `Shift+Tab` y rechaza `--permission-mode auto` al inicio. Más útil en [configuraciones administradas](/docs/es/permissions#managed-settings) donde los usuarios no pueden anularlo | `"disable"` |

258| `disableBrowserExternalNavigation` | (Solo configuraciones administradas) Establecer en `true` para desactivar la navegación externa en el panel [Browser](/es/desktop#browse-external-sites) de la aplicación de escritorio. Ni los usuarios ni Claude pueden navegar a sitios externos, y las vistas previas del servidor localhost no se ven afectadas. El valor debe ser el booleano JSON `true`; la cadena `"true"` se ignora | `true` |258| `disableBrowserExternalNavigation` | (Solo configuraciones administradas) Establecer en `true` para desactivar la navegación externa en el panel [Browser](/docs/es/desktop#browse-external-sites) de la aplicación de escritorio. Ni los usuarios ni Claude pueden navegar a sitios externos, y las vistas previas del servidor localhost no se ven afectadas. El valor debe ser el booleano JSON `true`; la cadena `"true"` se ignora | `true` |

259| `disableBundledSkills` | Establecer en `true` para deshabilitar los [skills](/es/skills) y flujos de trabajo que se envían con Claude Code: los skills agrupados y flujos de trabajo se eliminan completamente, mientras que los comandos de barra inclinada integrados como `/init` permanecen escribibles pero se ocultan del modelo. `/doctor` permanece escribible como los comandos integrados; ocúltelo con [`DISABLE_DOCTOR_COMMAND`](/es/env-vars) en su lugar. Los skills de plugins, `.claude/skills/` y `.claude/commands/` no se ven afectados. Equivalente a establecer `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` en `1` | `true` |259| `disableBundledSkills` | Establecer en `true` para deshabilitar los [skills](/docs/es/skills) y flujos de trabajo que se envían con Claude Code: los skills agrupados y flujos de trabajo se eliminan completamente, mientras que los comandos de barra inclinada integrados como `/init` permanecen escribibles pero se ocultan del modelo. `/doctor` permanece escribible como los comandos integrados; ocúltelo con [`DISABLE_DOCTOR_COMMAND`](/docs/es/env-vars) en su lugar. Los skills de plugins, `.claude/skills/` y `.claude/commands/` no se ven afectados. Equivalente a establecer `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` en `1` | `true` |

260| `disableClaudeAiConnectors` | {/* min-version: 2.1.182 */}Deshabilitar [conectores MCP de claude.ai](/es/mcp#use-mcp-servers-from-claude-ai) para que no se obtengan automáticamente ni se conecten. Establezca en cualquier ámbito de configuración. `true` en cualquier fuente tiene precedencia, por lo que un `.claude/settings.json` de proyecto verificado puede optar por un repositorio fuera de conectores en la nube, pero un proyecto-nivel `false` no puede anular un nivel de usuario o política `true`. Los servidores pasados explícitamente a través de `--mcp-config` no se ven afectados. Para denegar conectores individuales en lugar de todos ellos, use [`deniedMcpServers`](/es/managed-mcp). Requiere Claude Code v2.1.182 o posterior | `true` |260| `disableClaudeAiConnectors` | Deshabilitar [conectores MCP de claude.ai](/docs/es/mcp#use-mcp-servers-from-claude-ai) para que no se obtengan automáticamente ni se conecten. Establezca en cualquier ámbito de configuración. `true` en cualquier fuente tiene precedencia, por lo que un `.claude/settings.json` de proyecto verificado puede optar por un repositorio fuera de conectores en la nube, pero un proyecto-nivel `false` no puede anular un nivel de usuario o política `true`. Los servidores pasados explícitamente a través de `--mcp-config` no se ven afectados. Para denegar conectores individuales en lugar de todos ellos, use [`deniedMcpServers`](/docs/es/managed-mcp). Requiere Claude Code v2.1.182 o posterior | `true` |

261| `disableDeepLinkRegistration` | Establecer en `"disable"` para evitar que Claude Code registre el controlador de protocolo `claude-cli://` con el sistema operativo al inicio. Los [enlaces profundos](/es/deep-links) permiten que herramientas externas abran una sesión de Claude Code con un indicador rellenado previamente. Útil en entornos donde el registro del controlador de protocolo está restringido o se gestiona por separado | `"disable"` |261| `disableDeepLinkRegistration` | Establecer en `"disable"` para evitar que Claude Code registre el controlador de protocolo `claude-cli://` con el sistema operativo al inicio. Los [enlaces profundos](/docs/es/deep-links) permiten que herramientas externas abran una sesión de Claude Code con un indicador rellenado previamente. Útil en entornos donde el registro del controlador de protocolo está restringido o se gestiona por separado | `"disable"` |

262| `disabledMcpjsonServers` | Lista de MCP servers específicos de archivos `.mcp.json` para rechazar | `["filesystem"]` |262| `disabledMcpjsonServers` | Lista de MCP servers específicos de archivos `.mcp.json` para rechazar | `["filesystem"]` |

263| `disableRemoteControl` | {/* min-version: 2.1.128 */}Deshabilitar [Control Remoto](/es/remote-control): bloquea `claude remote-control`, la bandera `--remote-control`, auto-inicio y el toggle en sesión. Típicamente colocado en [configuraciones administradas](/es/permissions#managed-settings) para aplicación de MDM por dispositivo, pero funciona desde cualquier ámbito. Requiere Claude Code v2.1.128 o posterior | `true` |263| `disableRemoteControl` | Deshabilitar [Control Remoto](/docs/es/remote-control): bloquea `claude remote-control`, la bandera `--remote-control`, auto-inicio y el toggle en sesión. Típicamente colocado en [configuraciones administradas](/docs/es/permissions#managed-settings) para aplicación de MDM por dispositivo, pero funciona desde cualquier ámbito. Requiere Claude Code v2.1.128 o posterior | `true` |

264| `disableSideloadFlags` | {/* min-version: 2.1.193 */}(Solo configuraciones administradas) Rechazar las banderas CLI `--plugin-dir`, `--plugin-url`, `--agents` y `--mcp-config` al inicio, que los usuarios podrían pasar de otra manera para eludir [`strictKnownMarketplaces`](#strictknownmarketplaces) para una única ejecución. También rechaza estas banderas desde cualquier superficie que genere la CLI con ellas internamente, actualmente sesiones locales de [Cowork](/es/desktop) en la aplicación de escritorio. Un `--mcp-config` cuyos servidores son todas entradas `type: "sdk"` en proceso aún se acepta, por lo que el Agent SDK y la extensión de VS Code siguen funcionando. No bloquea `claude mcp add`, `.mcp.json`, o SDK `setMcpServers()`; empareje con [`allowedMcpServers`](/es/managed-mcp) para control de MCP por servidor. Requiere Claude Code v2.1.193 o posterior | `true` |264| `disableSideloadFlags` | (Solo configuraciones administradas) Rechazar las banderas CLI `--plugin-dir`, `--plugin-url`, `--agents` y `--mcp-config` al inicio, que los usuarios podrían pasar de otra manera para eludir [`strictKnownMarketplaces`](#strictknownmarketplaces) para una única ejecución. También rechaza estas banderas desde cualquier superficie que genere la CLI con ellas internamente, actualmente sesiones locales de [Cowork](/docs/es/desktop) en la aplicación de escritorio. Un `--mcp-config` cuyos servidores son todas entradas `type: "sdk"` en proceso aún se acepta, por lo que el Agent SDK y la extensión de VS Code siguen funcionando. No bloquea `claude mcp add`, `.mcp.json`, o SDK `setMcpServers()`; empareje con [`allowedMcpServers`](/docs/es/managed-mcp) para control de MCP por servidor. Requiere Claude Code v2.1.193 o posterior | `true` |

265| `disableSkillShellExecution` | Deshabilitar la ejecución de shell en línea para bloques `` !`...` `` y ` ```! ` en [skills](/es/skills) y comandos personalizados de fuentes de usuario, proyecto, plugin o directorio adicional. Los comandos se reemplazan con `[shell command execution disabled by policy]` en lugar de ejecutarse. Los skills agrupados y administrados no se ven afectados. Más útil en [configuraciones administradas](/es/permissions#managed-settings) donde los usuarios no pueden anularlo | `true` |265| `disableSkillShellExecution` | Deshabilitar la ejecución de shell en línea para bloques `` !`...` `` y ` ```! ` en [skills](/es/skills) y comandos personalizados de fuentes de usuario, proyecto, plugin o directorio adicional. Los comandos se reemplazan con `[shell command execution disabled by policy]` en lugar de ejecutarse. Los skills agrupados y administrados no se ven afectados. Más útil en [configuraciones administradas](/es/permissions#managed-settings) donde los usuarios no pueden anularlo | `true` |

266| `disableWorkflows` | **Predeterminado**: `false`. Deshabilitar [flujos de trabajo dinámicos](/es/workflows#turn-workflows-off) y los comandos de flujo de trabajo agrupados. Equivalente a establecer `CLAUDE_CODE_DISABLE_WORKFLOWS` en `1` | `true` |266| `disableWorkflows` | **Predeterminado**: `false`. Deshabilitar [flujos de trabajo dinámicos](/docs/es/workflows#turn-workflows-off) y los comandos de flujo de trabajo agrupados. Equivalente a establecer `CLAUDE_CODE_DISABLE_WORKFLOWS` en `1` | `true` |

267| `editorMode` | **Predeterminado**: `"normal"`. Modo de atajos de teclado para el indicador de entrada: `"normal"` o `"vim"`. Aparece en `/config` como **Editor mode** | `"vim"` |267| `editorMode` | **Predeterminado**: `"normal"`. Modo de atajos de teclado para el indicador de entrada: `"normal"` o `"vim"`. Aparece en `/config` como **Editor mode** | `"vim"` |

268| `effortLevel` | Persistir el [nivel de esfuerzo](/es/model-config#adjust-effort-level) entre sesiones. Acepta `"low"`, `"medium"`, `"high"`, o `"xhigh"`. Se escribe automáticamente cuando ejecuta `/effort` con uno de esos valores. `--effort` y [`CLAUDE_CODE_EFFORT_LEVEL`](/es/env-vars) anulan esto para una sesión. Consulte [Ajustar nivel de esfuerzo](/es/model-config#adjust-effort-level) para modelos compatibles | `"xhigh"` |268| `effortLevel` | Persistir el [nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) entre sesiones. Acepta `"low"`, `"medium"`, `"high"`, o `"xhigh"`. Se escribe automáticamente cuando ejecuta `/effort` con uno de esos valores. `--effort` y [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/es/env-vars) anulan esto para una sesión. Consulte [Ajustar nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) para modelos compatibles | `"xhigh"` |

269| `enableAllProjectMcpServers` | Aprobar automáticamente todos los MCP servers definidos en archivos `.mcp.json` de proyecto. {/* min-version: 2.1.196 */}A partir de v2.1.196, `claude mcp list` y `claude mcp get` honran esta clave en una carpeta no confiable solo desde [archivos de configuración que no se verifican en el repositorio](/es/mcp#managing-your-servers) | `true` |269| `enableAllProjectMcpServers` | Aprobar automáticamente todos los MCP servers definidos en archivos `.mcp.json` de proyecto. A partir de v2.1.196, `claude mcp list` y `claude mcp get` honran esta clave en una carpeta no confiable solo desde [archivos de configuración que no se verifican en el repositorio](/docs/es/mcp#managing-your-servers) | `true` |

270| `enableArtifact` | {/* min-version: 2.1.196 */}Habilitar o deshabilitar la herramienta [Artifact](/es/artifacts) para este usuario. Cuando no está definido, el predeterminado sigue la [disponibilidad](/es/artifacts#availability) de la característica para su cuenta. La fila **Artifacts** en `/config` escribe esta clave. Una `disableArtifact` administrada y la [configuración de administrador](/es/artifacts#manage-artifacts-for-your-organization) de su organización tienen precedencia, y la clave se ignora en configuraciones de proyecto y local (`.claude/settings.json`, `.claude/settings.local.json`), que un repositorio podría verificar de otra manera. Requiere Claude Code v2.1.196 o posterior | `true` |270| `enableArtifact` | Habilitar o deshabilitar la herramienta [Artifact](/docs/es/artifacts) para este usuario. Cuando no está definido, el predeterminado sigue la [disponibilidad](/docs/es/artifacts#availability) de la característica para su cuenta. La fila **Artifacts** en `/config` escribe esta clave. Una `disableArtifact` administrada y la [configuración de administrador](/docs/es/artifacts#manage-artifacts-for-your-organization) de su organización tienen precedencia, y la clave se ignora en configuraciones de proyecto y local (`.claude/settings.json`, `.claude/settings.local.json`), que un repositorio podría verificar de otra manera. Requiere Claude Code v2.1.196 o posterior | `true` |

271| `enabledMcpjsonServers` | Lista de MCP servers específicos de archivos `.mcp.json` para aprobar. {/* min-version: 2.1.196 */}A partir de v2.1.196, `claude mcp list` y `claude mcp get` honran esta clave en una carpeta no confiable solo desde [archivos de configuración que no se verifican en el repositorio](/es/mcp#managing-your-servers) | `["memory", "github"]` |271| `enabledMcpjsonServers` | Lista de MCP servers específicos de archivos `.mcp.json` para aprobar. A partir de v2.1.196, `claude mcp list` y `claude mcp get` honran esta clave en una carpeta no confiable solo desde [archivos de configuración que no se verifican en el repositorio](/docs/es/mcp#managing-your-servers) | `["memory", "github"]` |

272| `enforceAvailableModels` | {/* min-version: 2.1.175 */}Extender la lista blanca `availableModels` al modelo Predeterminado. Cuando es `true` en configuraciones administradas y `availableModels` es una matriz no vacía, la opción Predeterminado recurre a la primera entrada en lista blanca que está disponible, pero solo cuando el modelo predeterminado para el tipo de cuenta del usuario no está en la lista blanca; un predeterminado en lista blanca se mantiene tal cual. No tiene efecto cuando `availableModels` no está definido o está vacío. Consulte [Aplicar la lista blanca al modelo Predeterminado](/es/model-config#enforce-the-allowlist-for-the-default-model). Requiere Claude Code v2.1.175 o posterior | `true` |272| `enforceAvailableModels` | Extender la lista blanca `availableModels` al modelo Predeterminado. Cuando es `true` en configuraciones administradas y `availableModels` es una matriz no vacía, la opción Predeterminado recurre a la primera entrada en lista blanca que está disponible, pero solo cuando el modelo predeterminado para el tipo de cuenta del usuario no está en la lista blanca; un predeterminado en lista blanca se mantiene tal cual. No tiene efecto cuando `availableModels` no está definido o está vacío. Consulte [Aplicar la lista blanca al modelo Predeterminado](/docs/es/model-config#enforce-the-allowlist-for-the-default-model). Requiere Claude Code v2.1.175 o posterior | `true` |

273| `env` | Variables de entorno aplicadas a cada sesión y a subprocesos que Claude Code genera desde ella. Establezca una variable en `""` para anular una exportación de shell con una cadena vacía, que Claude Code trata como no establecida para selección de proveedor. Los subprocesos aún heredan el valor vacío. `NO_COLOR` y `FORCE_COLOR` establecidos aquí llegan solo a subprocesos; para cambiar los colores de la interfaz propia de Claude Code, establézcalos en su shell antes de lanzar `claude`. {/* min-version: 2.1.195 */}A partir de v2.1.195, variables de identidad que los entornos de alojamiento de Claude Code establecen, por ejemplo `CLAUDE_CODE_REMOTE` y `CLAUDE_CODE_ACCOUNT_UUID`, se ignoran cuando se establecen aquí | `{"FOO": "bar"}` |273| `env` | Variables de entorno aplicadas a cada sesión y a subprocesos que Claude Code genera desde ella. Establezca una variable en `""` para anular una exportación de shell con una cadena vacía, que Claude Code trata como no establecida para selección de proveedor. Los subprocesos aún heredan el valor vacío. `NO_COLOR` y `FORCE_COLOR` establecidos aquí llegan solo a subprocesos; para cambiar los colores de la interfaz propia de Claude Code, establézcalos en su shell antes de lanzar `claude`. A partir de v2.1.195, variables de identidad que los entornos de alojamiento de Claude Code establecen, por ejemplo `CLAUDE_CODE_REMOTE` y `CLAUDE_CODE_ACCOUNT_UUID`, se ignoran cuando se establecen aquí | `{"FOO": "bar"}` |

274| `fallbackModel` | Modelo(s) de respaldo a intentar en orden cuando el modelo principal está sobrecargado o no disponible. Claude Code cambia al siguiente modelo disponible en la cadena para el resto del turno y muestra un aviso. `"default"` se expande al modelo predeterminado. Las cadenas se limitan a tres modelos; las entradas adicionales se ignoran. A diferencia de la mayoría de configuraciones de matriz, esta clave no se fusiona entre archivos de configuración: el archivo de mayor precedencia que la define suministra toda la cadena. La bandera [`--fallback-model`](/es/cli-reference#cli-flags) anula esto para una sesión. Consulte [Cadenas de modelo de respaldo](/es/model-config#fallback-model-chains) | `["claude-sonnet-5", "claude-haiku-4-5"]` |274| `fallbackModel` | Modelo(s) de respaldo a intentar en orden cuando el modelo principal está sobrecargado o no disponible. Claude Code cambia al siguiente modelo disponible en la cadena para el resto del turno y muestra un aviso. `"default"` se expande al modelo predeterminado. Las cadenas se limitan a tres modelos; las entradas adicionales se ignoran. A diferencia de la mayoría de configuraciones de matriz, esta clave no se fusiona entre archivos de configuración: el archivo de mayor precedencia que la define suministra toda la cadena. La bandera [`--fallback-model`](/docs/es/cli-reference#cli-flags) anula esto para una sesión. Consulte [Cadenas de modelo de respaldo](/docs/es/model-config#fallback-model-chains) | `["claude-sonnet-5", "claude-haiku-4-5"]` |

275| `fastMode` | Activar [modo rápido](/es/fast-mode) para sesiones donde está disponible. Alternar con `/fast` escribe `true` aquí en configuraciones de usuario y elimina la clave cuando desactiva el modo rápido | `true` |275| `fastMode` | Activar [modo rápido](/docs/es/fast-mode) para sesiones donde está disponible. Alternar con `/fast` escribe `true` aquí en configuraciones de usuario y elimina la clave cuando desactiva el modo rápido | `true` |

276| `fastModePerSessionOptIn` | Cuando es `true`, el modo rápido no persiste entre sesiones. Cada sesión comienza con el modo rápido desactivado, requiriendo que los usuarios lo habiliten con `/fast`. La preferencia de modo rápido del usuario aún se guarda. Consulte [Requerir opt-in por sesión](/es/fast-mode#require-per-session-opt-in) | `true` |276| `fastModePerSessionOptIn` | Cuando es `true`, el modo rápido no persiste entre sesiones. Cada sesión comienza con el modo rápido desactivado, requiriendo que los usuarios lo habiliten con `/fast`. La preferencia de modo rápido del usuario aún se guarda. Consulte [Requerir opt-in por sesión](/docs/es/fast-mode#require-per-session-opt-in) | `true` |

277| `feedbackSurveyRate` | Probabilidad (0–1) de que la [encuesta de calidad de sesión](/es/data-usage#session-quality-surveys) aparezca cuando sea elegible. Establecer en `0` para suprimir completamente, o establezca [`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY`](/es/env-vars) en `env`. Útil cuando se usa Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry donde la tasa de muestreo predeterminada no se aplica | `0.05` |277| `feedbackSurveyRate` | Probabilidad (0–1) de que la [encuesta de calidad de sesión](/docs/es/data-usage#session-quality-surveys) aparezca cuando sea elegible. Establecer en `0` para suprimir completamente, o establezca [`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY`](/docs/es/env-vars) en `env`. Útil cuando se usa Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry donde la tasa de muestreo predeterminada no se aplica | `0.05` |

278| `fileCheckpointingEnabled` | {/* min-version: 2.1.119 */}**Predeterminado**: `true`. Capturar archivos antes de cada edición para que [`/rewind`](/es/checkpointing) pueda restaurarlos. Aparece en `/config` como **Rewind code (checkpoints)**. Para deshabilitar a través de variable de entorno, establezca [`CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING`](/es/env-vars) en `env` | `false` |278| `fileCheckpointingEnabled` | **Predeterminado**: `true`. Capturar archivos antes de cada edición para que [`/rewind`](/docs/es/checkpointing) pueda restaurarlos. Aparece en `/config` como **Rewind code (checkpoints)**. Para deshabilitar a través de variable de entorno, establezca [`CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING`](/docs/es/env-vars) en `env` | `false` |

279| `fileSuggestion` | Configurar un script personalizado para autocompletado de archivo `@`. Consulte [Configuración de sugerencia de archivo](#file-suggestion-settings) | `{"type": "command", "command": "~/.claude/file-suggestion.sh"}` |279| `fileSuggestion` | Configurar un script personalizado para autocompletado de archivo `@`. Consulte [Configuración de sugerencia de archivo](#file-suggestion-settings) | `{"type": "command", "command": "~/.claude/file-suggestion.sh"}` |

280| `footerLinksRegexes` | {/* min-version: 2.1.176 */}Renderizar insignias clickeables adicionales en el pie de página cuando una regex coincide con la salida del turno. Cada entrada tiene un `pattern`, una plantilla de URL `url` con placeholders `{name}` rellenados desde grupos de captura nombrados, y una `label` opcional. Se lee desde configuraciones de usuario, bandera `--settings` y configuraciones administradas solamente. Consulte [Insignias de enlace de pie de página](#footer-link-badges) para restricciones de URL, lista blanca de esquemas y límites. Requiere Claude Code v2.1.176 o posterior | `[{"type": "regex", "pattern": "\\b(?<key>PROJ-\\d+)\\b", "url": "https://issues.example.com/browse/{key}", "label": "{key}"}]` |280| `footerLinksRegexes` | Renderizar insignias clickeables adicionales en el pie de página cuando una regex coincide con la salida del turno. Cada entrada tiene un `pattern`, una plantilla de URL `url` con placeholders `{name}` rellenados desde grupos de captura nombrados, y una `label` opcional. Se lee desde configuraciones de usuario, bandera `--settings` y configuraciones administradas solamente. Consulte [Insignias de enlace de pie de página](#footer-link-badges) para restricciones de URL, lista blanca de esquemas y límites. Requiere Claude Code v2.1.176 o posterior | `[{"type": "regex", "pattern": "\\b(?<key>PROJ-\\d+)\\b", "url": "https://issues.example.com/browse/{key}", "label": "{key}"}]` |

281| `forceLoginMethod` | Use `claudeai` para restringir el inicio de sesión a cuentas de Claude.ai, `console` para restringir el inicio de sesión a cuentas de Claude Console, o `gateway` para restringir el inicio de sesión a una puerta de enlace en la nube; consulte [puerta de aplicaciones Claude](/es/claude-apps-gateway). Cuando se establece en cualquier valor en configuraciones administradas, se bloquean sesiones autenticadas por `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, o `apiKeyHelper` al inicio, ya que una credencial de entorno no puede satisfacer el método de inicio de sesión requerido. Las sesiones de proveedores de terceros como Amazon Bedrock, Google Cloud's Agent Platform, y Microsoft Foundry no se bloquean: se autentican contra su proveedor de nube en lugar de Anthropic | `claudeai` |281| `forceLoginMethod` | Use `claudeai` para restringir el inicio de sesión a cuentas de Claude.ai, `console` para restringir el inicio de sesión a cuentas de Claude Console, o `gateway` para restringir el inicio de sesión a una puerta de enlace en la nube; consulte [puerta de aplicaciones Claude](/docs/es/claude-apps-gateway). Cuando se establece en cualquier valor en configuraciones administradas, se bloquean sesiones autenticadas por `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, o `apiKeyHelper` al inicio, ya que una credencial de entorno no puede satisfacer el método de inicio de sesión requerido. Las sesiones de proveedores de terceros como Amazon Bedrock, Google Cloud's Agent Platform, y Microsoft Foundry no se bloquean: se autentican contra su proveedor de nube en lugar de Anthropic | `claudeai` |

282| `forceLoginGatewayUrl` | Rellena previamente y bloquea la URL de la puerta de enlace en la pantalla `/login` de puerta de enlace en la nube. Ya sea esta clave o `forceLoginMethod: "gateway"` muestra esa pantalla; establezca ambas para que la URL se rellene. Solo se honra en el nivel de política administrada; se ignora en configuraciones de usuario y proyecto. Consulte [puerta de aplicaciones Claude](/es/claude-apps-gateway#set-the-gateway-url) | `"https://claude-gateway.example.com"` |282| `forceLoginGatewayUrl` | Rellena previamente y bloquea la URL de la puerta de enlace en la pantalla `/login` de puerta de enlace en la nube. Ya sea esta clave o `forceLoginMethod: "gateway"` muestra esa pantalla; establezca ambas para que la URL se rellene. Solo se honra en el nivel de política administrada; se ignora en configuraciones de usuario y proyecto. Consulte [puerta de aplicaciones Claude](/docs/es/claude-apps-gateway#set-the-gateway-url) | `"https://claude-gateway.example.com"` |

283| `forceLoginOrgUUID` | Requerir que el inicio de sesión pertenezca a una organización específica de Anthropic. Acepta una cadena UUID única, que también preselecciona esa organización durante el inicio de sesión, o una matriz de UUID donde se acepta cualquier organización listada sin preselección. Cuando se establece en configuraciones administradas, el inicio de sesión falla si la cuenta autenticada no pertenece a una organización listada, y sesiones autenticadas por `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, o `apiKeyHelper` se bloquean al inicio ya que la pertenencia a la organización no puede verificarse para ellas. Las sesiones de proveedores de terceros como Amazon Bedrock, Google Cloud's Agent Platform, y Microsoft Foundry no se bloquean: use su IAM de nube para restringir qué cuentas de nube pueden usarse. Una matriz vacía falla cerrada y bloquea el inicio de sesión con un mensaje de configuración incorrecta | `"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"` o `["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"]` |283| `forceLoginOrgUUID` | Requerir que el inicio de sesión pertenezca a una organización específica de Anthropic. Acepta una cadena UUID única, que también preselecciona esa organización durante el inicio de sesión, o una matriz de UUID donde se acepta cualquier organización listada sin preselección. Cuando se establece en configuraciones administradas, el inicio de sesión falla si la cuenta autenticada no pertenece a una organización listada, y sesiones autenticadas por `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, o `apiKeyHelper` se bloquean al inicio ya que la pertenencia a la organización no puede verificarse para ellas. Las sesiones de proveedores de terceros como Amazon Bedrock, Google Cloud's Agent Platform, y Microsoft Foundry no se bloquean: use su IAM de nube para restringir qué cuentas de nube pueden usarse. Una matriz vacía falla cerrada y bloquea el inicio de sesión con un mensaje de configuración incorrecta | `"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"` o `["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"]` |

284| `forceRemoteSettingsRefresh` | (Solo configuraciones administradas) Bloquear el inicio de CLI hasta que se obtengan configuraciones administradas remotas recientemente del servidor. Si la obtención falla, la CLI se cierra en lugar de continuar con configuraciones en caché o sin configuraciones. Cuando no se establece, el inicio continúa sin esperar configuraciones remotas. Consulte [aplicación de cierre de falla](/es/server-managed-settings#enforce-fail-closed-startup) | `true` |284| `forceRemoteSettingsRefresh` | (Solo configuraciones administradas) Bloquear el inicio de CLI hasta que se obtengan configuraciones administradas remotas recientemente del servidor. Si la obtención falla, la CLI se cierra en lugar de continuar con configuraciones en caché o sin configuraciones. Cuando no se establece, el inicio continúa sin esperar configuraciones remotas. Consulte [aplicación de cierre de falla](/docs/es/server-managed-settings#enforce-fail-closed-startup) | `true` |

285| `gcpAuthRefresh` | Script personalizado que actualiza las Credenciales Predeterminadas de Aplicación de GCP cuando expiran o no se pueden cargar. Consulte [configuración avanzada de credenciales](/es/google-vertex-ai#advanced-credential-configuration) | `gcloud auth application-default login` |285| `gcpAuthRefresh` | Script personalizado que actualiza las Credenciales Predeterminadas de Aplicación de GCP cuando expiran o no se pueden cargar. Consulte [configuración avanzada de credenciales](/docs/es/google-vertex-ai#advanced-credential-configuration) | `gcloud auth application-default login` |

286| `hooks` | Configurar comandos personalizados para ejecutarse en eventos del ciclo de vida. Consulte [documentación de hooks](/es/hooks) para el formato | Consulte [hooks](/es/hooks) |286| `hooks` | Configurar comandos personalizados para ejecutarse en eventos del ciclo de vida. Consulte [documentación de hooks](/docs/es/hooks) para el formato | Consulte [hooks](/docs/es/hooks) |

287| `httpHookAllowedEnvVars` | Lista blanca de nombres de variables de entorno que los hooks HTTP pueden interpolar en encabezados. Cuando se establece, el `allowedEnvVars` efectivo de cada hook es la intersección con esta lista. Sin definir = sin restricción. Las matrices se fusionan entre fuentes de configuración. Consulte [Configuración de hooks](#hook-configuration) | `["MY_TOKEN", "HOOK_SECRET"]` |287| `httpHookAllowedEnvVars` | Lista blanca de nombres de variables de entorno que los hooks HTTP pueden interpolar en encabezados. Cuando se establece, el `allowedEnvVars` efectivo de cada hook es la intersección con esta lista. Sin definir = sin restricción. Las matrices se fusionan entre fuentes de configuración. Consulte [Configuración de hooks](#hook-configuration) | `["MY_TOKEN", "HOOK_SECRET"]` |

288| `includeGitInstructions` | **Predeterminado**: `true`. Incluir instrucciones de flujo de trabajo de commit y PR integradas y la instantánea de estado de git en el indicador del sistema de Claude. Establecer en `false` para eliminar ambas, por ejemplo cuando se usan skills de flujo de trabajo de git personalizados. La variable de entorno `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` tiene precedencia sobre esta configuración cuando se establece | `false` |288| `includeGitInstructions` | **Predeterminado**: `true`. Incluir instrucciones de flujo de trabajo de commit y PR integradas y la instantánea de estado de git en el indicador del sistema de Claude. Establecer en `false` para eliminar ambas, por ejemplo cuando se usan skills de flujo de trabajo de git personalizados. La variable de entorno `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` tiene precedencia sobre esta configuración cuando se establece | `false` |

289| `inputNeededNotifEnabled` | {/* min-version: 2.1.119 */}**Predeterminado**: `false`. Cuando [Remote Control](/es/remote-control) está conectado, enviar una notificación push a su teléfono cuando un aviso de permiso o pregunta está esperando su entrada. Aparece en `/config` como **Push when actions required**. Consulte [Notificaciones push móviles](/es/remote-control#mobile-push-notifications). Requiere Claude Code v2.1.119 o posterior | `true` |289| `inputNeededNotifEnabled` | **Predeterminado**: `false`. Cuando [Remote Control](/docs/es/remote-control) está conectado, enviar una notificación push a su teléfono cuando un aviso de permiso o pregunta está esperando su entrada. Aparece en `/config` como **Push when actions required**. Consulte [Notificaciones push móviles](/docs/es/remote-control#mobile-push-notifications). Requiere Claude Code v2.1.119 o posterior | `true` |

290| `language` | Configurar el idioma de respuesta preferido de Claude (por ejemplo, `"japanese"`, `"spanish"`, `"french"`). Claude responderá en este idioma de forma predeterminada. También establece el idioma de [dictado de voz](/es/voice-dictation#change-the-dictation-language) y títulos de sesión generados automáticamente. {/* min-version: 2.1.176 */}A partir de v2.1.176, cuando no está definido, los títulos de sesión coinciden con el idioma de su conversación | `"japanese"` |290| `language` | Configurar el idioma de respuesta preferido de Claude (por ejemplo, `"japanese"`, `"spanish"`, `"french"`). Claude responderá en este idioma de forma predeterminada. También establece el idioma de [dictado de voz](/docs/es/voice-dictation#change-the-dictation-language) y títulos de sesión generados automáticamente. A partir de v2.1.176, cuando no está definido, los títulos de sesión coinciden con el idioma de su conversación | `"japanese"` |

291| `minimumVersion` | Piso que evita que las actualizaciones automáticas en segundo plano e `claude update` instalen una versión por debajo de esta. Cambiar del canal `"latest"` a `"stable"` a través de `/config` le solicita que permanezca en la versión actual o permita la degradación. Elegir permanecer establece este valor. También útil en [configuraciones administradas](/es/permissions#managed-settings) para fijar un mínimo en toda la organización. Para un piso duro que bloquea el inicio completamente, consulte `requiredMinimumVersion` | `"2.1.100"` |291| `minimumVersion` | Piso que evita que las actualizaciones automáticas en segundo plano e `claude update` instalen una versión por debajo de esta. Cambiar del canal `"latest"` a `"stable"` a través de `/config` le solicita que permanezca en la versión actual o permita la degradación. Elegir permanecer establece este valor. También útil en [configuraciones administradas](/docs/es/permissions#managed-settings) para fijar un mínimo en toda la organización. Para un piso duro que bloquea el inicio completamente, consulte `requiredMinimumVersion` | `"2.1.100"` |

292| `model` | Anular el modelo predeterminado a usar para Claude Code. `--model` y [`ANTHROPIC_MODEL`](/es/model-config#environment-variables) anulan esto para una sesión | `"claude-sonnet-5"` |292| `model` | Anular el modelo predeterminado a usar para Claude Code. `--model` y [`ANTHROPIC_MODEL`](/docs/es/model-config#environment-variables) anulan esto para una sesión | `"claude-sonnet-5"` |

293| `modelOverrides` | Asignar IDs de modelo de Anthropic a IDs de modelo específicos del proveedor como ARNs de perfil de inferencia de Bedrock. Cada entrada del selector de modelo usa su valor asignado al llamar a la API del proveedor. Consulte [Anular IDs de modelo por versión](/es/model-config#override-model-ids-per-version) | `{"claude-opus-4-6": "arn:aws:bedrock:..."}` |293| `modelOverrides` | Asignar IDs de modelo de Anthropic a IDs de modelo específicos del proveedor como ARNs de perfil de inferencia de Bedrock. Cada entrada del selector de modelo usa su valor asignado al llamar a la API del proveedor. Consulte [Anular IDs de modelo por versión](/docs/es/model-config#override-model-ids-per-version) | `{"claude-opus-4-6": "arn:aws:bedrock:..."}` |

294| `otelHeadersHelper` | Script para generar encabezados dinámicos de OpenTelemetry. Se ejecuta al inicio y periódicamente. Establezca el intervalo de actualización con [`CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS`](/es/env-vars). Consulte [Encabezados dinámicos](/es/monitoring-usage#dynamic-headers) | `/bin/generate_otel_headers.sh` |294| `otelHeadersHelper` | Script para generar encabezados dinámicos de OpenTelemetry. Se ejecuta al inicio y periódicamente. Establezca el intervalo de actualización con [`CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS`](/docs/es/env-vars). Consulte [Encabezados dinámicos](/docs/es/monitoring-usage#dynamic-headers) | `/bin/generate_otel_headers.sh` |

295| `outputStyle` | Configurar un estilo de salida para ajustar el indicador del sistema. Consulte [documentación de estilos de salida](/es/output-styles) | `"Explanatory"` |295| `outputStyle` | Configurar un estilo de salida para ajustar el indicador del sistema. Consulte [documentación de estilos de salida](/docs/es/output-styles) | `"Explanatory"` |

296| `parentSettingsBehavior` | {/* min-version: 2.1.133 */}(Solo configuraciones administradas) **Predeterminado**: `"first-wins"`. Controla si las configuraciones administradas suministradas programáticamente por un proceso host de incrustación, como el Agent SDK o una extensión IDE, se aplican cuando también está presente un nivel administrado implementado por administrador. `"first-wins"`: las configuraciones suministradas por el padre se descartan y solo se aplica el nivel administrado. `"merge"`: las configuraciones suministradas por el padre se aplican bajo el nivel administrado, filtradas para que puedan restringir la política pero no flexibilizarla. No tiene efecto cuando no se implementa ningún nivel administrado. Requiere Claude Code v2.1.133 o posterior | `"merge"` |296| `parentSettingsBehavior` | (Solo configuraciones administradas) **Predeterminado**: `"first-wins"`. Controla si las configuraciones administradas suministradas programáticamente por un proceso host de incrustación, como el Agent SDK o una extensión IDE, se aplican cuando también está presente un nivel administrado implementado por administrador. `"first-wins"`: las configuraciones suministradas por el padre se descartan y solo se aplica el nivel administrado. `"merge"`: las configuraciones suministradas por el padre se aplican bajo el nivel administrado, filtradas para que puedan restringir la política pero no flexibilizarla. No tiene efecto cuando no se implementa ningún nivel administrado. Requiere Claude Code v2.1.133 o posterior | `"merge"` |

297| `permissions` | Consulte la tabla a continuación para la estructura de permisos. | |297| `permissions` | Consulte la tabla a continuación para la estructura de permisos. | |

298| `plansDirectory` | **Predeterminado**: `~/.claude/plans`. Personalizar dónde se almacenan los archivos de plan. La ruta es relativa a la raíz del proyecto. | `"./plans"` |298| `plansDirectory` | **Predeterminado**: `~/.claude/plans`. Personalizar dónde se almacenan los archivos de plan. La ruta es relativa a la raíz del proyecto. | `"./plans"` |

299| `pluginSuggestionMarketplaces` | (Solo configuraciones administradas) Nombres de marketplace cuyos plugins pueden aparecer como sugerencias de instalación contextual. No se muestran sugerencias declaradas por marketplace sin esta lista blanca; la sugerencia integrada de diseño de frontend de primera parte no se ve afectada. Las sugerencias provienen de la declaración `relevance` de cada plugin en su entrada de marketplace. Un nombre solo tiene efecto cuando el marketplace está registrado en la máquina y su fuente registrada también se declara en configuraciones administradas, ya sea como la entrada `extraKnownMarketplaces` para ese nombre o como una entrada de `strictKnownMarketplaces`. Un marketplace registrado desde una fuente diferente bajo un nombre en lista blanca se ignora. El marketplace oficial está exento del requisito de fuente: permitir su nombre solo es suficiente, ya que ese nombre solo puede registrarse desde la fuente oficial de Anthropic. | `["acme-corp-plugins"]` |299| `pluginSuggestionMarketplaces` | (Solo configuraciones administradas) Nombres de marketplace cuyos plugins pueden aparecer como sugerencias de instalación contextual. No se muestran sugerencias declaradas por marketplace sin esta lista blanca; la sugerencia integrada de diseño de frontend de primera parte no se ve afectada. Las sugerencias provienen de la declaración `relevance` de cada plugin en su entrada de marketplace. Un nombre solo tiene efecto cuando el marketplace está registrado en la máquina y su fuente registrada también se declara en configuraciones administradas, ya sea como la entrada `extraKnownMarketplaces` para ese nombre o como una entrada de `strictKnownMarketplaces`. Un marketplace registrado desde una fuente diferente bajo un nombre en lista blanca se ignora. El marketplace oficial está exento del requisito de fuente: permitir su nombre solo es suficiente, ya que ese nombre solo puede registrarse desde la fuente oficial de Anthropic. | `["acme-corp-plugins"]` |

300| `pluginTrustMessage` | (Solo configuraciones administradas) Mensaje personalizado agregado a la advertencia de confianza de plugin mostrada antes de la instalación. Use esto para agregar contexto específico de la organización, por ejemplo para confirmar que los plugins de su marketplace interno están verificados. | `"All plugins from our marketplace are approved by IT"` |300| `pluginTrustMessage` | (Solo configuraciones administradas) Mensaje personalizado agregado a la advertencia de confianza de plugin mostrada antes de la instalación. Use esto para agregar contexto específico de la organización, por ejemplo para confirmar que los plugins de su marketplace interno están verificados. | `"All plugins from our marketplace are approved by IT"` |

301| `policyHelper` | {/* min-version: 2.1.136 */}Ejecutable implementado por administrador que calcula configuraciones administradas dinámicamente al inicio. Solo se honra desde MDM o un archivo `managed-settings.json` del sistema. Consulte [Calcular configuraciones administradas con un asistente de política](#compute-managed-settings-with-a-policy-helper). Requiere Claude Code v2.1.136 o posterior | `{"path": "/usr/local/bin/claude-policy"}` |301| `policyHelper` | Ejecutable implementado por administrador que calcula configuraciones administradas dinámicamente al inicio. Solo se honra desde MDM o un archivo `managed-settings.json` del sistema. Consulte [Calcular configuraciones administradas con un asistente de política](#compute-managed-settings-with-a-policy-helper). Requiere Claude Code v2.1.136 o posterior | `{"path": "/usr/local/bin/claude-policy"}` |

302| `preferredNotifChannel` | **Predeterminado**: `"auto"`. Método para notificaciones de tarea completada y solicitud de permiso: `"auto"`, `"terminal_bell"`, `"iterm2"`, `"iterm2_with_bell"`, `"kitty"`, `"ghostty"`, o `"notifications_disabled"`. `"auto"` envía una notificación de escritorio en iTerm2, Ghostty y Kitty y no hace nada en otras terminales. Establezca `"terminal_bell"` para sonar el carácter de campana en cualquier terminal. Aparece en `/config` como **Notifications**. Consulte [Obtener una campana de terminal o notificación](/es/terminal-config#get-a-terminal-bell-or-notification) | `"terminal_bell"` |302| `preferredNotifChannel` | **Predeterminado**: `"auto"`. Método para notificaciones de tarea completada y solicitud de permiso: `"auto"`, `"terminal_bell"`, `"iterm2"`, `"iterm2_with_bell"`, `"kitty"`, `"ghostty"`, o `"notifications_disabled"`. `"auto"` envía una notificación de escritorio en iTerm2, Ghostty y Kitty y no hace nada en otras terminales. Establezca `"terminal_bell"` para sonar el carácter de campana en cualquier terminal. Aparece en `/config` como **Notifications**. Consulte [Obtener una campana de terminal o notificación](/docs/es/terminal-config#get-a-terminal-bell-or-notification) | `"terminal_bell"` |

303| `prefersReducedMotion` | Reducir o deshabilitar animaciones de UI (spinners, shimmer, efectos flash) para accesibilidad | `true` |303| `prefersReducedMotion` | Reducir o deshabilitar animaciones de UI (spinners, shimmer, efectos flash) para accesibilidad | `true` |

304| `prUrlTemplate` | Plantilla de URL para la insignia de PR mostrada en el pie de página y en resúmenes de resultados de herramientas. Sustituye `{host}`, `{owner}`, `{repo}`, `{number}` y `{url}` de la URL de PR reportada por `gh`. Use para apuntar enlaces de PR a una herramienta de revisión de código interna en lugar de `github.com`. No afecta autolinks `#123` en la prosa de Claude | `"https://reviews.example.com/{owner}/{repo}/pull/{number}"` |304| `prUrlTemplate` | Plantilla de URL para la insignia de PR mostrada en el pie de página y en resúmenes de resultados de herramientas. Sustituye `{host}`, `{owner}`, `{repo}`, `{number}` y `{url}` de la URL de PR reportada por `gh`. Use para apuntar enlaces de PR a una herramienta de revisión de código interna en lugar de `github.com`. No afecta autolinks `#123` en la prosa de Claude | `"https://reviews.example.com/{owner}/{repo}/pull/{number}"` |

305| `remoteControlAtStartup` | {/* min-version: 2.1.119 */}Conectar [Remote Control](/es/remote-control) automáticamente cuando cada sesión interactiva comienza, en lugar de esperar `/remote-control`. Establezca en `true` para siempre auto-conectar, `false` para nunca auto-conectar, o deje sin definir para seguir el predeterminado de su organización. Aparece en `/config` como **Enable Remote Control for all sessions**. Consulte [Habilitar Remote Control para todas las sesiones](/es/remote-control#enable-remote-control-for-all-sessions) | `false` |305| `remoteControlAtStartup` | Conectar [Remote Control](/docs/es/remote-control) automáticamente cuando cada sesión interactiva comienza, en lugar de esperar `/remote-control`. Establezca en `true` para siempre auto-conectar, `false` para nunca auto-conectar, o deje sin definir para seguir el predeterminado de su organización. Aparece en `/config` como **Enable Remote Control for all sessions**. Consulte [Habilitar Remote Control para todas las sesiones](/docs/es/remote-control#enable-remote-control-for-all-sessions) | `false` |

306| `requiredMaximumVersion` | Solo configuraciones administradas. Versión máxima de Claude Code permitida para iniciar. Si la versión en ejecución es más nueva, Claude Code se cierra al inicio e instruye al usuario a instalar una versión aprobada a través del método aprobado de la organización; `claude install <version>` también puede funcionar. Las actualizaciones automáticas en segundo plano y `claude update` omiten versiones por encima del techo, por lo que una instalación en rango permanece en rango. `claude update`, `claude install` y `claude doctor` continúan funcionando por encima del techo para que los usuarios puedan recuperarse. Las versiones anteriores a esta configuración la ignoran | `"2.1.150"` |306| `requiredMaximumVersion` | Solo configuraciones administradas. Versión máxima de Claude Code permitida para iniciar. Si la versión en ejecución es más nueva, Claude Code se cierra al inicio e instruye al usuario a instalar una versión aprobada a través del método aprobado de la organización; `claude install <version>` también puede funcionar. Las actualizaciones automáticas en segundo plano y `claude update` omiten versiones por encima del techo, por lo que una instalación en rango permanece en rango. `claude update`, `claude install` y `claude doctor` continúan funcionando por encima del techo para que los usuarios puedan recuperarse. Las versiones anteriores a esta configuración la ignoran | `"2.1.150"` |

307| `requiredMinimumVersion` | Solo configuraciones administradas. Versión mínima de Claude Code requerida para iniciar. Si la versión en ejecución es más antigua, Claude Code se cierra al inicio e instruye al usuario a actualizar a través del método aprobado de la organización. `claude update`, `claude install` y `claude doctor` continúan funcionando por debajo del piso para que los usuarios puedan recuperarse. Difiere de `minimumVersion`, que evita degradaciones pero nunca bloquea el inicio. Las versiones anteriores a esta configuración la ignoran | `"2.1.150"` |307| `requiredMinimumVersion` | Solo configuraciones administradas. Versión mínima de Claude Code requerida para iniciar. Si la versión en ejecución es más antigua, Claude Code se cierra al inicio e instruye al usuario a actualizar a través del método aprobado de la organización. `claude update`, `claude install` y `claude doctor` continúan funcionando por debajo del piso para que los usuarios puedan recuperarse. Difiere de `minimumVersion`, que evita degradaciones pero nunca bloquea el inicio. Las versiones anteriores a esta configuración la ignoran | `"2.1.150"` |

308| `respectGitignore` | **Predeterminado**: `true`. Controlar si el selector de archivo `@` respeta patrones `.gitignore`. Cuando es `true`, los archivos que coinciden con patrones `.gitignore` se excluyen de las sugerencias | `false` |308| `respectGitignore` | **Predeterminado**: `true`. Controlar si el selector de archivo `@` respeta patrones `.gitignore`. Cuando es `true`, los archivos que coinciden con patrones `.gitignore` se excluyen de las sugerencias | `false` |

309| `respondToBashCommands` | {/* min-version: 2.1.186 */}**Predeterminado**: `true`. Si Claude responde después de que se ejecuta un comando shell `!` de cuadro de entrada. Establecer en `false` para agregar la salida del comando al contexto sin una respuesta. Consulte [Modo shell con prefijo `!`](/es/interactive-mode#shell-mode-with-prefix). Requiere Claude Code v2.1.186 o posterior | `false` |309| `respondToBashCommands` | **Predeterminado**: `true`. Si Claude responde después de que se ejecuta un comando shell `!` de cuadro de entrada. Establecer en `false` para agregar la salida del comando al contexto sin una respuesta. Consulte [Modo shell con prefijo `!`](/docs/es/interactive-mode#shell-mode-with-prefix). Requiere Claude Code v2.1.186 o posterior | `false` |

310| `showClearContextOnPlanAccept` | **Predeterminado**: `false`. Mostrar la opción "borrar contexto" en la pantalla de aceptación del plan. Establecer en `true` para restaurar la opción | `true` |310| `showClearContextOnPlanAccept` | **Predeterminado**: `false`. Mostrar la opción "borrar contexto" en la pantalla de aceptación del plan. Establecer en `true` para restaurar la opción | `true` |

311| `showThinkingSummaries` | **Predeterminado**: `false`. Mostrar resúmenes de [pensamiento extendido](/es/model-config#extended-thinking) en sesiones interactivas. Cuando no está definido o es `false`, los bloques de pensamiento se redactan por la API y se muestran como un stub contraído. La redacción solo cambia lo que ve, no lo que genera el modelo: para reducir el gasto de pensamiento, [baje el presupuesto o deshabilite el pensamiento](/es/model-config#extended-thinking) en su lugar. Esta configuración no tiene efecto en modo no interactivo (`-p`), el Agent SDK, o extensiones IDE como VS Code | `true` |311| `showThinkingSummaries` | **Predeterminado**: `false`. Mostrar resúmenes de [pensamiento extendido](/docs/es/model-config#extended-thinking) en sesiones interactivas. Cuando no está definido o es `false`, los bloques de pensamiento se redactan por la API y se muestran como un stub contraído. La redacción solo cambia lo que ve, no lo que genera el modelo: para reducir el gasto de pensamiento, [baje el presupuesto o deshabilite el pensamiento](/docs/es/model-config#extended-thinking) en su lugar. Esta configuración no tiene efecto en modo no interactivo (`-p`), el Agent SDK, o extensiones IDE como VS Code | `true` |

312| `showTurnDuration` | **Predeterminado**: `true`. Mostrar mensajes de duración de turno después de respuestas, por ejemplo "Cooked for 1m 6s". Aparece en `/config` como **Show turn duration** | `false` |312| `showTurnDuration` | **Predeterminado**: `true`. Mostrar mensajes de duración de turno después de respuestas, por ejemplo "Cooked for 1m 6s". Aparece en `/config` como **Show turn duration** | `false` |

313| `skillListingBudgetFraction` | **Predeterminado**: `0.01`. Fracción del contexto del modelo reservada para el [listado de skills](/es/skills#skill-descriptions-are-cut-short) que Claude ve cada turno, por lo que el predeterminado reserva el 1%. Cuando el listado excede el presupuesto, las descripciones de los skills menos utilizados se descartan y solo se enumeran sus nombres, para que Claude aún pueda invocarlos pero no pueda ver qué hacen. Aumente para mantener más descripciones visibles al costo de más contexto por turno. `/doctor` estima el costo del listado contra el presupuesto | `0.02` |313| `skillListingBudgetFraction` | **Predeterminado**: `0.01`. Fracción del contexto del modelo reservada para el [listado de skills](/docs/es/skills#skill-descriptions-are-cut-short) que Claude ve cada turno, por lo que el predeterminado reserva el 1%. Cuando el listado excede el presupuesto, las descripciones de los skills menos utilizados se descartan y solo se enumeran sus nombres, para que Claude aún pueda invocarlos pero no pueda ver qué hacen. Aumente para mantener más descripciones visibles al costo de más contexto por turno. `/doctor` estima el costo del listado contra el presupuesto | `0.02` |

314| `skillListingMaxDescChars` | **Predeterminado**: `1536`. Límite de caracteres por skill en el texto combinado de `description` y `when_to_use` en el [listado de skills](/es/skills#skill-descriptions-are-cut-short) que Claude ve cada turno. El texto más largo que esto se trunca. Aumente para mantener descripciones largas intactas al costo de más contexto por turno; disminuya para ajustar más skills bajo [`skillListingBudgetFraction`](#available-settings) | `2048` |314| `skillListingMaxDescChars` | **Predeterminado**: `1536`. Límite de caracteres por skill en el texto combinado de `description` y `when_to_use` en el [listado de skills](/docs/es/skills#skill-descriptions-are-cut-short) que Claude ve cada turno. El texto más largo que esto se trunca. Aumente para mantener descripciones largas intactas al costo de más contexto por turno; disminuya para ajustar más skills bajo [`skillListingBudgetFraction`](#available-settings) | `2048` |

315| `skillOverrides` | {/* min-version: 2.1.129 */}Anulaciones de visibilidad por skill con clave de nombre de skill. El valor es `"on"`, `"name-only"`, `"user-invocable-only"`, u `"off"`. Permite ocultar o contraer un skill sin editar su SKILL.md. No se aplica a skills de plugin, que se gestionan a través de `/plugin`. El menú `/skills` escribe estos en `.claude/settings.local.json`. Consulte [Anular visibilidad de skill desde configuraciones](/es/skills#override-skill-visibility-from-settings). Requiere Claude Code v2.1.129 o posterior | `{"legacy-context": "name-only", "deploy": "off"}` |315| `skillOverrides` | Anulaciones de visibilidad por skill con clave de nombre de skill. El valor es `"on"`, `"name-only"`, `"user-invocable-only"`, u `"off"`. Permite ocultar o contraer un skill sin editar su SKILL.md. No se aplica a skills de plugin, que se gestionan a través de `/plugin`. El menú `/skills` escribe estos en `.claude/settings.local.json`. Consulte [Anular visibilidad de skill desde configuraciones](/docs/es/skills#override-skill-visibility-from-settings). Requiere Claude Code v2.1.129 o posterior | `{"legacy-context": "name-only", "deploy": "off"}` |

316| `skipWebFetchPreflight` | Omitir la [verificación de seguridad de dominio de WebFetch](/es/data-usage#webfetch-domain-safety-check) que envía cada nombre de host solicitado a `api.anthropic.com` antes de obtener. Establecer en `true` en entornos que bloquean tráfico a Anthropic, como implementaciones de Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry con salida restrictiva. Cuando se omite, WebFetch intenta cualquier URL sin consultar la lista de bloqueos | `true` |316| `skipWebFetchPreflight` | Omitir la [verificación de seguridad de dominio de WebFetch](/docs/es/data-usage#webfetch-domain-safety-check) que envía cada nombre de host solicitado a `api.anthropic.com` antes de obtener. Establecer en `true` en entornos que bloquean tráfico a Anthropic, como implementaciones de Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry con salida restrictiva. Cuando se omite, WebFetch intenta cualquier URL sin consultar la lista de bloqueos | `true` |

317| `spinnerTipsEnabled` | **Predeterminado**: `true`. Mostrar consejos en el spinner mientras Claude está trabajando. Establecer en `false` para deshabilitar consejos | `false` |317| `spinnerTipsEnabled` | **Predeterminado**: `true`. Mostrar consejos en el spinner mientras Claude está trabajando. Establecer en `false` para deshabilitar consejos | `false` |

318| `spinnerTipsOverride` | Anular consejos del spinner con cadenas personalizadas. `tips`: matriz de cadenas de consejo. `excludeDefault`: si es `true`, mostrar solo consejos personalizados; si es `false` o está ausente, los consejos personalizados se fusionan con consejos integrados | `{ "excludeDefault": true, "tips": ["Use our internal tool X"] }` |318| `spinnerTipsOverride` | Anular consejos del spinner con cadenas personalizadas. `tips`: matriz de cadenas de consejo. `excludeDefault`: si es `true`, mostrar solo consejos personalizados; si es `false` o está ausente, los consejos personalizados se fusionan con consejos integrados | `{ "excludeDefault": true, "tips": ["Use our internal tool X"] }` |

319| `spinnerVerbs` | Personalizar los verbos de acción mostrados mientras un turno está en progreso. Establezca `mode` en `"replace"` para usar solo sus verbos, o `"append"` para agregarlos a los predeterminados | `{"mode": "append", "verbs": ["Pondering", "Crafting"]}` |319| `spinnerVerbs` | Personalizar los verbos de acción mostrados mientras un turno está en progreso. Establezca `mode` en `"replace"` para usar solo sus verbos, o `"append"` para agregarlos a los predeterminados | `{"mode": "append", "verbs": ["Pondering", "Crafting"]}` |

320| `sshConfigs` | Conexiones SSH a mostrar en el menú desplegable de entorno de [Desktop](/es/desktop#pre-configure-ssh-connections-for-your-team). Cada entrada requiere `id`, `name` y `sshHost`; `sshPort`, `sshIdentityFile` y `startDirectory` son opcionales. Cuando se establece en configuraciones administradas, las conexiones son de solo lectura para los usuarios. Se lee desde configuraciones administradas y de usuario solamente | `[{"id": "dev-vm", "name": "Dev VM", "sshHost": "user@dev.example.com"}]` |320| `sshConfigs` | Conexiones SSH a mostrar en el menú desplegable de entorno de [Desktop](/docs/es/desktop#pre-configure-ssh-connections-for-your-team). Cada entrada requiere `id`, `name` y `sshHost`; `sshPort`, `sshIdentityFile` y `startDirectory` son opcionales. Cuando se establece en configuraciones administradas, las conexiones son de solo lectura para los usuarios. Se lee desde configuraciones administradas y de usuario solamente | `[{"id": "dev-vm", "name": "Dev VM", "sshHost": "user@dev.example.com"}]` |

321| `statusLine` | Configurar una línea de estado personalizada para mostrar contexto. Los campos opcionales del objeto `padding`, `refreshInterval` y `hideVimModeIndicator` controlan espaciado, re-ejecuciones periódicas y si el indicador de modo vim integrado debajo del indicador está oculto. Consulte [documentación de `statusLine`](/es/statusline#manually-configure-a-status-line) | `{"type": "command", "command": "~/.claude/statusline.sh"}` |321| `statusLine` | Configurar una línea de estado personalizada para mostrar contexto. Los campos opcionales del objeto `padding`, `refreshInterval` y `hideVimModeIndicator` controlan espaciado, re-ejecuciones periódicas y si el indicador de modo vim integrado debajo del indicador está oculto. Consulte [documentación de `statusLine`](/docs/es/statusline#manually-configure-a-status-line) | `{"type": "command", "command": "~/.claude/statusline.sh"}` |

322| `strictKnownMarketplaces` | (Solo configuraciones administradas) Lista blanca de fuentes de marketplace de plugins. Sin definir = sin restricciones, matriz vacía = bloqueo. Aplicada en adición de marketplace y en instalación, actualización, actualización y auto-actualización de plugins, por lo que un marketplace agregado antes de que se estableciera la política no puede usarse para obtener plugins. Consulte [Restricciones de marketplace administradas](/es/plugin-marketplaces#managed-marketplace-restrictions) | `[{ "source": "github", "repo": "acme-corp/plugins" }]` |322| `strictKnownMarketplaces` | (Solo configuraciones administradas) Lista blanca de fuentes de marketplace de plugins. Sin definir = sin restricciones, matriz vacía = bloqueo. Aplicada en adición de marketplace y en instalación, actualización, actualización y auto-actualización de plugins, por lo que un marketplace agregado antes de que se estableciera la política no puede usarse para obtener plugins. Consulte [Restricciones de marketplace administradas](/docs/es/plugin-marketplaces#managed-marketplace-restrictions) | `[{ "source": "github", "repo": "acme-corp/plugins" }]` |

323| `strictPluginOnlyCustomization` | (Solo configuraciones administradas) Bloquear skills, agents, hooks y MCP servers de fuentes de usuario y proyecto, para que solo puedan provenir de plugins o configuraciones administradas. `true` bloquea las cuatro superficies; una matriz bloquea solo las nombradas. Consulte [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) | `["skills", "hooks"]` |323| `strictPluginOnlyCustomization` | (Solo configuraciones administradas) Bloquear skills, agents, hooks y MCP servers de fuentes de usuario y proyecto, para que solo puedan provenir de plugins o configuraciones administradas. `true` bloquea las cuatro superficies; una matriz bloquea solo las nombradas. Consulte [`strictPluginOnlyCustomization`](#strictpluginonlycustomization) | `["skills", "hooks"]` |

324| `syntaxHighlightingDisabled` | Deshabilitar resaltado de sintaxis en diffs, bloques de código y vistas previas de archivos | `true` |324| `syntaxHighlightingDisabled` | Deshabilitar resaltado de sintaxis en diffs, bloques de código y vistas previas de archivos | `true` |

325| `teammateMode` | **Predeterminado**: `in-process`. Cómo se muestran los compañeros de [equipo de agentes](/es/agent-teams): `in-process`, `auto` (paneles divididos en tmux o iTerm2, en proceso de otra manera), `tmux` (paneles divididos usando tmux o iTerm2, detectado desde su terminal), o {/* min-version: 2.1.186 */}}`iterm2` (paneles divididos nativos de iTerm2 a través de la CLI `it2`, agregado en v2.1.186). El predeterminado cambió de `auto` en v2.1.179. `--teammate-mode` anula esto para una sesión. Consulte [elegir un modo de visualización](/es/agent-teams#choose-a-display-mode) | `"auto"` |325| `teammateMode` | **Predeterminado**: `in-process`. Cómo se muestran los compañeros de [equipo de agentes](/docs/es/agent-teams): `in-process`, `auto` (paneles divididos en tmux o iTerm2, en proceso de otra manera), `tmux` (paneles divididos usando tmux o iTerm2, detectado desde su terminal), o }`iterm2` (paneles divididos nativos de iTerm2 a través de la CLI `it2`, agregado en v2.1.186). El predeterminado cambió de `auto` en v2.1.179. `--teammate-mode` anula esto para una sesión. Consulte [elegir un modo de visualización](/docs/es/agent-teams#choose-a-display-mode) | `"auto"` |

326| `terminalProgressBarEnabled` | **Predeterminado**: `true`. Mostrar la barra de progreso del terminal en terminales compatibles: ConEmu, Ghostty 1.2.0+, e iTerm2 3.6.6+. Aparece en `/config` como **Terminal progress bar** | `false` |326| `terminalProgressBarEnabled` | **Predeterminado**: `true`. Mostrar la barra de progreso del terminal en terminales compatibles: ConEmu, Ghostty 1.2.0+, e iTerm2 3.6.6+. Aparece en `/config` como **Terminal progress bar** | `false` |

327| `theme` | {/* min-version: 2.1.119 */}**Predeterminado**: `"dark"`. Tema de color para la interfaz: `"auto"`, `"dark"`, `"light"`, `"dark-daltonized"`, `"light-daltonized"`, `"dark-ansi"`, `"light-ansi"`, o una referencia de tema personalizado como `"custom:<slug>"` o `"custom:<plugin-name>:<slug>"`. Consulte [Crear un tema personalizado](/es/terminal-config#create-a-custom-theme). Aparece en `/config` como **Theme** | `"dark"` |327| `theme` | **Predeterminado**: `"dark"`. Tema de color para la interfaz: `"auto"`, `"dark"`, `"light"`, `"dark-daltonized"`, `"light-daltonized"`, `"dark-ansi"`, `"light-ansi"`, o una referencia de tema personalizado como `"custom:<slug>"` o `"custom:<plugin-name>:<slug>"`. Consulte [Crear un tema personalizado](/docs/es/terminal-config#create-a-custom-theme). Aparece en `/config` como **Theme** | `"dark"` |

328| `tui` | Renderizador de interfaz de usuario de terminal. Use `"fullscreen"` para el renderizador [alt-screen](/es/fullscreen) sin parpadeos con scrollback virtualizado. Use `"default"` para el renderizador clásico de pantalla principal. Establezca a través de `/tui`. También puede establecer la variable de entorno [`CLAUDE_CODE_NO_FLICKER`](/es/env-vars). Las sesiones de fondo abiertas desde [vista de agentes](/es/agent-view) siempre usan el renderizador de pantalla completa independientemente de esta configuración | `"fullscreen"` |328| `tui` | Renderizador de interfaz de usuario de terminal. Use `"fullscreen"` para el renderizador [alt-screen](/docs/es/fullscreen) sin parpadeos con scrollback virtualizado. Use `"default"` para el renderizador clásico de pantalla principal. Establezca a través de `/tui`. También puede establecer la variable de entorno [`CLAUDE_CODE_NO_FLICKER`](/docs/es/env-vars). Las sesiones de fondo abiertas desde [vista de agentes](/docs/es/agent-view) siempre usan el renderizador de pantalla completa independientemente de esta configuración | `"fullscreen"` |

329| `ultracode` | Activar [ultracode](/es/workflows#let-claude-decide-with-ultracode) para la sesión actual. Esta clave no se lee desde `settings.json`. Establézcala a través de `/effort ultracode`, `--settings`, o una solicitud de control del Agent SDK. {/* min-version: 2.1.203 */}Para iniciar una sesión con ultracode ya activado, lance con `claude --effort ultracode`, que requiere Claude Code v2.1.203 o posterior | `true` |329| `ultracode` | Activar [ultracode](/docs/es/workflows#let-claude-decide-with-ultracode) para la sesión actual. Esta clave no se lee desde `settings.json`. Establézcala a través de `/effort ultracode`, `--settings`, o una solicitud de control del Agent SDK. Para iniciar una sesión con ultracode ya activado, lance con `claude --effort ultracode`, que requiere Claude Code v2.1.203 o posterior | `true` |

330| `useAutoModeDuringPlan` | **Predeterminado**: `true`. Si el modo de plan usa semántica de modo automático cuando el modo automático está disponible. No se lee desde configuraciones de proyecto compartidas. Aparece en `/config` como "Use auto mode during plan" | `false` |330| `useAutoModeDuringPlan` | **Predeterminado**: `true`. Si el modo de plan usa semántica de modo automático cuando el modo automático está disponible. No se lee desde configuraciones de proyecto compartidas. Aparece en `/config` como "Use auto mode during plan" | `false` |

331| `verbose` | {/* min-version: 2.1.119 */}**Predeterminado**: `false`. Mostrar salida completa de herramientas en lugar de resúmenes truncados. Aparece en `/config` como **Verbose output**. La bandera `--verbose` anula esto para una sesión | `true` |331| `verbose` | **Predeterminado**: `false`. Mostrar salida completa de herramientas en lugar de resúmenes truncados. Aparece en `/config` como **Verbose output**. La bandera `--verbose` anula esto para una sesión | `true` |

332| `viewMode` | Modo de vista de transcripción predeterminado al inicio: `"default"`, `"verbose"`, o `"focus"`. Anula la selección pegajosa de `/focus` cuando se establece. La bandera `--verbose` anula esto para una sesión | `"verbose"` |332| `viewMode` | Modo de vista de transcripción predeterminado al inicio: `"default"`, `"verbose"`, o `"focus"`. Anula la selección pegajosa de `/focus` cuando se establece. La bandera `--verbose` anula esto para una sesión | `"verbose"` |

333| `vimInsertModeRemaps` | {/* min-version: 2.1.208 */}Asignar secuencias de modo INSERT de dos teclas a Escape en [modo editor vim](/es/interactive-mode#vim-editor-mode). Cada clave es exactamente dos caracteres imprimibles escritos en secuencia, y `"<Esc>"` es el único destino compatible; otras entradas se ignoran. Se lee desde configuraciones de usuario, bandera `--settings` y configuraciones administradas solamente, para que la configuración verificada de un repositorio no pueda remapear sus pulsaciones de teclas. No tiene efecto a menos que `editorMode` sea `"vim"`. Consulte [Remapear secuencias de teclas de modo INSERT](/es/interactive-mode#remap-insert-mode-key-sequences). Requiere Claude Code v2.1.208 o posterior | `{"jj": "<Esc>"}` |333| `vimInsertModeRemaps` | Asignar secuencias de modo INSERT de dos teclas a Escape en [modo editor vim](/docs/es/interactive-mode#vim-editor-mode). Cada clave es exactamente dos caracteres imprimibles escritos en secuencia, y `"<Esc>"` es el único destino compatible; otras entradas se ignoran. Se lee desde configuraciones de usuario, bandera `--settings` y configuraciones administradas solamente, para que la configuración verificada de un repositorio no pueda remapear sus pulsaciones de teclas. No tiene efecto a menos que `editorMode` sea `"vim"`. Consulte [Remapear secuencias de teclas de modo INSERT](/docs/es/interactive-mode#remap-insert-mode-key-sequences). Requiere Claude Code v2.1.208 o posterior | `{"jj": "<Esc>"}` |

334| `voice` | Configuración de [dictado de voz](/es/voice-dictation): `enabled` activa el dictado, `mode` selecciona `"hold"` o `"tap"`, y `autoSubmit` envía el indicador al soltar la tecla en modo hold. Se escribe automáticamente cuando ejecuta `/voice`. Requiere una cuenta de Claude.ai | `{ "enabled": true, "mode": "tap" }` |334| `voice` | Configuración de [dictado de voz](/docs/es/voice-dictation): `enabled` activa el dictado, `mode` selecciona `"hold"` o `"tap"`, y `autoSubmit` envía el indicador al soltar la tecla en modo hold. Se escribe automáticamente cuando ejecuta `/voice`. Requiere una cuenta de Claude.ai | `{ "enabled": true, "mode": "tap" }` |

335| `voiceEnabled` | Alias heredado para `voice.enabled`. Prefiera el objeto `voice` | `true` |335| `voiceEnabled` | Alias heredado para `voice.enabled`. Prefiera el objeto `voice` | `true` |

336| `wheelScrollAccelerationEnabled` | {/* min-version: 2.1.174 */}**Predeterminado**: `true`. En [renderizado de pantalla completa](/es/fullscreen#mouse-wheel-scrolling), acelerar la velocidad de desplazamiento de la rueda del ratón durante desplazamientos rápidos. Establezca en `false` para una velocidad de desplazamiento constante por muesca de rueda. Requiere Claude Code v2.1.174 o posterior | `false` |336| `wheelScrollAccelerationEnabled` | **Predeterminado**: `true`. En [renderizado de pantalla completa](/docs/es/fullscreen#mouse-wheel-scrolling), acelerar la velocidad de desplazamiento de la rueda del ratón durante desplazamientos rápidos. Establezca en `false` para una velocidad de desplazamiento constante por muesca de rueda. Requiere Claude Code v2.1.174 o posterior | `false` |

337| `workflowKeywordTriggerEnabled` | {/* min-version: 2.1.157 */}**Predeterminado**: `true`. Si la palabra clave `ultracode` en un indicador activa un [flujo de trabajo dinámico](/es/workflows#ask-for-a-workflow-in-your-prompt). Establecer en `false` para escribir la palabra sin activar uno. La configuración de esfuerzo ultracode, `/workflows` y comandos de flujo de trabajo guardados no se ven afectados. Aparece en `/config` como **Ultracode keyword trigger**. Agregado en v2.1.157; antes de v2.1.160 la palabra clave de activación era `workflow` | `false` |337| `workflowKeywordTriggerEnabled` | **Predeterminado**: `true`. Si la palabra clave `ultracode` en un indicador activa un [flujo de trabajo dinámico](/docs/es/workflows#ask-for-a-workflow-in-your-prompt). Establecer en `false` para escribir la palabra sin activar uno. La configuración de esfuerzo ultracode, `/workflows` y comandos de flujo de trabajo guardados no se ven afectados. Aparece en `/config` como **Ultracode keyword trigger**. Agregado en v2.1.157; antes de v2.1.160 la palabra clave de activación era `workflow` | `false` |

338| `wslInheritsWindowsSettings` | (Solo configuraciones administradas de Windows) Cuando es `true`, Claude Code en WSL lee configuraciones administradas de la cadena de política de Windows además de `/etc/claude-code`, con fuentes de Windows teniendo prioridad. Solo se honra cuando se establece en la clave de registro HKLM o `C:\Program Files\ClaudeCode\managed-settings.json`, ambas requieren administrador de Windows para escribir. Para que la política HKCU también se aplique en WSL, la bandera debe establecerse además en HKCU mismo. No tiene efecto en Windows nativo | `true` |338| `wslInheritsWindowsSettings` | (Solo configuraciones administradas de Windows) Cuando es `true`, Claude Code en WSL lee configuraciones administradas de la cadena de política de Windows además de `/etc/claude-code`, con fuentes de Windows teniendo prioridad. Solo se honra cuando se establece en la clave de registro HKLM o `C:\Program Files\ClaudeCode\managed-settings.json`, ambas requieren administrador de Windows para escribir. Para que la política HKCU también se aplique en WSL, la bandera debe establecerse además en HKCU mismo. No tiene efecto en Windows nativo | `true` |

339 339 

340<h3 id="global-config-settings">340<h3 id="global-config-settings">


348</Note>348</Note>

349 349 

350| Clave | Descripción | Ejemplo |350| Clave | Descripción | Ejemplo |

351| :--------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------- |351| :--------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------- |

352| `autoConnectIde` | **Predeterminado**: `false`. Conectarse automáticamente a un IDE en ejecución cuando Claude Code se inicia desde una terminal externa. Aparece en `/config` como **Auto-connect to IDE (external terminal)** cuando se ejecuta fuera de una terminal de VS Code o JetBrains. La variable de entorno [`CLAUDE_CODE_AUTO_CONNECT_IDE`](/es/env-vars) anula esto cuando se establece | `true` |352| `autoConnectIde` | **Predeterminado**: `false`. Conectarse automáticamente a un IDE en ejecución cuando Claude Code se inicia desde una terminal externa. Aparece en `/config` como **Auto-connect to IDE (external terminal)** cuando se ejecuta fuera de una terminal de VS Code o JetBrains. La variable de entorno [`CLAUDE_CODE_AUTO_CONNECT_IDE`](/docs/es/env-vars) anula esto cuando se establece | `true` |

353| `autoInstallIdeExtension` | **Predeterminado**: `true`. Instalar automáticamente la extensión de Claude Code IDE cuando se ejecuta desde una terminal de VS Code. Aparece en `/config` como **Auto-install IDE extension** cuando se ejecuta dentro de una terminal de VS Code o JetBrains. También puede establecer la variable de entorno [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](/es/env-vars) en `1` | `false` |353| `autoInstallIdeExtension` | **Predeterminado**: `true`. Instalar automáticamente la extensión de Claude Code IDE cuando se ejecuta desde una terminal de VS Code. Aparece en `/config` como **Auto-install IDE extension** cuando se ejecuta dentro de una terminal de VS Code o JetBrains. También puede establecer la variable de entorno [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](/docs/es/env-vars) en `1` | `false` |

354| `externalEditorContext` | **Predeterminado**: `false`. Anteponer la respuesta anterior de Claude como contexto comentado con `#` cuando abre el editor externo con `Ctrl+G`. Aparece en `/config` como **Show last response in external editor** | `true` |354| `externalEditorContext` | **Predeterminado**: `false`. Anteponer la respuesta anterior de Claude como contexto comentado con `#` cuando abre el editor externo con `Ctrl+G`. Aparece en `/config` como **Show last response in external editor** | `true` |

355| `permissionExplainerEnabled` | **Predeterminado**: `true`. Mostrar una [explicación generada por modelo del comando](/es/permissions#permission-system) cuando presiona `Ctrl+E` en un aviso de permiso de Bash o PowerShell. Establezca en `false` para desactivar el atajo | `false` |355| `permissionExplainerEnabled` | **Predeterminado**: `true`. Mostrar una [explicación generada por modelo del comando](/docs/es/permissions#permission-system) cuando presiona `Ctrl+E` en un aviso de permiso de Bash o PowerShell. Establezca en `false` para desactivar el atajo | `false` |

356| `teammateDefaultModel` | Modelo predeterminado para compañeros de [equipo de agentes](/es/agent-teams) cuando el indicador de generación no especifica uno. Establezca en un alias de modelo como `"sonnet"`, o `null` para heredar la selección actual de `/model` del líder. Aparece en `/config` como **Default teammate model** | `"sonnet"` |356| `teammateDefaultModel` | Modelo predeterminado para compañeros de [equipo de agentes](/docs/es/agent-teams) cuando el indicador de generación no especifica uno. Establezca en un alias de modelo como `"sonnet"`, o `null` para heredar la selección actual de `/model` del líder. Aparece en `/config` como **Default teammate model** | `"sonnet"` |

357| `workflowSizeGuideline` | {/* min-version: 2.1.202 */}**Predeterminado**: `unrestricted`, que no envía ninguna directriz. Establece el [recuento de agentes que Claude apunta](/es/workflows#set-a-size-guideline) en los flujos de trabajo dinámicos que escribe. Claude Code envía el valor a Claude como consejo, no como un límite aplicado. Acepta `unrestricted`, `small`, `medium`, o `large`. Aparece en `/config` como **Dynamic workflow size**. También puede establecerlo directamente con `/config workflowSizeGuideline=small`. Requiere Claude Code v2.1.202 o posterior. {/* min-version: 2.1.203 */}La directriz de recuento de agentes también reemplaza el umbral predeterminado para la [advertencia de `Large workflow`](/es/workflows#cost); ese comportamiento requiere Claude Code v2.1.203 o posterior | `"small"` |357| `workflowSizeGuideline` | **Predeterminado**: `unrestricted`, que no envía ninguna directriz. Establece el [recuento de agentes que Claude apunta](/docs/es/workflows#set-a-size-guideline) en los flujos de trabajo dinámicos que escribe. Claude Code envía el valor a Claude como consejo, no como un límite aplicado. Acepta `unrestricted`, `small`, `medium`, o `large`. Aparece en `/config` como **Dynamic workflow size**. También puede establecerlo directamente con `/config workflowSizeGuideline=small`. Requiere Claude Code v2.1.202 o posterior. La directriz de recuento de agentes también reemplaza el umbral predeterminado para la [advertencia de `Large workflow`](/docs/es/workflows#cost); ese comportamiento requiere Claude Code v2.1.203 o posterior | `"small"` |

358 358 

359<h3 id="worktree-settings">359<h3 id="worktree-settings">

360 Configuración de worktrees360 Configuración de worktrees


363Configure cómo `--worktree` crea y gestiona git worktrees.363Configure cómo `--worktree` crea y gestiona git worktrees.

364 364 

365| Clave | Descripción | Ejemplo |365| Clave | Descripción | Ejemplo |

366| :---------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------ |366| :---------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------ |

367| `worktree.baseRef` | Qué ref ramifican los nuevos worktrees. `"fresh"` (predeterminado) ramifica desde `origin/<default-branch>` para un árbol limpio que coincida con el remoto. `"head"` ramifica desde su `HEAD` local actual, por lo que los commits no enviados y el estado de rama de características están presentes en el worktree. Dentro de un worktree vinculado, `"head"` se resuelve a ese `HEAD` del worktree, no al del checkout principal. Se aplica a `--worktree`, la herramienta `EnterWorktree` y el aislamiento de subagent | `"head"` |367| `worktree.baseRef` | Qué ref ramifican los nuevos worktrees. `"fresh"` (predeterminado) ramifica desde `origin/<default-branch>` para un árbol limpio que coincida con el remoto. `"head"` ramifica desde su `HEAD` local actual, por lo que los commits no enviados y el estado de rama de características están presentes en el worktree. Dentro de un worktree vinculado, `"head"` se resuelve a ese `HEAD` del worktree, no al del checkout principal. Se aplica a `--worktree`, la herramienta `EnterWorktree` y el aislamiento de subagent | `"head"` |

368| `worktree.symlinkDirectories` | Directorios a enlazar simbólicamente desde el repositorio principal en cada worktree para evitar duplicar directorios grandes en disco. No se enlazan directorios de forma predeterminada | `["node_modules", ".cache"]` |368| `worktree.symlinkDirectories` | Directorios a enlazar simbólicamente desde el repositorio principal en cada worktree para evitar duplicar directorios grandes en disco. No se enlazan directorios de forma predeterminada | `["node_modules", ".cache"]` |

369| `worktree.sparsePaths` | Directorios a verificar en cada worktree a través de git sparse-checkout. Solo las rutas listadas más archivos de nivel raíz se escriben en disco, lo que es más rápido en monorepos grandes. Mientras existe un worktree disperso, git habilita `extensions.worktreeConfig` en el `.git/config` compartido del repositorio; consulte [Verificar solo los directorios que necesita](/es/large-codebases#check-out-only-the-directories-you-need) | `["packages/my-app", "shared/utils"]` |369| `worktree.sparsePaths` | Directorios a verificar en cada worktree a través de git sparse-checkout. Solo las rutas listadas más archivos de nivel raíz se escriben en disco, lo que es más rápido en monorepos grandes. Mientras existe un worktree disperso, git habilita `extensions.worktreeConfig` en el `.git/config` compartido del repositorio; consulte [Verificar solo los directorios que necesita](/docs/es/large-codebases#check-out-only-the-directories-you-need) | `["packages/my-app", "shared/utils"]` |

370| `worktree.bgIsolation` | {/* min-version: 2.1.143 */}Modo de aislamiento para [sesiones de fondo](/es/agent-view#how-file-edits-are-isolated). `"worktree"` (predeterminado) bloquea `Edit`/`Write` en el checkout principal hasta que se llame a `EnterWorktree`. {/* min-version: 2.1.203 */}Fuera de un repositorio de git, un [hook `WorktreeCreate`](/es/worktrees#non-git-version-control) que falla libera el bloqueo para que la sesión pueda editar el directorio de trabajo en su lugar; requiere Claude Code v2.1.203 o posterior. `"none"` permite que los trabajos de fondo editen la copia de trabajo directamente. Requiere Claude Code v2.1.143 o posterior | `"none"` |370| `worktree.bgIsolation` | Modo de aislamiento para [sesiones de fondo](/docs/es/agent-view#how-file-edits-are-isolated). `"worktree"` (predeterminado) bloquea `Edit`/`Write` en el checkout principal hasta que se llame a `EnterWorktree`. Fuera de un repositorio de git, un [hook `WorktreeCreate`](/docs/es/worktrees#non-git-version-control) que falla libera el bloqueo para que la sesión pueda editar el directorio de trabajo en su lugar; requiere Claude Code v2.1.203 o posterior. `"none"` permite que los trabajos de fondo editen la copia de trabajo directamente. Requiere Claude Code v2.1.143 o posterior | `"none"` |

371 371 

372Para copiar archivos ignorados por git como `.env` en nuevos worktrees, use un [archivo `.worktreeinclude`](/es/worktrees#copy-gitignored-files-into-worktrees) en la raíz de su proyecto en lugar de una configuración.372Para copiar archivos ignorados por git como `.env` en nuevos worktrees, use un [archivo `.worktreeinclude`](/docs/es/worktrees#copy-gitignored-files-into-worktrees) en la raíz de su proyecto en lugar de una configuración.

373 373 

374<h3 id="permission-settings">374<h3 id="permission-settings">

375 Configuración de permisos375 Configuración de permisos

376</h3>376</h3>

377 377 

378| Claves | Descripción | Ejemplo |378| Claves | Descripción | Ejemplo |

379| :---------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------- |379| :---------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------- |

380| `allow` | Matriz de reglas de permiso para permitir el uso de herramientas. Los globs de nombre de herramienta se admiten solo en la posición de herramienta después de un prefijo literal `mcp__<server>__`, como `mcp__github__get_*`; el segmento de servidor debe estar libre de glob. Consulte [Sintaxis de regla de permiso](#permission-rule-syntax) a continuación para detalles de coincidencia de patrones | `[ "Bash(git diff *)" ]` |380| `allow` | Matriz de reglas de permiso para permitir el uso de herramientas. Los globs de nombre de herramienta se admiten solo en la posición de herramienta después de un prefijo literal `mcp__<server>__`, como `mcp__github__get_*`; el segmento de servidor debe estar libre de glob. Consulte [Sintaxis de regla de permiso](#permission-rule-syntax) a continuación para detalles de coincidencia de patrones | `[ "Bash(git diff *)" ]` |

381| `ask` | Matriz de reglas de permiso para pedir confirmación al usar herramientas. Consulte [Sintaxis de regla de permiso](#permission-rule-syntax) a continuación | `[ "Bash(git push *)" ]` |381| `ask` | Matriz de reglas de permiso para pedir confirmación al usar herramientas. Consulte [Sintaxis de regla de permiso](#permission-rule-syntax) a continuación | `[ "Bash(git push *)" ]` |

382| `deny` | Matriz de reglas de permiso para denegar el uso de herramientas. Use esto para excluir archivos sensibles del acceso de Claude Code. Los nombres de herramientas aceptan patrones glob: `"*"` deniega cada herramienta y `"mcp__*"` deniega todas las herramientas MCP. Consulte [Sintaxis de regla de permiso](#permission-rule-syntax) y [Limitaciones de permiso de Bash](/es/permissions#tool-specific-permission-rules) | `[ "WebFetch", "Bash(curl *)", "Read(./.env)", "Read(./secrets/**)" ]` |382| `deny` | Matriz de reglas de permiso para denegar el uso de herramientas. Use esto para excluir archivos sensibles del acceso de Claude Code. Los nombres de herramientas aceptan patrones glob: `"*"` deniega cada herramienta y `"mcp__*"` deniega todas las herramientas MCP. Consulte [Sintaxis de regla de permiso](#permission-rule-syntax) y [Limitaciones de permiso de Bash](/docs/es/permissions#tool-specific-permission-rules) | `[ "WebFetch", "Bash(curl *)", "Read(./.env)", "Read(./secrets/**)" ]` |

383| `additionalDirectories` | [Directorios de trabajo](/es/permissions#working-directories) adicionales para acceso a archivos. La mayoría de la configuración de `.claude/` [no se descubre](/es/permissions#additional-directories-grant-file-access-not-configuration) desde estos directorios | `[ "../docs/" ]` |383| `additionalDirectories` | [Directorios de trabajo](/docs/es/permissions#working-directories) adicionales para acceso a archivos. La mayoría de la configuración de `.claude/` [no se descubre](/docs/es/permissions#additional-directories-grant-file-access-not-configuration) desde estos directorios | `[ "../docs/" ]` |

384| `defaultMode` | [Modo de permiso](/es/permission-modes) predeterminado al abrir Claude Code. Valores válidos: `default`, `acceptEdits`, `plan`, `auto`, `dontAsk`, `bypassPermissions`, y {/* min-version: 2.1.200 */}}`manual` como alias para `default`, el modo etiquetado Manual en la CLI y las extensiones de VS Code y JetBrains. El alias `manual` requiere Claude Code v2.1.200 o posterior. {/* min-version: 2.1.142 */}A partir de Claude Code v2.1.142, `auto` se ignora cuando se establece en configuraciones de proyecto o local, para que un repositorio no pueda otorgarse a sí mismo modo automático; establézcalo en `~/.claude/settings.json` en su lugar. Antes de v2.1.142, las configuraciones de proyecto podían establecer `auto`. La bandera CLI `--permission-mode` anula esta configuración para una única sesión | `"acceptEdits"` |384| `defaultMode` | [Modo de permiso](/docs/es/permission-modes) predeterminado al abrir Claude Code. Valores válidos: `default`, `acceptEdits`, `plan`, `auto`, `dontAsk`, `bypassPermissions`, y }`manual` como alias para `default`, el modo etiquetado Manual en la CLI y las extensiones de VS Code y JetBrains. El alias `manual` requiere Claude Code v2.1.200 o posterior. A partir de Claude Code v2.1.142, `auto` se ignora cuando se establece en configuraciones de proyecto o local, para que un repositorio no pueda otorgarse a sí mismo modo automático; establézcalo en `~/.claude/settings.json` en su lugar. Antes de v2.1.142, las configuraciones de proyecto podían establecer `auto`. La bandera CLI `--permission-mode` anula esta configuración para una única sesión | `"acceptEdits"` |

385| `disableBypassPermissionsMode` | Establecer en `"disable"` para evitar que se active el modo `bypassPermissions`. Esto deshabilita la bandera de línea de comandos `--dangerously-skip-permissions`. Típicamente colocado en [configuraciones administradas](/es/permissions#managed-settings) para aplicar política organizacional, pero funciona desde cualquier ámbito | `"disable"` |385| `disableBypassPermissionsMode` | Establecer en `"disable"` para evitar que se active el modo `bypassPermissions`. Esto deshabilita la bandera de línea de comandos `--dangerously-skip-permissions`. Típicamente colocado en [configuraciones administradas](/docs/es/permissions#managed-settings) para aplicar política organizacional, pero funciona desde cualquier ámbito | `"disable"` |

386| `skipDangerousModePermissionPrompt` | Omitir el aviso de confirmación mostrado antes de entrar en modo de permisos de derivación a través de `--dangerously-skip-permissions` o `defaultMode: "bypassPermissions"`. Se ignora cuando se establece en configuraciones de proyecto (`.claude/settings.json`) para evitar que repositorios no confiables omitan automáticamente el aviso | `true` |386| `skipDangerousModePermissionPrompt` | Omitir el aviso de confirmación mostrado antes de entrar en modo de permisos de derivación a través de `--dangerously-skip-permissions` o `defaultMode: "bypassPermissions"`. Se ignora cuando se establece en configuraciones de proyecto (`.claude/settings.json`) para evitar que repositorios no confiables omitan automáticamente el aviso | `true` |

387 387 

388<h3 id="permission-rule-syntax">388<h3 id="permission-rule-syntax">

389 Sintaxis de regla de permiso389 Sintaxis de regla de permiso

390</h3>390</h3>

391 391 

392Las reglas de permiso siguen el formato `Tool` o `Tool(specifier)`. Las reglas se evalúan en orden: primero reglas de denegación, luego preguntar, luego permitir. La primera regla coincidente determina el resultado independientemente de la especificidad de la regla. Consulte [orden de evaluación de regla de permiso](/es/permissions#manage-permissions) para obtener detalles.392Las reglas de permiso siguen el formato `Tool` o `Tool(specifier)`. Las reglas se evalúan en orden: primero reglas de denegación, luego preguntar, luego permitir. La primera regla coincidente determina el resultado independientemente de la especificidad de la regla. Consulte [orden de evaluación de regla de permiso](/docs/es/permissions#manage-permissions) para obtener detalles.

393 393 

394Ejemplos rápidos:394Ejemplos rápidos:

395 395 


400| `Read(./.env)` | Coincide con la lectura del archivo `.env` |400| `Read(./.env)` | Coincide con la lectura del archivo `.env` |

401| `WebFetch(domain:example.com)` | Coincide con solicitudes de búsqueda a example.com |401| `WebFetch(domain:example.com)` | Coincide con solicitudes de búsqueda a example.com |

402 402 

403Para la referencia completa de sintaxis de regla, incluyendo comportamiento de comodín, patrones específicos de herramientas para Read, Edit, WebFetch, MCP, y reglas de Agent, y limitaciones de seguridad de patrones de Bash, consulte [Sintaxis de regla de permiso](/es/permissions#permission-rule-syntax).403Para la referencia completa de sintaxis de regla, incluyendo comportamiento de comodín, patrones específicos de herramientas para Read, Edit, WebFetch, MCP, y reglas de Agent, y limitaciones de seguridad de patrones de Bash, consulte [Sintaxis de regla de permiso](/docs/es/permissions#permission-rule-syntax).

404 404 

405<h3 id="sandbox-settings">405<h3 id="sandbox-settings">

406 Configuración de sandbox406 Configuración de sandbox

407</h3>407</h3>

408 408 

409Configure el comportamiento avanzado de sandboxing. El sandboxing aísla comandos bash de su sistema de archivos y red. Consulte [Sandboxing](/es/sandboxing) para obtener detalles.409Configure el comportamiento avanzado de sandboxing. El sandboxing aísla comandos bash de su sistema de archivos y red. Consulte [Sandboxing](/docs/es/sandboxing) para obtener detalles.

410 410 

411| Claves | Descripción | Ejemplo |411| Claves | Descripción | Ejemplo |

412| :------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------- |412| :------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------- |

413| `enabled` | Habilitar sandboxing de bash (macOS, Linux y WSL2). Predeterminado: false | `true` |413| `enabled` | Habilitar sandboxing de bash (macOS, Linux y WSL2). Predeterminado: false | `true` |

414| `failIfUnavailable` | Salir con un error al inicio si `sandbox.enabled` es true pero el sandbox no puede iniciarse (dependencias faltantes o plataforma no compatible). Cuando es false (predeterminado), se muestra una advertencia y los comandos se ejecutan sin sandbox. Destinado a implementaciones de configuraciones administradas que requieren sandboxing como una puerta dura | `true` |414| `failIfUnavailable` | Salir con un error al inicio si `sandbox.enabled` es true pero el sandbox no puede iniciarse (dependencias faltantes o plataforma no compatible). Cuando es false (predeterminado), se muestra una advertencia y los comandos se ejecutan sin sandbox. Destinado a implementaciones de configuraciones administradas que requieren sandboxing como una puerta dura | `true` |

415| `autoAllowBashIfSandboxed` | Aprobar automáticamente comandos bash cuando están en sandbox. Predeterminado: true | `true` |415| `autoAllowBashIfSandboxed` | Aprobar automáticamente comandos bash cuando están en sandbox. Predeterminado: true | `true` |


418| `filesystem.allowWrite` | Rutas adicionales donde los comandos en sandbox pueden escribir. Las matrices se fusionan en todos los ámbitos de configuración: las rutas de usuario, proyecto y administradas se combinan, no se reemplazan. También se fusionan con rutas de reglas de permiso `Edit(...)` permitidas. Consulte [prefijos de ruta de sandbox](#sandbox-path-prefixes) a continuación. | `["/tmp/build", "~/.kube"]` |418| `filesystem.allowWrite` | Rutas adicionales donde los comandos en sandbox pueden escribir. Las matrices se fusionan en todos los ámbitos de configuración: las rutas de usuario, proyecto y administradas se combinan, no se reemplazan. También se fusionan con rutas de reglas de permiso `Edit(...)` permitidas. Consulte [prefijos de ruta de sandbox](#sandbox-path-prefixes) a continuación. | `["/tmp/build", "~/.kube"]` |

419| `filesystem.denyWrite` | Rutas donde los comandos en sandbox no pueden escribir. Las matrices se fusionan en todos los ámbitos de configuración. También se fusionan con rutas de reglas de permiso `Edit(...)` denegadas. | `["/etc", "/usr/local/bin"]` |419| `filesystem.denyWrite` | Rutas donde los comandos en sandbox no pueden escribir. Las matrices se fusionan en todos los ámbitos de configuración. También se fusionan con rutas de reglas de permiso `Edit(...)` denegadas. | `["/etc", "/usr/local/bin"]` |

420| `filesystem.denyRead` | Rutas donde los comandos en sandbox no pueden leer. Las matrices se fusionan en todos los ámbitos de configuración. También se fusionan con rutas de reglas de permiso `Read(...)` denegadas. | `["~/.aws/credentials"]` |420| `filesystem.denyRead` | Rutas donde los comandos en sandbox no pueden leer. Las matrices se fusionan en todos los ámbitos de configuración. También se fusionan con rutas de reglas de permiso `Read(...)` denegadas. | `["~/.aws/credentials"]` |

421| `filesystem.allowRead` | Rutas para permitir nuevamente la lectura dentro de regiones `denyRead`. Una ruta `allowRead` reabre la lectura dentro de una región `denyRead` más amplia, y una ruta exacta en `denyRead` permanece bloqueada dentro de una región `allowRead` más amplia; consulte la [tabla de superposición](/es/sandboxing#configure-sandboxing) para ejemplos. Las matrices se fusionan en todos los ámbitos de configuración. Use esto para crear patrones de acceso de lectura solo para el espacio de trabajo. | `["."]` |421| `filesystem.allowRead` | Rutas para permitir nuevamente la lectura dentro de regiones `denyRead`. Una ruta `allowRead` reabre la lectura dentro de una región `denyRead` más amplia, y una ruta exacta en `denyRead` permanece bloqueada dentro de una región `allowRead` más amplia; consulte la [tabla de superposición](/docs/es/sandboxing#configure-sandboxing) para ejemplos. Las matrices se fusionan en todos los ámbitos de configuración. Use esto para crear patrones de acceso de lectura solo para el espacio de trabajo. | `["."]` |

422| `filesystem.allowManagedReadPathsOnly` | (Solo configuraciones administradas) Solo se respetan rutas `allowRead` de configuraciones administradas. Las entradas `denyRead` aún se fusionan desde todas las fuentes. Predeterminado: false | `true` |422| `filesystem.allowManagedReadPathsOnly` | (Solo configuraciones administradas) Solo se respetan rutas `allowRead` de configuraciones administradas. Las entradas `denyRead` aún se fusionan desde todas las fuentes. Predeterminado: false | `true` |

423| `credentials.files` | {/* min-version: 2.1.187 */}Archivos o directorios de credenciales que los comandos en sandbox no pueden leer. Aplica el mismo bloqueo de lectura que `filesystem.denyRead`; la clave separada mantiene las rutas de credenciales agrupadas con `credentials.envVars` y aparte de las reglas generales del sistema de archivos. Cada entrada es `{ "path": "...", "mode": "deny" }`, y `deny` es el único modo compatible para archivos. Las rutas usan los mismos [prefijos](#sandbox-path-prefixes) que configuraciones `filesystem.*`. Las matrices se fusionan en todos los ámbitos de configuración. Requiere Claude Code v2.1.187 o posterior. | `[{ "path": "~/.aws/credentials", "mode": "deny" }]` |423| `credentials.files` | Archivos o directorios de credenciales que los comandos en sandbox no pueden leer. Aplica el mismo bloqueo de lectura que `filesystem.denyRead`; la clave separada mantiene las rutas de credenciales agrupadas con `credentials.envVars` y aparte de las reglas generales del sistema de archivos. Cada entrada es `{ "path": "...", "mode": "deny" }`, y `deny` es el único modo compatible para archivos. Las rutas usan los mismos [prefijos](#sandbox-path-prefixes) que configuraciones `filesystem.*`. Las matrices se fusionan en todos los ámbitos de configuración. Requiere Claude Code v2.1.187 o posterior. | `[{ "path": "~/.aws/credentials", "mode": "deny" }]` |

424| `credentials.envVars` | {/* min-version: 2.1.187 */}Variables de entorno a [proteger de comandos en sandbox](/es/sandboxing#protect-credentials). Cada entrada tiene un `name` y un `mode`; el nombre debe comenzar con una letra o guion bajo y contener solo letras, dígitos y guiones bajos. `deny` elimina la variable del entorno de comandos en sandbox. Requiere Claude Code v2.1.187 o posterior. {/* min-version: 2.1.199 */}}`mask` reemplaza la variable con un valor centinela por sesión dentro del sandbox mientras el proxy del sandbox sustituye el valor real en solicitudes salientes a los `injectHosts` de esa entrada; requiere `network.tlsTerminate` y Claude Code v2.1.199 o posterior. Las entradas `mask` solo se honran desde configuraciones de usuario, administradas o CLI `--settings`, no desde `.claude/settings.json` o `.claude/settings.local.json`. Las matrices se fusionan en todos los ámbitos de configuración, y `deny` tiene precedencia cuando la misma variable aparece con ambos modos. | `[{ "name": "GITHUB_TOKEN", "mode": "deny" }]` |424| `credentials.envVars` | Variables de entorno a [proteger de comandos en sandbox](/docs/es/sandboxing#protect-credentials). Cada entrada tiene un `name` y un `mode`; el nombre debe comenzar con una letra o guion bajo y contener solo letras, dígitos y guiones bajos. `deny` elimina la variable del entorno de comandos en sandbox. Requiere Claude Code v2.1.187 o posterior. }`mask` reemplaza la variable con un valor centinela por sesión dentro del sandbox mientras el proxy del sandbox sustituye el valor real en solicitudes salientes a los `injectHosts` de esa entrada; requiere `network.tlsTerminate` y Claude Code v2.1.199 o posterior. Las entradas `mask` solo se honran desde configuraciones de usuario, administradas o CLI `--settings`, no desde `.claude/settings.json` o `.claude/settings.local.json`. Las matrices se fusionan en todos los ámbitos de configuración, y `deny` tiene precedencia cuando la misma variable aparece con ambos modos. | `[{ "name": "GITHUB_TOKEN", "mode": "deny" }]` |

425| `credentials.envVars[].injectHosts` | Hosts donde el proxy del sandbox sustituye el valor real de una entrada `mask`. Cada host también debe estar cubierto por `network.allowedDomains`, ya sea exactamente o por un comodín. Cuando no está definido, el proxy sustituye el valor en solicitudes a cada host en `network.allowedDomains`. Se acepta pero se ignora cuando `mode` es `deny`. Requiere Claude Code v2.1.199 o posterior. {/* min-version: 2.1.199 */} | `["api.github.com"]` |425| `credentials.envVars[].injectHosts` | Hosts donde el proxy del sandbox sustituye el valor real de una entrada `mask`. Cada host también debe estar cubierto por `network.allowedDomains`, ya sea exactamente o por un comodín. Cuando no está definido, el proxy sustituye el valor en solicitudes a cada host en `network.allowedDomains`. Se acepta pero se ignora cuando `mode` es `deny`. Requiere Claude Code v2.1.199 o posterior. | `["api.github.com"]` |

426| `credentials.allowPlaintextInject` | Permitir sustitución `mask` en solicitudes HTTP simples así como HTTPS terminado por TLS. En HTTP simple la identidad ascendente no se verifica y la credencial viaja en texto plano, así que deje esto desactivado fuera de redes de prueba confiables. Solo se honra desde configuraciones de usuario, administradas o CLI `--settings`, no desde `.claude/settings.json` o `.claude/settings.local.json`. Predeterminado: false. Requiere Claude Code v2.1.199 o posterior. {/* min-version: 2.1.199 */} | `true` |426| `credentials.allowPlaintextInject` | Permitir sustitución `mask` en solicitudes HTTP simples así como HTTPS terminado por TLS. En HTTP simple la identidad ascendente no se verifica y la credencial viaja en texto plano, así que deje esto desactivado fuera de redes de prueba confiables. Solo se honra desde configuraciones de usuario, administradas o CLI `--settings`, no desde `.claude/settings.json` o `.claude/settings.local.json`. Predeterminado: false. Requiere Claude Code v2.1.199 o posterior. | `true` |

427| `network.allowUnixSockets` | (Solo macOS) Rutas de socket Unix accesibles en sandbox. Se ignora en Linux y WSL2, donde el filtro seccomp no puede inspeccionar rutas de socket; use `allowAllUnixSockets` en su lugar. | `["~/.ssh/agent-socket"]` |427| `network.allowUnixSockets` | (Solo macOS) Rutas de socket Unix accesibles en sandbox. Se ignora en Linux y WSL2, donde el filtro seccomp no puede inspeccionar rutas de socket; use `allowAllUnixSockets` en su lugar. | `["~/.ssh/agent-socket"]` |

428| `network.allowAllUnixSockets` | Permitir todas las conexiones de socket Unix en sandbox. En Linux y WSL2 esta es la única forma de permitir sockets Unix, ya que omite el filtro seccomp que de otra manera bloquea llamadas `socket(AF_UNIX, ...)`. Predeterminado: false | `true` |428| `network.allowAllUnixSockets` | Permitir todas las conexiones de socket Unix en sandbox. En Linux y WSL2 esta es la única forma de permitir sockets Unix, ya que omite el filtro seccomp que de otra manera bloquea llamadas `socket(AF_UNIX, ...)`. Predeterminado: false | `true` |

429| `network.allowLocalBinding` | Permitir vinculación a puertos localhost (solo macOS). Predeterminado: false | `true` |429| `network.allowLocalBinding` | Permitir vinculación a puertos localhost (solo macOS). Predeterminado: false | `true` |


433| `network.allowManagedDomainsOnly` | (Solo configuraciones administradas) Solo se respetan `allowedDomains` y reglas de permiso `WebFetch(domain:...)` permitidas de configuraciones administradas. Los dominios de configuraciones de usuario, proyecto y local se ignoran. Los dominios no permitidos se bloquean automáticamente sin solicitar al usuario. Los dominios denegados aún se respetan desde todas las fuentes. Predeterminado: false | `true` |433| `network.allowManagedDomainsOnly` | (Solo configuraciones administradas) Solo se respetan `allowedDomains` y reglas de permiso `WebFetch(domain:...)` permitidas de configuraciones administradas. Los dominios de configuraciones de usuario, proyecto y local se ignoran. Los dominios no permitidos se bloquean automáticamente sin solicitar al usuario. Los dominios denegados aún se respetan desde todas las fuentes. Predeterminado: false | `true` |

434| `network.httpProxyPort` | Puerto de proxy HTTP usado si desea traer su propio proxy. Si no se especifica, Claude ejecutará su propio proxy. | `8080` |434| `network.httpProxyPort` | Puerto de proxy HTTP usado si desea traer su propio proxy. Si no se especifica, Claude ejecutará su propio proxy. | `8080` |

435| `network.socksProxyPort` | Puerto de proxy SOCKS5 usado si desea traer su propio proxy. Si no se especifica, Claude ejecutará su propio proxy. | `8081` |435| `network.socksProxyPort` | Puerto de proxy SOCKS5 usado si desea traer su propio proxy. Si no se especifica, Claude ejecutará su propio proxy. | `8081` |

436| `network.tlsTerminate` | Experimental. Terminar TLS dentro del proxy del sandbox para que pueda leer el contenido de solicitudes HTTPS. Requerido para sustitución de credenciales `mask` [](/es/sandboxing#protect-credentials). Establezca `{}` para generar una autoridad de certificación efímera para la sesión, o establezca `caCertPath` y `caKeyPath` para usar la suya propia. Solo se honra desde configuraciones de usuario, administradas o CLI `--settings`, no desde `.claude/settings.json` o `.claude/settings.local.json`. Requiere Claude Code v2.1.199 o posterior. {/* min-version: 2.1.199 */} | `{}` |436| `network.tlsTerminate` | Experimental. Terminar TLS dentro del proxy del sandbox para que pueda leer el contenido de solicitudes HTTPS. Requerido para sustitución de credenciales `mask` [](/docs/es/sandboxing#protect-credentials). Establezca `{}` para generar una autoridad de certificación efímera para la sesión, o establezca `caCertPath` y `caKeyPath` para usar la suya propia. Solo se honra desde configuraciones de usuario, administradas o CLI `--settings`, no desde `.claude/settings.json` o `.claude/settings.local.json`. Requiere Claude Code v2.1.199 o posterior. | `{}` |

437| `enableWeakerNestedSandbox` | Habilitar sandbox más débil para entornos Docker sin privilegios (solo Linux y WSL2). **Reduce la seguridad.** Predeterminado: false | `true` |437| `enableWeakerNestedSandbox` | Habilitar sandbox más débil para entornos Docker sin privilegios (solo Linux y WSL2). **Reduce la seguridad.** Predeterminado: false | `true` |

438| `enableWeakerNetworkIsolation` | (Solo macOS) Permitir acceso al servicio de confianza TLS del sistema (`com.apple.trustd.agent`) en el sandbox. Requerido para herramientas basadas en Go como `gh`, `gcloud` y `terraform` para verificar certificados TLS cuando se usa `httpProxyPort` con un proxy MITM y CA personalizada. **Reduce la seguridad** al abrir una posible ruta de exfiltración de datos. Predeterminado: false | `true` |438| `enableWeakerNetworkIsolation` | (Solo macOS) Permitir acceso al servicio de confianza TLS del sistema (`com.apple.trustd.agent`) en el sandbox. Requerido para herramientas basadas en Go como `gh`, `gcloud` y `terraform` para verificar certificados TLS cuando se usa `httpProxyPort` con un proxy MITM y CA personalizada. **Reduce la seguridad** al abrir una posible ruta de exfiltración de datos. Predeterminado: false | `true` |

439| `allowAppleEvents` | (Solo macOS) Permitir que comandos en sandbox envíen Apple Events. Requerido para `open`, `osascript` y herramientas que abren URLs en un navegador, que de otra manera fallan con error `-600`. **Elimina el aislamiento de ejecución de código.** Los comandos en sandbox pueden lanzar otras aplicaciones sin sandbox sin solicitud del usuario; también pueden enviar comandos AppleScript a aplicaciones en ejecución como Terminal, sujeto al aviso de consentimiento de automatización por aplicación de macOS (TCC). Solo se honra desde configuraciones de usuario, administradas o CLI, no desde configuraciones de proyecto. Predeterminado: false | `true` |439| `allowAppleEvents` | (Solo macOS) Permitir que comandos en sandbox envíen Apple Events. Requerido para `open`, `osascript` y herramientas que abren URLs en un navegador, que de otra manera fallan con error `-600`. **Elimina el aislamiento de ejecución de código.** Los comandos en sandbox pueden lanzar otras aplicaciones sin sandbox sin solicitud del usuario; también pueden enviar comandos AppleScript a aplicaciones en ejecución como Terminal, sujeto al aviso de consentimiento de automatización por aplicación de macOS (TCC). Solo se honra desde configuraciones de usuario, administradas o CLI, no desde configuraciones de proyecto. Predeterminado: false | `true` |

440| `bwrapPath` | (Solo configuraciones administradas, Linux/WSL2) Ruta absoluta al binario bubblewrap (`bwrap`). Anula la detección automática a través de `PATH`. Solo se honra desde [configuraciones administradas](/es/settings#settings-files), no desde configuraciones de usuario o proyecto. Útil cuando `bwrap` se instala en una ubicación no estándar en entornos administrados. | `/opt/admin/bwrap` |440| `bwrapPath` | (Solo configuraciones administradas, Linux/WSL2) Ruta absoluta al binario bubblewrap (`bwrap`). Anula la detección automática a través de `PATH`. Solo se honra desde [configuraciones administradas](/docs/es/settings#settings-files), no desde configuraciones de usuario o proyecto. Útil cuando `bwrap` se instala en una ubicación no estándar en entornos administrados. | `/opt/admin/bwrap` |

441| `socatPath` | (Solo configuraciones administradas, Linux/WSL2) Ruta absoluta al binario `socat` usado para el proxy de red del sandbox. Anula la detección automática a través de `PATH`. Solo se honra desde configuraciones administradas. | `/opt/admin/socat` |441| `socatPath` | (Solo configuraciones administradas, Linux/WSL2) Ruta absoluta al binario `socat` usado para el proxy de red del sandbox. Anula la detección automática a través de `PATH`. Solo se honra desde configuraciones administradas. | `/opt/admin/socat` |

442 442 

443<h4 id="sandbox-path-prefixes">443<h4 id="sandbox-path-prefixes">


452| `~/` | Relativo al directorio de inicio | `~/.kube` se convierte en `$HOME/.kube` |452| `~/` | Relativo al directorio de inicio | `~/.kube` se convierte en `$HOME/.kube` |

453| `./` o sin prefijo | Relativo a la raíz del proyecto para configuraciones de proyecto, o a `~/.claude` para configuraciones de usuario | `./output` en `.claude/settings.json` se resuelve a `<project-root>/output` |453| `./` o sin prefijo | Relativo a la raíz del proyecto para configuraciones de proyecto, o a `~/.claude` para configuraciones de usuario | `./output` en `.claude/settings.json` se resuelve a `<project-root>/output` |

454 454 

455El prefijo anterior `//path` para rutas absolutas aún funciona. Si anteriormente usó `/path` esperando resolución relativa al proyecto, cambie a `./path`. Esta sintaxis difiere de [reglas de permiso Read y Edit](/es/permissions#read-and-edit), que usan `//path` para absoluto y `/path` para relativo al proyecto. Las rutas del sistema de archivos de sandbox usan convenciones estándar: `/tmp/build` es una ruta absoluta.455El prefijo anterior `//path` para rutas absolutas aún funciona. Si anteriormente usó `/path` esperando resolución relativa al proyecto, cambie a `./path`. Esta sintaxis difiere de [reglas de permiso Read y Edit](/docs/es/permissions#read-and-edit), que usan `//path` para absoluto y `/path` para relativo al proyecto. Las rutas del sistema de archivos de sandbox usan convenciones estándar: `/tmp/build` es una ruta absoluta.

456 456 

457**Ejemplo de configuración:**457**Ejemplo de configuración:**

458 458 


542}542}

543```543```

544 544 

545El comando se ejecuta con las mismas variables de entorno que [hooks](/es/hooks), incluyendo `CLAUDE_PROJECT_DIR`. Recibe JSON a través de stdin con un campo `query`:545El comando se ejecuta con las mismas variables de entorno que [hooks](/docs/es/hooks), incluyendo `CLAUDE_PROJECT_DIR`. Recibe JSON a través de stdin con un campo `query`:

546 546 

547```json theme={null}547```json theme={null}

548{"query": "src/comp"}548{"query": "src/comp"}


603 603 

604Cuando un turno se completa, Claude Code compara cada entrada `pattern` regex contra la salida del turno en el hilo principal, por lo que una regex lenta bloquea la UI hasta que finaliza. Las cuantificadores anidados como `(a+)+$` pueden tomar exponencialmente tiempo contra ciertas entradas y congelar la sesión, por lo que mantenga cada `pattern` lineal y evite anidar `+` o `*`.604Cuando un turno se completa, Claude Code compara cada entrada `pattern` regex contra la salida del turno en el hilo principal, por lo que una regex lenta bloquea la UI hasta que finaliza. Las cuantificadores anidados como `(a+)+$` pueden tomar exponencialmente tiempo contra ciertas entradas y congelar la sesión, por lo que mantenga cada `pattern` lineal y evite anidar `+` o `*`.

605 605 

606Las insignias de pie de página se renderizan junto a una [línea de estado personalizada](/es/statusline) cuando se configura una; ninguna reemplaza a la otra. Use una línea de estado para una fila impulsada por script que calcula su propio contenido desde datos de sesión, e insignias de pie de página para convertir IDs de la conversación en enlaces sin un script.606Las insignias de pie de página se renderizan junto a una [línea de estado personalizada](/docs/es/statusline) cuando se configura una; ninguna reemplaza a la otra. Use una línea de estado para una fila impulsada por script que calcula su propio contenido desde datos de sesión, e insignias de pie de página para convertir IDs de la conversación en enlaces sin un script.

607 607 

608<h3 id="hook-configuration">608<h3 id="hook-configuration">

609 Configuración de hooks609 Configuración de hooks


641 Calcular configuraciones administradas con un asistente de política641 Calcular configuraciones administradas con un asistente de política

642</h3>642</h3>

643 643 

644La configuración `policyHelper` apunta a un ejecutable que calcula configuraciones administradas al inicio, para que los administradores puedan derivar política de postura de dispositivo, identidad, o un servicio remoto en lugar de un archivo estático. Configúrelo desde MDM o un archivo `managed-settings.json` del sistema. Claude Code ignora `policyHelper` cuando aparece en cualquier otro ámbito, incluyendo configuraciones de usuario, configuraciones de proyecto, el hive de registro HKCU, y [configuraciones administradas por servidor](/es/server-managed-settings).644La configuración `policyHelper` apunta a un ejecutable que calcula configuraciones administradas al inicio, para que los administradores puedan derivar política de postura de dispositivo, identidad, o un servicio remoto en lugar de un archivo estático. Configúrelo desde MDM o un archivo `managed-settings.json` del sistema. Claude Code ignora `policyHelper` cuando aparece en cualquier otro ámbito, incluyendo configuraciones de usuario, configuraciones de proyecto, el hive de registro HKCU, y [configuraciones administradas por servidor](/docs/es/server-managed-settings).

645 645 

646La configuración acepta estas claves:646La configuración acepta estas claves:

647 647 


671 671 

672Las configuraciones se aplican en orden de precedencia. De mayor a menor:672Las configuraciones se aplican en orden de precedencia. De mayor a menor:

673 673 

6741. **Configuraciones administradas** ([administradas por servidor](/es/server-managed-settings), [políticas de MDM/nivel de SO](#configuration-scopes), o [configuraciones administradas](/es/settings#settings-files))6741. **Configuraciones administradas** ([administradas por servidor](/docs/es/server-managed-settings), [políticas de MDM/nivel de SO](#configuration-scopes), o [configuraciones administradas](/docs/es/settings#settings-files))

675 * Políticas implementadas por TI a través de entrega de servidor, perfiles de configuración MDM, políticas de registro o archivos de configuración administrados675 * Políticas implementadas por TI a través de entrega de servidor, perfiles de configuración MDM, políticas de registro o archivos de configuración administrados

676 * No pueden ser anuladas por ningún otro nivel, incluyendo argumentos de línea de comandos676 * No pueden ser anuladas por ningún otro nivel, incluyendo argumentos de línea de comandos

677 * Dentro del nivel administrado, solo se usa una fuente y las otras se ignoran en lugar de fusionarse. Precedencia, de mayor a menor:677 * Dentro del nivel administrado, solo se usa una fuente y las otras se ignoran en lugar de fusionarse. Precedencia, de mayor a menor:

678 * Salida de [`policyHelper`](#compute-managed-settings-with-a-policy-helper): cuando se configura, esta es la única fuente administrada utilizada678 * Salida de [`policyHelper`](#compute-managed-settings-with-a-policy-helper): cuando se configura, esta es la única fuente administrada utilizada

679 * Remota (configuraciones administradas por servidor de claude.ai o políticas entregadas por [puerta de aplicaciones Claude](/es/claude-apps-gateway))679 * Remota (configuraciones administradas por servidor de claude.ai o políticas entregadas por [puerta de aplicaciones Claude](/docs/es/claude-apps-gateway))

680 * Políticas de MDM/nivel de SO680 * Políticas de MDM/nivel de SO

681 * Basada en archivos (`managed-settings.d/*.json` y `managed-settings.json`, fusionadas juntas)681 * Basada en archivos (`managed-settings.d/*.json` y `managed-settings.json`, fusionadas juntas)

682 * Registro HKCU (solo Windows)682 * Registro HKCU (solo Windows)


684 * las claves de bloqueo de sandbox `sandbox.network.allowManagedDomainsOnly` y `sandbox.filesystem.allowManagedReadPathsOnly`, con sus listas blancas asociadas684 * las claves de bloqueo de sandbox `sandbox.network.allowManagedDomainsOnly` y `sandbox.filesystem.allowManagedReadPathsOnly`, con sus listas blancas asociadas

685 * `allowAllClaudeAiMcps`685 * `allowAllClaudeAiMcps`

686 * las rutas binarias de sandbox `sandbox.bwrapPath` y `sandbox.socatPath`686 * las rutas binarias de sandbox `sandbox.bwrapPath` y `sandbox.socatPath`

687 * [`forceRemoteSettingsRefresh`](/es/server-managed-settings)687 * [`forceRemoteSettingsRefresh`](/docs/es/server-managed-settings)

688 * Los hosts de incrustación como Claude Desktop pueden suministrar política a través de la opción SDK `managedSettings`. De forma predeterminada, esto se ignora cuando está presente cualquier fuente administrada implementada por administrador: configuraciones administradas por servidor, una política de MDM o nivel de SO, o un archivo de configuración administrado. El fallback de registro HKCU escribible por el usuario no cuenta como una fuente administrada implementada por administrador. Los administradores pueden optar por establecer [`parentSettingsBehavior`](#available-settings) en `"merge"`. Los valores del incrustador se filtran para que puedan restringir la política administrada pero no flexibilizarla.688 * Los hosts de incrustación como Claude Desktop pueden suministrar política a través de la opción SDK `managedSettings`. De forma predeterminada, esto se ignora cuando está presente cualquier fuente administrada implementada por administrador: configuraciones administradas por servidor, una política de MDM o nivel de SO, o un archivo de configuración administrado. El fallback de registro HKCU escribible por el usuario no cuenta como una fuente administrada implementada por administrador. Los administradores pueden optar por establecer [`parentSettingsBehavior`](#available-settings) en `"merge"`. Los valores del incrustador se filtran para que puedan restringir la política administrada pero no flexibilizarla.

689 689 

6902. **Argumentos de línea de comandos**6902. **Argumentos de línea de comandos**


6995. **Configuraciones de usuario** (`~/.claude/settings.json`)6995. **Configuraciones de usuario** (`~/.claude/settings.json`)

700 * Configuraciones personales globales700 * Configuraciones personales globales

701 701 

702Esta jerarquía asegura que las políticas organizacionales siempre se apliquen mientras aún permite que equipos e individuos personalicen su experiencia. La misma precedencia se aplica si ejecuta Claude Code desde la CLI, la [extensión de VS Code](/es/vs-code), o un [IDE de JetBrains](/es/jetbrains).702Esta jerarquía asegura que las políticas organizacionales siempre se apliquen mientras aún permite que equipos e individuos personalicen su experiencia. La misma precedencia se aplica si ejecuta Claude Code desde la CLI, la [extensión de VS Code](/docs/es/vs-code), o un [IDE de JetBrains](/docs/es/jetbrains).

703 703 

704Por ejemplo, si su configuración de usuario establece `permissions.defaultMode` en `acceptEdits` y la configuración compartida de un proyecto la establece en `default`, el valor del proyecto se aplica. El ejemplo a continuación cubre cómo se combinan las configuraciones con valores de matriz como reglas de permiso en su lugar.704Por ejemplo, si su configuración de usuario establece `permissions.defaultMode` en `acceptEdits` y la configuración compartida de un proyecto la establece en `default`, el valor del proyecto se aplica. El ejemplo a continuación cubre cómo se combinan las configuraciones con valores de matriz como reglas de permiso en su lugar.

705 705 


709 Dos configuraciones de matriz no se fusionan de esta manera:709 Dos configuraciones de matriz no se fusionan de esta manera:

710 710 

711 * [`fallbackModel`](#available-settings) es una cadena ordenada donde la posición tiene significado: el archivo de mayor precedencia que la define suministra el valor completo.711 * [`fallbackModel`](#available-settings) es una cadena ordenada donde la posición tiene significado: el archivo de mayor precedencia que la define suministra el valor completo.

712 * [`availableModels`](#available-settings): {/* min-version: 2.1.175 */}cuando la [fuente administrada de mayor precedencia](/es/server-managed-settings#settings-precedence) la define, esa lista se aplica tal cual y las entradas de usuario, proyecto y local no pueden extenderla. Entre ámbitos no administrados las matrices se fusionan como de costumbre. Consulte [Comportamiento de fusión](/es/model-config#merge-behavior).712 * [`availableModels`](#available-settings): cuando la [fuente administrada de mayor precedencia](/docs/es/server-managed-settings#settings-precedence) la define, esa lista se aplica tal cual y las entradas de usuario, proyecto y local no pueden extenderla. Entre ámbitos no administrados las matrices se fusionan como de costumbre. Consulte [Comportamiento de fusión](/docs/es/model-config#merge-behavior).

713</Note>713</Note>

714 714 

715<h3 id="verify-active-settings">715<h3 id="verify-active-settings">

716 Verificar configuraciones activas716 Verificar configuraciones activas

717</h3>717</h3>

718 718 

719Ejecute `/status` dentro de Claude Code para ver qué fuentes de configuración están activas. Dentro del menú, la pestaña **Status** incluye una línea `Setting sources` que enumera cada capa que Claude Code cargó para la sesión actual, como `User settings` o `Project local settings`. Cuando [configuraciones administradas](/es/admin-setup#decide-how-settings-reach-devices) están en efecto, la entrada muestra el canal de entrega entre paréntesis, por ejemplo `Enterprise managed settings (remote)`, `(plist)`, `(HKLM)`, `(HKCU)`, o `(file)`. El canal `remote` cubre tanto configuraciones administradas por servidor de claude.ai como políticas entregadas por [puerta de aplicaciones Claude](/es/claude-apps-gateway). Una capa aparece en la lista solo cuando esa fuente se carga con al menos una clave, por lo que una lista vacía significa que no se encontraron fuentes de configuración.719Ejecute `/status` dentro de Claude Code para ver qué fuentes de configuración están activas. Dentro del menú, la pestaña **Status** incluye una línea `Setting sources` que enumera cada capa que Claude Code cargó para la sesión actual, como `User settings` o `Project local settings`. Cuando [configuraciones administradas](/docs/es/admin-setup#decide-how-settings-reach-devices) están en efecto, la entrada muestra el canal de entrega entre paréntesis, por ejemplo `Enterprise managed settings (remote)`, `(plist)`, `(HKLM)`, `(HKCU)`, o `(file)`. El canal `remote` cubre tanto configuraciones administradas por servidor de claude.ai como políticas entregadas por [puerta de aplicaciones Claude](/docs/es/claude-apps-gateway). Una capa aparece en la lista solo cuando esa fuente se carga con al menos una clave, por lo que una lista vacía significa que no se encontraron fuentes de configuración.

720 720 

721La línea `Setting sources` confirma qué fuentes se están leyendo. No muestra qué capa suministró cada clave individual. La pestaña **Config** en el mismo diálogo es un editor para un conjunto fijo de toggles como tema y salida detallada, no una vista de sus contenidos de `settings.json`.721La línea `Setting sources` confirma qué fuentes se están leyendo. No muestra qué capa suministró cada clave individual. La pestaña **Config** en el mismo diálogo es un editor para un conjunto fijo de toggles como tema y salida detallada, no una vista de sus contenidos de `settings.json`.

722 722 


770* **Subagents de usuario**: `~/.claude/agents/`, disponibles en todos sus proyectos770* **Subagents de usuario**: `~/.claude/agents/`, disponibles en todos sus proyectos

771* **Subagents de proyecto**: `.claude/agents/`, específicos de su proyecto y compartibles con su equipo771* **Subagents de proyecto**: `.claude/agents/`, específicos de su proyecto y compartibles con su equipo

772 772 

773Los archivos de subagent definen asistentes de IA especializados con indicaciones personalizadas y permisos de herramientas. Obtenga más información sobre cómo crear y usar subagents en la [documentación de subagents](/es/sub-agents).773Los archivos de subagent definen asistentes de IA especializados con indicaciones personalizadas y permisos de herramientas. Obtenga más información sobre cómo crear y usar subagents en la [documentación de subagents](/docs/es/sub-agents).

774 774 

775<h2 id="plugin-configuration">775<h2 id="plugin-configuration">

776 Configuración de plugins776 Configuración de plugins


806 `enabledPlugins`806 `enabledPlugins`

807</h4>807</h4>

808 808 

809Controla qué plugins están habilitados. Formato: `"plugin-name@marketplace-name": true/false`. Un plugin sin entrada en ningún ámbito vuelve a su valor [`defaultEnabled`](/es/plugins-reference#default-enablement).809Controla qué plugins están habilitados. Formato: `"plugin-name@marketplace-name": true/false`. Un plugin sin entrada en ningún ámbito vuelve a su valor [`defaultEnabled`](/docs/es/plugins-reference#default-enablement).

810 810 

811**Ámbitos**:811**Ámbitos**:

812 812 


820 820 

821 Los plugins forzados a estar habilitados por configuraciones administradas no pueden deshabilitarse de esta manera, ya que las configuraciones administradas anulan las configuraciones locales.821 Los plugins forzados a estar habilitados por configuraciones administradas no pueden deshabilitarse de esta manera, ya que las configuraciones administradas anulan las configuraciones locales.

822 822 

823 Habilitar un plugin desde una fuente externa como un repositorio de GitHub o paquete npm en la `.claude/settings.json` de un proyecto no lo instala para otras personas. A partir de Claude Code v2.1.195, cada ruta que carga plugins solicita a cada usuario que [instale y confíe en el plugin](/es/discover-plugins#configure-team-marketplaces) antes de que se ejecute.823 Habilitar un plugin desde una fuente externa como un repositorio de GitHub o paquete npm en la `.claude/settings.json` de un proyecto no lo instala para otras personas. A partir de Claude Code v2.1.195, cada ruta que carga plugins solicita a cada usuario que [instale y confíe en el plugin](/docs/es/discover-plugins#configure-team-marketplaces) antes de que se ejecute.

824</Note>824</Note>

825 825 

826**Ejemplo**:826**Ejemplo**:


839 `pluginConfigs`839 `pluginConfigs`

840</h4>840</h4>

841 841 

842Almacena los valores de opciones no sensibles que la solicitud [`userConfig`](/es/plugins-reference#user-configuration) de un plugin recopila, indexados por ID de plugin. Claude Code escribe esta clave en la configuración de usuario cuando completa el diálogo de configuración del plugin, por lo que no necesita editarla manualmente. Las opciones sensibles se almacenan en el Keychain de macOS en su lugar, o en `~/.claude/.credentials.json` en plataformas sin un keychain compatible.842Almacena los valores de opciones no sensibles que la solicitud [`userConfig`](/docs/es/plugins-reference#user-configuration) de un plugin recopila, indexados por ID de plugin. Claude Code escribe esta clave en la configuración de usuario cuando completa el diálogo de configuración del plugin, por lo que no necesita editarla manualmente. Las opciones sensibles se almacenan en el Keychain de macOS en su lugar, o en `~/.claude/.credentials.json` en plataformas sin un keychain compatible.

843 843 

844Este ejemplo almacena una opción para un plugin instalado desde el marketplace `acme-tools`:844Este ejemplo almacena una opción para un plugin instalado desde el marketplace `acme-tools`:

845 845 


899* `hostPattern`: Patrón regex para coincidir con hosts de marketplace (usa `hostPattern`)899* `hostPattern`: Patrón regex para coincidir con hosts de marketplace (usa `hostPattern`)

900* `settings`: marketplace en línea declarado directamente en settings.json sin un repositorio alojado separado (usa `name` y `plugins`)900* `settings`: marketplace en línea declarado directamente en settings.json sin un repositorio alojado separado (usa `name` y `plugins`)

901 901 

902El tipo de fuente `git` funciona con cualquier servicio de alojamiento de git, incluyendo GitLab autohospedado y Bitbucket. Claude Code clona el repositorio con la misma autenticación que `git clone` usaría en esa máquina: helpers de credenciales configurados o claves SSH. Un token de proveedor como `GITHUB_TOKEN` solo tiene efecto a través de un helper de credenciales que lo lee. Consulte [Repositorios privados](/es/plugin-marketplaces#private-repositories) para detalles de configuración.902El tipo de fuente `git` funciona con cualquier servicio de alojamiento de git, incluyendo GitLab autohospedado y Bitbucket. Claude Code clona el repositorio con la misma autenticación que `git clone` usaría en esa máquina: helpers de credenciales configurados o claves SSH. Un token de proveedor como `GITHUB_TOKEN` solo tiene efecto a través de un helper de credenciales que lo lee. Consulte [Repositorios privados](/docs/es/plugin-marketplaces#private-repositories) para detalles de configuración.

903 903 

904Para fuentes `github` y `git`, establezca `"skipLfs": true` dentro del objeto `source` (junto a `repo` o `url`) para omitir descargas de Git LFS cuando Claude Code clona o actualiza el repositorio de marketplace. Los archivos de puntero de LFS permanecen como punteros en lugar de descargar su contenido. Use esto cuando el repositorio contiene objetos LFS grandes no relacionados con el contenido del plugin. {/* min-version: 2.1.153 */}Requiere Claude Code v2.1.153 o posterior.904Para fuentes `github` y `git`, establezca `"skipLfs": true` dentro del objeto `source` (junto a `repo` o `url`) para omitir descargas de Git LFS cuando Claude Code clona o actualiza el repositorio de marketplace. Los archivos de puntero de LFS permanecen como punteros en lugar de descargar su contenido. Use esto cuando el repositorio contiene objetos LFS grandes no relacionados con el contenido del plugin. Requiere Claude Code v2.1.153 o posterior.

905 905 

906Cada entrada de marketplace también acepta un Boolean `autoUpdate` opcional. Establezca `"autoUpdate": true` junto a `source` para hacer que Claude Code actualice ese marketplace e instale sus plugins instalados en segundo plano después del inicio. Cuando se omite, los marketplaces oficiales de Anthropic tienen por defecto `true` y todos los demás marketplaces tienen por defecto `false`. Consulte [Configurar actualizaciones automáticas](/es/discover-plugins#configure-auto-updates).906Cada entrada de marketplace también acepta un Boolean `autoUpdate` opcional. Establezca `"autoUpdate": true` junto a `source` para hacer que Claude Code actualice ese marketplace e instale sus plugins instalados en segundo plano después del inicio. Cuando se omite, los marketplaces oficiales de Anthropic tienen por defecto `true` y todos los demás marketplaces tienen por defecto `false`. Consulte [Configurar actualizaciones automáticas](/docs/es/discover-plugins#configure-auto-updates).

907 907 

908Use `source: 'settings'` para declarar un pequeño conjunto de plugins en línea sin configurar un repositorio de marketplace alojado. Los plugins listados aquí deben hacer referencia a fuentes externas como GitHub o npm. Aún necesita habilitar cada plugin por separado en `enabledPlugins`.908Use `source: 'settings'` para declarar un pequeño conjunto de plugins en línea sin configurar un repositorio de marketplace alojado. Los plugins listados aquí deben hacer referencia a fuentes externas como GitHub o npm. Aún necesita habilitar cada plugin por separado en `enabledPlugins`.

909 909 


933 `strictKnownMarketplaces`933 `strictKnownMarketplaces`

934</h4>934</h4>

935 935 

936**Solo configuraciones administradas**: Controla qué marketplaces de plugins se permite a los usuarios agregar e instalar plugins desde. Esta configuración solo se puede configurar en [configuraciones administradas](/es/settings#settings-files) y proporciona a los administradores control estricto sobre fuentes de marketplace.936**Solo configuraciones administradas**: Controla qué marketplaces de plugins se permite a los usuarios agregar e instalar plugins desde. Esta configuración solo se puede configurar en [configuraciones administradas](/docs/es/settings#settings-files) y proporciona a los administradores control estricto sobre fuentes de marketplace.

937 937 

938**Ubicaciones de archivos de configuraciones administradas**:938**Ubicaciones de archivos de configuraciones administradas**:

939 939 


988Campos: `url` (requerido), `headers` (opcional: encabezados HTTP para acceso autenticado)988Campos: `url` (requerido), `headers` (opcional: encabezados HTTP para acceso autenticado)

989 989 

990<Note>990<Note>

991 Los marketplaces basados en URL solo descargan el archivo `marketplace.json`. No descargan archivos de plugins del servidor. Los plugins en marketplaces basados en URL deben usar fuentes externas (URLs de GitHub, npm o git) en lugar de rutas relativas. Para plugins con rutas relativas, use un marketplace basado en Git en su lugar. Consulte [Troubleshooting](/es/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces) para obtener detalles.991 Los marketplaces basados en URL solo descargan el archivo `marketplace.json`. No descargan archivos de plugins del servidor. Los plugins en marketplaces basados en URL deben usar fuentes externas (URLs de GitHub, npm o git) en lugar de rutas relativas. Para plugins con rutas relativas, use un marketplace basado en Git en su lugar. Consulte [Troubleshooting](/docs/es/plugin-marketplaces#plugins-with-relative-paths-fail-in-url-based-marketplaces) para obtener detalles.

992</Note>992</Note>

993 993 

9944. **Paquetes NPM**:9944. **Paquetes NPM**:


1178* La restricción se aplica en agregar marketplace y en instalar, actualizar, actualizar y auto-actualizar plugins. Un marketplace agregado antes de que se estableciera la política no puede usarse para instalar o actualizar plugins una vez que su fuente ya no coincida con la lista blanca1178* La restricción se aplica en agregar marketplace y en instalar, actualizar, actualizar y auto-actualizar plugins. Un marketplace agregado antes de que se estableciera la política no puede usarse para instalar o actualizar plugins una vez que su fuente ya no coincida con la lista blanca

1179* Las configuraciones administradas tienen la precedencia más alta y no pueden ser anuladas1179* Las configuraciones administradas tienen la precedencia más alta y no pueden ser anuladas

1180 1180 

1181Consulte [Restricciones de marketplace administradas](/es/plugin-marketplaces#managed-marketplace-restrictions) para documentación dirigida al usuario.1181Consulte [Restricciones de marketplace administradas](/docs/es/plugin-marketplaces#managed-marketplace-restrictions) para documentación dirigida al usuario.

1182 1182 

1183<h4 id="strictpluginonlycustomization">1183<h4 id="strictpluginonlycustomization">

1184 `strictPluginOnlyCustomization`1184 `strictPluginOnlyCustomization`


1201| `skills` | `~/.claude/skills/`, `.claude/skills/` | Skills de plugins, skills incluidos, skills en el directorio de política administrada |1201| `skills` | `~/.claude/skills/`, `.claude/skills/` | Skills de plugins, skills incluidos, skills en el directorio de política administrada |

1202| `agents` | `~/.claude/agents/`, `.claude/agents/` | Agentes de plugins, agentes integrados, agentes en el directorio de política administrada |1202| `agents` | `~/.claude/agents/`, `.claude/agents/` | Agentes de plugins, agentes integrados, agentes en el directorio de política administrada |

1203| `hooks` | Hooks en `settings.json` de usuario, proyecto y local | Hooks de plugins, hooks en configuraciones administradas |1203| `hooks` | Hooks en `settings.json` de usuario, proyecto y local | Hooks de plugins, hooks en configuraciones administradas |

1204| `mcp` | Servidores en `~/.claude.json` y `.mcp.json` | Servidores MCP de plugins, servidores [`managed-mcp.json`](/es/managed-mcp) |1204| `mcp` | Servidores en `~/.claude.json` y `.mcp.json` | Servidores MCP de plugins, servidores [`managed-mcp.json`](/docs/es/managed-mcp) |

1205 1205 

1206Los nombres de superficie que una versión de Claude Code no reconoce se ignoran en lugar de fallar en el archivo de configuración, por lo que puede agregar nuevos nombres de superficie antes de que todos los clientes se hayan actualizado.1206Los nombres de superficie que una versión de Claude Code no reconoce se ignoran en lugar de fallar en el archivo de configuración, por lo que puede agregar nuevos nombres de superficie antes de que todos los clientes se hayan actualizado.

1207 1207 


1217* Ver detalles de plugins (skills, agentes, hooks proporcionados)1217* Ver detalles de plugins (skills, agentes, hooks proporcionados)

1218* Agregar/eliminar marketplaces1218* Agregar/eliminar marketplaces

1219 1219 

1220Obtenga más información sobre el sistema de plugins en la [documentación de plugins](/es/plugins).1220Obtenga más información sobre el sistema de plugins en la [documentación de plugins](/docs/es/plugins).

1221 1221 

1222<h2 id="environment-variables">1222<h2 id="environment-variables">

1223 Variables de entorno1223 Variables de entorno


1225 1225 

1226Las variables de entorno le permiten controlar el comportamiento de Claude Code sin editar archivos de configuración. Cualquier variable también se puede configurar en [`settings.json`](#available-settings) bajo la clave `env` para aplicarla a cada sesión o implementarla en su equipo.1226Las variables de entorno le permiten controlar el comportamiento de Claude Code sin editar archivos de configuración. Cualquier variable también se puede configurar en [`settings.json`](#available-settings) bajo la clave `env` para aplicarla a cada sesión o implementarla en su equipo.

1227 1227 

1228Consulte la [referencia de variables de entorno](/es/env-vars) para la lista completa.1228Consulte la [referencia de variables de entorno](/docs/es/env-vars) para la lista completa.

1229 1229 

1230<h2 id="tools-available-to-claude">1230<h2 id="tools-available-to-claude">

1231 Herramientas disponibles para Claude1231 Herramientas disponibles para Claude


1233 1233 

1234Claude Code tiene acceso a un conjunto de herramientas para leer, editar, buscar, ejecutar comandos y orquestar subagents. Los nombres de herramientas son las cadenas exactas que utiliza en reglas de permiso y coincidencias de hooks.1234Claude Code tiene acceso a un conjunto de herramientas para leer, editar, buscar, ejecutar comandos y orquestar subagents. Los nombres de herramientas son las cadenas exactas que utiliza en reglas de permiso y coincidencias de hooks.

1235 1235 

1236Consulte la [referencia de herramientas](/es/tools-reference) para la lista completa y detalles del comportamiento de la herramienta Bash.1236Consulte la [referencia de herramientas](/docs/es/tools-reference) para la lista completa y detalles del comportamiento de la herramienta Bash.

1237 1237 

1238<h2 id="see-also">1238<h2 id="see-also">

1239 Ver también1239 Ver también

1240</h2>1240</h2>

1241 1241 

1242* [Permisos](/es/permissions): sistema de permisos, sintaxis de regla, patrones específicos de herramientas y políticas administradas1242* [Permisos](/docs/es/permissions): sistema de permisos, sintaxis de regla, patrones específicos de herramientas y políticas administradas

1243* [Autenticación](/es/authentication): configurar acceso de usuario a Claude Code1243* [Autenticación](/docs/es/authentication): configurar acceso de usuario a Claude Code

1244* [Depurar su configuración](/es/debug-your-config): diagnosticar por qué una configuración, hook o servidor MCP no está surtiendo efecto1244* [Depurar su configuración](/docs/es/debug-your-config): diagnosticar por qué una configuración, hook o servidor MCP no está surtiendo efecto

1245* [Solucionar problemas de instalación e inicio de sesión](/es/troubleshoot-install): problemas de instalación, autenticación y plataforma1245* [Solucionar problemas de instalación e inicio de sesión](/docs/es/troubleshoot-install): problemas de instalación, autenticación y plataforma

skills.md +45 −45

Details

11Cree un skill cuando siga pegando el mismo manual, lista de verificación o procedimiento de varios pasos en el chat, o cuando una sección de CLAUDE.md se haya convertido en un procedimiento en lugar de un hecho. A diferencia del contenido de CLAUDE.md, el cuerpo de un skill se carga solo cuando se usa, por lo que el material de referencia largo cuesta casi nada hasta que lo necesita.11Cree un skill cuando siga pegando el mismo manual, lista de verificación o procedimiento de varios pasos en el chat, o cuando una sección de CLAUDE.md se haya convertido en un procedimiento en lugar de un hecho. A diferencia del contenido de CLAUDE.md, el cuerpo de un skill se carga solo cuando se usa, por lo que el material de referencia largo cuesta casi nada hasta que lo necesita.

12 12 

13<Note>13<Note>

14 Para comandos integrados como `/help` y `/compact`, y skills agrupados como `/debug` y `/code-review`, consulte la [referencia de comandos](/es/commands).14 Para comandos integrados como `/help` y `/compact`, y skills agrupados como `/debug` y `/code-review`, consulte la [referencia de comandos](/docs/es/commands).

15 15 

16 **Los comandos personalizados se han fusionado con los skills.** Un archivo en `.claude/commands/deploy.md` y un skill en `.claude/skills/deploy/SKILL.md` crean ambos `/deploy` y funcionan de la misma manera. Sus archivos existentes en `.claude/commands/` siguen funcionando. Los skills añaden características opcionales: un directorio para archivos de apoyo, frontmatter para [controlar si usted o Claude los invoca](#control-who-invokes-a-skill), y la capacidad de que Claude los cargue automáticamente cuando sea relevante.16 **Los comandos personalizados se han fusionado con los skills.** Un archivo en `.claude/commands/deploy.md` y un skill en `.claude/skills/deploy/SKILL.md` crean ambos `/deploy` y funcionan de la misma manera. Sus archivos existentes en `.claude/commands/` siguen funcionando. Los skills añaden características opcionales: un directorio para archivos de apoyo, frontmatter para [controlar si usted o Claude los invoca](#control-who-invokes-a-skill), y la capacidad de que Claude los cargue automáticamente cuando sea relevante.

17</Note>17</Note>


22 Skills agrupados22 Skills agrupados

23</h2>23</h2>

24 24 

25Claude Code incluye un conjunto de skills agrupados que están disponibles en cada sesión a menos que se desactiven con la configuración [`disableBundledSkills`](/es/settings#available-settings), incluyendo `/doctor`, `/code-review`, `/batch`, `/debug`, `/loop` y `/claude-api`. A diferencia de la mayoría de comandos integrados, que ejecutan lógica fija directamente, los skills agrupados se basan en prompts: dan a Claude instrucciones detalladas y le permiten orquestar el trabajo utilizando sus herramientas. Los invoca de la misma manera que cualquier otro skill, escribiendo `/` seguido del nombre del skill.25Claude Code incluye un conjunto de skills agrupados que están disponibles en cada sesión a menos que se desactiven con la configuración [`disableBundledSkills`](/docs/es/settings#available-settings), incluyendo `/doctor`, `/code-review`, `/batch`, `/debug`, `/loop` y `/claude-api`. A diferencia de la mayoría de comandos integrados, que ejecutan lógica fija directamente, los skills agrupados se basan en prompts: dan a Claude instrucciones detalladas y le permiten orquestar el trabajo utilizando sus herramientas. Los invoca de la misma manera que cualquier otro skill, escribiendo `/` seguido del nombre del skill.

26 26 

27La verificación de configuración [`/doctor`](/es/commands#all-commands) es la única excepción a `disableBundledSkills` en Claude Code v2.1.205 y posterior: permanece escribible cuando la configuración está activada. Para ocultarla, establezca la variable de entorno `DISABLE_DOCTOR_COMMAND` o una entrada [`skillOverrides`](#override-skill-visibility-from-settings) de `"doctor": "off"`. Antes de v2.1.205, `/doctor` era un comando integrado en lugar de un skill agrupado.27La verificación de configuración [`/doctor`](/docs/es/commands#all-commands) es la única excepción a `disableBundledSkills` en Claude Code v2.1.205 y posterior: permanece escribible cuando la configuración está activada. Para ocultarla, establezca la variable de entorno `DISABLE_DOCTOR_COMMAND` o una entrada [`skillOverrides`](#override-skill-visibility-from-settings) de `"doctor": "off"`. Antes de v2.1.205, `/doctor` era un comando integrado en lugar de un skill agrupado.

28 28 

29Los skills agrupados se enumeran junto con los comandos integrados en la [referencia de comandos](/es/commands), marcados como **Skill** en la columna Propósito.29Los skills agrupados se enumeran junto con los comandos integrados en la [referencia de comandos](/docs/es/commands), marcados como **Skill** en la columna Propósito.

30 30 

31<h3 id="run-and-verify-your-app">31<h3 id="run-and-verify-your-app">

32 Ejecutar y verificar su aplicación32 Ejecutar y verificar su aplicación


40| `/verify` | Compilar y ejecutar su aplicación para confirmar que un cambio de código hace lo que debería, sin recurrir a pruebas o verificaciones de tipo |40| `/verify` | Compilar y ejecutar su aplicación para confirmar que un cambio de código hace lo que debería, sin recurrir a pruebas o verificaciones de tipo |

41| `/run-skill-generator` | Enseñar a `/run` y `/verify` cómo compilar e iniciar su proyecto |41| `/run-skill-generator` | Enseñar a `/run` y `/verify` cómo compilar e iniciar su proyecto |

42 42 

43{/* min-version: 2.1.145 */}Los tres skills requieren Claude Code v2.1.145 o posterior.43Los tres skills requieren Claude Code v2.1.145 o posterior.

44 44 

45`/run` y `/verify` funcionan sin configuración. Deducen el lanzamiento de su tipo de proyecto (CLI, servidor, TUI, impulsado por navegador) y de lo que hay en su README, `package.json` o `Makefile`. Esa deducción se vuelve poco confiable para proyectos que necesitan algo más allá de un lanzamiento estándar: una base de datos, un archivo env, una sesión gráfica, una compilación de varios pasos.45`/run` y `/verify` funcionan sin configuración. Deducen el lanzamiento de su tipo de proyecto (CLI, servidor, TUI, impulsado por navegador) y de lo que hay en su README, `package.json` o `Makefile`. Esa deducción se vuelve poco confiable para proyectos que necesitan algo más allá de un lanzamiento estándar: una base de datos, un archivo env, una sesión gráfica, una compilación de varios pasos.

46 46 


114 114 

115| Ubicación | Ruta | Se aplica a |115| Ubicación | Ruta | Se aplica a |

116| :--------- | :--------------------------------------------------------------- | :------------------------------------ |116| :--------- | :--------------------------------------------------------------- | :------------------------------------ |

117| Enterprise | Consulte [configuración gestionada](/es/settings#settings-files) | Todos los usuarios de su organización |117| Enterprise | Consulte [configuración gestionada](/docs/es/settings#settings-files) | Todos los usuarios de su organización |

118| Personal | `~/.claude/skills/<skill-name>/SKILL.md` | Todos sus proyectos |118| Personal | `~/.claude/skills/<skill-name>/SKILL.md` | Todos sus proyectos |

119| Proyecto | `.claude/skills/<skill-name>/SKILL.md` | Solo este proyecto |119| Proyecto | `.claude/skills/<skill-name>/SKILL.md` | Solo este proyecto |

120| Plugin | `<plugin>/skills/<skill-name>/SKILL.md` | Donde el plugin está habilitado |120| Plugin | `<plugin>/skills/<skill-name>/SKILL.md` | Donde el plugin está habilitado |


133 133 

134Cuando usted o Claude invoca el nombre sin calificar, se carga el skill de la raíz del proyecto, y Claude Code añade una lista de las variantes calificadas por directorio a su contenido con una instrucción para también invocar cualquier variante cuyo directorio contenga los archivos en los que Claude está trabajando. Un skill anidado, por lo tanto, sigue siendo aplicable al trabajo en su directorio cuando solo se invoca el nombre sin calificar. Requiere Claude Code v2.1.203 o posterior.134Cuando usted o Claude invoca el nombre sin calificar, se carga el skill de la raíz del proyecto, y Claude Code añade una lista de las variantes calificadas por directorio a su contenido con una instrucción para también invocar cualquier variante cuyo directorio contenga los archivos en los que Claude está trabajando. Un skill anidado, por lo tanto, sigue siendo aplicable al trabajo en su directorio cuando solo se invoca el nombre sin calificar. Requiere Claude Code v2.1.203 o posterior.

135 135 

136Una entrada `<skill-name>` en las ubicaciones enterprise, personal o proyecto puede ser un enlace simbólico a un directorio en otro lugar del disco. Claude Code sigue el enlace simbólico y lee `SKILL.md` del directorio de destino, y si el mismo destino es accesible desde más de una ubicación, Claude Code carga el skill una sola vez. Los skills de plugin manejan los enlaces simbólicos de manera diferente; consulte [Compartir archivos dentro de un marketplace con enlaces simbólicos](/es/plugins-reference#share-files-within-a-marketplace-with-symlinks).136Una entrada `<skill-name>` en las ubicaciones enterprise, personal o proyecto puede ser un enlace simbólico a un directorio en otro lugar del disco. Claude Code sigue el enlace simbólico y lee `SKILL.md` del directorio de destino, y si el mismo destino es accesible desde más de una ubicación, Claude Code carga el skill una sola vez. Los skills de plugin manejan los enlaces simbólicos de manera diferente; consulte [Compartir archivos dentro de un marketplace con enlaces simbólicos](/docs/es/plugins-reference#share-files-within-a-marketplace-with-symlinks).

137 137 

138<Note>138<Note>

139 Agregue un `.claude-plugin/plugin.json` a una carpeta de skill y se carga como un [plugin](/es/plugins-reference#skills-directory-plugins) llamado `<name>@skills-dir`, por lo que puede agrupar agentes, hooks y servidores MCP. En un `.claude/skills/` de proyecto, esto requiere aceptar primero el diálogo de confianza del espacio de trabajo.139 Agregue un `.claude-plugin/plugin.json` a una carpeta de skill y se carga como un [plugin](/docs/es/plugins-reference#skills-directory-plugins) llamado `<name>@skills-dir`, por lo que puede agrupar agentes, hooks y servidores MCP. En un `.claude/skills/` de proyecto, esto requiere aceptar primero el diálogo de confianza del espacio de trabajo.

140</Note>140</Note>

141 141 

142<h4 id="live-change-detection">142<h4 id="live-change-detection">


146Claude Code observa los directorios de skills para detectar cambios de archivos. Añadir, editar o eliminar un skill bajo `~/.claude/skills/`, el proyecto `.claude/skills/`, o un `.claude/skills/` dentro de un directorio `--add-dir` surte efecto dentro de la sesión actual sin reiniciar. Crear un directorio de skills de nivel superior que no existía cuando se inició la sesión requiere reiniciar Claude Code para que el nuevo directorio pueda ser observado.146Claude Code observa los directorios de skills para detectar cambios de archivos. Añadir, editar o eliminar un skill bajo `~/.claude/skills/`, el proyecto `.claude/skills/`, o un `.claude/skills/` dentro de un directorio `--add-dir` surte efecto dentro de la sesión actual sin reiniciar. Crear un directorio de skills de nivel superior que no existía cuando se inició la sesión requiere reiniciar Claude Code para que el nuevo directorio pueda ser observado.

147 147 

148<Note>148<Note>

149 La detección de cambios en vivo cubre solo el texto de `SKILL.md`. Para una carpeta de skill que también es un [plugin](/es/plugins-reference#skills-directory-plugins), los cambios en `hooks/`, `.mcp.json`, `agents/` y `output-styles/` necesitan `/reload-plugins` para surtir efecto.149 La detección de cambios en vivo cubre solo el texto de `SKILL.md`. Para una carpeta de skill que también es un [plugin](/docs/es/plugins-reference#skills-directory-plugins), los cambios en `hooks/`, `.mcp.json`, `agents/` y `output-styles/` necesitan `/reload-plugins` para surtir efecto.

150</Note>150</Note>

151 151 

152<h4 id="automatic-discovery-from-parent-and-nested-directories">152<h4 id="automatic-discovery-from-parent-and-nested-directories">


177 Skills de directorios adicionales177 Skills de directorios adicionales

178</h4>178</h4>

179 179 

180La bandera `--add-dir` y el comando `/add-dir` [otorgan acceso a archivos](/es/permissions#additional-directories-grant-file-access-not-configuration) en lugar de descubrimiento de configuración, pero los skills son una excepción: `.claude/skills/` dentro de un directorio añadido se carga automáticamente. Esta excepción se aplica solo a `--add-dir` y `/add-dir`. La configuración `permissions.additionalDirectories` en `settings.json` otorga solo acceso a archivos y no carga skills. Consulte [Detección de cambios en vivo](#live-change-detection) para ver cómo se detectan las ediciones durante una sesión.180La bandera `--add-dir` y el comando `/add-dir` [otorgan acceso a archivos](/docs/es/permissions#additional-directories-grant-file-access-not-configuration) en lugar de descubrimiento de configuración, pero los skills son una excepción: `.claude/skills/` dentro de un directorio añadido se carga automáticamente. Esta excepción se aplica solo a `--add-dir` y `/add-dir`. La configuración `permissions.additionalDirectories` en `settings.json` otorga solo acceso a archivos y no carga skills. Consulte [Detección de cambios en vivo](#live-change-detection) para ver cómo se detectan las ediciones durante una sesión.

181 181 

182Otra configuración de `.claude/` como comandos y estilos de salida no se carga desde directorios adicionales. Consulte la [tabla de excepciones](/es/permissions#additional-directories-grant-file-access-not-configuration) para la lista completa de qué se carga y qué no, y las formas recomendadas de compartir configuración entre proyectos.182Otra configuración de `.claude/` como comandos y estilos de salida no se carga desde directorios adicionales. Consulte la [tabla de excepciones](/docs/es/permissions#additional-directories-grant-file-access-not-configuration) para la lista completa de qué se carga y qué no, y las formas recomendadas de compartir configuración entre proyectos.

183 183 

184<Note>184<Note>

185 Los archivos CLAUDE.md de directorios `--add-dir` no se cargan de forma predeterminada. Para cargarlos, establezca `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1`. Consulte [Cargar desde directorios adicionales](/es/memory#load-from-additional-directories).185 Los archivos CLAUDE.md de directorios `--add-dir` no se cargan de forma predeterminada. Para cargarlos, establezca `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD=1`. Consulte [Cargar desde directorios adicionales](/docs/es/memory#load-from-additional-directories).

186</Note>186</Note>

187 187 

188<h2 id="configure-skills">188<h2 id="configure-skills">


229 229 

230Su `SKILL.md` puede contener cualquier cosa, pero pensar en cómo desea que se invoque el skill (por usted, por Claude, o ambos) y dónde desea que se ejecute (en línea o en un subagent) ayuda a guiar qué incluir. Para skills complejos, también puede [añadir archivos de apoyo](#add-supporting-files) para mantener el skill principal enfocado.230Su `SKILL.md` puede contener cualquier cosa, pero pensar en cómo desea que se invoque el skill (por usted, por Claude, o ambos) y dónde desea que se ejecute (en línea o en un subagent) ayuda a guiar qué incluir. Para skills complejos, también puede [añadir archivos de apoyo](#add-supporting-files) para mantener el skill principal enfocado.

231 231 

232Mantenga el cuerpo en sí conciso. Una vez que se carga un skill, su contenido [permanece en contexto entre turnos](#skill-content-lifecycle), por lo que cada línea es un costo de token recurrente. Indique qué hacer en lugar de narrar cómo o por qué, y aplique la misma prueba de concisión que haría para [contenido de CLAUDE.md](/es/best-practices#write-an-effective-claude-md).232Mantenga el cuerpo en sí conciso. Una vez que se carga un skill, su contenido [permanece en contexto entre turnos](#skill-content-lifecycle), por lo que cada línea es un costo de token recurrente. Indique qué hacer en lugar de narrar cómo o por qué, y aplique la misma prueba de concisión que haría para [contenido de CLAUDE.md](/docs/es/best-practices#write-an-effective-claude-md).

233 233 

234<h3 id="frontmatter-reference">234<h3 id="frontmatter-reference">

235 Referencia de frontmatter235 Referencia de frontmatter


257| `when_to_use` | No | Contexto adicional para cuándo Claude debe invocar el skill, como frases desencadenantes o solicitudes de ejemplo. Se añade a `description` en el listado de skills y cuenta hacia el límite de 1.536 caracteres. |257| `when_to_use` | No | Contexto adicional para cuándo Claude debe invocar el skill, como frases desencadenantes o solicitudes de ejemplo. Se añade a `description` en el listado de skills y cuenta hacia el límite de 1.536 caracteres. |

258| `argument-hint` | No | Sugerencia mostrada durante el autocompletado para indicar argumentos esperados. Ejemplo: `[issue-number]` o `[filename] [format]`. |258| `argument-hint` | No | Sugerencia mostrada durante el autocompletado para indicar argumentos esperados. Ejemplo: `[issue-number]` o `[filename] [format]`. |

259| `arguments` | No | Argumentos posicionales nombrados para [sustitución de `$name`](#available-string-substitutions) en el contenido del skill. Acepta una cadena separada por espacios o una lista YAML. Los nombres se asignan a posiciones de argumentos en orden. |259| `arguments` | No | Argumentos posicionales nombrados para [sustitución de `$name`](#available-string-substitutions) en el contenido del skill. Acepta una cadena separada por espacios o una lista YAML. Los nombres se asignan a posiciones de argumentos en orden. |

260| `disable-model-invocation` | No | Establezca en `true` para evitar que Claude cargue automáticamente este skill. Utilice para flujos de trabajo que desea activar manualmente con `/name`. También evita que el skill sea [precargado en subagents](/es/sub-agents#preload-skills-into-subagents). A partir de v2.1.196, también evita que el skill se ejecute cuando una [tarea programada](/es/scheduled-tasks) se dispara con el skill como su prompt. Predeterminado: `false`. |260| `disable-model-invocation` | No | Establezca en `true` para evitar que Claude cargue automáticamente este skill. Utilice para flujos de trabajo que desea activar manualmente con `/name`. También evita que el skill sea [precargado en subagents](/docs/es/sub-agents#preload-skills-into-subagents). A partir de v2.1.196, también evita que el skill se ejecute cuando una [tarea programada](/docs/es/scheduled-tasks) se dispara con el skill como su prompt. Predeterminado: `false`. |

261| `user-invocable` | No | Establezca en `false` para ocultar del menú `/`. Utilice para conocimiento de fondo que los usuarios no deberían invocar directamente. Predeterminado: `true`. |261| `user-invocable` | No | Establezca en `false` para ocultar del menú `/`. Utilice para conocimiento de fondo que los usuarios no deberían invocar directamente. Predeterminado: `true`. |

262| `allowed-tools` | No | Herramientas que Claude puede usar sin pedir permiso cuando este skill está activo. Acepta una cadena separada por espacios o comas, o una lista YAML. |262| `allowed-tools` | No | Herramientas que Claude puede usar sin pedir permiso cuando este skill está activo. Acepta una cadena separada por espacios o comas, o una lista YAML. |

263| `disallowed-tools` | No | Herramientas eliminadas del grupo disponible de Claude mientras este skill está activo. Utilice para skills autónomos que nunca deben llamar a ciertas herramientas, como `AskUserQuestion` para un bucle de fondo. Acepta una cadena separada por espacios o comas, o una lista YAML. La restricción se borra cuando envía su siguiente mensaje. |263| `disallowed-tools` | No | Herramientas eliminadas del grupo disponible de Claude mientras este skill está activo. Utilice para skills autónomos que nunca deben llamar a ciertas herramientas, como `AskUserQuestion` para un bucle de fondo. Acepta una cadena separada por espacios o comas, o una lista YAML. La restricción se borra cuando envía su siguiente mensaje. |

264| `model` | No | Modelo a usar cuando este skill está activo. La anulación se aplica al resto del turno actual y no se guarda en la configuración; el modelo de sesión se reanuda en su siguiente prompt. Acepta los mismos valores que [`/model`](/es/model-config), o `inherit` para mantener el modelo activo. Un valor excluido por la lista de permitidos [`availableModels`](/es/model-config#restrict-model-selection) de su organización no se utiliza y la sesión mantiene su modelo actual. |264| `model` | No | Modelo a usar cuando este skill está activo. La anulación se aplica al resto del turno actual y no se guarda en la configuración; el modelo de sesión se reanuda en su siguiente prompt. Acepta los mismos valores que [`/model`](/docs/es/model-config), o `inherit` para mantener el modelo activo. Un valor excluido por la lista de permitidos [`availableModels`](/docs/es/model-config#restrict-model-selection) de su organización no se utiliza y la sesión mantiene su modelo actual. |

265| `effort` | No | [Nivel de esfuerzo](/es/model-config#adjust-effort-level) cuando este skill está activo. Anula el nivel de esfuerzo de la sesión. Predeterminado: hereda de la sesión. Opciones: `low`, `medium`, `high`, `xhigh`, `max`; los niveles disponibles dependen del modelo. |265| `effort` | No | [Nivel de esfuerzo](/docs/es/model-config#adjust-effort-level) cuando este skill está activo. Anula el nivel de esfuerzo de la sesión. Predeterminado: hereda de la sesión. Opciones: `low`, `medium`, `high`, `xhigh`, `max`; los niveles disponibles dependen del modelo. |

266| `context` | No | Establezca en `fork` para ejecutar en un contexto de subagent bifurcado. |266| `context` | No | Establezca en `fork` para ejecutar en un contexto de subagent bifurcado. |

267| `agent` | No | Qué tipo de subagent usar cuando `context: fork` está establecido. |267| `agent` | No | Qué tipo de subagent usar cuando `context: fork` está establecido. |

268| `hooks` | No | Hooks limitados al ciclo de vida de este skill. Consulte [Hooks en skills y agents](/es/hooks#hooks-in-skills-and-agents) para el formato de configuración. |268| `hooks` | No | Hooks limitados al ciclo de vida de este skill. Consulte [Hooks en skills y agents](/docs/es/hooks#hooks-in-skills-and-agents) para el formato de configuración. |

269| `paths` | No | Patrones glob que limitan cuándo se activa este skill. Acepta una cadena separada por comas o una lista YAML. Cuando se establece, Claude carga el skill automáticamente solo cuando trabaja con archivos que coinciden con los patrones. Utiliza el mismo formato que [reglas específicas de ruta](/es/memory#path-specific-rules). |269| `paths` | No | Patrones glob que limitan cuándo se activa este skill. Acepta una cadena separada por comas o una lista YAML. Cuando se establece, Claude carga el skill automáticamente solo cuando trabaja con archivos que coinciden con los patrones. Utiliza el mismo formato que [reglas específicas de ruta](/docs/es/memory#path-specific-rules). |

270| `shell` | No | Shell a usar para `` !`command` `` y bloques ` ```! ` en este skill. Acepta `bash` (predeterminado) o `powershell`. Establecer `powershell` ejecuta comandos de shell en línea a través de PowerShell en Windows. Requiere `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`. |270| `shell` | No | Shell a usar para `` !`command` `` y bloques ` ```! ` en este skill. Acepta `bash` (predeterminado) o `powershell`. Establecer `powershell` ejecuta comandos de shell en línea a través de PowerShell en Windows. Requiere `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`. |

271 271 

272<h4 id="how-a-skill-gets-its-command-name">272<h4 id="how-a-skill-gets-its-command-name">


283| [Directorio `.claude/skills/` anidado](#where-skills-live), cuando el nombre entra en conflicto con otro skill | Ruta del subdirectorio relativa al directorio de trabajo, luego el nombre del directorio de skill | `apps/web/.claude/skills/deploy/SKILL.md` → `/apps/web:deploy` |283| [Directorio `.claude/skills/` anidado](#where-skills-live), cuando el nombre entra en conflicto con otro skill | Ruta del subdirectorio relativa al directorio de trabajo, luego el nombre del directorio de skill | `apps/web/.claude/skills/deploy/SKILL.md` → `/apps/web:deploy` |

284| Archivo bajo `.claude/commands/` | Nombre del archivo sin extensión | `.claude/commands/deploy.md` → `/deploy` |284| Archivo bajo `.claude/commands/` | Nombre del archivo sin extensión | `.claude/commands/deploy.md` → `/deploy` |

285| Subdirectorio `skills/` del plugin | Nombre del directorio, con espacio de nombres por plugin | `my-plugin/skills/review/SKILL.md` → `/my-plugin:review` |285| Subdirectorio `skills/` del plugin | Nombre del directorio, con espacio de nombres por plugin | `my-plugin/skills/review/SKILL.md` → `/my-plugin:review` |

286| `SKILL.md` de raíz del plugin | Frontmatter `name`, con el nombre del directorio del plugin como alternativa | `my-plugin/SKILL.md` con `name: review` → `/my-plugin:review`. Consulte [Reglas de comportamiento de ruta](/es/plugins-reference#path-behavior-rules) |286| `SKILL.md` de raíz del plugin | Frontmatter `name`, con el nombre del directorio del plugin como alternativa | `my-plugin/SKILL.md` con `name: review` → `/my-plugin:review`. Consulte [Reglas de comportamiento de ruta](/docs/es/plugins-reference#path-behavior-rules) |

287 287 

288El caso de raíz del plugin es el único lugar donde `name` establece el nombre del comando, porque no hay directorio de skill del que tomarlo. Si `name` no se establece en el frontmatter, se utiliza el nombre del directorio del plugin en su lugar.288El caso de raíz del plugin es el único lugar donde `name` establece el nombre del comando, porque no hay directorio de skill del que tomarlo. Si `name` no se establece en el frontmatter, se utiliza el nombre del directorio del plugin en su lugar.

289 289 


302| `${CLAUDE_SESSION_ID}` | El ID de sesión actual. Útil para registro, creación de archivos específicos de sesión o correlación de salida de skill con sesiones. |302| `${CLAUDE_SESSION_ID}` | El ID de sesión actual. Útil para registro, creación de archivos específicos de sesión o correlación de salida de skill con sesiones. |

303| `${CLAUDE_EFFORT}` | El nivel de esfuerzo actual: `low`, `medium`, `high`, `xhigh`, o `max`. Ultracode no es un nivel distinto e informa como `xhigh`. Utilice esto para adaptar instrucciones de skill a la configuración de esfuerzo activa. |303| `${CLAUDE_EFFORT}` | El nivel de esfuerzo actual: `low`, `medium`, `high`, `xhigh`, o `max`. Ultracode no es un nivel distinto e informa como `xhigh`. Utilice esto para adaptar instrucciones de skill a la configuración de esfuerzo activa. |

304| `${CLAUDE_SKILL_DIR}` | El directorio que contiene el archivo `SKILL.md` del skill. Para skills de plugin, este es el subdirectorio del skill dentro del plugin, no la raíz del plugin. Utilice esto en comandos de inyección bash para hacer referencia a scripts o archivos incluidos con el skill, independientemente del directorio de trabajo actual. |304| `${CLAUDE_SKILL_DIR}` | El directorio que contiene el archivo `SKILL.md` del skill. Para skills de plugin, este es el subdirectorio del skill dentro del plugin, no la raíz del plugin. Utilice esto en comandos de inyección bash para hacer referencia a scripts o archivos incluidos con el skill, independientemente del directorio de trabajo actual. |

305| `${CLAUDE_PROJECT_DIR}` | El directorio raíz del proyecto. Esta es la misma ruta que [hooks](/es/hooks#reference-scripts-by-path) y servidores MCP reciben como `CLAUDE_PROJECT_DIR`. Utilice esto para hacer referencia a scripts o archivos locales del proyecto, como `${CLAUDE_PROJECT_DIR}/.claude/hooks/helper.sh`, independientemente de dónde esté instalado el skill. |305| `${CLAUDE_PROJECT_DIR}` | El directorio raíz del proyecto. Esta es la misma ruta que [hooks](/docs/es/hooks#reference-scripts-by-path) y servidores MCP reciben como `CLAUDE_PROJECT_DIR`. Utilice esto para hacer referencia a scripts o archivos locales del proyecto, como `${CLAUDE_PROJECT_DIR}/.claude/hooks/helper.sh`, independientemente de dónde esté instalado el skill. |

306 306 

307La sustitución `${CLAUDE_PROJECT_DIR}` requiere Claude Code v2.1.196 o posterior. Se aplica tanto al cuerpo del skill como al frontmatter [`allowed-tools`](#frontmatter-reference), por lo que una regla de permiso como `Bash(${CLAUDE_PROJECT_DIR}/scripts/lint.sh *)` se resuelve a la misma ruta que usa el cuerpo del skill.307La sustitución `${CLAUDE_PROJECT_DIR}` requiere Claude Code v2.1.196 o posterior. Se aplica tanto al cuerpo del skill como al frontmatter [`allowed-tools`](#frontmatter-reference), por lo que una regla de permiso como `Bash(${CLAUDE_PROJECT_DIR}/scripts/lint.sh *)` se resuelve a la misma ruta que usa el cuerpo del skill.

308 308 


385| `user-invocable: false` | No | Sí | La descripción siempre en contexto, el skill completo se carga cuando se invoca |385| `user-invocable: false` | No | Sí | La descripción siempre en contexto, el skill completo se carga cuando se invoca |

386 386 

387<Note>387<Note>

388 En una sesión regular, las descripciones de skills se cargan en contexto para que Claude sepa qué está disponible, pero el contenido completo del skill solo se carga cuando se invoca. Los [subagents con skills precargados](/es/sub-agents#preload-skills-into-subagents) funcionan de manera diferente: el contenido completo del skill se inyecta al inicio.388 En una sesión regular, las descripciones de skills se cargan en contexto para que Claude sepa qué está disponible, pero el contenido completo del skill solo se carga cuando se invoca. Los [subagents con skills precargados](/docs/es/sub-agents#preload-skills-into-subagents) funcionan de manera diferente: el contenido completo del skill se inyecta al inicio.

389</Note>389</Note>

390 390 

391<h3 id="skill-content-lifecycle">391<h3 id="skill-content-lifecycle">


396 396 

397Cuando Claude vuelve a invocar un skill cuyo contenido renderizado es idéntico a la copia ya en contexto, Claude Code añade una nota breve de que el skill ya está cargado en lugar de una segunda copia del contenido. Cuando el contenido renderizado difiere, porque los argumentos cambiaron o un comando de [contexto dinámico](#inject-dynamic-context) produjo una nueva salida, Claude Code añade el contenido completo nuevamente. Antes de v2.1.202, cada re-invocación añadía otra copia completa de las instrucciones del skill.397Cuando Claude vuelve a invocar un skill cuyo contenido renderizado es idéntico a la copia ya en contexto, Claude Code añade una nota breve de que el skill ya está cargado en lugar de una segunda copia del contenido. Cuando el contenido renderizado difiere, porque los argumentos cambiaron o un comando de [contexto dinámico](#inject-dynamic-context) produjo una nueva salida, Claude Code añade el contenido completo nuevamente. Antes de v2.1.202, cada re-invocación añadía otra copia completa de las instrucciones del skill.

398 398 

399[Auto-compactación](/es/how-claude-code-works#when-context-fills-up) lleva skills invocados hacia adelante dentro de un presupuesto de tokens. Cuando la conversación se resume para liberar contexto, Claude Code vuelve a adjuntar la invocación más reciente de cada skill después del resumen, manteniendo los primeros 5.000 tokens de cada uno. Los skills reajustados comparten un presupuesto combinado de 25.000 tokens. Claude Code llena este presupuesto comenzando desde el skill invocado más recientemente, por lo que los skills más antiguos pueden eliminarse completamente después de la compactación si ha invocado muchos en una sesión.399[Auto-compactación](/docs/es/how-claude-code-works#when-context-fills-up) lleva skills invocados hacia adelante dentro de un presupuesto de tokens. Cuando la conversación se resume para liberar contexto, Claude Code vuelve a adjuntar la invocación más reciente de cada skill después del resumen, manteniendo los primeros 5.000 tokens de cada uno. Los skills reajustados comparten un presupuesto combinado de 25.000 tokens. Claude Code llena este presupuesto comenzando desde el skill invocado más recientemente, por lo que los skills más antiguos pueden eliminarse completamente después de la compactación si ha invocado muchos en una sesión.

400 400 

401Si un skill parece dejar de influir en el comportamiento después de la primera respuesta, el contenido generalmente sigue presente y el modelo está eligiendo otras herramientas o enfoques. Fortalezca la `description` del skill e instrucciones para que el modelo siga prefiriéndolo, o use [hooks](/es/hooks) para aplicar comportamiento de manera determinista. Si el skill es grande o invocó varios otros después de él, vuelva a invocarlo después de la compactación para restaurar el contenido completo.401Si un skill parece dejar de influir en el comportamiento después de la primera respuesta, el contenido generalmente sigue presente y el modelo está eligiendo otras herramientas o enfoques. Fortalezca la `description` del skill e instrucciones para que el modelo siga prefiriéndolo, o use [hooks](/docs/es/hooks) para aplicar comportamiento de manera determinista. Si el skill es grande o invocó varios otros después de él, vuelva a invocarlo después de la compactación para restaurar el contenido completo.

402 402 

403<h3 id="pre-approve-tools-for-a-skill">403<h3 id="pre-approve-tools-for-a-skill">

404 Pre-aprobar herramientas para un skill404 Pre-aprobar herramientas para un skill

405</h3>405</h3>

406 406 

407El campo `allowed-tools` otorga permiso para las herramientas enumeradas mientras el skill está activo, por lo que Claude puede usarlas sin solicitarle aprobación. No restringe qué herramientas están disponibles: cada herramienta sigue siendo invocable, y su [configuración de permisos](/es/permissions) sigue rigiendo las herramientas que no están enumeradas.407El campo `allowed-tools` otorga permiso para las herramientas enumeradas mientras el skill está activo, por lo que Claude puede usarlas sin solicitarle aprobación. No restringe qué herramientas están disponibles: cada herramienta sigue siendo invocable, y su [configuración de permisos](/docs/es/permissions) sigue rigiendo las herramientas que no están enumeradas.

408 408 

409Para skills verificados en el directorio `.claude/skills/` de un proyecto, `allowed-tools` entra en vigor después de que acepte el diálogo de confianza del espacio de trabajo para esa carpeta, igual que las reglas de permisos en `.claude/settings.json`. Revise los skills del proyecto antes de confiar en un repositorio, ya que un skill puede otorgarse a sí mismo acceso amplio a herramientas.409Para skills verificados en el directorio `.claude/skills/` de un proyecto, `allowed-tools` entra en vigor después de que acepte el diálogo de confianza del espacio de trabajo para esa carpeta, igual que las reglas de permisos en `.claude/settings.json`. Revise los skills del proyecto antes de confiar en un repositorio, ya que un skill puede otorgarse a sí mismo acceso amplio a herramientas.

410 410 


419---419---

420```420```

421 421 

422Para eliminar herramientas del grupo disponible de Claude mientras un skill está activo, enumérelas en `disallowed-tools` en el frontmatter del skill. La restricción se borra cuando envía su siguiente mensaje. Para bloquear herramientas en todos los skills y prompts, añada reglas de denegación en su [configuración de permisos](/es/permissions).422Para eliminar herramientas del grupo disponible de Claude mientras un skill está activo, enumérelas en `disallowed-tools` en el frontmatter del skill. La restricción se borra cuando envía su siguiente mensaje. Para bloquear herramientas en todos los skills y prompts, añada reglas de denegación en su [configuración de permisos](/docs/es/permissions).

423 423 

424<h3 id="pass-arguments-to-skills">424<h3 id="pass-arguments-to-skills">

425 Pasar argumentos a skills425 Pasar argumentos a skills


530```530```

531````531````

532 532 

533Para deshabilitar este comportamiento para skills y comandos personalizados de fuentes de usuario, proyecto, plugin o [directorio adicional](#skills-from-additional-directories), establezca `"disableSkillShellExecution": true` en [settings](/es/settings). Cada comando se reemplaza con `[shell command execution disabled by policy]` en lugar de ejecutarse. Los skills agrupados y gestionados no se ven afectados. Esta configuración es más útil en [managed settings](/es/permissions#managed-settings), donde los usuarios no pueden anularla.533Para deshabilitar este comportamiento para skills y comandos personalizados de fuentes de usuario, proyecto, plugin o [directorio adicional](#skills-from-additional-directories), establezca `"disableSkillShellExecution": true` en [settings](/docs/es/settings). Cada comando se reemplaza con `[shell command execution disabled by policy]` en lugar de ejecutarse. Los skills agrupados y gestionados no se ven afectados. Esta configuración es más útil en [managed settings](/docs/es/permissions#managed-settings), donde los usuarios no pueden anularla.

534 534 

535<Tip>535<Tip>

536 Para solicitar un razonamiento más profundo cuando se ejecuta un skill, incluya `ultrathink` en cualquier lugar en el contenido del skill. Consulte [Use ultrathink for one-off deep reasoning](/es/model-config#use-ultrathink-for-one-off-deep-reasoning).536 Para solicitar un razonamiento más profundo cuando se ejecuta un skill, incluya `ultrathink` en cualquier lugar en el contenido del skill. Consulte [Use ultrathink for one-off deep reasoning](/docs/es/model-config#use-ultrathink-for-one-off-deep-reasoning).

537</Tip>537</Tip>

538 538 

539<h3 id="run-skills-in-a-subagent">539<h3 id="run-skills-in-a-subagent">


546 `context: fork` solo tiene sentido para skills con instrucciones explícitas. Si su skill contiene directrices como "use estas convenciones de API" sin una tarea, el subagent recibe las directrices pero sin un prompt accionable, y regresa sin salida significativa.546 `context: fork` solo tiene sentido para skills con instrucciones explícitas. Si su skill contiene directrices como "use estas convenciones de API" sin una tarea, el subagent recibe las directrices pero sin un prompt accionable, y regresa sin salida significativa.

547</Warning>547</Warning>

548 548 

549Los skills y los [subagents](/es/sub-agents) funcionan juntos en dos direcciones:549Los skills y los [subagents](/docs/es/sub-agents) funcionan juntos en dos direcciones:

550 550 

551| Enfoque | Prompt del sistema | Tarea | También carga |551| Enfoque | Prompt del sistema | Tarea | También carga |

552| :-------------------------- | :--------------------------- | :------------------------------ | :--------------------------------------------------- |552| :-------------------------- | :--------------------------- | :------------------------------ | :--------------------------------------------------- |

553| Skill con `context: fork` | Del tipo de agent | Contenido de SKILL.md | CLAUDE.md, excepto cuando el agent es Explore o Plan |553| Skill con `context: fork` | Del tipo de agent | Contenido de SKILL.md | CLAUDE.md, excepto cuando el agent es Explore o Plan |

554| Subagent con campo `skills` | Cuerpo markdown del subagent | Mensaje de delegación de Claude | Skills precargados + CLAUDE.md |554| Subagent con campo `skills` | Cuerpo markdown del subagent | Mensaje de delegación de Claude | Skills precargados + CLAUDE.md |

555 555 

556Con `context: fork`, escribe la tarea en tu skill y elige un tipo de agent para ejecutarla. Los agents integrados Explore y Plan [omiten CLAUDE.md y git status](/es/sub-agents#what-loads-at-startup) para mantener su contexto pequeño, por lo que un skill bifurcado usando `agent: Explore` solo ve el contenido de SKILL.md y el prompt del sistema del agent. Para lo inverso, donde define un subagent personalizado que usa skills como material de referencia, consulte [Subagents](/es/sub-agents#preload-skills-into-subagents).556Con `context: fork`, escribe la tarea en tu skill y elige un tipo de agent para ejecutarla. Los agents integrados Explore y Plan [omiten CLAUDE.md y git status](/docs/es/sub-agents#what-loads-at-startup) para mantener su contexto pequeño, por lo que un skill bifurcado usando `agent: Explore` solo ve el contenido de SKILL.md y el prompt del sistema del agent. Para lo inverso, donde define un subagent personalizado que usa skills como material de referencia, consulte [Subagents](/docs/es/sub-agents#preload-skills-into-subagents).

557 557 

558<h4 id="example-research-skill-using-explore-agent">558<h4 id="example-research-skill-using-explore-agent">

559 Ejemplo: Skill de investigación usando agent Explore559 Ejemplo: Skill de investigación usando agent Explore


589 Restringir el acceso de Claude a skills589 Restringir el acceso de Claude a skills

590</h3>590</h3>

591 591 

592De forma predeterminada, Claude puede invocar cualquier skill que no tenga `disable-model-invocation: true` establecido. Los skills que definen `allowed-tools` otorgan a Claude acceso a esas herramientas sin aprobación por uso cuando el skill está activo. Su [configuración de permisos](/es/permissions) sigue rigiendo el comportamiento de aprobación de línea base para todas las demás herramientas. Algunos comandos integrados también están disponibles a través de la herramienta Skill, incluyendo `/init`, `/review` y `/security-review`. Otros comandos integrados como `/compact` no lo están.592De forma predeterminada, Claude puede invocar cualquier skill que no tenga `disable-model-invocation: true` establecido. Los skills que definen `allowed-tools` otorgan a Claude acceso a esas herramientas sin aprobación por uso cuando el skill está activo. Su [configuración de permisos](/docs/es/permissions) sigue rigiendo el comportamiento de aprobación de línea base para todas las demás herramientas. Algunos comandos integrados también están disponibles a través de la herramienta Skill, incluyendo `/init`, `/review` y `/security-review`. Otros comandos integrados como `/compact` no lo están.

593 593 

594Tres formas de controlar qué skills puede invocar Claude:594Tres formas de controlar qué skills puede invocar Claude:

595 595 


600Skill600Skill

601```601```

602 602 

603**Permitir o denegar skills específicos** usando [reglas de permisos](/es/permissions):603**Permitir o denegar skills específicos** usando [reglas de permisos](/docs/es/permissions):

604 604 

605```text theme={null}605```text theme={null}

606# Allow only specific skills606# Allow only specific skills


623 Anular la visibilidad del skill desde la configuración623 Anular la visibilidad del skill desde la configuración

624</h3>624</h3>

625 625 

626La configuración `skillOverrides` controla la visibilidad del skill desde su [settings](/es/settings) en lugar del frontmatter del skill. Úselo para skills cuyo SKILL.md no desea editar, como los que se registran en un repositorio de proyecto compartido o proporcionados por un servidor MCP. El menú `/skills` lo escribe por usted: resalte un skill y presione `Space` para ciclar entre estados, luego `Enter` para guardar en `.claude/settings.local.json`.626La configuración `skillOverrides` controla la visibilidad del skill desde su [settings](/docs/es/settings) en lugar del frontmatter del skill. Úselo para skills cuyo SKILL.md no desea editar, como los que se registran en un repositorio de proyecto compartido o proporcionados por un servidor MCP. El menú `/skills` lo escribe por usted: resalte un skill y presione `Space` para ciclar entre estados, luego `Enter` para guardar en `.claude/settings.local.json`.

627 627 

628Cada clave es un nombre de skill y cada valor es uno de cuatro estados:628Cada clave es un nombre de skill y cada valor es uno de cuatro estados:

629 629 


634| `"user-invocable-only"` | Oculto | Sí |634| `"user-invocable-only"` | Oculto | Sí |

635| `"off"` | Oculto | Oculto |635| `"off"` | Oculto | Oculto |

636 636 

637A partir de v2.1.199, `"off"` también oculta el skill de las listas de comandos anunciadas a clientes de [Remote Control](/es/remote-control) y a llamadores de [Agent SDK](/es/agent-sdk/slash-commands), no solo el menú `/` de terminal. Invocar un skill oculto por su nombre completo aún devuelve el error `skillOverrides` en lugar de ejecutarlo.637A partir de v2.1.199, `"off"` también oculta el skill de las listas de comandos anunciadas a clientes de [Remote Control](/docs/es/remote-control) y a llamadores de [Agent SDK](/docs/es/agent-sdk/slash-commands), no solo el menú `/` de terminal. Invocar un skill oculto por su nombre completo aún devuelve el error `skillOverrides` en lugar de ejecutarlo.

638 638 

639Un skill que está ausente de `skillOverrides` se trata como `"on"`. El ejemplo a continuación colapsa un skill a su nombre y desactiva otro por completo:639Un skill que está ausente de `skillOverrides` se trata como `"on"`. El ejemplo a continuación colapsa un skill a su nombre y desactiva otro por completo:

640 640 


672Después de instalar, ejecute `/reload-plugins` para que los skills del plugin estén disponibles en la sesión actual. Luego pida a Claude que evalúe un skill existente, por ejemplo `evaluate my summarize-changes skill with skill-creator`. El plugin lo guía a través de la escritura de casos de prueba y ejecuta el bucle:672Después de instalar, ejecute `/reload-plugins` para que los skills del plugin estén disponibles en la sesión actual. Luego pida a Claude que evalúe un skill existente, por ejemplo `evaluate my summarize-changes skill with skill-creator`. El plugin lo guía a través de la escritura de casos de prueba y ejecuta el bucle:

673 673 

674* **Casos de prueba**: almacena prompts, archivos de entrada y comportamiento esperado en `evals/evals.json` dentro del directorio de skill674* **Casos de prueba**: almacena prompts, archivos de entrada y comportamiento esperado en `evals/evals.json` dentro del directorio de skill

675* **Ejecuciones aisladas**: genera un [subagent](/es/sub-agents) por caso de prueba para que cada ejecución comience con un contexto limpio, y registra el recuento de tokens y la duración675* **Ejecuciones aisladas**: genera un [subagent](/docs/es/sub-agents) por caso de prueba para que cada ejecución comience con un contexto limpio, y registra el recuento de tokens y la duración

676* **Calificación**: verifica cada aserción contra la salida y escribe aprobado o reprobado con evidencia en `grading.json`676* **Calificación**: verifica cada aserción contra la salida y escribe aprobado o reprobado con evidencia en `grading.json`

677* **Benchmark**: agrega la tasa de aprobación, tiempo y tokens para con-skill versus sin-skill en `benchmark.json` para que pueda comparar la mejora de la tasa de aprobación contra la sobrecarga de tokens y tiempo677* **Benchmark**: agrega la tasa de aprobación, tiempo y tokens para con-skill versus sin-skill en `benchmark.json` para que pueda comparar la mejora de la tasa de aprobación contra la sobrecarga de tokens y tiempo

678* **Comparación de versiones**: ejecuta una prueba A/B ciega entre dos versiones del skill para que pueda confirmar que una edición es una mejora antes de confirmarla678* **Comparación de versiones**: ejecuta una prueba A/B ciega entre dos versiones del skill para que pueda confirmar que una edición es una mejora antes de confirmarla


687Los skills se pueden distribuir en diferentes ámbitos dependiendo de su audiencia:687Los skills se pueden distribuir en diferentes ámbitos dependiendo de su audiencia:

688 688 

689* **Skills de proyecto**: Confirme `.claude/skills/` en el control de versiones689* **Skills de proyecto**: Confirme `.claude/skills/` en el control de versiones

690* **Plugins**: Cree un directorio `skills/` en su [plugin](/es/plugins)690* **Plugins**: Cree un directorio `skills/` en su [plugin](/docs/es/plugins)

691* **Gestionado**: Implemente en toda la organización a través de [configuración gestionada](/es/settings#settings-files)691* **Gestionado**: Implemente en toda la organización a través de [configuración gestionada](/docs/es/settings#settings-files)

692 692 

693<h3 id="generate-visual-output">693<h3 id="generate-visual-output">

694 Generar salida visual694 Generar salida visual


915 915 

916Claude Code carga un listado de nombres de skills y descripciones en contexto para que Claude sepa qué está disponible. El listado siempre contiene todos los nombres de skills, pero si tiene muchos skills, Claude Code acorta las descripciones para ajustarse al presupuesto de caracteres del listado, lo que puede eliminar las palabras clave que Claude necesita para coincidir con su solicitud. El presupuesto se escala al 1% de la ventana de contexto del modelo. Cuando el listado se desborda, Claude Code elimina descripciones comenzando con los skills que invoca menos, por lo que los skills que usa más mantienen su texto completo.916Claude Code carga un listado de nombres de skills y descripciones en contexto para que Claude sepa qué está disponible. El listado siempre contiene todos los nombres de skills, pero si tiene muchos skills, Claude Code acorta las descripciones para ajustarse al presupuesto de caracteres del listado, lo que puede eliminar las palabras clave que Claude necesita para coincidir con su solicitud. El presupuesto se escala al 1% de la ventana de contexto del modelo. Cuando el listado se desborda, Claude Code elimina descripciones comenzando con los skills que invoca menos, por lo que los skills que usa más mantienen su texto completo.

917 917 

918Ejecute `/doctor` para obtener una estimación del costo de contexto del listado y sus mayores contribuyentes. Cuando el listado excede su presupuesto, Claude Code también escribe una advertencia en el registro de depuración, visible con [`--debug`](/es/cli-reference#cli-flags).918Ejecute `/doctor` para obtener una estimación del costo de contexto del listado y sus mayores contribuyentes. Cuando el listado excede su presupuesto, Claude Code también escribe una advertencia en el registro de depuración, visible con [`--debug`](/docs/es/cli-reference#cli-flags).

919 919 

920La fila Skills en `/context` reporta el tamaño del listado después de que se aplica el presupuesto, por lo que coincide con lo que recibe el modelo. Antes de v2.1.196, la fila contaba el texto completo de cada descripción y podría mostrar un valor varias veces mayor que el presupuesto configurado.920La fila Skills en `/context` reporta el tamaño del listado después de que se aplica el presupuesto, por lo que coincide con lo que recibe el modelo. Antes de v2.1.196, la fila contaba el texto completo de cada descripción y podría mostrar un valor varias veces mayor que el presupuesto configurado.

921 921 

922Para aumentar el presupuesto, establezca la configuración [`skillListingBudgetFraction`](/es/settings#available-settings) (por ejemplo, `0.02` = 2%) o la variable de entorno `SLASH_COMMAND_TOOL_CHAR_BUDGET` a un recuento de caracteres fijo. Para liberar presupuesto para otros skills, establezca las entradas de baja prioridad en `"name-only"` en [`skillOverrides`](#override-skill-visibility-from-settings) para que se enumeren sin descripción. También puede recortar el texto de `description` y `when_to_use` en la fuente: coloque el caso de uso clave primero, ya que el texto combinado de cada entrada está limitado a 1.536 caracteres independientemente del presupuesto. El límite es configurable con [`skillListingMaxDescChars`](/es/settings#available-settings).922Para aumentar el presupuesto, establezca la configuración [`skillListingBudgetFraction`](/docs/es/settings#available-settings) (por ejemplo, `0.02` = 2%) o la variable de entorno `SLASH_COMMAND_TOOL_CHAR_BUDGET` a un recuento de caracteres fijo. Para liberar presupuesto para otros skills, establezca las entradas de baja prioridad en `"name-only"` en [`skillOverrides`](#override-skill-visibility-from-settings) para que se enumeren sin descripción. También puede recortar el texto de `description` y `when_to_use` en la fuente: coloque el caso de uso clave primero, ya que el texto combinado de cada entrada está limitado a 1.536 caracteres independientemente del presupuesto. El límite es configurable con [`skillListingMaxDescChars`](/docs/es/settings#available-settings).

923 923 

924<h2 id="related-resources">924<h2 id="related-resources">

925 Recursos relacionados925 Recursos relacionados

926</h2>926</h2>

927 927 

928* **[Depura tu configuración](/es/debug-your-config)**: diagnostica por qué una skill no aparece o no se activa928* **[Depura tu configuración](/docs/es/debug-your-config)**: diagnostica por qué una skill no aparece o no se activa

929* **[Evaluating skill output quality](https://agentskills.io/skill-creation/evaluating-skills)**: el formato del archivo eval y el flujo de trabajo de iteración en agentskills.io929* **[Evaluating skill output quality](https://agentskills.io/skill-creation/evaluating-skills)**: el formato del archivo eval y el flujo de trabajo de iteración en agentskills.io

930* **[Skill authoring best practices](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices)**: orientación de escritura que se aplica en productos Claude930* **[Skill authoring best practices](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices)**: orientación de escritura que se aplica en productos Claude

931* **[Subagents](/es/sub-agents)**: delega tareas a agents especializados931* **[Subagents](/docs/es/sub-agents)**: delega tareas a agents especializados

932* **[Plugins](/es/plugins)**: empaqueta y distribuye skills con otras extensiones932* **[Plugins](/docs/es/plugins)**: empaqueta y distribuye skills con otras extensiones

933* **[Hooks](/es/hooks)**: automatiza flujos de trabajo alrededor de eventos de herramientas933* **[Hooks](/docs/es/hooks)**: automatiza flujos de trabajo alrededor de eventos de herramientas

934* **[Memory](/es/memory)**: gestiona archivos CLAUDE.md para contexto persistente934* **[Memory](/docs/es/memory)**: gestiona archivos CLAUDE.md para contexto persistente

935* **[Comandos](/es/commands)**: referencia para comandos integrados y skills agrupados935* **[Comandos](/docs/es/commands)**: referencia para comandos integrados y skills agrupados

936* **[Permisos](/es/permissions)**: controla el acceso a herramientas y skills936* **[Permisos](/docs/es/permissions)**: controla el acceso a herramientas y skills

937* **[Claude Tag skills](https://claude.com/docs/claude-tag/admins/skills-repo)**: skills de proyecto comprometidas en un repositorio también se cargan cuando ese repositorio se utiliza en un canal de Claude Tag937* **[Claude Tag skills](https://claude.com/docs/claude-tag/admins/skills-repo)**: skills de proyecto comprometidas en un repositorio también se cargan cuando ese repositorio se utiliza en un canal de Claude Tag

statusline.md +9 −9

Details

15* Trabaja en múltiples sesiones y necesita distinguirlas15* Trabaja en múltiples sesiones y necesita distinguirlas

16* Desea que la rama de git y el estado siempre sean visibles16* Desea que la rama de git y el estado siempre sean visibles

17 17 

18La línea de estado se renderiza en su propia fila por encima de las insignias de pie de página integradas y no las reemplaza. Para agregar insignias de enlaces interactivos al pie de página cuando aparece una ID en la conversación, sin escribir un script, configure [`footerLinksRegexes`](/es/settings#footer-link-badges) en su lugar.18La línea de estado se renderiza en su propia fila por encima de las insignias de pie de página integradas y no las reemplaza. Para agregar insignias de enlaces interactivos al pie de página cuando aparece una ID en la conversación, sin escribir un script, configure [`footerLinksRegexes`](/docs/es/settings#footer-link-badges) en su lugar.

19 19 

20Aquí hay un ejemplo de una [línea de estado de múltiples líneas](#display-multiple-lines) que muestra información de git en la primera línea y una barra de contexto codificada por colores en la segunda.20Aquí hay un ejemplo de una [línea de estado de múltiples líneas](#display-multiple-lines) que muestra información de git en la primera línea y una barra de contexto codificada por colores en la segunda.

21 21 


45 Configurar manualmente una línea de estado45 Configurar manualmente una línea de estado

46</h3>46</h3>

47 47 

48Agrega un campo `statusLine` a tu configuración de usuario (`~/.claude/settings.json`, donde `~` es tu directorio de inicio) o [configuración del proyecto](/es/settings#settings-files). Establece `type` en `"command"` y apunta `command` a una ruta de script o un comando de shell en línea. Para un tutorial completo sobre cómo crear un script, consulta [Construir una línea de estado paso a paso](#build-a-status-line-step-by-step).48Agrega un campo `statusLine` a tu configuración de usuario (`~/.claude/settings.json`, donde `~` es tu directorio de inicio) o [configuración del proyecto](/docs/es/settings#settings-files). Establece `type` en `"command"` y apunta `command` a una ruta de script o un comando de shell en línea. Para un tutorial completo sobre cómo crear un script, consulta [Construir una línea de estado paso a paso](#build-a-status-line-step-by-step).

49 49 

50```json theme={null}50```json theme={null}

51{51{


160 160 

161**Ajustar el tamaño de la salida a la terminal**161**Ajustar el tamaño de la salida a la terminal**

162 162 

163Claude Code captura la salida de tu script en lugar de conectarla directamente a la terminal, por lo que `tput cols` y la detección de ancho a nivel de lenguaje no pueden leer el tamaño de la terminal desde dentro del script. {/* min-version: 2.1.153 */}Lee las variables de entorno `COLUMNS` y `LINES` en su lugar. Claude Code establece estas variables con las dimensiones actuales de la terminal antes de ejecutar tu script. Requiere Claude Code v2.1.153 o posterior.163Claude Code captura la salida de tu script en lugar de conectarla directamente a la terminal, por lo que `tput cols` y la detección de ancho a nivel de lenguaje no pueden leer el tamaño de la terminal desde dentro del script. Lee las variables de entorno `COLUMNS` y `LINES` en su lugar. Claude Code establece estas variables con las dimensiones actuales de la terminal antes de ejecutar tu script. Requiere Claude Code v2.1.153 o posterior.

164 164 

165<Note>La línea de estado se ejecuta localmente y no consume tokens de API. Se oculta temporalmente durante ciertas interacciones de la interfaz, incluidas sugerencias de autocompletado, el menú de ayuda y solicitudes de permiso.</Note>165<Note>La línea de estado se ejecuta localmente y no consume tokens de API. Se oculta temporalmente durante ciertas interacciones de la interfaz, incluidas sugerencias de autocompletado, el menú de ayuda y solicitudes de permiso.</Note>

166 166 


194| `rate_limits.five_hour.resets_at`, `rate_limits.seven_day.resets_at` | Segundos de época Unix cuando se reinicia la ventana de límite de velocidad de 5 horas o 7 días |194| `rate_limits.five_hour.resets_at`, `rate_limits.seven_day.resets_at` | Segundos de época Unix cuando se reinicia la ventana de límite de velocidad de 5 horas o 7 días |

195| `session_id` | Identificador único de sesión |195| `session_id` | Identificador único de sesión |

196| `session_name` | Nombre de sesión personalizado establecido con la bandera `--name` o `/rename`. Ausente si no se ha establecido un nombre personalizado |196| `session_name` | Nombre de sesión personalizado establecido con la bandera `--name` o `/rename`. Ausente si no se ha establecido un nombre personalizado |

197| `prompt_id` | UUID que identifica el prompt del usuario que se está procesando actualmente. Coincide con el atributo [`prompt.id` en eventos de OpenTelemetry](/es/monitoring-usage#event-correlation-attributes). Ausente hasta la primera entrada del usuario. Requiere Claude Code v2.1.196 o posterior |197| `prompt_id` | UUID que identifica el prompt del usuario que se está procesando actualmente. Coincide con el atributo [`prompt.id` en eventos de OpenTelemetry](/docs/es/monitoring-usage#event-correlation-attributes). Ausente hasta la primera entrada del usuario. Requiere Claude Code v2.1.196 o posterior |

198| `transcript_path` | Ruta al archivo de transcripción de conversación |198| `transcript_path` | Ruta al archivo de transcripción de conversación |

199| `version` | Versión de Claude Code |199| `version` | Versión de Claude Code |

200| `output_style.name` | Nombre del estilo de salida actual |200| `output_style.name` | Nombre del estilo de salida actual |

201| `vim.mode` | Modo vim actual (`NORMAL`, `INSERT`, `VISUAL`, o `VISUAL LINE`) cuando [el modo vim](/es/interactive-mode#vim-editor-mode) está habilitado |201| `vim.mode` | Modo vim actual (`NORMAL`, `INSERT`, `VISUAL`, o `VISUAL LINE`) cuando [el modo vim](/docs/es/interactive-mode#vim-editor-mode) está habilitado |

202| `agent.name` | Nombre del agente cuando se ejecuta con la bandera `--agent` o configuración de agente configurada |202| `agent.name` | Nombre del agente cuando se ejecuta con la bandera `--agent` o configuración de agente configurada |

203| `pr.number`, `pr.url` | Solicitud de extracción abierta para la rama actual. Refleja la insignia de PR en la barra de estado inferior. Ausente hasta que se encuentre una PR, cuando no está en un repositorio git, o una vez que la PR se fusiona o se cierra |203| `pr.number`, `pr.url` | Solicitud de extracción abierta para la rama actual. Refleja la insignia de PR en la barra de estado inferior. Ausente hasta que se encuentre una PR, cuando no está en un repositorio git, o una vez que la PR se fusiona o se cierra |

204| `pr.review_state` | Estado de revisión de la PR abierta: `approved`, `pending`, `changes_requested`, o `draft`. Puede estar independientemente ausente incluso cuando `pr` está presente |204| `pr.review_state` | Estado de revisión de la PR abierta: `approved`, `pending`, `changes_requested`, o `draft`. Puede estar independientemente ausente incluso cuando `pr` está presente |


332* `cache_creation_input_tokens`: tokens escritos en caché332* `cache_creation_input_tokens`: tokens escritos en caché

333* `cache_read_input_tokens`: tokens leídos del caché333* `cache_read_input_tokens`: tokens leídos del caché

334 334 

335Para saber qué significan los campos de caché y cómo se facturan, consulta [verificar rendimiento de caché](/es/prompt-caching#check-cache-performance).335Para saber qué significan los campos de caché y cómo se facturan, consulta [verificar rendimiento de caché](/docs/es/prompt-caching#check-cache-performance).

336 336 

337El campo `used_percentage` se calcula solo a partir de tokens de entrada: `input_tokens + cache_creation_input_tokens + cache_read_input_tokens`. No incluye `output_tokens`.337El campo `used_percentage` se calcula solo a partir de tokens de entrada: `input_tokens + cache_creation_input_tokens + cache_read_input_tokens`. No incluye `output_tokens`.

338 338 


1033 Líneas de estado de subagentes1033 Líneas de estado de subagentes

1034</h2>1034</h2>

1035 1035 

1036La configuración `subagentStatusLine` renderiza un cuerpo de fila personalizado para cada [subagente](/es/sub-agents) mostrado en el panel de agentes debajo del prompt. Úsalo para reemplazar la fila predeterminada `name · description · token count` con tu propio formato.1036La configuración `subagentStatusLine` renderiza un cuerpo de fila personalizado para cada [subagente](/docs/es/sub-agents) mostrado en el panel de agentes debajo del prompt. Úsalo para reemplazar la fila predeterminada `name · description · token count` con tu propio formato.

1037 1037 

1038```json theme={null}1038```json theme={null}

1039{1039{


1044}1044}

1045```1045```

1046 1046 

1047El comando se ejecuta una vez por tick de actualización con todas las filas de subagentes visibles pasadas como un único objeto JSON en stdin. La entrada incluye los [campos de hook base](/es/hooks#common-input-fields), un campo `columns` con el ancho de fila utilizable, y un array `tasks`. Cada tarea tiene `id`, `name`, `type`, `status`, `description`, `label`, `startTime`, `model`, `contextWindowSize`, `tokenCount`, `tokenSamples`, y `cwd`.1047El comando se ejecuta una vez por tick de actualización con todas las filas de subagentes visibles pasadas como un único objeto JSON en stdin. La entrada incluye los [campos de hook base](/docs/es/hooks#common-input-fields), un campo `columns` con el ancho de fila utilizable, y un array `tasks`. Cada tarea tiene `id`, `name`, `type`, `status`, `description`, `label`, `startTime`, `model`, `contextWindowSize`, `tokenCount`, `tokenSamples`, y `cwd`.

1048 1048 

1049El campo `model` por tarea es el ID de modelo resuelto en el que se ejecuta la tarea. `contextWindowSize` es la ventana de contexto de ese modelo en tokens, calculada de la misma manera que `context_window.context_window_size` de la línea de estado principal, por lo que puedes renderizar un porcentaje por fila desde `tokenCount`. Ambos campos requieren Claude Code v2.1.205 o posterior y se omiten para una tarea cuyo modelo aún no está resuelto.1049El campo `model` por tarea es el ID de modelo resuelto en el que se ejecuta la tarea. `contextWindowSize` es la ventana de contexto de ese modelo en tokens, calculada de la misma manera que `context_window.context_window_size` de la línea de estado principal, por lo que puedes renderizar un porcentaje por fila desde `tokenCount`. Ambos campos requieren Claude Code v2.1.205 o posterior y se omiten para una tarea cuyo modelo aún no está resuelto.

1050 1050 

1051Escribe una línea JSON a stdout por cada fila que desees anular, en la forma `{"id": "<task id>", "content": "<row body>"}`. La cadena `content` se renderiza tal cual, incluidos colores ANSI e hipervínculos OSC 8. Omite el `id` de una tarea para mantener el renderizado predeterminado para esa fila; emite una cadena `content` vacía para ocultarla.1051Escribe una línea JSON a stdout por cada fila que desees anular, en la forma `{"id": "<task id>", "content": "<row body>"}`. La cadena `content` se renderiza tal cual, incluidos colores ANSI e hipervínculos OSC 8. Omite el `id` de una tarea para mantener el renderizado predeterminado para esa fila; emite una cadena `content` vacía para ocultarla.

1052 1052 

1053Las mismas puertas de confianza y `disableAllHooks` que se aplican a `statusLine` se aplican aquí. Los plugins pueden enviar una `subagentStatusLine` predeterminada en su [`settings.json`](/es/plugins-reference#standard-plugin-layout).1053Las mismas puertas de confianza y `disableAllHooks` que se aplican a `statusLine` se aplican aquí. Los plugins pueden enviar una `subagentStatusLine` predeterminada en su [`settings.json`](/docs/es/plugins-reference#standard-plugin-layout).

1054 1054 

1055<h2 id="tips">1055<h2 id="tips">

1056 Consejos1056 Consejos

sub-agents.md +86 −86

Details

8 8 

9Los subagentes son asistentes de IA especializados que manejan tipos específicos de tareas. Utilice uno cuando una tarea secundaria inundaría su conversación principal con resultados de búsqueda, registros o contenidos de archivos que no volverá a consultar: el subagente realiza ese trabajo en su propio contexto y devuelve solo el resumen. Defina un subagente personalizado cuando siga generando el mismo tipo de trabajador con las mismas instrucciones.9Los subagentes son asistentes de IA especializados que manejan tipos específicos de tareas. Utilice uno cuando una tarea secundaria inundaría su conversación principal con resultados de búsqueda, registros o contenidos de archivos que no volverá a consultar: el subagente realiza ese trabajo en su propio contexto y devuelve solo el resumen. Defina un subagente personalizado cuando siga generando el mismo tipo de trabajador con las mismas instrucciones.

10 10 

11Cada subagente se ejecuta en su propia ventana de contexto con un mensaje del sistema personalizado, acceso a herramientas específicas y permisos independientes. Cuando Claude encuentra una tarea que coincide con la descripción de un subagente, delega en ese subagente, que trabaja de forma independiente y devuelve resultados. Para ver el ahorro de contexto en la práctica, la [visualización de la ventana de contexto](/es/context-window) muestra un recorrido por una sesión donde un subagente maneja la investigación en su propia ventana separada.11Cada subagente se ejecuta en su propia ventana de contexto con un mensaje del sistema personalizado, acceso a herramientas específicas y permisos independientes. Cuando Claude encuentra una tarea que coincide con la descripción de un subagente, delega en ese subagente, que trabaja de forma independiente y devuelve resultados. Para ver el ahorro de contexto en la práctica, la [visualización de la ventana de contexto](/docs/es/context-window) muestra un recorrido por una sesión donde un subagente maneja la investigación en su propia ventana separada.

12 12 

13<Note>13<Note>

14 Los subagentes funcionan dentro de una única sesión. Para ejecutar muchas sesiones independientes en paralelo y supervisarlas desde un único lugar, consulte [agentes en segundo plano](/es/agent-view). Para sesiones que se comunican entre sí, consulte [equipos de agentes](/es/agent-teams).14 Los subagentes funcionan dentro de una única sesión. Para ejecutar muchas sesiones independientes en paralelo y supervisarlas desde un único lugar, consulte [agentes en segundo plano](/docs/es/agent-view). Para sesiones que se comunican entre sí, consulte [equipos de agentes](/docs/es/agent-teams).

15</Note>15</Note>

16 16 

17Los subagentes le ayudan a:17Los subagentes le ayudan a:


42 * **Herramientas**: herramientas de solo lectura; Write y Edit están denegados42 * **Herramientas**: herramientas de solo lectura; Write y Edit están denegados

43 * **Propósito**: descubrimiento de archivos, búsqueda de código, exploración de base de código43 * **Propósito**: descubrimiento de archivos, búsqueda de código, exploración de base de código

44 44 

45 {/* min-version: 2.1.198 */}A partir de v2.1.198, Explore hereda el modelo de la conversación principal en lugar de ejecutarse siempre en Haiku. En la API de Claude, el modelo heredado está limitado a Opus: una conversación principal en un nivel superior ejecuta Explore en Opus, y una conversación principal en Sonnet o Haiku ejecuta Explore en ese mismo modelo. En cualquier otro proveedor, como [Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, o Claude Platform en AWS](/es/third-party-integrations), Explore hereda el modelo de la conversación principal directamente.45 A partir de v2.1.198, Explore hereda el modelo de la conversación principal en lugar de ejecutarse siempre en Haiku. En la API de Claude, el modelo heredado está limitado a Opus: una conversación principal en un nivel superior ejecuta Explore en Opus, y una conversación principal en Sonnet o Haiku ejecuta Explore en ese mismo modelo. En cualquier otro proveedor, como [Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, o Claude Platform en AWS](/docs/es/third-party-integrations), Explore hereda el modelo de la conversación principal directamente.

46 46 

47 Un [subagente de usuario o proyecto](#choose-the-subagent-scope) llamado `Explore` anula el integrado y mantiene su propio campo `model`, así que defina uno con `model: haiku` para mantener la exploración en un modelo de menor costo.47 Un [subagente de usuario o proyecto](#choose-the-subagent-scope) llamado `Explore` anula el integrado y mantiene su propio campo `model`, así que defina uno con `model: haiku` para mantener la exploración en un modelo de menor costo.

48 48 


52 </Tab>52 </Tab>

53 53 

54 <Tab title="Plan">54 <Tab title="Plan">

55 Un agente de investigación utilizado durante [plan mode](/es/permission-modes#analyze-before-you-edit-with-plan-mode) para recopilar contexto antes de presentar un plan.55 Un agente de investigación utilizado durante [plan mode](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode) para recopilar contexto antes de presentar un plan.

56 56 

57 * **Modelo**: hereda de la conversación principal57 * **Modelo**: hereda de la conversación principal

58 * **Herramientas**: herramientas de solo lectura; Write y Edit están denegados58 * **Herramientas**: herramientas de solo lectura; Write y Edit están denegados


84Los subagentes integrados se registran por defecto en sesiones interactivas. Para restringirlos:84Los subagentes integrados se registran por defecto en sesiones interactivas. Para restringirlos:

85 85 

86* Para bloquear un tipo integrado específico, agréguelo a `permissions.deny` como se muestra en [Deshabilitar subagentes específicos](#disable-specific-subagents).86* Para bloquear un tipo integrado específico, agréguelo a `permissions.deny` como se muestra en [Deshabilitar subagentes específicos](#disable-specific-subagents).

87* Para evitar que Claude delegue a cualquier subagente, deniegue la herramienta `Agent` en sí con [`permissions.deny`](/es/permissions#tool-specific-permission-rules).87* Para evitar que Claude delegue a cualquier subagente, deniegue la herramienta `Agent` en sí con [`permissions.deny`](/docs/es/permissions#tool-specific-permission-rules).

88* {/* min-version: 2.1.198 */}Para eliminar solo los subagentes integrados `Explore` y `Plan`, establezca [`CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS=1`](/es/env-vars). Claude lee y explora archivos directamente en lugar de delegarlos. Requiere Claude Code v2.1.198 o posterior.88* Para eliminar solo los subagentes integrados `Explore` y `Plan`, establezca [`CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS=1`](/docs/es/env-vars). Claude lee y explora archivos directamente en lugar de delegarlos. Requiere Claude Code v2.1.198 o posterior.

89* En [modo no interactivo](/es/headless) y el [Agent SDK](/es/agent-sdk/overview), establezca [`CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS=1`](/es/env-vars) para eliminar todos los tipos integrados y proporcionar solo los suyos.89* En [modo no interactivo](/docs/es/headless) y el [Agent SDK](/docs/es/agent-sdk/overview), establezca [`CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS=1`](/docs/es/env-vars) para eliminar todos los tipos integrados y proporcionar solo los suyos.

90 90 

91Más allá de estos subagentes integrados, puede crear los suyos propios con mensajes personalizados, restricciones de herramientas, modos de permisos, hooks y skills. Las siguientes secciones muestran cómo comenzar y personalizar subagentes.91Más allá de estos subagentes integrados, puede crear los suyos propios con mensajes personalizados, restricciones de herramientas, modos de permisos, hooks y skills. Las siguientes secciones muestran cómo comenzar y personalizar subagentes.

92 92 


96 96 

97Los subagentes son archivos Markdown con frontmatter YAML. Para crear uno, pida a Claude que lo escriba por usted, o [escriba el archivo usted mismo](#write-subagent-files).97Los subagentes son archivos Markdown con frontmatter YAML. Para crear uno, pida a Claude que lo escriba por usted, o [escriba el archivo usted mismo](#write-subagent-files).

98 98 

99{/* min-version: 2.1.198 */}A partir de v2.1.198, el comando `/agents` ya no abre el asistente de creación interactivo; ejecutarlo imprime un recordatorio para pedir a Claude o editar `.claude/agents/` directamente. Los archivos de subagentes, los campos de frontmatter y las ubicaciones `.claude/agents/` y `~/.claude/agents/` no cambian; solo se elimina el asistente de terminal.99A partir de v2.1.198, el comando `/agents` ya no abre el asistente de creación interactivo; ejecutarlo imprime un recordatorio para pedir a Claude o editar `.claude/agents/` directamente. Los archivos de subagentes, los campos de frontmatter y las ubicaciones `.claude/agents/` y `~/.claude/agents/` no cambian; solo se elimina el asistente de terminal.

100 100 

101Este tutorial crea un subagente a nivel de usuario que revisa código y sugiere mejoras.101Este tutorial crea un subagente a nivel de usuario que revisa código y sugiere mejoras.

102 102 


150También puede escribir archivos de subagentes a mano, definirlos mediante banderas CLI, o distribuirlos a través de plugins. Las siguientes secciones cubren todas las opciones de configuración.150También puede escribir archivos de subagentes a mano, definirlos mediante banderas CLI, o distribuirlos a través de plugins. Las siguientes secciones cubren todas las opciones de configuración.

151 151 

152<Note>152<Note>

153 En Claude Code v2.1.197 y anteriores, `/agents` abre un asistente interactivo con una pestaña **Running** que enumera los subagentes activos y una pestaña **Library** para crearlos, editarlos y eliminarlos. {/* max-version: 2.1.197 */}153 En Claude Code v2.1.197 y anteriores, `/agents` abre un asistente interactivo con una pestaña **Running** que enumera los subagentes activos y una pestaña **Library** para crearlos, editarlos y eliminarlos.&#x20;

154</Note>154</Note>

155 155 

156<h2 id="configure-subagents">156<h2 id="configure-subagents">


167 167 

168| Ubicación | Alcance | Prioridad | Cómo crear |168| Ubicación | Alcance | Prioridad | Cómo crear |

169| :------------------------------ | :------------------------------ | :----------- | :------------------------------------------------------------------ |169| :------------------------------ | :------------------------------ | :----------- | :------------------------------------------------------------------ |

170| Configuración administrada | Toda la organización | 1 (más alta) | Implementado a través de [configuración administrada](/es/settings) |170| Configuración administrada | Toda la organización | 1 (más alta) | Implementado a través de [configuración administrada](/docs/es/settings) |

171| Bandera CLI `--agents` | Sesión actual | 2 | Pasar JSON al lanzar Claude Code |171| Bandera CLI `--agents` | Sesión actual | 2 | Pasar JSON al lanzar Claude Code |

172| `.claude/agents/` | Proyecto actual | 3 | Pedir a Claude, o crear el archivo manualmente |172| `.claude/agents/` | Proyecto actual | 3 | Pedir a Claude, o crear el archivo manualmente |

173| `~/.claude/agents/` | Todos sus proyectos | 4 | Pedir a Claude, o crear el archivo manualmente |173| `~/.claude/agents/` | Todos sus proyectos | 4 | Pedir a Claude, o crear el archivo manualmente |

174| Directorio `agents/` del plugin | Donde el plugin está habilitado | 5 (más baja) | Instalado con [plugins](/es/plugins) |174| Directorio `agents/` del plugin | Donde el plugin está habilitado | 5 (más baja) | Instalado con [plugins](/docs/es/plugins) |

175 175 

176**Los subagentes de proyecto** (`.claude/agents/`) son ideales para subagentes específicos de una base de código. Verifíquelos en control de versiones para que su equipo pueda usarlos y mejorarlos colaborativamente.176**Los subagentes de proyecto** (`.claude/agents/`) son ideales para subagentes específicos de una base de código. Verifíquelos en control de versiones para que su equipo pueda usarlos y mejorarlos colaborativamente.

177 177 

178Los subagentes de proyecto se descubren caminando hacia arriba desde el directorio de trabajo actual, por lo que cada `.claude/agents/` entre allí y la raíz del repositorio se escanea. {/* min-version: 2.1.178 */}A partir de v2.1.178, cuando más de uno de estos directorios anidados define el mismo `name`, Claude Code usa la definición más cercana al directorio de trabajo.178Los subagentes de proyecto se descubren caminando hacia arriba desde el directorio de trabajo actual, por lo que cada `.claude/agents/` entre allí y la raíz del repositorio se escanea. A partir de v2.1.178, cuando más de uno de estos directorios anidados define el mismo `name`, Claude Code usa la definición más cercana al directorio de trabajo.

179 179 

180Los directorios agregados con `--add-dir` también se escanean: una carpeta `.claude/agents/` dentro de un directorio agregado se carga junto con subagentes de proyecto. Consulte [Directorios adicionales](/es/permissions#additional-directories-grant-file-access-not-configuration) para ver qué otros tipos de configuración se cargan desde `--add-dir`. Para compartir subagentes entre proyectos sin `--add-dir`, use `~/.claude/agents/` o un [plugin](/es/plugins).180Los directorios agregados con `--add-dir` también se escanean: una carpeta `.claude/agents/` dentro de un directorio agregado se carga junto con subagentes de proyecto. Consulte [Directorios adicionales](/docs/es/permissions#additional-directories-grant-file-access-not-configuration) para ver qué otros tipos de configuración se cargan desde `--add-dir`. Para compartir subagentes entre proyectos sin `--add-dir`, use `~/.claude/agents/` o un [plugin](/docs/es/plugins).

181 181 

182**Los subagentes de usuario** (`~/.claude/agents/`) son subagentes personales disponibles en todos sus proyectos.182**Los subagentes de usuario** (`~/.claude/agents/`) son subagentes personales disponibles en todos sus proyectos.

183 183 

184Claude Code escanea `.claude/agents/` y `~/.claude/agents/` recursivamente, por lo que puede organizar definiciones en subcarpetas como `agents/review/` o `agents/research/`. La ruta del subdirectorio no afecta cómo se identifica o invoca un subagente, porque la identidad proviene solo del campo `name` del frontmatter.184Claude Code escanea `.claude/agents/` y `~/.claude/agents/` recursivamente, por lo que puede organizar definiciones en subcarpetas como `agents/review/` o `agents/research/`. La ruta del subdirectorio no afecta cómo se identifica o invoca un subagente, porque la identidad proviene solo del campo `name` del frontmatter.

185 185 

186Mantenga los valores de `name` únicos en todo el árbol: si dos archivos bajo el mismo directorio `.claude/agents/`, incluyendo sus subcarpetas, declaran el mismo nombre, Claude Code carga solo uno de ellos, elegido por orden de lectura del sistema de archivos en lugar de una precedencia documentada. En directorios de proyecto anidados, la definición más cercana al directorio de trabajo gana, como se describe arriba. {/* min-version: 2.1.205 */}El chequeo de configuración [`/doctor`](/es/commands#all-commands) reporta archivos en el mismo directorio que comparten un nombre y propone renombrar o eliminar todos excepto uno. Antes de v2.1.205, `/doctor` abría una pantalla de diagnósticos que listaba duplicados y mostraba qué definición estaba activa.186Mantenga los valores de `name` únicos en todo el árbol: si dos archivos bajo el mismo directorio `.claude/agents/`, incluyendo sus subcarpetas, declaran el mismo nombre, Claude Code carga solo uno de ellos, elegido por orden de lectura del sistema de archivos en lugar de una precedencia documentada. En directorios de proyecto anidados, la definición más cercana al directorio de trabajo gana, como se describe arriba. El chequeo de configuración [`/doctor`](/docs/es/commands#all-commands) reporta archivos en el mismo directorio que comparten un nombre y propone renombrar o eliminar todos excepto uno. Antes de v2.1.205, `/doctor` abría una pantalla de diagnósticos que listaba duplicados y mostraba qué definición estaba activa.

187 187 

188Los directorios `agents/` de plugins también se escanean recursivamente. A diferencia de los alcances de proyecto y usuario, una subcarpeta dentro del directorio `agents/` de un plugin se convierte en parte del [identificador con alcance](#invoke-subagents-explicitly): un archivo en `agents/review/security.md` en el plugin `my-plugin` se registra como `my-plugin:review:security`.188Los directorios `agents/` de plugins también se escanean recursivamente. A diferencia de los alcances de proyecto y usuario, una subcarpeta dentro del directorio `agents/` de un plugin se convierte en parte del [identificador con alcance](#invoke-subagents-explicitly): un archivo en `agents/review/security.md` en el plugin `my-plugin` se registra como `my-plugin:review:security`.

189 189 


229 229 

230La bandera `--agents` acepta JSON con los mismos campos de [frontmatter](#supported-frontmatter-fields) que los subagentes basados en archivos: `description`, `prompt`, `tools`, `disallowedTools`, `model`, `permissionMode`, `mcpServers`, `hooks`, `maxTurns`, `skills`, `initialPrompt`, `memory`, `effort`, `background`, `isolation` y `color`. Use `prompt` para el mensaje del sistema, equivalente al cuerpo markdown en subagentes basados en archivos.230La bandera `--agents` acepta JSON con los mismos campos de [frontmatter](#supported-frontmatter-fields) que los subagentes basados en archivos: `description`, `prompt`, `tools`, `disallowedTools`, `model`, `permissionMode`, `mcpServers`, `hooks`, `maxTurns`, `skills`, `initialPrompt`, `memory`, `effort`, `background`, `isolation` y `color`. Use `prompt` para el mensaje del sistema, equivalente al cuerpo markdown en subagentes basados en archivos.

231 231 

232**Los subagentes administrados** son implementados por administradores de la organización. Coloque archivos markdown en `.claude/agents/` dentro del [directorio de configuración administrada](/es/settings#settings-files), usando el mismo formato de frontmatter que los subagentes de proyecto y usuario. Las definiciones administradas tienen precedencia sobre los subagentes de proyecto y usuario con el mismo nombre.232**Los subagentes administrados** son implementados por administradores de la organización. Coloque archivos markdown en `.claude/agents/` dentro del [directorio de configuración administrada](/docs/es/settings#settings-files), usando el mismo formato de frontmatter que los subagentes de proyecto y usuario. Las definiciones administradas tienen precedencia sobre los subagentes de proyecto y usuario con el mismo nombre.

233 233 

234**Los subagentes de plugin** provienen de [plugins](/es/plugins) que ha instalado. Se cargan junto a sus subagentes personalizados y aparecen en la lista de @-mention bajo su nombre con alcance. Consulte la [referencia de componentes de plugin](/es/plugins-reference#agents) para obtener detalles sobre la creación de subagentes de plugin.234**Los subagentes de plugin** provienen de [plugins](/docs/es/plugins) que ha instalado. Se cargan junto a sus subagentes personalizados y aparecen en la lista de @-mention bajo su nombre con alcance. Consulte la [referencia de componentes de plugin](/docs/es/plugins-reference#agents) para obtener detalles sobre la creación de subagentes de plugin.

235 235 

236<Note>236<Note>

237 Por razones de seguridad, los subagentes de plugin no soportan los campos de frontmatter `hooks`, `mcpServers`, o `permissionMode`. Estos campos se ignoran al cargar agentes desde un plugin. Si los necesita, copie el archivo del agente en `.claude/agents/` o `~/.claude/agents/`. También puede agregar reglas a [`permissions.allow`](/es/settings#permission-settings) en `settings.json` o `settings.local.json`, pero estas reglas se aplican a toda la sesión, no solo al subagente del plugin.237 Por razones de seguridad, los subagentes de plugin no soportan los campos de frontmatter `hooks`, `mcpServers`, o `permissionMode`. Estos campos se ignoran al cargar agentes desde un plugin. Si los necesita, copie el archivo del agente en `.claude/agents/` o `~/.claude/agents/`. También puede agregar reglas a [`permissions.allow`](/docs/es/settings#permission-settings) en `settings.json` o `settings.local.json`, pero estas reglas se aplican a toda la sesión, no solo al subagente del plugin.

238</Note>238</Note>

239 239 

240Las definiciones de subagentes de cualquiera de estos alcances también están disponibles para [equipos de agentes](/es/agent-teams#use-subagent-definitions-for-teammates): al generar un compañero de equipo, puede hacer referencia a un tipo de subagente y el compañero hereda sus `tools` y `model`, con el cuerpo de la definición anexado al mensaje del sistema del compañero como instrucciones adicionales. Consulte [equipos de agentes](/es/agent-teams#use-subagent-definitions-for-teammates) para ver qué campos de frontmatter se aplican en esa ruta.240Las definiciones de subagentes de cualquiera de estos alcances también están disponibles para [equipos de agentes](/docs/es/agent-teams#use-subagent-definitions-for-teammates): al generar un compañero de equipo, puede hacer referencia a un tipo de subagente y el compañero hereda sus `tools` y `model`, con el cuerpo de la definición anexado al mensaje del sistema del compañero como instrucciones adicionales. Consulte [equipos de agentes](/docs/es/agent-teams#use-subagent-definitions-for-teammates) para ver qué campos de frontmatter se aplican en esa ruta.

241 241 

242<h3 id="write-subagent-files">242<h3 id="write-subagent-files">

243 Escribir archivos de subagentes243 Escribir archivos de subagentes


268 268 

269El frontmatter define los metadatos y la configuración del subagente. El cuerpo se convierte en el mensaje del sistema que guía el comportamiento del subagente. Los subagentes reciben solo este mensaje del sistema más detalles básicos del entorno como el directorio de trabajo, no el mensaje del sistema completo de Claude Code.269El frontmatter define los metadatos y la configuración del subagente. El cuerpo se convierte en el mensaje del sistema que guía el comportamiento del subagente. Los subagentes reciben solo este mensaje del sistema más detalles básicos del entorno como el directorio de trabajo, no el mensaje del sistema completo de Claude Code.

270 270 

271En [modo no interactivo](/es/headless), la bandera [`--append-subagent-system-prompt`](/es/cli-reference#cli-flags) añade el texto que proporciona al final del mensaje del sistema de cada subagente, incluyendo subagentes anidados. Requiere Claude Code v2.1.205 o posterior.271En [modo no interactivo](/docs/es/headless), la bandera [`--append-subagent-system-prompt`](/docs/es/cli-reference#cli-flags) añade el texto que proporciona al final del mensaje del sistema de cada subagente, incluyendo subagentes anidados. Requiere Claude Code v2.1.205 o posterior.

272 272 

273Un subagente comienza en el directorio de trabajo actual de la conversación principal. Dentro de un subagente, los comandos `cd` no persisten entre llamadas de herramientas Bash o PowerShell y no afectan el directorio de trabajo de la conversación principal. Para dar al subagente una copia aislada del repositorio en su lugar, establezca [`isolation: worktree`](#supported-frontmatter-fields).273Un subagente comienza en el directorio de trabajo actual de la conversación principal. Dentro de un subagente, los comandos `cd` no persisten entre llamadas de herramientas Bash o PowerShell y no afectan el directorio de trabajo de la conversación principal. Para dar al subagente una copia aislada del repositorio en su lugar, establezca [`isolation: worktree`](#supported-frontmatter-fields).

274 274 

275{/* min-version: 2.1.203 */}Un subagente con `isolation: worktree` ejecuta sus comandos Bash y PowerShell dentro de su worktree. Un comando cuyo directorio de trabajo se resuelve a su checkout principal en su lugar, por ejemplo porque el directorio worktree fue eliminado mientras el subagente estaba ejecutándose, falla con un error. Antes de v2.1.203, tal comando podría ejecutarse en el checkout principal.275Un subagente con `isolation: worktree` ejecuta sus comandos Bash y PowerShell dentro de su worktree. Un comando cuyo directorio de trabajo se resuelve a su checkout principal en su lugar, por ejemplo porque el directorio worktree fue eliminado mientras el subagente estaba ejecutándose, falla con un error. Antes de v2.1.203, tal comando podría ejecutarse en el checkout principal.

276 276 

277<h4 id="supported-frontmatter-fields">277<h4 id="supported-frontmatter-fields">

278 Campos de frontmatter soportados278 Campos de frontmatter soportados


282 282 

283| Campo | Requerido | Descripción |283| Campo | Requerido | Descripción |

284| :---------------- | :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |284| :---------------- | :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

285| `name` | Sí | Identificador único usando letras minúsculas y guiones. [Hooks](/es/hooks#subagentstart) reciben este valor como `agent_type`. El nombre del archivo no tiene que coincidir |285| `name` | Sí | Identificador único usando letras minúsculas y guiones. [Hooks](/docs/es/hooks#subagentstart) reciben este valor como `agent_type`. El nombre del archivo no tiene que coincidir |

286| `description` | Sí | Cuándo Claude debe delegar en este subagente |286| `description` | Sí | Cuándo Claude debe delegar en este subagente |

287| `tools` | No | [Herramientas](#available-tools) que el subagente puede usar. Hereda todas las herramientas si se omite. Si ninguna entrada en la lista se resuelve a una herramienta, el subagente falla al lanzarse con un error nombrando las entradas. Para precargar Skills en el contexto, use el campo `skills` en lugar de listar `Skill` aquí |287| `tools` | No | [Herramientas](#available-tools) que el subagente puede usar. Hereda todas las herramientas si se omite. Si ninguna entrada en la lista se resuelve a una herramienta, el subagente falla al lanzarse con un error nombrando las entradas. Para precargar Skills en el contexto, use el campo `skills` en lugar de listar `Skill` aquí |

288| `disallowedTools` | No | Herramientas a denegar, eliminadas de la lista heredada o especificada |288| `disallowedTools` | No | Herramientas a denegar, eliminadas de la lista heredada o especificada |

289| `model` | No | [Modelo](#choose-a-model) a usar: `sonnet`, `opus`, `haiku`, `fable`, un ID de modelo completo (por ejemplo, `claude-opus-4-8`), o `inherit`. Por defecto es `inherit` |289| `model` | No | [Modelo](#choose-a-model) a usar: `sonnet`, `opus`, `haiku`, `fable`, un ID de modelo completo (por ejemplo, `claude-opus-4-8`), o `inherit`. Por defecto es `inherit` |

290| `permissionMode` | No | [Modo de permiso](#permission-modes): `default`, `acceptEdits`, `auto`, `dontAsk`, `bypassPermissions`, `plan`, o {/* min-version: 2.1.200 */}`manual` como alias para `default`. El alias `manual` requiere Claude Code v2.1.200 o posterior. Se ignora para [subagentes de plugin](#choose-the-subagent-scope) |290| `permissionMode` | No | [Modo de permiso](#permission-modes): `default`, `acceptEdits`, `auto`, `dontAsk`, `bypassPermissions`, `plan`, o `manual` como alias para `default`. El alias `manual` requiere Claude Code v2.1.200 o posterior. Se ignora para [subagentes de plugin](#choose-the-subagent-scope) |

291| `maxTurns` | No | Número máximo de turnos de agente antes de que el subagente se detenga |291| `maxTurns` | No | Número máximo de turnos de agente antes de que el subagente se detenga |

292| `skills` | No | [Skills](/es/skills) a precargar en el contexto del subagente al inicio. El contenido completo de la skill se inyecta, no solo la descripción. Los subagentes aún pueden invocar skills de proyecto, usuario y plugin no listadas a través de la herramienta Skill |292| `skills` | No | [Skills](/docs/es/skills) a precargar en el contexto del subagente al inicio. El contenido completo de la skill se inyecta, no solo la descripción. Los subagentes aún pueden invocar skills de proyecto, usuario y plugin no listadas a través de la herramienta Skill |

293| `mcpServers` | No | [Servidores MCP](/es/mcp) disponibles para este subagente. Cada entrada es un nombre de servidor que hace referencia a un servidor ya configurado (por ejemplo, `"slack"`) o una definición en línea con el nombre del servidor como clave y una [configuración completa del servidor MCP](/es/mcp#installing-mcp-servers) como valor. Se ignora para [subagentes de plugin](#choose-the-subagent-scope) |293| `mcpServers` | No | [Servidores MCP](/docs/es/mcp) disponibles para este subagente. Cada entrada es un nombre de servidor que hace referencia a un servidor ya configurado (por ejemplo, `"slack"`) o una definición en línea con el nombre del servidor como clave y una [configuración completa del servidor MCP](/docs/es/mcp#installing-mcp-servers) como valor. Se ignora para [subagentes de plugin](#choose-the-subagent-scope) |

294| `hooks` | No | [Hooks de ciclo de vida](#define-hooks-for-subagents) limitados a este subagente. Se ignora para [subagentes de plugin](#choose-the-subagent-scope) |294| `hooks` | No | [Hooks de ciclo de vida](#define-hooks-for-subagents) limitados a este subagente. Se ignora para [subagentes de plugin](#choose-the-subagent-scope) |

295| `memory` | No | [Alcance de memoria persistente](#enable-persistent-memory): `user`, `project`, o `local`. Habilita aprendizaje entre sesiones |295| `memory` | No | [Alcance de memoria persistente](#enable-persistent-memory): `user`, `project`, o `local`. Habilita aprendizaje entre sesiones |

296| `background` | No | Establecer en `true` para ejecutar siempre este subagente como una [tarea de fondo](#run-subagents-in-foreground-or-background), incluso cuando Claude necesita su resultado de inmediato. Cuando no se establece, Claude elige, y {/* min-version: 2.1.198 */}a partir de v2.1.198 ejecuta subagentes en segundo plano por defecto |296| `background` | No | Establecer en `true` para ejecutar siempre este subagente como una [tarea de fondo](#run-subagents-in-foreground-or-background), incluso cuando Claude necesita su resultado de inmediato. Cuando no se establece, Claude elige, y a partir de v2.1.198 ejecuta subagentes en segundo plano por defecto |

297| `effort` | No | Nivel de esfuerzo cuando este subagente está activo. Anula el nivel de esfuerzo de la sesión. Por defecto: hereda de la sesión. Opciones: `low`, `medium`, `high`, `xhigh`, `max`; los niveles disponibles dependen del modelo |297| `effort` | No | Nivel de esfuerzo cuando este subagente está activo. Anula el nivel de esfuerzo de la sesión. Por defecto: hereda de la sesión. Opciones: `low`, `medium`, `high`, `xhigh`, `max`; los niveles disponibles dependen del modelo |

298| `isolation` | No | Establecer en `worktree` para ejecutar el subagente en un [git worktree](/es/worktrees) temporal, dándole una copia aislada del repositorio ramificada por defecto desde su [rama predeterminada](/es/worktrees#choose-the-base-branch) en lugar del `HEAD` de la sesión principal. El worktree se limpia automáticamente si el subagente no realiza cambios |298| `isolation` | No | Establecer en `worktree` para ejecutar el subagente en un [git worktree](/docs/es/worktrees) temporal, dándole una copia aislada del repositorio ramificada por defecto desde su [rama predeterminada](/docs/es/worktrees#choose-the-base-branch) en lugar del `HEAD` de la sesión principal. El worktree se limpia automáticamente si el subagente no realiza cambios |

299| `color` | No | Color de visualización para el subagente en la lista de tareas y transcripción. Acepta `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, o `cyan` |299| `color` | No | Color de visualización para el subagente en la lista de tareas y transcripción. Acepta `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, o `cyan` |

300| `initialPrompt` | No | Se envía automáticamente como el primer turno de usuario cuando este agente se ejecuta como el agente de sesión principal (a través de `--agent` o la configuración `agent`). Se procesan [comandos](/es/commands) y [skills](/es/skills). Se antepone a cualquier mensaje proporcionado por el usuario |300| `initialPrompt` | No | Se envía automáticamente como el primer turno de usuario cuando este agente se ejecuta como el agente de sesión principal (a través de `--agent` o la configuración `agent`). Se procesan [comandos](/docs/es/commands) y [skills](/docs/es/skills). Se antepone a cualquier mensaje proporcionado por el usuario |

301 301 

302<h3 id="choose-a-model">302<h3 id="choose-a-model">

303 Elegir un modelo303 Elegir un modelo

304</h3>304</h3>

305 305 

306El campo `model` controla qué [modelo de IA](/es/model-config) usa el subagente:306El campo `model` controla qué [modelo de IA](/docs/es/model-config) usa el subagente:

307 307 

308* **Alias de modelo**: Use uno de los alias disponibles: `sonnet`, `opus`, `haiku`, o `fable`308* **Alias de modelo**: Use uno de los alias disponibles: `sonnet`, `opus`, `haiku`, o `fable`

309* **ID de modelo completo**: Use un ID de modelo completo como `claude-opus-4-8` o `claude-sonnet-5`. Acepta los mismos valores que la bandera `--model`309* **ID de modelo completo**: Use un ID de modelo completo como `claude-opus-4-8` o `claude-sonnet-5`. Acepta los mismos valores que la bandera `--model`


312 312 

313Cuando Claude invoca un subagente, también puede pasar un parámetro `model` para esa invocación específica. Claude Code resuelve el modelo del subagente en este orden:313Cuando Claude invoca un subagente, también puede pasar un parámetro `model` para esa invocación específica. Claude Code resuelve el modelo del subagente en este orden:

314 314 

3151. La variable de entorno [`CLAUDE_CODE_SUBAGENT_MODEL`](/es/model-config#environment-variables), cuando está establecida en un alias de modelo o ID de modelo3151. La variable de entorno [`CLAUDE_CODE_SUBAGENT_MODEL`](/docs/es/model-config#environment-variables), cuando está establecida en un alias de modelo o ID de modelo

3162. El parámetro `model` por invocación3162. El parámetro `model` por invocación

3173. El frontmatter `model` de la definición del subagente3173. El frontmatter `model` de la definición del subagente

3184. El modelo de la conversación principal3184. El modelo de la conversación principal

319 319 

320{/* min-version: 2.1.196 */}A partir de v2.1.196, establecer `CLAUDE_CODE_SUBAGENT_MODEL` en `inherit` es lo mismo que dejarlo sin establecer: la resolución continúa con el parámetro `model` por invocación, luego el frontmatter. En versiones anteriores, `inherit` forzaba subagentes al modelo de la conversación principal e ignoraba ambas fuentes.320A partir de v2.1.196, establecer `CLAUDE_CODE_SUBAGENT_MODEL` en `inherit` es lo mismo que dejarlo sin establecer: la resolución continúa con el parámetro `model` por invocación, luego el frontmatter. En versiones anteriores, `inherit` forzaba subagentes al modelo de la conversación principal e ignoraba ambas fuentes.

321 321 

322Claude Code verifica la variable de entorno, el parámetro por invocación y los valores de frontmatter contra la lista de permitidos [`availableModels`](/es/model-config#restrict-model-selection) de su organización. Un valor que se resuelve a un modelo excluido no se usa y el subagente se ejecuta en el modelo heredado en su lugar.322Claude Code verifica la variable de entorno, el parámetro por invocación y los valores de frontmatter contra la lista de permitidos [`availableModels`](/docs/es/model-config#restrict-model-selection) de su organización. Un valor que se resuelve a un modelo excluido no se usa y el subagente se ejecuta en el modelo heredado en su lugar.

323 323 

324{/* min-version: 2.1.198 */}A partir de v2.1.198, los subagentes también heredan la configuración de [pensamiento extendido](/es/model-config#extended-thinking) de la conversación principal: si el pensamiento está activado en su sesión, está activado para el subagente, y si está desactivado, permanece desactivado. No hay una configuración de pensamiento por subagente. Antes de v2.1.198, los subagentes se ejecutaban con pensamiento extendido deshabilitado independientemente de la configuración de la conversación principal.324A partir de v2.1.198, los subagentes también heredan la configuración de [pensamiento extendido](/docs/es/model-config#extended-thinking) de la conversación principal: si el pensamiento está activado en su sesión, está activado para el subagente, y si está desactivado, permanece desactivado. No hay una configuración de pensamiento por subagente. Antes de v2.1.198, los subagentes se ejecutaban con pensamiento extendido deshabilitado independientemente de la configuración de la conversación principal.

325 325 

326<h3 id="control-subagent-capabilities">326<h3 id="control-subagent-capabilities">

327 Controlar capacidades de subagentes327 Controlar capacidades de subagentes


333 Herramientas disponibles333 Herramientas disponibles

334</h4>334</h4>

335 335 

336Los subagentes heredan las [herramientas internas](/es/tools-reference) y herramientas MCP disponibles en la conversación principal por defecto. Las siguientes herramientas dependen de la interfaz de usuario o estado de sesión de la conversación principal y no están disponibles para subagentes, incluso cuando se enumeran en el campo `tools`:336Los subagentes heredan las [herramientas internas](/docs/es/tools-reference) y herramientas MCP disponibles en la conversación principal por defecto. Las siguientes herramientas dependen de la interfaz de usuario o estado de sesión de la conversación principal y no están disponibles para subagentes, incluso cuando se enumeran en el campo `tools`:

337 337 

338* `AskUserQuestion`338* `AskUserQuestion`

339* `EnterPlanMode`339* `EnterPlanMode`


363 363 

364Si ambos se establecen, `disallowedTools` se aplica primero, luego `tools` se resuelve contra el grupo restante. Una herramienta listada en ambos se elimina.364Si ambos se establecen, `disallowedTools` se aplica primero, luego `tools` se resuelve contra el grupo restante. Una herramienta listada en ambos se elimina.

365 365 

366Cuando nada en la lista `tools` se resuelve a una herramienta, por ejemplo porque cada entrada está mal escrita o nombra una herramienta que no está disponible para subagentes, Claude Code se niega a lanzar el subagente y la herramienta Agent devuelve un error nombrando las entradas no resueltas. {/* min-version: 2.1.208 */}Antes de v2.1.208, ese subagente se lanzaba sin herramientas y podría devolver un resultado vacío o confuso.366Cuando nada en la lista `tools` se resuelve a una herramienta, por ejemplo porque cada entrada está mal escrita o nombra una herramienta que no está disponible para subagentes, Claude Code se niega a lanzar el subagente y la herramienta Agent devuelve un error nombrando las entradas no resueltas. Antes de v2.1.208, ese subagente se lanzaba sin herramientas y podría devolver un resultado vacío o confuso.

367 367 

368Ambos campos aceptan patrones a nivel de servidor MCP además de nombres de herramientas exactos: `mcp__<server>` o `mcp__<server>__*` otorga o elimina todas las herramientas del servidor nombrado. En `disallowedTools`, `mcp__*` también elimina todas las herramientas MCP de cualquier servidor. Este ejemplo elimina todas las herramientas del servidor MCP `github` mientras mantiene herramientas de otros servidores y todas las herramientas integradas:368Ambos campos aceptan patrones a nivel de servidor MCP además de nombres de herramientas exactos: `mcp__<server>` o `mcp__<server>__*` otorga o elimina todas las herramientas del servidor nombrado. En `disallowedTools`, `mcp__*` también elimina todas las herramientas MCP de cualquier servidor. Este ejemplo elimina todas las herramientas del servidor MCP `github` mientras mantiene herramientas de otros servidores y todas las herramientas integradas:

369 369 


407 Alcance de servidores MCP a un subagente407 Alcance de servidores MCP a un subagente

408</h4>408</h4>

409 409 

410Use el campo `mcpServers` para dar a un subagente acceso a servidores [MCP](/es/mcp) que no están disponibles en la conversación principal. Los servidores en línea definidos aquí se conectan cuando el subagente comienza y se desconectan cuando termina. Las referencias de cadena comparten la conexión de la sesión principal.410Use el campo `mcpServers` para dar a un subagente acceso a servidores [MCP](/docs/es/mcp) que no están disponibles en la conversación principal. Los servidores en línea definidos aquí se conectan cuando el subagente comienza y se desconectan cuando termina. Las referencias de cadena comparten la conexión de la sesión principal.

411 411 

412<Note>412<Note>

413 El campo `mcpServers` se aplica en ambos contextos donde un archivo de agente puede ejecutarse:413 El campo `mcpServers` se aplica en ambos contextos donde un archivo de agente puede ejecutarse:


415 * Como un subagente, generado a través de la herramienta Agent o una @-mención415 * Como un subagente, generado a través de la herramienta Agent o una @-mención

416 * Como la sesión principal, lanzada con [`--agent`](#invoke-subagents-explicitly) o la configuración `agent`416 * Como la sesión principal, lanzada con [`--agent`](#invoke-subagents-explicitly) o la configuración `agent`

417 417 

418 Cuando el agente es la sesión principal, las definiciones de servidor en línea se conectan al inicio junto con servidores de [`.mcp.json`](/es/mcp) y archivos de configuración.418 Cuando el agente es la sesión principal, las definiciones de servidor en línea se conectan al inicio junto con servidores de [`.mcp.json`](/docs/es/mcp) y archivos de configuración.

419</Note>419</Note>

420 420 

421Cada entrada en la lista es una definición de servidor en línea o una cadena que hace referencia a un servidor MCP ya configurado en su sesión:421Cada entrada en la lista es una definición de servidor en línea o una cadena que hace referencia a un servidor MCP ya configurado en su sesión:


443 443 

444A partir de v2.1.153, las restricciones de MCP que se aplican a la sesión principal también cubren servidores declarados en frontmatter de subagentes:444A partir de v2.1.153, las restricciones de MCP que se aplican a la sesión principal también cubren servidores declarados en frontmatter de subagentes:

445 445 

446* [`--strict-mcp-config`](/es/cli-reference) y [`--bare`](/es/cli-reference)446* [`--strict-mcp-config`](/docs/es/cli-reference) y [`--bare`](/docs/es/cli-reference)

447* [Configuración de MCP administrada empresarial](/es/managed-mcp)447* [Configuración de MCP administrada empresarial](/docs/es/managed-mcp)

448* [Políticas `allowedMcpServers` y `deniedMcpServers`](/es/managed-mcp#policy-based-control-with-allowlists-and-denylists)448* [Políticas `allowedMcpServers` y `deniedMcpServers`](/docs/es/managed-mcp#policy-based-control-with-allowlists-and-denylists)

449 449 

450Cuando uno de estos bloquea un servidor, Claude Code lo omite y muestra una advertencia nombrando los servidores bloqueados.450Cuando uno de estos bloquea un servidor, Claude Code lo omite y muestra una advertencia nombrando los servidores bloqueados.

451 451 


461| :------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |461| :------------------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

462| `default` | Verificación de permiso estándar con solicitudes |462| `default` | Verificación de permiso estándar con solicitudes |

463| `acceptEdits` | Aceptar automáticamente ediciones de archivo y comandos comunes del sistema de archivos para rutas en el directorio de trabajo o `additionalDirectories` |463| `acceptEdits` | Aceptar automáticamente ediciones de archivo y comandos comunes del sistema de archivos para rutas en el directorio de trabajo o `additionalDirectories` |

464| `auto` | [Modo auto](/es/permission-modes#eliminate-prompts-with-auto-mode): un clasificador de IA evalúa cada llamada de herramienta |464| `auto` | [Modo auto](/docs/es/permission-modes#eliminate-prompts-with-auto-mode): un clasificador de IA evalúa cada llamada de herramienta |

465| `dontAsk` | Denegar automáticamente solicitudes de permiso. Las herramientas explícitamente permitidas aún funcionan; `AskUserQuestion`, herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool) se deniegan incluso si las ha permitido |465| `dontAsk` | Denegar automáticamente solicitudes de permiso. Las herramientas explícitamente permitidas aún funcionan; `AskUserQuestion`, herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), y herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool) se deniegan incluso si las ha permitido |

466| `bypassPermissions` | Omitir solicitudes de permiso |466| `bypassPermissions` | Omitir solicitudes de permiso |

467| `plan` | Modo plan (exploración de solo lectura) |467| `plan` | Modo plan (exploración de solo lectura) |

468 468 

469<Warning>469<Warning>

470 Use `bypassPermissions` con cuidado. Omite solicitudes de permiso, permitiendo que el subagente ejecute operaciones sin aprobación, incluyendo escrituras en `.git`, `.config/git`, `.claude`, `.vscode`, `.idea`, `.husky`, `.cargo`, `.devcontainer`, `.yarn` y `.mvn`.470 Use `bypassPermissions` con cuidado. Omite solicitudes de permiso, permitiendo que el subagente ejecute operaciones sin aprobación, incluyendo escrituras en `.git`, `.config/git`, `.claude`, `.vscode`, `.idea`, `.husky`, `.cargo`, `.devcontainer`, `.yarn` y `.mvn`.

471 471 

472 Las reglas explícitas de [`ask`](/es/permissions#manage-permissions), herramientas de conector [que su organización estableció en `ask`](/es/mcp#organization-controls-on-connector-tools), herramientas MCP marcadas [`requiresUserInteraction`](/es/mcp#require-approval-for-a-specific-tool), y eliminaciones de directorio raíz y directorio de inicio como `rm -rf /` aún solicitan confirmación. Consulte [modos de permiso](/es/permission-modes#skip-all-checks-with-bypasspermissions-mode) para detalles.472 Las reglas explícitas de [`ask`](/docs/es/permissions#manage-permissions), herramientas de conector [que su organización estableció en `ask`](/docs/es/mcp#organization-controls-on-connector-tools), herramientas MCP marcadas [`requiresUserInteraction`](/docs/es/mcp#require-approval-for-a-specific-tool), y eliminaciones de directorio raíz y directorio de inicio como `rm -rf /` aún solicitan confirmación. Consulte [modos de permiso](/docs/es/permission-modes#skip-all-checks-with-bypasspermissions-mode) para detalles.

473</Warning>473</Warning>

474 474 

475Si el principal usa `bypassPermissions` o `acceptEdits`, esto tiene precedencia y no puede ser anulado. Si el principal usa [modo auto](/es/permission-modes#eliminate-prompts-with-auto-mode), el subagente hereda modo auto y cualquier `permissionMode` en su frontmatter se ignora: el clasificador evalúa las llamadas de herramientas del subagente con las mismas reglas de bloqueo y permiso que la sesión principal.475Si el principal usa `bypassPermissions` o `acceptEdits`, esto tiene precedencia y no puede ser anulado. Si el principal usa [modo auto](/docs/es/permission-modes#eliminate-prompts-with-auto-mode), el subagente hereda modo auto y cualquier `permissionMode` en su frontmatter se ignora: el clasificador evalúa las llamadas de herramientas del subagente con las mismas reglas de bloqueo y permiso que la sesión principal.

476 476 

477<h4 id="preload-skills-into-subagents">477<h4 id="preload-skills-into-subagents">

478 Precargar skills en subagentes478 Precargar skills en subagentes


494 494 

495El contenido completo de cada skill listada se inyecta en el contexto del subagente al inicio. Este campo controla qué skills se precargan, no qué skills el subagente puede acceder: sin él, el subagente aún puede descubrir e invocar skills de proyecto, usuario y plugin a través de la herramienta Skill durante la ejecución. Para evitar que un subagente invoque skills en absoluto, omita `Skill` de la lista [`tools`](#available-tools) o agréguelo a `disallowedTools`.495El contenido completo de cada skill listada se inyecta en el contexto del subagente al inicio. Este campo controla qué skills se precargan, no qué skills el subagente puede acceder: sin él, el subagente aún puede descubrir e invocar skills de proyecto, usuario y plugin a través de la herramienta Skill durante la ejecución. Para evitar que un subagente invoque skills en absoluto, omita `Skill` de la lista [`tools`](#available-tools) o agréguelo a `disallowedTools`.

496 496 

497No puede precargar skills que establezcan [`disable-model-invocation: true`](/es/skills#control-who-invokes-a-skill), ya que la precarga se extrae del mismo conjunto de skills que Claude puede invocar. Si una skill listada falta o está deshabilitada, Claude Code la omite y registra una advertencia en el registro de depuración.497No puede precargar skills que establezcan [`disable-model-invocation: true`](/docs/es/skills#control-who-invokes-a-skill), ya que la precarga se extrae del mismo conjunto de skills que Claude puede invocar. Si una skill listada falta o está deshabilitada, Claude Code la omite y registra una advertencia en el registro de depuración.

498 498 

499<Note>499<Note>

500 Esto es lo inverso de [ejecutar una skill en un subagente](/es/skills#run-skills-in-a-subagent). Con `skills` en un subagente, el subagente controla el mensaje del sistema y carga contenido de skill. Con `context: fork` en una skill, el contenido de la skill se inyecta en el agente que especifique. Ambos usan el mismo sistema subyacente.500 Esto es lo inverso de [ejecutar una skill en un subagente](/docs/es/skills#run-skills-in-a-subagent). Con `skills` en un subagente, el subagente controla el mensaje del sistema y carga contenido de skill. Con `context: fork` en una skill, el contenido de la skill se inyecta en el agente que especifique. Ambos usan el mismo sistema subyacente.

501</Note>501</Note>

502 502 

503<h4 id="enable-persistent-memory">503<h4 id="enable-persistent-memory">


569---569---

570```570```

571 571 

572Claude Code [pasa la entrada del hook como JSON](/es/hooks#pretooluse-input) a través de stdin a comandos de hook. El script de validación lee este JSON, extrae el comando Bash y [sale con código 2](/es/hooks#exit-code-2-behavior-per-event) para bloquear operaciones de escritura:572Claude Code [pasa la entrada del hook como JSON](/docs/es/hooks#pretooluse-input) a través de stdin a comandos de hook. El script de validación lee este JSON, extrae el comando Bash y [sale con código 2](/docs/es/hooks#exit-code-2-behavior-per-event) para bloquear operaciones de escritura:

573 573 

574```bash theme={null}574```bash theme={null}

575#!/bin/bash575#!/bin/bash


587exit 0587exit 0

588```588```

589 589 

590Consulte [Hook input](/es/hooks#pretooluse-input) para el esquema de entrada completo y [códigos de salida](/es/hooks#exit-code-output) para cómo los códigos de salida afectan el comportamiento. En Windows, escriba scripts de hook en PowerShell y agregue `shell: powershell` a la entrada del hook como se muestra en [ejecutar hooks en PowerShell](/es/hooks#windows-powershell-tool).590Consulte [Hook input](/docs/es/hooks#pretooluse-input) para el esquema de entrada completo y [códigos de salida](/docs/es/hooks#exit-code-output) para cómo los códigos de salida afectan el comportamiento. En Windows, escriba scripts de hook en PowerShell y agregue `shell: powershell` a la entrada del hook como se muestra en [ejecutar hooks en PowerShell](/docs/es/hooks#windows-powershell-tool).

591 591 

592<h4 id="disable-specific-subagents">592<h4 id="disable-specific-subagents">

593 Deshabilitar subagentes específicos593 Deshabilitar subagentes específicos

594</h4>594</h4>

595 595 

596Puede evitar que Claude use subagentes específicos agregándolos a la matriz `deny` en su [configuración](/es/settings#permission-settings). Use el formato `Agent(subagent-name)` donde `subagent-name` coincida con el campo name del subagente.596Puede evitar que Claude use subagentes específicos agregándolos a la matriz `deny` en su [configuración](/docs/es/settings#permission-settings). Use el formato `Agent(subagent-name)` donde `subagent-name` coincida con el campo name del subagente.

597 597 

598```json theme={null}598```json theme={null}

599{599{


609claude --disallowedTools "Agent(Explore)"609claude --disallowedTools "Agent(Explore)"

610```610```

611 611 

612Consulte la [documentación de Permisos](/es/permissions#tool-specific-permission-rules) para más detalles sobre reglas de permisos.612Consulte la [documentación de Permisos](/docs/es/permissions#tool-specific-permission-rules) para más detalles sobre reglas de permisos.

613 613 

614<h3 id="define-hooks-for-subagents">614<h3 id="define-hooks-for-subagents">

615 Definir hooks para subagentes615 Definir hooks para subagentes

616</h3>616</h3>

617 617 

618Los subagentes pueden definir [hooks](/es/hooks) que se ejecutan durante el ciclo de vida del subagente. Hay dos formas de configurar hooks:618Los subagentes pueden definir [hooks](/docs/es/hooks) que se ejecutan durante el ciclo de vida del subagente. Hay dos formas de configurar hooks:

619 619 

620* **En el frontmatter del subagente**: defina hooks que se ejecuten solo mientras ese subagente está activo620* **En el frontmatter del subagente**: defina hooks que se ejecuten solo mientras ese subagente está activo

621* **En `settings.json`**: defina hooks que se ejecuten en la sesión principal cuando los subagentes comienzan o se detienen621* **En `settings.json`**: defina hooks que se ejecuten en la sesión principal cuando los subagentes comienzan o se detienen


627Defina hooks directamente en el archivo markdown del subagente. Estos hooks solo se ejecutan mientras ese subagente específico está activo y se limpian cuando termina.627Defina hooks directamente en el archivo markdown del subagente. Estos hooks solo se ejecutan mientras ese subagente específico está activo y se limpian cuando termina.

628 628 

629<Note>629<Note>

630 Los hooks de frontmatter se disparan cuando el agente se genera como un subagente a través de la herramienta Agent o una @-mención, y cuando el agente se ejecuta como la sesión principal a través de [`--agent`](#invoke-subagents-explicitly) o la configuración `agent`. En el caso de sesión principal, se ejecutan junto con cualquier hook definido en [`settings.json`](/es/hooks).630 Los hooks de frontmatter se disparan cuando el agente se genera como un subagente a través de la herramienta Agent o una @-mención, y cuando el agente se ejecuta como la sesión principal a través de [`--agent`](#invoke-subagents-explicitly) o la configuración `agent`. En el caso de sesión principal, se ejecutan junto con cualquier hook definido en [`settings.json`](/docs/es/hooks).

631</Note>631</Note>

632 632 

633Se soportan todos los [eventos de hook](/es/hooks#hook-events). Los eventos más comunes para subagentes son:633Se soportan todos los [eventos de hook](/docs/es/hooks#hook-events). Los eventos más comunes para subagentes son:

634 634 

635| Evento | Entrada del matcher | Cuándo se dispara |635| Evento | Entrada del matcher | Cuándo se dispara |

636| :------------ | :-------------------- | :------------------------------------------------------------------------------- |636| :------------ | :-------------------- | :------------------------------------------------------------------------------- |


671| `SubagentStart` | Nombre de tipo de agente | Cuando un subagente comienza la ejecución |671| `SubagentStart` | Nombre de tipo de agente | Cuando un subagente comienza la ejecución |

672| `SubagentStop` | Nombre de tipo de agente | Cuando un subagente se completa |672| `SubagentStop` | Nombre de tipo de agente | Cuando un subagente se completa |

673 673 

674Ambos eventos soportan matchers para dirigirse a tipos de agentes específicos por nombre. El valor del matcher es el `name` del frontmatter del agente para subagentes a nivel de proyecto y usuario, o el identificador con alcance de plugin como `my-plugin:db-agent` para [subagentes de plugin](/es/plugins). Un nombre con alcance contiene dos puntos, por lo que se evalúa como una [expresión regular sin anclar](/es/hooks#matcher-patterns); anclarlo con `^` y `$`, como en `^my-plugin:db-agent$`, para coincidir solo con ese agente.674Ambos eventos soportan matchers para dirigirse a tipos de agentes específicos por nombre. El valor del matcher es el `name` del frontmatter del agente para subagentes a nivel de proyecto y usuario, o el identificador con alcance de plugin como `my-plugin:db-agent` para [subagentes de plugin](/docs/es/plugins). Un nombre con alcance contiene dos puntos, por lo que se evalúa como una [expresión regular sin anclar](/docs/es/hooks#matcher-patterns); anclarlo con `^` y `$`, como en `^my-plugin:db-agent$`, para coincidir solo con ese agente.

675 675 

676Este ejemplo ejecuta un script de configuración solo cuando el subagente `db-agent` comienza, y un script de limpieza cuando cualquier subagente se detiene:676Este ejemplo ejecuta un script de configuración solo cuando el subagente `db-agent` comienza, y un script de limpieza cuando cualquier subagente se detiene:

677 677 


699 699 

700Un matcher con guiones como `db-agent` coincide exactamente en Claude Code v2.1.195 o posterior. En versiones anteriores se evalúa como una expresión regular sin anclar y también se dispara para cualquier tipo de agente que lo contenga, como `prod-db-agent`; anclarlo como `^db-agent$` en esas versiones.700Un matcher con guiones como `db-agent` coincide exactamente en Claude Code v2.1.195 o posterior. En versiones anteriores se evalúa como una expresión regular sin anclar y también se dispara para cualquier tipo de agente que lo contenga, como `prod-db-agent`; anclarlo como `^db-agent$` en esas versiones.

701 701 

702Consulte [Hooks](/es/hooks) para el formato de configuración de hook completo.702Consulte [Hooks](/docs/es/hooks) para el formato de configuración de hook completo.

703 703 

704<h2 id="work-with-subagents">704<h2 id="work-with-subagents">

705 Trabajar con subagentes705 Trabajar con subagentes


736 736 

737Su mensaje completo aún va a Claude, que escribe el mensaje de tarea del subagente basado en lo que pidió. El @-mention controla qué subagente Claude invoca, no qué mensaje recibe.737Su mensaje completo aún va a Claude, que escribe el mensaje de tarea del subagente basado en lo que pidió. El @-mention controla qué subagente Claude invoca, no qué mensaje recibe.

738 738 

739Los subagentes proporcionados por un [plugin](/es/plugins) habilitado aparecen en el typeahead bajo su nombre con alcance, como `my-plugin:code-reviewer` o `my-plugin:review:security` cuando el plugin [organiza agentes en subcarpetas](#choose-the-subagent-scope). Los subagentes de fondo nombrados actualmente en ejecución en la sesión también aparecen en el typeahead, mostrando su estado junto al nombre.739Los subagentes proporcionados por un [plugin](/docs/es/plugins) habilitado aparecen en el typeahead bajo su nombre con alcance, como `my-plugin:code-reviewer` o `my-plugin:review:security` cuando el plugin [organiza agentes en subcarpetas](#choose-the-subagent-scope). Los subagentes de fondo nombrados actualmente en ejecución en la sesión también aparecen en el typeahead, mostrando su estado junto al nombre.

740 740 

741Puede también escribir la mención manualmente sin usar el selector: `@agent-<name>` para subagentes locales, o `@agent-` seguido del nombre con alcance para subagentes de plugin, por ejemplo `@agent-my-plugin:code-reviewer`.741Puede también escribir la mención manualmente sin usar el selector: `@agent-<name>` para subagentes locales, o `@agent-` seguido del nombre con alcance para subagentes de plugin, por ejemplo `@agent-my-plugin:code-reviewer`.

742 742 

743**Ejecute toda la sesión como un subagente.** Pase [`--agent <name>`](/es/cli-reference) para iniciar una sesión donde el hilo principal en sí toma el mensaje del sistema del subagente, restricciones de herramientas y modelo:743**Ejecute toda la sesión como un subagente.** Pase [`--agent <name>`](/docs/es/cli-reference) para iniciar una sesión donde el hilo principal en sí toma el mensaje del sistema del subagente, restricciones de herramientas y modelo:

744 744 

745```bash theme={null}745```bash theme={null}

746claude --agent code-reviewer746claude --agent code-reviewer

747```747```

748 748 

749El mensaje del sistema del subagente reemplaza completamente el mensaje del sistema predeterminado de Claude Code, de la misma manera que [`--system-prompt`](/es/cli-reference) lo hace. Los archivos `CLAUDE.md` y la memoria del proyecto aún se cargan a través del flujo de mensajes normal. El nombre del agente aparece como `@<name>` en el encabezado de inicio para que pueda confirmar que está activo.749El mensaje del sistema del subagente reemplaza completamente el mensaje del sistema predeterminado de Claude Code, de la misma manera que [`--system-prompt`](/docs/es/cli-reference) lo hace. Los archivos `CLAUDE.md` y la memoria del proyecto aún se cargan a través del flujo de mensajes normal. El nombre del agente aparece como `@<name>` en el encabezado de inicio para que pueda confirmar que está activo.

750 750 

751Esto funciona con subagentes integrados y personalizados, y la opción persiste cuando reanuda la sesión.751Esto funciona con subagentes integrados y personalizados, y la opción persiste cuando reanuda la sesión.

752 752 


781Los subagentes pueden ejecutarse en primer plano o en fondo:781Los subagentes pueden ejecutarse en primer plano o en fondo:

782 782 

783* **Subagentes en primer plano** bloquean la conversación principal hasta completarse. Las solicitudes de permiso se le pasan a usted a medida que surgen.783* **Subagentes en primer plano** bloquean la conversación principal hasta completarse. Las solicitudes de permiso se le pasan a usted a medida que surgen.

784* **Subagentes en fondo** se ejecutan concurrentemente mientras continúa trabajando. {/* min-version: 2.1.186 */}A partir de v2.1.186, cuando un subagente en fondo alcanza una llamada de herramienta que necesita permiso, la solicitud aparece en su sesión principal y nombra el subagente que está preguntando. Apruebe para permitir que el subagente continúe, o presione Esc para denegar esa llamada de herramienta sin detener el subagente. Antes de v2.1.186, los subagentes en fondo denegaban automáticamente cualquier llamada de herramienta que habría solicitado.784* **Subagentes en fondo** se ejecutan concurrentemente mientras continúa trabajando. A partir de v2.1.186, cuando un subagente en fondo alcanza una llamada de herramienta que necesita permiso, la solicitud aparece en su sesión principal y nombra el subagente que está preguntando. Apruebe para permitir que el subagente continúe, o presione Esc para denegar esa llamada de herramienta sin detener el subagente. Antes de v2.1.186, los subagentes en fondo denegaban automáticamente cualquier llamada de herramienta que habría solicitado.

785 785 

786{/* min-version: 2.1.198 */}A partir de v2.1.198, los subagentes se ejecutan en el fondo de forma predeterminada. Claude ejecuta un subagente en primer plano cuando necesita el resultado antes de continuar. El valor predeterminado cambia dónde se ejecuta un subagente, no qué se le permite hacer: los subagentes en fondo aún muestran cada solicitud de permiso en su sesión principal. Antes de v2.1.198, Claude elegía entre primer plano y fondo basado en la tarea.786A partir de v2.1.198, los subagentes se ejecutan en el fondo de forma predeterminada. Claude ejecuta un subagente en primer plano cuando necesita el resultado antes de continuar. El valor predeterminado cambia dónde se ejecuta un subagente, no qué se le permite hacer: los subagentes en fondo aún muestran cada solicitud de permiso en su sesión principal. Antes de v2.1.198, Claude elegía entre primer plano y fondo basado en la tarea.

787 787 

788También puede dirigir esto usted mismo:788También puede dirigir esto usted mismo:

789 789 

790* Pida a Claude que ejecute una tarea en el fondo o en primer plano790* Pida a Claude que ejecute una tarea en el fondo o en primer plano

791* Presione **Ctrl+B** para poner en fondo una tarea en ejecución791* Presione **Ctrl+B** para poner en fondo una tarea en ejecución

792 792 

793{/* min-version: 2.1.208 */}Un subagente en fondo que se completa permanece listado en [`/tasks`](/es/commands), marcado como hecho y ordenado debajo del trabajo en ejecución, hasta que la sesión limpie su lista de tareas. Su vista de detalle permanece abierta cuando el subagente termina. Los subagentes que fallan o que usted detiene dejan la lista. Antes de v2.1.208, un subagente completado dejaba la lista en el momento en que terminaba y su vista de detalle se cerraba.793Un subagente en fondo que se completa permanece listado en [`/tasks`](/docs/es/commands), marcado como hecho y ordenado debajo del trabajo en ejecución, hasta que la sesión limpie su lista de tareas. Su vista de detalle permanece abierta cuando el subagente termina. Los subagentes que fallan o que usted detiene dejan la lista. Antes de v2.1.208, un subagente completado dejaba la lista en el momento en que terminaba y su vista de detalle se cerraba.

794 794 

795Para deshabilitar toda la funcionalidad de tareas en fondo, establezca la variable de entorno `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` en `1`. Consulte [Variables de entorno](/es/env-vars).795Para deshabilitar toda la funcionalidad de tareas en fondo, establezca la variable de entorno `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` en `1`. Consulte [Variables de entorno](/docs/es/env-vars).

796 796 

797Cuando [`CLAUDE_CODE_FORK_SUBAGENT`](#fork-the-current-conversation) está establecido en `1`, cada generación de subagente se ejecuta en el fondo y el campo frontmatter `background` no tiene efecto, porque el modo fork elimina el parámetro `run_in_background` de la herramienta `Agent`. `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` tiene precedencia sobre el modo fork y mantiene las generaciones de subagentes en primer plano.797Cuando [`CLAUDE_CODE_FORK_SUBAGENT`](#fork-the-current-conversation) está establecido en `1`, cada generación de subagente se ejecuta en el fondo y el campo frontmatter `background` no tiene efecto, porque el modo fork elimina el parámetro `run_in_background` de la herramienta `Agent`. `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` tiene precedencia sobre el modo fork y mantiene las generaciones de subagentes en primer plano.

798 798 


800 Errores de API en subagentes800 Errores de API en subagentes

801</h3>801</h3>

802 802 

803{/* min-version: 2.1.199 */}A partir de v2.1.199, un subagente cuya ejecución termina en un error de API, como un límite de uso o un error de servidor repetido, reporta esa falla de vuelta a Claude en lugar de devolver el texto de error como si fueran los hallazgos del subagente. Lo que Claude recibe depende de dónde se ejecutó el subagente:803A partir de v2.1.199, un subagente cuya ejecución termina en un error de API, como un límite de uso o un error de servidor repetido, reporta esa falla de vuelta a Claude en lugar de devolver el texto de error como si fueran los hallazgos del subagente. Lo que Claude recibe depende de dónde se ejecutó el subagente:

804 804 

805* **Primer plano**: si un límite de velocidad, sobrecarga o error de servidor corta un subagente que ya produjo salida, la herramienta Agent devuelve esa salida parcial con una nota de que el subagente fue cortado y no completó su tarea. {/* min-version: 2.1.200 */}Un subagente que no produjo nada, o cuya única salida fueron llamadas de herramientas, falla con [`Agent terminated early due to an API error`](/es/errors#agent-terminated-early-due-to-an-api-error), seguido del detalle del error. En v2.1.199, un límite de velocidad, sobrecarga o error de servidor que cortó la forma de solo llamadas de herramientas devolvió un resultado parcial vacío que contenía solo la nota de corte en su lugar.805* **Primer plano**: si un límite de velocidad, sobrecarga o error de servidor corta un subagente que ya produjo salida, la herramienta Agent devuelve esa salida parcial con una nota de que el subagente fue cortado y no completó su tarea. Un subagente que no produjo nada, o cuya única salida fueron llamadas de herramientas, falla con [`Agent terminated early due to an API error`](/docs/es/errors#agent-terminated-early-due-to-an-api-error), seguido del detalle del error. En v2.1.199, un límite de velocidad, sobrecarga o error de servidor que cortó la forma de solo llamadas de herramientas devolvió un resultado parcial vacío que contenía solo la nota de corte en su lugar.

806* **Fondo**: el subagente se marca como fallido, y el mensaje que Claude recibe cuando termina nombra el error de API e incluye la última salida del subagente, por lo que el trabajo parcial no se pierde.806* **Fondo**: el subagente se marca como fallido, y el mensaje que Claude recibe cuando termina nombra el error de API e incluye la última salida del subagente, por lo que el trabajo parcial no se pierde.

807 807 

808Una vez que el error de API subyacente se resuelve, pida a Claude que reintente la tarea o [reanude el subagente](#resume-subagents).808Una vez que el error de API subyacente se resuelve, pida a Claude que reintente la tarea o [reanude el subagente](#resume-subagents).


837 Cuando los subagentes se completan, sus resultados regresan a su conversación principal. Ejecutar muchos subagentes que cada uno devuelve resultados detallados puede consumir contexto significativo.837 Cuando los subagentes se completan, sus resultados regresan a su conversación principal. Ejecutar muchos subagentes que cada uno devuelve resultados detallados puede consumir contexto significativo.

838</Warning>838</Warning>

839 839 

840Para tareas que necesitan paralelismo sostenido o exceden su ventana de contexto, [equipos de agentes](/es/agent-teams) dan a cada trabajador su propio contexto independiente.840Para tareas que necesitan paralelismo sostenido o exceden su ventana de contexto, [equipos de agentes](/docs/es/agent-teams) dan a cada trabajador su propio contexto independiente.

841 841 

842<h4 id="chain-subagents">842<h4 id="chain-subagents">

843 Encadenar subagentes843 Encadenar subagentes


866* Desea aplicar restricciones de herramientas específicas o permisos866* Desea aplicar restricciones de herramientas específicas o permisos

867* El trabajo es autónomo y puede devolver un resumen867* El trabajo es autónomo y puede devolver un resumen

868 868 

869Considere [Skills](/es/skills) en su lugar cuando desee mensajes reutilizables o flujos de trabajo que se ejecuten en el contexto de conversación principal en lugar de contexto de subagente aislado.869Considere [Skills](/docs/es/skills) en su lugar cuando desee mensajes reutilizables o flujos de trabajo que se ejecuten en el contexto de conversación principal en lugar de contexto de subagente aislado.

870 870 

871Para una pregunta rápida sobre algo ya en su conversación, use [`/btw`](/es/interactive-mode#side-questions-with-%2Fbtw) en lugar de un subagente. Ve su contexto completo pero no tiene acceso a herramientas, y la respuesta se descarta en lugar de agregarse al historial.871Para una pregunta rápida sobre algo ya en su conversación, use [`/btw`](/docs/es/interactive-mode#side-questions-with-%2Fbtw) en lugar de un subagente. Ve su contexto completo pero no tiene acceso a herramientas, y la respuesta se descarta en lugar de agregarse al historial.

872 872 

873<h3 id="spawn-nested-subagents">873<h3 id="spawn-nested-subagents">

874 Generar subagentes anidados874 Generar subagentes anidados

875</h3>875</h3>

876 876 

877{/* min-version: 2.1.172 */}A partir de Claude Code v2.1.172, un subagente puede generar sus propios subagentes. Use esto cuando una tarea delegada se divide en subtareas paralelas, como un subagente revisor que distribuye un verificador por hallazgo, de modo que la salida intermedia nunca llegue a su conversación principal. Solo el resumen del subagente de nivel superior regresa a usted.877A partir de Claude Code v2.1.172, un subagente puede generar sus propios subagentes. Use esto cuando una tarea delegada se divide en subtareas paralelas, como un subagente revisor que distribuye un verificador por hallazgo, de modo que la salida intermedia nunca llegue a su conversación principal. Solo el resumen del subagente de nivel superior regresa a usted.

878 878 

879Un subagente anidado se configura de la misma manera que uno de nivel superior y se resuelve desde los mismos [alcances](#choose-the-subagent-scope). El panel de subagentes debajo de la entrada de solicitud muestra el árbol completo: cada fila muestra un recuento `(+N)` de descendientes, y {/* min-version: 2.1.193 */}a partir de v2.1.193, abrir una fila muestra los hermanos de ese subagente e hijos directos con una ruta de regreso a `main`.879Un subagente anidado se configura de la misma manera que uno de nivel superior y se resuelve desde los mismos [alcances](#choose-the-subagent-scope). El panel de subagentes debajo de la entrada de solicitud muestra el árbol completo: cada fila muestra un recuento `(+N)` de descendientes, y a partir de v2.1.193, abrir una fila muestra los hermanos de ese subagente e hijos directos con una ruta de regreso a `main`.

880 880 

881La profundidad se cuenta como el número de niveles de subagentes debajo de la conversación principal, independientemente de si cada nivel se ejecuta en [primer plano o fondo](#run-subagents-in-foreground-or-background). Un subagente a profundidad cinco no recibe la herramienta Agent y no puede generar más. El límite es fijo y no configurable.881La profundidad se cuenta como el número de niveles de subagentes debajo de la conversación principal, independientemente de si cada nivel se ejecuta en [primer plano o fondo](#run-subagents-in-foreground-or-background). Un subagente a profundidad cinco no recibe la herramienta Agent y no puede generar más. El límite es fijo y no configurable.

882 882 


900 900 

901* **Mensaje del sistema**: el mensaje del agente propio más detalles de entorno que Claude Code añade, no el mensaje del sistema completo de Claude Code. Los subagentes personalizados definen el suyo en el [cuerpo markdown](#write-subagent-files) o campo `prompt`. Los agentes integrados tienen mensajes predefinidos.901* **Mensaje del sistema**: el mensaje del agente propio más detalles de entorno que Claude Code añade, no el mensaje del sistema completo de Claude Code. Los subagentes personalizados definen el suyo en el [cuerpo markdown](#write-subagent-files) o campo `prompt`. Los agentes integrados tienen mensajes predefinidos.

902* **Mensaje de tarea**: el mensaje de delegación que Claude escribe cuando entrega el trabajo.902* **Mensaje de tarea**: el mensaje de delegación que Claude escribe cuando entrega el trabajo.

903* **CLAUDE.md y memoria**: cada nivel de la [jerarquía de memoria](/es/memory#how-claude-md-files-load) que la conversación principal carga, incluyendo `~/.claude/CLAUDE.md`, reglas del proyecto, `CLAUDE.local.md` y archivos de política administrados. Los agentes Explore y Plan integrados omiten esto.903* **CLAUDE.md y memoria**: cada nivel de la [jerarquía de memoria](/docs/es/memory#how-claude-md-files-load) que la conversación principal carga, incluyendo `~/.claude/CLAUDE.md`, reglas del proyecto, `CLAUDE.local.md` y archivos de política administrados. Los agentes Explore y Plan integrados omiten esto.

904* **Estado de Git**: una instantánea tomada al inicio de la sesión principal. Ausente cuando el directorio de trabajo no es un repositorio de Git o cuando [`includeGitInstructions`](/es/settings#available-settings) es `false`. Explore y Plan lo omiten de todas formas.904* **Estado de Git**: una instantánea tomada al inicio de la sesión principal. Ausente cuando el directorio de trabajo no es un repositorio de Git o cuando [`includeGitInstructions`](/docs/es/settings#available-settings) es `false`. Explore y Plan lo omiten de todas formas.

905* **Habilidades precargadas**: contenido completo de cualquier habilidad nombrada en el campo [`skills`](#preload-skills-into-subagents) del agente. Los agentes integrados no precargan habilidades.905* **Habilidades precargadas**: contenido completo de cualquier habilidad nombrada en el campo [`skills`](#preload-skills-into-subagents) del agente. Los agentes integrados no precargan habilidades.

906* **Roster de hermanos**: un recordatorio del sistema que enumera `main` y cada otro agente nombrado en la sesión, cada uno un valor `to` válido para [`SendMessage`](#resume-subagents). {/* min-version: 2.1.206 */}Requiere Claude Code v2.1.206 o posterior. El roster aparece solo cuando las herramientas del subagente incluyen `SendMessage` y al menos otro agente tiene un nombre, ya sea que Claude lo nombró cuando lo generó o se ejecuta como un compañero de [equipo de agentes](/es/agent-teams). Es una instantánea tomada cuando el subagente comienza, por lo que los agentes nombrados más tarde no aparecen.906* **Roster de hermanos**: un recordatorio del sistema que enumera `main` y cada otro agente nombrado en la sesión, cada uno un valor `to` válido para [`SendMessage`](#resume-subagents). Requiere Claude Code v2.1.206 o posterior. El roster aparece solo cuando las herramientas del subagente incluyen `SendMessage` y al menos otro agente tiene un nombre, ya sea que Claude lo nombró cuando lo generó o se ejecuta como un compañero de [equipo de agentes](/docs/es/agent-teams). Es una instantánea tomada cuando el subagente comienza, por lo que los agentes nombrados más tarde no aparecen.

907 907 

908Explore y Plan son los únicos subagentes que omiten CLAUDE.md y estado de Git. No hay campo de frontmatter o configuración por agente para cambiar qué agentes los omiten.908Explore y Plan son los únicos subagentes que omiten CLAUDE.md y estado de Git. No hay campo de frontmatter o configuración por agente para cambiar qué agentes los omiten.

909 909 


919 919 

920Cuando un subagente se completa, Claude recibe su ID de agente. Los agentes integrados Explore y Plan son de una sola ejecución y no devuelven ID de agente, por lo que no pueden reanudarse; use `general-purpose` o un subagente personalizado cuando necesite continuar el trabajo.920Cuando un subagente se completa, Claude recibe su ID de agente. Los agentes integrados Explore y Plan son de una sola ejecución y no devuelven ID de agente, por lo que no pueden reanudarse; use `general-purpose` o un subagente personalizado cuando necesite continuar el trabajo.

921 921 

922Claude usa la herramienta `SendMessage` con el ID del agente o nombre como campo `to` para reanudarlo. `SendMessage` no requiere que [equipos de agentes](/es/agent-teams) estén habilitados; solo los mensajes de protocolo de equipo estructurados como `shutdown_request` y `plan_approval_response` lo hacen.922Claude usa la herramienta `SendMessage` con el ID del agente o nombre como campo `to` para reanudarlo. `SendMessage` no requiere que [equipos de agentes](/docs/es/agent-teams) estén habilitados; solo los mensajes de protocolo de equipo estructurados como `shutdown_request` y `plan_approval_response` lo hacen.

923 923 

924Para reanudar un subagente, pida a Claude que continúe el trabajo anterior:924Para reanudar un subagente, pida a Claude que continúe el trabajo anterior:

925 925 


933 933 

934Un subagente completado que recibe un `SendMessage` se reanuda automáticamente en el fondo sin una nueva invocación de `Agent`. Lo mismo aplica a un subagente que Claude detuvo con la herramienta `TaskStop`.934Un subagente completado que recibe un `SendMessage` se reanuda automáticamente en el fondo sin una nueva invocación de `Agent`. Lo mismo aplica a un subagente que Claude detuvo con la herramienta `TaskStop`.

935 935 

936{/* min-version: 2.1.191 */}A partir de v2.1.191, un subagente que usted detuvo, con `x` en `/tasks` o una solicitud SDK `stop_task`, no se reanuda automáticamente. La llamada `SendMessage` devuelve un rechazo diciéndole a Claude que el agente fue cancelado. Escriba en la transcripción de ese subagente en el panel de subagentes para reanudarlo usted mismo, lo que borra la parada para que llamadas `SendMessage` posteriores puedan reanudarlo automáticamente de nuevo.936A partir de v2.1.191, un subagente que usted detuvo, con `x` en `/tasks` o una solicitud SDK `stop_task`, no se reanuda automáticamente. La llamada `SendMessage` devuelve un rechazo diciéndole a Claude que el agente fue cancelado. Escriba en la transcripción de ese subagente en el panel de subagentes para reanudarlo usted mismo, lo que borra la parada para que llamadas `SendMessage` posteriores puedan reanudarlo automáticamente de nuevo.

937 937 

938Reanudar inicia una nueva ejecución del agente bajo el mismo ID, por lo que un subagente que ya había fallado o completado se muestra como ejecutándose de nuevo en la lista de tareas y en los eventos de tareas del SDK del Agent. Antes de v2.1.205, seguía mostrando su estado anterior fallido o completado mientras la ejecución reanudada estaba funcionando.938Reanudar inicia una nueva ejecución del agente bajo el mismo ID, por lo que un subagente que ya había fallado o completado se muestra como ejecutándose de nuevo en la lista de tareas y en los eventos de tareas del SDK del Agent. Antes de v2.1.205, seguía mostrando su estado anterior fallido o completado mientras la ejecución reanudada estaba funcionando.

939 939 

940{/* min-version: 2.1.199 */}A partir de v2.1.199, `SendMessage` verifica que un nombre aún se refiera al mismo agente que alcanzó anteriormente en la conversación. Si un agente más nuevo ha tomado el nombre, como un subagente en fondo re-generado que lo reutilizó, Claude Code rechaza el envío en lugar de entregarlo al agente incorrecto, y el error reporta qué agente el nombre ahora alcanza para que Claude pueda redirigirse. Para alcanzar el agente anterior mientras aún se está ejecutando, Claude lo dirige por el ID del agente del resultado de generación. La verificación se limita a la conversación actual y se reinicia en `/clear`.940A partir de v2.1.199, `SendMessage` verifica que un nombre aún se refiera al mismo agente que alcanzó anteriormente en la conversación. Si un agente más nuevo ha tomado el nombre, como un subagente en fondo re-generado que lo reutilizó, Claude Code rechaza el envío en lugar de entregarlo al agente incorrecto, y el error reporta qué agente el nombre ahora alcanza para que Claude pueda redirigirse. Para alcanzar el agente anterior mientras aún se está ejecutando, Claude lo dirige por el ID del agente del resultado de generación. La verificación se limita a la conversación actual y se reinicia en `/clear`.

941 941 

942{/* min-version: 2.1.198 */}A partir de v2.1.198, un subagente trata los mensajes del agente que lo lanzó como dirección de tarea normal, incluyendo correcciones de curso a mitad de tarea, y actúa sobre ellos dentro de su propia configuración de permisos. Dos límites aún se mantienen independientemente de quién envió el mensaje: ningún mensaje de ningún agente cuenta como su aprobación para una solicitud de permiso pendiente, y ningún mensaje de agente puede cambiar la configuración de permisos de un subagente, `CLAUDE.md` o configuración. Solo el sistema de permisos o sus propios mensajes pueden otorgar aprobación.942A partir de v2.1.198, un subagente trata los mensajes del agente que lo lanzó como dirección de tarea normal, incluyendo correcciones de curso a mitad de tarea, y actúa sobre ellos dentro de su propia configuración de permisos. Dos límites aún se mantienen independientemente de quién envió el mensaje: ningún mensaje de ningún agente cuenta como su aprobación para una solicitud de permiso pendiente, y ningún mensaje de agente puede cambiar la configuración de permisos de un subagente, `CLAUDE.md` o configuración. Solo el sistema de permisos o sus propios mensajes pueden otorgar aprobación.

943 943 

944También puede pedir a Claude el ID del agente si desea referenciarlo explícitamente, o encontrar IDs en los archivos de transcripción en `~/.claude/projects/{project}/{sessionId}/subagents/`. Cada transcripción se almacena como `agent-{agentId}.jsonl`.944También puede pedir a Claude el ID del agente si desea referenciarlo explícitamente, o encontrar IDs en los archivos de transcripción en `~/.claude/projects/{project}/{sessionId}/subagents/`. Cada transcripción se almacena como `agent-{agentId}.jsonl`.

945 945 


953 Auto-compactación953 Auto-compactación

954</h4>954</h4>

955 955 

956Los subagentes soportan compactación automática usando la misma lógica que la conversación principal. La compactación se dispara bajo las mismas condiciones, y `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` se aplica a subagentes también. Consulte [variables de entorno](/es/env-vars) para cuándo entra en vigor el override.956Los subagentes soportan compactación automática usando la misma lógica que la conversación principal. La compactación se dispara bajo las mismas condiciones, y `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` se aplica a subagentes también. Consulte [variables de entorno](/docs/es/env-vars) para cuándo entra en vigor el override.

957 957 

958Los eventos de compactación se registran en archivos de transcripción de subagentes:958Los eventos de compactación se registran en archivos de transcripción de subagentes:

959 959 


975</h2>975</h2>

976 976 

977<Note>977<Note>

978 Los subagentes bifurcados requieren Claude Code v2.1.117 o posterior. {/* min-version: 2.1.161 */}A partir de v2.1.161, el comando `/fork` está habilitado de forma predeterminada; en versiones anteriores requiere establecer la variable de entorno [`CLAUDE_CODE_FORK_SUBAGENT`](/es/env-vars) en `1`. Permitir que Claude mismo genere bifurcaciones es experimental y puede cambiar en futuras versiones. Esta capacidad también puede habilitarse en sesiones interactivas como parte de un lanzamiento por fases.978 Los subagentes bifurcados requieren Claude Code v2.1.117 o posterior. A partir de v2.1.161, el comando `/fork` está habilitado de forma predeterminada; en versiones anteriores requiere establecer la variable de entorno [`CLAUDE_CODE_FORK_SUBAGENT`](/docs/es/env-vars) en `1`. Permitir que Claude mismo genere bifurcaciones es experimental y puede cambiar en futuras versiones. Esta capacidad también puede habilitarse en sesiones interactivas como parte de un lanzamiento por fases.

979</Note>979</Note>

980 980 

981Un fork es un subagente que hereda toda la conversación hasta ahora en lugar de comenzar de nuevo. Esto elimina el aislamiento de entrada que los subagentes de otra manera proporcionan: un fork ve el mismo mensaje del sistema, herramientas, modelo e historial de mensajes que la sesión principal, para que pueda entregarle una tarea secundaria sin re-explicar la situación. Las propias llamadas de herramientas del fork aún permanecen fuera de su conversación y solo su resultado final regresa, por lo que su ventana de contexto principal permanece limpia. Use un fork cuando un subagente nombrado necesitaría demasiado contexto para ser útil, o cuando desee probar varios enfoques en paralelo desde el mismo punto de partida.981Un fork es un subagente que hereda toda la conversación hasta ahora en lugar de comenzar de nuevo. Esto elimina el aislamiento de entrada que los subagentes de otra manera proporcionan: un fork ve el mismo mensaje del sistema, herramientas, modelo e historial de mensajes que la sesión principal, para que pueda entregarle una tarea secundaria sin re-explicar la situación. Las propias llamadas de herramientas del fork aún permanecen fuera de su conversación y solo su resultado final regresa, por lo que su ventana de contexto principal permanece limpia. Use un fork cuando un subagente nombrado necesitaría demasiado contexto para ser útil, o cuando desee probar varios enfoques en paralelo desde el mismo punto de partida.

982 982 

983Para controlar el modo fork independientemente del lanzamiento por fases, establezca [`CLAUDE_CODE_FORK_SUBAGENT`](/es/env-vars) en `1` para habilitarlo explícitamente o en `0` para deshabilitarlo. La variable se respeta en modo interactivo y a través del SDK o `claude -p`.983Para controlar el modo fork independientemente del lanzamiento por fases, establezca [`CLAUDE_CODE_FORK_SUBAGENT`](/docs/es/env-vars) en `1` para habilitarlo explícitamente o en `0` para deshabilitarlo. La variable se respeta en modo interactivo y a través del SDK o `claude -p`.

984 984 

985Habilitar el modo fork cambia Claude Code de dos maneras:985Habilitar el modo fork cambia Claude Code de dos maneras:

986 986 


1008| `x` | Descartar un fork terminado o detener uno en ejecución |1008| `x` | Descartar un fork terminado o detener uno en ejecución |

1009| `Esc` | Devolver el enfoque a la entrada de solicitud |1009| `Esc` | Devolver el enfoque a la entrada de solicitud |

1010 1010 

1011Con la transcripción de un fork o subagente abierta, los mensajes de seguimiento y las [skills](/es/skills) van a ese agente, pero los comandos integrados aún se ejecutan en su conversación principal. {/* min-version: 2.1.199 */}A partir de v2.1.199, escribir `/model` o `/fast` en esa vista muestra un aviso de que cambia el modelo de la conversación principal o el modo rápido, no el del agente visto, en lugar de ejecutarlo silenciosamente.1011Con la transcripción de un fork o subagente abierta, los mensajes de seguimiento y las [skills](/docs/es/skills) van a ese agente, pero los comandos integrados aún se ejecutan en su conversación principal. A partir de v2.1.199, escribir `/model` o `/fast` en esa vista muestra un aviso de que cambia el modelo de la conversación principal o el modo rápido, no el del agente visto, en lugar de ejecutarlo silenciosamente.

1012 1012 

1013<h3 id="how-forks-differ-from-named-subagents">1013<h3 id="how-forks-differ-from-named-subagents">

1014 Cómo los forks difieren de los subagentes nombrados1014 Cómo los forks difieren de los subagentes nombrados


1032 Limitaciones1032 Limitaciones

1033</h3>1033</h3>

1034 1034 

1035Establecer `CLAUDE_CODE_FORK_SUBAGENT=1` habilita el modo fork en sesiones interactivas, [modo no interactivo](/es/headless), y el Agent SDK; establecerlo en `0` deshabilita el modo fork en todas partes, incluido cualquier lanzamiento del lado del servidor. Un fork no puede generar más forks.1035Establecer `CLAUDE_CODE_FORK_SUBAGENT=1` habilita el modo fork en sesiones interactivas, [modo no interactivo](/docs/es/headless), y el Agent SDK; establecerlo en `0` deshabilita el modo fork en todas partes, incluido cualquier lanzamiento del lado del servidor. Un fork no puede generar más forks.

1036 1036 

1037<h2 id="example-subagents">1037<h2 id="example-subagents">

1038 Subagentes de ejemplo1038 Subagentes de ejemplo


1195You cannot modify data. If asked to INSERT, UPDATE, DELETE, or modify schema, explain that you only have read access.1195You cannot modify data. If asked to INSERT, UPDATE, DELETE, or modify schema, explain that you only have read access.

1196```1196```

1197 1197 

1198Claude Code [pasa la entrada del hook como JSON](/es/hooks#pretooluse-input) a través de stdin a comandos de hook. El script de validación lee este JSON, extrae el comando siendo ejecutado, y lo verifica contra una lista de operaciones de escritura SQL. Si se detecta una operación de escritura, el script [sale con código 2](/es/hooks#exit-code-2-behavior-per-event) para bloquear la ejecución y devuelve un mensaje de error a Claude a través de stderr.1198Claude Code [pasa la entrada del hook como JSON](/docs/es/hooks#pretooluse-input) a través de stdin a comandos de hook. El script de validación lee este JSON, extrae el comando siendo ejecutado, y lo verifica contra una lista de operaciones de escritura SQL. Si se detecta una operación de escritura, el script [sale con código 2](/docs/es/hooks#exit-code-2-behavior-per-event) para bloquear la ejecución y devuelve un mensaje de error a Claude a través de stderr.

1199 1199 

1200Cree el script de validación en cualquier lugar en su proyecto. La ruta debe coincidir con el campo `command` en su configuración de hook:1200Cree el script de validación en cualquier lugar en su proyecto. La ruta debe coincidir con el campo `command` en su configuración de hook:

1201 1201 


1228chmod +x ./scripts/validate-readonly-query.sh1228chmod +x ./scripts/validate-readonly-query.sh

1229```1229```

1230 1230 

1231En Windows, escriba el script de validación en PowerShell y agregue `shell: powershell` a la entrada del hook. Consulte [ejecutar hooks en PowerShell](/es/hooks#windows-powershell-tool).1231En Windows, escriba el script de validación en PowerShell y agregue `shell: powershell` a la entrada del hook. Consulte [ejecutar hooks en PowerShell](/docs/es/hooks#windows-powershell-tool).

1232 1232 

1233El hook recibe JSON a través de stdin con el comando Bash en `tool_input.command`. El código de salida 2 bloquea la operación y alimenta el mensaje de error de vuelta a Claude. Consulte [Hooks](/es/hooks#exit-code-output) para detalles sobre códigos de salida e [Hook input](/es/hooks#pretooluse-input) para el esquema de entrada completo.1233El hook recibe JSON a través de stdin con el comando Bash en `tool_input.command`. El código de salida 2 bloquea la operación y alimenta el mensaje de error de vuelta a Claude. Consulte [Hooks](/docs/es/hooks#exit-code-output) para detalles sobre códigos de salida e [Hook input](/docs/es/hooks#pretooluse-input) para el esquema de entrada completo.

1234 1234 

1235<h2 id="next-steps">1235<h2 id="next-steps">

1236 Próximos pasos1236 Próximos pasos


1238 1238 

1239Ahora que entiende subagentes, explore estas características relacionadas:1239Ahora que entiende subagentes, explore estas características relacionadas:

1240 1240 

1241* [Distribuir subagentes con plugins](/es/plugins) para compartir subagentes entre equipos o proyectos1241* [Distribuir subagentes con plugins](/docs/es/plugins) para compartir subagentes entre equipos o proyectos

1242* [Ejecutar Claude Code programáticamente](/es/headless) con el Agent SDK para CI/CD y automatización1242* [Ejecutar Claude Code programáticamente](/docs/es/headless) con el Agent SDK para CI/CD y automatización

1243* [Usar servidores MCP](/es/mcp) para dar a los subagentes acceso a herramientas y datos externos1243* [Usar servidores MCP](/docs/es/mcp) para dar a los subagentes acceso a herramientas y datos externos

tools-reference.md +77 −77

Details

6 6 

7> Referencia completa de las herramientas que Claude Code puede utilizar, incluidos los requisitos de permisos y el comportamiento por herramienta.7> Referencia completa de las herramientas que Claude Code puede utilizar, incluidos los requisitos de permisos y el comportamiento por herramienta.

8 8 

9Claude Code tiene acceso a un conjunto de herramientas integradas que le ayudan a entender y modificar su base de código. Los nombres de herramientas son las cadenas exactas que utiliza en [reglas de permisos](/es/permissions#tool-specific-permission-rules), [listas de herramientas de subagents](/es/sub-agents) y [coincidencias de hooks](/es/hooks). Para desactivar una herramienta completamente, agregue su nombre al array `deny` en su [configuración de permisos](/es/permissions#tool-specific-permission-rules).9Claude Code tiene acceso a un conjunto de herramientas integradas que le ayudan a entender y modificar su base de código. Los nombres de herramientas son las cadenas exactas que utiliza en [reglas de permisos](/docs/es/permissions#tool-specific-permission-rules), [listas de herramientas de subagents](/docs/es/sub-agents) y [coincidencias de hooks](/docs/es/hooks). Para desactivar una herramienta completamente, agregue su nombre al array `deny` en su [configuración de permisos](/docs/es/permissions#tool-specific-permission-rules).

10 10 

11Para agregar herramientas personalizadas, conecte un [servidor MCP](/es/mcp). Para extender Claude con flujos de trabajo basados en prompts reutilizables, escriba una [skill](/es/skills), que se ejecuta a través de la herramienta `Skill` existente en lugar de agregar una nueva entrada de herramienta.11Para agregar herramientas personalizadas, conecte un [servidor MCP](/docs/es/mcp). Para extender Claude con flujos de trabajo basados en prompts reutilizables, escriba una [skill](/docs/es/skills), que se ejecuta a través de la herramienta `Skill` existente en lugar de agregar una nueva entrada de herramienta.

12 12 

13La columna Permiso requerido muestra si la herramienta solicita en el modo de permiso predeterminado para rutas dentro del directorio de trabajo. Las herramientas de acceso a archivos marcadas como No, incluidas `Read`, `Grep` y `Glob`, aún solicitan rutas fuera del [directorio de trabajo y directorios adicionales](/es/permissions#working-directories). `Bash` está marcado como Sí pero ejecuta un conjunto integrado de [comandos de solo lectura](/es/permissions#read-only-commands) sin solicitar.13La columna Permiso requerido muestra si la herramienta solicita en el modo de permiso predeterminado para rutas dentro del directorio de trabajo. Las herramientas de acceso a archivos marcadas como No, incluidas `Read`, `Grep` y `Glob`, aún solicitan rutas fuera del [directorio de trabajo y directorios adicionales](/docs/es/permissions#working-directories). `Bash` está marcado como Sí pero ejecuta un conjunto integrado de [comandos de solo lectura](/docs/es/permissions#read-only-commands) sin solicitar.

14 14 

15| Herramienta | Descripción | Permiso requerido |15| Herramienta | Descripción | Permiso requerido |

16| :--------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------- |16| :--------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------- |

17| `Agent` | Genera un [subagent](/es/sub-agents) con su propia ventana de contexto para manejar una tarea. Consulte [comportamiento de la herramienta Agent](#agent-tool-behavior) | No |17| `Agent` | Genera un [subagent](/docs/es/sub-agents) con su propia ventana de contexto para manejar una tarea. Consulte [comportamiento de la herramienta Agent](#agent-tool-behavior) | No |

18| `Artifact` | Publica un archivo HTML o Markdown como un [artifact](/es/artifacts): una página privada e interactiva en claude.ai. Puede compartirlo con un enlace público, o dentro de su organización en planes Team y Enterprise, donde el uso compartido público requiere que un Propietario lo [habilite](/es/artifacts#control-public-sharing). {/* plan-availability: feature=artifacts plans=pro,max,team,enterprise providers=anthropic */}Requiere un plan Pro, Max, Team o Enterprise y autenticación `/login`; consulte [Disponibilidad](/es/artifacts#availability) | Sí |18| `Artifact` | Publica un archivo HTML o Markdown como un [artifact](/docs/es/artifacts): una página privada e interactiva en claude.ai. Puede compartirlo con un enlace público, o dentro de su organización en planes Team y Enterprise, donde el uso compartido público requiere que un Propietario lo [habilite](/docs/es/artifacts#control-public-sharing). Requiere un plan Pro, Max, Team o Enterprise y autenticación `/login`; consulte [Disponibilidad](/docs/es/artifacts#availability) | Sí |

19| `AskUserQuestion` | Hace preguntas de opción múltiple para recopilar requisitos o aclarar ambigüedades. {/* min-version: 2.1.200 */}Las preguntas permanecen abiertas hasta que las responda: no hay tiempo de espera por inactividad de forma predeterminada. Para que un diálogo inactivo se continúe automáticamente, establezca la configuración [`askUserQuestionTimeout`](/es/settings#available-settings) en `60s`, `5m`, o `10m`, ya sea en su `settings.json` de usuario o desde la fila **Question auto-continue timeout** en `/config`. Una vez que pasa el tiempo de inactividad elegido sin entrada, el diálogo se cierra por sí solo: envía cualquier opción que ya haya seleccionado e indica a Claude que puede estar alejado del teclado, por lo que Claude procede según su propio criterio y puede volver a preguntar más tarde. Aparece una cuenta regresiva en los últimos 20 segundos. Cualquier pulsación de tecla reinicia el temporizador, y también lo hace una ventana enfocada en terminales que reportan enfoque. El tiempo de espera se aplica solo a las preguntas de opción múltiple de `AskUserQuestion`; los avisos de permisos, incluida la aprobación del plan, nunca se resuelven automáticamente en inactividad. En v2.1.198 y v2.1.199, el diálogo se continuaba automáticamente después de 60 segundos de inactividad de forma predeterminada, y [`CLAUDE_AFK_TIMEOUT_MS`](/es/env-vars#variables) era la única forma de cambiar eso | No |19| `AskUserQuestion` | Hace preguntas de opción múltiple para recopilar requisitos o aclarar ambigüedades. Las preguntas permanecen abiertas hasta que las responda: no hay tiempo de espera por inactividad de forma predeterminada. Para que un diálogo inactivo se continúe automáticamente, establezca la configuración [`askUserQuestionTimeout`](/docs/es/settings#available-settings) en `60s`, `5m`, o `10m`, ya sea en su `settings.json` de usuario o desde la fila **Question auto-continue timeout** en `/config`. Una vez que pasa el tiempo de inactividad elegido sin entrada, el diálogo se cierra por sí solo: envía cualquier opción que ya haya seleccionado e indica a Claude que puede estar alejado del teclado, por lo que Claude procede según su propio criterio y puede volver a preguntar más tarde. Aparece una cuenta regresiva en los últimos 20 segundos. Cualquier pulsación de tecla reinicia el temporizador, y también lo hace una ventana enfocada en terminales que reportan enfoque. El tiempo de espera se aplica solo a las preguntas de opción múltiple de `AskUserQuestion`; los avisos de permisos, incluida la aprobación del plan, nunca se resuelven automáticamente en inactividad. En v2.1.198 y v2.1.199, el diálogo se continuaba automáticamente después de 60 segundos de inactividad de forma predeterminada, y [`CLAUDE_AFK_TIMEOUT_MS`](/docs/es/env-vars#variables) era la única forma de cambiar eso | No |

20| `Bash` | Ejecuta comandos de shell en su entorno. Consulte [comportamiento de la herramienta Bash](#bash-tool-behavior) | Sí |20| `Bash` | Ejecuta comandos de shell en su entorno. Consulte [comportamiento de la herramienta Bash](#bash-tool-behavior) | Sí |

21| `CronCreate` | Programa una solicitud recurrente o única dentro de la sesión actual. Las tareas tienen alcance de sesión y se restauran en `--resume` o `--continue` si no han expirado. Consulte [tareas programadas](/es/scheduled-tasks) | No |21| `CronCreate` | Programa una solicitud recurrente o única dentro de la sesión actual. Las tareas tienen alcance de sesión y se restauran en `--resume` o `--continue` si no han expirado. Consulte [tareas programadas](/docs/es/scheduled-tasks) | No |

22| `CronDelete` | Cancela una tarea programada por ID | No |22| `CronDelete` | Cancela una tarea programada por ID | No |

23| `CronList` | Lista todas las tareas programadas en la sesión | No |23| `CronList` | Lista todas las tareas programadas en la sesión | No |

24| `Edit` | Realiza ediciones dirigidas a archivos específicos. Consulte [comportamiento de la herramienta Edit](#edit-tool-behavior) | Sí |24| `Edit` | Realiza ediciones dirigidas a archivos específicos. Consulte [comportamiento de la herramienta Edit](#edit-tool-behavior) | Sí |

25| `EnterPlanMode` | Cambia a Plan Mode para diseñar un enfoque antes de codificar | No |25| `EnterPlanMode` | Cambia a Plan Mode para diseñar un enfoque antes de codificar | No |

26| `EnterWorktree` | Crea un [git worktree](/es/worktrees) aislado y cambia a él. Pase un `path` para cambiar a un worktree existente en lugar de crear uno nuevo. {/* min-version: 2.1.203 */}En la primera entrada, el destino puede ser un worktree del repositorio actual o, en un espacio de trabajo de múltiples repositorios, de un repositorio anidado dentro de él. Antes de v2.1.203, se rechazaba un worktree de un repositorio anidado. {/* min-version: 2.1.206 */}Un `path` fuera de `.claude/worktrees/` solicita su aprobación antes de entrar, ya que mueve el directorio de trabajo de la sesión y el acceso de escritura a esa ubicación. La creación de nuevos worktrees y las rutas bajo `.claude/worktrees/` no solicitan. Antes de v2.1.206, Claude entraba en rutas fuera de `.claude/worktrees/` sin solicitar. Desde dentro de una sesión de worktree, o desde un subagent con un directorio de trabajo fijado como [`isolation: worktree`](/es/sub-agents#supported-frontmatter-fields), solo está disponible la forma `path` y el destino debe estar bajo `.claude/worktrees/` del repositorio de la sesión | Sí |26| `EnterWorktree` | Crea un [git worktree](/docs/es/worktrees) aislado y cambia a él. Pase un `path` para cambiar a un worktree existente en lugar de crear uno nuevo. En la primera entrada, el destino puede ser un worktree del repositorio actual o, en un espacio de trabajo de múltiples repositorios, de un repositorio anidado dentro de él. Antes de v2.1.203, se rechazaba un worktree de un repositorio anidado. Un `path` fuera de `.claude/worktrees/` solicita su aprobación antes de entrar, ya que mueve el directorio de trabajo de la sesión y el acceso de escritura a esa ubicación. La creación de nuevos worktrees y las rutas bajo `.claude/worktrees/` no solicitan. Antes de v2.1.206, Claude entraba en rutas fuera de `.claude/worktrees/` sin solicitar. Desde dentro de una sesión de worktree, o desde un subagent con un directorio de trabajo fijado como [`isolation: worktree`](/docs/es/sub-agents#supported-frontmatter-fields), solo está disponible la forma `path` y el destino debe estar bajo `.claude/worktrees/` del repositorio de la sesión | Sí |

27| `ExitPlanMode` | Presenta un plan para aprobación y sale de Plan Mode | Sí |27| `ExitPlanMode` | Presenta un plan para aprobación y sale de Plan Mode | Sí |

28| `ExitWorktree` | Sale de una sesión de worktree y regresa al directorio original. No disponible para subagents que ya se ejecutan en su propio directorio de trabajo, como con [`isolation: worktree`](/es/sub-agents#supported-frontmatter-fields) | No |28| `ExitWorktree` | Sale de una sesión de worktree y regresa al directorio original. No disponible para subagents que ya se ejecutan en su propio directorio de trabajo, como con [`isolation: worktree`](/docs/es/sub-agents#supported-frontmatter-fields) | No |

29| `Glob` | Encuentra archivos basados en coincidencia de patrones. Consulte [comportamiento de la herramienta Glob](#glob-tool-behavior) | No |29| `Glob` | Encuentra archivos basados en coincidencia de patrones. Consulte [comportamiento de la herramienta Glob](#glob-tool-behavior) | No |

30| `Grep` | Busca patrones en el contenido de archivos. Consulte [comportamiento de la herramienta Grep](#grep-tool-behavior) | No |30| `Grep` | Busca patrones en el contenido de archivos. Consulte [comportamiento de la herramienta Grep](#grep-tool-behavior) | No |

31| `ListMcpResourcesTool` | Lista recursos expuestos por [servidores MCP](/es/mcp) conectados | No |31| `ListMcpResourcesTool` | Lista recursos expuestos por [servidores MCP](/docs/es/mcp) conectados | No |

32| `LSP` | Inteligencia de código a través de servidores de lenguaje: saltar a definiciones, encontrar referencias, reportar errores de tipo y advertencias. Consulte [comportamiento de la herramienta LSP](#lsp-tool-behavior) | No |32| `LSP` | Inteligencia de código a través de servidores de lenguaje: saltar a definiciones, encontrar referencias, reportar errores de tipo y advertencias. Consulte [comportamiento de la herramienta LSP](#lsp-tool-behavior) | No |

33| `Monitor` | Ejecuta un comando en segundo plano y devuelve cada línea de salida a Claude, para que pueda reaccionar a entradas de registro, cambios de archivos, o estado sondeado a mitad de la conversación. También puede abrir un WebSocket y tratar cada mensaje entrante como un evento. Consulte [herramienta Monitor](#monitor-tool) | Sí |33| `Monitor` | Ejecuta un comando en segundo plano y devuelve cada línea de salida a Claude, para que pueda reaccionar a entradas de registro, cambios de archivos, o estado sondeado a mitad de la conversación. También puede abrir un WebSocket y tratar cada mensaje entrante como un evento. Consulte [herramienta Monitor](#monitor-tool) | Sí |

34| `NotebookEdit` | Modifica celdas de cuadernos Jupyter. Consulte [comportamiento de la herramienta NotebookEdit](#notebookedit-tool-behavior) | Sí |34| `NotebookEdit` | Modifica celdas de cuadernos Jupyter. Consulte [comportamiento de la herramienta NotebookEdit](#notebookedit-tool-behavior) | Sí |

35| `PowerShell` | Ejecuta comandos de PowerShell de forma nativa. Consulte [herramienta PowerShell](#powershell-tool) para disponibilidad | Sí |35| `PowerShell` | Ejecuta comandos de PowerShell de forma nativa. Consulte [herramienta PowerShell](#powershell-tool) para disponibilidad | Sí |

36| `PushNotification` | Envía una notificación de escritorio, y una notificación push en el teléfono cuando [Remote Control](/es/remote-control) está conectado, para que una tarea de larga duración o [tarea programada](/es/scheduled-tasks) pueda alcanzarlo cuando se aleje. {/* plan-availability: feature=push-notifications providers=anthropic */}La entrega push se ejecuta a través de infraestructura alojada por Anthropic, que no es accesible desde Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry | No |36| `PushNotification` | Envía una notificación de escritorio, y una notificación push en el teléfono cuando [Remote Control](/docs/es/remote-control) está conectado, para que una tarea de larga duración o [tarea programada](/docs/es/scheduled-tasks) pueda alcanzarlo cuando se aleje. La entrega push se ejecuta a través de infraestructura alojada por Anthropic, que no es accesible desde Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry | No |

37| `Read` | Lee el contenido de archivos. Consulte [comportamiento de la herramienta Read](#read-tool-behavior) | No |37| `Read` | Lee el contenido de archivos. Consulte [comportamiento de la herramienta Read](#read-tool-behavior) | No |

38| `ReadMcpResourceTool` | Lee un recurso MCP específico por URI | No |38| `ReadMcpResourceTool` | Lee un recurso MCP específico por URI | No |

39| `RemoteTrigger` | Crea, actualiza, ejecuta y lista [Routines](/es/routines) en claude.ai. Respalda el comando `/schedule`. {/* plan-availability: feature=routines plans=pro,max,team,enterprise providers=anthropic */}Las Routines viven en claude.ai y requieren un plan Pro, Max, Team o Enterprise, por lo que esta herramienta no es accesible desde Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry | No |39| `RemoteTrigger` | Crea, actualiza, ejecuta y lista [Routines](/docs/es/routines) en claude.ai. Respalda el comando `/schedule`. Las Routines viven en claude.ai y requieren un plan Pro, Max, Team o Enterprise, por lo que esta herramienta no es accesible desde Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry | No |

40| `ReportFindings` | Reporta hallazgos de revisión de código como una lista estructurada, con un archivo, resumen y escenario de fallo por hallazgo, para que Claude Code pueda renderizarlos en lugar de imprimirlos como texto. Claude lo llama cuando las instrucciones de revisión de código activas le indican que lo haga. {/* min-version: 2.1.196 */}Requiere Claude Code v2.1.196 o posterior. {/* min-version: 2.1.199 */}A partir de v2.1.199, un hallazgo también puede llevar un slug de `category` opcional, como `correctness` o `test-coverage`, mostrado junto a la ubicación del archivo en la lista renderizada | No |40| `ReportFindings` | Reporta hallazgos de revisión de código como una lista estructurada, con un archivo, resumen y escenario de fallo por hallazgo, para que Claude Code pueda renderizarlos en lugar de imprimirlos como texto. Claude lo llama cuando las instrucciones de revisión de código activas le indican que lo haga. Requiere Claude Code v2.1.196 o posterior. A partir de v2.1.199, un hallazgo también puede llevar un slug de `category` opcional, como `correctness` o `test-coverage`, mostrado junto a la ubicación del archivo en la lista renderizada | No |

41| `ScheduleWakeup` | Reprograma la siguiente iteración de un [`/loop` autónomo](/es/scheduled-tasks#let-claude-choose-the-interval). Claude llama a esto al final de cada iteración para elegir cuándo se ejecuta la siguiente, entre un minuto y una hora; usted no lo llama directamente. Para terminar el bucle en su lugar, Claude lo llama con `stop: true`, que cancela el wakeup pendiente. {/* min-version: 2.1.202 */}El campo `stop` requiere Claude Code v2.1.202 o posterior. El wakeup pendiente aparece en `session_crons` en [entrada de Stop hook](/es/hooks#stop-input). {/* plan-availability: feature=loop-dynamic providers=anthropic */}No disponible en Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform, o Microsoft Foundry, donde un prompt `/loop` sin intervalo se ejecuta en un horario fijo en su lugar | No |41| `ScheduleWakeup` | Reprograma la siguiente iteración de un [`/loop` autónomo](/docs/es/scheduled-tasks#let-claude-choose-the-interval). Claude llama a esto al final de cada iteración para elegir cuándo se ejecuta la siguiente, entre un minuto y una hora; usted no lo llama directamente. Para terminar el bucle en su lugar, Claude lo llama con `stop: true`, que cancela el wakeup pendiente. El campo `stop` requiere Claude Code v2.1.202 o posterior. El wakeup pendiente aparece en `session_crons` en [entrada de Stop hook](/docs/es/hooks#stop-input). No disponible en Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform, o Microsoft Foundry, donde un prompt `/loop` sin intervalo se ejecuta en un horario fijo en su lugar | No |

42| `SendMessage` | Envía un mensaje a un miembro del [equipo de agentes](/es/agent-teams), o [reanuda un subagent](/es/sub-agents#resume-subagents) por su ID de agente o nombre. Un subagent completado se reanuda automáticamente en segundo plano; un subagent que detuvo desde `/tasks` no lo hace y la llamada devuelve un rechazo. Los mensajes de protocolo de equipo estructurados requieren equipos de agentes. Un receptor nunca trata un mensaje de otro agente como su consentimiento o aprobación. {/* min-version: 2.1.198 */}A partir de v2.1.198, un subagent trata un mensaje del agente que lo lanzó como dirección de tarea normal en lugar de como una solicitud de igual a igual. {/* min-version: 2.1.199 */}A partir de v2.1.199, un envío a un nombre que ahora se resuelve a un agente diferente al que lo hizo anteriormente en la conversación se rechaza en lugar de entregarse; consulte [Reanudar subagents](/es/sub-agents#resume-subagents) | No |42| `SendMessage` | Envía un mensaje a un miembro del [equipo de agentes](/docs/es/agent-teams), o [reanuda un subagent](/docs/es/sub-agents#resume-subagents) por su ID de agente o nombre. Un subagent completado se reanuda automáticamente en segundo plano; un subagent que detuvo desde `/tasks` no lo hace y la llamada devuelve un rechazo. Los mensajes de protocolo de equipo estructurados requieren equipos de agentes. Un receptor nunca trata un mensaje de otro agente como su consentimiento o aprobación. A partir de v2.1.198, un subagent trata un mensaje del agente que lo lanzó como dirección de tarea normal en lugar de como una solicitud de igual a igual. A partir de v2.1.199, un envío a un nombre que ahora se resuelve a un agente diferente al que lo hizo anteriormente en la conversación se rechaza en lugar de entregarse; consulte [Reanudar subagents](/docs/es/sub-agents#resume-subagents) | No |

43| `SendUserFile` | Envía archivos de la sesión a usted con un título opcional, para que un informe generado, diagrama, captura de pantalla, o artefacto construido llegue a su dispositivo en lugar de solo ser mencionado en la transcripción. {/* min-version: 2.1.196 */}A partir de v2.1.196, la entrada `display` opcional controla la presentación: `render` abre el archivo en línea en el cliente, `attach` muestra solo una tarjeta de descarga, y cuando no está establecida el cliente decide por tipo de archivo. Disponible cuando un cliente [Remote Control](/es/remote-control) está conectado o la sesión se ejecuta en un entorno en la nube administrado como [Claude Code en la web](/es/claude-code-on-the-web). La entrega se ejecuta a través de infraestructura alojada por Anthropic, por lo que la herramienta no está disponible en Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry | No |43| `SendUserFile` | Envía archivos de la sesión a usted con un título opcional, para que un informe generado, diagrama, captura de pantalla, o artefacto construido llegue a su dispositivo en lugar de solo ser mencionado en la transcripción. A partir de v2.1.196, la entrada `display` opcional controla la presentación: `render` abre el archivo en línea en el cliente, `attach` muestra solo una tarjeta de descarga, y cuando no está establecida el cliente decide por tipo de archivo. Disponible cuando un cliente [Remote Control](/docs/es/remote-control) está conectado o la sesión se ejecuta en un entorno en la nube administrado como [Claude Code en la web](/docs/es/claude-code-on-the-web). La entrega se ejecuta a través de infraestructura alojada por Anthropic, por lo que la herramienta no está disponible en Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry | No |

44| `ShareOnboardingGuide` | {/* plan-availability: feature=onboarding-guide-share plans=pro,max,team,enterprise providers=anthropic */}Carga `ONBOARDING.md` y devuelve un enlace de compartición que los compañeros de equipo pueden abrir en Claude Code. Se llama desde `/team-onboarding` después de que se escribe la guía. Disponible para suscriptores de claude.ai en planes Pro, Max, Team y Enterprise | Sí |44| `ShareOnboardingGuide` | Carga `ONBOARDING.md` y devuelve un enlace de compartición que los compañeros de equipo pueden abrir en Claude Code. Se llama desde `/team-onboarding` después de que se escribe la guía. Disponible para suscriptores de claude.ai en planes Pro, Max, Team y Enterprise | Sí |

45| `Skill` | Ejecuta una [skill](/es/skills#control-who-invokes-a-skill) dentro de la conversación principal | Sí |45| `Skill` | Ejecuta una [skill](/docs/es/skills#control-who-invokes-a-skill) dentro de la conversación principal | Sí |

46| `TaskCreate` | Crea una nueva tarea en la lista de tareas | No |46| `TaskCreate` | Crea una nueva tarea en la lista de tareas | No |

47| `TaskGet` | Recupera detalles completos para una tarea específica | No |47| `TaskGet` | Recupera detalles completos para una tarea específica | No |

48| `TaskList` | Lista todas las tareas con su estado actual | No |48| `TaskList` | Lista todas las tareas con su estado actual | No |

49| `TaskOutput` | Recupera salida de una tarea de fondo. Obsoleto en favor de `Read` en la ruta del archivo de salida de la tarea. {/* min-version: 2.1.203 */}Cuando ninguna tarea coincide con el ID, el error lista los agentes de fondo en ejecución por ID y descripción. Antes de v2.1.203, el error solo nombraba el ID faltante | No |49| `TaskOutput` | Recupera salida de una tarea de fondo. Obsoleto en favor de `Read` en la ruta del archivo de salida de la tarea. Cuando ninguna tarea coincide con el ID, el error lista los agentes de fondo en ejecución por ID y descripción. Antes de v2.1.203, el error solo nombraba el ID faltante | No |

50| `TaskStop` | Detiene una tarea de fondo en ejecución por ID. {/* min-version: 2.1.198 */}También acepta un [compañero de equipo de agentes](/es/agent-teams) o un agente de fondo nombrado por ID de agente o nombre. Antes de v2.1.198, solo aceptaba un ID de tarea de fondo. {/* min-version: 2.1.203 */}Cuando ninguna tarea coincide con el ID, el error lista los agentes de fondo en ejecución por ID y descripción, incluidos los agentes que otro agente generó. Antes de v2.1.203, el error listaba compañeros de equipo en ejecución y agentes nombrados pero no agentes de fondo que otro agente generó, por lo que no podían ser identificados o detenidos desde la conversación principal | No |50| `TaskStop` | Detiene una tarea de fondo en ejecución por ID. También acepta un [compañero de equipo de agentes](/docs/es/agent-teams) o un agente de fondo nombrado por ID de agente o nombre. Antes de v2.1.198, solo aceptaba un ID de tarea de fondo. Cuando ninguna tarea coincide con el ID, el error lista los agentes de fondo en ejecución por ID y descripción, incluidos los agentes que otro agente generó. Antes de v2.1.203, el error listaba compañeros de equipo en ejecución y agentes nombrados pero no agentes de fondo que otro agente generó, por lo que no podían ser identificados o detenidos desde la conversación principal | No |

51| `TaskUpdate` | Actualiza el estado de la tarea, dependencias, detalles, o elimina tareas | No |51| `TaskUpdate` | Actualiza el estado de la tarea, dependencias, detalles, o elimina tareas | No |

52| `TodoWrite` | {/* min-version: 2.1.142 */}Gestiona la lista de verificación de tareas de la sesión. Deshabilitado por defecto a partir de v2.1.142 en favor de `TaskCreate`, `TaskGet`, `TaskList` y `TaskUpdate`. Establezca `CLAUDE_CODE_ENABLE_TASKS=0` para volver a habilitar | No |52| `TodoWrite` | Gestiona la lista de verificación de tareas de la sesión. Deshabilitado por defecto a partir de v2.1.142 en favor de `TaskCreate`, `TaskGet`, `TaskList` y `TaskUpdate`. Establezca `CLAUDE_CODE_ENABLE_TASKS=0` para volver a habilitar | No |

53| `ToolSearch` | Busca y carga herramientas diferidas cuando [búsqueda de herramientas](/es/mcp#scale-with-mcp-tool-search) está habilitada | No |53| `ToolSearch` | Busca y carga herramientas diferidas cuando [búsqueda de herramientas](/docs/es/mcp#scale-with-mcp-tool-search) está habilitada | No |

54| `WaitForMcpServers` | Espera a uno o más [servidores MCP](/es/mcp) que aún se están conectando en segundo plano, para que una solicitud pueda usar sus herramientas sin reiniciar la sesión. Claude lo llama cuando un servidor necesario aún no está conectado. Solo aparece cuando [búsqueda de herramientas](/es/mcp#scale-with-mcp-tool-search) está deshabilitada, ya que `ToolSearch` maneja la espera cuando está habilitada | No |54| `WaitForMcpServers` | Espera a uno o más [servidores MCP](/docs/es/mcp) que aún se están conectando en segundo plano, para que una solicitud pueda usar sus herramientas sin reiniciar la sesión. Claude lo llama cuando un servidor necesario aún no está conectado. Solo aparece cuando [búsqueda de herramientas](/docs/es/mcp#scale-with-mcp-tool-search) está deshabilitada, ya que `ToolSearch` maneja la espera cuando está habilitada | No |

55| `WebFetch` | Obtiene contenido de una URL especificada. Consulte [comportamiento de la herramienta WebFetch](#webfetch-tool-behavior) | Sí |55| `WebFetch` | Obtiene contenido de una URL especificada. Consulte [comportamiento de la herramienta WebFetch](#webfetch-tool-behavior) | Sí |

56| `WebSearch` | Realiza búsquedas web. Consulte [comportamiento de la herramienta WebSearch](#websearch-tool-behavior) | Sí |56| `WebSearch` | Realiza búsquedas web. Consulte [comportamiento de la herramienta WebSearch](#websearch-tool-behavior) | Sí |

57| `Workflow` | Ejecuta un [flujo de trabajo dinámico](/es/workflows): un script que orquesta muchos subagents en segundo plano y devuelve un resultado consolidado | Sí |57| `Workflow` | Ejecuta un [flujo de trabajo dinámico](/docs/es/workflows): un script que orquesta muchos subagents en segundo plano y devuelve un resultado consolidado | Sí |

58| `Write` | Crea o sobrescribe archivos. Consulte [comportamiento de la herramienta Write](#write-tool-behavior) | Sí |58| `Write` | Crea o sobrescribe archivos. Consulte [comportamiento de la herramienta Write](#write-tool-behavior) | Sí |

59 59 

60<h2 id="configure-tools-with-permission-rules-and-hooks">60<h2 id="configure-tools-with-permission-rules-and-hooks">


63 63 

64En su mayor parte, Claude decide cuándo usar estas herramientas y no necesita nombrarlas usted mismo cuando interactúa con Claude. Hace referencia a los nombres de herramientas directamente cuando define permisos y otra configuración:64En su mayor parte, Claude decide cuándo usar estas herramientas y no necesita nombrarlas usted mismo cuando interactúa con Claude. Hace referencia a los nombres de herramientas directamente cuando define permisos y otra configuración:

65 65 

66* en [`permissions.allow` y `permissions.deny`](/es/settings#available-settings) en la configuración, y la interfaz `/permissions`66* en [`permissions.allow` y `permissions.deny`](/docs/es/settings#available-settings) en la configuración, y la interfaz `/permissions`

67* en los [indicadores CLI](/es/cli-reference) `--allowedTools` y `--disallowedTools`67* en los [indicadores CLI](/docs/es/cli-reference) `--allowedTools` y `--disallowedTools`

68* en las opciones [`allowedTools` y `disallowedTools`](/es/agent-sdk/permissions#allow-and-deny-rules) del Agent SDK68* en las opciones [`allowedTools` y `disallowedTools`](/docs/es/agent-sdk/permissions#allow-and-deny-rules) del Agent SDK

69* en el [frontmatter](/es/sub-agents#supported-frontmatter-fields) `tools` o `disallowedTools` de un subagent69* en el [frontmatter](/docs/es/sub-agents#supported-frontmatter-fields) `tools` o `disallowedTools` de un subagent

70* en el [frontmatter](/es/skills#frontmatter-reference) `allowed-tools` de una skill70* en el [frontmatter](/docs/es/skills#frontmatter-reference) `allowed-tools` de una skill

71* en la condición [`if`](/es/hooks-guide#filter-by-tool-name-and-arguments-with-the-if-field) de un hook71* en la condición [`if`](/docs/es/hooks-guide#filter-by-tool-name-and-arguments-with-the-if-field) de un hook

72 72 

73Todos estos aceptan el mismo formato de regla, `ToolName(specifier)`. El especificador depende de la herramienta, y varias herramientas comparten un formato:73Todos estos aceptan el mismo formato de regla, `ToolName(specifier)`. El especificador depende de la herramienta, y varias herramientas comparten un formato:

74 74 

75| Formato de regla | Se aplica a | Detalles |75| Formato de regla | Se aplica a | Detalles |

76| :----------------------------- | :------------------------ | :----------------------------------------------------------------------------------- |76| :----------------------------- | :------------------------ | :----------------------------------------------------------------------------------- |

77| `Bash(npm run *)` | Bash, Monitor | [Coincidencia de patrón de comando](/es/permissions#bash) |77| `Bash(npm run *)` | Bash, Monitor | [Coincidencia de patrón de comando](/docs/es/permissions#bash) |

78| `PowerShell(Get-ChildItem *)` | PowerShell | [Coincidencia de patrón de comando](/es/permissions#powershell) |78| `PowerShell(Get-ChildItem *)` | PowerShell | [Coincidencia de patrón de comando](/docs/es/permissions#powershell) |

79| `Read(~/secrets/**)` | Read, Grep, Glob, LSP | [Coincidencia de patrón de ruta](/es/permissions#read-and-edit) |79| `Read(~/secrets/**)` | Read, Grep, Glob, LSP | [Coincidencia de patrón de ruta](/docs/es/permissions#read-and-edit) |

80| `Edit(/src/**)` | Edit, Write, NotebookEdit | [Coincidencia de patrón de ruta](/es/permissions#read-and-edit) |80| `Edit(/src/**)` | Edit, Write, NotebookEdit | [Coincidencia de patrón de ruta](/docs/es/permissions#read-and-edit) |

81| `Skill(deploy *)` | Skill | [Coincidencia de nombre de skill](/es/skills#restrict-claude%E2%80%99s-skill-access) |81| `Skill(deploy *)` | Skill | [Coincidencia de nombre de skill](/docs/es/skills#restrict-claude%E2%80%99s-skill-access) |

82| `Agent(Explore)` | Agent | [Coincidencia de tipo de subagent](/es/permissions#agent-subagents) |82| `Agent(Explore)` | Agent | [Coincidencia de tipo de subagent](/docs/es/permissions#agent-subagents) |

83| `WebFetch(domain:example.com)` | WebFetch | [Coincidencia de dominio](/es/permissions#webfetch) |83| `WebFetch(domain:example.com)` | WebFetch | [Coincidencia de dominio](/docs/es/permissions#webfetch) |

84| `WebSearch` | WebSearch | Sin especificador; permitir o denegar la herramienta en su totalidad |84| `WebSearch` | WebSearch | Sin especificador; permitir o denegar la herramienta en su totalidad |

85 85 

86Las herramientas no listadas aquí, como `ExitPlanMode` o `ShareOnboardingGuide`, aceptan solo el nombre de herramienta desnudo sin especificador.86Las herramientas no listadas aquí, como `ExitPlanMode` o `ShareOnboardingGuide`, aceptan solo el nombre de herramienta desnudo sin especificador.

87 87 

88Una regla de permiso `Edit(...)` también otorga acceso de lectura a la misma ruta, por lo que no necesita una regla `Read(...)` coincidente. {/* min-version: 2.1.208 */}Una regla de denegación `Read(...)` también bloquea la herramienta Edit en la misma ruta, incluida la creación de un archivo nuevo allí, porque la edición requiere leer el resultado nuevamente. La verificación de denegación `Read` en ediciones requiere Claude Code v2.1.208 o posterior.88Una regla de permiso `Edit(...)` también otorga acceso de lectura a la misma ruta, por lo que no necesita una regla `Read(...)` coincidente. Una regla de denegación `Read(...)` también bloquea la herramienta Edit en la misma ruta, incluida la creación de un archivo nuevo allí, porque la edición requiere leer el resultado nuevamente. La verificación de denegación `Read` en ediciones requiere Claude Code v2.1.208 o posterior.

89 89 

90Los campos `matcher` de Hook utilizan nombres de herramientas desnudos, no el formato de regla entre paréntesis. Consulte [patrones de coincidencia](/es/hooks#matcher-patterns) para las reglas de coincidencia. Para los nombres de campo que cada herramienta pasa a `tool_input` en hooks, consulte la [referencia de entrada PreToolUse](/es/hooks#pretooluse-input).90Los campos `matcher` de Hook utilizan nombres de herramientas desnudos, no el formato de regla entre paréntesis. Consulte [patrones de coincidencia](/docs/es/hooks#matcher-patterns) para las reglas de coincidencia. Para los nombres de campo que cada herramienta pasa a `tool_input` en hooks, consulte la [referencia de entrada PreToolUse](/docs/es/hooks#pretooluse-input).

91 91 

92<h2 id="agent-tool-behavior">92<h2 id="agent-tool-behavior">

93 Comportamiento de la herramienta Agent93 Comportamiento de la herramienta Agent


95 95 

96La herramienta Agent genera un subagent en una ventana de contexto separada. El subagent trabaja a través de su tarea de forma autónoma, luego devuelve un único resultado de texto a la conversación principal. El principal no ve las llamadas de herramientas intermedias o salidas del subagent, solo ese resultado final.96La herramienta Agent genera un subagent en una ventana de contexto separada. El subagent trabaja a través de su tarea de forma autónoma, luego devuelve un único resultado de texto a la conversación principal. El principal no ve las llamadas de herramientas intermedias o salidas del subagent, solo ese resultado final.

97 97 

98Para limitar cuántos turnos ejecuta un subagent, establezca `maxTurns` en la [definición del subagent](/es/sub-agents#supported-frontmatter-fields).98Para limitar cuántos turnos ejecuta un subagent, establezca `maxTurns` en la [definición del subagent](/docs/es/sub-agents#supported-frontmatter-fields).

99 99 

100La misma herramienta Agent también lanza [subagents bifurcados](/es/sub-agents#fork-the-current-conversation) cuando el modo de bifurcación está habilitado. Una bifurcación hereda la conversación principal completa en lugar de comenzar de nuevo, siempre se ejecuta en segundo plano, y aún muestra solicitudes de permisos en su terminal. El resto de esta sección describe subagents nombrados.100La misma herramienta Agent también lanza [subagents bifurcados](/docs/es/sub-agents#fork-the-current-conversation) cuando el modo de bifurcación está habilitado. Una bifurcación hereda la conversación principal completa en lugar de comenzar de nuevo, siempre se ejecuta en segundo plano, y aún muestra solicitudes de permisos en su terminal. El resto de esta sección describe subagents nombrados.

101 101 

102Qué herramientas puede usar un subagent nombrado depende de los campos `tools` y `disallowedTools` en la [definición del subagent](/es/sub-agents):102Qué herramientas puede usar un subagent nombrado depende de los campos `tools` y `disallowedTools` en la [definición del subagent](/docs/es/sub-agents):

103 103 

104* **Ningún campo establecido**: el subagent hereda todas las herramientas disponibles para el principal.104* **Ningún campo establecido**: el subagent hereda todas las herramientas disponibles para el principal.

105* **Solo `tools`**: el subagent obtiene solo las herramientas listadas.105* **Solo `tools`**: el subagent obtiene solo las herramientas listadas.

106* **Solo `disallowedTools`**: el subagent obtiene todas las herramientas principales excepto las listadas.106* **Solo `disallowedTools`**: el subagent obtiene todas las herramientas principales excepto las listadas.

107* **Ambos establecidos**: `disallowedTools` tiene precedencia. Una herramienta listada en ambos se elimina.107* **Ambos establecidos**: `disallowedTools` tiene precedencia. Una herramienta listada en ambos se elimina.

108 108 

109Cuando la lista `tools` de un subagent se resuelve en ninguna herramienta en absoluto, por ejemplo porque cada entrada está mal escrita o nombra una herramienta que no está disponible para subagents, la herramienta Agent devuelve un error listando esas entradas en lugar de lanzar el subagent. {/* min-version: 2.1.208 */}Antes de v2.1.208, el subagent se lanzaba sin herramientas y podría devolver un resultado vacío o confuso.109Cuando la lista `tools` de un subagent se resuelve en ninguna herramienta en absoluto, por ejemplo porque cada entrada está mal escrita o nombra una herramienta que no está disponible para subagents, la herramienta Agent devuelve un error listando esas entradas en lugar de lanzar el subagent. Antes de v2.1.208, el subagent se lanzaba sin herramientas y podría devolver un resultado vacío o confuso.

110 110 

111Lanzar el subagent no solicita permiso en sí mismo. Claude Code verifica las llamadas de herramientas propias del subagent contra sus reglas de permisos mientras se ejecuta.111Lanzar el subagent no solicita permiso en sí mismo. Claude Code verifica las llamadas de herramientas propias del subagent contra sus reglas de permisos mientras se ejecuta.

112 112 

113{/* min-version: 2.1.198 */}A partir de v2.1.198, los subagents se ejecutan en segundo plano de forma predeterminada; Claude ejecuta uno en primer plano cuando necesita el resultado antes de continuar.113A partir de v2.1.198, los subagents se ejecutan en segundo plano de forma predeterminada; Claude ejecuta uno en primer plano cuando necesita el resultado antes de continuar.

114 114 

115* **Subagents en primer plano** muestran los mismos solicitudes de permisos que vería en la conversación principal, en el momento en que ocurre cada llamada de herramienta.115* **Subagents en primer plano** muestran los mismos solicitudes de permisos que vería en la conversación principal, en el momento en que ocurre cada llamada de herramienta.

116* **Subagents en segundo plano** {/* min-version: 2.1.186 */}muestran solicitudes de permisos en su sesión principal a partir de v2.1.186. El aviso indica qué subagent está solicitando, y presionar Esc deniega esa única llamada de herramienta sin detener el subagent. Antes de v2.1.186, los subagents en segundo plano denegaban automáticamente cualquier llamada de herramienta que de otro modo solicitaría y continuaban sin esa herramienta.116* **Subagents en segundo plano** muestran solicitudes de permisos en su sesión principal a partir de v2.1.186. El aviso indica qué subagent está solicitando, y presionar Esc deniega esa única llamada de herramienta sin detener el subagent. Antes de v2.1.186, los subagents en segundo plano denegaban automáticamente cualquier llamada de herramienta que de otro modo solicitaría y continuaban sin esa herramienta.

117 117 

118Para limitar lo que un subagent puede alcanzar en primer lugar, reduzca su campo `tools`, deje Bash fuera de la lista, o establezca reglas de denegación en su configuración, como se describe en [Controlar capacidades de subagent](/es/sub-agents#control-subagent-capabilities). Para más información sobre cómo elegir entre primer plano y segundo plano, consulte [Ejecutar subagents en primer plano o segundo plano](/es/sub-agents#run-subagents-in-foreground-or-background).118Para limitar lo que un subagent puede alcanzar en primer lugar, reduzca su campo `tools`, deje Bash fuera de la lista, o establezca reglas de denegación en su configuración, como se describe en [Controlar capacidades de subagent](/docs/es/sub-agents#control-subagent-capabilities). Para más información sobre cómo elegir entre primer plano y segundo plano, consulte [Ejecutar subagents en primer plano o segundo plano](/docs/es/sub-agents#run-subagents-in-foreground-or-background).

119 119 

120<h2 id="bash-tool-behavior">120<h2 id="bash-tool-behavior">

121 Comportamiento de la herramienta Bash121 Comportamiento de la herramienta Bash


123 123 

124La herramienta Bash ejecuta cada comando en un proceso separado con el siguiente comportamiento de persistencia:124La herramienta Bash ejecuta cada comando en un proceso separado con el siguiente comportamiento de persistencia:

125 125 

126* Cuando Claude ejecuta `cd` en la sesión principal, el nuevo directorio de trabajo se mantiene en comandos Bash posteriores siempre que permanezca dentro del directorio del proyecto o un [directorio de trabajo adicional](/es/permissions#working-directories) que agregó con `--add-dir`, `/add-dir`, o `additionalDirectories` en la configuración. Las sesiones de subagents nunca mantienen cambios de directorio de trabajo.126* Cuando Claude ejecuta `cd` en la sesión principal, el nuevo directorio de trabajo se mantiene en comandos Bash posteriores siempre que permanezca dentro del directorio del proyecto o un [directorio de trabajo adicional](/docs/es/permissions#working-directories) que agregó con `--add-dir`, `/add-dir`, o `additionalDirectories` en la configuración. Las sesiones de subagents nunca mantienen cambios de directorio de trabajo.

127 * Si `cd` cae fuera de esos directorios, Claude Code se reinicia al directorio del proyecto y añade `Shell cwd was reset to <dir>` al resultado de la herramienta.127 * Si `cd` cae fuera de esos directorios, Claude Code se reinicia al directorio del proyecto y añade `Shell cwd was reset to <dir>` al resultado de la herramienta.

128 * Para desactivar este mantenimiento para que cada comando Bash comience en el directorio del proyecto, establezca `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR=1`.128 * Para desactivar este mantenimiento para que cada comando Bash comience en el directorio del proyecto, establezca `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR=1`.

129* Las variables de entorno no persisten. Un `export` en un comando no estará disponible en el siguiente.129* Las variables de entorno no persisten. Un `export` en un comando no estará disponible en el siguiente.

130* Los alias y funciones de shell definidas en su archivo de inicio de shell están disponibles. Al inicio de la sesión, Claude Code obtiene `~/.zshrc`, `~/.bashrc`, o `~/.profile` dependiendo de su shell, captura los alias, funciones y opciones de shell resultantes, y los aplica a cada comando Bash.130* Los alias y funciones de shell definidas en su archivo de inicio de shell están disponibles. Al inicio de la sesión, Claude Code obtiene `~/.zshrc`, `~/.bashrc`, o `~/.profile` dependiendo de su shell, captura los alias, funciones y opciones de shell resultantes, y los aplica a cada comando Bash.

131 131 

132Active su entorno virtualenv o conda antes de lanzar Claude Code. Para hacer que las variables de entorno persistan entre comandos Bash, establezca [`CLAUDE_ENV_FILE`](/es/env-vars) en un script de shell antes de lanzar Claude Code, o use un [hook SessionStart](/es/hooks#persist-environment-variables) para poblarlo dinámicamente.132Active su entorno virtualenv o conda antes de lanzar Claude Code. Para hacer que las variables de entorno persistan entre comandos Bash, establezca [`CLAUDE_ENV_FILE`](/docs/es/env-vars) en un script de shell antes de lanzar Claude Code, o use un [hook SessionStart](/docs/es/hooks#persist-environment-variables) para poblarlo dinámicamente.

133 133 

134Dos límites acotan cada comando:134Dos límites acotan cada comando:

135 135 

136* **Tiempo de espera**: dos minutos por defecto. Claude puede solicitar hasta 10 minutos por comando con el parámetro `timeout`. Anule el valor predeterminado y el techo con [`BASH_DEFAULT_TIMEOUT_MS` y `BASH_MAX_TIMEOUT_MS`](/es/env-vars).136* **Tiempo de espera**: dos minutos por defecto. Claude puede solicitar hasta 10 minutos por comando con el parámetro `timeout`. Anule el valor predeterminado y el techo con [`BASH_DEFAULT_TIMEOUT_MS` y `BASH_MAX_TIMEOUT_MS`](/docs/es/env-vars).

137* **Longitud de salida**: 30.000 caracteres por defecto. Cuando un comando produce más que eso, Claude Code guarda la salida completa en un archivo en el directorio de sesión y le da a Claude la ruta del archivo más una vista previa corta desde el inicio. Claude lee o busca ese archivo cuando necesita el resto. Aumente el límite con [`BASH_MAX_OUTPUT_LENGTH`](/es/env-vars), hasta un techo duro de 150.000 caracteres.137* **Longitud de salida**: 30.000 caracteres por defecto. Cuando un comando produce más que eso, Claude Code guarda la salida completa en un archivo en el directorio de sesión y le da a Claude la ruta del archivo más una vista previa corta desde el inicio. Claude lee o busca ese archivo cuando necesita el resto. Aumente el límite con [`BASH_MAX_OUTPUT_LENGTH`](/docs/es/env-vars), hasta un techo duro de 150.000 caracteres.

138 138 

139Para procesos de larga duración como servidores de desarrollo o compilaciones de vigilancia, Claude puede establecer `run_in_background: true` para iniciar el comando como una tarea de fondo y continuar trabajando mientras se ejecuta. Liste y detenga tareas de fondo con `/tasks`. En modo no interactivo con la bandera `-p`, [las tareas de fondo terminan poco después del resultado final de la ejecución](/es/headless#background-tasks-at-exit).139Para procesos de larga duración como servidores de desarrollo o compilaciones de vigilancia, Claude puede establecer `run_in_background: true` para iniciar el comando como una tarea de fondo y continuar trabajando mientras se ejecuta. Liste y detenga tareas de fondo con `/tasks`. En modo no interactivo con la bandera `-p`, [las tareas de fondo terminan poco después del resultado final de la ejecución](/docs/es/headless#background-tasks-at-exit).

140 140 

141<h2 id="edit-tool-behavior">141<h2 id="edit-tool-behavior">

142 Comportamiento de la herramienta Edit142 Comportamiento de la herramienta Edit


144 144 

145La herramienta Edit realiza reemplazo exacto de cadenas. Toma un `old_string` y un `new_string` y reemplaza el primero con el segundo. No utiliza expresiones regulares o coincidencia difusa.145La herramienta Edit realiza reemplazo exacto de cadenas. Toma un `old_string` y un `new_string` y reemplaza el primero con el segundo. No utiliza expresiones regulares o coincidencia difusa.

146 146 

147Tres verificaciones deben pasar para que se aplique una edición. {/* min-version: 2.1.208 */}Antes de cualquiera de ellas, una ruta coincidida por una [regla de denegación de `Read`](/es/permissions#tool-specific-permission-rules) es rechazada, incluyendo la creación de un nuevo archivo allí. El rechazo requiere Claude Code v2.1.208 o posterior.147Tres verificaciones deben pasar para que se aplique una edición. Antes de cualquiera de ellas, una ruta coincidida por una [regla de denegación de `Read`](/docs/es/permissions#tool-specific-permission-rules) es rechazada, incluyendo la creación de un nuevo archivo allí. El rechazo requiere Claude Code v2.1.208 o posterior.

148 148 

149* **Lectura antes de edición**: Claude lee el archivo en la conversación actual antes de editarlo, y una lectura interrumpida con un aviso de [`PARTIAL view`](#read-tool-behavior) no cuenta. Claude Opus 4.6, Claude Haiku 4.5 y modelos más antiguos siempre requieren la lectura. Los modelos más nuevos pueden editar un archivo no leído cuando leerlo no requeriría un aviso de permiso y la herramienta Read está disponible.149* **Lectura antes de edición**: Claude lee el archivo en la conversación actual antes de editarlo, y una lectura interrumpida con un aviso de [`PARTIAL view`](#read-tool-behavior) no cuenta. Claude Opus 4.6, Claude Haiku 4.5 y modelos más antiguos siempre requieren la lectura. Los modelos más nuevos pueden editar un archivo no leído cuando leerlo no requeriría un aviso de permiso y la herramienta Read está disponible.

150* **Coincidencia**: `old_string` debe aparecer en el archivo exactamente como está escrito. Una sola diferencia de carácter de espacio en blanco o indentación es suficiente para fallar.150* **Coincidencia**: `old_string` debe aparecer en el archivo exactamente como está escrito. Una sola diferencia de carácter de espacio en blanco o indentación es suficiente para fallar.

151* **Unicidad**: `old_string` debe aparecer exactamente una vez. Cuando aparece más de una vez, Claude proporciona una cadena más larga con suficiente contexto circundante para fijar una ocurrencia, o establece `replace_all: true` para reemplazarlas todas.151* **Unicidad**: `old_string` debe aparecer exactamente una vez. Cuando aparece más de una vez, Claude proporciona una cadena más larga con suficiente contexto circundante para fijar una ocurrencia, o establece `replace_all: true` para reemplazarlas todas.

152 152 

153Un archivo que cambió en el disco después de que Claude lo leyó por última vez aún puede ser editado cuando `old_string` coincide exactamente con el contenido actual de forma inequívoca y Claude Code puede leer el archivo sin solicitar permiso. La coincidencia con el contenido actual del archivo mantiene esto seguro, y el resultado indica que el archivo contiene otros cambios para que Claude lo vuelva a leer antes de ediciones que dependan del contenido circundante. En cualquier otro caso, como un `old_string` obsoleto o uno que coincide más de una vez sin `replace_all`, Claude lee el archivo nuevamente antes de editar. {/* min-version: 2.1.208 */}El manejo relajado de archivos no leídos y modificados requiere Claude Code v2.1.208 o posterior; antes de eso, Claude Code rechazaba cualquier edición a un archivo que no hubiera leído en la conversación o que hubiera cambiado en el disco después de la lectura.153Un archivo que cambió en el disco después de que Claude lo leyó por última vez aún puede ser editado cuando `old_string` coincide exactamente con el contenido actual de forma inequívoca y Claude Code puede leer el archivo sin solicitar permiso. La coincidencia con el contenido actual del archivo mantiene esto seguro, y el resultado indica que el archivo contiene otros cambios para que Claude lo vuelva a leer antes de ediciones que dependan del contenido circundante. En cualquier otro caso, como un `old_string` obsoleto o uno que coincide más de una vez sin `replace_all`, Claude lee el archivo nuevamente antes de editar. El manejo relajado de archivos no leídos y modificados requiere Claude Code v2.1.208 o posterior; antes de eso, Claude Code rechazaba cualquier edición a un archivo que no hubiera leído en la conversación o que hubiera cambiado en el disco después de la lectura.

154 154 

155Ver un archivo con Bash también satisface el requisito de lectura antes de edición cuando el comando es `cat`, `head`, `tail`, `sed -n 'X,Yp'`, `grep`, `egrep`, o `fgrep` en un único archivo sin tuberías o redirecciones. La salida canalizada y otros comandos Bash no cuentan hacia la verificación de lectura antes de edición.155Ver un archivo con Bash también satisface el requisito de lectura antes de edición cuando el comando es `cat`, `head`, `tail`, `sed -n 'X,Yp'`, `grep`, `egrep`, o `fgrep` en un único archivo sin tuberías o redirecciones. La salida canalizada y otros comandos Bash no cuentan hacia la verificación de lectura antes de edición.

156 156 

157Esto afecta solo la elegibilidad de edición, no los permisos. Las [reglas de denegación de Read y Edit](/es/permissions#tool-specific-permission-rules) también se aplican a comandos de archivo que Claude Code reconoce en Bash, como `cat`, `head`, `tail`, `sed`, y `grep`, pero no a subprocesos arbitrarios que leen o escriben archivos indirectamente, como un script de Python o Node que abre archivos por sí mismo. El conjunto de comandos reconocidos para reglas de denegación no es el mismo que la lista de lectura antes de edición anterior: por ejemplo, `egrep` y `fgrep` cuentan para lectura antes de edición pero no se verifican contra reglas de denegación de Read. Para la aplicación a nivel del sistema operativo que cubre todos los procesos, [habilite el sandbox](/es/sandboxing).157Esto afecta solo la elegibilidad de edición, no los permisos. Las [reglas de denegación de Read y Edit](/docs/es/permissions#tool-specific-permission-rules) también se aplican a comandos de archivo que Claude Code reconoce en Bash, como `cat`, `head`, `tail`, `sed`, y `grep`, pero no a subprocesos arbitrarios que leen o escriben archivos indirectamente, como un script de Python o Node que abre archivos por sí mismo. El conjunto de comandos reconocidos para reglas de denegación no es el mismo que la lista de lectura antes de edición anterior: por ejemplo, `egrep` y `fgrep` cuentan para lectura antes de edición pero no se verifican contra reglas de denegación de Read. Para la aplicación a nivel del sistema operativo que cubre todos los procesos, [habilite el sandbox](/docs/es/sandboxing).

158 158 

159<h2 id="glob-tool-behavior">159<h2 id="glob-tool-behavior">

160 Comportamiento de la herramienta Glob160 Comportamiento de la herramienta Glob


170 170 

171Glob no respeta `.gitignore` por defecto, por lo que encuentra archivos ignorados por git junto con los rastreados. Esto difiere de [Grep](#grep-tool-behavior), que omite archivos ignorados por git. Para hacer que Glob respete `.gitignore`, establezca `CLAUDE_CODE_GLOB_NO_IGNORE=false` antes de lanzar Claude Code.171Glob no respeta `.gitignore` por defecto, por lo que encuentra archivos ignorados por git junto con los rastreados. Esto difiere de [Grep](#grep-tool-behavior), que omite archivos ignorados por git. Para hacer que Glob respete `.gitignore`, establezca `CLAUDE_CODE_GLOB_NO_IGNORE=false` antes de lanzar Claude Code.

172 172 

173Un valor de `pattern` o `path` que contenga un byte nulo devuelve un error pidiendo a Claude que lo elimine. {/* min-version: 2.1.208 */}173Un valor de `pattern` o `path` que contenga un byte nulo devuelve un error pidiendo a Claude que lo elimine.&#x20;

174 174 

175<h2 id="grep-tool-behavior">175<h2 id="grep-tool-behavior">

176 Comportamiento de la herramienta Grep176 Comportamiento de la herramienta Grep


180 180 

181Grep se basa en [ripgrep](https://github.com/BurntSushi/ripgrep) y utiliza la sintaxis regex de ripgrep, no grep de POSIX. Los patrones que incluyen metacaracteres regex necesitan escape. Por ejemplo, encontrar `interface{}` en código Go requiere el patrón `interface\{\}`.181Grep se basa en [ripgrep](https://github.com/BurntSushi/ripgrep) y utiliza la sintaxis regex de ripgrep, no grep de POSIX. Los patrones que incluyen metacaracteres regex necesitan escape. Por ejemplo, encontrar `interface{}` en código Go requiere el patrón `interface\{\}`.

182 182 

183Un patrón, glob o tipo de archivo que ripgrep rechaza devuelve un error que incluye el diagnóstico de ripgrep, para que Claude pueda corregir la entrada y buscar de nuevo. {/* min-version: 2.1.208 */}Antes de v2.1.208, Claude Code reportaba una entrada rechazada como `No files found` en lugar de un error, incluso cuando el texto buscado existía en los archivos de destino.183Un patrón, glob o tipo de archivo que ripgrep rechaza devuelve un error que incluye el diagnóstico de ripgrep, para que Claude pueda corregir la entrada y buscar de nuevo. Antes de v2.1.208, Claude Code reportaba una entrada rechazada como `No files found` en lugar de un error, incluso cuando el texto buscado existía en los archivos de destino.

184 184 

185Tres modos de salida controlan lo que regresa:185Tres modos de salida controlan lo que regresa:

186 186 

187* `files_with_matches`: solo rutas de archivo, sin contenido de línea. Este es el predeterminado.187* `files_with_matches`: solo rutas de archivo, sin contenido de línea. Este es el predeterminado.

188* `content`: líneas coincidentes con número de archivo y línea.188* `content`: líneas coincidentes con número de archivo y línea.

189* `count`: recuento de coincidencias por archivo, seguido de un total en todos los archivos coincidentes. {/* min-version: 2.1.208 */}El total cubre cada coincidencia incluso cuando los parámetros `head_limit` u `offset` de la herramienta truncan las entradas por archivo listadas. Antes de v2.1.208, el total solo sumaba las entradas listadas.189* `count`: recuento de coincidencias por archivo, seguido de un total en todos los archivos coincidentes. El total cubre cada coincidencia incluso cuando los parámetros `head_limit` u `offset` de la herramienta truncan las entradas por archivo listadas. Antes de v2.1.208, el total solo sumaba las entradas listadas.

190 190 

191Claude puede limitar resultados por archivo con el parámetro `glob`, como `**/*.tsx`, o por lenguaje con el parámetro `type`, como `py` o `rust`. Por defecto, los patrones coinciden dentro de una sola línea. Claude puede establecer `multiline: true` para coincidir entre límites de línea.191Claude puede limitar resultados por archivo con el parámetro `glob`, como `**/*.tsx`, o por lenguaje con el parámetro `type`, como `py` o `rust`. Por defecto, los patrones coinciden dentro de una sola línea. Claude puede establecer `multiline: true` para coincidir entre límites de línea.

192 192 


206* Encontrar implementaciones de una interfaz206* Encontrar implementaciones de una interfaz

207* Rastrear jerarquías de llamadas207* Rastrear jerarquías de llamadas

208 208 

209La herramienta está inactiva hasta que instale un [plugin de inteligencia de código](/es/discover-plugins#code-intelligence) para su lenguaje. El plugin agrupa la configuración del servidor de lenguaje, e instala el binario del servidor por separado.209La herramienta está inactiva hasta que instale un [plugin de inteligencia de código](/docs/es/discover-plugins#code-intelligence) para su lenguaje. El plugin agrupa la configuración del servidor de lenguaje, e instala el binario del servidor por separado.

210 210 

211<h2 id="monitor-tool">211<h2 id="monitor-tool">

212 Herramienta Monitor212 Herramienta Monitor


224 224 

225Continúa trabajando en la misma sesión y Claude interviene cuando llega un evento. Detenga un monitor pidiendo a Claude que lo cancele o terminando la sesión.225Continúa trabajando en la misma sesión y Claude interviene cuando llega un evento. Detenga un monitor pidiendo a Claude que lo cancele o terminando la sesión.

226 226 

227Cuando Monitor ejecuta un comando, utiliza las mismas [reglas de permisos que Bash](/es/permissions#tool-specific-permission-rules), por lo que los patrones `allow` y `deny` que tiene establecidos para Bash se aplican aquí también. La [fuente de WebSocket](#websocket-source) tiene su propio mensaje de aprobación.227Cuando Monitor ejecuta un comando, utiliza las mismas [reglas de permisos que Bash](/docs/es/permissions#tool-specific-permission-rules), por lo que los patrones `allow` y `deny` que tiene establecidos para Bash se aplican aquí también. La [fuente de WebSocket](#websocket-source) tiene su propio mensaje de aprobación.

228 228 

229La herramienta no está disponible en Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry. Tampoco está disponible cuando `DISABLE_TELEMETRY` o `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` está establecido.229La herramienta no está disponible en Amazon Bedrock, Google Cloud's Agent Platform, o Microsoft Foundry. Tampoco está disponible cuando `DISABLE_TELEMETRY` o `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` está establecido.

230 230 

231Los plugins pueden declarar monitores que se inician automáticamente cuando el plugin está activo, en lugar de pedirle a Claude que los inicie. Consulte [monitores de plugins](/es/plugins-reference#monitors).231Los plugins pueden declarar monitores que se inician automáticamente cuando el plugin está activo, en lugar de pedirle a Claude que los inicie. Consulte [monitores de plugins](/docs/es/plugins-reference#monitors).

232 232 

233<h3 id="websocket-source">233<h3 id="websocket-source">

234 Fuente de WebSocket234 Fuente de WebSocket


256 256 

257Abrir un WebSocket solicita aprobación, y el mensaje no ofrece una opción para omitir futuros mensajes para el mismo host.257Abrir un WebSocket solicita aprobación, y el mensaje no ofrece una opción para omitir futuros mensajes para el mismo host.

258 258 

259Claude Code rechaza las URL que apuntan a una dirección privada, link-local o de metadatos en la nube, incluidos los nombres de host que se resuelven en una. También rechaza los hosts en `sandbox.network.deniedDomains`, y cuando [`allowManagedDomainsOnly`](/es/settings#sandbox-settings) está establecido en la configuración administrada, cualquier host fuera de la lista de permitidos administrada.259Claude Code rechaza las URL que apuntan a una dirección privada, link-local o de metadatos en la nube, incluidos los nombres de host que se resuelven en una. También rechaza los hosts en `sandbox.network.deniedDomains`, y cuando [`allowManagedDomainsOnly`](/docs/es/settings#sandbox-settings) está establecido en la configuración administrada, cualquier host fuera de la lista de permitidos administrada.

260 260 

261<h2 id="notebookedit-tool-behavior">261<h2 id="notebookedit-tool-behavior">

262 Comportamiento de la herramienta NotebookEdit262 Comportamiento de la herramienta NotebookEdit


308 308 

309Tres configuraciones adicionales controlan dónde se usa PowerShell:309Tres configuraciones adicionales controlan dónde se usa PowerShell:

310 310 

311* `"defaultShell": "powershell"` en [`settings.json`](/es/settings#available-settings): enruta comandos interactivos `!` a través de PowerShell. Requiere que la herramienta PowerShell esté habilitada.311* `"defaultShell": "powershell"` en [`settings.json`](/docs/es/settings#available-settings): enruta comandos interactivos `!` a través de PowerShell. Requiere que la herramienta PowerShell esté habilitada.

312* `"shell": "powershell"` en [hooks de comando](/es/hooks#command-hook-fields) individuales: ejecuta ese hook en PowerShell. Los hooks generan PowerShell directamente, por lo que esto funciona independientemente de `CLAUDE_CODE_USE_POWERSHELL_TOOL`.312* `"shell": "powershell"` en [hooks de comando](/docs/es/hooks#command-hook-fields) individuales: ejecuta ese hook en PowerShell. Los hooks generan PowerShell directamente, por lo que esto funciona independientemente de `CLAUDE_CODE_USE_POWERSHELL_TOOL`.

313* `shell: powershell` en [frontmatter de skill](/es/skills#frontmatter-reference): ejecuta bloques `` !`command` `` en PowerShell. Requiere que la herramienta PowerShell esté habilitada.313* `shell: powershell` en [frontmatter de skill](/docs/es/skills#frontmatter-reference): ejecuta bloques `` !`command` `` en PowerShell. Requiere que la herramienta PowerShell esté habilitada.

314 314 

315El mismo comportamiento de reinicio del directorio de trabajo de la sesión principal descrito en la sección de la herramienta Bash se aplica a los comandos de PowerShell, incluida la variable de entorno `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR`.315El mismo comportamiento de reinicio del directorio de trabajo de la sesión principal descrito en la sección de la herramienta Bash se aplica a los comandos de PowerShell, incluida la variable de entorno `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR`.

316 316 

317{/* min-version: 2.1.196 */}A partir de v2.1.196, la herramienta PowerShell coincide con el manejo de códigos de salida de búsqueda y diff de la herramienta Bash. El código de salida 1 de `grep`, `egrep`, `fgrep` y `git grep` significa que no hay coincidencias, y el código de salida 1 de `git diff` significa que existen diferencias, por lo que estos resultados no se reportan a Claude como fallos de comando.317A partir de v2.1.196, la herramienta PowerShell coincide con el manejo de códigos de salida de búsqueda y diff de la herramienta Bash. El código de salida 1 de `grep`, `egrep`, `fgrep` y `git grep` significa que no hay coincidencias, y el código de salida 1 de `git diff` significa que existen diferencias, por lo que estos resultados no se reportan a Claude como fallos de comando.

318 318 

319<h3 id="preview-limitations">319<h3 id="preview-limitations">

320 Limitaciones de vista previa320 Limitaciones de vista previa


333 333 

334Por defecto, Read devuelve el archivo desde el inicio. Cuando una lectura de archivo completo excede el límite de tokens, Read devuelve la primera página con un aviso de `PARTIAL view` que le indica a Claude cuánto del archivo recibió y cómo leer más con `offset` y `limit`. Una lectura que pasa un `offset` o `limit` explícito y aún así excede el límite de tokens devuelve un error.334Por defecto, Read devuelve el archivo desde el inicio. Cuando una lectura de archivo completo excede el límite de tokens, Read devuelve la primera página con un aviso de `PARTIAL view` que le indica a Claude cuánto del archivo recibió y cómo leer más con `offset` y `limit`. Una lectura que pasa un `offset` o `limit` explícito y aún así excede el límite de tokens devuelve un error.

335 335 

336Una lectura con un `limit` explícito se detiene tan pronto como las líneas seleccionadas excedan lo que el límite de tokens podría caber y devuelve un error sin cargar el resto del rango. El error le indica a Claude que use un `limit` más pequeño, o que busque contenido específico con [Grep](#grep-tool-behavior) en su lugar cuando una sola línea sea tan grande. {/* min-version: 2.1.208 */}Antes de v2.1.208, Claude Code cargaba todo el rango en memoria antes de rechazarlo, por lo que un archivo con una sola línea extremadamente larga podría agotar la memoria.336Una lectura con un `limit` explícito se detiene tan pronto como las líneas seleccionadas excedan lo que el límite de tokens podría caber y devuelve un error sin cargar el resto del rango. El error le indica a Claude que use un `limit` más pequeño, o que busque contenido específico con [Grep](#grep-tool-behavior) en su lugar cuando una sola línea sea tan grande. Antes de v2.1.208, Claude Code cargaba todo el rango en memoria antes de rechazarlo, por lo que un archivo con una sola línea extremadamente larga podría agotar la memoria.

337 337 

338Leer un archivo vacío devuelve un aviso de que el archivo existe pero su contenido está vacío, y un `offset` más allá de la última línea devuelve un aviso que proporciona el recuento de líneas del archivo. {/* min-version: 2.1.208 */}Antes de v2.1.208, leer un archivo vacío devolvía el aviso de fin de archivo en su lugar.338Leer un archivo vacío devuelve un aviso de que el archivo existe pero su contenido está vacío, y un `offset` más allá de la última línea devuelve un aviso que proporciona el recuento de líneas del archivo. Antes de v2.1.208, leer un archivo vacío devolvía el aviso de fin de archivo en su lugar.

339 339 

340Read maneja varios tipos de archivo más allá del texto simple:340Read maneja varios tipos de archivo más allá del texto simple:

341 341 


360* Las respuestas se almacenan en caché durante 15 minutos, por lo que las obtenciones repetidas de la misma URL regresan rápidamente.360* Las respuestas se almacenan en caché durante 15 minutos, por lo que las obtenciones repetidas de la misma URL regresan rápidamente.

361* Cuando una URL se redirige a un host diferente, WebFetch devuelve un resultado de texto que nombra la URL original y el destino de redirección en lugar de seguirlo. Claude luego obtiene la nueva URL con una segunda llamada de WebFetch.361* Cuando una URL se redirige a un host diferente, WebFetch devuelve un resultado de texto que nombra la URL original y el destino de redirección en lugar de seguirlo. Claude luego obtiene la nueva URL con una segunda llamada de WebFetch.

362 362 

363En los modos de permiso predeterminado y `acceptEdits`, WebFetch solicita la primera vez que alcanza un nuevo dominio, excepto por un conjunto integrado de dominios de documentación preaprobados que se obtienen sin una solicitud. Para permitir otro dominio por adelantado sin una solicitud, agregue una regla de permiso como `WebFetch(domain:example.com)`. Los modos de permiso `auto` y `bypassPermissions` [permission modes](/es/permissions#permission-modes) omiten la solicitud completamente.363En los modos de permiso predeterminado y `acceptEdits`, WebFetch solicita la primera vez que alcanza un nuevo dominio, excepto por un conjunto integrado de dominios de documentación preaprobados que se obtienen sin una solicitud. Para permitir otro dominio por adelantado sin una solicitud, agregue una regla de permiso como `WebFetch(domain:example.com)`. Los modos de permiso `auto` y `bypassPermissions` [permission modes](/docs/es/permissions#permission-modes) omiten la solicitud completamente.

364 364 

365Una regla explícita `WebFetch(domain:...)` en `deny`, `ask` o `allow` tiene precedencia sobre el conjunto preaprobado, por lo que puede bloquear un dominio preaprobado o requerir una solicitud para él.365Una regla explícita `WebFetch(domain:...)` en `deny`, `ask` o `allow` tiene precedencia sobre el conjunto preaprobado, por lo que puede bloquear un dominio preaprobado o requerir una solicitud para él.

366 366 

367WebFetch establece un encabezado `User-Agent` que comienza con `Claude-User`, y un encabezado `Accept` que prefiere Markdown sobre HTML para que los servidores que admiten negociación de contenido puedan devolver Markdown directamente.367WebFetch establece un encabezado `User-Agent` que comienza con `Claude-User`, y un encabezado `Accept` que prefiere Markdown sobre HTML para que los servidores que admiten negociación de contenido puedan devolver Markdown directamente.

368 368 

369Usted configura [reglas de red de sandbox](/es/sandboxing) por separado, por lo que un dominio que desea que un proceso en sandbox alcance aún necesita una regla de permiso de sandbox explícita.369Usted configura [reglas de red de sandbox](/docs/es/sandboxing) por separado, por lo que un dominio que desea que un proceso en sandbox alcance aún necesita una regla de permiso de sandbox explícita.

370 370 

371<h2 id="websearch-tool-behavior">371<h2 id="websearch-tool-behavior">

372 Comportamiento de la herramienta WebSearch372 Comportamiento de la herramienta WebSearch


376 376 

377La herramienta puede emitir hasta ocho búsquedas de backend por llamada, refinando la búsqueda internamente antes de devolver resultados. Claude puede limitar resultados con `allowed_domains` para incluir solo ciertos hosts, o `blocked_domains` para excluirlos. Las dos listas no se pueden combinar en una sola llamada.377La herramienta puede emitir hasta ocho búsquedas de backend por llamada, refinando la búsqueda internamente antes de devolver resultados. Claude puede limitar resultados con `allowed_domains` para incluir solo ciertos hosts, o `blocked_domains` para excluirlos. Las dos listas no se pueden combinar en una sola llamada.

378 378 

379El backend de búsqueda no es configurable. Para buscar con un proveedor diferente, agregue un [servidor MCP](/es/mcp) que exponga una herramienta de búsqueda.379El backend de búsqueda no es configurable. Para buscar con un proveedor diferente, agregue un [servidor MCP](/docs/es/mcp) que exponga una herramienta de búsqueda.

380 380 

381Las reglas de permisos de WebSearch no toman especificador. Una entrada `WebSearch` desnuda en `allow` o `deny` es la única forma.381Las reglas de permisos de WebSearch no toman especificador. Una entrada `WebSearch` desnuda en `allow` o `deny` es la única forma.

382 382 

383<Note>383<Note>

384 WebSearch está disponible en la API de Claude, [Claude Platform on AWS](/es/claude-platform-on-aws), y Microsoft Foundry. En Google Cloud's Agent Platform funciona con modelos Claude 4 y posteriores, incluyendo Opus, Sonnet y Haiku. Amazon Bedrock no expone la herramienta de búsqueda web del lado del servidor.384 WebSearch está disponible en la API de Claude, [Claude Platform on AWS](/docs/es/claude-platform-on-aws), y Microsoft Foundry. En Google Cloud's Agent Platform funciona con modelos Claude 4 y posteriores, incluyendo Opus, Sonnet y Haiku. Amazon Bedrock no expone la herramienta de búsqueda web del lado del servidor.

385</Note>385</Note>

386 386 

387<h2 id="write-tool-behavior">387<h2 id="write-tool-behavior">


409Claude proporciona un resumen conversacional. Para nombres exactos de herramientas MCP, ejecute `/mcp`.409Claude proporciona un resumen conversacional. Para nombres exactos de herramientas MCP, ejecute `/mcp`.

410 410 

411<Note>411<Note>

412 La [herramienta advisor](/es/advisor) es una [herramienta de servidor](https://platform.claude.com/docs/en/agents-and-tools/tool-use/advisor-tool) que ejecuta la API, en lugar de una herramienta que implementa Claude Code. No tiene un nombre que pueda referenciar en reglas de permisos o coincidencias de hooks.412 La [herramienta advisor](/docs/es/advisor) es una [herramienta de servidor](https://platform.claude.com/docs/en/agents-and-tools/tool-use/advisor-tool) que ejecuta la API, en lugar de una herramienta que implementa Claude Code. No tiene un nombre que pueda referenciar en reglas de permisos o coincidencias de hooks.

413</Note>413</Note>

414 414 

415<h2 id="see-also">415<h2 id="see-also">

416 Véase también416 Véase también

417</h2>417</h2>

418 418 

419* [Servidores MCP](/es/mcp): agregue herramientas personalizadas conectando servidores externos419* [Servidores MCP](/docs/es/mcp): agregue herramientas personalizadas conectando servidores externos

420* [Permisos](/es/permissions): sistema de permisos, sintaxis de reglas y patrones específicos de herramientas420* [Permisos](/docs/es/permissions): sistema de permisos, sintaxis de reglas y patrones específicos de herramientas

421* [Subagents](/es/sub-agents): configure el acceso a herramientas para subagents421* [Subagents](/docs/es/sub-agents): configure el acceso a herramientas para subagents

422* [Hooks](/es/hooks-guide): ejecute comandos personalizados antes o después de la ejecución de herramientas422* [Hooks](/docs/es/hooks-guide): ejecute comandos personalizados antes o después de la ejecución de herramientas

Details

6 6 

7> Corrija errores de comando no encontrado, PATH, permisos, red y autenticación al instalar o iniciar sesión en Claude Code.7> Corrija errores de comando no encontrado, PATH, permisos, red y autenticación al instalar o iniciar sesión en Claude Code.

8 8 

9Si la instalación falla o no puede iniciar sesión, encuentre su error a continuación. Para problemas en tiempo de ejecución después de que Claude Code esté funcionando, consulte [Solución de problemas](/es/troubleshooting). Para problemas de configuración como configuraciones que no se aplican o hooks que no se disparan, consulte [Depurar su configuración](/es/debug-your-config).9Si la instalación falla o no puede iniciar sesión, encuentre su error a continuación. Para problemas en tiempo de ejecución después de que Claude Code esté funcionando, consulte [Solución de problemas](/docs/es/troubleshooting). Para problemas de configuración como configuraciones que no se aplican o hooks que no se disparan, consulte [Depurar su configuración](/docs/es/debug-your-config).

10 10 

11<h2 id="find-your-error">11<h2 id="find-your-error">

12 Encuentre su error12 Encuentre su error


41| `OAuth error` u `403 Forbidden` | [Corrija la autenticación](#login-and-authentication) |41| `OAuth error` u `403 Forbidden` | [Corrija la autenticación](#login-and-authentication) |

42| `Could not load the default credentials` o `Could not load credentials from any providers` | [Credenciales de Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry](#bedrock-agent-platform-or-foundry-credentials-not-loading) |42| `Could not load the default credentials` o `Could not load credentials from any providers` | [Credenciales de Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry](#bedrock-agent-platform-or-foundry-credentials-not-loading) |

43| `ChainedTokenCredential authentication failed` o `CredentialUnavailableError` | [Credenciales de Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry](#bedrock-agent-platform-or-foundry-credentials-not-loading) |43| `ChainedTokenCredential authentication failed` o `CredentialUnavailableError` | [Credenciales de Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry](#bedrock-agent-platform-or-foundry-credentials-not-loading) |

44| `API Error: 500`, `529 Overloaded`, `429`, u otros errores 4xx y 5xx no listados arriba | Consulte la [referencia de errores](/es/errors) |44| `API Error: 500`, `529 Overloaded`, `429`, u otros errores 4xx y 5xx no listados arriba | Consulte la [referencia de errores](/docs/es/errors) |

45 45 

46Si su problema no está listado, trabaje a través de las verificaciones de diagnóstico a continuación para reducir la causa.46Si su problema no está listado, trabaje a través de las verificaciones de diagnóstico a continuación para reducir la causa.

47 47 

48<Tip>48<Tip>

49 Si prefiere omitir la terminal por completo, la [aplicación de escritorio Claude Code](/es/desktop-quickstart) le permite instalar y usar Claude Code a través de una interfaz gráfica. Descárguela para [macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs) o [Windows](https://claude.com/download?utm_source=claude_code\&utm_medium=docs) y comience a codificar sin ninguna configuración de línea de comandos. En Linux, instale la aplicación con apt siguiendo las [instrucciones de instalación de Linux](/es/desktop-linux).49 Si prefiere omitir la terminal por completo, la [aplicación de escritorio Claude Code](/docs/es/desktop-quickstart) le permite instalar y usar Claude Code a través de una interfaz gráfica. Descárguela para [macOS](https://claude.ai/api/desktop/darwin/universal/dmg/latest/redirect?utm_source=claude_code\&utm_medium=docs) o [Windows](https://claude.com/download?utm_source=claude_code\&utm_medium=docs) y comience a codificar sin ninguna configuración de línea de comandos. En Linux, instale la aplicación con apt siguiendo las [instrucciones de instalación de Linux](/docs/es/desktop-linux).

50</Tip>50</Tip>

51 51 

52<h2 id="run-diagnostic-checks">52<h2 id="run-diagnostic-checks">


100Si la instalación fue exitosa pero obtiene un error `command not found` o `not recognized` al ejecutar `claude`, el directorio de instalación no está en su PATH. Su shell busca programas en directorios listados en PATH, y el instalador coloca `claude` en `~/.local/bin/claude` en macOS/Linux o `%USERPROFILE%\.local\bin\claude.exe` en Windows.100Si la instalación fue exitosa pero obtiene un error `command not found` o `not recognized` al ejecutar `claude`, el directorio de instalación no está en su PATH. Su shell busca programas en directorios listados en PATH, y el instalador coloca `claude` en `~/.local/bin/claude` en macOS/Linux o `%USERPROFILE%\.local\bin\claude.exe` en Windows.

101 101 

102<Note>102<Note>

103 La [extensión de VS Code](/es/vs-code) no coloca `claude` en esta ubicación. Agrupa una copia privada de la CLI dentro del directorio de la extensión para su propio panel de chat y no la agrega a PATH. Si solo ha instalado la extensión, `~/.local/bin/claude` no existirá. Ejecute la [instalación independiente](/es/setup) para usar `claude` desde una terminal, luego continúe a continuación.103 La [extensión de VS Code](/docs/es/vs-code) no coloca `claude` en esta ubicación. Agrupa una copia privada de la CLI dentro del directorio de la extensión para su propio panel de chat y no la agrega a PATH. Si solo ha instalado la extensión, `~/.local/bin/claude` no existirá. Ejecute la [instalación independiente](/docs/es/setup) para usar `claude` desde una terminal, luego continúe a continuación.

104</Note>104</Note>

105 105 

106Verifique si el directorio de instalación está en su PATH listando sus entradas de PATH y filtrando por `local/bin`:106Verifique si el directorio de instalación está en su PATH listando sus entradas de PATH y filtrando por `local/bin`:


196 ls -la ~/.local/bin/claude196 ls -la ~/.local/bin/claude

197 ```197 ```

198 198 

199 Una instalación nativa muestra un enlace simbólico en `~/.local/share/claude/versions/`. Un script o un enlace simbólico que creó usted mismo en esta ruta es un iniciador personalizado, que [la actualización automática deja en su lugar](/es/setup#auto-updates).199 Una instalación nativa muestra un enlace simbólico en `~/.local/share/claude/versions/`. Un script o un enlace simbólico que creó usted mismo en esta ruta es un iniciador personalizado, que [la actualización automática deja en su lugar](/docs/es/setup#auto-updates).

200 200 

201 Si algún comando `ls` imprime `No such file or directory`, eso no es un error. Significa que nada está instalado en esa ubicación, así que continúe con la siguiente verificación.201 Si algún comando `ls` imprime `No such file or directory`, eso no es un error. Significa que nada está instalado en esa ubicación, así que continúe con la siguiente verificación.

202 202 


294Get-Command claude | Select-Object Source294Get-Command claude | Select-Object Source

295```295```

296 296 

297En Linux, verifique bibliotecas compartidas faltantes. Si `ldd` muestra bibliotecas faltantes, es posible que deba instalar paquetes del sistema. En Alpine Linux y otras distribuciones basadas en musl, consulte [Configuración de Alpine Linux](/es/setup#alpine-linux-and-musl-based-distributions).297En Linux, verifique bibliotecas compartidas faltantes. Si `ldd` muestra bibliotecas faltantes, es posible que deba instalar paquetes del sistema. En Alpine Linux y otras distribuciones basadas en musl, consulte [Configuración de Alpine Linux](/docs/es/setup#alpine-linux-and-musl-based-distributions).

298 298 

299```bash theme={null}299```bash theme={null}

300ldd "$(command -v claude)" | grep "not found"300ldd "$(command -v claude)" | grep "not found"


413brew install --cask claude-code413brew install --cask claude-code

414```414```

415 415 

416Si Homebrew instala una versión anterior de Claude Code de la que espera, el mismo índice obsoleto suele ser la causa. El cask `claude-code` rastrea el canal estable y típicamente está aproximadamente una semana detrás de la última versión; para la versión más reciente ejecute `brew install --cask claude-code@latest` en su lugar. Consulte [Configurar canal de versión](/es/setup#configure-release-channel) para la diferencia entre los dos casks.416Si Homebrew instala una versión anterior de Claude Code de la que espera, el mismo índice obsoleto suele ser la causa. El cask `claude-code` rastrea el canal estable y típicamente está aproximadamente una semana detrás de la última versión; para la versión más reciente ejecute `brew install --cask claude-code@latest` en su lugar. Consulte [Configurar canal de versión](/docs/es/setup#configure-release-channel) para la diferencia entre los dos casks.

417 417 

418<h3 id="tls-or-ssl-connection-errors">418<h3 id="tls-or-ssl-connection-errors">

419 Errores de conexión TLS o SSL419 Errores de conexión TLS o SSL


468 curl -sI https://downloads.claude.ai/claude-code-releases/latest468 curl -sI https://downloads.claude.ai/claude-code-releases/latest

469 ```469 ```

470 470 

4712. **Si está detrás de un proxy**, establezca `HTTPS_PROXY` para que el instalador pueda enrutarse a través de él. Consulte [configuración de proxy](/es/network-config#proxy-configuration) para detalles.4712. **Si está detrás de un proxy**, establezca `HTTPS_PROXY` para que el instalador pueda enrutarse a través de él. Consulte [configuración de proxy](/docs/es/network-config#proxy-configuration) para detalles.

472 ```bash theme={null}472 ```bash theme={null}

473 export HTTPS_PROXY=http://proxy.example.com:8080473 export HTTPS_PROXY=http://proxy.example.com:8080

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


551 551 

552Antes de v2.1.200, el script salía solo con la línea `Killed` desnuda del shell y sin explicación.552Antes de v2.1.200, el script salía solo con la línea `Killed` desnuda del shell y sin explicación.

553 553 

554La instalación necesita aproximadamente 512 MB de memoria libre, y ejecutar Claude Code necesita más. Consulte los [requisitos del sistema](/es/setup#system-requirements).554La instalación necesita aproximadamente 512 MB de memoria libre, y ejecutar Claude Code necesita más. Consulte los [requisitos del sistema](/docs/es/setup#system-requirements).

555 555 

556**Soluciones:**556**Soluciones:**

557 557 


607 Claude Code en Windows requiere Git para Windows (para bash) o PowerShell607 Claude Code en Windows requiere Git para Windows (para bash) o PowerShell

608</h3>608</h3>

609 609 

610Git para Windows es opcional. Claude Code usa la [herramienta PowerShell](/es/tools-reference#powershell-tool) cuando Git Bash está ausente, por lo que este error significa que ninguno de los dos shells fue encontrado.610Git para Windows es opcional. Claude Code usa la [herramienta PowerShell](/docs/es/tools-reference#powershell-tool) cuando Git Bash está ausente, por lo que este error significa que ninguno de los dos shells fue encontrado.

611 611 

612**Si PowerShell falta de su PATH**, su ubicación predeterminada es `C:\Windows\System32\WindowsPowerShell\v1.0\`. Agregue ese directorio a su `PATH`, o instale [PowerShell 7](https://aka.ms/powershell), que proporciona `pwsh`.612**Si PowerShell falta de su PATH**, su ubicación predeterminada es `C:\Windows\System32\WindowsPowerShell\v1.0\`. Agregue ese directorio a su `PATH`, o instale [PowerShell 7](https://aka.ms/powershell), que proporciona `pwsh`.

613 613 

614**Para instalar Git para Windows en su lugar**, descárguelo desde [git-scm.com/downloads/win](https://git-scm.com/downloads/win). Durante la configuración, seleccione "Add to PATH." Reinicie su terminal después de instalar. Instalarlo habilita la herramienta Bash, útil cuando se trabaja con scripts y herramientas basadas en Bash.614**Para instalar Git para Windows en su lugar**, descárguelo desde [git-scm.com/downloads/win](https://git-scm.com/downloads/win). Durante la configuración, seleccione "Add to PATH." Reinicie su terminal después de instalar. Instalarlo habilita la herramienta Bash, útil cuando se trabaja con scripts y herramientas basadas en Bash.

615 615 

616**Si Git ya está instalado** pero Claude Code no puede encontrarlo, establezca la ruta en su [archivo settings.json](/es/settings):616**Si Git ya está instalado** pero Claude Code no puede encontrarlo, establezca la ruta en su [archivo settings.json](/docs/es/settings):

617 617 

618```json theme={null}618```json theme={null}

619{619{


641 641 

642Si esto imprime `True`, su sistema operativo está bien. Cierre la ventana, abra `Windows PowerShell` sin el sufijo x86, y ejecute el comando de instalación nuevamente.642Si esto imprime `True`, su sistema operativo está bien. Cierre la ventana, abra `Windows PowerShell` sin el sufijo x86, y ejecute el comando de instalación nuevamente.

643 643 

644Si esto imprime `False`, está en una edición de Windows de 32 bits. Claude Code requiere un sistema operativo de 64 bits. Consulte los [requisitos del sistema](/es/setup#system-requirements).644Si esto imprime `False`, está en una edición de Windows de 32 bits. Claude Code requiere un sistema operativo de 64 bits. Consulte los [requisitos del sistema](/docs/es/setup#system-requirements).

645 645 

646<h3 id="linux-musl-or-glibc-binary-mismatch">646<h3 id="linux-musl-or-glibc-binary-mismatch">

647 Desajuste binario musl o glibc de Linux647 Desajuste binario musl o glibc de Linux


737 Errores de instalación de npm en WSL737 Errores de instalación de npm en WSL

738</h3>738</h3>

739 739 

740Estos problemas se aplican si instaló Claude Code con `npm install -g` dentro de WSL. Si usó el [instalador nativo](/es/setup), omita esta sección.740Estos problemas se aplican si instaló Claude Code con `npm install -g` dentro de WSL. Si usó el [instalador nativo](/docs/es/setup), omita esta sección.

741 741 

742**Problemas de detección de SO o plataforma.** Si npm reporta un desajuste de plataforma durante la instalación, WSL probablemente está recogiendo el `npm` de Windows. Ejecute `npm config set os linux` primero, luego instale con `npm install -g @anthropic-ai/claude-code --force`. No use `sudo`.742**Problemas de detección de SO o plataforma.** Si npm reporta un desajuste de plataforma durante la instalación, WSL probablemente está recogiendo el `npm` de Windows. Ejecute `npm config set os linux` primero, luego instale con `npm install -g @anthropic-ai/claude-code --force`. No use `sudo`.

743 743 


786El paquete npm `@anthropic-ai/claude-code` obtiene el binario nativo a través de una dependencia opcional por plataforma como `@anthropic-ai/claude-code-darwin-arm64`. Si ejecutar `claude` después de instalar imprime `Could not find native binary package "@anthropic-ai/claude-code-<platform>"`, verifique las siguientes causas:786El paquete npm `@anthropic-ai/claude-code` obtiene el binario nativo a través de una dependencia opcional por plataforma como `@anthropic-ai/claude-code-darwin-arm64`. Si ejecutar `claude` después de instalar imprime `Could not find native binary package "@anthropic-ai/claude-code-<platform>"`, verifique las siguientes causas:

787 787 

788* **Las dependencias opcionales están deshabilitadas.** Elimine `--omit=optional` de su comando de instalación de npm, `--no-optional` de pnpm, o `--ignore-optional` de yarn, y verifique que `.npmrc` no establezca `optional=false`. Luego reinstale. El binario nativo se entrega solo como una dependencia opcional, por lo que no hay alternativa de JavaScript si se omite.788* **Las dependencias opcionales están deshabilitadas.** Elimine `--omit=optional` de su comando de instalación de npm, `--no-optional` de pnpm, o `--ignore-optional` de yarn, y verifique que `.npmrc` no establezca `optional=false`. Luego reinstale. El binario nativo se entrega solo como una dependencia opcional, por lo que no hay alternativa de JavaScript si se omite.

789* **Plataforma no admitida.** Los binarios precompilados se publican para `darwin-arm64`, `darwin-x64`, `linux-x64`, `linux-arm64`, `linux-x64-musl`, `linux-arm64-musl`, `win32-x64`, y `win32-arm64`. Claude Code no envía un binario para otras plataformas; consulte los [requisitos del sistema](/es/setup#system-requirements). {/* min-version: 2.1.205 */}En FreeBSD, el instalador reporta la plataforma como no admitida. Antes de v2.1.205, trataba FreeBSD como Linux y descargaba un binario que no podía ejecutarse.789* **Plataforma no admitida.** Los binarios precompilados se publican para `darwin-arm64`, `darwin-x64`, `linux-x64`, `linux-arm64`, `linux-x64-musl`, `linux-arm64-musl`, `win32-x64`, y `win32-arm64`. Claude Code no envía un binario para otras plataformas; consulte los [requisitos del sistema](/docs/es/setup#system-requirements). En FreeBSD, el instalador reporta la plataforma como no admitida. Antes de v2.1.205, trataba FreeBSD como Linux y descargaba un binario que no podía ejecutarse.

790* **El espejo npm corporativo carece de los paquetes de plataforma.** Asegúrese de que su registro refleje los ocho paquetes `@anthropic-ai/claude-code-*` de plataforma además del paquete meta.790* **El espejo npm corporativo carece de los paquetes de plataforma.** Asegúrese de que su registro refleje los ocho paquetes `@anthropic-ai/claude-code-*` de plataforma además del paquete meta.

791 791 

792Instalar con `--ignore-scripts` no desencadena este error. El paso de postinstalación que vincula el binario en su lugar se omite, por lo que Claude Code recurre a un contenedor que localiza e inicia el binario de plataforma en cada lanzamiento. Esto funciona pero se inicia más lentamente; reinstale con scripts habilitados para ejecución directa.792Instalar con `--ignore-scripts` no desencadena este error. El paso de postinstalación que vincula el binario en su lugar se omite, por lo que Claude Code recurre a un contenedor que localiza e inicia el binario de plataforma en cada lanzamiento. Esto funciona pero se inicia más lentamente; reinstale con scripts habilitados para ejecución directa.


829 829 

830* **Usuarios de Claude Pro/Max**: verifique que su suscripción esté activa en [claude.ai/settings](https://claude.ai/settings)830* **Usuarios de Claude Pro/Max**: verifique que su suscripción esté activa en [claude.ai/settings](https://claude.ai/settings)

831* **Usuarios de Anthropic Console**: confirme que su cuenta tiene el rol "Claude Code" o "Developer". Los administradores asignan esto en Anthropic Console bajo Settings → Members.831* **Usuarios de Anthropic Console**: confirme que su cuenta tiene el rol "Claude Code" o "Developer". Los administradores asignan esto en Anthropic Console bajo Settings → Members.

832* **Detrás de un proxy**: los proxies corporativos pueden interferir con las solicitudes de API. Consulte [configuración de red](/es/network-config) para la configuración de proxy.832* **Detrás de un proxy**: los proxies corporativos pueden interferir con las solicitudes de API. Consulte [configuración de red](/docs/es/network-config) para la configuración de proxy.

833 833 

834<h3 id="this-organization-has-been-disabled-with-an-active-subscription">834<h3 id="this-organization-has-been-disabled-with-an-active-subscription">

835 Esta organización ha sido deshabilitada con una suscripción activa835 Esta organización ha sido deshabilitada con una suscripción activa


837 837 

838Si ve `API Error: 400 ... "This organization has been disabled"` a pesar de tener una suscripción activa de Claude, una variable de entorno `ANTHROPIC_API_KEY` está anulando su suscripción. Esto comúnmente ocurre cuando una clave API antigua de un empleador anterior o proyecto anterior aún está configurada en su perfil de shell.838Si ve `API Error: 400 ... "This organization has been disabled"` a pesar de tener una suscripción activa de Claude, una variable de entorno `ANTHROPIC_API_KEY` está anulando su suscripción. Esto comúnmente ocurre cuando una clave API antigua de un empleador anterior o proyecto anterior aún está configurada en su perfil de shell.

839 839 

840Cuando `ANTHROPIC_API_KEY` está presente y lo ha aprobado, Claude Code usa esa clave en lugar de las credenciales de OAuth de su suscripción. En modo no interactivo con la bandera `-p`, la clave siempre se usa cuando está presente. Consulte [precedencia de autenticación](/es/authentication#authentication-precedence) para el orden de resolución completo.840Cuando `ANTHROPIC_API_KEY` está presente y lo ha aprobado, Claude Code usa esa clave en lugar de las credenciales de OAuth de su suscripción. En modo no interactivo con la bandera `-p`, la clave siempre se usa cuando está presente. Consulte [precedencia de autenticación](/docs/es/authentication#authentication-precedence) para el orden de resolución completo.

841 841 

842Para usar su suscripción en su lugar, desestablezca la variable de entorno y elimínela de su perfil de shell:842Para usar su suscripción en su lugar, desestablezca la variable de entorno y elimínela de su perfil de shell:

843 843 


907 907 

908Si las credenciales funcionan en su terminal pero no en la extensión de VS Code o JetBrains, el proceso del IDE probablemente no heredó su entorno de shell. Establezca las variables de entorno del proveedor en la configuración propia del IDE, o inicie el IDE desde una terminal donde ya estén exportadas.908Si las credenciales funcionan en su terminal pero no en la extensión de VS Code o JetBrains, el proceso del IDE probablemente no heredó su entorno de shell. Establezca las variables de entorno del proveedor en la configuración propia del IDE, o inicie el IDE desde una terminal donde ya estén exportadas.

909 909 

910Consulte [Amazon Bedrock](/es/amazon-bedrock), [Google Cloud's Agent Platform](/es/google-vertex-ai), o [Microsoft Foundry](/es/microsoft-foundry) para la configuración completa del proveedor.910Consulte [Amazon Bedrock](/docs/es/amazon-bedrock), [Google Cloud's Agent Platform](/docs/es/google-vertex-ai), o [Microsoft Foundry](/docs/es/microsoft-foundry) para la configuración completa del proveedor.

911 911 

912<h2 id="still-stuck">912<h2 id="still-stuck">

913 Aún atrapado913 Aún atrapado

ultraplan.md +0 −96 deleted

File Deleted View Diff

1> ## Documentation Index

2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

3> Use this file to discover all available pages before exploring further.

4 

5# Planificar en la nube con ultraplan

6 

7> Inicie un plan desde su CLI, redáctelo en Claude Code en la web, luego ejecútelo de forma remota o de vuelta en su terminal

8 

9<Note>

10 Ultraplan está en vista previa de investigación. El comportamiento y las capacidades pueden cambiar según los comentarios.

11</Note>

12 

13Ultraplan entrega una tarea de planificación desde su CLI local a una sesión de [Claude Code en la web](/es/claude-code-on-the-web) que se ejecuta en [modo plan](/es/permission-modes#analyze-before-you-edit-with-plan-mode). Claude redacta el plan en la nube mientras usted continúa trabajando en su terminal. Cuando el plan esté listo, lo abre en su navegador para comentar sobre secciones específicas, solicitar revisiones y elegir dónde ejecutarlo.

14 

15Esto es útil cuando desea una superficie de revisión más completa que la que ofrece el terminal:

16 

17* **Comentarios dirigidos**: comente sobre secciones individuales del plan en lugar de responder a todo

18* **Redacción sin intervención**: el plan se genera de forma remota, por lo que su terminal permanece libre para otro trabajo

19* **Ejecución flexible**: apruebe el plan para ejecutarlo en la web y abra una solicitud de extracción, o envíelo de vuelta a su terminal

20 

21Ultraplan requiere una cuenta de [Claude Code en la web](/es/claude-code-on-the-web) y un repositorio de GitHub. Debido a que se ejecuta en la infraestructura en la nube de Anthropic, no está disponible cuando se utiliza Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry. La sesión en la nube se ejecuta en el [entorno en la nube](/es/claude-code-on-the-web#the-cloud-environment) predeterminado de su cuenta. Si aún no tiene un entorno en la nube, ultraplan crea uno automáticamente cuando se inicia por primera vez.

22 

23<h2 id="launch-ultraplan-from-the-cli">

24 Inicie ultraplan desde la CLI

25</h2>

26 

27Desde su sesión de CLI local, puede iniciar ultraplan de tres formas:

28 

29* **Comando**: ejecute `/ultraplan` seguido de su indicación

30* **Palabra clave**: incluya la palabra `ultraplan` en cualquier lugar de una indicación normal

31* **Desde un plan local**: cuando Claude termina un plan local y muestra el diálogo de aprobación, elija **No, refinar con Ultraplan en Claude Code en la web** para enviar el borrador a la nube para una iteración adicional

32 

33Por ejemplo, para planificar una migración de servicio con el comando:

34 

35```

36/ultraplan migrate the auth service from sessions to JWTs

37```

38 

39Las rutas de comando y palabra clave abren un diálogo de confirmación antes de iniciar. La ruta del plan local omite este diálogo porque esa selección ya sirve como confirmación. Si [Remote Control](/es/remote-control) está activo, se desconecta cuando ultraplan se inicia porque ambas características ocupan la interfaz claude.ai/code y solo una puede estar conectada a la vez.

40 

41Después de que se inicia la sesión en la nube, el indicador de entrada de indicación de su CLI muestra un indicador de estado mientras la sesión remota funciona:

42 

43| Estado | Significado |

44| :----------------------------- | :----------------------------------------------------------------------------- |

45| `◇ ultraplan` | Claude está investigando su base de código y redactando el plan |

46| `◇ ultraplan needs your input` | Claude tiene una pregunta aclaratoria; abra el enlace de sesión para responder |

47| `◆ ultraplan ready` | El plan está listo para revisar en su navegador |

48 

49Ejecute `/tasks` y seleccione la entrada ultraplan para abrir una vista de detalle con el enlace de sesión, la actividad del agente y una acción **Stop ultraplan**. Detener archiva la sesión en la nube y borra el indicador; nada se guarda en su terminal.

50 

51<h2 id="review-and-revise-the-plan-in-your-browser">

52 Revise y revise el plan en su navegador

53</h2>

54 

55Cuando el estado cambia a `◆ ultraplan ready`, abra el enlace de sesión para ver el plan en claude.ai. El plan aparece en una vista de revisión dedicada:

56 

57* **Comentarios en línea**: resalte cualquier pasaje y deje un comentario para que Claude lo aborde

58* **Reacciones de emoji**: reaccione a una sección para señalar aprobación o preocupación sin escribir un comentario completo

59* **Barra lateral de esquema**: salte entre secciones del plan

60 

61Cuando le pide a Claude que aborde sus comentarios, revisa el plan y presenta un borrador actualizado. Puede iterar tantas veces como sea necesario antes de elegir dónde ejecutar.

62 

63<h2 id="choose-where-to-execute">

64 Elija dónde ejecutar

65</h2>

66 

67Cuando el plan se vea bien, elige desde el navegador si Claude lo implementa en la misma sesión en la nube o lo envía de vuelta a su terminal en espera.

68 

69<h3 id="execute-on-the-web">

70 Ejecutar en la web

71</h3>

72 

73Seleccione **Approve Claude's plan and start coding** en su navegador para que Claude lo implemente en la misma sesión de Claude Code en la web. Su terminal muestra una confirmación, el indicador de estado se borra y el trabajo continúa en la nube. Cuando la implementación finaliza, [revise los cambios](/es/claude-code-on-the-web#review-changes) y cree una solicitud de extracción desde la interfaz web.

74 

75<h3 id="send-the-plan-back-to-your-terminal">

76 Envíe el plan de vuelta a su terminal

77</h3>

78 

79Seleccione **Approve plan and teleport back to terminal** en su navegador para implementar el plan localmente con acceso completo a su entorno. Esta opción aparece cuando la sesión se inició desde su CLI y el terminal aún está sondeando. La sesión web se archiva para que no continúe funcionando en paralelo.

80 

81Su terminal muestra el plan en un diálogo titulado **Ultraplan approved** con tres opciones:

82 

83* **Implement here**: inyecte el plan en su conversación actual y continúe desde donde lo dejó

84* **Start new session**: borre la conversación actual y comience de nuevo solo con el plan como contexto

85* **Cancel**: guarde el plan en un archivo sin ejecutarlo; Claude imprime la ruta del archivo para que pueda volver a él más tarde

86 

87Si inicia una nueva sesión, Claude imprime un comando `claude --resume` en la parte superior para que pueda volver a su conversación anterior más tarde.

88 

89<h2 id="related-resources">

90 Recursos relacionados

91</h2>

92 

93* [Claude Code en la web](/es/claude-code-on-the-web): la infraestructura en la nube en la que se ejecuta ultraplan

94* [Modo plan](/es/permission-modes#analyze-before-you-edit-with-plan-mode): cómo funciona la planificación en una sesión local

95* [Buscar errores con ultrareview](/es/ultrareview): la contraparte de revisión de código de ultraplan para detectar problemas antes de la fusión

96* [Remote Control](/es/remote-control): use la interfaz claude.ai/code con una sesión que se ejecuta en su propia máquina

voice-dictation.md +16 −16

Details

12 El modo de toque requiere Claude Code v2.1.116 o posterior. Verifique su versión con `claude --version`.12 El modo de toque requiere Claude Code v2.1.116 o posterior. Verifique su versión con `claude --version`.

13</Note>13</Note>

14 14 

15El dictado también funciona en [vista de agente](/es/agent-view#peek-and-reply). Mantenga presionada o toque su tecla de micrófono mientras la entrada de envío o una respuesta del panel de vista previa esté enfocada para dictar a una sesión en segundo plano.15El dictado también funciona en [vista de agente](/docs/es/agent-view#peek-and-reply). Mantenga presionada o toque su tecla de micrófono mientras la entrada de envío o una respuesta del panel de vista previa esté enfocada para dictar a una sesión en segundo plano.

16 16 

17<h2 id="requirements">17<h2 id="requirements">

18 Requisitos18 Requisitos


22 22 

23* **Una cuenta de Claude.ai**: el servicio de voz a texto solo está disponible cuando se autentica con una, y no está disponible cuando Claude Code está configurado para usar una clave de API de Anthropic directamente, Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry.23* **Una cuenta de Claude.ai**: el servicio de voz a texto solo está disponible cuando se autentica con una, y no está disponible cuando Claude Code está configurado para usar una clave de API de Anthropic directamente, Amazon Bedrock, Google Cloud's Agent Platform o Microsoft Foundry.

24* **Una organización sin cumplimiento de HIPAA habilitado**: `/voice` muestra `Voice mode is disabled by your organization's policy` cuando se aplica esta restricción.24* **Una organización sin cumplimiento de HIPAA habilitado**: `/voice` muestra `Voice mode is disabled by your organization's policy` cuando se aplica esta restricción.

25* **Un micrófono local**: el dictado de voz no funciona en entornos remotos como [Claude Code en la web](/es/claude-code-on-the-web) o sesiones SSH.25* **Un micrófono local**: el dictado de voz no funciona en entornos remotos como [Claude Code en la web](/docs/es/claude-code-on-the-web) o sesiones SSH.

26* **WSLg, si ejecuta Claude Code en WSL**: WSLg se incluye con WSL2 cuando se instala desde Microsoft Store en Windows 10 u 11. Si WSLg no está disponible, por ejemplo en WSL1, ejecute Claude Code en Windows nativo en su lugar.26* **WSLg, si ejecuta Claude Code en WSL**: WSLg se incluye con WSL2 cuando se instala desde Microsoft Store en Windows 10 u 11. Si WSLg no está disponible, por ejemplo en WSL1, ejecute Claude Code en Windows nativo en su lugar.

27 27 

28La transcripción no consume mensajes de Claude ni tokens y no cuenta hacia los límites mostrados en `/usage`. Consulte [uso de datos](/es/data-usage) para ver cómo Anthropic maneja sus datos.28La transcripción no consume mensajes de Claude ni tokens y no cuenta hacia los límites mostrados en `/usage`. Consulte [uso de datos](/docs/es/data-usage) para ver cómo Anthropic maneja sus datos.

29 29 

30La grabación de audio utiliza un módulo nativo integrado en macOS, Linux y Windows. En Linux, si el módulo nativo no puede cargarse, Claude Code vuelve a `arecord` de ALSA utils o `rec` de SoX. Si ninguno está disponible, `/voice` imprime un comando de instalación para su gestor de paquetes.30La grabación de audio utiliza un módulo nativo integrado en macOS, Linux y Windows. En Linux, si el módulo nativo no puede cargarse, Claude Code vuelve a `arecord` de ALSA utils o `rec` de SoX. Si ninguno está disponible, `/voice` imprime un comando de instalación para su gestor de paquetes.

31 31 

32La [extensión de VS Code](/es/vs-code) de Claude Code también admite dictado de voz con el mismo requisito de cuenta de Claude.ai. No está disponible en sesiones remotas de VS Code, incluidas SSH, Dev Containers y Codespaces, porque el micrófono está en su máquina local y la extensión se ejecuta en el host remoto.32La [extensión de VS Code](/docs/es/vs-code) de Claude Code también admite dictado de voz con el mismo requisito de cuenta de Claude.ai. No está disponible en sesiones remotas de VS Code, incluidas SSH, Dev Containers y Codespaces, porque el micrófono está en su máquina local y la extensión se ejecuta en el host remoto.

33 33 

34<h2 id="enable-voice-dictation">34<h2 id="enable-voice-dictation">

35 Habilitar dictado de voz35 Habilitar dictado de voz


51| `/voice tap` | Habilitar en [modo de toque](#tap-to-record-and-send) |51| `/voice tap` | Habilitar en [modo de toque](#tap-to-record-and-send) |

52| `/voice off` | Desactivar |52| `/voice off` | Desactivar |

53 53 

54El dictado de voz persiste entre sesiones. Configúrelo directamente en su [archivo de configuración de usuario](/es/settings) en lugar de ejecutar `/voice`:54El dictado de voz persiste entre sesiones. Configúrelo directamente en su [archivo de configuración de usuario](/docs/es/settings) en lugar de ejecutar `/voice`:

55 55 

56```json theme={null}56```json theme={null}

57{57{


62}62}

63```63```

64 64 

65Mientras el dictado de voz está habilitado, el pie de página de entrada muestra una sugerencia `hold space to speak` cuando la indicación está vacía. La sugerencia refleja su enlace actual `voice:pushToTalk` y se actualiza si [revincula la tecla de dictado](#rebind-the-dictation-key). El texto de la sugerencia es el mismo en ambos modos, y no aparece si tiene una [línea de estado personalizada](/es/statusline) configurada.65Mientras el dictado de voz está habilitado, el pie de página de entrada muestra una sugerencia `hold space to speak` cuando la indicación está vacía. La sugerencia refleja su enlace actual `voice:pushToTalk` y se actualiza si [revincula la tecla de dictado](#rebind-the-dictation-key). El texto de la sugerencia es el mismo en ambos modos, y no aparece si tiene una [línea de estado personalizada](/docs/es/statusline) configurada.

66 66 

67La transcripción se ajusta para vocabulario de codificación en ambos modos. Los términos de desarrollo comunes como `regex`, `OAuth`, `JSON` y `localhost` se reconocen correctamente, y el nombre del proyecto actual y el nombre de la rama de git se agregan automáticamente como sugerencias de reconocimiento.67La transcripción se ajusta para vocabulario de codificación en ambos modos. Los términos de desarrollo comunes como `regex`, `OAuth`, `JSON` y `localhost` se reconocen correctamente, y el nombre del proyecto actual y el nombre de la rama de git se agregan automáticamente como sugerencias de reconocimiento.

68 68 


108 Cambiar el idioma del dictado108 Cambiar el idioma del dictado

109</h2>109</h2>

110 110 

111El dictado de voz utiliza la misma [configuración de `language`](/es/settings) que controla el idioma de respuesta de Claude. Si esa configuración está vacía, el dictado predeterminado es inglés. En la extensión de VS Code, si `language` está vacío, el dictado utiliza la configuración `accessibility.voice.speechLanguage` de VS Code antes de predeterminar al inglés.111El dictado de voz utiliza la misma [configuración de `language`](/docs/es/settings) que controla el idioma de respuesta de Claude. Si esa configuración está vacía, el dictado predeterminado es inglés. En la extensión de VS Code, si `language` está vacío, el dictado utiliza la configuración `accessibility.voice.speechLanguage` de VS Code antes de predeterminar al inglés.

112 112 

113<Accordion title="Idiomas de dictado admitidos">113<Accordion title="Idiomas de dictado admitidos">

114 | Idioma | Código |114 | Idioma | Código |


149 Reenlazar la tecla de dictado149 Reenlazar la tecla de dictado

150</h2>150</h2>

151 151 

152La tecla de dictado está vinculada a `voice:pushToTalk` en el contexto `Chat` y predeterminada a `Space`. El mismo enlace controla los modos de mantener y tocar. Reenlácelo en [`~/.claude/keybindings.json`](/es/keybindings):152La tecla de dictado está vinculada a `voice:pushToTalk` en el contexto `Chat` y predeterminada a `Space`. El mismo enlace controla los modos de mantener y tocar. Reenlácelo en [`~/.claude/keybindings.json`](/docs/es/keybindings):

153 153 

154```json theme={null}154```json theme={null}

155{155{


169 169 

170En modo de mantener, evite enlazar una tecla de letra simple como `v` ya que la detección de mantener se basa en la repetición de teclas y la letra se escribe en la indicación durante el calentamiento. Use `Space`, o use una combinación de modificador como `meta+k` para comenzar a grabar en la primera pulsación de tecla sin calentamiento. El modo de toque no tiene calentamiento, por lo que la mayoría de las teclas funcionan.170En modo de mantener, evite enlazar una tecla de letra simple como `v` ya que la detección de mantener se basa en la repetición de teclas y la letra se escribe en la indicación durante el calentamiento. Use `Space`, o use una combinación de modificador como `meta+k` para comenzar a grabar en la primera pulsación de tecla sin calentamiento. El modo de toque no tiene calentamiento, por lo que la mayoría de las teclas funcionan.

171 171 

172Algunas teclas no se entregan a las aplicaciones de terminal y no se pueden enlazar en absoluto. Por ejemplo, `Caps Lock` muestra un error si intenta enlazarlo. Consulte [personalizar atajos de teclado](/es/keybindings) para la sintaxis completa de enlace de teclas y la lista de atajos reservados.172Algunas teclas no se entregan a las aplicaciones de terminal y no se pueden enlazar en absoluto. Por ejemplo, `Caps Lock` muestra un error si intenta enlazarlo. Consulte [personalizar atajos de teclado](/docs/es/keybindings) para la sintaxis completa de enlace de teclas y la lista de atajos reservados.

173 173 

174<h2 id="troubleshooting">174<h2 id="troubleshooting">

175 Solución de problemas175 Solución de problemas


181* **`Voice mode is disabled by your organization's policy`**: la configuración de cumplimiento de su organización desactiva el dictado de voz, como se describe en [Requisitos](#requirements). Póngase en contacto con el administrador de su organización para confirmar si el dictado de voz está disponible para su organización.181* **`Voice mode is disabled by your organization's policy`**: la configuración de cumplimiento de su organización desactiva el dictado de voz, como se describe en [Requisitos](#requirements). Póngase en contacto con el administrador de su organización para confirmar si el dictado de voz está disponible para su organización.

182* **`Microphone access is denied`**: otorgue permiso de micrófono a su terminal en la configuración del sistema. En macOS, vaya a Configuración del Sistema → Privacidad y Seguridad → Micrófono y habilite su aplicación de terminal, luego ejecute `/voice` nuevamente. En Windows, vaya a Configuración → Privacidad y seguridad → Micrófono y active el acceso al micrófono para aplicaciones de escritorio, luego ejecute `/voice` nuevamente. Si su terminal no aparece en la configuración de macOS, consulte [Terminal no aparece en la configuración de micrófono de macOS](#terminal-not-listed-in-macos-microphone-settings).182* **`Microphone access is denied`**: otorgue permiso de micrófono a su terminal en la configuración del sistema. En macOS, vaya a Configuración del Sistema → Privacidad y Seguridad → Micrófono y habilite su aplicación de terminal, luego ejecute `/voice` nuevamente. En Windows, vaya a Configuración → Privacidad y seguridad → Micrófono y active el acceso al micrófono para aplicaciones de escritorio, luego ejecute `/voice` nuevamente. Si su terminal no aparece en la configuración de macOS, consulte [Terminal no aparece en la configuración de micrófono de macOS](#terminal-not-listed-in-macos-microphone-settings).

183* **`No audio recording tool found` en Linux**: el módulo de audio nativo no pudo cargarse y no hay alternativa instalada. Instale SoX con el comando que se muestra en el mensaje de error, por ejemplo `sudo apt-get install sox`.183* **`No audio recording tool found` en Linux**: el módulo de audio nativo no pudo cargarse y no hay alternativa instalada. Instale SoX con el comando que se muestra en el mensaje de error, por ejemplo `sudo apt-get install sox`.

184* **`Voice mode requires a microphone, but SoX could not open an audio capture device`**: SoX está instalado, pero el host no tiene un dispositivo de captura de audio, por ejemplo un servidor sin interfaz gráfica o un contenedor. Ejecute Claude Code en una máquina con micrófono. {/* min-version: 2.1.195 */}A partir de v2.1.195, Claude Code en Linux reporta este mensaje en esa situación; las versiones anteriores le pedían que instalara SoX incluso cuando ya estaba instalado.184* **`Voice mode requires a microphone, but SoX could not open an audio capture device`**: SoX está instalado, pero el host no tiene un dispositivo de captura de audio, por ejemplo un servidor sin interfaz gráfica o un contenedor. Ejecute Claude Code en una máquina con micrófono. A partir de v2.1.195, Claude Code en Linux reporta este mensaje en esa situación; las versiones anteriores le pedían que instalara SoX incluso cuando ya estaba instalado.

185* **`Voice mode could not find a working audio recorder in WSL`**: WSLg enruta el audio a través de PulseAudio en lugar de un dispositivo ALSA, por lo que SoX necesita que su backend de PulseAudio esté instalado explícitamente. Ejecute `sudo apt install sox libsox-fmt-pulse`. Instalar `sox` solo extrae el backend de ALSA, que no puede grabar en WSL porque no hay un dispositivo `/dev/snd`.185* **`Voice mode could not find a working audio recorder in WSL`**: WSLg enruta el audio a través de PulseAudio en lugar de un dispositivo ALSA, por lo que SoX necesita que su backend de PulseAudio esté instalado explícitamente. Ejecute `sudo apt install sox libsox-fmt-pulse`. Instalar `sox` solo extrae el backend de ALSA, que no puede grabar en WSL porque no hay un dispositivo `/dev/snd`.

186* **`Voice input is failing repeatedly and has been paused`**: el dictado de voz encontró varios fallos de captura seguidos y dejó de intentar nuevas sesiones hasta que una tenga éxito. Un fallo cuenta si el micrófono no se inicia o el grabador se inicia y luego se detiene sin producir ningún audio. Esto generalmente significa que el micrófono o la pila de audio en este host no puede capturar audio, por ejemplo un servidor sin interfaz gráfica, un shell remoto sin paso de audio, o un permiso de micrófono denegado. Confirme un dispositivo de entrada que funcione, corrija la causa subyacente de las entradas anteriores, luego active la voz nuevamente. {/* min-version: 2.1.202 */}Antes de v2.1.202, solo los fallos de inicio contaban hacia la pausa.186* **`Voice input is failing repeatedly and has been paused`**: el dictado de voz encontró varios fallos de captura seguidos y dejó de intentar nuevas sesiones hasta que una tenga éxito. Un fallo cuenta si el micrófono no se inicia o el grabador se inicia y luego se detiene sin producir ningún audio. Esto generalmente significa que el micrófono o la pila de audio en este host no puede capturar audio, por ejemplo un servidor sin interfaz gráfica, un shell remoto sin paso de audio, o un permiso de micrófono denegado. Confirme un dispositivo de entrada que funcione, corrija la causa subyacente de las entradas anteriores, luego active la voz nuevamente. Antes de v2.1.202, solo los fallos de inicio contaban hacia la pausa.

187* **Nada sucede al mantener presionada la `Barra espaciadora` en modo de mantener**: observe la entrada de indicación mientras mantiene presionada. Si los espacios siguen acumulándose, el dictado de voz probablemente esté desactivado; ejecute `/voice hold` para habilitarlo. Si solo aparecen uno o dos espacios y luego nada, el dictado de voz está activado pero la detección de mantener no se activa. La detección de mantener requiere que su terminal envíe eventos de repetición de teclas, por lo que no puede detectar una tecla mantenida si la repetición de teclas está deshabilitada a nivel del sistema operativo. Cambie al modo de toque con `/voice tap` para evitar el requisito de repetición de teclas.187* **Nada sucede al mantener presionada la `Barra espaciadora` en modo de mantener**: observe la entrada de indicación mientras mantiene presionada. Si los espacios siguen acumulándose, el dictado de voz probablemente esté desactivado; ejecute `/voice hold` para habilitarlo. Si solo aparecen uno o dos espacios y luego nada, el dictado de voz está activado pero la detección de mantener no se activa. La detección de mantener requiere que su terminal envíe eventos de repetición de teclas, por lo que no puede detectar una tecla mantenida si la repetición de teclas está deshabilitada a nivel del sistema operativo. Cambie al modo de toque con `/voice tap` para evitar el requisito de repetición de teclas.

188* **Tocar la `Barra espaciadora` escribe un espacio en lugar de grabar en modo de toque**: el primer toque solo comienza a grabar cuando la entrada de indicación está vacía. Borre la entrada primero, o verifique que esté en modo de toque ejecutando `/voice tap`.188* **Tocar la `Barra espaciadora` escribe un espacio en lugar de grabar en modo de toque**: el primer toque solo comienza a grabar cuando la entrada de indicación está vacía. Borre la entrada primero, o verifique que esté en modo de toque ejecutando `/voice tap`.

189* **`No audio detected from microphone`**: la grabación comenzó pero capturó silencio. Confirme que el dispositivo de entrada correcto está configurado como predeterminado del sistema y que su nivel de entrada no está silenciado ni cerca de cero. En Windows, abra Configuración → Sistema → Sonido → Entrada y seleccione su micrófono. En macOS, abra Configuración del Sistema → Sonido → Entrada.189* **`No audio detected from microphone`**: la grabación comenzó pero capturó silencio. Confirme que el dispositivo de entrada correcto está configurado como predeterminado del sistema y que su nivel de entrada no está silenciado ni cerca de cero. En Windows, abra Configuración → Sistema → Sonido → Entrada y seleccione su micrófono. En macOS, abra Configuración del Sistema → Sonido → Entrada.

190* **`Voice connection failed`**: su grabación nunca llegó al servicio de transcripción porque la conexión falló. Verifique su red e intente nuevamente. {/* min-version: 2.1.200 */}Una grabación que no captura audio reporta `No audio detected from microphone` en lugar de este mensaje. Antes de v2.1.200, un micrófono silencioso podría reportar un fallo de conexión, lo que sugería un problema de red cuando el problema real era el dispositivo de entrada.190* **`Voice connection failed`**: su grabación nunca llegó al servicio de transcripción porque la conexión falló. Verifique su red e intente nuevamente. Una grabación que no captura audio reporta `No audio detected from microphone` en lugar de este mensaje. Antes de v2.1.200, un micrófono silencioso podría reportar un fallo de conexión, lo que sugería un problema de red cuando el problema real era el dispositivo de entrada.

191* **`No speech detected`**: el audio llegó al servicio de transcripción pero no se reconocieron palabras. Hable más cerca del micrófono, reduzca el ruido de fondo y confirme que su [idioma de dictado](#change-the-dictation-language) coincida con el idioma que está hablando.191* **`No speech detected`**: el audio llegó al servicio de transcripción pero no se reconocieron palabras. Hable más cerca del micrófono, reduzca el ruido de fondo y confirme que su [idioma de dictado](#change-the-dictation-language) coincida con el idioma que está hablando.

192* **La transcripción es confusa o en el idioma incorrecto**: el dictado predeterminado es inglés. Si está dictando en otro idioma, configúrelo en `/config` primero. Consulte [Cambiar el idioma del dictado](#change-the-dictation-language).192* **La transcripción es confusa o en el idioma incorrecto**: el dictado predeterminado es inglés. Si está dictando en otro idioma, configúrelo en `/config` primero. Consulte [Cambiar el idioma del dictado](#change-the-dictation-language).

193 193 


219 Ver también219 Ver también

220</h2>220</h2>

221 221 

222* [Personalizar atajos de teclado](/es/keybindings): reenlace `voice:pushToTalk` y otras acciones de teclado de CLI222* [Personalizar atajos de teclado](/docs/es/keybindings): reenlace `voice:pushToTalk` y otras acciones de teclado de CLI

223* [Configurar configuración](/es/settings): referencia completa para `voice`, `language` y otras claves de configuración223* [Configurar configuración](/docs/es/settings): referencia completa para `voice`, `language` y otras claves de configuración

224* [Modo interactivo](/es/interactive-mode): atajos de teclado, modos de entrada y controles de sesión224* [Modo interactivo](/docs/es/interactive-mode): atajos de teclado, modos de entrada y controles de sesión

225* [Comandos](/es/commands): referencia para `/voice`, `/config` y todos los demás comandos225* [Comandos](/docs/es/commands): referencia para `/voice`, `/config` y todos los demás comandos

vs-code.md +35 −35

Details

19Antes de instalar, asegúrate de tener:19Antes de instalar, asegúrate de tener:

20 20 

21* VS Code 1.98.0 o superior21* VS Code 1.98.0 o superior

22* Una cuenta de Anthropic: cualquier suscripción pagada de Claude (Pro, Max, Team o Enterprise) o una cuenta de Claude Console funciona, y no se requiere clave API. Iniciarás sesión [con esta cuenta](/es/authentication#log-in-to-claude-code) cuando abras la extensión por primera vez. Si accedes a Claude a través de un proveedor de terceros como Amazon Bedrock o Google Cloud's Agent Platform, consulta [Usar proveedores de terceros](#use-third-party-providers) para obtener instrucciones de configuración.22* Una cuenta de Anthropic: cualquier suscripción pagada de Claude (Pro, Max, Team o Enterprise) o una cuenta de Claude Console funciona, y no se requiere clave API. Iniciarás sesión [con esta cuenta](/docs/es/authentication#log-in-to-claude-code) cuando abras la extensión por primera vez. Si accedes a Claude a través de un proveedor de terceros como Amazon Bedrock o Google Cloud's Agent Platform, consulta [Usar proveedores de terceros](#use-third-party-providers) para obtener instrucciones de configuración.

23 23 

24<Tip>24<Tip>

25 La extensión incluye su propia copia de la CLI (interfaz de línea de comandos) para el panel de chat. Para ejecutar `claude` en la terminal integrada de VS Code, también necesitas la [instalación de CLI independiente](/es/setup). Consulta [Extensión de VS Code frente a Claude Code CLI](#vs-code-extension-vs-claude-code-cli) para obtener detalles.25 La extensión incluye su propia copia de la CLI (interfaz de línea de comandos) para el panel de chat. Para ejecutar `claude` en la terminal integrada de VS Code, también necesitas la [instalación de CLI independiente](/docs/es/setup). Consulta [Extensión de VS Code frente a Claude Code CLI](#vs-code-extension-vs-claude-code-cli) para obtener detalles.

26</Tip>26</Tip>

27 27 

28<h2 id="install-the-extension">28<h2 id="install-the-extension">


36 36 

37O en VS Code, presiona `Cmd+Shift+X` (Mac) o `Ctrl+Shift+X` (Windows/Linux) para abrir la vista Extensiones, busca "Claude Code" y haz clic en **Instalar**.37O en VS Code, presiona `Cmd+Shift+X` (Mac) o `Ctrl+Shift+X` (Windows/Linux) para abrir la vista Extensiones, busca "Claude Code" y haz clic en **Instalar**.

38 38 

39La extensión también se instala en otros forks de VS Code como Devin Desktop o Kiro. Busca "Claude Code" en la vista Extensiones del editor, o instala desde el [registro Open VSX](https://open-vsx.org/extension/Anthropic/claude-code). Si tu editor no puede instalar la extensión, [instala la CLI](/es/quickstart) y ejecuta `claude` en su terminal integrada en su lugar. La CLI funciona en cualquier terminal.39La extensión también se instala en otros forks de VS Code como Devin Desktop o Kiro. Busca "Claude Code" en la vista Extensiones del editor, o instala desde el [registro Open VSX](https://open-vsx.org/extension/Anthropic/claude-code). Si tu editor no puede instalar la extensión, [instala la CLI](/docs/es/quickstart) y ejecuta `claude` en su terminal integrada en su lugar. La CLI funciona en cualquier terminal.

40 40 

41<Note>Si la extensión no aparece después de la instalación, reinicia VS Code o ejecuta "Developer: Reload Window" desde la Paleta de comandos.</Note>41<Note>Si la extensión no aparece después de la instalación, reinicia VS Code o ejecuta "Developer: Reload Window" desde la Paleta de comandos.</Note>

42 42 


90 </Step>90 </Step>

91</Steps>91</Steps>

92 92 

93Para más ideas sobre lo que puedes hacer con Claude Code, consulta [Flujos de trabajo comunes](/es/common-workflows).93Para más ideas sobre lo que puedes hacer con Claude Code, consulta [Flujos de trabajo comunes](/docs/es/common-workflows).

94 94 

95<Tip>95<Tip>

96 Ejecuta "Claude Code: Open Walkthrough" desde la Paleta de comandos para un tour guiado de los conceptos básicos.96 Ejecuta "Claude Code: Open Walkthrough" desde la Paleta de comandos para un tour guiado de los conceptos básicos.


102 102 

103El cuadro de mensaje admite varias características:103El cuadro de mensaje admite varias características:

104 104 

105* **Modos de permiso**: haz clic en el indicador de modo en la parte inferior del cuadro de mensaje para cambiar de modo, o establece el valor predeterminado en la configuración de VS Code en `claudeCode.initialPermissionMode`. Consulta [modos de permiso](/es/permission-modes#switch-permission-modes) para cada modo que ofrece el indicador.105* **Modos de permiso**: haz clic en el indicador de modo en la parte inferior del cuadro de mensaje para cambiar de modo, o establece el valor predeterminado en la configuración de VS Code en `claudeCode.initialPermissionMode`. Consulta [modos de permiso](/docs/es/permission-modes#switch-permission-modes) para cada modo que ofrece el indicador.

106 * **Manual**: Claude solicita permiso antes de ediciones de archivos y la mayoría de comandos de shell.106 * **Manual**: Claude solicita permiso antes de ediciones de archivos y la mayoría de comandos de shell.

107 * **Plan**: Claude describe lo que hará y espera aprobación antes de realizar cambios. VS Code abre automáticamente el plan como un documento Markdown completo donde puedes agregar comentarios en línea para dar retroalimentación antes de que Claude comience.107 * **Plan**: Claude describe lo que hará y espera aprobación antes de realizar cambios. VS Code abre automáticamente el plan como un documento Markdown completo donde puedes agregar comentarios en línea para dar retroalimentación antes de que Claude comience.

108 * **Edit automatically**: Claude realiza ediciones sin preguntar.108 * **Edit automatically**: Claude realiza ediciones sin preguntar.

109* **Menú de comandos**: haz clic en `/` o escribe `/` para abrir el menú de comandos. Las opciones incluyen adjuntar archivos, cambiar modelos, alternar pensamiento extendido, ver uso del plan (`/usage`) e iniciar una sesión de [Control remoto](/es/remote-control) (`/remote-control`). La sección Personalizar proporciona acceso a servidores MCP, hooks, memoria, permisos y plugins. Los elementos con un icono de terminal se abren en la terminal integrada.109* **Menú de comandos**: haz clic en `/` o escribe `/` para abrir el menú de comandos. Las opciones incluyen adjuntar archivos, cambiar modelos, alternar pensamiento extendido, ver uso del plan (`/usage`) e iniciar una sesión de [Control remoto](/docs/es/remote-control) (`/remote-control`). La sección Personalizar proporciona acceso a servidores MCP, hooks, memoria, permisos y plugins. Los elementos con un icono de terminal se abren en la terminal integrada.

110 * {/* min-version: 2.1.203 */}La sección Configuración incluye **Habilitar Control remoto para todas las sesiones**, que establece [`remoteControlAtStartup`](/es/settings#available-settings) para que [cada nueva sesión interactiva se conecte automáticamente a Control remoto](/es/remote-control#enable-remote-control-for-all-sessions). Requiere Claude Code v2.1.203 o posterior.110 * La sección Configuración incluye **Habilitar Control remoto para todas las sesiones**, que establece [`remoteControlAtStartup`](/docs/es/settings#available-settings) para que [cada nueva sesión interactiva se conecte automáticamente a Control remoto](/docs/es/remote-control#enable-remote-control-for-all-sessions). Requiere Claude Code v2.1.203 o posterior.

111* **Indicador de contexto**: el cuadro de mensaje muestra cuánto de la ventana de contexto de Claude estás utilizando. Claude se compacta automáticamente cuando es necesario, o puedes ejecutar `/compact` manualmente.111* **Indicador de contexto**: el cuadro de mensaje muestra cuánto de la ventana de contexto de Claude estás utilizando. Claude se compacta automáticamente cuando es necesario, o puedes ejecutar `/compact` manualmente.

112* **Pensamiento extendido**: permite que Claude dedique más tiempo a razonar sobre problemas complejos. Actívalo a través del menú de comandos (`/`). El razonamiento de Claude aparece en la conversación como bloques contraídos: haz clic en un bloque para leerlo, o presiona `Ctrl+O` para expandir o contraer cada bloque de pensamiento en la sesión. Consulta [Pensamiento extendido](/es/model-config#extended-thinking) para obtener más detalles.112* **Pensamiento extendido**: permite que Claude dedique más tiempo a razonar sobre problemas complejos. Actívalo a través del menú de comandos (`/`). El razonamiento de Claude aparece en la conversación como bloques contraídos: haz clic en un bloque para leerlo, o presiona `Ctrl+O` para expandir o contraer cada bloque de pensamiento en la sesión. Consulta [Pensamiento extendido](/docs/es/model-config#extended-thinking) para obtener más detalles.

113* **Entrada multilínea**: presiona `Shift+Enter` para agregar una nueva línea sin enviar. Esto también funciona en la entrada de texto libre "Otro" de los diálogos de preguntas.113* **Entrada multilínea**: presiona `Shift+Enter` para agregar una nueva línea sin enviar. Esto también funciona en la entrada de texto libre "Otro" de los diálogos de preguntas.

114 114 

115<h3 id="reference-files-and-folders">115<h3 id="reference-files-and-folders">


133 Reanudar conversaciones pasadas133 Reanudar conversaciones pasadas

134</h3>134</h3>

135 135 

136Haz clic en el botón **Historial de sesiones** en la parte superior del panel de Claude Code para acceder a tu historial de conversaciones. Puedes buscar por palabra clave o examinar por tiempo (Hoy, Ayer, Últimos 7 días, etc.). Haz clic en cualquier conversación para reanudarla con el historial de mensajes completo. Las nuevas sesiones reciben títulos generados por IA basados en tu primer mensaje. Pasa el cursor sobre una sesión para revelar acciones de cambio de nombre y eliminación: cambia el nombre para darle un título descriptivo, o elimina para borrarlo de la lista. Para más información sobre cómo reanudar sesiones, consulta [Administrar sesiones](/es/sessions).136Haz clic en el botón **Historial de sesiones** en la parte superior del panel de Claude Code para acceder a tu historial de conversaciones. Puedes buscar por palabra clave o examinar por tiempo (Hoy, Ayer, Últimos 7 días, etc.). Haz clic en cualquier conversación para reanudarla con el historial de mensajes completo. Las nuevas sesiones reciben títulos generados por IA basados en tu primer mensaje. Pasa el cursor sobre una sesión para revelar acciones de cambio de nombre y eliminación: cambia el nombre para darle un título descriptivo, o elimina para borrarlo de la lista. Para más información sobre cómo reanudar sesiones, consulta [Administrar sesiones](/docs/es/sessions).

137 137 

138<h3 id="resume-cloud-sessions-from-claude-ai">138<h3 id="resume-cloud-sessions-from-claude-ai">

139 Reanudar sesiones remotas desde Claude.ai139 Reanudar sesiones remotas desde Claude.ai

140</h3>140</h3>

141 141 

142Si utilizas [Claude Code en la web](/es/claude-code-on-the-web), puedes reanudar esas sesiones remotas directamente en VS Code. Esto requiere iniciar sesión con **Claude.ai Subscription**, no Anthropic Console.142Si utilizas [Claude Code en la web](/docs/es/claude-code-on-the-web), puedes reanudar esas sesiones remotas directamente en VS Code. Esto requiere iniciar sesión con **Claude.ai Subscription**, no Anthropic Console.

143 143 

144<Steps>144<Steps>

145 <Step title="Abrir historial de sesiones">145 <Step title="Abrir historial de sesiones">


167 167 

168El diálogo también desglosa qué está contribuyendo a tus límites de plan. Marca comportamientos que representan el 10% o más del uso reciente, como fallos de caché, contexto largo y sesiones con muchos subagentes o altamente paralelas, cada una con un consejo para reducirlo. Las tablas de atribución muestran cuánto uso provino de cada skill, subagente, plugin y servidor MCP. Requiere Claude Code v2.1.174 o posterior.168El diálogo también desglosa qué está contribuyendo a tus límites de plan. Marca comportamientos que representan el 10% o más del uso reciente, como fallos de caché, contexto largo y sesiones con muchos subagentes o altamente paralelas, cada una con un consejo para reducirlo. Las tablas de atribución muestran cuánto uso provino de cada skill, subagente, plugin y servidor MCP. Requiere Claude Code v2.1.174 o posterior.

169 169 

170Usa el botón de alternancia Día y Semana para cambiar entre las últimas 24 horas y los últimos 7 días. Las cifras son aproximadas y se calculan a partir de sesiones locales en esta máquina, por lo que el uso de otros dispositivos o claude.ai no se incluye. Para más información sobre el seguimiento y la reducción del uso, consulta [Rastrear tus costos](/es/costs#track-your-costs).170Usa el botón de alternancia Día y Semana para cambiar entre las últimas 24 horas y los últimos 7 días. Las cifras son aproximadas y se calculan a partir de sesiones locales en esta máquina, por lo que el uso de otros dispositivos o claude.ai no se incluye. Para más información sobre el seguimiento y la reducción del uso, consulta [Rastrear tus costos](/docs/es/costs#track-your-costs).

171 171 

172<h2 id="customize-your-workflow">172<h2 id="customize-your-workflow">

173 Personalizar tu flujo de trabajo173 Personalizar tu flujo de trabajo


209 Administrar plugins209 Administrar plugins

210</h2>210</h2>

211 211 

212La extensión de VS Code incluye una interfaz gráfica para instalar y administrar [plugins](/es/plugins). Escribe `/plugins` en el cuadro de mensaje para abrir la interfaz **Administrar plugins**.212La extensión de VS Code incluye una interfaz gráfica para instalar y administrar [plugins](/docs/es/plugins). Escribe `/plugins` en el cuadro de mensaje para abrir la interfaz **Administrar plugins**.

213 213 

214<h3 id="install-plugins">214<h3 id="install-plugins">

215 Instalar plugins215 Instalar plugins


246 La administración de plugins en VS Code utiliza los mismos comandos CLI bajo el capó. Los plugins y marketplaces que configuras en la extensión también están disponibles en la CLI, y viceversa.246 La administración de plugins en VS Code utiliza los mismos comandos CLI bajo el capó. Los plugins y marketplaces que configuras en la extensión también están disponibles en la CLI, y viceversa.

247</Note>247</Note>

248 248 

249Para más información sobre el sistema de plugins, consulta [Plugins](/es/plugins) y [Marketplaces de plugins](/es/plugin-marketplaces).249Para más información sobre el sistema de plugins, consulta [Plugins](/docs/es/plugins) y [Marketplaces de plugins](/docs/es/plugin-marketplaces).

250 250 

251<h2 id="automate-browser-tasks-with-chrome">251<h2 id="automate-browser-tasks-with-chrome">

252 Automatizar tareas del navegador con Chrome252 Automatizar tareas del navegador con Chrome


264 264 

265Claude abre nuevas pestañas para tareas del navegador y comparte el estado de inicio de sesión de tu navegador, por lo que puedes acceder a cualquier sitio en el que ya hayas iniciado sesión.265Claude abre nuevas pestañas para tareas del navegador y comparte el estado de inicio de sesión de tu navegador, por lo que puedes acceder a cualquier sitio en el que ya hayas iniciado sesión.

266 266 

267Para instrucciones de configuración, la lista completa de capacidades y solución de problemas, consulta [Usar Claude Code con Chrome](/es/chrome).267Para instrucciones de configuración, la lista completa de capacidades y solución de problemas, consulta [Usar Claude Code con Chrome](/docs/es/chrome).

268 268 

269<h2 id="vs-code-commands-and-shortcuts">269<h2 id="vs-code-commands-and-shortcuts">

270 Comandos y atajos de teclado de VS Code270 Comandos y atajos de teclado de VS Code


332| Parámetro | Descripción |332| Parámetro | Descripción |

333| --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |333| --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

334| `prompt` | Texto para rellenar previamente en el cuadro de mensaje. Debe estar codificado en URL. El mensaje se rellena previamente pero no se envía automáticamente. |334| `prompt` | Texto para rellenar previamente en el cuadro de mensaje. Debe estar codificado en URL. El mensaje se rellena previamente pero no se envía automáticamente. |

335| `session` | Un ID de sesión para reanudar en lugar de iniciar una nueva conversación. La sesión debe pertenecer al espacio de trabajo actualmente abierto en VS Code. Si la sesión no se encuentra, se inicia una conversación nueva. Si la sesión ya está abierta en una pestaña, esa pestaña se enfoca. Para capturar un ID de sesión mediante programación, consulta [Continuar conversaciones](/es/headless#continue-conversations). |335| `session` | Un ID de sesión para reanudar en lugar de iniciar una nueva conversación. La sesión debe pertenecer al espacio de trabajo actualmente abierto en VS Code. Si la sesión no se encuentra, se inicia una conversación nueva. Si la sesión ya está abierta en una pestaña, esa pestaña se enfoca. Para capturar un ID de sesión mediante programación, consulta [Continuar conversaciones](/docs/es/headless#continue-conversations). |

336 336 

337Por ejemplo, para abrir una pestaña rellenada previamente con "review my changes":337Por ejemplo, para abrir una pestaña rellenada previamente con "review my changes":

338 338 


340vscode://anthropic.claude-code/open?prompt=review%20my%20changes340vscode://anthropic.claude-code/open?prompt=review%20my%20changes

341```341```

342 342 

343Para lanzar una sesión de terminal en lugar de una pestaña de VS Code, usa el controlador `claude-cli://` de la CLI. Consulta [Lanzar sesiones desde enlaces](/es/deep-links).343Para lanzar una sesión de terminal en lugar de una pestaña de VS Code, usa el controlador `claude-cli://` de la CLI. Consulta [Lanzar sesiones desde enlaces](/docs/es/deep-links).

344 344 

345<h2 id="configure-settings">345<h2 id="configure-settings">

346 Configurar ajustes346 Configurar ajustes


349La extensión tiene dos tipos de configuración:349La extensión tiene dos tipos de configuración:

350 350 

351* **Configuración de extensión** en VS Code: controla el comportamiento de la extensión dentro de VS Code. Abre con `Cmd+,` (Mac) o `Ctrl+,` (Windows/Linux), luego ve a Extensiones → Claude Code. También puedes escribir `/` y seleccionar **General Config** para abrir la configuración.351* **Configuración de extensión** en VS Code: controla el comportamiento de la extensión dentro de VS Code. Abre con `Cmd+,` (Mac) o `Ctrl+,` (Windows/Linux), luego ve a Extensiones → Claude Code. También puedes escribir `/` y seleccionar **General Config** para abrir la configuración.

352* **Configuración de Claude Code** en `~/.claude/settings.json`: compartida entre la extensión y la CLI. Usa para comandos permitidos, variables de entorno, hooks y MCP servers. Consulta [Configuración](/es/settings) para obtener más detalles.352* **Configuración de Claude Code** en `~/.claude/settings.json`: compartida entre la extensión y la CLI. Usa para comandos permitidos, variables de entorno, hooks y MCP servers. Consulta [Configuración](/docs/es/settings) para obtener más detalles.

353 353 

354<Tip>354<Tip>

355 Agrega `"$schema": "https://json.schemastore.org/claude-code-settings.json"` a tu `settings.json` para obtener autocompletado y validación en línea para todos los ajustes disponibles directamente en VS Code.355 Agrega `"$schema": "https://json.schemastore.org/claude-code-settings.json"` a tu `settings.json` para obtener autocompletado y validación en línea para todos los ajustes disponibles directamente en VS Code.


362| Configuración | Predeterminado | Descripción |362| Configuración | Predeterminado | Descripción |

363| ----------------------------------- | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |363| ----------------------------------- | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

364| `useTerminal` | `false` | Lanzar Claude en modo terminal en lugar de panel gráfico |364| `useTerminal` | `false` | Lanzar Claude en modo terminal en lugar de panel gráfico |

365| `initialPermissionMode` | `default` | Controla mensajes de aprobación para nuevas conversaciones: `default`, `plan`, `acceptEdits`, o `bypassPermissions`. {/* min-version: 2.1.200 */}`manual` es un alias para `default` y selecciona el modo etiquetado como **Manual** en el indicador de modo. Requiere Claude Code v2.1.200 o posterior. Consulta [modos de permiso](/es/permission-modes). |365| `initialPermissionMode` | `default` | Controla mensajes de aprobación para nuevas conversaciones: `default`, `plan`, `acceptEdits`, o `bypassPermissions`. `manual` es un alias para `default` y selecciona el modo etiquetado como **Manual** en el indicador de modo. Requiere Claude Code v2.1.200 o posterior. Consulta [modos de permiso](/docs/es/permission-modes). |

366| `preferredLocation` | `panel` | Dónde se abre Claude: `sidebar` (derecha) o `panel` (nueva pestaña) |366| `preferredLocation` | `panel` | Dónde se abre Claude: `sidebar` (derecha) o `panel` (nueva pestaña) |

367| `autosave` | `true` | Guardar archivos automáticamente antes de que Claude los lea o escriba |367| `autosave` | `true` | Guardar archivos automáticamente antes de que Claude los lea o escriba |

368| `useCtrlEnterToSend` | `false` | Usar Ctrl/Cmd+Enter en lugar de Enter para enviar mensajes |368| `useCtrlEnterToSend` | `false` | Usar Ctrl/Cmd+Enter en lugar de Enter para enviar mensajes |


374| `environmentVariables` | `[]` | Establecer variables de entorno para el proceso de Claude. Usa la configuración de Claude Code en su lugar para configuración compartida. |374| `environmentVariables` | `[]` | Establecer variables de entorno para el proceso de Claude. Usa la configuración de Claude Code en su lugar para configuración compartida. |

375| `disableLoginPrompt` | `false` | Omitir mensajes de autenticación (para configuraciones de proveedores de terceros) |375| `disableLoginPrompt` | `false` | Omitir mensajes de autenticación (para configuraciones de proveedores de terceros) |

376| `allowDangerouslySkipPermissions` | `false` | Agrega Bypass permissions al selector de modo. Usa solo en sandboxes sin acceso a Internet. |376| `allowDangerouslySkipPermissions` | `false` | Agrega Bypass permissions al selector de modo. Usa solo en sandboxes sin acceso a Internet. |

377| `claudeProcessWrapper` | - | Ejecutable utilizado para lanzar el proceso de Claude. La ruta del binario incluido se pasa como argumento cuando está presente. Establece esto en un binario `claude` instalado por separado si la compilación de la extensión no incluye uno para tu plataforma. Un error "Unsupported platform" en la activación significa que no hay binario incluido para tu plataforma; consulta [qué plataformas tienen binarios precompilados](/es/troubleshoot-install#native-binary-not-found-after-npm-install). |377| `claudeProcessWrapper` | - | Ejecutable utilizado para lanzar el proceso de Claude. La ruta del binario incluido se pasa como argumento cuando está presente. Establece esto en un binario `claude` instalado por separado si la compilación de la extensión no incluye uno para tu plataforma. Un error "Unsupported platform" en la activación significa que no hay binario incluido para tu plataforma; consulta [qué plataformas tienen binarios precompilados](/docs/es/troubleshoot-install#native-binary-not-found-after-npm-install). |

378 378 

379<h2 id="vs-code-extension-vs-claude-code-cli">379<h2 id="vs-code-extension-vs-claude-code-cli">

380 Extensión de VS Code frente a CLI de Claude Code380 Extensión de VS Code frente a CLI de Claude Code

381</h2>381</h2>

382 382 

383Claude Code está disponible tanto como una extensión de VS Code (panel gráfico) como una CLI (interfaz de línea de comandos en la terminal). Algunas características solo están disponibles en la CLI. Si necesitas una característica solo de CLI, ejecuta `claude` en la terminal integrada de VS Code. Esto requiere la [instalación de CLI independiente](/es/setup): la extensión no agrega `claude` a tu PATH. Consulta [Ejecutar CLI en VS Code](#run-cli-in-vs-code).383Claude Code está disponible tanto como una extensión de VS Code (panel gráfico) como una CLI (interfaz de línea de comandos en la terminal). Algunas características solo están disponibles en la CLI. Si necesitas una característica solo de CLI, ejecuta `claude` en la terminal integrada de VS Code. Esto requiere la [instalación de CLI independiente](/docs/es/setup): la extensión no agrega `claude` a tu PATH. Consulta [Ejecutar CLI en VS Code](#run-cli-in-vs-code).

384 384 

385| Característica | CLI | Extensión de VS Code |385| Característica | CLI | Extensión de VS Code |

386| --------------------------- | --------------------- | ------------------------------------------------------------------------------------------------------------ |386| --------------------------- | --------------------- | ------------------------------------------------------------------------------------------------------------ |

387| Comandos y skills | [Todos](/es/commands) | Subconjunto (escribe `/` para ver disponibles) |387| Comandos y skills | [Todos](/docs/es/commands) | Subconjunto (escribe `/` para ver disponibles) |

388| Configuración de MCP server | Sí | Parcial (agrega servidores a través de CLI; administra servidores existentes con `/mcp` en el panel de chat) |388| Configuración de MCP server | Sí | Parcial (agrega servidores a través de CLI; administra servidores existentes con `/mcp` en el panel de chat) |

389| Checkpoints | Sí | Sí |389| Checkpoints | Sí | Sí |

390| Atajo bash `!` | Sí | No |390| Atajo bash `!` | Sí | No |


400* **Retroceder código a aquí**: revertir cambios de archivo a este punto en la conversación mientras mantienes el historial de conversación completo400* **Retroceder código a aquí**: revertir cambios de archivo a este punto en la conversación mientras mantienes el historial de conversación completo

401* **Bifurcar conversación y retroceder código**: iniciar una nueva rama de conversación y revertir cambios de archivo a este punto401* **Bifurcar conversación y retroceder código**: iniciar una nueva rama de conversación y revertir cambios de archivo a este punto

402 402 

403Para obtener detalles completos sobre cómo funcionan los checkpoints y sus limitaciones, consulta [Checkpointing](/es/checkpointing).403Para obtener detalles completos sobre cómo funcionan los checkpoints y sus limitaciones, consulta [Checkpointing](/docs/es/checkpointing).

404 404 

405<h3 id="run-cli-in-vs-code">405<h3 id="run-cli-in-vs-code">

406 Ejecutar CLI en VS Code406 Ejecutar CLI en VS Code


408 408 

409Para usar la CLI mientras permaneces en VS Code, abre la terminal integrada (`` Ctrl+` `` en Windows/Linux o `` Cmd+` `` en Mac) y ejecuta `claude`. La CLI se integra automáticamente con tu IDE para características como visualización de diffs y uso compartido de diagnósticos.409Para usar la CLI mientras permaneces en VS Code, abre la terminal integrada (`` Ctrl+` `` en Windows/Linux o `` Cmd+` `` en Mac) y ejecuta `claude`. La CLI se integra automáticamente con tu IDE para características como visualización de diffs y uso compartido de diagnósticos.

410 410 

411Instalar la extensión no coloca `claude` en tu PATH de shell. La extensión incluye una copia privada de la CLI para su panel de chat, pero escribir `claude` en una terminal requiere la [instalación de CLI independiente](/es/setup). Ejecuta la instalación una vez y los comandos en esta página, incluyendo `claude mcp add` y `claude --resume`, funcionan en cualquier terminal. Si `claude` aún no se encuentra después de instalar, [verifica tu PATH](/es/troubleshoot-install#verify-your-path).411Instalar la extensión no coloca `claude` en tu PATH de shell. La extensión incluye una copia privada de la CLI para su panel de chat, pero escribir `claude` en una terminal requiere la [instalación de CLI independiente](/docs/es/setup). Ejecuta la instalación una vez y los comandos en esta página, incluyendo `claude mcp add` y `claude --resume`, funcionan en cualquier terminal. Si `claude` aún no se encuentra después de instalar, [verifica tu PATH](/docs/es/troubleshoot-install#verify-your-path).

412 412 

413Si usas una terminal externa, ejecuta `/ide` dentro de Claude Code para conectarlo a VS Code.413Si usas una terminal externa, ejecuta `/ide` dentro de Claude Code para conectarlo a VS Code.

414 414 


445 445 

446Una vez configurado, pide a Claude que use las herramientas (por ejemplo, "Review PR #456").446Una vez configurado, pide a Claude que use las herramientas (por ejemplo, "Review PR #456").

447 447 

448Para administrar servidores MCP sin salir de VS Code, escribe `/mcp` en el panel de chat. El diálogo de administración de MCP te permite habilitar o deshabilitar servidores, reconectarse a un servidor y administrar la autenticación OAuth. Consulta la [documentación de MCP](/es/mcp) para servidores disponibles.448Para administrar servidores MCP sin salir de VS Code, escribe `/mcp` en el panel de chat. El diálogo de administración de MCP te permite habilitar o deshabilitar servidores, reconectarse a un servidor y administrar la autenticación OAuth. Consulta la [documentación de MCP](/docs/es/mcp) para servidores disponibles.

449 449 

450<h2 id="work-with-git">450<h2 id="work-with-git">

451 Trabajar con git451 Trabajar con git


477claude --worktree feature-auth477claude --worktree feature-auth

478```478```

479 479 

480Cada worktree mantiene un estado de archivo independiente mientras comparte el historial de git. Esto evita que las instancias de Claude interfieran entre sí cuando trabajan en diferentes tareas. Para más detalles, consulta [Ejecutar sesiones paralelas con Git worktrees](/es/worktrees).480Cada worktree mantiene un estado de archivo independiente mientras comparte el historial de git. Esto evita que las instancias de Claude interfieran entre sí cuando trabajan en diferentes tareas. Para más detalles, consulta [Ejecutar sesiones paralelas con Git worktrees](/docs/es/worktrees).

481 481 

482<h2 id="use-third-party-providers">482<h2 id="use-third-party-providers">

483 Usar proveedores de terceros483 Usar proveedores de terceros


495 <Step title="Configurar su proveedor">495 <Step title="Configurar su proveedor">

496 Siga la guía de configuración para su proveedor:496 Siga la guía de configuración para su proveedor:

497 497 

498 * [Claude Code en Amazon Bedrock](/es/amazon-bedrock)498 * [Claude Code en Amazon Bedrock](/docs/es/amazon-bedrock)

499 * [Claude Code en Google Cloud's Agent Platform](/es/google-vertex-ai)499 * [Claude Code en Google Cloud's Agent Platform](/docs/es/google-vertex-ai)

500 * [Claude Code en Microsoft Foundry](/es/microsoft-foundry)500 * [Claude Code en Microsoft Foundry](/docs/es/microsoft-foundry)

501 501 

502 Estas guías cubren la configuración de su proveedor en `~/.claude/settings.json`, lo que garantiza que su configuración se comparta entre la extensión de VS Code y la CLI.502 Estas guías cubren la configuración de su proveedor en `~/.claude/settings.json`, lo que garantiza que su configuración se comparta entre la extensión de VS Code y la CLI.

503 </Step>503 </Step>


507 Seguridad y privacidad507 Seguridad y privacidad

508</h2>508</h2>

509 509 

510Tu código permanece privado. Claude Code procesa tu código para proporcionar asistencia pero no lo utiliza para entrenar modelos. Para obtener detalles sobre el manejo de datos y cómo optar por no participar en el registro, consulta [Datos y privacidad](/es/data-usage).510Tu código permanece privado. Claude Code procesa tu código para proporcionar asistencia pero no lo utiliza para entrenar modelos. Para obtener detalles sobre el manejo de datos y cómo optar por no participar en el registro, consulta [Datos y privacidad](/docs/es/data-usage).

511 511 

512Con permisos de edición automática habilitados, Claude Code puede modificar archivos de configuración de VS Code (como `settings.json` o `tasks.json`) que VS Code puede ejecutar automáticamente. Para reducir el riesgo al trabajar con código no confiable:512Con permisos de edición automática habilitados, Claude Code puede modificar archivos de configuración de VS Code (como `settings.json` o `tasks.json`) que VS Code puede ejecutar automáticamente. Para reducir el riesgo al trabajar con código no confiable:

513 513 


523 523 

524El servidor se llama `ide` y está oculto de `/mcp` porque no hay nada que configurar. Sin embargo, si tu organización utiliza un hook `PreToolUse` para permitir herramientas MCP, necesitarás saber que existe.524El servidor se llama `ide` y está oculto de `/mcp` porque no hay nada que configurar. Sin embargo, si tu organización utiliza un hook `PreToolUse` para permitir herramientas MCP, necesitarás saber que existe.

525 525 

526**Contexto de selección y archivo abierto.** Mientras está conectado, la CLI incluye tu selección actual del editor y la ruta del archivo activo como contexto en cada prompt que envías. La transcripción muestra una línea `⧉ Selected N lines from <file>` cuando esto sucede. Para excluir un archivo sensible como `.env`, añade una [regla de denegación `Read`](/es/permissions#read-and-edit) para su ruta. Una regla de denegación coincidente evita que tanto el texto seleccionado como el aviso de archivo abierto para ese archivo lleguen a Claude.526**Contexto de selección y archivo abierto.** Mientras está conectado, la CLI incluye tu selección actual del editor y la ruta del archivo activo como contexto en cada prompt que envías. La transcripción muestra una línea `⧉ Selected N lines from <file>` cuando esto sucede. Para excluir un archivo sensible como `.env`, añade una [regla de denegación `Read`](/docs/es/permissions#read-and-edit) para su ruta. Una regla de denegación coincidente evita que tanto el texto seleccionado como el aviso de archivo abierto para ese archivo lleguen a Claude.

527 527 

528**Transporte y autenticación.** El servidor se vincula a `127.0.0.1` en un puerto aleatorio en el rango 10000–65535, y el puerto no es configurable. El transporte es `ws://` sin encriptar; como el socket es solo de loopback, cualquier proceso que pudiera capturar el tráfico también puede leer el token del archivo de bloqueo, por lo que TLS no añadiría protección. Cada activación de extensión genera un token de autenticación aleatorio nuevo, lo escribe en un archivo de bloqueo en `~/.claude/ide/<port>.lock`, y la CLI debe presentarlo como el encabezado `X-Claude-Code-Ide-Authorization` para conectarse. El archivo de bloqueo tiene permisos `0600` en un directorio `0700`, por lo que solo el usuario que ejecuta VS Code puede leerlo. Si `CLAUDE_CONFIG_DIR` está configurado, el archivo de bloqueo se escribe en `$CLAUDE_CONFIG_DIR/ide/` en su lugar.528**Transporte y autenticación.** El servidor se vincula a `127.0.0.1` en un puerto aleatorio en el rango 10000–65535, y el puerto no es configurable. El transporte es `ws://` sin encriptar; como el socket es solo de loopback, cualquier proceso que pudiera capturar el tráfico también puede leer el token del archivo de bloqueo, por lo que TLS no añadiría protección. Cada activación de extensión genera un token de autenticación aleatorio nuevo, lo escribe en un archivo de bloqueo en `~/.claude/ide/<port>.lock`, y la CLI debe presentarlo como el encabezado `X-Claude-Code-Ide-Authorization` para conectarse. El archivo de bloqueo tiene permisos `0600` en un directorio `0700`, por lo que solo el usuario que ejecuta VS Code puede leerlo. Si `CLAUDE_CONFIG_DIR` está configurado, el archivo de bloqueo se escribe en `$CLAUDE_CONFIG_DIR/ide/` en su lugar.

529 529 


6022. Busca "Claude Code"6022. Busca "Claude Code"

6033. Haz clic en **Desinstalar**6033. Haz clic en **Desinstalar**

604 604 

605Ejecutar `claude` en una terminal integrada de VS Code reinstala la extensión automáticamente. Para mantenerla desinstalada, desactiva **Auto-install IDE extension** en `/config`, o establece [`autoInstallIdeExtension`](/es/settings#global-config-settings) en `false`. También puedes establecer la variable de entorno [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](/es/env-vars) en `1`.605Ejecutar `claude` en una terminal integrada de VS Code reinstala la extensión automáticamente. Para mantenerla desinstalada, desactiva **Auto-install IDE extension** en `/config`, o establece [`autoInstallIdeExtension`](/docs/es/settings#global-config-settings) en `false`. También puedes establecer la variable de entorno [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](/docs/es/env-vars) en `1`.

606 606 

607Para también eliminar datos de extensión y restablecer toda la configuración, elimina el directorio de almacenamiento de la extensión para tu plataforma.607Para también eliminar datos de extensión y restablecer toda la configuración, elimina el directorio de almacenamiento de la extensión para tu plataforma.

608 608 


624Remove-Item -Recurse -Force "$env:APPDATA\Code\User\globalStorage\anthropic.claude-code"624Remove-Item -Recurse -Force "$env:APPDATA\Code\User\globalStorage\anthropic.claude-code"

625```625```

626 626 

627Para obtener ayuda adicional, consulta la [guía de solución de problemas](/es/troubleshooting).627Para obtener ayuda adicional, consulta la [guía de solución de problemas](/docs/es/troubleshooting).

628 628 

629<h2 id="next-steps">629<h2 id="next-steps">

630 Próximos pasos630 Próximos pasos


632 632 

633Ahora que tienes Claude Code configurado en VS Code:633Ahora que tienes Claude Code configurado en VS Code:

634 634 

635* [Explora flujos de trabajo comunes](/es/common-workflows) para aprovechar al máximo Claude Code635* [Explora flujos de trabajo comunes](/docs/es/common-workflows) para aprovechar al máximo Claude Code

636* [Configura MCP servers](/es/mcp) para extender las capacidades de Claude con herramientas externas. Agrega servidores usando la CLI, luego adminístralos con `/mcp` en el panel de chat.636* [Configura MCP servers](/docs/es/mcp) para extender las capacidades de Claude con herramientas externas. Agrega servidores usando la CLI, luego adminístralos con `/mcp` en el panel de chat.

637* [Configura la configuración de Claude Code](/es/settings) para personalizar comandos permitidos, hooks y más. Esta configuración se comparte entre la extensión y la CLI.637* [Configura la configuración de Claude Code](/docs/es/settings) para personalizar comandos permitidos, hooks y más. Esta configuración se comparte entre la extensión y la CLI.

web-quickstart.md +25 −25

Details

21* **Tareas que no necesitan dirección frecuente**: envía una tarea bien definida, haz otra cosa y revisa el resultado cuando Claude haya terminado21* **Tareas que no necesitan dirección frecuente**: envía una tarea bien definida, haz otra cosa y revisa el resultado cuando Claude haya terminado

22* **Preguntas sobre código y exploración**: comprende una base de código o rastrea cómo se implementa una función sin una descarga local22* **Preguntas sobre código y exploración**: comprende una base de código o rastrea cómo se implementa una función sin una descarga local

23 23 

24Para trabajos que necesitan tu configuración local, herramientas o entorno, ejecutar Claude Code localmente o usar [Remote Control](/es/remote-control) es una mejor opción.24Para trabajos que necesitan tu configuración local, herramientas o entorno, ejecutar Claude Code localmente o usar [Remote Control](/docs/es/remote-control) es una mejor opción.

25 25 

26<h2 id="how-sessions-run">26<h2 id="how-sessions-run">

27 Cómo se ejecutan las sesiones27 Cómo se ejecutan las sesiones


29 29 

30Cuando envías una tarea:30Cuando envías una tarea:

31 31 

321. **Clonar y preparar**: tu repositorio se clona en una VM administrada por Anthropic, y tu [script de configuración](/es/claude-code-on-the-web#setup-scripts) se ejecuta si está configurado.321. **Clonar y preparar**: tu repositorio se clona en una VM administrada por Anthropic, y tu [script de configuración](/docs/es/claude-code-on-the-web#setup-scripts) se ejecuta si está configurado.

332. **Configurar red**: el acceso a internet se establece según el [nivel de acceso](/es/claude-code-on-the-web#access-levels) de tu entorno.332. **Configurar red**: el acceso a internet se establece según el [nivel de acceso](/docs/es/claude-code-on-the-web#access-levels) de tu entorno.

343. **Trabajar**: Claude analiza el código, realiza cambios, ejecuta pruebas y verifica su trabajo. Puedes observar y dirigir en todo momento, o alejarte y volver cuando haya terminado.343. **Trabajar**: Claude analiza el código, realiza cambios, ejecuta pruebas y verifica su trabajo. Puedes observar y dirigir en todo momento, o alejarte y volver cuando haya terminado.

354. **Impulsar la rama**: cuando Claude alcanza un punto de parada, impulsa su rama a GitHub. Revisa el diff, deja comentarios en línea, crea un PR o envía otro mensaje para continuar.354. **Impulsar la rama**: cuando Claude alcanza un punto de parada, impulsa su rama a GitHub. Revisa el diff, deja comentarios en línea, crea un PR o envía otro mensaje para continuar.

36 36 


47| **El código se ejecuta en** | VM en la nube de Anthropic | Tu máquina | Tu máquina | Tu máquina o VM en la nube |47| **El código se ejecuta en** | VM en la nube de Anthropic | Tu máquina | Tu máquina | Tu máquina o VM en la nube |

48| **Chateas desde** | claude.ai o aplicación móvil | claude.ai o aplicación móvil | Tu terminal | La interfaz de Desktop |48| **Chateas desde** | claude.ai o aplicación móvil | claude.ai o aplicación móvil | Tu terminal | La interfaz de Desktop |

49| **Usa tu configuración local** | No, solo repositorio | Sí | Sí | Sí para local, no para nube |49| **Usa tu configuración local** | No, solo repositorio | Sí | Sí | Sí para local, no para nube |

50| **Requiere GitHub** | Sí, o [agrupa un repositorio local](/es/claude-code-on-the-web#send-local-repositories-without-github) mediante `--cloud` | No | No | Solo para sesiones en la nube |50| **Requiere GitHub** | Sí, o [agrupa un repositorio local](/docs/es/claude-code-on-the-web#send-local-repositories-without-github) mediante `--cloud` | No | No | Solo para sesiones en la nube |

51| **Sigue ejecutándose si te desconectas** | Sí | Mientras la terminal permanezca abierta | No | Depende del tipo de sesión |51| **Sigue ejecutándose si te desconectas** | Sí | Mientras la terminal permanezca abierta | No | Depende del tipo de sesión |

52| **[Modos de permiso](/es/permission-modes)** | Aceptar ediciones, Plan, Auto | Preguntar, Aceptar ediciones automáticamente, Plan | Todos los modos | Depende del tipo de sesión |52| **[Modos de permiso](/docs/es/permission-modes)** | Aceptar ediciones, Plan, Auto | Preguntar, Aceptar ediciones automáticamente, Plan | Todos los modos | Depende del tipo de sesión |

53| **Acceso a la red** | Configurable por entorno | Red de tu máquina | Red de tu máquina | Depende del tipo de sesión |53| **Acceso a la red** | Configurable por entorno | Red de tu máquina | Red de tu máquina | Depende del tipo de sesión |

54 54 

55Consulta los documentos de [inicio rápido de terminal](/es/quickstart), [aplicación Desktop](/es/desktop) o [Remote Control](/es/remote-control) para configurarlos.55Consulta los documentos de [inicio rápido de terminal](/docs/es/quickstart), [aplicación Desktop](/docs/es/desktop) o [Remote Control](/docs/es/remote-control) para configurarlos.

56 56 

57<h2 id="connect-github-and-create-an-environment">57<h2 id="connect-github-and-create-an-environment">

58 Conecta GitHub y crea un entorno58 Conecta GitHub y crea un entorno


70 </Step>70 </Step>

71 71 

72 <Step title="Crea tu entorno">72 <Step title="Crea tu entorno">

73 Después de conectar GitHub, se te pedirá que crees un entorno en la nube. El entorno controla qué acceso a la red tiene Claude durante las sesiones y qué se ejecuta cuando se crea una nueva sesión. Consulta [Herramientas instaladas](/es/claude-code-on-the-web#installed-tools) para ver qué está disponible sin ninguna configuración.73 Después de conectar GitHub, se te pedirá que crees un entorno en la nube. El entorno controla qué acceso a la red tiene Claude durante las sesiones y qué se ejecuta cuando se crea una nueva sesión. Consulta [Herramientas instaladas](/docs/es/claude-code-on-the-web#installed-tools) para ver qué está disponible sin ninguna configuración.

74 74 

75 El formulario tiene estos campos:75 El formulario tiene estos campos:

76 76 

77 * **Nombre**: una etiqueta de visualización. Útil cuando tienes múltiples entornos para diferentes proyectos o niveles de acceso.77 * **Nombre**: una etiqueta de visualización. Útil cuando tienes múltiples entornos para diferentes proyectos o niveles de acceso.

78 * **Acceso a la red**: controla a qué puede acceder la sesión en internet. El valor predeterminado, `Trusted`, permite conexiones a [registros de paquetes comunes](/es/claude-code-on-the-web#default-allowed-domains) como npm, PyPI y RubyGems mientras bloquea el acceso general a internet.78 * **Acceso a la red**: controla a qué puede acceder la sesión en internet. El valor predeterminado, `Trusted`, permite conexiones a [registros de paquetes comunes](/docs/es/claude-code-on-the-web#default-allowed-domains) como npm, PyPI y RubyGems mientras bloquea el acceso general a internet.

79 * **Variables de entorno**: variables opcionales disponibles en cada sesión, en formato `.env`. No envuelvas los valores entre comillas, ya que las comillas se almacenan como parte del valor. Estas son visibles para cualquiera que pueda editar este entorno.79 * **Variables de entorno**: variables opcionales disponibles en cada sesión, en formato `.env`. No envuelvas los valores entre comillas, ya que las comillas se almacenan como parte del valor. Estas son visibles para cualquiera que pueda editar este entorno.

80 * **Script de configuración**: un script Bash opcional que se ejecuta antes de que se lance Claude Code. Úsalo para instalar herramientas del sistema que la VM en la nube no incluye, como `apt install -y gh`. El resultado se [almacena en caché](/es/claude-code-on-the-web#environment-caching), por lo que el script no se vuelve a ejecutar en cada sesión. Consulta [Scripts de configuración](/es/claude-code-on-the-web#setup-scripts) para ver ejemplos y consejos de depuración.80 * **Script de configuración**: un script Bash opcional que se ejecuta antes de que se lance Claude Code. Úsalo para instalar herramientas del sistema que la VM en la nube no incluye, como `apt install -y gh`. El resultado se [almacena en caché](/docs/es/claude-code-on-the-web#environment-caching), por lo que el script no se vuelve a ejecutar en cada sesión. Consulta [Scripts de configuración](/docs/es/claude-code-on-the-web#setup-scripts) para ver ejemplos y consejos de depuración.

81 81 

82 Para un primer proyecto, deja los valores predeterminados y haz clic en **Crear entorno**. Puedes [editarlo más tarde o crear entornos adicionales](/es/claude-code-on-the-web#configure-your-environment) para diferentes proyectos.82 Para un primer proyecto, deja los valores predeterminados y haz clic en **Crear entorno**. Puedes [editarlo más tarde o crear entornos adicionales](/docs/es/claude-code-on-the-web#configure-your-environment) para diferentes proyectos.

83 </Step>83 </Step>

84</Steps>84</Steps>

85 85 


87 Conecta desde tu terminal87 Conecta desde tu terminal

88</h3>88</h3>

89 89 

90Si ya usas la CLI de GitHub (`gh`), puedes configurar Claude Code en la web sin abrir un navegador. Esto requiere la [CLI de Claude Code](/es/quickstart). `/web-setup` lee tu token local de `gh`, lo vincula a tu cuenta de Claude y crea un entorno en la nube predeterminado si no tienes uno.90Si ya usas la CLI de GitHub (`gh`), puedes configurar Claude Code en la web sin abrir un navegador. Esto requiere la [CLI de Claude Code](/docs/es/quickstart). `/web-setup` lee tu token local de `gh`, lo vincula a tu cuenta de Claude y crea un entorno en la nube predeterminado si no tienes uno.

91 91 

92<Note>92<Note>

93 Las organizaciones con [Retención de datos cero](/es/zero-data-retention) habilitada no pueden usar `/web-setup` u otras características de sesión en la nube. Si la CLI de GitHub no está instalada o autenticada, `/web-setup` abre el flujo de incorporación del navegador en su lugar.93 Las organizaciones con [Retención de datos cero](/docs/es/zero-data-retention) habilitada no pueden usar `/web-setup` u otras características de sesión en la nube. Si la CLI de GitHub no está instalada o autenticada, `/web-setup` abre el flujo de incorporación del navegador en su lugar.

94</Note>94</Note>

95 95 

96<Steps>96<Steps>


113 /web-setup113 /web-setup

114 ```114 ```

115 115 

116 Esto sincroniza tu token de `gh` con tu cuenta de Claude. Si aún no tienes un entorno en la nube, `/web-setup` crea uno con acceso a red Trusted y sin script de configuración. Puedes [editar el entorno o agregar variables](/es/claude-code-on-the-web#configure-your-environment) después. Una vez que `/web-setup` se complete, puedes iniciar sesiones en la nube desde tu terminal con [`--cloud`](/es/claude-code-on-the-web#from-terminal-to-web) o configurar tareas recurrentes con [`/schedule`](/es/routines).116 Esto sincroniza tu token de `gh` con tu cuenta de Claude. Si aún no tienes un entorno en la nube, `/web-setup` crea uno con acceso a red Trusted y sin script de configuración. Puedes [editar el entorno o agregar variables](/docs/es/claude-code-on-the-web#configure-your-environment) después. Una vez que `/web-setup` se complete, puedes iniciar sesiones en la nube desde tu terminal con [`--cloud`](/docs/es/claude-code-on-the-web#from-terminal-to-web) o configurar tareas recurrentes con [`/schedule`](/docs/es/routines).

117 </Step>117 </Step>

118</Steps>118</Steps>

119 119 


129 </Step>129 </Step>

130 130 

131 <Step title="Elige un modo de permiso">131 <Step title="Elige un modo de permiso">

132 El menú desplegable de modo junto a la entrada tiene como valor predeterminado **Aceptar ediciones automáticamente**, donde Claude realiza cambios e impulsa una rama sin detenerse para aprobación. Cambia a **Plan Mode** si deseas que Claude proponga un enfoque y espere tu aprobación antes de editar archivos. Las sesiones en la nube no ofrecen permisos Manual o Bypass. Consulta la [lista completa de modos de permiso](/es/permission-modes#available-modes) para ver qué permite cada uno.132 El menú desplegable de modo junto a la entrada tiene como valor predeterminado **Aceptar ediciones automáticamente**, donde Claude realiza cambios e impulsa una rama sin detenerse para aprobación. Cambia a **Plan Mode** si deseas que Claude proponga un enfoque y espere tu aprobación antes de editar archivos. Las sesiones en la nube no ofrecen permisos Manual o Bypass. Consulta la [lista completa de modos de permiso](/docs/es/permission-modes#available-modes) para ver qué permite cada uno.

133 </Step>133 </Step>

134 134 

135 <Step title="Describe la tarea y envía">135 <Step title="Describe la tarea y envía">


182 </Step>182 </Step>

183 183 

184 <Step title="Continúa iterando después del PR">184 <Step title="Continúa iterando después del PR">

185 La sesión permanece activa después de que se crea el PR. Pega la salida de falla de CI o comentarios del revisor en el chat y pide a Claude que los aborde. Para que Claude monitoree el PR automáticamente, consulta [Corregir automáticamente solicitudes de extracción](/es/claude-code-on-the-web#auto-fix-pull-requests).185 La sesión permanece activa después de que se crea el PR. Pega la salida de falla de CI o comentarios del revisor en el chat y pide a Claude que los aborde. Para que Claude monitoree el PR automáticamente, consulta [Corregir automáticamente solicitudes de extracción](/docs/es/claude-code-on-the-web#auto-fix-pull-requests).

186 </Step>186 </Step>

187</Steps>187</Steps>

188 188 


194 No aparecen repositorios después de conectar GitHub194 No aparecen repositorios después de conectar GitHub

195</h3>195</h3>

196 196 

197Una sesión en la nube puede usar cualquier repositorio que la cuenta de GitHub conectada pueda ver, independientemente de en qué repositorios esté instalada la aplicación Claude GitHub. Si falta un repositorio, verifica que la cuenta de GitHub conectada tenga acceso a él en GitHub. Si también deseas [Auto-fix](/es/claude-code-on-the-web#auto-fix-pull-requests) para un repositorio, instala la aplicación en él: en github.com, abre **Configuración → Aplicaciones → Claude → Configurar** y verifica que el repositorio esté listado en **Acceso a repositorios**. Los repositorios privados necesitan la misma autorización que los públicos.197Una sesión en la nube puede usar cualquier repositorio que la cuenta de GitHub conectada pueda ver, independientemente de en qué repositorios esté instalada la aplicación Claude GitHub. Si falta un repositorio, verifica que la cuenta de GitHub conectada tenga acceso a él en GitHub. Si también deseas [Auto-fix](/docs/es/claude-code-on-the-web#auto-fix-pull-requests) para un repositorio, instala la aplicación en él: en github.com, abre **Configuración → Aplicaciones → Claude → Configurar** y verifica que el repositorio esté listado en **Acceso a repositorios**. Los repositorios privados necesitan la misma autorización que los públicos.

198 198 

199<h3 id="the-page-only-shows-a-github-login-button">199<h3 id="the-page-only-shows-a-github-login-button">

200 La página solo muestra un botón de inicio de sesión de GitHub200 La página solo muestra un botón de inicio de sesión de GitHub

201</h3>201</h3>

202 202 

203Las sesiones en la nube requieren una cuenta de GitHub conectada. Conecta a través del flujo del navegador anterior, o ejecuta `/web-setup` desde tu terminal si usas la CLI de GitHub. Si prefieres no conectar GitHub en absoluto, consulta [Remote Control](/es/remote-control) para ejecutar Claude Code en tu propia máquina y monitorearlo desde la web.203Las sesiones en la nube requieren una cuenta de GitHub conectada. Conecta a través del flujo del navegador anterior, o ejecuta `/web-setup` desde tu terminal si usas la CLI de GitHub. Si prefieres no conectar GitHub en absoluto, consulta [Remote Control](/docs/es/remote-control) para ejecutar Claude Code en tu propia máquina y monitorearlo desde la web.

204 204 

205<h3 id="not-available-for-the-selected-organization">205<h3 id="not-available-for-the-selected-organization">

206 "No disponible para la organización seleccionada"206 "No disponible para la organización seleccionada"


220 "No se pudo crear un entorno en la nube" o "No hay entorno en la nube disponible" al usar `--cloud` o ultraplan220 "No se pudo crear un entorno en la nube" o "No hay entorno en la nube disponible" al usar `--cloud` o ultraplan

221</h3>221</h3>

222 222 

223Las características de sesión remota crean un entorno en la nube predeterminado automáticamente si no tienes uno. Si ves "No se pudo crear un entorno en la nube", la creación automática falló. {/* max-version: 2.1.100 */}Si ves "No hay entorno en la nube disponible", tu CLI es anterior a la creación automática. En cualquier caso, ejecuta `/web-setup` en la CLI de Claude Code para crear uno manualmente, o visita [claude.ai/code](https://claude.ai/code) y sigue el paso **Crea tu entorno** anterior.223Las características de sesión remota crean un entorno en la nube predeterminado automáticamente si no tienes uno. Si ves "No se pudo crear un entorno en la nube", la creación automática falló. Si ves "No hay entorno en la nube disponible", tu CLI es anterior a la creación automática. En cualquier caso, ejecuta `/web-setup` en la CLI de Claude Code para crear uno manualmente, o visita [claude.ai/code](https://claude.ai/code) y sigue el paso **Crea tu entorno** anterior.

224 224 

225<h3 id="setup-script-failed">225<h3 id="setup-script-failed">

226 El script de configuración falló226 El script de configuración falló


228 228 

229El script de configuración salió con un estado distinto de cero, lo que bloquea el inicio de la sesión. Las causas comunes son:229El script de configuración salió con un estado distinto de cero, lo que bloquea el inicio de la sesión. Las causas comunes son:

230 230 

231* Una instalación de paquete falló porque el registro no está en tu [nivel de acceso a la red](/es/claude-code-on-the-web#access-levels). `Trusted` cubre la mayoría de los administradores de paquetes; `None` los bloquea todos.231* Una instalación de paquete falló porque el registro no está en tu [nivel de acceso a la red](/docs/es/claude-code-on-the-web#access-levels). `Trusted` cubre la mayoría de los administradores de paquetes; `None` los bloquea todos.

232* El script hace referencia a un archivo o ruta que no existe en un clon nuevo.232* El script hace referencia a un archivo o ruta que no existe en un clon nuevo.

233* Un comando que funciona localmente necesita una invocación diferente en Ubuntu.233* Un comando que funciona localmente necesita una invocación diferente en Ubuntu.

234 234 


238 Las nuevas sesiones se cuelgan o agotan el tiempo de espera durante la configuración238 Las nuevas sesiones se cuelgan o agotan el tiempo de espera durante la configuración

239</h3>239</h3>

240 240 

241Si las nuevas sesiones se estancan en el paso del script de configuración o fallan con un error genérico del contenedor antes de que el script termine, el script probablemente está excediendo el presupuesto de tiempo de aproximadamente cinco minutos para construir el [caché del entorno](/es/claude-code-on-the-web#environment-caching). Los pasos pesados como extraer imágenes grandes de Docker, sincronizar árboles de dependencias completos o descargar pesos de modelos a menudo empujan el total por encima del límite, especialmente cuando se ejecutan uno tras otro.241Si las nuevas sesiones se estancan en el paso del script de configuración o fallan con un error genérico del contenedor antes de que el script termine, el script probablemente está excediendo el presupuesto de tiempo de aproximadamente cinco minutos para construir el [caché del entorno](/docs/es/claude-code-on-the-web#environment-caching). Los pasos pesados como extraer imágenes grandes de Docker, sincronizar árboles de dependencias completos o descargar pesos de modelos a menudo empujan el total por encima del límite, especialmente cuando se ejecutan uno tras otro.

242 242 

243Para solucionar esto, recorta el script para que se complete de manera confiable en menos de cinco minutos:243Para solucionar esto, recorta el script para que se complete de manera confiable en menos de cinco minutos:

244 244 

245* Ejecuta instalaciones independientes en paralelo con `&` y un `wait` final en lugar de ejecutarlas en serie.245* Ejecuta instalaciones independientes en paralelo con `&` y un `wait` final en lugar de ejecutarlas en serie.

246* Mueve las descargas más grandes fuera del script de configuración y hacia un [hook SessionStart](/es/claude-code-on-the-web#setup-scripts-vs-sessionstart-hooks) que las lance en segundo plano, para que la sesión sea utilizable mientras se completan.246* Mueve las descargas más grandes fuera del script de configuración y hacia un [hook SessionStart](/docs/es/claude-code-on-the-web#setup-scripts-vs-sessionstart-hooks) que las lance en segundo plano, para que la sesión sea utilizable mientras se completan.

247* Elimina los reintentos de sueño largo del script de configuración, ya que un bucle de reintento estancado cuenta contra el presupuesto.247* Elimina los reintentos de sueño largo del script de configuración, ya que un bucle de reintento estancado cuenta contra el presupuesto.

248 248 

249<h3 id="session-keeps-running-after-closing-the-tab">249<h3 id="session-keeps-running-after-closing-the-tab">

250 La sesión sigue ejecutándose después de cerrar la pestaña250 La sesión sigue ejecutándose después de cerrar la pestaña

251</h3>251</h3>

252 252 

253Esto es por diseño. Cerrar la pestaña o navegar lejos no detiene la sesión. Continúa ejecutándose en segundo plano hasta que Claude termine la tarea actual, luego se queda inactiva. Desde la barra lateral, puedes [archivar una sesión](/es/claude-code-on-the-web#archive-sessions) para ocultarla de tu lista, o [eliminarla](/es/claude-code-on-the-web#delete-sessions) para eliminarla permanentemente.253Esto es por diseño. Cerrar la pestaña o navegar lejos no detiene la sesión. Continúa ejecutándose en segundo plano hasta que Claude termine la tarea actual, luego se queda inactiva. Desde la barra lateral, puedes [archivar una sesión](/docs/es/claude-code-on-the-web#archive-sessions) para ocultarla de tu lista, o [eliminarla](/docs/es/claude-code-on-the-web#delete-sessions) para eliminarla permanentemente.

254 254 

255<h2 id="next-steps">255<h2 id="next-steps">

256 Próximos pasos256 Próximos pasos


258 258 

259Ahora que puedes enviar y revisar tareas, estas páginas cubren lo que viene después: iniciar sesiones en la nube desde tu terminal, programar trabajo recurrente y dar a Claude instrucciones permanentes.259Ahora que puedes enviar y revisar tareas, estas páginas cubren lo que viene después: iniciar sesiones en la nube desde tu terminal, programar trabajo recurrente y dar a Claude instrucciones permanentes.

260 260 

261* [Usa Claude Code en la web](/es/claude-code-on-the-web): la referencia completa, incluyendo teletransportar sesiones a tu terminal, scripts de configuración, variables de entorno y configuración de red261* [Usa Claude Code en la web](/docs/es/claude-code-on-the-web): la referencia completa, incluyendo teletransportar sesiones a tu terminal, scripts de configuración, variables de entorno y configuración de red

262* [Routines](/es/routines): automatiza el trabajo en un horario, mediante llamada API o en respuesta a eventos de GitHub262* [Routines](/docs/es/routines): automatiza el trabajo en un horario, mediante llamada API o en respuesta a eventos de GitHub

263* [CLAUDE.md](/es/memory): da a Claude instrucciones y contexto persistentes que se cargan al inicio de cada sesión263* [CLAUDE.md](/docs/es/memory): da a Claude instrucciones y contexto persistentes que se cargan al inicio de cada sesión

264* Instala la aplicación móvil de Claude para [iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) o [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude) para monitorear sesiones desde tu teléfono. Desde la CLI de Claude Code, `/mobile` muestra un código QR.264* Instala la aplicación móvil de Claude para [iOS](https://apps.apple.com/us/app/claude-by-anthropic/id6473753684) o [Android](https://play.google.com/store/apps/details?id=com.anthropic.claude) para monitorear sesiones desde tu teléfono. Desde la CLI de Claude Code, `/mobile` muestra un código QR.

workflows.md +19 −21

Details

6 6 

7> Los dynamic workflows orquestan muchos subagentes a partir de un script que Claude escribe y que puede volver a ejecutar. Úselos para auditorías de base de código, migraciones grandes e investigación con verificación cruzada.7> Los dynamic workflows orquestan muchos subagentes a partir de un script que Claude escribe y que puede volver a ejecutar. Úselos para auditorías de base de código, migraciones grandes e investigación con verificación cruzada.

8 8 

9{/* plan-availability: feature=workflows plans=pro,max,team,enterprise providers=all */}

10 

11<Note>9<Note>

12 Los dynamic workflows requieren Claude Code v2.1.154 o posterior y están disponibles en todos los planes pagos, con acceso a la API de Anthropic, y en Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry. En Pro, actívelos desde la fila Dynamic workflows en `/config`.10 Los dynamic workflows requieren Claude Code v2.1.154 o posterior y están disponibles en todos los planes pagos, con acceso a la API de Anthropic, y en Amazon Bedrock, Google Cloud's Agent Platform y Microsoft Foundry. En Pro, actívelos desde la fila Dynamic workflows en `/config`.

13</Note>11</Note>

14 12 

15Un dynamic workflow es un script de JavaScript que orquesta [subagentes](/es/sub-agents) a escala. Claude escribe el script para la tarea que describe, y un runtime lo ejecuta en segundo plano mientras su sesión permanece receptiva.13Un dynamic workflow es un script de JavaScript que orquesta [subagentes](/docs/es/sub-agents) a escala. Claude escribe el script para la tarea que describe, y un runtime lo ejecuta en segundo plano mientras su sesión permanece receptiva.

16 14 

17Recurra a un workflow cuando una tarea necesita más agentes de los que una conversación puede coordinar, o cuando desea que la orquestación esté codificada como un script que pueda leer y volver a ejecutar. Los ejemplos incluyen un barrido de errores en toda la base de código, una migración de 500 archivos, una pregunta de investigación que necesita que las fuentes se verifiquen mutuamente, y un plan difícil que vale la pena redactar desde varios ángulos independientes antes de comprometerse con uno.15Recurra a un workflow cuando una tarea necesita más agentes de los que una conversación puede coordinar, o cuando desea que la orquestación esté codificada como un script que pueda leer y volver a ejecutar. Los ejemplos incluyen un barrido de errores en toda la base de código, una migración de 500 archivos, una pregunta de investigación que necesita que las fuentes se verifiquen mutuamente, y un plan difícil que vale la pena redactar desde varios ángulos independientes antes de comprometerse con uno.

18 16 


20 Cuándo usar un workflow18 Cuándo usar un workflow

21</h2>19</h2>

22 20 

23[Subagentes](/es/sub-agents), [skills](/es/skills), [equipos de agentes](/es/agent-teams) y workflows pueden ejecutar una tarea de varios pasos. La diferencia es quién tiene el plan:21[Subagentes](/docs/es/sub-agents), [skills](/docs/es/skills), [equipos de agentes](/docs/es/agent-teams) y workflows pueden ejecutar una tarea de varios pasos. La diferencia es quién tiene el plan:

24 22 

25| | Subagentes | Skills | Equipos de agentes | Workflows |23| | Subagentes | Skills | Equipos de agentes | Workflows |

26| :----------------------------------------- | :--------------------------------- | :----------------------------- | :------------------------------------------------ | :----------------------------------------- |24| :----------------------------------------- | :--------------------------------- | :----------------------------- | :------------------------------------------------ | :----------------------------------------- |


69 <Step title="Leer el informe">67 <Step title="Leer el informe">

70 Cuando se completa la ejecución, el informe llega a su sesión. Cita las fuentes de las que proviene cada afirmación, con afirmaciones que no sobrevivieron la verificación cruzada ya filtradas.68 Cuando se completa la ejecución, el informe llega a su sesión. Cita las fuentes de las que proviene cada afirmación, con afirmaciones que no sobrevivieron la verificación cruzada ya filtradas.

71 69 

72 {/* min-version: 2.1.196 */}A partir de v2.1.196, cuando los agentes verificadores no pueden verificar una afirmación, como después de un límite de velocidad o error de API, el informe enumera esa afirmación como no verificada en lugar de contarla como refutada.70 A partir de v2.1.196, cuando los agentes verificadores no pueden verificar una afirmación, como después de un límite de velocidad o error de API, el informe enumera esa afirmación como no verificada en lugar de contarla como refutada.

73 </Step>71 </Step>

74</Steps>72</Steps>

75 73 


83 81 

84| Comando | Qué hace |82| Comando | Qué hace |

85| :-------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |83| :-------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

86| `/deep-research <question>` | Distribuye búsquedas web en una pregunta en varios ángulos, obtiene y verifica cruzadamente las fuentes que encuentra, vota en cada afirmación y devuelve un informe citado con afirmaciones que no sobrevivieron la verificación cruzada filtradas. Requiere que la [herramienta WebSearch](/es/tools-reference#websearch-tool-behavior) esté disponible |84| `/deep-research <question>` | Distribuye búsquedas web en una pregunta en varios ángulos, obtiene y verifica cruzadamente las fuentes que encuentra, vota en cada afirmación y devuelve un informe citado con afirmaciones que no sobrevivieron la verificación cruzada filtradas. Requiere que la [herramienta WebSearch](/docs/es/tools-reference#websearch-tool-behavior) esté disponible |

87 85 

88Los [workflows que guarda](#save-the-workflow-for-reuse) usted mismo se convierten en comandos de la misma manera y aparecen en el autocompletado `/` junto con los incluidos.86Los [workflows que guarda](#save-the-workflow-for-reuse) usted mismo se convierten en comandos de la misma manera y aparecen en el autocompletado `/` junto con los incluidos.

89 87 


105| `Enter` o `→` | Profundizar en la fase seleccionada, luego en un agente para leer su prompt, llamadas de herramientas recientes y resultado |103| `Enter` o `→` | Profundizar en la fase seleccionada, luego en un agente para leer su prompt, llamadas de herramientas recientes y resultado |

106| `Esc` o `←` | Retroceder un nivel. En v2.1.203 a v2.1.205, `←` no retrocedía de una fase o agente; use `Esc` en esas versiones |104| `Esc` o `←` | Retroceder un nivel. En v2.1.203 a v2.1.205, `←` no retrocedía de una fase o agente; use `Esc` en esas versiones |

107| `j` / `k` | Desplazarse dentro del detalle del agente cuando se desborda |105| `j` / `k` | Desplazarse dentro del detalle del agente cuando se desborda |

108| `f` | {/* min-version: 2.1.186 */}Filtrar la lista de agentes en la fase seleccionada por estado. Presione de nuevo para ciclar |106| `f` | Filtrar la lista de agentes en la fase seleccionada por estado. Presione de nuevo para ciclar |

109| `p` | Pausar o reanudar la ejecución |107| `p` | Pausar o reanudar la ejecución |

110| `x` | Detener el agente seleccionado, o detener todo el workflow cuando el enfoque está en la ejecución |108| `x` | Detener el agente seleccionado, o detener todo el workflow cuando el enfoque está en la ejecución |

111| `r` | Reiniciar el agente en ejecución seleccionado |109| `r` | Reiniciar el agente en ejecución seleccionado |


140 Dejar que Claude decida con ultracode138 Dejar que Claude decida con ultracode

141</h3>139</h3>

142 140 

143Ultracode es una configuración de Claude Code que combina `xhigh` [esfuerzo de razonamiento](/es/model-config#adjust-effort-level) con orquestación automática de workflows. Con él activado, Claude planifica un workflow para cada tarea sustancial en lugar de esperar a que lo pida.141Ultracode es una configuración de Claude Code que combina `xhigh` [esfuerzo de razonamiento](/docs/es/model-config#adjust-effort-level) con orquestación automática de workflows. Con él activado, Claude planifica un workflow para cada tarea sustancial en lugar de esperar a que lo pida.

144 142 

145```text theme={null}143```text theme={null}

146/effort ultracode144/effort ultracode


150 148 

151Con ultracode activado, Claude decide cuándo una tarea justifica un workflow. Una sola solicitud puede convertirse en varios workflows seguidos: uno para entender el código, uno para hacer el cambio y uno para verificarlo. Esto se aplica a cada tarea en la sesión, por lo que cada solicitud usa más tokens y toma más tiempo que en niveles de esfuerzo más bajos.149Con ultracode activado, Claude decide cuándo una tarea justifica un workflow. Una sola solicitud puede convertirse en varios workflows seguidos: uno para entender el código, uno para hacer el cambio y uno para verificarlo. Esto se aplica a cada tarea en la sesión, por lo que cada solicitud usa más tokens y toma más tiempo que en niveles de esfuerzo más bajos.

152 150 

153Ultracode dura la sesión actual y se reinicia cuando comienza una nueva. Vuelva con `/effort high` cuando regrese al trabajo rutinario. Está disponible en modelos que admiten `xhigh` [esfuerzo](/es/model-config#adjust-effort-level); en otros modelos el menú `/effort` no lo ofrece.151Ultracode dura la sesión actual y se reinicia cuando comienza una nueva. Vuelva con `/effort high` cuando regrese al trabajo rutinario. Está disponible en modelos que admiten `xhigh` [esfuerzo](/docs/es/model-config#adjust-effort-level); en otros modelos el menú `/effort` no lo ofrece.

154 152 

155<h3 id="approve-the-plan-before-it-runs">153<h3 id="approve-the-plan-before-it-runs">

156 Aprobar el plan antes de que se ejecute154 Aprobar el plan antes de que se ejecute


165 163 

166`Ctrl+G` abre el script en su editor. `Tab` le permite ajustar el prompt antes de que comience la ejecución.164`Ctrl+G` abre el script en su editor. `Tab` le permite ajustar el prompt antes de que comience la ejecución.

167 165 

168Si ve este prompt depende de su [modo de permiso](/es/permission-modes):166Si ve este prompt depende de su [modo de permiso](/docs/es/permission-modes):

169 167 

170| Modo de permiso | Cuándo se le solicita |168| Modo de permiso | Cuándo se le solicita |

171| :-------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |169| :-------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |


175 173 

176En la aplicación de escritorio, una tarjeta de aprobación muestra el nombre del workflow, la lista de fases y una advertencia de uso de tokens, con acciones **Once**, **Always** y **Deny**. La vista de progreso aparece en el panel lateral Background tasks.174En la aplicación de escritorio, una tarjeta de aprobación muestra el nombre del workflow, la lista de fases y una advertencia de uso de tokens, con acciones **Once**, **Always** y **Deny**. La vista de progreso aparece en el panel lateral Background tasks.

177 175 

178Su modo de permiso controla solo el prompt de lanzamiento anterior. Los subagentes que genera el workflow siempre se ejecutan en modo `acceptEdits` y heredan su [lista de permitidos de herramientas](/es/settings#permission-settings), independientemente del modo de su sesión. Las ediciones de archivos se aprueban automáticamente.176Su modo de permiso controla solo el prompt de lanzamiento anterior. Los subagentes que genera el workflow siempre se ejecutan en modo `acceptEdits` y heredan su [lista de permitidos de herramientas](/docs/es/settings#permission-settings), independientemente del modo de su sesión. Las ediciones de archivos se aprueban automáticamente.

179 177 

180Los comandos de shell, las búsquedas web y las herramientas MCP que no están en su lista de permitidos aún pueden solicitarle durante la ejecución. Para evitar esto en una ejecución larga, agregue los comandos que necesitan los agentes a su lista de permitidos antes de comenzar.178Los comandos de shell, las búsquedas web y las herramientas MCP que no están en su lista de permitidos aún pueden solicitarle durante la ejecución. Para evitar esto en una ejecución larga, agregue los comandos que necesitan los agentes a su lista de permitidos antes de comenzar.

181 179 


190Ejecute `/workflows`, seleccione la ejecución que desea mantener y presione `s`. En el diálogo de guardado, Tab alterna entre las dos ubicaciones de guardado:188Ejecute `/workflows`, seleccione la ejecución que desea mantener y presione `s`. En el diálogo de guardado, Tab alterna entre las dos ubicaciones de guardado:

191 189 

192* `.claude/workflows/` en su proyecto: compartido con todos los que clonan el repositorio190* `.claude/workflows/` en su proyecto: compartido con todos los que clonan el repositorio

193* `~/.claude/workflows/` en su directorio de inicio: disponible en cada proyecto, visible solo para usted. Si establece [`CLAUDE_CONFIG_DIR`](/es/env-vars), esta ubicación es el directorio `workflows/` bajo esa ruta.191* `~/.claude/workflows/` en su directorio de inicio: disponible en cada proyecto, visible solo para usted. Si establece [`CLAUDE_CONFIG_DIR`](/docs/es/env-vars), esta ubicación es el directorio `workflows/` bajo esa ruta.

194 192 

195{/* min-version: 2.1.208 */}El diálogo de guardado muestra la ruta resuelta para la ubicación personal. Antes de v2.1.208, mostraba `~/.claude/workflows/` incluso cuando `CLAUDE_CONFIG_DIR` estaba establecido; el archivo aún se guardaba en el directorio configurado.193El diálogo de guardado muestra la ruta resuelta para la ubicación personal. Antes de v2.1.208, mostraba `~/.claude/workflows/` incluso cuando `CLAUDE_CONFIG_DIR` estaba establecido; el archivo aún se guardaba en el directorio configurado.

196 194 

197Presione Enter para guardar. El workflow se ejecuta como `/<name>` en futuras sesiones desde cualquier ubicación.195Presione Enter para guardar. El workflow se ejecuta como `/<name>` en futuras sesiones desde cualquier ubicación.

198 196 

199{/* min-version: 2.1.178 */}En un monorepo con varios directorios `.claude/`, puede mantener workflows junto al paquete al que se aplican. A partir de v2.1.178, guardar en la ubicación del proyecto escribe en el directorio `.claude/workflows/` más cercano que ya existe entre su directorio de trabajo y la raíz del repositorio, o en la raíz del repositorio si aún no existe ninguno. Los workflows del proyecto también se cargan desde cada `.claude/workflows/` a lo largo de esa ruta, y cuando más de uno define el mismo nombre Claude Code ejecuta el más cercano al directorio de trabajo.197En un monorepo con varios directorios `.claude/`, puede mantener workflows junto al paquete al que se aplican. A partir de v2.1.178, guardar en la ubicación del proyecto escribe en el directorio `.claude/workflows/` más cercano que ya existe entre su directorio de trabajo y la raíz del repositorio, o en la raíz del repositorio si aún no existe ninguno. Los workflows del proyecto también se cargan desde cada `.claude/workflows/` a lo largo de esa ruta, y cuando más de uno define el mismo nombre Claude Code ejecuta el más cercano al directorio de trabajo.

200 198 

201Si un workflow de proyecto y un workflow personal comparten un nombre, se ejecuta el del proyecto.199Si un workflow de proyecto y un workflow personal comparten un nombre, se ejecuta el del proyecto.

202 200 


303return audits.filter(Boolean)301return audits.filter(Boolean)

304```302```

305 303 

306El cuerpo es JavaScript simple con `await` de nivel superior. `agent()` genera un subagente y `pipeline()` ejecuta uno por elemento en una lista. Si desea editar un script a mano, pida a Claude que le guíe a través del cambio, o consulte la entrada de herramienta Workflow en la [referencia del Agent SDK](/es/agent-sdk/typescript) para el conjunto completo de opciones.304El cuerpo es JavaScript simple con `await` de nivel superior. `agent()` genera un subagente y `pipeline()` ejecuta uno por elemento en una lista. Si desea editar un script a mano, pida a Claude que le guíe a través del cambio, o consulte la entrada de herramienta Workflow en la [referencia del Agent SDK](/docs/es/agent-sdk/typescript) para el conjunto completo de opciones.

307 305 

308<h2 id="how-a-workflow-runs">306<h2 id="how-a-workflow-runs">

309 Cómo se ejecuta un workflow307 Cómo se ejecuta un workflow


357* Si [establece una directriz de tamaño](#set-a-size-guideline), el recuento de agentes de la directriz reemplaza el umbral de 25 agentes.355* Si [establece una directriz de tamaño](#set-a-size-guideline), el recuento de agentes de la directriz reemplaza el umbral de 25 agentes.

358* Las sesiones con [ultracode](#let-claude-decide-with-ultracode) activado no muestran la advertencia, porque activar ultracode ya lo incluye en ejecuciones grandes.356* Las sesiones con [ultracode](#let-claude-decide-with-ultracode) activado no muestran la advertencia, porque activar ultracode ya lo incluye en ejecuciones grandes.

359 357 

360Cada agente en un workflow usa el modelo de su sesión a menos que el script dirija una etapa a uno diferente o la variable de entorno [`CLAUDE_CODE_SUBAGENT_MODEL`](/es/model-config#environment-variables) esté configurada, que anula ambos. Para controlar el costo del modelo:358Cada agente en un workflow usa el modelo de su sesión a menos que el script dirija una etapa a uno diferente o la variable de entorno [`CLAUDE_CODE_SUBAGENT_MODEL`](/docs/es/model-config#environment-variables) esté configurada, que anula ambos. Para controlar el costo del modelo:

361 359 

362* Verifique `/model` antes de una ejecución grande si generalmente cambia a un modelo más pequeño para trabajo rutinario360* Verifique `/model` antes de una ejecución grande si generalmente cambia a un modelo más pequeño para trabajo rutinario

363* Pida a Claude que use un modelo más pequeño para etapas que no necesitan el más fuerte cuando describe la tarea361* Pida a Claude que use un modelo más pequeño para etapas que no necesitan el más fuerte cuando describe la tarea


383 Desactivar workflows381 Desactivar workflows

384</h3>382</h3>

385 383 

386Los workflows están disponibles en la CLI, la aplicación de escritorio, las extensiones del IDE, [modo no interactivo](/es/headless) con `claude -p` y el [Agent SDK](/es/agent-sdk/overview). La misma configuración de desactivación se aplica en cada superficie.384Los workflows están disponibles en la CLI, la aplicación de escritorio, las extensiones del IDE, [modo no interactivo](/docs/es/headless) con `claude -p` y el [Agent SDK](/docs/es/agent-sdk/overview). La misma configuración de desactivación se aplica en cada superficie.

387 385 

388Para desactivar workflows para usted:386Para desactivar workflows para usted:

389 387 


391* Establezca `"disableWorkflows": true` en `~/.claude/settings.json`. Persiste entre sesiones.389* Establezca `"disableWorkflows": true` en `~/.claude/settings.json`. Persiste entre sesiones.

392* Establezca `CLAUDE_CODE_DISABLE_WORKFLOWS=1`. Se lee al inicio, por lo que se aplica dondequiera que lo establezca.390* Establezca `CLAUDE_CODE_DISABLE_WORKFLOWS=1`. Se lee al inicio, por lo que se aplica dondequiera que lo establezca.

393 391 

394Para desactivar workflows para toda su organización, establezca `"disableWorkflows": true` en [configuración administrada](/es/server-managed-settings), o use el botón de alternancia en la página [configuración de administrador de Claude Code](https://claude.ai/admin-settings/claude-code).392Para desactivar workflows para toda su organización, establezca `"disableWorkflows": true` en [configuración administrada](/docs/es/server-managed-settings), o use el botón de alternancia en la página [configuración de administrador de Claude Code](https://claude.ai/admin-settings/claude-code).

395 393 

396Cuando los workflows están desactivados, los comandos de workflow incluidos no están disponibles, la palabra clave `ultracode` ya no activa una ejecución, y `ultracode` se elimina del menú `/effort`.394Cuando los workflows están desactivados, los comandos de workflow incluidos no están disponibles, la palabra clave `ultracode` ya no activa una ejecución, y `ultracode` se elimina del menú `/effort`.

397 395 


399 Recursos relacionados397 Recursos relacionados

400</h2>398</h2>

401 399 

402* [Ejecutar agentes en paralelo](/es/agents): comparar subagentes, vista de agente, equipos de agentes y workflows400* [Ejecutar agentes en paralelo](/docs/es/agents): comparar subagentes, vista de agente, equipos de agentes y workflows

403* [Crear subagentes personalizados](/es/sub-agents): la primitiva de trabajador que orquestan los workflows401* [Crear subagentes personalizados](/docs/es/sub-agents): la primitiva de trabajador que orquestan los workflows

404* [Gestionar costos](/es/costs): cómo las ejecuciones de múltiples agentes cuentan hacia los límites de uso402* [Gestionar costos](/docs/es/costs): cómo las ejecuciones de múltiples agentes cuentan hacia los límites de uso

worktrees.md +21 −21

Details

8 8 

9Un [git worktree](https://git-scm.com/docs/git-worktree) es un directorio de trabajo separado con sus propios archivos y rama, compartiendo el mismo historial de repositorio y remoto que su checkout principal. Ejecutar cada sesión de Claude Code en su propio worktree significa que las ediciones en una sesión nunca tocan archivos en otra, por lo que puede tener a Claude construyendo una característica en una terminal mientras corrige un error en una segunda.9Un [git worktree](https://git-scm.com/docs/git-worktree) es un directorio de trabajo separado con sus propios archivos y rama, compartiendo el mismo historial de repositorio y remoto que su checkout principal. Ejecutar cada sesión de Claude Code en su propio worktree significa que las ediciones en una sesión nunca tocan archivos en otra, por lo que puede tener a Claude construyendo una característica en una terminal mientras corrige un error en una segunda.

10 10 

11Esta página cubre el aislamiento de worktree en la CLI. Todo lo siguiente asume un repositorio de git. Para otros sistemas de control de versiones, consulte [Control de versiones no-git](#non-git-version-control). La [aplicación de escritorio](/es/desktop#work-in-parallel-with-sessions) crea un worktree para cada nueva sesión automáticamente.11Esta página cubre el aislamiento de worktree en la CLI. Todo lo siguiente asume un repositorio de git. Para otros sistemas de control de versiones, consulte [Control de versiones no-git](#non-git-version-control). La [aplicación de escritorio](/docs/es/desktop#work-in-parallel-with-sessions) crea un worktree para cada nueva sesión automáticamente.

12 12 

13Los worktrees son una de varias formas de ejecutar Claude en paralelo. Aíslan ediciones de archivos, mientras que [subagentes](/es/sub-agents) y [equipos de agentes](/es/agent-teams) coordinan el trabajo en sí. Consulte [Ejecutar agentes en paralelo](/es/agents) para comparar los enfoques, o salte directamente a [Aislar subagentes con worktrees](#isolate-subagents-with-worktrees) para usar worktrees y subagentes juntos.13Los worktrees son una de varias formas de ejecutar Claude en paralelo. Aíslan ediciones de archivos, mientras que [subagentes](/docs/es/sub-agents) y [equipos de agentes](/docs/es/agent-teams) coordinan el trabajo en sí. Consulte [Ejecutar agentes en paralelo](/docs/es/agents) para comparar los enfoques, o salte directamente a [Aislar subagentes con worktrees](#isolate-subagents-with-worktrees) para usar worktrees y subagentes juntos.

14 14 

15<h2 id="start-claude-in-a-worktree">15<h2 id="start-claude-in-a-worktree">

16 Inicie Claude en un worktree16 Inicie Claude en un worktree


34claude --worktree34claude --worktree

35```35```

36 36 

37También puede pedirle a Claude que "trabaje en un worktree" durante una sesión, y creará uno con la herramienta [`EnterWorktree`](/es/tools-reference). Una vez en un worktree, Claude puede cambiar directamente a otro bajo `.claude/worktrees/` llamando a `EnterWorktree` con la ruta de destino. El worktree anterior permanece en el disco sin cambios.37También puede pedirle a Claude que "trabaje en un worktree" durante una sesión, y creará uno con la herramienta [`EnterWorktree`](/docs/es/tools-reference). Una vez en un worktree, Claude puede cambiar directamente a otro bajo `.claude/worktrees/` llamando a `EnterWorktree` con la ruta de destino. El worktree anterior permanece en el disco sin cambios.

38 38 

39Entrar en una ruta fuera del directorio `.claude/worktrees/` del repositorio solicita su aprobación primero, porque mueve el directorio de trabajo de la sesión, acceso de escritura, y configuración del proyecto como `CLAUDE.md` y configuración a esa ubicación. Una regla de [permiso](/es/permissions) de `EnterWorktree` o elegir "no preguntar de nuevo" no suprime este aviso; solo el modo `bypassPermissions` lo omite. Antes de v2.1.206, Claude podía entrar en cualquier ruta de worktree existente sin preguntar.39Entrar en una ruta fuera del directorio `.claude/worktrees/` del repositorio solicita su aprobación primero, porque mueve el directorio de trabajo de la sesión, acceso de escritura, y configuración del proyecto como `CLAUDE.md` y configuración a esa ubicación. Una regla de [permiso](/docs/es/permissions) de `EnterWorktree` o elegir "no preguntar de nuevo" no suprime este aviso; solo el modo `bypassPermissions` lo omite. Antes de v2.1.206, Claude podía entrar en cualquier ruta de worktree existente sin preguntar.

40 40 

41{/* min-version: 2.1.198 */}A partir de v2.1.198, entrar o salir de un worktree también traslada la transcripción de la sesión al almacenamiento del proyecto de ese directorio, de la misma manera que [`/cd`](/es/commands) lo hace, por lo que `/desktop` y `--resume` encuentran la sesión allí después. Los worktrees creados por un [hook `WorktreeCreate`](#non-git-version-control) se excluyen y mantienen la transcripción en el directorio de lanzamiento.41A partir de v2.1.198, entrar o salir de un worktree también traslada la transcripción de la sesión al almacenamiento del proyecto de ese directorio, de la misma manera que [`/cd`](/docs/es/commands) lo hace, por lo que `/desktop` y `--resume` encuentran la sesión allí después. Los worktrees creados por un [hook `WorktreeCreate`](#non-git-version-control) se excluyen y mantienen la transcripción en el directorio de lanzamiento.

42 42 

43Los worktrees funcionan con [sandboxing](/es/sandboxing#filesystem-isolation) habilitado: el sandbox permite escrituras al directorio compartido `.git` del repositorio principal para que comandos como `git commit` puedan actualizar refs e índice desde dentro de un worktree vinculado.43Los worktrees funcionan con [sandboxing](/docs/es/sandboxing#filesystem-isolation) habilitado: el sandbox permite escrituras al directorio compartido `.git` del repositorio principal para que comandos como `git commit` puedan actualizar refs e índice desde dentro de un worktree vinculado.

44 44 

45Antes de usar `--worktree` interactivamente en un directorio por primera vez, acepte el diálogo de confianza del espacio de trabajo ejecutando `claude` una vez en ese directorio. Si la confianza aún no ha sido aceptada, `--worktree` sale con un error y le solicita que ejecute `claude` en el directorio primero. Las ejecuciones no interactivas con `-p` omiten la [verificación de confianza](/es/security), por lo que `claude -p --worktree` procede sin ella.45Antes de usar `--worktree` interactivamente en un directorio por primera vez, acepte el diálogo de confianza del espacio de trabajo ejecutando `claude` una vez en ese directorio. Si la confianza aún no ha sido aceptada, `--worktree` sale con un error y le solicita que ejecute `claude` en el directorio primero. Las ejecuciones no interactivas con `-p` omiten la [verificación de confianza](/docs/es/security), por lo que `claude -p --worktree` procede sin ella.

46 46 

47{/* min-version: 2.1.205 */}Si Claude Code no puede entrar en el directorio del worktree al iniciar, por ejemplo porque un [hook `WorktreeCreate`](/es/hooks#worktreecreate) imprimió algo diferente al directorio que creó, o porque el directorio fue eliminado después de que fue configurado, Claude Code imprime un error nombrando la ruta y sale con código 1. Antes de v2.1.205, esto causaba un bloqueo de la sesión, y con `-p` se estancaba durante aproximadamente 30 segundos antes de salir con código 0.47Si Claude Code no puede entrar en el directorio del worktree al iniciar, por ejemplo porque un [hook `WorktreeCreate`](/docs/es/hooks#worktreecreate) imprimió algo diferente al directorio que creó, o porque el directorio fue eliminado después de que fue configurado, Claude Code imprime un error nombrando la ruta y sale con código 1. Antes de v2.1.205, esto causaba un bloqueo de la sesión, y con `-p` se estancaba durante aproximadamente 30 segundos antes de salir con código 0.

48 48 

49{/* min-version: 2.1.200 */}Los plugins instalados en [ámbito de proyecto](/es/plugins-reference#plugin-installation-scopes) desde el checkout principal también se cargan en worktrees del mismo repositorio, por lo que no necesita reinstalarlos por worktree. Esto se aplica tanto si crea el worktree con `--worktree` como con `git worktree add`. Requiere Claude Code v2.1.200 o posterior.49Los plugins instalados en [ámbito de proyecto](/docs/es/plugins-reference#plugin-installation-scopes) desde el checkout principal también se cargan en worktrees del mismo repositorio, por lo que no necesita reinstalarlos por worktree. Esto se aplica tanto si crea el worktree con `--worktree` como con `git worktree add`. Requiere Claude Code v2.1.200 o posterior.

50 50 

51<Tip>51<Tip>

52 Agregue `.claude/worktrees/` a su `.gitignore` para que el contenido del worktree no aparezca como archivos sin seguimiento en su checkout principal.52 Agregue `.claude/worktrees/` a su `.gitignore` para que el contenido del worktree no aparezca como archivos sin seguimiento en su checkout principal.


60 60 

61La actualización requiere Claude Code v2.1.208 o posterior; antes de eso, un worktree nuevo usaba lo que `origin/HEAD` ya estaba almacenado en caché localmente.61La actualización requiere Claude Code v2.1.208 o posterior; antes de eso, un worktree nuevo usaba lo que `origin/HEAD` ya estaba almacenado en caché localmente.

62 62 

63Para siempre ramificarse desde `HEAD` local en su lugar, establezca `worktree.baseRef` en `"head"` en [configuración](/es/settings#worktree-settings). Establecer `baseRef` en `"head"` hace que los nuevos worktrees lleven sus commits no enviados y estado de rama de característica, lo cual es útil cuando se aíslan subagentes que necesitan operar en trabajo en progreso. Cuando la sesión se ejecuta dentro de un worktree vinculado, `"head"` se resuelve a ese `HEAD` del worktree, no al del checkout principal. La configuración acepta solo `"fresh"` o `"head"`, no refs de git arbitrarios:63Para siempre ramificarse desde `HEAD` local en su lugar, establezca `worktree.baseRef` en `"head"` en [configuración](/docs/es/settings#worktree-settings). Establecer `baseRef` en `"head"` hace que los nuevos worktrees lleven sus commits no enviados y estado de rama de característica, lo cual es útil cuando se aíslan subagentes que necesitan operar en trabajo en progreso. Cuando la sesión se ejecuta dentro de un worktree vinculado, `"head"` se resuelve a ese `HEAD` del worktree, no al del checkout principal. La configuración acepta solo `"fresh"` o `"head"`, no refs de git arbitrarios:

64 64 

65```json theme={null}65```json theme={null}

66{66{


76claude --worktree "#1234"76claude --worktree "#1234"

77```77```

78 78 

79Para control total sobre cómo se crean los worktrees, configure un [hook `WorktreeCreate`](/es/hooks#worktreecreate), que reemplaza completamente la lógica predeterminada de `git worktree`.79Para control total sobre cómo se crean los worktrees, configure un [hook `WorktreeCreate`](/docs/es/hooks#worktreecreate), que reemplaza completamente la lógica predeterminada de `git worktree`.

80 80 

81<h3 id="reuse-a-worktree-name">81<h3 id="reuse-a-worktree-name">

82 Reutilice un nombre de worktree82 Reutilice un nombre de worktree


108config/secrets.json108config/secrets.json

109```109```

110 110 

111Esto se aplica a worktrees creados con `--worktree`, [worktrees de subagentes](#isolate-subagents-with-worktrees), y sesiones paralelas en la [aplicación de escritorio](/es/desktop#work-in-parallel-with-sessions).111Esto se aplica a worktrees creados con `--worktree`, [worktrees de subagentes](#isolate-subagents-with-worktrees), y sesiones paralelas en la [aplicación de escritorio](/docs/es/desktop#work-in-parallel-with-sessions).

112 112 

113<h2 id="isolate-subagents-with-worktrees">113<h2 id="isolate-subagents-with-worktrees">

114 Aisle subagentes con worktrees114 Aisle subagentes con worktrees

115</h2>115</h2>

116 116 

117Los subagentes pueden ejecutarse en sus propios worktrees para que las ediciones paralelas no entren en conflicto. Pida a Claude que "use worktrees para sus agentes", o establézcalo permanentemente en un [subagente personalizado](/es/sub-agents#supported-frontmatter-fields) agregando `isolation: worktree` al frontmatter. Cada subagente obtiene un worktree temporal que se elimina automáticamente cuando el subagente termina sin cambios.117Los subagentes pueden ejecutarse en sus propios worktrees para que las ediciones paralelas no entren en conflicto. Pida a Claude que "use worktrees para sus agentes", o establézcalo permanentemente en un [subagente personalizado](/docs/es/sub-agents#supported-frontmatter-fields) agregando `isolation: worktree` al frontmatter. Cada subagente obtiene un worktree temporal que se elimina automáticamente cuando el subagente termina sin cambios.

118 118 

119Los worktrees de subagentes utilizan la misma [rama base](#choose-the-base-branch) que `--worktree`, por lo que se ramifican desde la rama predeterminada de su repositorio a menos que `worktree.baseRef` esté configurado en `"head"`.119Los worktrees de subagentes utilizan la misma [rama base](#choose-the-base-branch) que `--worktree`, por lo que se ramifican desde la rama predeterminada de su repositorio a menos que `worktree.baseRef` esté configurado en `"head"`.

120 120 


124 124 

125Cuando sale de una sesión de worktree, la limpieza depende de si realizó cambios:125Cuando sale de una sesión de worktree, la limpieza depende de si realizó cambios:

126 126 

127* **Sin cambios no confirmados, sin archivos sin seguimiento y sin nuevos commits**: el worktree y su rama se eliminan automáticamente. Si la sesión tiene un [nombre](/es/sessions#name-your-sessions), Claude le solicita en su lugar para que pueda mantener el worktree para más tarde127* **Sin cambios no confirmados, sin archivos sin seguimiento y sin nuevos commits**: el worktree y su rama se eliminan automáticamente. Si la sesión tiene un [nombre](/docs/es/sessions#name-your-sessions), Claude le solicita en su lugar para que pueda mantener el worktree para más tarde

128* **Existen cambios no confirmados, archivos sin seguimiento o nuevos commits**: Claude le solicita que mantenga o elimine el worktree. Mantener preserva el directorio y la rama para que pueda regresar más tarde. Eliminar borra el directorio del worktree y su rama, descartando todos los cambios no confirmados, archivos sin seguimiento y commits128* **Existen cambios no confirmados, archivos sin seguimiento o nuevos commits**: Claude le solicita que mantenga o elimine el worktree. Mantener preserva el directorio y la rama para que pueda regresar más tarde. Eliminar borra el directorio del worktree y su rama, descartando todos los cambios no confirmados, archivos sin seguimiento y commits

129* **Ejecuciones no interactivas**: los worktrees creados con `--worktree` junto con `-p` no se limpian automáticamente ya que no hay solicitud de salida. Elimínelos con `git worktree remove`129* **Ejecuciones no interactivas**: los worktrees creados con `--worktree` junto con `-p` no se limpian automáticamente ya que no hay solicitud de salida. Elimínelos con `git worktree remove`

130 130 

131Los worktrees que Claude creó para subagentes y [sesiones en segundo plano](/es/agent-view#how-file-edits-are-isolated) se eliminan automáticamente una vez que son más antiguos que su configuración [`cleanupPeriodDays`](/es/settings#available-settings), siempre que no tengan cambios no confirmados, archivos sin seguimiento ni commits no enviados. Los worktrees que crea con `--worktree` nunca se eliminan por este barrido.131Los worktrees que Claude creó para subagentes y [sesiones en segundo plano](/docs/es/agent-view#how-file-edits-are-isolated) se eliminan automáticamente una vez que son más antiguos que su configuración [`cleanupPeriodDays`](/docs/es/settings#available-settings), siempre que no tengan cambios no confirmados, archivos sin seguimiento ni commits no enviados. Los worktrees que crea con `--worktree` nunca se eliminan por este barrido.

132 132 

133Mientras un agente se está ejecutando, Claude ejecuta `git worktree lock` en su worktree para que la limpieza concurrente no pueda eliminarlo. El bloqueo se libera cuando el agente termina. Para limpiar un worktree que el barrido mantiene, ejecute `git worktree remove`, agregando `--force` si el worktree tiene cambios no confirmados o archivos sin seguimiento.133Mientras un agente se está ejecutando, Claude ejecuta `git worktree lock` en su worktree para que la limpieza concurrente no pueda eliminarlo. El bloqueo se libera cuando el agente termina. Para limpiar un worktree que el barrido mantiene, ejecute `git worktree remove`, agregando `--force` si el worktree tiene cambios no confirmados o archivos sin seguimiento.

134 134 


176 Control de versiones no-git176 Control de versiones no-git

177</h2>177</h2>

178 178 

179El aislamiento de worktree usa git de forma predeterminada. Para SVN, Perforce, Mercurial u otros sistemas, configure [hooks `WorktreeCreate` y `WorktreeRemove`](/es/hooks#worktreecreate) para proporcionar lógica de creación y limpieza personalizada. Debido a que el hook reemplaza el comportamiento predeterminado de git, [`.worktreeinclude`](#copy-gitignored-files-into-worktrees) no se procesa cuando usa `--worktree`. Copie cualquier archivo de configuración local dentro de su script de hook en su lugar.179El aislamiento de worktree usa git de forma predeterminada. Para SVN, Perforce, Mercurial u otros sistemas, configure [hooks `WorktreeCreate` y `WorktreeRemove`](/docs/es/hooks#worktreecreate) para proporcionar lógica de creación y limpieza personalizada. Debido a que el hook reemplaza el comportamiento predeterminado de git, [`.worktreeinclude`](#copy-gitignored-files-into-worktrees) no se procesa cuando usa `--worktree`. Copie cualquier archivo de configuración local dentro de su script de hook en su lugar.

180 180 

181Este hook `WorktreeCreate` lee el nombre del worktree desde stdin, verifica una copia de trabajo fresca de SVN e imprime la ruta del directorio para que Claude Code pueda usarla como el directorio de trabajo de la sesión:181Este hook `WorktreeCreate` lee el nombre del worktree desde stdin, verifica una copia de trabajo fresca de SVN e imprime la ruta del directorio para que Claude Code pueda usarla como el directorio de trabajo de la sesión:

182 182 


197}197}

198```198```

199 199 

200Emparéjelo con un hook `WorktreeRemove` para limpiar cuando la sesión termina. Consulte la [referencia de hooks](/es/hooks#worktreecreate) para el esquema de entrada y un ejemplo de eliminación.200Emparéjelo con un hook `WorktreeRemove` para limpiar cuando la sesión termina. Consulte la [referencia de hooks](/docs/es/hooks#worktreecreate) para el esquema de entrada y un ejemplo de eliminación.

201 201 

202<h2 id="see-also">202<h2 id="see-also">

203 Véase también203 Véase también


205 205 

206Los worktrees manejan el aislamiento de archivos. Las páginas relacionadas a continuación cubren la delegación de trabajo en esos checkouts aislados y el cambio entre las sesiones que crea:206Los worktrees manejan el aislamiento de archivos. Las páginas relacionadas a continuación cubren la delegación de trabajo en esos checkouts aislados y el cambio entre las sesiones que crea:

207 207 

208* [Subagentes](/es/sub-agents): delegue trabajo a agentes aislados dentro de una sesión208* [Subagentes](/docs/es/sub-agents): delegue trabajo a agentes aislados dentro de una sesión

209* [Equipos de agentes](/es/agent-teams): coordine múltiples sesiones de Claude automáticamente209* [Equipos de agentes](/docs/es/agent-teams): coordine múltiples sesiones de Claude automáticamente

210* [Administrar sesiones](/es/sessions): nombre, reanude y cambie entre conversaciones210* [Administrar sesiones](/docs/es/sessions): nombre, reanude y cambie entre conversaciones

211* [Sesiones paralelas de escritorio](/es/desktop#work-in-parallel-with-sessions): sesiones respaldadas por worktree en la aplicación de escritorio211* [Sesiones paralelas de escritorio](/docs/es/desktop#work-in-parallel-with-sessions): sesiones respaldadas por worktree en la aplicación de escritorio