## 事象 [Specifying an Adapter and Model](https://codecompanion.olimorris.dev/extending/prompts.html#specifying-an-adapter-and-model) の設定を参考にして `opts.adapter.name = "copilot"` と `opts.adapter.model = "gpt-4o"` と設定しても、デフォルトの[[アダプタ (CodeCompanion)|アダプタ]]とモデルが利用されてしまう。 ### 再現手順 [[#設定]]をしてから、`hoge.md` を以下のように作成する ```markdown こんにちは ``` [[ビジュアルモード]]で全選択し、以下の[[Exコマンド]]を実行する。 ``` '<,'>CodeCompanion /trans_to_en ``` ### 期待値 [[GPT-4o]]でリクエストされること。 ### 実際の挙動 [[Claude 3.7 Sonnet]]でリクエストされてしまう。 ![[Pasted image 20250320203507.png]] ### 設定 ```lua return { "olimorris/codecompanion.nvim", dependencies = { "nvim-lua/plenary.nvim", "nvim-treesitter/nvim-treesitter", "j-hui/fidget.nvim", }, init = function() require("codecompanion.fidget-spinner"):init() end, opts = function(_, opts) local base_opts = { opts = { language = "Japanese", }, display = { chat = { auto_scroll = false, show_header_separator = true, }, }, strategies = { chat = { adapter = "copilot", roles = { llm = function(adapter) return " CodeCompanion (" .. adapter.formatted_name .. ")" end, user = " Me", }, keymaps = { send = { modes = { n = "<F12>", i = "<F12>" }, -- Ctrl+Enter }, }, }, inline = { adapter = "copilot", }, }, adapters = { copilot = function() return require("codecompanion.adapters").extend("copilot", { schema = { model = { default = "claude-3.7-sonnet", }, }, }) end, }, prompt_library = { ["Translate to English"] = { strategy = "inline", description = "選択したテキストを日本語に翻訳します", short_name = "trans_to_en", opts = { modes = { "v" }, ignore_system_prompt = true, -- ★この設定が効かない adapter = { name = "copilot", model = "gpt-4o", }, }, prompts = { { role = "system", content = "あなたは優れた開発者であり、日本語と英語のプロ翻訳者でもあります。", }, { role = "user", content = "<user_prompt>選択したコードドキュメントを英語に変換してください。</user_prompt>", }, }, }, }, } return vim.tbl_deep_extend("force", opts, base_opts) end, } ``` ### 環境 | 対象 | バージョン | | ----------------- | ----------- | | [[Ubuntu]] | 24.04.1 LTS | | [[Neovim]] | 0.10.3 | | [[CodeCompanion]] | `4f56b04` | ## 原因 不明 ## 解決方法 不明 ## 追加調査 (2026-07-12) > [!right-bubble] ![[minerva-face-right.webp]] > > [!caution] [[ミネルヴァ]](agent)により自動で記述された項目です。 > [[CodeCompanion]]側でアダプター解決まわりの修正がリリースされていた。 - [PR #1518](https://github.com/olimorris/codecompanion.nvim/pull/1518) (2025-05-28マージ): strategyごとにアダプターとモデルを併記して指定する仕組みが正式に実装された - [PR #1536](https://github.com/olimorris/codecompanion.nvim/pull/1536) (2025-05-31マージ): prompt libraryのアダプター上書きが壊れる問題([Issue #1521](https://github.com/olimorris/codecompanion.nvim/issues/1521))の修正。`adapters.resolve` の解決処理が改善された - 現行ドキュメントでも `opts.adapter = { name = "...", model = "..." }` の書式は有効とされている(docは `doc/configuration/prompt-library.md` に移動) ノート記載時の環境(`4f56b04`)より後に関連修正が複数入っているため、最新版で再検証する価値がある。