CapMap 文档体系可视化:Obsidian 风格语义图谱与能力面板。
安装
# npm 包(预构建)
dsh plugin --profile web add @chenjh12/dsh-capmap-viz
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:1741505640/capmap-skills#path:/dsh-capmap-viz
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
CapMap 文档体系可视化 DSH 插件(双半):选中本地工作区 → 读 capmap.yaml → 定位 docs_root → 渲染 Obsidian Graph View 风格语义图谱 + 能力面板。
方案见本仓 docs/_archive/方案/文档体系/CapMap可视化-DSH插件V4.md(V1/V2/V3 同目录)。
目录
src/
├── index.ts # Host 插件体(CapMapService + /capmap RPC)
├── client/ # Client:侧栏 DOM 入口 + 中栏面板 + canvas 图谱
├── parser/ # CapMapParser(Cordis-free 纯函数 + 单测)
└── invariant.ts # 包级 invariant 伴生
cordis.patch.yml # web profile 的 Host 插入层
安装(已发布 npm)
dsh plugin --profile web add @chenjh12/dsh-capmap-viz
dsh web --dump-config
组成树应有 # == @chenjh12/dsh-capmap-viz 与 id: capmap-viz。然后 dsh web。
打开工作区后若提示 未找到 docs_root:点 一键安装 Skill 并初始化:先装 skill(npx skills add,失败则 git sparse 回退拷贝 skills/capmap-*),再写 <工作区名>-docs 骨架。仅有 capmap.yaml、没有 SKILL.md 会视为未安装并重试。安装失败会在面板标红(骨架仍可能已写入)。
npx skills add 1741505640/capmap-skills --skill '*' -y
完成后自动重新加载图谱。手动命令仍可在面板「手动命令(备用)」展开。
本地开发(Web GUI)
在 dsh-capmap-viz/:
npm install
npm run build
Windows: 不要用 link:D:/... 绝对路径。用 profile 内相对 junction:
$web = "$env:USERPROFILE\.dsh\profiles\web"
New-Item -ItemType Directory -Force -Path "$web\vendor" | Out-Null
cmd /c mklink /J "$web\vendor\dsh-capmap-viz" "D:\python\capmap-skills\dsh-capmap-viz"
dsh plugin --profile web add link:vendor/dsh-capmap-viz
dsh web --dump-config
校验:# == @chenjh12/dsh-capmap-viz、id: capmap-viz。若未进 bundles,把 @chenjh12/dsh-capmap-viz 加进 $web\package.json 的 dsh.profile.bundles,并保证 node_modules\@chenjh12\dsh-capmap-viz 指向 vendor\dsh-capmap-viz。
发布到 npm
需已 npm login(账号 chenjh12)。在 dsh-capmap-viz/:
npm run build
npm version patch
npm publish --access public --registry https://registry.npmjs.org
升版:改 package.json 的 version 后再 npm publish。
使用
dsh web后侧栏可见「能力底图」入口(宽栏文字 / 折叠轨图标)。- 点入口 → 选 Workspace → 图谱加载;类型填色、状态描边;hover / 1-hop / 缩放平移 / Fit。
- 「关闭」交回会话;可「更换工作区」。
改源码后 npm run build 并重启 dsh web(Host 不热更)。
图谱配色
权威源码:src/client/graph/colors.ts(节点 填充=类型,描边=生命周期状态;已归档另用虚线描边)。
类型填充
| 类型 | 色值 | 观感 |
|---|---|---|
| map(底图) | #3b82f6 |
蓝 |
| scheme(方案) | #22c55e |
绿 |
| test(测试) | #eab308 |
黄 |
| norm(规范) | #a855f7 |
紫 |
| index(索引) | #9ca3af |
灰 |
| archive(归档路径节点) | #6b7280 |
深灰 |
| overview(全貌) | #f97316 |
橙 |
| 未知 | #9ca3af |
灰(默认) |
状态描边
相邻阶段刻意拉开色相:灰(构思) → 紫(规格) → 橙(开发中) → 青(已开发) → 黄(验证) → 绿(落地)。
| 状态 | 色值 | 观感 |
|---|---|---|
| 方案中 | #e2e8f0 |
浅灰 |
| 已确认 | #94a3b8 |
石板灰 |
| 规格中 | #818cf8 |
靛紫 |
| 已拆分 | #c084fc |
浅紫 |
| 开发中 | #f97316 |
橙 |
| 已开发 | #22d3ee |
青 |
| 验证中 | #eab308 |
黄 |
| 已验证 | #4ade80 |
亮绿 |
| 落地中 | #2dd4bf |
青绿 |
| 已落地 | #34d399 |
翠绿 |
| 已归档 | #6b7280 |
深灰 + 虚线 |
| 测试中 | #fbbf24 |
琥珀(测试文轨) |
| 无状态 | #111827 |
近黑(默认描边) |
目录「生命周期」条与详情状态 pill 与上表同一套色。
单测(无需 GUI)
npm test
链接
同类插件
tt-a1i/archify#integrations/deepseek-harness★ 60032
从仓库或系统描述生成经过校验的自包含交互式架构图、流程图、时序图、数据流图和生命周期图。
dream-num/dsh-univer-office★ 338
为 DeepSeek Harness 打造一个真正的办公环境。Univer Office 插件将电子表格、文档、幻灯片、画布、多维表格等汇聚到同一个运行时——数据互联、修改经过校验、变更按版本管理,并以隔离工作树支持多 Agent 协作。
PerryLink/dsh-industry-research★ 100
面向 DeepSeek Harness 的确定性行业研究报告:公司与行业研究流程基于分阶段证据产出结构化、可核验的报告。
HuanLinOTO/dsh-plugin-mineru★ 47
向模型暴露 MineRU 文档解析工具。
kw78/dsh-office-tools★ 18
面向 agent 的工作区安全 Office 工具集:创建/读取 Word、创建/读取/更新 Excel、创建/读取 PowerPoint,并支持 PNG/JPG/GIF 图片排版。
fly233338/dsh-overleaf★ 12
通过 OverleafMCP 将多个 Overleaf 项目接入 DSH,支持浏览、分析和通过 Git 写回 LaTeX 文件。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。