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

本地终端执行 osmondlee/dsh-shell

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

让模型在 Windows 本机执行命令并取回输出

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

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

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

状态速览

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

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

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

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

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

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

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

专为 DeepSeek Harness 命令行打造

README

由 DeepSeek 最新模型翻译生成
dsh-shell-exec DSH 动态 Cordis 插件:通过 harness 的 shell 服务在 Windows 本地终端 执行 shell 命令,并为模型注册一个名为 shell 的动态工具。 功能 - 注册模型可见的动态工具 shell,模型可以直接调用它在当前 Windows 机器上执行任意命令(文件、进程、git、npm 等)。 - 支持三个参数:command(必填)、workdir、timeoutMs。 - 输出渲染与 harness 自带 shell 工具一致:stdout 正文 + [stderr] 段 + 退出标记([exit code: N] / [killed by signal: ...] / [timed out after Nms])。 - 基于 harness 的 shell 服务(ctx.get('shell') → resolve → run),Windows 下经 PowerShell 执行,无需引入任何外部依赖。
展开完整文档(README 剩余 1 节)
dsh-shell-exec

DSH 动态 Cordis 插件:通过 harness 的 shell 服务在 Windows 本地终端 执行 shell 命令,并为模型注册一个名为 shell 的动态工具。

功能

- 注册模型可见的动态工具 shell,模型可以直接调用它在当前 Windows 机器上执行任意命令(文件、进程、git、npm 等)。
- 支持三个参数:command(必填)、workdir、timeoutMs。
- 输出渲染与 harness 自带 shell 工具一致:stdout 正文 + [stderr] 段 + 退出标记([exit code: N] / [killed by signal: ...] / [timed out after Nms])。
- 基于 harness 的 shell 服务(ctx.get('shell') → resolve → run),Windows 下经 PowerShell 执行,无需引入任何外部依赖。

目录结构

dsh-shell-exec/
├── src/
│ └── host.js # Host 半区源码(cordis_define 的 code.host 直接粘贴此文件内容) ├── scripts/ │ └── check.js # 语法自检(npm run check) ├── package.json ├── plugin.json # 插件元数据(文档用途) ├── README.md ├── LICENSE # MIT └── .gitignore

快速开始(在 DSH Web GUI 中加载)

1. 在 DSH Web 的对话中让模型执行 cordis_define:
- plugin.kind = new,idPrefix 填 she;
- code.host 粘贴 src/host.js 的完整内容;
- 也可以直接把本文件路径交给模型,让它读取并粘贴。
2. 用返回的 pluginId / packageId 执行 cordis_run(mode = run)激活插件。
3. 激活后,模型即可调用 shell 工具执行本地命令。

使用示例

模型调用 shell 工具时,参数形如:

{
"command": "dir",
"workdir": "C:\\Users\\godeyes\\Documents\\dsh"
}

返回结构:

{
"ok": true,
"exitCode": 0,
"signal": null,
"timedOut": false,
"timeoutMs": 30000,
"stdout": "...",
"stderr": "",
"text": "..."
}

工具参数

| 参数 | 类型 | 必填 | 说明 |
| command | string | 是 | 要执行的 shell 命令行,例如 dir、git status |
| workdir | string | 否 | 命令的工作目录,缺省使用 harness 配置的工作区 |
| timeoutMs| number | 否 | 超时毫秒数;执行器会做上限截断,缺省使用实现配置的默认值 |

工作原理

- harness.defineTool({...}) 定义动态工具(参数使用 Cordis 参数 DSL,输出 schema 为 { type: 'json' })。
- harness.registerTool(ctx, tool) 注册到当前 Fiber,插件停止/更新时自动注销。
- 执行路径:shell.resolve(request) → shell.run(spec),其中 request.signal 透传工具执行的取消信号。
- ShellRunResult 包含 exitCode / signal / timedOut / timeoutMs / stdout / stderr,插件将其渲染为模型可见文本。

已知限制:沙箱执行上下文与 Schannel TLS

插件注册的 shell 工具与 harness 自带的 pwsh 工具共用同一个沙箱执行上下文(受限进程环境,如 CODEX_SANDBOX_NETWORK_DISABLED=1 等托管变量所示)。该上下文对进程有额外限制,实测影响如下:

| 工具 | 沙箱内行为 |
| curl.exe(默认 schannel 后端)、PowerShell Invoke-WebRequest / Invoke-RestMethod、npm 等走 SSPI/Schannel 的 HTTPS 客户端 | ❌ 报 schannel: AcquireCredentialsHandle failed: SEC_E_NO_CREDENTIALS (0x8009030E),对所有域名一致 |
| 走 OpenSSL 后端的工具(如 git 配置了 http.sslBackend openssl) | ✅ 正常,可完成 TLS 握手与推送 |
| 证书存储枚举(Cert:\CurrentUser\My 等) | ✅ 正常 |

要点:

- 这是沙箱固有行为,不是插件 bug。 同一台机器上,在普通终端(非沙箱)里同样的 schannel 请求全部正常;问题只出现在 harness 会话的沙箱进程上下文中,原因是 Schannel 凭据获取被受限上下文卡死(发生在任何网络请求之前)。
- 与本机注册表 SecurityProviders 被截断无关——那是另一个独立问题,影响的是 LSA 模式包(Kerberos / NTLM / CredSSP / PKU2U,即域认证、SMB、RDP 等),不影响用户态 Schannel。
- 规避方式:在命令里使用 OpenSSL 后端的工具即可,例如 git -c http.sslBackend=openssl push,或对 curl 使用 --ssl-no-revoke 之外的替代方案(如 wget / OpenSSL 后端)。

开发

npm run check # 语法自检(把 src/host.js 作为函数体编译,不执行)

仓库

远程仓库:https://github.com/osmondlee/dsh-shell.git

License

MIT
预览分享卡片长什么样 ↓osmondlee/dsh-shell
分享 · DeepSeek Harness Hub
osmondlee/dsh-shell

让模型在 Windows 本机执行命令并取回输出

回到顶部