Kutlukgit
dsh-ux-plugins
UX-enhancement plugins for DeepSeek Harness (dsh) — Cordis-based monorepo
- Stars
- 0
- Language
- TypeScript
- Created
- Aug 15, 2026
- Updated
- Aug 15, 2026
Introduction
DSH UX Plugins
为 DeepSeek Harness(dsh)提升使用体验的 Cordis 插件集(pnpm monorepo)。
A collection of UX-enhancement plugins for DeepSeek Harness (dsh), built on Cordis.
DSH 的核心是 everything is a plugin:本仓库中的每个包都是一个独立可发布的 Cordis 插件,通过官方公开扩展点接入,遵循官方插件规范(ESM、name/Config/inject/apply 导出形状、ctx.effect() 可逆注册、schemastery 配置校验)。
插件 Plugins
| 包 Package | 说明 Description |
|---|---|
@kutlukgit/dsh-ux-session-title | 自动为会话生成简洁可读的标题(确定性本地摘要,不依赖 LLM)。Auto-generate concise session titles. |
@kutlukgit/dsh-ux-tool-output | 工具调用失败时把结果改写为一行可读信息(含错误码)。Humanize failed tool-call output. |
@kutlukgit/dsh-ux-example | 插件骨架示例,贡献新插件时的模板。Plugin skeleton example. |
安装 Install
# 以 session-title 为例 / e.g. session-title
npx -y @deepseek-ai/dsh plugin --profile web add @kutlukgit/dsh-ux-session-title
插件当前仅托管于 GitHub 源码;npm 发布后上述命令方可直接使用。也可通过本地路径或 GitHub 安装源码版本。
开发 Development
要求:Node.js ≥ 22.19、pnpm 11(corepack)。
pnpm install # 安装全部 workspace 依赖
pnpm test # 全 workspace vitest
pnpm typecheck # 全 workspace tsc --noEmit
pnpm build # 全 workspace tsc → lib/
每个包独立可开发:cd packages/ux/<name> 后运行同样的脚本。
插件约定 Conventions
- 每个包
"type": "module"(ESM),构建产物lib/(JS)+lib/types/(d.ts) @deepseek-ai/cordis为 peerDependency,插件通过inject声明所需服务- 配置字段一律经 schemastery
Configschema 校验(cordis.yml 可改,无硬编码 tunable) - 所有注册走
ctx.effect()/ctx.on(),卸载自动回滚;waterfall 监听器必须调用next()
发布 Publishing
pnpm -r publish --access public # 发布全部包到 npm(需 npm 账号登录)
发布前更新各包 package.json 版本与 CHANGELOG.md。
兼容性 Compatibility
DSH 处于 developer preview,官方 API 可能破坏性变更。插件锁定 @deepseek-ai/* 的 ^0.1.0-rc.6 peer 版本,升级 DSH 后如遇不兼容请同步升级插件。