2.0.0 (2025-10-17)
⚠ BREAKING CHANGES
- config: changed the default keymaps. Please check the updated documentation and example mappings
Features
- cli.claude: transform line ranges to a format Claude can understand. Closes #59 (4a492da)
- cli.select: better distinction between attaching to terminal/external (48d0bf6)
- cli:
close()on an external session, now detaches from that session. Closes #98 (d2e6c64) - cli: added
<c-q>to hide in normal mode, so from terminal double<c-q>will hide (358804c) - cli: added health checks and optional reqs to the docs for
lsofandps. Fixes #89 (d403ec3) - cli: added some config option validation (c236b38)
- cli: added terminal navigation with
<c-hjkl>. Only mapped when not a float and a window in the dir exists. See #51 (b48e177) - cli: deduplicate cli tool sessions. Closes #92 (e5bcf17)
- cli: handle special filenames for Claude, Gemini, Qwen. Fixes #130 (19b5985)
- config: changed the default keymaps. Please check the updated documentation and example mappings (6608705)
- context: you can now use context fallbacks like
{function|line}(076147a) - copilot: allow configuring minimum level for copilot LSP messages (4b6750b)
- opencode: add pid to external opencode sessions (3d9d519)
- terminal: much better scrollback buffer. no flickering and should work in all modes (3aa2fe5)
- terminal: restore normal/terminal mode when entering the sidekick window (50c40d5)
- terminal: switch to scrollback when doing mouse scroll (0dd3c3b)
- tmux: entering normal mode in a tmux terminal, now loads the whole tmux scrollback (a453f76)
- tmux: some tools won't process input if they don't have focus, so tools can now set
mux_focus = true(41dec4d) - tool: tools can now further format text before it's sent. See #130, see #59 (28f8a07)
- util: weak ref util method (8036aea)
Bug Fixes
- cli.prompt: proper way of rendering templates with highlights (30b7b9e)
- cli.select: sort terminal sessions before external sessions (c487d53)
- cli.state: allow creating new sessions for tools that have only external sessions (c588efb)
- cli: allow sending a newlline
msg="\n"(fc0067a) - cli: don't send empty messages (63f626c)
- location: different format that should work for most cli tools. Closes #59 (d570e1f)
- nes: added triggerKind. Maybe that's needed for nes? (e535808)
- nes: better didFocus tracking (3669eae)
- nes: don't clear NES on
TextChangedorBufWritePre. Closes #91 (32fa55c) - nes: don't process unloaded buffers. Closes #86 (620adf0)
- nes: exec nes commands AFTER edits have been applied (80d1604)
- nes: skip old edits early (8395007)
- nes: textDocument/didFocus (b7085d7)
- nes: trigger on
ModeChanged *:ninstead ofInsertLeave. See #125 (abbd051) - opencode: check that open server is actually from an opencode process. Closes #87 (cb8485a)
- procs: handle case where
USERis not set. Closes #82 (01f89b7) - q: filer procs on qchat instead of
q, which seems to be the actual binary. Closes #80 (4b65b8a) - qwen: set
mux_focus = truesince qwen doesnt process input if unfocused. Fixes #104 (c262b25) - sessions: load tools during session setup, since thet may register session backends (like opencode) (c7761eb)
- status: always return
nilwhen copilot status is disabled in config (f908fec) - terminal: allow auto split width/height (#111) (03cf9fb)
- terminal: better handling of crlf for send. See #119 (7185e08)
- terminal: blur on hide (81b2a85)
- terminal: cleanup scrollback buffer (9ef38db)
- terminal: don't error when it's the last window and hiding. Closes #124 (cab3ec4)
- terminal: keymap rhs fallback to rhs string (2b644f0)
- terminal: no need to check for mouse scroll when we're not in terminal mode (b52c3be)
- terminal: only show scrollback when entering normal mode and the terminal window is current. Closes #106 (1e03666)
- terminal: remove padding since it causes issues with terminal reflow (Neovim bug) (cc32068)
- terminal: safer way of entering terminal mode from scrollback buffer (#129) (2195213)
- terminal: safer way of entering terminal mode from scrollback buffer. Closes #103 (0bc6f88)
- terminal: scroll to last line in normal mode. Closes #101 (69eb7b7)
- terminal: send all text in one chunk with nvim_paste. Fixes #119. Fixes #118 (ca97ecd)
- terminal: use
nvim_pasteinstead ofnvim_chan_sendto better simulate user input. Closes #110 (cebcd44) - terminal: use nvim_put directly to paste into the terminal (bed1d65)
- text: handle empty virtual lines (98a33eb)
- tmux: use
paste-bufferwith the-rflag to preserve newlines. Fixes #93 (2fdc4d4) - zellij: attach to existing isolated session (9deb771)
- zellij: zellij:create -> zellij:start (4bd0df2)