open source macOS · MIT · без регистрации

Агент, код и ревью в одном окне

you@mac ~ $ надоело держать открытыми терминал, IDE и вкладку с MR?

Ankh это рабочее место для CLI-агентов. Проекты открыты вкладками, агент работает в настоящем терминале, а его правки видны рядом, с построчным ревью как в merge request. Замечания уходят агенту одним промптом.

Claude CodeCodex CLIGemini CLIOpenCode
Ankh: правки по выделенным строкам файла
Ankh: поиск по всем файлам проекта
Ankh: файлы, превью и ревью изменений агента
сессии main · агент работает fix/search · ждёт ввода
Claude Code · точные статусы и лимиты Codex CLI Gemini CLI OpenCode zsh · рядом с агентом git worktree GitLab MR · через glab tmux
Зачем

Ваш агент, ваши настройки, ваш код

Ankh не заменяет агента и сам не ходит в сеть. Он просто запускает ваш claude так же, как это сделал бы терминал, и собирает вокруг него всё, что нужно для работы.

Агент стартует через ваш login-shell, поэтому подхватываются PATH, прокси, MCP-серверы, ключи и переменные из .zprofile и .zshrc. Даже если Ankh открыт из Dock.

# так Ankh запускает агента $SHELL -l -i -c "exec claude …"

Статусы и лимиты Claude Code приходят через хуки в отдельном файле настроек. Ваш ~/.claude/settings.json остаётся нетронутым, а собственный statusLine продолжает работать.

Без регистрации и аккаунта

Скачали, открыли папку с репозиторием, работаете. Никаких логинов в ещё одном сервисе.

Сам не ходит в сеть

Весь трафик идёт через вашего агента и ваш прокси. Код не покидает привычный периметр.

Открытый код, MIT

Go, React и xterm.js. Всё можно прочитать, собрать из исходников и поправить под себя.

Сделал для себя, когда работал с Claude через корпоративный AI-прокси: ни UI, ни remote, только терминал. Хотелось видеть файлы, агента, терминал и ревью в одном окне и не регистрироваться ради этого в очередном сервисе.
МИХАИЛ ИСАЕВ · АВТОР
Возможности

Всё, ради чего вы открывали ещё три окна

Ревью

Ревью как в merge request

Кликните в строку диффа или выделите диапазон и оставьте замечание. Submit отправит агенту все замечания одним промптом.

  • Режимы: незакоммиченное, вся ветка против базовой, последний коммит
  • Замечание едет за своей строкой, даже если код выше сдвинулся
  • Stage, откат и коммит прямо в панели, ⌘ Enter
Панель изменений с замечаниями к строкам диффа
Правки

Правки по файлу без копипасты

Выделите строки в превью или нажмите Edit… на файле в дереве и напишите, что поменять. Промпт @путь:строки текст сразу уходит агенту.

  • Клик по номеру строки выделяет её, Shift+клик выделяет диапазон
  • Правый клик в дереве: Edit… для всего файла
  • Можно не отправлять сразу, а только вставить текст в поле агента
Выделенные строки в превью и поле правки для агента
Файлы

Проект перед глазами, IDE не нужна

Дерево с git-статусами и превью с подсветкой синтаксиса. Изменения на диске появляются сразу, через FSEvents.

  • ⌘ P нечёткий поиск файла: hndlr найдёт handler.go
  • «Открыть в…» Cursor, Zed, VS Code или любом другом редакторе
  • Файлы из .gitignore можно показать или скрыть
Дерево файлов с git-статусами и превью кода
Поиск

Глобальный поиск по всему проекту

⇧ ⌘ F ищет по всем файлам через git grep с учётом .gitignore, ⌘ F ищет в открытом файле.

  • Регистр, слово целиком, регулярные выражения
  • Фильтр по файлам и подсветка совпадений
Результаты глобального поиска по проекту
И ещё

Несколько агентов, ни одного лишнего окна

Проекты вкладками сверху, сессии внутри проекта. Точка у вкладки показывает, работает агент или ждёт вас.

Worktree-сессии

Каждая параллельная задача в своём git worktree и со своим агентом. Можно задать скрипт подготовки, например npm ci.

Настоящий терминал

PTY: работают TUI, цвета, вставка и мышь. Рядом можно открыть обычный zsh в папке сессии.

Любой агент

Claude Code, Codex CLI, Gemini CLI, OpenCode. Агента можно сменить для каждой сессии.

Контекст и лимиты

Для Claude Code видно заполненность контекста, 5-часовое окно и неделю. Подскажет /compact и /clear вовремя.

Переживает перезапуск

С tmux агенты работают в отдельном сервере и остаются живыми вместе с выводом терминала.

GitLab MR

Статус MR и pipeline, создание MR, публикация замечаний обсуждениями и обратный импорт для агента.

Счётчик в Dock

Иконка показывает, сколько агентов ждут ввода. Можно спокойно переключиться на другие дела.

Чат через ACP

Сообщения, план, вызовы инструментов и запросы разрешений отдельными блоками.

экспериментально
Как начать

Четыре шага до первого ревью

Откройте проект

Нажмите «Открыть проект…» и выберите папку с git-репозиторием.

Пишите агенту

Агент запустится в центре окна. Общайтесь с ним как обычно.

Оставьте ревью

Изменённые файлы появятся справа. Кликните в строку диффа, напишите замечание и нажмите Submit.

Распараллельте

Для параллельной задачи нажмите + у сессий: Ankh создаст worktree и запустит ещё одного агента.

Установка

Одна команда в терминале

Скрипт скачивает последний релиз с GitHub, проверяет контрольную сумму и кладёт Ankh.app в /Applications. Той же командой Ankh обновляется.

zsh · install
# последняя версия
$ curl -fsSL https://raw.githubusercontent.com/isaevfeed/ankh-ide/main/install.sh | sh
# из исходников (Go 1.25+, Node 20+, Xcode CLT)
$ git clone https://github.com/isaevfeed/ankh-ide.git && cd ankh-ide
$ make setup && make install
# по желанию
$ brew install tmux glab && glab auth login

Что нужно

  • macOS 11 или новее, Apple Silicon или Intel
  • Установленный агент, например Claude Code

Почему не .dmg

Сборка пока не подписана Apple Developer ID, и Gatekeeper не даст открыть приложение, скачанное браузером. Через curl такой пометки нет. Скрипт короткий, его можно прочитать перед запуском.

⌘P
быстрый поиск файла
⇧⌘F
поиск по всем файлам
⌘1…9
переключить проект
⌘Enter
комментарий или коммит

Одно окно вместо пяти

Ankh бесплатный и открытый. Поставьте звезду, если пригодился, а баги и идеи несите в Issues.