dsh-codearts:在 DeepSeek Harness 中接入华为云 CodeArts 模型

前言

DeepSeek Harness(DSH)采用插件化架构,允许用户通过扩展来丰富功能。华为云 CodeArts 提供了包括 GLM-5.2、盘古、Qwen、DeepSeek 等在内的多种模型。要直接在 DSH 的对话窗口中使用这些模型,通常需要手动配置 API 密钥或切换外部界面。dsh-codearts 插件旨在解决这一割裂问题,将 CodeArts 的模型资源直接接入 DSH 的对话流中。

这是什么

dsh-codearts 是一个由 elegant01 维护的联网工具类插件。它的核心功能是将华为云 CodeArts 的模型服务通过插件形式挂载到 DSH 上,使用户无需离开 DSH 界面即可调用 CodeArts 的模型能力。

核心功能

插件实现了以下能力:
- 账号登录:使用 OAuth2 + DPoP 协议进行身份验证,在 DSH 设置卡片中点击即可完成登录,无需手动填写密钥。
- 自动续期:凭证有效期约 2 小时,过期前会自动续期;续期失败时会在界面上提示重新登录。
- 多账号轮转:支持添加多个账号。当某个账号的会话槽位被占满时,请求会自动切换至下一个可用账号,解决因并发限制导致的等待问题。
- 模型管理:通过配置项 enabledModels 控制模型选择器中出现的模型;支持自动发现模型清单(内置 / 限时福利 / agent-center)。
- 用量统计:统计本机的请求次数、Token 消耗及会话槽位占用情况。
- 视觉支持:支持图片输入。
- 降级方案:支持手动粘贴令牌,适用于脚本或排查场景。
- 命令行工具:提供 status、models、usage、identity、doctor、logout 等子命令。

安装与启用

插件需要从源码构建并部署到 DSH 的 profile 目录中。在项目根目录执行以下命令:

pnpm install && pnpm run build
node scripts/deploy.mjs [profileDir]

其中 profileDir 默认为 <用户目录>/.dsh/profiles/desktop。部署时需确保将构建产物(package.json、lib/、cordis.patch.yml)放入对应目录,并更新 profile 的 package.json、node_modules/.package-map.json、node_modules/.modules.yaml。

典型用法

  1. 打开 DSH 设置,找到 CodeArts 卡片,点击「使用华为云账号登录」。
  2. 浏览器会打开授权页,登录华为云账号。完成后会自动跳回本机,凭证写入 $DSH_HOME/.codearts-auth。
  3. 新建对话,在 provider 中选择 codearts,然后选择一个模型即可开始对话。

命令行工具

插件提供了命令行接口用于检查状态和查看详情:

dsh plugin --profile <profile> exec dsh-codearts status
dsh plugin --profile <profile> exec dsh-codearts models
dsh plugin --profile <profile> exec dsh-codearts usage
dsh plugin --profile <profile> exec dsh-codearts identity [--fix]
dsh plugin --profile <profile> exec dsh-codearts doctor
dsh plugin --profile <profile> exec dsh-codearts logout
  • status:查看登录状态与模型清单。
  • models:查看上游真实返回的模型列表(包含内置、限时福利、agent-center)。
  • usage:查看本机用量账本(非账号总额度)。
  • identity:查看账号稳定身份,--fix 可合并重复条目。
  • doctor:诊断环境,不涉及密钥内容。
  • logout:清除本地保存的凭证。

注意事项与限制

  • 凭证有效期:凭证有效期约 2 小时,过期前会自动续期。
  • 并发限制:上游对每个账号的并发会话数限制为 3 个。中途停止生成并不释放槽位,需等待约 1 分钟。建议添加第二个账号以实现自动轮转。
  • 身份识别:上游登录响应不返回用户标识,插件会再请求 /snap-manager/v1/current/user 获取稳定的 user_id。
  • 模型参数:模型参数(如 max_tokens)有实测上限,未实测模型使用保守值(65536)。
  • 用量统计:用量账本仅统计本机发出的请求,不等于账号总额度。
  • 合规性:仅供个人学习和研究使用,需遵守华为云及 CodeArts 的服务条款。

结尾

dsh-codearts 插件通过提供 OAuth2 登录、自动续期和多账号轮转机制,有效地解决了在 DSH 中调用 CodeArts 模型的集成问题。该项目采用 MIT 许可证,维护者 elegant01。

  • 目录页:https://www.skillhub.cn/plugins/elegant01/dsh-codearts
  • 源码:https://github.com/elegant01/dsh-codearts
羽毛球分组比赛记分
小程序二维码

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

小夜