Inspect traffic
Compare requests
Compare two captured requests or responses side by side in Cloak Proxy, with JSON normalized so key order and formatting don't show up as changes.
Compare shows two captured requests side by side and highlights every line that differs. Use it to find out why the same call works on one device and fails on another, what changed after a deploy, or which header your app forgot to send the second time.
Compare two requests
Section titled “Compare two requests”-
In the traffic list, select exactly two requests. Click one, then ⌘-click the other.
-
Open the comparison in any of these ways:
- Right-click one of them and choose Compare.
- Press ⌥ ⌘ D.
- Choose Tools › Compare Selected Requests.
- Press ⇧ ⌘ A and run Compare the Two Selected Requests.
The Compare Requests window opens with the older request (lower #) on the left.
-
Choose Request or Response at the top to compare that half of the exchange. The window opens on Response.
The menu item, shortcut and command are only available when exactly two requests are selected.
Two responses from the same endpoint. Removed lines are red on the left, added lines green on the right.
- The left request: number, method, status, duration and URL
- Swap sides
- Compare the request or the response
- Normalize JSON before comparing
- Summary of the differences
Read the comparison
Section titled “Read the comparison”Each side shows the message as text: the start line (such as HTTP/2.0 200 OK), every header, a blank line and the decompressed body. Cloak Proxy lines the two up and marks each line:
| Line | Left side | Right side |
|---|---|---|
| Same | Plain | Plain |
| Changed | Red, marked − |
Green, marked + |
| Removed (only on the left) | Red, marked − |
Shaded and empty |
| Added (only on the right) | Shaded and empty | Green, marked + |
The summary at the top right counts them, for example 3 changed · 0 added · 2 removed. When the two are the same, it shows Identical.
Above the text, each side shows the request’s number, method, status code, duration and URL. The URL is selectable.
Options
Section titled “Options”| Option | What it does | Default |
|---|---|---|
| Request / Response | Which half of the exchange to compare | Response |
| Normalize JSON | Re-indents JSON bodies and sorts their keys before comparing, so formatting and key order don’t count as changes. Bodies that aren’t JSON are compared as they are. | On |
| Only changes | Hides lines that are the same on both sides | Off |
| Swap sides | The arrows between the two captions put the right request on the left |
Normalize JSON and Only changes are remembered for next time.
What gets compared
Section titled “What gets compared”- Bodies are decompressed first, so a gzip response and a plain one with the same content compare as equal (their
Content-Encodingheader still differs). - Headers are compared line by line, in the order they were sent. A header that moved position shows as removed in one place and added in another.
- A request without a response shows
(no response)on its side when you compare responses. - Very large differences are shown as replaced. When the differing part of two messages is too large to align line by line, Cloak Proxy marks all of it as removed on the left and added on the right.
The window keeps showing the same pair while you go on working, and updates when you compare another pair. If it’s opened with nothing to compare, it says Nothing to compare and tells you how to choose two requests.
Compare from an AI assistant
Section titled “Compare from an AI assistant”Assistants connected through the MCP server can compare two requests by number with the compare_requests tool. It returns the differing lines as text, prefixed with - and +. See the MCP tools reference.