DSH Hub

ma-pony/deepspider

deepspider

BundleWorkflow18 GitHub stars· updated 2026-08-19

deepspider is a community DeepSeek Harness plugin. Read the repository README before installing.

Install

npx @deepseek-ai/dsh plugin --profile web add deepspider

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

deepspider DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/deepspider.svg)](https://dshhub.dev/plugins/deepspider)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from ma-pony/deepspider, cleaned of badges and images.

DeepSpider

AI 原生的智能爬虫与 JavaScript 逆向工程平台——基于 DSH、Patchright/CDP 与独立语义运行时,从浏览器证据恢复参数生成逻辑,并交付经过真实请求验证的可运行 Solver。

DeepSpider 将 DSH Web、Patchright Chromium、Chrome DevTools Protocol(CDP)和独立 Node 语义运行时组合成一套逆向工作台。浏览器负责采集请求、脚本与运行时事实;最终结果必须由非浏览器运行时重新生成,并通过真实请求验证,而不是停留在页面自动化或一次抓取结果。

English

快速开始

需要 Node.js >=24.15.0。全局安装会下载 Patchright Chromium。

npm install -g deepspider
deepspider agent

deepspider 同时发布为原生 DSH Bundle。主启动命令会通过 DSH Profile 管理器将它挂载到 web Profile;已有 DSH 环境也可以直接安装:

dsh plugin --profile web add deepspider
dsh web

这是主启动命令。DSH Web 会加载 Spider Preset;新建一个 Session,说明目标 URL、触发路径和目标输出。首版自动语义恢复只支持 Cookie。Header、Query、Body、返回值和导航仍可作为浏览器证据、Output Contract 和手工分析目标,但当前不会由高层工具自动生成 reproduced 结果或 Solver。多个 Session 可以同时运行,各自持有独立浏览器、SessionArtifactStore、Worker 和产物目录。

Ctrl+C 会关闭 DSH Web,并等待所有 Session 的 Patchright Chromium、sdenv Worker 和运行资源退出。

DeepSpider 解决什么问题

  • 沿真实请求的 Initiator、调用栈和脚本源码定位参数写入边界。
  • 分析动态执行、Webpack、Worker、WebAssembly、状态机和高度混淆代码。
  • 用 Hook、Debugger 和属性采集补足浏览器事实,而不是直接修改捕获源码。
  • 将 Cookie 生成所需的浏览器依赖描述成可审计的 Runtime Recipe,再由独立 Worker 执行。
  • 用真实请求验证自动生成的 Cookie,并导出可以脱离浏览器 Session 重跑的 Solver;其他输出继续使用通用浏览器、Hook、Debugger 和 Code Mode 定位与实现。

唯一完成定义

对于当前自动支持的 Cookie 恢复,只有以下链路全部成立才算完成:Browser Oracle 已保存目标证据;Output Contract 与 Runtime Recipe 已绑定当前 Session;独立 sdenv Worker 用全新状态生成 Cookie;CycleTLS 仅使用这些生成值完成真实请求;验证等级为 reproduced;导出的 Solver 能在浏览器关闭后再次得到同一验收结果。

浏览器结果、页面自动化脚本、捕获 Cookie、单次 Hook 日志或仅能回放的请求都不是完成证据。

输出驱动的语义恢复

Browser Oracle → Session Artifact Graph → Output Contract → Runtime Recipe
               → sdenv Worker → Real-request Validation → Solver
阶段作用边界
Browser Oracle用 Patchright Chromium + CDP 观察真实页面、请求、脚本和运行时事实浏览器最终值只形成 observed 证据
Session Artifact Graph关联 Document、Script、动态源码、请求、响应及后续恢复产物原始内容不可覆盖,所有节点属于当前 Session
Output Contract定义要生成的输出和请求成功条件只恢复影响目标输出的语义
Runtime Recipe声明固定值、属性隐藏、window proxy、UA、TLS 与超时站点规则留在 Session Recipe,不进入通用底层分支
sdenv Worker在独立 Node 子进程和全新 Cookie Jar 中执行页面语义不读取 Patchright 最终输出或 browser-data/
Request Validation仅用 Worker 生成值发起真实请求状态与内容条件同时通过才是 reproduced
Solver导出 Contract、Recipe 与独立入口浏览器关闭后仍能重新生成并验证

Output Contract 可以描述 Cookie、Header、Query、Body、返回值和导航。首版端到端自动链路只对 Cookie 实现 Worker 生成、真实请求验证和 Solver 导出;其余类型保留 Contract、Artifact Graph 和手工逆向能力,不宣称自动 reproduced

三种证据等级

等级含义
observed来自 Browser Oracle 的真实观察,可用于定位和建立 Contract
replayed使用已捕获值或响应重放,只能用于诊断和对照
reproduced独立 Node 运行时重新生成目标输出,并通过真实请求验证

Runtime Recipe 的站点边界

确定的固定指纹、属性隐藏、window proxy 配置和站点规则可以写入当前 Session 的 Runtime Recipe。Recipe 与 Contract、引擎版本、上游 Artifact ID 和 SHA-256 一起进入生成结果身份链。通用底层只执行声明式规则,不按站点名称、Cookie 名或风控厂商分支。

Patchright Session 是重要样本,但不是浏览器环境的唯一真值。遇到自动化特征或时序差异时,可结合普通 Chrome、多个 Session 或已确认的目标行为采集新证据,再更新 Recipe。

原始证据与派生产物

捕获的脚本、响应和动态源码保存为不可变 observed Artifact。格式化、去混淆或定点处理会创建新的 derived Artifact,并保留来源 ID、变换说明和内容哈希。Worker 输出保存为 generated Artifact;只有真实请求验证通过,结果才达到 reproduced

一个恢复入口

正常恢复只使用高层工具:

recover_target_output({ url, outputKind, outputSelector?, mode? })

对于 Cookie Contract,工具建立 Artifact Graph、Output Contract 和 Runtime Recipe,启动 Session-owned sdenv Worker,执行真实请求验证并导出 Solver。Header、Query、Body、返回值和导航可以进入证据与 Contract,但当前高层工具不会为它们自动完成独立生成和 Solver 导出。工具只向 Agent 返回阶段状态、证据等级、策略、首个 blocker、Solver Artifact ID 和下一动作;源码、Cookie 值和完整运行日志保留在私有 Session Artifact 中。

Related plugins