Skip to content

AgentMail: paid-member mailbox reader (TUI + bot mode) on the BBS#16

Merged
ralyodio merged 2 commits into
mainfrom
feat/bbs-mail-reader
Jun 14, 2026
Merged

AgentMail: paid-member mailbox reader (TUI + bot mode) on the BBS#16
ralyodio merged 2 commits into
mainfrom
feat/bbs-mail-reader

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

What

A paid-member (Founding Lifetime) mailbox client on the BBS — reachable from the Mail hub entry and ssh mail@bbs.profullstack.com. Works for humans (a Bubble Tea TUI) and agents (a JSON in/out bot mode), against the self-hosted Mailu stack.

ssh mail@bbs.profullstack.com            # interactive TUI (with a PTY)
ssh mail@bbs.profullstack.com list INBOX 20   # bot mode → JSON
ssh mail@bbs.profullstack.com read INBOX 42
echo '{"to":[{"address":"x@y.com"}],"subject":"hi","text":"yo"}' | ssh mail@bbs.profullstack.com send

internal/mailbox

  • types / transport / client — paid-gated facade (ErrNotPaid) returning JSON-serializable structs; same shapes as @logicsrc/plugin-agentmail.
  • memory.go — complete in-memory transport (tests/dev/reference).
  • imap.go / smtp.go — real backend: go-imap/v2 (Dovecot IMAP via master-user login so the gateway opens any mailbox with one secret) + net/smtp submission through the co-located relay; go-message parses bodies/attachments.
  • reader_tui.go — human reader (list / read / flag / delete).
  • bot.go — agent mode: mailboxes, list, read, search, send, reply, flag, seen, delete.

Wiring

  • New paid Mail hub SessionApp + ssh mail@ route (auth.MailNames); TUI with a PTY, bot mode with a command/no PTY.
  • Config: AGENTBBS_MAIL_DOMAIN (mail.profullstack.com), AGENTBBS_MAIL_IMAP_ADDR, AGENTBBS_MAIL_SMTP_ADDR, AGENTBBS_MAIL_MASTER_USER/PASS.

Verification

Go 1.26: go build ./..., go vet ./... clean; gofmt clean; mailbox unit tests pass. IMAP/SMTP integration is pending the Mailu deploy (PR for the stack follows).

Notes

🤖 Generated with Claude Code

@github-actions

Copy link
Copy Markdown

vu1nz Security Review

0 finding(s) in PR #?

No security issues found.

@socket-security

socket-security Bot commented Jun 14, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addedgithub.com/​emersion/​go-imap/​v2@​v2.0.0-beta.898100100100100
Addedgithub.com/​emersion/​go-message@​v0.18.299100100100100

View full report

Replace the figlet "profullstack.com" wordmark with a scaled-down ASCII
rendition of the Profullstack </> mark (derived from the brand image),
shown on the join@ onboarding and the ssh <name>@ hub. Reuses the existing
banner plumbing; the mark is sourced from internal/brand and rendered in
Profullstack red.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
internal/mailbox is a transport-agnostic mail client for Founding Lifetime
members: read, search, compose, send, reply, flag, delete.

- types/transport/client: paid-gated facade returning JSON-serializable
  structs (same shapes as @logicsrc/plugin-agentmail)
- memory.go: in-memory transport (tests/dev/reference) + tests
- imap.go/smtp.go: real backend — go-imap/v2 (Dovecot IMAP, master-user
  login) + net/smtp submission via the co-located relay; go-message parses
  bodies/attachments
- reader_tui.go: Bubble Tea reader for humans (list/read/flag/delete)
- bot.go: JSON in/out mode for agents (ssh mail@host list|read|send|…)
- wired as the paid "Mail" hub entry and the ssh mail@ route + auth.MailNames

Connects to the self-hosted Mailu stack at mail.profullstack.com /
smtp.profullstack.com. Rebased onto main; build + vet + tests clean (Go 1.26).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@ralyodio
ralyodio force-pushed the feat/bbs-mail-reader branch from fb8186b to e165ece Compare June 14, 2026 16:49
@ralyodio
ralyodio changed the base branch from feat/bbs-logo-banner to main June 14, 2026 16:56
@ralyodio
ralyodio merged commit 45c46db into main Jun 14, 2026
5 checks passed
@ralyodio
ralyodio deleted the feat/bbs-mail-reader branch June 14, 2026 16:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant