pi-protonmail
v0.3.0
Published
Proton Mail Bridge Pi extension for mailbox discovery, message workflows, and attachment imports.
Downloads
521
Maintainers
Readme
pi-protonmail
Proton Mail Bridge Pi extension for mailbox discovery, message previews, attachment imports, and profile-based setup.
Use cases
/protonmail— open the interactive setup hub for profile defaults.protonmail_*tools — check Bridge status, list mailboxes, preview messages, and import attachments.
Install
pi install npm:pi-protonmailFor local development:
pi install /absolute/path/to/this/repoEnvironment
Set the Proton Bridge connection variables in your Pi environment:
PROTON_BRIDGE_HOSTPROTON_BRIDGE_IMAP_PORTPROTON_BRIDGE_SMTP_PORTPROTON_BRIDGE_IMAP_SECURITYPROTON_BRIDGE_USERNAMEPROTON_BRIDGE_PASSWORDPROTON_BRIDGE_DEFAULT_MAILBOX(optional)
These values may be raw strings or 1Password references resolved by the extension.
Profiles and workspace
Profile settings are stored under .pi/protonmail/:
config.json— workspace-level configprofiles/<name>/policy.json— per-profile defaults
Profile defaults control the mailbox selection, mailbox filter, period, and optional import workspace override used by LLM-driven mail workflows. Attachment imports default to .pi/protonmail/imports/<profile>/....
Workflow
- Configure Proton Bridge credentials.
- Open
/protonmailto choose or edit a profile. - Use
protonmail_*tools for Bridge status, mailbox lookup, message previews, or staged attachment imports.
Publishing
Tagged pushes like v0.1.0 publish to npm through GitHub Actions. The release workflow validates the tag version, runs checks, and publishes with NPM_TOKEN when the version is not already on npm.
Repository notes
- Entry point:
src/index.ts - Main extension logic:
src/protonmail.ts - Native Bridge implementation:
src/proton-bridge.ts - Setup hub:
src/hub.ts - Secret resolution:
src/secret-refs.ts
Troubleshooting
- If Bridge status fails, confirm the host, ports, and credentials are correct.
- If list or import commands return nothing, verify the default mailbox and active profile policy.
- If imports fail, check that the target period is set and matches
YYYY-MM.
