Moneypenny turns inbound messages into tracked, verified work for a fleet of agents on your own machines — then keeps chasing the short list only a human can do, until it's actually done. Every other tool waits to be opened. This one checks back.
One pipeline from inbound signal to finished work. Each capability below is a running subsystem, not a roadmap item — the status chips in the architecture section say exactly what's live.
Channel watchers ingest iMessage and email into one event stream. Every channel enters through the same adapter interface — adding one never means rebuilding the pipeline.
A classifier scores each event — actionable, routine, or noise — extracts people, dates, and amounts, and builds structured tickets. Skillsets register their own watch-rules.
Approved tickets become work packets with owners, steps, and acceptance criteria. An allocator serializes IDs across concurrent agents; nothing is minted by hand.
Commit gates check packet shape, scope, and test claims. Messages carry delivery receipts. A "done" without evidence gets reopened — the platform audits itself.
Work that genuinely needs a person — a call, an approval, a two-factor prompt — lands on the Desk as a small, prioritized list instead of another full inbox.
Desk items re-surface on schedule and escalate to a text message when they slip. Most tools wait to be opened; Moneypenny checks back. That's the point.
Five layers, one direction of flow, with a plugin seam at every stage. Solid chips are running today; dashed chips are planned behind the same interfaces.
Inbound listeners fire events into a single intake. One adapter contract per channel.
Classifier → ticket builder → entity extraction. Signals become structured tickets with people, dates, and priorities attached.
Tickets surface for one-gesture triage. Decisions propagate: a kill cancels in-flight work, an escalation reprioritizes the queue.
Packets dispatch to whichever agent fits — across machines over an encrypted peer mesh. Eval gates and receipts close the loop on every claim.
The Board shows what agents are handling. The Desk holds what needs a human. Both render live state — control lives in the engine, not the UI.
"Already handled." — the answer the Board gives, so the Desk stays short.
Two views of one system. The Board is the machine's side of the desk; the Desk is yours. Copy inside the cards is the product's in-app voice.
Tap any card to open its record — the same ledger the engine writes to. (the tap = expand verb, live on this page)
"The 4pm has been moved twice; the front desk and I are past pleasantries. A third time and it's gone — and the call is the one thing that needs you."
"Proof's been green for two days. One word and the whole domain flips."
"Eleven days. She's started asking your sister whether you're still alive. Three openers drafted — send one or write your own."
Triage verbs — every item answers to the same five gestures, on desktop or on iPad (installed via Capacitor):
Task tools wait to be opened. Moneypenny re-surfaces the things that need a human and escalates to a text when they slip. An assistant that has to be checked isn't assisting.
Every completion claim requires a command and its output. Packet gates, message receipts, and attributed commits mean the system's history can be audited, not just believed.
The engine dispatches to pi, Claude, or Codex agents through one contract. Model economics change monthly; the platform doesn't marry any vendor.
UIs render state; truth and control live in the engine. Close a laptop, kill a session, switch machines — the work and its history survive.