Estate
System Overview
A personal AI-assistant estate for one operator — the edge Worker as instant front door, the Hub and Tower as background muscle.
Situation
This document is the entry point to a self-contained six-document estate description: Mallory is a voice-first personal assistant/second-brain for a single operator, and Hermes is a separate, general-purpose agent harness recently brought online as a second "doer" — today mainly an autonomous developer and an experimental second brain, with delegation from Mallory as the long-term direction.
The estate is built, run, and paid for by one person on a tight time/cost budget, so simplicity, maintainability, and "always up" are prioritised over completeness or enterprise robustness — the yardstick reviewers should calibrate to throughout.
Key decisions
Edge-local invariant
The Worker reads only D1/KV/R2 on the hot path and never calls the Hub or the Tower to answer a request; they push inbound and may poll it. This keeps Mallory instant and up even when home infrastructure is down.
Vault as durable truth
Everything important is a Markdown note with a freshness stamp; D1/KV are derived/edge caches fed from the vault, not the source of record.
Personality is invariant; context changes
Mallory's character never shifts with mode or situation — only what he knows about the operator's current context does.
Voice-first
Rich content (tables, charts, links) is an opt-in attachment he verbally points to, not the primary channel.
Conservative proactivity
Outbound nudges respect quiet hours, daily caps, dedup, and current mode; a genuinely urgent item can override, a low one never interrupts.
Deploys are gated
Every change lands via a reviewed PR; production migrations/deploys are performed deliberately, not automatically.
Architecture
Six pieces spanning Cloudflare edge, a home-server Tower, and an always-on Hub VM, tied together by inbound-only pushes into the edge.
api.mallory.chat — stateless-ish, instant, no dependency on home infrastructure on the hot path.debrief.mallory.chat — the primary UI: chat, voice canvas, feed, settings.Risks & guardrails
Lagging replica
Because context arrives via inbound push rather than live calls, edge context is a lagging replica of the Hub/Tower state — freshness can degrade even though availability doesn't.
docs/estate/00-overview.md