Niah Docs
Using Niah

Chat & editing

Niah gives you two ways to ask for a change — a sidebar conversation and an inline edit — and reviews every result as a diff you accept or reject.

Chat

Press ⌘L / Ctrl+L to open chat. If you have code selected, that selection is staged as context, so you can ask "why does this break when the list is empty?" without pasting anything.

Add selection to chat⌘L / Ctrl+L
New chat⌘⇧L / Ctrl+Shift+L

Start a new chat when you switch topics. A conversation carries its whole history as context, so a long thread about one bug makes a later, unrelated question slower and less focused.

Ask mode and Agent mode

Plain chat answers from the context you give it. Agent mode adds tool calling: it can search the repo, read files, run commands, and apply edits on its own before reporting back. Use Agent mode when the answer requires looking around the codebase rather than reasoning about one file.

Quick Edit

Press ⌘K / Ctrl+K with the editor focused to edit in place. An input appears at your cursor; describe the change and Niah rewrites that region, showing the result as a diff.

Chat or Quick Edit? Quick Edit is for a change you can point at — rename this, extract that, handle this error case. Chat is better when the change spans files, needs discussion, or you are not yet sure what the change should be.

Reviewing diffs

Nothing is written until you accept it. Proposed edits appear as inline diffs, and you can walk them one at a time or take them all at once.

ActionmacOSWindows / Linux
Accept diff⌘⌥⇧EnterCtrl+Alt+Shift+Enter
Reject diff⌘⌥⇧BackspaceCtrl+Alt+Shift+Backspace
Go to next diff⌘⌥⇧↓Ctrl+Alt+Shift+↓
Go to previous diff⌘⌥⇧↑Ctrl+Alt+Shift+↑
Next file with diffs⌘⌥⇧→Ctrl+Alt+Shift+→
Previous file with diffs⌘⌥⇧←Ctrl+Alt+Shift+←
Accept all diffs, all files⌘⇧EnterCtrl+Shift+Enter
Reject all diffs, all files⌘⇧BackspaceCtrl+Shift+Backspace

All of these are also in the Command Palette under Niah:, so you can find them without memorizing the chords.

ActionmacOSWindows / Linux
Open Agents window⌘⇧ACtrl+Shift+A
Go to file⌘PCtrl+P
Command Palette⌘⇧PCtrl+Shift+P
Integrated browser⌘⇧BCtrl+Shift+B
Coming from VS Code? Go to File is ⌘P only — the ⌘E and ⌘T alternates are unbound so those chords stay free.

Remapping

Every Niah command is a normal keybinding. Open Preferences: Open Keyboard Shortcuts and search for niah to rebind them, or edit keybindings.json directly using the command IDs:

niah.ctrlLActionAdd selection to chat
niah.cmdShiftLNew chat
niah.ctrlKActionQuick Edit
niah.sidebar.openOpen chat sidebar
niah.openAgentsWindowOpen the Agents window

The Agents window shortcut can also be promoted to an OS-level global shortcut by adding "systemWide": true to its entry in keybindings.json. Only single combinations are eligible — chords and bare modifiers are not.