Tags: okm321/sidekick.nvim
Tags
chore(main): release 2.1.0 (folke#136) 🤖 I have created a release *beep* *boop* --- ## [2.1.0](folke/sidekick.nvim@v2.0.0...v2.1.0) (2025-10-23) ### Features * **cli:** added snacks picker action to send files with sidekick. Closes [folke#134](folke#134) ([96b84ff](folke@96b84ff)) * **cli:** added snacks/telescope/fzf-lua pickers for selecting files/buffers to send ([0da0e16](folke@0da0e16)) * **cli:** added terminal keymaps `<c-f>` to select files and `<c-b>` to select buffers to send. ([c827ad2](folke@c827ad2)) * **diagnostics:** diagnostics will now use the visual selection if needed. Closes [folke#146](folke#146) ([fb0cbaa](folke@fb0cbaa)) * **snacks:** make `vim.ui.select` snacks options configurable. Closes [folke#149](folke#149) ([7568825](folke@7568825)) * **status:** added cli status to be used in statuslines. Closes [folke#143](folke#143) ([e291b6b](folke@e291b6b)) * **terminal:** smarter way to determine that the cli tool is ready to accept input. Closes [folke#150](folke#150) ([04265f7](folke@04265f7)) ### Bug Fixes * **cli.loc:** allow row/col to be `nil` ([bb87f41](folke@bb87f41)) * **cli.picker:** do the stop/start insert dance to keep pickers / terminals happy ([9941a1c](folke@9941a1c)) * **cli.status:** schedule detach event to prevent loop. Closes [folke#144](folke#144) ([9390cb7](folke@9390cb7)) * **cli:** use filter options for send. Closes [folke#138](folke#138) ([d0ee1ef](folke@d0ee1ef)) * **nes.edit:** add buffer validation before accessing position ([folke#147](folke#147)) ([2cb7359](folke@2cb7359)) * **nes:** ModeChanged: *:n -> i:n, so only when leaving insert to normal mode. Closes [folke#151](folke#151) ([9e29145](folke@9e29145)) * **opencode:** opencode implements scrolling natively, so don't use scrollback there. See [folke#152](folke#152) ([d9e1fa2](folke@d9e1fa2)) * **scrollback:** focus issues with other terminals entering/leaving like fzf-lua ([ff55eb3](folke@ff55eb3)) * **status:** show correct signin command when lsp is from `copilot.lua` ([09ebeb4](folke@09ebeb4)) * **terminal:** better tracking of terminal mode when entering/leaving the sidekick window ([22a6326](folke@22a6326)) * **terminal:** enbable/disable cursorline when in normal/terminal mode in the sidekick window ([83b6815](folke@83b6815)) * **terminal:** fckup with scrollback ([cbbf53b](folke@cbbf53b)) * **terminal:** handle closing the last window. Closes [folke#124](folke#124) ([99824c2](folke@99824c2)) * **terminal:** increase initial send delay when opening the terminal. Closes [folke#150](folke#150) ([e98008f](folke@e98008f)) * **terminal:** only use scrollback buffer when needed ([9d9d8cc](folke@9d9d8cc)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
chore(main): release 2.0.0 (folke#81) 🤖 I have created a release *beep* *boop* --- ## [2.0.0](folke/sidekick.nvim@v1.3.0...v2.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 [folke#59](folke#59) ([4a492da](folke@4a492da)) * **cli.select:** better distinction between attaching to terminal/external ([48d0bf6](folke@48d0bf6)) * **cli:** `close()` on an external session, now detaches from that session. Closes [folke#98](folke#98) ([d2e6c64](folke@d2e6c64)) * **cli:** added `<c-q>` to hide in normal mode, so from terminal double `<c-q>` will hide ([358804c](folke@358804c)) * **cli:** added health checks and optional reqs to the docs for `lsof` and `ps`. Fixes [folke#89](folke#89) ([d403ec3](folke@d403ec3)) * **cli:** added some config option validation ([c236b38](folke@c236b38)) * **cli:** added terminal navigation with `<c-hjkl>`. Only mapped when not a float and a window in the dir exists. See [folke#51](folke#51) ([b48e177](folke@b48e177)) * **cli:** deduplicate cli tool sessions. Closes [folke#92](folke#92) ([e5bcf17](folke@e5bcf17)) * **cli:** handle special filenames for Claude, Gemini, Qwen. Fixes [folke#130](folke#130) ([19b5985](folke@19b5985)) * **config:** changed the default keymaps. Please check the updated documentation and example mappings ([6608705](folke@6608705)) * **context:** you can now use context fallbacks like `{function|line}` ([076147a](folke@076147a)) * **copilot:** allow configuring minimum level for copilot LSP messages ([4b6750b](folke@4b6750b)) * **opencode:** add pid to external opencode sessions ([3d9d519](folke@3d9d519)) * **terminal:** much better scrollback buffer. no flickering and should work in all modes ([3aa2fe5](folke@3aa2fe5)) * **terminal:** restore normal/terminal mode when entering the sidekick window ([50c40d5](folke@50c40d5)) * **terminal:** switch to scrollback when doing mouse scroll ([0dd3c3b](folke@0dd3c3b)) * **tmux:** entering normal mode in a tmux terminal, now loads the whole tmux scrollback ([a453f76](folke@a453f76)) * **tmux:** some tools won't process input if they don't have focus, so tools can now set `mux_focus = true` ([41dec4d](folke@41dec4d)) * **tool:** tools can now further format text before it's sent. See [folke#130](folke#130), see [folke#59](folke#59) ([28f8a07](folke@28f8a07)) * **util:** weak ref util method ([8036aea](folke@8036aea)) ### Bug Fixes * **cli.prompt:** proper way of rendering templates with highlights ([30b7b9e](folke@30b7b9e)) * **cli.select:** sort terminal sessions before external sessions ([c487d53](folke@c487d53)) * **cli.state:** allow creating new sessions for tools that have only external sessions ([c588efb](folke@c588efb)) * **cli:** allow sending a newlline `msg="\n"` ([fc0067a](folke@fc0067a)) * **cli:** don't send empty messages ([63f626c](folke@63f626c)) * **location:** different format that should work for most cli tools. Closes [folke#59](folke#59) ([d570e1f](folke@d570e1f)) * **nes:** added triggerKind. Maybe that's needed for nes? ([e535808](folke@e535808)) * **nes:** better didFocus tracking ([3669eae](folke@3669eae)) * **nes:** don't clear NES on `TextChanged` or `BufWritePre`. Closes [folke#91](folke#91) ([32fa55c](folke@32fa55c)) * **nes:** don't process unloaded buffers. Closes [folke#86](folke#86) ([620adf0](folke@620adf0)) * **nes:** exec nes commands AFTER edits have been applied ([80d1604](folke@80d1604)) * **nes:** skip old edits early ([8395007](folke@8395007)) * **nes:** textDocument/didFocus ([b7085d7](folke@b7085d7)) * **nes:** trigger on `ModeChanged *:n` instead of `InsertLeave`. See [folke#125](folke#125) ([abbd051](folke@abbd051)) * **opencode:** check that open server is actually from an opencode process. Closes [folke#87](folke#87) ([cb8485a](folke@cb8485a)) * **procs:** handle case where `USER` is not set. Closes [folke#82](folke#82) ([01f89b7](folke@01f89b7)) * **q:** filer procs on qchat instead of `q`, which seems to be the actual binary. Closes [folke#80](folke#80) ([4b65b8a](folke@4b65b8a)) * **qwen:** set `mux_focus = true` since qwen doesnt process input if unfocused. Fixes [folke#104](folke#104) ([c262b25](folke@c262b25)) * **sessions:** load tools during session setup, since thet may register session backends (like opencode) ([c7761eb](folke@c7761eb)) * **status:** always return `nil` when copilot status is disabled in config ([f908fec](folke@f908fec)) * **terminal:** allow auto split width/height ([folke#111](folke#111)) ([03cf9fb](folke@03cf9fb)) * **terminal:** better handling of crlf for send. See [folke#119](folke#119) ([7185e08](folke@7185e08)) * **terminal:** blur on hide ([81b2a85](folke@81b2a85)) * **terminal:** cleanup scrollback buffer ([9ef38db](folke@9ef38db)) * **terminal:** don't error when it's the last window and hiding. Closes [folke#124](folke#124) ([cab3ec4](folke@cab3ec4)) * **terminal:** keymap rhs fallback to rhs string ([2b644f0](folke@2b644f0)) * **terminal:** no need to check for mouse scroll when we're not in terminal mode ([b52c3be](folke@b52c3be)) * **terminal:** only show scrollback when entering normal mode and the terminal window is current. Closes [folke#106](folke#106) ([1e03666](folke@1e03666)) * **terminal:** remove padding since it causes issues with terminal reflow (Neovim bug) ([cc32068](folke@cc32068)) * **terminal:** safer way of entering terminal mode from scrollback buffer ([folke#129](folke#129)) ([2195213](folke@2195213)) * **terminal:** safer way of entering terminal mode from scrollback buffer. Closes [folke#103](folke#103) ([0bc6f88](folke@0bc6f88)) * **terminal:** scroll to last line in normal mode. Closes [folke#101](folke#101) ([69eb7b7](folke@69eb7b7)) * **terminal:** send all text in one chunk with nvim_paste. Fixes [folke#119](folke#119). Fixes [folke#118](folke#118) ([ca97ecd](folke@ca97ecd)) * **terminal:** use `nvim_paste` instead of `nvim_chan_send` to better simulate user input. Closes [folke#110](folke#110) ([cebcd44](folke@cebcd44)) * **terminal:** use nvim_put directly to paste into the terminal ([bed1d65](folke@bed1d65)) * **text:** handle empty virtual lines ([98a33eb](folke@98a33eb)) * **tmux:** use `paste-buffer` with the `-r` flag to preserve newlines. Fixes [folke#93](folke#93) ([2fdc4d4](folke@2fdc4d4)) * **zellij:** attach to existing isolated session ([9deb771](folke@9deb771)) * **zellij:** zellij:create -> zellij:start ([4bd0df2](folke@4bd0df2)) ### Performance Improvements * **nes:** only send didFocus events for regular buffers and if different ([39a1638](folke@39a1638)) * **terminal:** only load scrollback buffer when needed ([628c3d0](folke@628c3d0)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>