Что такое harness и почему ИИ без упряжи никуда не едет
Здорово, солнышки!😎
На прошлой неделе я выкладывал манифест для тех, кто начинает работать с агентами. Тесты, журнал, вредный критик — у всего этого есть общее модное название: harness. Сейчас это главная тема у тех, кто собирает ИИ-агентов. Объясню без терминов.
⭐️Откуда слово
Harness — это упряжь. Модель (GPT, Claude, Gemini) — лошадь: сильная, быстрая, но сама не знает, куда ехать, и может понести в канаву. Харнесс — всё, что на неё надето и прицеплено: вожжи, оглобли, телега. А кучер — вы.
Без лошадей: харнесс — вся программа вокруг модели. Сама модель умеет только принять текст и выдать текст. Открыть файл, сходить в интернет, вспомнить вчерашний разговор, проверить за собой — всё это делает обвязка.
⭐️При чём тут манифест
Каждое правило оттуда — деталь той самой упряжи:
✅ «Сначала карта» и «Веди журнал» — путевой лист: куда едем и где уже проехали. Лошадь вчерашнюю дорогу не помнит, а бумага помнит.
✅ «Обмазаться тестами» и «Создай вредного помощника» — вожжи: свернула не туда — кучер сразу поправляет, а не узнаёт об этом уже в канаве.
✅ «Лучшее — враг хорошего» — оглобли: где импровизировать нельзя, лошадь держат жёстко, то есть пишут обычный ко
⭐️А MCP тогда что?
MCP и харнесс часто путают. MCP — стандарт подключения, единая сцепка: любую телегу, плуг или сани можно зацепить к любой упряжке без кузнеца. Один раз написали MCP-сервер для Google Диска или базы данных — и им может пользоваться и Claude, и Cursor, и ChatGPT.
MCP отвечает на вопрос «чем агент может пользоваться», харнесс — «как он работает»: когда брать инструмент, что запомнить, как проверить результат и чего делать нельзя. MCP — лишь одна деталь упряжи, через неё пристёгивают «руки».
И больше не значит лучше. Навесьте на агента три десятка MCP-серверов — и он начнёт в них путаться. В Vercel, например, убрали 80% инструментов своего агента, и он стал работать лучше.
⭐️Откуда шум
В 2023-м учились правильно спрашивать (промпт-инжиниринг), в 2025-м — правильно подбирать, что показать модели (контекст-инжиниринг). В 2026-м поняли, что решает среда, в которой модель работает:
🗃 LangChain взяли ту же модель, переделали только обвязку — и их агент в рейтинге Terminal Bench 2.0 поднялся примерно с 30-го места в пятёрку.
🗃 В OpenAI команда из 3–7 инженеров за пять месяцев собрала продукт на миллион строк кода, не написав руками ни одной. Люди строили окружение и проверки, код писали агенты.
Поэтому одна и та же модель в Claude Code, Codex или Cursor ведёт себя по-разному: лошадь похожая, упряжь разная.
⭐️А мне-то что, я не программист?
Если вы создавали в ChatGPT или Claude проект с постоянными инструкциями и справочными файлами — вы уже собирали маленький харнесс🤷
Привычка, которую стоит украсть у харнесс-инженеров: агент ошибся — не правьте ответ руками, а спросите себя, чего ему не хватило: инструкции, файла, проверки или запрета. Добавьте это в обвязку, и ошибка не повторится.
Кому хочется глубже — подробный разбор на Хабре.
Всем SUP! #AI
Здорово, солнышки!😎
На прошлой неделе я выкладывал манифест для тех, кто начинает работать с агентами. Тесты, журнал, вредный критик — у всего этого есть общее модное название: harness. Сейчас это главная тема у тех, кто собирает ИИ-агентов. Объясню без терминов.
⭐️Откуда слово
Harness — это упряжь. Модель (GPT, Claude, Gemini) — лошадь: сильная, быстрая, но сама не знает, куда ехать, и может понести в канаву. Харнесс — всё, что на неё надето и прицеплено: вожжи, оглобли, телега. А кучер — вы.
Без лошадей: харнесс — вся программа вокруг модели. Сама модель умеет только принять текст и выдать текст. Открыть файл, сходить в интернет, вспомнить вчерашний разговор, проверить за собой — всё это делает обвязка.
⭐️При чём тут манифест
Каждое правило оттуда — деталь той самой упряжи:
✅ «Сначала карта» и «Веди журнал» — путевой лист: куда едем и где уже проехали. Лошадь вчерашнюю дорогу не помнит, а бумага помнит.
✅ «Обмазаться тестами» и «Создай вредного помощника» — вожжи: свернула не туда — кучер сразу поправляет, а не узнаёт об этом уже в канаве.
✅ «Лучшее — враг хорошего» — оглобли: где импровизировать нельзя, лошадь держат жёстко, то есть пишут обычный ко
⭐️А MCP тогда что?
MCP и харнесс часто путают. MCP — стандарт подключения, единая сцепка: любую телегу, плуг или сани можно зацепить к любой упряжке без кузнеца. Один раз написали MCP-сервер для Google Диска или базы данных — и им может пользоваться и Claude, и Cursor, и ChatGPT.
MCP отвечает на вопрос «чем агент может пользоваться», харнесс — «как он работает»: когда брать инструмент, что запомнить, как проверить результат и чего делать нельзя. MCP — лишь одна деталь упряжи, через неё пристёгивают «руки».
И больше не значит лучше. Навесьте на агента три десятка MCP-серверов — и он начнёт в них путаться. В Vercel, например, убрали 80% инструментов своего агента, и он стал работать лучше.
⭐️Откуда шум
В 2023-м учились правильно спрашивать (промпт-инжиниринг), в 2025-м — правильно подбирать, что показать модели (контекст-инжиниринг). В 2026-м поняли, что решает среда, в которой модель работает:
🗃 LangChain взяли ту же модель, переделали только обвязку — и их агент в рейтинге Terminal Bench 2.0 поднялся примерно с 30-го места в пятёрку.
🗃 В OpenAI команда из 3–7 инженеров за пять месяцев собрала продукт на миллион строк кода, не написав руками ни одной. Люди строили окружение и проверки, код писали агенты.
Поэтому одна и та же модель в Claude Code, Codex или Cursor ведёт себя по-разному: лошадь похожая, упряжь разная.
⭐️А мне-то что, я не программист?
Если вы создавали в ChatGPT или Claude проект с постоянными инструкциями и справочными файлами — вы уже собирали маленький харнесс🤷
Привычка, которую стоит украсть у харнесс-инженеров: агент ошибся — не правьте ответ руками, а спросите себя, чего ему не хватило: инструкции, файла, проверки или запрета. Добавьте это в обвязку, и ошибка не повторится.
Когда агент накосячит — не спешите винить модель. Сначала посмотрите на упряжь.
Кому хочется глубже — подробный разбор на Хабре.
Всем SUP! #AI