Skip to main content
Claude Code admite atajos de teclado personalizables. Ejecute /keybindings para crear o abrir su archivo de configuración en ~/.claude/keybindings.json.

Archivo de configuración

El archivo de configuración de atajos de teclado es un objeto con un array bindings. Cada bloque especifica un contexto y un mapa de pulsaciones de teclas a acciones.
Los cambios en el archivo de atajos de teclado se detectan y aplican automáticamente sin reiniciar Claude Code.
Este ejemplo vincula Ctrl+E para abrir un editor externo en el contexto de chat, y desvincula Ctrl+U:

Contextos

Cada bloque de vinculación especifica un contexto donde se aplican los atajos de teclado: Antes de v2.1.205, existían un contexto Doctor y una acción doctor:fix para la pantalla de diagnósticos /doctor.

Acciones disponibles

Las acciones siguen un formato namespace:action, como chat:submit para enviar un mensaje o app:toggleTodos para mostrar la lista de tareas. Cada contexto tiene acciones específicas disponibles.

Acciones de aplicación

Acciones disponibles en el contexto Global:

Acciones de historial

Acciones para navegar por el historial de comandos:

Acciones de chat

Acciones disponibles en el contexto Chat: *En Windows sin modo VT (Node <24.2.0/<22.17.0, Bun <1.2.23), el valor predeterminado es Meta+M.

Acciones de autocompletado

Acciones disponibles en el contexto Autocomplete:

Acciones de confirmación

Acciones disponibles en el contexto Confirmation:

Acciones de permiso

Acciones disponibles en el contexto Confirmation para diálogos de permiso:

Acciones de transcripción

Acciones disponibles en el contexto Transcript:

Acciones de búsqueda de historial

Acciones disponibles en el contexto HistorySearch:

Acciones de tarea

Acciones disponibles en el contexto Task:

Acciones de tema

Acciones disponibles en el contexto ThemePicker:

Acciones de ayuda

Acciones disponibles en el contexto Help:

Acciones de pestañas

Acciones disponibles en el contexto Tabs:

Acciones de adjuntos

Acciones disponibles en el contexto Attachments: Acciones disponibles en el contexto Footer:

Acciones del selector de mensajes

Acciones disponibles en el contexto MessageSelector:

Acciones de diff

Acciones disponibles en el contexto DiffDialog: La vista de detalles de diff también vincula atajos de teclado de estilo paginador a las acciones de desplazamiento estándar. Estos enlaces son parte del contexto DiffDialog y se aplican solo en la vista de detalles; los valores predeterminados del contexto Scroll enumerados en Acciones de desplazamiento no cambian.

Acciones del selector de modelo

Acciones disponibles en el contexto ModelPicker:

Acciones de selección

Acciones disponibles en el contexto Select:

Acciones de plugin

Acciones disponibles en el contexto Plugin:

Acciones de configuración

Acciones disponibles en el contexto Settings. Las acciones select:accept y confirm:no se reutilizan de los contextos Selección y Confirmación con comportamiento específico de Configuración: los cambios se aplican a cada configuración tan pronto como la cambia, por lo que Escape cierra el panel con los cambios guardados en lugar de rechazarlos.

Acciones de voz

Acciones disponibles en el contexto Chat cuando dictado de voz está habilitado:

Acciones de desplazamiento

Acciones disponibles en el contexto Scroll cuando renderizado de pantalla completa está habilitado:

Sintaxis de pulsación de tecla

Modificadores

Use teclas modificadoras con el separador +:
  • ctrl o control - Tecla Control
  • shift - Tecla Shift
  • alt, opt, option, o meta - Tecla Alt en Windows y Linux, tecla Opción en macOS
  • cmd, command, super, o win - Tecla Comando en macOS, tecla Windows en Windows, tecla Super en Linux
El grupo cmd solo se detecta en terminales que reportan el modificador Super, como aquellos que soportan el protocolo de teclado Kitty o el modo modifyOtherKeys de xterm. La mayoría de terminales no lo envían, así que use ctrl o meta para atajos de teclado que desee que funcionen en todas partes. Por ejemplo:

Letras mayúsculas

Una letra mayúscula independiente implica Shift. Por ejemplo, K es equivalente a shift+k. Esto es útil para atajos de teclado de estilo vim donde las teclas mayúsculas y minúsculas tienen significados diferentes. Las letras mayúsculas con modificadores (por ejemplo, ctrl+K) se tratan como estilísticas y no implican Shift: ctrl+K es lo mismo que ctrl+k.

Acordes

Los acordes son secuencias de pulsaciones de teclas separadas por espacios:

Teclas especiales

  • escape o esc - Tecla Escape
  • enter o return - Tecla Enter
  • tab - Tecla Tab
  • space - Barra espaciadora
  • up, down, left, right - Teclas de flecha
  • backspace, delete - Teclas de eliminación

Desvinculación de atajos predeterminados

Establezca una acción en null para desvinculación de un atajo predeterminado:
Esto también funciona para vinculaciones de acordes. Desvinculación de cada acorde que comparte un prefijo libera ese prefijo para su uso como una vinculación de tecla única. Un acorde en cualquier contexto activo mantiene su prefijo reservado, por lo que debe desvinculación de cada acorde en el contexto que lo define. La familia predeterminada Ctrl+X abarca dos contextos: ctrl+x ctrl+k y ctrl+x ctrl+e en Chat, y ctrl+x ctrl+b en Task. Para reclamar ctrl+x en sí mismo como una vinculación de tecla única, desvinculación de todos ellos:
Si desvincula algunos pero no todos los acordes en un prefijo, presionar el prefijo aún entra en modo de espera de acorde para las vinculaciones restantes.

Atajos reservados

Estos atajos no se pueden reasignar:

Conflictos de terminal

Algunos atajos pueden entrar en conflicto con multiplexores de terminal:

Interacción del modo Vim

Cuando el modo vim está habilitado mediante /config → Editor mode, los atajos de teclado y el modo vim funcionan de forma independiente:
  • Modo Vim maneja la entrada a nivel de entrada de texto (movimiento del cursor, modos, movimientos)
  • Atajos de teclado manejan acciones a nivel de componente (alternar tareas, enviar, etc.)
  • La tecla Escape en modo vim cambia de modo INSERT a NORMAL; no activa chat:cancel
  • La mayoría de los atajos Ctrl+tecla pasan a través del modo vim al sistema de atajos de teclado
  • Las teclas Vim no se pueden remapear a través del archivo de atajos de teclado. Para mapear una secuencia de dos teclas en modo INSERT como jj a Escape, use la configuración vimInsertModeRemaps
  • En modo NORMAL de vim, ? muestra el menú de ayuda (comportamiento de vim)
  • En modo NORMAL de vim, / abre la búsqueda de historial, lo mismo que Ctrl+R en modo estándar

Validación

Claude Code valida sus atajos de teclado y muestra advertencias para:
  • Errores de análisis (JSON o estructura inválida)
  • Nombres de contexto inválidos
  • Conflictos de atajos reservados
  • Conflictos de multiplexor de terminal
  • Vinculaciones duplicadas en el mismo contexto
Claude Code reporta advertencias cuando el archivo se carga y escribe cada una en el registro de depuración. Inicie Claude Code con --debug para ver los detalles.