* feat: add ollama as supported provider
*This implementation is only working with `stream = true`*
- Uses the actual ollama api and allows for passing additional options
- Properly passes the system prompt to api
Use ollama as provider in opts like this:
opts = {
debug = true,
provider = "ollama",
ollama = {
api_key_name = "",
endpoint = "http://127.0.0.1:11434",
model = "qwen2.5-coder:latest",
options = {
num_ctx = 32768,
temperature = 0,
},
stream = true,
},
* fix: ollama types
---------
Co-authored-by: jtabke <25010496+jtabke@users.noreply.github.com>
* Fix - Fix thrown error when trying to use @codebase with no buffer opened
* Style - Fix stylua formatting in repo_map and sidebar
* Fix - Restore code selection handling in sidebar
This was a mistake on my part while rushing to make the PR. I deleted an
unrelated commit that got sent by mistake, and during the second review,
I didn't notice that this important code selection functionality was
removed. The code has now been properly restored.
* add key mappings to close sidebar in input_container
* add autocmd to enter normal mode on leaving input_container
* add autocmd to enter insert mode on entering input_container
* Exclude file patterns from git-crypt in pathspec
git-crypt could be used to encrypt files in a repository.
These files should be excluded from the pathspec to avoid
sending them to the RAG service.
git-crypt relies on a filter attribute in the .gitattributes so we can
use ls-files to get the files that are encrypted.
* Add some logging about ignored file
The logging is quite verbose, given it logs every ignored file but I
think it useful for the end user to have an explicit feedback about
sensitive files that are being ignored.
* Fix lint errors
* Avoid Shell=true for subprocess.run() (S604)
Removing S604 "Avoid Shell=true for subprocess.run()" we get S603 "subprocess call: check for execution of untrusted input"
I dit not found a way to fix this issue, so I'm putting it in the ignore list.
I also used shutil to retrieve the absolute git path to run the subprocess commands.
setting `lazy=false` means eagerly loading the plugin while `event =
"VeryLazy"` suggests the plugin should be lazy loaded
https://lazy.folke.io/spec/lazy_loading
> Plugins will be lazy-loaded when one of the following is true:
>
> * The plugin only exists as a dependency in your spec
> * It has an event, cmd, ft or keys key
> * config.defaults.lazy == true
see example
6c3bda4aca/lua/lazy/example.lua (L58-L60)
* feature model selection custom display name
Added an option for a custom display name
I had the need for this option for multiple similar custom model
configurations where I wanted to have more indicative titles.
* linting error