Cloak Proxy

A free, native macOS HTTPS debugging proxy with a built-in API client and a local MCP server with 133 tools for AI agents. Linux beta.

Documentation

A native Mac app, not a web page in a box.

Written in Swift, with a command palette for everything (⇧⌘A). Switch between the main screens, in light or dark.

Cloak Proxy's traffic list of captured requests above the inspector

Every request, live

Each app and host in the sidebar, with method, status, size and timing. Filter by anything you type.

The response inspector showing a JSON body as a tree with keys, values and types

Request and response, side by side

A fast JSON tree with JSONPath and jq, plus viewers for forms, images, Protobuf, MessagePack and hex.

The Breakpoint window with a paused request ready to edit, execute, cancel or abort

Pause it, mock it, change it

12 debugging tools, each a right-click away on any captured request.

Insights overview flagging a leaked Stripe key, an AWS key, a slow endpoint, failed requests and schema changes

Problems, found for you

Leaked keys, slow endpoints, weak security headers and API schema changes, flagged as you browse.

The API client with a Petstore collection and HTTP, GraphQL, gRPC, WebSocket, Socket.IO, MQTT, MCP, AI, TCP and SQL requests

An API client, built in

Collections, environments, tests, runs, mocks and load tests, saved as plain files you can keep in Git.

Cloak Proxy for iPad in landscape: the traffic list next to a JSON response open in the inspector

Coming soon

Cloak Proxy for iPad

Your Mac's traffic, live on the iPad, or the iPad's own apps captured on the iPad itself.

A proxy that tests, not just watches.

0.4.0 read AI traffic, turned what you captured into API tests, broke things on purpose and handed a bug to your team with the proof attached. 0.4.1 added a query language, live sharing and a browser extension, and brought nearly every Mac window to the Linux beta. 0.5.0 catches the Mac apps that ignore the proxy.

0.5.0Mac · the Linux beta stays on 0.4.2

0.4.119 October 2026

  • Query language

    Type what you're looking for.

    The filter bar takes conditions like these, with autocomplete from your session and saved queries. Highlight and extract rules color the rows a query picks and copy a value from each into its own column. status:5xx app:ShopApp dur:>500ms 36 fields · autocomplete · saved queries
  • Live sharing

    Show a colleague, live.

    Proxy › Share Live Traffic gives a read-only link and a QR code for someone on your network. A query picks what they see, secrets are hidden, and the link ends when you say. Their browser connects straight to your computer. No upload · no account · ends on a timer
  • Browser extension

    Which tab sent that request?

    For Chrome, Edge, Brave and Firefox. Each request shows the tab, page and frame that made it and the script line or stack that started it. Record one tab without a system proxy, and console errors go into bug reports. Comes with the app · built into Safari from 0.5.0

Also in 0.4.1: the API client reads and writes .http files from VS Code's REST Client and JetBrains, shares headers across a collection, builds an environment on another and reads.env files, with preview tabs and Go to Request (⌘P) · MCP tools for queries · the Linux beta, nearly complete · 0.4.1 release notes

0.4.0 brought the four chapters below, plus the Linux beta · a cleaner toolbar · a redrawn Privacy Map · plain-language TLS errors · Apple services never decrypted · all release notes

See what your AI actually sent.

Model calls and token streams are HTTP like everything else. Cloak Proxy reads them the way you would: tokens, cost, the prompt as a transcript, and every streamed event as it lands.

Every token, every cent, every cache miss.

Model calls from any app or agent get an AI tab: the model, input, cached and output tokens, the estimated cost, time to first token and speed, and a bar of where the context window went.

  • OpenAI, Anthropic, Gemini, Ollama and OpenAI-compatible servers
  • The first change since the last turn: where the prompt cache stops matching
  • Spend by model, app and host, and a cost budget for CI

Read the docs

Streams that stream, even through a proxy.

Server-Sent Events, JSON lines and long chunked bodies pass through as they arrive, so chat UIs keep typing while you watch. The Messages tab lists every event with the gap since the one before.

  • A timeline strip that shows a slow first token or a stalled stream
  • GraphQL subscriptions, @defer and @stream, operation by operation
  • Ended, closed by the app or broken: the list says which

Read the docs

Hand the debugging to your agent.

Cloak Proxy is an MCP server with 133 tools. Claude Code, Codex, Cursor or VS Code can read your traffic, check costs and contracts, set up mocks and failures, and get an app's traffic flowing in the first place.

  • 7 agent skills teach coding agents when and how to use it
  • Tokens, cookies, keys and passwords are redacted before they reach the model
  • capture_setup walks an agent through a simulator, phone, Docker or Flutter app
  • Runs on your Mac, and assistants ask before deleting anything

Tools

133

Resources

6

Prompts

6

Skills

7

Connect your assistant Agent skills All 133 tools

$ claude mcp add cloak-proxy -- "/Applications/Cloak Proxy.app/Contents/Resources/cloakctl" mcp

$ cloakctl skills install claude codex

Test your API without writing tests.

You've already tapped through the app. Cloak Proxy turns that traffic into an authorization test, a contract check, a release diff and a test suite, and each one can fail a CI build.

Would user B see user A's orders?

Capture a session as one user, then add others: another user's token, an admin, no credentials. Cloak Proxy replays every captured request as each one, and a response that hands the first user's data to the second stands out.

  • Endpoint by identity, with a verdict and how alike the bodies are
  • Read-only methods by default; writes only when you opt in
  • Admins marked as allowed, and a CI check that fails on a leak

Read the docs

Your OpenAPI spec, checked against reality.

Bind a spec to your API's host and every request and response is checked as the app runs: undocumented endpoints and methods, invalid parameters, unexpected status codes, and bodies that don't match their schemas.

  • Each problem with its JSON path, the expected and actual value
  • Coverage: the documented operations nobody called
  • No spec yet? Draft a starting one from the traffic

Read the docs

What changed between 2.3 and 2.4?

Record the same journey on two builds and compare them endpoint by endpoint: fields removed, retyped or now null, new status codes, slower calls, and third parties that now receive user data.

  • Every difference ranked high, medium or low
  • The requests on both sides, side by side
  • Split one session by the app version in its User-Agent

Read the docs

From one tap-through to a CI gate.

Make a test suite from a journey, check staging against production, and fail the build when any of it breaks. No test code to write first.

Make Tests

A test suite from one tap-through

Select what you captured and get an API-client collection that runs: status, content type, a JSON schema, values that never change and a time budget for every endpoint, with IDs and tokens read from each fresh response.

Compare Environments

Will staging answer like production?

Send captured requests to another environment and compare every answer, field by field, with timestamps and request IDs ignored. Or mirror live traffic to a second host as the app runs, without slowing the app down.

cloakctl in CI

Fail the build, not the release

Record a session in your end-to-end run, then check it: authorization, the API contract, what changed since the last release, staging against production, even what the model calls cost. Each check exits non-zero when it finds a problem, and writes Markdown, JSON or JUnit for the report.

Make it fail before your users do.

Pause a request and edit it, answer it from a file, or fail it the ways real networks do, for exactly the requests you pick, down to one GraphQL mutation. Every rule can be made from a captured request in two clicks.

Flaky on purpose, and on schedule.

Time out, reset the connection, drop it halfway, trickle the body or serve stale data: every time, the first N times, only the Nth, or a share of the time. A scenario switches on and off as a whole, and logs what it did to each request.

  • Ten templates, from Flaky API to Session expires
  • Right-click any request and choose Simulate a Failure
  • A Toxiproxy-compatible API for the tests you already have

Read the docs Toxiproxy API

Stop a request mid-flight.

Pause a request before it reaches the server, or a response before the app sees it. Change anything, then send it on.

  • Edit the method, URL, headers, body or status
  • Execute your edit, send the original, or abort
  • Break on the next request only, then it's gone

Read the docs

One mock for one mutation. One click for a whole scenario.

Every rule in every tool can also require a header, a query parameter, a JSON body value or a GraphQL operation. Group rules in folders, save them as rule sets like Payment declined, and switch between them.

  • Map Local answers from a file, a folder or a response you write
  • A live count of the captured requests a rule matches
  • Share a folder or a set as a file, or switch sets from CI

Conditions docs Map Local

Bad networks, blocked hosts, offline demos.

For the days the problem isn't in the request: slow the network, cut off a host, send a domain to another server, or replay a whole session with no network at all. Each one is a rule you can narrow to chosen apps, headers or GraphQL operations.

Network Conditions

Feel it on a bad connection

Every preset from Wi‑Fi down to 100% loss, or your own latency, speed and packet loss, for all traffic or just the requests that match.

Block List

Cut off a host

Answer with a 403 or drop the connection. Block trackers, a flaky third party or a whole API, and see how the app copes.

DNS Spoofing

Try a new server before DNS does

Send a host name to another IP address while the URL, Host header and TLS name stay exactly the same.

Mock Sets

Demo with no network

Record a domain, some captured requests or a HAR file, then replay the responses offline. Demos on a plane, tests that don't flake.

All 12 tools in the docs

From “it's broken” to a ticket with proof.

Turn failing requests into a bug report, follow a request into your backend's traces, edit Protobuf as JSON, and capture any browser, container or app in one click.

A bug report that reproduces itself.

Pick the failing requests, or the last few minutes of an app, and get a bundle: a summary with the failures first, a redacted HAR and session, cURL commands, and a flow that replays it all in the API client.

  • Each failure with its trace link, contract errors and Sentry report
  • File it in GitHub, Jira or Linear with your own token
  • Nothing is sent until you click File

Read the docs

From the request to the backend trace.

Cloak Proxy reads W3C traceparent, B3, Jaeger, Datadog, X-Ray, Cloud Trace and Sentry headers on every request, and opens the trace in Jaeger, Honeycomb, Datadog, Grafana Tempo or your own backend.

  • Flags requests where propagation broke, and says why
  • The other captured requests in the same trace
  • Adds a sampled traceparent to the hosts you choose

Read the docs

[

Edit Protobuf as JSON.

gRPC, gRPC-Web, Connect and Protobuf bodies open as JSON in breakpoints, Compose and Edit and Repeat, and go back out as Protobuf, framed, with their trailers. Without your.proto files, fields are keyed by number and still encode to the same bytes.

Read the docs](https://docs.subcloak.com/cloak-proxy/inspect/protobuf-and-grpc/)

One click to capture anything you test on.

A browser in its own profile, an Electron app, a Docker Compose stack, a Flutter build or a phone. Cloak Proxy sets up the proxy and the certificate for each, step by step.

  1. Capturing browser ⇧⌘B Chrome, Edge, Brave or Firefox in its own profile, localhost included. Your everyday browser and the Mac's proxy don't change.
  2. Electron apps Launch any Electron app with the proxy and certificate for its windows and its Node.js side.
  3. Docker Compose An override file sends each service through the proxy with the certificate mounted, and names its requests after it.
  4. Flutter and Android A debug-only Dart file, and a debug-only network security config for Android builds. Device & Runtime Setup on the Capturing Browser page: Google Chrome, Microsoft Edge, Brave and Firefox, each trusting the Cloak Proxy certificate in its own profile, with a start page of localhost:3000 and one capture window open

How device capture works

Everything your apps send, in plain text.

Decrypt HTTPS one app at a time, catch the apps that never ask macOS for its proxy, and when something still doesn't show up, find out why.

Decrypted when you say so.Caught when they hide.

The two things a debugging proxy has to get right before anything else, and how Cloak Proxy does them.

SSL Proxying

auth.example.com:443

TLS 1.3 · ShopApp

Encrypted tunnelDecrypted

POST /v1/sessions HTTP/2
host: auth.example.com
authorization: Bearer eyJhbGciOi…
content-type: application/json

{
  "email": "ada@example.com",
  "device": "iPhone 17 Pro",
  "remember": true
}
  1. 1 Install & Trust. One click adds a certificate made on your Mac to your login keychain. macOS asks for your password.
  2. 2 Capture. The macOS proxy turns on by itself, and your old settings come back when you quit.
  3. 3 Decrypt. Pick an app or a host and press Enable SSL Proxying. Nothing else is opened, and Apple's own services never are.

Apps that skip the proxy

Sidebar · Not Using the Proxy

21 direct connectionsCaptured · api.payments.example DNS Shopping app payments SDK, gRPC Cloak Proxy 0 requests Internet api.payments.example

!✓Requests from this app never reach the proxyLookups answered by Cloak Proxy · every request visible

  1. 1 It notices. Apps that connect to the internet directly are listed under Not Using the Proxy.
  2. 2 You choose. Click one to see its domains, read from its traffic and its own code.
  3. 3 It captures. With your password, Cloak Proxy answers lookups for those domains. Or App Capture takes the whole app, with a network extension.

Capture apps that ignore the proxy App Capture

Traffic not showing? It tells you why.

When an app's requests don't appear, the Doctor works out what's stopping them, app by app, with the evidence and a one-click fix.

  • Apps that skip the proxy, pinned certificates, HTTP/3 and VPNs
  • A connection log with DNS, connect and TLS times, and why each failed
  • Your AI assistant can run it too, over MCP

Read the docs

A proxy shows you requests. This one connects them.

Paste an order ID, a token or an email. Cloak Proxy finds the response it came from and every request that sent it on, then replays the chain with fresh values or shows which companies received it.

Trace Value · fc68188e

5 requests · 4 endpoints · 1 third party POST response · first appeared api.shopapp.example/v1/orders $.data.order.id fc68188e GET request api.shopapp.example/v1/orders/{value} path POST request pay.shopapp.example/v2/charge query order_id POST request api.shopapp.example/v1/track header X-Order-Id POST request · third party graph.facebook.com/…/activities body custom_events[*].order_ref

  1. 01Search everythingEvery URL, header and decoded body at once, with a Found In column that says where each match sits.Gzip, deflate and Brotli bodies too
  2. 02Trace ValueThe response an ID or token came from, every request it went into, and exactly where: path, query, header, cookie or JSON key.Tools › Trace Value · ⇧⌘T
  3. 03Replayable flowsA captured journey becomes a flow. Each step reads the ID or token from the fresh response, so the replay still works tomorrow.Runs in CI with cloakctl
  4. 04Privacy MapFor one app, every outside company it talks to and what each receives, from emails and locations to the app's own tokens.Privacy label hints included

Linux, phones and iPad.

The Linux beta has nearly every Mac window. A phone or another computer can watch your Mac's traffic in a browser, your own app can send its requests straight in, and an iPad app is on the way.

The same Cloak Proxy, on Linux.

A.deb, an RPM, an AppImage and a tarball for amd64 and arm64, with the Mac app's interface in a native WebKitGTK window and the same engine underneath. Since 0.4.1 nearly every Mac window is there too. It's still a beta: here's what's in it, and what isn't yet.

.deb for Debian and Ubuntu,.rpm for Fedora and RHEL, AppImage or tarball for any distribution · amd64 and arm64 · needs WebKitGTK 6.0

Cloak Proxy on Linux in dark mode: traffic from Firefox, Chromium, curl, MyApp, ShopApp and Slack, with a decrypted JSON response open in the inspector Cloak Proxy on Linux in light mode, with the same traffic

In the beta

  • Capture and HTTPS decryption, with the GNOME, KDE and terminal proxy set for you and restored on quit
  • The traffic list and inspector, the query bar with highlight and extract rules, Search Everything and Trace Value
  • All 12 debugging tools, breakpoints, Compose and Repeat, with rule conditions, folders and sets
  • Insights, Privacy Map, Authorization Matrix, API Contracts, Release Diff, Failure Scenarios, Make Tests and Compare Environments
  • Device and runtime setup, the Doctor, and DNS capture for apps that skip the proxy (with the.deb or the RPM)
  • The whole API client, Report Bug, live sharing, the browser extension, cloakctl and the MCP server

Still to come

  • The web companion; live sharing already shows your traffic in another browser
  • A Flatpak package
  • Testing on real desktops: KDE's proxy switching, and the browser extension in a real browser

Windows comes after. Any Linux machine can also send its traffic through Cloak Proxy on a Mac.

Watch from any screen. Capture from inside your app.

See what your Mac captures in a browser on your phone while you tap through an app, or send your own app's requests to Cloak Proxy with no proxy settings at all.

Your Mac's traffic, in any browser.

Pair Safari or Chrome on a phone, a tablet or another computer once, and watch requests arrive as your Mac captures them. Nothing to install on the other device.

  • Headers, bodies and timings for every request, live
  • Pause recording and turn tools on or off from the page
  • Pair with a QR code or a 6-digit code; remove a browser any time

Set up the web companion

Your own app. No proxy, no certificate.

Add CloakProxyKit to the debug build of your iOS or macOS app and call start(). Its URLSession requests show up under the app's name, even from hosts that pin their certificates.

  • One Swift package, no dependencies, MIT licensed
  • iOS 15 or later and macOS 12 or later
  • You allow each app the first time it connects

Add it to your app CloakProxyKit on GitHub

Your Mac's traffic on the iPad. Or the iPad's own.

A native iPad app, made for touch: the traffic list and inspector, all 12 debugging tools, the API client, and an MCP server your AI assistant can reach over Wi‑Fi.

It isn't out yet. We'll email you once when it is, and that's all.

Cloak Proxy for iPad tracing an order ID: the response it first appeared in, and every endpoint that sent it on, as a flow map

Connect to your Mac

Pair with a QR code, and the traffic your Mac captures streams to the iPad as it happens. Change tools and rules from the iPad, and use Insights, Trace Value and Privacy Map there.

Capture on this iPad

The proxy runs on the iPad itself. A guided setup takes you through the certificate, trust and the Wi‑Fi proxy, and notices each step as you finish it. Keep it next to the app you're testing, in Split View or Stage Manager.

One app, end to end.

From the first byte on the wire to a contract check in CI. Every feature links to its page in the docs. Search it, or just read it.

216 features, all free

Click any feature to read its documentation, or browse docs.subcloak.com.

01 · 23 features

Capture

Cloak Proxy sits between your apps and the internet and records HTTP/1.1, HTTP/2 to apps and servers, HTTPS tunnels, WebSocket (ws and wss) and gRPC. It decrypts with SSL Proxying per app or per host, with wildcards, leaves the hosts on your bypass list alone, and catches apps that ignore the macOS proxy with App Capture, a network extension, or per-app DNS capture. When an app still doesn't show up, the Doctor says why and offers the fix, with a connection log of every DNS lookup, connection and TLS handshake. It turns the macOS proxy on at launch and restores your settings on quit, and a proxy guard puts your network back if it ever quits unexpectedly. Traffic is grouped by app, with icons and by domain, with pinned apps and domains and a sidebar filter. It also runs as a SOCKS5 proxy, a reverse proxy, or behind an upstream HTTP or SOCKS5 proxy with auth.

02 · 50 features

Inspect

Every request opens with request and response side by side: headers, query, body, form fields, cookies, GraphQL query and variables, JWT and Basic auth decoding, raw and a timing summary. Bodies show as a JSON tree with search and highlight, JSONPath and jq queries, or as Pretty, Raw and Hex in a code view with line numbers and folding, with HTML and image previews. It decodes gzip, deflate and Brotli, Protobuf (with your own.proto files), MessagePack and multipart forms, and Quick Preview reads Base64, JWTs, URL encoding and timestamps. Model calls get the LLM Inspector: tokens and cost, time to first token, where the context window went and where the prompt cache stops matching. Server-Sent Events and JSON-lines streams pass through as they arrive, event by event in a Messages tab, with GraphQL subscriptions and @defer. Edit Protobuf and gRPC as JSON in breakpoints and Compose, and follow distributed traces to Jaeger, Honeycomb, Datadog or Tempo. The list has sortable, customizable columns, columns for any header, tabs with their own filters, Split View for two panes side by side, colored methods and status codes, filters with regex, content-type chips, saved filter presets, highlight colors and comments that travel in saved files. Mute noisy apps, and keep traffic across launches if you like. Generate types from JSON in TypeScript, Swift, Python, Go or Kotlin, Diff any two requests, and find any action, setting or request with Search Everything, the command palette.

03 · 28 features

Change

Breakpoints pause requests and responses so you can edit them. Map Local answers from a file, folder or inline response, Map Remote points requests somewhere else, Block List and Allow List decide what gets through, Network Conditions simulates 3G, Edge or packet loss, DNS Spoofing sends a host to another IP, No Caching strips cache headers, Rewrite changes headers, query parameters, the status or body text without code, and JavaScript scripting rewrites anything, with a script console, shared state and fetch for calling other APIs. Failure scenarios time out, reset, truncate or trickle just the requests you pick, the first N times or a share of the time. Rules use wildcard or regex matching with a live URL tester, conditions on headers, JSON body and GraphQL operations, folders and rule sets that switch a whole scenario on, can be limited to chosen apps, can be made from any request, and exported or imported as JSON, or imported from Charles. Mock Sets record a session and replay it offline. Send things again with Repeat, Edit & Repeat, Repeat Advanced (many times, concurrently) and Compose, or pause just the next one with Break on Next Request.

04 · 20 features

Understand

Search every request and response at once, URLs, headers and decoded gzip, deflate and Brotli bodies included, with a Found In column that says where each match sits. Trace Value shows the response an ID or token came from and every request it went into, as a flow map with every occurrence and a Markdown trace report. Make Replayable Flow turns that chain into an API-client flow with values chained from fresh responses, and a Privacy Map shows which outside companies get your users' data and where, with App Store privacy label hints. Insights reads your traffic for you: an API catalog with p50 and p95 timings, a secret and PII scanner, security header and cookie grades, a waterfall timeline, performance hot spots, schema change detection and alerts for errors, slow calls or matching responses. Share it as a Markdown report.

05 · 9 features

Test

Test an API from the traffic you already captured. The Authorization matrix replays every request as other users, an admin and no one, and flags broken object-level authorization. API contract checking holds live traffic to your OpenAPI spec, with coverage of documented operations and a starting spec drafted from traffic. Release diff compares two builds endpoint by endpoint, Make tests from traffic turns a journey into a test suite, and Compare environments checks staging against production, or mirrors live traffic to a second host.

06 · 14 features

Devices

Debug more than your Mac: iPhone and iPad, the iOS, tvOS and watchOS Simulator with a one-click certificate, Android emulators and USB devices in one click, and a Terminal set up for Node, Python, Ruby, Go, curl and git. Open a capturing browser in one click, launch Electron apps with capture, and get a Docker Compose override or a debug-only Flutter file written for you; there are guides for Java and Firefox too, a certificate page with a QR code, and an IP allow list for other devices. The web companion shows your Mac's traffic live in any browser on the network, and the CloakProxyKit SDK sends your own iOS or macOS app's requests to Cloak Proxy with no proxy or certificate.

07 · 4 features

Secure

Bring your own root CA, use client certificates for mutual TLS, regenerate or remove the certificate any time, and write TLS keys for Wireshark.

08 · 14 features

Share

Save sessions, import and export HAR, open Charles sessions, and export to CSV, a Postman collection or OpenAPI 3 with inferred schemas. Redact secrets on export, publish to a GitHub Gist, turn failing requests into a Report Bug bundle filed in GitHub, Jira or Linear, or copy any request as cURL and 21 other languages, including a k6 load test, Python httpx and Playwright.

09 · 40 features

Build and test

Any captured request becomes a saved request, and a captured sequence becomes a replayable flow that reads IDs and tokens from fresh responses. Organize collections and folders, environments, globals and a vault for secrets, and write pre-request and test scripts with the pm.* API and shared script packages. Send HTTP, GraphQL with a schema explorer, gRPC with reflection, WebSocket, Socket.IO, MQTT 3.1.1 and 5, MCP, AI model requests, SQL for PostgreSQL, MySQL and SQLite and TCP, TLS and UDP, with 11 auth types including OAuth 2.0 and AWS Signature. Run collections in the collection runner with iterations and datasets, load test them with fixed, ramp, spike and peak profiles, serve them as mock servers, chain them into flows, watch them with monitors and webhooks. Keep OpenAPI specs with linting and sync, generate API docs, SDKs in TypeScript, Python and Swift and an MCP server from any collection, leave comments on requests, browse history, recover from Recently Deleted, get help from Agent Mode, and version everything with Git.

10 · 14 features

Automate

From the terminal, cloakctl lists, shows and replays traffic, runs collections like Newman with JUnit reports, runs flows and monitors, generates SDKs and MCP servers, starts mocks and load tests, and runs as a headless CI recorder. A token-protected local API and an MCP server with 133 tools let scripts and AI assistants like Claude drive the whole app, Trace Value and Privacy Map included. Agent skills teach Claude Code and Codex when to use it, credentials are redacted before anything reaches the model, a Toxiproxy-compatible API serves existing chaos tests, and CI checks that exit non-zero gate a build on authorization, the contract or a release diff.

Show all 216 features

Free.For life.

Every feature on this page, free forever. No telemetry: your traffic never leaves your computer unless you send it, and the only thing that contacts Subcloak is the optional update check. It's on the Mac today, in beta on Linux, and coming to every platform you debug on.

Paid upgrades elsewhere. Free here.

In other well-known debugging proxies, features like these often come with a licence, a paid plan or a Pro tier. In Cloak Proxy they're simply part of the app: no account, no trial clock, nothing to unlock.

We'd rather show our working than ask you to take our word for it. The comparison lists price and features side by side, with a source for every cell, and says when another tool is the better pick.

Download free

“Often elsewhere” means paid, or in a paid tier, in at least one of the four proxies in our comparison, checked 13 October 2026 (contract checking on 18 October 2026).

Cloak Proxy 0.5.0For your Mac

ItemOften elsewhereHere

Account

None needed

Trial

None. It doesn't run out

Licence key

None

items

Total

$0.00

[

Coming from Charles or Proxyman?

Cloak Proxy next to Charles, Proxyman, HTTP Toolkit and mitmproxy: price, platforms, breakpoints, scripting, the API client, MCP, and what only Cloak Proxy does, with sources. Including when another tool fits you better. See the comparison

](https://subcloak.com/apps/cloak-proxy/alternatives)

One to one: Proxyman · Charles · HTTP Toolkit

From the blog: Find IDOR bugs from traffic you already captured · What did my AI agent actually send? Inspecting LLM calls, tokens, cost and prompt-cache misses · Proxyman vs Charles vs HTTP Toolkit vs mitmproxy vs Cloak Proxy · All posts

  • macOS Apple silicon and Intel Available now
  • Linux Beta:.deb, RPM, AppImage, tarball Beta available
  • iOS iPhone and iPad iPad app coming
  • Windows Windows 10 and 11 Coming soon
  • Android Phones and tablets Coming soon

Before you install it

Something else? Email hello@subcloak.com or book a call.

Is it really free? What's the catch?

Yes, for life. There's no trial, no paid tier, no account and no sign-up, and every feature on this page is included. Subcloak is a security practice: we build Cloak Proxy for our own penetration testing and give it away, and our testing work pays for it. You can leave your email when you download to hear about new releases, but you don't have to.

How does it compare with Charles, Proxyman, HTTP Toolkit or mitmproxy?

They're all good tools, and some run on Windows or are open source. Cloak Proxy is free with nothing behind a paywall, and adds an API client with collections, a full MCP server, an LLM Inspector and API testing from captured traffic. See the side-by-side comparison, with sources.

Which Macs does it run on?

Any Mac with macOS 14 Sonoma or later, Apple silicon or Intel. One download runs natively on both.

Does it run on Linux or Windows?

Linux, yes, as a beta: a.deb, an RPM, an AppImage or a tarball, for amd64 and arm64, with the Mac app's interface in a native WebKitGTK window. Since 0.4.1 nearly everything on the Mac is in it: capture and decryption, the query bar, the debugging tools, the testing windows, device setup and the Doctor, the whole API client, live sharing, the browser extension, cloakctl and the MCP server. Still to come are the web companion, a Flatpak package, and testing on real KDE desktops; see what's in it. Windows is on the way: join the waitlist and we'll email you once when it's ready.

Is there an iPad app?

It's coming. Cloak Proxy for iPad connects to your Mac and shows its traffic live, or captures on the iPad itself. It isn't available to download yet: join the waitlist and we'll email you once when it's out. Until then, the web companion shows your Mac's traffic live in Safari on the iPad.

How do I check the download is genuine?

After the download starts, the page shows the file's SHA-256. On a Mac, run shasum -a 256 ~/Downloads/Cloak-Proxy.dmg in Terminal; on Linux, sha256sum with the package's name. Compare the two. Only download Cloak Proxy from subcloak.com.

Can I deploy it to a team's Macs?

Yes. Download the installer package for teams, Cloak-Proxy.pkg, from the download form. It's signed with a Developer ID Installer certificate and notarized by Apple, for your device management (MDM) service or sudo installer, and a sample configuration profile pre-approves App Capture's network extension. See Deploy to a team's Macs.

Is it notarized by Apple?

Yes. Cloak Proxy is signed with a Developer ID and notarized by Apple, so it opens like any other app: the first time, macOS only asks whether you want to open an app downloaded from the internet.

Does my traffic leave my Mac?

No. Cloak Proxy runs entirely on your computer and has no account, cloud sync or telemetry, and your traffic never leaves your computer unless you send it. Captured requests stay there unless you export them, file a bug report, publish one as a Gist, or send them to an AI assistant you've connected yourself. Bug reports, Gists and AI assistants get tokens, cookies, keys and passwords replaced with REDACTED by default, and exports can do the same. Agent Mode and AI requests use your own key and, from version 0.4.2, ask before they first send anything to a provider. The LLM Inspector's costs come from a price list on your Mac. The only thing that contacts Subcloak is the optional update check, which asks for the latest version number. See the privacy policy.

Is the authorization matrix safe to run?

It replays captured requests as the identities you add, straight to the server. Only read-only methods (GET, HEAD, OPTIONS) run unless you opt in to writes, and the replays never touch your traffic list or rules. Run it against apps and servers you're allowed to test, ideally staging with test accounts.

Is it safe to install its certificate?

Cloak Proxy creates its own root certificate, unique to your install, and adds it to your login keychain only when you click Install & Trust (macOS asks for your password). You can remove it or regenerate it from Settings at any time, or use your own CA. Apple's own services, such as push notifications and Apple Account sign-in, are never decrypted.

What about apps with certificate pinning?

Apps that pin their certificates refuse any certificate but their own, so no proxy can decrypt them without changing the app. Leave SSL Proxying off for those hosts and their traffic passes through as normal tunnels, so the app keeps working and you still see which hosts it talks to. For your own iOS or macOS app, the in-app SDK records requests inside the app, so pinned hosts show up too.

Where do I get help?

On the support page: setup help for iPad, Mac and Linux, and fixes for common problems. Email hello@subcloak.com, or report a bug in GitHub issues.

Stop guessing what the app sent.

Download Cloak Proxy 0.5.0 free: one disk image for Apple silicon and Intel, macOS 14 Sonoma or later. Or try the Linux beta.

Download Cloak Proxy

Free for life. No account, no sign-up.