SpyBara
Go Premium

Documentation 2026-10-28 23:57 UTC to 2026-10-29 23:57 UTC

41 files changed +244 −96. View all changes and history on the product overview
2026
Fri 30 23:01 Thu 29 23:57 Wed 28 23:57 Tue 27 22:59 Mon 26 22:57 Sun 25 23:58 Sat 24 22:59 Fri 23 22:59 Thu 22 22:58 Wed 21 23:02 Tue 20 23:00 Mon 19 23:58 Sat 17 23:57 Fri 16 22:59 Thu 15 23:58 Wed 14 22:58 Tue 13 23:57 Sun 11 23: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

75| :- | :- | :- |75| :- | :- | :- |

76| `"project"` | `settings.json` del proyecto y hooks; CLAUDE.md del proyecto y `.claude/rules/*.md`; skills, comandos y subagentes del proyecto | `<cwd>/.claude/` para `settings.json` y hooks; `<cwd>` y cada directorio padre para CLAUDE.md y rules; `<cwd>` y cada directorio padre hasta la raíz del repositorio para skills, comandos y subagentes, más las carpetas `.claude/skills/`, `.claude/commands/` y `.claude/agents/` de cada directorio que pase a través de la opción `additionalDirectories` o `add_dirs`, que el SDK pasa a Claude Code como [`--add-dir`](https://code.claude.com/docs/es/permissions#additional-directories-grant-file-access-not-configuration) |76| `"project"` | `settings.json` del proyecto y hooks; CLAUDE.md del proyecto y `.claude/rules/*.md`; skills, comandos y subagentes del proyecto | `<cwd>/.claude/` para `settings.json` y hooks; `<cwd>` y cada directorio padre para CLAUDE.md y rules; `<cwd>` y cada directorio padre hasta la raíz del repositorio para skills, comandos y subagentes, más las carpetas `.claude/skills/`, `.claude/commands/` y `.claude/agents/` de cada directorio que pase a través de la opción `additionalDirectories` o `add_dirs`, que el SDK pasa a Claude Code como [`--add-dir`](https://code.claude.com/docs/es/permissions#additional-directories-grant-file-access-not-configuration) |

77| `"user"` | `settings.json` del usuario; CLAUDE.md del usuario y `~/.claude/rules/*.md`; skills, comandos y subagentes del usuario | `~/.claude/` para `settings.json`, CLAUDE.md y rules; `~/.claude/skills/`, `~/.claude/commands/` y `~/.claude/agents/` para skills, comandos y subagentes |77| `"user"` | `settings.json` del usuario; CLAUDE.md del usuario y `~/.claude/rules/*.md`; skills, comandos y subagentes del usuario | `~/.claude/` para `settings.json`, CLAUDE.md y rules; `~/.claude/skills/`, `~/.claude/commands/` y `~/.claude/agents/` para skills, comandos y subagentes |

78| `"local"` | CLAUDE.local.md, `.claude/settings.local.json` | `<cwd>/.claude/` para `settings.local.json`; `<cwd>` y cada directorio padre para CLAUDE.local.md |78| `"local"` | CLAUDE.local.md, `.claude/settings.local.json` | `<cwd>/.claude/` para `settings.local.json`, que [también puede cargarse desde la raíz del repositorio](https://code.claude.com/docs/es/settings.md#where-claude-code-keeps-the-local-file-in-a-git-repository) cuando `<cwd>` está dentro de un repositorio git; `<cwd>` y cada directorio padre para CLAUDE.local.md |

79 79 

80Omitir `settingSources` es equivalente a `["user", "project", "local"]`.80Omitir `settingSources` es equivalente a `["user", "project", "local"]`.

81 81 

82La opción `cwd` determina dónde busca el SDK las entradas a nivel de proyecto. `settings.json` del proyecto y hooks se cargan solo desde `<cwd>/.claude/` sin fallback de directorio padre.82La opción `cwd` determina dónde busca el SDK las entradas a nivel de proyecto. `settings.json` del proyecto se carga desde `<cwd>/.claude/` sin respaldo de directorio padre.

83 83 

84### Qué settingSources no controla84### Qué settingSources no controla

85 85 

Details

3322 3322 

3323### TaskStop3323### TaskStop

3324 3324 

3325**Nombre de herramienta:** `TaskStop`. Los nombres anteriores `KillShell` y `KillBash` aún se aceptan como alias.3325**Nombre de herramienta:** `TaskStop`. Aún puedes usar los nombres anteriores `KillShell` y `KillBash` en reglas de permisos, en matchers de hooks y en las opciones `tools`, `allowed_tools` y `disallowed_tools`.

3326 3326 

3327**Entrada:**3327**Entrada:**

3328 3328 

Details

263* **Sesión nueva, o una reanudación cuando el almacén no tiene nada para la sesión**: la transcripción local bajo su directorio de configuración sobrevive a la ejecución, y el almacén recibe una copia.263* **Sesión nueva, o una reanudación cuando el almacén no tiene nada para la sesión**: la transcripción local bajo su directorio de configuración sobrevive a la ejecución, y el almacén recibe una copia.

264* **Ejecución [reanudada desde el almacén](#resume-from-the-store)**: la copia local se elimina al final de la ejecución, por lo que el almacén contiene la única copia duradera.264* **Ejecución [reanudada desde el almacén](#resume-from-the-store)**: la copia local se elimina al final de la ejecución, por lo que el almacén contiene la única copia duradera.

265 265 

266Si no desea que una sesión nueva deje una transcripción en el disco local, establezca `CLAUDE_CONFIG_DIR` en un directorio temporal en `options.env`. Una ejecución reanudada desde el almacén ya elimina su copia local, por lo que no necesita tal configuración. En TypeScript, también propague `process.env` en `env`, ya que la [opción `env`](https://code.claude.com/docs/es/agent-sdk/typescript#options) reemplaza el entorno del subproceso.266Si no quieres que una sesión nueva deje una transcripción en el disco local, establece `CLAUDE_CONFIG_DIR` en un directorio temporal nuevo y privado en `options.env`. Una ejecución reanudada desde el almacén ya elimina su copia local, por lo que no necesita tal ajuste. En TypeScript, también propaga `process.env` en `env`, ya que la [opción `env`](https://code.claude.com/docs/es/agent-sdk/typescript#options) reemplaza el entorno del subproceso.

267 267 

268Si su aplicación inicia sesión a través de archivos en el directorio de configuración, como credenciales de OAuth o un `apiKeyHelper` en su `settings.json` de usuario, copie primero esos archivos en el directorio temporal, o establezca `ANTHROPIC_API_KEY` en `env` en su lugar. De lo contrario, la ejecución falla con `Not logged in`.268Si estableces `CLAUDE_CONFIG_DIR` en un directorio temporal e inicias sesión con un [inicio de sesión de claude.ai](https://code.claude.com/docs/es/authentication.md#credential-management) o un [`apiKeyHelper`](https://code.claude.com/docs/es/settings-reference#apikeyhelper) en tu `settings.json` de usuario, la ejecución falla con `Not logged in`. Para autenticar la ejecución, establece un token de larga duración, establece una clave de API o copia tus archivos de configuración:

269 

270* **Token de larga duración**: si ejecutas el agente tú mismo con tu propia suscripción de Claude, establece `CLAUDE_CODE_OAUTH_TOKEN` en `env` con un token de [`claude setup-token`](https://code.claude.com/docs/es/authentication#generate-a-long-lived-token). Con ese token solo puedes hacer solicitudes al modelo, por lo que tus [conectores de claude.ai](https://code.claude.com/docs/es/mcp.md#use-mcp-servers-from-claude-ai) no están disponibles en esa ejecución.

271* **Clave de API**: establece `ANTHROPIC_API_KEY` en `env`.

272* **Archivos de configuración**: si inicias sesión a través de archivos en tu directorio de configuración habitual, como credenciales de OAuth o un `apiKeyHelper` en tu `settings.json` de usuario, cópialos en el directorio temporal.

269 273 

270Dos opciones entran en conflicto con el espejo, y el SDK lanza una excepción al inicio si combina cualquiera de ellas con un almacén:274Dos opciones entran en conflicto con el espejo, y el SDK lanza una excepción al inicio si combina cualquiera de ellas con un almacén:

271 275 

Details

730 730 

731Solo algunas claves surten efecto durante la sesión:731Solo algunas claves surten efecto durante la sesión:

732 732 

733* **Se aplican en el siguiente turno**: `effortLevel`, `ultracode`, `permissions`, `hooks`, `skillOverrides`, `fastMode`, `agent`. Cambiar `agent` también aplica la sobrescritura de modelo y los hooks de ese agente en el siguiente turno. Su prompt del sistema se aplica en el siguiente turno o, en una sesión que [reutiliza un prompt del sistema registrado](https://code.claude.com/docs/es/agent-sdk/modifying-system-prompts.md#change-the-prompt-of-an-existing-session), una vez que la sesión se compacta.733* **Se aplican en el siguiente turno**: `ultracode`, `permissions`, `hooks`, `skillOverrides`, `fastMode`, `agent`. Cambiar `agent` también aplica la sobrescritura de modelo y los hooks de ese agente en el siguiente turno. Su prompt del sistema se aplica en el siguiente turno. En una sesión que [reutiliza un prompt del sistema registrado](https://code.claude.com/docs/es/agent-sdk/modifying-system-prompts.md#change-the-prompt-of-an-existing-session), se aplica una vez que la sesión se compacta.

734* **Se aplican durante el turno actual**: `model`. Si cambias `model` mientras Claude está trabajando en un turno, la respuesta que Claude ya está generando termina con el modelo anterior, y el resto del turno, a partir de la siguiente llamada que Claude Code hace al modelo, usa el nuevo. Los subagentes conservan su propio modelo. Antes de v2.1.212, un cambio a mitad de turno esperaba al siguiente turno.734* **Se aplican durante el turno actual**: `model`. Si cambias `model` mientras Claude está trabajando en un turno, la respuesta que Claude ya está generando termina con el modelo anterior, y el resto del turno, a partir de la siguiente llamada que Claude Code hace al modelo, usa el nuevo. Los subagentes conservan su propio modelo. Antes de v2.1.212, un cambio a mitad de turno esperaba al siguiente turno.

735* **Se aplican como tarde en el siguiente turno**: `effortLevel`. El nivel se aplica a partir de la siguiente llamada de Claude Code al modelo. Si [cambiar el esfuerzo conserva la caché de prompts](https://code.claude.com/docs/es/prompt-caching.md#changing-effort-level), como en Claude Opus 5.5 con una clave de API o una suscripción a Claude, espera que se aplique en el siguiente turno.

735* **Sin efecto durante la sesión**: las opciones del prompt del sistema. Se resuelven una sola vez al inicio, por lo que la sesión en ejecución conserva el valor original aunque la llamada tenga éxito. Para cambiarlas, inicia una nueva sesión.736* **Sin efecto durante la sesión**: las opciones del prompt del sistema. Se resuelven una sola vez al inicio, por lo que la sesión en ejecución conserva el valor original aunque la llamada tenga éxito. Para cambiarlas, inicia una nueva sesión.

736 737 

737`effortLevel` acepta el nombre de un [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level). También acepta `"ultracode"`, que solicita el esfuerzo `xhigh` con [ultracode](https://code.claude.com/docs/es/workflows.md#let-claude-decide-with-ultracode) activado. `applyFlagSettings()` declara `effortLevel` sin ese valor, así que en TypeScript pasa `{ ultracode: true, effortLevel: "xhigh" }` para obtener el mismo resultado, o solo la clave [`ultracode`](https://code.claude.com/docs/es/settings-reference#ultracode) para activar ultracode con el nivel de esfuerzo actual de la sesión. El valor `ultracode` requiere Claude Code v2.1.203 o posterior y solo lo acepta `applyFlagSettings()`, no la clave `effortLevel` en un archivo de configuración. Antes de v2.1.284, la clave `ultracode` por sí sola también establecía el nivel en `xhigh`.738`effortLevel` acepta el nombre de un [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level). También acepta `"ultracode"`, que solicita el esfuerzo `xhigh` con [ultracode](https://code.claude.com/docs/es/workflows.md#let-claude-decide-with-ultracode) activado. `applyFlagSettings()` declara `effortLevel` sin ese valor, así que en TypeScript pasa `{ ultracode: true, effortLevel: "xhigh" }` para obtener el mismo resultado, o solo la clave [`ultracode`](https://code.claude.com/docs/es/settings-reference#ultracode) para activar ultracode con el nivel de esfuerzo actual de la sesión. El valor `ultracode` requiere Claude Code v2.1.203 o posterior y solo lo acepta `applyFlagSettings()`, no la clave `effortLevel` en un archivo de configuración. Antes de v2.1.284, la clave `ultracode` por sí sola también establecía el nivel en `xhigh`.

738 739 

739Los valores se escriben en la capa de configuración de flags y se combinan sobre lo que la opción `settings` en línea de `query()` estableció al inicio. Es el mismo nivel que la [sección de precedencia de esta página](#settings-precedence) llama opciones programáticas.740Los valores se escriben en la capa de configuración de flags y se combinan sobre lo que estableció al inicio la opción `settings` en línea de `query()`. Este es el mismo nivel que la [sección de precedencia de esta página](#settings-precedence) denomina opciones programáticas. `effortLevel` es una excepción: el nivel que pasas reemplaza al que proviene de `--effort` o de la configuración, incluida la configuración administrada, como muestra el [orden de resolución del esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level).

740 741 

741Las llamadas sucesivas combinan superficialmente las claves de nivel superior. Una segunda llamada con `{ permissions: {...} }` reemplaza todo el objeto `permissions` de la llamada anterior en lugar de combinarse en profundidad con él.742Las llamadas sucesivas combinan superficialmente las claves de nivel superior. Una segunda llamada con `{ permissions: {...} }` reemplaza todo el objeto `permissions` de la llamada anterior en lugar de combinarse en profundidad con él.

742 743 


13272. Configuración del proyecto (`.claude/settings.json`)13282. Configuración del proyecto (`.claude/settings.json`)

13283. Configuración del usuario (`~/.claude/settings.json`)13293. Configuración del usuario (`~/.claude/settings.json`)

1329 1330 

1330Las opciones programáticas como `agents`, `allowedTools` y `settings` sobrescriben la configuración de usuario, de proyecto y local del sistema de archivos. La configuración de políticas administradas tiene precedencia sobre las opciones programáticas.1331Las opciones programáticas como `agents`, `allowedTools` y `settings` sobrescriben la configuración del sistema de archivos de usuario, proyecto y local. Si un ajuste de política administrada y una opción programática establecen la misma clave, se aplica el valor administrado, con excepciones como un `effortLevel` pasado a [`applyFlagSettings()`](#applyflagsettings).

1331 1332 

1332### `PermissionMode`1333### `PermissionMode`

1333 1334 


2095`terminal_slash_commands` nombra las entradas de `slash_commands` cuya interfaz está vinculada a la terminal local, como `exit`. Puedes enviarlas como cualquier otra entrada de `slash_commands`; el campo existe para que un cliente remoto o móvil pueda ocultarlas de sus menús de comandos. El campo está presente solo cuando no está vacío, y requiere Agent SDK v0.3.229 o posterior.2096`terminal_slash_commands` nombra las entradas de `slash_commands` cuya interfaz está vinculada a la terminal local, como `exit`. Puedes enviarlas como cualquier otra entrada de `slash_commands`; el campo existe para que un cliente remoto o móvil pueda ocultarlas de sus menús de comandos. El campo está presente solo cuando no está vacío, y requiere Agent SDK v0.3.229 o posterior.

2096 2097 

2097* `source` en cada entrada de `mcp_servers`: de dónde proviene la definición del servidor, con los mismos valores que el `source` de [`McpServerStatus`](#mcpserverstatus). Requiere Agent SDK v0.3.274 o posterior.2098* `source` en cada entrada de `mcp_servers`: de dónde proviene la definición del servidor, con los mismos valores que el `source` de [`McpServerStatus`](#mcpserverstatus). Requiere Agent SDK v0.3.274 o posterior.

2098* `effort`: el [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) que Claude Code envía en la siguiente solicitud de la sesión, o `null` cuando no envía ninguno. Claude Code establece el campo solo en el mensaje de inicialización que envía a los clientes de [Remote Control](https://code.claude.com/docs/es/remote-control.md), y lo omite del mensaje de inicialización que lee tu aplicación. Requiere Agent SDK v0.3.234 o posterior.2099* `effort`: el [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) establecido para el siguiente turno de la sesión, o `null` cuando Claude Code no envía ningún nivel. Claude Code establece el campo solo en el mensaje de inicialización que envía a los clientes de [Remote Control](https://code.claude.com/docs/es/remote-control.md), y lo omite del mensaje de inicialización que lee tu aplicación. Requiere Agent SDK v0.3.234 o posterior.

2099 2100 

2100La matriz `capabilities` nombra los comportamientos del protocolo que implementa esta CLI, para que puedas detectar funcionalidades en lugar de comparar cadenas de `claude_code_version`. Es un conjunto abierto: ignora los valores que no reconozcas y verifica la capacidad específica de cuyo comportamiento dependes. El campo requiere Claude Code v2.1.205 o posterior y está ausente en las CLI anteriores.2101La matriz `capabilities` nombra los comportamientos del protocolo que implementa esta CLI, para que puedas detectar funcionalidades en lugar de comparar cadenas de `claude_code_version`. Es un conjunto abierto: ignora los valores que no reconozcas y verifica la capacidad específica de cuyo comportamiento dependes. El campo requiere Claude Code v2.1.205 o posterior y está ausente en las CLI anteriores.

2101 2102 

artifacts.md +1 −1

Details

369| Requisito | Disponible cuando |369| Requisito | Disponible cuando |

370| :- | :- |370| :- | :- |

371| 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 Team y Enterprise, los artefactos están habilitados de forma predeterminada, y un propietario puede [desactivarlos para la organización](#manage-artifacts-for-your-organization) en la configuración de administrador de claude.ai. |371| 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 Team y Enterprise, los artefactos están habilitados de forma predeterminada, y un propietario puede [desactivarlos para la organización](#manage-artifacts-for-your-organization) en la configuración de administrador de claude.ai. |

372| 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](https://code.claude.com/docs/es/llm-gateway) o credencial de proveedor de nube no pueden publicar. |372| Autenticación | La sesión está respaldada por una cuenta de claude.ai: inicia sesión con `/login` en la CLI o la aplicación de escritorio. Las sesiones de Claude Tag no necesitan ningún paso de inicio de sesión. Las sesiones que usan una clave de API, un [token de gateway](https://code.claude.com/docs/es/llm-gateway) o una credencial de proveedor de nube no pueden publicar. |

373| Proveedor de modelo | API de Anthropic. No disponible en [Amazon Bedrock](https://code.claude.com/docs/es/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/es/google-vertex-ai.md) o [Microsoft Foundry](https://code.claude.com/docs/es/microsoft-foundry.md). |373| Proveedor de modelo | API de Anthropic. No disponible en [Amazon Bedrock](https://code.claude.com/docs/es/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/es/google-vertex-ai.md) o [Microsoft Foundry](https://code.claude.com/docs/es/microsoft-foundry.md). |

374| Política de organización | Las claves de cifrado administradas por el cliente (CMEK), HIPAA y [Retención de datos cero](https://code.claude.com/docs/es/zero-data-retention.md) no están habilitadas para la organización. |374| Política de organización | Las claves de cifrado administradas por el cliente (CMEK), HIPAA y [Retención de datos cero](https://code.claude.com/docs/es/zero-data-retention.md) no están habilitadas para la organización. |

375| Superficie | CLI de Claude Code, 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. Las sesiones servidas por [`claude remote-control`](https://code.claude.com/docs/es/remote-control) pueden publicar artefactos cuando tú mismo iniciaste la sesión. Requiere Claude Code v2.1.281 o posterior. Deshabilitado de forma predeterminada en el [Agent SDK](https://code.claude.com/docs/es/agent-sdk/overview.md), la GitHub Action y contextos de servidor MCP, cuando ejecutas Claude Code con [`-p`](https://code.claude.com/docs/es/headless) desde tu propia terminal o tus scripts, y cuando [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](https://code.claude.com/docs/es/env-vars) está establecido. |375| Superficie | CLI de Claude Code, 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. Las sesiones servidas por [`claude remote-control`](https://code.claude.com/docs/es/remote-control) pueden publicar artefactos cuando tú mismo iniciaste la sesión. Requiere Claude Code v2.1.281 o posterior. Deshabilitado de forma predeterminada en el [Agent SDK](https://code.claude.com/docs/es/agent-sdk/overview.md), la GitHub Action y contextos de servidor MCP, cuando ejecutas Claude Code con [`-p`](https://code.claude.com/docs/es/headless) desde tu propia terminal o tus scripts, y cuando [`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](https://code.claude.com/docs/es/env-vars) está establecido. |

channels.md +3 −3

Details

353 353 

354| Característica | Qué hace | Bueno para |354| Característica | Qué hace | Bueno para |

355| - | - | - |355| - | - | - |

356| [Claude Code en la web](https://code.claude.com/docs/es/claude-code-on-the-web.md) | Ejecuta tareas en una nueva sandbox en la nube, clonada desde GitHub | Delegar trabajo asincrónico independiente que verifica más tarde |356| [Sesiones en la nube](https://code.claude.com/docs/es/claude-code-on-the-web.md) | Ejecuta tareas en una nueva sandbox en la nube, clonada desde GitHub | Delegar trabajo asincrónico independiente que verifica más tarde |

357| [Claude en Slack](https://code.claude.com/docs/es/slack.md) | Genera una sesión en la nube desde una mención `@Claude` en un canal o hilo | Iniciar tareas directamente desde el contexto de conversación del equipo |357| [Claude en Slack](https://code.claude.com/docs/es/slack.md) | Genera una sesión en la nube desde una mención `@Claude` en un canal o hilo | Iniciar tareas directamente desde el contexto de conversación del equipo |

358| [Servidor MCP](https://code.claude.com/docs/es/mcp.md) estándar | Claude lo consulta durante una tarea; nada se envía a la sesión | Dar a Claude acceso bajo demanda para leer o consultar un sistema |358| [Servidor MCP](https://code.claude.com/docs/es/mcp.md) estándar | Claude lo consulta durante una tarea; nada se envía a la sesión | Dar a Claude acceso bajo demanda para leer o consultar un sistema |

359| [Control Remoto](https://code.claude.com/docs/es/remote-control.md) | Conduce su sesión local desde claude.ai o la aplicación móvil de Claude | Dirigir una sesión en progreso mientras está fuera de su escritorio |359| [Remote Control](https://code.claude.com/docs/es/remote-control.md) | Conduce su sesión local desde claude.ai o la aplicación móvil de Claude | Dirigir una sesión en progreso mientras está fuera de su escritorio |

360 360 

361Los channels cierran la brecha en esa lista al enviar eventos de fuentes que no son de Claude a su sesión local ya en ejecución.361Los channels cierran la brecha en esa lista al enviar eventos de fuentes que no son de Claude a su sesión local ya en ejecución.

362 362 


368Una vez que tenga un channel en ejecución, explore estas características relacionadas:368Una vez que tenga un channel en ejecución, explore estas características relacionadas:

369 369 

370* [Crear su propio channel](https://code.claude.com/docs/es/channels-reference.md) para sistemas que aún no tienen plugins370* [Crear su propio channel](https://code.claude.com/docs/es/channels-reference.md) para sistemas que aún no tienen plugins

371* [Control Remoto](https://code.claude.com/docs/es/remote-control.md) para conducir una sesión local desde su teléfono en lugar de reenviar eventos a ella371* [Remote Control](https://code.claude.com/docs/es/remote-control.md) para conducir una sesión local desde su teléfono en lugar de reenviar eventos a ella

372* [Tareas programadas con alcance de sesión](https://code.claude.com/docs/es/scheduled-tasks.md) para sondear con un temporizador en lugar de reaccionar a eventos enviados372* [Tareas programadas con alcance de sesión](https://code.claude.com/docs/es/scheduled-tasks.md) para sondear con un temporizador en lugar de reaccionar a eventos enviados

chrome.md +9 −0

Details

107>107>

108> Habilitar Chrome de forma predeterminada aumenta el uso de contexto, ya que las herramientas del navegador y sus instrucciones siempre están cargadas. Si notas un mayor consumo de contexto, desactiva el ajuste y conéctate solo cuando lo necesites, con `--chrome` en la CLI o escribiendo [`@browser`](https://code.claude.com/docs/es/vs-code#automate-browser-tasks-with-chrome) en el cuadro de prompt de VS Code.108> Habilitar Chrome de forma predeterminada aumenta el uso de contexto, ya que las herramientas del navegador y sus instrucciones siempre están cargadas. Si notas un mayor consumo de contexto, desactiva el ajuste y conéctate solo cuando lo necesites, con `--chrome` en la CLI o escribiendo [`@browser`](https://code.claude.com/docs/es/vs-code#automate-browser-tasks-with-chrome) en el cuadro de prompt de VS Code.

109 109 

110### Responder al diálogo de inicio

111 

112Si aparece el diálogo "Claude in Chrome extension detected" cuando inicias `claude`, tu respuesta cambia el [ajuste **Enabled by default**](#enable-chrome-by-default):

113 

114* **Yes, use my browser**: activa el ajuste y conecta esta sesión

115* **No, keep browser tools off**, o Esc: desactiva el ajuste, y Claude Code deja de ofrecer configurar Chrome

116 

117Para cambiar tu respuesta en sesiones posteriores, ejecuta `/chrome`.

118 

110### Administrar permisos de sitio119### Administrar permisos de sitio

111 120 

112Los permisos a nivel de sitio se heredan de la extensión de Chrome. Administra los permisos en la configuración de la extensión de Chrome para controlar en qué sitios Claude puede navegar, hacer clic y escribir. En [modo automático](https://code.claude.com/docs/es/permission-modes.md#eliminate-prompts-with-auto-mode), cuando el propio clasificador del modo automático aprueba una llamada del navegador a un sitio, la extensión omite su propia verificación por sitio para esa llamada, a menos que tus reglas de permisos denieguen algún sitio a Claude in Chrome.121Los permisos a nivel de sitio se heredan de la extensión de Chrome. Administra los permisos en la configuración de la extensión de Chrome para controlar en qué sitios Claude puede navegar, hacer clic y escribir. En [modo automático](https://code.claude.com/docs/es/permission-modes.md#eliminate-prompts-with-auto-mode), cuando el propio clasificador del modo automático aprueba una llamada del navegador a un sitio, la extensión omite su propia verificación por sitio para esa llamada, a menos que tus reglas de permisos denieguen algún sitio a Claude in Chrome.

Details

35* **Telemetría**: cada destino configurado recibe [métricas del Protocolo OpenTelemetry (OTLP)](https://code.claude.com/docs/es/monitoring-usage.md) con recuentos de tokens, modelo, identidad del usuario y latencia por defecto, con registros y trazas como activaciones opcionales por destino.35* **Telemetría**: cada destino configurado recibe [métricas del Protocolo OpenTelemetry (OTLP)](https://code.claude.com/docs/es/monitoring-usage.md) con recuentos de tokens, modelo, identidad del usuario y latencia por defecto, con registros y trazas como activaciones opcionales por destino.

36* **Enrutamiento ascendente**: los clientes hablan la API de Mensajes de Anthropic a la puerta de enlace, y la puerta de enlace traduce para cada ascendente, ya sea Amazon Bedrock, [Plataforma Claude en AWS](https://code.claude.com/docs/es/claude-platform-on-aws.md), Plataforma de Agentes de Google Cloud, Microsoft Foundry, o la API de Anthropic, con conmutación por error entre ellos. Puede cambiar regiones, proveedores u orden de conmutación por error sin que los desarrolladores lo noten o reconfiguren.36* **Enrutamiento ascendente**: los clientes hablan la API de Mensajes de Anthropic a la puerta de enlace, y la puerta de enlace traduce para cada ascendente, ya sea Amazon Bedrock, [Plataforma Claude en AWS](https://code.claude.com/docs/es/claude-platform-on-aws.md), Plataforma de Agentes de Google Cloud, Microsoft Foundry, o la API de Anthropic, con conmutación por error entre ellos. Puede cambiar regiones, proveedores u orden de conmutación por error sin que los desarrolladores lo noten o reconfiguren.

37 37 

38![Diagrama que muestra clientes de Claude Code y las pestañas Chat, Cowork y Code de Claude Desktop conectándose sobre HTTPS con tokens portadores a una puerta de enlace de aplicaciones Claude autohospedada dentro de su infraestructura, que inicia sesión de usuarios contra su IdP, almacena estado de autenticación en PostgreSQL, retransmite telemetría a su recopilador OTLP, y reenvía inferencia a Amazon Bedrock, Plataforma Claude en AWS, Google Cloud, Microsoft Foundry o la API de Anthropic](https://mintcdn.com/claude-code/VbyXug8hBU9UK6oT/images/claude-gateway-architecture.svg?fit=max\&auto=format\&n=VbyXug8hBU9UK6oT\&q=85\&s=9e4f1190fc56718144190a3db61c63af)38![Diagrama que muestra clientes de Claude Code y Claude Desktop conectándose sobre HTTPS con tokens portadores a un Claude apps gateway autohospedado dentro de tu infraestructura, que inicia la sesión de los usuarios contra tu IdP, almacena el estado de autenticación en PostgreSQL, retransmite telemetría a tu recopilador OTLP y reenvía la inferencia a Amazon Bedrock, Claude Platform on AWS, Google Cloud, Microsoft Foundry o la API de Anthropic](https://mintcdn.com/claude-code/VbyXug8hBU9UK6oT/images/claude-gateway-architecture.svg?fit=max\&auto=format\&n=VbyXug8hBU9UK6oT\&q=85\&s=9e4f1190fc56718144190a3db61c63af)

39 39 

40> [!NOTE]40> [!NOTE]

41>41>


350 350 

351### Entregar la política a las sesiones de Claude Desktop351### Entregar la política a las sesiones de Claude Desktop

352 352 

353Claude Desktop ejecuta sus pestañas Cowork y Code, además de la pestaña Chat cuando la activas, sobre sesiones de Claude Code integradas y envía sus solicitudes al modelo a través del gateway. Pasa la política a cada una de esas sesiones, construida a partir de la configuración que el gateway le sirve en `/user/bootstrap`: la lista de modelos permitidos, las herramientas deshabilitadas y la lista de permitidos de salida derivadas del bloque `cli` o `code` de la política coincidente, además de la [superposición `desktop`](https://code.claude.com/docs/es/claude-apps-gateway-config#claude-desktop-overlay).353Claude Desktop ejecuta sus pestañas Cowork y Code, además de Chat cuando lo habilitas, sobre sesiones integradas de Claude Code y envía sus solicitudes al modelo a través del gateway. Pasa la política a cada una de esas sesiones, construida a partir de la configuración que el gateway le sirve en `/user/bootstrap`: la lista de modelos permitidos, las herramientas deshabilitadas y la lista de destinos de salida permitidos derivadas del bloque `cli` o `code` de la política coincidente, además de la [superposición `desktop`](https://code.claude.com/docs/es/claude-apps-gateway-config#claude-desktop-overlay).

354 354 

355Las demás claves del bloque, como los hooks, `env` y las reglas de permisos con alcance como `Bash(npm *)`, llegan a los clientes que inician sesión a través de `/login`. En `code`, también llegan a la sesión de la pestaña Code cuando se cumplen las [condiciones para la pestaña Code](https://code.claude.com/docs/es/claude-apps-gateway-config.md#apply-code-settings-in-the-code-tab). No llegan a las sesiones de Cowork ni de Chat. Claude Desktop lee la URL del gateway de su propia configuración administrada e inicia sesión con su propio flujo, independiente de las claves `forceLoginMethod` y `forceLoginGatewayUrl` de [Establecer la URL del gateway](#set-the-gateway-url).355Las demás claves del bloque, como los hooks, `env` y las reglas de permisos con alcance como `Bash(npm *)`, llegan a los clientes que inician sesión a través de `/login`. En `code`, también llegan a la sesión de la pestaña Code cuando se cumplen las [condiciones para la pestaña Code](https://code.claude.com/docs/es/claude-apps-gateway-config.md#apply-code-settings-in-the-code-tab). No llegan a las sesiones de Cowork ni de Chat. Claude Desktop lee la URL del gateway de su propia configuración administrada e inicia sesión con su propio flujo, independiente de las claves `forceLoginMethod` y `forceLoginGatewayUrl` de [Establecer la URL del gateway](#set-the-gateway-url).

356 356 


480 480 

481Claude Desktop inicia la sesión del desarrollador a través del proveedor de identidad del gateway con el mismo paso de SSO en el navegador y luego obtiene su configuración del gateway en lugar de Anthropic. El acceso a los modelos y la política siguen las mismas reglas por grupo que la CLI. Un desarrollador que usa tanto la CLI como Claude Desktop inicia sesión en cada uno por separado; la sesión del gateway no se comparte entre ellos.481Claude Desktop inicia la sesión del desarrollador a través del proveedor de identidad del gateway con el mismo paso de SSO en el navegador y luego obtiene su configuración del gateway en lugar de Anthropic. El acceso a los modelos y la política siguen las mismas reglas por grupo que la CLI. Un desarrollador que usa tanto la CLI como Claude Desktop inicia sesión en cada uno por separado; la sesión del gateway no se comparte entre ellos.

482 482 

483Una vez conectado, Claude Desktop envía las solicitudes al modelo de todas las pestañas activadas a través del gateway. De forma predeterminada muestra las pestañas Cowork y Code. Para activar también la pestaña Chat, establece `chatTabEnabled` en `true` en la [configuración administrada](https://claude.com/docs/third-party/claude-desktop/configuration) de Claude Desktop, o en el [bloque `desktop`](https://code.claude.com/docs/es/claude-apps-gateway-config#claude-desktop-overlay) de la política en un gateway que ejecute Claude Code v2.1.227 o posterior.483Una vez conectado, Claude Desktop envía las solicitudes al modelo de todas las pestañas activadas a través del gateway. De forma predeterminada muestra las pestañas Cowork y Code. Para que también esté disponible Chat, establece `chatTabEnabled` en `true` en el [bloque `desktop`](https://code.claude.com/docs/es/claude-apps-gateway-config#claude-desktop-overlay) de la política en un gateway que ejecute Claude Code v2.1.227 o posterior. Con Cowork activado, Claude Desktop muestra entonces Chat y Cowork juntos en una sola pestaña.

484 484 

485### Pipelines de CI y máquinas remotas485### Pipelines de CI y máquinas remotas

486 486 


523| Reenvío de inferencia (Amazon Bedrock, Claude Platform en AWS, Agent Platform de Google Cloud, Microsoft Foundry, Anthropic) | Disponible | Con traducción de modelos por ascendente y conmutación por error. El ascendente de Amazon Bedrock utiliza el endpoint `bedrock-runtime` y la cadena de credenciales predeterminada de AWS. El [ascendente Amazon Bedrock Mantle](https://code.claude.com/docs/es/claude-apps-gateway-config.md#amazon-bedrock-mantle-endpoint) requiere Claude Code v2.1.283 o posterior en el servidor del gateway, y el [ascendente Claude Platform en AWS](https://code.claude.com/docs/es/claude-apps-gateway-config.md#claude-platform-on-aws) requiere v2.1.198 o posterior. |523| Reenvío de inferencia (Amazon Bedrock, Claude Platform en AWS, Agent Platform de Google Cloud, Microsoft Foundry, Anthropic) | Disponible | Con traducción de modelos por ascendente y conmutación por error. El ascendente de Amazon Bedrock utiliza el endpoint `bedrock-runtime` y la cadena de credenciales predeterminada de AWS. El [ascendente Amazon Bedrock Mantle](https://code.claude.com/docs/es/claude-apps-gateway-config.md#amazon-bedrock-mantle-endpoint) requiere Claude Code v2.1.283 o posterior en el servidor del gateway, y el [ascendente Claude Platform en AWS](https://code.claude.com/docs/es/claude-apps-gateway-config.md#claude-platform-on-aws) requiere v2.1.198 o posterior. |

524| Ventana de contexto de 1M tokens | Disponible | Los modelos Fable, Sonnet 5 y posteriores, y Opus 4.7 y posteriores se ejecutan con la ventana de 1M de forma predeterminada; consulta [Contexto extendido](https://code.claude.com/docs/es/model-config.md#extended-context). El valor predeterminado de 1M para los modelos Fable y Opus requiere Claude Code v2.1.287 o posterior en la máquina del desarrollador |524| Ventana de contexto de 1M tokens | Disponible | Los modelos Fable, Sonnet 5 y posteriores, y Opus 4.7 y posteriores se ejecutan con la ventana de 1M de forma predeterminada; consulta [Contexto extendido](https://code.claude.com/docs/es/model-config.md#extended-context). El valor predeterminado de 1M para los modelos Fable y Opus requiere Claude Code v2.1.287 o posterior en la máquina del desarrollador |

525| Acceso a modelos y configuración administrada por grupo de IdP | Disponible | El acceso a modelos se aplica del lado del servidor; la configuración administrada se entrega por grupo de IdP y la CLI la aplica en el [nivel de configuración administrada](https://code.claude.com/docs/es/settings.md#settings-precedence) |525| Acceso a modelos y configuración administrada por grupo de IdP | Disponible | El acceso a modelos se aplica del lado del servidor; la configuración administrada se entrega por grupo de IdP y la CLI la aplica en el [nivel de configuración administrada](https://code.claude.com/docs/es/settings.md#settings-precedence) |

526| Claude Desktop | Disponible con participación opcional | El gateway sirve la configuración de Claude Desktop en `/user/bootstrap` una vez que una política [participa con una clave `desktop`](https://code.claude.com/docs/es/claude-apps-gateway-config#claude-desktop-overlay), y Claude Desktop envía solicitudes de modelo desde sus pestañas Cowork y Code, y desde la pestaña Chat cuando la habilitas, a través del gateway. Para activar la pestaña Chat, consulta [Conectar Claude Desktop](#connect-claude-desktop). Requiere Claude Code v2.1.203 o posterior en el servidor del gateway. |526| Claude Desktop | Disponible con participación opcional | El gateway sirve la configuración de Claude Desktop en `/user/bootstrap` una vez que una política [participa con una clave `desktop`](https://code.claude.com/docs/es/claude-apps-gateway-config#claude-desktop-overlay), y Claude Desktop envía sus solicitudes de modelo a través del gateway. Para activar Chat, consulta [Conectar Claude Desktop](#connect-claude-desktop). Requiere Claude Code v2.1.203 o posterior en el servidor del gateway. |

527| Distribución de telemetría (OTLP/HTTP) | Disponible | Marcada con la identidad en cada exportación; codificaciones protobuf y JSON |527| Distribución de telemetría (OTLP/HTTP) | Disponible | Marcada con la identidad en cada exportación; codificaciones protobuf y JSON |

528| Proveedores de identidad OIDC | Disponible | Cualquier IdP compatible con OIDC; el gateway ejecuta el descubrimiento OIDC estándar y el flujo de código de autorización. Consulta [Configuración del proveedor de identidad](https://code.claude.com/docs/es/claude-apps-gateway-deploy.md#identity-provider-setup) para la configuración por IdP |528| Proveedores de identidad OIDC | Disponible | Cualquier IdP compatible con OIDC; el gateway ejecuta el descubrimiento OIDC estándar y el flujo de código de autorización. Consulta [Configuración del proveedor de identidad](https://code.claude.com/docs/es/claude-apps-gateway-deploy.md#identity-provider-setup) para la configuración por IdP |

529| Límites de gasto por usuario y por grupo | Disponible | Consulta [Límites de gasto](https://code.claude.com/docs/es/claude-apps-gateway-spend-limits.md) |529| Límites de gasto por usuario y por grupo | Disponible | Consulta [Límites de gasto](https://code.claude.com/docs/es/claude-apps-gateway-spend-limits.md) |

Details

201 201 

202Extraiga una sesión en la nube en su terminal usando cualquiera de estos:202Extraiga una sesión en la nube en su terminal usando cualquiera de estos:

203 203 

204* **Usando `--teleport`**: desde la línea de comandos, ejecute `claude --teleport` para un selector de sesión interactivo, o `claude --teleport <session-id>` para reanudar una sesión específica directamente. Si tiene cambios sin confirmar, se le pedirá que los guarde primero.204* **Usando `--teleport`**: desde la línea de comandos, ejecuta `claude --teleport` para abrir un selector de sesiones interactivo, o `claude --teleport <session-id>` para reanudar una sesión específica directamente. Si tienes cambios sin confirmar, se te pedirá que hagas stash de ellos primero. [`--resume`](https://code.claude.com/docs/es/sessions#resume-a-session) reabre una conversación del historial local de esta máquina y no enumera sesiones en la nube.

205* **Usando `/teleport`**: dentro de una sesión de CLI existente, ejecute `/teleport` o `/tp` para abrir el mismo selector de sesión sin reiniciar Claude Code.205* **Usando `/teleport`**: dentro de una sesión de CLI existente, ejecute `/teleport` o `/tp` para abrir el mismo selector de sesión sin reiniciar Claude Code.

206* **Desde `/tasks`**: ejecute `/tasks` para ver sus sesiones de fondo, luego presione `t` para teleportarse a una.206* **Desde `/tasks`**: ejecute `/tasks` para ver sus sesiones de fondo, luego presione `t` para teleportarse a una.

207* **Desde claude.ai/code**: seleccione **Abrir en > Terminal** desde el menú de sesión para copiar un comando que puede pegar en su terminal.207* **Desde claude.ai/code**: seleccione **Abrir en > Terminal** desde el menú de sesión para copiar un comando que puede pegar en su terminal.

208* **Desde dentro de la sesión en la nube**: escriba `/teleport` y Claude Code responde con el comando exacto `claude --teleport <session-id>` para esa sesión, listo para ejecutar desde un checkout del repositorio. Requiere Claude Code v2.1.223 o posterior en el entorno de la sesión.208* **Desde dentro de la sesión en la nube**: escriba `/teleport` y Claude Code responde con el comando exacto `claude --teleport <session-id>` para esa sesión, listo para ejecutar desde un checkout del repositorio. Requiere Claude Code v2.1.223 o posterior en el entorno de la sesión.

209 209 

210Cuando teleporta una sesión, Claude verifica que esté en el repositorio correcto, obtiene y verifica la rama de la sesión en la nube, y carga el historial de conversación completo en su terminal. La terminal obtiene su propia copia de la sesión: el nuevo trabajo allí permanece local y no aparece en la sesión en la nube en claude.ai o la aplicación móvil Claude. Para continuar dirigiendo desde su teléfono después de teleportar, inicie [`/remote-control`](https://code.claude.com/docs/es/remote-control) en la sesión local.210Cuando teleportas una sesión, Claude verifica que estés en el repositorio correcto, obtiene la rama de la sesión en la nube y hace checkout de ella, y carga la conversación en tu terminal.

211 211 

212`--teleport` es distinto de `--resume`. `--resume` reabre una conversación del historial local de esta máquina y no enumera sesiones en la nube; `--teleport` extrae una sesión en la nube y su rama.212> [!NOTE]

213>

214> Si Claude Code ha [compactado](https://code.claude.com/docs/es/context-window.md#what-survives-compaction) la sesión en la nube, lo que hace automáticamente en una sesión larga, los mensajes anteriores que resumió no se copian a tu terminal. Claude continúa a partir del resumen. Para leer los mensajes originales, desplázate hacia arriba en la sesión en la nube en claude.ai o en la aplicación móvil Claude.

215 

216La terminal obtiene su propia copia de la sesión: el nuevo trabajo allí permanece local y no aparece en la sesión en la nube en claude.ai ni en la aplicación móvil Claude. Para seguir dirigiendo desde tu teléfono después de teleportar, inicia [`/remote-control`](https://code.claude.com/docs/es/remote-control) en la sesión local.

213 217 

214#### Requisitos de teleportación218#### Requisitos de teleportación

215 219 


495* **Rate limits**: las sesiones en la nube comparten los rate limits con todo otro uso de Claude y Claude Code dentro de tu cuenta. Ejecutar múltiples tareas en paralelo consume proporcionalmente más de tus rate limits.499* **Rate limits**: las sesiones en la nube comparten los rate limits con todo otro uso de Claude y Claude Code dentro de tu cuenta. Ejecutar múltiples tareas en paralelo consume proporcionalmente más de tus rate limits.

496* **Límites de tiempo**: los comandos que Claude ejecuta y los hooks SessionStart tienen tiempos de espera predeterminados que puede cambiar, y un script de configuración se almacena en caché solo cuando se completa en aproximadamente cinco minutos. Consulte [Límites de tiempo](https://code.claude.com/docs/es/cloud-environments.md#time-limits)500* **Límites de tiempo**: los comandos que Claude ejecuta y los hooks SessionStart tienen tiempos de espera predeterminados que puede cambiar, y un script de configuración se almacena en caché solo cuando se completa en aproximadamente cinco minutos. Consulte [Límites de tiempo](https://code.claude.com/docs/es/cloud-environments.md#time-limits)

497* **Autenticación de repositorio**: solo puede extraer una sesión en la nube a su terminal cuando está autenticado en la misma cuenta501* **Autenticación de repositorio**: solo puede extraer una sesión en la nube a su terminal cuando está autenticado en la misma cuenta

498* **Restricciones de plataforma**: la clonación de repositorio y la creación de solicitudes de extracción requieren GitHub. Las instancias autohospedadas de [GitHub Enterprise Server](https://code.claude.com/docs/es/github-enterprise-server.md) son compatibles con planes de Team y Enterprise. Puede enviar un repositorio de GitLab, Bitbucket u otro que no sea GitHub a una sesión en la nube como un [paquete local](#send-local-repositories-without-github) estableciendo `CCR_FORCE_BUNDLE=1`, pero la sesión no puede insertar resultados de vuelta a ese remoto502* **Restricciones de plataforma**: la clonación de repositorios en entornos alojados por Anthropic y la creación de pull requests requieren GitHub. Las instancias autohospedadas de [GitHub Enterprise Server](https://code.claude.com/docs/es/github-enterprise-server.md) son compatibles con planes de Team y Enterprise. Puedes enviar un repositorio de GitLab, Bitbucket u otro que no sea GitHub a una sesión en la nube como un [paquete local](#send-local-repositories-without-github) estableciendo `CCR_FORCE_BUNDLE=1`, pero la sesión no puede enviar resultados de vuelta a ese remoto

503 * **Entornos autohospedados**: para un repositorio en otro host de Git, consulta los [requisitos para iniciar una sesión con `--environment`](https://code.claude.com/docs/es/self-hosted-environments-deploy#start-a-session-on-a-repository-outside-github).

499* **Lista de permitidos de IP de la organización**: las sesiones en la nube llaman a la API de Anthropic desde infraestructura administrada por Anthropic, no desde tu red, mientras que las sesiones en un [entorno autohospedado](https://code.claude.com/docs/es/self-hosted-environments) la llaman desde tu propia red. Si tu organización tiene habilitada la [lista de permitidos de IP](https://support.claude.com/en/articles/13200993-restrict-access-to-claude-with-ip-allowlisting), cada sesión en la nube alojada por Anthropic falla con un error de autenticación.504* **Lista de permitidos de IP de la organización**: las sesiones en la nube llaman a la API de Anthropic desde infraestructura administrada por Anthropic, no desde tu red, mientras que las sesiones en un [entorno autohospedado](https://code.claude.com/docs/es/self-hosted-environments) la llaman desde tu propia red. Si tu organización tiene habilitada la [lista de permitidos de IP](https://support.claude.com/en/articles/13200993-restrict-access-to-claude-with-ip-allowlisting), cada sesión en la nube alojada por Anthropic falla con un error de autenticación.

500 * **Code Review y tareas programadas**: lo mismo se aplica a [Code Review](https://code.claude.com/docs/es/code-review.md) y a las [tareas programadas en la nube](https://code.claude.com/docs/es/routines.md) que se ejecutan en entornos alojados por Anthropic. Una tarea programada enrutada a un entorno autohospedado llama a la API desde tu propia red.505 * **Code Review y tareas programadas**: lo mismo se aplica a [Code Review](https://code.claude.com/docs/es/code-review.md) y a las [tareas programadas en la nube](https://code.claude.com/docs/es/routines.md) que se ejecutan en entornos alojados por Anthropic. Una tarea programada enrutada a un entorno autohospedado llama a la API desde tu propia red.

501 * **Obtener una exención**: contacta al [soporte de Anthropic](https://support.claude.com/) para eximir los servicios alojados por Anthropic de la lista de permitidos de IP de tu organización.506 * **Obtener una exención**: contacta al [soporte de Anthropic](https://support.claude.com/) para eximir los servicios alojados por Anthropic de la lista de permitidos de IP de tu organización.

Details

8 8 

9Claude Code lee instrucciones, configuración, skills, subagents y memoria desde su directorio de proyecto y desde `~/.claude` en su directorio de inicio. Confirme archivos de proyecto en git para compartirlos con su equipo; los archivos en `~/.claude` son configuración personal que se aplica en todos sus proyectos.9Claude Code lee instrucciones, configuración, skills, subagents y memoria desde su directorio de proyecto y desde `~/.claude` en su directorio de inicio. Confirme archivos de proyecto en git para compartirlos con su equipo; los archivos en `~/.claude` son configuración personal que se aplica en todos sus proyectos.

10 10 

11En Windows, `~/.claude` se resuelve a `%USERPROFILE%\.claude`. Si establece [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/es/env-vars), cada ruta `~/.claude` en esta página vive bajo ese directorio en su lugar.11En Windows, `~/.claude` se resuelve a `%USERPROFILE%\.claude`. Si estableces [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/es/env-vars), cada ruta `~/.claude` en esta página se ubica en ese directorio en su lugar. Lo mismo se aplica a `.claude.json`, que de lo contrario se encuentra en `~/.claude.json`.

12 12 

13La mayoría de los usuarios solo editan `CLAUDE.md` y `settings.json`. Si tu repositorio ya tiene un `AGENTS.md` para otros agentes de codificación, Claude Code [puede leerlo](https://code.claude.com/docs/es/memory.md#agents-md) en lugar de un `CLAUDE.md`. El resto del directorio es opcional: agrega skills, reglas o subagentes según los necesites.13La mayoría de los usuarios solo editan `CLAUDE.md` y `settings.json`. Si tu repositorio ya tiene un `AGENTS.md` para otros agentes de codificación, Claude Code [puede leerlo](https://code.claude.com/docs/es/memory.md#agents-md) en lugar de un `CLAUDE.md`. El resto del directorio es opcional: agrega skills, reglas o subagentes según los necesites.

14 14 


76| [`agents/*.md`](#ce-agents) | Proyecto y global | ✓ | Definiciones de subagentes con su propio prompt y herramientas | [Subagentes](https://code.claude.com/docs/es/sub-agents.md) |76| [`agents/*.md`](#ce-agents) | Proyecto y global | ✓ | Definiciones de subagentes con su propio prompt y herramientas | [Subagentes](https://code.claude.com/docs/es/sub-agents.md) |

77| [`workflows/*.js`](#ce-workflows) | Proyecto y global | ✓ | Scripts de flujo de trabajo dinámicos escritos por Claude y guardados desde `/workflows`; cada archivo se convierte en un comando `/<name>` | [Flujos de trabajo dinámicos](https://code.claude.com/docs/es/workflows.md) |77| [`workflows/*.js`](#ce-workflows) | Proyecto y global | ✓ | Scripts de flujo de trabajo dinámicos escritos por Claude y guardados desde `/workflows`; cada archivo se convierte en un comando `/<name>` | [Flujos de trabajo dinámicos](https://code.claude.com/docs/es/workflows.md) |

78| [`agent-memory/<name>/`](#ce-agent-memory) | Proyecto y global | ✓ | Memoria persistente para subagentes | [Memoria persistente](https://code.claude.com/docs/es/sub-agents.md#enable-persistent-memory) |78| [`agent-memory/<name>/`](#ce-agent-memory) | Proyecto y global | ✓ | Memoria persistente para subagentes | [Memoria persistente](https://code.claude.com/docs/es/sub-agents.md#enable-persistent-memory) |

79| [`~/.claude.json`](#ce-claude-json) | Solo global | | Estado de la aplicación, detalles de la cuenta, alternancias de interfaz de usuario, servidores MCP personales | [Configuración global](https://code.claude.com/docs/es/settings-reference.md#global-config-settings) |79| [`~/.claude.json`](#ce-claude-json) | Solo global | | Estado de la aplicación, detalles de la cuenta, alternancias de interfaz de usuario, servidores MCP personales. Si no existe, Claude Code lo crea cuando inicias una sesión o ejecutas un subcomando como `claude auth status`, pero no para `--version` ni `--help`. | [Configuración global](https://code.claude.com/docs/es/settings-reference.md#global-config-settings) |

80| [`projects/<project>/memory/`](#ce-global-projects) | Solo global | | Memoria automática: notas de Claude para sí mismo en todas las sesiones | [Memoria automática](https://code.claude.com/docs/es/memory.md#auto-memory) |80| [`projects/<project>/memory/`](#ce-global-projects) | Solo global | | Memoria automática: notas de Claude para sí mismo en todas las sesiones | [Memoria automática](https://code.claude.com/docs/es/memory.md#auto-memory) |

81| [`keybindings.json`](#ce-keybindings) | Solo global | | Atajos de teclado personalizados | [Atajos de teclado](https://code.claude.com/docs/es/keybindings.md) |81| [`keybindings.json`](#ce-keybindings) | Solo global | | Atajos de teclado personalizados | [Atajos de teclado](https://code.claude.com/docs/es/keybindings.md) |

82| [`themes/*.json`](#ce-themes) | Solo global | | Temas de color personalizados | [Temas personalizados](https://code.claude.com/docs/es/terminal-config.md#create-a-custom-theme) |82| [`themes/*.json`](#ce-themes) | Solo global | | Temas de color personalizados | [Temas personalizados](https://code.claude.com/docs/es/terminal-config.md#create-a-custom-theme) |

Details

411 411 

412Un proyecto utiliza tus límites más rápido que una sola sesión, y en un plan Pro en particular deberías esperar alcanzar tu límite más pronto en días que ejecutes uno. Estas son las partes de un proyecto que utilizan tu plan:412Un proyecto utiliza tus límites más rápido que una sola sesión, y en un plan Pro en particular deberías esperar alcanzar tu límite más pronto en días que ejecutes uno. Estas son las partes de un proyecto que utilizan tu plan:

413 413 

414* **Hilos en ejecución**: cada uno es una sesión completa, y varios pueden ejecutarse a la vez. No hay un número fijo; Claude comienza tantos como el trabajo requiera, y un límite que [pidas](#tune-how-claude-runs-a-project) es una preferencia en lugar de un límite. El límite aplicado es 200 hilos nuevos por día en todos tus proyectos.414* **Hilos en ejecución**: cada uno es una sesión completa, y varios pueden ejecutarse a la vez. No hay un número fijo; Claude comienza tantos como el trabajo requiera, y un límite que [pidas](#tune-how-claude-runs-a-project) es una preferencia en lugar de un límite. El límite aplicado es 500 hilos nuevos por día en todos tus proyectos.

415* **La conversación**: Claude utiliza tokens propios leyendo lo que los hilos reportan y decidiendo qué hacer a continuación.415* **La conversación**: Claude utiliza tokens propios leyendo lo que los hilos reportan y decidiendo qué hacer a continuación.

416* **Hilos observando una solicitud de extracción**: un hilo inactivo se despierta y utiliza tu plan de nuevo cuando CI falla o llega un comentario de revisión en su solicitud de extracción. Para detener eso, pídele en el hilo que deje de observar la solicitud de extracción.416* **Hilos observando una solicitud de extracción**: un hilo inactivo se despierta y utiliza tu plan de nuevo cuando CI falla o llega un comentario de revisión en su solicitud de extracción. Para detener eso, pídele en el hilo que deje de observar la solicitud de extracción.

417 417 

Details

25 25 

26> [!NOTE]26> [!NOTE]

27>27>

28> Las sesiones de [Remote Control](https://code.claude.com/docs/es/remote-control.md) conectan las interfaces web y móvil a una sesión en su propia máquina, que utiliza la red y los archivos de su máquina, no un entorno en la nube. Las sesiones de canales de Claude Tag utilizan entornos a nivel de organización únicamente, ya sean [entornos compartidos](#organization-shared-environments) o [entornos autohospedados](https://code.claude.com/docs/es/self-hosted-environments).28> Las sesiones de [Remote Control](https://code.claude.com/docs/es/remote-control.md) conectan las interfaces web y móvil a una sesión en tu propia máquina, que utiliza la red y los archivos de tu máquina, no un entorno en la nube. Para elegir el entorno que utiliza un canal de Claude Tag, consulta [Establecer el entorno que utiliza un canal de Claude Tag](#set-the-environment-a-claude-tag-channel-uses).

29 29 

30## El entorno Default30## El entorno Default

31 31 

Details

64| PRs reviewed | Recuento diario de pull requests revisados durante el intervalo de tiempo seleccionado |64| PRs reviewed | Recuento diario de pull requests revisados durante el intervalo de tiempo seleccionado |

65| Code Review cost | Gasto de Code Review en lo que va del mes |65| Code Review cost | Gasto de Code Review en lo que va del mes |

66| Feedback | Recuento de comentarios de revisión que se resolvieron automáticamente porque un desarrollador abordó el problema |66| Feedback | Recuento de comentarios de revisión que se resolvieron automáticamente porque un desarrollador abordó el problema |

67| Code Review findings | Recuento diario de [hallazgos por nivel de gravedad](https://code.claude.com/docs/es/code-review-pull-requests.md#severity-levels), de las revisiones que Claude publicó durante el intervalo de tiempo seleccionado |

67| Repository breakdown | Recuentos por repositorio de PRs revisados, comentarios resueltos y ejecuciones de revisión, con costo estimado y una vista por PR |68| Repository breakdown | Recuentos por repositorio de PRs revisados, comentarios resueltos y ejecuciones de revisión, con costo estimado y una vista por PR |

68 69 

69La tarjeta Code Review cost muestra un monto solo cuando está seleccionado el mes actual. Las cifras de costo en el panel de análisis pueden diferir de tu factura. Los costos de Repository breakdown se estiman a precio de lista, antes de cualquier descuento o crédito, y cubren solo las revisiones que Claude publicó en un pull request. Para conocer el gasto exacto según la factura, consulta tu factura de Anthropic.70La tarjeta Code Review cost muestra un monto solo cuando está seleccionado el mes actual. Las cifras de costo en el panel de análisis pueden diferir de tu factura. Los costos de Repository breakdown se estiman a precio de lista, antes de cualquier descuento o crédito, y cubren solo las revisiones que Claude publicó en un pull request. Para conocer el gasto exacto según la factura, consulta tu factura de Anthropic.

commands.md +2 −1

Details

111| `/mcp [reconnect (<server>\|all)\|enable\|disable [<server>\|all]]` | Administra las conexiones de servidores MCP y la autenticación OAuth. Ejecútalo sin argumento para abrir la lista interactiva, o pasa `reconnect`, `enable` o `disable` con un nombre de servidor o `all` para cambiar el estado de conexión sin abrirla. `reconnect all` [reintenta cada servidor que falló o necesita autenticación](https://code.claude.com/docs/es/mcp.md#retry-failed-servers-yourself). En modo no interactivo (`-p`), ejecutarlo sin argumento imprime un resumen en texto del estado de los servidores en lugar de abrir la lista |111| `/mcp [reconnect (<server>\|all)\|enable\|disable [<server>\|all]]` | Administra las conexiones de servidores MCP y la autenticación OAuth. Ejecútalo sin argumento para abrir la lista interactiva, o pasa `reconnect`, `enable` o `disable` con un nombre de servidor o `all` para cambiar el estado de conexión sin abrirla. `reconnect all` [reintenta cada servidor que falló o necesita autenticación](https://code.claude.com/docs/es/mcp.md#retry-failed-servers-yourself). En modo no interactivo (`-p`), ejecutarlo sin argumento imprime un resumen en texto del estado de los servidores en lugar de abrir la lista |

112| `/memory` | Edita archivos `CLAUDE.md`, habilita o deshabilita la [memoria automática](https://code.claude.com/docs/es/memory.md#auto-memory) y consulta las entradas de memoria automática |112| `/memory` | Edita archivos `CLAUDE.md`, habilita o deshabilita la [memoria automática](https://code.claude.com/docs/es/memory.md#auto-memory) y consulta las entradas de memoria automática |

113| `/mobile` | Muestra un código QR para descargar la app móvil de Claude. Alias: `/ios`, `/android` |113| `/mobile` | Muestra un código QR para descargar la app móvil de Claude. Alias: `/ios`, `/android` |

114| `/model [model]` | Cambia el modelo de IA y guárdalo como predeterminado para nuevas sesiones. En los modelos que lo admiten, usa las flechas izquierda/derecha para [ajustar el nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level). Sin argumento, abre un selector; presiona `s` en una fila para cambiar solo para la sesión actual. Consulta [cuándo Claude Code te pide confirmar el cambio](https://code.claude.com/docs/es/prompt-caching.md#switching-models). Una vez que confirmas el cambio, si Claude Code lo pide, Claude Code aplica el cambio sin esperar a que termine la respuesta actual. Antes de v2.1.242, Claude Code decidía, a partir de un feature flag que obtenía de Anthropic, si ejecutar el comando a mitad del turno o ponerlo en cola hasta que terminara el turno, y siempre lo ponía en cola en una sesión que no [obtiene feature flags](https://code.claude.com/docs/es/env-vars.md#features-that-need-feature-flag-fetching), como con un [proveedor externo](https://code.claude.com/docs/es/third-party-integrations.md). 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 predeterminado; requiere Claude Code v2.1.205 o posterior |114| `/model [model]` | Cambia el modelo de IA y guárdalo como predeterminado para nuevas sesiones. En los modelos que lo admiten, usa las flechas izquierda/derecha para [ajustar el nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level). Sin argumento, abre un selector; presiona `s` en una fila para cambiar solo para la sesión actual. Consulta [cuándo empieza el nuevo modelo](https://code.claude.com/docs/es/interactive-mode.md#when-claude-code-sends-what-you-queued). Antes de v2.1.242, podía esperar. Con `-p`, pasa un argumento de modelo, que no se guarda como predeterminado; requiere v2.1.205 o posterior |

115| `/output-style [style]` | Enumera los [estilos de salida](https://code.claude.com/docs/es/output-styles.md) o cambia a uno, por ejemplo `/output-style concise`. Consulta [Cambiar tu estilo de salida](https://code.claude.com/docs/es/output-styles.md#change-your-output-style). Requiere Claude Code v2.1.269 o posterior |115| `/output-style [style]` | Enumera los [estilos de salida](https://code.claude.com/docs/es/output-styles.md) o cambia a uno, por ejemplo `/output-style concise`. Consulta [Cambiar tu estilo de salida](https://code.claude.com/docs/es/output-styles.md#change-your-output-style). Requiere Claude Code v2.1.269 o posterior |

116| `/passes` | Comparte una semana gratis de Claude Code con amigos. Solo visible si tu cuenta es elegible |116| `/passes` | Comparte una semana gratis de Claude Code con amigos. Solo visible si tu cuenta es elegible |

117| `/permissions` | Administra las reglas de permitir, preguntar y denegar para los permisos de herramientas. Abre un diálogo interactivo donde puedes ver reglas por alcance, agregar o eliminar reglas, administrar directorios de trabajo y revisar [denegaciones recientes del modo automático](https://code.claude.com/docs/es/auto-mode-config.md#review-denials). También puedes ver y editar las [reglas del clasificador del modo automático](https://code.claude.com/docs/es/auto-mode-config.md#edit-rules-from-permissions) desde la pestaña **Auto mode** del diálogo. Cuando lo ejecutas mientras Claude está respondiendo, Claude Code abre el diálogo de inmediato y aplica tus cambios a partir de la siguiente llamada a herramienta de Claude en el mismo turno. Antes de v2.1.234, Claude Code ponía el comando en cola hasta que terminaba el turno. Alias: `/allowed-tools` |117| `/permissions` | Administra las reglas de permitir, preguntar y denegar para los permisos de herramientas. Abre un diálogo interactivo donde puedes ver reglas por alcance, agregar o eliminar reglas, administrar directorios de trabajo y revisar [denegaciones recientes del modo automático](https://code.claude.com/docs/es/auto-mode-config.md#review-denials). También puedes ver y editar las [reglas del clasificador del modo automático](https://code.claude.com/docs/es/auto-mode-config.md#edit-rules-from-permissions) desde la pestaña **Auto mode** del diálogo. Cuando lo ejecutas mientras Claude está respondiendo, Claude Code abre el diálogo de inmediato y aplica tus cambios a partir de la siguiente llamada a herramienta de Claude en el mismo turno. Antes de v2.1.234, Claude Code ponía el comando en cola hasta que terminaba el turno. Alias: `/allowed-tools` |


130| `/remote-control` | Haz que esta sesión esté disponible para [Remote Control](https://code.claude.com/docs/es/remote-control.md) desde claude.ai. Ejecutarlo sin haber iniciado sesión imprime que Remote Control requiere una suscripción a claude.ai y te indica cómo iniciar sesión. Alias: `/rc` |130| `/remote-control` | Haz que esta sesión esté disponible para [Remote Control](https://code.claude.com/docs/es/remote-control.md) desde claude.ai. Ejecutarlo sin haber iniciado sesión imprime que Remote Control requiere una suscripción a claude.ai y te indica cómo iniciar sesión. Alias: `/rc` |

131| `/remote-env` | Elige el [entorno en la nube](https://code.claude.com/docs/es/cloud-environments.md#select-an-environment-from-the-cli) predeterminado para las sesiones en la nube que inicias desde la CLI |131| `/remote-env` | Elige el [entorno en la nube](https://code.claude.com/docs/es/cloud-environments.md#select-an-environment-from-the-cli) predeterminado para las sesiones en la nube que inicias desde la CLI |

132| `/rename [name]` | Cambia el nombre de la sesión actual y muestra el nombre en la barra del prompt. Sin un nombre, genera uno automáticamente a partir del historial de la conversación. También disponible en modo no interactivo (`-p`). Desde cualquier superficie de cambio de nombre, incluidos claude.ai y la app de escritorio, Claude Code reemplaza los caracteres de control e invisibles del nuevo nombre por espacios y limita el nombre a 200 caracteres. Si el nombre queda vacío una vez eliminados los caracteres invisibles, Claude Code lo rechaza y muestra `That name is empty once invisible characters are removed. Usage: /rename <name>`. El reemplazo de caracteres y el límite de longitud requieren Claude Code v2.1.221 o posterior |132| `/rename [name]` | Cambia el nombre de la sesión actual y muestra el nombre en la barra del prompt. Sin un nombre, genera uno automáticamente a partir del historial de la conversación. También disponible en modo no interactivo (`-p`). Desde cualquier superficie de cambio de nombre, incluidos claude.ai y la app de escritorio, Claude Code reemplaza los caracteres de control e invisibles del nuevo nombre por espacios y limita el nombre a 200 caracteres. Si el nombre queda vacío una vez eliminados los caracteres invisibles, Claude Code lo rechaza y muestra `That name is empty once invisible characters are removed. Usage: /rename <name>`. El reemplazo de caracteres y el límite de longitud requieren Claude Code v2.1.221 o posterior |

133| `/restart` | Reinicia Claude Code y reanuda esta sesión, lo que aplica una actualización instalada. Ejecútalo cuando el pie de página lo ofrezca después de que se instale una actualización. Requiere un plan Pro o Max y una instalación nativa en macOS o Linux, no en WSL. Requiere Claude Code v2.1.288 o posterior. Alias: `/update` |

133| `/resume [session]` | Reanuda una conversación por ID o nombre, o abre el selector de sesiones. Las [sesiones en segundo plano](https://code.claude.com/docs/es/agent-view.md) aparecen en el selector marcadas con `bg`. Reanudar una que todavía se está ejecutando, desde el selector o por ID o nombre, [abre esa sesión](https://code.claude.com/docs/es/sessions.md#resume-a-running-background-session): tu conversación actual pasa a segundo plano y esta terminal se adjunta a la que está en ejecución. Presiona `←` en un prompt vacío para volver a la vista de agentes, que también enumera la conversación que dejaste. Antes de v2.1.285, Claude Code se negaba y te indicaba que abrieras la sesión con `claude attach` o que primero la detuvieras. Alias: `/continue` |134| `/resume [session]` | Reanuda una conversación por ID o nombre, o abre el selector de sesiones. Las [sesiones en segundo plano](https://code.claude.com/docs/es/agent-view.md) aparecen en el selector marcadas con `bg`. Reanudar una que todavía se está ejecutando, desde el selector o por ID o nombre, [abre esa sesión](https://code.claude.com/docs/es/sessions.md#resume-a-running-background-session): tu conversación actual pasa a segundo plano y esta terminal se adjunta a la que está en ejecución. Presiona `←` en un prompt vacío para volver a la vista de agentes, que también enumera la conversación que dejaste. Antes de v2.1.285, Claude Code se negaba y te indicaba que abrieras la sesión con `claude attach` o que primero la detuvieras. Alias: `/continue` |

134| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [--max-findings n\|all\|default] [pr#\|branch\|path]` | Alias de [`/code-review`](https://code.claude.com/docs/es/code-review-local): revisa el diff actual, o un número de PR, una rama o una ruta que pases, como `/review 1234`, y admite los mismos niveles de esfuerzo y flags. Si no se indica un nivel, la revisión reutiliza el último nivel de `low` a `max` que escribiste; consulta [Revisar localmente con `/code-review`](https://code.claude.com/docs/es/code-review-local) para conocer las reglas exactas. Para una revisión profunda en la nube, usa [`/code-review ultra`](https://code.claude.com/docs/es/ultrareview). Antes de v2.1.223, `/review` era un comando independiente que ejecutaba una revisión de una sola pasada y de solo lectura de un pull request de GitHub por número, y enumeraba los PR abiertos para elegir cuando se ejecutaba sin argumento; de v2.1.186 a v2.1.201, ejecutaba el mismo motor multiagente que `/code-review medium` |135| `/review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [--max-findings n\|all\|default] [pr#\|branch\|path]` | Alias de [`/code-review`](https://code.claude.com/docs/es/code-review-local): revisa el diff actual, o un número de PR, una rama o una ruta que pases, como `/review 1234`, y admite los mismos niveles de esfuerzo y flags. Si no se indica un nivel, la revisión reutiliza el último nivel de `low` a `max` que escribiste; consulta [Revisar localmente con `/code-review`](https://code.claude.com/docs/es/code-review-local) para conocer las reglas exactas. Para una revisión profunda en la nube, usa [`/code-review ultra`](https://code.claude.com/docs/es/ultrareview). Antes de v2.1.223, `/review` era un comando independiente que ejecutaba una revisión de una sola pasada y de solo lectura de un pull request de GitHub por número, y enumeraba los PR abiertos para elegir cuando se ejecutaba sin argumento; de v2.1.186 a v2.1.201, ejecutaba el mismo motor multiagente que `/code-review medium` |

135| `/rewind` | Retrocede la conversación y/o el código a un punto anterior, o resume desde un mensaje seleccionado. Consulta [checkpointing](https://code.claude.com/docs/es/checkpointing.md). Alias: `/checkpoint`, `/undo` |136| `/rewind` | Retrocede la conversación y/o el código a un punto anterior, o resume desde un mensaje seleccionado. Consulta [checkpointing](https://code.claude.com/docs/es/checkpointing.md). Alias: `/checkpoint`, `/undo` |

costs.md +1 −6

Details

375 375 

376## Uso de tokens en segundo plano376## Uso de tokens en segundo plano

377 377 

378Claude Code usa tokens para algunas funcionalidades en segundo plano incluso cuando está inactivo:378La recapitulación de sesión y la compactación por inactividad pueden usar tokens mientras estás inactivo. Consulta [recapitulación de sesión](https://code.claude.com/docs/es/interactive-mode.md#session-recap) y [compactación por inactividad](https://code.claude.com/docs/es/settings-reference.md#idlecompaction) para saber cuándo se ejecuta cada una y cómo desactivarla.

379 

380* **Summarización de conversación**: Trabajos en segundo plano que resumen conversaciones anteriores para la característica `claude --resume`

381* **Procesamiento de comandos**: Algunos comandos como `/usage` pueden generar solicitudes para verificar el estado

382 

383Estos procesos en segundo plano consumen una pequeña cantidad de tokens (típicamente menos de \$0.04 por sesión) incluso sin interacción activa.

384 379 

385Cuando las sugerencias de prompt están activadas, Claude Code también envía una solicitud breve al modelo que utiliza su sesión después de que Claude responde, para [sugerir su próximo prompt](https://code.claude.com/docs/es/interactive-mode.md#prompt-suggestions). Esa solicitud reutiliza la caché de prompt de la conversación, por lo que es principalmente lecturas de caché más algunos tokens de salida. Claude Code [omite esto cuando su cuenta está cerca o en su límite de uso](https://code.claude.com/docs/es/interactive-mode.md#when-claude-code-skips-suggestions). Para detener estas solicitudes, [desactive las sugerencias de prompt](https://code.claude.com/docs/es/interactive-mode.md#turn-prompt-suggestions-off).380Cuando las sugerencias de prompt están activadas, Claude Code también envía una solicitud breve al modelo que utiliza su sesión después de que Claude responde, para [sugerir su próximo prompt](https://code.claude.com/docs/es/interactive-mode.md#prompt-suggestions). Esa solicitud reutiliza la caché de prompt de la conversación, por lo que es principalmente lecturas de caché más algunos tokens de salida. Claude Code [omite esto cuando su cuenta está cerca o en su límite de uso](https://code.claude.com/docs/es/interactive-mode.md#when-claude-code-skips-suggestions). Para detener estas solicitudes, [desactive las sugerencias de prompt](https://code.claude.com/docs/es/interactive-mode.md#turn-prompt-suggestions-off).

386 381 

desktop.md +18 −0

Details

1930* **Windows**: configura a través del registro en `SOFTWARE\Policies\Claude`1930* **Windows**: configura a través del registro en `SOFTWARE\Policies\Claude`

1931* **Linux**: configura a través de un archivo propiedad de root en `/etc/claude-desktop/managed-settings.json`, que contiene las claves de políticas como un objeto JSON. Desktop rechaza el archivo si alguien que no sea root puede escribir en él o en su carpeta. Es un archivo distinto del [archivo de configuración administrada](https://code.claude.com/docs/es/managed-settings.md) de Claude Code.1931* **Linux**: configura a través de un archivo propiedad de root en `/etc/claude-desktop/managed-settings.json`, que contiene las claves de políticas como un objeto JSON. Desktop rechaza el archivo si alguien que no sea root puede escribir en él o en su carpeta. Es un archivo distinto del [archivo de configuración administrada](https://code.claude.com/docs/es/managed-settings.md) de Claude Code.

1932 1932 

1933#### Restringir el inicio de sesión a tu organización

1934 

1935Para restringir qué organizaciones de claude.ai pueden iniciar sesión en Claude Desktop, establece `forceLoginOrgUUID` en la política de Claude Desktop.

1936 

1937La clave requiere Claude Desktop v1.2581.0 o posterior.

1938 

1939En Linux, un archivo de políticas que establece solo esta clave queda así:

1940 

1941```json /etc/claude-desktop/managed-settings.json theme={null}

1942{

1943 "forceLoginOrgUUID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

1944}

1945```

1946 

1947Reemplaza el marcador de posición con el ID de tu organización de claude.ai, que se muestra en la [configuración de administración de claude.ai](https://claude.ai/admin-settings/organization). Es el mismo ID que acepta el ajuste [`forceLoginOrgUUID`](https://code.claude.com/docs/es/settings-reference#forceloginorguuid) de Claude Code. Para ver ejemplos de macOS y Windows que establecen esta clave, consulta [Deploy the Claude Desktop policy](https://claude.com/docs/cowork/hipaa-setup#deploy-the-claude-desktop-policy) en la guía de Cowork para organizaciones preparadas para HIPAA.

1948 

1949Si estableces `forceLoginMethod` y `forceLoginOrgUUID` en la [configuración administrada](https://code.claude.com/docs/es/managed-settings.md) de Claude Code, no cambias la pantalla de inicio de sesión de Claude Desktop.

1950 

1933### Requisitos de acceso a la red1951### Requisitos de acceso a la red

1934 1952 

1935Desktop carga su código de aplicación y el contenido de usuario desde hosts de CDN de Anthropic.1953Desktop carga su código de aplicación y el contenido de usuario desde hosts de CDN de Anthropic.

env-vars.md +2 −1

Details

428| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Límite superior en milisegundos de cuánto tiempo espera un agente de [flujo de trabajo](https://code.claude.com/docs/es/workflows.md) a que comience la primera respuesta de un agente hermano con el mismo prefijo antes de enviar su propia primera solicitud. Cuando una distribución en abanico (fan-out) inicia varios agentes que comparten un [prefijo de caché de prompts](https://code.claude.com/docs/es/workflows.md#prompt-caching-in-a-fan-out), Claude Code retiene a todos los agentes excepto al primero hasta este tiempo para que el resto lea el prefijo en caché en lugar de que cada uno lo procese sin caché. Valor predeterminado: `5000`. Establécelo en `0` para desactivar la espera. Cuando `DISABLE_PROMPT_CACHING` está establecida, los agentes nunca esperan. Requiere Claude Code v2.1.229 o posterior |428| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Límite superior en milisegundos de cuánto tiempo espera un agente de [flujo de trabajo](https://code.claude.com/docs/es/workflows.md) a que comience la primera respuesta de un agente hermano con el mismo prefijo antes de enviar su propia primera solicitud. Cuando una distribución en abanico (fan-out) inicia varios agentes que comparten un [prefijo de caché de prompts](https://code.claude.com/docs/es/workflows.md#prompt-caching-in-a-fan-out), Claude Code retiene a todos los agentes excepto al primero hasta este tiempo para que el resto lea el prefijo en caché en lugar de que cada uno lo procese sin caché. Valor predeterminado: `5000`. Establécelo en `0` para desactivar la espera. Cuando `DISABLE_PROMPT_CACHING` está establecida, los agentes nunca esperan. Requiere Claude Code v2.1.229 o posterior |

429| `CLAUDE_CODE_YOU_SHOULD_KNOW_DEBUG` | Establécela en `1` para mostrar, encima del prompt, una línea por cada una de las últimas tres comprobaciones que hizo el [mod You should know](https://code.claude.com/docs/es/interactive-mode.md#you-should-know-suggestions) en esta sesión. Úsala para confirmar que el mod está haciendo comprobaciones cuando no aparece ninguna nota. Requiere Claude Code v2.1.287 o posterior |429| `CLAUDE_CODE_YOU_SHOULD_KNOW_DEBUG` | Establécela en `1` para mostrar, encima del prompt, una línea por cada una de las últimas tres comprobaciones que hizo el [mod You should know](https://code.claude.com/docs/es/interactive-mode.md#you-should-know-suggestions) en esta sesión. Úsala para confirmar que el mod está haciendo comprobaciones cuando no aparece ninguna nota. Requiere Claude Code v2.1.287 o posterior |

430| `CLAUDE_CONFIG_DIR` | Sobrescribe el directorio de configuración (predeterminado: `~/.claude`). Toda la configuración, el historial de sesiones y los plugins se almacenan en esta ruta. Para las credenciales, consulta [dónde almacena Claude Code las credenciales](https://code.claude.com/docs/es/authentication.md#credential-management). Útil para ejecutar varias cuentas en paralelo: por ejemplo, `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`. Establécelo en tu shell, en la configuración de usuario o en la configuración administrada. En un archivo de configuración, escribe la [ruta absoluta](#in-settings-files). Se ignora en [la configuración de proyecto y local](https://code.claude.com/docs/es/settings-reference.md#variables-claude-code-ignores-in-env) |430| `CLAUDE_CONFIG_DIR` | Sobrescribe el directorio de configuración (predeterminado: `~/.claude`). Toda la configuración, el historial de sesiones y los plugins se almacenan en esta ruta. Para las credenciales, consulta [dónde almacena Claude Code las credenciales](https://code.claude.com/docs/es/authentication.md#credential-management). Útil para ejecutar varias cuentas en paralelo: por ejemplo, `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`. Establécelo en tu shell, en la configuración de usuario o en la configuración administrada. En un archivo de configuración, escribe la [ruta absoluta](#in-settings-files). Se ignora en [la configuración de proyecto y local](https://code.claude.com/docs/es/settings-reference.md#variables-claude-code-ignores-in-env) |

431| `CLAUDE_EFFORT` | Se establece automáticamente en los subprocesos de la herramienta Bash y en los comandos de hooks con el [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) vigente cuando se inicia el subproceso: `low`, `medium`, `high`, `xhigh` o `max`. Coincide con el campo `effort.level` que se pasa a los [hooks](https://code.claude.com/docs/es/hooks.md). Solo se establece cuando el modelo actual admite el parámetro effort |431| `CLAUDE_EFFORT` | Se establece automáticamente en los subprocesos de la herramienta Bash y en los comandos de hooks con el ajuste de [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) vigente cuando se inicia el subproceso: `low`, `medium`, `high`, `xhigh` o `max`. Coincide con el campo `effort.level` que se pasa a los [hooks](https://code.claude.com/docs/es/hooks.md). Solo se establece cuando el modelo actual admite el parámetro effort |

432| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Establécelo en `1` para forzar la habilitación del watchdog de inactividad de streaming a nivel de bytes, o en `0` para forzar su deshabilitación. `0` también desactiva el [plazo del primer byte](https://code.claude.com/docs/es/network-config.md#streaming-idle-watchdogs) en las conexiones donde se ejecuta ese plazo. Cuando no está establecida, el watchdog está habilitado de forma predeterminada para las conexiones directas a la API de Anthropic y a [Claude Platform on AWS](https://code.claude.com/docs/es/claude-platform-on-aws.md), y para las respuestas en streaming en conexiones de [gateway](https://code.claude.com/docs/es/gateways.md) a las que se accede mediante `ANTHROPIC_BASE_URL` o `ANTHROPIC_AWS_BASE_URL`; antes de v2.1.222 no se ejecutaba en esas conexiones de gateway, por lo que el watchdog a nivel de eventos podía informar de un bloqueo allí incluso mientras llegaban pings de keep-alive. Para los tiempos de espera y cómo interactúan los temporizadores, consulta [Watchdogs de inactividad de streaming](https://code.claude.com/docs/es/network-config.md#streaming-idle-watchdogs) |432| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Establécelo en `1` para forzar la habilitación del watchdog de inactividad de streaming a nivel de bytes, o en `0` para forzar su deshabilitación. `0` también desactiva el [plazo del primer byte](https://code.claude.com/docs/es/network-config.md#streaming-idle-watchdogs) en las conexiones donde se ejecuta ese plazo. Cuando no está establecida, el watchdog está habilitado de forma predeterminada para las conexiones directas a la API de Anthropic y a [Claude Platform on AWS](https://code.claude.com/docs/es/claude-platform-on-aws.md), y para las respuestas en streaming en conexiones de [gateway](https://code.claude.com/docs/es/gateways.md) a las que se accede mediante `ANTHROPIC_BASE_URL` o `ANTHROPIC_AWS_BASE_URL`; antes de v2.1.222 no se ejecutaba en esas conexiones de gateway, por lo que el watchdog a nivel de eventos podía informar de un bloqueo allí incluso mientras llegaban pings de keep-alive. Para los tiempos de espera y cómo interactúan los temporizadores, consulta [Watchdogs de inactividad de streaming](https://code.claude.com/docs/es/network-config.md#streaming-idle-watchdogs) |

433| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Establécelo en `1` para habilitar el watchdog de inactividad de streaming a nivel de bytes en las respuestas `vnd.amazon.eventstream` de Amazon Bedrock, lo que también habilita el [plazo del primer byte](https://code.claude.com/docs/es/network-config.md#streaming-idle-watchdogs) en las solicitudes de streaming de Bedrock. Desactivado de forma predeterminada. Configura el tiempo de espera con `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |433| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Establécelo en `1` para habilitar el watchdog de inactividad de streaming a nivel de bytes en las respuestas `vnd.amazon.eventstream` de Amazon Bedrock, lo que también habilita el [plazo del primer byte](https://code.claude.com/docs/es/network-config.md#streaming-idle-watchdogs) en las solicitudes de streaming de Bedrock. Desactivado de forma predeterminada. Configura el tiempo de espera con `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |

434| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Establécelo en `0` para forzar la deshabilitación del watchdog de inactividad de streaming a nivel de eventos, o en `1` para forzar su habilitación. Cuando no está establecida, el watchdog está activado de forma predeterminada para todos los proveedores. Antes de v2.1.196, el valor predeterminado sin establecer lo controlaba el servidor en la API directa de Anthropic y estaba desactivado en los demás proveedores. Configura el tiempo de espera con `CLAUDE_STREAM_IDLE_TIMEOUT_MS`; para los otros temporizadores de bloqueo que se ejecutan junto con este, consulta [Watchdogs de inactividad de streaming](https://code.claude.com/docs/es/network-config.md#streaming-idle-watchdogs) |434| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Establécelo en `0` para forzar la deshabilitación del watchdog de inactividad de streaming a nivel de eventos, o en `1` para forzar su habilitación. Cuando no está establecida, el watchdog está activado de forma predeterminada para todos los proveedores. Antes de v2.1.196, el valor predeterminado sin establecer lo controlaba el servidor en la API directa de Anthropic y estaba desactivado en los demás proveedores. Configura el tiempo de espera con `CLAUDE_STREAM_IDLE_TIMEOUT_MS`; para los otros temporizadores de bloqueo que se ejecutan junto con este, consulta [Watchdogs de inactividad de streaming](https://code.claude.com/docs/es/network-config.md#streaming-idle-watchdogs) |


575* [Enviar mensajes a sesiones fuera de esta máquina](https://code.claude.com/docs/es/cross-session-messaging.md#message-sessions-on-other-machines) cuando [Remote Control](https://code.claude.com/docs/es/remote-control.md#requirements) no está disponible. El envío de mensajes entre sesiones en esta máquina funciona con la obtención desactivada575* [Enviar mensajes a sesiones fuera de esta máquina](https://code.claude.com/docs/es/cross-session-messaging.md#message-sessions-on-other-machines) cuando [Remote Control](https://code.claude.com/docs/es/remote-control.md#requirements) no está disponible. El envío de mensajes entre sesiones en esta máquina funciona con la obtención desactivada

576* Ejecutar [`claude import` o el comando `/import`](https://code.claude.com/docs/es/cli-reference#cli-commands)576* Ejecutar [`claude import` o el comando `/import`](https://code.claude.com/docs/es/cli-reference#cli-commands)

577* Ejecutar [`/skill-doctor`](https://code.claude.com/docs/es/skills#find-unused-skills) ni abrir su informe en la pestaña **Stats** de `/plugin`577* Ejecutar [`/skill-doctor`](https://code.claude.com/docs/es/skills#find-unused-skills) ni abrir su informe en la pestaña **Stats** de `/plugin`

578* Ejecutar [`/restart`](https://code.claude.com/docs/es/commands) en los planes Pro y Max

578* Sincronizar los [skills](https://code.claude.com/docs/es/skills.md#where-synced-skills-load) y [plugins](https://code.claude.com/docs/es/plugins/loading.md#synced-plugins) habilitados para tu cuenta de claude.ai en tus sesiones de terminal579* Sincronizar los [skills](https://code.claude.com/docs/es/skills.md#where-synced-skills-load) y [plugins](https://code.claude.com/docs/es/plugins/loading.md#synced-plugins) habilitados para tu cuenta de claude.ai en tus sesiones de terminal

579* Activar el [mod You should know](https://code.claude.com/docs/es/interactive-mode.md#you-should-know-suggestions)580* Activar el [mod You should know](https://code.claude.com/docs/es/interactive-mode.md#you-should-know-suggestions)

580* Usar [la herramienta advisor](https://code.claude.com/docs/es/advisor.md#requirements)581* Usar [la herramienta advisor](https://code.claude.com/docs/es/advisor.md#requirements)

errors.md +9 −3

Details

277| `Windows reported an error (EBADF) when Claude Code read this session's transcript file` | [Errores de línea de comandos](#windows-reported-an-error-ebadf) |277| `Windows reported an error (EBADF) when Claude Code read this session's transcript file` | [Errores de línea de comandos](#windows-reported-an-error-ebadf) |

278| `Cannot switch renderers in this session` | [Errores de línea de comandos](#cannot-switch-renderers-in-this-session) |278| `Cannot switch renderers in this session` | [Errores de línea de comandos](#cannot-switch-renderers-in-this-session) |

279| `Cannot switch renderers while work is running in the background` | [Errores de línea de comandos](#cannot-switch-renderers-in-this-session) |279| `Cannot switch renderers while work is running in the background` | [Errores de línea de comandos](#cannot-switch-renderers-in-this-session) |

280| `Can't restart while work is running in the background — wait for it to finish (or stop it via /tasks), then try again.` | [Errores de línea de comandos](#cant-restart-while-work-is-running-or-remote-control-is-connected) |

281| `Can't restart while Remote Control is connected. To use the installed version, exit and start Claude Code again, then run /resume.` | [Errores de línea de comandos](#cant-restart-while-work-is-running-or-remote-control-is-connected) |

280| `Claude Code couldn't restart` | [Errores de línea de comandos](#claude-code-couldnt-restart) |282| `Claude Code couldn't restart` | [Errores de línea de comandos](#claude-code-couldnt-restart) |

281| `Couldn't open Claude Desktop` | [Errores de línea de comandos](#couldnt-open-claude-desktop) |283| `Couldn't open Claude Desktop` | [Errores de línea de comandos](#couldnt-open-claude-desktop) |

282| `Failed to open Claude Desktop. Please try opening it manually.` | [Errores de línea de comandos](#couldnt-open-claude-desktop) |284| `Failed to open Claude Desktop. Please try opening it manually.` | [Errores de línea de comandos](#couldnt-open-claude-desktop) |


858 860 

859### The prompt to confirm went unanswered861### The prompt to confirm went unanswered

860 862 

861Si tu cuenta requiere el [consentimiento de créditos de uso de Fable](https://code.claude.com/docs/es/model-config.md#fable-and-usage-credits), Claude Code te pide que confirmes antes de que una solicitud de Fable facture créditos de uso. Cuando la solicitud de consentimiento se cierra sin que nadie la responda, Claude Code termina el turno con uno de estos mensajes:863Cuando la [solicitud de consentimiento de créditos de uso de Fable](https://code.claude.com/docs/es/model-config.md#fable-and-usage-credits) se cierra sin que nadie la responda, Claude Code termina el turno con uno de estos mensajes:

862 864 

863```text theme={null}865```text theme={null}

864Fable limit reached · continuing on Fable 5.1 uses usage credits, and the prompt to confirm went unanswered — nothing was sent · answer it where this session is running, or /model to change866Fable limit reached · continuing on Fable 5.1 uses usage credits, and the prompt to confirm went unanswered — nothing was sent · answer it where this session is running, or /model to change


3590 3592 

3591Hay cadenas similares que se activan antes de que el comando llegue a ejecutarse:3593Hay cadenas similares que se activan antes de que el comando llegue a ejecutarse:

3592 3594 

3593* `Shell command permission check failed for pattern "..."`: la comprobación de permisos del comando no lo permitió. [Comprobaciones de permisos en comandos inyectados](https://code.claude.com/docs/es/skills.md#permission-checks-on-injected-commands) explica qué resultados abortan en cada modo de permisos y cómo aprobar previamente un comando con `allowed-tools`3595* `Shell command permission check failed for pattern "..."`: la verificación de permisos del comando no lo permitió. [Verificaciones de permisos en comandos inyectados](https://code.claude.com/docs/es/skills.md#permission-checks-on-injected-commands) explica qué resultados abortan en cada modo de permisos y cómo aprobar previamente un comando con `allowed-tools`

3594* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: el frontmatter del skill exige bash en una máquina que no lo tiene. Instala Git for Windows o cambia el frontmatter a `shell: powershell`. Consulta [Cómo se ejecutan los comandos inyectados](https://code.claude.com/docs/es/skills.md#how-injected-commands-run)3596* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: el frontmatter del skill exige bash en una máquina que no lo tiene. Instala Git for Windows o cambia el frontmatter a `shell: powershell`. Consulta [Cómo se ejecutan los comandos inyectados](https://code.claude.com/docs/es/skills.md#how-injected-commands-run)

3595 3597 

3596**Qué hacer:**3598**Qué hacer:**


3744 3746 

3745* **No pasaste una rama base**: Claude Code comparó contra la rama predeterminada del repositorio y sugiere pasar tu base explícitamente, como en el ejemplo anterior3747* **No pasaste una rama base**: Claude Code comparó contra la rama predeterminada del repositorio y sugiere pasar tu base explícitamente, como en el ejemplo anterior

3746* **Pasaste una rama base que ya estaba en tu clon**: la sugerencia dice ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``3748* **Pasaste una rama base que ya estaba en tu clon**: la sugerencia dice ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``

3747* **Pasaste una rama base que no estaba en tu clon**: Claude Code la obtuvo de origin antes de comparar. La sugerencia dice ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; cuando Claude Code no puede determinar si tu clon es superficial (shallow), sugiere `git fetch --unshallow origin` en su lugar. Antes de la v2.1.221, la sugerencia proponía `git fetch --unshallow origin` para cada rama base obtenida, y en un clon completo ese comando falla con `fatal: --unshallow on a complete repository does not make sense`.3749* **Pasaste una rama base que no estaba en tu clon**: Claude Code la obtuvo de origin antes de comparar. La sugerencia dice ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; cuando Claude Code no puede determinar si tu clon es superficial, sugiere `git fetch --unshallow origin` en su lugar. Antes de la v2.1.221, la sugerencia proponía `git fetch --unshallow origin` para toda rama base obtenida, y en un clon completo ese comando falla con `fatal: --unshallow on a complete repository does not make sense`.

3748 3750 

3749**Qué hacer:**3751**Qué hacer:**

3750 3752 


3974 3976 

3975* En una sesión iniciada sin esas restricciones, ejecuta `/tui fullscreen`, o `/tui default` para volver al anterior. Claude Code guarda allí el [ajuste `tui`](https://code.claude.com/docs/es/settings-reference#tui)3977* En una sesión iniciada sin esas restricciones, ejecuta `/tui fullscreen`, o `/tui default` para volver al anterior. Claude Code guarda allí el [ajuste `tui`](https://code.claude.com/docs/es/settings-reference#tui)

3976 3978 

3979### Can't restart while work is running or Remote Control is connected

3980 

3981Claude Code no se reinició, y tu sesión sigue ejecutándose como estaba. Sigue la solución que indica el mensaje.

3982 

3977### Claude Code couldn't restart3983### Claude Code couldn't restart

3978 3984 

3979Cuando este mensaje dice que tu conversación está guardada, la conversación está en el disco y puedes retomarla donde se detuvo. Claude Code se estaba reiniciando a sí mismo, por ejemplo para activar o desactivar el renderizado de pantalla completa después de que ejecutaste [`/tui`](https://code.claude.com/docs/es/fullscreen#enable-fullscreen-rendering), y no pudo iniciar el nuevo proceso, así que salió con el estado 1:3985Cuando este mensaje dice que tu conversación está guardada, la conversación está en el disco y puedes retomarla donde se detuvo. Claude Code se estaba reiniciando a sí mismo, por ejemplo para activar o desactivar el renderizado de pantalla completa después de que ejecutaste [`/tui`](https://code.claude.com/docs/es/fullscreen#enable-fullscreen-rendering), y no pudo iniciar el nuevo proceso, así que salió con el estado 1:

goal.md +1 −1

Details

168 168 

169> [!WARNING]169> [!WARNING]

170>170>

171> Claude Code lee `ANTHROPIC_DEFAULT_HAIKU_MODEL` en todas partes donde usa el modelo pequeño y rápido, no solo para la evaluación de `/goal`. Cuando lo establece, Claude Code también resuelve el [alias `haiku`](https://code.claude.com/docs/es/model-config#model-aliases) a ese modelo y ejecuta [funcionalidad en segundo plano](https://code.claude.com/docs/es/costs.md#background-token-usage), como la resumición de conversaciones, en él.171> Claude Code lee `ANTHROPIC_DEFAULT_HAIKU_MODEL` en todas partes donde usa el modelo pequeño y rápido, no solo para la evaluación de `/goal`. Cuando lo estableces, Claude Code también resuelve el [alias `haiku`](https://code.claude.com/docs/es/model-config#model-aliases) a ese modelo y ejecuta en él la generación de títulos de sesión y algunas otras tareas en segundo plano.

172 172 

173El evaluador se ejecuta en cualquier proveedor para el que esté configurada su sesión. No llama a herramientas, por lo que solo puede juzgar lo que Claude ya ha presentado en la conversación.173El evaluador se ejecuta en cualquier proveedor para el que esté configurada su sesión. No llama a herramientas, por lo que solo puede juzgar lo que Claude ya ha presentado en la conversación.

174 174 

hipaa-setup.md +5 −1

Details

26 26 

27| Cuándo | Qué hacer |27| Cuándo | Qué hacer |

28| :- | :- |28| :- | :- |

29| Antes de que se aplique la configuración | [Prepara las computadoras](#prepare-computers-before-the-hipaa-configuration-is-applied): revisa cómo se conectan los desarrolladores, actualiza las aplicaciones, permite el acceso de red e implementa la configuración administrada |29| Antes de que se aplique la configuración | [Prepara las computadoras](#prepare-computers-before-the-hipaa-configuration-is-applied): revisa cómo se conectan los desarrolladores, actualiza las aplicaciones, permite el acceso de red, implementa la configuración administrada y restringe el inicio de sesión en Claude Desktop |

30| Después de que se aplique | La pestaña Code está desactivada hasta que un Owner la vuelva a activar. [Confirma la configuración en una computadora](#confirm-the-configuration-on-a-computer) |30| Después de que se aplique | La pestaña Code está desactivada hasta que un Owner la vuelva a activar. [Confirma la configuración en una computadora](#confirm-the-configuration-on-a-computer) |

31| De forma continua | [Administra los datos de sesiones locales](#manage-local-session-data) |31| De forma continua | [Administra los datos de sesiones locales](#manage-local-session-data) |

32 32 


161 161 

162Para saber si tu BAA cubre una sesión que se ejecuta sin la configuración de HIPAA, consulta [Use Claude Code (local mode) and Cowork (local mode) on a HIPAA-ready Enterprise plan](https://support.claude.com/en/articles/17318731).162Para saber si tu BAA cubre una sesión que se ejecuta sin la configuración de HIPAA, consulta [Use Claude Code (local mode) and Cowork (local mode) on a HIPAA-ready Enterprise plan](https://support.claude.com/en/articles/17318731).

163 163 

164### Restringe el inicio de sesión de Claude Desktop

165 

166Si los desarrolladores usan la pestaña Code de Claude Desktop, define también `forceLoginOrgUUID` en la política de Claude Desktop, como se describe en [Restringe el inicio de sesión a tu organización](https://code.claude.com/docs/es/desktop.md#restrict-sign-in-to-your-organization). Implementar `forceLoginMethod` y `forceLoginOrgUUID` en la configuración administrada no cambia la pantalla de inicio de sesión de Claude Desktop.

167 

164## Confirma la configuración en una computadora168## Confirma la configuración en una computadora

165 169 

166Realiza esta comprobación en una computadora administrada después de que la configuración se aplique a tu organización.170Realiza esta comprobación en una computadora administrada después de que la configuración se aplique a tu organización.

hooks.md +11 −3

Details

735| `cwd` | Directorio de trabajo actual cuando se invoca el hook |735| `cwd` | Directorio de trabajo actual cuando se invoca el hook |

736| `scratchpad_dir` | Ruta al [directorio de scratchpad de la sesión](https://code.claude.com/docs/es/claude-directory.md#session-scratchpad-directory), donde Claude mantiene archivos de trabajo temporales. Ausente cuando la sesión no tiene scratchpad o el directorio temporal no está disponible. Requiere Claude Code v2.1.257 o posterior |736| `scratchpad_dir` | Ruta al [directorio de scratchpad de la sesión](https://code.claude.com/docs/es/claude-directory.md#session-scratchpad-directory), donde Claude mantiene archivos de trabajo temporales. Ausente cuando la sesión no tiene scratchpad o el directorio temporal no está disponible. Requiere Claude Code v2.1.257 o posterior |

737| `permission_mode` | [Modo de permisos](https://code.claude.com/docs/es/permissions.md#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. Consulta el ejemplo JSON en cada sección de [evento de hook](#hook-events) |737| `permission_mode` | [Modo de permisos](https://code.claude.com/docs/es/permissions.md#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. Consulta el ejemplo JSON en cada sección de [evento de hook](#hook-events) |

738| `effort` | Objeto con un campo `level` que contiene el [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) en vigor cuando se ejecuta el hook: `"low"`, `"medium"`, `"high"`, `"xhigh"` o `"max"`. Si estableces un nivel que el modelo activo no admite, `level` reporta el nivel que Claude Code ejecutó en su lugar; [Ajustar el nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) explica cómo lo elige. El objeto coincide con el campo `effort` de la [línea de estado](https://code.claude.com/docs/es/statusline.md#available-data). Presente para eventos que se activan dentro de un contexto de uso de herramienta, como `PreToolUse`, `PostToolUse`, `Stop` y `SubagentStop`, cuando el modelo actual admite el parámetro de esfuerzo. El nivel también está disponible para comandos de hook y la herramienta Bash como la variable de entorno `$CLAUDE_EFFORT`. |738| `effort` | Objeto cuyo `level` es el ajuste de [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) cuando se ejecuta el hook, incluido el nivel de un skill, de un subagente o de `ultrathink`: `"low"`, `"medium"`, `"high"`, `"xhigh"` o `"max"`. Presente para `PreToolUse`, `PostToolUse`, `Stop`, `SubagentStop` y otros eventos con un contexto de uso de herramienta, en modelos que admiten esfuerzo. Si el modelo no admite tu nivel, `level` es el nivel que se ejecutó. Un nivel que cambiaste puede aparecer aquí antes de que [entre en vigor](https://code.claude.com/docs/es/model-config.md#when-a-new-effort-level-starts). `$CLAUDE_EFFORT` contiene el mismo nivel. |

739| `hook_event_name` | Nombre del evento que se activó |739| `hook_event_name` | Nombre del evento que se activó |

740 740 

741`agent_id` y `agent_type` le indican a tu script en qué agente se activó un hook, como un subagente, un [compañero en proceso](https://code.claude.com/docs/es/agent-teams.md#choose-a-display-mode) o el agente que elegiste con `--agent`:741`agent_id` y `agent_type` le indican a tu script en qué agente se activó un hook, como un subagente, un [compañero en proceso](https://code.claude.com/docs/es/agent-teams.md#choose-a-display-mode) o el agente que elegiste con `--agent`:


1898| `query` | string | `"react hooks best practices"` | Consulta de búsqueda |1898| `query` | string | `"react hooks best practices"` | Consulta de búsqueda |

1899| `allowed_domains` | array | `["docs.example.com"]` | Opcional: incluye solo resultados de estos dominios |1899| `allowed_domains` | array | `["docs.example.com"]` | Opcional: incluye solo resultados de estos dominios |

1900| `blocked_domains` | array | `["spam.example.com"]` | Opcional: excluye resultados de estos dominios |1900| `blocked_domains` | array | `["spam.example.com"]` | Opcional: excluye resultados de estos dominios |

1901| `mode` | string | `"extended"` | Opcional: tipo de búsqueda. `"standard"` solicita una búsqueda más ligera y `"extended"`, la búsqueda completa. Algunas sesiones no envían `mode`, y una llamada sin él ejecuta la búsqueda completa. Requiere Claude Code v2.1.282 o posterior |

1901 1902 

1902##### Agent1903##### Agent

1903 1904 


1968 1969 

1969Cuando un hook devuelve `"ask"`, la solicitud de permiso que se muestra al usuario incluye una etiqueta que identifica de dónde proviene el hook: `[settings]` para un hook de cualquier archivo de configuración o del frontmatter de un agente, `[plugin:<name>]` para el hook de un plugin o `[skill]` para un hook del frontmatter de un skill. Esto ayuda a los usuarios a entender qué fuente de configuración solicita la confirmación.1970Cuando un hook devuelve `"ask"`, la solicitud de permiso que se muestra al usuario incluye una etiqueta que identifica de dónde proviene el hook: `[settings]` para un hook de cualquier archivo de configuración o del frontmatter de un agente, `[plugin:<name>]` para el hook de un plugin o `[skill]` para un hook del frontmatter de un skill. Esto ayuda a los usuarios a entender qué fuente de configuración solicita la confirmación.

1970 1971 

1971El `"ask"` de un hook también fuerza una solicitud de permiso en [modo automático](https://code.claude.com/docs/es/permission-modes.md#eliminate-prompts-with-auto-mode): el clasificador todavía puede denegar la llamada a herramienta, pero no puede aprobarla de forma silenciosa.

1972 

1973```json theme={null}1972```json theme={null}

1974{1973{

1975 "hookSpecificOutput": {1974 "hookSpecificOutput": {


1988>1987>

1989> PreToolUse usaba anteriormente los campos de nivel superior `decision` y `reason`, pero están obsoletos para este evento. Usa `hookSpecificOutput.permissionDecision` y `hookSpecificOutput.permissionDecisionReason` en su lugar. Los valores obsoletos `"approve"` y `"block"` se asignan a `"allow"` y `"deny"`, respectivamente. Otros eventos como PostToolUse y Stop siguen usando `decision` y `reason` de nivel superior como su formato actual.1988> PreToolUse usaba anteriormente los campos de nivel superior `decision` y `reason`, pero están obsoletos para este evento. Usa `hookSpecificOutput.permissionDecision` y `hookSpecificOutput.permissionDecisionReason` en su lugar. Los valores obsoletos `"approve"` y `"block"` se asignan a `"allow"` y `"deny"`, respectivamente. Otros eventos como PostToolUse y Stop siguen usando `decision` y `reason` de nivel superior como su formato actual.

1990 1989 

1990#### Decisiones `ask` de PreToolUse en modo automático

1991 

1992En el [modo automático](https://code.claude.com/docs/es/permission-modes.md#eliminate-prompts-with-auto-mode), el `"ask"` de un hook PreToolUse normalmente envía la llamada a herramienta a la solicitud de permiso, y el [clasificador](https://code.claude.com/docs/es/permission-modes.md#how-the-classifier-evaluates-actions) no la decide. Algunas llamadas siguen otro camino:

1993 

1994* **Llamadas que también señalan las propias comprobaciones de Claude Code**: incluyen escrituras en [rutas protegidas](https://code.claude.com/docs/es/permission-modes.md#protected-paths) y comandos que piden [ejecutarse fuera del sandbox](https://code.claude.com/docs/es/sandboxing.md#the-unsandboxed-retry-escape-hatch). El clasificador puede denegar una de estas llamadas antes de que aparezca cualquier solicitud. Si la aprueba, la llamada normalmente sigue pasando a la solicitud.

1995* **Llamadas a `SubagentHandback`**: esta herramienta entrega el informe de un subagente. No aparece ninguna solicitud para ella, y la llamada se ejecuta aunque el clasificador se oponga.

1996 

1997Para detener una llamada a `SubagentHandback`, devuelve `"deny"`. Claude Code le indica entonces al subagente, hasta tres veces, que su informe no se entregó y que vuelva a llamar a la herramienta. Si tu hook sigue denegando, el subagente termina sin entregar un informe mediante esta herramienta, y la conversación que lo espera recibe una nota que lo indica.

1998 

1991#### Herramientas que requieren interacción del usuario1999#### Herramientas que requieren interacción del usuario

1992 2000 

1993`AskUserQuestion` y `ExitPlanMode` requieren interacción del usuario. En el [modo no interactivo](https://code.claude.com/docs/es/headless.md) con el flag `-p`, Claude Code las ofrece solo cuando la ejecución tiene un [host de permisos](https://code.claude.com/docs/es/headless.md#turn-off-permission-prompts-in-unattended-runs) que reciba la solicitud, como un callback `canUseTool` del Agent SDK.2001`AskUserQuestion` y `ExitPlanMode` requieren interacción del usuario. En el [modo no interactivo](https://code.claude.com/docs/es/headless.md) con el flag `-p`, Claude Code las ofrece solo cuando la ejecución tiene un [host de permisos](https://code.claude.com/docs/es/headless.md#turn-off-permission-prompts-in-unattended-runs) que reciba la solicitud, como un callback `canUseTool` del Agent SDK.

Details

395 395 

396Claude Code ejecuta algunos comandos tan pronto como los envías en lugar de encolarlos, entre ellos `/model`, `/effort` y `/fast`. Cada uno de los tres cambia un ajuste: el modelo, el nivel de esfuerzo o el modo rápido. Si Claude Code aplica el nuevo ajuste al turno en el que Claude ya está trabajando, o solo desde tu siguiente turno, difiere según el comando:396Claude Code ejecuta algunos comandos tan pronto como los envías en lugar de encolarlos, entre ellos `/model`, `/effort` y `/fast`. Cada uno de los tres cambia un ajuste: el modelo, el nivel de esfuerzo o el modo rápido. Si Claude Code aplica el nuevo ajuste al turno en el que Claude ya está trabajando, o solo desde tu siguiente turno, difiere según el comando:

397 397 

398* [`/model`](https://code.claude.com/docs/es/model-config#setting-your-model): una vez que confirmes la [advertencia de caché](https://code.claude.com/docs/es/prompt-caching.md#switching-models), si Claude Code muestra una, Claude Code aplica tu cambio a la siguiente solicitud que realiza en ese turno398* [`/model`](https://code.claude.com/docs/es/model-config#setting-your-model): una vez que confirmes la [advertencia de caché](https://code.claude.com/docs/es/prompt-caching.md#switching-models), si Claude Code muestra una, Claude Code usa el nuevo modelo desde la siguiente solicitud que realiza en ese turno

399* `/effort`: el siguiente mensaje que envíes se ejecuta con el nuevo nivel. Para [iniciarlo en el turno en el que Claude ya está trabajando](https://code.claude.com/docs/es/model-config.md#when-a-new-effort-level-starts), encola un mensaje mientras Claude está ejecutando llamadas a herramientas399* `/effort`: el siguiente mensaje que envíes se ejecuta con el nuevo nivel. Para [iniciarlo en el turno en el que Claude ya está trabajando](https://code.claude.com/docs/es/model-config.md#when-a-new-effort-level-starts), encola un mensaje mientras Claude está ejecutando llamadas a herramientas

400* [`/fast`](https://code.claude.com/docs/es/fast-mode#toggle-fast-mode): Claude Code mantiene el ajuste de modo rápido que estaba activo cuando el turno comenzó, por lo que tu cambio de velocidad se aplica desde tu siguiente turno. Si tu modelo actual no admite modo rápido, activarlo también [cambia tu modelo](https://code.claude.com/docs/es/prompt-caching.md#turning-on-fast-mode), y Claude Code usa el nuevo modelo desde su siguiente solicitud en ese turno400* [`/fast`](https://code.claude.com/docs/es/fast-mode#toggle-fast-mode): Claude Code mantiene el ajuste de modo rápido que estaba activo cuando el turno comenzó, por lo que tu cambio de velocidad se aplica desde tu siguiente turno. Si tu modelo actual no admite modo rápido, activarlo también [cambia tu modelo](https://code.claude.com/docs/es/prompt-caching.md#turning-on-fast-mode), y Claude Code usa el nuevo modelo desde su siguiente solicitud en ese turno

401 401 


761 761 

762* **Envías un prompt**: Claude Code envía tu prompt en lugar de esperar. Si tu prompt también alcanza el límite, permanece en la conversación y Claude Code vuelve a iniciar la espera.762* **Envías un prompt**: Claude Code envía tu prompt en lugar de esperar. Si tu prompt también alcanza el límite, permanece en la conversación y Claude Code vuelve a iniciar la espera.

763* **Sale de Claude Code**: la espera no se reinicia cuando reanuda la sesión.763* **Sale de Claude Code**: la espera no se reinicia cuando reanuda la sesión.

764* **La conversación cambia de manos**: cambia de cuenta con `/login`, borra o rebobina la conversación, `/resume` otra sesión, extrae una con `/teleport`, relanza con `/tui`, o entrega la sesión a Claude Desktop, una sesión de fondo o la nube.764* **La conversación cambia de manos**: cambias de cuenta con `/login`, borras o rebobinas la conversación, haces `/resume` de otra sesión, traes una con `/teleport`, relanzas con `/tui` o [`/restart`](https://code.claude.com/docs/es/commands#all-commands), o trasladas la sesión a Claude Desktop, una sesión en segundo plano o la nube.

765* **La configuración se desactiva, o el reinicio se mueve más allá de 24 horas**: esto solo termina una espera que Claude Code inició por su cuenta. Una espera que seleccionó de `/rate-limit-options` sigue contando hacia atrás.765* **La configuración se desactiva, o el reinicio se mueve más allá de 24 horas**: esto solo termina una espera que Claude Code inició por su cuenta. Una espera que seleccionó de `/rate-limit-options` sigue contando hacia atrás.

766* **La continuación está bloqueada**: un hook [`UserPromptSubmit`](https://code.claude.com/docs/es/hooks#userpromptsubmit) que bloquea el mensaje de continuación, o una falla antes de que llegue al modelo, termina la espera. Claude Code le indica que la continuación no se ejecutó. Envíe un mensaje para continuar.766* **La continuación está bloqueada**: un hook [`UserPromptSubmit`](https://code.claude.com/docs/es/hooks#userpromptsubmit) que bloquea el mensaje de continuación, o una falla antes de que llegue al modelo, termina la espera. Claude Code le indica que la continuación no se ejecutó. Envíe un mensaje para continuar.

767 767 

model-config.md +11 −9

Details

92 92 

93Dependiendo de tu plan y nivel de asiento, el uso de Fable puede facturarse a [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) en lugar de consumir los límites incluidos en tu plan. Cuando es así, el selector `/model` muestra "Requiere créditos de uso" en la fila de Fable. Para administrar los créditos de uso, consulta [Agregar créditos de uso a tu suscripción](https://code.claude.com/docs/es/costs.md#add-usage-credits-to-your-subscription).93Dependiendo de tu plan y nivel de asiento, el uso de Fable puede facturarse a [créditos de uso](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) en lugar de consumir los límites incluidos en tu plan. Cuando es así, el selector `/model` muestra "Requiere créditos de uso" en la fila de Fable. Para administrar los créditos de uso, consulta [Agregar créditos de uso a tu suscripción](https://code.claude.com/docs/es/costs.md#add-usage-credits-to-your-subscription).

94 94 

95En sesiones interactivas, Claude Code muestra una solicitud de consentimiento antes de que una solicitud de Fable facture créditos de uso. Los miembros de planes Enterprise con facturación de organización no ven esta solicitud de consentimiento. Puedes continuar en Fable usando créditos de uso o cambiar a tu modelo predeterminado. También puedes descartar la solicitud de consentimiento:95En sesiones interactivas, Claude Code puede mostrar una solicitud de consentimiento de créditos de uso de Fable. Los miembros de planes Enterprise con facturación de organización no ven esta solicitud de consentimiento. Puedes continuar en Fable usando créditos de uso o cambiar a tu modelo predeterminado. También puedes descartar la solicitud de consentimiento:

96 96 

97* Cuando seleccionas un modelo Fable con `/model`, mantienes tu modelo actual.97* Cuando seleccionas un modelo Fable con `/model`, mantienes tu modelo actual.

98* A mitad de sesión, Claude Code continúa el turno en tu modelo predeterminado.98* A mitad de sesión, Claude Code continúa el turno en tu modelo predeterminado.


544* **Tu propio cambio**: una vez que eliges un nivel de esfuerzo, seleccionas un modelo en `/model` o reanudas la sesión más tarde, el nivel de la solicitud marcada deja de trasladarse.544* **Tu propio cambio**: una vez que eliges un nivel de esfuerzo, seleccionas un modelo en `/model` o reanudas la sesión más tarde, el nivel de la solicitud marcada deja de trasladarse.

545* **Esfuerzo establecido para un turno**: si elevaste el turno marcado con `ultrathink`, o el frontmatter `effort` de un skill estableció su nivel, ese nivel se aplica a ese turno. Los turnos posteriores se ejecutan en el nivel que el [orden de resolución de esfuerzo](#adjust-effort-level) da al modelo de respaldo.545* **Esfuerzo establecido para un turno**: si elevaste el turno marcado con `ultrathink`, o el frontmatter `effort` de un skill estableció su nivel, ese nivel se aplica a ese turno. Los turnos posteriores se ejecutan en el nivel que el [orden de resolución de esfuerzo](#adjust-effort-level) da al modelo de respaldo.

546 546 

547En la sesión, ejecuta `/effort status` para ver el nivel vigente, o `/effort` para cambiarlo.547Para ver el nivel establecido para tu sesión después de un respaldo, ejecuta `/effort status`. Para cambiarlo, ejecuta `/effort`.

548 548 

549#### Comprobar qué provocó el respaldo549#### Comprobar qué provocó el respaldo

550 550 


607 607 

608Claude Code resuelve el nivel de esfuerzo de la sesión en este orden, tomando el primero que se aplique:608Claude Code resuelve el nivel de esfuerzo de la sesión en este orden, tomando el primero que se aplique:

609 609 

6101. Una elección explícita: la variable de entorno [`CLAUDE_CODE_EFFORT_LEVEL`](https://code.claude.com/docs/es/env-vars#variables), iniciar con `--effort`, o `/effort` en la sesión ([un `/effort` no interactivo tiene un efecto más limitado](#non-interactive-effort))6101. La variable de entorno [`CLAUDE_CODE_EFFORT_LEVEL`](https://code.claude.com/docs/es/env-vars#variables)

6112. Tu configuración: el nivel que guardaste para el modelo o una clave [`effortLevel`](https://code.claude.com/docs/es/settings-reference#effortlevel), con la precedencia entre ellos y entre archivos de configuración indicada en [`modelSettings`](https://code.claude.com/docs/es/settings-reference#modelsettings)6112. Un nivel que eliges en la sesión, por ejemplo con `/effort`, el selector de `/model` o [`applyFlagSettings()`](https://code.claude.com/docs/es/agent-sdk/typescript#applyflagsettings)

6123. El esfuerzo predeterminado del modelo: `high` en cada modelo que admite esfuerzo, excepto que Opus 5.5, Sonnet 5.5 y Haiku 5.5 por defecto son `medium`, Opus 4.7 por defecto es `xhigh`, y, cuando tu organización establece un nivel de esfuerzo predeterminado para su [modelo predeterminado de la organización](#organization-default-model), ese nivel es el predeterminado cuando ejecutas ese modelo6123. Iniciar con `--effort`

6134. Tu configuración: el nivel que guardaste para el modelo o una clave [`effortLevel`](https://code.claude.com/docs/es/settings-reference#effortlevel), con la precedencia entre ellos y entre archivos de configuración indicada en [`modelSettings`](https://code.claude.com/docs/es/settings-reference#modelsettings)

6145. El esfuerzo predeterminado del modelo: `high` en cada modelo que admite esfuerzo, excepto que Opus 5.5, Sonnet 5.5 y Haiku 5.5 por defecto son `medium` y Opus 4.7 por defecto es `xhigh`. Si tu organización establece un nivel de esfuerzo predeterminado para su [modelo predeterminado de la organización](#organization-default-model), ese nivel es el predeterminado cuando ejecutas ese modelo.

613 615 

614Después de un respaldo automático de modelo, consulta [Nivel de esfuerzo después de un respaldo](#effort-level-after-a-fallback) para ver el nivel que se aplica.616Después de un respaldo automático de modelo, consulta [Nivel de esfuerzo después de un respaldo](#effort-level-after-a-fallback) para ver el nivel que se aplica.

615 617 


687Puedes cambiar el esfuerzo mediante cualquiera de las siguientes opciones:689Puedes cambiar el esfuerzo mediante cualquiera de las siguientes opciones:

688 690 

689* **`/effort`**: ejecuta `/effort` sin argumentos para abrir un control deslizante interactivo, `/effort` seguido de un nombre de nivel para establecerlo directamente, o `/effort auto` para borrar tu nivel guardado para el modelo activo691* **`/effort`**: ejecuta `/effort` sin argumentos para abrir un control deslizante interactivo, `/effort` seguido de un nombre de nivel para establecerlo directamente, o `/effort auto` para borrar tu nivel guardado para el modelo activo

690* **En `/model`**: usa las flechas izquierda/derecha para ajustar el control deslizante de esfuerzo al seleccionar un modelo692* **En `/model`**: usa las flechas izquierda/derecha para ajustar el control deslizante de esfuerzo al seleccionar un modelo. El nuevo nivel empieza, como máximo, con tu siguiente mensaje. Hasta entonces, Claude puede seguir trabajando con el nivel anterior, incluso en un modelo nuevo. Mientras se aplique una [fuente con mayor prioridad que tu elección](#adjust-effort-level), como `CLAUDE_CODE_EFFORT_LEVEL`, Claude trabaja con el nivel de esa fuente.

691* **Flag `--effort`**: pasa un nombre de nivel para establecerlo en una sola sesión al iniciar Claude Code693* **Flag `--effort`**: pasa un nombre de nivel para establecerlo en una sola sesión al iniciar Claude Code

692* **Variable de entorno**: establece `CLAUDE_CODE_EFFORT_LEVEL` en un nombre de nivel. Para que Claude Code [no envíe ningún nivel de esfuerzo](#send-no-effort-level), establécela en `auto` o `unset`694* **Variable de entorno**: establece `CLAUDE_CODE_EFFORT_LEVEL` en un nombre de nivel. Para que Claude Code [no envíe ningún nivel de esfuerzo](#send-no-effort-level), establécela en `auto` o `unset`

693* **Configuración**: establece un nivel por modelo en [`modelSettings`](https://code.claude.com/docs/es/settings-reference#modelsettings), o establece [`effortLevel`](https://code.claude.com/docs/es/settings-reference#effortlevel) en `low`, `medium`, `high` o `xhigh` como predeterminado para los modelos que no tengan uno. `max` no se acepta como nivel en ninguna de las dos claves, y `ultracode` tiene su propia clave [`ultracode`](https://code.claude.com/docs/es/settings-reference#ultracode)695* **Configuración**: establece un nivel por modelo en [`modelSettings`](https://code.claude.com/docs/es/settings-reference#modelsettings), o establece [`effortLevel`](https://code.claude.com/docs/es/settings-reference#effortlevel) en `low`, `medium`, `high` o `xhigh` como predeterminado para los modelos que no tengan uno. `max` no se acepta como nivel en ninguna de las dos claves, y `ultracode` tiene su propia clave [`ultracode`](https://code.claude.com/docs/es/settings-reference#ultracode)

694* **Desde un dispositivo conectado**: en una sesión de [Remote Control](https://code.claude.com/docs/es/remote-control.md#what-connected-devices-see), elige un nivel en el control de esfuerzo de tu teléfono o de tu navegador. El nivel se aplica solo a la sesión actual. Requiere Claude Code v2.1.234 o posterior696* **Desde un dispositivo conectado**: en una sesión de [Remote Control](https://code.claude.com/docs/es/remote-control.md#what-connected-devices-see), elige un nivel en el control de esfuerzo de tu teléfono o de tu navegador. El nivel se aplica solo a la sesión actual. Requiere Claude Code v2.1.234 o posterior

695* **Frontmatter de skills y subagentes**: establece `effort` en un archivo markdown de un [skill](https://code.claude.com/docs/es/skills.md#frontmatter-reference) o de un [subagente](https://code.claude.com/docs/es/sub-agents.md#supported-frontmatter-fields) para sobrescribir el nivel de esfuerzo cuando se ejecuta ese skill o subagente697* **Frontmatter de skills y subagentes**: establece `effort` en un archivo markdown de un [skill](https://code.claude.com/docs/es/skills.md#frontmatter-reference) o de un [subagente](https://code.claude.com/docs/es/sub-agents.md#supported-frontmatter-fields) para sobrescribir el nivel de esfuerzo cuando se ejecuta ese skill o subagente

696 698 

697El esfuerzo del frontmatter se aplica cuando ese skill o subagente está activo, sobrescribiendo el nivel de la sesión pero no la variable de entorno. Un [`maxEffortLevel`](https://code.claude.com/docs/es/settings-reference#maxeffortlevel) o un [límite de esfuerzo de la organización](#organization-effort-limits) sigue limitando el nivel con el que se ejecuta el skill o subagente.699El `effort` de un skill se aplica hasta el final del turno en el que se ejecuta, o durante la ejecución del subagente bifurcado con `context: fork`. El `effort` de un subagente se aplica mientras el subagente se ejecuta, a menos que [su invocación lo sobrescriba](https://code.claude.com/docs/es/sub-agents.md#choose-an-effort-level). Mientras se aplique cualquiera de los dos, el skill o subagente se ejecuta con su nivel, sea cual sea el nivel con el que inicies, que guardes o que elijas. Si `CLAUDE_CODE_EFFORT_LEVEL` está establecida, se aplica ese nivel.

698 700 

699Si estableces `effortLevel` en la [configuración administrada](https://code.claude.com/docs/es/managed-settings.md), Claude Code lo aplica en el paso de configuración del [orden de resolución del esfuerzo](#adjust-effort-level), y los usuarios aún pueden cambiar el nivel con `/effort` o `--effort`. Para mantener a los usuarios en un nivel o por debajo de él, establece [`maxEffortLevel`](https://code.claude.com/docs/es/settings-reference#maxeffortlevel).701Un [`maxEffortLevel`](https://code.claude.com/docs/es/settings-reference#maxeffortlevel) o un [límite de esfuerzo de la organización](#organization-effort-limits) sigue limitando el nivel con el que se ejecuta el skill o subagente. Si estableces `effortLevel` en la [configuración administrada](https://code.claude.com/docs/es/managed-settings.md), Claude Code lo aplica en el paso de configuración del [orden de resolución del esfuerzo](#adjust-effort-level), y los usuarios aún pueden cambiar el nivel con `/effort` o `--effort`. Para mantener a los usuarios en un nivel o por debajo de él, establece [`maxEffortLevel`](https://code.claude.com/docs/es/settings-reference#maxeffortlevel).

700 702 

701#### Comprobar el nivel de esfuerzo que estableciste703#### Comprobar el nivel de esfuerzo que estableciste

702 704 

703El control deslizante de esfuerzo aparece en `/model` cuando se selecciona un modelo compatible. Un nivel en el encabezado de la sesión, por ejemplo "with low effort", proviene de tu ajuste de esfuerzo, aunque Claude [siga trabajando con el nivel anterior](#when-a-new-effort-level-starts). El pie de página también muestra brevemente el nivel de esfuerzo al iniciar y cuando cambia.705El control deslizante de esfuerzo aparece en `/model` cuando se selecciona un modelo compatible. Un nivel en el encabezado de la sesión, por ejemplo "with low effort", proviene de tu ajuste de esfuerzo, aunque Claude [siga trabajando con el nivel anterior](#when-a-new-effort-level-starts). Al iniciar y cuando lo cambias, el pie de página también muestra brevemente el nivel establecido para tu sesión.

704 706 

705#### Cuándo empieza un nuevo nivel de esfuerzo707#### Cuándo empieza un nuevo nivel de esfuerzo

706 708 

Details

556Tenga en cuenta estas restricciones cuando configure la telemetría para sesiones en la nube:556Tenga en cuenta estas restricciones cuando configure la telemetría para sesiones en la nube:

557 557 

558* **Permita que las sesiones lleguen al recopilador**: Claude Code envía la exportación a través de la red de la sesión, por lo que si llega al host en su `OTEL_EXPORTER_OTLP_ENDPOINT` depende del [nivel de acceso de red](https://code.claude.com/docs/es/cloud-environments.md#access-levels) del entorno. Si las sesiones no pueden llegar al dominio del recopilador en el nivel que eligió, [agregue el dominio a la lista de permitidos del entorno](https://code.claude.com/docs/es/cloud-environments.md#allow-specific-domains), porque ninguna configuración administrada por el servidor agrega dominios a la lista de permitidos de red de un entorno.558* **Permita que las sesiones lleguen al recopilador**: Claude Code envía la exportación a través de la red de la sesión, por lo que si llega al host en su `OTEL_EXPORTER_OTLP_ENDPOINT` depende del [nivel de acceso de red](https://code.claude.com/docs/es/cloud-environments.md#access-levels) del entorno. Si las sesiones no pueden llegar al dominio del recopilador en el nivel que eligió, [agregue el dominio a la lista de permitidos del entorno](https://code.claude.com/docs/es/cloud-environments.md#allow-specific-domains), porque ninguna configuración administrada por el servidor agrega dominios a la lista de permitidos de red de un entorno.

559* **Los canales de Claude Tag utilizan entornos a nivel de organización**: las sesiones del canal se ejecutan en entornos a nivel de organización en lugar de en los personales de los miembros, por lo que realice los cambios en la lista de permitidos y en las variables de entorno en el [entorno compartido](https://code.claude.com/docs/es/cloud-environments.md#organization-shared-environments) establecido como predeterminado de su organización o fijado al canal.559* **Canales de Claude Tag**: realiza los cambios en la lista de permitidos y en las variables de entorno en el [entorno compartido](https://code.claude.com/docs/es/cloud-environments.md#organization-shared-environments) establecido como predeterminado de tu organización o fijado al canal.

560* **Cowork se configura por separado**: las sesiones de Cowork no reciben la configuración administrada por el servidor, como muestra la [tabla de cobertura de superficie](https://code.claude.com/docs/es/model-config.md#surface-coverage), por lo que el bloque `env` administrado por el servidor no configura su telemetría.560* **Cowork se configura por separado**: las sesiones de Cowork no reciben la configuración administrada por el servidor, como muestra la [tabla de cobertura de superficie](https://code.claude.com/docs/es/model-config.md#surface-coverage), por lo que el bloque `env` administrado por el servidor no configura su telemetría.

561 561 

562### Atribuir telemetría a sesiones en la nube562### Atribuir telemetría a sesiones en la nube


1467* `result`: `"complete"` cuando el barrido se ejecutó, `"skipped"` cuando Claude Code lo pausó1467* `result`: `"complete"` cuando el barrido se ejecutó, `"skipped"` cuando Claude Code lo pausó

1468* `period_days`: el valor de `cleanupPeriodDays` de la configuración combinada, en días, o `30` cuando ninguna fuente lo establece. En los eventos omitidos, el valor que habría usado el barrido, calculado a partir de las fuentes de configuración que Claude Code pudo leer1468* `period_days`: el valor de `cleanupPeriodDays` de la configuración combinada, en días, o `30` cuando ninguna fuente lo establece. En los eventos omitidos, el valor que habría usado el barrido, calculado a partir de las fuentes de configuración que Claude Code pudo leer

1469* `used_default`: `"true"` cuando ninguna fuente de configuración legible establece `cleanupPeriodDays`, `"false"` en caso contrario. En los eventos completados, `"true"` significa que se aplicó el valor predeterminado de 30 días1469* `used_default`: `"true"` cuando ninguna fuente de configuración legible establece `cleanupPeriodDays`, `"false"` en caso contrario. En los eventos completados, `"true"` significa que se aplicó el valor predeterminado de 30 días

1470* `skip_reason`: por qué Claude Code pausó el barrido. Solo está presente cuando `result` es `"skipped"`:1470* `skip_reason`: por qué Claude Code pausó el barrido. Presente solo cuando `result` es `"skipped"`:

1471 * `"user_source_disabled"`: la configuración del usuario está excluida, por ejemplo mediante el flag [`--setting-sources`](https://code.claude.com/docs/es/cli-reference#cli-flags) o la opción [`settingSources`](https://code.claude.com/docs/es/agent-sdk/typescript#options) del SDK, y ninguna fuente habilitada proporciona `cleanupPeriodDays`1471 * `"user_source_disabled"`: la configuración del usuario está excluida, por ejemplo mediante el flag [`--setting-sources`](https://code.claude.com/docs/es/cli-reference#cli-flags) o la opción [`settingSources`](https://code.claude.com/docs/es/agent-sdk/typescript#options) del SDK, y ninguna fuente habilitada proporciona `cleanupPeriodDays`

1472 * `"settings_unknowable"`: no se pudo leer ni analizar un archivo de configuración, por lo que `cleanupPeriodDays` o `desktopSessionCleanupPeriodDays` podrían estar establecidos en un valor que Claude Code no puede ver1472 * `"settings_unknowable"`: no se pudo leer o analizar un archivo de configuración, por lo que `cleanupPeriodDays` o `desktopSessionCleanupPeriodDays` podrían estar establecidos en un valor que Claude Code no puede ver

1473 * `"settings_invalid_key_set"`: la configuración tiene errores de validación y `cleanupPeriodDays` o `desktopSessionCleanupPeriodDays` está establecido explícitamente, por lo que recurrir al valor predeterminado podría eliminar o conservar archivos en contra de ese ajuste1473 * `"settings_invalid_key_set"`: la configuración tiene errores de validación y `cleanupPeriodDays` o `desktopSessionCleanupPeriodDays` están establecidos explícitamente, por lo que recurrir al valor predeterminado podría eliminar o conservar archivos en contra de ese ajuste

1474 * `"remote_settings_unknowable"`: una sesión en la pestaña Code de Claude Desktop en un despliegue de terceros solicitó la [configuración administrada por el servidor](https://code.claude.com/docs/es/server-managed-settings.md). No recibió ninguna respuesta utilizable, por lo que `cleanupPeriodDays` podría estar establecido en un valor que Claude Code no puede ver

1474* `transcripts_deleted`: número de transcripciones de sesiones, los archivos `~/.claude/projects/*/*.jsonl` de nivel superior, que eliminó el barrido1475* `transcripts_deleted`: número de transcripciones de sesiones, los archivos `~/.claude/projects/*/*.jsonl` de nivel superior, que eliminó el barrido

1475* `transcripts_exempted_desktop`: número de transcripciones que superan el período de retención y que el barrido conservó según la [regla de Claude Desktop y Cowork](https://code.claude.com/docs/es/claude-directory.md#cleaned-up-automatically). Estas no cuentan para `files_past_cutoff`. Requiere Claude Code v2.1.248 o posterior1476* `transcripts_exempted_desktop`: número de transcripciones que superan el período de retención y que el barrido conservó según la [regla de Claude Desktop y Cowork](https://code.claude.com/docs/es/claude-directory.md#cleaned-up-automatically). Estas no cuentan para `files_past_cutoff`. Requiere Claude Code v2.1.248 o posterior

1476* `session_files_deleted`: número de artefactos que eliminó el barrido de archivos de sesión: transcripciones más archivos complementarios por sesión, como archivos sidecar, grabaciones y resultados de herramientas1477* `session_files_deleted`: número de artefactos que eliminó el barrido de archivos de sesión: transcripciones más archivos complementarios por sesión, como archivos sidecar, grabaciones y resultados de herramientas

Details

338| Un trabajo recurrente programado con una herramienta como CronCreate que vence antes de la siguiente entrada del usuario | No inicia ningún turno en ese momento. El trabajo pierde esa ejecución y conserva su programación. | No hace falta nada |338| Un trabajo recurrente programado con una herramienta como CronCreate que vence antes de la siguiente entrada del usuario | No inicia ningún turno en ese momento. El trabajo pierde esa ejecución y conserva su programación. | No hace falta nada |

339| Un evento de un monitor que inició tu mod | El monitor sigue en ejecución. Un evento que el monitor genera antes de la siguiente entrada del usuario se descarta, excepto el aviso de que el monitor terminó, que llega después de esa entrada. | No se puede hacer nada |339| Un evento de un monitor que inició tu mod | El monitor sigue en ejecución. Un evento que el monitor genera antes de la siguiente entrada del usuario se descarta, excepto el aviso de que el monitor terminó, que llega después de esa entrada. | No se puede hacer nada |

340| Un subagente que tu mod generó y luego reanudó con `$.session.send` y que termina antes de la siguiente entrada del usuario | Su aviso de finalización espera y llega a la conversación después de esa entrada | No hace falta nada |340| Un subagente que tu mod generó y luego reanudó con `$.session.send` y que termina antes de la siguiente entrada del usuario | Su aviso de finalización espera y llega a la conversación después de esa entrada | No hace falta nada |

341| Un comando de Bash o PowerShell en primer plano de `$.tool.call` que ya estaba en ejecución cuando el usuario detuvo el turno y que alcanza su tiempo de espera antes de la siguiente entrada del usuario | Se detiene al alcanzar su tiempo de espera en lugar de [pasar a segundo plano](https://code.claude.com/docs/es/tools-reference.md#foreground-commands-that-move-to-the-background). La llamada se resuelve con `isError` establecido, y la salida incluye la línea `Ended instead of moving to the background: plugins' input is held, by a Stop or by the host's limits.` | Ejecútalo de nuevo después de la siguiente entrada del usuario, como se muestra en [Reintentar una llamada rechazada o descartada](#retry-a-refused-or-dropped-call) |

341 342 

342Cuando un trabajo programado vence o un monitor genera un evento antes de la siguiente entrada del usuario, el usuario puede ver la [notificación emergente `Stopped:`](https://code.claude.com/docs/es/plugins/mods/troubleshoot#stopped-type-a-message-to-continue).343Cuando un trabajo programado vence o un monitor genera un evento antes de la siguiente entrada del usuario, el usuario puede ver la [notificación emergente `Stopped:`](https://code.claude.com/docs/es/plugins/mods/troubleshoot#stopped-type-a-message-to-continue).

343 344 

Details

94 94 

95En la mayoría de los modelos, cambiar el [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) a mitad de sesión significa que la siguiente solicitud lee todo el historial de conversación sin aciertos de caché. Mientras la caché aún está activa, Claude Code te pide que confirmes el cambio primero.95En la mayoría de los modelos, cambiar el [nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) a mitad de sesión significa que la siguiente solicitud lee todo el historial de conversación sin aciertos de caché. Mientras la caché aún está activa, Claude Code te pide que confirmes el cambio primero.

96 96 

97En Opus 5.5, Sonnet 5.5, Haiku 5.5 y Fable 5.1 con una clave de API o una suscripción a Claude, cambiar el esfuerzo mantiene la caché, y Claude Code aplica el nuevo nivel sin preguntar. Esto no se aplica en Amazon Bedrock, en Agent Platform de Google Cloud, ni en un [gateway de aplicaciones de Claude](https://code.claude.com/docs/es/claude-apps-gateway), ni cuando estableces [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](https://code.claude.com/docs/es/llm-gateway-protocol#disable-pre-release-capabilities) o tu organización tiene una configuración HIPAA.97En Opus 5.5, Sonnet 5.5, Haiku 5.5 y Fable 5.1 con una clave de API o una suscripción a Claude, mantienes la caché cuando cambias el esfuerzo. Claude Code [aplica el nuevo nivel](https://code.claude.com/docs/es/model-config.md#when-a-new-effort-level-starts) sin preguntar. En Amazon Bedrock, en Agent Platform de Google Cloud o en un [gateway de aplicaciones de Claude](https://code.claude.com/docs/es/claude-apps-gateway), o cuando estableces [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](https://code.claude.com/docs/es/llm-gateway-protocol#disable-pre-release-capabilities) o tu organización tiene una configuración HIPAA, funciona como en la mayoría de los modelos.

98 98 

99Antes de v2.1.260, cambiar el esfuerzo en Fable 5.1 con una clave de API o una suscripción a Claude también invalidaba la caché.99Antes de v2.1.260, cambiar el esfuerzo en Fable 5.1 con una clave de API o una suscripción a Claude también invalidaba la caché.

100 100 

sandboxing.md +2 −0

Details

565 565 

566En macOS, cuando una ruta denegada pasa por un enlace simbólico, como un `~/.claude` que es un enlace a un repositorio de dotfiles, el sandbox también deniega la ubicación real de la ruta. Esto abarca las denegaciones propias del sandbox y tus entradas literales de `denyWrite` y `denyRead`.566En macOS, cuando una ruta denegada pasa por un enlace simbólico, como un `~/.claude` que es un enlace a un repositorio de dotfiles, el sandbox también deniega la ubicación real de la ruta. Esto abarca las denegaciones propias del sandbox y tus entradas literales de `denyWrite` y `denyRead`.

567 567 

568Una entrada de `denyWrite` que contiene `*`, `?` o `[` también queda cubierta cuando una carpeta anterior al primero de esos caracteres es un enlace simbólico. Por ejemplo, `~/.claude/*.json` también se deniega en la ubicación real de `~/.claude`.

569 

568### Aislamiento de red570### Aislamiento de red

569 571 

570Un comando en el sandbox no tiene una ruta directa a la red:572Un comando en el sandbox no tiene una ruta directa a la red:

Details

40* **Retención cero de datos y HIPAA**: no disponible para organizaciones con [Retención cero de datos](https://code.claude.com/docs/es/zero-data-retention.md) habilitada o con la [configuración de HIPAA](https://code.claude.com/docs/es/hipaa-setup.md) aplicada.40* **Retención cero de datos y HIPAA**: no disponible para organizaciones con [Retención cero de datos](https://code.claude.com/docs/es/zero-data-retention.md) habilitada o con la [configuración de HIPAA](https://code.claude.com/docs/es/hipaa-setup.md) aplicada.

41* **Inferencia de modelos**: las sesiones utilizan la API de Anthropic, a menos que configures un runner para [enviar solicitudes del modelo a Amazon Bedrock o a Agent Platform de Google Cloud](https://code.claude.com/docs/es/self-hosted-environments-configuration.md#send-model-requests-to-bedrock-or-agent-platform). El contenido de las sesiones se envía a Anthropic en ambos casos. En un runner configurado de esta manera, la [configuración administrada por el servidor](https://code.claude.com/docs/es/server-managed-settings.md) y las políticas de la organización de claude.ai no llegan a las sesiones.41* **Inferencia de modelos**: las sesiones utilizan la API de Anthropic, a menos que configures un runner para [enviar solicitudes del modelo a Amazon Bedrock o a Agent Platform de Google Cloud](https://code.claude.com/docs/es/self-hosted-environments-configuration.md#send-model-requests-to-bedrock-or-agent-platform). El contenido de las sesiones se envía a Anthropic en ambos casos. En un runner configurado de esta manera, la [configuración administrada por el servidor](https://code.claude.com/docs/es/server-managed-settings.md) y las políticas de la organización de claude.ai no llegan a las sesiones.

42* **Superficies**: sesiones iniciadas desde [claude.ai/code](https://claude.ai/code), las aplicaciones móviles y de escritorio, [tareas programadas en la nube](https://code.claude.com/docs/es/routines.md), y la terminal, con [`claude --cloud`](https://code.claude.com/docs/es/claude-code-on-the-web#from-terminal-to-cloud) o un [envío `--environment`](https://code.claude.com/docs/es/self-hosted-environments-testing#run-the-test-loop), pueden ejecutarse en entornos autohospedados. Las sesiones de [Claude Tag](https://claude.com/docs/claude-tag/overview) también pueden ejecutarse en ellos, pero Claude aún no puede usar [Paquetes de acceso](https://claude.com/docs/claude-tag/concepts/glossary#access-bundle) en esas sesiones. Las sesiones de [Claude Security](https://code.claude.com/docs/es/claude-security.md) y [Code Review](https://code.claude.com/docs/es/code-review.md) aún no se enrutan a ellos. El soporte para esas dos superficies llegará por separado.42* **Superficies**: sesiones iniciadas desde [claude.ai/code](https://claude.ai/code), las aplicaciones móviles y de escritorio, [tareas programadas en la nube](https://code.claude.com/docs/es/routines.md), y la terminal, con [`claude --cloud`](https://code.claude.com/docs/es/claude-code-on-the-web#from-terminal-to-cloud) o un [envío `--environment`](https://code.claude.com/docs/es/self-hosted-environments-testing#run-the-test-loop), pueden ejecutarse en entornos autohospedados. Las sesiones de [Claude Tag](https://claude.com/docs/claude-tag/overview) también pueden ejecutarse en ellos, pero Claude aún no puede usar [Paquetes de acceso](https://claude.com/docs/claude-tag/concepts/glossary#access-bundle) en esas sesiones. Las sesiones de [Claude Security](https://code.claude.com/docs/es/claude-security.md) y [Code Review](https://code.claude.com/docs/es/code-review.md) aún no se enrutan a ellos. El soporte para esas dos superficies llegará por separado.

43* **Repositorios**: las sesiones clonan repositorios desde GitHub; consulte [Opciones de autenticación de GitHub](https://code.claude.com/docs/es/claude-code-on-the-web.md#github-authentication-options). Para un host de GitHub Enterprise Server, consulte sus [requisitos de red](https://code.claude.com/docs/es/github-enterprise-server.md#network-requirements).43* **Repositorios**: las sesiones clonan repositorios desde GitHub o GitHub Enterprise Server. Las sesiones iniciadas con un envío `--environment` también pueden usar otro host de Git:

44 * **GitHub**: consulta [Opciones de autenticación de GitHub](https://code.claude.com/docs/es/claude-code-on-the-web.md#github-authentication-options).

45 * **GitHub Enterprise Server**: consulta sus [requisitos de red](https://code.claude.com/docs/es/github-enterprise-server.md#network-requirements).

46 * **Otro host de Git**: consulta los [requisitos para iniciar una sesión con `--environment`](https://code.claude.com/docs/es/self-hosted-environments-deploy#start-a-session-on-a-repository-outside-github).

44* **Facturación**: las sesiones en un entorno autohospedado consumen el uso de Claude Code de su organización de la misma manera que las sesiones en entornos alojados por Anthropic.47* **Facturación**: las sesiones en un entorno autohospedado consumen el uso de Claude Code de su organización de la misma manera que las sesiones en entornos alojados por Anthropic.

45 48 

46## Por qué autohospedar49## Por qué autohospedar


113 116 

114* **Plano de control**: el ejecutor sondea `api.anthropic.com` para trabajo y publica eventos de progreso de configuración y falla, todo HTTPS saliente. El sondeo funciona como el latido del corazón del ejecutor.117* **Plano de control**: el ejecutor sondea `api.anthropic.com` para trabajo y publica eventos de progreso de configuración y falla, todo HTTPS saliente. El sondeo funciona como el latido del corazón del ejecutor.

115* **Git**: el ejecutor clona desde tu host de git y envía cambios a él sobre HTTPS o SSH, autenticado con credenciales que proporciona tu despliegue. Consulta [Configurar git](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#configure-git) para ver las opciones, incluidas las credenciales generadas por sesión. Con el [proxy de git de Anthropic](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#use-the-anthropic-git-proxy), el tráfico de git para repositorios en github.com pasa en cambio por `api.anthropic.com`.118* **Git**: el ejecutor clona desde tu host de git y envía cambios a él sobre HTTPS o SSH, autenticado con credenciales que proporciona tu despliegue. Consulta [Configurar git](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#configure-git) para ver las opciones, incluidas las credenciales generadas por sesión. Con el [proxy de git de Anthropic](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#use-the-anthropic-git-proxy), el tráfico de git para repositorios en github.com pasa en cambio por `api.anthropic.com`.

116* **Secundario de sesión**: el proceso secundario de Claude Code mantiene el stream de eventos de la sesión hacia `api.anthropic.com`, y realiza sus propias llamadas salientes para la inferencia de modelos y para los comandos de git ejecutados durante la sesión. En una sesión que usa [git administrado por Anthropic](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#use-the-anthropic-git-proxy), el secundario envía su tráfico de `git` y `gh` para github.com a través de una conexión WebSocket que abre hacia `api.anthropic.com`.119* **Proceso hijo de la sesión**: el proceso hijo de Claude Code mantiene el flujo de eventos de la sesión hacia `api.anthropic.com` y realiza sus propias llamadas salientes para la inferencia del modelo y para los comandos de git que se ejecutan durante la sesión. En una sesión que usa [git administrado por Anthropic](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#use-the-anthropic-git-proxy), el proceso hijo abre una conexión WebSocket a `api.anthropic.com` que transporta el tráfico de github.com de `git` y `gh`.

117* **Conector SCM**: el [conector SCM](https://code.claude.com/docs/es/self-hosted-environments-reference.md#scm-connector-flags) opcional del orquestador no está disponible, por lo que su túnel no se abre. El túnel es una conexión WebSocket hacia `api.anthropic.com`.120* **Conector SCM**: el [conector SCM](https://code.claude.com/docs/es/self-hosted-environments-reference.md#scm-connector-flags) opcional del orquestador no está disponible, por lo que su túnel no se abre. El túnel es una conexión WebSocket hacia `api.anthropic.com`.

118 121 

119Consulta [Requisitos de red](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#network-requirements) para ver la lista completa de salida. El [diagrama anterior](#how-self-hosted-environments-work) muestra estas rutas, aparte del conector SCM opcional y la conexión de git administrado por Anthropic.122Consulta [Requisitos de red](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#network-requirements) para ver la lista completa de salida. El [diagrama anterior](#how-self-hosted-environments-work) muestra estas rutas, aparte del conector SCM opcional y la conexión de git administrado por Anthropic.

Details

42| `CLAUDE_CODE_REMOTE_MCP_CONFIG` | Ruta a un archivo en `CLAUDE_CONFIG_DIR` que contiene las definiciones de servidores MCP que el plano de control de Anthropic entregó para esta sesión. Si tu contenedor reconstruye el entorno del hijo, conserva esta variable. Sin ella, cuando el plano de control actualiza los servidores entregados, el hijo cierra cualquier servidor stdio, HTTP o SSE que tu contenedor agregue con [`--mcp-config`](https://code.claude.com/docs/es/cli-reference#cli-flags) y que no esté en la actualización. Requiere Claude Code v2.1.299 o posterior. |42| `CLAUDE_CODE_REMOTE_MCP_CONFIG` | Ruta a un archivo en `CLAUDE_CONFIG_DIR` que contiene las definiciones de servidores MCP que el plano de control de Anthropic entregó para esta sesión. Si tu contenedor reconstruye el entorno del hijo, conserva esta variable. Sin ella, cuando el plano de control actualiza los servidores entregados, el hijo cierra cualquier servidor stdio, HTTP o SSE que tu contenedor agregue con [`--mcp-config`](https://code.claude.com/docs/es/cli-reference#cli-flags) y que no esté en la actualización. Requiere Claude Code v2.1.299 o posterior. |

43| `ANTHROPIC_BASE_URL` | La URL base de API que el hijo usará, entregada por el plano de control por sesión y normalmente `https://api.anthropic.com`. No la sobrescribas: la credencial de inferencia de la sesión es un token OAuth emitido por Anthropic que otros proveedores no aceptan. |43| `ANTHROPIC_BASE_URL` | La URL base de API que el hijo usará, entregada por el plano de control por sesión y normalmente `https://api.anthropic.com`. No la sobrescribas: la credencial de inferencia de la sesión es un token OAuth emitido por Anthropic que otros proveedores no aceptan. |

44| `CLAUDE_CODE_OAUTH_TOKEN` | El token de acceso OAuth de corta duración que el hijo usa para inferencia de modelo, con una vida útil de aproximadamente 30 minutos. El ejecutor lo vuelve a emitir antes del vencimiento y entrega la rotación a través del stdin del hijo, por lo que un contenedor que no [mantiene stdin adjunto](#keep-stdin-and-file-descriptor-3-attached) solo ve el valor inicial. No confíes en la lista de IP permitidas de tu organización para limitar el uso de este token: trátalo como una credencial de portador que permanece utilizable durante aproximadamente 30 minutos si se filtra, y no lo registres, no lo escribas en disco ni lo reenvíes fuera del contenedor de sesión. |44| `CLAUDE_CODE_OAUTH_TOKEN` | El token de acceso OAuth de corta duración que el hijo usa para inferencia de modelo, con una vida útil de aproximadamente 30 minutos. El ejecutor lo vuelve a emitir antes del vencimiento y entrega la rotación a través del stdin del hijo, por lo que un contenedor que no [mantiene stdin adjunto](#keep-stdin-and-file-descriptor-3-attached) solo ve el valor inicial. No confíes en la lista de IP permitidas de tu organización para limitar el uso de este token: trátalo como una credencial de portador que permanece utilizable durante aproximadamente 30 minutos si se filtra, y no lo registres, no lo escribas en disco ni lo reenvíes fuera del contenedor de sesión. |

45| `CLAUDE_RUNNER_ALIVE_EVERY_MS` | El ejecutor establece con qué frecuencia, en milisegundos, el hijo informa que está activo cuando un [turno comienza antes de que el hijo se inicialice](https://code.claude.com/docs/es/self-hosted-environments-reference.md#session-startup-timeout). Si tu contenedor reconstruye el entorno del hijo, conserva esta variable, o el ejecutor puede liberar la sesión durante ese turno y registrar `no child output for <n> — releasing`. Requiere v2.1.309 o posterior en el ejecutor y en el hijo. |

45 46 

46El contenedor también hereda el resto del entorno administrado del hijo, incluida cualquier variable de entorno proporcionada por el servidor. `exec` lo propaga todo automáticamente; si tu contenedor genera el hijo de otra manera, reenvía el entorno completo.47El contenedor también hereda el resto del entorno administrado del hijo, incluida cualquier variable de entorno proporcionada por el servidor. `exec` lo propaga todo automáticamente; si tu contenedor genera el hijo de otra manera, reenvía el entorno completo.

47 48 


307| `CLAUDE_RUNNER_ATTEMPT` | Un contador por sesión para usar en el registro. No es un recuento de reintentos ni un recuento de solicitudes. `0` para solicitudes de precalentamiento, aunque una solicitud para una sesión también puede llevar `0`. |308| `CLAUDE_RUNNER_ATTEMPT` | Un contador por sesión para usar en el registro. No es un recuento de reintentos ni un recuento de solicitudes. `0` para solicitudes de precalentamiento, aunque una solicitud para una sesión también puede llevar `0`. |

308| `CLAUDE_RUNNER_ORDER_SERVER_TIME` | Hora del servidor del encabezado HTTP `Date` de la respuesta de sondeo. Cuando el hook verifica el `exp` del JWT de orden de trabajo, compare contra este valor en lugar del reloj local para tolerar sesgo. Vacío cuando la puerta de enlace omitió el encabezado. |309| `CLAUDE_RUNNER_ORDER_SERVER_TIME` | Hora del servidor del encabezado HTTP `Date` de la respuesta de sondeo. Cuando el hook verifica el `exp` del JWT de orden de trabajo, compare contra este valor en lugar del reloj local para tolerar sesgo. Vacío cuando la puerta de enlace omitió el encabezado. |

309| `CLAUDE_RUNNER_POOL_ID` | El ID del entorno al que el nuevo ejecutor debe unirse, en forma `ccpool_...` |310| `CLAUDE_RUNNER_POOL_ID` | El ID del entorno al que el nuevo ejecutor debe unirse, en forma `ccpool_...` |

310| `CLAUDE_RUNNER_ACCOUNT_ID` | ID etiquetado de la cuenta que encoló la sesión. Úsalo para enrutamiento por cuenta, cuota o contracargo, no como clave de deduplicación. Vacío cuando no está disponible, y siempre vacío para sesiones de canal Claude Tag, que ninguna cuenta encola. |311| `CLAUDE_RUNNER_ACCOUNT_ID` | ID etiquetado de la cuenta que encoló la sesión. Úsalo para enrutamiento por cuenta, cuota o contracargo, no como clave de deduplicación. Vacío cuando no está disponible. |

311| `CLAUDE_RUNNER_ACCOUNT_EMAIL` | Correo electrónico de la cuenta que encoló la sesión. Vacío cuando no está disponible. Trate el correo electrónico como información de identificación personal y no lo registre. |312| `CLAUDE_RUNNER_ACCOUNT_EMAIL` | Correo electrónico de la cuenta que encoló la sesión. Vacío cuando no está disponible. Trate el correo electrónico como información de identificación personal y no lo registre. |

312| `CLAUDE_RUNNER_PRIMARY_REPO_URL` | URL de la primera fuente git de la sesión, para enrutamiento a un ejecutor con ese repositorio precalentado. Vacío cuando la sesión no tiene fuentes git. |313| `CLAUDE_RUNNER_PRIMARY_REPO_URL` | URL de la primera fuente git de la sesión, para enrutamiento a un ejecutor con ese repositorio precalentado. Vacío cuando la sesión no tiene fuentes git. |

313| `CLAUDE_RUNNER_PRIMARY_REPO_REVISION` | Revisión de la primera fuente git de la sesión: rama, SHA, etiqueta o nombre de referencia completo. Vacío cuando no se especifica. |314| `CLAUDE_RUNNER_PRIMARY_REPO_REVISION` | Revisión de la primera fuente git de la sesión: rama, SHA, etiqueta o nombre de referencia completo. Vacío cuando no se especifica. |


381 382 

382| Flag, con un valor de ejemplo | A quién pasarlo | Qué hace |383| Flag, con un valor de ejemplo | A quién pasarlo | Qué hace |

383| :- | :- | :- |384| :- | :- | :- |

384| `--release-idle-session-min 30` | Cada ejecutor que inicia tu hook | El ejecutor libera su sesión después de esa cantidad de minutos de inactividad y luego sale con 0. La sesión se reanuda cuando su usuario envía su siguiente mensaje, pero [el trabajo que no había enviado con push se pierde](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#additional-limitations). [Retén una sesión](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#keep-an-idle-session-while-its-processes-run) para los procesos que dejó en ejecución. |385| `--release-idle-session-min 30` | Cada ejecutor que inicia tu hook | El ejecutor libera su sesión después de esa cantidad de minutos de inactividad y luego sale con 0. La sesión se reanuda cuando su usuario envía su siguiente mensaje, pero [el trabajo que no había enviado con push se pierde](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#resumed-sessions-lose-unpushed-work). [Retén una sesión](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#keep-an-idle-session-while-its-processes-run) para los procesos que dejó en ejecución. |

385| `--kill-session-after-min 480` | Cada ejecutor que inicia tu hook | Limita cada sesión a esa cantidad de minutos, como respaldo para las [sesiones que no cuentan como inactivas](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#some-sessions-don’t-count-as-idle), así que establécelo por encima de tu sesión más larga esperada |386| `--kill-session-after-min 480` | Cada ejecutor que inicia tu hook | Limita cada sesión a esa cantidad de minutos, como respaldo para las [sesiones que no cuentan como inactivas](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#some-sessions-don’t-count-as-idle), así que establécelo por encima de tu sesión más larga esperada |

386| `--exit-if-unused-min 60` | Ejecutores en espera, que tu hook inicia para solicitudes de precalentamiento | Un ejecutor en espera que nunca toma una sesión sale después de esa cantidad de minutos. Si estableces [`--min-idle`](https://code.claude.com/docs/es/self-hosted-environments-reference#orchestrator-cli-flags), obtienes un reemplazo a menos que el ejecutor en espera fuera excedente, así que usa un valor muy superior a tu tiempo de arranque. |387| `--exit-if-unused-min 60` | Ejecutores en espera, que tu hook inicia para solicitudes de precalentamiento | Un ejecutor en espera que nunca toma una sesión sale después de esa cantidad de minutos. Si estableces [`--min-idle`](https://code.claude.com/docs/es/self-hosted-environments-reference#orchestrator-cli-flags), obtienes un reemplazo a menos que el ejecutor en espera fuera excedente, así que usa un valor muy superior a tu tiempo de arranque. |

387 388 


761 762 

762* **Una identidad de git**: establece `user.name` y `user.email` en la imagen de tu ejecutor, o inicia el ejecutor con [`--configure-git`](https://code.claude.com/docs/es/self-hosted-environments-deploy#let-the-runner-configure-git)763* **Una identidad de git**: establece `user.name` y `user.email` en la imagen de tu ejecutor, o inicia el ejecutor con [`--configure-git`](https://code.claude.com/docs/es/self-hosted-environments-deploy#let-the-runner-configure-git)

763* **Credenciales de push**: usa [git administrado por Anthropic](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#use-the-anthropic-git-proxy), o proporciona credenciales como se describe en [Incluir la configuración de git en tu imagen](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#ship-git-config-in-your-image)764* **Credenciales de push**: usa [git administrado por Anthropic](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#use-the-anthropic-git-proxy), o proporciona credenciales como se describe en [Incluir la configuración de git en tu imagen](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#ship-git-config-in-your-image)

764* **Para sesiones reanudadas**: establece [`--push-outcome-on-release`](https://code.claude.com/docs/es/self-hosted-environments-reference#runner-cli-flags) en cada ejecutor del entorno. Así, una sesión reanudada comienza desde los commits que Claude envió a la rama de la sesión. Para conocer los límites del flag, consulta [Las sesiones reanudadas pierden el trabajo no enviado](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#additional-limitations).765* **Para sesiones reanudadas**: establece [`--push-outcome-on-release`](https://code.claude.com/docs/es/self-hosted-environments-reference#runner-cli-flags) en cada ejecutor del entorno. Así, una sesión reanudada comienza desde los commits que Claude envió a la rama de la sesión. Para conocer los límites del flag, consulta [Las sesiones reanudadas pierden el trabajo no enviado](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#resumed-sessions-lose-unpushed-work).

765 766 

766El hook Stop hace la solicitud como máximo una vez por turno. Si el commit o el push fallan, el turno termina de todos modos. Busca el error de git en la sesión y corrige lo que indique.767El hook Stop hace la solicitud como máximo una vez por turno. Si el commit o el push fallan, el turno termina de todos modos. Busca el error de git en la sesión y corrige lo que indique.

767 768 

Details

63 63 

64| Host | Puerto | Cuando es requerido |64| Host | Puerto | Cuando es requerido |

65| :- | :- | :- |65| :- | :- | :- |

66| `api.github.com` | 443 | Con o sin `--use-anthropic-git-proxy`, cuando la imagen del runner incluye la [GitHub CLI](#github-api-access-with-the-github-cli) y das a las sesiones una credencial de github.com, como un `GH_TOKEN` |

66| `downloads.claude.ai` | 443 | En el momento de la instalación, cuando instala o actualiza Claude Code en el host con el instalador nativo; el script `install.sh` en sí se sirve desde `claude.ai`. En tiempo de ejecución de sesión, solo cuando las sesiones instalan plugins del mercado oficial de Anthropic. |67| `downloads.claude.ai` | 443 | En el momento de la instalación, cuando instala o actualiza Claude Code en el host con el instalador nativo; el script `install.sh` en sí se sirve desde `claude.ai`. En tiempo de ejecución de sesión, solo cuando las sesiones instalan plugins del mercado oficial de Anthropic. |

67| `storage.googleapis.com` | 443 | En tiempo de ejecución de sesión, para los recuentos de instalación de plugins y metadatos mostrados en `/plugin`. |68| `storage.googleapis.com` | 443 | En tiempo de ejecución de sesión, para los recuentos de instalación de plugins y metadatos mostrados en `/plugin`. |

68| `code.claude.com` y `claude.com` | 443 | Búsquedas de documentación por el agente integrado claude-code-guide y solicitudes de WebFetch preaprobadas durante sesiones. Bloquear estos hosts solo afecta las búsquedas de documentación. |69| `code.claude.com` y `claude.com` | 443 | Búsquedas de documentación por el agente integrado claude-code-guide y solicitudes de WebFetch preaprobadas durante sesiones. Bloquear estos hosts solo afecta las búsquedas de documentación. |


167 168 

168* El runner establece `GIT_TERMINAL_PROMPT=0`, por lo que git no pide un nombre de usuario o contraseña.169* El runner establece `GIT_TERMINAL_PROMPT=0`, por lo que git no pide un nombre de usuario o contraseña.

169* El runner ejecuta SSH con `BatchMode=yes`, añadido a su `GIT_SSH_COMMAND` si establece uno, por lo que SSH no pide una frase de contraseña o confirmación de host.170* El runner ejecuta SSH con `BatchMode=yes`, añadido a su `GIT_SSH_COMMAND` si establece uno, por lo que SSH no pide una frase de contraseña o confirmación de host.

170* El runner establece `GCM_INTERACTIVE=never`, por lo que Git Credential Manager no abre un diálogo de inicio de sesión.171* El runner establece `GCM_INTERACTIVE=never`, por lo que Git Credential Manager no abre un diálogo de inicio de sesión. Antes de v2.1.229, la preparación del repositorio podía quedarse colgada en una solicitud de Git Credential Manager.

171* El runner borra `core.askPass`, así que si usa un ayudante askpass, establézcalo a través de la variable de entorno `GIT_ASKPASS` en su lugar.172* El runner borra `core.askPass`, así que si usa un ayudante askpass, establézcalo a través de la variable de entorno `GIT_ASKPASS` en su lugar.

172 173 

173Si su host de git rechaza la credencial, o no configuró una, el runner reintenta algunas veces y luego falla la preparación del repositorio cuando el repositorio es el que la sesión empuja resultados a. Para un repositorio que la sesión solo lee, [Troubleshooting](#troubleshooting) cubre cuándo el runner lo omite en su lugar. El runner no pasa estas configuraciones al entorno de la sesión.174Si su host de git rechaza la credencial, o no configuró una, el runner reintenta algunas veces y luego falla la preparación del repositorio cuando el repositorio es el que la sesión empuja resultados a. Para un repositorio que la sesión solo lee, [Troubleshooting](#troubleshooting) cubre cuándo el runner lo omite en su lugar. El runner no pasa estas configuraciones al entorno de la sesión.


287* **`jq`**: instala `jq` en la imagen si quieres que `--jq` funcione288* **`jq`**: instala `jq` en la imagen si quieres que `--jq` funcione

288* **[`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](https://code.claude.com/docs/es/env-vars)**: si el entorno de la sesión la establece, Claude Code no proporciona el `gh` integrado, y la sesión no tiene `gh`289* **[`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](https://code.claude.com/docs/es/env-vars)**: si el entorno de la sesión la establece, Claude Code no proporciona el `gh` integrado, y la sesión no tiene `gh`

289 290 

290Cuando la imagen incluye la GitHub CLI, las sesiones la usan.291#### Acceso a la API de GitHub con la GitHub CLI

292 

293Si la imagen de tu runner incluye la GitHub CLI para que la usen las sesiones, haz que tu [script de envoltura](https://code.claude.com/docs/es/self-hosted-environments-configuration.md#provision-credentials-scoped-to-the-session-creator) genere por sesión un `GH_TOKEN` de corta duración y alcance mínimo para el creador de la sesión. Cuando `gh` está en el `PATH` con el que se inicia Claude Code, la sesión tiene ese `gh` y ningún [`gh` integrado](#github-api-access-without-the-github-cli). Con el token, ese `gh` llega a GitHub con el acceso que el token conceda y fuera de git gestionado por Anthropic, así que permite [`api.github.com`](#network-requirements).

294 

295Con git gestionado por Anthropic, deja la GitHub CLI fuera de la imagen para usar el `gh` integrado en su lugar.

291 296 

292#### Confíe en una autoridad de certificados privada con git gestionado por Anthropic297#### Confíe en una autoridad de certificados privada con git gestionado por Anthropic

293 298 


343 348 

344La reescritura de host se ejecuta primero, así que enumere el nombre de host interno en `--git-ssh-rewrite` si necesita ambos. Para control total sobre el checkout, use un [hook de ciclo de vida `checkout`](https://code.claude.com/docs/es/self-hosted-environments-configuration#checkout).349La reescritura de host se ejecuta primero, así que enumere el nombre de host interno en `--git-ssh-rewrite` si necesita ambos. Para control total sobre el checkout, use un [hook de ciclo de vida `checkout`](https://code.claude.com/docs/es/self-hosted-environments-configuration#checkout).

345 350 

351### Inicia una sesión en un repositorio fuera de GitHub

352 

353Para ejecutar una sesión en un repositorio de un host de git distinto de GitHub, inicia la sesión desde tu terminal, en un checkout de ese repositorio. Primero revisa las credenciales de git del runner, la red y el proxy de git, la dirección del repositorio y tu rama:

354 

355* **Credenciales de git y red**: [proporciona credenciales](#ship-git-config-in-your-image) que [funcionen sin pedir nada](#git-must-work-without-a-prompt) para `https://<host>/<owner>/<name>`, la dirección que clona el runner, y permite que el runner llegue a tu host de git, como indica [Requisitos de red](#network-requirements). Para un host de git que solo acepta SSH, consulta [`--git-ssh-rewrite`](#rewrite-git-urls-for-private-networks).

356* **Proxy de git**: si los runners del entorno usan el proxy de git de Anthropic, [desactívalo](#turn-the-anthropic-git-proxy-off).

357* **Dirección del repositorio**: revisa el remoto `origin` del checkout. Su host debe ser un nombre de dominio como `git.example.com`, y su ruta debe tener la forma `<owner>/<name>`. Una ruta anidada como `group/subgroup/name` no es válida.

358* **Rama**: haz push a tu host de git de la rama en la que estás, porque el runner clona esa rama.

359 

360En el checkout, con la sesión iniciada en claude.ai como describe [Autenticarse desde CI](https://code.claude.com/docs/es/self-hosted-environments-testing.md#authenticate-from-ci), ejecuta `claude -p` con [`--environment`](https://code.claude.com/docs/es/self-hosted-environments-testing#run-the-test-loop) y el ID `ccpool_...` de tu entorno:

361 

362```bash theme={null}

363claude -p "Fix the login bug" --environment ccpool_abc123 --output-format json

364```

365 

366Cuando se crea la sesión, el comando imprime una línea de JSON que empieza con `{"ok":true`. Si el remoto `origin` no cumple estos requisitos, el comando falla con `requires a git source, but no GitHub remote was detected`.

367 

368Revisa y fusiona en tu host de git las ramas a las que las sesiones [hacen push](https://code.claude.com/docs/es/self-hosted-environments-configuration.md#prompt-sessions-to-push-their-work).

369 

346## Construya la imagen del runner370## Construya la imagen del runner

347 371 

348Anthropic no publica una imagen de runner precompilada. Construya la suya alrededor del binario `claude`, agregando cualquier cadena de herramientas que sus repositorios necesiten: tiempos de ejecución de lenguaje, compiladores, gestores de paquetes, y sidecars de [MCP](https://code.claude.com/docs/es/mcp.md).372Anthropic no publica una imagen de runner precompilada. Construya la suya alrededor del binario `claude`, agregando cualquier cadena de herramientas que sus repositorios necesiten: tiempos de ejecución de lenguaje, compiladores, gestores de paquetes, y sidecars de [MCP](https://code.claude.com/docs/es/mcp.md).


617 641 

618### Dejar que los turnos en ejecución terminen antes de un reinicio642### Dejar que los turnos en ejecución terminen antes de un reinicio

619 643 

620Para dejar que los turnos en ejecución terminen antes de un reinicio gradual, establece `--drain-wait-sec` y aumenta tu tiempo de parada a al menos esa espera más 80 segundos. Con la espera predeterminada de `0`, un reinicio interrumpe cualquier turno que aún esté en ejecución, y la sesión se reanuda en otro runner sin su [trabajo no enviado](#additional-limitations).644Para dejar que los turnos en ejecución terminen antes de un reinicio gradual, establece `--drain-wait-sec` y aumenta tu tiempo de parada a al menos esa espera más 80 segundos. Con la espera predeterminada de `0`, un reinicio interrumpe cualquier turno que aún esté en ejecución, y la sesión se reanuda en otro runner sin su [trabajo no enviado](#resumed-sessions-lose-unpushed-work).

621 645 

622* **`--drain-wait-sec`**: aproximadamente lo que duran los turnos y las tareas en segundo plano que quieres dejar terminar. Es un máximo: la espera termina antes si ellos terminan primero.646* **`--drain-wait-sec`**: aproximadamente lo que duran los turnos y las tareas en segundo plano que quieres dejar terminar. Es un máximo: la espera termina antes si ellos terminan primero.

623* **Tu tiempo de parada**: `terminationGracePeriodSeconds` en Kubernetes, `stop_grace_period` en Docker Compose. Por ejemplo, con `--drain-wait-sec 120`, reemplaza el `90` en la receta de [Kubernetes](#kubernetes) o de [Docker Compose](#docker-compose) por `200`.647* **Tu tiempo de parada**: `terminationGracePeriodSeconds` en Kubernetes, `stop_grace_period` en Docker Compose. Por ejemplo, con `--drain-wait-sec 120`, reemplaza el `90` en la receta de [Kubernetes](#kubernetes) o de [Docker Compose](#docker-compose) por `200`.


735 759 

736Para liberar las sesiones inactivas, inicia cada runner con [`--release-idle-session-min`](https://code.claude.com/docs/es/self-hosted-environments-reference#runner-cli-flags) y ese tiempo en minutos, como `--release-idle-session-min 30`. El runner libera entonces cualquier sesión que permanezca inactiva ese tiempo, ya sea que la haya iniciado una tarea programada o una persona, a menos que [la retengas por los procesos que dejó en ejecución](#keep-an-idle-session-while-its-processes-run).760Para liberar las sesiones inactivas, inicia cada runner con [`--release-idle-session-min`](https://code.claude.com/docs/es/self-hosted-environments-reference#runner-cli-flags) y ese tiempo en minutos, como `--release-idle-session-min 30`. El runner libera entonces cualquier sesión que permanezca inactiva ese tiempo, ya sea que la haya iniciado una tarea programada o una persona, a menos que [la retengas por los procesos que dejó en ejecución](#keep-an-idle-session-while-its-processes-run).

737 761 

738* **Trabajo sin enviar**: una sesión liberada se reanuda con su siguiente mensaje, sin el trabajo que no había enviado con push. Para conservar sus commits, consulta [Las sesiones reanudadas pierden el trabajo sin enviar](#additional-limitations).762* **Trabajo sin enviar**: una sesión liberada se reanuda con su siguiente mensaje, sin el trabajo que no había enviado con push. Para conservar sus commits, consulta [Las sesiones reanudadas pierden el trabajo sin enviar](#resumed-sessions-lose-unpushed-work).

739* **El runner termina**: un runner que libera su última sesión inicia una [salida normal](#when-the-runner-exits). Haz que tu supervisor lo reinicie en un sistema de archivos limpio, como se describe en [Refuerza tu despliegue](#harden-your-deployment).763* **El runner termina**: un runner que libera su última sesión inicia una [salida normal](#when-the-runner-exits). Haz que tu supervisor lo reinicie en un sistema de archivos limpio, como se describe en [Refuerza tu despliegue](#harden-your-deployment).

740* **Sesiones que nunca quedan inactivas**: establece también [`--kill-session-after-min`](https://code.claude.com/docs/es/self-hosted-environments-reference#runner-cli-flags), porque [algunas sesiones no cuentan como inactivas](#some-sessions-don’t-count-as-idle)764* **Sesiones que nunca quedan inactivas**: establece también [`--kill-session-after-min`](https://code.claude.com/docs/es/self-hosted-environments-reference#runner-cli-flags), porque [algunas sesiones no cuentan como inactivas](#some-sessions-don’t-count-as-idle)

741 765 


811* Si un turno aún se está ejecutando, el runner espera a que el turno termine, o a que la sesión espere a su usuario, y luego la libera.835* Si un turno aún se está ejecutando, el runner espera a que el turno termine, o a que la sesión espere a su usuario, y luego la libera.

812* Si la sesión aún está en el runner cuando la ventana de gracia termina, el runner la termina, y se pierde el trabajo de cualquier turno en ejecución. Un turno esperando una aprobación solicitada desde dentro de una llamada de herramienta en ejecución es una forma en que una sesión supera la ventana.836* Si la sesión aún está en el runner cuando la ventana de gracia termina, el runner la termina, y se pierde el trabajo de cualquier turno en ejecución. Un turno esperando una aprobación solicitada desde dentro de una llamada de herramienta en ejecución es una forma en que una sesión supera la ventana.

813 837 

814Una sesión liberada se reanuda desde un clon nuevo, por lo que el trabajo que no había empujado se ha ido de cualquier forma; consulte [Las sesiones reanudadas pierden trabajo no empujado](#additional-limitations). Antes de v2.1.260, el runner terminaba cada sesión en el límite, después de esperar como máximo la ventana de gracia a que un turno en ejecución terminara.838Una sesión liberada se reanuda desde un clon nuevo, por lo que el trabajo al que no había hecho push se pierde de cualquier forma; consulta [Las sesiones reanudadas pierden el trabajo sin push](#resumed-sessions-lose-unpushed-work). Antes de v2.1.260, el runner terminaba cada sesión al llegar al límite, después de esperar como máximo la ventana de gracia a que terminara un turno en ejecución.

815 839 

816Establezca la bandera anterior a su sesión más larga esperada, como `--kill-session-after-min 480` para 8 horas. Para liberar ranuras de conversaciones que se vuelven inactivas, use `--release-idle-session-min` en su lugar.840Establezca la bandera anterior a su sesión más larga esperada, como `--kill-session-after-min 480` para 8 horas. Para liberar ranuras de conversaciones que se vuelven inactivas, use `--release-idle-session-min` en su lugar.

817 841 

842### Las sesiones reanudadas pierden el trabajo sin push

843 

844Una sesión que se reanuda en un runner nuevo pierde el trabajo al que no había hecho push, porque ese runner vuelve a clonar el repositorio desde su rama inicial.

845 

846Para conservar el trabajo con commit, establece [`--push-outcome-on-release`](https://code.claude.com/docs/es/self-hosted-environments-reference#runner-cli-flags) en todos los runners del entorno. Un runner con el flag hace, en la medida de lo posible, push de las ramas de resultado de la sesión antes de liberarla, y la sesión reanudada comienza desde esos commits. Un runner sin él reanuda la sesión desde su rama inicial. El push usa las credenciales de git propias del host del runner, incluso en un runner que usa [git administrado por Anthropic](#use-the-anthropic-git-proxy).

847 

848> [!WARNING]

849>

850> Antes de establecer el flag, restringe quién puede hacer push a las refs `claude/*` en el remoto de origen. Al reanudar, el runner obtiene la rama a la que se hizo push previamente sin verificar quién hizo el push.

851 

852Incluso con el flag establecido, guarda este trabajo de otra forma:

853 

854* **Cambios sin commit**: se siguen perdiendo. Consulta [Pedir a las sesiones que hagan push de su trabajo](https://code.claude.com/docs/es/self-hosted-environments-configuration.md#prompt-sessions-to-push-their-work).

855* **Repositorios obtenidos mediante un [hook de ciclo de vida `checkout`](https://code.claude.com/docs/es/self-hosted-environments-configuration#checkout)**: a estos no se les hace push. Guarda una instantánea de ellos desde el [hook `post-session`](https://code.claude.com/docs/es/self-hosted-environments-configuration#post-session).

856* **Commits en una sesión que alguien archiva o elimina, o cuyo runner libera desde el menú de la sesión**: no cuentes con el push del flag. Para guardarlos, haz push de `HEAD` a una rama de rescate desde un [hook `post-session`](https://code.claude.com/docs/es/self-hosted-environments-configuration#post-session). El ejemplo de esa sección solo hace push después de un commit de instantánea, así que haz que el tuyo haga push incluso cuando no haya nada sin commit.

857 

818### Limitaciones adicionales858### Limitaciones adicionales

819 859 

820* **Las sesiones reanudadas pierden el trabajo sin push**: un runner nuevo vuelve a clonar el repositorio desde su rama inicial, por lo que el trabajo al que la sesión no había hecho push se pierde.

821 * **Para conservar el trabajo con commit**: establece [`--push-outcome-on-release`](https://code.claude.com/docs/es/self-hosted-environments-reference#runner-cli-flags) en todos los runners del entorno, porque un runner sin el flag reanuda la sesión desde su rama inicial. Un runner con el flag hace, en la medida de lo posible, push de las ramas de resultado de la sesión antes de liberarla, y la sesión reanudada comienza desde esos commits. El push usa las credenciales de git propias del host del runner, incluso en un runner que usa [git administrado por Anthropic](#use-the-anthropic-git-proxy).

822 * **Con un hook `checkout`**: a los repositorios obtenidos mediante un [hook de ciclo de vida `checkout`](https://code.claude.com/docs/es/self-hosted-environments-configuration#checkout) no se les hace push. En su lugar, guarda una instantánea de ellos desde el [hook `post-session`](https://code.claude.com/docs/es/self-hosted-environments-configuration#post-session).

823 * **Antes de habilitar el flag**: restringe quién puede hacer push a las refs `claude/*` en el remoto de origen. Al reanudar, el runner obtiene la rama a la que se hizo push previamente sin verificar quién hizo el push.

824 * **Los cambios sin commit se siguen perdiendo**: para pedirle a Claude que haga commit y push cuando termine de responder, consulta [Pedir a las sesiones que hagan push de su trabajo](https://code.claude.com/docs/es/self-hosted-environments-configuration.md#prompt-sessions-to-push-their-work)

825* **Un comando interrumpido por la pérdida de un runner puede volver a ejecutarse**: cuando la sesión se reanuda en otro runner, Claude ve la llamada a herramienta interrumpida con un resultado que indica que su desenlace es desconocido.860* **Un comando interrumpido por la pérdida de un runner puede volver a ejecutarse**: cuando la sesión se reanuda en otro runner, Claude ve la llamada a herramienta interrumpida con un resultado que indica que su desenlace es desconocido.

826* **Un repositorio agregado a mitad de sesión puede fallar al clonarse**: Claude lo clona con `git clone` a través de HTTPS. En un runner sin [`--use-anthropic-git-proxy`](#use-the-anthropic-git-proxy), la clonación falla con un error de autenticación de git si nada en el host puede leer el repositorio. Siempre que puedas, selecciona todos los repositorios que la sesión necesita al crearla.861* **Un repositorio agregado a mitad de sesión puede fallar al clonarse**: Claude lo clona con `git clone` a través de HTTPS. En un runner sin [`--use-anthropic-git-proxy`](#use-the-anthropic-git-proxy), la clonación falla con un error de autenticación de git si nada en el host puede leer el repositorio. Siempre que puedas, selecciona todos los repositorios que la sesión necesita al crearla.

827 * **Cuando la sesión se reanuda**: un [hook `checkout`](https://code.claude.com/docs/es/self-hosted-environments-configuration#checkout) también se ejecuta para el repositorio agregado, con [`CLAUDE_RUNNER_REPO_REF`](https://code.claude.com/docs/es/self-hosted-environments-configuration#checkout) vacío, así que asegúrate de que tu hook maneje ese caso.862 * **Cuando la sesión se reanuda**: un [hook `checkout`](https://code.claude.com/docs/es/self-hosted-environments-configuration#checkout) también se ejecuta para el repositorio agregado, con [`CLAUDE_RUNNER_REPO_REF`](https://code.claude.com/docs/es/self-hosted-environments-configuration#checkout) vacío, así que asegúrate de que tu hook maneje ese caso.

828* **Algunos conectores no aparecen en sesiones autohospedadas**: un conector que aún no ha conectado en la configuración de claude.ai no se enumera en una sesión autohospedada, y la sesión no le pedirá que lo conecte. Conéctelo en Configuración primero, luego inicie una sesión nueva. Agregar un conector a una sesión ya en ejecución tampoco hace que sus herramientas estén disponibles para Claude; inicie una sesión nueva para recoger un conector recién agregado.863* **Algunos conectores no aparecen en sesiones autohospedadas**: un conector que aún no ha conectado en la configuración de claude.ai no se enumera en una sesión autohospedada, y la sesión no le pedirá que lo conecte. Conéctelo en Configuración primero, luego inicie una sesión nueva. Agregar un conector a una sesión ya en ejecución tampoco hace que sus herramientas estén disponibles para Claude; inicie una sesión nueva para recoger un conector recién agregado.

829* **Cuando alguien archiva o elimina una sesión, o libera su runner desde el menú de la sesión**: no cuentes con el push de [`--push-outcome-on-release`](https://code.claude.com/docs/es/self-hosted-environments-reference#runner-cli-flags). Para guardar los commits en esos casos, haz push de `HEAD` a una rama de rescate desde un [hook `post-session`](https://code.claude.com/docs/es/self-hosted-environments-configuration#post-session). Si partes del ejemplo de esa sección, haz que haga push incluso cuando no haya nada sin commit, porque solo hace push después de un commit de instantánea.

830 864 

831### Reportar un problema865### Reportar un problema

832 866 

Details

84 84 

85**7. Leer la identidad**85**7. Leer la identidad**

86 86 

87La identidad del usuario creador está en la reclamación `act`: `act.sub` es su ID de usuario de Anthropic en la forma con prefijo `user:<id>`, y `act.email`, cuando la superficie creadora registró uno, es su dirección de correo electrónico. Las sesiones que crea la identidad de servicio de tu organización, incluidas las sesiones del canal Claude Tag, llevan un asunto `agent:` en su lugar, por lo que trata una sesión como creada por el usuario solo cuando `act.sub` lleva el prefijo `user:`, en lugar de probar si las reclamaciones de identidad están ausentes. Consulta la [referencia de reclamaciones](#claims-reference) para la estructura completa y las reclamaciones duplicadas planas.87La identidad del usuario creador está en la reclamación `act`. `act.sub` es su ID de usuario de Anthropic en la forma con prefijo `user:<id>`, y `act.email`, cuando la superficie creadora registró uno, es su dirección de correo electrónico. Las sesiones que crea la identidad de servicio de tu organización llevan un asunto `agent:` en su lugar. Trata una sesión como creada por el usuario solo cuando `act.sub` lleva el prefijo `user:`, en lugar de probar si las reclamaciones de identidad están ausentes.

88 

89Consulta la [referencia de reclamaciones](#claims-reference) para la estructura completa y las reclamaciones duplicadas planas.

88 90 

89Las comprobaciones se asignan directamente a bibliotecas JWT estándar. Los ejemplos a continuación implementan la secuencia completa en Node.js con [`jose`](https://www.npmjs.com/package/jose), que maneja la obtención de JWKS, almacenamiento en caché y selección de `kid`, y en Python con [`PyJWT`](https://pyjwt.readthedocs.io/) y su cliente JWKS integrado.91Las comprobaciones se asignan directamente a bibliotecas JWT estándar. Los ejemplos a continuación implementan la secuencia completa en Node.js con [`jose`](https://www.npmjs.com/package/jose), que maneja la obtención de JWKS, almacenamiento en caché y selección de `kid`, y en Python con [`PyJWT`](https://pyjwt.readthedocs.io/) y su cliente JWKS integrado.

90 92 


185 187 

186## Referencia de reclamaciones188## Referencia de reclamaciones

187 189 

188La tabla a continuación enumera las reclamaciones de token de sesión relevantes para la verificación. Lee la identidad del espacio de nombres `ccr:*` y la cadena `act`; las reclamaciones planas `account_email`, `organization_uuid` y `account_uuid` son duplicados de compatibilidad hacia atrás que pueden eliminarse. Las sesiones que crea la identidad de servicio de tu organización, incluidas las sesiones del canal Claude Tag, llevan un asunto `agent:` en `act.sub` y omiten `act.email`, `ccr:account_id`, `account_email` y `account_uuid`. Las dos reclamaciones de correo electrónico también son opcionales para sesiones creadas por el usuario: Anthropic las registra en la creación de la sesión solo cuando las credenciales de la solicitud creadora llevan un correo electrónico, y una sesión enviada desde la CLI puede carecer de ambas, por lo que basa la identidad en `act.sub` o `ccr:account_id` en lugar de en el correo electrónico. Los tokens también pueden llevar reclamaciones adicionales más allá de esta tabla; ignora las reclamaciones que no reconozcas.190Lee la identidad del espacio de nombres `ccr:*` y la cadena `act`; las reclamaciones planas `account_email`, `organization_uuid` y `account_uuid` son duplicados de compatibilidad hacia atrás que pueden eliminarse. Las sesiones que crea la identidad de servicio de tu organización llevan un asunto `agent:` en `act.sub` y omiten `act.email`, `ccr:account_id`, `account_email` y `account_uuid`.

191 

192Las dos reclamaciones de correo electrónico también son opcionales para sesiones creadas por el usuario. Anthropic las registra en la creación de la sesión solo cuando las credenciales de la solicitud creadora llevan un correo electrónico, y una sesión enviada desde la CLI puede carecer de ambas. Basa la identidad en `act.sub` o `ccr:account_id` en lugar de en el correo electrónico. Los tokens también pueden llevar reclamaciones adicionales más allá de esta tabla; ignora las reclamaciones que no reconozcas. La tabla a continuación enumera las reclamaciones de token de sesión relevantes para la verificación.

189 193 

190| Reclamación | Tipo | Descripción |194| Reclamación | Tipo | Descripción |

191| :- | :- | :- |195| :- | :- | :- |


211 215 

212| Ruta | Descripción |216| Ruta | Descripción |

213| :- | :- |217| :- | :- |

214| `act.sub` | El ID de usuario de Anthropic del usuario creador, en la forma `user:<id>`, o `agent:<id>` cuando la identidad de servicio de tu organización creó la sesión, como lo hace para las sesiones del canal Claude Tag. |218| `act.sub` | El ID de usuario de Anthropic del usuario creador, en la forma `user:<id>`, o `agent:<id>` cuando la identidad de servicio de tu organización creó la sesión. |

215| `act.email` | La dirección de correo electrónico del usuario creador, cuando se registró una en la creación de la sesión. No la requieras; básate en `act.sub`. |219| `act.email` | La dirección de correo electrónico del usuario creador, cuando se registró una en la creación de la sesión. No la requieras; básate en `act.sub`. |

216| `act.attested_by` | Reservado para la atestación del proveedor de identidad ascendente para el usuario creador. Espera que esté ausente y no dependas de ello. Básate en `act.sub`. Si necesitas una dirección, lee `act.email` cuando esté presente. |220| `act.attested_by` | Reservado para la atestación del proveedor de identidad ascendente para el usuario creador. Espera que esté ausente y no dependas de ello. Básate en `act.sub`. Si necesitas una dirección, lee `act.email` cuando esté presente. |

217| `act.act` | El ejecutor que generó la sesión. `act.act.sub` es `ccr:runner:<runner_id>`. |221| `act.act` | El ejecutor que generó la sesión. `act.act.sub` es `ccr:runner:<runner_id>`. |

Details

48| `--post-session-hook-timeout-sec <n>` | `SELF_HOSTED_RUNNER_POST_SESSION_HOOK_TIMEOUT_MS` | `60` | Presupuesto para el hook [`post-session`](https://code.claude.com/docs/es/self-hosted-environments-configuration#post-session) en cada final de sesión, incluido el apagado del runner |48| `--post-session-hook-timeout-sec <n>` | `SELF_HOSTED_RUNNER_POST_SESSION_HOOK_TIMEOUT_MS` | `60` | Presupuesto para el hook [`post-session`](https://code.claude.com/docs/es/self-hosted-environments-configuration#post-session) en cada final de sesión, incluido el apagado del runner |

49| `--proxy-authorization-command <command>` | `SELF_HOSTED_RUNNER_PROXY_AUTHORIZATION_COMMAND` | unset | Comando de shell que el runner ejecuta para cada conexión a su proxy de salida, usando su stdout recortado como el valor del encabezado `Proxy-Authorization`. Requiere `HTTPS_PROXY` o `HTTP_PROXY`, y no se puede combinar con `--proxy-authorization-file`. Consulte [Authenticate to an egress proxy](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#authenticate-to-an-egress-proxy). Requiere Claude Code v2.1.238 o posterior. |49| `--proxy-authorization-command <command>` | `SELF_HOSTED_RUNNER_PROXY_AUTHORIZATION_COMMAND` | unset | Comando de shell que el runner ejecuta para cada conexión a su proxy de salida, usando su stdout recortado como el valor del encabezado `Proxy-Authorization`. Requiere `HTTPS_PROXY` o `HTTP_PROXY`, y no se puede combinar con `--proxy-authorization-file`. Consulte [Authenticate to an egress proxy](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#authenticate-to-an-egress-proxy). Requiere Claude Code v2.1.238 o posterior. |

50| `--proxy-authorization-file <path>` | `SELF_HOSTED_RUNNER_PROXY_AUTHORIZATION_FILE` | unset | Archivo que el runner lee para cada conexión a su proxy de salida, usando su contenido recortado como el valor del encabezado `Proxy-Authorization`. Use este flag para un token que otro proceso rota en su lugar. Lleva los mismos requisitos que `--proxy-authorization-command`, y no se puede combinar con él. Consulte [Authenticate to an egress proxy](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#authenticate-to-an-egress-proxy). Requiere Claude Code v2.1.238 o posterior. |50| `--proxy-authorization-file <path>` | `SELF_HOSTED_RUNNER_PROXY_AUTHORIZATION_FILE` | unset | Archivo que el runner lee para cada conexión a su proxy de salida, usando su contenido recortado como el valor del encabezado `Proxy-Authorization`. Use este flag para un token que otro proceso rota en su lugar. Lleva los mismos requisitos que `--proxy-authorization-command`, y no se puede combinar con él. Consulte [Authenticate to an egress proxy](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#authenticate-to-an-egress-proxy). Requiere Claude Code v2.1.238 o posterior. |

51| `--push-outcome-on-release` | `SELF_HOSTED_RUNNER_PUSH_OUTCOME_ON_RELEASE` | off | En un final de sesión iniciado por el runner como un drenaje o liberación por inactividad, empuje las ramas de resultado rastreadas a `origin` antes de eliminar el workspace, para que los commits en vuelo sobrevivan a un reinicio. Mejor esfuerzo; agrega 30 segundos al presupuesto de apagado, y requiere git 2.29 o más nuevo para reanudar desde la rama empujada. Restrinja el acceso de push a refs `claude/*` antes de habilitar; consulte [Resumed sessions lose unpushed work](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#additional-limitations). Los repositorios verificados a través de un hook de ciclo de vida `checkout` no se empujan; tome una instantánea de esos desde el hook [`post-session`](https://code.claude.com/docs/es/self-hosted-environments-configuration#post-session) en su lugar. |51| `--push-outcome-on-release` | `SELF_HOSTED_RUNNER_PUSH_OUTCOME_ON_RELEASE` | off | En un final de sesión iniciado por el runner, como un drenaje o una liberación por inactividad, el runner hace push a `origin` de las ramas principales de la sesión que tengan commits nuevos antes de eliminar el espacio de trabajo. Mejor esfuerzo; agrega 30 segundos al presupuesto de apagado. Requiere git 2.29 o posterior para reanudar desde ellas. Restringe el acceso de push a refs `claude/*`; consulta [Resumed sessions lose unpushed work](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#resumed-sessions-lose-unpushed-work). No se hace push de los repositorios de un hook `checkout`; toma una instantánea de ellos desde el [hook `post-session`](https://code.claude.com/docs/es/self-hosted-environments-configuration#post-session). |

52| `--release-idle-session-min <n>` | `SELF_HOSTED_RUNNER_SESSION_IDLE_MS` | `0` | Libera el slot de una sesión después de N minutos de inactividad una vez que termina un turno o la sesión espera la acción del usuario. [Algunas sesiones no cuentan como inactivas](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#some-sessions-don’t-count-as-idle), así que combínalo con `--kill-session-after-min`. Una tarea en segundo plano terminada mantiene la sesión ocupada durante como máximo la ventana [`SELF_HOSTED_RUNNER_BG_RESULT_GRACE_MS`](#environment-variable-only-settings). Para retrasar una liberación, establece [`--hold-idle-file`](https://code.claude.com/docs/es/self-hosted-environments-deploy#keep-an-idle-session-while-its-processes-run). `0` lo desactiva. |52| `--release-idle-session-min <n>` | `SELF_HOSTED_RUNNER_SESSION_IDLE_MS` | `0` | Libera el slot de una sesión después de N minutos de inactividad una vez que termina un turno o la sesión espera la acción del usuario. [Algunas sesiones no cuentan como inactivas](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#some-sessions-don’t-count-as-idle), así que combínalo con `--kill-session-after-min`. Una tarea en segundo plano terminada mantiene la sesión ocupada durante como máximo la ventana [`SELF_HOSTED_RUNNER_BG_RESULT_GRACE_MS`](#environment-variable-only-settings). Para retrasar una liberación, establece [`--hold-idle-file`](https://code.claude.com/docs/es/self-hosted-environments-deploy#keep-an-idle-session-while-its-processes-run). `0` lo desactiva. |

53| `--remove-session-state [bool]` | `SELF_HOSTED_RUNNER_REMOVE_SESSION_STATE` | off | Elimine los directorios por sesión de una sesión bajo `<base-dir>/_sessions/` cuando la sesión termina en este runner, sin importar el resultado. [Reuse a pre-warmed checkout](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#reuse-a-pre-warmed-checkout) describe lo que contienen y quién puede leerlos cuando permanecen. La eliminación es mejor esfuerzo: los directorios por sesión permanecen en su lugar cuando el runner es asesinado o alcanza su plazo de drenaje antes de que se ejecute la limpieza. Con el flag activado, el log de depuración de una sesión fallida o interrumpida no se mantiene en disco. Requiere Claude Code v2.1.268 o posterior. |53| `--remove-session-state [bool]` | `SELF_HOSTED_RUNNER_REMOVE_SESSION_STATE` | off | Elimine los directorios por sesión de una sesión bajo `<base-dir>/_sessions/` cuando la sesión termina en este runner, sin importar el resultado. [Reuse a pre-warmed checkout](https://code.claude.com/docs/es/self-hosted-environments-deploy.md#reuse-a-pre-warmed-checkout) describe lo que contienen y quién puede leerlos cuando permanecen. La eliminación es mejor esfuerzo: los directorios por sesión permanecen en su lugar cuando el runner es asesinado o alcanza su plazo de drenaje antes de que se ejecute la limpieza. Con el flag activado, el log de depuración de una sesión fallida o interrumpida no se mantiene en disco. Requiere Claude Code v2.1.268 o posterior. |

54| `--retire-at <epoch-seconds>` | `SELF_HOSTED_RUNNER_RETIRE_AT` | unset | Retire el runner en una marca de tiempo Unix absoluta en segundos, para infraestructura que mata el runner en un tiempo conocido; [Runner lifecycle](https://code.claude.com/docs/es/self-hosted-environments#runner-lifecycle) describe la secuencia de liberación y cómo dimensionar el margen. Los valores antes de 2001 o después del año 5138 son rechazados por el flag e ignorados por la variable de entorno. |54| `--retire-at <epoch-seconds>` | `SELF_HOSTED_RUNNER_RETIRE_AT` | unset | Retire el runner en una marca de tiempo Unix absoluta en segundos, para infraestructura que mata el runner en un tiempo conocido; [Runner lifecycle](https://code.claude.com/docs/es/self-hosted-environments#runner-lifecycle) describe la secuencia de liberación y cómo dimensionar el margen. Los valores antes de 2001 o después del año 5138 son rechazados por el flag e ignorados por la variable de entorno. |

Details

4846 4846 

4847### `disableDeepLinkRegistration`4847### `disableDeepLinkRegistration`

4848 4848 

4849Impida que Claude Code registre el controlador del protocolo `claude-cli://` con el sistema operativo, que de otro modo hace después de enviar el primer prompt de una sesión interactiva. Los [enlaces profundos](https://code.claude.com/docs/es/deep-links.md) permiten que herramientas externas abran una sesión de Claude Code con un prompt rellenado previamente. Establézcalo en entornos donde el registro del controlador de protocolo está restringido o se gestiona por separado.4849Impide que Claude Code registre el controlador del protocolo `claude-cli://` con el sistema operativo. Los [enlaces profundos](https://code.claude.com/docs/es/deep-links.md) permiten que herramientas externas abran una sesión de Claude Code con un prompt rellenado previamente. Establécelo en entornos donde el registro del controlador de protocolo está restringido o se gestiona por separado.

4850 4850 

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

4852* **Type**: la cadena `"disable"`4852* **Type**: la cadena `"disable"`


5801 5801 

5802Inicia cada sesión interactiva de CLI con [integración de Chrome](https://code.claude.com/docs/es/chrome.md) activada, sin pasar `--chrome` cada vez. Si ejecutas [`claude remote-control`](https://code.claude.com/docs/es/remote-control), una sesión que inicia para uno de tus hilos de [proyecto](https://code.claude.com/docs/es/claude-projects.md) sigue esta clave también, excepto en modo `bypassPermissions`. Con Claude Code v2.1.287 o posterior, esta clave también se aplica a las sesiones en la [extensión de VS Code](https://code.claude.com/docs/es/vs-code.md#automate-browser-tasks-with-chrome): consulta [Habilitar Chrome por defecto](https://code.claude.com/docs/es/chrome.md#enable-chrome-by-default).5802Inicia cada sesión interactiva de CLI con [integración de Chrome](https://code.claude.com/docs/es/chrome.md) activada, sin pasar `--chrome` cada vez. Si ejecutas [`claude remote-control`](https://code.claude.com/docs/es/remote-control), una sesión que inicia para uno de tus hilos de [proyecto](https://code.claude.com/docs/es/claude-projects.md) sigue esta clave también, excepto en modo `bypassPermissions`. Con Claude Code v2.1.287 o posterior, esta clave también se aplica a las sesiones en la [extensión de VS Code](https://code.claude.com/docs/es/vs-code.md#automate-browser-tasks-with-chrome): consulta [Habilitar Chrome por defecto](https://code.claude.com/docs/es/chrome.md#enable-chrome-by-default).

5803 5803 

5804Ejecutar `/chrome` y seleccionar **Habilitado por defecto** establece esta clave automáticamente. Aparece en `/config` como **Claude en Chrome habilitado por defecto**.5804Ejecutar `/chrome` y seleccionar **Enabled by default** establece esta clave automáticamente, al igual que responder al [diálogo "Claude in Chrome extension detected"](https://code.claude.com/docs/es/chrome.md#answer-the-startup-dialog). Aparece en `/config` como **Claude in Chrome enabled by default**.

5805 5805 

5806* **Alcance**: [`Configuración global`](#scopes)5806* **Alcance**: [`Configuración global`](#scopes)

5807* **Tipo**: Booleano5807* **Tipo**: Booleano

setup.md +9 −5

Details

39 39 

40**macOS, Linux, WSL:**40**macOS, Linux, WSL:**

41 41 

42```bash theme={null}42```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

43curl -fsSL https://claude.ai/install.sh | bash43curl -fsSL https://claude.ai/install.sh | bash

44```44```

45 45 


47 47 

48**Windows PowerShell:**48**Windows PowerShell:**

49 49 

50```powershell theme={null}50```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

51irm https://claude.ai/install.ps1 | iex51irm https://claude.ai/install.ps1 | iex

52```52```

53 53 

54**Windows CMD:**54**Windows CMD:**

55 55 

56```batch theme={null}56```batch theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

57curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd57curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

58```58```

59 59 


71 71 

72**Homebrew**72**Homebrew**

73 73 

74```bash theme={null}74```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

75brew install --cask claude-code75brew install --cask claude-code

76```76```

77 77 


83 83 

84**WinGet**84**WinGet**

85 85 

86```powershell theme={null}86```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}

87winget install Anthropic.ClaudeCode87winget install Anthropic.ClaudeCode

88```88```

89 89 


458 458 

459### Instalar con npm459### Instalar con npm

460 460 

461> [!NOTE]

462>

463> Si `npm --version` imprime una versión que empieza por `12` en tu shell, sigue [Corregir una instalación con npm 12](https://code.claude.com/docs/es/troubleshoot-install.md#fix-an-npm-12-install) en su lugar. No instales con `sudo`. Claude Code ejecuta npm sin `sudo` cuando se actualiza a sí mismo, así que una instalación que necesita `sudo` no puede actualizarse automáticamente.

464 

461También puedes instalar Claude Code como un paquete npm global. El paquete npm requiere [Node.js 22 o posterior](https://nodejs.org/en/download). En una versión anterior de Node.js, npm imprime una advertencia `EBADENGINE` durante la instalación en lugar de fallar; la instalación se completa y `claude` aún se ejecuta, ya que el paquete descarga un binario nativo que no utiliza tu Node.js en tiempo de ejecución.465También puedes instalar Claude Code como un paquete npm global. El paquete npm requiere [Node.js 22 o posterior](https://nodejs.org/en/download). En una versión anterior de Node.js, npm imprime una advertencia `EBADENGINE` durante la instalación en lugar de fallar; la instalación se completa y `claude` aún se ejecuta, ya que el paquete descarga un binario nativo que no utiliza tu Node.js en tiempo de ejecución.

462 466 

463```bash theme={null}467```bash theme={null}

skills.md +1 −1

Details

404| `allowed-tools` | No | Herramientas que Claude puede usar sin pedir permiso durante el turno que invoca este skill. La concesión se borra cuando envías tu siguiente mensaje. Acepta una cadena separada por espacios o comas, o una lista YAML. Consulta [Pre-aprobar herramientas para un skill](#pre-approve-tools-for-a-skill). |404| `allowed-tools` | No | Herramientas que Claude puede usar sin pedir permiso durante el turno que invoca este skill. La concesión se borra cuando envías tu siguiente mensaje. Acepta una cadena separada por espacios o comas, o una lista YAML. Consulta [Pre-aprobar herramientas para un skill](#pre-approve-tools-for-a-skill). |

405| `disallowed-tools` | No | Herramientas eliminadas del grupo disponible de Claude mientras este skill está activo. Úsalo 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ías tu siguiente mensaje. Como las reglas de denegación, el campo no puede eliminar [`EndConversation`](https://code.claude.com/docs/es/tools-reference#endconversation-tool-behavior) mientras cualquier otra herramienta permanezca. |405| `disallowed-tools` | No | Herramientas eliminadas del grupo disponible de Claude mientras este skill está activo. Úsalo 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ías tu siguiente mensaje. Como las reglas de denegación, el campo no puede eliminar [`EndConversation`](https://code.claude.com/docs/es/tools-reference#endconversation-tool-behavior) mientras cualquier otra herramienta permanezca. |

406| `model` | No | Modelo a usar cuando este skill está activo. La anulación se aplica por el resto del turno actual y no se guarda en la configuración; el modelo de sesión se reanuda en tu siguiente prompt. Acepta los mismos valores que [`/model`](https://code.claude.com/docs/es/model-config), o `inherit` para mantener el modelo activo. Un valor excluido por la lista de permitidos [`availableModels`](https://code.claude.com/docs/es/model-config#restrict-model-selection) de tu organización no se usa y la sesión mantiene su modelo actual. En [modo automático](https://code.claude.com/docs/es/permission-modes.md#eliminate-prompts-with-auto-mode), y en [modo plan mientras el clasificador revisa comandos](https://code.claude.com/docs/es/permission-modes.md#analyze-before-you-edit-with-plan-mode), un modelo que el modo automático no admite tampoco se usa y la sesión mantiene su modelo actual. Con `context: fork`, el valor establece el [modelo del subagente bifurcado](#run-skills-in-a-subagent) en su lugar, y un valor excluido sigue las [mismas reglas que una anulación de modelo de subagente](https://code.claude.com/docs/es/model-config.md#restrict-model-selection). |406| `model` | No | Modelo a usar cuando este skill está activo. La anulación se aplica por el resto del turno actual y no se guarda en la configuración; el modelo de sesión se reanuda en tu siguiente prompt. Acepta los mismos valores que [`/model`](https://code.claude.com/docs/es/model-config), o `inherit` para mantener el modelo activo. Un valor excluido por la lista de permitidos [`availableModels`](https://code.claude.com/docs/es/model-config#restrict-model-selection) de tu organización no se usa y la sesión mantiene su modelo actual. En [modo automático](https://code.claude.com/docs/es/permission-modes.md#eliminate-prompts-with-auto-mode), y en [modo plan mientras el clasificador revisa comandos](https://code.claude.com/docs/es/permission-modes.md#analyze-before-you-edit-with-plan-mode), un modelo que el modo automático no admite tampoco se usa y la sesión mantiene su modelo actual. Con `context: fork`, el valor establece el [modelo del subagente bifurcado](#run-skills-in-a-subagent) en su lugar, y un valor excluido sigue las [mismas reglas que una anulación de modelo de subagente](https://code.claude.com/docs/es/model-config.md#restrict-model-selection). |

407| `effort` | No | [Nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) cuando este skill está activo. Sobrescribe el nivel de esfuerzo de la sesión. Cuando lo omites, el nivel proviene del [orden de resolución del esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level). Opciones: `low`, `medium`, `high`, `xhigh`, `max`; los niveles disponibles dependen del modelo. |407| `effort` | No | [Nivel de esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level) para el resto del turno actual. Sobrescribe el nivel de esfuerzo de la sesión, pero no la variable de entorno [`CLAUDE_CODE_EFFORT_LEVEL`](https://code.claude.com/docs/es/env-vars#variables). Con `context: fork`, el valor establece en su lugar el nivel de esfuerzo del subagente bifurcado. Cuando lo omites, el nivel proviene del [orden de resolución del esfuerzo](https://code.claude.com/docs/es/model-config.md#adjust-effort-level). Opciones: `low`, `medium`, `high`, `xhigh`, `max`; los niveles disponibles dependen del modelo. |

408| `context` | No | Establece en `fork` para ejecutar en un contexto de subagente bifurcado. Consulta [Ejecutar skills en un subagente](#run-skills-in-a-subagent). |408| `context` | No | Establece en `fork` para ejecutar en un contexto de subagente bifurcado. Consulta [Ejecutar skills en un subagente](#run-skills-in-a-subagent). |

409| `agent` | No | Qué tipo de subagente usar cuando `context: fork` está establecido. |409| `agent` | No | Qué tipo de subagente usar cuando `context: fork` está establecido. |

410| `background` | No | Solo se aplica con `context: fork`. Establece en `false` para esperar el resultado del subagente bifurcado en el turno que invocó el skill, en lugar de [ejecutarlo en segundo plano](#run-skills-in-a-subagent). Por defecto: `true`. |410| `background` | No | Solo se aplica con `context: fork`. Establece en `false` para esperar el resultado del subagente bifurcado en el turno que invocó el skill, en lugar de [ejecutarlo en segundo plano](#run-skills-in-a-subagent). Por defecto: `true`. |

slack.md +1 −1

Details

202 202 

203### Las sesiones desde un canal de Claude Tag no se inician203### Las sesiones desde un canal de Claude Tag no se inician

204 204 

205Esta entrada se aplica a espacios de trabajo que utilizan [Claude Tag](https://claude.com/docs/claude-tag/overview), donde Claude trabaja en canales como la identidad compartida de tu organización, no como la cuenta de ningún miembro. Si creaste el entorno en la nube del canal en [claude.ai/code](https://claude.ai/code), pertenece a tu cuenta personal, y Claude no puede iniciar sesiones de canal en un entorno personal. Claude Code falla la sesión inmediatamente, y reintentar no ayuda.205Esta entrada se aplica a espacios de trabajo que utilizan [Claude Tag](https://claude.com/docs/claude-tag/overview). Si creaste el entorno en la nube del canal en [claude.ai/code](https://claude.ai/code), pertenece a tu cuenta personal, y Claude no puede iniciar sesiones de canal en un entorno personal. Claude Code falla la sesión inmediatamente, y reintentar no ayuda.

206 206 

207Si eres Propietario y el entorno es tuyo, [compártelo con la organización](https://code.claude.com/docs/es/cloud-environments.md#organization-shared-environments) desde el selector de entorno. De lo contrario, un Propietario lo recrea como un entorno compartido de la organización desde la página **Entornos en la nube** en [configuración de administrador](https://claude.ai/admin-settings).207Si eres Propietario y el entorno es tuyo, [compártelo con la organización](https://code.claude.com/docs/es/cloud-environments.md#organization-shared-environments) desde el selector de entorno. De lo contrario, un Propietario lo recrea como un entorno compartido de la organización desde la página **Entornos en la nube** en [configuración de administrador](https://claude.ai/admin-settings).

208 208 

statusline.md +1 −1

Details

188| `context_window.current_usage` | Conteos de tokens de la última llamada a API, descritos en [campos de ventana de contexto](#context-window-fields) |188| `context_window.current_usage` | Conteos de tokens de la última llamada a API, descritos en [campos de ventana de contexto](#context-window-fields) |

189| `exceeds_200k_tokens` | Si el conteo total de tokens (tokens de entrada, caché y salida combinados) de la respuesta de API más reciente excede 200k. Este es un umbral fijo independientemente del tamaño real de la ventana de contexto. |189| `exceeds_200k_tokens` | Si el conteo total de tokens (tokens de entrada, caché y salida combinados) de la respuesta de API más reciente excede 200k. Este es un umbral fijo independientemente del tamaño real de la ventana de contexto. |

190| `fast_mode` | Si [fast mode](https://code.claude.com/docs/es/fast-mode.md) está habilitado para la sesión |190| `fast_mode` | Si [fast mode](https://code.claude.com/docs/es/fast-mode.md) está habilitado para la sesión |

191| `effort.level` | Nivel de esfuerzo de razonamiento actual (`low`, `medium`, `high`, `xhigh`, o `max`). Refleja el valor de sesión en vivo, incluidos cambios de `/effort` a mitad de sesión. Ausente cuando el modelo actual no admite el parámetro de esfuerzo |191| `effort.level` | Nivel de esfuerzo de razonamiento establecido para la sesión (`low`, `medium`, `high`, `xhigh` o `max`), no uno establecido por un skill, un subagente o `ultrathink`. Si estableces un nivel que el modelo no admite, esto muestra el nivel con el que Claude Code se ejecutó en su lugar. Un nivel que cambies se muestra aquí incluso antes de que [comience](https://code.claude.com/docs/es/model-config.md#when-a-new-effort-level-starts). Con un nivel en `CLAUDE_CODE_EFFORT_LEVEL`, esto muestra ese nivel. Ausente cuando el modelo actual no admite el parámetro de esfuerzo |

192| `thinking.enabled` | Si el pensamiento extendido está habilitado para la sesión |192| `thinking.enabled` | Si el pensamiento extendido está habilitado para la sesión |

193| `rate_limits.five_hour.used_percentage`, `rate_limits.seven_day.used_percentage` | Porcentaje del límite de velocidad de 5 horas o 7 días consumido, de 0 a 100 |193| `rate_limits.five_hour.used_percentage`, `rate_limits.seven_day.used_percentage` | Porcentaje del límite de velocidad de 5 horas o 7 días consumido, de 0 a 100 |

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 |

Details

72 72 

73Cuando Claude termina una tarea o se pausa para solicitar un permiso, y parece que está alejado de la terminal, se dispara un evento de notificación. Consulte [cuándo se dispara cada tipo de notificación](https://code.claude.com/docs/es/hooks.md#notification) para conocer el momento exacto. Mostrar esto como una campana de terminal o notificación de escritorio le permite cambiar a otro trabajo mientras se ejecuta una tarea larga.73Cuando Claude termina una tarea o se pausa para solicitar un permiso, y parece que está alejado de la terminal, se dispara un evento de notificación. Consulte [cuándo se dispara cada tipo de notificación](https://code.claude.com/docs/es/hooks.md#notification) para conocer el momento exacto. Mostrar esto como una campana de terminal o notificación de escritorio le permite cambiar a otro trabajo mientras se ejecuta una tarea larga.

74 74 

75De forma predeterminada, Claude Code envía una notificación de escritorio solo en Ghostty, Kitty e iTerm2. En otras terminales, establezca [`preferredNotifChannel`](https://code.claude.com/docs/es/settings-reference#preferrednotifchannel) en `"terminal_bell"` para sonar la campana de terminal en su lugar, o configure un [hook de Notification](#play-a-sound-with-a-notification-hook) para un sonido o comando personalizado. La siguiente entrada de configuración activa la campana de terminal:75De forma predeterminada, Claude Code envía una notificación de escritorio en algunas terminales, y un carácter de campana o nada en otras:

76 

77* **Ghostty, Kitty e iTerm2**: una notificación de escritorio, que iTerm2 muestra solo después de que activas su configuración de alertas.

78* **Apple Terminal**: sin sonido; un carácter de campana silencioso cuando Claude Code detecta que "Audible bell" está desactivado en el perfil de la ventana de Terminal en primer plano; de lo contrario, nada. Ese carácter de campana se muestra como un destello de la ventana, o como un rebote en el Dock mientras Terminal está en segundo plano, si la opción "Visual bell" o la de rebote en el Dock de ese perfil está activada.

79* **Otras terminales**: nada.

80 

81Para que Claude Code envíe el carácter de campana sin importar la terminal o el perfil, establece [`preferredNotifChannel`](https://code.claude.com/docs/es/settings-reference#preferrednotifchannel) en `"terminal_bell"`. En Apple Terminal, activa también **Audible bell** en **Settings > Profiles > Advanced** para escucharla. La siguiente entrada de configuración establece el canal:

76 82 

77```json ~/.claude/settings.json theme={null}83```json ~/.claude/settings.json theme={null}

78{84{

Details

995 995 

996### Errores de instalación de npm en WSL996### Errores de instalación de npm en WSL

997 997 

998Estos problemas aplican si instalaste Claude Code con `npm install -g` dentro de WSL. Si usaste el [instalador nativo](https://code.claude.com/docs/es/setup.md), omite esta sección.998Estos problemas aplican si instalaste Claude Code con `npm install -g` dentro de WSL. Si usaste el [instalador nativo](https://code.claude.com/docs/es/setup.md), omite esta sección. En npm 12, instala como se describe en [Corregir una instalación con npm 12](#fix-an-npm-12-install).

999 999 

1000**Problemas de detección de SO o plataforma.** Si npm reporta una discrepancia de plataforma durante la instalación, probablemente WSL está tomando el `npm` de Windows. Ejecuta primero `npm config set os linux` y luego instala con `npm install -g @anthropic-ai/claude-code --force`. No uses `sudo`.1000**Problemas de detección de SO o plataforma.** Si npm reporta una discrepancia de plataforma durante la instalación, probablemente WSL está tomando el `npm` de Windows. Ejecuta primero `npm config set os linux` y luego instala con `npm install -g @anthropic-ai/claude-code --force`. No uses `sudo`.

1001 1001 


1037 1037 

1038### Binario nativo no encontrado después de la instalación con npm1038### Binario nativo no encontrado después de la instalación con npm

1039 1039 

1040El paquete npm `@anthropic-ai/claude-code` descarga el binario nativo como una dependencia opcional por plataforma, como `@anthropic-ai/claude-code-darwin-arm64`. Luego npm ejecuta el script postinstall del paquete, que copia ese binario a su lugar como el comando `claude`; hasta que se ejecuta, `claude` es un script de marcador de posición. Si se omite la descarga o el paso postinstall, el marcador de posición permanece, y ejecutar `claude` en macOS y Linux imprime:1040El paquete npm `@anthropic-ai/claude-code` descarga el binario nativo como una dependencia opcional por plataforma, como `@anthropic-ai/claude-code-darwin-arm64`. `claude` es un script de marcador de posición hasta que se ejecuta el paso postinstall del paquete `@anthropic-ai/claude-code` y reemplaza el marcador de posición con ese binario. Si se omite la descarga o el paso postinstall, el marcador de posición permanece, y ejecutar `claude` en macOS y Linux imprime:

1041 1041 

1042```text theme={null}1042```text theme={null}

1043Error: claude native binary not installed.1043Error: claude native binary not installed.


1056 1056 

1057Verifica las siguientes causas:1057Verifica las siguientes causas:

1058 1058 

1059* **npm 12 omite el paso postinstall de forma predeterminada.** Cuando instalas o actualizas Claude Code con npm 12, npm igualmente termina la instalación sin ejecutar el paso. Consulta [Corregir una instalación con npm 12](#fix-an-npm-12-install).

1059* **Las dependencias opcionales están deshabilitadas.** Elimina `--omit=optional` de tu comando de instalación de npm, `--no-optional` de pnpm o `--ignore-optional` de yarn, y verifica que `.npmrc` no establezca `optional=false`. Luego reinstala. El binario nativo se entrega solo como dependencia opcional, por lo que no hay alternativa en JavaScript si se omite, y volver a ejecutar `install.cjs` no puede colocar un binario que nunca se descargó.1060* **Las dependencias opcionales están deshabilitadas.** Elimina `--omit=optional` de tu comando de instalación de npm, `--no-optional` de pnpm o `--ignore-optional` de yarn, y verifica que `.npmrc` no establezca `optional=false`. Luego reinstala. El binario nativo se entrega solo como dependencia opcional, por lo que no hay alternativa en JavaScript si se omite, y volver a ejecutar `install.cjs` no puede colocar un binario que nunca se descargó.

1060* **Los scripts de instalación están deshabilitados.** `--ignore-scripts` y algunas configuraciones de pnpm omiten el paso postinstall pero aún descargan el paquete de plataforma. Ejecuta `node node_modules/@anthropic-ai/claude-code/install.cjs` como sugiere el mensaje, o reinstala sin el flag. Si postinstall no puede ejecutarse en absoluto en tu entorno, `node node_modules/@anthropic-ai/claude-code/cli-wrapper.cjs` encuentra el paquete descargado y lo inicia, a costa de un proceso de Node adicional en cada inicio. Si el wrapper imprime `Could not find native binary package` en su lugar, el paquete de plataforma nunca se descargó, así que primero corrige la causa de dependencias opcionales descrita arriba.1061* **Los scripts de instalación están deshabilitados.** `--ignore-scripts` y algunas configuraciones de pnpm omiten el paso postinstall pero aún descargan el paquete de plataforma. Ejecuta `node node_modules/@anthropic-ai/claude-code/install.cjs` como sugiere el mensaje, o reinstala sin el flag. Si postinstall no puede ejecutarse en absoluto en tu entorno, `node node_modules/@anthropic-ai/claude-code/cli-wrapper.cjs` encuentra el paquete descargado y lo inicia, a costa de un proceso de Node adicional en cada inicio. Si el wrapper imprime `Could not find native binary package` en su lugar, el paquete de plataforma nunca se descargó, así que primero corrige la causa de dependencias opcionales descrita arriba.

1061* **Plataforma no admitida.** Se publican binarios precompilados para `darwin-arm64`, `darwin-x64`, `linux-x64`, `linux-arm64`, `linux-x64-musl`, `linux-arm64-musl`, `win32-x64` y `win32-arm64`. Claude Code no distribuye un binario para otras plataformas; consulta los [requisitos del sistema](https://code.claude.com/docs/es/setup.md#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.1062* **Plataforma no admitida.** Se publican binarios precompilados para `darwin-arm64`, `darwin-x64`, `linux-x64`, `linux-arm64`, `linux-x64-musl`, `linux-arm64-musl`, `win32-x64` y `win32-arm64`. Claude Code no distribuye un binario para otras plataformas; consulta los [requisitos del sistema](https://code.claude.com/docs/es/setup.md#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.

1062* **Al mirror corporativo de npm le faltan los paquetes de plataforma.** Asegúrate de que tu registro replique los ocho paquetes de plataforma `@anthropic-ai/claude-code-*` además del metapaquete.1063* **Al mirror corporativo de npm le faltan los paquetes de plataforma.** Asegúrate de que tu registro replique los ocho paquetes de plataforma `@anthropic-ai/claude-code-*` además del metapaquete.

1063 1064 

1065#### Corregir una instalación con npm 12

1066 

1067Si `claude` imprime `Error: claude native binary not installed.` después de una instalación o actualización con npm, o en Windows el shell no puede ejecutarlo, ejecuta `npm --version`. Una versión que comienza con `12` significa que, a menos que tu configuración de npm lo permita, npm omitió el paso postinstall de Claude Code, que es el que coloca el binario en su lugar. Para cualquier otra versión, verifica las [otras causas](#native-binary-not-found-after-npm-install).

1068 

1069Para corregir una instalación con npm 12, cambia al instalador nativo o permite el paso:

1070 

1071* **Cambia al instalador nativo**: [instala con el instalador nativo](https://code.claude.com/docs/es/setup.md#install-claude-code) y luego [desinstala el paquete de npm](https://code.claude.com/docs/es/setup.md#uninstall-with-npm). Así las actualizaciones ya no usan npm, por lo que el error no vuelve.

1072* **Quédate en npm**: para una instalación global con npm, agrega Claude Code a `allow-scripts` en tu configuración de usuario de npm. Así npm ejecuta los scripts de instalación de Claude Code en cada instalación y actualización posterior, y en las instalaciones de proyecto cuyo `package.json` no establece `allowScripts`.

1073 

1074 Usa el instalador nativo para una instalación local en `~/.claude/local`. Úsalo también si los scripts de tu `package.json` llaman a `npm install` y los ejecutas con pnpm 9, pnpm 10, Yarn 1 u otra herramienta que les pase este ajuste. En npm 12.1 y posteriores, esas instalaciones pueden fallar con `EALLOWSCRIPTS` una vez guardado el ajuste.

1075 

1076 1. Si `npm --version` imprimió 12.0.x, actualiza npm a 12.1 o posterior, por ejemplo con `npm install -g npm@latest`. En 12.0.x, las instalaciones de proyecto que inicia una herramienta `npx` o un script `npm run` pueden fallar con `EALLOWSCRIPTS` una vez guardado el ajuste.

1077 

1078 2. Ejecuta `npm config get allow-scripts` y anota los paquetes que liste, porque el siguiente comando reemplaza el valor completo. Guarda el ajuste con esos paquetes dentro de las comillas, como en `"allow-scripts=@anthropic-ai/claude-code,<package>"`:

1079 

1080 ```bash theme={null}

1081 npm config set "allow-scripts=@anthropic-ai/claude-code" --location=user

1082 ```

1083 

1084 3. Reinstala:

1085 

1086 ```bash theme={null}

1087 npm install -g @anthropic-ai/claude-code

1088 ```

1089 

1090 Si este comando o el paso 1 fallan con `EACCES`, cambia al instalador nativo en lugar de volver a ejecutarlo con `sudo`. Claude Code ejecuta npm sin `sudo` cuando se actualiza a sí mismo, por lo que las actualizaciones automáticas fallarían de la misma manera.

1091 

1092 4. Si `claude --version` no imprime un número de versión, verifica las [otras causas](#native-binary-not-found-after-npm-install).

1093 

1094 Para deshacerlo, establece la lista de nuevo sin `@anthropic-ai/claude-code`, o elimina la lista completa con `npm config delete allow-scripts --location=user`. En npm 12, el error vuelve después de tu próxima actualización.

1095 

1064### Error `ENOTEMPTY` de npm durante una actualización o reinstalación1096### Error `ENOTEMPTY` de npm durante una actualización o reinstalación

1065 1097 

1066Cuando ejecutas `npm install -g @anthropic-ai/claude-code` sobre una instalación existente, npm puede fallar al mover a un lado el directorio del paquete antiguo:1098Cuando ejecutas `npm install -g @anthropic-ai/claude-code` sobre una instalación existente, npm puede fallar al mover a un lado el directorio del paquete antiguo:


1094Remove-Item -Recurse -Force "$(npm root -g)/@anthropic-ai/claude-code", "$(npm root -g)/@anthropic-ai/.claude-code-*"1126Remove-Item -Recurse -Force "$(npm root -g)/@anthropic-ai/claude-code", "$(npm root -g)/@anthropic-ai/.claude-code-*"

1095```1127```

1096 1128 

1097Luego reinstala:1129Luego reinstala. En npm 12, sigue [Corregir una instalación con npm 12](#fix-an-npm-12-install). De lo contrario, ejecuta:

1098 1130 

1099```bash theme={null}1131```bash theme={null}

1100npm install -g @anthropic-ai/claude-code1132npm install -g @anthropic-ai/claude-code

ultrareview.md +2 −2

Details

133 133 

134## Rastrear una revisión en ejecución134## Rastrear una revisión en ejecución

135 135 

136Una revisión típicamente toma de 15 a 25 minutos. La revisión se ejecuta como una tarea en segundo plano, por lo que puedes seguir trabajando en tu sesión o iniciar otros comandos. Si elegiste [publicar los hallazgos en el pull request](#post-findings-to-the-pull-request), mantén la sesión abierta hasta que finalice la revisión; si la sesión termina primero, Claude Code no publica nada.136Una revisión típicamente toma de 5 a 15 minutos. La revisión se ejecuta como una tarea en segundo plano, por lo que puedes seguir trabajando en tu sesión o iniciar otros comandos. Si elegiste [publicar los hallazgos en el pull request](#post-findings-to-the-pull-request), mantén la sesión abierta hasta que finalice la revisión; si la sesión termina primero, Claude Code no publica nada.

137 137 

138Utilice `/tasks` para ver revisiones en ejecución y completadas, abra la vista de detalle para una revisión o detenga una revisión que está en progreso. Si detiene una revisión, Claude Code archiva la sesión en la nube y no devuelve hallazgos parciales.138Utilice `/tasks` para ver revisiones en ejecución y completadas, abra la vista de detalle para una revisión o detenga una revisión que está en progreso. Si detiene una revisión, Claude Code archiva la sesión en la nube y no devuelve hallazgos parciales.

139 139 


211| Objetivo | su diff de trabajo, una solicitud de extracción, una rama o una ruta | su diff de trabajo o una solicitud de extracción |211| Objetivo | su diff de trabajo, una solicitud de extracción, una rama o una ruta | su diff de trabajo o una solicitud de extracción |

212| Se ejecuta | localmente en su sesión | en un sandbox en la nube |212| Se ejecuta | localmente en su sesión | en un sandbox en la nube |

213| Profundidad | se escala con el argumento de esfuerzo | flota multiagente con verificación independiente |213| Profundidad | se escala con el argumento de esfuerzo | flota multiagente con verificación independiente |

214| Duración | segundos a pocos minutos | aproximadamente 15 a 25 minutos |214| Duración | segundos a pocos minutos | aproximadamente 5 a 15 minutos |

215| Costo | cuenta hacia el uso normal | ejecuciones gratuitas, luego aproximadamente \$5 a \$25 por revisión como créditos de uso |215| Costo | cuenta hacia el uso normal | ejecuciones gratuitas, luego aproximadamente \$5 a \$25 por revisión como créditos de uso |

216| Mejor para | retroalimentación rápida mientras itera | confianza previa a la fusión en cambios sustanciales |216| Mejor para | retroalimentación rápida mientras itera | confianza previa a la fusión en cambios sustanciales |

217 217