agentbbs/internal/store
Anthony Ettinger 580e85431f feat(members): member directory + store-and-forward messaging
A members-only hub plugin (the BBS "who") plus user-to-user messaging:

- internal/store: messages table + SendMessage/Inbox/UnreadCount/MarkRead, and
  OnlineUsers (open sessions) for presence. MarkRead is recipient-scoped so a
  member can only clear their own mail.
- plugins/members: directory with online dots + last-seen, a finger-style
  profile view, a minimal compose box, and an inbox that marks read on open.
- ssh msg@host <user> [text]: scriptable CLI to leave a note (body from args or
  stdin), mirroring the existing finger route; "msg"/"message" are reserved.
- hub: "N unread" badge on login (hubMOTD). plugin.Context gains Host for member
  homepage URLs.

Extends the existing finger@ behavior (ssh <name>@host) rather than replacing it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-15 14:14:44 +00:00
..
games_store.go M3: AgentGames — agent-vs-agent games, ELO ladder, replays (#7) 2026-06-14 03:30:12 -07:00
games_store_test.go M3: AgentGames — agent-vs-agent games, ELO ladder, replays (#7) 2026-06-14 03:30:12 -07:00
news_store.go feat: members-only Usenet (NNTP) + Forgejo git provisioning + founding-lifetime $99 2026-06-14 14:26:23 +00:00
news_store_test.go feat: members-only Usenet (NNTP) + Forgejo git provisioning + founding-lifetime $99 2026-06-14 14:26:23 +00:00
store.go feat(members): member directory + store-and-forward messaging 2026-06-15 14:14:44 +00:00
store_admin_test.go M2: admin console over ssh admin@ (users, sessions, moderation, plugins) (#3) 2026-06-14 02:40:18 -07:00
store_email_test.go bbs.profullstack.com launch kit: provisioner, custom domains, email verify, ascii-live 2026-06-11 15:53:19 +00:00
store_messages_test.go feat(members): member directory + store-and-forward messaging 2026-06-15 14:14:44 +00:00
store_premium_test.go payments: call CoinPay REST API directly (drop coinpay CLI dependency) 2026-06-14 08:27:33 +00:00
store_qrypt_test.go feat(qrypt): qrypt.chat anonymous-invite issuer 2026-06-14 11:35:05 +00:00