Skip to content

Add the agent HTTP endpoints data plane protocol - #1728

Open
theomonnom wants to merge 5 commits into
mainfrom
theo/agent-http-endpoints
Open

Add the agent HTTP endpoints data plane protocol#1728
theomonnom wants to merge 5 commits into
mainfrom
theo/agent-http-endpoints

Conversation

@theomonnom

@theomonnom theomonnom commented Aug 20, 2026

Copy link
Copy Markdown
Member

Protocol for the agent HTTP endpoints data plane. The worker connection is WebTransport (QUIC): one session per worker, a control stream carrying the existing WorkerMessage/ServerMessage exchange, and one QUIC stream per HTTP exchange (QUIC provides multiplexing, per-stream flow control, half-close, and reset natively, so there is no capsule/credit layer).

  • AgentHttp namespace in livekit_agent.proto: endpoint manifest (AgentEndpoint: path template, methods, public), kind enum, AgentEndpointSettings, and GoAway.
  • RegisterWorkerRequest: endpoints manifest, instance_id (epoch fencing), endpoint_protocol. Response carries negotiated endpoint_settings.
  • UpdateWorkerStatus: draining + seq; ServerMessage.go_away for control-connection drain.
  • ValidateAgentName + ValidateDeployment tightened to a URL-safe charset (both are URL path segments).

Based on the livekit-server go.mod pin; rebases forward with it.

@changeset-bot

changeset-bot Bot commented Aug 20, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: ba22cc1

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

AgentHttp namespace in livekit_agent.proto: worker-dialed wires speak
AgentHttp.Frame (attach handshake, opaque HTTP/1.1 data bytes, eof/reset,
two-level credit), manifest + instance_id + endpoint_protocol in
RegisterWorkerRequest, negotiated endpoint_settings in the response,
draining/seq in UpdateWorkerStatus, GoAway. ValidateDeployment tightened to
a URL-safe charset.
theomonnom and others added 4 commits August 22, 2026 12:19
Replace the capsule/attach data-plane messages with the WebTransport model:
one QUIC session per worker carrying a control stream plus one stream per HTTP
exchange. Add ValidateAgentName so an agent name is usable as a single URL path
segment.
@theomonnom
theomonnom marked this pull request as ready for review August 31, 2026 04:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant