dsh 插件:将会话记录渲染为自包含的 HTML 报告(/report latest|prefix|all)
30.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/18 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add 121212165/dsh-plugin-html-report该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · chat
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 17 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/11/2) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意未发布到 npm registry,仅可从源码安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-plugin-html-report(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22.18 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/3 12:27:25
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 8 处,展示前 8 条)
- 读取本地文件lib/plugin.js:23
if (!existsSync(dataDir)) - 读取本地文件lib/plugin.js:25
for (const name of readdirSync(dataDir)) { - 读取本地文件lib/plugin.js:28
records.push(...parseJsonl(readFileSync(join(dataDir, name), 'utf8')).records); - 写入本地文件lib/plugin.js:59
mkdirSync(outDir, { recursive: true }); - 读取本地文件src/plugin.ts:43
if (!existsSync(dataDir)) return records; - 读取本地文件src/plugin.ts:44
for (const name of readdirSync(dataDir)) { - 读取本地文件src/plugin.ts:46
records.push(...parseJsonl(readFileSync(join(dataDir, name), 'utf8')).records); - 写入本地文件src/plugin.ts:73
mkdirSync(outDir, { recursive: true });
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-base@deepseek-ai/schemastery@deepseek-ai/dsh-tools给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 会话记录渲染为HTML
- 生成自包含单文件报告
- 支持按前缀或全部导出
README
由 DeepSeek 最新模型翻译生成dsh-plugin-html-report
🧩 dsh 插件家族(22 件):总目录 dsh-plugin-family | 明星插件:ide-hub 跨 IDE 统一管理 · task-forge 跨窗口无损交接 · quota 实时用量仪表
EN · 把一个会话渲染成单个自包含 HTML 文件,可打开、归档或转发:内容转义、逐轮统计、工具行压缩(/report latest · /report <prefix> · /report all)。· 纯函数有测试覆盖(注入转义、自包含 / 外链检查、会话选择)· 对真实 ~/.dsh/transcripts 边车跑过 /report 并检查了输出 · 未测试:浏览器里单条消息超过 100 KB 的情况。
DeepSeek Harness (dsh) 插件:把会话转录渲染成自包含 HTML 报告。读 transcript 的 JSONL 边车,产出单文件、内联样式、零外链的 HTML——发给任何人都能直接双击打开。
适合回答:「这次会话我要交给别人看,但不想让他装 dsh、开 Obsidian、或者读 JSONL。」
同系列:transcript(数据源)· transcript-search(检索)· obsidian-push(入库)。区别:本插件面向分享与浏览,Markdown 那两个面向归档与检索。
展开完整文档(README 剩余 1 节)
dsh-plugin-html-report 🧩 dsh 插件家族(22 件):总目录 dsh-plugin-family | 明星插件:ide-hub 跨 IDE 统一管理 · task-forge 跨窗口无损交接 · quota 实时用量仪表 EN · 把一个会话渲染成单个自包含 HTML 文件,可打开、归档或转发:内容转义、逐轮统计、工具行压缩(/report latest · /report <prefix> · /report all)。· 纯函数有测试覆盖(注入转义、自包含 / 外链检查、会话选择)· 对真实 ~/.dsh/transcripts 边车跑过 /report 并检查了输出 · 未测试:浏览器里单条消息超过 100 KB 的情况。 DeepSeek Harness (dsh) 插件:把会话转录渲染成自包含 HTML 报告。读 transcript 的 JSONL 边车,产出单文件、内联样式、零外链的 HTML——发给任何人都能直接双击打开。 适合回答:「这次会话我要交给别人看,但不想让他装 dsh、开 Obsidian、或者读 JSONL。」 同系列:transcript(数据源)· transcript-search(检索)· obsidian-push(入库)。区别:本插件面向分享与浏览,Markdown 那两个面向归档与检索。 用法 - /report:渲染最近活跃的那一个会话。 - /report <sessionId 前缀>:渲染匹配前缀的会话(session- 前缀带不带都行)。 - /report all:渲染全部会话,按最后活跃时间倒序。 输出示例: 已渲染 1 份报告: C:\Users\<你>\.dsh\html-reports\4bc1bd00-916.html(15 条 / 12,645 字符) 文件名取 sessionId 去掉 session- 前缀后截 12 字符(这个截断规则是系列里踩过的坑:早期用 slice(0,8) 导致同前缀会话互相覆盖)。 产物形态 - 单文件 ,样式全部内联,正文不引用任何外部 src=http… / href=http…;离线、内网、邮件附件场景都成立。 - 用户/助手消息成「轮次卡片」,工具调用压成一行 chip 且正文截断到 300 字符——转录里工具结果可能非常大,报告要的是可读性而不是全量转储。 - 顶部一行统计:条数 / 用户 / 助手 / 工具 / 字符数 / 完整 sessionId。 - 正文按 at 升序回放,与转录时间线一致。 - 所有文本、标题、工具名一律 HTML 转义(含 # 与 "),会话里出现 不会变成可执行标签。 配置 | 字段 | 默认 | 说明 | | enabled | true | | | dataDir | ~/.dsh/transcripts | transcript 边车目录(只读) | | outDir | ~/.dsh/html-reports | 输出目录,不存在会自动创建 | | title | Session Report | 页面标题;留空则回退为 Session <id 前 8 位> | 只读取 transcript-YYYY-MM.jsonl 命名的文件;损坏行跳过并计数,永不改写源文件。没有转录数据时明确报错并提示先装 transcript,不会输出空页面糊人。 安装 三步,实测于 @deepseek-ai/dsh@0.1.7-alpha.1(需 pnpm 在 PATH 上): ① 装进 profile:dsh plugin 把参数原样转发给 pnpm,git 包会自动跑 prepare 构建 lib/ dsh plugin --profile web add github:121212165/dsh-plugin-html-report ② 把本仓库根目录 cordis.patch.yml 的内容并进 $DSH_HOME/profiles/web/cordis.patch.yml。 该文件默认是 [],所以要么整份替换,要么把 insert 条目并进同一个数组;不要直接追加——追加会形成两个 YAML 文档,启动即报 failed to parse overlay ... end of the stream or a document separator is expected(本机实测踩过)。 ③ 重启 dsh。配置层与 client 半都要重启才生效(客户端按 boot 时算出的内容 rev 下发,硬刷新浏览器没用)。 自检挂载:dsh --profile web --dump-config | grep dsh-plugin-html-report,应看到该条目。 验证状态 - 纯函数(转义防注入、统计计数、自包含性与外链检查、工具行压缩、会话选择:缺省最新 / all 倒序 / 前缀匹配含 session- 变体 / 交错记录取最后时间)8 个 node --test 全绿。 - 本机 live:对真实 ~/.dsh/transcripts 边车执行 /report,产出 HTML 结构与统计逐项目视通过。 - 未验证:超大单条消息(>100KB 文本)在浏览器里的渲染表现;长文本仅工具行做截断,用户/助手全文照排。 借鉴来源与差异 | 借鉴来源 | 借鉴了什么 | 我们的差异 | | simonw/claude-code-transcripts(1.7k★) | 「把会话转录发布成可分享页面」这个需求方向 | 它面向 Claude Code 单一格式;本插件读的是 dsh-plugin-transcript 的 JSONL 契约(跨工具),渲染为自包含单文件 HTML,独立实现 |
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
121212165/dsh-plugin-html-report
dsh 插件:将会话记录渲染为自包含的 HTML 报告(/report latest|prefix|all)
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,487已汉化DSH
73
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,894已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,379已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
DS Bot 是一个基于 DeepSeek Harness简称 dsh的 bot 插件,插件将 dsh 改造为 bot…
★ 5,084已汉化DSH
71.1
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,778已汉化DSH
71.1
这是你的仓库?认领条目