Introduction¶
When creating DSH plugins, tools, or workflow demos, it is often necessary to organize key operations from a session into a short demo suitable for a GitHub README. Traditional screen recordings usually capture screen pixels, which can easily introduce sensitive content such as keys, paths, and internal addresses into public materials. In contrast, DSH session exports are closer to structured logs, making them suitable for generating demos based on content.
The following introduces dsh-session-showcase. It targets DSH session exports, providing a local rendering path: it reads official export ZIPs, raw session.jsonl, or Zstandard session logs, outputs animated WebP/GIFs, posters, social previews, README snippets, and machine-readable manifests, and enables sensitive information replacement by default.
What is this¶
dsh-session-showcase is an independent community project, with the owner shown in the documentation as STFQ and a license of MIT. It is used to turn DeepSeek Harness (DSH) sessions into redacted animated demos suitable for READMEs. It can be used as a local CLI or as a native DSH tool plugin.
Verified core positioning includes:
- Reading official DSH session export ZIPs, raw
session.jsonl, or Zstandard session logs. - Generating animated WebP/GIFs, posters, social previews, README snippets, and machine-readable manifests.
- Running locally, with zero AI/model calls.
- Can run as a standalone CLI or as a DSH tool plugin.
- When used as a DSH plugin, it registers the
dsh_showcasetool. - Sensitive information replacement is enabled by default.
- Requires Node.js 22.19 or higher.
- Documentation states no FFmpeg or API key is needed.
- The project is an independent community project, with no dependency or endorsement relationship with DeepSeek.
Additionally, the documentation mentions two name clues: dsh-session-showcase and dsh-showcase. This article uses the installation commands, CLI commands, and verified features below as the standard; before installation, it is recommended to verify consistency between the repository, package name, and commands.
Core Features¶
Reading DSH Session Logs¶
It supports three types of input:
official DSH session export ZIP
raw session.jsonl
Zstandard session log
That is to say, if you already have a DSH official exported session ZIP, or just a saved session.jsonl or compressed Zstandard log, you can use it as input.
Generating README Usable Assets¶
After the above input, it generates a set of demo assets:
- animated WebP/GIF
- poster
- social preview
- README snippet
- machine-readable manifest
These outputs are better suited for GitHub READMEs, release notes, or project documentation, rather than leaving just a raw log.
Sensitive Information Replacement by Default¶
Documentation states redaction is enabled by default, covering the following common sensitive content:
- common API keys
- GitHub tokens
- JWTs
- bearer tokens
- secret assignments
- email addresses
- credentialed URLs
- home-directory paths
At the same time, the documentation explicitly states that redaction is defense in depth, not a guarantee. Generated results should still be manually checked before public release.
Additionally, reasoning blocks and request headers will not be selected as showcase scenes.
Running Locally without Model Calls¶
It can run locally, with zero AI/model calls. The documentation also states:
- No FFmpeg needed
- No API key needed
For scenarios where you just want to organize existing DSH sessions into public demo assets, this is a relatively straightforward local tool path.
Installation and Usage¶
Environment Requirements¶
Requires Node.js 22.19 or higher:
node -v
If you plan to install the plugin in DSH, use the verified plugin installation command. Replace <profile> with your actual DSH profile here:
dsh plugin --profile <profile> add github:STFQ/dsh-showcase
After installation, the plugin registers the dsh_showcase tool in DSH.
Building Standalone CLI from Source¶
If you want to try it out locally first, you can clone the repository and build:
git clone https://github.com/STFQ/dsh-showcase.git
cd dsh-showcase
npm install
npm run build
Then run a full output with example logs:
node dist/cli.js examples/session.jsonl --output ./showcase --format both
This command reads examples/session.jsonl and writes the WebP and GIF outputs in both formats to the ./showcase directory.
The documentation also mentions: npm install --global dsh-session-showcase will be available after the next npm release. Since this is not a currently confirmed available release fact here, please refer to the repository documentation or the actual installable status on npm.
Typical Usage¶
Rendering DSH Session Export ZIP¶
If you have a DSH session export ZIP, you can execute:
dsh-showcase dsh-session-<id>.zip --output ./showcase
Replace dsh-session-<id>.zip here with your actual export filename.
Generating WebP and GIF Simultaneously¶
If you want to output WebP and GIF simultaneously, you can specify --format both. Example:
dsh-showcase session.jsonl --format both --theme midnight
This command reads session.jsonl and outputs in both animation formats. The optional themes in the documentation include deepsea, midnight, and paper.
Checking Scene Selection and Replacement Results First¶
If you don’t want to write files immediately, you can dry-run:
dsh-showcase session.jsonl --dry-run --json
This command parses and checks without directly generating the final files, suitable for confirming scene selection and redaction results before release.
Using a Stricter Sensitive Information Policy¶
By default, it replaces and continues. If you want it to fail immediately when sensitive content is detected, you can use strict mode:
dsh-showcase session.jsonl --redact strict
Suitable for use in automated workflows to prevent sensitive materials from being generated into the output directory.
Use Cases and Notes¶
Suitable Scenarios¶
Suitable for these situations:
- Wanting to organize DSH sessions into short demos in a GitHub README.
- Already having an official DSH session export ZIP,
session.jsonl, or Zstandard log. - Needing sensitive information replacement by default and want the output to be local files.
- Needing to invoke it as a tool within DSH or use it separately as a CLI.
Pre-Use Notes¶
- The plugin executes in your local environment where you run DSH, using the permissions available to the current
dshprocess. It is recommended to check the source code, dependencies, and MIT license scope before installation. - Redaction is enabled by default, but it is not a guarantee. You must still check the generated animated images, posters, README snippets, and manifests before public release.
- reasoning blocks and request headers will not be selected as showcase scenes, but this does not mean all sensitive information will be removed.
- Requires Node.js 22.19 or higher.
- Documentation states no FFmpeg or API key is needed.
- This project is an independent community project, with no dependency or endorsement relationship with DeepSeek.
- The DSH plugin directory belongs to the community ecosystem, not the DeepSeek official app store.
Conclusion¶
The value of dsh-session-showcase is quite specific: it organizes DSH session exports or logs into animated images, posters, social previews, and README snippets ready for READMEs, while running locally, not calling models, and handling common sensitive content by default.
For developers who need to publish DSH session demos but don’t want to directly publish raw screen recordings and sensitive information, this is a local tool path worth evaluating.
Verified documentation does not provide a confirmed directory page URL. The GitHub repository address is:
https://github.com/STFQ/dsh-showcase