安装验证:沙盒安装失败 (L4 failed) · 验证于 dsh 0.2.1-rc.5 · 验证日期 安装验证详情 →
数据截至 (UTC)
功能介绍AI
面向 DeepSeek Harness 的 TPM/DPAPI 封存凭据提供器,用硬件加密存储取代明文凭据文件。
- 使用 TPM 或 DPAPI 硬件保护封存凭据
- 取代 DeepSeek Harness 中的明文凭据文件
- 作为可直接替换的凭据提供器插件
能力标签为 AI 推断或 README 规则抽取(见角标),词表受限、未经安装验证;AI = 推断,README = 原文关键词。
趋势
四条线各答一个问题:星标总量、这周涨了多少星、累计下载、这周下载多少。GitHub 两条来自真读采样(每日轮转抽样),npm 两条来自每份快照。
6 次采样(约每 7 天一次),其中 1 次是历史重建近似(空心点);采样点连线,非逐日观测
10-01 → 11-07 · 6 个采样点
每根柱 = 相邻两次采样的差值(间隔 5–14 天),负值向下;浅色柱含重建近似
10-10 → 11-07 · 5 个采样点
由当前累计值按逐日下载反向回推(缺采日不插值) · 重建
观测点 0 个(< 3),暂不出图
暂无数据
快照的 last-week 滚动窗口(官方 npm + npmmirror 镜像合计)
观测点 0 个(< 3),暂不出图
暂无数据
安装
dsh plugin --profile web add github:rickwindman/dsh-destinywind-tpm安装方式: GitHub · 沙盒安装失败 (L4 failed) · 验证于 dsh 0.2.1-rc.5
验证与兼容性
按插件版本分组:每张卡是该插件版本实测过的 dsh 版本与安装兼容结论(L5 优先)。只列真测过的组合——未列出 = 未实测,不推定兼容。L1–L3 为插件级静态档(与 dsh 版本无关,各 dsh 行同值):在行内「验证等级」格里与 L4/L5 并列显示、标注「静态」,证据体为插件级单份、随行内「查看检查项与证据」出现,不在各版本重复存储。
External credentials(插件级):未检测到
依据:1 条要求、覆盖 4 个 @deepseek-ai/dsh-* 子包。 看原始区间
^0.1.5-rc.1 ×4
✗ 当前 dsh 0.2.2-rc.1 不在支持范围内 —— 官方安装门控会直接拒绝装(incompatible-version)。
强行安装需精确豁免一次:dsh plugin allow-version dsh-destinywind-tpm@1.0.0 0.2.2-rc.1(豁免记在本机 profile,本站不假定你是否已豁免)
判定通道:作者没写 engines.dsh,按 peerDependencies 逐条检查(workspace:^ | ~ | * 视为当前版本)。
能否正常运行是另一件事 → 见下方实测矩阵(L1–L5)。
| 插件版本 \ dsh | dsh 0.2.1-rc.5 | dsh 0.2.1-rc.3 | dsh 0.2.1-rc.2 | dsh 0.2.1-alpha.4 | dsh 0.2.1-alpha.2 |
|---|---|---|---|---|---|
| 3d2910 | ✗ | ✗ | ✗ | ✗ | ✗ |
3d2910github失败 92026-11-04
https://github.com/rickwindman/dsh-destinywind-tpm
✗dsh 0.2.1-rc.52026-10-31L4 · 失败
- • Node.js: v24.14.0
- • DSH: 0.2.1-rc.5
- • 被测插件工件: github · https://github.com/rickwindman/dsh-destinywind-tpm(版本未标注)
ID: dsh-destinywind-tpm@3d2910@dsh0.2.1-rc.5 · 档位: l4-sandbox
签发:2026-10-31 · 有效至:2026-11-07
查看检查项与证据
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
该档位在这次扫描中未执行。
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
✗dsh 0.2.1-rc.32026-10-26L4 · 失败
- • Node.js: v24.14.0
- • DSH: 0.2.1-rc.3
- • 被测插件工件: github · https://github.com/rickwindman/dsh-destinywind-tpm(版本未标注)
ID: dsh-destinywind-tpm@3d2910@dsh0.2.1-rc.3 · 档位: l4-sandbox
签发:2026-10-26 · 有效至:2026-11-02
查看检查项与证据
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
该档位在这次扫描中未执行。
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
✗dsh 0.2.1-rc.22026-10-18L5 · 失败
- • Node.js: v24.14.0
- • DSH: 0.2.1-rc.2
- • 被测插件工件: github · https://github.com/rickwindman/dsh-destinywind-tpm(版本未标注)
ID: dsh-destinywind-tpm@3d2910@dsh0.2.1-rc.2 · 档位: l4-sandbox
签发:2026-10-18 · 有效至:2026-10-25
查看检查项与证据
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
✗dsh 0.2.1-alpha.42026-10-16L5 · 失败
- • Node.js: v24.14.0
- • DSH: 0.2.1-alpha.4
- • 被测插件工件: github · https://github.com/rickwindman/dsh-destinywind-tpm(版本未标注)
ID: dsh-destinywind-tpm@3d2910@dsh0.2.1-alpha.4 · 档位: l4-sandbox
签发:2026-10-16 · 有效至:2026-10-23
查看检查项与证据
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
✗dsh 0.2.1-alpha.22026-10-10L5 · 失败
- • Node.js: v24.14.0
- • DSH: 0.2.1-alpha.2
- • 被测插件工件: github · https://github.com/rickwindman/dsh-destinywind-tpm(版本未标注)
ID: dsh-destinywind-tpm@3d2910@dsh0.2.1-alpha.2 · 档位: l4-sandbox
签发:2026-10-10 · 有效至:2026-10-17
查看检查项与证据
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
✗dsh 0.2.0-rc.22026-10-08L5 · 失败
- • Node.js: v24.14.0
- • DSH: 0.2.0-rc.2
- • 被测插件工件: github · https://github.com/rickwindman/dsh-destinywind-tpm(版本未标注)
ID: dsh-destinywind-tpm@3d2910@dsh0.2.0-rc.2 · 档位: l4-sandbox
签发:2026-10-08 · 有效至:2026-10-15
查看检查项与证据
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
✗dsh 0.2.0-rc.12026-09-29L5 · 失败
- • Node.js: v24.14.0
- • DSH: 0.2.0-rc.1
- • 被测插件工件: github · https://github.com/rickwindman/dsh-destinywind-tpm(版本未标注)
ID: dsh-destinywind-tpm@3d2910@dsh0.2.0-rc.1 · 档位: l4-sandbox
签发:2026-09-29 · 有效至:2026-10-06
查看检查项与证据
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
✗dsh 0.1.7-rc.22026-09-27L5 · 失败
- • Node.js: v24.14.0
- • DSH: 0.1.7-rc.2
- • 被测插件工件: github · https://github.com/rickwindman/dsh-destinywind-tpm(版本未标注)
ID: dsh-destinywind-tpm@3d2910@dsh0.1.7-rc.2 · 档位: l4-sandbox
签发:2026-09-27 · 有效至:2026-10-04
查看检查项与证据
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
✗版本史前2026-10-05L5 · 失败
- • Node.js: v24.14.0
- • DSH: unknown
- • 被测插件工件: github · https://github.com/rickwindman/dsh-destinywind-tpm(版本未标注)
ID: dsh-destinywind-tpm@3d2910@dshunknown · 档位: l4-sandbox
签发:2026-10-05 · 有效至:2026-10-12
查看检查项与证据
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
↳ 沿用自更早记录 dsh-destinywind-tpm@3d2910@dsh0.2.2-rc.1(l3-fullscan)
L1–L3 为插件级静态结论(基础门槛,全 dsh 版本相同):证据为插件级单份,不在各版本重复存储。
作者徽章
将 dsh.so 徽章嵌入你的 README,展示插件的自动安全扫描与安装检测状态:
`[](https://www.dsh.so/artifact/dsh-destinywind-tpm/?ref=badge)`dsh.so 是独立社区项目,与 DeepSeek AI 无隶属或背书关系;徽章由 dsh.so 维护,嵌入链接带 ?ref= 归因参数。
安全报告
两层自动化检查,都不是人工审核:静态扫描(逐插件规则判定)与模型驱动的动态安全审计(只覆盖静态判定 warn 及以上的插件子集,不执行插件代码)。
静态扫描 低;动态审计最高 高(有结论时以动态为准)→ 总评级 高。
v1.0.0dsh 清单1.0.0git2026-11-111.0.0版本一致clean · gitvet 为 AST 静态扫描(npm 发布物或 git 源码)。
静态发现(5 条)
- 警告childProcess · code-exec
dpapi.js:63const child = spawn(shell, ['-NoProfile', '-NonInteractive', '-EncodedCommand', encodeCommand(script)], { - 警告base64Decode · obfuscation
dpapi.js:36'$bytes = [Convert]::FromBase64String($raw)', - 警告childProcess · code-exec
linux.js:37const child = spawn(command, args, { stdio: ['pipe', 'pipe', 'pipe'] }) - 警告childProcess · code-exec
tpm.js:94const child = spawn(shell, ['-NoProfile', '-NonInteractive', '-EncodedCommand', encodeCommand(script)], { - 警告base64Decode · obfuscation
tpm.js:51'$bytes = [Convert]::FromBase64String($raw)',
展开 3 条审计发现
- highLinux 密钥环后端直接返回原始数据密钥,导致存储文件中含有明文 AES 主密钥
linux.js:173在无可用的 tpm2-tools 后端时,保护者的 seal() 实际是空操作:index.js 的 dataKeyLocked() 会把这个返回的缓冲区以 base64 写入 .credentials.dpapi.json 的 `key` 字段(unsealBytes 忽略该 blob,只重新读取密钥环)。任何获得该文件的人(备份、同步目录、异机副本,或可读取它的其他本地账户)都可以 base64 解码出 32 字节数据密钥,并以条目名作为 AAD 用 node:crypto 解出所有 refs 与 records。该路径下插件“没有 OS 用户凭据就无法读取存储”的核心承诺不成立,且这种降级是静默的。
- mediumTPM 探测以 OverwriteExistingKey 重建机器级密钥,可能永久使已有存储无法解密
tpm.js:68只要 selectProtector() 运行,tpmAvailable() 就会调用 createKey(),而在存储尚无 sealedKey 的每次挂载(probe() 无 sealedKey 或首次写入)都会触发。包装密钥名在机器范围内固定,因此初始化第二个存储(第二个 DSH home、可通过 config 配置的 `path`,或被移动/恢复的存储文件)会静默覆盖该密钥,此前写入的所有密文将永久无法解密——已保存凭据不可逆丢失。
- lowLinux 构件目录在无 HOME 时回退到 /tmp,临时文件名可预测、默认权限且无符号链接防护
linux.js:141mkdir(dir, { recursive: true, mode: 0o700 }) 不会收紧已存在的目录,也不会在攻击者预先创建该目录时失败;当 HOME 未设置时,整个构件目录位于全局可写的 /tmp 下。临时文件以可预测名称、默认权限(0666 & umask)且无 O_NOFOLLOW/O_EXCL 打开,因此能向该目录写入的本地攻击者(预建目录,或权限宽松的既有 .dsh 目录)可植入符号链接或预置可读文件,从而获取写入该处的密钥材料,或用密钥材料覆盖受害者的文件。
Linux 密钥环回退会把明文 AES 数据密钥写入磁盘上的 JSON 文件,仅凭该文件即可解密全部凭据;TPM 密钥覆盖创建还可能破坏已有存储。
口径(2026-10-28):有动态审计结论时以动态结论为准(可能上调也可能下调);没有结论时(未入队 / 审计失败 / 人工撤回)才用静态扫描档(vet 主判 + dsh 兜底)。动态审计永不写豁免表(豁免只能人工三筛手写);模型判错时由人工复核撤回,撤回后档位回到静态扫描档。
免责声明:静态扫描与动态安全审计都是自动化分析,不构成安全保证。安装前请自行审查。
活跃度
最近提交 2026-09-26 · 活跃度:稳定
• 仓库创建: 2026-09-26
• 星标: ★ 0 · 复刻: 0
• 健康度: 稳定 — 近 90 天有提交
来源
作者 README
GitHub 原文 ↗展示作者仓库中的原始 README 内容,实时抓取、未做改写;优先加载中文版(README.zh-CN.md 等),无中文版时回退英文。
常见问题
@rickwindman/dsh-destinywind-tpm 是什么?
@rickwindman/dsh-destinywind-tpm 是收录在 dsh.so 的 DeepSeek Harness(dsh)插件。dsh.so 是独立社区注册表:基于公开源码仓库收录,并为每个条目公开自动安全扫描与安装验证结果。
dsh.so 或本页是官方项目吗?
dsh.so 是独立社区注册表,与 DeepSeek AI 没有隶属、背书或赞助关系。
如何安装 @rickwindman/dsh-destinywind-tpm?
在 DeepSeek Harness(dsh)环境中运行 dsh plugin --profile web add github:rickwindman/dsh-destinywind-tpm。该命令从插件 manifest 解析得到,安装规范已验证(L3);运行时沙盒安装测试未必已执行。
这个页面的安全扫描是人工审计吗?
两层都是自动化检查,不是人工审计。静态扫描是对仓库源码的启发式分析,可能误报也可能漏掉上下文。模型驱动的动态安全审计只覆盖静态判定 warn 及以上的插件、不执行插件代码,有结论时以它为准(可能上调也可能下调);豁免始终由人工三筛手写。两者都不代表背书:安装前请自行审查仓库与权限申请,并结合验证等级与健康度判断。
本页数据有多新?
本页数据截至 2026-11-11(UTC):取注册表刷新、安装验证、安全扫描与动态审计时间戳中最新的合法日期,不使用构建时间冒充数据日期。
