--- title: Keybinds description: Customize your keybinds. --- OpenCode has a list of keybinds that you can customize through the OpenCode config. ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "keybinds": { "leader": "ctrl+x", "app_help": "h", "app_exit": "ctrl+c,q", "editor_open": "e", "theme_list": "t", "project_init": "i", "tool_details": "d", "thinking_blocks": "b", "session_export": "x", "session_new": "n", "session_list": "l", "session_share": "s", "session_unshare": "none", "session_interrupt": "esc", "session_compact": "c", "session_child_cycle": "ctrl+right", "session_child_cycle_reverse": "ctrl+left", "messages_page_up": "pgup", "messages_page_down": "pgdown", "messages_half_page_up": "ctrl+alt+u", "messages_half_page_down": "ctrl+alt+d", "messages_first": "ctrl+g", "messages_last": "ctrl+alt+g", "messages_copy": "y", "messages_undo": "u", "messages_redo": "r", "model_list": "m", "model_cycle_recent": "f2", "model_cycle_recent_reverse": "shift+f2", "agent_list": "a", "agent_cycle": "tab", "agent_cycle_reverse": "shift+tab", "input_clear": "ctrl+c", "input_paste": "ctrl+v", "input_submit": "enter", "input_newline": "shift+enter,ctrl+j" } } ``` --- ## Leader key OpenCode uses a `leader` key for most keybinds. This avoids conflicts in your terminal. By default, `ctrl+x` is the leader key and most actions require you to first press the leader key and then the shortcut. For example, to start a new session you first press `ctrl+x` and then press `n`. You don't need to use a leader key for your keybinds but we recommend doing so. --- ## Disable keybind You can disable a keybind by adding the key to your config with a value of "none". ```json title="opencode.json" { "$schema": "https://opencode.ai/config.json", "keybinds": { "session_compact": "none" } } ```