dsh-codearts-auth: CodeArts Login and LLM Provider Management

前言

DeepSeek Harness (DSH) 采用插件化架构。在使用华为云 CodeArts 时,账号登录、Token 续期以及将 CodeArts 注册为本地 LLM 提供商是常见痛点。dsh-codearts-auth 插件通过自动化 OAuth 流程解决了这些问题,并提供了多账号管理和积分功能。

插件简介

这是一个由 anye-99 维护的 DSH 插件。它主要执行 CodeArts 的 IAM OAuth 登录流程(Portal → Callback → STS),在凭据过期前静默续期,无需手动打开浏览器。同时,它将 CodeArts 及其他 13 个 LLM 提供商注册到 DSH 中,使其可直接用于对话模型调用。

核心功能

  1. CodeArts 登录与续期
    执行标准的 IAM OAuth 登录流程。插件支持凭据的静默续期,在 Token 过期前自动刷新,保证持续可用。
  2. 多账号池管理
    支持 CodeArts 账号池的配置与管理。
  3. LLM 提供商注册
    注册 codearts 提供商(OpenAI 兼容端点)以及另外 13 个独立的 LLM 提供商。
  4. 积分管理
    针对部分提供商(如 buddy、qoder、loomy 等),支持积分余额查看、每日签到以及锁定永久积分。
  5. 模型列表开关
    提供模型列表的显示/隐藏功能,采用黑名单制,默认全部显示。

安装与启用

该包尚未发布到 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),即可调用其下注册的模型。

注意事项

  1. 命令变更:插件不注册斜杠命令。早期移除了 /codearts-login、/codearts-status、/codearts-refresh 等命令,所有操作统一在 Jet Hub 完成。
  2. 账号池模式:仅支持账号池模式,不再支持单凭据模式(即不再使用 CODEARTS_ACCESS_TOKEN)。
  3. 提供商特性差异:
    • 部分提供商(如 Loomy、TeleAgent)不支持自动续期。
    • TeleAgent 是唯一需要用户手动粘贴回调地址的提供商。
  4. 模型过滤:视觉(VL)模型不参与对话模型列表的选择。

总结

dsh-codearts-auth 解决了 CodeArts 登录和 Token 管理的自动化问题,并扩展了 DSH 的 LLM Provider 生态。如果你需要稳定地使用华为云 CodeArts 模型或其他合作厂商模型,该插件是必要的工具。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye