katanemo / plano
Plano is an AI-native proxy server and data plane for agentic apps. Smart LLM routing, observability, agent orchestration, and guardrails so you stay focused on your agents core logic.
- Stars
- 7,115 stars
- Forks
- 497 forks
- Language
- Rust
- License
- APACHE-2.0
- Created
- Jul 9, 2024
- Last push
- Oct 24, 2026
- Updated
- Nov 11, 2026
Why these Tags: an agent read the README and quoted it
- LLM gateway from the readme:
Unified LLM APIs with state management
- Multi-agent orchestration from the readme:
Low-latency orchestration between agents; add new agents without modifying app code.
- LLM observability from the readme:
Zero-code capture of Signals plus OTEL traces/metrics across every agent.
- LLM guardrails from the readme:
Build jailbreak protection, add moderation policies and memory consistently via Filter Chains.
An agent gave these Tags from the fixed Tag list in the AwesomeRepos source code. A code check kept each Tag only when its quote is in the text. A wrong Tag? Report an error with the form at the end of this page.
Admitted to the Repository Index on Nov 10, 2026: 7,113 stars on 2026-11-10.
Star History
184 days recorded, May 12, 2026 – Nov 11, 2026 (UTC). Net change +720 stars.
The star count of each day is the latest count minus the net stars of the later days.
Add this Star History to a README
The images follow the light or dark theme of the page that shows them, and update every hour.
Add ?theme=light or ?theme=dark
to the chart address to keep one theme.
Star History chart
[](https://awesomerepos.com/katanemo/plano) Badge
[](https://awesomerepos.com/katanemo/plano) Timeline
It gained stars on 155 of the 184 days recorded since May 12, 2026.
Its largest 7 days were Jul 11, 2026 to Jul 17, 2026: 183 stars.
In the 30 days to Nov 11, 2026 it got 37 stars, 21% fewer than in the 30 days before.
It had 6,395 stars before May 12, 2026 and has 7,115 stars now: 2,885 fewer than 10,000.
- Created on the Repository Host
- +42 stars in one day
- +49 stars in one day
- Largest star day recorded: +58 stars
- Release 0.4.35
- Release 0.4.36
- Release 0.4.37
- Release 0.4.39
- Release 0.4.38
- Latest push
- Entered the Repository Index: 7,113 stars on 2026-11-10
The timeline comes from the creation date and the releases on the Repository Host, the Admission, the Star History, and the Observations. Star milestones show only when the Star History records the day. The list shows up to 5 stable releases from the latest 10 releases recorded. When none of them is stable, one item counts the pre-releases. On the chart of net stars each day, a solid line marks each recorded release.
Forks and pushes
From 2 Observations, Nov 11, 2026 – Nov 12, 2026. Forks 0. AwesomeRepos saw a new push on 0 of 1 days.
- Nov 12, 2026: no new push
A filled day: the last push time changed since the Observation before it.
Health facts
Measured facts in four separate dimensions, each with a date and a source. AwesomeRepos does not add them into one score. AwesomeRepos reads the weekly commits, the changelog, and the community files each week for the 5,000 visible repositories with the most stars and for each rising repository. How AwesomeRepos defines each check
Maintenance
2 of 4 checks (2 without data)-
Yes: Not archived
GitHub does not mark the repository as archived. Source
-
Yes: A push in the last 90 days
Last push on 2026-10-24, 18 days ago. Source
-
No data: Commits in the last 13 weeks
No data: AwesomeRepos has not read the weekly commits.
-
No data: Commits in 26 or more of the last 52 weeks
No data: AwesomeRepos has not read the weekly commits.
Releases
2 of 3 checks (1 without data)-
Yes: A release in the last 365 days
Newest release 0.4.39 on 2026-10-24, 18 days ago. 10 or more releases in the last 365 days. Source
-
Yes: The newest release tag is a semantic version
The newest release tag is 0.4.39. Source
-
No data: A changelog file at the root
No data: AwesomeRepos has not scanned this repository.
Security practice
0 of 1 check (1 without data)-
No data: A security policy
No data: AwesomeRepos has not scanned this repository.
AwesomeRepos has not asked OpenSSF Scorecard about this repository.
Community files
1 of 3 checks (2 without data)-
Yes: A licence
GitHub finds the licence APACHE-2.0. Source
-
No data: A contributing guide
No data: AwesomeRepos has not scanned this repository.
-
No data: A code of conduct
No data: AwesomeRepos has not scanned this repository.
Dependencies in the index
This section shows the packages that connect this repository to other repositories in the index.
The GitHub dependency graph of this repository names 1,148 direct packages (scanned on Nov 12, 2026). Packages from 101 other repositories in the index are among them.
No scanned repository names a package from this repository.
Uses (in the index) · 101
- react/react 253K
npm: react, react-dom
-
PyPI: langchain, langchain-core, langchain-openai
- vercel/next.js 143K
npm: @next/swc-darwin-arm64, @next/swc-darwin-x64, @next/swc-linux-arm64-gnu, @next/swc-linux-arm64-musl and 5 more
- microsoft/TypeScript 112K
npm: typescript
-
npm: @tailwindcss/oxide-android-arm64, @tailwindcss/oxide-darwin-arm64, @tailwindcss/oxide-darwin-x64, @tailwindcss/oxide-freebsd-x64 and 10 more
- astral-sh/uv 92K
PyPI: uv
- crewAIInc/crewAI 61K
PyPI: crewai, crewai-tools
- Textualize/rich 58K
PyPI: rich
- psf/requests 55K
PyPI: requests
-
npm: @types/jsdom, @types/node, @types/react, @types/react-dom and 2 more
Show all 101
-
PyPI: pandas
- grpc/grpc 45K
PyPI: grpcio
-
PyPI: langgraph, langgraph-checkpoint, langgraph-prebuilt, langgraph-sdk
-
PyPI: gradio
- evanw/esbuild 40K
npm: @esbuild/aix-ppc64, @esbuild/android-arm, @esbuild/android-arm64, @esbuild/android-x64 and 22 more
- tokio-rs/tokio 34K
Cargo: tokio, tokio-macros, tokio-stream, tokio-util
- numpy/numpy 33K
PyPI: numpy
- lovell/sharp 33K
npm: @img/sharp-darwin-arm64, @img/sharp-darwin-x64, @img/sharp-linux-arm, @img/sharp-linux-arm64 and 11 more
-
PyPI: openai
- tqdm/tqdm 31K
PyPI: tqdm
- vercel/turborepo 31K
npm: @turbo/darwin-64, @turbo/darwin-arm64, @turbo/linux-64, @turbo/linux-arm64 and 3 more
-
PyPI: chromadb
-
PyPI: pydantic, pydantic-core
-
PyPI: fastmcp
- tokio-rs/axum 28K
Cargo: axum, axum-core
-
PyPI: flatbuffers
- rollup/rollup 26K
npm: @rollup/rollup-android-arm-eabi, @rollup/rollup-android-arm64, @rollup/rollup-darwin-arm64, @rollup/rollup-darwin-x64 and 21 more
- biomejs/biome 26K
npm: @biomejs/biome, @biomejs/cli-darwin-arm64, @biomejs/cli-darwin-x64, @biomejs/cli-linux-arm64 and 5 more
-
npm: lucide-react
-
PyPI: mcp
- Delgan/loguru 24K
PyPI: loguru
-
npm: @heroicons/react
- openai/tiktoken 20K
PyPI: tiktoken
-
npm: @radix-ui/react-dialog, @radix-ui/react-slot
- pallets/click 18K
PyPI: click
- apache/arrow 17K
PyPI: pyarrow
- aio-libs/aiohttp 17K
PyPI: aiohttp
- hyperium/hyper 16K
Cargo: hyper
- encode/httpx 16K
PyPI: httpx
- sympy/sympy 15K
PyPI: sympy
-
PyPI: pytest
-
PyPI: instructor
-
PyPI: pillow
- pytube/pytube 13K
PyPI: pytube
-
Cargo: windows, windows-collections, windows-core, windows-future and 18 more
- Kludex/starlette 13K
PyPI: starlette
-
npm: tsx
-
PyPI: uvloop
-
Cargo: reqwest
- lancedb/lancedb 12K
PyPI: lancedb
-
PyPI: tokenizers
- pymupdf/PyMuPDF 11K
PyPI: pymupdf
- Kludex/uvicorn 11K
PyPI: uvicorn
- serde-rs/serde 11K
Cargo: serde, serde_core, serde_derive
-
PyPI: pdfplumber
- rust-bakery/nom 10K
Cargo: nom
- lukeed/clsx 9.8K
npm: clsx
-
Cargo: js-sys, wasm-bindgen, wasm-bindgen-futures, wasm-bindgen-macro and 3 more
-
GitHub Actions: actions/checkout
-
PyPI: python-dotenv
- jd/tenacity 8.8K
PyPI: tenacity
-
Cargo: crossbeam-epoch, crossbeam-utils
-
PyPI: youtube-transcript-api
- ijl/orjson 8.3K
PyPI: orjson
- pyca/cryptography 7.8K
PyPI: cryptography
- rustls/rustls 7.8K
Cargo: rustls
-
npm: lightningcss-android-arm64, lightningcss-darwin-arm64, lightningcss-darwin-x64, lightningcss-freebsd-x64 and 7 more
-
PyPI: kubernetes
- python-trio/trio 7.4K
PyPI: trio
- docker/docker-py 7.2K
PyPI: docker
- tokio-rs/mio 7.1K
Cargo: mio
-
PyPI: pdfminer-six
-
Cargo: tracing, tracing-attributes, tracing-core, tracing-log and 1 more
- joe-bell/cva 6.9K
npm: class-variance-authority
- pallets/werkzeug 6.9K
PyPI: werkzeug
- dtolnay/anyhow 6.7K
Cargo: anyhow
- python-attrs/attrs 5.9K
PyPI: attrs
-
PyPI: python-docx
-
PyPI: websockets
- jpadilla/pyjwt 5.7K
PyPI: pyjwt
- authlib/authlib 5.5K
PyPI: authlib
-
PyPI: jsonschema
- briansmith/ring 4.1K
Cargo: ring
-
PyPI: more-itertools
- urllib3/urllib3 4.1K
PyPI: urllib3
-
Cargo: postgres-protocol, postgres-types, tokio-postgres
- beartype/beartype 3.5K
PyPI: beartype
- lxml/lxml 3.1K
PyPI: lxml
-
PyPI: oauthlib
- yaml/pyyaml 3K
PyPI: pyyaml
- tkem/cachetools 2.8K
PyPI: cachetools
- agronholm/anyio 2.6K
PyPI: anyio
-
PyPI: watchfiles
- RustCrypto/hashes 2.3K
Cargo: md-5, sha2
-
Cargo: openssl, openssl-sys
- django/asgiref 1.6K
PyPI: asgiref
- pyca/bcrypt 1.5K
PyPI: bcrypt
-
PyPI: markupsafe
- jquast/wcwidth 472
PyPI: wcwidth
-
PyPI: uuid-utils
-
Cargo: const-oid
Used by (in the index) · 0
None.
Sources: the GitHub dependency graph of each repository, and deps.dev for the source repository of each package (checked on Nov 3, 2026). A dependency graph also names development packages. deps.dev takes most source repositories from package metadata. How the dependency graph is made
Observations
Latest Observation, Nov 12, 2026: 7,115 stars, 497 forks, last push Oct 24, 2026, not archived. One of 2 Observations since Nov 11, 2026.