mirror of
https://github.com/katanemo/plano.git
synced 2026-04-25 00:36:34 +02:00
* fix(routing): auto-migrate v0.3.0 inline routing_preferences to v0.4.0 top-level Lift inline routing_preferences under each model_provider into the top-level routing_preferences list with merged models[] and bump version to v0.4.0, with a deprecation warning. Existing v0.3.0 demo configs (Claude Code, Codex, preference_based_routing, etc.) keep working unchanged. Schema flags the inline shape as deprecated but still accepts it. Docs and skills updated to canonical top-level multi-model form. * test(common): bump reference config assertion to v0.4.0 The rendered reference config was bumped to v0.4.0 when its inline routing_preferences were lifted to the top level; align the configuration deserialization test with that change. * fix(config_generator): bump version to v0.4.0 up front in migration Move the v0.3.0 -> v0.4.0 version bump to the top of migrate_inline_routing_preferences so it runs unconditionally, including for configs that already declare top-level routing_preferences at v0.3.0. Previously the bump only fired when inline migration produced entries, leaving top-level v0.3.0 configs rejected by brightstaff's v0.4.0 gate. Tests updated to cover the new behavior and to confirm we never downgrade newer versions. * fix(config_generator): gate routing_preferences migration on version < v0.4.0 Short-circuit the migration when the config already declares v0.4.0 or newer. Anything at v0.4.0+ is assumed to be on the canonical top-level shape and is passed through untouched, including stray inline preferences (which are the author's bug to fix). Only v0.3.0 and older configs are rewritten and bumped. |
||
|---|---|---|
| .. | ||
| advanced | ||
| agent_orchestration | ||
| filter_chains | ||
| getting_started | ||
| integrations | ||
| llm_routing | ||
| shared | ||
| README.md | ||
Plano Demos
This directory contains demos showcasing Plano's capabilities as an AI-native proxy for agentic applications.
Getting Started
| Demo | Description |
|---|---|
| Weather Forecast | Core function calling with a weather query agent, interactive chat UI, and Jaeger tracing |
| LLM Gateway | Key management and dynamic routing to multiple LLM providers with header-based model override |
LLM Routing
| Demo | Description |
|---|---|
| Preference-Based Routing | Routes prompts to LLMs based on user-defined preferences and task type (e.g. code generation vs. understanding) |
| Model Alias Routing | Maps semantic aliases (arch.summarize.v1) to provider-specific models for centralized governance |
| Claude Code Router | Extends Claude Code with multi-provider access and preference-aligned routing for coding tasks |
| Codex Router | Extends Codex CLI with multi-provider access and preference-aligned routing for coding tasks |
Agent Orchestration
| Demo | Description |
|---|---|
| Travel Agents | Multi-agent travel booking with weather and flight agents, intelligent routing, and OpenTelemetry tracing |
| Multi-Agent CrewAI & LangChain | Framework-agnostic orchestration combining CrewAI and LangChain agents in unified conversations |
Filter Chains
| Demo | Description |
|---|---|
| HTTP Filter | RAG agent with filter chains for input validation, query rewriting, and context building |
| MCP Filter | RAG agent using MCP-based filters for domain validation, query optimization, and knowledge base retrieval |
Integrations
| Demo | Description |
|---|---|
| Ollama | Use Ollama as a local LLM provider through Plano |
| Spotify Bearer Auth | Bearer token authentication for third-party APIs (Spotify new releases and top tracks) |
Advanced
| Demo | Description |
|---|---|
| Currency Exchange | Function calling with public REST APIs (Frankfurter currency exchange) |
| Stock Quote | Protected REST API integration with access key management |
| Multi-Turn RAG | Multi-turn conversational RAG agent for answering questions about energy sources |
| Model Choice Test Harness | Evaluation framework for safely testing and switching between models with benchmark fixtures |