Boogie
jmapcli · JMAP fra terminalen
01.
v1.4.0 · macOS
En innebygd JMAP-kommandolinjeklient.

JMAP fra kommandolinjen.

jmapcli snakker JMAP med Stalwart (og enhver JMAP-server) rett fra terminalen — send, les, søk, synkroniser, flytt og administrer e-post. Innebygd Swift, påloggingsinformasjon i macOS Keychain, ingen telemetri.

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

Én linje. Signert.

2.1
Homebrew tap
brew tap jasonhollis/boogie && brew install jmapcli — en enkelt signert binærfil, ingen avhengigheter å kompilere. Oppgraderinger via brew upgrade.
— macOS
Apple silicon
2.2
Keychain-autentisering
Påloggingsinformasjon leses fra macOS-påloggings-Keychain etter JMAP-identitet. Ingenting i dotfiles, ingenting i env vars.
— security
find-generic
2.3
Ingen telemetri
Verktøyet ringer ikke hjem noe sted. Det eneste nettverket det berører, er din JMAP-server.
— zero
SDKs
03.
— Section 3
Credentials
macOS Keychain

Passordet ditt berører aldri disken.

jmapcli lagrer ingen hemmeligheter på disk. Passordet ditt (eller bærer-token) ligger i macOS-innloggingsnøkkelringen; kontofilen — ~/.config/jmapcli/config.json, modus 0600 — inneholder bare server-URL-en, brukernavnet ditt og et standardflagg. Ny med Nøkkelringen fra terminalen? Hele arbeidsflyten består av tre innebygde security-kommandoer.

1 · Lagre en hemmelighet — og les den tilbake. macOS spør etter verdien, slik at hemmeligheten aldri skrives på kommandolinjen, ikke vises på skjermen eller skrives til skallets historikk.

# 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
tjeneste — navnet jmapcli slår opp: jmap-password for et passord, eller jmap-token for et bærer-token (f.eks. Fastmail); angi bare det du bruker.
-a
konto — e-postadressen din (det samme brukernavnet du oppgir til jmapcli).
-l
etikett — det du vil se i Nøkkelringtilgang-appen; -U oppdaterer et eksisterende element på stedet.
-w
uten verdi — spør etter hemmeligheten. Dette er delen som holder den borte fra ~/.zsh_history og prosesslisten.

2 · Pek jmapcli mot serveren din. Registrer kontoen én gang; hemmeligheten hentes direkte fra nøkkelringelementet du nettopp lagret, slik at den aldri vises på kommandolinjen.

$ 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
Ingenting i historikken din, logger — eller en AIs kontekst
Når hemmeligheten er i Nøkkelringen, sender ikke hverdagskommandoer (list, send, draft, sync) noen gang med et passord, slik at det ikke kan fanges opp i ~/.zsh_history, en prosessliste eller CI-logger. Det er det som gjør jmapcli trygt å bruke fra terminal-AI-verktøy — en agent får en JMAP-klient, aldri hemmeligheten din.
— zsh
CI · agents
3.2
Roter eller logg ut
Endret passordet ditt? Kjør security add-generic-password … -w-linjen på nytt — -U overskriver den på stedet. For å fjerne en konto sletter jmapcli logout både konfigurasjonsoppføringen og nøkkelringhemmeligheten i ett trinn (--all tømmer hver konto).
— rotate
logout
3.3
Per Mac — av design
Innloggingsnøkkelringen synkroniseres ikke via iCloud — en bevisst grense, slik at passordet ditt aldri forlater Macen du skrev det inn på. Gjenta security-trinnet én gang per Mac; config.json kan ligge i en synkronisert hjemmappe fordi den ikke inneholder noen hemmelighet.
— per
machine
04.
— Section 4
Commands
One verb each

Alt er en underkommando.

login
Lagre påloggingsinformasjon for en JMAP-server i Keychain
discover
Oppdag JMAP-økten fra serveren
accounts
List opp konfigurerte kontoer og alle avsenderidentiteter
mailboxes
List opp alle postbokser
list
List opp e-poster i en postboks
search
Søk i e-post etter tekst, emne, fra, til eller brødtekst (på serversiden)
read
Vis fullt e-postinnhold (Markdown-gjengitt)
send
Send en e-post via JMAP Submission, fra hvilken som helst avsenderidentitet (--from)
reply
Svar på en melding etter ID, i tråd og med sitat av originalen
forward
Videresend en melding etter ID, og legg ved vedleggene på nytt
draft
Legg en e-post i Drafts uten å sende
move · trash · delete
Flytt til en postboks, flytt til Papirkurv, eller slett permanent via ID
sync
Utfør en delta-synkronisering og vis hva som er endret
contacts
JSContact-kontakter: list, legg til, rediger, fjern, importer aliaser
calendar
List kalendere og hendelser, skriv hendelser, sett kalenderfarger
sieve
List, hent, valider og send Sieve-filtre på serversiden
alias
Administrer mottakeraliaser
mcp
Kjør som Model Context Protocol-server for AI-verktøy
logout
Fjern lagret påloggingsinformasjon
05.
— Section 5
Changelog
Every release

Hva er nytt.

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
— En del av Boogie

Vil du ha hele appen?

jmapcli er gratis
den innebygde e-post- + kalenderappen er i App Store
KTP Digital Pty Ltd · ABN 85 648 755 980