Agente de programação open source que lê seu projeto, edita arquivos e roda testes pelo terminal, desktop, navegador ou editor.
bigfish1913/pi-rust
Runtime para agentes de programação, nativo em Rust e com foco em biblioteca, e CLI de terminal (rpi) com adaptadores de provedores, ferramentas, sessões duráveis e ABI estável para plugins.
Alternativa open source a:Claude Code
Codex CLI
- Estrelas
- 208
- Forks
- 40
- Issues abertas
- 6
- Último commit
- há 21 horas
O que é?
rpi é um runtime para agentes de programação escrito em Rust, dividido em dez crates combináveis que abrangem adaptadores de provedores, um loop de agente, ferramentas, persistência de sessões, uma interface de terminal e uma ABI para plugins. O mesmo código pode ser integrado ao seu próprio processo como SDK ou usado diretamente pelo agente de linha de comando `rpi`, com TUI interativa, modo de execução única e saída de eventos em JSON.
As sessões são armazenadas como árvores JSONL e retomadas a partir do último frame confirmado após uma falha durante a execução. Gateways compatíveis com Anthropic e OpenAI são configurados por meio de um arquivo models.json, e um provedor offline determinístico `faux` permite executar testes e exemplos sem chave de API nem acesso à rede.
Os plugins são bibliotecas Rust cdylib que usam uma ABI C escrita manualmente com #[repr(C)] e podem registrar ferramentas, provedores, comandos de barra e manipuladores de eventos. O projeto também inclui um modo de servidor headless ao qual um cliente TUI simples pode se conectar por TCP. É uma reimplementação em Rust do Pi SDK em TypeScript e não carrega extensões do Node nem do npm.
Recursos principais
- 01Loop de agente integrável por meio dos crates rpi-agent e rpi-ai, que pode ser usado sem a CLI.
- 02Provedor offline determinístico `faux` para testes e exemplos sem acesso à rede.
- 03Sessões armazenadas como árvores JSONL e retomáveis após falhas.
- 04Ferramentas integradas read, write, edit, bash, grep, find e ls.
- 05ABI para plugins com extensões cdylib que podem registrar ferramentas, provedores e comandos.
- 06Modo de servidor headless com um cliente TUI simples via TCP.
Casos de uso
- Integrar um agente de programação com ferramentas personalizadas e tratamento de eventos ao seu próprio aplicativo Rust.
- Escrever testes offline para fluxos de trabalho de agentes sem chaves de API nem chamadas de rede.
- Executar um agente de programação no terminal de uma máquina local e controlá-lo por um cliente simples em outra máquina.
- Criar um plugin de ferramentas reutilizável que funcione tanto na CLI global quanto em um agente integrado.
Início rápido
- 1
Instale a CLI rpi do crates.io (requer Rust 1.88 ou mais recente)
cargo install rpi-cli - 2
Defina uma chave de API para seu provedor de modelos
export ANTHROPIC_API_KEY=... - 3
Inicie a interface interativa do terminal
rpi
Antes de usar
- É necessário ter Rust 1.88 ou mais recente para instalar pelo crates.io ou pelo código-fonte.
- A fórmula do Homebrew é compatível apenas com Apple silicon no macOS; Macs com Intel precisam do instalador pré-compilado ou do cargo.
- Para executar a CLI com modelos reais, é necessária uma chave de API do provedor ou uma configuração models.json.
Em coleções
Tópicos
Perguntas frequentes
- O que é pi-rust?
- Runtime para agentes de programação, nativo em Rust e com foco em biblioteca, e CLI de terminal (rpi) com adaptadores de provedores, ferramentas, sessões duráveis e ABI estável para plugins. rpi é um runtime para agentes de programação escrito em Rust, dividido em dez crates combináveis que abrangem adaptadores de provedores, um loop de agente, ferramentas, persistência de sessões, uma interface de terminal e uma ABI para plugins. O mesmo código pode ser integrado ao seu próprio processo como SDK ou usado diretamente pelo agente de linha de comando `rpi`, com TUI interativa, modo de execução única e saída de eventos em JSON.
- pi-rust é gratuito? Qual é a licença?
- pi-rust é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- pi-rust ainda é mantido?
- Manutenção ativa. O último commit de pi-rust foi em 6 de nov. de 2026.
- Para que posso usar pi-rust?
- Integrar um agente de programação com ferramentas personalizadas e tratamento de eventos ao seu próprio aplicativo Rust. Escrever testes offline para fluxos de trabalho de agentes sem chaves de API nem chamadas de rede. Executar um agente de programação no terminal de uma máquina local e controlá-lo por um cliente simples em outra máquina. Criar um plugin de ferramentas reutilizável que funcione tanto na CLI global quanto em um agente integrado.
- Como instalar pi-rust?
- Instale a CLI rpi do crates.io (requer Rust 1.88 ou mais recente): cargo install rpi-cli Defina uma chave de API para seu provedor de modelos: export ANTHROPIC_API_KEY=... Inicie a interface interativa do terminal: rpi
- Onde consigo pi-rust?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/bigfish1913/pi-rust
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Um agente de IA open source em Ruby que executa tarefas de programação e outras tarefas usando um conjunto mínimo de ferramentas e qualquer modelo compatível com OpenAI.
Um fork opinativo de TypeScript do pi-mono que transforma seu agente de programação no terminal na CLI senpi, com extensões integradas extras para permissões, presets de prompt e busca na web.
Uma estrutura open source em TypeScript para criar agentes de LLM com estado, com agente de programação integrado, CLI, interface web e SDKs.
Framework e stack de aplicações open source em TypeScript para criar agentes de IA autônomos, com runtime principal, plugins e o app Eliza local-first.
Um harness de agentes de programação em Rust, feito para executar vários agentes de IA em paralelo com pouco uso de memória e inicialização rápida.