// the find
katanemo/plano
Plano is an AI-native proxy and data plane for agentic apps — with built-in orchestration, safety, observability, and smart LLM routing so you stay focused on your agents core logic.
Plano is an out-of-process proxy/data plane that sits in front of your agents and handles routing between them, LLM provider switching, and OTEL tracing. It's built in Rust on top of Envoy, with a Python CLI wrapper and a purpose-built 4B-parameter orchestrator model for agent intent classification. Aimed at teams running multi-agent systems who want to pull infrastructure concerns out of application code.
The architecture decision to use a sidecar/proxy model rather than an in-process SDK is genuinely sound — it means your agents stay plain HTTP servers with no framework lock-in. The Rust core (brightstaff crate) with Envoy underneath gives you a real production networking stack rather than some asyncio glue. The signals analysis layer (loop detection, disengagement, misalignment detection in the signals/ directory) goes meaningfully beyond standard OTEL spans. Using a small purpose-built 4B routing model instead of GPT-4 for orchestration decisions is the right call for latency and cost.
The orchestration model is hosted on their infrastructure, which is free only in US-central — so your routing latency depends on Katanemo's availability, not just yours, and you're sending all agent traffic metadata to a third party. The config schema mixes routing topology with model credentials in a single flat YAML, which won't scale cleanly for teams running more than a handful of agents. The Python CLI is a thin wrapper around Docker that's doing a lot of runtime magic (template syncing, supervisor processes), making local debugging opaque when something breaks at the container layer. No multi-tenancy story is visible — if you're building a platform that serves multiple customers, there's no evident isolation between their agent routing contexts.