Skip to main content

Keybindings

All keyboard shortcuts can be customized via ~/.atomic/agent/keybindings.json. Each action can be bound to one or more keys. The config file uses the same namespaced keybinding ids that Atomic uses internally and that extension authors use in keyHint() and injected keybindings managers. Older configs using pre-namespaced ids such as cursorUp or expandTools are migrated automatically to the namespaced ids on startup. After editing keybindings.json, run /reload in Atomic to apply the changes without restarting the session.

Key Format

modifier+key where modifiers are ctrl, shift, alt (combinable) and keys are:
  • Letters: a-z
  • Digits: 0-9
  • Special: escape, esc, enter, return, tab, space, backspace, delete, insert, clear, home, end, pageUp, pageDown, up, down, left, right
  • Function: f1-f12
  • Symbols: `, -, =, [, ], \, ;, ', ,, ., /, !, @, #, $, %, ^, &, *, (, ), _, +, |, ~, {, }, :, <, >, ?
Modifier combinations: ctrl+shift+x, alt+ctrl+x, ctrl+shift+alt+x, ctrl+1, etc.

All Actions

TUI Editor Cursor Movement

TUI Editor Deletion

TUI Input

TUI Kill Ring

TUI Clipboard and Selection

Application

When app.clipboard.pasteImage finds text rather than an image, Atomic inserts that clipboard text into the editor instead of reporting an image-paste failure.

Sessions

Models and Thinking

Display and Message Queue

Tree Navigation

Scoped Models Selector

Used inside the scoped models selector (opened via /scoped-models).

Custom Configuration

Create ~/.atomic/agent/keybindings.json:
Each action can have a single key or an array of keys. User config overrides defaults. On native Windows, app.suspend has no default binding because Windows terminals do not support Unix job control. If you bind it manually, Atomic shows a status message instead of suspending. In WSL, the normal Linux ctrl+z/fg behavior still applies.

Emacs Example

Vim Example