W2A — an open protocol for agent sensors: giving local agents real-time perception

W2A (World2Agent) is an open protocol for the perception side of the agent loop — entirely self-hostable, no SaaS, no telemetry, TypeScript SDK, Apache 2.0. It standardizes how local agents receive real-time sensor data, replacing the usual pile of one-off scripts and cron jobs that each emit different JSON shapes and break when you switch agent frameworks.
Why it matters
The author frames 2024–2025 as the era of teaching agents to understand context (RAG, long context, memory), and 2025–2026 as teaching them to act (MCP, skills, tools). W2A targets the third leg: teaching agents to perceive. Without all three, you get a very smart intern who needs to be told everything.
Design choices
The protocol has no routing or priority logic — a sensor just emits, and the consumer (your agent) decides what matters. This keeps sensors simple and reusable. The same signal can feed a Claude Code agent, a Slack bot, and a dashboard with zero changes.
Quick start with Claude Code
Install the world2agent plugin in an active Claude Code session:
/plugin marketplace add machinepulse-ai/world2agent-plugins
/plugin install world2agent@world2agent-plugins
/reload-plugins
Add a sensor — for example, Hacker News:
/world2agent:sensor-add @world2agent/sensor-hackernews
Restart Claude Code with the plugin channel loaded so sensor signals flow into your session:
claude --dangerously-load-development-channels plugin:world2agent@world2agent-plugins
Pair with any local agent runtime (Ollama + small orchestrator, LiteLLM, etc.). The author runs it with a local 70B model and uses the summary-only fast path, falling back to full raw data only when needed.
Writing your own sensor
You can write a custom sensor in ~50 lines using defineSensor + createSignal + a setInterval or webhook, then emit. A working Slack sensor is in the repo as a reference.
License and SDK
- License: Apache 2.0
- SDK: TypeScript (Python SDK on the roadmap — PRs welcome)
Who it's for
Developers building local AI agent setups who want a standardized, reusable perception layer without SaaS dependencies.
Repo: https://github.com/machinepulse-ai/world2agent
📖 Read the full source: r/ClaudeAI
👀 See Also

adamsreview: A Multi-Stage PR Review Plugin for Claude Code with Parallel Agents and Auto-Fix Loop
adamsreview is a Claude Code plugin that runs deeper, multi-stage PR reviews using parallel sub-agents, validation passes, persistent JSON state, and an optional ensemble review via Codex CLI and PR bot comments.

OpenClaw Setup Assistance Offered by ClawSet
ClawSet provides setup services for OpenClaw, focusing on understanding client needs. The service includes a setup call for $99 and a month of troubleshooting support.

Cortex: A Local Memory Layer for OpenClaw Agents with Ebbinghaus Decay
Cortex is an open-source memory tool built to solve context compaction issues in OpenClaw agents. It implements Ebbinghaus forgetting curves for fact decay, imports from files first, and runs as a single 19MB Go binary with SQLite.

EvalShift: Open-source CLI for detecting LLM regressions during model migration
EvalShift is an MIT-licensed Python CLI that compares source vs target LLM outputs across prompts, agents, and tool-calling workflows, generating a local HTML regression report.