Дайджест AI-расширений: Sphinx - git-хук, который экзаменует тебя перед отправкой кода агента
Недельной давности pre-push хук под MIT, который приостанавливает пуш в защищённую ветку и просит предсказать, что сделает изменение, - оценивает второй ИИ, не видевший разговора с агентом. 265 звёзд за неделю. Я читал репозиторий; я не запускал его.

Sphinx - это Git-хук, который устраивает маленький устный экзамен при каждом пуше в защищённую ветку. Прежде чем код покинет вашу машину, он просит вас предсказать, что сделает изменение. Ответили хорошо - пуш продолжается; упустили что-то - он объясняет режим отказа, который вы не заметили, и пробует вас на новом сценарии. Премиса: мышление можно аутсорсить, понимание - нет.
Коротко
Sphinx (parthh01/sphinx) устанавливает pre-push хук - создан 14 октября, лицензия MIT, 265 звёзд и 11 форков на 21 октября 2026 года. При пуше в main или master он блокирует Git на срок до 25 минут, пока отдельная модель-рецензент, читающая только закоммиченный diff через read-only инструменты Git, экзаменует вас о поведении, режимах отказа и инвариантах. Работает с Claude Code, Codex, Cursor, OpenCode и Pi или с чистым git; рецензент крутится на вашем плане Claude Code или Codex, OpenRouter или любом OpenAI-совместимом эндпоинте. README необычно прямо говорит о приватности (ваш код уходит провайдеру рецензента) и о том, чем инструмент не является ("практика, а не защитный барьер"). Я читал репозиторий; я не устанавливал и не запускал его.

Что это такое
Квиз, закрывающий отправку кода. Когда вы пушите в защищённую ветку, Git ждёт, пока Sphinx задаст один вопрос о том, что diff делает, когда что-то идёт не так. Иллюстративный пример из README - очередь фоновых задач: "Воркер коммитит операцию, но падает до подтверждения задачи. После повторной доставки может ли операция случиться дважды?" Если ваш ответ упускает режим отказа, Sphinx объясняет его и генерирует новый сценарий; когда вы проходите, исходный пуш продолжается. Вопросы нацелены на поведение и инварианты, а не на имена файлов, и проверка открытая: вы можете читать код или просить агента показать его, пока отвечаете.
Проектное решение, которое делает это интересным: экзаменатор - вторая модель, которая читает закоммиченное изменение через read-only инструменты Git и намеренно никогда не видит разговор, породивший код. Собственный рассказ вашего кодового агента о его работе не может сместить квиз. Это тот же паттерн разделения ролей, что и в истории Ledger Agent Intent на этой неделе: проверка вывода агента находится вне агента.
Установка, цена и ограничения его же словами
Установка - один npm-пакет (sphinx-understand) плюс `sphinx install`, который выставляет глобальный Git core.hooksPath - то есть применяется к каждому репозиторию на машине, пока вы не настроите по-репозиторно через `sphinx init`. Существующие хуки по-прежнему выполняются первыми. Требования: Node.js 22.19+, Git, macOS, Linux или WSL; нативный Windows пока не поддерживается. Заблокированный пуш ждёт до 25 минут, пока вы пройдёте, поставите на паузу или пропустите, - и README предупреждает, что шелл вашего кодового агента может отвалиться по таймауту раньше, поэтому агентам нужны клиент-специфичные хуки (MCP-сервер Sphinx для Claude Code, доверенные хуки для Codex), чтобы понимать ожидание.
Раздел честности заслуживает длинной цитаты, потому что большинство инструментов такое хоронит: "Код покидает вашу машину. Провайдер рецензента получает изменённый код и связанные файлы из коммита, ваши ответы и .sphinxcontext.md". Файлы .env, приватные ключи и типовые файлы с учётными данными исключены по умолчанию, есть .sphinxignore для ваших путей - и предупреждение, что правила игнорирования сматчены на пути, поэтому не поймают секрет, вставленный в обычный исходник. Нет лимита на вызовы модели по умолчанию: типичная проверка делает около 5-8 запросов плюс примерно по одному на ответ, и вам велено выставить свои лимиты расходов. И финальная оговорка: "Это практика, а не защитный барьер. Любой с локальным доступом, включая кодового агента, может обойти хуки или зазвать помощь извне. Прохождение не доказывает, кто писал код и что вы поняли его без посторонней помощи. Экзаменатор - LLM и может ошибаться."
Почему это попало в дайджест
Большинство новостей об агентных инструментах - о том, как быстрее убрать человека из контура. Sphinx - редкий инструмент, который возвращает человеку цену входа, с конкретным механизмом (предскажи режим отказа до отправки), заимствованным из того, как хорошие инженерные организации и так ревьюят работу друг друга. И он честен о собственной модели угроз: хук не остановит решительный обход, поэтому цель - не принуждение, а поддержание ментальной модели кодовой базы у оператора, пока агенты пишут её всё большую часть. Неделя от роду, 265 звёзд, MIT. Стоит смотреть, вберут ли паттерн "квиз при пуше" сами кодовые агенты; трюк с отделением экзаменатора - та часть, которую стоит украсть.
Источники и ограничения
Я читал репозиторий на GitHub, его README и файл LICENSE (MIT, "2026 Sphinx contributors") 21 октября 2026 года, а метаданные репозитория взял из GitHub API в тот же день: создан 14 октября 2026, 265 звёзд, 11 форков, 2 открытых issue, последний пуш 21 октября. Я не устанавливал пакет, не запускал проверку и не тестировал пуш. Все утверждения о поведении выше - из README; иллюстративный диалог процитирован оттуда.