Skip to content

Keybinds

Customize your keybinds.

codeflow has a list of keybinds that you can customize through the codeflow config.

codeflow.json
{
"$schema": "https://codeflow.ai/config.json",
"keybinds": {
"leader": "ctrl+x",
"app_help": "<leader>h",
"app_exit": "ctrl+c,<leader>q",
"editor_open": "<leader>e",
"theme_list": "<leader>t",
"project_init": "<leader>i",
"tool_details": "<leader>d",
"thinking_blocks": "<leader>b",
"session_export": "<leader>x",
"session_new": "<leader>n",
"session_list": "<leader>l",
"session_share": "<leader>s",
"session_unshare": "none",
"session_interrupt": "esc",
"session_compact": "<leader>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": "<leader>y",
"messages_undo": "<leader>u",
"messages_redo": "<leader>r",
"model_list": "<leader>m",
"model_cycle_recent": "f2",
"model_cycle_recent_reverse": "shift+f2",
"agent_list": "<leader>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

codeflow 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”.

codeflow.json
{
"$schema": "https://codeflow.ai/config.json",
"keybinds": {
"session_compact": "none"
}
}