Credentials
Store platform sign-in secrets in the OS Keychain, off the LLM path, so sessions can re-authenticate themselves.
Bureau can store a platform's sign-in secret so a saved session can log itself
back in (session_reauth) without a human every time. Secrets are held in the
macOS Keychain — never in the repo, never in a prompt, never returned by any
MCP tool.
Store from the CLI
bureau creds set <platform> # prompts for the secret (hidden input)
bureau creds list # list stored (platform, account) — no secrets
bureau creds rm <platform> # remove a stored credentialThe password is typed into a hidden prompt and written straight to the Keychain. It is never a command argument.
Store via an agent (off the LLM path)
The record_credential MCP tool lets an agent initiate storing a secret
without the secret ever touching the LLM context. Two modes:
via: "command"(default) — returns the exact terminal command for the human to run on the Bureau host.via: "page"— opens a one-shot, loopback-guarded capture form on the Bureau host.
Either way the human types the password (hidden prompt or local form) and it
goes straight to the Keychain — it is never an argument to the tool and never
returned. Confirm it landed with list_credentials.
What's stored where
| Thing | Location | Contains a secret? |
|---|---|---|
| Sign-in credentials | macOS Keychain (via security) | Yes — the password |
| Saved sessions | ~/.agentproto/bureau/sessions | Cookies/storage state for the identity |
| Bureau Cloud token | macOS Keychain (service bureau-cloud) | Yes — the bur_ key |
| Cloud server URL | ~/.agentproto/bureau/cloud.json | No |
Using them
session_reauth resolves a stored credential server-side and types it into the
login page. list_credentials shows which (platform, account) credentials
exist and which sessions each is linked to — it never returns the secret.
See MCP tools · Sessions & credentials.