跳到主内容

dsh-commandcode-provider

76Star4Fork0Issue0Watching

将 Command Code 接入 DSH,提供模型目录、推理请求、图片输入和账户用量查看能力。

机审证据5/5方法论数据来源安装命令持续维护DSH 版本风险扫描
机审证据安装命令仓库已核验dsh-plugin Topic许可证READMEAI 百科
语言
TypeScript
License
MIT
分支
main
deepseek-harnessdshdsh-pluginllmllm-providernpmpluginprovider

安装

命令web profile
$ dsh plugin --profile web add @mars-sea/dsh-commandcode-provider

在终端中运行以上命令,通过 dsh CLI 安装此插件。可在右上角切换 Profile。 第一次用 dsh?看这篇新手教程

对话式安装

帮我安装 DeepSeek Harness 插件 Mars-Sea/dsh-commandcode-provider:先查看仓库 https://github.com/Mars-Sea/dsh-commandcode-provider 确认安全性,然后执行安装命令并验证插件加载成功。

把这段指令粘贴给 DSH Web GUI 里的助手,由它代你完成安装与验证。

一句话定位

这个插件把 Command Code 接入 DSH,让你可以在 DSH 的模型选择器中浏览并使用 Command Code 提供的模型。它还提供独立的设置页、账户用量查看和按套餐整理模型列表的功能。

核心能力

  • 接入 Command Code 模型:注册 commandcode 模型提供方,把 DSH 的对话、工具调用和流式输出转换为 Command Code 请求。
  • 同步模型目录:从 Command Code 获取实时模型列表,并在网络异常时使用本地缓存继续显示已有目录。
  • 显示模型使用信息:在模型选择器中标注最低套餐、活动优惠、图片能力和上下文窗口,并按套餐等级排序。
  • 按账户套餐筛选模型:默认隐藏订阅套餐无法使用的模型;账单信息不确定时会保留完整列表,实际权限仍由服务端判断。
  • 支持推理强度和图片输入:为已知模型提供可选推理强度;Vision 模型可接收图片,图片通过 DSH 附件服务读取。
  • 查看账户用量:通过 /commandcode 命令和设置页的账户卡片查看请求数、花费、Token、额度、时间窗口限制和订阅信息。

技术实现

  • 语言: TypeScript
  • 关键依赖: @deepseek-ai/dsh-llm、@deepseek-ai/dsh-settings、@deepseek-ai/dsh-credentials、React
  • 架构模式: DSH bundle 同时注册 Host 侧模型适配器和可配置 provider,并通过 Cordis patch 插入插件配置;Web 客户端另外注册 Command Code 设置页。账户用量由 Host 侧通过 Remote 网关获取,浏览器不直接持有 API key。
  • 入口文件: src/index.ts;模型请求与目录适配位于 src/adapter.ts,浏览器入口位于 src/client/index.ts。

适用场景

适合希望在 DSH 中使用 Command Code 账号和模型、并在同一个模型选择器里查看套餐与图片能力的用户。对于需要了解账户额度、请求花费或 5 小时/每周窗口用量的用户,也可以直接使用设置页或 /commandcode 命令查看。

前置依赖与兼容性

依赖最低版本说明
DSH 相关运行时^0.1.0-rc.6 peer 依赖需要 DSH 的 LLM、凭据、设置、客户端连接等服务;插件包声明了对应 peer 依赖。
Node.js>=22package.json 的 engines 字段要求。
React^18.2.0Web 设置页使用 React 渲染。
平台跨平台package.json 未声明 os 或 cpu 限制。
原生模块无未声明 node-pty、node:sqlite 等原生模块依赖。

安装方式

dsh plugin --profile web add github:Mars-Sea/dsh-commandcode-provider

配置项

配置类型说明默认值
apiKeyEnv字符串指定从 DSH 凭据服务或启动环境读取 API key 的名称。设置页保存 key 时也使用这个引用。COMMANDCODE_API_KEY
apiKey字符串直接写入插件组合配置的 API key;适合由宿主配置注入,优先级高于凭据引用。未设置
apiBase字符串Command Code API 的基础地址,便于使用默认地址以外的服务端点。https://api.commandcode.ai
workingDir字符串作为项目工作目录信息提交给 Command Code;留空时使用 DSH 进程当前目录。当前工作目录
modelsCachePath字符串保存模型目录缓存的位置,网络暂时不可用时用于回退显示。~/.commandcode/models-cache.json
requestTimeoutMs数字等待生成请求收到响应首字节的最长时间。60000 毫秒
streamIdleTimeoutMs数字流式响应连续无数据时,超过该时间就判定连接失效。300000 毫秒
filterModelsByPlan布尔值控制模型选择器是否隐藏超出账户订阅套餐的模型;关闭后显示完整目录。true

常见问题

Q: 这个插件需要 API key 吗?

A: 模型目录可以在没有 key 时浏览,但发送请求和查看账户用量需要可用的 Command Code API key。插件会先检查直接配置,再通过 DSH 凭据服务解析;没有凭据服务时才读取启动环境,最后回退到 ~/.commandcode/auth.json。

Q: 支持哪些图片输入?

A: 只有源码登记为 Vision 的模型接受图片,并且 DSH 需要启用附件服务。文本模型不会偷偷丢弃图片,而是返回不支持内容的错误。

Q: 为什么模型列表里没有某个模型?

A: 默认的模型选择器会按照账户订阅套餐隐藏超出权限的模型。账单查询失败、套餐未知或存在按需余额时会失败开放;关闭 filterModelsByPlan 也能显示完整目录,但服务端仍可能返回套餐权限错误。

Q: 长时间思考时请求中断怎么办?

A: 默认等待首字节 60 秒,并允许流空闲 300 秒。网络较慢或模型长时间不输出时,可以在设置页调大 requestTimeoutMs 或 streamIdleTimeoutMs;请求连接失败、限流和部分服务端错误会按 DSH 默认策略重试。

Q: 为什么请求返回 MODEL_NOT_IN_PLAN?

A: 这表示所选模型不在当前 Command Code 套餐中。可以改选当前套餐包含的模型,或调整账户套餐;模型列表中的套餐标记只用于提示,服务端才是最终权限来源。

Q: 支持 stop 序列吗?

A: 不支持。Command Code 的请求格式没有 stop 字段,带有该选项的请求会明确返回不支持选项错误。

Q: 设置页显示未配置,但请求仍然成功,为什么?

A: 可能是 key 来自官方 CLI 登录文件 ~/.commandcode/auth.json,而不是 DSH 凭据库。把 key 保存到设置页后,设置页可以准确显示已配置状态。

Q: 卸载插件会删除 API key 吗?

A: 不会。卸载命令只移除插件包和它的配置层,DSH 凭据库及 ~/.commandcode/auth.json 中的 key 会保留。

上手难度

入门 — 安装插件后主要通过“设置 → Command Code”填写 API key 和连接参数,再从模型选择器选择模型;需要根据套餐或网络情况调整选项时再查看高级配置。

已知问题与限制

  • 不支持 stop 序列;带有该选项的请求会返回 UNSUPPORTED_OPTION。
  • 图片输入受 Vision 模型清单限制,并依赖 DSH 附件服务;在含图片的会话中切换到文本模型也会被 DSH 拒绝。
  • 模型能力、套餐、优惠和峰谷价格是源码内的静态快照,官方目录或套餐变化后需要插件更新才能完全同步。
  • 模型目录刷新失败时会回退到本地缓存;缓存不存在或无效时,模型选择器可能没有可显示的旧目录,但显式请求模型仍由服务端处理。
  • 账户用量依赖 Command Code 的账户接口和 API key;各接口独立降级,部分接口失败时报告会保留其他可用数据。
  • 默认流空闲超时为 300 秒,极长的推理过程或网络持续停顿超过该值仍会被判定为超时。
  • 插件只读取官方 CLI 的 ~/.commandcode/auth.json 作为最后兜底,不读取 pi/OMP 等其他工具的认证文件。

查看使用指南 →

该插件的安装步骤、关键要点、FAQ 与兼容性说明(基于已收录字段派生)。

收录徽章

Listed on deepseek-plugin.org
[![Listed on deepseek-plugin.org](https://img.shields.io/badge/listed_on-deepseek--plugin.org-007EC6)](https://deepseek-plugin.org/plugins/Mars-Sea/dsh-commandcode-provider)

把这段 markdown 粘贴到你的 GitHub README,链接回本插件详情页。徽章只声明已被本站收录,不代表安全认证。

返回插件目录