前言¶
在 DeepSeek Harness(DSH)里接智能体插件,常见模式是「你问一句,它答一句」就结束。调研、排任务、等审批、再按批准范围执行,往往要你自己串起来,普通编码会话也会被全局规则或工具策略牵住。
dsh-dot-plugin(社区目录名 1315577677/dsh-dot-plugin)给 DSH 一个独立的 Dot:持久 Agent Session、只读调研、独立风险评审、仅用户批准后的受限执行。它受 OpenAI Dots 能力模型启发,是独立开源项目,与 OpenAI 无隶属或背书关系,也不复刻其托管云电脑或大规模应用市场。
维护者:1315577677。分类:工作流。仓库:https://github.com/1315577677/dsh-dot-plugin。目录页:https://www.skillhub.cn/plugins/1315577677/dsh-dot-plugin。许可证:MIT(见 package.json)。当前资料中的版本:0.3.2。
这是什么¶
一句话:DSH Dot 是面向 DeepSeek Harness 的持久、只读优先、主动推进工作流插件,真实世界后果的操作必须经过用户批准。
Dot 有独立 Session 与工具策略,不会拦截你平时用来写代码的普通对话。工作线程大致为:只读查看已配置来源 → 判断是否值得做 → 写出具体提案 → 有后果时询问用户 → 仅执行已批准动作且仅用批准的工具 → 记录结果并延续长跑任务。
核心功能¶
| 能力 | 说明 |
|---|---|
| 持久 Dot Agent | 顶层 Agent/Session,从持久状态恢复,标题为 Dot |
| 任务编排 | 创建任务、分配 worker Agent、跟踪状态、处理批准、切换焦点 |
| Dot 工作区 UI | 独立 Session + 右侧栏:状态、批准、任务、计划、触发器、近期输出与来源 |
| 只读调研 | 全局工具白名单 + 作用域内单调的 tools.guard() |
| 真实来源 | 本地目录、公开/API URL、只读 MCP 工具 |
| 提案 | dot_propose_action 写入持久提案,不执行 |
| 独立风险评审 | 独立小模型对每条提案给出 low / medium / high 及理由 |
| 仅用户批准 | DSH 面板与 /dot 斜杠命令;无 Agent 工具可代为批准 |
| 受限执行 | 批准后该轮仅获得提案中的 execution_tools 及读类工具 |
| 任务与计划 | dot_add_task / dot_update_task;dot_schedule_task 使用 Host 的 schedule 服务 |
| 事件触发 | dot_register_trigger 与本地 webhook/服务入口 |
| 规则隔离 | 规则只作用于 Dot,不劫持其他 Session |
| 结果归因 | 执行结果只取自执行轮;中断轮记为失败 |
调研阶段默认允许 read、glob、grep、web_search、web_fetch;其余尽量用 tools.restrict() 去掉,并用 scoped tools.guard() 兜底拒绝越权调用。dot_schedule_task、dot_add_task、dot_register_trigger 在调研阶段仍可用于内部记账。
提案经 Reviewer 评级后,默认配置不会自动批准低风险项;若需要可配置 autoApproveLowRisk: true。
环境与架构要点¶
要求(摘自 README):
- DeepSeek Harness Desktop 或
dsh webprofile - Node.js >= 22
- pnpm
- DSH 中可用的默认模型路由
- 若要接真实应用:在 DSH 中配置对应的只读 MCP 工具
插件在 DSH 0.2.1-rc.2 系列上做过测试。
Host 侧为 DotRuntime(Dot Session、只读调研、提案存储、执行白名单);Client 侧为侧栏图标与主面板。Dot Agent 使用 standard 预设,再叠加 Dot 作用域提示词与工具。
安装与启用¶
资料中的构建与校验步骤如下(需 Node 与 pnpm,在插件源码目录执行):
pnpm install
pnpm build
pnpm test
将本地构建产物安装进 DSH(路径改为你的绝对路径):
plugin_manager install_bundle target=/absolute/path/to/dsh-dot-plugin
也可在 DSH Plugin Manager 界面中选择本地 bundle 目录安装。
Desktop 注意:Host 半会立即生效;Client 半(侧栏与面板)属于 web 启动图,安装或替换 Client bundle 后需完全退出并重新打开 DSH Desktop,不能只靠刷新。重开后侧栏出现 DSH Dot,Session 列表中出现 Dot Session。
默认 cordis.patch.yml 不含机器相关来源;在 config.sources 中配置真实只读来源后,需重新安装 bundle 或在 profile patch 中覆盖对应项。
配置来源与典型用法¶
dotWorkspace 是 Dot Session 的工作目录与文件沙箱写入范围,应包含你希望批准后 Dot 能写的文件。
本地目录示例(片段,与 README 一致):
- insert:
- id: dsh-dot-plugin
name: 'dsh-dot-plugin'
config:
enabled: true
agentPreset: standard
dotWorkspace: '/absolute/path/to/workspace'
sources:
- id: inbox
kind: directory
label: Local inbox
path: '/absolute/path/to/inbox'
readOnlyTools: [read, glob, grep, web_search, web_fetch]
executionTools: [write, edit]
公开 URL / API 来源使用 kind: url,Dot 通过 web_fetch 读取,例如:
sources:
- id: github
kind: url
label: GitHub issues
url: 'https://api.github.com/repos/owner/repo/issues?state=open&per_page=10'
通过 DSH MCP 连接 Gmail、Calendar、Slack、GitHub 等时,在 sources 中声明 kind: mcp,并在 readOnlyTools 中只暴露读工具(如 gmail_search、gmail_read)。
用户侧流程:Dot 在只读阶段查看配置来源并调用 dot_propose_action;在面板或 /dot 中审阅风险与提案;批准后同一 Session 进入执行轮,工具限于提案中的 executionTools 与读类工具。发送、发布、支付、删除、邀请、凭证访问等高风险动作应以草稿或准备步骤形式提案,用户可拒绝或通过规则收紧。
适用场景与注意¶
适合需要「长跑线程」的工作流:定期扫 inbox、Issue、只读 MCP 邮箱/日历,形成任务与计划,再在明确边界内写文件或调用已批准工具。不适合期望插件替你在无批准下改仓库、发信或删数据的场景。
插件以当前 DSH 进程权限运行;安装前请阅读仓库源码与 MIT 许可证,并只配置你信任的只读来源与 executionTools。SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系,本文事实以 GitHub README 与 package.json 为准。
结尾¶
dsh-dot-plugin 把「只读调研 → 提案 → 独立评审 → 用户批准 → 受限执行」收成一条持久 Dot 线程,且与普通编码 Session 隔离。进一步了解见目录页 https://www.skillhub.cn/plugins/1315577677/dsh-dot-plugin 与仓库 https://github.com/1315577677/dsh-dot-plugin。