SpyBara
Go Premium

Documentation 2026-05-09 04:57 UTC to 2026-05-10 23:03 UTC

4 files changed +70 −10. View all changes and history on the product overview
2026
Sun 31 06:39 Sat 30 06:23 Fri 29 06:38 Thu 28 06:37 Wed 27 06:42 Tue 26 06:33 Sun 24 06:25 Sat 23 06:18 Fri 22 06:33 Thu 21 06:36 Wed 20 06:35 Tue 19 06:34 Mon 18 23:59 Sun 17 01:01 Fri 15 22:58 Thu 14 17:02 Wed 13 23:01 Tue 12 22:57 Mon 11 23:00 Sun 10 23:03 Sat 9 04:57 Fri 8 22:00 Thu 7 22:59 Tue 5 23:00 Mon 4 22:58 Sat 2 18:14 Fri 1 18:19

errors.md +31 −3

Details

24| `API Error: Repeated 529 Overloaded errors` | [Errores del servidor](#api-error-repeated-529-overloaded-errors) |24| `API Error: Repeated 529 Overloaded errors` | [Errores del servidor](#api-error-repeated-529-overloaded-errors) |

25| `Request timed out` | [Errores del servidor](#request-timed-out), o [Red](#unable-to-connect-to-api) si el mensaje menciona su conexión a Internet |25| `Request timed out` | [Errores del servidor](#request-timed-out), o [Red](#unable-to-connect-to-api) si el mensaje menciona su conexión a Internet |

26| `<model> is temporarily unavailable, so auto mode cannot determine the safety of...` | [Errores del servidor](#auto-mode-cannot-determine-the-safety-of-an-action) |26| `<model> is temporarily unavailable, so auto mode cannot determine the safety of...` | [Errores del servidor](#auto-mode-cannot-determine-the-safety-of-an-action) |

27| `Auto mode could not evaluate this action and is blocking it for safety` | [Errores del servidor](#auto-mode-cannot-determine-the-safety-of-an-action) |

28| `Auto mode classifier transcript exceeded context window` | [Errores del servidor](#auto-mode-cannot-determine-the-safety-of-an-action) |

27| `You've hit your session limit` / `You've hit your weekly limit` | [Límites de uso](#youve-hit-your-session-limit) |29| `You've hit your session limit` / `You've hit your weekly limit` | [Límites de uso](#youve-hit-your-session-limit) |

28| `Server is temporarily limiting requests` | [Límites de uso](#server-is-temporarily-limiting-requests) |30| `Server is temporarily limiting requests` | [Límites de uso](#server-is-temporarily-limiting-requests) |

29| `Request rejected (429)` | [Límites de uso](#request-rejected-429) |31| `Request rejected (429)` | [Límites de uso](#request-rejected-429) |


116 118 

117### Auto mode cannot determine the safety of an action119### Auto mode cannot determine the safety of an action

118 120 

119El modelo que [auto mode](/es/permission-modes#eliminate-prompts-with-auto-mode) usa para clasificar acciones está sobrecargado, por lo que auto mode bloqueó la acción en lugar de aprobarla sin marcar.121El modelo que [auto mode](/es/permission-modes#eliminate-prompts-with-auto-mode) utiliza para clasificar acciones no pudo producir una decisión, por lo que auto mode no aprobó la acción automáticamente. El mensaje que ve depende de por qué falló el clasificador.

122 

123Las lecturas, búsquedas y ediciones dentro de su directorio de trabajo omiten el clasificador, por lo que continúan funcionando en todos estos casos.

124 

125Cuando el modelo clasificador está sobrecargado:

120 126 

121```text theme={null}127```text theme={null}

122<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait briefly and then try this action again.128<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait briefly and then try this action again.

123```129```

124 130 

125Las lecturas, búsquedas y ediciones dentro de su directorio de trabajo omiten el clasificador, por lo que continúan funcionando durante la interrupción.

126 

127**Qué hacer:**131**Qué hacer:**

128 132 

129* Reintente después de unos segundos; Claude ve el mismo mensaje y generalmente reintenta por su cuenta133* Reintente después de unos segundos; Claude ve el mismo mensaje y generalmente reintenta por su cuenta

130* Si los reintentos continúan fallando, continúe con tareas de solo lectura y vuelva a la acción bloqueada más tarde134* Si los reintentos continúan fallando, continúe con tareas de solo lectura y vuelva a la acción bloqueada más tarde

131* Esto es transitorio e independiente de la [elegibilidad de auto mode](/es/permission-modes#eliminate-prompts-with-auto-mode); no necesita cambiar la configuración135* Esto es transitorio e independiente de la [elegibilidad de auto mode](/es/permission-modes#eliminate-prompts-with-auto-mode); no necesita cambiar la configuración

132 136 

137Cuando el clasificador devolvió una respuesta no analizable:

138 

139```text theme={null}

140Auto mode could not evaluate this action and is blocking it for safety — run with --debug for details

141```

142 

143**Qué hacer:**

144 

145* Reintente la acción; esto generalmente tiene éxito en el siguiente intento

146* Ejecute `claude --debug` y repita la acción para ver la respuesta del clasificador subyacente en el registro de depuración

147 

148Cuando la conversación ha crecido más que la ventana de contexto del clasificador:

149 

150```text theme={null}

151Auto mode classifier transcript exceeded context window — falling back to manual approval (try /compact to reduce conversation size)

152```

153 

154En una sesión interactiva, auto mode vuelve a una solicitud de permiso normal para esa acción para que pueda aprobarla o denegarla manualmente. En [modo no interactivo](/es/headless) la ejecución se cancela porque la transcripción solo crece y reintentar no puede tener éxito.

155 

156**Qué hacer:**

157 

158* Apruebe o deniegue la acción en la solicitud que aparece

159* Ejecute `/compact` para reducir el tamaño de la conversación para que las acciones posteriores se ajusten nuevamente dentro de la ventana del clasificador

160 

133## Límites de uso161## Límites de uso

134 162 

135Estos errores significan que se ha alcanzado una cuota vinculada a su cuenta o plan. Son distintos de los [errores del servidor](#server-errors), que afectan a todos.163Estos errores significan que se ha alcanzado una cuota vinculada a su cuenta o plan. Son distintos de los [errores del servidor](#server-errors), que afectan a todos.

hooks-guide.md +35 −5

Details

470| `ElicitationResult` | After a user responds to an MCP elicitation, before the response is sent back to the server |470| `ElicitationResult` | After a user responds to an MCP elicitation, before the response is sent back to the server |

471| `SessionEnd` | When a session terminates |471| `SessionEnd` | When a session terminates |

472 472 

473Cuando múltiples hooks coinciden, cada uno devuelve su propio resultado. Para decisiones, Claude Code elige la respuesta más restrictiva. Un hook `PreToolUse` que devuelve `deny` cancela la llamada a herramienta sin importar lo que los otros devuelvan. Un hook que devuelve `ask` fuerza el aviso de permiso incluso si el resto devuelven `allow`. El texto de `additionalContext` se mantiene de cada hook y se pasa a Claude junto.

474 

475Cada hook tiene un `type` que determina cómo se ejecuta. La mayoría de los hooks usan `"type": "command"`, que ejecuta un comando de shell. Hay otros cuatro tipos disponibles:473Cada hook tiene un `type` que determina cómo se ejecuta. La mayoría de los hooks usan `"type": "command"`, que ejecuta un comando de shell. Hay otros cuatro tipos disponibles:

476 474 

477* `"type": "http"`: POST de datos de evento a una URL. Consulta [HTTP hooks](#http-hooks).475* `"type": "http"`: POST de datos de evento a una URL. Consulta [HTTP hooks](#http-hooks).


479* `"type": "prompt"`: evaluación LLM de un solo turno. Consulta [Prompt-based hooks](#prompt-based-hooks).477* `"type": "prompt"`: evaluación LLM de un solo turno. Consulta [Prompt-based hooks](#prompt-based-hooks).

480* `"type": "agent"`: verificación multi-turno con acceso a herramientas. Los hooks de agente son experimentales y pueden cambiar. Consulta [Agent-based hooks](#agent-based-hooks).478* `"type": "agent"`: verificación multi-turno con acceso a herramientas. Los hooks de agente son experimentales y pueden cambiar. Consulta [Agent-based hooks](#agent-based-hooks).

481 479 

480### Combina resultados de múltiples hooks

481 

482Cuando múltiples hooks coinciden con el mismo evento, el comando de cada hook se ejecuta hasta completarse antes de que Claude Code fusione los resultados. Un hook que devuelve `deny` no detiene la ejecución de hooks hermanos. No confíes en que el `deny` de un hook suprima efectos secundarios en otro hook.

483 

484Después de que todos los hooks coincidentes terminen, Claude Code combina sus salidas. Para decisiones de permiso `PreToolUse`, la respuesta más restrictiva gana: `deny` anula `ask`, que anula `allow`. El texto de `additionalContext` se mantiene de cada hook y se pasa a Claude junto.

485 

486El ejemplo a continuación registra dos hooks `PreToolUse` en `Bash`. El primero añade cada comando a un archivo de registro y sale con 0. El segundo ejecuta un script que sale con 2 para negar cuando el comando contiene `rm -rf`:

487 

488```json theme={null}

489{

490 "hooks": {

491 "PreToolUse": [

492 {

493 "matcher": "Bash",

494 "hooks": [

495 {

496 "type": "command",

497 "command": "jq -r .tool_input.command >> ~/.claude/bash.log"

498 },

499 {

500 "type": "command",

501 "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/block-rm-rf.sh"

502 }

503 ]

504 }

505 ]

506 }

507}

508```

509 

510Cuando Claude intenta ejecutar `rm -rf /tmp/build`, ambos hooks se ejecutan en paralelo. El hook de registro escribe el comando en `~/.claude/bash.log` y sale con 0, lo que no reporta ninguna decisión. El hook de protección sale con 2, lo que niega la llamada a herramienta. El deny gana, por lo que Claude Code bloquea el comando y muestra a Claude el stderr del guardrail. La entrada de registro se sigue escribiendo porque el hook de registro ya se ejecutó.

511 

482### Lee entrada y devuelve salida512### Lee entrada y devuelve salida

483 513 

484Los hooks se comunican con Claude Code a través de stdin, stdout, stderr y códigos de salida. Cuando se activa un evento, Claude Code pasa datos específicos del evento como JSON a stdin de tu script. Tu script lee esos datos, hace su trabajo, y le dice a Claude Code qué hacer a continuación a través del código de salida.514Los hooks se comunican con Claude Code a través de stdin, stdout, stderr y códigos de salida. Cuando se activa un evento, Claude Code pasa datos específicos del evento como JSON a stdin de tu script. Tu script lee esos datos, hace su trabajo, y le dice a Claude Code qué hacer a continuación a través del código de salida.


511COMMAND=$(echo "$INPUT" | jq -r '.tool_input.command')541COMMAND=$(echo "$INPUT" | jq -r '.tool_input.command')

512 542 

513if echo "$COMMAND" | grep -q "drop table"; then543if echo "$COMMAND" | grep -q "drop table"; then

514 echo "Blocked: dropping tables is not allowed" >&2 // stderr se convierte en retroalimentación de Claude544 echo "Blocked: dropping tables is not allowed" >&2 # stderr se convierte en retroalimentación de Claude

515 exit 2 // exit 2 = bloquea la acción545 exit 2 # exit 2 = bloquea la acción

516fi546fi

517 547 

518exit 0 // exit 0 = permite que proceda548exit 0 # exit 0 = permite que proceda

519```549```

520 550 

521El código de salida determina qué sucede a continuación:551El código de salida determina qué sucede a continuación:

settings.md +2 −0

Details

206| `includeCoAuthoredBy` | **Obsoleto**: Use `attribution` en su lugar. Si incluir la línea `co-authored-by Claude` en commits de git y solicitudes de extracción (predeterminado: `true`) | `false` |206| `includeCoAuthoredBy` | **Obsoleto**: Use `attribution` en su lugar. Si incluir la línea `co-authored-by Claude` en commits de git y solicitudes de extracción (predeterminado: `true`) | `false` |

207| `includeGitInstructions` | Incluir instrucciones de flujo de trabajo de commit y PR integradas y la instantánea de estado de git en el indicador del sistema de Claude (predeterminado: `true`). Establecer en `false` para eliminar ambas, por ejemplo cuando se usan skills de flujo de trabajo de git personalizados. La variable de entorno `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` tiene precedencia sobre esta configuración cuando se establece | `false` |207| `includeGitInstructions` | Incluir instrucciones de flujo de trabajo de commit y PR integradas y la instantánea de estado de git en el indicador del sistema de Claude (predeterminado: `true`). Establecer en `false` para eliminar ambas, por ejemplo cuando se usan skills de flujo de trabajo de git personalizados. La variable de entorno `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` tiene precedencia sobre esta configuración cuando se establece | `false` |

208| `language` | Configurar el idioma de respuesta preferido de Claude (por ejemplo, `"japanese"`, `"spanish"`, `"french"`). Claude responderá en este idioma de forma predeterminada. También establece el idioma de [dictado de voz](/es/voice-dictation#change-the-dictation-language) | `"japanese"` |208| `language` | Configurar el idioma de respuesta preferido de Claude (por ejemplo, `"japanese"`, `"spanish"`, `"french"`). Claude responderá en este idioma de forma predeterminada. También establece el idioma de [dictado de voz](/es/voice-dictation#change-the-dictation-language) | `"japanese"` |

209| `maxSkillDescriptionChars` | {/* min-version: 2.1.105 */}Límite de caracteres por skill en el texto combinado de `description` y `when_to_use` en el [listado de skills](/es/skills#skill-descriptions-are-cut-short) que Claude ve cada turno (predeterminado: `1536`). El texto más largo que esto se trunca. Aumente para mantener descripciones largas intactas al costo de más contexto por turno; disminuya para ajustar más skills bajo [`skillListingBudgetFraction`](#available-settings). Requiere Claude Code v2.1.105 o posterior | `2048` |

209| `minimumVersion` | Piso que evita que las actualizaciones automáticas en segundo plano e `claude update` instalen una versión por debajo de esta. Cambiar del canal `"latest"` a `"stable"` a través de `/config` le solicita que permanezca en la versión actual o permita la degradación. Elegir permanecer establece este valor. También útil en [configuraciones administradas](/es/permissions#managed-settings) para fijar un mínimo en toda la organización | `"2.1.100"` |210| `minimumVersion` | Piso que evita que las actualizaciones automáticas en segundo plano e `claude update` instalen una versión por debajo de esta. Cambiar del canal `"latest"` a `"stable"` a través de `/config` le solicita que permanezca en la versión actual o permita la degradación. Elegir permanecer establece este valor. También útil en [configuraciones administradas](/es/permissions#managed-settings) para fijar un mínimo en toda la organización | `"2.1.100"` |

210| `model` | Anular el modelo predeterminado a usar para Claude Code. `--model` y [`ANTHROPIC_MODEL`](/es/model-config#environment-variables) anulan esto para una sesión | `"claude-sonnet-4-6"` |211| `model` | Anular el modelo predeterminado a usar para Claude Code. `--model` y [`ANTHROPIC_MODEL`](/es/model-config#environment-variables) anulan esto para una sesión | `"claude-sonnet-4-6"` |

211| `modelOverrides` | Asignar IDs de modelo de Anthropic a IDs de modelo específicos del proveedor como ARNs de perfil de inferencia de Bedrock. Cada entrada del selector de modelo usa su valor asignado al llamar a la API del proveedor. Consulte [Anular IDs de modelo por versión](/es/model-config#override-model-ids-per-version) | `{"claude-opus-4-6": "arn:aws:bedrock:..."}` |212| `modelOverrides` | Asignar IDs de modelo de Anthropic a IDs de modelo específicos del proveedor como ARNs de perfil de inferencia de Bedrock. Cada entrada del selector de modelo usa su valor asignado al llamar a la API del proveedor. Consulte [Anular IDs de modelo por versión](/es/model-config#override-model-ids-per-version) | `{"claude-opus-4-6": "arn:aws:bedrock:..."}` |


223| `showClearContextOnPlanAccept` | Mostrar la opción "borrar contexto" en la pantalla de aceptación del plan. Predeterminado: `false`. Establecer en `true` para restaurar la opción | `true` |224| `showClearContextOnPlanAccept` | Mostrar la opción "borrar contexto" en la pantalla de aceptación del plan. Predeterminado: `false`. Establecer en `true` para restaurar la opción | `true` |

224| `showThinkingSummaries` | Mostrar resúmenes de [pensamiento extendido](/es/model-config#extended-thinking) en sesiones interactivas. Cuando no está definido o es `false` (predeterminado en modo interactivo), los bloques de pensamiento se redactan por la API y se muestran como un stub contraído. La redacción solo cambia lo que ve, no lo que genera el modelo: para reducir el gasto de pensamiento, [baje el presupuesto o deshabilite el pensamiento](/es/model-config#extended-thinking) en su lugar. El modo no interactivo (`-p`) y los llamadores de SDK siempre reciben resúmenes independientemente de esta configuración | `true` |225| `showThinkingSummaries` | Mostrar resúmenes de [pensamiento extendido](/es/model-config#extended-thinking) en sesiones interactivas. Cuando no está definido o es `false` (predeterminado en modo interactivo), los bloques de pensamiento se redactan por la API y se muestran como un stub contraído. La redacción solo cambia lo que ve, no lo que genera el modelo: para reducir el gasto de pensamiento, [baje el presupuesto o deshabilite el pensamiento](/es/model-config#extended-thinking) en su lugar. El modo no interactivo (`-p`) y los llamadores de SDK siempre reciben resúmenes independientemente de esta configuración | `true` |

225| `showTurnDuration` | Mostrar mensajes de duración de turno después de respuestas, por ejemplo "Cooked for 1m 6s". Predeterminado: `true`. Aparece en `/config` como **Show turn duration** | `false` |226| `showTurnDuration` | Mostrar mensajes de duración de turno después de respuestas, por ejemplo "Cooked for 1m 6s". Predeterminado: `true`. Aparece en `/config` como **Show turn duration** | `false` |

227| `skillListingBudgetFraction` | {/* min-version: 2.1.105 */}Fracción del contexto del modelo reservada para el [listado de skills](/es/skills#skill-descriptions-are-cut-short) que Claude ve cada turno (predeterminado: `0.01` = 1%). Cuando el listado excede el presupuesto, las descripciones de los skills menos utilizados se contraen a nombres desnudos para que Claude aún pueda invocarlos pero no verá por qué. Aumente para mantener más descripciones visibles al costo de más contexto por turno. `/doctor` muestra el recuento de truncamiento actual y qué skills se ven afectados. Requiere Claude Code v2.1.105 o posterior | `0.02` |

226| `skillOverrides` | {/* min-version: 2.1.129 */}Anulaciones de visibilidad por skill con clave de nombre de skill. El valor es `"on"`, `"name-only"`, `"user-invocable-only"`, o `"off"`. Permite ocultar o contraer un skill sin editar su SKILL.md. No se aplica a skills de plugin, que se gestionan a través de `/plugin`. El menú `/skills` escribe estos en `.claude/settings.local.json`. Consulte [Anular visibilidad de skill desde configuraciones](/es/skills#override-skill-visibility-from-settings). Requiere Claude Code v2.1.129 o posterior | `{"legacy-context": "name-only", "deploy": "off"}` |228| `skillOverrides` | {/* min-version: 2.1.129 */}Anulaciones de visibilidad por skill con clave de nombre de skill. El valor es `"on"`, `"name-only"`, `"user-invocable-only"`, o `"off"`. Permite ocultar o contraer un skill sin editar su SKILL.md. No se aplica a skills de plugin, que se gestionan a través de `/plugin`. El menú `/skills` escribe estos en `.claude/settings.local.json`. Consulte [Anular visibilidad de skill desde configuraciones](/es/skills#override-skill-visibility-from-settings). Requiere Claude Code v2.1.129 o posterior | `{"legacy-context": "name-only", "deploy": "off"}` |

227| `skipWebFetchPreflight` | Omitir la [verificación de seguridad de dominio de WebFetch](/es/data-usage#webfetch-domain-safety-check) que envía cada nombre de host solicitado a `api.anthropic.com` antes de obtener. Establecer en `true` en entornos que bloquean tráfico a Anthropic, como implementaciones de Bedrock, Vertex AI, o Foundry con salida restrictiva. Cuando se omite, WebFetch intenta cualquier URL sin consultar la lista de bloqueos | `true` |229| `skipWebFetchPreflight` | Omitir la [verificación de seguridad de dominio de WebFetch](/es/data-usage#webfetch-domain-safety-check) que envía cada nombre de host solicitado a `api.anthropic.com` antes de obtener. Establecer en `true` en entornos que bloquean tráfico a Anthropic, como implementaciones de Bedrock, Vertex AI, o Foundry con salida restrictiva. Cuando se omite, WebFetch intenta cualquier URL sin consultar la lista de bloqueos | `true` |

228| `spinnerTipsEnabled` | Mostrar consejos en el spinner mientras Claude está trabajando. Establecer en `false` para deshabilitar consejos (predeterminado: `true`) | `false` |230| `spinnerTipsEnabled` | Mostrar consejos en el spinner mientras Claude está trabajando. Establecer en `false` para deshabilitar consejos (predeterminado: `true`) | `false` |

skills.md +2 −2

Details

746 746 

747### Las descripciones de skills se cortan747### Las descripciones de skills se cortan

748 748 

749Las descripciones de skills se cargan en contexto para que Claude sepa qué está disponible. Todos los nombres de skills siempre se incluyen, pero si tiene muchos skills, las descripciones se acortan para ajustarse al presupuesto de caracteres, lo que puede eliminar las palabras clave que Claude necesita para coincidir con su solicitud. El presupuesto se escala dinámicamente al 1% de la ventana de contexto, con un respaldo de 8.000 caracteres.749Las descripciones de skills se cargan en contexto para que Claude sepa qué está disponible. Todos los nombres de skills siempre se incluyen, pero si tiene muchos skills, las descripciones se acortan para ajustarse al presupuesto de caracteres, lo que puede eliminar las palabras clave que Claude necesita para coincidir con su solicitud. El presupuesto se escala al 1% de la ventana de contexto del modelo. Cuando se desborda, las descripciones de los skills que invoca menos se eliminan primero, por lo que los skills que realmente usa mantienen su texto completo. Ejecute `/doctor` para ver si el presupuesto se está desbordando y qué skills se ven afectados.

750 750 

751Para aumentar el límite, establezca la variable de entorno `SLASH_COMMAND_TOOL_CHAR_BUDGET`. Para liberar presupuesto para otros skills, establezca las entradas de baja prioridad en `"name-only"` en [`skillOverrides`](#override-skill-visibility-from-settings) para que se enumeren sin descripción. También puede recortar el texto de `description` y `when_to_use` en la fuente: coloque el caso de uso clave primero, ya que el texto combinado de cada entrada está limitado a 1.536 caracteres independientemente del presupuesto.751Para aumentar el presupuesto, establezca la configuración [`skillListingBudgetFraction`](/es/settings#available-settings) (por ejemplo, `0.02` = 2%) o la variable de entorno `SLASH_COMMAND_TOOL_CHAR_BUDGET` a un recuento de caracteres fijo. Para liberar presupuesto para otros skills, establezca las entradas de baja prioridad en `"name-only"` en [`skillOverrides`](#override-skill-visibility-from-settings) para que se enumeren sin descripción. También puede recortar el texto de `description` y `when_to_use` en la fuente: coloque el caso de uso clave primero, ya que el texto combinado de cada entrada está limitado a 1.536 caracteres independientemente del presupuesto. El límite es configurable con [`maxSkillDescriptionChars`](/es/settings#available-settings).

752 752 

753## Recursos relacionados753## Recursos relacionados

754 754