
What ships
All three are versioned in lockstep from one repository.
Guarantees worth knowing
Refresh tokens never reach the webview
Sessions crossing the IPC boundary are sanitized. Only Rust sees the full
session.
No zombie sessions
Every mutation serializes through one lock held across the network await, so
a sign-out racing a background refresh always ends fully signed out.
Offline-friendly
Launching offline with an unexpired stored session keeps you signed in;
refresh retries in the background. Corrupt or revoked stored sessions
degrade to signed-out, never a crash.
Nothing hangs
Every call resolves or rejects within a 15 second network budget. A stalled
request surfaces as a
network error, not a pending promise.Where to go next
Quickstart
Install, configure, and sign someone in.
React hooks
Session state and never-throwing auth actions, with no UI of their own.
JavaScript API
Every binding, and the structured error type behind each rejection.
Permissions
The default command set, and the account mutations you opt into.

