Skip to content

Core Concepts

The Signal Gating Protocol sits between the agents in a multi-agent system and structures how signals flow between them. It is an executive-function layer: typed signals pass through composable gates, autonomous agents process them, and a mesh topology coordinates the whole system, including runtimes like Nous Research's Hermes and others like them.

The neuroscience analogy

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. SGP supplies one.

The four primitives

Signal

A typed, immutable event. Subclass Signal to define a domain type; each signal carries a priority and metadata. Derive new signals with evolve() rather than mutating, so provenance stays intact.

Gate

A composable predicate that controls which signals reach an agent. Gates combine with operators:

OperatorBehavior
a >> bChain: apply gates in sequence; a signal must pass every gate.
a | bOr: a signal passes if either gate admits it.
a & bAnd: a signal passes only if both gates admit it.
~aInvert: a signal passes if the underlying gate rejects it.

Built-in gates:

GatePurpose
by_priority(n)Admit signals at or above a priority.
by_type(T)Admit signals of a given type.
deduplicate(key, window)Drop duplicates within a window.
ttl(seconds)Drop signals older than a deadline.
throttle(rate)Cap the rate at which signals pass.
when(pred, then, otherwise)Branch on signal content.
circuit_breaker(threshold, cooldown)Trip open after failures; close after a cooldown.

Agent

An autonomous signal processor. It handles signals with @agent.on(SignalType), communicates with emit / reply / request, can expose tools (@agent.tool), and restarts under supervision. An agent is where a runtime like Hermes plugs in.

Mesh

The agent network. connect agents into a topology, then coordinate them:

PatternBehavior
scatter / gatherFan out to workers, collect every response.
map / reduceDistribute to specialists, then synthesize through a reducer.
workflowChain agents: each response becomes the next agent's input.
raceRun strategies in parallel, take the first responder.

Why this shape

Multi-agent systems built on LLMs fail in characteristic ways:

  • Context collapse: every signal is forwarded to every agent until the window saturates with noise.
  • Context rot: stale or redundant information displaces what matters.
  • Cascade failures: one agent's hallucination propagates unchecked through downstream calls.

A gate interrupts each of these at the protocol level (deciding what an agent attends to) rather than papering over them with longer prompts and ad-hoc orchestration glue.

Next steps

Released under open governance.