Skip to content

Sessions and sharing

Save and open sessions

Save everything Cloak Proxy captured to a .cloaksession file with full bodies, and open it again later, on another Mac or alongside new traffic.

Captured traffic lives in memory and is gone when you quit or clear it. Save it as a session file (.cloaksession) to keep a debugging session, attach it to a bug report, or pick up where you left off. A session file keeps every request and response with full headers and bodies, so when you open it again everything looks the way it did when you captured it.

  1. Choose File › Save Session… or press ⌘ S.
  2. Choose a name and folder. The suggested name is Cloak Proxy followed by the date and time, such as Cloak Proxy Oct 13, 2026 at 9.41 AM.cloaksession.
  3. Leave Redact secrets: tokens, cookies, passwords, API keys and card numbers off to keep an exact copy, or turn it on if the file will be shared. See Redaction.
  4. Click Save.

Save Session always saves every captured request, whatever the main window’s filters and selection show. To save only some requests, select them and use File › Export › Cloak Proxy Session…, or right-click them and choose Export Request › Cloak Proxy Session…. See Export.

The Redact secrets checkbox remembers its last setting across saves and exports.

You can open a session, a HAR file or a Charles JSON session in three ways:

How Details
File › Open Session… Press ⌘ O. You can select several files at once.
Drag and drop Drop .cloaksession, .har, .chlsj or .json files onto the main window.
Search Everything Press ⇧ ⌘ A and choose Open Session, HAR or Charles File….

When a file opens:

  • Its requests are added to the traffic list. Anything already captured stays. To see only the file’s contents, press ⌘ K (File › Clear Session) first.
  • Each request gets a new number so it can’t clash with requests already in the list.
  • Requests that don’t record which app sent them are listed under the app Imported: name, where name is the file name without its extension. Requests from a .cloaksession file keep their original app.
  • The first imported request is selected.

If a file can’t be read, Cloak Proxy shows Couldn’t open followed by the file name and the reason, such as “This file isn’t a Cloak Proxy session, HAR, or Charles session”.

For HAR and Charles files, see Import.

A .cloaksession file is JSON. At the top level it has:

Example.cloaksession (trimmed)
{
"format": "cloak-proxy-session",
"version": 1,
"savedAt": "2026-10-13T09:41:00Z",
"flows": [ ]
}

Each entry in flows keeps:

Kept Details
Request Method, URL, scheme, host, port, path and query, HTTP version, every header and the body.
Response Status code, reason phrase, HTTP version, every header and the body.
State Whether the request completed, failed (with the error), or passed through as an undecrypted tunnel.
Timing When the request started and when it finished.
Client The app that sent it and the client’s address.
Decryption Whether the request was decrypted.
Tools The debugging tools that touched it, such as Map Local or Breakpoint.
WebSocket messages Every message sent and received on a WebSocket connection.

Bodies are stored exactly as captured (base64-encoded inside the JSON), including compressed bodies, so nothing is lost. If a body was cut at the body size limit when it was captured, the saved copy is cut too. See Network settings.

Not saved:

  • Highlights and comments you added in the traffic list.
  • Your debugging tool rules. Use Tools › Export Rules… for those. See Rules and matching.
  • Insights results and alert history, which are recalculated from the requests.
.cloaksession .har
Opens in Cloak Proxy Cloak Proxy, browsers’ developer tools, Charles, Proxyman and most HTTP tools
Bodies Exactly as captured Decoded, as text or base64
Undecrypted tunnels Kept Left out
WebSocket messages Kept Left out
Tools applied Kept Left out

Use a session to keep a complete copy for yourself or another Cloak Proxy user. Use HAR when the other person uses a different tool. See Export.

cloakctl run --record session.cloaksession -- <command> records a headless run straight to a session file. Any extension other than .har writes a Cloak Proxy session. See Headless and CI.