Engineering insights, tutorials, and deep-dives into multi-channel conversation systems.
Give AI agents secure, container-based command execution with 10 built-in tools, three isolation backends (Docker, Kubernetes, SmolBSD), and token-optimized output via RTK. Now on PyPI.
Read moreDefine multi-step AI workflows as serializable directed graphs — with agents, human approvals, parallel execution, and conditional branching — and run them inside RoomKit rooms. Now on PyPI.
Read moreHow RoomKit turns AI safety from a monolithic afterthought into layered, composable primitives (hooks, policies, rate limits, circuit breakers) that you wire together like middleware at every stage of the message lifecycle.
Read moreWebRTC.ventures compared Bedrock, Vertex, LiveKit, and Pipecat for production voice AI. Here's the missing fifth architecture: multi-channel conversation rooms where voice coexists with SMS, Email, and WhatsApp in the same room.
Read moreNot just multiple LLM calls. A real multi-agent system requires orchestration, memory, tools, and evaluation. This series breaks down the 9 pillars of production-ready multi-agent architecture and shows how RoomKit addresses each one.
Read moreHow RoomKit handles user interaction across chat, voice, SMS, email, and WebSocket — normalizing every entry point into a unified conversation model with identity resolution and request validation.
Read moreHow RoomKit orchestrates multi-agent conversations with ConversationRouter, phase-based routing, intent classification, and automatic agent handoffs.
Read moreHow RoomKit manages the intelligence backbone of multi-agent systems — memory providers, context retrieval, skill registries, and cross-agent knowledge sharing.
Read moreHow RoomKit persists conversation history, agent state, and identity across sessions with ConversationStore, PostgresStore, and JSONB event storage.
Read moreHow RoomKit models agents as execution units — supervisor oversight, specialized AI channels, background delegation, and multi-provider support across Anthropic, OpenAI, Gemini, and Mistral.
Read moreHow RoomKit controls tool access in multi-agent systems — MCP integration, policy-based allow/deny, role overrides, and secure credential handling.
Read moreHow RoomKit connects multi-agent systems to external services — SMS providers, voice APIs, email, CRM integrations, and custom tool handlers for any business system.
Read moreHow RoomKit provides full observability into multi-agent systems — OpenTelemetry integration, span hierarchies, token tracking, latency metrics, and agent traceability.
Read moreHow RoomKit evaluates and improves multi-agent conversations — observations, task tracking, phase audit trails, and feedback loops for continuous quality improvement.
Read moreI built RoomKit UI, a desktop voice assistant for macOS, Linux, and Windows. It supports Google Gemini and OpenAI Realtime, connects to external tools via MCP, includes system-wide dictation, and ships as a standalone app — all built on top of RoomKit.
Read moreRoomKit now supports SIP natively. Incoming calls from any PBX are answered and bridged to conversational AI in real time — no WebRTC, no browser, just a phone call in under 50 lines of Python.
Read moreHow I integrated Gradium's audio language models into RoomKit for multi-channel voice AI — with semantic VAD for natural turn-taking, streaming STT/TTS via WebSocket, and sub-300ms time-to-first-token.
Read moreA fair comparison of four open-source conversational AI frameworks — their philosophies, code examples, strengths, and ideal use cases. Pipelines vs. graphs vs. rooms vs. sessions: choose the abstraction that matches your problem.
Read moreBuild a fully local, open-source voice assistant in Python — no API keys, no subscriptions, no data leaving your machine. A fully local voice pipeline running on a single NVIDIA 4070, responding in under 300ms.
Read moreIf you've ever integrated SMS, email, voice, and chat into the same app, you know the pain. Each channel has its own SDK, its own webhooks, its own quirks. After the third time rebuilding the same plumbing, I extracted the pattern into a library.
Read more