🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

子进程环境透传 zhangzujian/dsh-subprocess-inherit-environment

DeepSeek Harness
zhangzujian81 天前有提交已提供中文文档扫描:未发现敏感能力

将完整进程环境注入子进程调用,供命令读取

27.5/100
综合分
2
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add zhangzujian/dsh-subprocess-inherit-environment
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
dsh 原生插件 · other
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 81 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 注入完整进程环境
  • 供子进程命令读取

DSH 插件,通过 ctx.subprocess 转发完整 Harness 环境

README

由 DeepSeek 最新模型翻译生成
dsh-subprocess-inherit-environment 一个可移除的 DeepSeek Harness / DSH 插件,它有意将 Harness 进程的完整环境通过 ctx.subprocess 服务转发出去。 安全警告 此插件禁用了 DSH 的子进程凭据隔离。 每个使用被包装的子进程服务的调用方都可以将 Harness 进程的 API 密钥、令牌、密码、机密、Cookie、代理凭据以及其他环境值传递给子进程。模型生成的命令、仓库脚本、包安装程序、CLI、MCP 服务器以及终端程序都可能读取或窃取这些值。 请勿在共享或不受信任的 Harness 部署上安装此插件。在可能的情况下,优先使用专用工具或精确的变量允许列表。 该插件本身从不记录环境变量名称或值。但这并不能阻止子进程打印或传输它们。 行为 DSH 通常从经过清理的父环境启动子进程。在合并显式请求条目之前,匹配 KEY、PASSWORD、SECRET 或 TOKEN 的变量名,以及环境中的 DSH_* 名称,都会被移除。
展开完整文档(README 剩余 1 节)
dsh-subprocess-inherit-environment

一个可移除的 DeepSeek Harness / DSH 插件,它有意将 Harness 进程的完整环境通过 ctx.subprocess 服务转发出去。

安全警告

此插件禁用了 DSH 的子进程凭据隔离。 每个使用被包装的子进程服务的调用方都可以将 Harness 进程的 API 密钥、令牌、密码、机密、Cookie、代理凭据以及其他环境值传递给子进程。模型生成的命令、仓库脚本、包安装程序、CLI、MCP 服务器以及终端程序都可能读取或窃取这些值。

请勿在共享或不受信任的 Harness 部署上安装此插件。在可能的情况下,优先使用专用工具或精确的变量允许列表。

该插件本身从不记录环境变量名称或值。但这并不能阻止子进程打印或传输它们。

行为

DSH 通常从经过清理的父环境启动子进程。在合并显式请求条目之前,匹配 KEY、PASSWORD、SECRET 或 TOKEN 的变量名,以及环境中的 DSH_* 名称,都会被移除。

此插件包装了三个 ctx.subprocess 操作,并提供由 process.env 构建的显式环境层:

- resolveExecutable(command, env, signal)
- spawn(spec)
- spawnTerminal(spec)

这三个操作都必须是函数。自有方法描述符必须是可配置的;继承的方法以及缺失的安装标记要求运行时是可扩展的;已存在的标记槽必须是可配置的。应用(apply)会在变更之前检查该完整替换契约。如果定义标记或任何方法仍然失败,或者 Cordis 拒绝 effect 注册,apply 会在重新抛出错误之前回滚标记以及每一个已安装的方法描述符。

调用方提供的条目会在每次调用时于全新的 process.env 展开之后合并,因此显式覆盖和 undefined 墓碑值会保留其原有含义。该插件不会修改调用方拥有的请求。

释放(Disposal)首先使每个已安装的包装器失效,然后在插件仍然拥有它们时恢复之前的方法描述符。因此,一个捕获并委托给插件方法的后续包装器在释放后会以调用方的精确参数到达原始 DSH 方法,而不会注入环境。后续的方法替换不会被覆盖。在第一个安装处于活动状态时,在同一子进程运行时上多次安装此插件会被拒绝,从而避免不明确的乱序拆除。

该插件覆盖那些通过 ctx.subprocess 进行进程创建的消费者。它无法影响绕过该服务并直接调用 Node.js 进程 API、worker API 或 SDK 自有的 spawn 的代码。

安装到 DSH 配置文件中

在此包发布到 npm 之前,请克隆它并添加本地目录:

git clone https://github.com/zhangzujian/dsh-subprocess-inherit-environment.git
cd dsh-subprocess-inherit-environment
npx @deepseek-ai/dsh@0.1.0-rc.6 plugin --profile web add "$PWD"

该包声明了一个 DSH bundle,因此 dsh plugin 会自动将其补丁层添加到该 profile。如果当前激活的 profile 不会热重载服务器插件,请重启 DSH。

要移除它并恢复 DSH 的默认凭据清理: bash
npx @deepseek-ai/dsh@0.1.0-rc.6 plugin --profile web remove @zhangzujian/dsh-subprocess-inherit-environment

对于本地文件 URL 覆盖: yaml
- insert:
- id: subprocess-inherit-environment
name: file:///absolute/path/to/dsh-subprocess-inherit-environment/index.mjs

测试

单元测试需要 Node.js 22 或更高版本: bash
npm test

集成测试针对已安装的 DSH 目录树运行,并验证原始清理、继承环境以及释放时的恢复,且不会打印任何密钥值: bash
DSH_INSTALL_DIR=/path/to/dsh/install npm run test:integration

DSH_INSTALL_DIR 是包含 node_modules/@deepseek-ai 的目录。

许可证

MIT
预览分享卡片长什么样 ↓zhangzujian/dsh-subprocess-inherit-environment
分享 · DeepSeek Harness Hub
zhangzujian/dsh-subprocess-inherit-environment

将完整进程环境注入子进程调用,供命令读取

这是你的仓库?认领条目

回到顶部