Skip to content

Add LiveKitSessionArguments session type - #196

Closed
markbackman wants to merge 1 commit into
mainfrom
add-livekit-session-arguments
Closed

Add LiveKitSessionArguments session type#196
markbackman wants to merge 1 commit into
mainfrom
add-livekit-session-arguments

Conversation

@markbackman

@markbackman markbackman commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Adds a LiveKit agent session type alongside the existing Daily, WebSocket, and SmallWebRTC ones.

What changed

  • LiveKitSessionArguments in src/pipecatcloud/agent.py, subclassing pipecat-ai's LiveKitRunnerArguments like the other session types do. It carries room_name, url, token, and session_id, and works with pipecat's create_transport and isinstance checks.
  • Exported from pipecatcloud (both the lazy-export tuple and __all__).
  • Tests covering construction without warnings and the runner-type subclass relationship.
  • CHANGELOG entry.

Passing connection details

Pass the LiveKit connection details in the body request parameter when starting a session, under a livekit key holding url, room_name, and the bot's token. Base image 0.1.28 and later turns that block into LiveKitSessionArguments before calling bot().

Test plan

uv run pytest — 349 passed.

🤖 Generated with Claude Code

Adds a LiveKit agent session type alongside the existing Daily, WebSocket,
and SmallWebRTC ones. Like the others it subclasses the matching pipecat-ai
runner type (LiveKitRunnerArguments), so it carries room_name, url, token,
and session_id and works with pipecat's create_transport and isinstance
checks.

pipecat.runner.run vends LiveKitRunnerArguments for local runs. To start an
agent on Pipecat Cloud, an app mints the room and tokens and sends the
connection details in the start request's body, in whatever shape it
defines. A bot builds these arguments from that body and create_transport
takes it from there.
@markbackman
markbackman force-pushed the add-livekit-session-arguments branch from c6350a6 to cd331c4 Compare August 19, 2026 22:34
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