Command-line
Interact with Proxyman via Command Line.
Proxyman provides a useful command-line tool to enhance your onboarding experience ✅.
You can access the tool at /Applications/Proxyman.app/Contents/MacOS/proxyman-cli
1. Export Proxyman config
Export all debugging tools rules, such as SSL Proxying List, Breakpoint, Map Local, Scripting, Block List, Allow List, Reverse Proxy, and Network Conditions.
$ /Applications/Proxyman.app/Contents/MacOS/proxyman-cli export -h
OVERVIEW: Export all debugging tools rules (Breakpoint, SSL Pinning, Map Local, Map
Remote, Scripting, etc).
USAGE: proxyman-cli export [--mode <mode>] --output <output>
OPTIONS:
-m, --mode <mode> Export Mode (all = "All debugging tools's rules", enabledRules
= "Only enabled rules"). (default: all)
-o, --output <output> A Output file to save the config to.
--version Show the version.
-h, --help Show help information.For example:
Export all debugging tool rules:
$ /Applications/Proxyman.app/Contents/MacOS/proxyman-cli export -o ~/Desktop/data.json
Only export enabled rules:
$ /Applications/Proxyman.app/Contents/MacOS/proxyman-cli export -m enabledRules -o ~/Desktop/data.json
2. Import Proxyman config
Import Proxyman debugging tools rules that you have exported by the export command.
For example:
Import all debugging rules by appending them:
Import, but override all my existing rules:
3. Activate/Unlink License
Please check out the command for activating and unlinking a license.
License4. Toggle HTTP System Proxy
From Proxyman 4.8.0 and later, we can toggle the Proxy System by command line. It's useful for Raycast Extension
Reference: https://github.com/ProxymanApp/Proxyman/issues/1626#issuecomment-1545862020
5. Clear Session
We can clear the current Session from the command line. Available for Proxyman 4.12.0 and later.
6. Toggle Debugging Tools
Toggle Breakpoint, Map Local, and Scripting Tool by command line. Available for Proxyman 4.12.0 and later.
7. Install the Proxy Helper Tool by command line
From macOS 4.12.0 or later, you can install the Helper Tool without GUI.
8. Export Proxyman Log
Proxyman macOS v5.11.0+ now supports:
Export all (ProxymanSession Format)
Export certain domains (Only Host, no scheme, no port, no paths, and no Query)
From Proxyman macOS 5.20.0+, we can export with Raw or HAR format.
Export All - RAW Request/Response Format
Export All - HAR Format
Export certain domains - RAW Request/Response Format
Export certain domains - HAR Format
From macOS 6.2.0+, we can export with a flag --since <last_flow_id> to only export from this flow ID.
9. Import Custom Root Certificate
✅ Import Custom p12 Root Certificate to Proxyman
Automatically Trust the certificate in System Keychain (sudo required)
Available from Proxyman macOS 5.15.0 or later
Install and trust
Install but not trust (you might need to trust it manually in the Keychain)
10. Export Current IP and Port
Available from macOS 7.6.0 or later
Get the current Listening IP & Port in JSON format
11. Add, Remove, Replace the Custom certificates (Client and Server)
Available on macOS 6.10.0 or later ✅
Support the P12 certificate with a password
12. External Proxy CLI
Proxyman macOS6.12.0 or later ✅
Enable
Enable External Proxy without changing the saved configuration:
Enable and configure a proxy mode:
Disable
Disable the entire External Proxy feature:
Disable only one proxy mode:
13. CRUD for all debugging tools
Supported tools
block-list, allow-list, ssl-proxying, map-local, map-remote, breakpoint, scripting, network-condition, reverse-proxy, protobuf, and dns-spoofing.
Common commands
Replace <tool> with one of the supported tools and <id> with a rule ID from list or get.
enable <id> also turns on its tool when needed. Turning off a tool keeps each rule's own enabled setting. Updates change only the fields you send; delete removes the rule right away.
Create a rule
These are the smallest create commands. Optional flags let you set more fields. Run /Applications/Proxyman.app/Contents/MacOS/proxyman-cli rules <tool> create --help to see them.
Common rule flags include --name, --enabled true|false, --method, --match wildcard|regex, and --include-subpaths true|false when the tool supports them. Names are optional. If you omit an optional value, Proxyman uses that tool's normal default.
JSON input
For create and update, use --input <file> to send a JSON object. Use --input - to read JSON from standard input. Do not mix --input with field flags.
When Proxyman is closed, the command returns JSON with ok: false and the app_not_running error code. Input errors use exit code 2; other errors use exit code 1.
14. Company Policy
MCP (Proxyman macOS 6.15.0+)
Enable/Disable the MCP feature
Can't enable the MCP in the GUI if it's disabled by command line
Disable MCP and lock the Settings toggle:
Enable MCP and unlock the toggle:
15. HTTP version
Read or change the global HTTP/2 policy. Keep Proxyman open; these commands work even when MCP is disabled.
HTTP/2 is off by default. Changing the policy closes active HTTP, WebSocket, and Server-Sent Events connections and refreshes the Compose client. Setting the current policy again leaves connections open.
The policy does not prove which protocol a request used. Check the captured request and upstream connection. With Network Extension capture, a client offering only h2 keeps HTTP/2 even under http1_only.
Both commands return JSON. Status includes httpVersionMode and http2Enabled; set also includes previousMode and changed. For example, changing from HTTP/1 to the HTTP/2 preference returns:
16. Network Extension
Manage Network Extension installation and capture from the command line. Keep Proxyman open; MCP does not need to be enabled.
install leaves capture off if it is already off. enable starts capture and turns the helper-based system proxy off. The system proxy cannot be enabled while Network Extension capture is on.
disable and uninstall close existing connections through the provider, including direct TCP connections. Afterwards, the system proxy follows Auto Override System Proxy Settings at Launch.
macOS may ask for approval or a restart. Complete those steps, then run network-extension status again. A successful command means the request was accepted; it does not mean installation or capture has finished. If an operation is busy or times out, read status before repeating it.
HTTPS decryption still requires a trusted Proxyman certificate and matching SSL Proxying rules. Reconnect clients to capture newly opened connections.
Read the JSON status
supported
Whether this app and macOS version support Network Extension. Unsupported hosts return false and reject changes.
installed, installedBuild, bundledBuild
Installation reported by macOS and the build bundled with the running app.
systemExtensionEnabled
Whether macOS reports the installed extension as enabled.
proAvailable
Whether Proxyman PRO is available for installation and capture.
captureEnabled
Whether capture has been requested.
captureActive
Whether the provider has acknowledged the capture session.
state, message
Current app state and a readable explanation.
operationPending
Whether an installation, removal, or capture startup is in progress.
approvalRequired, restartRequired
Whether approval or a restart is needed.
removalPending
Whether macOS still has extension records awaiting removal, including after an app relaunch.
systemProxyEnabled
Whether Proxyman currently reports the macOS system proxy as enabled.
Supported hosts return these fields under data. disable does not wait for an installation query, so installed is null in its response. Use status for a fresh installation check.
JSON output and exit codes
The http-version and network-extension command groups return a JSON response with success, data when available, and error on failure.
0: The read succeeded or the change was accepted. Check Network Extension status for completion.1: The command failed, Proxyman is closed, or the command timed out.64: Invalid command-line arguments. Parser errors and help use plain text.
Check the syntax supported by your installed app with:
Last updated
Was this helpful?