Skip to content

Kits

Each kit is copied into your project and owned by you. Install with copit, server and UI halves in one command.

By feature

Feature Install
Notifications
Push to a user's open tabs from a signal, a worker or another service
copit add @chanx-kit/notification @chanx-kit-ui/notification
Chat room
History replayed on join, a composer and who is here
copit add @chanx-kit/room-chat @chanx-kit-ui/chat
Presence
Who is in a room, document or tenant
copit add @chanx-kit/presence @chanx-kit-ui/presence
AI agent
A Pydantic AI agent streaming over AG-UI, approvals included
copit add @chanx-kit/pydantic-ai-ag-ui @chanx-kit-ui/ag-ui
Live captions
Microphone to text while you speak
copit add @chanx-kit/deepgram @chanx-kit-ui/transcriber --only stt
Other providers: elevenlabs, openai, fake-voice
Text to speech
Text spoken to every listener
copit add @chanx-kit/elevenlabs @chanx-kit-ui/player --only tts
Other providers: deepgram, openai, fake-voice
Voice agent
Talk to an AG-UI agent, hear it answer, interrupt it by speaking
copit add @chanx-kit/voice-agent @chanx-kit/deepgram @chanx-kit-ui/voice-agent
Other providers: elevenlabs, openai, fake-voice

Catalog

Every server and UI kit. Foundations are installed for you by the kits that need them; providers plug a vendor into a contract.

Kit Side Area Role Description
ag-ui Server Agents Feature Serve the AG-UI agent-user interaction protocol over a websocket, so any AG-UI frontend works unchanged. Provider-agnostic: yield events from any agent. Optionally broadcasts a run to every connection on its thread, replaying it to one that joins part-way through.
audio-stream-in Server Voice Foundation Stream microphone audio in over the socket and get transcripts back, from any speech-to-text provider. Defines the transcriber contract; provider kits plug in a stream. Bounded streams, per-user limits, gap detection and watcher fan-out.
audio-stream-out Server Voice Foundation Speak text to a session's listeners from any text-to-speech provider. Defines the synthesizer contract; provider kits plug in audio. Utterances queue in order, an interruption clears them, late joiners are replayed, and playback marks record what was actually heard.
chanx-testing Server Tooling Tooling Backend-agnostic test harness for kit components: one suite runs against both Django Channels and FastAPI / fast-channels. Installed automatically by kits whose copied tests use it.
conversation-store Server Agents Foundation Persistence for an agent conversation, held as an opaque blob per thread so one backend serves every agent framework. Ships an in-memory default for demos and tests.
deepgram Server Voice Provider Deepgram behind the voice contracts: live speech-to-text (Nova) and streaming text-to-speech (Aura). Install both, or one part with --only stt or --only tts. The API key stays on the server.
django-message-store Server Messaging Store Durable chat history in your Django database, with an admin and a read-only REST endpoint. Drop-in replacement for the room-chat kit's in-memory default.
elevenlabs Server Voice Provider ElevenLabs behind the voice contracts: realtime speech-to-text (Scribe) and streaming text-to-speech. Install both, or one part with --only stt or --only tts. The API key stays on the server.
fake-voice Server Voice Provider A transcriber and a synthesizer that need no provider and no key: speech is transcribed as a scripted sentence, text is spoken as a tone per word. For demos, UI work and CI. Install both, or one part with --only stt or --only tts.
media-stream-in Server Voice Foundation The plumbing for media a client streams in: bytes that travel as base64, chunks put back in order with gaps reported, and a bounded real-time intake with keepalive and idle handling. The base the audio kits build on.
media-stream-out Server Voice Foundation The plumbing for media the server streams out: producers run one at a time per session and can be cut off as a whole, and what was sent is kept so a connection joining part-way is replayed. The base the speech output kits build on.
notification Server Messaging Feature Fan out notifications to a user's live connections from anywhere in your app: a signal, a background worker, or another service.
openai Server Voice Provider OpenAI behind the voice contracts: realtime transcription and text-to-speech. Install both, or one part with --only stt or --only tts. The API key stays on the server.
pipecat-bridge Server Voice Provider Run a Pipecat pipeline behind a chanx transcriber topic, so any of Pipecat's speech-to-text services speaks the transcriber contract. chanx keeps the socket; Pipecat never sees a transport.
presence Server Presence Feature Track who is present in a room, document or tenant, and tell everyone when that changes. Pluggable store; ships with an in-process default.
pydantic-ai-ag-ui Server Agents Provider Run a Pydantic AI agent over the AG-UI protocol on a chanx websocket: streamed text, tool calls and human-in-the-loop approvals, with the conversation kept server-side and replayed to a reconnecting client as MESSAGES_SNAPSHOT.
redis-presence-store Server Presence Store Shared presence roster backed by Redis, so presence stays correct across multiple workers. Drop-in replacement for the presence kit's in-memory default.
room-chat Server Messaging Feature A chat room: history replayed on connect, plus a live roster from the presence kit. Pluggable store, with an in-process default for demos and tests.
voice-agent Server Voice Feature Talk to any AG-UI agent: speech is transcribed, each utterance starts a run, the reply is spoken sentence by sentence as it streams, and speaking over it interrupts, keeping only what was heard. Provider-agnostic on all three sides.
ag-ui UI Agents Feature Headless state for one AG-UI conversation: messages folded from streamed events, the run in flight, run and cancel. Replay-safe when several tabs share a thread.
audio UI Voice Foundation The pure audio helpers the voice UI kits share: resampling, PCM16 conversion, fixed-duration chunking, levels and base64. No browser APIs, so they run and test anywhere.
chat UI Messaging Feature A chat log with history on join and a composer, for any server speaking the chat contract. Shows the room's roster through the presence UI kit.
notification UI Messaging Feature A live notification feed with per-topic acknowledgement, for any server speaking the notification contract.
player UI Voice Feature Play what a server speaks, for any server speaking the synthesizer contract. Headless playback with a jitter buffer, instant interruption and playback marks back to the server, plus a React player.
presence UI Presence Feature Who is here, kept current from joins and leaves, for any server speaking the presence contract.
transcriber UI Voice Feature Record from the microphone and show live captions, for any server speaking the transcriber contract. Headless capture (resampled PCM16 in numbered chunks), a transcript store, and React recorder and caption components.
voice-agent UI Voice Feature Talk to an agent: an open microphone, live captions, the reply spoken as it streams, and interrupting by speaking. Composes the transcriber, player and ag-ui UI kits over one session.