1515## Terminology
1616- ` peer ` : the person or device you are sending a secret to
1717- ` share code ` : the ` ENDE-PUB-1:... ` string used for peer onboarding
18- - ` send ` / ` receive ` : task-oriented names for ` encrypt ` / ` decrypt `
18+ - ` encrypt ` / ` decrypt ` : the primary commands for sending and receiving secrets
1919- ` recipient ` / ` sender ` : lower-level trust model terms still used in advanced commands
2020
2121## Install/build
@@ -110,73 +110,91 @@ The tutorial guides you through:
1101105 . ** Decrypt** — automatically decrypts the result from step 4
111111
112112## Quickstart
113- 1 . Generate local key material :
113+ 1 . Generate your local key and print a share code :
114114``` bash
115- ./ende key keygen --name alice --export-public --export-dir .
116- ./ende key keygen --name bob --export-public --export-dir .
115+ ./ende key keygen --name alice
117116```
118117
119- 2 . Alice shares the ` share: ` code from keygen output to Bob.
118+ This prints:
119+ - your recipient public key
120+ - your signing public key
121+ - your ` share: ` code (` ENDE-PUB-1:... ` )
120122
121- You can re -print a share code later :
123+ 2 . Re -print your share code any time :
122124``` bash
123125./ende key share --name alice
124126```
125127
126- 3 . Bob adds Alice as a peer in one command :
128+ 3 . Set your default signer once :
127129``` bash
128- ./ende add-peer
130+ ./ende key use --name alice
131+ ```
132+
133+ 4 . Register a peer from a share code:
134+ ``` bash
135+ ./ende register
129136# share code (ENDE-PUB-1:...): ENDE-PUB-1:...
130137# peer name override (optional, Enter to use the shared name):
131138```
132139
133- 4 . Run a local safety check before first real use:
140+ You can also register non-interactively:
141+ ``` bash
142+ ./ende register --alias bob --share ' ENDE-PUB-1:...'
143+ ```
144+
145+ 5 . Run a local safety check before first real use:
134146``` bash
135147./ende doctor
136148```
137149` ende doctor ` checks:
138150- keyring file presence and permissions
139151- default signer configuration
140- - private key file paths and ` 0600 ` permissions
152+ - private key file paths and file permission safety
141153- peer / trusted-signing-key registration consistency
142154
143155To remove a registered alias later:
144156``` bash
145157./ende unregister alice
146158```
147159
148- 5 . Send a secret securely (default: text to stdout):
160+ 6 . Encrypt a secret for a registered peer.
161+
162+ Default behavior:
163+ - output format: armored text
164+ - output target: stdout
165+
166+ Example:
149167``` bash
150- echo ' TOKEN=abc123' | ./ende send -t bob
168+ echo ' TOKEN=abc123' | ./ende encrypt -t bob
151169```
152170
153- 5-0. Encrypt from file input :
171+ Encrypt from a file :
154172``` bash
155- ./ende send -t bob -f secrets.env -o secret.txt
173+ ./ende encrypt -t bob -f secrets.env -o secret.txt
156174```
157175
158- 5-1. Save text output to file (optional) :
176+ Save armored text to a file :
159177``` bash
160- echo ' TOKEN=abc123' | ./ende send -t bob --text -o secret.txt
178+ echo ' TOKEN=abc123' | ./ende encrypt -t bob -o secret.txt
161179```
162180
163- 5-2. Raw binary output (optional) :
181+ Write raw binary instead :
164182``` bash
165- echo ' TOKEN=abc123' | ./ende send -t bob --binary -o secret.ende
183+ echo ' TOKEN=abc123' | ./ende encrypt -t bob --binary -o secret.ende
166184```
167185
168- 5-3. Prompt for a secret interactively without echoing it to the terminal :
186+ Prompt for a secret interactively without echoing it:
169187``` bash
170- ./ende send -t bob --prompt -o secret.txt
188+ ./ende encrypt -t bob --prompt -o secret.txt
171189```
172190Interactive prompt notes:
173191- TTY input is masked so the secret is not echoed while typing.
174192- Empty prompt input is rejected.
175193- Non-interactive stdin/file workflows continue to work as before.
176194
177- 5-4. Review peer and output details before sending :
195+ Review peer and output details before encrypting :
178196``` bash
179- echo ' TOKEN=abc123' | ./ende send -t bob --confirm -o secret.txt
197+ echo ' TOKEN=abc123' | ./ende encrypt -t bob --confirm -o secret.txt
180198```
181199` --confirm ` shows:
182200- peer alias and short fingerprint
@@ -186,33 +204,50 @@ echo 'TOKEN=abc123' | ./ende send -t bob --confirm -o secret.txt
186204
187205For automation, you can keep the summary behavior in scripts and skip the prompt explicitly:
188206``` bash
189- echo ' TOKEN=abc123' | ./ende send -t bob --confirm --yes -o secret.txt
207+ echo ' TOKEN=abc123' | ./ende encrypt -t bob --confirm --yes -o secret.txt
190208```
191209
192- 6 . Receive and decrypt:
210+ 7 . Verify and decrypt:
193211``` bash
194212./ende verify -i secret.ende
195- ./ende receive -i secret.ende -o decrypted.txt
213+ ./ende decrypt -i secret.ende -o decrypted.txt
196214```
197215
198216Text envelope input is also supported:
199217``` bash
200218./ende verify -i secret.txt
201- ./ende receive -i secret.txt -o decrypted.txt
202- ./ende receive -i secret.txt --text-out
219+ ./ende decrypt -i secret.txt -o decrypted.txt
220+ ./ende decrypt -i secret.txt --text-out
203221```
204222
205223Safer plaintext output options:
206224``` bash
207225# Refuse to overwrite an existing plaintext file
208- ./ende receive -i secret.ende -o decrypted.txt --no-clobber
226+ ./ende decrypt -i secret.ende -o decrypted.txt --no-clobber
209227
210228# Write plaintext to a temporary 0600 file and print the path
211- ./ende receive -i secret.ende --out-temp
229+ ./ende decrypt -i secret.ende --out-temp
212230```
213231
214232` --out-temp ` is useful when you want Ende to choose a short-lived secure file path for you.
215233
234+ ## Peer Inspection
235+
236+ Show a registered recipient:
237+ ``` bash
238+ ./ende recipient show bob
239+ ```
240+
241+ Show the trusted signing key for the same alias:
242+ ``` bash
243+ ./ende sender show bob
244+ ```
245+
246+ List everything currently registered:
247+ ``` bash
248+ ./ende key list
249+ ```
250+
216251## Health Checks
217252
218253Use ` ende doctor ` to validate local trust and configuration before troubleshooting a failed encrypt/decrypt flow:
@@ -230,6 +265,8 @@ The command prints `ok`, `warn`, and `fail` results and exits non-zero when a ha
230265- ` ende k ` = ` ende key `
231266- ` ende rcpt ` = ` ende recipient `
232267- ` ende snd ` = ` ende sender `
268+ - ` ende reg ` = ` ende register `
269+ - ` ende unreg ` = ` ende unregister `
233270- ` ende key kg ` = ` ende key keygen `
234271- ` ende key ls ` = ` ende key list `
235272
@@ -256,6 +293,10 @@ This performs GitHub SSH key lookup for identity pinning (TOFU) and stores a pin
256293See the generated options table and raw ` --help ` output:
257294- [ CLI_HELP.md] ( CLI_HELP.md )
258295
296+ | Skill | Description |
297+ | -------| -------------|
298+ | [ ende-secret-share] ( .kiro/skills/ende-secret-share/ ) | ende CLI로 팀원을 peer 등록하고 시크릿을 암호화하여 클립보드로 안전하게 전달한다. |
299+
259300## Open Source
260301- License: [ LICENSE] ( LICENSE )
261302- Contributing guide: [ CONTRIBUTING.md] ( CONTRIBUTING.md )
0 commit comments