Build a custom AI agent that can call tools and switch between LLM providers without rewriting code.
Use the included coding agent CLI as an interactive terminal assistant for editing code.
Sandbox an AI agent's filesystem and network access using the documented Docker or VM patterns.
| earendil-works/pi | nestjs/nest | lobehub/lobehub | |
|---|---|---|---|
| Stars | 75,380 | 75,404 | 76,126 |
| Language | TypeScript | TypeScript | TypeScript |
| Setup difficulty | moderate | moderate | moderate |
| Complexity | 3/5 | 3/5 | 3/5 |
| Audience | developer | developer | vibe coder |
Figures from each repo's GitHub metadata at analysis time.
Runs with the host user's full permissions by default, sandboxing requires extra setup with Docker or a VM extension.
Pi is a toolkit for building AI agents, and the repository ships an interactive coding agent built on top of it as its flagship example. At its core is a single API that talks to multiple AI providers, including OpenAI, Anthropic, and Google, so you can write code once and switch models without rewriting your integration. Above that sits an agent runtime that manages tool calling and keeps track of the agent's state as it works, and a terminal interface library that renders text efficiently in a command line window. Together these pieces power the coding agent CLI, which you can run in a terminal to have an AI assistant read and edit code interactively. By default, Pi runs with whatever permissions the account and process that started it already have, since it does not include its own system for restricting what it can touch on your filesystem, network, or credentials. The documentation walks through three ways to add stronger boundaries if you want them: running it inside a lightweight Linux virtual machine through an extension, running the whole thing inside a plain Docker container, or using a separate sandboxing tool that enforces policy rules. The project takes its dependency supply chain seriously. External packages are pinned to exact versions rather than ranges, lockfile changes are blocked unless explicitly allowed, and automated checks run dependency audits and verify package signatures on a schedule. The maintainers also encourage users to publish their own coding agent sessions publicly, arguing that real usage data, including failures and fixes, is more useful for improving these tools than artificial benchmark tests. The project is released under the MIT license, and development uses standard npm commands for installing, building, and testing the code across its several packages.
Pi is a toolkit for building AI agents with a unified multi-provider LLM API, an agent runtime, and a ready-to-use interactive coding agent CLI.
Mainly TypeScript. The stack also includes TypeScript, npm, OpenAI.
MIT license, meaning you can use, modify, and redistribute the code freely, including commercially, as long as you keep the copyright notice.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.