phi CLI

Кодовый агент для терминала на Go: один бинарник без Node и Python, ревью диффа прямо в интерфейсе и подагенты

  • 744 ★ репозитория
  • Последний коммит
  • MIT
CLI

Широкий доступ

Почему такой уровень

  • Агент читает и правит файлы проекта и запускает команды оболочки, а флаг `--yolo` и режим `autopilot` снимают запросы подтверждения
  • Скрипт установки запускается через curl и bash, а ключи провайдеров лежат в файле `~/.phi/config.yaml`
  • Скиллы из каталога `.agents/skills` проекта подхватываются без подтверждения и могут нести чужие инструкции
Все причины и проверки

pulseaiclub/phi

Установка

Ручная установка

curl -fsSL https://raw.githubusercontent.com/pulseaiclub/phi/main/scripts/install.sh | bash

Установка последнего релиза на macOS и Linux. Прочтите скрипт до запуска. Для Windows есть scripts/install.ps1 для PowerShell 5.1 и новее.

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Агент читает и правит файлы проекта и запускает команды оболочки, а флаг `--yolo` и режим `autopilot` снимают запросы подтверждения
  • Скрипт установки запускается через curl и bash, а ключи провайдеров лежат в файле `~/.phi/config.yaml`
  • Скиллы из каталога `.agents/skills` проекта подхватываются без подтверждения и могут нести чужие инструкции

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

phi запускает в терминале интерфейс чата с кодовым агентом. Модель правит код через `read`, `write` и `edit`, ищет через `grep`, `find` и `ls` и запускает команды через `bash`. Сам агент поставляется одним бинарником без Node, Electron и Python. В интерфейс встроены свои средства. Команда `/diff` открывает полноэкранное ревью изменений Git: к строкам можно оставить заметки и передать их агенту. `/code` показывает исходник с подсветкой и отправляет выделенный фрагмент в чат, а `/branch` переключает ветку. Знак @ вызывает выбор файла, команда с восклицательным знаком запускает оболочку локально. MCP-серверы подключаются командой `phi mcp add`, и схемы их инструментов не попадают в контекст, пока вы не обратитесь к серверу. Тремя ролями подагентов, `explore`, `review` и `worker`, агент делит работу на изолированные задачи.

Для кого. Для разработчиков, которые предпочитают терминал и хотят легкого кодового агента со своими ключами от OpenAI, Anthropic или Gemini.

Подходит, если

  • Нужно просматривать изменения построчно в самом терминале и отправлять свои заметки к строкам агенту
  • Нужно запустить агента в скрипте или CI одной командой `phi run -p` и получить события в JSONL
  • Нужно подключить много MCP-серверов так, чтобы схемы их инструментов не занимали контекст до первого вызова
  • Нужно вести параллельные исследования и правки подагентами с разными моделями для разных ролей

Не подходит, если

  • Нужна графическая оболочка или десктоп-приложение: phi работает только в терминале
  • Нет доступа к API ни одного провайдера: без ключа агент не запустится
  • Нужна жесткая изоляция агента: у phi есть система разрешений, а песочницу проект не описывает

Пример запроса к агенту

Найди причину падения теста в `internal/tools`, поправь код и покажи изменения через `/diff`, прежде чем что-либо коммитить.

Ограничения

Модель не входит в поставку: ключ и адрес провайдера вписывают в `~/.phi/config.yaml` командой `phi config` или задают переменными `PHI_API_KEY` и `PHI_MODEL`. Инструменты fd и ripgrep скачиваются в фоне при первом запуске. Блок спонсоров на странице проекта рекламирует сторонний API-шлюз infistar.cc по партнерским ссылкам и дает готовый фрагмент `config.yaml`, где у всех моделей стоит адрес этого шлюза. Если вставить фрагмент как есть, запросы с вашим кодом пойдут через посредника. Для прямой работы впишите адрес своего провайдера. Необязательный оптимизатор при включении через `PHI_OPTIMIZER` отправляет историю команд и контекст внешнему сервису TypeSafe и требует ключ `TYPESAFE_API_KEY`.

Как отключить. Удалите бинарный файл phi из каталога, куда его поставил скрипт, и при желании каталог `~/.phi` с конфигурацией, сессиями и скачанными `fd` и `ripgrep`. Ключи провайдеров из `config.yaml` отзовите в кабинете провайдера, если файл попадал в чужие руки или в репозиторий.

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

Как установить phi и подключить модель?

На macOS и Linux выполните `curl -fsSL https://raw.githubusercontent.com/pulseaiclub/phi/main/scripts/install.sh | bash`, на Windows используйте скрипт `install.ps1` в PowerShell. После установки запустите `phi config` и впишите модель, ключ и при необходимости базовый адрес. Для разового запуска хватит переменных `PHI_MODEL` и `PHI_API_KEY`.

Какие провайдеры и модели поддерживает phi?

В поле `api` указывают `OpenAI`, `OpenAIResponses`, `Anthropic` или `Gemini`, а при пустом значении используется формат, совместимый с OpenAI. Для некоторых моделей, например `deepseek-flash`, есть встроенные пресеты с адресом и контекстом.

Можно ли запретить агенту писать файлы и выполнять команды?

Да. В `permissions.mode` задайте `readonly`: запись и `bash` будут запрещены, а чтение останется. Доступны также режимы `interactive`, `autopilot` и `headless-strict`, а правила `deny` приоритетнее `ask` и `allow`. Запись по умолчанию ограничена рабочим каталогом.

Какие скиллы читает phi?

Он загружает `SKILL.md` из `~/.phi/skills`, а также из `~/.agents/skills` и `.agents/skills` в проекте, поэтому набор скиллов, поставленный для другого агента, работает без настройки. Каталоги проекта подхватываются без подтверждения, так что проверяйте их, как проверяете `AGENTS.md`.

Как подключить MCP-сервер в phi?

Выполните, например, `phi mcp add browsermcp -- npx @browsermcp/mcp@latest`, а проверку настроек запустите командой `phi mcp doctor`. Конфигурация лежит в `~/.phi/mcp.json`, а файл `.phi/mcp.json` в проекте переопределяет серверы с тем же именем. Отключить MCP целиком можно переменной `PHI_MCP=off`.

Обсуждение

Вопросов и отзывов пока нет.

TUI поверх tmux ведет сессии Claude Code, Codex и других агентов одним списком: статус, быстрые промпты, worktree и ревью диффа

CLIШирокий доступ625Звезды репозитория

Учебный терминальный агент для кода на Python, задуманный как «nanoGPT для агентов»: прочитать, разобрать и форкнуть

CLIШирокий доступ1,9 тыс.Звезды репозитория
Выбор редакции

Минималистичный агент для кода в терминале, который расширяется скиллами, шаблонами промптов и пакетами на TypeScript

CLIШирокий доступ118,6 тыс.Звезды репозитория

CLI на Go, который настраивает уже установленные у вас ИИ-агенты: дает им общую память, рабочий процесс и детерминированные шаги, не подменяя сами агенты

CLIРасширенный доступ8,1 тыс.Звезды репозитория

Открытый кодовый агент для терминала, браузера и десктопа, который работает с моделями от OpenAI и Claude до Ollama

CLIШирокий доступ359Звезды репозитория

Кодинговый агент на Go для открытых моделей: из беседы делает задачи в отдельных ветках, сам проверяет и вливает результат, ведет все проекты в одном окне

CLIШирокий доступ576Звезды репозитория

Сравнение с похожими

Записи с тем же главным запросом: чем они отличаются.

ЗаписьОфициальныйЗвезды репозиторияГлавное отличие
phi (эта запись)нет744
zerostack — легкий кодовый агент на Rustнет1 727консольный кодовый агент на Rust с песочницей и пятью режимами прав, phi написан на Go
Lateнет452кодовый агент на Go в одном бинарнике, где оркестратор планирует, а одноразовые субагенты пишут и ищут

Коротко о README

Описание проекта открывается блоком спонсоров и быстрым стартом, затем приводит замеры: бинарник около 15 МБ, запуск около 31 мс. Дальше идет справочник по настройке, режимам, командам и правам, а также по скиллам, расширениям и MCP.

Бейдж для README

Сообщить о проблеме

Foxx AIphi
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.