{"slug": "proxyman-now-runs-headless-for-ai-agents", "title": "Proxyman now runs headless for AI agents", "summary": "Proxyman 26.6.0 adds a headless mode that lets AI agents start the macOS debugging proxy with no window, Dock icon or dialogs and capture, decrypt and inspect HTTPS traffic over MCP. The first MCP tool call launches Proxyman on 127.0.0.1:9090, and an install_certificate call in generate_only mode creates the Proxyman CA without trusting it system-wide, so clients such as curl, Node.js, Python, Chrome and the iOS Simulator trust the CA file individually. Headless mode requires a paid Proxyman license, and the company positions it as an alternative to command-line proxies such as mitmproxy for agents running in terminals, in the background or on CI machines.", "body_md": "# Proxyman now runs headless for AI agents\n\n4 min read\n\nProxyman is adding a **headless mode** 🤖\n\nYour AI agent starts Proxyman with no window, no Dock icon and no dialogs. Then it captures and decrypts HTTPS, reads the traffic and creates debugging rules, all over [MCP](https://proxyman.com/docs/mcp). It works like mitmproxy, with every Proxyman tool.\n\nHeadless mode is available in Proxyman 26.6.0 or later. Like the rest of Proxyman MCP, it needs a paid Proxyman license.\n\nHere is Claude Code using Proxyman headless. No Proxyman window opens:\n\nThis blog covers:\n\n- Why a headless mode.\n- What changes when Proxyman runs headless.\n- A short tutorial: capture HTTPS with Claude Code, with no window.\n- What still needs you once.\n\n## 1. Why a headless mode?\n\nWith [Proxyman MCP](https://proxyman.com/docs/mcp), your agent can already read the traffic, find the failing request and create rules. But Proxyman needed its window: someone had to open the app and click through the certificate dialog first.\n\nAgents don't click dialogs. They run in a terminal, in the background, or on a CI machine. That's why many of them reach for a command-line proxy such as mitmproxy.\n\nNow Proxyman runs that way too. Your agent starts it, sets it up and stops it, and you never see a window.\n\n## 2. What is headless mode?\n\n- **No window, Dock icon, menu bar icon or dialogs.** What would be an alert is printed on stdout.\n- **Your agent starts it.** The first MCP tool call starts Proxyman, and it quits when your agent is done.\n- **Certificate with no dialog.**`install_certificate` in`generate_only` mode creates the Proxyman CA without trusting it system-wide. Each client trusts the CA file itself: curl, Node.js, Python, Chrome and the iOS Simulator.\n- **The tools work as usual.** Breakpoint, Map Local, Map Remote, Scripting, Protobuf, session files, export to HAR. A paused Breakpoint is resolved by your agent, not in a window.\n- **Your system proxy stays as it is.** Only the clients you point at`127.0.0.1:9090` are captured.\n- **The window is one click away.** Open Proxyman.app, and you see the same traffic.\n\n## 3. Tutorial: capture HTTPS with Claude Code\n\n### Step 1: Add Proxyman MCP with `--headless`\n\nRun one command in your terminal. It's the usual Proxyman MCP command, with `--headless` at the end:\n\n```\n# Claude Code\nclaude mcp add proxyman --transport stdio -- \"/Applications/Proxyman.app/Contents/MacOS/mcp-server\" --headless\n\n# Codex\ncodex mcp add proxyman -- \"/Applications/Proxyman.app/Contents/MacOS/mcp-server\" --headless\n```\n\nFor Cursor and other MCP clients, add `\"args\": [\"--headless\"]` to the Proxyman entry in your MCP settings. You don't need to open Proxyman or turn on `Settings` → `MCP`.\n\n### Step 2: Ask your agent\n\nStart Proxyman headless, create its CA with no dialog, and decrypt httpbin.org. Then curl [https://httpbin.org/json](https://httpbin.org/json) through 127.0.0.1:9090 trusting that CA, and show me the decrypted flow with get_flow_detail.\n\n### Step 3: Watch it work\n\nClaude Code calls 5 tools, and every one of them runs without a window or a dialog:\n\n1. `open_proxyman` with`headless: true` starts Proxyman. It listens on`127.0.0.1:9090` .\n2. `install_certificate` with`mode: generate_only` creates the CA and returns its file,`certificate_path` .\n3. `enable_ssl_proxying` turns on HTTPS decryption for`httpbin.org` .\n4. curl sends the request through the proxy and trusts the CA with `--cacert` .\n5. `get_flows` and`get_flow_detail` read the decrypted request and response back.\n\nYou can do the same by hand. The CA file is in Proxyman's app folder:\n\n```\nCA=\"$HOME/Library/Application Support/com.proxyman.NSProxy/app-data/proxyman-ca.pem\"\ncurl -x http://127.0.0.1:9090 --cacert \"$CA\" https://httpbin.org/json\n```\n\nFor Node.js, use `NODE_EXTRA_CA_CERTS`. For Python, use `SSL_CERT_FILE`. For Chrome and Playwright, use `--ignore-certificate-errors-spki-list` with the `spki_sha256` value from `install_certificate`. The [Headless Mode docs](https://proxyman.com/docs/mcp/headless) have the command for each client.\n\nYou can also run it without an agent, from a shell script or CI: `/Applications/Proxyman.app/Contents/MacOS/Proxyman --headless &`. Then use `proxyman-cli` to read or export the traffic.\n\n## 4. What still needs you once\n\nHeadless mode never shows a dialog, so a few things need you, one time:\n\n- **Safari, URLSession apps and Go** only accept a trusted certificate. Install it once with`install_certificate` in`automatic` mode; macOS asks for your password.\n- **Capturing every app** with`set_system_proxy` needs the Helper Tool, which asks for your password the first time. The Network Extension needs your approval once.\n- **A physical iPhone or Android device** needs the certificate installed on the device.\n\n## 5. What's next?\n\nHeadless mode is coming in Proxyman 26.6.0. We'd love to hear how your agent uses it: tell us on [GitHub](https://github.com/ProxymanApp/Proxyman/issues) or [Twitter](https://twitter.com/proxyman_app) 🙏\n\nRead more:", "url": "https://wpnews.pro/news/proxyman-now-runs-headless-for-ai-agents", "canonical_source": "https://proxyman.com/posts/2026-11-13-proxyman-headless-mode-for-ai-agents", "published_at": "2026-11-13 00:00:00+00:00", "updated_at": "2026-11-14 22:23:14.265776+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "agent-protocols"], "entities": ["Proxyman", "Claude Code", "mitmproxy", "Codex", "Cursor", "httpbin.org"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/proxyman-now-runs-headless-for-ai-agents", "markdown": "https://wpnews.pro/news/proxyman-now-runs-headless-for-ai-agents.md", "text": "https://wpnews.pro/news/proxyman-now-runs-headless-for-ai-agents.txt", "jsonld": "https://wpnews.pro/news/proxyman-now-runs-headless-for-ai-agents.jsonld"}}