对话收尾可视化故事板:storyboard 工具把 JSON 规范渲染为自包含 HTML 卡片(内嵌 SVG 流程图、编号步骤、事实网格、时间线),写入 ~/.dsh/storyboard/<session>/ 并在侧边栏打开;系统提示词段落与 /storyboard 命令触发生成。纯服务端、零运行时依赖。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:simikangtao/dsh-storyboard
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。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
该插件的 README 只有英文版本。
End-of-chat Doubao-style visual storyboard for DeepSeek Harness Web.
When a substantive conversation ends (real work done, a plan produced, or a concept explained), the model calls the storyboard tool once and a compact visual card summarizing what was done and how it works appears in the sidebar. A /storyboard [focus] command forces one on demand.
Why it is light
- Server-only plugin — no client bundle, no extra JS shipped to the browser.
- Zero runtime dependencies — node built-ins only (
crypto,fs,os,path). - One self-contained HTML file per storyboard (~5–20 KB): system fonts, inline SVG, no network requests, no CDN, works offline.
- Tiny prompt footprint — the injected guidance section is ~500 characters.
- Storyboards are written under
$DSH_HOME/storyboard/<session>/(default~/.dsh/storyboard/<session>/).
Install
# from a workspace containing this folder:
dsh plugin --profile web add file:C:\path\to\dsh-storyboard
# or by package name once published:
dsh plugin --profile web add dsh-storyboard
The bundle patch inserts one row (id: storyboard) into the web profile.
Disable it by removing that row from the profile (the prompt section, tool, and command are all registered by the row's presence).
Usage
- Automatic — at the end of a substantive exchange the model generates the card and opens it in the sidebar by itself.
- On demand — type
/storyboard(optionally/storyboard the install steps) in the chat input.
Card sections
| Section | Field | Notes |
|---|---|---|
| Title / subtitle | title, subtitle |
title required, max 40 / 80 chars |
| How it connects | diagram |
≤8 nodes, ≤12 edges, rendered as inline SVG with layered DAG layout + arrowheads |
| What was done | flow |
≤8 numbered steps with optional notes, connected by a vertical rail |
| Key facts | facts |
≤8 label/value pairs in a two-column grid |
| Timeline | timeline |
≤8 dotted-rail events with optional time labels |
| How it works | howItWorks |
≤8 mechanism bullet points |
Every string is length-capped and HTML-escaped on the host side; omit a section when you have no content for it.
Development
node test/smoke.mjs # standalone renderer + registration smoke test (no DSH host needed)
Limitations
- v1 has no settings toggle: presence of the profile row enables the feature.
- Diagram layout is a simple longest-path layering (cycles are capped, not drawn as true cycles).
- The automatic trigger is instruction-based (the model decides a conversation is ending); it is deliberately not a hard hook.
链接
同类插件
tt-a1i/archify#integrations/deepseek-harness★ 92724
从仓库或系统描述生成经过校验的自包含交互式架构图、流程图、时序图、数据流图和生命周期图。
dream-num/dsh-univer-office★ 657
为 DeepSeek Harness 打造一个真正的办公环境。Univer Office 插件将电子表格、文档、幻灯片、画布、多维表格等汇聚到同一个运行时——数据互联、修改经过校验、变更按版本管理,并以隔离工作树支持多 Agent 协作。
ECNU/EduWork#dsh-knowledge-studio★ 275
基于工作区资料的 Studio,复用 DSH 模型与共享成果服务,制作报告、演示文稿、表格、思维导图、测验、闪卡及音视频。Office 生成需 Python 3.12+ 及相关依赖,并配置 DSH_OFFICE_PYTHON;媒体渲染需 Chromium;本地语音转写另需 whisper.cpp 和模型。
PerryLink/dsh-industry-research★ 215
面向 DeepSeek Harness 的确定性行业研究报告:公司与行业研究流程基于分阶段证据产出结构化、可核验的报告。
HuanLinOTO/dsh-plugin-mineru★ 51
向模型暴露 MineRU 文档解析工具。
PolinniZhong/dsh-knit★ 48
把会话工作区里已有的 Markdown 文档、源码、图片与视频列进 DSH 侧边栏,按与当前对话的相关性排序。默认的词法模式用最近几条消息在本地与标题、摘要、正文做带 IDF 加权的匹配(BM25)—— 不调用模型、没有网络出口,内容不出本机。列表来自工作区扫描,而不是「最近打开记录」,所以重启 DSH 或新开会话都不会变空。排序结果组织成主要 / 辅助 / 相关三层的阅读顺序,每一条都写明可核验的理由(命中了哪个字段、被哪一篇引用),点一行即可就地预览:Markdown 按渲染后的样子显示、相对路径图片真实渲染、源码走宿主自带的语法高亮、视频走 HTTP Range 流式播放。同一份 Context Pack 也作为 knit_docs 工具交给 agent。后续版本陆续补上读取证据与生命周期(归因在读那一刻冻结)、固定 / 排除(排除先于检索生效,且可恢复)、关系证据(引用 / 导入 / 测试,带行号)与增量索引(重启后复用)。v0.23 起还多一条可选的混合检索:默认关闭,只有你自己配好 Ollama 或 OpenAI 兼容的 embedding 服务才会生效。它生效时,发出去的是你这句查询原话加上每篇候选文件的标题与摘要 —— Markdown 的摘要取自正文首段(不超过 60 字),代码的摘要是它所在的工作区相对目录,图片 / 视频贡献的是文件名;完整正文与绝对路径都不发送,指向本机服务(loopback)时内容不出这台机器。v0.24 起还能做变更关联:用一条只读的 git status(固定 argv、不走 shell、子进程环境白名单),配合同一套引用 / 导入 / 测试 / 提及证据,指出这次改动大概率该一起看哪些文件 —— 默认关闭。语义检索的收益仍待真 provider 实测,因此不承诺召回提升。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。