🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

文档体系体检 rezon-aki/dsh-doc-kit

DeepSeek Harness
rezon-aki35 天前有提交已提供中文文档扫描:含敏感能力

检查文档索引与注入层配额,发现漂移并生成报告

28.1/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add rezon-aki/dsh-doc-kit
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
dsh 原生插件 · dev
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 35 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件
查看扫描证据(共 12 处,展示前 12 条)
  • 读取本地文件
    lib/index.js:25
    if (!existsSync(srcDir)) return '包内没有 skills/'
  • 读取本地文件
    lib/index.js:27
    for (const entry of readdirSync(srcDir, { withFileTypes: true })) {
  • 读取本地文件
    lib/index.js:30
    if (!existsSync(from)) continue
  • 读取本地文件
    lib/index.js:32
    const next = readFileSync(from, 'utf8')
  • 读取本地文件
    lib/index.js:34
    try { cur = readFileSync(to, 'utf8') } catch { }
  • 写入本地文件
    lib/index.js:36
    mkdirSync(dirname(to), { recursive: true })
  • 写入本地文件
    lib/index.js:37
    writeFileSync(to, next)
  • 读取本地文件
    lib/lint.js:25
    const bytes = (p) => { try { return statSync(p).size } catch { return null } }
  • 读取本地文件
    lib/lint.js:26
    const read = (p) => { try { return readFileSync(p, 'utf8') } catch { return null } }
  • 执行外部命令固定命令
    lib/lint.js:60
    const out = execFileSync('git', ['-C', cwd, 'status', '--porcelain', '--', path], {
  • 读取本地文件
    lib/lint.js:97
    const missing = extractIndexPaths(l1Text, ws).filter((p) => !existsSync(p))
  • 读取本地文件
    lib/lint.js:104
    const targets = [l1, join(ws, 'docs/machine.md'), join(ws, 'docs/workflow.md')].filter((p) => existsSync(p))
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

文档体系体检:只读工具 doc_lint(注入层配额 / 被禁措辞 / 索引路径 / 是否进 git)+ 随包 doc-governance 技能

README

由 DeepSeek 最新模型翻译生成
dsh-doc-kit 不往 AI 的上下文里塞「记忆」,而是把事实留在文档里。 本插件只做两件事:给文档体系做体检(doc_lint),并附带一套文档治理规则(doc-governance 技能)。 为什么放弃记忆插件路线 记忆插件的出发点是「让 AI 记住」:把对话里的事实抽成条目,常驻注入 systemPrompt,从此每轮都带着。 它确实解决了「记不住」,但代价在入库之后才显现: - 条目常驻,且只增不减:每一条都永久占注入预算,模型每轮都要读一遍——记得越多,注意力越贵。 - 条目是二次加工的产物:事实被抽离原文就开始失真;整理动作、审批回执也容易被写成「事实」,在注入层里长期占着预算。 - 它会长成一个需要维护的数据系统:为了让条目不过期、不超预算、不写错,得再养一套治理层——预算看门狗、整理到期提醒、提案队列、审批界面、备份与断点续跑。这套治理层越做越完整,越说明记忆路线自身的维护成本下不来。 - 真源分裂:同一个事实既在文档里、又被复制成一条记忆,两边各改各的,漂移无从对齐。 所以记忆插件最后的问题不是「记不住」,而是「记得太多、没人管」——这正是我们放弃它、转投文档路线的原因。 换成什么:文档管理路线 - 事实的唯一真源就是文档:docs/、CONTEXT.md、项目 handoff。要改事实,改文档那一处。
展开完整文档(README 剩余 1 节)
dsh-doc-kit

不往 AI 的上下文里塞「记忆」,而是把事实留在文档里。
本插件只做两件事:给文档体系做体检(doc_lint),并附带一套文档治理规则(doc-governance 技能)。

为什么放弃记忆插件路线

记忆插件的出发点是「让 AI 记住」:把对话里的事实抽成条目,常驻注入 systemPrompt,从此每轮都带着。
它确实解决了「记不住」,但代价在入库之后才显现:

- 条目常驻,且只增不减:每一条都永久占注入预算,模型每轮都要读一遍——记得越多,注意力越贵。
- 条目是二次加工的产物:事实被抽离原文就开始失真;整理动作、审批回执也容易被写成「事实」,在注入层里长期占着预算。
- 它会长成一个需要维护的数据系统:为了让条目不过期、不超预算、不写错,得再养一套治理层——预算看门狗、整理到期提醒、提案队列、审批界面、备份与断点续跑。这套治理层越做越完整,越说明记忆路线自身的维护成本下不来。
- 真源分裂:同一个事实既在文档里、又被复制成一条记忆,两边各改各的,漂移无从对齐。

所以记忆插件最后的问题不是「记不住」,而是「记得太多、没人管」——这正是我们放弃它、转投文档路线的原因。

换成什么:文档管理路线

- 事实的唯一真源就是文档:docs/、CONTEXT.md、项目 handoff。要改事实,改文档那一处。
- 注入层只放索引:全局 / 工作区 AGENTS.md 里只有「哪里有什么、什么时候去读」,不放事实本身。
- 模型按需读,不靠「背」:需要时 grep / read 当场取,读完即走。注入层因此恒定小,成本不随事实增长。
- 治理交给 git:文档天然有 diff、回退与历史,不需要再自造备份、事件日志和审批机器。

代价要说清楚:模型不再「自动记得」,需要时得多一次查找。换来的是注入层稳定、真源单一、维护成本不随内容膨胀。

这条路线的失效模式,就是本插件要补的洞

文档路线不是没有风险,只是它的风险看得见:索引指向的文件改名/删掉了、注入层被人一点点塞胖、文档里混进决策史、新文档忘了进 git。
这些漂移不会报错,只会慢慢烂掉——而「文档体系自己会不会烂」通常没人查。

doc_lint 一次调用把它们变成报告:

- quota(FAIL):L0 / L1 超出自律配额(默认 2 KB / 4 KB)——有人把事实写进了注入层。
- banned(FAIL):注入层出现「曾用 / 已废弃 / 已被推翻 / 别再试」这类措辞——过程凭证混进来了。
- index(WARN):索引点名的文档不存在——指向已经漂移。
- git(WARN):治理文件未跟踪——没有历史,漂移无从发现。

再配一份随包分发的 doc-governance 技能,给「该写进哪一层、写前先查什么、多久体检查一次、对外发布前看什么」一套可执行规则。
检查给事实,技能给规则——两者加起来才是完整的文档治理。

为什么用轻量的 doc-kit,而不是再写一个记忆插件

| | 记忆插件路线 | 文档路线 + dsh-doc-kit |
| 事实放哪 | 抽成条目,常驻注入 | 文档本身,按需读取 |
| 常驻成本 | 每条记忆都占预算,随积累增长 | 只有索引,恒定小 |
| 真源 | 文档 + 条目两份,易漂移 | 单一(文档) |
| 版本与审计 | 要自造(备份 / 事件日志) | git 原生 |
| 维护对象 | 条目库 + 一整套治理 / 审批机器 | 文档本身 |
| 工具复杂度 | 存储 + 注入 + 循环 + UI | 只读、零依赖、无 UI、不调 LLM |
| 失效模式 | 条目过时、膨胀、退化成回执 | 索引漂移(doc_lint 直接查出) |

一句话:doc-kit 不管理任何数据。它没有存储、没有注入、没有定时器、没有模型调用,只是把「文档体系有没有烂」变成一次只读检查,外加一份写文档的规则。
所以它不会成为下一个需要维护的系统——这正是它在记忆插件之后被需要的原因。

用法

安装:插件面板(侧栏 Plugins → Add plugin 填 github:rezon-aki/dsh-doc-kit),或命令行 dsh plugin --profile web add github:rezon-aki/dsh-doc-kit;重启 dsh web 生效。

装好后让模型跑一次:

doc_lint

输出形如(本机实测):

doc_lint:通过 [PASS] quota:L0 599 B / 配额 2048;L1 652 B / 配额 4096
[PASS] banned:无决策史措辞 [PASS] index:6 条路径全部存在 [PASS] git:已跟踪(3 个)

默认体检当前会话的工作区;在别处体检传 workspaceRoot。
四项检查的具体规则在 lib/lint.js,工具参数在 lib/index.js——README 只讲为什么,细节看代码与技能本身。

doc_lint 全程只读:它报告问题,不改任何文件。

卸载:dsh plugin --profile web remove dsh-doc-kit。技能库里的 doc-governance 是技能库自己的文件,不会被自动删除。

它明确不做什么

- 不注入任何 prompt(AGENTS.md 的分层 / 优先级 / 预算由平台原生机制负责)。
- 不自动改写任何文件;往注入层加内容仍需你同意。
- 不替你做判断:软检查只提示,处理与否由你决定。

License

MIT
预览分享卡片长什么样 ↓rezon-aki/dsh-doc-kit
分享 · DeepSeek Harness Hub
rezon-aki/dsh-doc-kit

检查文档索引与注入层配额,发现漂移并生成报告

回到顶部