Saltar al contenido principal
Claude Code ofrece una variedad de configuraciones para personalizar su comportamiento según sus necesidades. Puede configurar Claude Code ejecutando el comando /config cuando utiliza el REPL interactivo, que abre una interfaz de Configuración con pestañas donde puede ver información de estado y modificar opciones de configuración.

Alcances de configuración

Claude Code utiliza un sistema de alcances para determinar dónde se aplican las configuraciones y quién las comparte. Comprender los alcances le ayuda a decidir cómo configurar Claude Code para uso personal, colaboración en equipo o implementación empresarial.

Alcances disponibles

AlcanceUbicaciónA quién afecta¿Se comparte con el equipo?
Managedmanaged-settings.json a nivel del sistemaTodos los usuarios en la máquinaSí (implementado por TI)
UserDirectorio ~/.claude/Usted, en todos los proyectosNo
Project.claude/ en el repositorioTodos los colaboradores en este repositorioSí (confirmado en git)
LocalArchivos .claude/*.local.*Usted, solo en este repositorioNo (ignorado por git)

Cuándo usar cada alcance

El alcance Managed es para:
  • Políticas de seguridad que deben aplicarse en toda la organización
  • Requisitos de cumplimiento que no se pueden anular
  • Configuraciones estandarizadas implementadas por TI/DevOps
El alcance User es mejor para:
  • Preferencias personales que desea en todas partes (temas, configuración del editor)
  • Herramientas y plugins que utiliza en todos los proyectos
  • Claves API y autenticación (almacenadas de forma segura)
El alcance Project es mejor para:
  • Configuraciones compartidas por el equipo (permisos, hooks, MCP servers)
  • Plugins que todo el equipo debe tener
  • Estandarización de herramientas entre colaboradores
El alcance Local es mejor para:
  • Anulaciones personales para un proyecto específico
  • Configuraciones de prueba antes de compartir con el equipo
  • Configuraciones específicas de la máquina que no funcionarán para otros

Cómo interactúan los alcances

Cuando la misma configuración se configura en múltiples alcances, los alcances más específicos tienen prioridad:
  1. Managed (más alto) - no puede ser anulado por nada
  2. Argumentos de línea de comandos - anulaciones de sesión temporal
  3. Local - anula configuraciones de proyecto y usuario
  4. Project - anula configuraciones de usuario
  5. User (más bajo) - se aplica cuando nada más especifica la configuración
Por ejemplo, si un permiso se permite en la configuración de usuario pero se deniega en la configuración del proyecto, la configuración del proyecto tiene prioridad y el permiso se bloquea.

Qué usa alcances

Los alcances se aplican a muchas características de Claude Code:
CaracterísticaUbicación de usuarioUbicación de proyectoUbicación local
Settings~/.claude/settings.json.claude/settings.json.claude/settings.local.json
Subagents~/.claude/agents/.claude/agents/
MCP servers~/.claude.json.mcp.json~/.claude.json (por proyecto)
Plugins~/.claude/settings.json.claude/settings.json.claude/settings.local.json
CLAUDE.md~/.claude/CLAUDE.mdCLAUDE.md o .claude/CLAUDE.mdCLAUDE.local.md

Archivos de configuración

El archivo settings.json es nuestro mecanismo oficial para configurar Claude Code a través de configuraciones jerárquicas:
  • Configuración de usuario se define en ~/.claude/settings.json y se aplica a todos los proyectos.
  • Configuración de proyecto se guarda en su directorio de proyecto:
    • .claude/settings.json para configuraciones que se verifican en el control de código fuente y se comparten con su equipo
    • .claude/settings.local.json para configuraciones que no se verifican, útil para preferencias personales y experimentación. Claude Code configurará git para ignorar .claude/settings.local.json cuando se cree.
  • Configuración administrada: Para organizaciones que necesitan control centralizado, Claude Code admite archivos managed-settings.json y managed-mcp.json que se pueden implementar en directorios del sistema:
    • macOS: /Library/Application Support/ClaudeCode/
    • Linux y WSL: /etc/claude-code/
    • Windows: C:\Program Files\ClaudeCode\
    Estas son rutas de todo el sistema (no directorios de inicio de usuario como ~/Library/...) que requieren privilegios de administrador. Están diseñadas para ser implementadas por administradores de TI.
    Consulte Configuración administrada y Configuración MCP administrada para obtener detalles.
    Las implementaciones administradas también pueden restringir adiciones del mercado de plugins usando strictKnownMarketplaces. Para obtener más información, consulte Restricciones de mercado administradas.
  • Otra configuración se almacena en ~/.claude.json. Este archivo contiene sus preferencias (tema, configuración de notificaciones, modo de editor), sesión OAuth, configuraciones de MCP server para alcances de usuario y local, estado por proyecto (herramientas permitidas, configuración de confianza) y varios cachés. Los MCP servers con alcance de proyecto se almacenan por separado en .mcp.json.
Claude Code crea automáticamente copias de seguridad con marca de tiempo de archivos de configuración y retiene las cinco copias de seguridad más recientes para evitar pérdida de datos.
Ejemplo settings.json
{
  "$schema": "https://json.schemastore.org/claude-code-settings.json",
  "permissions": {
    "allow": [
      "Bash(npm run lint)",
      "Bash(npm run test *)",
      "Read(~/.zshrc)"
    ],
    "deny": [
      "Bash(curl *)",
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)"
    ]
  },
  "env": {
    "CLAUDE_CODE_ENABLE_TELEMETRY": "1",
    "OTEL_METRICS_EXPORTER": "otlp"
  },
  "companyAnnouncements": [
    "Welcome to Acme Corp! Review our code guidelines at docs.acme.com",
    "Reminder: Code reviews required for all PRs",
    "New security policy in effect"
  ]
}
La línea $schema en el ejemplo anterior apunta al esquema JSON oficial para la configuración de Claude Code. Agregarlo a su settings.json habilita el autocompletado y la validación en línea en VS Code, Cursor y cualquier otro editor que admita validación de esquema JSON.

Configuraciones disponibles

settings.json admite varias opciones:
ClaveDescripciónEjemplo
apiKeyHelperScript personalizado, a ejecutarse en /bin/sh, para generar un valor de autenticación. Este valor se enviará como encabezados X-Api-Key y Authorization: Bearer para solicitudes de modelo/bin/generate_temp_api_key.sh
cleanupPeriodDaysLas sesiones inactivas durante más tiempo que este período se eliminan al inicio. Establecer en 0 elimina inmediatamente todas las sesiones. (predeterminado: 30 días)20
companyAnnouncementsAnuncio a mostrar a los usuarios al inicio. Si se proporcionan múltiples anuncios, se alternarán aleatoriamente.["Welcome to Acme Corp! Review our code guidelines at docs.acme.com"]
envVariables de entorno que se aplicarán a cada sesión{"FOO": "bar"}
attributionPersonalizar la atribución para commits de git y solicitudes de extracción. Consulte Configuración de atribución{"commit": "🤖 Generated with Claude Code", "pr": ""}
includeCoAuthoredByObsoleto: 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
permissionsConsulte la tabla a continuación para la estructura de permisos.
hooksConfigure comandos personalizados para ejecutarse en eventos del ciclo de vida. Consulte documentación de hooks para el formatoConsulte hooks
disableAllHooksDeshabilitar todos los hookstrue
allowManagedHooksOnly(Solo configuración administrada) Evitar la carga de hooks de usuario, proyecto y plugin. Solo permite hooks administrados y hooks SDK. Consulte Configuración de hookstrue
allowManagedPermissionRulesOnly(Solo configuración administrada) Evitar que la configuración de usuario y proyecto defina reglas de permiso allow, ask o deny. Solo se aplican las reglas en la configuración administrada. Consulte Configuración solo administradatrue
modelAnular el modelo predeterminado a usar para Claude Code"claude-sonnet-4-5-20250929"
otelHeadersHelperScript para generar encabezados OpenTelemetry dinámicos. Se ejecuta al inicio y periódicamente (consulte Encabezados dinámicos)/bin/generate_otel_headers.sh
statusLineConfigure una línea de estado personalizada para mostrar contexto. Consulte documentación de statusLine{"type": "command", "command": "~/.claude/statusline.sh"}
fileSuggestionConfigure un script personalizado para autocompletado de archivo @. Consulte Configuración de sugerencia de archivo{"type": "command", "command": "~/.claude/file-suggestion.sh"}
respectGitignoreControle si el selector de archivo @ respeta patrones .gitignore. Cuando es true (predeterminado), los archivos que coinciden con patrones .gitignore se excluyen de las sugerenciasfalse
outputStyleConfigure un estilo de salida para ajustar el mensaje del sistema. Consulte documentación de estilos de salida"Explanatory"
forceLoginMethodUse claudeai para restringir el inicio de sesión a cuentas de Claude.ai, console para restringir el inicio de sesión a cuentas de Claude Console (facturación de uso de API)claudeai
forceLoginOrgUUIDEspecifique el UUID de una organización para seleccionarla automáticamente durante el inicio de sesión, omitiendo el paso de selección de organización. Requiere que forceLoginMethod esté configurado"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
enableAllProjectMcpServersAprobar automáticamente todos los MCP servers definidos en archivos .mcp.json del proyectotrue
enabledMcpjsonServersLista de MCP servers específicos de archivos .mcp.json para aprobar["memory", "github"]
disabledMcpjsonServersLista de MCP servers específicos de archivos .mcp.json para rechazar["filesystem"]
allowedMcpServersCuando se establece en managed-settings.json, lista de permitidos de MCP servers que los usuarios pueden configurar. Indefinido = sin restricciones, matriz vacía = bloqueo. Se aplica a todos los alcances. La lista de denegados tiene prioridad. Consulte Configuración MCP administrada[{ "serverName": "github" }]
deniedMcpServersCuando se establece en managed-settings.json, lista de denegados de MCP servers que están explícitamente bloqueados. Se aplica a todos los alcances incluyendo servidores administrados. La lista de denegados tiene prioridad sobre la lista de permitidos. Consulte Configuración MCP administrada[{ "serverName": "filesystem" }]
strictKnownMarketplacesCuando se establece en managed-settings.json, lista de permitidos de mercados de plugins que los usuarios pueden agregar. Indefinido = sin restricciones, matriz vacía = bloqueo. Se aplica solo a adiciones de mercado. Consulte Restricciones de mercado administradas[{ "source": "github", "repo": "acme-corp/plugins" }]
awsAuthRefreshScript personalizado que modifica el directorio .aws (consulte configuración de credenciales avanzada)aws sso login --profile myprofile
awsCredentialExportScript personalizado que genera JSON con credenciales de AWS (consulte configuración de credenciales avanzada)/bin/generate_aws_grant.sh
alwaysThinkingEnabledHabilitar pensamiento extendido de forma predeterminada para todas las sesiones. Típicamente se configura a través del comando /config en lugar de editar directamentetrue
plansDirectoryPersonalizar dónde se almacenan los archivos de plan. La ruta es relativa a la raíz del proyecto. Predeterminado: ~/.claude/plans"./plans"
showTurnDurationMostrar mensajes de duración de turno después de las respuestas (por ejemplo, “Cooked for 1m 6s”). Establezca en false para ocultar estos mensajestrue
spinnerVerbsPersonalizar los verbos de acción mostrados en el spinner y mensajes de duración de turno. Establezca mode en "replace" para usar solo sus verbos, o "append" para agregarlos a los predeterminados{"mode": "append", "verbs": ["Pondering", "Crafting"]}
languageConfigure el idioma de respuesta preferido de Claude (por ejemplo, "japanese", "spanish", "french"). Claude responderá en este idioma de forma predeterminada"japanese"
autoUpdatesChannelCanal de lanzamiento a seguir para actualizaciones. Use "stable" para una versión que típicamente tiene aproximadamente una semana de antigüedad y omite versiones con regresiones importantes, o "latest" (predeterminado) para el lanzamiento más reciente"stable"
spinnerTipsEnabledMostrar consejos en el spinner mientras Claude está trabajando. Establezca en false para deshabilitar consejos (predeterminado: true)false
terminalProgressBarEnabledHabilitar la barra de progreso del terminal que muestra el progreso en terminales compatibles como Windows Terminal e iTerm2 (predeterminado: true)false
prefersReducedMotionReducir o deshabilitar animaciones de interfaz de usuario (spinners, shimmer, efectos de flash) para accesibilidadtrue
teammateModeCómo se muestran los compañeros del equipo de agentes: auto (elige paneles divididos en tmux o iTerm2, en proceso de otra manera), in-process o tmux. Consulte configurar equipos de agentes"in-process"

Configuración de permisos

ClavesDescripciónEjemplo
allowMatriz de reglas de permiso para permitir el uso de herramientas. Consulte Sintaxis de regla de permiso a continuación para detalles de coincidencia de patrones[ "Bash(git diff *)" ]
askMatriz de reglas de permiso para solicitar confirmación al usar herramientas. Consulte Sintaxis de regla de permiso a continuación[ "Bash(git push *)" ]
denyMatriz de reglas de permiso para denegar el uso de herramientas. Use esto para excluir archivos sensibles del acceso de Claude Code. Consulte Sintaxis de regla de permiso y Limitaciones de permiso de Bash[ "WebFetch", "Bash(curl *)", "Read(./.env)", "Read(./secrets/**)" ]
additionalDirectoriesDirectorios de trabajo adicionales a los que Claude tiene acceso[ "../docs/" ]
defaultModeModo de permiso predeterminado al abrir Claude Code"acceptEdits"
disableBypassPermissionsModeEstablezca en "disable" para evitar que se active el modo bypassPermissions. Esto deshabilita la bandera de línea de comandos --dangerously-skip-permissions. Consulte configuración administrada"disable"

Sintaxis de regla de permiso

Las reglas de permiso siguen el formato Tool o Tool(specifier). Las reglas se evalúan en orden: primero las reglas de denegación, luego las de solicitud, luego las de permiso. La primera regla coincidente gana. Ejemplos rápidos:
ReglaEfecto
BashCoincide con todos los comandos Bash
Bash(npm run *)Coincide con comandos que comienzan con npm run
Read(./.env)Coincide con la lectura del archivo .env
WebFetch(domain:example.com)Coincide con solicitudes de obtención a example.com
Para la referencia completa de sintaxis de regla, incluyendo comportamiento de comodín, patrones específicos de herramientas para reglas Read, Edit, WebFetch, MCP y Task, y limitaciones de seguridad de patrones Bash, consulte Sintaxis de regla de permiso.

Configuración de sandbox

Configure el comportamiento avanzado de sandboxing. El sandboxing aísla comandos bash de su sistema de archivos y red. Consulte Sandboxing para obtener detalles. Las restricciones de sistema de archivos y red se configuran a través de reglas de permiso Read, Edit y WebFetch, no a través de estas configuraciones de sandbox.
ClavesDescripciónEjemplo
enabledHabilitar sandboxing de bash (macOS, Linux y WSL2). Predeterminado: falsetrue
autoAllowBashIfSandboxedAprobar automáticamente comandos bash cuando están en sandbox. Predeterminado: truetrue
excludedCommandsComandos que deben ejecutarse fuera del sandbox["git", "docker"]
allowUnsandboxedCommandsPermitir que los comandos se ejecuten fuera del sandbox a través del parámetro dangerouslyDisableSandbox. Cuando se establece en false, la puerta de escape dangerouslyDisableSandbox se deshabilita completamente y todos los comandos deben ejecutarse en sandbox (o estar en excludedCommands). Útil para políticas empresariales que requieren sandboxing estricto. Predeterminado: truefalse
network.allowUnixSocketsRutas de socket Unix accesibles en sandbox (para agentes SSH, etc.)["~/.ssh/agent-socket"]
network.allowAllUnixSocketsPermitir todas las conexiones de socket Unix en sandbox. Predeterminado: falsetrue
network.allowLocalBindingPermitir vinculación a puertos localhost (solo macOS). Predeterminado: falsetrue
network.allowedDomainsMatriz de dominios para permitir tráfico de red saliente. Admite comodines (por ejemplo, *.example.com).["github.com", "*.npmjs.org"]
network.httpProxyPortPuerto proxy HTTP usado si desea traer su propio proxy. Si no se especifica, Claude ejecutará su propio proxy.8080
network.socksProxyPortPuerto proxy SOCKS5 usado si desea traer su propio proxy. Si no se especifica, Claude ejecutará su propio proxy.8081
enableWeakerNestedSandboxHabilitar sandbox más débil para entornos Docker sin privilegios (solo Linux y WSL2). Reduce la seguridad. Predeterminado: falsetrue
Ejemplo de configuración:
{
  "sandbox": {
    "enabled": true,
    "autoAllowBashIfSandboxed": true,
    "excludedCommands": ["docker"],
    "network": {
      "allowedDomains": ["github.com", "*.npmjs.org", "registry.yarnpkg.com"],
      "allowUnixSockets": [
        "/var/run/docker.sock"
      ],
      "allowLocalBinding": true
    }
  },
  "permissions": {
    "deny": [
      "Read(.envrc)",
      "Read(~/.aws/**)"
    ]
  }
}
Las restricciones de sistema de archivos y red usan reglas de permiso estándar:
  • Use reglas de denegación Read para bloquear a Claude de leer archivos o directorios específicos
  • Use reglas de permiso Edit para permitir que Claude escriba en directorios más allá del directorio de trabajo actual
  • Use reglas de denegación Edit para bloquear escrituras en rutas específicas
  • Use reglas de permiso/denegación WebFetch para controlar qué dominios de red puede acceder Claude

Configuración de atribución

Claude Code agrega atribución a commits de git y solicitudes de extracción. Estos se configuran por separado:
  • Los commits usan git trailers (como Co-Authored-By) de forma predeterminada, que se pueden personalizar o deshabilitar
  • Las descripciones de solicitudes de extracción son texto sin formato
ClavesDescripción
commitAtribución para commits de git, incluyendo cualquier trailer. La cadena vacía oculta la atribución de commit
prAtribución para descripciones de solicitudes de extracción. La cadena vacía oculta la atribución de solicitud de extracción
Atribución de commit predeterminada:
🤖 Generated with [Claude Code](https://claude.com/claude-code)

   Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
Atribución de solicitud de extracción predeterminada:
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Ejemplo:
{
  "attribution": {
    "commit": "Generated with AI\n\nCo-Authored-By: AI <[email protected]>",
    "pr": ""
  }
}
La configuración attribution tiene prioridad sobre la configuración obsoleta includeCoAuthoredBy. Para ocultar toda la atribución, establezca commit y pr en cadenas vacías.

Configuración de sugerencia de archivo

Configure un comando personalizado para autocompletado de ruta de archivo @. La sugerencia de archivo integrada utiliza recorrido rápido del sistema de archivos, pero los monorepos grandes pueden beneficiarse de indexación específica del proyecto como un índice de archivo precompilado o herramientas personalizadas.
{
  "fileSuggestion": {
    "type": "command",
    "command": "~/.claude/file-suggestion.sh"
  }
}
El comando se ejecuta con las mismas variables de entorno que hooks, incluyendo CLAUDE_PROJECT_DIR. Recibe JSON a través de stdin con un campo query:
{"query": "src/comp"}
Genere rutas de archivo separadas por saltos de línea a stdout (actualmente limitado a 15):
src/components/Button.tsx
src/components/Modal.tsx
src/components/Form.tsx
Ejemplo:
#!/bin/bash
query=$(cat | jq -r '.query')
your-repo-file-index --query "$query" | head -20

Configuración de hooks

Solo configuración administrada: Controla qué hooks se pueden ejecutar. Esta configuración solo se puede configurar en configuración administrada y proporciona a los administradores control estricto sobre la ejecución de hooks. Comportamiento cuando allowManagedHooksOnly es true:
  • Se cargan hooks administrados y hooks SDK
  • Se bloquean hooks de usuario, proyecto y plugin
Configuración:
{
  "allowManagedHooksOnly": true
}

Precedencia de configuración

Las configuraciones se aplican en orden de precedencia. De mayor a menor:
  1. Configuración administrada (managed-settings.json)
    • Políticas implementadas por TI/DevOps en directorios del sistema
    • No pueden ser anuladas por configuraciones de usuario o proyecto
  2. Argumentos de línea de comandos
    • Anulaciones temporales para una sesión específica
  3. Configuración de proyecto local (.claude/settings.local.json)
    • Configuraciones personales específicas del proyecto
  4. Configuración de proyecto compartida (.claude/settings.json)
    • Configuraciones de proyecto compartidas por el equipo en control de código fuente
  5. Configuración de usuario (~/.claude/settings.json)
    • Configuraciones globales personales
Esta jerarquía asegura que las políticas organizacionales siempre se apliquen mientras aún permite que los equipos e individuos personalicen su experiencia. Por ejemplo, si su configuración de usuario permite Bash(npm run *) pero la configuración compartida del proyecto la deniega, la configuración del proyecto tiene prioridad y el comando se bloquea.

Puntos clave sobre el sistema de configuración

  • Archivos de memoria (CLAUDE.md): Contienen instrucciones y contexto que Claude carga al inicio
  • Archivos de configuración (JSON): Configuran permisos, variables de entorno y comportamiento de herramientas
  • Skills: Mensajes personalizados que se pueden invocar con /skill-name o cargar automáticamente por Claude
  • MCP servers: Extienden Claude Code con herramientas e integraciones adicionales
  • Precedencia: Las configuraciones de nivel superior (Managed) anulan las de nivel inferior (User/Project)
  • Herencia: Las configuraciones se fusionan, con configuraciones más específicas agregando o anulando las más amplias

Mensaje del sistema

El mensaje del sistema interno de Claude Code no se publica. Para agregar instrucciones personalizadas, use archivos CLAUDE.md o la bandera --append-system-prompt.

Exclusión de archivos sensibles

Para evitar que Claude Code acceda a archivos que contienen información sensible como claves API, secretos y archivos de entorno, use la configuración permissions.deny en su archivo .claude/settings.json:
{
  "permissions": {
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)",
      "Read(./config/credentials.json)",
      "Read(./build)"
    ]
  }
}
Esto reemplaza la configuración obsoleta ignorePatterns. Los archivos que coinciden con estos patrones se excluyen del descubrimiento de archivos y resultados de búsqueda, y se deniegan las operaciones de lectura en estos archivos.

Configuración de subagent

Claude Code admite subagents de IA personalizados que se pueden configurar tanto a nivel de usuario como de proyecto. Estos subagents se almacenan como archivos Markdown con frontmatter YAML:
  • Subagents de usuario: ~/.claude/agents/ - Disponibles en todos sus proyectos
  • Subagents de proyecto: .claude/agents/ - Específicos de su proyecto y se pueden compartir con su equipo
Los archivos de subagent definen asistentes de IA especializados con mensajes personalizados y permisos de herramientas. Obtenga más información sobre cómo crear y usar subagents en la documentación de subagents.

Configuración de plugins

Claude Code admite un sistema de plugins que le permite extender la funcionalidad con skills, agentes, hooks y MCP servers. Los plugins se distribuyen a través de mercados y se pueden configurar tanto a nivel de usuario como de repositorio.

Configuración de plugins

Configuraciones relacionadas con plugins en settings.json:
{
  "enabledPlugins": {
    "formatter@acme-tools": true,
    "deployer@acme-tools": true,
    "analyzer@security-plugins": false
  },
  "extraKnownMarketplaces": {
    "acme-tools": {
      "source": "github",
      "repo": "acme-corp/claude-plugins"
    }
  }
}

enabledPlugins

Controla qué plugins están habilitados. Formato: "plugin-name@marketplace-name": true/false Alcances:
  • Configuración de usuario (~/.claude/settings.json): Preferencias personales de plugins
  • Configuración de proyecto (.claude/settings.json): Plugins específicos del proyecto compartidos con el equipo
  • Configuración local (.claude/settings.local.json): Anulaciones por máquina (no confirmadas)
Ejemplo:
{
  "enabledPlugins": {
    "code-formatter@team-tools": true,
    "deployment-tools@team-tools": true,
    "experimental-features@personal": false
  }
}

extraKnownMarketplaces

Define mercados adicionales que deben estar disponibles para el repositorio. Típicamente se usa en configuración a nivel de repositorio para asegurar que los miembros del equipo tengan acceso a las fuentes de plugins requeridas. Cuando un repositorio incluye extraKnownMarketplaces:
  1. Se solicita a los miembros del equipo que instalen el mercado cuando confían en la carpeta
  2. Luego se solicita a los miembros del equipo que instalen plugins de ese mercado
  3. Los usuarios pueden omitir mercados o plugins no deseados (almacenados en configuración de usuario)
  4. La instalación respeta límites de confianza y requiere consentimiento explícito
Ejemplo:
{
  "extraKnownMarketplaces": {
    "acme-tools": {
      "source": {
        "source": "github",
        "repo": "acme-corp/claude-plugins"
      }
    },
    "security-plugins": {
      "source": {
        "source": "git",
        "url": "https://git.example.com/security/plugins.git"
      }
    }
  }
}
Tipos de fuente de mercado:
  • github: Repositorio de GitHub (usa repo)
  • git: Cualquier URL de git (usa url)
  • directory: Ruta del sistema de archivos local (usa path, solo para desarrollo)
  • hostPattern: Patrón regex para coincidir con hosts de mercado (usa hostPattern)

strictKnownMarketplaces

Solo configuración administrada: Controla qué mercados de plugins se permite a los usuarios agregar. Esta configuración solo se puede configurar en managed-settings.json y proporciona a los administradores control estricto sobre las fuentes de mercado. Ubicaciones de archivo de configuración administrada:
  • macOS: /Library/Application Support/ClaudeCode/managed-settings.json
  • Linux y WSL: /etc/claude-code/managed-settings.json
  • Windows: C:\Program Files\ClaudeCode\managed-settings.json
Características clave:
  • Solo disponible en configuración administrada (managed-settings.json)
  • No puede ser anulada por configuraciones de usuario o proyecto (máxima precedencia)
  • Se aplica antes de operaciones de red/sistema de archivos (las fuentes bloqueadas nunca se ejecutan)
  • Usa coincidencia exacta para especificaciones de fuente (incluyendo ref, path para fuentes git), excepto hostPattern, que usa coincidencia regex
Comportamiento de lista de permitidos:
  • undefined (predeterminado): Sin restricciones - los usuarios pueden agregar cualquier mercado
  • Matriz vacía []: Bloqueo completo - los usuarios no pueden agregar nuevos mercados
  • Lista de fuentes: Los usuarios solo pueden agregar mercados que coincidan exactamente
Todos los tipos de fuente admitidos: La lista de permitidos admite siete tipos de fuente de mercado. La mayoría de las fuentes usan coincidencia exacta, mientras que hostPattern usa coincidencia regex contra el host del mercado.
  1. Repositorios de GitHub:
{ "source": "github", "repo": "acme-corp/approved-plugins" }
{ "source": "github", "repo": "acme-corp/security-tools", "ref": "v2.0" }
{ "source": "github", "repo": "acme-corp/plugins", "ref": "main", "path": "marketplace" }
Campos: repo (requerido), ref (opcional: rama/etiqueta/SHA), path (opcional: subdirectorio)
  1. Repositorios de Git:
{ "source": "git", "url": "https://gitlab.example.com/tools/plugins.git" }
{ "source": "git", "url": "https://bitbucket.org/acme-corp/plugins.git", "ref": "production" }
{ "source": "git", "url": "ssh://[email protected]/plugins.git", "ref": "v3.1", "path": "approved" }
Campos: url (requerido), ref (opcional: rama/etiqueta/SHA), path (opcional: subdirectorio)
  1. Mercados basados en URL:
{ "source": "url", "url": "https://plugins.example.com/marketplace.json" }
{ "source": "url", "url": "https://cdn.example.com/marketplace.json", "headers": { "Authorization": "Bearer ${TOKEN}" } }
Campos: url (requerido), headers (opcional: encabezados HTTP para acceso autenticado)
Los mercados basados en URL solo descargan el archivo marketplace.json. No descargan archivos de plugins del servidor. Los plugins en mercados basados en URL deben usar fuentes externas (URLs de GitHub, npm o git) en lugar de rutas relativas. Para plugins con rutas relativas, use un mercado basado en Git en su lugar. Consulte Solución de problemas para obtener detalles.
  1. Paquetes NPM:
{ "source": "npm", "package": "@acme-corp/claude-plugins" }
{ "source": "npm", "package": "@acme-corp/approved-marketplace" }
Campos: package (requerido, admite paquetes con alcance)
  1. Rutas de archivo:
{ "source": "file", "path": "/usr/local/share/claude/acme-marketplace.json" }
{ "source": "file", "path": "/opt/acme-corp/plugins/marketplace.json" }
Campos: path (requerido: ruta absoluta al archivo marketplace.json)
  1. Rutas de directorio:
{ "source": "directory", "path": "/usr/local/share/claude/acme-plugins" }
{ "source": "directory", "path": "/opt/acme-corp/approved-marketplaces" }
Campos: path (requerido: ruta absoluta al directorio que contiene .claude-plugin/marketplace.json)
  1. Coincidencia de patrón de host:
{ "source": "hostPattern", "hostPattern": "^github\\.example\\.com$" }
{ "source": "hostPattern", "hostPattern": "^gitlab\\.internal\\.example\\.com$" }
Campos: hostPattern (requerido: patrón regex para coincidir contra el host del mercado) Use coincidencia de patrón de host cuando desee permitir todos los mercados de un host específico sin enumerar cada repositorio individualmente. Esto es útil para organizaciones con servidores internos de GitHub Enterprise o GitLab donde los desarrolladores crean sus propios mercados. Extracción de host por tipo de fuente:
  • github: siempre coincide contra github.com
  • git: extrae el nombre de host de la URL (admite formatos HTTPS y SSH)
  • url: extrae el nombre de host de la URL
  • npm, file, directory: no admitido para coincidencia de patrón de host
Ejemplos de configuración: Ejemplo: permitir solo mercados específicos:
{
  "strictKnownMarketplaces": [
    {
      "source": "github",
      "repo": "acme-corp/approved-plugins"
    },
    {
      "source": "github",
      "repo": "acme-corp/security-tools",
      "ref": "v2.0"
    },
    {
      "source": "url",
      "url": "https://plugins.example.com/marketplace.json"
    },
    {
      "source": "npm",
      "package": "@acme-corp/compliance-plugins"
    }
  ]
}
Ejemplo - Deshabilitar todas las adiciones de mercado:
{
  "strictKnownMarketplaces": []
}
Ejemplo: permitir todos los mercados de un servidor git interno:
{
  "strictKnownMarketplaces": [
    {
      "source": "hostPattern",
      "hostPattern": "^github\\.example\\.com$"
    }
  ]
}
Requisitos de coincidencia exacta: Las fuentes de mercado deben coincidir exactamente para que se permita la adición de un usuario. Para fuentes basadas en git (github y git), esto incluye todos los campos opcionales:
  • El repo o url debe coincidir exactamente
  • El campo ref debe coincidir exactamente (o ambos ser indefinidos)
  • El campo path debe coincidir exactamente (o ambos ser indefinidos)
Ejemplos de fuentes que NO coinciden:
// Estas son fuentes DIFERENTES:
{ "source": "github", "repo": "acme-corp/plugins" }
{ "source": "github", "repo": "acme-corp/plugins", "ref": "main" }

// Estas también son DIFERENTES:
{ "source": "github", "repo": "acme-corp/plugins", "path": "marketplace" }
{ "source": "github", "repo": "acme-corp/plugins" }
Comparación con extraKnownMarketplaces:
AspectostrictKnownMarketplacesextraKnownMarketplaces
PropósitoAplicación de política organizacionalConveniencia del equipo
Archivo de configuraciónSolo managed-settings.jsonCualquier archivo de configuración
ComportamientoBloquea adiciones no permitidasInstala automáticamente mercados faltantes
Cuándo se aplicaAntes de operaciones de red/sistema de archivosDespués de solicitud de confianza del usuario
Puede ser anuladaNo (máxima precedencia)Sí (por configuraciones de mayor precedencia)
Formato de fuenteObjeto de fuente directoMercado nombrado con fuente anidada
Caso de usoCumplimiento, restricciones de seguridadIncorporación, estandarización
Diferencia de formato: strictKnownMarketplaces usa objetos de fuente directos:
{
  "strictKnownMarketplaces": [
    { "source": "github", "repo": "acme-corp/plugins" }
  ]
}
extraKnownMarketplaces requiere mercados nombrados:
{
  "extraKnownMarketplaces": {
    "acme-tools": {
      "source": { "source": "github", "repo": "acme-corp/plugins" }
    }
  }
}
Notas importantes:
  • Las restricciones se verifican ANTES de cualquier solicitud de red u operación del sistema de archivos
  • Cuando se bloquea, los usuarios ven mensajes de error claros indicando que la fuente está bloqueada por política administrada
  • La restricción se aplica solo a agregar NUEVOS mercados; los mercados instalados previamente permanecen accesibles
  • La configuración administrada tiene la máxima precedencia y no puede ser anulada
Consulte Restricciones de mercado administradas para documentación dirigida al usuario.

Gestión de plugins

Use el comando /plugin para gestionar plugins de forma interactiva:
  • Examinar plugins disponibles de mercados
  • Instalar/desinstalar plugins
  • Habilitar/deshabilitar plugins
  • Ver detalles de plugins (comandos, agentes, hooks proporcionados)
  • Agregar/eliminar mercados
Obtenga más información sobre el sistema de plugins en la documentación de plugins.

Variables de entorno

Claude Code admite las siguientes variables de entorno para controlar su comportamiento:
Todas las variables de entorno también se pueden configurar en settings.json. Esto es útil como una forma de establecer automáticamente variables de entorno para cada sesión, o para implementar un conjunto de variables de entorno para todo su equipo u organización.
VariablePropósito
ANTHROPIC_API_KEYClave API enviada como encabezado X-Api-Key, típicamente para el SDK de Claude (para uso interactivo, ejecute /login)
ANTHROPIC_AUTH_TOKENValor personalizado para el encabezado Authorization (el valor que establezca aquí será prefijado con Bearer )
ANTHROPIC_CUSTOM_HEADERSEncabezados personalizados para agregar a solicitudes (formato Name: Value, separados por saltos de línea para múltiples encabezados)
ANTHROPIC_DEFAULT_HAIKU_MODELConsulte Configuración de modelo
ANTHROPIC_DEFAULT_OPUS_MODELConsulte Configuración de modelo
ANTHROPIC_DEFAULT_SONNET_MODELConsulte Configuración de modelo
ANTHROPIC_FOUNDRY_API_KEYClave API para autenticación de Microsoft Foundry (consulte Microsoft Foundry)
ANTHROPIC_FOUNDRY_BASE_URLURL base completa para el recurso Foundry (por ejemplo, https://my-resource.services.ai.azure.com/anthropic). Alternativa a ANTHROPIC_FOUNDRY_RESOURCE (consulte Microsoft Foundry)
ANTHROPIC_FOUNDRY_RESOURCENombre del recurso Foundry (por ejemplo, my-resource). Requerido si ANTHROPIC_FOUNDRY_BASE_URL no está configurado (consulte Microsoft Foundry)
ANTHROPIC_MODELNombre de la configuración de modelo a usar (consulte Configuración de modelo)
ANTHROPIC_SMALL_FAST_MODEL[OBSOLETO] Nombre de modelo de clase Haiku para tareas de fondo
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGIONAnular región de AWS para el modelo de clase Haiku cuando se usa Bedrock
AWS_BEARER_TOKEN_BEDROCKClave API de Bedrock para autenticación (consulte Claves API de Bedrock)
BASH_DEFAULT_TIMEOUT_MSTiempo de espera predeterminado para comandos bash de larga duración
BASH_MAX_OUTPUT_LENGTHNúmero máximo de caracteres en salidas bash antes de que se truncen en el medio
BASH_MAX_TIMEOUT_MSTiempo de espera máximo que el modelo puede establecer para comandos bash de larga duración
CLAUDE_AUTOCOMPACT_PCT_OVERRIDEEstablezca el porcentaje de capacidad de contexto (1-100) en el que se activa la compactación automática. De forma predeterminada, la compactación automática se activa aproximadamente al 95% de capacidad. Use valores más bajos como 50 para compactar antes. Los valores por encima del umbral predeterminado no tienen efecto. Se aplica a conversaciones principales y subagents. Este porcentaje se alinea con el campo context_window.used_percentage disponible en línea de estado
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIRVolver al directorio de trabajo original después de cada comando Bash
CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MDEstablezca en 1 para cargar archivos CLAUDE.md de directorios especificados con --add-dir. De forma predeterminada, los directorios adicionales no cargan archivos de memoria1
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMSEstablezca en 1 para habilitar equipos de agentes. Los equipos de agentes son experimentales y están deshabilitados de forma predeterminada
CLAUDE_CODE_API_KEY_HELPER_TTL_MSIntervalo en milisegundos en el que se deben actualizar las credenciales (cuando se usa apiKeyHelper)
CLAUDE_CODE_CLIENT_CERTRuta al archivo de certificado de cliente para autenticación mTLS
CLAUDE_CODE_CLIENT_KEY_PASSPHRASEFrase de contraseña para CLAUDE_CODE_CLIENT_KEY cifrado (opcional)
CLAUDE_CODE_CLIENT_KEYRuta al archivo de clave privada de cliente para autenticación mTLS
CLAUDE_CODE_EFFORT_LEVELEstablezca el nivel de esfuerzo para modelos admitidos. Valores: low, medium, high (predeterminado). El esfuerzo más bajo es más rápido y económico, el esfuerzo más alto proporciona razonamiento más profundo. Actualmente solo se admite con Opus 4.6. Consulte Ajustar nivel de esfuerzo
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETASEstablezca en 1 para deshabilitar encabezados específicos de API de Anthropic anthropic-beta. Use esto si experimenta problemas como “Unexpected value(s) for the anthropic-beta header” cuando usa una puerta de enlace LLM con proveedores de terceros
CLAUDE_CODE_DISABLE_BACKGROUND_TASKSEstablezca en 1 para deshabilitar toda la funcionalidad de tareas de fondo, incluyendo el parámetro run_in_background en herramientas Bash y subagent, auto-backgrounding y el atajo Ctrl+B
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEYEstablezca en 1 para deshabilitar las encuestas de calidad de sesión “¿Cómo está Claude?”. También se deshabilita cuando se usan proveedores de terceros o cuando la telemetría está deshabilitada. Consulte Encuestas de calidad de sesión
CLAUDE_CODE_EXIT_AFTER_STOP_DELAYTiempo en milisegundos a esperar después de que el bucle de consulta se vuelva inactivo antes de salir automáticamente. Útil para flujos de trabajo automatizados y scripts usando modo SDK
CLAUDE_CODE_PROXY_RESOLVES_HOSTSEstablezca en true para permitir que el proxy realice resolución DNS en lugar de la persona que llama. Opción de inclusión para entornos donde el proxy debe manejar la resolución de nombres de host
CLAUDE_CODE_TASK_LIST_IDCompartir una lista de tareas entre sesiones. Establezca el mismo ID en múltiples instancias de Claude Code para coordinar en una lista de tareas compartida. Consulte Lista de tareas
CLAUDE_CODE_TEAM_NAMENombre del equipo de agentes al que pertenece este compañero. Se establece automáticamente en miembros del equipo de agentes
CLAUDE_CODE_TMPDIRAnular el directorio temporal usado para archivos temporales internos. Claude Code agrega /claude/ a esta ruta. Predeterminado: /tmp en Unix/macOS, os.tmpdir() en Windows
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICEquivalente a establecer DISABLE_AUTOUPDATER, DISABLE_BUG_COMMAND, DISABLE_ERROR_REPORTING y DISABLE_TELEMETRY
CLAUDE_CODE_DISABLE_TERMINAL_TITLEEstablezca en 1 para deshabilitar actualizaciones automáticas del título del terminal basadas en contexto de conversación
CLAUDE_CODE_ENABLE_PROMPT_SUGGESTIONEstablezca en false para deshabilitar sugerencias de solicitud (el botón de alternancia “Prompt suggestions” en /config). Estas son las predicciones atenuadas que aparecen en su entrada de solicitud después de que Claude responde. Consulte Sugerencias de solicitud
CLAUDE_CODE_ENABLE_TASKSEstablezca en false para revertir temporalmente a la lista TODO anterior en lugar del sistema de seguimiento de tareas. Predeterminado: true. Consulte Lista de tareas
CLAUDE_CODE_ENABLE_TELEMETRYEstablezca en 1 para habilitar la recopilación de datos de OpenTelemetry para métricas y registro. Requerido antes de configurar exportadores de OTel. Consulte Monitoreo
CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENSAnular el límite de token predeterminado para lecturas de archivo. Útil cuando necesita leer archivos más grandes en su totalidad
CLAUDE_CODE_HIDE_ACCOUNT_INFOEstablezca en 1 para ocultar su dirección de correo electrónico y nombre de organización de la interfaz de usuario de Claude Code. Útil cuando se transmite o se graba
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALLOmitir instalación automática de extensiones IDE
CLAUDE_CODE_MAX_OUTPUT_TOKENSEstablezca el número máximo de tokens de salida para la mayoría de solicitudes. Predeterminado: 32,000. Máximo: 64,000. Aumentar este valor reduce la ventana de contexto efectiva disponible antes de que se active la compactación automática.
CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MSIntervalo para actualizar encabezados OpenTelemetry dinámicos en milisegundos (predeterminado: 1740000 / 29 minutos). Consulte Encabezados dinámicos
CLAUDE_CODE_PLAN_MODE_REQUIREDSe establece automáticamente en true en miembros del equipo de agentes que requieren aprobación de plan. Solo lectura: se establece por Claude Code al generar compañeros. Consulte requerir aprobación de plan
CLAUDE_CODE_SHELLAnular detección automática de shell. Útil cuando su shell de inicio difiere de su shell de trabajo preferido (por ejemplo, bash vs zsh)
CLAUDE_CODE_SHELL_PREFIXPrefijo de comando para envolver todos los comandos bash (por ejemplo, para registro o auditoría). Ejemplo: /path/to/logger.sh ejecutará /path/to/logger.sh <command>
CLAUDE_CODE_SKIP_BEDROCK_AUTHOmitir autenticación de AWS para Bedrock (por ejemplo, cuando se usa una puerta de enlace LLM)
CLAUDE_CODE_SKIP_FOUNDRY_AUTHOmitir autenticación de Azure para Microsoft Foundry (por ejemplo, cuando se usa una puerta de enlace LLM)
CLAUDE_CODE_SKIP_VERTEX_AUTHOmitir autenticación de Google para Vertex (por ejemplo, cuando se usa una puerta de enlace LLM)
CLAUDE_CODE_SUBAGENT_MODELConsulte Configuración de modelo
CLAUDE_CODE_USE_BEDROCKUsar Bedrock
CLAUDE_CODE_USE_FOUNDRYUsar Microsoft Foundry
CLAUDE_CODE_USE_VERTEXUsar Vertex
CLAUDE_CONFIG_DIRPersonalizar dónde Claude Code almacena sus archivos de configuración y datos
DISABLE_AUTOUPDATEREstablezca en 1 para deshabilitar actualizaciones automáticas.
DISABLE_BUG_COMMANDEstablezca en 1 para deshabilitar el comando /bug
DISABLE_COST_WARNINGSEstablezca en 1 para deshabilitar mensajes de advertencia de costo
DISABLE_ERROR_REPORTINGEstablezca en 1 para optar por no participar en informes de errores de Sentry
DISABLE_INSTALLATION_CHECKSEstablezca en 1 para deshabilitar advertencias de instalación. Use solo cuando administre manualmente la ubicación de instalación, ya que esto puede enmascarar problemas con instalaciones estándar
DISABLE_NON_ESSENTIAL_MODEL_CALLSEstablezca en 1 para deshabilitar llamadas de modelo para rutas no críticas como texto de sabor
DISABLE_PROMPT_CACHINGEstablezca en 1 para deshabilitar el almacenamiento en caché de solicitudes para todos los modelos (tiene prioridad sobre configuraciones por modelo)
DISABLE_PROMPT_CACHING_HAIKUEstablezca en 1 para deshabilitar el almacenamiento en caché de solicitudes para modelos Haiku
DISABLE_PROMPT_CACHING_OPUSEstablezca en 1 para deshabilitar el almacenamiento en caché de solicitudes para modelos Opus
DISABLE_PROMPT_CACHING_SONNETEstablezca en 1 para deshabilitar el almacenamiento en caché de solicitudes para modelos Sonnet
DISABLE_TELEMETRYEstablezca en 1 para optar por no participar en telemetría de Statsig (tenga en cuenta que los eventos de Statsig no incluyen datos de usuario como código, rutas de archivo o comandos bash)
ENABLE_TOOL_SEARCHControla búsqueda de herramientas MCP. Valores: auto (predeterminado, habilita al 10% de contexto), auto:N (umbral personalizado, por ejemplo, auto:5 para 5%), true (siempre activado), false (deshabilitado)
FORCE_AUTOUPDATE_PLUGINSEstablezca en true para forzar actualizaciones automáticas de plugins incluso cuando el actualizador automático principal está deshabilitado a través de DISABLE_AUTOUPDATER
HTTP_PROXYEspecifique servidor proxy HTTP para conexiones de red
HTTPS_PROXYEspecifique servidor proxy HTTPS para conexiones de red
IS_DEMOEstablezca en true para habilitar modo de demostración: oculta correo electrónico y organización de la interfaz de usuario, omite incorporación y oculta comandos internos. Útil para transmisión o grabación de sesiones
MAX_MCP_OUTPUT_TOKENSNúmero máximo de tokens permitidos en respuestas de herramientas MCP. Claude Code muestra una advertencia cuando la salida excede 10,000 tokens (predeterminado: 25000)
MAX_THINKING_TOKENSAnular el presupuesto de token de pensamiento extendido. El pensamiento está habilitado en presupuesto máximo (31,999 tokens) de forma predeterminada. Use esto para limitar el presupuesto (por ejemplo, MAX_THINKING_TOKENS=10000) o deshabilitar el pensamiento completamente (MAX_THINKING_TOKENS=0). Para Opus 4.6, la profundidad del pensamiento se controla mediante nivel de esfuerzo en su lugar, y esta variable se ignora a menos que se establezca en 0 para deshabilitar el pensamiento.
MCP_CLIENT_SECRETSecreto de cliente OAuth para MCP servers que requieren credenciales preconfiguradas. Evita la solicitud interactiva al agregar un servidor con --client-secret
MCP_OAUTH_CALLBACK_PORTPuerto fijo para la devolución de llamada de redirección OAuth, como alternativa a --callback-port al agregar un MCP server con credenciales preconfiguradas
MCP_TIMEOUTTiempo de espera en milisegundos para inicio de MCP server
MCP_TOOL_TIMEOUTTiempo de espera en milisegundos para ejecución de herramienta MCP
NO_PROXYLista de dominios e IPs a los que se emitirán solicitudes directamente, omitiendo proxy
SLASH_COMMAND_TOOL_CHAR_BUDGETNúmero máximo de caracteres para metadatos de skill mostrados a la herramienta Skill (predeterminado: 15000). Nombre heredado mantenido para compatibilidad hacia atrás.
USE_BUILTIN_RIPGREPEstablezca en 0 para usar rg instalado en el sistema en lugar de rg incluido con Claude Code
VERTEX_REGION_CLAUDE_3_5_HAIKUAnular región para Claude 3.5 Haiku cuando se usa Vertex AI
VERTEX_REGION_CLAUDE_3_7_SONNETAnular región para Claude 3.7 Sonnet cuando se usa Vertex AI
VERTEX_REGION_CLAUDE_4_0_OPUSAnular región para Claude 4.0 Opus cuando se usa Vertex AI
VERTEX_REGION_CLAUDE_4_0_SONNETAnular región para Claude 4.0 Sonnet cuando se usa Vertex AI
VERTEX_REGION_CLAUDE_4_1_OPUSAnular región para Claude 4.1 Opus cuando se usa Vertex AI

Herramientas disponibles para Claude

Claude Code tiene acceso a un conjunto de herramientas poderosas que le ayudan a entender y modificar su base de código:
HerramientaDescripciónPermiso requerido
AskUserQuestionHace preguntas de opción múltiple para recopilar requisitos o aclarar ambigüedadNo
BashEjecuta comandos de shell en su entorno (consulte Comportamiento de herramienta Bash a continuación)
TaskOutputRecupera salida de una tarea de fondo (shell bash o subagent)No
EditRealiza ediciones dirigidas a archivos específicos
ExitPlanModeSolicita al usuario que salga del modo de plan y comience a codificar
GlobEncuentra archivos basados en coincidencia de patronesNo
GrepBusca patrones en contenidos de archivosNo
KillShellMata un shell bash de fondo en ejecución por su IDNo
MCPSearchBusca y carga herramientas MCP cuando la búsqueda de herramientas está habilitadaNo
NotebookEditModifica celdas de cuaderno Jupyter
ReadLee el contenido de archivosNo
SkillEjecuta un skill dentro de la conversación principal
TaskEjecuta un sub-agente para manejar tareas complejas de múltiples pasosNo
TaskCreateCrea una nueva tarea en la lista de tareasNo
TaskGetRecupera detalles completos para una tarea específicaNo
TaskListLista todas las tareas con su estado actualNo
TaskUpdateActualiza estado de tarea, dependencias, detalles o elimina tareasNo
WebFetchObtiene contenido de una URL especificada
WebSearchRealiza búsquedas web con filtrado de dominio
WriteCrea o sobrescribe archivos
LSPInteligencia de código a través de servidores de lenguaje. Reporta errores de tipo y advertencias automáticamente después de ediciones de archivo. También admite operaciones de navegación: saltar a definiciones, encontrar referencias, obtener información de tipo, listar símbolos, encontrar implementaciones, rastrear jerarquías de llamadas. Requiere un plugin de inteligencia de código y su binario de servidor de lenguajeNo
Las reglas de permiso se pueden configurar usando /allowed-tools o en configuración de permisos. Consulte también Reglas de permiso específicas de herramientas.

Comportamiento de herramienta Bash

La herramienta Bash ejecuta comandos de shell con el siguiente comportamiento de persistencia:
  • El directorio de trabajo persiste: Cuando Claude cambia el directorio de trabajo (por ejemplo, cd /path/to/dir), los comandos Bash posteriores se ejecutarán en ese directorio. Puede usar CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR=1 para restablecer al directorio del proyecto después de cada comando.
  • Las variables de entorno NO persisten: Las variables de entorno establecidas en un comando Bash (por ejemplo, export MY_VAR=value) no están disponibles en comandos Bash posteriores. Cada comando Bash se ejecuta en un entorno de shell fresco.
Para hacer que las variables de entorno estén disponibles en comandos Bash, tiene tres opciones: Opción 1: Activar entorno antes de iniciar Claude Code (enfoque más simple) Active su entorno virtual en su terminal antes de lanzar Claude Code:
conda activate myenv
# o: source /path/to/venv/bin/activate
claude
Esto funciona para entornos de shell pero las variables de entorno establecidas dentro de los comandos Bash de Claude no persistirán entre comandos. Opción 2: Establecer CLAUDE_ENV_FILE antes de iniciar Claude Code (configuración de entorno persistente) Exporte la ruta a un script de shell que contenga su configuración de entorno:
export CLAUDE_ENV_FILE=/path/to/env-setup.sh
claude
Donde /path/to/env-setup.sh contiene:
conda activate myenv
# o: source /path/to/venv/bin/activate
# o: export MY_VAR=value
Claude Code obtendrá este archivo antes de cada comando Bash, haciendo que el entorno sea persistente en todos los comandos. Opción 3: Usar un hook SessionStart (configuración específica del proyecto) Configure en .claude/settings.json:
{
  "hooks": {
    "SessionStart": [{
      "matcher": "startup",
      "hooks": [{
        "type": "command",
        "command": "echo 'conda activate myenv' >> \"$CLAUDE_ENV_FILE\""
      }]
    }]
  }
}
El hook escribe en $CLAUDE_ENV_FILE, que luego se obtiene antes de cada comando Bash. Esto es ideal para configuraciones de proyecto compartidas por el equipo. Consulte hooks SessionStart para obtener más detalles sobre la Opción 3.

Extensión de herramientas con hooks

Puede ejecutar comandos personalizados antes o después de que cualquier herramienta se ejecute usando hooks de Claude Code. Por ejemplo, podría ejecutar automáticamente un formateador de Python después de que Claude modifique archivos de Python, o evitar modificaciones a archivos de configuración de producción bloqueando operaciones de Write a ciertas rutas.

Ver también

  • Permisos: sistema de permisos, sintaxis de regla, patrones específicos de herramientas y políticas administradas
  • Autenticación: configurar acceso de usuario a Claude Code
  • Solución de problemas: soluciones para problemas de configuración comunes