Problem
Multiple agents sharing a domain can race on the same inbound email. No claim/lease/ack mechanism exists — two agents can both read and reply to the same message.
Proposal
- Add
claimed_by and claimed_at fields to messages table
- Add
inbox claim <id> --agent <name> command with optimistic locking
- Add
inbox ack <id> and inbox fail <id> for completion tracking
inbox ls --unclaimed filter for agents to find work
- Optional TTL on claims (auto-release after N minutes if not acked)
Priority: HIGH — required for multi-agent setups
Problem
Multiple agents sharing a domain can race on the same inbound email. No claim/lease/ack mechanism exists — two agents can both read and reply to the same message.
Proposal
claimed_byandclaimed_atfields to messages tableinbox claim <id> --agent <name>command with optimistic lockinginbox ack <id>andinbox fail <id>for completion trackinginbox ls --unclaimedfilter for agents to find workPriority: HIGH — required for multi-agent setups