Skip to main content
Ambient AI deserves a screen. Companion dashboards are front-ends that render what your Ability sees — life logs, meeting summaries, sensor feeds, smart-home state.

The architecture in one sentence

Your Ability fires HTTP POSTs to a Flask server you host on Replit, which keeps the latest state in memory and serves it to a polling frontend.
OpenHome Ability   ──POST──▶   Replit Flask server  ◀──poll──   Browser dashboard
    (Python)                    (in-memory store)               (HTML + JS)

Pipeline in under 20 minutes

1

Decide what the Ability observes

One thing — a room’s emotional tone, meeting takeaways, sensor readings. Resist adding more up front.
2

Scaffold the Ability in Live Editor

Start from a template. Stub a main loop that prints what it sees.
3

Spin up a Replit

Blank Python Repl. Flask server. One POST endpoint that echoes to the console. Copy the public URL.
4

Wire them

Paste the URL into the Ability as DASHBOARD_URL. Add a fire-and-forget POST helper. Call from the main loop.
5

Prove the pipe

Run both sides. Watch the packets land in both logs.
6

Build the frontend

Once the pipe is proven, build the UI. The backend should never change again.
For the deep dive on rules, patterns, and snippets, see Build a Companion Dashboard.