DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

h958661134 /

h958661134/dsh-plugin-dot

Verified

Dot for DeepSeek Harness: a personal chief-of-staff agent with memory, tasks, safety rules, a session dispatch desk and an on-screen pet. DSH 个人总管插件

★ 2 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@a831e7fd

Dot 总管

给 DeepSeek Harness 配一位个人总管:记得你,替你盯住每件事,管着你的一群会话。

version tests DSH node license

快速开始 · 界面一览 · 怎么跟它说话 · 安全模型 · 常见问题 · 功能参考 · English

Dot 总管:左边是对话,Dot 一句话记下事务、提醒和偏好;右边是 Dot 窗口的「今天」页;右下角是小精灵

为什么要有 Dot

用 DSH 干活久了,事情会散在各处:这个会话里说过的截止时间、那个会话跑到一半在等你批准、三天前聊过的方案找不到了、侧栏越来越长。

Dot 是一个 DSH 插件。装上后会多出一个「Dot 总管」预设和一只小精灵:

  • 你随口说的事,它当场记下;没说时间也照记,说了时间才到点提醒;做完一勾就销账,勾错了能撤销。
  • 你开着的一群会话,它帮你看着:谁跑完了、谁卡住了、谁在等你,都会主动告诉你。
  • 凡是替你开口、花钱、对外、改动不可逆的事,它只起草,你点了才算。

灵感来自 ChatGPT Dots。所有数据只存在本机。

核心理念

理念 具体做法
1 先办,再用一句话汇报 「周五前把报价单发给老王」:一次工具调用就记下事务、截止时间、提醒,然后回一句「记下了:t3 周五 18:00,到点提醒你」。缺的信息用默认值补上,不追问
2 能不花 token 的就不花 /task /done /every 等快捷指令在本地执行,能听懂「周五18点」「30分钟后」「工作日」这类中文时间。每分钟一次的巡检是纯本地规则,不调模型
3 替你开口的事,一律你点了才算 付钱、密码交给你亲自做;发消息、删除、危险命令先问你;转告、派活、归档只出一张卡。这些由代码里的规则闸门强制,不靠提示词自觉
4 把每个会话当成在干活的同事 看、盯、搜、读、转告、派活、收纳:Dot 是你的会话调度台
5 越用越懂你 你纠正一次「以后先给结论」,它就记一条「工作偏好」,以后每一步都照着做

快速开始

要求:DeepSeek Harness >=0.2.0-rc.0 <0.3.0,Node.js 22 以上(DSH 自带)。不需要额外的 API key,Dot 用的是你在 DSH 里已经配好的模型。

1. 安装到 DSH

一行命令,直接从 GitHub 装:

dsh plugin --profile web add github:h958661134/dsh-plugin-dot

桌面版把 --profile web 换成 --profile desktop,并且先退出 DSH。命令行里,桌面版的 dsh 在安装目录下的 resources/runtime/cli/bin/dsh.cmd。想固定版本,在末尾加 # 和 Releases 里的版本号,比如 #v1.3.0。

也可以先下载再装:git clone https://github.com/h958661134/dsh-plugin-dot.git(或在 Releases 下载源码压缩包),然后 dsh plugin --profile web add ./dsh-plugin-dot;桌面版用户也可以在 DSH 的「插件」页面添加这个目录。

2. 完全退出 DSH 再打开

只关窗口不够,要从托盘或任务管理器里退出。重新打开后:

  • 新建会话时,「Agent 预设」菜单里有 Dot 总管;
  • 窗口右下角出现小精灵;
  • 左侧栏多一个「会话总览」入口。

3. 跟它说第一句话

选中 Dot 总管,随便说一件你这周要办的事,比如「周五前把报价单发给老王,到时候提醒我」。第一次见面时,Dot 会在回复末尾介绍自己,并问你要不要每天早上 9 点发简报。

界面一览

对话:一句话落地

你说一句话,Dot 一次调用就记下事务、提醒和偏好。每一轮回复下面有一张小卡片,列出这一轮记下了什么,可以直接点完成或改时间(见上方大图)。

小精灵:住在任务栏上的同事

动图:精灵在任务栏上溜达;来了一件逾期待办,它举起红色包裹、冒汗;勾掉后它吃下一颗星星,变绿、开心;换上小围巾;戴耳机陪你专注;勾掉专注的那件;换上小皇冠

动图由精灵自己逐帧画出(DOT_PET_FRAMES,见 docs/DESKTOP-PET.md),没有截屏。静态的三种姿态见 buddy.png。

小精灵面板:顶部是头像和一句话摘要;下面是跑完的会话、逾期事务卡片,今天的待办清单,内嵌发送按钮的输入框和常用指令

在 DSH 桌面版(Windows)里,小精灵站在任务栏上:空闲时左右溜达,你离开电脑就打盹,拖到半空松手会掉下来,甩一下会被扔出去。拖到屏幕边缘会吸附,并缩进去只露出一小条,不想让它走动就把它塞到边上。它仍然是插件的一部分,不用另外安装,DSH 退出时它也跟着退出。其他环境里,小精灵在 DSH 页面的右下角。

  • 动作就是状态:举着包裹,表示有几件事需要你,急事时包裹是红的;举着信封,表示有会话跑完了;冒汗,表示有事逾期;眼睛左右看,表示在干活。
  • 勾掉一件待办,它就吃一颗星星。不计分,不打卡,没有等级。
  • 专注陪伴:在待办上点耳机图标,它戴上耳机陪你 25 分钟,期间不走动、不冒气泡。到点问你勾掉、再来一轮,还是先这样。
  • 早晚各一次:早上说一句今天先办哪件;傍晚出一张收尾卡,剩下的可以一键推到明天(可撤销)。
  • 工作时长:连续干了 90 分钟,它会揉眼睛提醒你歇一会儿。右键「今日统计」里有按小时的柱状图。数按键默认关,打开后也只数次数,不记按了什么,数据只在本机。
  • 摸摸它(鼠标在它身上来回蹭)、把文字拖给它、右键换装(7 种,一开始都能选)。全屏或演示时它安静。
  • 右键菜单:打开 Dot、会话总览、今日简报、今日统计、专注、换装、暂停、安静模式,每项都带图标。
  • 六种状态:空闲、在忙、等你确认、刚做完、有事提醒(逾期、快到期、子任务卡住)、暂停。
  • 只放「需要你」的卡,最多 3 张;角标和手里的包裹也只数这些,Dot 的建议不算。比如某个会话跑完了,可以「打开」或「知道了」;某件事逾期了,可以「完成」或「推迟 30 分钟」。
  • 「今天」清单:今天要办的待办直接在面板里勾掉、推到明天,或者记一件新的;鼠标移上去会出现「稍后」和「专注」按钮;回执旁边带「撤销」。
  • 一行快捷输入,/task 之类的指令也能用。在任何地方按 Alt+Shift+D 都能打开它。
  • 点卡片上的「打开」「去处理」,会把 DSH 拉到前台并直接跳到那个会话。
  • DSH 不在前台时,同时发系统通知。

功耗:60 秒实测,AMD Ryzen 7 5800H(16 线程),Windows 11,2 倍缩放。

状态 单核占用 占整机 内存
v1.1 的精灵(对照) 0.99% 0.06% 203 MB
醒着,含随机溜达 1.87% 0.12% 225 MB
陪你休息 / 打盹 1.61% 0.10% 224 MB
陪你专注 1.38% 0.09% 225 MB
数按键,跟着打字 1.09% 0.07% 223 MB
贴边藏起来 0.96% 0.06% 224 MB

开销主要在重绘:透明窗口是软件渲染的,每动一下都要重画整个窗口。所以它平时 10 帧,只有走路、掉落、吃东西时才 30 帧;打盹 8 帧;贴边藏起来时 4 帧,而且不做呼吸动画。不想要动画,就把它塞到屏幕边上,开销和 v1.1 一样。测法见 docs/DESKTOP-PET.md。

会话总览:你的会话调度台

会话总览:顶部是在等你、在跑、已结束三个数字和搜索框;会话分成进行中、已结束两组,每张卡显示状态、待办进度、最近几步和操作按钮

左侧栏「会话总览」打开整页,每个其他会话一张卡:

  • 看:顶部是在等你、在跑、已结束三个数字,可以按「进行中」「已结束」筛选;会话分两组,在等你的排在最前。每张卡显示状态、用时、待办进度、最近几步、改了哪些文件、上下文用量,以及卡在哪(审批、提问、出错)。
  • 搜:顶部搜索框能搜所有会话里说过的话,包括 24 小时以前的会话;点结果直接打开。
  • 管:卡片上直接能打开、转告一句话、停止;让 Dot 盯着(结束时通知你并附总结)、改名、记为待办、归档(可撤销)收在「⋯」里。
  • 起名:不再有「未命名会话」,正式标题还没生成时用第一句话做临时标题。名字不清楚的会话(没标题、太笼统、重名、太长)会被标出来:在「⋯」里自己改,或者点「让 Dot 起名」,Dot 读完内容后一次性提出来,你点了才改,改完能撤销。

Dot 窗口:待办、排程、记忆、规则

待办页:顶部一行直接记新待办;下面按逾期、今天、之后分组,每组是一个圆角列表 规则页:试一试 send_email 会被怎么处理,下面是闸门流程和内置规则
待办:自动分成逾期、今天、之后、收件箱、等别人五组。鼠标移到一件待办上,可以放进今天、补提醒或改时间、交给 Dot 去办;展开能拆小步骤逐个勾、写备注、标「在等别人」。完成、放弃、推迟都能撤销。派给子代理的活挂在对应待办下面,能看到进度 规则:「试一试」填一个工具名和参数,看 Dot 会放行、先问你还是交给你。下面是闸门流程、每条规则和它拦过几次

打开 Dot 会话时,右侧栏会自动展开 Dot 窗口,一共五页:今天、待办、排程、记忆、规则。「今天」页顶部是问候和三个数字(需要你、今天要办、已逾期),下面依次是需要你处理的事、今天的待办和 Dot 的建议;建议是可选的,不计入角标。待办怎么分组、时间怎么理解,见 docs/TODO.md。

怎么跟它说话

不用记格式,像跟助理说话一样就行:

你说 Dot 做
「下周二前把合同改好,提前一天提醒我,这事很急」 记一件高优先级事务,截止下周二,周一另建一条提醒
「我不喝咖啡,开会别约在午饭后」 记两条长期记忆,以后安排事情时会参考
「提醒我精细化插件使用」 没说时间就不追问:记进今天的待办,不打扰你;要提醒的话再补一句时间
「每周一9点开周会」 记一件周期待办,勾掉后自动排下一次
「报价单发了」 找到那件事务标为完成,提醒一并删除
「老王还没回」 事务改为「等待中」,写明在等谁
「今天有什么事?」 出简报:今天要办的、逾期的、在等的、派出去的,以及其他会话最近做了什么
「帮我调研三家竞品的定价,整理成表」 记一件事务,派给子代理去做;你在面板上看进度,做完它给你结论
「我那几个会话都做到哪了?」 读各会话最近几轮,一个会话一句话地汇报:哪个做完了,哪个卡住了,哪个在等你
「开个新会话把测试补齐,做完告诉我」 起草任务说明;你点「开始」后它新开会话,并自动盯着
「以后上网查东西前先问我」 提议一条规则 web_* → ask,你确认后生效
「把我那些会话的名字整理一下」 读每个名字不清楚的会话在做什么,提出新名字,你点了才改
「别啰嗦,先给结论」 立刻照做,并记一条「工作偏好」

快捷指令(本地执行,不花 token)

指令 例子
/task <时间?> <内容> [!高|!低] /task 周五18点 交周报 !高、/task 准备周会;整理数据;写结论(「;」分出小步骤)
/done <id…> /done t3 t5
/due <id> <时间|无> /due t3 下周一10点
/remind <时间?> <内容> /remind 30分钟后 喝水、/remind 下班前 交周报;不写时间就记进今天、不提醒
/every <周期> <内容> /every 工作日18点 写日报、/every 每周一三五 9:30 站会
/note <内容> /note 我不吃辣
/brief 立刻出一份简报
/pause / /resume 暂停 / 恢复 Dot 的全部定时任务和有副作用的操作
/dot 查看全部能力和当前状态

全部指令见 功能参考。Dot 会话的输入框和小精灵的输入框里都能用。

安全模型

Dot 能替你做很多事,所以边界必须清楚,而且由代码强制,不只靠模型自觉。

flowchart LR
    A["Dot 想调用一个工具"] --> B{"规则闸门<br/>tools/pre-execute"}
    B -->|"付钱 · 转账 · 密码 · 密钥"| H["交给你<br/>Dot 告诉你做哪一步"]
    B -->|"发消息 · 删除 · 危险命令"| Q["先问你"]
    B -->|"你设的 block"| X["拦下"]
    B -->|"其他"| D["交给 DSH<br/>DSH 自己的权限照常生效"]
层 内容
内置规则(删不掉) 付钱、转账、密码、密钥、安全设置一律交给你;替你发消息、发帖、删除、危险命令(包括代码里的删除)一律先问你
你的规则 按工具名和参数关键词设 allow / preapproved / ask / handoff / block,可以带期限。规则本身的修改每次都要你确认
只起草的动作 给别的会话转告、新开会话派活、归档会话:Dot 只出一张卡,你点了才执行;归档能撤销
读到的内容只是资料 其他会话、网页、文件里的文字,不会被当成你的指令
作用范围 闸门只挂在 Dot 预设上,不影响你的其他会话。allow 的意思是「Dot 不额外打扰你」,不会绕过 DSH 自身的权限设置
暂停 /pause 后,所有有副作用的操作都会被拒绝,Dot 的定时任务全部暂停

写文件、改代码时,内容里出现「付款」「password」这类词不会被误拦。真被误拦了,可以直接让 Dot 加一条用关键词限定、可带期限的 preapproved 放行规则。

数据与隐私

  • 所有数据只存在本机的 $DSH_HOME/dot/state.json,人类可读,不上传任何服务。
  • Dot 不记录密码、密钥、验证码、证件号、银行卡号,你要求也会拒绝。
  • 写入采用「先写临时文件再改名」,不会写坏。文件损坏时会改名为 state.json.corrupt-<时间戳> 保留下来,Dot 会告诉你。
  • 不想让 Dot 看其他会话,把 dsh-plugin-dot 行的 config 设为 { watchOthers: false }。

配置

大多数人不需要改配置。需要时,在你 profile 的 cordis.patch.yml 里按 id 覆盖。

Dot 预设(preset-dot 里的 dot 行)

字段 默认 说明
timeZone 系统时区 IANA 时区,如 Asia/Shanghai
rules [] 固定规则 [{ tool, decision, note, match? }],模型删不掉
maxMemories 200 记忆条数上限
contextMemoryLimit 40 每步带进上下文的记忆条数
contextTaskLimit 15 每步带进上下文的事务件数
guide true 是否注入「Dot 工作手册」提示词
dataDir $DSH_HOME/dot 数据目录(绝对路径)
- id: dot
  name: dsh-plugin-dot/agent
  config:
    timeZone: Asia/Shanghai
    rules:
      - { tool: pwsh, decision: ask, note: 执行命令前先问我 }

Loader 会整体替换 config,所以要把整个 preset 定义复制过去再改。

全局行(dsh-plugin-dot 行)

字段 默认 说明
pet 桌面版(Windows)为 'desktop',其他为 true 'desktop' 用桌面精灵,true 只用 DSH 页面里的小精灵,false 都不要
watchOthers true false 时不监控其他会话

桌面精灵的原理和安全说明见 docs/DESKTOP-PET.md。

常见问题

装好了,但「Agent 预设」里没有 Dot 总管?

DSH 只在启动时加载插件。请完全退出 DSH(从托盘退出,或在任务管理器里结束进程)再打开。还不行的话,运行 dsh plugin --profile web list,看插件是否装进了你正在用的 profile。

预设里有一行起不来时,DSH 会把整个预设藏起来。打开 Dot 窗口,如果顶部提示「Dot 总管预设现在加载不起来」,展开「原因」就能看到是哪一行。1.1.0 及更早的版本在没有 web 服务的 DSH 组合里会这样(网页工具一直等 web 服务),现在已经修复:没有 web 服务时网页工具自动关掉,其余照常。

会多花很多 token 吗?

在 Dot 会话里,每一轮固定多出约 2.5k token:工作手册约 1.8k,工具说明约 0.7k。手册内容固定,能命中 KV 缓存,实际开销更低。快捷指令、巡检、小精灵、会话总览都在本地运行,不花 token。其他会话不受影响。

会影响我的其他会话吗?

规则闸门和工作手册只挂在 Dot 预设上。对其他会话,Dot 只读状态,显示在会话总览里;只有你点了按钮,它才会执行停止、转告、归档这类动作。不想让它看其他会话,设 watchOthers: false。

桌面精灵是怎么做到的?会不会是个独立程序?

DSH 不允许插件直接开桌面窗口,所以 Dot 的 Host 用 Windows 自带的 PowerShell + WPF 启动一个小窗口,并全程管着它:DSH 退出它就退出,崩了自动拉起,你在右键菜单里关掉的不会再出现。它只连 Dot 自己的本机接口,能做的事和 DSH 页面里的小精灵一样。不想要就设 pet: true。详见 docs/DESKTOP-PET.md。

系统通知没弹出来?

系统通知要求至少开着一个 DSH 页面(桌面版窗口或浏览器标签)。全部关掉时,通知会留在小精灵里,等你下次打开再看。

Dot 拦了一个不该拦的操作怎么办?

直接跟它说「这类操作以后不用问我」,它会提议一条用关键词限定的 preapproved 规则,你确认后生效。也可以在 Dot 窗口的「规则」页用「试一试」,看某个调用会被怎么处理。

数据想备份或迁移?

复制 $DSH_HOME/dot/state.json 就行,它是普通的 JSON 文件。

工作原理

展开看架构

Dot 是一个标准的 Cordis 插件 bundle,分两部分:

  • Dot 预设(dsh-plugin-dot/agent):注册「Dot 总管」agent 预设。包括工作手册提示词、7 个工具(dot_capture dot_tasks dot_memory dot_rules dot_brief dot_suggest dot_sessions)、快捷指令,以及 tools/pre-execute 规则闸门。
  • 全局 Host(dsh-plugin-dot):在 DSH 进程里监听会话和子代理事件,每分钟本地巡检一次,提供本机 HTTP 接口,并向网页端注入小精灵、Dot 窗口和会话总览。
flowchart TB
    subgraph DSH["DeepSeek Harness"]
      P["Dot 预设<br/>提示词 · 工具 · 快捷指令 · 规则闸门"]
      H["Host<br/>会话监控 · 巡检 · 本机接口"]
      S[("state.json")]
      Q["DSH 服务<br/>定时 · 子代理 · 会话记录 · 工作区"]
    end
    U["网页端<br/>小精灵 · Dot 窗口 · 会话总览"]
    P <--> S
    H <--> S
    P --> Q
    H --> Q
    U <-->|"同源 · 只接受本机"| H
  • 提醒和周期任务直接建在 DSH 的定时服务上,和 DSH 自己的「自动化任务」是同一套。
  • 搜会话优先用 DSH 的全文索引,索引没开时逐个扫描最近 30 天的会话。
  • 运行时不依赖任何 @deepseek-ai/* 包。纯 JavaScript ESM 加 @ts-check,不需要构建。

代码结构和 Host 接口见 功能参考,设计取舍见 docs/ 里的各版设计文档。

路线图

  • 记事、提醒、长期记忆、规则闸门、简报
  • 小精灵、Dot 窗口、子任务监控
  • 建议收件箱、从纠正里学偏好
  • 会话调度台:搜索、读档、转告、派活、收纳
  • 待办闭环:分组、小步骤、周期、等别人、推迟、交给 Dot,全部可撤销
  • 会话起名:临时标题,Dot 建议改名
  • 桌宠:住在任务栏上,专注陪伴、早晚问候、工作时长
  • 按项目(工作目录)分组的会话视图
  • 周报:这周各会话、各项目做了什么
  • 英文界面

想要什么功能,欢迎 提 issue。

参与开发

git clone https://github.com/h958661134/dsh-plugin-dot.git
cd dsh-plugin-dot
npm test        # 170 个测试,用 node:test,不需要装依赖

开发时建议用一个隔离的 DSH_HOME 起一个网页版 DSH 来试,不要动你日常用的 profile。详见 CONTRIBUTING.md。

致谢

  • DeepSeek Harness 提供了插件、定时、子代理、会话记录这些扎实的扩展点。
  • 产品灵感来自 ChatGPT Dots。

License

MIT

—/ 5

No ratings yet

Verified DSH bundle

Commit a831e7fd2b44

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout