Reference
Privacy
Magnum runs your agents on your own machines. Your code and prompts go to those machines and to the model providers your agents use. Magnum has no server of its own in between.
Where your work goes
Magnum runs each agent's own program, Claude Code, Codex or Pi, on your computer or on a machine you added, and talks to it directly. The agent sends your prompts and the code it reads to its model provider, as it does in a terminal. Other machines are reached over SSH, from your computer to them.
A few features ask a model for you, through Claude Code: Write message in Changes reads the staged changes, and Run reads the repository when it has to find the command. When Magnum Router's rules can't tell, it keeps the turn's model, unless you choose, in Settings → Magnum Router, to ask Claude Code's Haiku, d1-2B in Ollama on this computer, or a System One server you name, which gets the message. Pull requests, checks and Ship talk to GitHub through your own GitHub CLI.
What Magnum itself sends
As it starts, and every four hours while it runs, the packaged app checks Magnum's releases on GitHub for an update; when there is one, it reads the releases' notes from GitHub's API (api.github.com) to show what's new. Updates, and the node Magnum installs on your other machines, come from those releases, with their signatures checked. Once a run, Magnum asks pi.dev for Pi's newest version. Searching the MCP Registry in Settings → MCP servers sends what you type to registry.modelcontextprotocol.io; a key you give a server you add goes into Claude Code's configuration, as claude mcp add puts it. Installing an agent from the setup screen runs that agent's own installer, from its maker. With Share anonymous usage on, there's one more, below.
Anonymous usage
With Share anonymous usage on, each time Magnum opens it sends one event, app_opened, to PostHog, an analytics service, with an identify call carrying the same values: an ID Magnum makes once for this install, the app's name and version, the operating system, the processor's architecture and how many cores it has. Nothing about your projects, sessions or code.
The welcome screen asks the first time, with the switch on. Turn it off there, or any time with Share anonymous usage in Settings → General.
Keys and sign-ins
Keys you add in Settings → Accounts, Codex's OpenAI key among them, are kept in the system's credential store: the Keychain on macOS, the Secret Service on Linux. Magnum reads a key when a session starts and hands it to that session's agent, on whichever machine the session runs.
Each agent keeps its own sign-in: Claude Code and Codex as they do in a terminal, Pi in its own auth.json. Signing in from a session runs the agent's own sign-in.
For a project on another machine, Changes can copy who commits there, and sign GitHub in there with your computer's sign-in. That asks first: anyone who can use your account on that machine can then use your GitHub sign-in.
Your other machines
Magnum uses your system's ssh, so ~/.ssh/config, your keys and your known hosts apply as in a terminal. When SSH asks something, a password or whether to trust a new host, Magnum shows the question and hands your answer to ssh.
On each machine Magnum installs its node in ~/.magnum/bin, without sudo. The node listens only on a local socket that only your user can open, never on a network port; Magnum reaches it through SSH.
What stays on your computer
Magnum's settings are in ~/Library/Application Support/Magnum on macOS and ~/.config/magnum on Linux. Your sessions are each agent's own history, where the agent keeps it. Magnum Router's decision log is in ~/.magnum/router. Tips are kept on your computer and sent nowhere.
Your sessions' agents keep running after Magnum quits, in Magnum Helper (Magnum's node on Linux), and Magnum picks them up when it opens again. The Helper stops by itself once nothing runs in it and Magnum is closed.