Signal
Typed, immutable events with lineage. A signal carries its payload, its schema, and a record of every gate it passed through — so downstream agents can reason about provenance, not just content.
Signal Gating Protocol · Alpha
Typed signals. Composable gates. Async channels. Mesh topology.
in
gate
out
Multi-agent systems built on LLMs fail in characteristic ways: context collapse, where every signal is forwarded to every agent until the window saturates with noise; context rot, where stale or redundant information displaces what matters; and cascade failures, where one agent's hallucination propagates unchecked through downstream calls. The industry patches these with longer prompts and ad-hoc orchestration glue.
The brain does not hand every sensation to the cortex. The thalamus gates sensory input before it reaches higher regions. The prefrontal cortex decides what is currently relevant. Sparse coding keeps most neurons quiet, most of the time. Agents built on LLMs have no structural equivalent — so SGP provides one: a protocol layer of typed signals, composable gates, async channels, and topology primitives that sits between producers and the agents that consume their output.
SignalTyped, immutable events with lineage. A signal carries its payload, its schema, and a record of every gate it passed through — so downstream agents can reason about provenance, not just content.
GateComposable predicates. Combine with chain, or, and, invert. Built-ins include filter, dedupe, TTL, throttle, batch, and circuit_break.
ChannelAsync transport with backpressure. A priority variant admits high-urgency signals ahead of the queue. Channels are the only way signals cross process or network boundaries.
MeshNetwork topology over channels: scatter/gather, map/reduce, race, and branching workflows. Meshes express coordination between agents without hard-coding call graphs.
Illustrative — the reference SDK is still in development, so this snippet reflects the proposed surface rather than a released API. A pipeline composed from the gate algebra: filter low-priority signals, deduplicate by payload id, throttle, circuit-break on downstream failure, and batch before delivery.
from sgp import Channel
from sgp.gates import Gate, filter, dedupe, throttle, batch, circuit_break
pipeline = Gate.chain(
filter(lambda s: s.priority >= 3),
dedupe(key=lambda s: s.payload["id"], ttl=30),
throttle(rate=10, per="second"),
circuit_break(threshold=5, cooldown=60),
batch(size=16, timeout=0.25),
)
async with Channel("sensor.events") as ch:
async for group in ch.gated(pipeline):
await handle(group) SGP is alpha and thesis-stage. The protocol surface is still moving, the primitives are still being validated against real multi-agent workloads, and none of this is production-ready. If the thesis resonates, the reference implementation lives at github.com/signalgatingprotocol/python-sdk.