CopilotChat.nvim icon indicating copy to clipboard operation
CopilotChat.nvim copied to clipboard

Misleading Error on Authentication Failure "Model not found: gpt-4o"

Open Bickor opened this issue 6 months ago • 1 comments

Copilot worked fine for a couple of days, until suddenly I would get the following error message: ...re/nvim/lazy/CopilotChat.nvim/lua/CopilotChat/client.lua:440: Model not found: gpt-4o

After some looking into the logs, it showed that the cause of the problem was an issue with the curl request failing to write to disk:

[ERROR Thu Jul 10 12:22:34 2025] /home/myuyser/.local/share/nvim/lazy/CopilotChat.nvim/lua/CopilotChat/init.lua:913: ...re/nvim/lazy/CopilotChat.nvim/lua/CopilotChat/client.lua:440: Model not found: gpt-4o                             
[WARN  Thu Jul 10 12:22:57 2025] /home/myuser/.local/share/nvim/lazy/CopilotChat.nvim/lua/CopilotChat/client.lua:396: Failed to authenticate with copilot: ...zy/CopilotChat.nvim/lua/CopilotChat/config/providers.lua:130: { "curl: (23) Failed writing received data to disk/application" }                                                                                                                                                                                         
[WARN  Thu Jul 10 12:22:57 2025] /home/myuser/.local/share/nvim/lazy/CopilotChat.nvim/lua/CopilotChat/client.lua:354: Failed to authenticate with copilot: ...zy/CopilotChat.nvim/lua/CopilotChat/config/providers.lua:130: { "curl: (23) Failed writing received data to disk/application" }                                                                                                                                                                                         
[WARN  Thu Jul 10 12:22:57 2025] /home/myuser/.local/share/nvim/lazy/CopilotChat.nvim/lua/CopilotChat/client.lua:359: Failed to fetch models from github_models: ...zy/CopilotChat.nvim/lua/CopilotChat/config/providers.lua:316: { "curl: (23) Failed writing received data to disk/application" }                                                                                                                                                                                   
[ERROR Thu Jul 10 12:22:57 2025] /home/myuser/.local/share/nvim/lazy/CopilotChat.nvim/lua/CopilotChat/init.lua:913: ...re/nvim/lazy/CopilotChat.nvim/lua/CopilotChat/client.lua:440: Model not found: gpt-4.1

After some digging, I was able to find the following issues that directed me to a solution: https://github.com/CopilotC-Nvim/CopilotChat.nvim/issues/463 -> https://github.com/nvim-lua/plenary.nvim/issues/536

Solution: Create the /run/user/1000 directory that was missing and assign it the proper permissions with sudo chown yourusername:yourusername /run/user/1000.

While this seems to be an issue with another plugin (nvim-lua/plenary.nvim), since we're using it as part of our setup for Copilot we should either suggest a solution or display the correct error so the user knows what's actually happening. In this case I believe this would be the right error to return: [WARN Thu Jul 10 12:22:57 2025] /home/myuser/.local/share/nvim/lazy/CopilotChat.nvim/lua/CopilotChat/client.lua:396: Failed to authenticate with copilot: ...zy/CopilotChat.nvim/lua/CopilotChat/config/providers.lua:130: { "curl: (23) Failed writing received data to disk/application" } since it's the initial error in the call chain.

Bickor avatar Jul 10 '25 19:07 Bickor

For me, the problem was with apparmor curl rules. Make sure, that in /etc/apparmor.d/curl there is:

  file rw /tmp/**,
  file rw /run/user/1001/**,

And then execute: apparmor_parser -r /etc/apparmor.d/curl

asmbk avatar Jul 11 '25 07:07 asmbk