前言¶
做 DSH 插件、工具或工作流演示时,常常需要把一次会话里的关键操作整理成能放进 GitHub README 的短演示。传统录屏通常录制的是屏幕像素,容易把密钥、路径、内部地址等敏感内容带进公开素材;而 DSH 会话导出本身更接近结构化日志,适合按内容生成演示。
下面介绍 dsh-session-showcase。它面向 DSH 会话导出,提供本地渲染路径:读入官方导出 ZIP、原始 session.jsonl 或 Zstandard 会话日志,输出 WebP/GIF 动图、海报、社交预览图、README 片段和机器可读 manifest,并默认启用敏感信息替换。
这是什么¶
dsh-session-showcase 是一个独立社区项目,资料中显示的 owner 是 STFQ,许可证为 MIT。它用于把 DeepSeek Harness(DSH)会话变成 README 可用的红acted 动图演示,可以作为本地 CLI 使用,也可以作为 DSH 原生工具插件使用。
已核实的核心定位包括:
- 读取官方 DSH session export ZIP、原始
session.jsonl,或 Zstandard session log。 - 生成 animated WebP/GIF、poster、social preview、README snippet,以及 machine-readable manifest。
- 在本地运行,且 zero AI/model calls。
- 可作为 standalone CLI,也可作为 DSH tool plugin 运行。
- 作为 DSH 插件时,会注册
dsh_showcase工具。 - 敏感信息替换默认开启。
- 要求 Node.js 22.19 或更高版本。
- 资料说明不需要 FFmpeg,也不需要 API key。
- 项目是独立社区项目,不与 DeepSeek 存在从属或背书关系。
另外,资料中出现 dsh-session-showcase 与 dsh-showcase 两种名称线索。本文以下面的安装命令、CLI 命令和已核实功能为准;安装前建议核对仓库、包名和命令的一致性。
核心功能¶
读取 DSH 会话日志¶
它支持三类输入:
official DSH session export ZIP
raw session.jsonl
Zstandard session log
也就是说,如果你手里已经是 DSH 官方导出的会话 ZIP,或者只是保存下来的 session.jsonl、压缩后的 Zstandard 日志,都可以作为输入。
生成 README 可用素材¶
经过上面的输入后,它会生成一组演示素材:
- animated WebP/GIF
- poster
- social preview
- README snippet
- machine-readable manifest
这类输出更适合放进 GitHub README、发布说明或项目文档里,而不是只留一段原始日志。
默认进行敏感信息替换¶
资料说明 redaction 默认开启,覆盖以下常见敏感内容:
- common API keys
- GitHub tokens
- JWTs
- bearer tokens
- secret assignments
- email addresses
- credentialed URLs
- home-directory paths
同时,资料也明确说明 redaction 是 defense in depth,不是 guarantee。生成结果在公开前仍应人工检查。
此外,reasoning blocks 和 request headers 不会被选为 showcase scenes。
本地运行,不调用模型¶
它可以在本地运行,并且 zero AI/model calls。资料还说明:
- 不需要 FFmpeg
- 不需要 API key
对于只想把已有 DSH 会话整理成公开演示素材的场景,这属于比较直接的本地工具路径。
安装与启用¶
环境要求¶
要求 Node.js 22.19 或更高版本:
node -v
如果你准备在 DSH 中安装插件,使用已核实的插件安装命令即可。这里的 <profile> 替换成你实际使用的 DSH profile:
dsh plugin --profile <profile> add github:STFQ/dsh-showcase
安装后,插件会在 DSH 中注册 dsh_showcase 工具。
从源码构建独立 CLI¶
如果你先想本地试跑,可以克隆仓库并构建:
git clone https://github.com/STFQ/dsh-showcase.git
cd dsh-showcase
npm install
npm run build
然后用示例日志跑一次完整输出:
node dist/cli.js examples/session.jsonl --output ./showcase --format both
这条命令会读取 examples/session.jsonl,把 WebP 和 GIF 两种格式的输出写到 ./showcase 目录。
资料中还提到:npm install --global dsh-session-showcase 在下次 npm 发布后可用。由于这里不是当前已确认的可用发布事实,建议以仓库说明或 npm 实际可安装状态为准。
典型用法¶
渲染 DSH 会话导出 ZIP¶
如果你有 DSH 会话导出 ZIP,可以执行:
dsh-showcase dsh-session-<id>.zip --output ./showcase
这里的 dsh-session-<id>.zip 替换成你实际的导出文件名。
同时生成 WebP 和 GIF¶
如果希望同时输出 WebP 和 GIF,可以指定 --format both。示例:
dsh-showcase session.jsonl --format both --theme midnight
这条命令会读取 session.jsonl,并输出两种动图格式。资料中的可选主题包含 deepsea、midnight、paper。
先检查场景选择和替换结果¶
如果不想立刻写文件,可以先 dry-run:
dsh-showcase session.jsonl --dry-run --json
这条命令会解析并检查,不直接生成最终文件,适合在发布前确认 scene selection 和 redaction 结果。
使用更严格的敏感信息策略¶
默认是替换后继续。如果你希望在检测到敏感内容时直接失败,可以使用 strict 模式:
dsh-showcase session.jsonl --redact strict
适合在自动化流程中使用,避免敏感素材被继续生成到输出目录。
适用场景与注意¶
适合的场景¶
适合这些情况:
- 想把 DSH 会话整理成 GitHub README 里的短演示。
- 已经拿到官方 DSH session export ZIP、
session.jsonl或 Zstandard 日志。 - 需要默认进行敏感信息替换,并且希望输出是本地文件。
- 需要在 DSH 内以工具形式调用,或单独作为 CLI 使用。
使用前注意¶
- 插件会在你运行 DSH 的本地环境中执行,使用当前
dsh进程可用的权限。安装前建议检查源码、依赖和 MIT 许可证范围。 - redaction 默认开启,但它不是 guarantee。公开发布前仍要检查生成的动图、海报、README snippet 和 manifest。
- reasoning blocks 和 request headers 不会被选为 showcase scenes,但这不等同于所有敏感信息都会被移除。
- 需要 Node.js 22.19 或更高版本。
- 资料说明不需要 FFmpeg,也不需要 API key。
- 该项目是独立社区项目,不与 DeepSeek 存在从属或背书关系。
- DSH 插件目录属于社区生态,不等于 DeepSeek 官方应用商店。
结尾¶
dsh-session-showcase 的价值比较具体:它把 DSH 会话导出或会话日志整理成可直接放进 README 的动图、海报、社交预览和 README 片段,同时在本地运行、不调用模型,并默认处理常见敏感内容。
对于需要公开 DSH 会话演示,又不想把原始录屏和敏感信息直接发布出去的开发者,这是一个值得评估的本地工具路径。
已核实资料未给出可确认的目录页 URL;GitHub 仓库地址为:
https://github.com/STFQ/dsh-showcase