From 73c5b0b7d7f08fd8c7ef68603f629f61ba4a6c10 Mon Sep 17 00:00:00 2001 From: mitchell Date: Mon, 19 May 2025 15:57:08 -0400 Subject: [PATCH] Add AI helper functions, update plugins, and codecompanion updates --- .config/fish/functions/adr.fish | 9 ++++ .config/fish/functions/aikeys.fish | 10 +++++ .config/nvim/lazy-lock.json | 30 +++++++++++++ .config/nvim/lua/plugins/editor.lua | 2 +- .config/nvim/lua/plugins/navigation.lua | 2 +- .config/nvim/lua/plugins/tools.lua | 58 ++++++++++++------------- .config/nvim/lua/plugins/treesitter.lua | 1 + .gitconfig | 12 ++--- 8 files changed, 87 insertions(+), 37 deletions(-) create mode 100644 .config/fish/functions/adr.fish create mode 100644 .config/fish/functions/aikeys.fish create mode 100644 .config/nvim/lazy-lock.json diff --git a/.config/fish/functions/adr.fish b/.config/fish/functions/adr.fish new file mode 100644 index 0000000..4b8762a --- /dev/null +++ b/.config/fish/functions/adr.fish @@ -0,0 +1,9 @@ +function adr --wraps aider + aider \ + --model gemini \ + --editor-model gpt-4.1-mini \ + --weak-model gpt-4.1-mini \ + --dark-mode \ + --completion-menu-bg-color '#1f1f28' \ + --vim $argv +end diff --git a/.config/fish/functions/aikeys.fish b/.config/fish/functions/aikeys.fish new file mode 100644 index 0000000..daf5843 --- /dev/null +++ b/.config/fish/functions/aikeys.fish @@ -0,0 +1,10 @@ +function aikeys -d 'Set AI API keys' -a service + switch $service + case gemini + echo "set -lx GEMINI_API_KEY (kp Keys/google-aistudio-key -a Password)" + case openai + echo "set -lx OPENAI_API_KEY (kp Keys/openai-general -a Password)" + case anthro + echo "set -lx ANTHROPIC_API_KEY (kp Keys/google-aistudio-key -a Password)" + end +end diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json new file mode 100644 index 0000000..438dbe5 --- /dev/null +++ b/.config/nvim/lazy-lock.json @@ -0,0 +1,30 @@ +{ + "ale": { "branch": "master", "commit": "5098dfd27edf2b38e5af284f6f440d24cf806b53" }, + "blink.cmp": { "branch": "main", "commit": "022521a8910a5543b0251b21c9e1a1e989745796" }, + "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, + "codecompanion.nvim": { "branch": "main", "commit": "0beb9183954ae1afa2e1f5a91812706764d1a743" }, + "flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" }, + "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" }, + "kanagawa.nvim": { "branch": "master", "commit": "4de88d695634a8776c687af8e7436cfa074aa0c0" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "lualine.nvim": { "branch": "master", "commit": "15884cee63a8c205334ab13ab1c891cd4d27101a" }, + "markview.nvim": { "branch": "main", "commit": "23f8bda5a172287c3423a3ffe7640efefa52a48b" }, + "mini.diff": { "branch": "main", "commit": "ec8a5ae365c5d15920721ea42b1351dbc9e61f2d" }, + "neo-tree.nvim": { "branch": "v3.x", "commit": "f481de16a0eb59c985abac8985e3f2e2f75b4875" }, + "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, + "nui.nvim": { "branch": "main", "commit": "f535005e6ad1016383f24e39559833759453564e" }, + "nvim-lspconfig": { "branch": "master", "commit": "ac1dfbe3b60e5e23a2cff90e3bd6a3bc88031a57" }, + "nvim-notify": { "branch": "master", "commit": "b5825cf9ee881dd8e43309c93374ed5b87b7a896" }, + "nvim-treesitter": { "branch": "master", "commit": "066fd6505377e3fd4aa219e61ce94c2b8bdb0b79" }, + "nvim-web-devicons": { "branch": "master", "commit": "1fb58cca9aebbc4fd32b086cb413548ce132c127" }, + "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, + "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" }, + "tmuxline.vim": { "branch": "master", "commit": "4119c553923212cc67f4e135e6f946dc3ec0a4d6" }, + "twilight.nvim": { "branch": "main", "commit": "1584c0b0a979b71fd86b18d302ba84e9aba85b1b" }, + "vim-eunuch": { "branch": "master", "commit": "e86bb794a1c10a2edac130feb0ea590a00d03f1e" }, + "vim-fugitive": { "branch": "master", "commit": "4a745ea72fa93bb15dd077109afbb3d1809383f2" }, + "vim-pencil": { "branch": "master", "commit": "6d70438a8886eaf933c38a7a43a61adb0a7815ed" }, + "vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" }, + "zen-mode.nvim": { "branch": "main", "commit": "863f150ca321b3dd8aa1a2b69b5f411a220e144f" } +} diff --git a/.config/nvim/lua/plugins/editor.lua b/.config/nvim/lua/plugins/editor.lua index 9610b99..367542e 100644 --- a/.config/nvim/lua/plugins/editor.lua +++ b/.config/nvim/lua/plugins/editor.lua @@ -88,7 +88,7 @@ return { { "folke/zen-mode.nvim", opts = { - window = { backdrop = 0.95 }, + window = { backdrop = 0.95, options = { number = false } }, plugins = { twilight = { enabled = false } }, }, keys = { diff --git a/.config/nvim/lua/plugins/navigation.lua b/.config/nvim/lua/plugins/navigation.lua index 89b00cf..dc0bda1 100644 --- a/.config/nvim/lua/plugins/navigation.lua +++ b/.config/nvim/lua/plugins/navigation.lua @@ -14,7 +14,7 @@ return { keys = { { "nn", - "Neotree toggle reveal_force_cwd", + "Neotree left reveal_force_cwd", desc = "Neo-tree Toggle Sidebar", silent = true, }, diff --git a/.config/nvim/lua/plugins/tools.lua b/.config/nvim/lua/plugins/tools.lua index 9cab4ad..88a5dce 100644 --- a/.config/nvim/lua/plugins/tools.lua +++ b/.config/nvim/lua/plugins/tools.lua @@ -9,50 +9,34 @@ return { "echasnovski/mini.diff", }, opts = { - display = { diff = { provider = "mini_diff" }, chat = { show_settings = true } }, + display = { + diff = { provider = "mini_diff" }, + chat = { + show_settings = false, + window = { position = "right", opts = { number = false } }, + }, + }, strategies = { - chat = { adapter = "gemini_deep" }, - inline = { adapter = "openai" }, + chat = { adapter = "gemini" }, + inline = { adapter = "openai_mini" }, cmd = { adapter = "openai_mini" }, }, adapters = { - anthro = function() + anthropic = function() return require("codecompanion.adapters").extend("anthropic", { schema = { - model = { default = "claude-3-7-sonnet-20250219" }, - extended_thinking = { default = false }, - }, - }) - end, - anthro_deep = function() - return require("codecompanion.adapters").extend("anthropic", { - schema = { - model = { default = "claude-3-7-sonnet-20250219" }, + max_tokens = { default = 20000 }, }, }) end, gemini = function() - return require("codecompanion.adapters").extend("gemini", { - schema = { - model = { default = "gemini-2.5-flash-preview-04-17" }, - }, - }) - end, - gemini_deep = function() return require("codecompanion.adapters").extend("gemini", { schema = { model = { default = "gemini-2.5-pro-preview-05-06" }, }, }) end, - openai_mini = function() - return require("codecompanion.adapters").extend("openai", { - schema = { - model = { default = "gpt-4.1-mini" }, - }, - }) - end, - openai_deep = function() + openai = function() return require("codecompanion.adapters").extend("openai", { schema = { model = { default = "o4-mini-2025-04-16" }, @@ -60,10 +44,26 @@ return { }, }) end, + openai_mini = function() + return require("codecompanion.adapters").extend("openai", { + schema = { + model = { default = "gpt-4.1-mini" }, + temperature = { default = 0 }, + }, + }) + end, }, }, keys = { - { "c", "CodeCompanionChat", desc = "CodeCompanion Chat", silent = true }, + { "cc", "CodeCompanionChat", desc = "CodeCompanion Chat", silent = true }, + { + "cf", + "CodeCompanionChat openai_mini", + desc = "CodeCompanion Chat (Fast)", + silent = true, + }, + { "ca", "CodeCompanionActions", desc = "CodeCompanion Actions", silent = true }, + { "ci", ":CodeCompanion", mode = { "n", "v" }, desc = "CodeCompanion Inline" }, }, }, } diff --git a/.config/nvim/lua/plugins/treesitter.lua b/.config/nvim/lua/plugins/treesitter.lua index 6e1246d..777d171 100644 --- a/.config/nvim/lua/plugins/treesitter.lua +++ b/.config/nvim/lua/plugins/treesitter.lua @@ -16,6 +16,7 @@ return { "typescript", "javascript", "tsx", + "svelte", "go", "elixir", "vue", diff --git a/.gitconfig b/.gitconfig index 8f34b78..332cf4c 100644 --- a/.gitconfig +++ b/.gitconfig @@ -44,10 +44,10 @@ diffFilter = delta --color-only [delta] - features = side-by-side line-numbers decorations - whitespace-error-style = 22 reverse + navigate = true + dark = true + side-by-side = true + line-numbers = true -[delta "decorations"] - commit-decoration-style = bold yellow box ul - file-style = bold yellow ul - file-decoration-style = none +[merge] + conflictstyle = zdiff3