前言¶
DeepSeek Harness (DSH) 采用插件化架构。在使用华为云 CodeArts 时,账号登录、Token 续期以及将 CodeArts 注册为本地 LLM 提供商是常见痛点。dsh-codearts-auth 插件通过自动化 OAuth 流程解决了这些问题,并提供了多账号管理和积分功能。
插件简介¶
这是一个由 anye-99 维护的 DSH 插件。它主要执行 CodeArts 的 IAM OAuth 登录流程(Portal → Callback → STS),在凭据过期前静默续期,无需手动打开浏览器。同时,它将 CodeArts 及其他 13 个 LLM 提供商注册到 DSH 中,使其可直接用于对话模型调用。
核心功能¶
- CodeArts 登录与续期
执行标准的 IAM OAuth 登录流程。插件支持凭据的静默续期,在 Token 过期前自动刷新,保证持续可用。 - 多账号池管理
支持 CodeArts 账号池的配置与管理。 - LLM 提供商注册
注册codearts提供商(OpenAI 兼容端点)以及另外 13 个独立的 LLM 提供商。 - 积分管理
针对部分提供商(如 buddy、qoder、loomy 等),支持积分余额查看、每日签到以及锁定永久积分。 - 模型列表开关
提供模型列表的显示/隐藏功能,采用黑名单制,默认全部显示。
安装与启用¶
该包尚未发布到 npm registry,需通过 Git 仓库安装。
dsh plugin --profile <name> add "https://gitee.com/iJetLi/deepseek-harness-codearts.git"
注:安装时需注意 pnpm 版本的兼容性。pnpm 10 与 11 在 allowBuilds 配置项的写法上存在差异,需根据报错提示正确配置 pnpm-workspace.yaml 中的放行键,否则可能导致安装失败。
典型用法¶
登录入口¶
在 DSH 的 Jet Hub 设置页找到 CodeArts 面板进行登录。
编程式调用¶
插件提供了对应的 Context API:
* ctx.codeartsAuth.login()
* refreshAccountCredential(refName)
* refreshAll(pool)
模型调用¶
在 dsh 的 Models 页面选择相应的 provider(如 codearts),即可调用其下注册的模型。
注意事项¶
- 命令变更:插件不注册斜杠命令。早期移除了
/codearts-login、/codearts-status、/codearts-refresh等命令,所有操作统一在 Jet Hub 完成。 - 账号池模式:仅支持账号池模式,不再支持单凭据模式(即不再使用
CODEARTS_ACCESS_TOKEN)。 - 提供商特性差异:
- 部分提供商(如 Loomy、TeleAgent)不支持自动续期。
- TeleAgent 是唯一需要用户手动粘贴回调地址的提供商。
- 模型过滤:视觉(VL)模型不参与对话模型列表的选择。
总结¶
dsh-codearts-auth 解决了 CodeArts 登录和 Token 管理的自动化问题,并扩展了 DSH 的 LLM Provider 生态。如果你需要稳定地使用华为云 CodeArts 模型或其他合作厂商模型,该插件是必要的工具。