dsh-web-search-ddg
aooyoo
Zero-token DuckDuckGo search provider for the DeepSeek Harness (DSH) web seam — local headless browser, no API key, no m…
PROJECT TOPICS
PROJECT README
DeepSeek Harness 中文汉化插件 —— 在运行时把 DSH 的全部系统提示词、工具描述与运行时上下文翻译成中文。
这是一个纯运行时插件:它通过 DSH 的 system-prompt/assemble 瀑布钩子,在每次组装提示词后把模型可见的英文文本替换为中文,不修改任何 DSH 源码。卸载插件即完全还原英文。
当前内置 1788 条翻译,覆盖系统提示 sections、运行时上下文、全部工具描述与参数描述,以及 cordis 完整 API 目录(55 服务 + 56 事件)。
node_modules,升级 DSH 后依然有效[exit code: N]、[killed by signal: X]、[sandbox: ...]、[stderr] 等被 DSH 或前端解析的机器协议标记保留原样,不破坏下游解析sections / contexts / tools 三类翻译可分别关闭npm install dsh-harness-zh-cn
# 或
pnpm add dsh-harness-zh-cn
npm install git+https://github.com/zjl1989-li/dsh-harness-zh-cn.git
npm install <本仓库路径>
在 DSH Web GUI 的 设置 → 插件管理 中添加 dsh-harness-zh-cn,重启后生效。UI 会正确登记 bundle 并持久化配置。
在 profile 的 package.json 的 dsh.profile.bundles 列表中加入(cordis.yml 是自动生成文件,请勿直接编辑):
{
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"dsh-harness-zh-cn"
]
}
}
}
在 DSH profile 的 cordis.patch.yml 中追加插件条目:
- $plugin: dsh-harness-zh-cn
config:
includeSections: true
includeContexts: true
includeTools: true
重启 DSH 后生效。无需改动任何 DSH 源码。
| 配置项 | 类型 | 默认值 | 说明 |
|---|---|---|---|
includeSections |
boolean | true |
翻译系统提示词 sections(身份、工具指导等) |
includeContexts |
boolean | true |
翻译运行时上下文 contexts(沙箱策略、审批策略、委托声明等) |
includeTools |
boolean | true |
翻译工具描述与参数描述 |
verbose |
boolean | false |
调试日志 |
DSH 在每次模型请求前通过 ctx.systemPrompt.assemble() 组装提示词,组装过程会触发 system-prompt/assemble 瀑布事件。本插件在该瀑布的 next() 之后:
assembly.sections,将每个 section 的 text 经 translate() 汉化;assembly.contexts,汉化每个动态上下文文本;assembly.tools,汉化工具 description 并递归汉化 parameters 中的 description 字段。translate() 使用 dict/ 目录下的 JSON 字典,匹配顺序:
en 完全一致时直接替换;base + background 的边界);template: true 条目做整体正则替换($1、$2 引用捕获组)。机器协议标记与代码标识符一律保留。
本插件还带一个 client 半(浏览器端),配合 dsh-plugin-marketplace 使用:
window.fetch 对 /api/market/list 的响应;POST /api/harness-zh/translate 端点(用部署默认模型,一次调用翻译一批),结果写入 localStorage 缓存并自动刷新一次显示流畅中文;该翻译端点为插件自注册(
/api/harness-zh/translate),不修改 dsh-plugin-marketplace 源码;LLM 不可用时自动回退到词表翻译。
所有译文集中存放在 dict/ 目录,当前 5 个字典共 1788 条:
| 字典 | 条目数 | 覆盖内容 |
|---|---|---|
core.json |
23 | 身份行、沙箱/审批策略、委托声明、工作区指令 |
tools-fs-bash.json |
39 | read/write/edit/bash 工具与参数 |
tools-fs-core.json |
221 | pwsh/fs/cordis 工具、plan-mode、sandbox 等 |
tools-web-jobs-goal.json |
264 | web/jobs/goal/ralph/workflow/subagent 等 |
cordis-api.json |
1241 | cordis 完整 API 目录(55 服务 + 56 事件 + 方法/参数/返回值) |
字典格式:
{
"包名:键名": {
"kind": "section | context | tool | param | render | command | const",
"en": "英文原文(整句),或模板正则(当 template: true)",
"zh": "中文译文,模板中可用 $1、$2 引用捕获组",
"template": true
}
}
[status: ...]、[exit code: N]、[sandbox: ...]、<system-reminder> 等标记本身不动,仅译内部说明文字${...}、{{...}}、反引号代码片段不译欢迎通过 PR 补充或修正译文。
为避免频繁发布冗余版本,遵循以下约定:
npm deprecate 标记(不删除,符合 npm 生态惯例)历史教训:早期 0.1.0–0.2.2 在 2 小时内发布 6 个版本,多为逐个小改动发布,属冗余行为,已通过 deprecate 0.1.x 修正并在此固化策略。
本插件已通过 GitHub dsh-plugin topic 加入 DSH 社区插件生态:
dsh-plugin topic,仓库已自动收录,用户可直接搜索 harness-zh 一键安装dsh.bundle manifest + cordis.patch.yml),可提交 PR 加入精选列表MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。