Skip to content
subcloakdocs

Reference

Accessibility

Since 0.5.1 Requires Cloak Proxy 0.5.1 or later.

Use Cloak Proxy with VoiceOver, the keyboard, Increase Contrast and Reduce Motion, without relying on color: what each status mark means and what is read.

Cloak Proxy works with VoiceOver, the keyboard and the display settings in System Settings › Accessibility. Nothing in the main window depends on color alone: every status that has a color also has text or a shape.

The traffic list’s status dot has a shape for each state, as well as a color:

Mark Meaning
Filled dot (green) The exchange finished.
Ring (orange) Still waiting for the response. The Status column reads Active.
Cross (red) Failed, or a response whose body reports an error, such as a GraphQL error in a 200 or a gRPC status that isn’t OK.
Filled dot (gray) An HTTPS connection that passed through encrypted. Its row is dimmed and its URL reads Encrypted tunnel.

The same shapes appear elsewhere:

  • The toolbar’s status: a dot while listening, a ring while recording is paused, a cross when the proxy can’t listen. The text beside it says the same.
  • Debugging tools in the Tools window, capture switches in Device Setup and App Capture, and mock servers in the API client: a filled dot when on, a ring when off.
  • API client monitors: a dot when the last run passed, a cross when it failed, a ring before the first run.

Method and status pills always show their text (GET, 404, Active, Failed), so their color is only a hint.

Turn VoiceOver on with ⌘ F5, or in System Settings › Accessibility › VoiceOver.

  • Traffic list. Each row is read as one sentence: method, status, host and path, client, duration, then anything else that applies, for example “GET, 200 OK, api.example.com/v1/users, ShopApp, 120 ms” or “POST, 503 Service Unavailable, api.example.com, 4.50 s, slow, Map Local, highlighted orange, has a comment”. Interact with a row to hear each column on its own; the status dot column is read as State.
  • Sidebar. Apps, domains, devices and pins are buttons that say how many requests they have and whether they’re selected. Groups (Apps, Domains, Devices) say whether they’re expanded.
  • Inspector. The request and response tab bars are tab groups: each tab says its name, its count (Header 12), and whether it’s selected.
  • Toolbar and status bar. Every button has a name, including the ones that show only an icon in a narrow window. Filter and Auto Select are read as switches, on or off.
  • Filter bar. The content-type filters (All, HTTP, JSON and the rest) say whether they’re selected, and the quick filter is read as Quick filter followed by what it filters.
  • Icon buttons across the app (copy, remove, add, close, expand) have names too. Their tooltips are read as their help.
  • Pickers, switches and fields in every window, including rule editors and settings, have names, even where the screen shows only the control.
  • Scope: each rule’s on/off checkbox, scheme and More menu are named, and so are the import, export, add and delete buttons.
  • Tokens and Sign-in: the section picker, Look again and Copy the findings as Markdown are named. Severities are read as words (High, Medium), not just colors.
  • Request Fuzzer: the attack mode, payload type, wordlist, encoding and limits are named. In the results, the diff column reads Differs from the baseline or Same as the baseline, and Payload reflected when the payload came back in the response.
  • AI Security: the section picker, each AI Guard rule’s checkbox (by the rule’s name) and action, and the More menus are named. A finding’s severity is read from its pill.
  • Insights › API Scan: the section picker is named; each finding reads its severity and title.
  • Map Remote pattern tester: the URL field is URL to test, and the result is read as one sentence: whether it matches, why not, and the URL it becomes.

To move between every control with Tab, turn on System Settings › Keyboard › Keyboard navigation. With it on you can reach the sidebar’s rows, the inspector’s tabs and the status bar’s buttons, and press Space to choose one.

These work without it:

Keys What they do
↑ ↓ Move between requests in the traffic list.
⌘ F Go to the quick filter.
⇧ ⌘ ] and ⇧ ⌘ [ Next and previous traffic tab.
⇧ ⌘ A Search everything: every action, tool and setting by name.

See Keyboard shortcuts for the rest.

  • Increase Contrast (System Settings › Accessibility › Display): method, status and tool pills get an outline and stronger text, and the selected inspector tab is outlined.
  • Differentiate without color: the selected inspector tab is outlined. The status shapes above are always on.
  • Reduce Motion: the sidebar’s groups, rule folders and the API client’s agent panel open and close without animating, and lists jump to new rows instead of scrolling to them.
  • Text size: macOS doesn’t offer Dynamic Type to Mac apps, and the Accessibility › Display › Text size setting applies only to the apps it lists. To make everything larger, use Display › Larger Text (a lower resolution) or Zoom (Accessibility › Zoom).
The main window with Increase Contrast on: outlined method and status pills, and the status dots as a filled dot, a ring and a cross.