DeepSHPlugins
dsh-net-tools 项目预览
GITHUB / COMMUNITY PROJECT

dsh-net-tools

工具与集成JavaScriptMIT

让沙箱里的 agent 通过你的本地代理联网:net_fetch 抓取网页,net_proxy_status 查看代理状态。

4 Starsizwarm195 更新时间 2026-08-17
访问 GitHub 仓库
dsh-net-tools 项目预览

项目介绍

中文

让沙箱里的 agent 通过你的本地代理联网:net_fetch 抓取网页,net_proxy_status 查看代理状态。

English

Lets sandboxed agents reach the web through your local proxy: net_fetch fetches pages, net_proxy_status reports proxy status.

项目信息与收录信号

快照 2026-09-11
作者 / 组织
izwarm195
仓库
izwarm195/dsh-net-tools
GitHub Stars
4
Forks
0
开发语言
JavaScript
许可证
MIT
最近推送
2026-08-17
Manifest
数据中检测到声明

公开仓库不自动等于可商用;许可证与当前兼容性以原项目文档为准。Manifest 和数据评分不构成安装安全认证。

数据评分

60/ 100
维护活跃
83
文档与实用信息
100
生态关注度
20
安装便捷信号
75
项目声明信号
100

README 含完整安装与使用说明;关注度尚低(4)。

评分来自已有数据快照的五维模型,仅作浏览参考,不是实际使用评测或安全检测结论。

安装与使用

所有项目资料与许可均以对应 GitHub 仓库为准。

dsh plugin --profile web add github:izwarm195/dsh-net-tools

复制命令不会自动执行。请先阅读仓库文档,确认环境要求与许可证。

项目截图

仓库 README

GitHub 原文

已保存的仓库文档快照;文档抓取时间未记录,可能与上方目录介绍处于不同版本。安装前请核对当前仓库说明。

dsh-net-tools

让DSH使用你的魔法:把沙箱里的 agent 接上你本地的 HTTP 代理,一条命令就能抓取被墙的网站、文档和 API。

English · 简体中文

🤖 关于本项目

本项目由 AI 完全开发与维护:代码、测试与文档均由 AI(DeepSeek Harness 编码代理)生成,人工仅负责审阅、验收与发布。

要解决的问题

DSH 在文件沙箱(workspace-write)里执行命令时:

  • Windows 基于 schannel 的 TLS(curl、PowerShell)无法获取凭据,所有 HTTPS 请求都会失败并报 SEC_E_NO_CREDENTIALS;
  • Node.js 自带独立的 TLS 实现不受影响,但沙箱 shell 依然无法稳定联网;
  • 本机代理(如 127.0.0.1:7897)只有在每个工具都记得手动传入时才会被使用,极易漏配。

这个插件做了什么

工具运行在 DSH 宿主进程(Node.js)中,位于文件沙箱之外,TLS 正常工作。插件提供:

  • net_fetch —— 通过用户代理的手动 CONNECT 隧道抓取 HTTP(S) 内容(不走 schannel、零依赖)。自动跟随重定向、执行超时/大小上限/SSRF 防护,返回文本(或截断后的响应体)。
  • net_proxy_status —— 报告 DSH 进程会使用哪个代理(用户级环境变量、当前进程环境变量、Windows 系统代理),并检测其可达性。

代理发现顺序:显式 proxy 参数 → HTTPS_PROXY / HTTP_PROXY 环境变量 → Windows 系统代理(注册表 Internet Settings)。

安装

dsh plugin --profile web add <本包>
# 或:dsh plugin --profile desktop add <本包>

安装后重启 DSH,agent 即可使用这两个工具。

使用示例

抓取一个被墙的页面(自动走代理):

net_fetch(url: "https://github.com/")
→ [200] https://github.com/ (via proxy) 1212ms …

排查代理配置:

net_proxy_status(checkReachability: true)
→ effective: http://127.0.0.1:7897
  proxy reachable: true
  probe: [204] https://www.gstatic.com/generate_204 ok=true

实际效果:agent 思考过程中连续调用 net_fetch 抓取网页(截图):

net_fetch 使用示例

测试

npm test
# 沙箱内无法 spawn 子进程时,用同进程模式:
node --test --test-isolation=none test/fetch.test.js

安全设计

  • 仅允许 http: / https: 协议;
  • SSRF 防护:默认拒绝私网 / 回环 / 链路本地地址(传 allowPrivate: true 可放行);
  • 响应大小上限(默认 1 MiB)、超时上限(默认 30 秒);
  • 重定向最多 5 次,且每次重定向都重新执行同样的安全校验。

许可

MIT © 2026 izwarm195

使用前核对

安装步骤、兼容版本与授权范围以原项目当前文档为准。Stars 和评分是快照中的导航信号。

安装与排错 · 项目问题反馈

同类项目