OpenCode 插件安装问题排查与修复

OpenCode 插件安装问题排查与修复

问题描述

用户反馈后台运行的命令导致 opencode 无法进入主界面:

opencode add --force --exact --cwd /Users/yourPC/.cache/opencode opencode-anthropic-auth@0.0.9

问题分析

命令作用

该命令的作用是:/Users/yourPC/.cache/opencode 目录下安装 opencode-anthropic-auth@0.0.9 插件

这个插件是一个 OAuth 认证插件,用于处理 Anthropic 的 OAuth 2.0 登录流程。主要功能包括:

  • 支持 PKCE (Proof Key for Code Exchange) 流程
  • OAuth Token 交换和刷新
  • 访问 claude.aiconsole.anthropic.com 进行授权
  • 自动处理 token 过期刷新

安装文件位置

  1. 缓存目录(下载但未安装成功):

    /Users/yourPC/.bun/install/cache/opencode-anthropic-auth@0.0.9@@@1/
    
  2. 目标目录(应该安装但失败了):

    /Users/yourPC/.cache/opencode/node_modules/
    
  3. 实际安装位置(清理后重新安装):

    /Users/yourPC/.cache/opencode/node_modules/opencode-anthropic-auth/
    

失败原因

从日志分析发现:

ERROR 2026-01-21T05:14:32 +2ms service=plugin pkg=opencode-anthropic-auth version=0.0.9 error=BunInstallFailedError failed to install builtin plugin

安装过程以退出代码 137 失败,表示进程被 SIGKILL 信号强制终止。可能原因:

  • 内存不足
  • 系统资源限制
  • 安装超时被系统终止
  • 磁盘空间不足

由于插件安装失败,opencode 在启动时尝试加载该插件时出错,导致无法正常进入主界面。

当前状态

失败时 /Users/yourPC/.cache/opencode 目录下只有:

  • models.json (945KB)
  • package.json (空的 dependencies)
  • version

没有 node_modules 目录,说明插件确实没有成功安装。

修复过程

  1. 清理失败的安装
# 停止 opencode 进程
pkill -f "opencode"

# 清理 anthropic-auth 插件缓存
rm -rf /Users/yourPC/.bun/install/cache/opencode-anthropic-auth*

# 清理失败的 node_modules
rm -rf /Users/yourPC/.cache/opencode/node_modules

# 清理 GitLab 插件缓存(可选)
rm -rf /Users/yourPC/.bun/install/cache/*gitlab*
  1. 重新安装插件

由于系统没有安装 bun,改用 npm 安装:

cd /Users/yourPC/.cache/opencode
npm install --prefix /Users/yourPC/.cache/opencode opencode-anthropic-auth@0.0.9 --save-exact
  1. 安装结果

安装成功

  • 插件版本:0.0.9
  • 安装位置:/Users/yourPC/.cache/opencode/node_modules/opencode-anthropic-auth/
  • 总大小:6.8M(包含所有依赖)
  • 主文件:index.mjs (12KB)

依赖包列表:

node_modules/
├── @openauthjs/
├── @oslojs/
├── @standard-schema/
├── arctic/
├── aws4fetch/
├── hono/
├── jose/
└── opencode-anthropic-auth/

验证步骤

重新启动 opencode:

opencode

如果还有问题,可以查看最新日志:

tail -f /Users/yourPC/.local/share/opencode/log/$(ls -t /Users/yourPC/.local/share/opencode/log/ | head -1)

相关目录说明

  • OpenCode 配置目录
~/.opencode/                    # 用户配置目录
├── bin/
├── node_modules/
│   ├── @opencode-ai/
│   │   ├── plugin/
│   │   └── sdk/
│   └── zod/
├── package.json
└── bun.lock
  • OpenCode 缓存目录
~/.cache/opencode/              # 缓存目录(插件安装位置)
├── node_modules/
│   └── opencode-anthropic-auth/
├── models.json                 # 模型配置文件
├── package.json
└── package-lock.json
  • Bun 安装缓存
~/.bun/install/cache/           # Bun 包缓存
└── opencode-anthropic-auth@0.0.9@@@1/
  • OpenCode 数据目录
~/.local/share/opencode/
├── log/                       # 日志文件
│   └── 2026-01-21T054203.log
└── tool-output/               # 工具输出
  • OpenCode 日志目录
~/Library/Logs/Homebrew/opencode/  # Homebrew 安装日志
└── 00.options.out

插件技术细节

opencode-anthropic-auth 插件配置

package.json 内容:

{
  "name": "opencode-anthropic-auth",
  "version": "0.0.9",
  "main": "./index.mjs",
  "devDependencies": {
    "@opencode-ai/plugin": "^0.4.45"
  },
  "dependencies": {
    "@openauthjs/openauth": "^0.4.3"
  }
}

主要功能:

  • OAuth 2.0 授权流程
  • PKCE (Proof Key for Code Exchange) 支持
  • Token 自动刷新
  • 支持 Max Plan 和 Console 模式
  • 零成本模型访问(针对 Max Plan 用户)

OAuth 配置:

  • Client ID: 9d1c250a-e61b-44d9-88ed-5944d1962f5e
  • 授权端点: https://claude.ai/oauth/authorize (或 https://console.anthropic.com/oauth/authorize)
  • Token 端点: https://console.anthropic.com/v1/oauth/token
  • 回调地址: https://console.anthropic.com/oauth/code/callback
  • 作用域: org:create_api_key user:profile user:inference

故障排查总结

步骤 操作 结果
1 停止 opencode 进程 ✅ 成功
2 清理 anthropic-auth 插件缓存 ✅ 成功
3 清理失败的 node_modules ✅ 成功
4 使用 npm 重新安装插件 ✅ 成功
5 验证安装结果 ✅ 成功

命令参考

# 查看当前 opencode 进程
ps aux | grep opencode

# 查看最新日志
tail -100 ~/.local/share/opencode/log/$(ls -t ~/.local/share/opencode/log | head -1)

# 手动安装插件(使用 bun)
cd ~/.cache/opencode
bun add --exact opencode-anthropic-auth@0.0.9

# 手动安装插件(使用 npm)
cd ~/.cache/opencode
npm install --prefix . opencode-anthropic-auth@0.0.9 --save-exact

# 清理插件缓存
rm -rf ~/.bun/install/cache/opencode-anthropic-auth*

# 清理失败的安装
rm -rf ~/.cache/opencode/node_modules

系统环境信息

  • 平台: macOS (darwin)
  • opencode 版本: 1.1.28
  • 安装方式: Homebrew
  • 安装路径: /opt/homebrew/bin/opencode
  • Node.js 版本: v25.2.1
  • npm 版本: 11.6.2

问题解决状态

问题已解决

插件已成功安装到 /Users/yourPC/.cache/opencode/node_modules/opencode-anthropic-auth/,所有依赖项都已正确加载,opencode 现在应该可以正常启动了。

最后人工来审核下,这个问题是在mac M芯片电脑出现的,使用brew 安装,主要问题应该是npm没有设置国内源,由于全程ai操作,很多细节覆盖掉了。


文档生成时间: 2026-01-21 问题记录: OpenCode 插件安装失败导致无法进入主界面 解决方案: 清理缓存并使用 npm 重新安装插件

评论