SpyBara
Go Premium

Documentation 2026-10-10 23:01 UTC to 2026-10-11 21:02 UTC

19 files changed +202 −37. View all changes and history on the product overview
2026
Sun 11 21:57 Sat 10 23:01 Fri 9 23:02 Thu 8 22:58 Wed 7 23:59 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59
Details

3260 Tipos de Entrada de Herramienta3260 Tipos de Entrada de Herramienta

3261</h2>3261</h2>

3262 3262 

3263Documentación de esquemas de entrada para todas las herramientas integradas de Claude Code. Estos tipos se exportan desde `@anthropic-ai/claude-agent-sdk/sdk-tools` y se pueden usar para interacciones de herramientas seguras de tipos.3263Documentación de esquemas de entrada para las herramientas integradas de Claude Code. Estos tipos se exportan desde `@anthropic-ai/claude-agent-sdk/sdk-tools` y se pueden usar para interacciones de herramientas seguras de tipos.

3264 3264 

3265<h3 id="toolinputschemas">3265<h3 id="toolinputschemas">

3266 `ToolInputSchemas`3266 `ToolInputSchemas`


4076 Tipos de salida de herramientas4076 Tipos de salida de herramientas

4077</h2>4077</h2>

4078 4078 

4079Documentación de los esquemas de salida de todas las herramientas integradas de Claude Code. Estos tipos se exportan desde `@anthropic-ai/claude-agent-sdk/sdk-tools` y representan los datos de respuesta reales que devuelve cada herramienta.4079Documentación de los esquemas de salida de las herramientas integradas de Claude Code. Estos tipos se exportan desde `@anthropic-ai/claude-agent-sdk/sdk-tools` y representan los datos de respuesta reales que devuelve cada herramienta.

4080 4080 

4081<h3 id="tooloutputschemas">4081<h3 id="tooloutputschemas">

4082 `ToolOutputSchemas`4082 `ToolOutputSchemas`

agent-view.md +2 −0

Details

300* **Detienes el turno**: Claude Code cancela el cambio y muestra `Backgrounding cancelled — the turn was stopped.` Por ejemplo, el turno se detiene cuando [interrumpes a Claude con `Esc`](/docs/es/interactive-mode#general-controls) o seleccionas **No** [sin un comentario](/docs/es/permissions#add-a-comment-when-you-answer-a-permission-prompt) en una solicitud de permiso de la conversación principal, o presionas `Esc` en una pregunta que Claude hace allí. Presiona `←` de nuevo para pasar la sesión a segundo plano.300* **Detienes el turno**: Claude Code cancela el cambio y muestra `Backgrounding cancelled — the turn was stopped.` Por ejemplo, el turno se detiene cuando [interrumpes a Claude con `Esc`](/docs/es/interactive-mode#general-controls) o seleccionas **No** [sin un comentario](/docs/es/permissions#add-a-comment-when-you-answer-a-permission-prompt) en una solicitud de permiso de la conversación principal, o presionas `Esc` en una pregunta que Claude hace allí. Presiona `←` de nuevo para pasar la sesión a segundo plano.

301* **Un mensaje en cola no puede trasladarse**: los mensajes que [pusiste en cola mientras Claude trabajaba](/docs/es/interactive-mode#queue-messages-while-claude-works) se trasladan a la sesión en segundo plano junto con la conversación. Cuando alguno de ellos no puede trasladarse, la sesión permanece en primer plano y Claude Code muestra un aviso como `Cannot open agents — 1 queued message can't move to the background. Press ← again once Claude has read it.`301* **Un mensaje en cola no puede trasladarse**: los mensajes que [pusiste en cola mientras Claude trabajaba](/docs/es/interactive-mode#queue-messages-while-claude-works) se trasladan a la sesión en segundo plano junto con la conversación. Cuando alguno de ellos no puede trasladarse, la sesión permanece en primer plano y Claude Code muestra un aviso como `Cannot open agents — 1 queued message can't move to the background. Press ← again once Claude has read it.`

302 302 

303Cuando Claude Code pasa la sesión a segundo plano, ya sea después de unos diez segundos o después de que presiones `←` de nuevo, detiene un comando de shell que Claude todavía está ejecutando en primer plano. Claude Code no muestra el diálogo `Background this session?` para ese comando. En la sesión en segundo plano, Claude no tiene registro de que el comando se inició, por lo que Claude puede volver a ejecutarlo. Para mantener el comando en ejecución cuando la sesión se traslada, presiona `Ctrl+B` para [convertirlo en un comando en segundo plano](/docs/es/interactive-mode#background-bash-commands) mientras Claude Code todavía está esperando.

304 

303Presionar `←` crea la fila de la sesión incluso cuando la conversación aún no tiene mensajes, por lo que `→` sigue volviendo a ella.305Presionar `←` crea la fila de la sesión incluso cuando la conversación aún no tiene mensajes, por lo que `→` sigue volviendo a ella.

304 306 

305Puedes desactivar este atajo para las sesiones en primer plano con el ajuste [`leftArrowOpensAgents`](/docs/es/settings-reference#leftarrowopensagents) en `/config`.307Puedes desactivar este atajo para las sesiones en primer plano con el ajuste [`leftArrowOpensAgents`](/docs/es/settings-reference#leftarrowopensagents) en `/config`.

costs.md +13 −0

Details

90 90 

91Cuando la solicitud de sus límites de plan falla, la mayoría de las veces porque el punto final de uso tiene límite de velocidad, `/usage` muestra las últimas barras de uso que cargó en esta máquina dentro de los últimos 60 minutos, junto con una nota `Showing last-known usage` que indica cuánto tiempo hace que se obtuvieron esos datos. Presione `r` para reintentar; un reintento exitoso reemplaza las últimas barras conocidas con datos frescos. Sin una instantánea de los últimos 60 minutos, `/usage` informa que el punto final de uso tiene límite de velocidad y ofrece el mismo atajo de reintento. Antes de v2.1.208, una solicitud con límite de velocidad en una sesión que aún no había cargado uso siempre mostraba el error sin barras.91Cuando la solicitud de sus límites de plan falla, la mayoría de las veces porque el punto final de uso tiene límite de velocidad, `/usage` muestra las últimas barras de uso que cargó en esta máquina dentro de los últimos 60 minutos, junto con una nota `Showing last-known usage` que indica cuánto tiempo hace que se obtuvieron esos datos. Presione `r` para reintentar; un reintento exitoso reemplaza las últimas barras conocidas con datos frescos. Sin una instantánea de los últimos 60 minutos, `/usage` informa que el punto final de uso tiene límite de velocidad y ofrece el mismo atajo de reintento. Antes de v2.1.208, una solicitud con límite de velocidad en una sesión que aún no había cargado uso siempre mostraba el error sin barras.

92 92 

93<h3 id="read-the-token-count-beside-the-spinner">

94 Lee el conteo de tokens junto al indicador de actividad

95</h3>

96 

97Mientras Claude trabaja en la conversación principal, la línea junto al indicador de actividad puede terminar con un tiempo transcurrido y un conteo de tokens, como en `Deciphering… (10m 27s · ↓ 5.5k tokens)`. Es un conteo aproximado y en tiempo real de la salida que el turno actual ha producido hasta el momento. La flecha junto al conteo apunta hacia abajo mientras llega la salida o se ejecutan herramientas.

98 

99* **Qué incluye**: la salida que genera el turno, como el texto y las llamadas a herramientas que Claude devuelve en streaming, su pensamiento y la salida de los subagentes que se ejecutan en [primer plano](/docs/es/sub-agents#run-subagents-in-foreground-or-background)

100* **Qué deja fuera**: lo que Claude Code envía al modelo, por lo que tu prompt, el historial de la conversación y el resto de tu contexto no lo modifican

101* **Cuándo se restablece**: al inicio de cada turno y cuando Claude Code [compacta la conversación](/docs/es/prompt-caching#compacting-the-conversation)

102* **Cuándo permanece oculto**: hasta que empieza a llegar la salida, cuando la fila es demasiado estrecha para mostrarlo y en el [modo de lector de pantalla](/docs/es/accessibility)

103 

104No coincidirá con las cifras de salida de `Usage by model` en el bloque Session de `/usage`, que suman toda la sesión en lugar de un solo turno. También difiere del conteo de tokens que [agrega el modo detallado](/docs/es/statusline#notifications-share-the-status-line-row), porque ese conteo mide el tamaño de tu contexto en lugar de la salida de un turno.

105 

93<h3 id="analyze-your-usage-patterns">106<h3 id="analyze-your-usage-patterns">

94 Analice sus patrones de uso107 Analice sus patrones de uso

95</h3>108</h3>

Details

98 98 

99El modo seguro aún aplica los hooks administrados y la política de configuración de tu organización. Los plugins administrados, skills, `CLAUDE.md` y servidores MCP están desactivados.99El modo seguro aún aplica los hooks administrados y la política de configuración de tu organización. Los plugins administrados, skills, `CLAUDE.md` y servidores MCP están desactivados.

100 100 

101Si 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.101Si el problema persiste en modo seguro, o si tu configuración en sí es sospechosa, inicia una sesión sin nada de tu propia configuración y comprueba si el problema continúa.

102 102 

103```bash theme={null}103<Steps>

104cd /tmp && CLAUDE_CONFIG_DIR=/tmp/claude-clean claude104 <Step title="Crea un directorio vacío y entra en él">

105```105 En tu shell, sin ninguna sesión de Claude Code en ejecución, crea el directorio y muévete a él:

106 106 

107La sesión limpia no tiene configuración de usuario o proyecto, hooks, servidores MCP, plugins o memoria. En el primer lanzamiento, espere las pantallas de configuración inicial, comenzando con la selección de tema. Si las ve, el directorio de configuración limpia está en vigor. Los lanzamientos posteriores con el mismo directorio omiten estas pantallas porque Claude Code guarda el estado de incorporación allí.107 <Tabs>

108 108 <Tab title="Bash o Zsh">

109* La configuración administrada aún se aplica si su organización la implementa. Claude Code lee perfiles MDM, política de registro y `managed-settings.json` desde ubicaciones fuera del directorio de configuración, y [obtiene configuración administrada por servidor](/docs/es/server-managed-settings#fetch-and-caching-behavior) nuevamente para la sesión limpia una vez que tiene credenciales109 ```bash theme={null}

110* Se le pedirá que inicie sesión nuevamente110 mkdir -p ~/claude-clean/empty && cd ~/claude-clean/empty

111 111 ```

112Si 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).112 </Tab>

113 

114 <Tab title="PowerShell">

115 ```powershell theme={null}

116 New-Item -ItemType Directory -Force "$HOME/claude-clean/empty" | Out-Null

117 Set-Location "$HOME/claude-clean/empty"

118 ```

119 </Tab>

120 </Tabs>

121 </Step>

122 

123 <Step title="Inicia Claude Code con un directorio de configuración limpio">

124 Desde el mismo shell, establece [`CLAUDE_CONFIG_DIR`](/docs/es/env-vars) en un directorio nuevo en lugar de `~/.claude`, y pasa [`--setting-sources user`](/docs/es/cli-reference#cli-flags) para desactivar la configuración del proyecto, como `.claude/settings.json`, `CLAUDE.md` y `.mcp.json`:

125 

126 <Tabs>

127 <Tab title="Bash o Zsh">

128 La variable se aplica solo a este lanzamiento.

129 

130 ```bash theme={null}

131 CLAUDE_CONFIG_DIR=~/claude-clean/config claude --setting-sources user

132 ```

133 </Tab>

134 

135 <Tab title="PowerShell">

136 La variable permanece establecida durante el resto de esta sesión de PowerShell, por lo que los lanzamientos posteriores de `claude` en la misma ventana siguen usando el directorio limpio. Para volver a tu directorio habitual, ejecuta `Remove-Item Env:CLAUDE_CONFIG_DIR` antes del siguiente lanzamiento.

137 

138 ```powershell theme={null}

139 $env:CLAUDE_CONFIG_DIR = "$HOME/claude-clean/config"

140 claude --setting-sources user

141 ```

142 </Tab>

143 </Tabs>

144 

145 En el primer lanzamiento, pasas de nuevo por las pantallas de configuración inicial, una señal de que el directorio de configuración limpio está en vigor. La configuración administrada aún se aplica, y los [conectores](/docs/es/mcp#use-mcp-servers-from-claude-ai) aún se cargan si inicias sesión con una cuenta de claude.ai.

146 </Step>

147 

148 <Step title="Reproduce el problema">

149 Repite en la sesión limpia lo que provocó el problema:

150 

151 * **El problema desaparece**: la causa está en tu configuración de usuario o de proyecto. Copia `~/.claude.json` y los archivos de `~/.claude` en `~/claude-clean/config` uno a la vez. Si ninguno hace que vuelva el problema, ve al directorio de tu proyecto en el mismo shell e inicia Claude Code sin `--setting-sources user`. En Bash o Zsh, ejecuta `CLAUDE_CONFIG_DIR=~/claude-clean/config claude`. En PowerShell, la variable sigue establecida, así que ejecuta `claude`.

152 * **El problema persiste**: la causa está fuera de tu configuración de usuario y de proyecto. Ejecuta `/status` en la sesión para verificar si hay configuración administrada, revisa las [variables de entorno](/docs/es/env-vars) de tu shell y luego consulta [Solución de problemas](/docs/es/troubleshooting).

153 </Step>

154</Steps>

113 155 

114<h2 id="check-common-causes">156<h2 id="check-common-causes">

115 Verificar causas comunes157 Verificar causas comunes


127| 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#settings-precedence). |169| 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#settings-precedence). |

128| 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`. |170| 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`. |

129| 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). |171| 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). |

130| Las instrucciones de `CLAUDE.md` del subdirectorio parecen ignoradas | Los archivos del subdirectorio se cargan bajo demanda, no al inicio de la sesión | Consulta [cuándo se cargan los archivos del subdirectorio](/docs/es/memory#how-claude-md-files-load). Antes de v2.1.288, solo la herramienta Read los cargaba. |172| Las instrucciones de `CLAUDE.md` del subdirectorio parecen ignoradas | Los archivos del subdirectorio se cargan bajo demanda, no al inicio de la sesión | Para cargar el `CLAUDE.md` de un subdirectorio, pídele a Claude que lea otro archivo de ese subdirectorio. Consulta [cuándo se cargan los archivos del subdirectorio](/docs/es/memory#how-claude-md-files-load). |

131| El subagente ignora las instrucciones de `CLAUDE.md` | Los agentes Explore y Plan integrados omiten `CLAUDE.md`. Un subagente personalizado lo carga de la misma manera que la conversación principal, a menos que su definición establezca [`omitClaudeMd`](/docs/es/sub-agents#supported-frontmatter-fields) | Para Explore o Plan, restate la instrucción en su indicador delegado. Para un subagente que establece `omitClaudeMd`, elimine el campo. Para cualquier otro subagente personalizado, coloque las instrucciones críticas en el cuerpo del archivo del agente, que se convierte en el indicador del sistema del agente. Consulte [qué se carga al inicio](/docs/es/sub-agents#what-loads-at-startup). |173| El subagente ignora las instrucciones de `CLAUDE.md` | Los agentes Explore y Plan integrados omiten `CLAUDE.md`. Un subagente personalizado lo carga de la misma manera que la conversación principal, a menos que su definición establezca [`omitClaudeMd`](/docs/es/sub-agents#supported-frontmatter-fields) | Para Explore o Plan, restate la instrucción en su indicador delegado. Para un subagente que establece `omitClaudeMd`, elimine el campo. Para cualquier otro subagente personalizado, coloque las instrucciones críticas en el cuerpo del archivo del agente, que se convierte en el indicador del sistema del agente. Consulte [qué se carga al inicio](/docs/es/sub-agents#what-loads-at-startup). |

132| 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). |174| 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). |

133| Los servidores MCP en `.mcp.json` nunca se cargan | El archivo está bajo `.claude/`, o sus servidores se encuentran bajo una clave `servers` de nivel superior, como en el `mcp.json` de VS Code, en lugar de `mcpServers` | La configuración de MCP del proyecto va en la raíz del repositorio como `.mcp.json`, no dentro de `.claude/`, con servidores bajo la clave `mcpServers`. Consulte [configuración de MCP](/docs/es/mcp). |175| Los servidores MCP en `.mcp.json` nunca se cargan | El archivo está bajo `.claude/`, o sus servidores se encuentran bajo una clave `servers` de nivel superior, como en el `mcp.json` de VS Code, en lugar de `mcpServers` | La configuración de MCP del proyecto va en la raíz del repositorio como `.mcp.json`, no dentro de `.claude/`, con servidores bajo la clave `mcpServers`. Consulte [configuración de MCP](/docs/es/mcp). |

desktop.md +53 −0

Details

913 913 

914Cada entrada requiere `id`, `name` y `sshHost`. Los campos `sshPort` e `sshIdentityFile` son opcionales. Los usuarios también pueden agregar `sshConfigs` a su propio `~/.claude/settings.json`.914Cada entrada requiere `id`, `name` y `sshHost`. Los campos `sshPort` e `sshIdentityFile` son opcionales. Los usuarios también pueden agregar `sshConfigs` a su propio `~/.claude/settings.json`.

915 915 

916Si omites `user@` en `sshHost`, Desktop se conecta como el `User` que el `~/.ssh/config` de cada desarrollador establece para el host o, en su defecto, con su nombre de usuario en su propia computadora.

917 

916<h4 id="restrict-which-ssh-hosts-users-can-connect-to">918<h4 id="restrict-which-ssh-hosts-users-can-connect-to">

917 Restringir a qué hosts SSH pueden conectarse los usuarios919 Restringir a qué hosts SSH pueden conectarse los usuarios

918</h4>920</h4>


937 939 

938`sshHostAllowlist` se lee solo desde la configuración administrada; los valores en la configuración de usuario o proyecto se ignoran. Solo la aplicación Claude Desktop honra esta configuración; la CLI de Claude Code y las extensiones IDE no la leen, y no restringe los comandos `ssh` ejecutados a través de la herramienta Bash. Rige a qué hosts se conecta la aplicación Desktop, no la salida de red, por lo que emparéjelo con los controles de red de su organización o de confianza cero si necesita un límite duro.940`sshHostAllowlist` se lee solo desde la configuración administrada; los valores en la configuración de usuario o proyecto se ignoran. Solo la aplicación Claude Desktop honra esta configuración; la CLI de Claude Code y las extensiones IDE no la leen, y no restringe los comandos `ssh` ejecutados a través de la herramienta Bash. Rige a qué hosts se conecta la aplicación Desktop, no la salida de red, por lo que emparéjelo con los controles de red de su organización o de confianza cero si necesita un límite duro.

939 941 

942<h4 id="turn-off-local-sessions-and-distribute-ssh-connections">

943 Desactivar las sesiones locales y distribuir conexiones SSH

944</h4>

945 

946Para desactivar las sesiones locales y limitar las sesiones SSH a los hosts que elijas, implementa juntos [`disableDesktopLocalSessions`](/docs/es/settings-reference#disabledesktoplocalsessions), [`sshConfigs`](#pre-configure-ssh-connections-for-your-team) y [`sshHostAllowlist`](#restrict-which-ssh-hosts-users-can-connect-to).

947 

948<Note>

949 Esta configuración es para usuarios que inician sesión con una cuenta de Claude. Con un [proveedor externo](/docs/es/third-party-integrations), las sesiones SSH están desactivadas de forma predeterminada, y establecer `sshHostAllowlist` puede activarlas. Lee [SSH remote sessions in Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions) antes de implementar estas claves.

950</Note>

951 

952El siguiente ejemplo desactiva las sesiones locales, agrega una conexión y limita las sesiones SSH al host de esa conexión:

953 

954```json managed-settings.json theme={null}

955{

956 "disableDesktopLocalSessions": true,

957 "sshConfigs": [

958 {

959 "id": "shared-dev-vm",

960 "name": "Shared Dev VM",

961 "sshHost": "dev.example.com"

962 }

963 ],

964 "sshHostAllowlist": ["dev.example.com"]

965}

966```

967 

968Las claves se aplican a la aplicación de escritorio. Dejan como están otras formas de ejecutar Claude Code, como la CLI, Cowork y las sesiones en la nube:

969 

970* **La CLI**: ninguna de las claves impide que un desarrollador ejecute la CLI de Claude Code en su propia computadora

971* **Cowork**: ninguna de las claves se aplica a las sesiones de [Cowork](https://claude.com/docs/cowork/overview) ni a las tareas programadas de Cowork

972* **Sesiones en la nube**: ninguna de las claves cambia si las [sesiones en la nube](#cloud-sessions) están disponibles. Para desactivarlas, usa el ajuste **Cloud sessions** en [Admin console controls](#admin-console-controls).

973 

974Cuando adaptes el ejemplo, revisa los nombres de host y la versión de Desktop:

975 

976* **Nombres de host**: asegúrate de que un patrón en `sshHostAllowlist` coincida con el nombre de host de cada entrada de `sshConfigs`, sin `user@`, o los desarrolladores no podrán conectarse a ella. Para saber cómo Desktop compara un nombre de host, consulta [Restringir a qué hosts SSH pueden conectarse los usuarios](#restrict-which-ssh-hosts-users-can-connect-to).

977* **Versión**: `disableDesktopLocalSessions` requiere Claude Desktop v1.37937.0 o posterior

978 

979Coloca las tres claves en una [fuente administrada](/docs/es/managed-settings#how-claude-code-combines-managed-sources), la de mayor prioridad que distribuyas. Si distribuyes [configuración administrada por servidor](/docs/es/server-managed-settings), mantén también una copia de las tres claves en la política MDM o el archivo de configuración administrada de mayor prioridad en cada computadora. Desktop obtiene la configuración administrada por servidor al iniciarse, y la copia en la computadora se aplica hasta que una obtención tenga éxito.

980 

981Para confirmar que la configuración se aplica, revisa la computadora de un desarrollador:

982 

983<Steps>

984 <Step title="Revisa el menú desplegable de entorno">

985 Cierra y vuelve a abrir Desktop, luego abre el menú desplegable de entorno en el cuadro de prompt. **Local** aparece atenuado y **Shared Dev VM** aparece en **SSH**. Si **Local** sigue disponible, revisa la versión de Desktop, que el archivo sea JSON válido y qué fuente administrada lee la computadora.

986 </Step>

987 

988 <Step title="Agrega un host que no esté en la lista de permitidos">

989 [Agrega una conexión SSH](#ssh-sessions) con un nombre de host que no esté en la lista de permitidos, como `other.example.com`. Desktop guarda la conexión pero se niega a conectarse, e indica que la configuración de tu organización no permite la conexión.

990 </Step>

991</Steps>

992 

940<h2 id="enterprise-configuration">993<h2 id="enterprise-configuration">

941 Configuración empresarial994 Configuración empresarial

942</h2>995</h2>

env-vars.md +1 −1

Details

256| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Establécela en `1` para desactivar toda la funcionalidad de tareas en segundo plano, incluido el parámetro `run_in_background` en las herramientas Bash y de subagentes, el paso automático a segundo plano y el atajo Ctrl+B |256| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Establécela en `1` para desactivar toda la funcionalidad de tareas en segundo plano, incluido el parámetro `run_in_background` en las herramientas Bash y de subagentes, el paso automático a segundo plano y el atajo Ctrl+B |

257| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Establécela en `1` para que Claude Code deje de tratar una respuesta en streaming de [Amazon Bedrock](/docs/es/amazon-bedrock) con un encabezado `Content-Type` ausente o vacío como el flujo de eventos binario de Amazon Bedrock. De forma predeterminada, Claude Code asume que un gateway eliminó el encabezado de una respuesta que por lo demás no se modificó, así que decodifica el cuerpo y el streaming sigue funcionando. Establécela solo para un gateway que además reemite el flujo como eventos enviados por el servidor; Claude Code lee entonces el cuerpo sin encabezado como eventos enviados por el servidor. Requiere Claude Code v2.1.239 o posterior |257| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Establécela en `1` para que Claude Code deje de tratar una respuesta en streaming de [Amazon Bedrock](/docs/es/amazon-bedrock) con un encabezado `Content-Type` ausente o vacío como el flujo de eventos binario de Amazon Bedrock. De forma predeterminada, Claude Code asume que un gateway eliminó el encabezado de una respuesta que por lo demás no se modificó, así que decodifica el cuerpo y el streaming sigue funcionando. Establécela solo para un gateway que además reemite el flujo como eventos enviados por el servidor; Claude Code lee entonces el cuerpo sin encabezado como eventos enviados por el servidor. Requiere Claude Code v2.1.239 o posterior |

258| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Establécela en `1` para omitir la comprobación de que una respuesta en streaming de [Amazon Bedrock](/docs/es/amazon-bedrock) lleva el content-type `application/vnd.amazon.eventstream`. Sin esta variable, cuando una respuesta lleva un content-type distinto, Claude Code hace fallar la solicitud con un error que nombra ese tipo, lo que significa que un [gateway o proxy está transformando la respuesta](/docs/es/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Configura el gateway para que reenvíe el encabezado `Content-Type` y el cuerpo sin modificar en lugar de establecer esta variable. Requiere Claude Code v2.1.208 o posterior |258| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Establécela en `1` para omitir la comprobación de que una respuesta en streaming de [Amazon Bedrock](/docs/es/amazon-bedrock) lleva el content-type `application/vnd.amazon.eventstream`. Sin esta variable, cuando una respuesta lleva un content-type distinto, Claude Code hace fallar la solicitud con un error que nombra ese tipo, lo que significa que un [gateway o proxy está transformando la respuesta](/docs/es/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Configura el gateway para que reenvíe el encabezado `Content-Type` y el cuerpo sin modificar en lugar de establecer esta variable. Requiere Claude Code v2.1.208 o posterior |

259| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Establécela en `1` para detener los comandos de shell en segundo plano en ejecución, los flujos de trabajo dinámicos y, a partir de v2.1.198, los subagentes en segundo plano de una [sesión en segundo plano](/docs/es/agent-view) cuando el [supervisor](/docs/es/agent-view#the-supervisor-process) detiene, reinicia o actualiza el proceso de esa sesión, en lugar de transferirlos al siguiente proceso de la sesión. Solo afecta a esa transferencia: pasar una sesión a segundo plano con `←` o [`/background`](/docs/es/agent-view#from-inside-a-session) sigue trasladando el trabajo en curso, y `CLAUDE_DISABLE_ADOPT` desactiva ambas cosas. Requiere Claude Code v2.1.196 o posterior |259| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Establécela en `1` para detener los comandos de shell en segundo plano en ejecución, los flujos de trabajo dinámicos y, a partir de v2.1.198, los subagentes en segundo plano de una [sesión en segundo plano](/docs/es/agent-view) cuando el [supervisor](/docs/es/agent-view#the-supervisor-process) detiene, reinicia o actualiza el proceso de esa sesión, en lugar de entregárselos al siguiente proceso de la sesión. Solo afecta a esa entrega: pasar una sesión a segundo plano con `←` o [`/background`](/docs/es/agent-view#from-inside-a-session) sigue trasladando el trabajo en segundo plano en curso, y `CLAUDE_DISABLE_ADOPT` desactiva ambas cosas. Requiere Claude Code v2.1.196 o posterior |

260| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Establécela en `1` para evitar que Claude Code termine los [comandos de shell en segundo plano](/docs/es/interactive-mode#background-bash-commands) bajo presión de memoria. De forma predeterminada, en macOS y Linux, Claude Code termina los shells en segundo plano cuando el sistema operativo informa una presión de memoria crítica y la sesión ha estado inactiva durante 30 minutos sin ningún turno ni subagente en ejecución. Windows no tiene señal de presión de memoria, por lo que esta variable no tiene efecto allí. Requiere Claude Code v2.1.193 o posterior |260| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Establécela en `1` para evitar que Claude Code termine los [comandos de shell en segundo plano](/docs/es/interactive-mode#background-bash-commands) bajo presión de memoria. De forma predeterminada, en macOS y Linux, Claude Code termina los shells en segundo plano cuando el sistema operativo informa una presión de memoria crítica y la sesión ha estado inactiva durante 30 minutos sin ningún turno ni subagente en ejecución. Windows no tiene señal de presión de memoria, por lo que esta variable no tiene efecto allí. Requiere Claude Code v2.1.193 o posterior |

261| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Establécela en `1` para desactivar los [skills](/docs/es/skills) y flujos de trabajo incluidos con Claude Code: los skills y flujos de trabajo incluidos se eliminan por completo, mientras que los comandos integrados como `/init` se pueden seguir escribiendo pero se ocultan al modelo. `/doctor` se puede seguir escribiendo como los comandos integrados; ocúltalo con `DISABLE_DOCTOR_COMMAND` en su lugar. Los skills de plugins, `.claude/skills/` y `.claude/commands/` no se ven afectados. Equivale al ajuste [`disableBundledSkills`](/docs/es/settings-reference#disablebundledskills) |261| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Establécela en `1` para desactivar los [skills](/docs/es/skills) y flujos de trabajo incluidos con Claude Code: los skills y flujos de trabajo incluidos se eliminan por completo, mientras que los comandos integrados como `/init` se pueden seguir escribiendo pero se ocultan al modelo. `/doctor` se puede seguir escribiendo como los comandos integrados; ocúltalo con `DISABLE_DOCTOR_COMMAND` en su lugar. Los skills de plugins, `.claude/skills/` y `.claude/commands/` no se ven afectados. Equivale al ajuste [`disableBundledSkills`](/docs/es/settings-reference#disablebundledskills) |

262| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Establécela en `1` para mantener disponibles las herramientas de navegador de [Claude in Chrome](/docs/es/chrome) mientras se omite la sección de Chrome del prompt del sistema y el [skill incluido](/docs/es/skills#bundled-skills) `/claude-in-chrome`. Para hosts que integran Claude Code y proporcionan su propia guía de navegador. Requiere Claude Code v2.1.257 o posterior |262| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Establécela en `1` para mantener disponibles las herramientas de navegador de [Claude in Chrome](/docs/es/chrome) mientras se omite la sección de Chrome del prompt del sistema y el [skill incluido](/docs/es/skills#bundled-skills) `/claude-in-chrome`. Para hosts que integran Claude Code y proporcionan su propia guía de navegador. Requiere Claude Code v2.1.257 o posterior |

errors.md +6 −2

Details

4039 4039 

4040**Qué hacer:**4040**Qué hacer:**

4041 4041 

4042* Ejecute `claude plugin marketplace remove <name>`. Esto también desinstala los plugins instalados desde el marketplace y elimina sus datos guardados4042* Para conservar un marketplace que un archivo de configuración declara en línea con `"source": "settings"`, cámbiale el nombre antes de eliminar el nombre anterior, porque eliminar el marketplace también borra su entrada de tus archivos de configuración. Claude Code v2.1.292 o posterior enumera estos pasos en el mensaje:

4043* Para mantener el marketplace en su lugar, espere hasta que su mantenedor lo renombre, luego ejecute `claude plugin marketplace update <name>`4043 1. En cada archivo de configuración que incluya el marketplace en `extraKnownMarketplaces`, asigna a la clave de la entrada y a su `source.name` un mismo nombre nuevo en ASCII simple que no parezca oficial. Si un administrador agrega el marketplace mediante la configuración administrada de tu organización, el administrador realiza este paso

4044 2. Ejecuta `claude plugin marketplace remove <old-name>`, o elimina el nombre anterior en la pestaña **Marketplaces** de `/plugin`. Esto también desinstala sus plugins y elimina sus datos, opciones y secretos

4045 3. Inicia Claude Code de nuevo, en la carpeta del proyecto si el archivo es un archivo de configuración de un proyecto. Luego instala los plugins desde el marketplace renombrado

4046* Para conservar cualquier otro marketplace, espera hasta que su mantenedor lo renombre y luego ejecuta `claude plugin marketplace update <name>`

4047* Para eliminar el marketplace, ejecuta `claude plugin marketplace remove <name>`. Esto también desinstala los plugins instalados desde el marketplace y elimina sus datos, opciones y secretos

4044* Si publica el marketplace, cámbielo de nombre en su `marketplace.json`; los usuarios luego actualizan el marketplace en lugar de eliminarlo4048* Si publica el marketplace, cámbielo de nombre en su `marketplace.json`; los usuarios luego actualizan el marketplace en lugar de eliminarlo

4045 4049 

4046<h3 id="marketplace-is-already-added-from-a-different-source">4050<h3 id="marketplace-is-already-added-from-a-different-source">

hooks.md +26 −4

Details

3321 WorktreeCreate3321 WorktreeCreate

3322</h3>3322</h3>

3323 3323 

3324Se ejecuta cuando se está creando un worktree, ya sea desde `claude --worktree`, desde un [subagente que usa `isolation: "worktree"`](/docs/es/sub-agents#choose-the-subagent-scope), o para una [sesión en segundo plano](/docs/es/agent-view#how-file-edits-are-isolated) que Claude Code aísla en su propio worktree. De forma predeterminada, Claude Code crea la copia de trabajo aislada con `git worktree`. Configurar un hook WorktreeCreate reemplaza ese comportamiento predeterminado de git, lo que te permite usar un sistema de control de versiones diferente como SVN, Perforce o Mercurial.3324Se ejecuta cuando Claude Code crea un worktree en casos como estos:

3325 

3326* Inicias una sesión con `claude --worktree`

3327* Claude crea un worktree durante una sesión y cambia a él con la herramienta [`EnterWorktree`](/docs/es/tools-reference)

3328* Un [subagente usa `isolation: "worktree"`](/docs/es/sub-agents#choose-the-subagent-scope)

3329* Un [flujo de trabajo](/docs/es/workflows#migrate-many-files-in-parallel) ejecuta un agente en su propio worktree

3330* Claude Code aísla una [sesión en segundo plano](/docs/es/agent-view#how-file-edits-are-isolated) en su propio worktree

3331* [`claude remote-control`](/docs/es/remote-control#start-a-remote-control-session) en modo `worktree` inicia una sesión en su propio worktree

3332 

3333Cuando Claude ejecuta `git worktree add` mediante la herramienta Bash en lugar de llamar a `EnterWorktree`, tu hook WorktreeCreate no se ejecuta. Para inspeccionar o bloquear ese comando, agrega un hook [`PreToolUse`](#pretooluse) con el matcher `Bash`.

3334 

3335De forma predeterminada, Claude Code crea la copia de trabajo aislada con `git worktree`. Configurar un hook WorktreeCreate reemplaza ese comportamiento predeterminado de git, lo que te permite usar un sistema de control de versiones diferente como SVN, Perforce o Mercurial.

3325 3336 

3326Como el hook reemplaza por completo el comportamiento predeterminado, [`.worktreeinclude`](/docs/es/worktrees#copy-gitignored-files-into-worktrees) no se procesa. Si necesitas copiar archivos de configuración locales como `.env` al nuevo worktree, hazlo dentro de tu script del hook.3337Como el hook reemplaza por completo el comportamiento predeterminado, [`.worktreeinclude`](/docs/es/worktrees#copy-gitignored-files-into-worktrees) no se procesa. Si necesitas copiar archivos de configuración locales como `.env` al nuevo worktree, hazlo dentro de tu script del hook.

3327 3338 


3390* Sales de una [sesión de worktree](/docs/es/worktrees#start-claude-in-a-worktree) interactiva y eliges eliminar el worktree cuando Claude Code te lo pregunta3401* Sales de una [sesión de worktree](/docs/es/worktrees#start-claude-in-a-worktree) interactiva y eliges eliminar el worktree cuando Claude Code te lo pregunta

3391* Sales de una sesión de worktree interactiva a la que no le has [puesto nombre](/docs/es/sessions#name-your-sessions), Claude Code no encuentra archivos modificados ni sin seguimiento, y elimina el worktree sin preguntarte3402* Sales de una sesión de worktree interactiva a la que no le has [puesto nombre](/docs/es/sessions#name-your-sessions), Claude Code no encuentra archivos modificados ni sin seguimiento, y elimina el worktree sin preguntarte

3392* Eliminas una [sesión en segundo plano](/docs/es/agent-view#what-deleting-a-session-removes) que se ejecuta en el worktree3403* Eliminas una [sesión en segundo plano](/docs/es/agent-view#what-deleting-a-session-removes) que se ejecuta en el worktree

3404* Le pides a Claude que salga y elimine el worktree durante una sesión, y Claude lo elimina con la herramienta [`ExitWorktree`](/docs/es/tools-reference)

3405* Una sesión que [`claude remote-control`](/docs/es/remote-control#start-a-remote-control-session) inició en modo `worktree` termina sin fallar, y Claude Code no encuentra archivos modificados ni sin seguimiento ni commits nuevos en su worktree

3406* Detienes `claude remote-control` mientras las sesiones que inició en modo `worktree` siguen en ejecución, y Claude Code no encuentra archivos modificados ni sin seguimiento ni commits nuevos en sus worktrees

3407 

3408Cuando un subagente o un agente de un flujo de trabajo termina, Claude Code conserva el worktree que tu hook WorktreeCreate creó para él y no ejecuta tu hook WorktreeRemove. Elimina esos worktrees tú mismo cuando el trabajo esté terminado.

3409 

3410Claude Code no te pregunta antes de que tu hook se ejecute para una llamada a `ExitWorktree` o una limpieza de `claude remote-control`. `ExitWorktree` se niega a eliminar un worktree creado por un hook a menos que la llamada pase [`discard_changes: true`](/docs/es/agent-sdk/typescript#exitworktree), lo que convierte a tu hook en la última comprobación en esa ruta.

3393 3411 

3394Claude Code usa git para buscar archivos modificados o sin seguimiento, por lo que no encuentra ninguno en un worktree que no sea un checkout de git ni esté dentro de uno, incluso cuando el directorio contiene trabajo sin confirmar. Comprueba si existe ese trabajo en tu hook WorktreeRemove antes de que elimine cualquier cosa.3412Claude Code usa git para buscar archivos modificados o sin seguimiento, por lo que no encuentra ninguno en un worktree que no sea un checkout de git ni esté dentro de uno, incluso cuando el directorio contiene trabajo sin confirmar. Comprueba si existe ese trabajo en tu hook WorktreeRemove antes de que elimine cualquier cosa.

3395 3413 

3396Para los worktrees basados en git, Claude Code gestiona la limpieza automáticamente con `git worktree remove`. Si configuraste un hook WorktreeCreate, combínalo con un hook WorktreeRemove para controlar la limpieza de los worktrees que crea:3414Para los worktrees basados en git, Claude Code gestiona la limpieza automáticamente con `git worktree remove`. Si configuraste un hook WorktreeCreate, combínalo con un hook WorktreeRemove para controlar la limpieza:

3397 3415 

3398* **Sin hook WorktreeRemove**: cuando Claude Code elimina el worktree al salir de una sesión de worktree, recurre a `git worktree remove --force` sobre la ruta que devolvió tu hook WorktreeCreate, por lo que se elimina un worktree que git reconoce. Un worktree que git no reconoce, por ejemplo uno que tu hook creó con un sistema de control de versiones que no es git, permanece en el disco. Para saber qué hace la eliminación de una [sesión en segundo plano](/docs/es/agent-view#what-deleting-a-session-removes) con un worktree creado por un hook, consulta las reglas de eliminación de la vista de agentes.3416* **Sin hook WorktreeRemove**: Claude Code recurre a git para una eliminación al salir o mediante `ExitWorktree`, y conserva el worktree cuando `claude remote-control` hace la limpieza:

3417 * **Sales de una sesión de worktree, o Claude llama a `ExitWorktree`**: Claude Code elimina la ruta que devolvió tu hook WorktreeCreate como lo haría `git worktree remove --force`, así que se elimina un worktree que git reconoce. Un worktree que git no reconoce, por ejemplo uno que tu hook creó con un sistema de control de versiones distinto de git, se queda en el disco.

3418 * **`claude remote-control` limpia el worktree de una sesión**: el worktree se queda en el disco, y la terminal que ejecuta `claude remote-control` muestra `worktree removal failed, kept: <path>`.

3419 * **Eliminas una sesión en segundo plano**: consulta [Qué elimina borrar una sesión](/docs/es/agent-view#what-deleting-a-session-removes).

3399* **El hook termina con 0**: el worktree se considera eliminado. Claude Code no lee nada más del hook, así que asegúrate de que tu hook haya eliminado el directorio.3420* **El hook termina con 0**: el worktree se considera eliminado. Claude Code no lee nada más del hook, así que asegúrate de que tu hook haya eliminado el directorio.

3400* **El hook termina con un código distinto de cero**: la eliminación falla si el directorio en `worktree_path` sigue existiendo después, y el worktree permanece en el disco sin recurrir a git. Un hook que eliminó el directorio antes de terminar con un código distinto de cero se considera eliminado. Para saber cómo se informa el fallo, consulta [Entrada de WorktreeRemove](#worktreeremove-input).3421* **El hook termina con un código distinto de cero**: la eliminación falla si el directorio en `worktree_path` sigue existiendo después, y el worktree permanece en el disco sin recurrir a git. Un hook que eliminó el directorio antes de terminar con un código distinto de cero se considera eliminado. Para saber cómo se informa el fallo, consulta [Entrada de WorktreeRemove](#worktreeremove-input).

3401 3422 


3403 3424 

3404Claude Code descarta los [campos de salida JSON](#json-output) de un hook WorktreeRemove, como `systemMessage` y `continue`.3425Claude Code descarta los [campos de salida JSON](#json-output) de un hook WorktreeRemove, como `systemMessage` y `continue`.

3405 3426 

3406Al eliminar una sesión en segundo plano, Claude Code verifica la ruta del worktree almacenada antes de ejecutar el hook y rechaza una ruta que sea un enlace simbólico o que pase por uno debajo de la raíz del repositorio. El hook se ejecuta para un worktree que todavía contiene archivos solo cuando confirmas la eliminación en la [vista de agentes](/docs/es/agent-view#what-deleting-a-session-removes); para un worktree así, [`claude rm`](/docs/es/agent-view#manage-sessions-from-the-shell) conserva la sesión y el worktree. Antes de v2.1.216, el hook se ejecutaba sobre la ruta almacenada sin estas comprobaciones.3427Al eliminar una sesión en segundo plano, Claude Code verifica la ruta del worktree almacenada antes de ejecutar el hook y rechaza una ruta que sea un enlace simbólico o que pase por uno por debajo de la raíz del repositorio. En esa ruta, el hook se ejecuta para un worktree que aún contiene archivos solo cuando confirmas la eliminación en la [vista de agentes](/docs/es/agent-view#what-deleting-a-session-removes); para un worktree así, [`claude rm`](/docs/es/agent-view#manage-sessions-from-the-shell) conserva la sesión y el worktree en su lugar. Antes de v2.1.216, el hook se ejecutaba sobre la ruta almacenada sin estas comprobaciones.

3407 3428 

3408Claude Code pasa la ruta devuelta por WorktreeCreate como `worktree_path` en la entrada del hook. Este ejemplo lee esa ruta y elimina el directorio:3429Claude Code pasa la ruta devuelta por WorktreeCreate como `worktree_path` en la entrada del hook. Este ejemplo lee esa ruta y elimina el directorio:

3409 3430 


3444 3465 

3445* El worktree permanece en el disco, y el comando del hook y su stderr van al [registro de depuración](#debug-hooks).3466* El worktree permanece en el disco, y el comando del hook y su stderr van al [registro de depuración](#debug-hooks).

3446* Si estabas eliminando una sesión en segundo plano, la sesión también permanece. El mensaje de rechazo en la [vista de agentes](/docs/es/agent-view#what-deleting-a-session-removes) informa cómo terminó el hook, como `exited 1`, cita el inicio de su stderr e indica si volver a eliminar la sesión elimina el directorio de todos modos.3467* Si estabas eliminando una sesión en segundo plano, la sesión también permanece. El mensaje de rechazo en la [vista de agentes](/docs/es/agent-view#what-deleting-a-session-removes) informa cómo terminó el hook, como `exited 1`, cita el inicio de su stderr e indica si volver a eliminar la sesión elimina el directorio de todos modos.

3468* Si `claude remote-control` estaba limpiando el worktree de una sesión, la terminal que lo ejecuta muestra `worktree removal failed, kept: <path>`.

3447 3469 

3448<h3 id="precompact">3470<h3 id="precompact">

3449 PreCompact3471 PreCompact

Details

55| Usted quiere | Comience con | Aislamiento necesario | Notas |55| Usted quiere | Comience con | Aislamiento necesario | Notas |

56| :- | :- | :- | :- |56| :- | :- | :- | :- |

57| Revisar cada acción usted mismo | Modo Manual: `claude --permission-mode default` | Ninguno | Trabajo sensible, código desconocido |57| Revisar cada acción usted mismo | Modo Manual: `claude --permission-mode default` | Ninguno | Trabajo sensible, código desconocido |

58| Iterar localmente con menos avisos, sin un clasificador | Modo Manual más el sandbox Bash en [modo de permitir automático](/docs/es/sandboxing#sandbox-modes): `claude --permission-mode default`, luego ejecute `/sandbox` y seleccione permitir automático | El sandbox Bash integrado, en macOS, Linux y WSL2 | Las reglas de denegación aún se aplican, y las reglas de solicitud que nombran un comando, como `Bash(git push *)`, aún solicitan. Para activar el sandbox desde un archivo de configuración en su lugar, establezca [`sandbox.enabled`](/docs/es/settings-reference#sandbox-enabled) en `true` |58| Iterar localmente con menos solicitudes de permiso, sin un clasificador | Modo manual más el sandbox de Bash en [modo de permitir automáticamente](/docs/es/sandboxing#sandbox-modes): `claude --permission-mode default`, luego ejecuta `/sandbox` y selecciona permitir automáticamente | El sandbox de Bash integrado, en macOS, Linux y WSL2 | Las reglas de denegación siguen aplicándose, y las reglas de solicitud que nombran un comando, como `Bash(git push *)`, siguen pidiendo permiso. El [modo de permitir automáticamente](/docs/es/sandboxing#auto-allow-mode) cubre otros comandos que pueden pedir permiso. Para activar el sandbox desde un archivo de configuración en su lugar, establece [`sandbox.enabled`](/docs/es/settings-reference#sandbox-enabled) en `true` |

59| Explorar antes de cambiar nada | `claude --permission-mode plan` | Ninguno | Claude Code bloquea ediciones hasta que [apruebe un plan](#review-and-approve-a-plan) |59| Explorar antes de cambiar nada | `claude --permission-mode plan` | Ninguno | Claude Code bloquea ediciones hasta que [apruebe un plan](#review-and-approve-a-plan) |

60| Trabajar sin intervención en modo automático | `claude --permission-mode auto`, el [modo de permisos inicial integrado](#which-mode-a-session-starts-in) con v2.1.283 o posterior | Ninguno; un sandbox o contenedor agrega defensa en profundidad | Requiere un [modelo compatible](#eliminate-prompts-with-auto-mode), y su organización puede [desactivar modo automático](#eliminate-prompts-with-auto-mode) |60| Trabajar sin intervención en modo automático | `claude --permission-mode auto`, el [modo de permisos inicial integrado](#which-mode-a-session-starts-in) con v2.1.283 o posterior | Ninguno; un sandbox o contenedor agrega defensa en profundidad | Requiere un [modelo compatible](#eliminate-prompts-with-auto-mode), y su organización puede [desactivar modo automático](#eliminate-prompts-with-auto-mode) |

61| Ejecutar en CI con una lista de permitidos exacta | `claude -p "run the test suite" --permission-mode dontAsk --allowedTools "Bash(npm test)" "Read"` | Ninguno más allá de lo que proporciona su ejecutor de CI | [Cloud sessions](/docs/es/claude-code-on-the-web) ignora `dontAsk` de archivos de configuración |61| Ejecutar en CI con una lista de permitidos exacta | `claude -p "run the test suite" --permission-mode dontAsk --allowedTools "Bash(npm test)" "Read"` | Ninguno más allá de lo que proporciona su ejecutor de CI | [Cloud sessions](/docs/es/claude-code-on-the-web) ignora `dontAsk` de archivos de configuración |

permissions.md +1 −0

Details

744* Las reglas ask con alcance de contenido como `Bash(git push *)` aún fuerzan un aviso744* Las reglas ask con alcance de contenido como `Bash(git push *)` aún fuerzan un aviso

745* Las reglas de negación explícitas aún se aplican745* Las reglas de negación explícitas aún se aplican

746* Los comandos `rm` o `rmdir` que apunten a una [ruta crítica](/docs/es/permission-modes#critical-paths) aún pasan por el flujo de permisos regular746* Los comandos `rm` o `rmdir` que apunten a una [ruta crítica](/docs/es/permission-modes#critical-paths) aún pasan por el flujo de permisos regular

747* Otros comandos en el sandbox también pueden pasar por el flujo de permisos regular, como se describe en [modo Auto-allow](/docs/es/sandboxing#auto-allow-mode)

747 748 

748Los 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.749Los 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.

749 750 

Details

55* **Nombres que comienzan con `claudeai-`**: reservado para marketplaces alojados en claude.ai. `claude plugin marketplace add` rechaza cualquier otro marketplace que use uno con `Cannot add marketplace "<name>": names starting with "claudeai-" are reserved for marketplaces hosted on claude.ai`.55* **Nombres que comienzan con `claudeai-`**: reservado para marketplaces alojados en claude.ai. `claude plugin marketplace add` rechaza cualquier otro marketplace que use uno con `Cannot add marketplace "<name>": names starting with "claudeai-" are reserved for marketplaces hosted on claude.ai`.

56* **La carpeta de descarga de un marketplace de GitHub registrado, `<owner>-<repo>`**: Claude Code descarga un marketplace agregado desde una fuente `github` como `acme/x-tools` a través de una carpeta llamada `acme-x-tools`, sea cual sea el `name` propio de ese marketplace. Mientras ese marketplace esté registrado con un nombre distinto de `acme-x-tools`, `claude plugin marketplace add` rechaza un marketplace diferente llamado `acme-x-tools` después de descargarlo, e informa `Can't use the marketplace name "acme-x-tools"`. Esta verificación requiere Claude Code v2.1.290 o posterior.56* **La carpeta de descarga de un marketplace de GitHub registrado, `<owner>-<repo>`**: Claude Code descarga un marketplace agregado desde una fuente `github` como `acme/x-tools` a través de una carpeta llamada `acme-x-tools`, sea cual sea el `name` propio de ese marketplace. Mientras ese marketplace esté registrado con un nombre distinto de `acme-x-tools`, `claude plugin marketplace add` rechaza un marketplace diferente llamado `acme-x-tools` después de descargarlo, e informa `Can't use the marketplace name "acme-x-tools"`. Esta verificación requiere Claude Code v2.1.290 o posterior.

57 57 

58Cuando un marketplace registrado deja de cargarse porque su nombre imita uno oficial, `claude plugin list` y `/plugin` reportan `Claude Code refuses the marketplace name "<name>"`. El mensaje le indica que elimine el marketplace. Eliminarlo también desinstala sus plugins y elimina sus datos guardados. Este mensaje de rechazo nombrado requiere Claude Code v2.1.282 o posterior.58Cuando un marketplace registrado deja de cargarse porque su nombre imita uno oficial, `claude plugin list` y `/plugin` reportan `Claude Code refuses the marketplace name "<name>"`. El mensaje te indica que elimines el marketplace. Eliminarlo también desinstala sus plugins y elimina sus datos, opciones y secretos. Este mensaje de rechazo nombrado requiere Claude Code v2.1.282 o posterior.

59 

60Si un archivo de configuración declara el marketplace en línea, el mensaje te indica que cambies el nombre de su entrada antes de eliminar el nombre anterior. Para ver los pasos, consulta [Claude Code refuses the marketplace name](/docs/es/errors#claude-code-refuses-the-marketplace-name). El mensaje los enumera en Claude Code v2.1.292 o posterior.

59 61 

60<h2 id="top-level-fields">62<h2 id="top-level-fields">

61 Campos de nivel superior63 Campos de nivel superior

Details

88| [`prompt.submit`](/docs/es/plugins/mods/events#rewrite-or-add-to-a-prompt) | Se envía un prompt | `next({ ...e, text })`, `next({ ...e, context })` o `{ drop: reason }` |88| [`prompt.submit`](/docs/es/plugins/mods/events#rewrite-or-add-to-a-prompt) | Se envía un prompt | `next({ ...e, text })`, `next({ ...e, context })` o `{ drop: reason }` |

89| `prompt.fill`, `prompt.suggest` | Un texto está a punto de entrar en el cuadro del prompt como borrador o como sugerencia atenuada | `next(e)` con el texto cambiado |89| `prompt.fill`, `prompt.suggest` | Un texto está a punto de entrar en el cuadro del prompt como borrador o como sugerencia atenuada | `next(e)` con el texto cambiado |

90| `prompt.edit` | El usuario edita el cuadro del prompt | `next(e)` |90| `prompt.edit` | El usuario edita el cuadro del prompt | `next(e)` |

91| `prompt.autocomplete` | El usuario escribe en el cuadro del prompt y una palabra termina en el cursor. `e.token` es esa palabra. Claude Code no espera al hook: sus propias filas de autocompletado se muestran primero. | `{ suggestions }`, una lista de filas `{ text, label, description }` que se muestran debajo de las propias de Claude Code. Elegir una fila escribe su `text` sobre la palabra. |

91| `prompt.compose` | Claude Code genera un prompt del sistema | `{ sections }`, una lista de `{ id, text, scope }` en el orden en que se envían |92| `prompt.compose` | Claude Code genera un prompt del sistema | `{ sections }`, una lista de `{ id, text, scope }` en el orden en que se envían |

92| [`prompt.section`](/docs/es/plugins/mods/events#rewrite-or-add-to-a-prompt) | Una vez por cada sección con nombre del prompt del sistema. `e.name` es el `id` de la sección en `prompt.compose`. | `{ text }`, o `{ text: null }` para omitir la sección |93| [`prompt.section`](/docs/es/plugins/mods/events#rewrite-or-add-to-a-prompt) | Una vez por cada sección con nombre del prompt del sistema. `e.name` es el `id` de la sección en `prompt.compose`. | `{ text }`, o `{ text: null }` para omitir la sección |

93| [`prompt.context`](/docs/es/plugins/mods/events#rewrite-or-add-to-a-prompt) | Una vez por cada conversación, para el contexto enviado con el primer mensaje | `{ blocks }` |94| [`prompt.context`](/docs/es/plugins/mods/events#rewrite-or-add-to-a-prompt) | Una vez por cada conversación, para el contexto enviado con el primer mensaje | `{ blocks }` |

Details

64 | `--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. |64 | `--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. |

65 | `-c`, `--continue` | Reanude la sesión que el último servidor en este directorio inició, en lugar de crear una nueva. Consulte [Reanude sesiones después de detener el servidor](#resume-sessions-after-stopping-the-server). No se puede combinar con `--session-id`, `--spawn`, `--capacity`, o `--create-session-in-dir`. Requiere Claude Code v2.1.200 o posterior. |65 | `-c`, `--continue` | Reanude la sesión que el último servidor en este directorio inició, en lugar de crear una nueva. Consulte [Reanude sesiones después de detener el servidor](#resume-sessions-after-stopping-the-server). No se puede combinar con `--session-id`, `--spawn`, `--capacity`, o `--create-session-in-dir`. Requiere Claude Code v2.1.200 o posterior. |

66 | `--session-id <id>` | Reanude una sesión por su ID. Consulte [Reanude sesiones después de detener el servidor](#resume-sessions-after-stopping-the-server). No se puede combinar con `--continue`, `--spawn`, `--capacity`, o `--create-session-in-dir`. Requiere Claude Code v2.1.200 o posterior. |66 | `--session-id <id>` | Reanude una sesión por su ID. Consulte [Reanude sesiones después de detener el servidor](#resume-sessions-after-stopping-the-server). No se puede combinar con `--continue`, `--spawn`, `--capacity`, o `--create-session-in-dir`. Requiere Claude Code v2.1.200 o posterior. |

67 | `--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`. |67 | `--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 o un [hook `WorktreeCreate`](/docs/es/hooks#worktreecreate).<br />• `session`: modo de sesión única. Sirve exactamente una sesión y rechaza conexiones adicionales. Se establece solo al inicio.<br />Presiona `w` en tiempo de ejecución para alternar entre `same-dir` y `worktree`. |

68 | `--capacity <N>` | Número máximo de sesiones concurrentes. El valor predeterminado es 32. No se puede usar con `--spawn=session`. |68 | `--capacity <N>` | Número máximo de sesiones concurrentes. El valor predeterminado es 32. No se puede usar con `--spawn=session`. |

69 | `--[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. Si pasa `--no-create-session-in-dir` para comenzar sin ninguno, Claude Code archiva las sesiones del servidor cuando lo detiene, por lo que no hay nada que [reanudar](#resume-sessions-after-stopping-the-server). |69 | `--[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. Si pasa `--no-create-session-in-dir` para comenzar sin ninguno, Claude Code archiva las sesiones del servidor cuando lo detiene, por lo que no hay nada que [reanudar](#resume-sessions-after-stopping-the-server). |

70 | `--permission-mode <mode>` | Establezca el [modo de permiso](/docs/es/permission-modes) inicial para las sesiones del servidor, como `acceptEdits`. Acepta `manual` como alias para `default`; un modo no reconocido detiene el servidor al inicio y enumera los modos válidos. |70 | `--permission-mode <mode>` | Establezca el [modo de permiso](/docs/es/permission-modes) inicial para las sesiones del servidor, como `acceptEdits`. Acepta `manual` como alias para `default`; un modo no reconocido detiene el servidor al inicio y enumera los modos válidos. |

sandboxing.md +11 −1

Details

202* Las [reglas de denegación](/docs/es/permissions) explícitas siempre se respetan202* Las [reglas de denegación](/docs/es/permissions) explícitas siempre se respetan

203* Los comandos `rm` o `rmdir` que apuntan a una [ruta crítica](/docs/es/permission-modes#critical-paths) siguen pasando por el flujo de permisos habitual203* Los comandos `rm` o `rmdir` que apuntan a una [ruta crítica](/docs/es/permission-modes#critical-paths) siguen pasando por el flujo de permisos habitual

204* Las [reglas de consulta](/docs/es/permissions) limitadas por contenido, como `Bash(git push *)`, siguen forzando una solicitud de permiso incluso para los comandos del sandbox204* Las [reglas de consulta](/docs/es/permissions) limitadas por contenido, como `Bash(git push *)`, siguen forzando una solicitud de permiso incluso para los comandos del sandbox

205* Una regla de consulta `Bash` sin más, o la forma equivalente `Bash(*)`, se omite para los comandos que se ejecutan en el sandbox; sigue aplicándose a los comandos que recurren al flujo de permisos habitual. En el [modo plan](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode), la regla no se omite: también pide confirmación para los comandos del sandbox, incluidos los de solo lectura205* Una regla de consulta `Bash` sin más, o la forma equivalente `Bash(*)`, se omite para los comandos que se ejecutan en el sandbox; sigue aplicándose a los comandos que se ejecutan fuera del sandbox. En el [modo plan](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode), la regla no se omite: también pide confirmación para los comandos del sandbox, incluidos los de solo lectura

206* Los comandos de la [herramienta Monitor](/docs/es/tools-reference#monitor-tool) no se aprueban automáticamente, aunque siguen ejecutándose en el sandbox. Para omitir la solicitud de permiso, agrega una [regla de permiso](/docs/es/permissions#bash) que coincida con el comando, como `Bash(npm run *)`206* Los comandos de la [herramienta Monitor](/docs/es/tools-reference#monitor-tool) no se aprueban automáticamente, aunque siguen ejecutándose en el sandbox. Para omitir la solicitud de permiso, agrega una [regla de permiso](/docs/es/permissions#bash) que coincida con el comando, como `Bash(npm run *)`

207 207 

208Algunos comandos del sandbox también pasan por el [flujo de permisos](/docs/es/permissions) habitual en lugar de aprobarse automáticamente. Esto ocurre con comandos como `FOO=bar npm test`, donde una variable establecida delante de un comando puede cambiar qué programa se ejecuta, y con `make CC=clang` o `eval "ls"`. Tus reglas de permiso y tu modo de permisos deciden entonces si ves una solicitud de permiso, y el comando sigue ejecutándose dentro del sandbox.

209 

210Para estos tres comandos, una [regla de permiso](/docs/es/permissions#bash) que coincida con el comando evita que la solicitud de permiso se repita. Estas reglas muestran el patrón:

211 

212* `Bash(make *)` aprueba `make CC=clang`

213* `Bash(FOO=bar npm *)` aprueba `FOO=bar npm test`. Cuando el comando empieza con una asignación de variable, incluye la asignación en la regla

214* `Bash(eval "ls")` aprueba `eval "ls"`. Una regla con comodín como `Bash(eval *)` no evita esta solicitud de permiso, así que escribe una regla que coincida con el comando completo

215 

216Una regla de permiso que coincide con un comando también aprueba un [reintento fuera del sandbox](#the-unsandboxed-retry-escape-hatch) de ese comando, por lo que puede ejecutarse fuera del sandbox sin pedir confirmación.

217 

208<Info>218<Info>

209 El modo auto-allow funciona de forma independiente de tu ajuste de modo de permisos, con tres excepciones: el [modo plan](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode), un comando del modo automático que lleva [dominios permitidos por comando](#per-command-allowed-domains-in-auto-mode) y la [revisión del clasificador del lado del servidor](/docs/es/permission-modes#how-the-classifier-evaluates-actions) de los comandos del sandbox en el modo automático. Aunque no estés en el modo "accept edits", los comandos de Bash del sandbox se ejecutan automáticamente cuando auto-allow está habilitado. Esto significa que los comandos de Bash que modifican archivos dentro de los límites del sandbox se ejecutan sin pedir confirmación, incluso en el modo Manual, donde las herramientas de edición de archivos sí la pedirían.219 El modo auto-allow funciona de forma independiente de tu ajuste de modo de permisos, con tres excepciones: el [modo plan](/docs/es/permission-modes#analyze-before-you-edit-with-plan-mode), un comando del modo automático que lleva [dominios permitidos por comando](#per-command-allowed-domains-in-auto-mode) y la [revisión del clasificador del lado del servidor](/docs/es/permission-modes#how-the-classifier-evaluates-actions) de los comandos del sandbox en el modo automático. Aunque no estés en el modo "accept edits", los comandos de Bash del sandbox se ejecutan automáticamente cuando auto-allow está habilitado. Esto significa que los comandos de Bash que modifican archivos dentro de los límites del sandbox se ejecutan sin pedir confirmación, incluso en el modo Manual, donde las herramientas de edición de archivos sí la pedirían.

210 220 

Details

191 Jitter191 Jitter

192</h3>192</h3>

193 193 

194Una tarea programada puede ejecutarse en un momento distinto al que indica su programación. Si las tareas de cada sesión se ejecutaran exactamente según lo programado, muchas de ellas llamarían a la API en el mismo momento, por lo que Claude Code desplaza la hora de ejecución de cada tarea. Las tareas recurrentes se ejecutan con retraso, y las tareas únicas programadas en punto o a la media hora se ejecutan un poco antes.194Una tarea programada puede ejecutarse en un momento distinto al que indica su programación. Si las tareas de cada sesión se ejecutaran exactamente según lo programado, muchas de ellas llamarían a la API en el mismo momento, por lo que Claude Code desplaza la hora de ejecución de cada tarea. Las tareas recurrentes se ejecutan con retraso, excepto una tarea que se ejecuta cada cinco minutos, escrita como `*/5 * * * *`. Las tareas únicas programadas en punto o a la media hora se ejecutan un poco antes.

195 195 

196<h4 id="how-late-a-recurring-task-runs">196<h4 id="how-late-a-recurring-task-runs">

197 Cuánto se retrasa una tarea recurrente197 Cuánto se retrasa una tarea recurrente

198</h4>198</h4>

199 199 

200Cuando creas una tarea recurrente, Claude Code le asigna un retraso fijo y lo agrega a cada ejecución. El retraso se calcula a partir del ID de la tarea, por lo que la misma tarea se ejecuta con la misma cantidad de minutos de retraso cada vez, incluso cuando la sesión está inactiva y no se está ejecutando nada más.200A menos que se ejecute cada cinco minutos, una tarea recurrente inicia cada ejecución con un retraso de hasta la mitad del intervalo hasta la siguiente ejecución, y como máximo de 30 minutos. Tu tarea corresponde a uno de estos tres casos:

201 201 

202Las tareas que se ejecutan con más frecuencia obtienen retrasos más cortos, y 30 minutos es el retraso máximo que puede tener una tarea. Estos son los rangos de retraso para algunas programaciones comunes:202* **Ejecuciones espaciadas uniformemente**: una tarea con intervalos iguales, como cada hora, una vez al día o cada 10 minutos, se ejecuta con la misma cantidad de minutos de retraso cada vez, incluso cuando la sesión está inactiva.

203* **Ejecuciones espaciadas de forma irregular**: una tarea con intervalos desiguales, como una programada para `:00` y `:15` cada hora, puede ejecutarse con una cantidad distinta de minutos de retraso en cada una.

204* **Cada cinco minutos**: una tarea escrita como `*/5 * * * *` no se retrasa. Una ejecución exactamente cinco minutos después de la anterior empezaría después de que una [caché de prompts](/docs/es/prompt-caching#which-ttl-each-request-gets) de cinco minutos hubiera expirado, por lo que cada ejecución empieza 15 segundos antes.

203 205 

204| La tarea se ejecuta | El retraso está entre |206Busca tu programación en la primera columna de esta tabla para ver cuándo empieza cada una de sus ejecuciones.

207 

208| Programación | Cuándo empieza cada ejecución |

205| :- | :- |209| :- | :- |

206| Cada 10 minutos | 0 y 5 minutos |210| Cada 5 minutos, escrita como `*/5 * * * *`, que es lo que crea `/loop 5m` | 4 minutos y 45 segundos después de la ejecución anterior |

207| Cada 30 minutos | 0 y 15 minutos |211| Cada 10 minutos | Entre 0 y 5 minutos de retraso |

208| Cada hora, o con menos frecuencia, como una vez al día | 0 y 30 minutos |212| Cada 30 minutos | Entre 0 y 15 minutos de retraso |

213| Cada hora, o con menos frecuencia, como una vez al día | Entre 0 y 30 minutos de retraso |

209 214 

210Por ejemplo, `7,37 * * * *` programa una tarea para `:07` y `:37`, que están separados por 30 minutos, por lo que su retraso está entre 0 y 15 minutos. Si el retraso de esta tarea es de 14 minutos, se ejecuta a las `:21` y `:51` cada hora. Cambiar la programación a un minuto diferente mueve la hora de ejecución, y aun así se agrega un retraso encima.215Por ejemplo, `7,37 * * * *` programa una tarea para `:07` y `:37`, que están separados por 30 minutos, por lo que su retraso está entre 0 y 15 minutos. Si el retraso de esta tarea es de 14 minutos, se ejecuta a las `:21` y `:51` cada hora. Cambiar la programación a un minuto diferente mueve la hora de ejecución, y aun así se agrega un retraso encima.

211 216 

Details

1931 1931 

1932* **Scope**: [`Any file`](#scopes)1932* **Scope**: [`Any file`](#scopes)

1933* **Type**: Boolean1933* **Type**: Boolean

1934 * `true`: Claude Code ejecuta comandos Bash en sandbox sin una solicitud de permiso, sujeto a las reglas `deny` y a las reglas `ask` limitadas por contenido; `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` desactiva la aprobación automática1934 * `true`: Claude Code ejecuta comandos Bash en sandbox sin una solicitud de permiso, excepto en los casos que describe [Modo de aprobación automática](/docs/es/sandboxing#auto-allow-mode); `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` desactiva la aprobación automática

1935 * `false`: los comandos en sandbox pasan por el flujo de permisos normal, por lo que deciden tus reglas allow y tu modo de permisos. La pestaña **Mode** de `/sandbox` llama a esto modo de permisos normal1935 * `false`: los comandos en sandbox pasan por el flujo de permisos normal, por lo que deciden tus reglas allow y tu modo de permisos. La pestaña **Mode** de `/sandbox` llama a esto modo de permisos normal

1936* **Default**: `true`1936* **Default**: `true`

1937 1937 


1946}1946}

1947```1947```

1948 1948 

1949Consulta [Modos del sandbox](/docs/es/sandboxing#sandbox-modes) para saber qué sigue solicitando el modo de aprobación automática y cómo se comporta en modo plan.1949Consulta [Modo de aprobación automática](/docs/es/sandboxing#auto-allow-mode) para saber qué sigue solicitando el modo de aprobación automática y cómo se comporta en modo plan.

1950 1950 

1951<h3 id="sandbox-excludedcommands">1951<h3 id="sandbox-excludedcommands">

1952 `sandbox.excludedCommands`1952 `sandbox.excludedCommands`

statusline.md +1 −1

Details

1308Fuera de la [representación a pantalla completa](/docs/es/fullscreen), Claude Code muestra notificaciones en la misma fila que tu línea de estado. En la representación a pantalla completa, Claude Code asigna a las notificaciones una fila propia.1308Fuera de la [representación a pantalla completa](/docs/es/fullscreen), Claude Code muestra notificaciones en la misma fila que tu línea de estado. En la representación a pantalla completa, Claude Code asigna a las notificaciones una fila propia.

1309 1309 

1310* Las notificaciones del sistema como errores de servidor MCP y actualizaciones automáticas se muestran en el lado derecho de la fila. Las notificaciones transitorias como la advertencia de contexto bajo también ciclan a través de esta área.1310* Las notificaciones del sistema como errores de servidor MCP y actualizaciones automáticas se muestran en el lado derecho de la fila. Las notificaciones transitorias como la advertencia de contexto bajo también ciclan a través de esta área.

1311* Habilitar el modo verbose agrega un contador de tokens a esta área1311* Habilitar el modo verbose agrega un contador de tokens a esta área, que muestra el tamaño de tu contexto según lo reportó la última respuesta de API, no el [conteo por turno junto al indicador de progreso](/docs/es/costs#read-the-token-count-beside-the-spinner)

1312* En terminales estrechas, estas notificaciones pueden truncar tu salida de línea de estado1312* En terminales estrechas, estas notificaciones pueden truncar tu salida de línea de estado

workflows.md +10 −0

Details

431 431 

432Reanude una ejecución pausada desde `/workflows` seleccionándola y presionando `p`. Para una ejecución que detuvo, pida a Claude que relance el workflow con el mismo script. Si los agentes de la ejecución detenida aún no han salido, Claude Code rechaza el relanzamiento hasta que lo hagan, por lo que una segunda copia de esos agentes no puede ejecutarse junto a ellos.432Reanude una ejecución pausada desde `/workflows` seleccionándola y presionando `p`. Para una ejecución que detuvo, pida a Claude que relance el workflow con el mismo script. Si los agentes de la ejecución detenida aún no han salido, Claude Code rechaza el relanzamiento hasta que lo hagan, por lo que una segunda copia de esos agentes no puede ejecutarse junto a ellos.

433 433 

434<h4 id="which-agents-run-again">

435 Qué agentes se ejecutan de nuevo

436</h4>

437 

434Claude Code reproduce la ejecución en el orden en que los agentes comenzaron, y cada agente devuelve su resultado guardado o se ejecuta de nuevo:438Claude Code reproduce la ejecución en el orden en que los agentes comenzaron, y cada agente devuelve su resultado guardado o se ejecuta de nuevo:

435 439 

436* **Completado**: devuelve su resultado guardado. El primer agente cuyo prompt difiere de la ejecución anterior, porque editó el script o un agente anterior devolvió algo diferente, se ejecuta de nuevo, y también lo hace cada agente después de él, incluso los que se completaron.440* **Completado**: devuelve su resultado guardado. El primer agente cuyo prompt difiere de la ejecución anterior, porque editó el script o un agente anterior devolvió algo diferente, se ejecuta de nuevo, y también lo hace cada agente después de él, incluso los que se completaron.


439 443 

440Ese último caso significa que una falla en el medio de un fan-out reejecutará trabajo que ya se completó. Si un script inicia A, B, C y D en ese orden y B falla, relanzar devuelve A del caché y ejecuta B, C y D de nuevo.444Ese último caso significa que una falla en el medio de un fan-out reejecutará trabajo que ya se completó. Si un script inicia A, B, C y D en ese orden y B falla, relanzar devuelve A del caché y ejecuta B, C y D de nuevo.

441 445 

446Si editas un script que iniciaba A, B, C y D para que inicie A, C, B y D, el segundo agente en iniciarse ahora es C, donde la ejecución anterior iniciaba B. Relanzar devuelve A de la caché y ejecuta C, B y D de nuevo.

447 

448<h4 id="resume-after-you-leave-the-session">

449 Reanudar después de salir de la sesión

450</h4>

451 

442Puede reanudar una ejecución dentro de la misma sesión de Claude Code. Lo que sucede con un workflow en ejecución cuando sale de la sesión depende de cómo salga:452Puede reanudar una ejecución dentro de la misma sesión de Claude Code. Lo que sucede con un workflow en ejecución cuando sale de la sesión depende de cómo salga:

443 453 

444* Si [coloca la sesión en segundo plano](/docs/es/agent-view#what-carries-over-when-you-background), Claude Code reproduce la ejecución de la misma manera en la sesión en segundo plano y la continúa.454* Si [coloca la sesión en segundo plano](/docs/es/agent-view#what-carries-over-when-you-background), Claude Code reproduce la ejecución de la misma manera en la sesión en segundo plano y la continúa.

worktrees.md +1 −1

Details

129and report the results.129and report the results.

130```130```

131 131 

132Cada subagente obtiene un worktree temporal que Claude Code elimina automáticamente cuando el subagente termina sin cambios; un worktree con cambios permanece en el disco hasta que el [barrido periódico a continuación](#clean-up-subagent-and-background-session-worktrees) pueda eliminarlo sin perder trabajo.132Cada subagente obtiene un worktree temporal que Claude Code elimina automáticamente cuando el subagente termina sin cambios; un worktree con cambios permanece en el disco hasta que el [barrido periódico a continuación](#clean-up-subagent-and-background-session-worktrees) pueda eliminarlo sin perder trabajo. Para un worktree que creó tu [hook WorktreeCreate](/docs/es/hooks#worktreecreate), consulta [WorktreeRemove](/docs/es/hooks#worktreeremove) en su lugar.

133 133 

134Los 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"`.134Los 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"`.

135 135