Debugging tools
Repeat and Compose
Send a captured request again with Repeat, change it first with Edit and Repeat, or write a new one in Compose. All of them go through your debugging tools.
Repeat sends a captured request again, exactly as recorded. Edit and Repeat opens it in Compose so you can change it first, and Compose lets you write a request from scratch or from a cURL command. Every request you send this way goes through Cloak Proxy and your debugging tools, and appears in the traffic list like live traffic. Use them to check a fix, reproduce a bug, or try a rule without touching the app.
Repeat a request
Section titled “Repeat a request”-
Select one or more requests in the traffic list.
-
Choose Proxy › Repeat Selected Request or press ⌘ R.
You can also right-click and choose Repeat (or Repeat N Requests with several selected), or search for Repeat Selected Request in Search Everything.
-
Each request is sent again with its recorded method, URL, headers and body. The new requests appear in the traffic list with the app Cloak Proxy (Repeat).
The original rows aren’t changed. Encrypted tunnels can’t be repeated, because Cloak Proxy never saw the requests inside them.
Edit and repeat a request
Section titled “Edit and repeat a request”-
Select a request in the traffic list.
-
Choose Proxy › Edit and Repeat… or press ⌥ ⌘ E. You can also right-click it and choose Edit and Repeat….
-
The Compose window opens with the request’s method, URL, headers and body. The body is decompressed to readable text, and the
Content-Length,ConnectionandProxy-Connectionheaders are left out. -
Change what you need and click Send (⌘ ↩).
Compose a new request
Section titled “Compose a new request”Choose File › Compose Request or press ⌥ ⌘ N. A new request starts as GET https:// with the header Accept: */*.
Compose: the request on top, the response below.
- Method.
- URL. Press Return to send, or paste a curl command to import it.
- Import a curl command.
- Send through Cloak Proxy (⌘↩).
- Headers, Query, Body and the cURL equivalent.
- The response, with the same viewers as the main inspector.
Request
Section titled “Request”| Control | What it does |
|---|---|
| Method | GET, POST, PUT, PATCH, DELETE, HEAD or OPTIONS. |
| URL | The full URL, including the query string. Press ↩ in the field to send. Pasting a whole curl … command here imports it. |
| Import cURL | Opens a sheet where you paste a curl command. See Import a curl command. |
| Send | Sends the request (⌘ ↩). Disabled until the URL has a host, and while a request is being sent. |
| Tab | What it shows |
|---|---|
| Headers | The headers, with their count on the tab. Click Add for a new one; click the minus button to remove one. Headers with an empty name aren’t sent. |
| Query | The URL’s query parameters as name and value pairs. Add adds a name=value pair to edit. Changes update the URL. |
| Body | The body as text. JSON shows Valid JSON with Format and Minify, or Invalid JSON. |
| cURL | The request as a curl command, kept in sync with your edits. |
If the body is valid JSON and you haven’t set a Content-Type header, Cloak Proxy adds Content-Type: application/json when you send.
Response
Section titled “Response”After you send, the bottom half shows the result: the method, URL, status, duration and size, and the response tabs and body viewers you know from the inspector. Before the first send it says Send the request to see the response here.
The request also appears in the main traffic list with the app Cloak Proxy (Compose).
Import a curl command
Section titled “Import a curl command”-
Copy a curl command, for example with Copy as cURL in a browser’s developer tools.
-
Click Import cURL. If the clipboard holds a curl command, it’s already pasted in.
-
Click Import. The method, URL, headers and body fill the Compose window.
You can also paste the command straight into the URL field. If the command can’t be read, Compose shows Couldn’t import that curl command with the reason. The sheet’s description lists where commands usually come from: Chrome, Safari or Firefox (Copy as cURL), API docs, or a teammate. See Import for the curl options Cloak Proxy understands.
The Compose window keeps your request while Cloak Proxy is running. Edit and Repeat replaces it with the selected request.
Sent requests go through your tools
Section titled “Sent requests go through your tools”Repeated and composed requests take the same path as live traffic, so every enabled tool applies:
- A breakpoint pauses them, scripts change them, and Map Local or a mock set can answer them without the network.
- Map Remote and DNS Spoofing change where they go.
- Alerts check them when they finish.
- In scripts,
context.clientAppis"Cloak Proxy (Repeat)"or"Cloak Proxy (Compose)", so a script can treat them differently.
This makes Compose a quick way to test a rule: send a request that should match and check the badge in the traffic list.
Repeat from the command line or an AI assistant
Section titled “Repeat from the command line or an AI assistant”cloakctl replay IDsends a captured request again.- The MCP server has
replay_request(send a captured request again, unchanged) andedit_and_replay(send a modified copy, or a new request).
Compose or the API client?
Section titled “Compose or the API client?”Compose is for quick, one-off requests through the proxy. To save requests, organize them in collections, use variables and environments, or write tests, use the API client (⇧ ⌘ O). You can send a captured request there with Save to API Client in the traffic list’s right-click menu.