The coordination layer for
multi-agent systems.

Dispatch work, share state, observe decisions, and gate actions - on the same infrastructure that powers chat, notifications, and live dashboards.

6
coordination patterns
handoff, inbox, blackboard, observe, approve, tools
<50ms
end-to-end latency
p95 global
Built on
rooms, presence, QoS
same infra as chat & dashboards
import { NoLagAgents } from "@nolag/agents";

const agents = new NoLagAgents(TOKEN);
await agents.connect();

const room = agents.joinRoom("workflow");

// Dispatch a task to any available worker
await room.handoff.dispatch({
  type: "summarize",
  payload: { url: "https://..." },
  capabilities: ["research"],
});

// Watch results come back
room.handoff.onResult((result) => {
  console.log("Completed:", result.data);
});

MCP Server Built In

Build with AI from your IDE

Connect Claude Desktop, Cursor, or any MCP client to NoLag's 47+ tools. Create apps, actors, rooms, dispatch tasks, and manage scopes with natural language.

Set up MCP →
TRANSPORT
WebSocket / TCP
CODEC
MessagePack v2
AVG PAYLOAD
−47% vs JSON
QoS LEVELS
0 · 1 · 2
HEARTBEAT
30s
RECONNECT
auto · backoff
Agent Coordination WebSocket Task Handoff MessagePack Human-in-the-Loop −47% payload Blackboard State QoS 0/1/2 Approval Gates Presence built-in Observe Pattern Wildcards Filters Replay Webhooks Lobbies JS · Python · Go Agent Coordination WebSocket Task Handoff MessagePack Human-in-the-Loop −47% payload Blackboard State QoS 0/1/2 Approval Gates Presence built-in Observe Pattern Wildcards Filters Replay Webhooks Lobbies JS · Python · Go
COORDINATION PRIMITIVES

Six patterns. Zero plumbing.

Handoff

Dispatch tasks to workers by capability tags. Built-in pooling, routing, and result collection.

Inbox

Direct actor-to-actor messaging. Route messages to specific agents by ID without broadcasting.

Blackboard

Shared key-value state with versioning. All agents see the same state, with conflict-free updates.

Observe

Real-time event stream for monitoring. Watch every decision, state change, and task completion.

Approve

Human-in-the-loop gating. Pause agent workflows until a human approves, rejects, or modifies.

Tools

Remote tool invocation and response. Let agents call tools hosted by other agents or services.

BLUEPRINTS

Pick a use case. Get a ready-made SDK.

Blueprints are purpose-built SDKs for common real-time patterns. Rooms, topics, and presence are pre-wired. Install, connect, ship.

Don't see your use case?

Every Blueprint is built on the same core SDK. Build your own or request one.

View all Blueprints →
REALTIME SDKS

Realtime SDKs for the four apps
you're going to build anyway.

Chat, notifications, live tracking, dashboards: each one a Blueprint SDK with rooms, presence, and replay pre-wired. Install, connect, ship. Drop down to raw pub/sub when you outgrow the templates.

12ms
p50 fan-out
eu-west, 1k subscribers
256KB
max msg size
binary, MessagePack
<50ms
end-to-end latency
p95 global
import { NoLagChat } from "@nolag/chat";

const chat = new NoLagChat(TOKEN, {
  username: "Alice",
});
await chat.connect();

const room = chat.joinRoom("general");

room.on("message", (msg) => {
  console.log(`${msg.username}: ${msg.text}`);
});

room.on("typing", ({ users }) => {
  showTyping(users);
});

room.sendMessage("Hello!");
room.startTyping();
02 · MENTAL MODEL

How it works.

NoLag organizes your real-time infrastructure into four levels. Each level serves a distinct purpose, from billing boundaries down to individual message channels.

project
Your product: billing, actors, and environment boundary
app
A real-time feature: own topics, config, and webhooks
room
Scoped instance: per-user, team, or device data isolation
topic
Message channel: one data type per channel within a room

Actors (your users) are granted access to specific apps. One actor can interact with multiple apps through a single connection.

Learn more →
NAMESPACE EXPLORER18 topics live
◆ logistics-prodproject
chat/general/
└―messages5 sub
└―typing2 sub
└―reactions7 sub
chat/dispatch-team/ PRIVATE
└―messages5 sub
└―typing2 sub
└―presence6 sub
chat/support/
└―messages5 sub
└―log5 sub
03 · WHAT'S IN THE BOX

Everything you'd otherwise build yourself.

No add-on pricing. No "presence is on the Pro plan." Every account gets the full surface area, the only thing that scales with the price is throughput.

01

Pub/Sub

Topic-based routing on a binary protocol. Wildcards, retained messages, infrastructure-level filters.

02

Presence

Built-in. Per-room, per-lobby, with custom metadata. Joins and leaves are events you subscribe to.

03

QoS 0/1/2

Per-message delivery guarantees. Fire-and-forget for telemetry, exactly-once for transactions.

04

ACL

Per-topic read/write. Roles, actor types (device, user, server, session), API key scoping.

05

Webhooks

Hydration on subscribe. Triggers on publish. Dead-letter queue. Custom headers and auth.

06

Replay

Configurable per topic. Reconnects automatically replay missed messages from your retention window.

07

Lobbies

Observe presence across many rooms at once. Built for dashboards, ops centers, and admin views.

08

Task Handoff

new

Dispatch tasks to agents by capability tags. Built-in pooling, routing, and result collection for multi-agent workflows.

09

Blackboard State

new

Shared key-value state with versioning. All agents see the same state, with conflict-free updates.

10

Approval Gates

new

Human-in-the-loop gating for agent workflows. Pause execution until a human approves, rejects, or modifies.

11

Access Scopes

new

Multi-tenant isolation via topic namespacing. Assign actors to scopes and communication is partitioned automatically.

04 · DELIVERY GUARANTEES

Pick a QoS per message, not per app.

Most brokers force one delivery contract on the whole connection. NoLag attaches QoS to the message itself. Telemetry can fly, payments can wait for the handshake.

Acknowledged delivery. May duplicate on retry. The default.

TYPICALLY USED FOR
Chat messages, presence updates, IoT commands.
PROTOCOL HOPS
2
TYPICAL LATENCY
14ms
WIRE OVERHEAD
18 B
WIRE SEQUENCE
A
publisher
PUB
ACK
B
subscriber
06 · WHAT PEOPLE SHIP

One broker. Six categories. Probably yours.

The same primitives (rooms, topics, presence, QoS) adapt to wildly different shapes. Hover to see the wiring.

Chat & messagingtemplate available
Asha
Shipping the prototype now
Ben
Looks great — adding presence
Asha
Filter by user_id?
ben is typing…
+ Topic per channel
+ Presence built-in
+ Typing indicators free

Coordinate agents. Ship the realtime bit.
Before lunch.

Agent coordination, chat, notifications, tracking, dashboards. One key. Every feature on the free tier.