oproxy 是一个本地 HTTP、HTTPS、HTTP/3、WebSocket 和 SOCKS5 代理,用于检查、重放和修改来自浏览器、CLI、移动应用、API 客户端、服务和测试套件的流量。
它在同一个本地监听器上运行 Web UI、API 和可选的 AI 助手,因此你可以在不更改应用程序代码的情况下捕获流量、检查请求和响应、重放请求、模拟上游、重写流量、限制响应速度并导出可复现的代码片段。
助手是一个与 OpenAI 兼容的控制平面客户端:它可以通过允许列表中的工具检查当前代理状态,并将流量/配置更改准备为可审查的确认卡片。
安全提示:HTTPS 拦截需要信任本地 oproxy 根 CA。仅在你控制的机器和浏览器上安装该 CA,妥善保管生成的私钥,并且在没有强令牌的情况下不要暴露管理 UI。
docker run --rm \
--name oproxy \
-p 127.0.0.1:8080:8080 \
-p 127.0.0.1:1080:1080 \
-p 127.0.0.1:8443:8443/udp \
-e OPROXY_BIND_HOST=0.0.0.0 \
-e OPROXY_MITM_ENABLED=true \
-e OPROXY_HTTP3_ENABLED=true \
-e OPROXY_HTTP3_PORT=8443 \
-e OPROXY_ALLOW_REMOTE_ADMIN=true \
-e OPROXY_ADMIN_TOKEN=change-me-to-a-strong-secret \
-v oproxy-certs:/app/certs \
-v oproxy-storage:/app/storage \
ghcr.io/sauravrao637/oproxy:latest
打开 http://127.0.0.1:8080 并使用令牌登录。
Docker 桥接网络需要 OPROXY_BIND_HOST=0.0.0.0。上述命令仍然只在主机回环地址上发布端口。在实际使用前更改 OPROXY_ADMIN_TOKEN。
docker compose up --build
已检入的 Compose 文件启用了 MITM、UDP 8443 上的 HTTP/3、持久化证书/状态以及健康检查。
要求:Rust 1.85+、Node.js 22+,以及通过 Corepack 安装的 Yarn。
corepack enable
yarn --cwd src/design install --frozen-lockfile
yarn --cwd src/design build
cargo run --release
打开 http://127.0.0.1:8080。
curl -x http://127.0.0.1:8080 http://example.com
该请求会出现在 Sessions 视图中。
对于 HTTPS:
curl http://127.0.0.1:8080/admin/ca -o oproxy-ca.crt
curl --cacert oproxy-ca.crt -x http://127.0.0.1:8080 https://example.com
对于浏览器 HTTPS 捕获,将浏览器或操作系统配置为使用 127.0.0.1:8080 作为 HTTP 和 HTTPS 代理,然后从 http://127.0.0.1:8080/admin/ca 导入 CA。


oproxy 根据 MIT 许可证 授权。