Hunk CLI

Терминальный просмотрщик диффов: все файлы одним потоком, а агент через скилл hunk-review ведет по изменениям и оставляет комментарии к строкам

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

Расширенный доступ

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

  • Hunk загружает расширения на TypeScript из `~/.config/hunk/extensions/` и из репозитория после явного доверия, а `hunk extension install` ставит их из Git по адресу
  • Агент через `hunk session` перезагружает окно на другие диффы и пишет комментарии в сессию: для этого работает локальный фоновый процесс
  • Команда `hunk gh` обращается к API GitHub, а для приватных репозиториев читает токен из `GH_TOKEN` или `GITHUB_TOKEN`
Все причины и проверки

modem-dev/hunk

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add cli/hunk

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

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

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

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Hunk загружает расширения на TypeScript из `~/.config/hunk/extensions/` и из репозитория после явного доверия, а `hunk extension install` ставит их из Git по адресу
  • Агент через `hunk session` перезагружает окно на другие диффы и пишет комментарии в сессию: для этого работает локальный фоновый процесс
  • Команда `hunk gh` обращается к API GitHub, а для приватных репозиториев читает токен из `GH_TOKEN` или `GITHUB_TOKEN`

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

Что делает

Hunk — программа для чтения изменений в терминале на основе `OpenTUI`. Команда `hunk diff` показывает правки рабочей копии вместе с неотслеживаемыми файлами, `hunk show` открывает коммит, `hunk log` дает интерактивную историю с графом веток, `hunk status` выводит состояние рабочих деревьев, а `git diff | hunk patch -` читает патч из стандартного ввода. Файлы идут одним потоком с боковой панелью, раскладка бывает разделенной, объединенной или автоматической: порог ширины для разделенного вида задает параметр `auto_split_min_width` в конфиге. Репозитории Git, Jujutsu и Sapling определяются сами, а `hunk gh pr` открывает пулреквест без GitHub CLI. К агентам Hunk подключается через скилл `hunk-review`. Запущенное окно регистрируется у локального фонового процесса, и агент командами `hunk session` читает структуру ревью, переходит к нужному файлу и куску, перезагружает окно на другой дифф и ставит комментарии к строкам. Комментарии агента скрыты, пока вы не нажмете `a`. Сам файл `SKILL.md` в репозитории — указатель: настоящие инструкции агент получает командой `hunk skill show hunk-review`, поэтому они совпадают с установленной версией. Есть режим наблюдения `--watch`, который перечитывает дифф при изменении файлов, и подключение Hunk как пейджера Git, Jujutsu и Sapling. Расширения на TypeScript добавляют команды, темы, боковые панели и поддержку других систем контроля версий.

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

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

  • Агент внес правки в десять файлов, и их надо просмотреть потоком с боковой панелью, а не листая вывод `git diff`
  • Нужно, чтобы агент сам провел по изменениям, остановился на нужных кусках и оставил комментарии к строкам
  • Требуется открыть пулреквест или сравнение веток из терминала командой `hunk gh pr`
  • Репозиторий ведется в Jujutsu или Sapling, а интерактивный просмотр нужен как в Git
  • Изменения приходят патчем из конвейера: `git diff --no-color | hunk patch -`

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

  • Нужен структурный дифф, который сравнивает синтаксические деревья: в таблице сравнения самого проекта эта возможность отмечена как отсутствующая
  • Работа идет на Windows arm64 или в Linux на musl вроде Alpine: готовых бинарников для них нет
  • Репозиторий на GitHub Enterprise: `hunk gh` его пока не поддерживает
  • Ревью должно идти в браузере с комментариями для команды: Hunk работает только в терминале, а для разметки в браузере в каталоге есть Plannotator

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

Загрузи скилл hunk-review, пройди по открытому в Hunk диффу и оставь комментарии к спорным местам в src/App.tsx

Ограничения

Hunk в бете: в репозитории версия пакета 0.24.0-beta.1, последний выпуск на GitHub — 0.23.0. Программный интерфейс расширений автор называет экспериментальным и предупреждает о несовместимых изменениях между минорными версиями.

Бинарники есть для macOS (arm64, x64), Linux (arm64, x64, glibc) и Windows (x64). На x86-64 нужен процессор с SSE4.2, для установки через npm нужен Node.js 22 или новее, а на Windows установка через mise требует версии 2026.8.6 и выше.

Обновление командой `hunk update` работает с версии 0.20 для установок через скрипт, npm и Homebrew; более старую версию сначала обновляют тем способом, которым ставили.

Неотслеживаемые файлы автоматически попадают только в `hunk diff`: если открыть `git diff` через `hunk pager`, состав патча определяет сам Git. Анонимные запросы `hunk gh` к публичным репозиториям упираются в лимиты GitHub API.

Лицензия MIT.

Как отключить. Удалите Hunk тем способом, которым ставили: `npm uninstall -g hunkdiff`, `brew uninstall hunk` или через mise. Если вы подключали его как пейджер, верните значение `core.pager` в настройках Git. Скилл удаляется вместе с папкой из каталога скиллов агента, а конфиг лежит в `~/.config/hunk/config.toml`.

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

Как агент находит открытое окно Hunk?

При запуске интерфейс регистрируется у локального фонового процесса на петлевом адресе, и `hunk session list` показывает активные окна. Если список пуст при работающем Hunk, песочница агента, вероятно, блокирует петлевой адрес, и команду нужно запустить с повышенными правами. Подбирать запросы к `/session-api` через `curl` бесполезно: доступ требует автоматически найденного приватного ключа владельца.

Чем `--agent-context` отличается от живой сессии?

Это запасной путь: агент заранее готовит файл с заметками, и Hunk показывает их рядом с кодом. Рекомендуемый путь другой: агент управляет открытым окном через `hunk session`, переходит между кусками и ставит комментарии в реальном времени.

Как открыть пулреквест в Hunk?

Команда `hunk gh pr` определяет пулреквест текущей ветки, а `hunk gh pr 123` берет репозиторий из `origin`. Для приватных репозиториев задайте `GH_TOKEN` или `GITHUB_TOKEN`, публичные открываются анонимно.

Как сделать Hunk просмотрщиком по умолчанию для git diff?

Выполните `git config --global core.pager "hunk pager"`. Если хотите сохранить обычный пейджер, заведите псевдонимы `hdiff` и `hshow`, которые включают `hunk pager` только для вызова. Для Jujutsu пейджер задают в `[ui]`, для Sapling — в `[pager]`.

Что делать, если у агента нет системы скиллов?

Попросите агента выполнить `hunk skill show` и следовать выводу, а путь к файлу скилла выдает `hunk skill path`.

Можно ли скрыть лишние файлы из ревью?

Да, через расширение. Пример из описания проекта убирает из набора изменений файлы с суффиксом `.lock` и показывает уведомление о числе скрытых файлов. Расширения из репозиториев ставит `hunk extension install`, а `--no-extensions` отключает их на один запуск.

Обсуждение

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

CLI открывает локальный git diff в браузере как просмотр правок в пулл-реквесте GitHub; комментарии копируются промптом для агента

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

Плагин herdr: дифф кода агента в панели терминала рядом с чатом, комментарии к строкам и отправка замечаний обратно в Claude Code, Codex или OpenCode

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

CLI и плагин для ревью кода агентом: читает git diff и пишет замечания по строкам с учетом контекста

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

Crit открывает планы, диффы и запущенные приложения от кодинг-агента в браузере: кликнули строку, оставили замечание, и агент его получил

CLIРасширенный доступ1,2 тыс.Звезды репозитория
Официальный

agnix — линтер для CLAUDE.md, AGENTS.md, SKILL.md, хуков и MCP-конфигов: 702 правила, автофикс и редакторские расширения для VS Code и JetBrains

CLIМинимальный доступ457Звезды репозитория

CLI и три скилла, которые разбирают комментарии ревью-ботов в PR: оценивают находки, правят код, отвечают и ждут проверок

СкиллШирокий доступ306Звезды репозитория

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

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

ЗаписьОфициальныйЗвезды репозиторияГлавное отличие
Hunk (эта запись)нет9 667
Plannotatorнет9 579локальный интерфейс в браузере для разметки планов агента и ревью диффов
open-code-reviewнет48 149CLI и плагин, в которых агент сам читает git diff и пишет замечания по строкам

Коротко о README

Репозиторий содержит исходники на TypeScript в пакетах `packages/`, документацию по агентам, расширениям, клавишам, темам и режимам `open` и `status`, журнал изменений, два скилла для агентов (`hunk-review` и `hunk-extensions`) и примеры расширений и демонстрационных диффов. Описание проекта приводит команды для Git, GitHub, Jujutsu и Sapling, настройки через `config.toml`, таблицу сравнения с lumen, difftastic, delta, diff-so-fancy и обычным diff, а также способы встроить отрисовку диффа в собственное приложение на OpenTUI. Тесты и проверки запускаются в GitHub Actions.

Бейдж для README

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

Foxx AIHunk
Foxx AI

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