
Inboxclaw
The event inbox for your AI assistant.
Your inbox, calendar, files, bank, and devices are all producing signals. Inboxclaw turns them into one clean, durable event stream your assistant can actually use.
Connect the services you already use — email, calendar, cloud storage, banking, device state — and Inboxclaw watches them for you. Instead of every assistant, script, or automation having to integrate with Gmail, Google Calendar, Google Drive, Home Assistant, or bank APIs separately, you connect each source once and consume everything from one place.
Who is it for
Inboxclaw is built for self-hosters, agent builders, OpenClaw users, and automation-heavy power users. It is not trying to be a giant enterprise message bus — it is a lightweight event inbox for personal automation and assistant-facing workflows.
How it works
The system works in three stages:
Sources watch external systems. Gmail, Calendar, Drive, bank APIs, Home Assistant — each source detects changes using polling, cursors, or cached snapshots and converts them into normalized events with a consistent shape: event type, entity ID, timestamp, payload, metadata.
The pipeline deduplicates and stores. Events are checked against
(source_id, event_id)to avoid double-writes, then persisted in SQLite before anything is delivered. For noisy streams like repeated file edits, optional coalescing collapses rapid bursts into one meaningful update.Sinks deliver to consumers. Matching events fan out through webhooks, local command execution, SSE streams, or pull-based HTTP batches — each with its own delivery semantics and failure behavior.
System change → Source → Normalize → Optional coalesce → Deduplicate → Durable store → Sink matching → Delivery → ConsumerWhat it guarantees
Practical rather than magical:
- Idempotent writes per source event via the
(source_id, event_id)uniqueness rule. - Durability before delivery — events are persisted before any delivery attempt, so restarts do not erase accepted events.
- Durable sinks retry — webhook, command, and HTTP pull keep delivery state and retry after failures.
What it does not guarantee is universal exactly-once delivery end to end: SSE is fire-and-forget, webhook delivery depends on HTTP acknowledgement, and TTL rules can intentionally discard stale backlog after downtime.
The right promise is: durable local intake, controlled fan-out, lower noise, and fewer integration mistakes.
For OpenClaw users
Inboxclaw is the part that gives OpenClaw eyes and ears.
OpenClaw is the agent. Inboxclaw is the event intake layer that notices what happened in the outside world — new email, changed calendar event, edited Drive file, bank transaction, Home Assistant state change — and feeds those events into OpenClaw in a structured way.
- For a simple setup, Inboxclaw can call the OpenClaw CLI directly so new events land in your main conversation with full context.
- For a more advanced setup, it can send webhooks into OpenClaw's hook system so you can route events to separate sessions or agents.
The simplest mental model: Inboxclaw is OpenClaw's event inbox.
See the Inboxclaw + OpenClaw guide for setup instructions.
Current shape
In very active development — some features may break at any time. A good fit for personal automation, self-hosted assistant backends, side projects, and lightweight integration glue. Not yet recommended as a conservative "bet the company on it" platform.
Getting Started
Follow the Onboarding Tutorial for a complete step-by-step walkthrough:
- Install and run Inboxclaw with a minimal test config
- Configure sources — connect Gmail, your bank, calendar, etc.
- Configure sinks — decide where events go
- Run your pipeline — verify everything works
- Maintenance — updates, restarts, and upkeep
Core Concepts
- Source: connector that reads external changes and emits normalized events. This is the point where many incompatible APIs become one consistent internal language.
- Pipeline: deduplicates and stores events durably, then notifies sinks. Durability happens before delivery.
- Sink: connector that delivers matched events to consumers. Each sink has its own delivery semantics — webhook pushes and retries, command executes locally, HTTP pull lets consumers fetch and confirm batches, SSE streams only live events.
- Coalescing: optional reduction of noisy update bursts into the latest meaningful state. Useful for "same thing changed ten times in thirty seconds" — not for transactional events where every occurrence matters.
Architecture and Internals
Event Sources
- Sources Overview
- Gmail
- Google Calendar
- Google Drive
- Fio Banka
- Faktury Online
- Home Assistant
- GoCardless / Nordigen
- Mock Source
