DSH Dot 插件:持久化、只读优先、需用户批准的主动智能体

前言

在 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 web profile
  • 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。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜