← Back to the map
Project · BluIn progress

Pocket Voice Reminder

Speak a reminder into your pocket. It hears you offline; Centra remembers.

EdgeAgent (store-and-forward)ESP32-S3INMP441 (I2S mic)MAX98357A (I2S amp)microWakeWord / ESP-SRwhisper.cppMQTTFastAPI
17%complete
Current phaseIn progressB0

Define & scaffold

Establish Blu as a first-class project: a repo folder, a clear spec, a laptop-simulated device that registers with Centra, and a brain-side reminder service — all before any hardware is bought.

80%

Blu is a pocket, always-listening voice device. You mutter 'remind me to water the plants' and Blu — running fully offline — captures it, transcribes it locally, and turns it into a reminder. It never waits for the network: it responds on the spot and syncs to Centra when a link appears, where the intent is parsed, scheduled, and surfaced back to you. Blu is the first real project riding the brain, and the proving ground for the whole resilient-edge contract.

01

Architecture

Blu is the first Centra module: an ESP32-S3 pocket device captures speech locally (offline-first) and talks to the brain over MQTT via the shared EdgeAgent; a reminder module on the brain parses intent through the orchestrator, schedules, and notifies. See projects/blu/ARCHITECTURE.md.

Device (edge)runs and responds locally, offline-first
ESP32-S3 (8MB PSRAM)INMP441 I2S micMAX98357A I2S ampmicroWakeWord / ESP-SR wake wordwhisper.cpp tiny/base
Edge runtimenever waits for the brain
EdgeAgent store-and-forward outboxHeartbeats + MQTT Last-WillBattery-aware conserve mode
Brain modulethe reminder capability
reminder-service (ingest → Postgres)Intent parse via orchestrator (typed)Scheduler (due-time queue)Notifier (push / TTS / phone)
Manifesthow Blu plugs into Centra
events: reminder.capture (pub) · reminder.due (sub)tools: create_reminder · list_reminders · snoozedata: reminders tableui: reminders card
Data flow
  1. Wake word / button → record → local STT → local ack (works with no network).
  2. reminder.capture event → durable outbox → syncs to the brain on reconnect.
  3. Gateway → NATS → reminder-service stores it; orchestrator parses intent → due time.
  4. Scheduler fires reminder.due → notifier reaches you across channels; snooze / ack loop.
  5. A reminder that fired while you were offline resurfaces on reconnect — nothing is lost.
02

Phase rail

03

Progress log

  • 2026-08-18

    Blu is born as the first project. Folder, spec, edge agent, and reminder service scaffolded; phases B0–B5 defined with real hardware engineering.