← 返回列表
未验证
为 DeepSeek HarnessDSH打造的 Web 客户端插件:给设置 →…
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/10 · 已提供中文文档
DeepSeek Harness Web 插件:在模型设置页面为第三方(pi-ai)提供商提供按模型配置的输入模态选择器(文本/图像)。
综合分
30
GitHub 分
30
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add DamonBao/dsh-models-input-modalities该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/18(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-api-gateway@deepseek-ai/dsh-api-remotes@deepseek-ai/dsh-api-settings-controller@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-client-ui-renderer@deepseek-ai/dsh-client-ui-settings-models@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-settings@deepseek-ai/dsh-util-values用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
DSH Models Input Modalities
CI
License: MIT
Node
pnpm
为 DeepSeek Harness(DSH)打造的 Web 客户端插件:给设置 → 模型页的每个第三方(pi-ai)提供方卡片补上一个「模型能力」折叠区,按模型声明它接受哪些输入(是否允许图片),以及它提供哪些推理等级——这正是模型页自带表单刻意没有开放的两个 per-model 字段。基于 DSH 0.1.5-alpha.1 构建(peer 范围 >=0.1.5-alpha.1 =0.1.5-alpha.1 =24.0.0、pnpm 11.7。
pnpm install
pnpm run check # typecheck + test + build + publint,与 CI 相同
单条命令:
pnpm run typecheck # host + client 双面
pnpm test # 纯函数行助手的 vitest 单测
pnpm run build # tsc d.ts + tsdown(lib/index.js 与 lib/client.cjs)
客户端产物是自包含 bundle:React、Cordis、ui-slots、ui-primitives 由 Web 壳供给,CSS Modules 内联,其余 @deepseek-ai/* 只做类型导入(构建期的 purity 检查强制)。
CI(.github/workflows/ci.yml)在 Node 22.22.0 与 24.x 上运行同一组门禁;tag 推送时校验 release tag 与包版本一致,审计 npm tarball 的文件清单,并运行消费者冒烟测试:把打包产物安装进一个临时工程(peer 范围对真实 registry 解析),再导入所有 Node 侧入口。
发布
发布由 Release 工作流(.github/workflows/release.yml)自动化:GitHub Release 一经发布即触发。它要求 release tag 与包版本一致(可选 v 前缀会被去掉),重跑完整质量门禁,打包 tarball,并通过 OIDC trusted publishing 带 provenance 发布到 npm——不涉及长期有效的 NPM_TOKEN secret。
一次性配置:在 npmjs.com 为 @jcy2387/dsh-models-input-modalities 配置 trusted publishing,授权仓库 DamonBao/dsh-models-input-modalities 与工作流 release.yml(不填 environment)。
dist-tag 跟随 GitHub Release 的 pre-release 勾选:正式 release(不勾选)发布到 latest——包括 rc 版本;pre-release 发布到按版本推导的频道 tag(0.1.1-alpha.2 → alpha,0.1.1-rc.1 → rc)。工作流是幂等的——npm 上已存在的版本会被跳过,部分失败后重跑只补发缺失的包。
一次典型发布:
先更新 package.json 里的 version,然后:
pnpm run check
VERSION="$(node -p "require('./package.json').version")"
git commit -am "release: $VERSION"
git tag "$VERSION"
git push origin main --tags
再为该 tag 创建并发布 GitHub Release。
Dependabot 每周检查 GitHub Actions 依赖。npm 版本更新有意未启用 Dependabot:它重新生成的 pnpm-lock.yaml 不含 workspace overrides,其 PR 无法通过 pnpm install --frozen-lockfile——请用 pnpm update 手动升级依赖。
仓库结构
.
├─ src/
│ ├─ index.ts # Host 半边:刻意留空的 apply(纯浏览器插件)
│ ├─ model-row.ts # 两个声明共用的行词汇(ModelRow、rowId)
│ ├─ image-input.ts # 每模型 input 声明的纯函数行助手
│ ├─ reasoning-efforts.ts # 每模型 reasoningEfforts 声明的纯函数行助手
│ └─ client/ # Web 半边:模型能力折叠区(controller、card、locales)
├─ tests/ # 纯函数行助手的 vitest 单测
├─ build/ # 自包含客户端 bundle 的 tsdown 预设
├─ .github/workflows/ci.yml # 校验 + tarball 审计 + 消费者冒烟
├─ .github/workflows/release.yml # GitHub Release 触发 npm 发布
├─ cordis.patch.yml
└─ README.md / README.zh.md
已知边界
- 休眠(尚未配置)的提供方卡片不渲染折叠区;新建的自定义提供方在保存之后才出现。
- 路由级开关——defaultInput、默认推理等级 reasoning、compat 系列——以及内置提供方目录模型的 modelOverrides 不在本插件范围内,仍直接在 $DSH_HOME/settings.yaml 中设置。
- 声明等级只是「声明」,不是「校验」:没有任何环节去问网关是否真的提供该等级、是否认这个拼写;等级究竟怎么上线(reasoning_effort、thinking budget、chat-template kwargs)由 compat 决定。网关不认的等级会在回合中途被提供方拒绝。
- 取消勾选再重新勾选某个等级,会从默认拼写重新开始(等级名本身,off 为空),不会恢复它之前带的值。
- 只读设置部署中折叠区可见但不可保存。
许可
MIT © jcy2387同作者(DamonBao)的其他插件
扫码进群