Download
ProxyPro ships in three forms: a pre-built .dmg for macOS (Apple Silicon
or Intel, ad-hoc signed) hosted on GitHub Releases, a standalone engine
binary for headless npx proxypro-harness use, and the source tree
on GitHub for anyone who’d rather build it themselves.
Pre-built .dmg
Install
- Download the
.dmgfrom the card above - Open it; drag ProxyPro.app into Applications
- Do the Gatekeeper workaround above that matches your macOS
- Continue with the Quickstart for cert install + proxy setup
Verify
Download SHA256SUMS from the same GitHub release, then verify only the DMG
you selected. For Apple Silicon:
cd ~/Downloadsgrep ' proxypro-0.1.0-arm64.dmg$' SHA256SUMS | shasum -a 256 -c -# proxypro-0.1.0-arm64.dmg: OKFor Intel, replace arm64 with x64. The release gate generates the manifest
from an exact six-asset contract (both DMGs, three standalone engines and the
skill zip) and immediately verifies every digest before upload. The
build-from-source path remains available for independent
reproduction from the tagged commit (v0.1.0-alpha.34).
Standalone engine (headless / npx proxypro-harness)
The proxypro-harness npm
package ships the MCP server + Playwright glue but not the Go engine. On
macOS or Linux, the recommended path is simply npx proxypro-harness: it selects
the release asset for the current OS/CPU, verifies its SHA-256 digest, and caches
the extracted engine. Supported targets are macOS arm64/x64 (one universal
asset) and Linux arm64/x64 (per-architecture assets).
To manage the binary manually, download the matching standalone engine from the
release and point PROXYPRO_ENGINE at it. This macOS example uses the universal
asset; Linux asset names end in linux-amd64.tar.gz or linux-arm64.tar.gz:
curl -L -o engine.tar.gz \ https://github.com/trongitnlu/proxypro/releases/download/v0.1.0-alpha.34/proxypro-engine-0.1.0-alpha.34-darwin-universal.tar.gztar -xzf engine.tar.gzexport PROXYPRO_ENGINE="$PWD/proxypro-engine"npx proxypro-harness # boots the engine + MCP server on 127.0.0.1:9091Installing the .dmg already embeds this same engine, so GUI users need none
of the above.
Build from source
The source build is small (~2 min on M-series macs) and gives you a
fresh, ad-hoc-signed .app with no Gatekeeper warning (since macOS
won’t have quarantined a file you compiled).
git clone https://github.com/trongitnlu/proxypro.gitcd proxypromake bootstrap # one-time: install Go protoc plugins + pnpm depsmake engine # universal arm64+amd64 engine binarymake dist # electron-builder packages .app + .dmgopen app/dist/mac/ProxyPro.app # or drag from app/dist into ApplicationsRequirements: macOS 14+, Node 20 LTS, pnpm 9+, Go 1.22+. See the Quickstart for full details.
Why two distribution forms?
.dmgfor non-developers — drag-to-Applications experience.- Source build for contributors — also useful if you don’t trust the binary and prefer to compile yourself.
Release notes
Latest: v0.1.0-alpha.34 (2026-10-27) — Present several scenarios in a row: after Open suite, Scenario Studio’s Demo playlist presents the picked files one after another in Demo mode, with a Next card that waits for Start and a stop on any failure. The Studio toolbar fits on one row, results move into Run, Suite, Scheduling and Audits tabs, and the editor keeps its height. Changed-file runs rerun Scenarios that share a resource with the change instead of every Scenario on the same API. Harness 0.12.0.
Previously: v0.1.0-alpha.33 (2026-10-13) — Present a scenario live: Scenario Studio’s Demo mode adds Pause, Resume and Step, step breakpoints, network breakpoints with an inspector, pacing, element highlight and a visible browser; scenario format v1.11 adds a pause step with a note, and an agent can present a scenario in Studio over MCP while you keep the controls. Steps now wait for requests that are still in flight, and the sidebar collapses to an icon rail. Harness 0.11.0.
Earlier: v0.1.0-alpha.29 (2026-10-07) — Mock APIs from a repo: the engine serves an OpenAPI file or a stateful mock stack as a real loopback origin, the AI writes that file from your code with /mock-repo, every mock server gets a live docs page with “Try it”, the Desktop gains a Mock servers view with an on/off toggle per server, and the MCP panel installs the ProxyPro skills in one click. Harness 0.7.0 adds proxypro-harness mock.
Earlier: v0.1.0-alpha.28 (2026-09-23) — A redesigned desktop shell and self-cleaning MCP sessions: a left sidebar and one shared visual system across every view, in-app dialogs that fix three prompts Electron never supported, MCP sessions that dispose themselves when an agent exits or calls session_finish, and a system proxy toggle that names the VPN overriding it. It also carries the unpublished v0.1.0-alpha.27 work: AI Copilot file attachments and the native run_scenario tool.
Earlier: v0.1.0-alpha.26 (2026-09-02) — Scenario format v1.7, and decrypted HTTP/1.1 answers again: press_key and select_option become first-class scenario actions; every HTTP/1.1 client reaching a decrypted host now gets a response, where before only HTTP/2 worked; and native request steps traverse the proxy instead of bypassing it, so expect_network, extract, and OpenAPI contract assertions finally see their flows.
Earlier: v0.1.0-alpha.25 (2026-08-27) — parallel Scenario suites with declared shared resources, deterministic setup/teardown, quarantined dirty resources that survive restart, and a scheduling policy lifecycle backed by a tamper-evident decision ledger.
Earlier: v0.1.0-alpha.22 (2026-08-16) — Setup Doctor, structured capture workflows, performance diagnostics, release integrity, and compact desktop navigation. See the GitHub release for full notes, or the changelog for the cumulative history.
All releases live at github.com/trongitnlu/proxypro/releases.
For maintainers — how this page is updated
- Local build:
make release VERSION=vX.Y.Z(builds + smoke-tests both arch dmgs + skill zip; stamps the engine version) - Manual browser E2E (the smoke script doesn’t cover
browser_*): launch the packaged app,claude mcp add --transport http proxypro http://127.0.0.1:9091/mcp, confirm the browser tools are listed, thenbrowser_launch→browser_goto→ the request appears in the GUI capture list →browser_close - Build and verify all standalone engines with
make verify-engine-artifacts VERSION=X.Y.Z. This creates the macOS universal, Linux amd64, and Linux arm64 tarballs inapp/dist/using the exact filenames consumed byproxypro-harness. - Tag + push:
git tag -a vX.Y.Z -m "..." && git push origin vX.Y.Z. - Create a draft release containing both
.dmgfiles, all three engine tarballs,proxypro-claude-skill.zip, and the generatedSHA256SUMS. Runbash scripts/verify-harness-release.sh vX.Y.Z remote, then publish the draft. This guarantees Linux users never observe a published release with missing engine assets. After publication, theRelease Linux enginesworkflow independently native-builds both Linux binaries as CI evidence and verifies the remote engine contract plus all six entries inSHA256SUMS; it never replaces an already-checksummed release asset. - Only after the remote contract passes, publish
proxypro-harnessfromharness/; first run the strict pin checkbash scripts/verify-harness-release.sh vX.Y.Z remote. ItsengineReleasemust equalvX.Y.Z. - Edit the
hrefon the two LinkCards above + the enginecurlURL in the “Standalone engine” section to point at the new version (DMG URL pattern isgithub.com/trongitnlu/proxypro/releases/download/vX.Y.Z/proxypro-X.Y.Z-<arch>.dmg) - Git push — Cloudflare Pages rebuilds + redeploys automatically