@roman-16/proton-cli-win32-x64 3.0.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  _One binary, end-to-end encrypted. A community project, not affiliated with Proton AG._
10
10
 
11
- [![Release](https://img.shields.io/github/v/release/roman-16/proton-cli?sort=semver&style=flat-square&color=6D4AFF)](https://github.com/roman-16/proton-cli/releases/latest) [![Downloads](https://img.shields.io/github/downloads/roman-16/proton-cli/total?style=flat-square&color=6D4AFF)](https://github.com/roman-16/proton-cli/releases) [![Platforms](https://img.shields.io/badge/platforms-Linux%20%7C%20macOS%20%7C%20Windows-6D4AFF?style=flat-square)](https://github.com/roman-16/proton-cli/blob/main/docs/installation.md) [![License](https://img.shields.io/github/license/roman-16/proton-cli?style=flat-square&color=6D4AFF)](https://github.com/roman-16/proton-cli/blob/main/LICENSE)
11
+ [![Release](https://img.shields.io/github/v/release/roman-16/proton-cli?sort=semver&style=flat-square&color=6D4AFF)](https://github.com/roman-16/proton-cli/releases/latest) [![Downloads](https://img.shields.io/github/downloads/roman-16/proton-cli/total?style=flat-square&color=6D4AFF)](https://github.com/roman-16/proton-cli/releases) [![Platforms](https://img.shields.io/badge/platforms-Linux%20%7C%20macOS%20%7C%20Windows-6D4AFF?style=flat-square)](https://github.com/roman-16/proton-cli/blob/main/docs/install.md) [![License](https://img.shields.io/github/license/roman-16/proton-cli?style=flat-square&color=6D4AFF)](https://github.com/roman-16/proton-cli/blob/main/LICENSE)
12
12
 
13
13
  **[proton-cli.lerchster.dev](https://proton-cli.lerchster.dev)** - the documentation, searchable.
14
14
 
@@ -24,7 +24,7 @@ Read your mail, move files in and out of Drive, manage calendars, passwords and
24
24
 
25
25
  - **Real end-to-end encryption.** SRP login and the full PGP key hierarchy, handled locally with Proton's own [go-srp](https://github.com/ProtonMail/go-srp) and [gopenpgp](https://github.com/ProtonMail/gopenpgp). No bridge, no proxy, no browser in the middle.
26
26
  - **Five apps, one binary.** Mail, Drive, Calendar, Pass and Contacts, in a single static executable on Linux, macOS and Windows.
27
- - **Built for pipes and cron.** JSON and YAML with one envelope shape for every list, streaming stdin and stdout, exit codes that mean something, and `--dry-run` on everything that changes state, showing the rows it would touch.
27
+ - **Built for pipes and cron.** JSON and YAML with one envelope shape for every list, streaming stdin and stdout, exit codes that mean something, and `--dry-run` on everything that changes state.
28
28
 
29
29
  ## Install
30
30
 
@@ -36,9 +36,11 @@ curl -fsSL https://raw.githubusercontent.com/roman-16/proton-cli/main/scripts/in
36
36
  irm https://raw.githubusercontent.com/roman-16/proton-cli/main/scripts/install.ps1 | iex
37
37
  ```
38
38
 
39
- Also on Homebrew, winget, APT, AUR, Nix, npm, and as plain signed binaries - see [Install](https://github.com/roman-16/proton-cli/blob/main/docs/installation.md). The command is `proton`, and `proton-cli` works too.
39
+ Also on Homebrew, winget, APT, AUR, Nix, npm, and as plain signed binaries. See [Install](https://github.com/roman-16/proton-cli/blob/main/docs/install.md).
40
40
 
41
- ## Sixty seconds
41
+ The command is `proton`, and `proton-cli` works too.
42
+
43
+ ## Sign in
42
44
 
43
45
  ```console
44
46
  $ proton account login
@@ -49,7 +51,9 @@ Two-factor code: 123456
49
51
  ✓ Signed in as you@proton.me.
50
52
  ```
51
53
 
52
- That's the whole setup - signing in saves the session **and** unlocks your keys, so your password is needed once on this machine and not again.
54
+ That is the whole setup. Signing in saves the session **and** unlocks your keys, so your password is needed once on this machine and not again.
55
+
56
+ ## Try it
53
57
 
54
58
  ```bash
55
59
  proton mail messages list --unread
@@ -59,61 +63,25 @@ proton calendar events list
59
63
  proton pass items totp github.com
60
64
  ```
61
65
 
62
- Every command reads the same way - `proton <app> <collection> <verb>` - and anywhere one wants an ID, a subject, name, path, or address works too. [Quickstart](https://github.com/roman-16/proton-cli/blob/main/docs/quickstart.md) · [How commands read](https://github.com/roman-16/proton-cli/blob/main/docs/language.md)
63
-
64
- ## What you can do
65
-
66
- - **[Mail](https://github.com/roman-16/proton-cli/blob/main/docs/apps/mail.md)** - read, send, search and organize. Threads, attachments, filters, snoozing, block and allow lists, auto-reply.
67
- - **[Drive](https://github.com/roman-16/proton-cli/blob/main/docs/apps/drive.md)** - files and folders as paths. Revisions, public links, sharing with people, trash, photo albums.
68
- - **[Calendar](https://github.com/roman-16/proton-cli/blob/main/docs/apps/calendar.md)** - events and reminders. Recurrence occurrence by occurrence, attendees, invitations, .ics in and out.
69
- - **[Pass](https://github.com/roman-16/proton-cli/blob/main/docs/apps/pass.md)** - logins and secrets. Notes, cards, SSH keys, identities, aliases, two-factor codes, item history, sharing a vault or one item.
70
- - **[Contacts](https://github.com/roman-16/proton-cli/blob/main/docs/apps/contacts.md)** - your address book. Typed addresses and phones, the full vCard field set, duplicate merging.
71
- - **[Account](https://github.com/roman-16/proton-cli/blob/main/docs/apps/account.md)** - signing in, sessions, and more than one account side by side.
72
-
73
- [`proton api`](https://github.com/roman-16/proton-cli/blob/main/docs/apps/api.md) reaches any endpoint the commands don't. The [command reference](https://github.com/roman-16/proton-cli/blob/main/docs/commands/README.md) has every command, argument and flag.
74
-
75
- ## How it compares
76
-
77
- Proton ships a CLI for Drive and one for Pass, and Bridge for mail in a desktop client. This is one binary across all five apps, with one grammar and one output shape.
78
-
79
- | | Mail | Drive | Calendar | Pass | Contacts |
80
- | --- | --- | --- | --- | --- | --- |
81
- | **proton-cli** | ✓ | ✓ | ✓ | ✓ | ✓ |
82
- | Proton Drive CLI | | ✓ | | | |
83
- | Proton Pass CLI | | | | ✓ | |
84
- | Proton Mail Bridge | IMAP/SMTP only | | | | |
85
-
86
- Bridge is a background service your mail client talks to, and needs a paid plan. proton-cli is a command you run, on any plan. → [FAQ](https://github.com/roman-16/proton-cli/blob/main/docs/faq.md)
87
-
88
- ## Automate it
89
-
90
- ```bash
91
- # creating something prints its new ID to stdout
92
- ID=$(proton mail settings labels create --name Work --color purple)
93
-
94
- # every list is an envelope keyed by its plural name, always with a count
95
- proton mail messages list --unread --output json | jq -r '.messages[].subject'
96
-
97
- # stream through, no temporary files
98
- pg_dump mydb | gzip | proton drive items upload - /Backups/db.sql.gz
99
-
100
- # check what a bulk change would touch before it happens
101
- proton mail messages trash --from newsletter@example.com --older-than 90d --dry-run
102
- ```
103
-
104
- Data goes to stdout and progress to stderr, so redirects stay clean. Exit codes tell user error, auth failure, not-found, ambiguity, and network trouble apart. Anything that removes permanently, or removes what a filter picked out rather than what you named, shows the rows and asks first - and off a terminal it refuses instead, so an unattended run fails safe until you add `--yes`. → [Scripting](https://github.com/roman-16/proton-cli/blob/main/docs/scripting.md)
105
-
106
- ## Encryption you can verify
66
+ Every command reads the same way, `proton <app> <collection> <verb>`, and anywhere one wants an ID, a subject, name, path or address works too. With completion installed, Tab offers back whatever your last listing showed.
107
67
 
108
- Your password never reaches Proton: login is SRP, and the key password it derives stays local and unlocks your PGP keys in memory. Mail, files, events, contacts, and Pass items are decrypted after they arrive and encrypted before they leave, with the same key hierarchy the web clients use.
109
-
110
- The saved session keeps your key password encrypted with a key held server-side, so revoking the session from any Proton app makes a leaked copy of the file useless. proton-cli is unaudited; the whole model is written down in [Security and encryption](https://github.com/roman-16/proton-cli/blob/main/docs/how-it-works.md).
68
+ [First commands](https://github.com/roman-16/proton-cli/blob/main/docs/first-commands.md) · [How a command is built](https://github.com/roman-16/proton-cli/blob/main/docs/commands.md)
111
69
 
112
70
  ## Documentation
113
71
 
114
- Everything is at **[proton-cli.lerchster.dev](https://proton-cli.lerchster.dev)** and in [`docs/`](https://github.com/roman-16/proton-cli/blob/main/docs/README.md) beside the code. Start with [Quickstart](https://github.com/roman-16/proton-cli/blob/main/docs/quickstart.md), reach for the [FAQ](https://github.com/roman-16/proton-cli/blob/main/docs/faq.md) when you wonder whether this is the right tool, and [Troubleshooting](https://github.com/roman-16/proton-cli/blob/main/docs/troubleshooting.md) when a command surprises you.
72
+ Everything is at **[proton-cli.lerchster.dev](https://proton-cli.lerchster.dev)** and in [`docs/`](https://github.com/roman-16/proton-cli/blob/main/docs/README.md) beside the code.
73
+
74
+ | If you want to | Read |
75
+ | --- | --- |
76
+ | Get going | [Install](https://github.com/roman-16/proton-cli/blob/main/docs/install.md) · [First commands](https://github.com/roman-16/proton-cli/blob/main/docs/first-commands.md) |
77
+ | Do something in one app | [Mail](https://github.com/roman-16/proton-cli/blob/main/docs/mail/README.md) · [Drive](https://github.com/roman-16/proton-cli/blob/main/docs/drive/README.md) · [Calendar](https://github.com/roman-16/proton-cli/blob/main/docs/calendar/README.md) · [Pass](https://github.com/roman-16/proton-cli/blob/main/docs/pass/README.md) · [Contacts](https://github.com/roman-16/proton-cli/blob/main/docs/contacts/README.md) |
78
+ | Script it | [Scripting](https://github.com/roman-16/proton-cli/blob/main/docs/using/scripting.md) · [Output and exit codes](https://github.com/roman-16/proton-cli/blob/main/docs/using/output.md) |
79
+ | Look up a command | [All commands](https://github.com/roman-16/proton-cli/blob/main/docs/about/commands.md) |
80
+ | Know whether this is the right tool | [FAQ](https://github.com/roman-16/proton-cli/blob/main/docs/about/faq.md) - including how it compares to Proton's own CLIs and to Bridge |
81
+ | Understand the encryption | [Security and encryption](https://github.com/roman-16/proton-cli/blob/main/docs/about/security.md) |
82
+ | Fix a failing command | [Troubleshooting](https://github.com/roman-16/proton-cli/blob/main/docs/help/troubleshooting.md) |
115
83
 
116
- [`CHANGELOG.md`](https://github.com/roman-16/proton-cli/blob/main/CHANGELOG.md) records what each version changed, and `proton changelog` prints it. Already installed? `proton update`. An install no package manager owns says so itself, once a day.
84
+ [`CHANGELOG.md`](https://github.com/roman-16/proton-cli/blob/main/CHANGELOG.md) records what each version changed, and `proton changelog` prints it. Already installed? `proton update`.
117
85
 
118
86
  ## Contributing
119
87
 
package/bin/proton.exe CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@roman-16/proton-cli-win32-x64",
3
- "version": "3.0.0",
3
+ "version": "3.2.0",
4
4
  "description": "proton-cli native binary for win32-x64",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/roman-16/proton-cli",