Commit Graph

207 Commits

Author SHA1 Message Date
yetone
b20b2caf22 fix: cursor planning mode bad cases (#1290) 2025-02-17 22:27:43 +08:00
yetone
b21d2632d3 feat: cursor planning mode (#1289) 2025-02-17 18:49:29 +08:00
yetone
c60dc6c316 fix: case insensitive (#1275) 2025-02-14 12:28:39 +08:00
yetone
25111c6df3 fix: incorrect minimize snippets (#1265) 2025-02-13 13:39:24 +08:00
yetone
763dbe064d fix: line content (#1264) 2025-02-13 13:23:28 +08:00
yetone
9bad591e8a fix: lowercase filepath bad case (#1259) 2025-02-12 22:59:15 +08:00
yetone
f8636315a5 fix: get filetype (#1258) 2025-02-12 22:19:55 +08:00
yetone
3a7277386f fix: mkdir for new file (#1257) 2025-02-12 22:02:12 +08:00
yetone
456f7ccdab fix: search/replace tag bad cases (#1248) 2025-02-11 23:49:37 +08:00
yetone
b73b3d7888 fix: file not found (#1243) 2025-02-11 15:54:57 +08:00
synic
0bfbd39ebc fix(sidebar): fix various focus errors (#1237)
This fixes a bunch of errors I was getting when switching away from the
avante sidebar and then back. Sometimes the sidebar would lose track of
the various windows, and you'd get errors like this:

```
|| stack traceback:
|| 	...local/share/nvim/lazy/avante.nvim/lua/avante/sidebar.lua:2350: in function <...local/share/nvim/lazy/avante.nvim/lua/avante/sidebar.lua:2349>
|| Error detected while processing BufLeave Autocommands for "<buffer=294>":
|| Error executing lua callback: ...local/share/nvim/lazy/avante.nvim/lua/avante/sidebar.lua:2398: attempt to index field 'selected_files_container' (a nil value)
```

Or this one:

```
|| stack traceback:
|| 	...local/share/nvim/lazy/avante.nvim/lua/avante/sidebar.lua:2350: in function <...local/share/nvim/lazy/avante.nvim/lua/avante/sidebar.lua:2349>
|| Error detected while processing BufLeave Autocommands for "<buffer=294>":
|| Error executing lua callback: ...local/share/nvim/lazy/avante.nvim/lua/avante/sidebar.lua:2398: attempt to index field 'selected_files_container' (a nil value)
```

This change does the following:

1. Proper order of cleanup in `reset()`
2. Proper cleanup in `create_selected_files_container()`
2025-02-11 13:42:23 +08:00
yetone
62c29b3d0c fix: incorrect replace end tag (#1240) 2025-02-11 12:11:16 +08:00
Thomas Müller
3f8b6d07ba feat(sidebar): add member function to check whether the sidebar is focused (#1216) 2025-02-11 11:36:38 +08:00
Thomas Müller
a6ae8ad4b7 fix(sidebar): reset cursor to beginning of prompt on submit (#1213)
This fix is required for users with vim.o.virtualedit="all". Otherwise,
the cursor remains at the end of the prompt and has to be manually moved
back before entering the next prompt.
2025-02-11 11:36:19 +08:00
Thomas Müller
8d82abe043 feat: expose whether the llm is currently generating content (#1181) 2025-02-11 11:35:28 +08:00
Oliver Lorton
cc46386130 fix: when dev icons absent (#1214)
* Add helper function to check for dev icon availability

* Add function to display dev icon or nothing if icon plugins unavailable

* Fix existing use of icons

* Reformat with stylua
2025-02-11 01:43:01 +08:00
yetone
26e40e5483 fix: apply non-existent file (#1224) 2025-02-09 01:56:59 +08:00
yetone
4ffec5a039 fix: search/replace bad case (#1223) 2025-02-09 01:39:00 +08:00
yetone
e70b0fa243 fix: incorrect indentation (#1222) 2025-02-09 00:21:32 +08:00
yetone
29a71b2976 fix: insert conflict contents (#1201) 2025-02-06 22:24:59 +08:00
yetone
5f6612fb8c fix: support multiple tool use (#1192) 2025-02-06 16:41:28 +08:00
yetone
f2bd4adba4 feat: add add_file_to_context tool (#1191) 2025-02-06 16:00:14 +08:00
yetone
4f41154e83 feat: tool logs (#1190) 2025-02-06 15:15:44 +08:00
yetone
d1cc23fa54 fix: multiple tool use histories and disable tools (#1185) 2025-02-06 02:46:52 +08:00
yetone
1437f319d2 feat: tools (#1180)
* feat: tools

* feat: claude use tools

* feat: openai use tools
2025-02-05 22:39:54 +08:00
yetone
a9ab429699 feat: trim think content in history messages (#1178) 2025-02-04 15:25:36 +08:00
yetone
d1286e7bfb feat: enable token counting (#1157) 2025-02-02 01:27:12 +08:00
Christopher Brewin
0a273c2f5d feat(sidebar): move quit and close key mappings into config values. (#979) 2025-02-01 09:48:11 -05:00
yetone
2ead26f809 feat: thinking 🤯 2025-01-27 22:54:24 +08:00
Yunlong
e849fc2c15 fix: prevent nil result_container error on buffer detach (#1123)
Co-authored-by: yetone <yetoneful@gmail.com>
2025-01-24 11:29:11 +08:00
yetone
c3dd0630f1 feat: not focusing on the last line when the cursor moves (#1110) 2025-01-21 00:32:04 +08:00
yetone
76f60794c3 fix: release the cursor when generating (#1109) 2025-01-21 00:04:48 +08:00
Seong Yong-ju
12beaebb2a chore(sidebar): set different filetype for the selected files buffer (#1097)
Set different filetypes so that [edgy.nvim](https://github.com/folke/edgy.nvim)
can easily identify the result buffer and the selected files buffer.
2025-01-17 00:47:01 +08:00
yetone
81abbdb796 fix: add missing field ask for caculate_tokens (#1088) 2025-01-15 20:10:23 +08:00
Christopher Brewin
f401983737 feat(sidebar): support files outside of the current working directory. (#1065) 2025-01-11 23:15:13 +08:00
Alban Kurti
225e6f9572 feat: auto focus sidebar (#982) 2025-01-09 01:40:19 +08:00
Yang Jun
794c643033 fix: cannot apply changes if model is gemini-2.0-flash-thinking-exp-1219 (#1052) 2025-01-09 00:14:14 +08:00
yetone
a3ac0b84be fix: seleted file is nil (#1049) 2025-01-07 14:36:31 +08:00
Yang Jun
c8ba3d36cc feat: focus to input after /clear or /reset be execuated (#1044) 2025-01-06 16:51:35 +08:00
yetone
48fc35f978 fix: hide internal properties of config (#1036) 2025-01-05 18:27:23 +08:00
f7b51730df fix(switch_windows): add nowait to avoid pre-<Tab> keymap (#1028) 2025-01-05 13:24:03 +08:00
yetone
81e5f1937f fix: Claude sometimes gets lazy and doesnt return the filepath (#1025) 2025-01-02 21:34:39 +08:00
Rohith Ravi
be92be6124 feat(context): mention @quickfix to add files in qf to context (#988)
Neovim allows quickfix list to be populated in a variety of ways: grep,
lsp symbol references etc. Being able to add files in the quickfix
window to the LLM chat context allows for interesting workflows. For
example, one could search for a symbol using the LSP integration,
populate the quickfix with that list and then pass those along as
context in Avante using @quickfix mention in the sidebar.

If there are no files in the quickfix list or the items do not have a
file, nothing is added to the context.
2024-12-24 22:48:37 +08:00
Christopher Brewin
429bdd6b61 fix (sidebar) rendering and applying snippets for new files and files outside of the sidebar selected file context. (#991) 2024-12-24 22:44:02 +08:00
yetone
dde035831a fix(ci): lua lint (#960) 2024-12-17 20:47:52 +08:00
Michael Gendy
e98fa46bec feat(tokens): add token count display to sidebar (#956)
* feat (tokens) add token count display to sidebar

* refactor: calculate the real tokens and reuse input hints to avoid occlusion

---------

Co-authored-by: yetone <yetoneful@gmail.com>
2024-12-17 20:43:25 +08:00
Maddison Hellstrom
b102f673c4 feat(AvanteClear): accept args to clear history, memory or cache (#930)
* chore: extract sidebar clear history/memory functions

* feat(AvanteClear): accept args to clear history, memory or cache

Usage:
```
:AvanteClear [history|memory|cache]
```

- changed default behavior from clearing the cache to clearing history.
- added args to clear history, memory or cache.
- added confirm dialog before clearing cache.
2024-12-13 22:59:09 +08:00
Fernando Freire
5c20cc1779 feat(context): add current buffer to selected file ctx (#941) 2024-12-13 22:57:42 +08:00
Christopher Brewin
4d6f8e65fb feat (sidebar) nvim-web-devicons support files with multiple dots and use default for unknown file types. (#943) 2024-12-13 22:54:16 +08:00
Christopher Brewin
78dd9b0a6d feat(context): add a ui for selecting and adding files to the sidebar as context (#912)
* feat(sidebar): supports select files

chore (context) update add type annotations to context functions

chore (sidebar) remove unused notify function call

refactor (sidebar) remove setting search file to file path

chore (sidebar) remove nvim_notify debugging api call

* feat (files) allow selecting a file by string via cmp suggestion menu

* chore (context) refactor to allow context using @file with a context view

* refactor (context) refactor seletected file types as an array of path and content

* refactor (config) remove unused configuration options

* refactor (sidebar) remove unused unbild key

* refactor (context) remove unused imports

* refactor (mentions) update mentions to support items with callback functions and removal of the underlying selection.

* fix (sidebar) add file context as a window that is visitable via the tab key

* refactor (file_content) remove file content as an input to llm

* feat (sidebar) support suggesting and applying code in all languages that are in the context

* feat (sidebar) configurable mapping for removing a file from the context.

* feat (context_view) configure hints for the context view for adding and deleting a file.

* feat (context) add hints for the context view.

* fix (sidebar) type when scrolling the results buffer.

* refactor (selected files) refactor llm stream to accept an array of selected file metadata

* refactor: context => selected_files

---------

Co-authored-by: yetone <yetoneful@gmail.com>
2024-12-12 01:29:10 +08:00