Privacy and security
- Local. perch listens on 127.0.0.1 only. There’s no account and no cloud service in between.
- Locked to you. Every page and request needs a key that only your own perch window has.
- The Mac app reads it from a file only you can read.
- A browser signs in through the one-time link
npm startprints. - Other programs and other users on the Mac get nothing.
- Reads:
- the status record Claude Code keeps for each running session, and for Codex, which sessions its own background service has open;
- the end of each running session’s transcript (for its title, branch, conversation and your last request);
- your commands and skills (for the / menu), and the helper agents you’ve set up;
- each folder’s git remote;
- your pull requests, through
gh.
- Never reads login, key or credential files.
- Changes nothing unless you ask. Outside its own folder it only writes what you ask for: the permission hook, the tasks note in each account’s
CLAUDE.md/AGENTS.md, a permission rule you add, or a file you save with ⌘O. It keeps a copy of a settings file before its first change, and turning a switch off takes its change out. - Open source, MIT licensed. To report a problem privately, see
SECURITY.mdin the repo.
Files it keeps
Section titled “Files it keeps”Everything lives in ~/.switchpath, readable only by you:
| File | What it is |
|---|---|
config.json |
Your settings |
names.json |
Names you gave sessions |
open-sessions.json |
Which sessions were open, to offer reopening them after a restart (kept two weeks) |
uploads/ |
Screenshots you attached (deleted after 30 days) |
tasks/ |
Your tasks, one Markdown file each |
phones.json, the Mac’s keys |
For pairing |
session-key, hook-token |
The keys described above |
terminal-log.txt |
When a phone opened or closed a terminal |