dsh-tongwen

DSH PLUGIN开发与运行时

仓库 wx-holmes/dsh-tongwen · npm dsh-tongwen

开发与运行时 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

书同文·车同轨是一款 DSH plugin,用九档统一收纳文件,为每次任务产出机器版与用户版双份交接,并支持跨会话白板与请求信箱。

一句话选型结论

按资料字段整理

dsh-tongwen 是开发与运行时类的 DSH 可安装插件,验证等级 L5 · 运行验证通过,安全审查为低风险,列出 5 项功能,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类开发与运行时 收录类型可安装插件 验证等级L5 · 运行验证通过 安全审查低风险
验证等级 L5 L5 · 运行验证通过
GitHub 星标 0 复刻 0 · 未关闭 issue 0
最近更新 2026-11-10 创建于 2026-10-31
README 10.4 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:wx-holmes/dsh-tongwen
  1. 1
    确认版本与运行环境

    兼容的 DSH 版本为 0.2.2-rc.1 等 2 个;版本不匹配时安装会报错。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本0.2.2-rc.1、0.2.1-rc.5版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名dsh-tongwen可用 npm view 查看包信息

能做什么

5 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-tongwen:DeepSeek Harness 的归档与跨会话交接插件

  • 九档顶层目录统一收纳
  • 机器版与用户版双份交接
  • 项目白板与请求信箱跨会话
  • 软删归档与版本恢复
  • 只追加审计日志

上游标签

archivedeepseek-harnessdshdsh-pluginhandoff

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-11-12): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询

风险详情

  • 结论说明 静态扫描 低;动态审计无结论(以下以静态为准)→ 总评级 低。
  • 风险计数 严重 0 / 高 0

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 验证等级 L5:安装和运行都在沙盒里跑通过,装完能直接用的概率高。
  • 静态安全审查为低风险,没有发现明显可疑行为。
  • 有可直接复制的安装命令,不用自己翻文档找入口。
  • 标注了兼容的 DSH 版本(0.2.2-rc.1 等 2 个),按版本装不容易报错。
  • 列出了 5 项功能,能直接看出它解决什么问题。

先想清楚的地方

  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在开发与运行时场景里给 DSH 补能力的人。
  • 想装完就能用、不想自己排依赖的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-tongwen当前 L5 · 运行验证通过 低风险 0 0.2.2-rc.1 等 2 个 有
deepseek-harness L3 · 安装规范通过 低风险 24.6 万 未标注 无
rea L4 · 沙盒安装通过 低风险 2.6 万 0.1.1-rc.2 有
dsh-TUI L4 · 沙盒安装通过 中风险 4,292 0.1.7-rc.2 等 5 个 有
mirage L3 · 安装规范通过 低风险 3,681 未标注 无
dashi-taskboard L4 · 沙盒安装通过 低风险 3,311 0.1.1-rc.2 有

仓库档案

开发与运行时
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方wx-holmes仓库 dsh-tongwen · 默认分支 main
分类开发与运行时dev
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue0 / 0 / 0收录时的数值,非实时
创建 / 更新2026-10-31 · 2026-11-10最后推送 2026-11-10
本站收录2026-11-01首次进入本站目录的时间

README 全文

10.4 KB
作者原文,中文版优先;只做安全转义,不改内容

书同文·车同轨(dsh-tongwen)

把「一个盘」当成一座档案馆:只收纳、只登记、只报告,不改你的文件内容,不评价你的东西。

  • 书同文:同一类东西进同一个类型目录,物理名全用 ASCII 小写短横线,中文只做显示名。
  • 车同轨:所有会话走同一套交接——机器版给自己读,用户版给人读,路径和格式都固定。
  • 互相认得:每个会话有地址、有名字、有状态;要投信就投地址,不用人转达,也不靠猜。

当前版本 0.5.48(变更明细见 CHANGELOG.md)。

九档(顶层白名单,常量,不可增删)

# 目录 中文名 放什么
1 handoff/ 交接 交接文件、索引、方向谱系、未闭环项、项目白板、请求信箱、时空名册
2 created/ 创造 干活产出的东西
3 downloads/ 下载 联网拉回来的东西
4 incoming/ 外来 你投喂的、从外部导入的
5 scratch/ 临时 中间产物、可弃草稿
6 archive/ 归档 软删落点、版本备份、恢复
7 logs/ 日志 只追加的审计
8 config/ 配置 插件版本、快照、清单
9 self/ 自身 AI 自己的文件。只收纳和报告,不解析内容

顶层只有这九个;新分类在九档里建二级目录。目录用到才建,不会预先铺空文件夹。

五条硬规则

  1. 顶层只有 9 档,不新建。
  2. 写文件前路径不确定,先调 locate / inspect_handoff 查证,不猜。
  3. 每次任务结束,机器版和用户版交接同时产出。
  4. 删除一律软删进 archive/trash/;scratch/ 真删要先问人。
  5. 这次要做的和上次方向冲突时,挂起问人。

二十三个工具

交接与任务

工具 干什么
locate 按关键词找已有实例,返回候选(档、类型、实例名、交接路径)
inspect_handoff 读一份交接:结构化字段 + 原文,可读历史版本
list_handoffs 列出实例,可按类型/状态/时间筛、分页
update_handoff 整节替换机器版交接的某一节(只允许第 3~6 节),自动留旧版备份
begin_task 登记一次任务:定档、定类型、定实例名,返回幂等键
end_task 结束任务:校验产物、写双份交接、版本化、更新索引、写审计
heartbeat 报一次心跳
restore 从 archive/trash 或 archive/versions 恢复文件
archive_handoff 把交接实例整份软删进 archive/trash(可 restore 找回),并从索引摘掉
housekeeping_report 生成「过期文件清扫报告」:列审计日志 / 账本日报 / 回收站 / 临时区里超过保留期的文件;只报告不删,删要你点头(默认每周自动出一份)
rollback_data 把白板/规范/索引页等数据文件回滚到历史版本;备份在 archive/versions/_data/,回滚前会再备份当前版,并写 logs/rollback.log 与 handoff/任务交接本/最近回滚.md

跨会话(多个会话之间传话,不用你中转)

工具 干什么
project_upsert 建或更新一块项目白板(目标、参与会话、分工、决定、当前一棒、待办、优先级 P0–P3);status: "done" 时自动移进 projects/done/
project_read 读一块白板(已归档的也能读)
project_list 列出所有白板(带优先级;已归档的标 archived)
inbox_send 给某个会话(或所有会话)留一条请求;to 认 dsh://session/ 与裸 id,写前先归一
inbox_list 看信箱:mine(发给我的)/ to(某人的)/ project / status 可叠加
inbox_close 把一条请求标记为处理完

时空地址簿(谁活着、住哪、地址是多少)

工具 干什么
space_list 地址簿:按地址/短句柄/状态/项目查会话;task:"这次要做什么" 按任务给时空排序(每条带 why,可审计的字面命中,不用向量);默认不列自己与已归档
space_register 给自己登记名字(工作区由工具自动补),写完回读校验;拿不到调用方就拒绝(E_NO_CALLER),绝不写错地址

地址:dsh://session/(投递用这个)、dsh://workspace/(只指桌面)、any(广播)。
名字:身份(工作区),如 书同文(韵柚)、意识(生命)、聊天(聊天 聊天);同一身份同一工作区出现第二个会话才加 ·#短句柄,旧会话冒充本体时标 ·旧壳。
状态:active(15 分钟内有写入)/ idle(24 小时内)/ stale(超过 24 小时)/ archived(工作区里已归档)/ stub(< 4 KB 空壳)/ orphan(磁盘有、归属表没有,仍能收信)。
不变式:同一个 sessionId 只留一行、同一个名字只留一行;写入前留 时空名册.md.bak;名册只许走工具,不许人手整份重写。
代登:没有调用方身份的空间(如后台/桥接)不能自登,由能证明归属的人按 workspace.json 代登并标 [代登]。
认自己:不要信信件里的 from/to,也不要信文件名和新鲜度;用 session_inspect 的 cwd + createdAt + turns.count 三样互证,或自己 shell 里的 $DSH_SESSION_ID。

定位与重启

工具 干什么
focus_context 开工前定位:给一句「这次要做什么」,只返回相关的规范页(带行号)、要看的请求、相关项目的白板与挂账;不相关的不推
restart_dsh 重启的唯一入口:arm 先广播「全时空重启」再排程(握手模式:天花板 90 秒,拿到硬证据才提前到 25 秒);别的会话看到广播就 ack 报「我收尾了」

器官(可选插件的能力路由)

工具 干什么
organ_list 列出所有器官(扫插件目录里的 organ.json):会什么能力、危险等级、入口类型
organ_call 按名片把能力路由到器官;写/危险动作先过 gate 报备,dryRun 只探路

相关性是怎么做的(不是向量)

focus_context 与开场简报都走同一套字面相关:把任务句切成词,对上主题表里的关键词(主题有各自权重,命中越多越靠前),再带上该主题指定的页面与行号。
它不做语义检索,命中理由可以逐条审计(why 里写的是命中了哪个词)。好处是可解释、不花 token、离线可用;代价是任务句太泛时找不到东西——所以它要求你写具体一点(「改重启脚本的握手」比「优化」有用得多)。

开场简报(每轮都带)

插件把这几件事写进系统提示,不用人复述:
交接根目录 → 你自己的地址 → 先读哪几页 → 有几块项目 / 当前一棒交给谁 → 有几条给你的请求 → 重启广播(若有)。
地址在装配期拿不到发起者时,会明说「查不到」并指向 space_list{includeSelf:true},绝不印别人的地址。

交接文件长什么样

handoff/
├── machine/YYYY-MM-DD/&lt;实例&gt;.machine.md    # 给 dsh 读:六个固定小节
└── user/YYYY-MM-DD/&lt;实例&gt;.user.md          # 给人读:五段大白话

机器版六节:身份 / 产物清单 / 目标与当前状态 / 方向锚点 / 事实 vs 假设 / 建议入口。
用户版五段:这是什么 / 里面有什么 / 做到哪了 / 下一步 / 别当真。

目录长什么样

&lt;根&gt;/
├── handoff/
│   ├── machine/&lt;日期&gt;/   user/&lt;日期&gt;/
│   ├── projects/&lt;项目id&gt;.md            projects/done/&lt;项目id&gt;.md
│   ├── inbox.jsonl                     请求信箱,只追加
│   ├── 时空名册.md                     地址簿(工具维护)
│   ├── 手册/                           规矩与手册(含《时空地址》《重启》等)
│   ├── 教训日记/&lt;日期&gt;-&lt;主题&gt;.md
│   ├── 任务交接本/当前状态.md
│   ├── index.machine.json
│   ├── directions.jsonl  open-items.jsonl
│   └── README.md                       交接总目录(自动重写)
├── archive/trash|versions|restored
├── logs/audit/YYYY-MM-DD.jsonl
├── config/plugins/tongwen-tonggui/{current.json,settings.json,self-snapshot.json,runtime-state.json,locks/,versions/}
└── self/

配置

cordis.patch.yml 里只有一个字段,管「九档建在哪」:

- insert:
- id: tongwen
name: dsh-tongwen
config:
root: &quot;./tongwen&quot;   # 留空则落在 &lt;用户主目录&gt;/tongwen;别填盘根(Windows 会 EPERM)

其余参数走 config/plugins/tongwen-tonggui/settings.json(插件只读),字段与默认值见 lib/config.js。

安装

dsh plugin --profile  add &lt;本目录绝对路径&gt;

或用插件管理器:

plugin_manager { action: &quot;install_bundle&quot;, target: &quot;&lt;本目录绝对路径&gt;&quot; }

装完重启 dsh 才生效。

冒烟与自检

node scripts/smoke-core.mjs            # 37 项:命名/路径/原子写/锁/配置/审计/ULID
node scripts/smoke-tools.mjs           # 45 项:23 个工具注册 + 建任务 → 双份交接 → 索引 → 总目录 → 项目优先级/归档 → 校验 → 归档
node scripts/smoke-session.mjs         # 13 项:首次启动建档 → 收尾 → journal → 异常中断补记 → 统计范围切换
node scripts/smoke-cross-session.mjs   # 15 项:项目白板 → 请求信箱 → 地址归一 → 任务串接 → 开场简报
node scripts/audit-roster.mjs [根目录] # 名册体检:行格式 / 地址唯一 / 名字唯一 / 是否在 workspace.json / 解析计数

都不碰真实盘根,全在临时目录里跑。

给其它会话的契约(一页版)

  • 要投信:inbox_send{to:&quot;dsh://session/&quot;},别用回执里的 id 猜。
  • 要认自己:$DSH_SESSION_ID 或 session_inspect 三证,别信信封。
  • 要登记:space_register{name:&quot;身份&quot;},工作区工具补;无调用方会拒绝。
  • 要重启:restart_dsh{action:&quot;arm&quot;} 先广播;看到广播就 ack。
  • 名字会漂、id 会漂、状态会变:拿不到就拒绝或明说,绝不回退默认值。

许可

MIT(见 LICENSE)。

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
dsh-tongwen 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:wx-holmes/dsh-tongwen` 即可。对应的 npm 包名是 `dsh-tongwen`。

dsh-tongwen 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

dsh-tongwen 安全吗?

低风险。静态扫描 低;动态审计无结论(以下以静态为准)→ 总评级 低。

dsh-tongwen 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

dsh-tongwen 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.2-rc.1、0.2.1-rc.5。

dsh-tongwen 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-tongwen 有哪些功能?

九档顶层目录统一收纳、机器版与用户版双份交接、项目白板与请求信箱跨会话、软删归档与版本恢复、只追加审计日志。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

开发与运行时
按星标排序,可作替代方案

rea

rea

L4 · 沙盒安装通过 2.6 万 星

dsh-TUI

dsh-TUI

Claude Code 风格全屏终端 UI:像素鲸鱼顶栏、实时工作状态行、思考流式展开。

L4 · 沙盒安装通过 4,292 星

mirage

mirage

把文件系统与 bash 提供者换成 mirage 虚拟工作区:文件工具与 shell 命令作用于挂载的资源(RAM、S3、Redis、Sla

L3 · 安装规范通过 3,681 星

dashi-taskboard

dashi-taskboard

把当前已安装并运行中的 Codex Taskboard 嵌入 DeepSeek Harness 侧边栏,并通过 Launcher 运行时描述

L4 · 沙盒安装通过 3,311 星

wx-holmes 的其它插件

1 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-11-12。