故障排除
常见问题及其解决方法。
要调试 OpenCode 的问题,先从检查它存储在磁盘上的日志和本地数据开始。
日志
日志文件写入到:
- macOS/Linux:
~/.local/share/opencode/log/ - Windows:按
WIN+R并粘贴%USERPROFILE%\.local\share\opencode\log
日志文件以时间戳命名(例如 2025-01-09T123456.log),并保留最近的 10 个日志文件。
你可以用 --log-level 命令行选项设置日志级别,以获取更详细的调试信息。例如 opencode --log-level DEBUG。
存储
opencode 将会话数据和其他应用数据存储在磁盘上:
- macOS/Linux:
~/.local/share/opencode/ - Windows:按
WIN+R并粘贴%USERPROFILE%\.local\share\opencode
该目录包含:
-
auth.json- 认证数据,如 API 密钥、OAuth 令牌 -
log/- 应用日志 -
project/- 项目专属数据,如会话和消息数据- 如果项目位于 Git 仓库中,它存储在
./<project-slug>/storage/ - 如果它不是 Git 仓库,它存储在
./global/storage/
- 如果项目位于 Git 仓库中,它存储在
桌面应用
OpenCode Desktop 在后台运行一个本地 OpenCode 服务器(opencode-cli sidecar)。大多数问题由行为异常的插件、损坏的缓存或错误的服务器设置引起。
快速检查
- 完全退出并重新启动应用。
- 如果应用显示错误屏幕,点击 Restart 并复制错误详情。
- 仅 macOS:
OpenCode菜单 -> Reload Webview(在 UI 空白/冻结时有帮助)。
禁用插件
如果桌面应用在启动时崩溃、挂起或行为异常,先从禁用插件开始。
检查全局配置
打开你的全局配置文件并查找 plugin 键。
- macOS/Linux:
~/.config/opencode/opencode.jsonc(或~/.config/opencode/opencode.json) - macOS/Linux(较旧的安装):
~/.local/share/opencode/opencode.jsonc - Windows:按
WIN+R并粘贴%USERPROFILE%\.config\opencode\opencode.jsonc
如果你配置了插件,通过移除该键或将其设为空数组来临时禁用它们:
{
"$schema": "https://opencode.ai/config.json",
"plugin": [],
}检查插件目录
OpenCode 还可以从磁盘加载本地插件。临时将它们移开(或重命名文件夹)并重启桌面应用:
-
全局插件
- macOS/Linux:
~/.config/opencode/plugins/ - Windows:按
WIN+R并粘贴%USERPROFILE%\.config\opencode\plugins
- macOS/Linux:
-
项目插件(仅当你使用按项目配置时)
<your-project>/.opencode/plugins/
如果应用再次开始工作,逐个重新启用插件,找出是哪一个导致了问题。
清除缓存
如果禁用插件没有帮助(或某个插件安装卡住了),清除缓存以便 OpenCode 可以重建它。
- 完全退出 OpenCode Desktop。
- 删除缓存目录:
- macOS:Finder ->
Cmd+Shift+G-> 粘贴~/.cache/opencode - Linux:删除
~/.cache/opencode(或运行rm -rf ~/.cache/opencode) - Windows:按
WIN+R并粘贴%USERPROFILE%\.cache\opencode
- 重启 OpenCode Desktop。
修复服务器连接问题
OpenCode Desktop 既可以启动它自己的本地服务器(默认),也可以连接到你配置的服务器 URL。
如果你看到 "Connection Failed" 对话框(或应用始终无法越过启动画面),检查是否有自定义服务器 URL。
清除桌面默认服务器 URL
在主屏幕上,点击服务器名称(带状态点)以打开服务器选择器。在 Default server 部分,点击 Clear。
从你的配置中移除 server.port / server.hostname
如果你的 opencode.json(c) 包含一个 server 部分,临时移除它并重启桌面应用。
检查环境变量
如果你在环境中设置了 OPENCODE_PORT,桌面应用会尝试为本地服务器使用该端口。
- 取消设置
OPENCODE_PORT(或选择一个空闲端口)并重启。
Linux:Wayland / X11 问题
在 Linux 上,某些 Wayland 设置可能导致空白窗口或合成器错误。
- 如果你在使用 Wayland 且应用空白/崩溃,尝试用
OC_ALLOW_WAYLAND=1启动。 - 如果这让情况更糟,移除它并尝试在 X11 会话下启动。
Windows:WebView2 运行时
在 Windows 上,OpenCode Desktop 需要 Microsoft Edge WebView2 Runtime。如果应用打开后是空白窗口或无法启动,安装/更新 WebView2 并重试。
Windows:一般性能问题
如果你在 Windows 上遇到性能缓慢、文件访问问题或终端问题,尝试使用 WSL(Windows Subsystem for Linux)。WSL 提供了一个 Linux 环境,能与 OpenCode 的功能更无缝地配合。
通知不显示
OpenCode Desktop 仅在以下情况下显示系统通知:
- 在你的 OS 设置中为 OpenCode 启用了通知,并且
- 应用窗口未被聚焦。
重置桌面应用存储(最后手段)
如果应用无法启动且你无法从 UI 内部清除设置,重置桌面应用保存的状态。
- 退出 OpenCode Desktop。
- 找到并删除这些文件(它们位于 OpenCode Desktop 应用数据目录中):
opencode.settings.dat(桌面默认服务器 URL)opencode.global.dat和opencode.workspace.*.dat(UI 状态,如最近的服务器/项目)
要快速找到该目录:
- macOS:Finder ->
Cmd+Shift+G->~/Library/Application Support(然后搜索上述文件名) - Linux:在
~/.local/share下搜索上述文件名 - Windows:按
WIN+R->%APPDATA%(然后搜索上述文件名)
获取帮助
如果你在使用 OpenCode 时遇到问题:
- 在 GitHub 上报告问题 报告 bug 或请求功能的最佳方式是通过我们的 GitHub 仓库:github.com/anomalyco/opencode/issues (opens in a new tab) 在创建新 issue 之前,先搜索现有 issue 看看你的问题是否已被报告过。
- 加入我们的 Discord 要获得实时帮助和社区讨论,加入我们的 Discord 服务器:opencode.ai/discord (opens in a new tab)
常见问题
下面是一些常见问题及其解决方法。
OpenCode 无法启动
- 检查日志中的错误信息
- 尝试用
--print-logs运行,以在终端中查看输出 - 用
opencode upgrade确保你拥有最新版本
认证问题
- 尝试在 TUI 中用
/connect命令重新认证 - 检查你的 API 密钥是否有效
- 确保你的网络允许连接到提供商的 API
模型不可用
- 检查你是否已向该提供商认证
- 验证你配置中的模型名称是否正确
- 某些模型可能需要特定的访问权限或订阅
如果你遇到 ProviderModelNotFoundError,你很可能在某处错误地引用了一个模型。
模型应当像这样引用:<providerId>/<modelId>
示例:
openai/gpt-4.1openrouter/google/gemini-2.5-flashopencode/kimi-k2
要弄清楚你有权访问哪些模型,运行 opencode models
ProviderInitError
如果你遇到 ProviderInitError,你很可能有一个无效或损坏的配置。
要解决这个问题:
-
首先,按照提供商指南验证你的提供商设置是否正确
-
如果问题仍然存在,尝试清除你存储的配置:
rm -rf ~/.local/share/opencode在 Windows 上,按
WIN+R并删除:%USERPROFILE%\.local\share\opencode -
在 TUI 中使用
/connect命令重新向你的提供商认证。
AI_APICallError 和提供商包问题
如果你遇到 API 调用错误,这可能是由于过时的提供商包。opencode 会按需动态安装提供商包(OpenAI、Anthropic、Google 等)并在本地缓存它们。
要解决提供商包问题:
-
清除提供商包缓存:
rm -rf ~/.cache/opencode在 Windows 上,按
WIN+R并删除:%USERPROFILE%\.cache\opencode -
重启 opencode 以重新安装最新的提供商包
这会强制 opencode 下载提供商包的最新版本,通常能解决与模型参数和 API 变更相关的兼容性问题。
Linux 上复制/粘贴不工作
Linux 用户需要安装以下剪贴板工具之一,复制/粘贴功能才能工作:
对于 X11 系统:
apt install -y xclip
# or
apt install -y xsel对于 Wayland 系统:
apt install -y wl-clipboard对于无头环境:
apt install -y xvfb
# and run:
Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
export DISPLAY=:99.0opencode 会检测你是否在使用 Wayland 并优先选择 wl-clipboard,否则它会按以下顺序尝试查找剪贴板工具:xclip 和 xsel。