DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Safe Web Fetch — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

dsh-safe-web-fetch

Safe Web Fetch

抗 SSRF 的 HTTP(S) 获取提供程序,适用于 DeepSeek Harness

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add dsh-safe-web-fetch@0.1.0-next.0
README兼容性版本

兼容性与来源证明

Safe Web Fetch 以 dsh-safe-web-fetch 发布,当前版本为 0.1.0-next.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
npm
Registry 更新时间
2026/9/20

版本

0.1.0-next.0prerelease
2026/8/14

相关插件

正在加载相关插件…

最新版
0.1.0-next.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
47.6 kB
文件数
16
Surface
any
许可证
MIT
发布源
npm
GitHub
★ 0
周下载
94
最近提交
2026/8/14
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 security-access 分类下经过校验的插件。

Doctor@linxin666/dsh-doctorDSH 配置档案的事务性救援模式,配备受监督的启动器、隔离的恢复容器、确定性修复、健康监控以及本地 Web 恢复控制台Pocketdsh-pocket把 DeepSeek Harness 装进你的口袋:一个包、一个设置页,手机扫码即同步访问电脑上的 DSH(局域网 + 公网,实时同屏)。DSCODE@toddzheng024/dscode-bundle完整的 DeepSeek 编码代理,支持持久化 shell、Ultra 协作和自动权限审查。Auto Reviewdsh-auto-review针对 DeepSeek Harness 审批请求的第二模型 AI 自动审查:只读审查子代理在审批应答链上决定允许或拒绝,并采用故障关闭回退机制和完整的会话日志审计。

README

dsh-safe-web-fetch

dsh-safe-web-fetch gives DeepSeek Harness a safer way to use its web_fetch capability. It plugs into DSH's existing ctx.web service, so it works with the normal tool and profile system instead of introducing a second web-search API.

The idea is simple: a hostname must resolve to a public address before a connection is opened. Each request hop is pinned to the addresses that were checked, redirects stay on the same origin, and responses are kept within predictable size and time limits.

Quick start

The package includes a DSH bundle, so one command installs it and adds the profile layer:

dsh plugin --profile safe add dsh-safe-web-fetch@next
dsh --profile safe --dump-config

The bundle registers a safe-http provider, enables DSH's existing web_fetch tool, and leaves search on the base profile's provider. For a deployment, pin the version you have tested:

dsh plugin --profile production add dsh-safe-web-fetch@0.1.0-next.0

You can install a reviewed Git revision instead:

dsh plugin --profile safe add github:MostlyHarmlessxyz/dsh-safe-web-fetch#<commit-sha>

Git installs build the package locally. If pnpm asks you to approve that build, follow the profile-specific instruction it prints; an npm package or tarball is the simpler option when you want prebuilt files.

What it does

For every fetch, the provider:

  • accepts only HTTP and HTTPS URLs without embedded credentials;
  • applies optional host allow/deny lists (entries are exact; write *.example.com when subdomains are intended);
  • checks every DNS answer, including IPv4-mapped IPv6 and special-purpose ranges, before opening a socket;
  • connects through an isolated Undici dispatcher pinned to the checked address;
  • rechecks every same-origin redirect and rejects cross-origin redirects;
  • limits response bytes, decoded characters, redirects, concurrent requests, and total time;
  • returns only text-like media types (text, HTML, JSON, and XML) in DSH's usual result shape.

It does not add cookies, authorization headers, browser state, or request bodies. A public address is not automatically trustworthy content: prompt injection, malware, and HTML sanitization remain application concerns.

Configuration

The defaults are deliberately modest:

OptionDefaultMaximum
maxUrlLength204816384
maxResponseBytes5000000100000000
maxBodyChars10000010000000
timeoutMs30000Node timer limit
maxRedirects520
maxConcurrentRequests16128

allowHosts, denyHosts, and userAgent are also configurable. DSH replaces a row's complete config when a patch targets it, so include every value you want to keep:

- id: safe-web-fetch
  name: dsh-safe-web-fetch
  config:
    maxUrlLength: 4096
    maxResponseBytes: 10000000
    maxBodyChars: 200000
    timeoutMs: 30000
    maxRedirects: 3
    maxConcurrentRequests: 8
    allowHosts:
      - '*.docs.example.com'
    denyHosts: []
    userAgent: my-company-fetch/1.0

If you mount the function plugin yourself instead of using the bundle, set fetchProvider: safe-http on the web row. When more than one provider is available, always select one by id; DSH will otherwise report WEB_PROVIDER_AMBIGUOUS rather than guessing.

A note about the security boundary

The built-in resolver is raced against the request deadline, but a third-party resolver cannot always be stopped at the operating-system level. A custom resolver or transport is an extension point for tests and trusted integrations, not a way to make an untrusted network client safe.

This package deliberately follows only same-origin redirects and handles text responses. It is not an egress firewall, content scanner, approval screen, or proxy policy. For an organization-wide zero-trust network, keep those controls at the network boundary and use this provider as an additional check.

Compatibility and development

The published peer range covers DSH 0.1.0-rc.5 through the 0.1.x line and Cordis 4.x. DSH is still a developer preview, so test the exact versions used by your profile.

Requires Node ^22.19.0 or >=24.0.0 and pnpm 11:

pnpm install
pnpm run typecheck
pnpm test
pnpm run build
npm pack --dry-run

The tests include address-range and malformed-DNS cases, redirect revalidation, cancellation, response limits, lifecycle disposal, and a local HTTP server that verifies the socket is pinned while the original Host header is retained.

Release notes and the maintainer checklist live in RELEASE.md. The project is MIT licensed.