Repolode
lassejlv

lassejlv/pi-rs

Порт pi coding agent harness на Rust: один нативный бинарный файл с теми же CLI, терминальным интерфейсом, форматами файлов и API расширений.

Звёзды
129
Форки
15
Открытые issues
0
Последний коммит
позавчера

Что это?

pi-rs — переосмысление pi на Rust, минималистичного и расширяемого coding agent. Проект собирает один нативный бинарный файл `pi`, который должен обеспечивать те же интерфейс командной строки, терминальный интерфейс, форматы хранения сессий и файлов settings, auth.json и models.json, RPC-протокол и API расширений, что и оригинал на TypeScript. Для работы не нужны Node.js или Bun.

Расширения на TypeScript выполняются во встроенном JavaScript-движке Boa; типы TypeScript удаляются с помощью oxc, а встроенные модули Node.js, такие как fs, path и child_process, предоставляются через shim-слой. Рабочая область разделена на крейты для провайдеров и потоковой передачи (pi-ai), цикла агента (pi-agent), рендерера терминала (pi-tui), MCP-клиента (pi-mcp) и изолированного режима выполнения кода (pi-codemode).

В проекте описаны известные отличия в поведении от версии на TypeScript: другой JavaScript-движок, отсутствие поддержки бэкенда терминала Windows и некоторые различия в тексте трассировок стека.

Ключевые возможности

  • 01Один нативный бинарный файл `pi` с теми же CLI и интерактивным режимом, режимом печати, JSON- и RPC-режимами.
  • 02Читает и записывает файлы сессий, настроек, авторизации и моделей в форматах, совместимых с версией на TypeScript.
  • 03Запускает расширения на TypeScript и JavaScript во встроенном движке без Node.js.
  • 04Поддерживает множество LLM-провайдеров, включая Anthropic, OpenAI, Google, Bedrock и Mistral.
  • 05Включает MCP-клиент с транспортами stdio и streamable HTTP.

Сценарии использования

  • Запуск coding agent pi на машинах, где нежелательно устанавливать Node.js или Bun.
  • Использование общего каталога конфигурации агента в сборках на Rust и TypeScript.
  • Разработка или портирование расширений pi, которым нужно работать в нативном бинарном файле.
  • Использование MCP-серверов из coding agent, работающего в терминале.

Быстрый старт

  1. 1

    Установите Rust версии 1.88 или новее

  2. 2

    Соберите релизный бинарный файл

    cargo build --release
  3. 3

    Установите бинарный файл pi в ~/.cargo/bin

    cargo install --path crates/pi-coding-agent
  4. 4

    Проверьте установленную версию

    ./target/release/pi --version

Что важно знать

  • В метаданных репозитория лицензия не указана.
  • Некоторые аспекты поведения отличаются от TypeScript-версии pi, в том числе JavaScript-движок (Boa), из-за чего меняются трассировки стека расширений и сообщения об ошибках.
  • Бэкенд терминала для Windows не портирован.

В подборках

Темы

Частые вопросы

Что такое pi-rs?
Порт pi coding agent harness на Rust: один нативный бинарный файл с теми же CLI, терминальным интерфейсом, форматами файлов и API расширений. pi-rs — переосмысление pi на Rust, минималистичного и расширяемого coding agent. Проект собирает один нативный бинарный файл `pi`, который должен обеспечивать те же интерфейс командной строки, терминальный интерфейс, форматы хранения сессий и файлов settings, auth.json и models.json, RPC-протокол и API расширений, что и оригинал на TypeScript. Для работы не нужны Node.js или Bun.
pi-rs можно использовать бесплатно? Какая у него лицензия?
У pi-rs не указана лицензия. Код открыт, но без лицензии нет явного разрешения на его использование — уточните у автора, прежде чем на него полагаться.
pi-rs всё ещё поддерживается?
Активно поддерживается. Последний коммит в pi-rs — 5 нояб. 2026 г..
Для чего можно использовать pi-rs?
Запуск coding agent pi на машинах, где нежелательно устанавливать Node.js или Bun. Использование общего каталога конфигурации агента в сборках на Rust и TypeScript. Разработка или портирование расширений pi, которым нужно работать в нативном бинарном файле. Использование MCP-серверов из coding agent, работающего в терминале.
Как установить pi-rs?
Установите Rust версии 1.88 или новее Соберите релизный бинарный файл: cargo build --release Установите бинарный файл pi в ~/.cargo/bin: cargo install --path crates/pi-coding-agent Проверьте установленную версию: ./target/release/pi --version
Где скачать pi-rs?
Исходный код и инструкции по установке — на GitHub: https://github.com/lassejlv/pi-rs

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты