A command-line interface for Proton services.
Status: Experimental — not production ready. Core operations work but the tool is under active development and APIs may change without notice.
⚠️ api/package: Theapi/package is in extreme flux and is not suitable for external consumers. It will not stabilize until well after thecmd/and filesystem interfaces are stable, at which point it will undergo further optimization and refactoring.
- Proton Drive — full file management: ls, find, cp, mv, mkdir, rm, share management, volume usage
- Proton Lumo — AI assistant: interactive chat, project spaces, and a local OpenAI-compatible API server
- Parallelism — bounded worker pools with shared rate-limit throttling; concurrent directory traversal and block I/O
- Persistent Bearer sessions — SRP authentication with automatic token refresh; credentials stored in the OS keyring
- Persistent cookie sessions — browser-based login for services that require cookie-scoped auth (Lumo); automatic cookie refresh
- Multi-account support — independent service sessions per account;
switch with
--account - Opt-in caching — per-share dirent, metadata, and on-disk block caches; disabled by default, user-configurable
- CAPTCHA handling — automatic browser-based human verification via chromedp
- Encrypted-first — raw API objects are the canonical in-memory representation; decryption is lazy and on-demand; decrypted content is never persisted to disk
Requires Go 1.22+ and Chrome/Chromium (for CAPTCHA during login).
git clone https://github.com/major0/proton-cli.git
cd proton-cli
make build| Platform | Packages |
|---|---|
| Ubuntu/Debian | libsecret-1-dev |
| Fedora/RHEL | libsecret-devel |
| macOS | None (uses Keychain) |
- Account commands — login, logout, session management
- Drive commands — file operations, shares, volumes
- Lumo commands — chat, spaces, OpenAI server
See LICENSE.