Harness Engineering: обвязка важнее модели в 2026

Sergey Golubev 2026-04-18 5 мин чтения
🌐 Read in English

фигура пещерного человека, сделанная из камня и охры, сидит на деревянной лавке и печатает на современном ноутбуке с кодом на экране. Слева каменная стена пещеры, справа чистая стена с разноцветными стикерами. Тёплый золотистый свет. Метафора: примитивная простота встречает современный инструментарий - Caveman-промпт "говори как пещерный человек" как пример harness-трюка.

За февраль-апрель 2026 четыре независимые команды пришли к одному термину. Hashimoto (5 фев). OpenAI/Lopopolo (11 фев). HumanLayer (12 марта, термин атрибуирован Viv). Böckeler на martinfowler (апрель). Один вывод: обвязка вокруг модели стала важнее самой модели.

Почувствовал на своём кейсе. Вышел Opus 4.7 - и несколько моих harness сразу посыпались. Модель чуть иначе трактует инструкции, скиллы писаны под привычки старой. Пришлось причёсывать полдня. Парадокс: более умная модель ломает результат, если обвязка осталась старой.

Что такое harness

Формула HumanLayer: agent = model + harness. Под harness прячется как минимум 6 слоёв: prompts, MCP-серверы, skills, sub-agents, hooks, back-pressure через CLAUDE.md / AGENTS.md.

Модель - сменный двигатель, harness - вся машина.

Почему это главный тренд 2026

Дельта между frontier-моделями сокращается. Reasoning выходит на плато. Цифра в подтверждение: свежий бенчмарк APEX-Agents - pass@1 = 24% у лучших моделей. То есть 76% задач фейлят с первой попытки. Большинство провалов - orchestration, контекст, неправильный tool-use.

Цитата автора HumanLayer-поста про Skill Issue: “it’s not a model problem. It’s a configuration problem.”

ETH Zurich (arxiv 2602.11988) проверили AGENTS.md / CLAUDE.md файлы. LLM-сгенерированные CLAUDE.md часто хуже отсутствия файла. Human-written дают ~+4% к task success, но увеличивают стоимость инференса на 20%+. HumanLayer советуют держать файл под 60 строк - только команды build/test, без эссе.

4 неочевидных слоя, которые и есть harness

Tool calling - это четыре слоя, а не один. HTTP → Jinja2 Chat Template → Constrained Decoding (xgrammar) → Hermes Parser. Когда что-то отваливается, чинят промпт. А проблема в парсере или в template’е.

Tool Search от Anthropic (24 ноября 2025, вышел с Opus 4.5) - прямой ответ на раздутый контекст. Типичный MCP-сетап = 55k токенов baseline только на tool definitions. Tool Search даёт -85%: 55k → ~3k. Порог боли начинается, когда tool definitions съедают >10k токенов. Деградация заметна уже на 30-50 тулах.

Sub-agents как контекстный файрвол. У меня два чётких кейса, где они окупаются. Задача однотипная, отточенная, упакована в скилл - сабагент окупается. Много одинаковых действий и большой объём данных - тоже. Конкретно: парсинг Telegram-каналов, парсинг YouTube, сканирование репозиториев, обработка данных. Везде, где не повторяется и нужен дизайн-разговор, сабагент скорее мешает.

Токен-гигиена через детерминированные скрипты. Главная экономия у меня - не в промпт-инжиниринге. Не всё гонять через LLM. Из JSON генерить новые JSON и markdown без участия модели. Опускаться на Sonnet и Haiku, когда задача того стоит. Про CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=50 - реальный env var, но для main conversation часто игнорируется. Надёжно работает только для subagents. Про git status —porcelain - folk wisdom, экономит, но обещанные 10x в проде не подтвердил.

Мой harness прямо сейчас

Фишка в том, что стек ровный, без магии:

  • CLAUDE.md на двух уровнях - пользовательский и проектный
  • Полный набор скиллов: пользовательских и проектных
  • MCP-серверы, CLI интеграции
  • Brainstorming skill из superpowers - почти в каждой задаче
  • Детерминированные скрипты для обработки вместо LLM-on-line где это возможно
  • Тесты и хуки

Анти-кейс ровно один и недавний. Opus 4.7. Ничего в коде не сломалось - сломались инструкции. Три скилла переписывал с нуля, ещё пять причесал, ушло часов шесть. Лекарство: упростить формулировки, убрать двусмысленности. Этот этап раз в апгрейд - норма.

Caveman как анекдот индустрии

Julius Brussee, 19 лет, студент Leiden University, 4 апреля 2026 выложил на GitHub проект Caveman. Системный промпт “говори как пещерный человек”. Заставляет модель писать только содержательные слова, без вежливости и связок. За неделю - 37k звёзд на апрель.

Цифра -75% output prose tokens красиво звучит. Но автор сам честно написал: preliminary, не rigorous benchmark. На его же evals range 22-87%, average 65% output reduction - и это только output prose, не всей сессии.

Мораль не в Caveman’е. Индустрия ищет harness-трюки с такой яростью, что виральные проекты делают 19-летние студенты за выходные.

Отдача harness в облако

Anthropic выкатили Managed Agents - готовый sandbox, auth, tool execution, часы автономной работы. Логичный шаг: зачем самому собирать, если Anthropic сделает за тебя.

Я пока не отдаю. Когда понимаешь как это работает - проще самому. Managed Agents - для другой категории людей, которые не понимают или не могут сделать сами.

Что понял

Обвязка - это твой продукт. Если строишь agent для себя, harness - то, что отличает твой workflow от чужого. Отдал обвязку - отдал контроль и возможность чинить.

Совпадает с моей нишей “строй для себя вместо подписок”: вместо $30/мес за чей-то agent-as-a-service - свой harness, который пересобираешь за выходные под новую модель.

Главный инженерный рычаг 2026 - не следующая модель. Это слой между тобой и моделью. Пока не уверен, надолго ли - через полгода harness может съесть какой-нибудь фреймворк. Но прямо сейчас - так.

Источники

  1. HumanLayer: Skill Issue - Harness Engineering for Coding Agents
  2. ETH Zurich: Evaluating AGENTS.md (arxiv)
  3. APEX-Agents benchmark (arxiv)
  4. Mitchell Hashimoto: My AI Adoption Journey - Engineer the Harness
  5. OpenAI / Ryan Lopopolo: Harness Engineering
  6. Anthropic: Advanced Tool Use (Tool Search)
  7. Julius Brussee: Caveman (GitHub)
  8. Birgitta Böckeler on martinfowler.com: Harness Engineering