TL;DR: Every agent in your fleet is making redundant API calls to read context that hasn't changed. SignalMesh replaces those calls with broadcast-once, tune-in-many — cutting context read costs by 99.97% and latency from 800ms to 1.69µs.
Live demo: https://kyklos.io | GitHub (MIT): https://github.com/Ig0tU/SignalMesh
Why Multi-Agent AI Costs More Than It Should
In a standard 5-agent pipeline where each agent needs shared context:
- Agent A calls
get_state()→ 800ms → 280 scaffold tokens - Agent B calls
get_state()→ 800ms again → 280 more tokens - Agent C, D, E — same
That's 15 redundant fetches per session. Here's what it costs annually:
| Architecture | Annual context read cost |
|---|---|
| 5 agents × 3 tool calls each | $1,387 |
| SignalMesh (broadcast once) | $0.46 |
$1,387 → $0.46. Same agents. Same information.
What is SignalMesh?
SignalMesh is an open source ambient context protocol. Data sources broadcast onto named frequencies. Agents tune in and receive matching context — from memory, in microseconds.
from signalmesh import signal_registry
# One broadcast — runs once when data changes
signal_registry.broadcast("market_data", "api", {"asset": "BTC", "price": 42000})
# Every agent tunes in — ~1.69µs, no network call
context = signal_registry.tune_in(["market_data", "price"])
The keyword matching handles edge-case variants — partial names, token overlaps, alternate spellings — so agents find relevant context even when naming isn't perfectly consistent across your codebase.
LangChain Integration
from langchain.tools import tool
from signalmesh import signal_registry
import json
@tool
def get_market_context(query: str) -> str:
"""Get current market data from the ambient mesh."""
results = signal_registry.tune_in([query])
return json.dumps(results) if results else "No context found"
CrewAI Integration
from crewai import Agent
from signalmesh import signal_registry
class MeshAwareAgent(Agent):
def get_context(self, keywords: list) -> list:
return signal_registry.tune_in(keywords)
Benchmark Results
| Scenario | Latency | vs 800ms tool call |
|---|---|---|
| Single agent, small payload | 1.69 µs | 473,000× faster |
| 10 concurrent agents | ~138 µs median | 5,800× faster |
| 100 concurrent agents | ~1.25 ms median | 640× faster |
Payload size has negligible impact — Python stores dict references, not copies.
Live API — Try It Now
The public SignalMesh mesh runs at https://acecalisto3-signalmesh.hf.space. CORS open, no auth.
# See all active frequencies
curl https://acecalisto3-signalmesh.hf.space/ui/frequencies
# Tune in
curl -X POST https://acecalisto3-signalmesh.hf.space/api/tune_in \
-H "Content-Type: application/json" \
-d '{"keywords":["signalmesh","demo"]}'
Deployment Options
| Open Source | Managed ($299/mo) | Enterprise | |
|---|---|---|---|
| Self-host | ✓ | — | ✓ |
| Dedicated instance | — | ✓ | ✓ |
| SLA | — | 99.9% | 99.99% |
| Support | Community | Email/Slack | Dedicated engineer |
Custom integration with LangGraph, AutoGen, CrewAI — flat-rate, delivery in days. Contact: abra.autopreneur@gmail.com
FAQ
Does SignalMesh replace a vector database?
No — use both. Vector DBs handle semantic search over large corpora. SignalMesh handles low-latency ambient context that changes frequently.
What if an agent's keyword doesn't match any frequency?
The mesh scores the keyword against all live frequencies and bridges to the nearest match above a confidence threshold, then caches that mapping for future calls.
Is it thread-safe?
Yes. At 100 concurrent agents, median per-agent latency is ~1.25ms.
Self-host:
git clone https://github.com/Ig0tU/SignalMesh && cd SignalMesh
docker build -t signalmesh . && docker run -p 7860:7860 signalmesh
https://kyklos.io | https://acecalisto3-signalmesh.hf.space | https://github.com/Ig0tU/SignalMesh
Top comments (0)