Open Source · TypeScript · MIT License

Your data is streaming.
Nobody's watching.

Tunnlo connects real-time data to LLM-powered agents that monitor, triage, and act — with smart filtering, multi-agent orchestration, and per-agent dashboards so only what matters hits the right LLM.

$ npm create tunnlo@latest

Built for teams drowning in data

See how engineering teams use Tunnlo to turn noisy data streams into automated, intelligent workflows.

Everything you need to build real-time AI pipelines

From data ingestion to agent response, Tunnlo handles the entire flow with a modular, extensible architecture.

⭕

Pluggable Adapters

Ingest from Kafka topics, Google Docs, network traffic, log files, stdin, MCP servers, or build your own with the Adapter SDK. Hot-swappable at runtime.

△

Smart Filtering

Rate limiting, deduplication, content matching, adaptive sampling, windowed aggregation, and priority routing built in.

⬢

Multi-Agent & Multi-LLM

Run multiple agents in parallel — compare LLMs side by side or route different sources to specialized agents. Supports Anthropic, OpenAI, Ollama, LangGraph, CrewAI, and OpenClaw.

⚡

Action Dispatch

Agents respond with structured actions: webhooks, MCP tool calls, or approval-gated operations with human-in-the-loop.

⭐

Observable

Built-in web dashboard with per-agent response panels, side-by-side comparison view, live metrics, filter drop rates, and token usage tracking.

🛡

Privacy First

Self-hosted, no telemetry, no cloud dependency. Your data stays on your infrastructure. Runs fully offline with local LLMs.

Five-layer pipeline design

Events flow through a clean, composable pipeline from source to action.

📡
Data Sources
Kafka, Google Docs, tshark, logs, stdin, MCP
→
📨
Message Bus
Memory, Redis Streams
→
⚙
Filter Engine
Rate limit, dedup, sample
→
🧠
Agent Bridge
Multi-agent: route, fan-out, compare
→
🎯
Action Dispatch
Webhook, MCP, approval

Up and running in under a minute

Define your pipeline in YAML, point it at your data, and let Tunnlo handle the rest.

pipeline.yaml
sources:
  - id: network-monitor
    adapter: native/stdin

filters:
  - type: rate-limiter
    max_events_per_minute: 30
  - type: windowed-aggregation
    window_seconds: 10
    max_batch_size: 5
    summary_prompt: |
      Analyze these network events.
      Flag any suspicious patterns.

agents:
  - id: fast-triage
    runtime: direct-llm
    model: ollama/llama3.1:8b
    system_prompt: |
      Quick triage: flag or dismiss.

  - id: deep-analysis
    runtime: direct-llm
    model: anthropic/claude-sonnet-4-5
    system_prompt: |
      Deep security analysis.
      Be concise and actionable.

dashboard:
  enabled: true
Terminal
# Install
$ npm install -g tunnlo

# Run with piped data
$ cat events.jsonl | npx tunnlo start pipeline.yaml

# Or with live network data
$ npx tunnlo start pipeline.yaml

# View dashboard
$ open http://localhost:4400

# Check status
$ npx tunnlo status

✓ Pipeline running
  Events: 142 received, 28 sent to LLM
  Uptime: 3m 22s
  Dashboard: http://localhost:4400

Works with your stack

First-class support for popular LLM providers, message buses, and agent frameworks.

A
Anthropic
LLM Provider
O
OpenAI
LLM Provider
🦙
Ollama
Local LLM
LG
LangGraph
Agent Framework
C
CrewAI
Agent Framework
OC
OpenClaw
Agent Runtime
R
Redis Streams
Message Bus
K
Apache Kafka
Data Source
G
Google Docs
Data Source

Start building intelligent pipelines

Tunnlo is open source and free to use. Join the community and start bridging your data to agents.