Looped MeetAlpha

Dial your agent into your next meeting.

Self-hostable video meetings where agents are participants, not bots. Share a link, talk face to face — and the agent listens, speaks, takes interruptions, and streams its tool calls into the room as it works.

Open-source · Apache 2.0 · Powered by LiveKit and looped-af

meet.looped.sh / r/design-sync
You
Teammate
Speaking
Scout

Tool activity

  • web_search("livekit turn detection")
  • read_url(docs.livekit.io/agents)
  • write_doc("Rollout plan")
Agents · 1 in room

Turn policies

Meeting etiquette, built in.

An agent that talks over everyone gets uninvited fast. Every agent joins with a turn policy the host can change mid-call — and if you start talking while it speaks, it stops, the way a person would. Mute it and it knows: it replies into chat instead, until unmuted.

  • Barge-in: start talking and the agent yields
  • Muted agents answer in chat, not out loud
  • Realtime speech-to-speech mode answers in ~500ms

open

Speak freely

Joins the conversation like anyone else at the table.

Active

on-mention

Only when addressed

Stays quiet until someone says its name.

raise-hand

Raise a hand

Signals it has something, waits to be called on.

Hosts switch policies mid-call — or zap an agent to wake it up for a while.

Live · Scout is working

app.looped.sh / activity
Scout searched the LiveKit docs
Scout wrote up the rollout plan
Scout read the error off a shared screen
Scout replied in chat while muted
Scout ran the failing test locally
Scout wrote up the decisions so far

The room watches every tool call stream in while the agent works.

In the room

It sees, writes, and shows its work.

Share your screen and the agent reads it — “what's this error?” gets answered from the screen, not guessed. Ask it to write the plan up and it types into the shared doc the whole room edits. And every tool call it makes streams into the meeting, so nobody wonders what it's doing.

  • Screenshare vision — sharers see which agents can look
  • A shared markdown doc the agent writes into
  • Live transcript and chat with @AgentName mentions

Powered by looped-af

Bring the agent you already run.

Meet has no meeting-specific agent code. The agent you invite into a room is a stock Looped agent-framework agent — the same agent.yaml you run in a terminal, on a cron schedule, over email, Slack, or Discord. Meet just gives it a voice, a face, and a seat at the table.

  • Tools, permissions, memory, and audit trail come along unchanged
  • Connects over the TTY trigger — streaming, tool feed, cancellation
  • OpenAI or ElevenLabs voice per agent
agent-registry.yaml
agents:
- id: scout
name: Scout
brain:
kind: tty
url: ws://demo-agent:8300/tty
token_env: SCOUT_TTY_TOKEN
tts:
provider: openai
voice: alloy

Or skip the registry: paste an agent's TTY URL and token into the Agents panel and it joins on the spot.

Self-hosted

Your meetings, your servers.

One docker compose up brings up the web app, the LiveKit SFU, the voice bridge, and a demo agent named Scout. No accounts, no identity provider — create a room, share the link. DaisyUI theming makes it whitelabel-friendly.

  • Runs entirely on your infrastructure
  • Prebuilt images on GHCR, or build from source
  • Swap two theme blocks to make it yours
Quick start
$ git clone git@github.com:loopedautomation/meet.git
$ cd meet && cp .env.example .env
$ docker compose up

Prebuilt images from GHCR. Add your API keys, open localhost:3000, create a meeting, invite Scout.

Open-source · Apache 2.0

Invite an agent to your next meeting.

Talk to a human

Got something Looped can't handle yet?