youkongling/dsh-plugin-gate
youkongling★ 0JavaScript最后同步: 2026-08-16
Standalone pre-install security gate for DeepSeek Harness plugins, with npm, Git, and local source review.
README 摘要
dsh-plugin-gate dsh-plugin-gate 是一个独立的 DSH 安装前门禁插件。它在安装插件之前静态物化并审查 npm、Git 或本地插件源,不修改 DSH 宿主源码,也不执行被审查插件的生命周期代码。 实现有意复用两个上游的安全设计: - OpenAI Codex :npm pack --ignore-scripts 、有界 tar 解包、package manifest/路径规则、不可变安装 pin。 - Claude Code 插件市场 :GitHub HTTPS host allowlist、commit SHA pin、marketplace invariant 检查、官方只读 policy reviewer prompt/schema。 能力对照 门禁层 来源 本插件行为 npm 物化 Codex npm source 只 npm pack --ignore-scripts ,要求精确版本,不安装依赖,不运行 scripts;记录 tarball SHA256 npm tar 解包 Codex plugin bundle archive 限制压缩/解压大小;拒绝绝对路径、 .. 、盘符、symlink、hardlink、非常规类型;要求唯一 package/ 根 manifest/路径 Codex manifest 规则 package.json 必须是常规文件且不超过 1 MiB;版本和 dsh.bundle.patch 路径受限;realpath 不允许逃逸插件根 Git 物化 Claude marketplace action 仅允许 HTTPS GitHub/GitLab/Bitbucket 及其子域;必须 40 位 commit SHA; fetch + checkout + rev-parse 复验 catalog invariant Claude I1-I11 名称、描述、排序、去重、HTTPS、SHA、路径、隐藏 Unicode、shell 元字符;I7 是上游仓库流程约束,不适用于独立插件 DSH manifest Claude I8 的 DSH 适配 物化结果必须有有效 package.json 与 cordis.patch.yml policy scan Claude official prompt/schema 调用 claude -p --bare ,只允许 Read,Glob,Grep ,输出 schema 校验和脱敏;结果按内容 SHA 与 policy hash 缓存 本地源 DSH 适配 先复制到私有 staging 快照;拒绝 symlink/非常规文件;扫描与 fingerprint 都作用于快照 补充边界: - npm catalog 源必须提供精确 semver;直接 CLI 源同样…
在 GitHub 查看完整 README →