diff --git a/CHANGELOG.md b/CHANGELOG.md index fb2215dcf..4af3a9bdb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,192 @@ # Changelog +## [12.0.0](https://github.com/olimorris/codecompanion.nvim/compare/v12.13.3...v12.0.0) (2025-02-27) + + +### ⚠ BREAKING CHANGES + +* **agents:** agents are now in `strategies.chat.agents` +* **chat:** :sparkles: can pin buffers and files to requests + +### Features + +* :sparkles: add support for `snacks.nvim` ([#741](https://github.com/olimorris/codecompanion.nvim/issues/741)) ([5407aba](https://github.com/olimorris/codecompanion.nvim/commit/5407aba817d11c4e1f27da34210e4cd58e88a388)) +* :sparkles: Agentic Workflows and much more ([#832](https://github.com/olimorris/codecompanion.nvim/issues/832)) ([f26fa4e](https://github.com/olimorris/codecompanion.nvim/commit/f26fa4eb8d0bd1ac0b0a2ab980839965db381fc2)) +* :sparkles: can edit setting and message history ([#753](https://github.com/olimorris/codecompanion.nvim/issues/753)) ([2592d26](https://github.com/olimorris/codecompanion.nvim/commit/2592d26eb3da9462174c858464324c31eb35eb91)) +* :sparkles: workspace slash command ([#702](https://github.com/olimorris/codecompanion.nvim/issues/702)) ([8173b5d](https://github.com/olimorris/codecompanion.nvim/commit/8173b5df1cd8da856b9449b4f68a8cd64d60f08d)) +* [#604](https://github.com/olimorris/codecompanion.nvim/issues/604) `send_code` can be a function ([30b899e](https://github.com/olimorris/codecompanion.nvim/commit/30b899e638d5525494b64eacd19b1c0eb50f988c)) +* adapter and debug window improvement ([be55c9b](https://github.com/olimorris/codecompanion.nvim/commit/be55c9b05d34940a15ad5aed70f62f04e333c7c4)) +* **adapters:** add claude 3.7 thought to copilot adapter ([#1001](https://github.com/olimorris/codecompanion.nvim/issues/1001)) ([6e53570](https://github.com/olimorris/codecompanion.nvim/commit/6e535709234e07995bacae08f267c0823457f1c5)) +* **adapters:** add claude-3.7-sonnet and make default ([#996](https://github.com/olimorris/codecompanion.nvim/issues/996)) ([c207203](https://github.com/olimorris/codecompanion.nvim/commit/c207203a005baf0bd5bae3401ac202f568c60581)) +* **adapters:** add claude-3.7-sonnet to copilot ([#1002](https://github.com/olimorris/codecompanion.nvim/issues/1002)) ([9729441](https://github.com/olimorris/codecompanion.nvim/commit/9729441037518c487a4a223165d463abcd1bdd67)) +* **adapters:** add DeepSeek Adapter ([#683](https://github.com/olimorris/codecompanion.nvim/issues/683)) ([6668b5c](https://github.com/olimorris/codecompanion.nvim/commit/6668b5c517978207a7b00f3f5a9bc8c7760ebcad)) +* **adapters:** add extended thinking and extended output for claude-3.7 ([#998](https://github.com/olimorris/codecompanion.nvim/issues/998)) ([a497adb](https://github.com/olimorris/codecompanion.nvim/commit/a497adb166fcfc29ef0a4fdad04bb0320e08e912)) +* **adapters:** add gemini-2.0-pro-exp-02-05 model option ([#1007](https://github.com/olimorris/codecompanion.nvim/issues/1007)) ([bef6d90](https://github.com/olimorris/codecompanion.nvim/commit/bef6d90a73652672c09b1b6323c8d5a0215020c0)) +* **adapters:** add GitHub Models support ([#862](https://github.com/olimorris/codecompanion.nvim/issues/862)) ([4a6567b](https://github.com/olimorris/codecompanion.nvim/commit/4a6567b2a563503b157705ec284fb922f81b784a)) +* **adapters:** add Hugging Face adapter ([#527](https://github.com/olimorris/codecompanion.nvim/issues/527)) ([48747c4](https://github.com/olimorris/codecompanion.nvim/commit/48747c4e36eb0a3f44d6d9e55f8089b9e27cacfc)) +* **adapters:** add reasoning effort to copilot and openai ([#812](https://github.com/olimorris/codecompanion.nvim/issues/812)) ([b9a58eb](https://github.com/olimorris/codecompanion.nvim/commit/b9a58eb8f151f9771938105220d81c7577a52e0e)) +* **adapters:** can hide default adapters ([#925](https://github.com/olimorris/codecompanion.nvim/issues/925)) ([f4b72d7](https://github.com/olimorris/codecompanion.nvim/commit/f4b72d746eb9549747e5236649306f5c56c1ae5a)) +* **adapters:** dynamically get available models from copilot endpoint ([#1012](https://github.com/olimorris/codecompanion.nvim/issues/1012)) ([d62c8e1](https://github.com/olimorris/codecompanion.nvim/commit/d62c8e16291e113c877db8c6adc9ec45835b9a66)) +* **adapters:** update `copilot` and `openai` adapters for o1 models ([c7ba92a](https://github.com/olimorris/codecompanion.nvim/commit/c7ba92ad367939e94bfa23df7e3eb1bc74909348)) +* add new events ([9b85331](https://github.com/olimorris/codecompanion.nvim/commit/9b8533143e381fb0dd4e5c733217dac8f9852ea4)) +* add reference handling to workflow processing ([#969](https://github.com/olimorris/codecompanion.nvim/issues/969)) ([4c9f120](https://github.com/olimorris/codecompanion.nvim/commit/4c9f120033c1c1b4c17536c2407c288d91d34e95)) +* add symbols for scala ([#768](https://github.com/olimorris/codecompanion.nvim/issues/768)) ([4535cb5](https://github.com/olimorris/codecompanion.nvim/commit/4535cb5bdf92e3bc88d4cf061c606447131e27db)) +* **chat:** :sparkles: `blink.cmp` support ([cb2c93f](https://github.com/olimorris/codecompanion.nvim/commit/cb2c93f8a6b0ab0522a814f244b8011a7275ea3b)) +* **chat:** :sparkles: can pin buffers and files to requests ([fc8ee3a](https://github.com/olimorris/codecompanion.nvim/commit/fc8ee3a085a44d0ef0111be0499f6552d7dbe865)) +* **chat:** :sparkles: can watch buffers ([176c13e](https://github.com/olimorris/codecompanion.nvim/commit/176c13e227cf39c4e22bec68d4631a8c47b643de)) +* **chat:** :sparkles: LLM header name can now be a function ([#778](https://github.com/olimorris/codecompanion.nvim/issues/778)) ([5a82a54](https://github.com/olimorris/codecompanion.nvim/commit/5a82a5422494c44e6bbcf6c8afedacfe61659b03)) +* **chat:** add `CodeCompanionChatOpened` event ([fdfc640](https://github.com/olimorris/codecompanion.nvim/commit/fdfc640f638de7e44580c75882b81cc6dd99b950)) +* **chat:** adding to chat initializes buffer if needed ([#567](https://github.com/olimorris/codecompanion.nvim/issues/567)) ([8c82ced](https://github.com/olimorris/codecompanion.nvim/commit/8c82cedc3d70255ec6ea0fdb348b3e931c435fba)) +* **chat:** can delete references ([367eccc](https://github.com/olimorris/codecompanion.nvim/commit/367eccc7cc57edcc249bae850ac4ccdf599a060c)) +* **chat:** can delete references ([c0b8c25](https://github.com/olimorris/codecompanion.nvim/commit/c0b8c2522c20b8369201132a4ce953f3cdf7b5e2)) +* **chat:** customize split position ([#556](https://github.com/olimorris/codecompanion.nvim/issues/556)) ([7374192](https://github.com/olimorris/codecompanion.nvim/commit/73741920097f36c762bb8fe1f4de6617389e2d4c)) +* **chat:** easier to add refs from external sources ([#960](https://github.com/olimorris/codecompanion.nvim/issues/960)) ([b7b43f6](https://github.com/olimorris/codecompanion.nvim/commit/b7b43f62ede6814fc5ab90d464016c63546d22a9)) +* **chat:** keymaps can be custom functions ([5f729f9](https://github.com/olimorris/codecompanion.nvim/commit/5f729f91a6b6a4025f8e4753d2c2c29810da0149)) +* **chat:** ui title is configurable ([8c93ab0](https://github.com/olimorris/codecompanion.nvim/commit/8c93ab0ecb031261d026cf3e8f7b84fe48b81f73)) +* **completion:** auto setup blink.cmp ([90a6603](https://github.com/olimorris/codecompanion.nvim/commit/90a66033ffddb2f1daac0e5d23723214673ab0e5)) +* **completion:** suggestions in blink have better score ([4317513](https://github.com/olimorris/codecompanion.nvim/commit/4317513cdb5fb7f35147448e3ca696756bf82cf2)) +* **copilot:** add o3-mini support ([#810](https://github.com/olimorris/codecompanion.nvim/issues/810)) ([2816d12](https://github.com/olimorris/codecompanion.nvim/commit/2816d1244f0ce905c330fd9041d96ead51bbb0c2)) +* **copilot:** add support for gemini 2.0 flash ([#855](https://github.com/olimorris/codecompanion.nvim/issues/855)) ([#856](https://github.com/olimorris/codecompanion.nvim/issues/856)) ([c0ea1c0](https://github.com/olimorris/codecompanion.nvim/commit/c0ea1c0faf57a61c1121532cad9bbeea58dcd0cc)) +* **copilot:** add token count ([4fd26a6](https://github.com/olimorris/codecompanion.nvim/commit/4fd26a6fd9bc6aa4e88176350a05ff7e16b3a789)) +* **deepseek:** [#692](https://github.com/olimorris/codecompanion.nvim/issues/692) [#669](https://github.com/olimorris/codecompanion.nvim/issues/669) show reasoning output ([#716](https://github.com/olimorris/codecompanion.nvim/issues/716)) ([b4467a1](https://github.com/olimorris/codecompanion.nvim/commit/b4467a1af36e8b99ffadc95dfed55154b18aebf8)) +* **event:** add `CodeCompanionChatPin` event ([f86f4a7](https://github.com/olimorris/codecompanion.nvim/commit/f86f4a72dd154bb677d117e06cab9a9ee8d35f56)) +* **events:** add strategy and adapter to payload ([#822](https://github.com/olimorris/codecompanion.nvim/issues/822)) ([b2e06de](https://github.com/olimorris/codecompanion.nvim/commit/b2e06de23f4b19f472ed97259260102fa7f9af0e)) +* **events:** new request streaming event ([#878](https://github.com/olimorris/codecompanion.nvim/issues/878)) ([6846482](https://github.com/olimorris/codecompanion.nvim/commit/68464826515b764ebae5fdf28e4d3f8c01c80296)) +* **inline:** new and improved assistant ([#904](https://github.com/olimorris/codecompanion.nvim/issues/904)) ([3e4fb61](https://github.com/olimorris/codecompanion.nvim/commit/3e4fb6176a9c1df456795a22891f865a2f4ee56a)) +* **prompts:** :sparkles: can now add references to the prompt library ([d5d86c9](https://github.com/olimorris/codecompanion.nvim/commit/d5d86c9af92555d2cafcb147573871445b8688b5)) +* **prompts:** system prompt is optional for custom prompts ([90820fc](https://github.com/olimorris/codecompanion.nvim/commit/90820fcdb5e6a570dc4f92731fade4d5f716ea02)) +* register source for filetype in blink.cmp ([#661](https://github.com/olimorris/codecompanion.nvim/issues/661)) ([2214916](https://github.com/olimorris/codecompanion.nvim/commit/2214916416dcf18741c65fe3afd034d0fe046263)) +* **slash_cmd:** notify if no terminal buffer is found ([3687b88](https://github.com/olimorris/codecompanion.nvim/commit/3687b8807746700851f13a373ad6ead04bb082bd)) +* **slash_cmds:** `buffer` slash command now sends line numbers ([25dab99](https://github.com/olimorris/codecompanion.nvim/commit/25dab9939e5065a59207d3b77eefc63e4b6e9fc0)) +* **slash_cmds:** can be functions and modules ([#844](https://github.com/olimorris/codecompanion.nvim/issues/844)) ([59ea59e](https://github.com/olimorris/codecompanion.nvim/commit/59ea59e3c2bd336334b706a99446b792c32464bf)) +* **slash_cmds:** terminal command only shows latest changes ([#898](https://github.com/olimorris/codecompanion.nvim/issues/898)) ([cde1882](https://github.com/olimorris/codecompanion.nvim/commit/cde18827e796f898b18899b5dbecf3badf72d2a9)) +* **slash_command:** control system prompts in `/workspace` ([#736](https://github.com/olimorris/codecompanion.nvim/issues/736)) ([16d7f62](https://github.com/olimorris/codecompanion.nvim/commit/16d7f62239bea7b716b06c9ec588f977e054f90e)) +* **slash_commands:** `help` cmd now prompts user to trim if exceeding max_lines ([33c326a](https://github.com/olimorris/codecompanion.nvim/commit/33c326a0d31473ecf3112d783dbcc22afccfb801)) +* **tools:** `[@files](https://github.com/files)` tool can now read specific lines ([26c5b57](https://github.com/olimorris/codecompanion.nvim/commit/26c5b57aa80cb7a12baefa5a5a2e9cfe0a20126a)) +* **tools:** `files` tool now uses search/replace block to edit text ([a02f6c7](https://github.com/olimorris/codecompanion.nvim/commit/a02f6c7bcbfdf955ca1c603b635cd9bc5baaaa7c)) +* **tools:** allow passing a table as the `callback` of a tool. ([#936](https://github.com/olimorris/codecompanion.nvim/issues/936)) ([689ea6e](https://github.com/olimorris/codecompanion.nvim/commit/689ea6edbcdf0d1d16a90d41d5fa96cbdac4633f)) +* **tools:** when `stderr` is not empty, do not discard `stdout` when exit code is 0 ([#955](https://github.com/olimorris/codecompanion.nvim/issues/955)) ([d8de491](https://github.com/olimorris/codecompanion.nvim/commit/d8de491ebf2ed4bca7006ae33e6990ec3f8d60d0)) +* **workspaces:** :sparkles: now supporting URLs ([#808](https://github.com/olimorris/codecompanion.nvim/issues/808)) ([5a1212d](https://github.com/olimorris/codecompanion.nvim/commit/5a1212d1124618853a6e39ecdc98c003619564f1)) +* **workspaces:** handle multiple workflows better ([#806](https://github.com/olimorris/codecompanion.nvim/issues/806)) ([e463d65](https://github.com/olimorris/codecompanion.nvim/commit/e463d65ed4a5ba023acd58039b8f223eb82308c0)) + + +### Bug Fixes + +* [#501](https://github.com/olimorris/codecompanion.nvim/issues/501) `blink.compat` causing issues with completion menu ([c5065d0](https://github.com/olimorris/codecompanion.nvim/commit/c5065d02916d8c1bf5dd3baf9f0dd5e1f017fd57)) +* [#542](https://github.com/olimorris/codecompanion.nvim/issues/542) use vim.treesitter instead of nvim-treesitter. ([#543](https://github.com/olimorris/codecompanion.nvim/issues/543)) ([b741490](https://github.com/olimorris/codecompanion.nvim/commit/b741490066c0129554300e493f27767b760ffa16)) +* [#698](https://github.com/olimorris/codecompanion.nvim/issues/698) custom variables ([#711](https://github.com/olimorris/codecompanion.nvim/issues/711)) ([104f913](https://github.com/olimorris/codecompanion.nvim/commit/104f91331979be7c44fa9b766b8356863ab955cd)) +* [#732](https://github.com/olimorris/codecompanion.nvim/issues/732) can use deepseek with no config ([#733](https://github.com/olimorris/codecompanion.nvim/issues/733)) ([23d81a9](https://github.com/olimorris/codecompanion.nvim/commit/23d81a946e71c28cf2bdd025c1a3708f07f8d880)) +* [#769](https://github.com/olimorris/codecompanion.nvim/issues/769) ollama adapter ([#793](https://github.com/olimorris/codecompanion.nvim/issues/793)) ([8a98c71](https://github.com/olimorris/codecompanion.nvim/commit/8a98c71cbdbde65230824c01d10eed262717c7a7)) +* **adapter:** [#731](https://github.com/olimorris/codecompanion.nvim/issues/731) openai_compat adapter calling API too much ([#738](https://github.com/olimorris/codecompanion.nvim/issues/738)) ([184ca40](https://github.com/olimorris/codecompanion.nvim/commit/184ca40c1f802b7eb2b0dc5236dab56a10d9e96e)) +* **adapter:** [#769](https://github.com/olimorris/codecompanion.nvim/issues/769) ollama adapter model not being expanded ([6a78557](https://github.com/olimorris/codecompanion.nvim/commit/6a78557b3fbd69a0f1dcec3e962c353b0b79db85)) +* **adapters:** [#528](https://github.com/olimorris/codecompanion.nvim/issues/528) Gemini adapter fails if system prompt is removed ([7ca4364](https://github.com/olimorris/codecompanion.nvim/commit/7ca43642376d7768a3f2ecea2cd99ae9a792451a)) +* **adapters:** [#560](https://github.com/olimorris/codecompanion.nvim/issues/560) nil url in openai_compatible adpater ([5cc2693](https://github.com/olimorris/codecompanion.nvim/commit/5cc26934b0732dda03d311195e6d3f357e4f4a0c)) +* **adapters:** `on_exit` is called when request is cancelled ([#942](https://github.com/olimorris/codecompanion.nvim/issues/942)) ([df2c5f6](https://github.com/olimorris/codecompanion.nvim/commit/df2c5f6abe7a8e14eb792cf633fafee826d892a2)) +* **adapters:** `openai_compatible` no longer forces schema ([#914](https://github.com/olimorris/codecompanion.nvim/issues/914)) ([ba06239](https://github.com/olimorris/codecompanion.nvim/commit/ba0623998febc50859b172bfd7c8fe8bf180a22b)), closes [#918](https://github.com/olimorris/codecompanion.nvim/issues/918) +* **adapters:** dynamically getting copilot adapters when switching adapters ([c0a820e](https://github.com/olimorris/codecompanion.nvim/commit/c0a820e0184ac0714c608b06fd3822abe79492cb)) +* **adapters:** further openai_compatible fixes ([a84f6ff](https://github.com/olimorris/codecompanion.nvim/commit/a84f6ff4be745bcff7d69af96fdbdae2465a33a2)) +* **adapters:** gemini-2.0-flash-exp inline strategy ([#568](https://github.com/olimorris/codecompanion.nvim/issues/568)) ([a9faa69](https://github.com/olimorris/codecompanion.nvim/commit/a9faa69d3bf8308b78deab97292af2acc57d2f87)) +* **adapters:** handle multiline userdata in copilot adapter ([#770](https://github.com/olimorris/codecompanion.nvim/issues/770)) ([4282c68](https://github.com/olimorris/codecompanion.nvim/commit/4282c68476f60ea9328790508ff3b191b6ec512b)) +* **adapters:** inline editing with copilot closes [#1036](https://github.com/olimorris/codecompanion.nvim/issues/1036) [#1027](https://github.com/olimorris/codecompanion.nvim/issues/1027) ([#1037](https://github.com/olimorris/codecompanion.nvim/issues/1037)) ([aae4ad7](https://github.com/olimorris/codecompanion.nvim/commit/aae4ad785dea43b1adfb2d0c0c6b546fe09c1819)) +* **adapters:** max_tokens error with anthropic ([#1031](https://github.com/olimorris/codecompanion.nvim/issues/1031)) ([59c9109](https://github.com/olimorris/codecompanion.nvim/commit/59c91098f967ffd57f7ae90846a6f751d1c96d2d)) +* **adapters:** only try and replace str variables ([#999](https://github.com/olimorris/codecompanion.nvim/issues/999)) ([c5990b4](https://github.com/olimorris/codecompanion.nvim/commit/c5990b43d0801438aac4afaef7a779ff98297a85)) +* **adapters:** openai_compatible ([0d1388f](https://github.com/olimorris/codecompanion.nvim/commit/0d1388f7409f06e96ef2a7eadfa76c1dcfb74648)) +* **adapters:** openai_compatible hardcoded models endpoint closes [#1022](https://github.com/olimorris/codecompanion.nvim/issues/1022) ([#1038](https://github.com/olimorris/codecompanion.nvim/issues/1038)) ([4585695](https://github.com/olimorris/codecompanion.nvim/commit/4585695d2537ccc4cf9b14bc5559b6c29353a588)) +* **adapter:** variable substitution in 'raw'. ([#980](https://github.com/olimorris/codecompanion.nvim/issues/980)) ([6c628f5](https://github.com/olimorris/codecompanion.nvim/commit/6c628f56419ce8cca7b93cfaba89cde90a3a3a51)) +* allow for multiple completions in a single line ([3516e46](https://github.com/olimorris/codecompanion.nvim/commit/3516e46a62ebb151e6fa0afe4ac631432994cc3a)) +* **blink:** [#587](https://github.com/olimorris/codecompanion.nvim/issues/587) slash commands ([1b8ab18](https://github.com/olimorris/codecompanion.nvim/commit/1b8ab18cd0be76f13d13e6deaa56e6c33dce5a23)) +* **blink:** slash commands leaving brackes in chat buffer ([820bc52](https://github.com/olimorris/codecompanion.nvim/commit/820bc52c7b4a5a494773a3aa4e25e9e36659e378)) +* **chat:** [#622](https://github.com/olimorris/codecompanion.nvim/issues/622) parse messages when `show_header_separator` is on ([6040ce4](https://github.com/olimorris/codecompanion.nvim/commit/6040ce4b45e0b9378e4c51c2d86cf5f40b2af2c5)) +* **chat:** [#783](https://github.com/olimorris/codecompanion.nvim/issues/783) display settings in chat buffer ([#784](https://github.com/olimorris/codecompanion.nvim/issues/784)) ([cd712c5](https://github.com/olimorris/codecompanion.nvim/commit/cd712c5cafe9fcf2d17c5564bb2bd0141b16f15d)) +* **chat:** [#814](https://github.com/olimorris/codecompanion.nvim/issues/814) `show_header_separator` ([#816](https://github.com/olimorris/codecompanion.nvim/issues/816)) ([38793d3](https://github.com/olimorris/codecompanion.nvim/commit/38793d32f2d00df580e7648f7e8109817bc70855)) +* **chat:** [#887](https://github.com/olimorris/codecompanion.nvim/issues/887) header separator is now detected ([#902](https://github.com/olimorris/codecompanion.nvim/issues/902)) ([63e76c5](https://github.com/olimorris/codecompanion.nvim/commit/63e76c580d49eb30c147594a8bf9ca50f145f8f7)) +* **chat:** [#889](https://github.com/olimorris/codecompanion.nvim/issues/889) pinned file references always have same id ([#890](https://github.com/olimorris/codecompanion.nvim/issues/890)) ([cbac9bc](https://github.com/olimorris/codecompanion.nvim/commit/cbac9bc6552a0eb3c3b6b0a64adb5ddd71617dbc)) +* **chat:** [#906](https://github.com/olimorris/codecompanion.nvim/issues/906) ignore system prompt now works ([#909](https://github.com/olimorris/codecompanion.nvim/issues/909)) ([4d0e4dd](https://github.com/olimorris/codecompanion.nvim/commit/4d0e4dd80016a63ffcf28953ba13da72a1ccd953)) +* **chat:** [#915](https://github.com/olimorris/codecompanion.nvim/issues/915) parsing show_settings when InsertLeave is executed ([#916](https://github.com/olimorris/codecompanion.nvim/issues/916)) ([1103551](https://github.com/olimorris/codecompanion.nvim/commit/1103551e8ba5772522422017ca618a65d385db2c)) +* **chat:** agent's tools are no displayed individually ([d889210](https://github.com/olimorris/codecompanion.nvim/commit/d889210fd2c536940fb57ec0ad90d018e76c275c)) +* **chat:** always strip references from messages ([4c91a46](https://github.com/olimorris/codecompanion.nvim/commit/4c91a46136b6db99880c694313c9cabee24bd715)) +* **chat:** better cancelling of requests ([#828](https://github.com/olimorris/codecompanion.nvim/issues/828)) ([84e8098](https://github.com/olimorris/codecompanion.nvim/commit/84e80986e2915a003f1609d8e3107d7046c6e3b8)) +* **chat:** can debug adapters with `schema.model.default` as a function ([#797](https://github.com/olimorris/codecompanion.nvim/issues/797)) ([fbb15a8](https://github.com/olimorris/codecompanion.nvim/commit/fbb15a8b10d203c8c4df5fb938d5c9ac841725fa)) +* **chat:** change deepseek models ([7e211d5](https://github.com/olimorris/codecompanion.nvim/commit/7e211d522d0cf1f8cbd3b5f25d486e80f4276693)) +* **chat:** changing adapter in empty chat w/o system prompt ([#616](https://github.com/olimorris/codecompanion.nvim/issues/616)) ([3e64e6c](https://github.com/olimorris/codecompanion.nvim/commit/3e64e6c89af1c3e841bbd59b67265f475983c164)) +* **chat:** changing adapters for models with table type ([3a961bb](https://github.com/olimorris/codecompanion.nvim/commit/3a961bb2df0dd9245bdf2c9cc2e3fcdb7d9f3654)) +* **chat:** debug window height and width asfunctions ([#926](https://github.com/olimorris/codecompanion.nvim/issues/926)) ([1d67908](https://github.com/olimorris/codecompanion.nvim/commit/1d67908153855bacc28a766ecb0903c68f14b2d8)), closes [#905](https://github.com/olimorris/codecompanion.nvim/issues/905) +* **chat:** incorrectly applying settings ([#881](https://github.com/olimorris/codecompanion.nvim/issues/881)) ([2b0fe19](https://github.com/olimorris/codecompanion.nvim/commit/2b0fe199ca7d4b38895a8ab29b6320ca877809c6)) +* **chat:** message editing for adapters with model schema as a function ([b6dcc37](https://github.com/olimorris/codecompanion.nvim/commit/b6dcc378c95014b0a3e62593c9150f682206e61f)) +* **chat:** more graceful cancellations ([#739](https://github.com/olimorris/codecompanion.nvim/issues/739)) ([05c8853](https://github.com/olimorris/codecompanion.nvim/commit/05c8853ff0ff931a0daed569367d69524c792292)) +* **chat:** navigate between H2 headers in buffer only ([#781](https://github.com/olimorris/codecompanion.nvim/issues/781)) ([391aeae](https://github.com/olimorris/codecompanion.nvim/commit/391aeae6b0dbbe6e4d31bd0ac77a25fefa0ea9de)) +* **chat:** prevent double adding of references ([953b20d](https://github.com/olimorris/codecompanion.nvim/commit/953b20dabf63e4e5c7b30b9d32cd1136291aceb1)) +* **chat:** prevent duplicate references ([fb6444b](https://github.com/olimorris/codecompanion.nvim/commit/fb6444b739c01c2009a6adb6dbeea23c425b4c7c)) +* **chat:** show documentation for blink.cmp ([f41dbab](https://github.com/olimorris/codecompanion.nvim/commit/f41dbab850572b290e37e0b52244b8ccb9699870)) +* **chat:** slash commands from prompt library not visible ([3376f60](https://github.com/olimorris/codecompanion.nvim/commit/3376f6052217737cb936236d9069bd4a63ccbace)) +* **cmd:** strategy now respects `vim.g.codecompanion_adapter` ([b629005](https://github.com/olimorris/codecompanion.nvim/commit/b629005f0467471b4439192492cea2d49f22d52f)) +* **cmp:** extend default sources ([8b0ebb4](https://github.com/olimorris/codecompanion.nvim/commit/8b0ebb4092c3266746663443d1b8dff13e3ba723)) +* **completion:** [#597](https://github.com/olimorris/codecompanion.nvim/issues/597) blink configuration ([a1166d5](https://github.com/olimorris/codecompanion.nvim/commit/a1166d5a2e9249f81060d328859382be57eae79d)) +* **completion:** blink.cmp failing for slash commands ([6dd3309](https://github.com/olimorris/codecompanion.nvim/commit/6dd3309e6761d7ae8cbda386781eb48354f00db2)) +* **copilot:** show token output in chat ([6908fd7](https://github.com/olimorris/codecompanion.nvim/commit/6908fd71b589c9a4813f2dad9f460a6368003617)) +* **deepseek:** [#760](https://github.com/olimorris/codecompanion.nvim/issues/760) tooling and update adapter utils ([3d3b1a1](https://github.com/olimorris/codecompanion.nvim/commit/3d3b1a1f5deb5e06a86d67a9b792a263ea8e9191)) +* **deepseek:** messages order ([#700](https://github.com/olimorris/codecompanion.nvim/issues/700)) ([c911a8e](https://github.com/olimorris/codecompanion.nvim/commit/c911a8e6f0bc87f557587cc60b2af27d6151ad19)) +* delete diff buffers instead of closing ([#852](https://github.com/olimorris/codecompanion.nvim/issues/852)) ([4c48bd3](https://github.com/olimorris/codecompanion.nvim/commit/4c48bd336e900ed7bf3be95689ac1cc147b3701e)) +* **gemini:** remove cycle from system prompt ([d6b95bb](https://github.com/olimorris/codecompanion.nvim/commit/d6b95bb6cbf074e2e431c6a7f9acdd1af7cc9397)) +* **http:** prevent model from no schema.model ([#839](https://github.com/olimorris/codecompanion.nvim/issues/839)) ([abaf645](https://github.com/olimorris/codecompanion.nvim/commit/abaf645cfcb64bddc8f9124fb4bf71999372e752)) +* **inline:** [#516](https://github.com/olimorris/codecompanion.nvim/issues/516) switching adapters via `vim.g.codecompanion_adapter` ([0d91c08](https://github.com/olimorris/codecompanion.nvim/commit/0d91c086b30da050aa0a95dd9e69d16d9d88c587)) +* **inline:** [#531](https://github.com/olimorris/codecompanion.nvim/issues/531) inline edits in c++ buffers ([73e8ea5](https://github.com/olimorris/codecompanion.nvim/commit/73e8ea561e81cce3b9c75d825b8294e0a82fc4e9)) +* **inline:** [#613](https://github.com/olimorris/codecompanion.nvim/issues/613) negative column indexing ([977a521](https://github.com/olimorris/codecompanion.nvim/commit/977a521d1a3780d2278d1f175e37ca439b10a372)) +* **inline:** [#688](https://github.com/olimorris/codecompanion.nvim/issues/688) end_col out of range ([6d2a477](https://github.com/olimorris/codecompanion.nvim/commit/6d2a47753d25872ceaaafe9968ed6e3d2ed06bbd)) +* **inline:** ensure placement is in lower case ([#949](https://github.com/olimorris/codecompanion.nvim/issues/949)) ([04019d5](https://github.com/olimorris/codecompanion.nvim/commit/04019d5aefd70c7d44031c97e2f2126b6ed408af)) +* **inline:** setting placement from prompt library closes [#990](https://github.com/olimorris/codecompanion.nvim/issues/990) ([#991](https://github.com/olimorris/codecompanion.nvim/issues/991)) ([836dafc](https://github.com/olimorris/codecompanion.nvim/commit/836dafca125ec713f8a9379c69319f7889504824)) +* **inline:** tweak system prompt ([#754](https://github.com/olimorris/codecompanion.nvim/issues/754)) ([4985375](https://github.com/olimorris/codecompanion.nvim/commit/4985375c6256498ff6991179404557c16118568a)) +* logging in plugin ([#786](https://github.com/olimorris/codecompanion.nvim/issues/786)) ([ec30170](https://github.com/olimorris/codecompanion.nvim/commit/ec301700c01414abbe7bfb7883b80ebb9255762b)) +* **ollama:** allow users to customize the authorization header in get_models closes [#976](https://github.com/olimorris/codecompanion.nvim/issues/976) ([#985](https://github.com/olimorris/codecompanion.nvim/issues/985)) ([a4f1046](https://github.com/olimorris/codecompanion.nvim/commit/a4f1046e26e1ca537fcc21b881051c41f00e337c)) +* **openai:** [#619](https://github.com/olimorris/codecompanion.nvim/issues/619) o1 streaming ([83786d8](https://github.com/olimorris/codecompanion.nvim/commit/83786d878ebf46b50ae0a3717ad033934a80a390)) +* **openai:** [#619](https://github.com/olimorris/codecompanion.nvim/issues/619) o1 streaming ([8bfb496](https://github.com/olimorris/codecompanion.nvim/commit/8bfb49633b6cd9194807856636b6b63047a06ac4)) +* **openai:** [#892](https://github.com/olimorris/codecompanion.nvim/issues/892) handle different finish reasons ([#893](https://github.com/olimorris/codecompanion.nvim/issues/893)) ([70179b0](https://github.com/olimorris/codecompanion.nvim/commit/70179b00092a1ab45114448b256bb02c2fdb34de)) +* **openai:** model streaming ([#896](https://github.com/olimorris/codecompanion.nvim/issues/896)) ([28a03a3](https://github.com/olimorris/codecompanion.nvim/commit/28a03a38c7f9019fd303614d1d42b4539f324b97)) +* **slash_cmd:** improve symbols notifcations ([e6b36b4](https://github.com/olimorris/codecompanion.nvim/commit/e6b36b4448cb12215fb74372ce9868f61e046bea)) +* **slash_cmds:** `file` slash command will show hidden files with telescope ([39c7ca0](https://github.com/olimorris/codecompanion.nvim/commit/39c7ca07918999fa5daf8ef344a4490befa56858)) +* **slash_command:** create cache folder on windows for `/fetch` ([#756](https://github.com/olimorris/codecompanion.nvim/issues/756)) ([223e35f](https://github.com/olimorris/codecompanion.nvim/commit/223e35f8150f49a16ec19c966d822594c2bcf4b7)) +* **slash_commands:** [#515](https://github.com/olimorris/codecompanion.nvim/issues/515) help tags line limit can be customised ([e1b9876](https://github.com/olimorris/codecompanion.nvim/commit/e1b9876641e4ea0fa80f78339c260b16b729a21f)) +* **slash_commands:** [#803](https://github.com/olimorris/codecompanion.nvim/issues/803) mini_pick provider ([#804](https://github.com/olimorris/codecompanion.nvim/issues/804)) ([4a895b9](https://github.com/olimorris/codecompanion.nvim/commit/4a895b9f4385e8c04dd70411c3628423dfd6b8a6)) +* **slash_commands:** handle no content in `terminal` slash command ([aae2085](https://github.com/olimorris/codecompanion.nvim/commit/aae208550ade2d1cbcfaada2c72aeeee83b989b0)) +* **slash_commands:** prompt library now works with blink.cmp ([1027f47](https://github.com/olimorris/codecompanion.nvim/commit/1027f47c6c583a6b6592ae60a8008d780517792a)) +* **slash_commands:** scope constants to be local ([#787](https://github.com/olimorris/codecompanion.nvim/issues/787)) ([7daf143](https://github.com/olimorris/codecompanion.nvim/commit/7daf143c46c9710697ee3e17f2043664c0859951)) +* **slash_command:** stop double wrapping output from `fetch` ([c53a917](https://github.com/olimorris/codecompanion.nvim/commit/c53a917803888458ba7955e52870353345c9c48c)) +* **slash_command:** typescript ft not recognised ([#723](https://github.com/olimorris/codecompanion.nvim/issues/723)) ([c114e42](https://github.com/olimorris/codecompanion.nvim/commit/c114e4203d858aef99a835280e02a67a6d0d9082)) +* **tools:** [#503](https://github.com/olimorris/codecompanion.nvim/issues/503) shell redirection ([7023e58](https://github.com/olimorris/codecompanion.nvim/commit/7023e58a056cb834cd3620fec6c42de37469109b)) +* **tools:** add missing write flag attribute when editing files ([#966](https://github.com/olimorris/codecompanion.nvim/issues/966)) ([d5bc944](https://github.com/olimorris/codecompanion.nvim/commit/d5bc9441d55a9e6f81191ec96871ae4a48890997)) +* **tools:** better error handling ([0d8de44](https://github.com/olimorris/codecompanion.nvim/commit/0d8de4456c67a8867688497787d3794d5e09e751)) +* **tools:** can now chain jobs effectively ([#945](https://github.com/olimorris/codecompanion.nvim/issues/945)) ([2bab6d7](https://github.com/olimorris/codecompanion.nvim/commit/2bab6d78a3c4b05e852c80cadb13fbc8b1e0c99f)) +* **tools:** explictly add cwd to `plenary.job` call ([e78006d](https://github.com/olimorris/codecompanion.nvim/commit/e78006d5a09f0bc9ec78aab4f2a53a4d6bf40149)) +* **tools:** make stderr capturing work for "streaming" output ([#943](https://github.com/olimorris/codecompanion.nvim/issues/943)) ([199824e](https://github.com/olimorris/codecompanion.nvim/commit/199824e89b0c459cc489d176aac60ce6c909d5a1)) +* **tools:** output correctly in the chat buffer ([3a6acfb](https://github.com/olimorris/codecompanion.nvim/commit/3a6acfbc52989848b8264fe415380747a9af5615)) +* **tools:** remove ANSI sequences from all output ([2836849](https://github.com/olimorris/codecompanion.nvim/commit/2836849c6e1533fc54d06e88d52354374efc728d)) +* **tools:** strip ansi from cmd output ([679a9a5](https://github.com/olimorris/codecompanion.nvim/commit/679a9a513f61a5d4e622c7506599cad55f35e502)) +* use slash commands with `:CodeCompanion` cmd ([8cbf696](https://github.com/olimorris/codecompanion.nvim/commit/8cbf6960960bf386d85badad99152bf021554986)) +* **utils:** [#488](https://github.com/olimorris/codecompanion.nvim/issues/488) fix edge cases in visual selection ([84a8e89](https://github.com/olimorris/codecompanion.nvim/commit/84a8e8962e9ae20b8357d813dee1ea44a8079605)) +* **utils:** parse "boolean_scalar" fields when decoding yaml ([#635](https://github.com/olimorris/codecompanion.nvim/issues/635)) ([3bf8cac](https://github.com/olimorris/codecompanion.nvim/commit/3bf8cacd5298dfa1b103c52d8fd460b0be3b2d08)) +* **workflow:** can auto_submit the first prompt ([86f96d5](https://github.com/olimorris/codecompanion.nvim/commit/86f96d5419915b0711afbc93d948a3312bfc25b6)) +* **workflows:** wrap in `vim.schedule` for performance ([f0f6e26](https://github.com/olimorris/codecompanion.nvim/commit/f0f6e260a98c5ffe6ff6257227d1f429a4ecb07c)) +* **workspaces:** add description to urls from cache and check they exist ([#900](https://github.com/olimorris/codecompanion.nvim/issues/900)) ([2d08176](https://github.com/olimorris/codecompanion.nvim/commit/2d0817684206b6caa17c72c2a58d3e21641d96fe)) +* **workspaces:** workspace path constant cleared after first use ([#761](https://github.com/olimorris/codecompanion.nvim/issues/761)) ([b39acc1](https://github.com/olimorris/codecompanion.nvim/commit/b39acc15dfdf057f6e7f2d0b87e0183d3d151409)) +* **yaml:** handle nil values in show_settings ([9b44789](https://github.com/olimorris/codecompanion.nvim/commit/9b447897320ee149531b6d6d8f90b25d97880666)) + + +### Performance Improvements + +* **chat:** [#552](https://github.com/olimorris/codecompanion.nvim/issues/552) improve settings tree-sitter query ([#708](https://github.com/olimorris/codecompanion.nvim/issues/708)) ([c7e54d2](https://github.com/olimorris/codecompanion.nvim/commit/c7e54d28cc29e7cd2b221b585b90640c7fa21483)) +* **http:** improve resiliency of requests ([d99928b](https://github.com/olimorris/codecompanion.nvim/commit/d99928b5503788651b0b67bb3a577746763c7349)) + + +### Miscellaneous Chores + +* **main:** release 11.13.0 ([#687](https://github.com/olimorris/codecompanion.nvim/issues/687)) ([2051d27](https://github.com/olimorris/codecompanion.nvim/commit/2051d2707efb281b147dd883b42b23ad5bd4ed14)) +* release 11.12.1 ([fe73840](https://github.com/olimorris/codecompanion.nvim/commit/fe73840fdc18459715d0d67a4f2685a654c17385)) + + +### Code Refactoring + +* **agents:** agents are now in `strategies.chat.agents` ([3f437a6](https://github.com/olimorris/codecompanion.nvim/commit/3f437a62d55ad6efe14a4af2ffdc4e474696852a)) + ## [12.13.3](https://github.com/olimorris/codecompanion.nvim/compare/v12.13.2...v12.13.3) (2025-02-27)