DSH × Codebase Memory 圖譜保鮮插件:讓 CBM 知識圖譜自動跟上各專案的 git HEAD(落後偵測、條件式 CLI 重建、每專案監看、設定頁觀測卡片與 REST 控制面)
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/6 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add WwW7olFWwW/dsh-codebase-watcher该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:待复验
是什么
dsh 原生插件 · dev
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 26 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件写入剪贴板(不计风险)发起外部网络请求
查看扫描证据(共 22 处,展示前 22 条)
- 发起网络请求lib/client.js:555
const response = await fetch(url, Object.assign({ signal: controller.signal }, init ?? {})); - 写入剪贴板lib/client.js:876
return nav.clipboard.writeText(text).then(function () { return true; }, function () { return false; }); - 读取本地文件lib/config.js:45
const parsed = JSON.parse(readFileSync(join(directory, 'package.json'), 'utf8')); - 读取本地文件lib/config.js:84
names = readdirSync(profilesDir, { withFileTypes: true }) - 读取本地文件lib/keeper.js:303
return canonicalRootPath(await realpath(normalized)); - 发起网络请求lib/keeper.js:320
const response = await fetch(url, { signal: AbortSignal.timeout(GRAPH_UI_PROBE_TIMEOUT_MS) }); - 读取本地文件lib/keeper.js:1761
const text = await readFile(file, 'utf8'); - 读取本地文件lib/keeper.js:1817
info = await fsStat(file); - 删除本地文件lib/keeper.js:1842
await rm(file, { force: true }); - 写入本地文件lib/keeper.js:1863
await mkdir(this.home, { recursive: true }); - 删除本地文件lib/keeper.js:1884
await rm(file, { force: true }).catch(function () { return undefined; }); - 删除本地文件lib/keeper.js:1902
await rm(file, { force: true }); - 写入本地文件lib/log.js:88
await mkdir(dirname(this.file), { recursive: true }); - 读取本地文件lib/log.js:103
const info = await stat(this.file); - 写入本地文件lib/log.js:176
.then(function () { return appendFile(this.file, line, 'utf8'); }.bind(this)) - 写入本地文件lib/log.js:193
await rename(this.file, this.file + '.1'); - 读取本地文件lib/state.js:51
const raw = await readFile(this.file, 'utf8'); - 写入本地文件lib/state.js:111
await mkdir(dirname(target), { recursive: true }); - 写入本地文件lib/state.js:112
await writeFile(temporary, payload, 'utf8'); - 写入本地文件lib/state.js:113
await rename(temporary, target); - 读取本地文件lib/cli.js:39
await access(candidate, fsConstants.X_OK); - 执行外部命令来自配置/变量lib/exec.js:112
child = spawn(command, args, {
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 落后侦测
- 条件式CLI重建
- 每专案监看
README
由 DeepSeek 最新模型翻译生成dsh-codebase-watcher
用一行 MCP row 把 Codebase Memory(CBM)接进 DeepSeek Harness(DSH)时,痛点不在查询,而是图谱会静默过期:MCP 的 cwd 是 profile 级常数(CBM 的监看与 auto-index 因此落在错的树)、CBM 内建 watcher 不产生可观测的重建、MCP 工具 index_repository 有 60 秒上限。实测图谱曾落后 33 小时/37 个提交/988 个文件,而所有人都以为它是新的。
dsh-codebase-watcher 把落后判定、条件式重建与观测这三件事做对 —— 不改 CBM、不改 DSH、不需要 systemd timer。
安装
dsh plugin --profile web add github:WwW7olFWwW/dsh-codebase-watcher
装完不用重启,卡片在 设置 →「CBM 图谱」(没有就刷新一次页面;但改动 lib/ 之后要重启 dsh web 才换代)。
展开完整文档(README 剩余 1 节)
dsh-codebase-watcher 用一行 MCP row 把 Codebase Memory(CBM)接进 DeepSeek Harness(DSH)时,痛点不在查询,而是图谱会静默过期:MCP 的 cwd 是 profile 级常数(CBM 的监看与 auto-index 因此落在错的树)、CBM 内建 watcher 不产生可观测的重建、MCP 工具 index_repository 有 60 秒上限。实测图谱曾落后 33 小时/37 个提交/988 个文件,而所有人都以为它是新的。 dsh-codebase-watcher 把落后判定、条件式重建与观测这三件事做对 —— 不改 CBM、不改 DSH、不需要 systemd timer。 安装 dsh plugin --profile web add github:WwW7olFWwW/dsh-codebase-watcher 装完不用重启,卡片在 设置 →「CBM 图谱」(没有就刷新一次页面;但改动 lib/ 之后要重启 dsh web 才换代)。建议同时关掉上游那个无条件的全量重建(每次 session 白烧约 61 秒/658 MB): codebase-memory-mcp config set auto_index false 功能 - 落后判定:图谱 Branch.head_sha 对 git rev-parse HEAD,给出精确 behindBy;没有 Branch 节点时退用 indexed_at/DB mtime。证据不足就回报「无法判定」,不假装新鲜。 - 条件式重建:只排入落后的项目,全局并发 1;已对上 HEAD 时 POST /rebuild 回 queued: 0。 - 绕过 MCP 的 60 秒上限:重建以子进程调用 codebase-memory-mcp cli index_repository。 - 存档后自动追上:每项目文件监看与防抖;chokidar 缺席时退回 node:fs.watch。 - 观测与控制:设置页卡片与 REST 控制面同源,卡片上的每个动作都能用 curl 打。 - 一键开图:卡片与每个项目列都有 CBM 图谱 UI 的链接(?project= 直达单一项目);UI 没开或连不上时如实标示,不给点了会坏的按钮。 兼容版本 | 插件 | DSH | Codebase Memory | | 0.1.x | >=0.2.0-rc.2(实测 0.2.0-rc.2;由 engines.dsh 声明) | codebase-memory-mcp@0.11.0(清单外版本在卡片上转为警告) | 配置 15 个 volatile 字段与 7 条 REST 路由:docs/CONFIGURATION.md 已知限制 chokidar 是可选依赖;以家目录为根的项目不支持 CBM 监看(上游安全政策);图谱的结构声明不可作为证据。 其余见 docs/LIMITATIONS.md。 移除 dsh plugin --profile web remove dsh-codebase-watcher rm -rf ~/.dsh/codebase-watcher 开发 node --test test/*.test.js # 115 项单元测试,不需要真的索引 改完 lib/ 需 systemctl --user restart dsh-web 才生效(link: 安装的 ESM 缓存不会热加载)。 架构|验证现况|需求规格|贡献指南|变更记录|问题回报 授权 MIT © 2026 WwW7olFWwW
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
WwW7olFWwW/dsh-codebase-watcher
DSH × Codebase Memory 圖譜保鮮插件:讓 CBM 知識圖譜自動跟上各專案的 git HEAD(落後偵測、條件式 CLI 重建、每專案監看、設定頁觀測卡片與 REST 控制面)
相关插件 · 开发 / 工程
隐私简历生成器reactive-resume/reactive-resume
Reactive Resume 已迁至 GitHub 上的…
★ 45,125已汉化MCP
71.7
AI 架构文档生成器sopaco/deepwiki-rs
🚀 Litho 已进化为 Terrain —— 给你的 AI 智能体一张会呼吸的代码库地图。
★ 3,157已汉化DSH
70.8
长时任务执行闭环AMAP-ML/LongHorizon-Harness
面向 Computer-Use Agent 的 Loop Engineering
★ 1,764已汉化DSH
70.5
AI 编程纪律方法包GanyuanRan/Aegis
让 AI 编程 agent 变得可信:少返工、更安全、说“完成”前先给证据。
★ 1,384已汉化DSH
69.6
多代理编排运行时Enderfga/claw-orchestrator
面向编程智能体的运行时。把 Claude Code、Codex、Antigravity、Grok…
★ 586已汉化MCP
69.4
记忆进化插件csyangwen/dsh-memory-evolve
dsh-memory-evolve 使用场景指南
★ 461已汉化DSH
67.9