Boogie
jmapcli · JMAP vanaf die terminaal
01.
v1.4.0 · macOS
'n Inheemse JMAP-opdraglynkliënt.

JMAP vanaf die opdraglyn.

jmapcli praat JMAP met Stalwart (en enige JMAP-bediener) reguit vanaf jou terminaal — stuur, lees, soek, sinkroniseer, skuif en bestuur pos. Inheemse Swift, geloofsbriewe in die macOS Keychain, geen telemetrie nie.

$ brew tap jasonhollis/boogie && brew install jmapcli $ jmapcli login # in die macOS Keychain gestoor $ jmapcli send --to you@example.com --subject "Hi" --body "From the CLI"
02.
— Section 2
Install
Homebrew

Een lyn. Onderteken.

2.1
Homebrew tap
brew tap jasonhollis/boogie && brew install jmapcli — 'n enkele ondertekende binêre lêer, geen afhanklikhede om te kompileer nie. Opgraderings via brew upgrade.
— macOS
Apple silicon
2.2
Keychain-stawing
Geloofsbriewe word vanaf die macOS-aanmeld-Keychain per JMAP-identiteit gelees. Niks in dotfiles nie, niks in env vars nie.
— security
find-generic
2.3
Geen telemetrie
Die hulpmiddel bel niks huis toe nie. Die enigste netwerk wat dit raak, is jou JMAP-bediener.
— zero
SDKs
03.
— Section 3
Credentials
macOS Keychain

Jou wagwoord raak nooit die skyf nie.

jmapcli hou geen geheim op skyf nie. Jou wagwoord (of draerteken) leef in die macOS-aanmeld-Keychain; die rekeninglêer — ~/.config/jmapcli/config.json, modus 0600 — hou slegs die bediener-URL, jou gebruikersnaam en ’n verstekmarkering. Nuut by die Keychain vanaf die terminaal? Die hele werkstroom bestaan uit drie ingeboude security-opdragte.

1 · Stoor ’n geheim — en lees dit terug. macOS vra vir die waarde, sodat die geheim nooit op die opdragreël getik, op die skerm gewys of na jou shellgeskiedenis geskryf word nie.

# store it — you’re prompted for the secret, nothing echoes $ security add-generic-password -U -s jmap-password -a you@example.com -l "Boogie JMAP password" -w # read it back at any time $ security find-generic-password -s jmap-password -a you@example.com -w # remove it $ security delete-generic-password -s jmap-password -a you@example.com
-s
diens — die naam wat jmapcli opsoek: jmap-password vir ’n wagwoord, of jmap-token vir ’n draerteken (bv. Fastmail); stel slegs die een in wat jy gebruik.
-a
rekening — jou e-posadres (dieselfde gebruikersnaam wat jy aan jmapcli gee).
-l
etiket — wat jy in die Keychain Access-program sal sien; -U werk ’n bestaande item op sy plek by.
-w
sonder waarde — vra vir die geheim. Dit is die deel wat dit uit ~/.zsh_history en die proseslys hou.

2 · Wys jmapcli na jou bediener. Registreer die rekening eenmalig; die geheim word regstreeks uit die Keychain-item wat jy pas gestoor het, getrek, sodat dit nooit op die opdragreël verskyn nie.

$ jmapcli login --url https://mail.example.com --username you@example.com \ --password "$(security find-generic-password -s jmap-password -a you@example.com -w)" # token auth: swap --password for --token (and store under jmap-token above) $ jmapcli list # from here on, every command reads the Keychain for you
3.1
Niks in jou geskiedenis, logs — of ’n KI se konteks nie
Sodra die geheim in die Keychain is, dra alledaagse opdragte (list, send, draft, sync) nooit ’n wagwoord nie, sodat dit nie in ~/.zsh_history, ’n proseslys of CI-logs vasgevang kan word nie. Dit is wat jmapcli veilig maak om vanuit terminaal-KI-gereedskap te bestuur — ’n agent kry ’n JMAP-kliënt oorhandig, nooit jou geheim nie.
— zsh
CI · agents
3.2
Roteer of teken uit
Het jy jou wagwoord verander? Voer die security add-generic-password … -w-reël weer uit — -U skryf dit op sy plek oor. Om ’n rekening te verwyder, verwyder jmapcli logout beide die konfigurasie-inskrywing en die Keychain-geheim in een stap (--all maak elke rekening skoon).
— rotate
logout
3.3
Per-Mac by ontwerp
Die aanmeld-Keychain word nie deur iCloud gesinkroniseer nie — ’n doelbewuste grens, sodat jou wagwoord nooit die Mac verlaat waarop jy dit getik het nie. Herhaal die security-stap eenmalig per Mac; config.json kan op ’n gesinkroniseerde tuisgids ry omdat dit geen geheim dra nie.
— per
machine
04.
— Section 4
Commands
One verb each

Alles is 'n subopdrag.

login
Stoor geloofsbriewe vir 'n JMAP-bediener in die Keychain
discover
Ontdek die JMAP-sessie vanaf die bediener
accounts
Lys gekonfigureerde rekeninge en elke stuurbare identiteit
mailboxes
Lys alle posbusse
list
Lys e-posse in 'n posbus
search
Soek pos op teks, onderwerp, van, aan, of inhoud (aan bedienerkant)
read
Wys volledige e-posinhoud (Markdown-gerender)
send
Stuur 'n e-pos via JMAP Submission, vanaf enige stuurbare identiteit (--from)
reply
Antwoord op 'n boodskap per ID, in die draad en met die oorspronklike aangehaal
forward
Stuur 'n boodskap per ID aan, met die aanhegsels weer aangeheg
draft
Berei 'n e-pos in Drafts voor sonder om te stuur
move · trash · delete
Skuif na 'n posbus, skuif na die Asblik, of vernietig permanent per ID
sync
Doen 'n delta-sinkronisering en wys wat verander het
contacts
JSContact-kontakte: lys, voeg by, wysig, verwyder, voer aliasse in
calendar
Lys kalenders en gebeurtenisse, skryf gebeurtenisse, stel kalenderkleure
sieve
Lys, haal, valideer en stoot Sieve-filters aan die bedienerkant
alias
Bestuur ontvanger-aliasse
mcp
Hardloop as 'n Model Context Protocol-bediener vir KI-gereedskap
logout
Verwyder gestoorde geloofsbriewe
05.
— Section 5
Changelog
Every release

Wat's nuut.

v1.4.0
Full-text search (text, subject, from, to, body); threaded reply and forward; draft — stage in Drafts without sending; multi-account: accounts and identities, and send/reply/forward as any sendable identity via --from; contacts import-aliases; faster multi-recipient sends. — 2026-06-24
v1.3.1
Calendar event write (add, edit, remove); offline-first hardening. — 2026-06-20
v1.3.0
JSContact contacts — read and write, with a lossless round-trip. — 2026-06-15
v1.2.0
Sieve filters — list, get, validate, and push server-side mail rules. — 2026-06-12
v1.1.0
Calendar — list calendars and events, set colours. — 2026-06-11
v1.0.0
Initial release — send, read, search, sync, and triage mail from the terminal, credentials in the macOS Keychain. — 2026-06-06
— Deel van Boogie

Wil jy die volle app hê?

jmapcli is gratis
die inheemse Mail + Kalender-app is in die App Store
KTP Digital Pty Ltd · ABN 85 648 755 980