HarnessRouter CE: один API для всех AI-агентов
Обзор HarnessRouter Community Edition — self-hosted шлюза для запуска Codex, Claude Code, Hermes, PI, DSH через один OpenAI-совместимый API. Apache 2.0.
Что такое HarnessRouter и для кого он создан
HarnessRouter — это инфраструктурный слой, который превращает существующие харнесы — Codex, Claude Code и другие — в plug-and-play бэкенды для агентов, позволяя продукту выполнять задачи, получать результаты и переключаться между харнесами через один API.
Проект поддерживается Y Combinator и позиционируется как первый в мире унифицированный интерфейс для агентных харнесов.
«Build agent products without handling harness engineering» — такой слоган встречает вас на странице репозитория.
Целевая аудитория — разработчики и команды, которые:
- строят продукты на базе AI-агентов и не хотят поддерживать отдельную интеграцию под каждый харнес;
- заботятся о конфиденциальности: ключи API и данные остаются на собственной инфраструктуре;
- хотят гибко переключаться между моделями и харнесами без переработки кода.
Ключевые возможности
1. Единый OpenAI Responses-совместимый API
HarnessRouter реализует Unified Harness Protocol (UHP) и предоставляет OpenAI Responses-совместимый API, обрабатывая постоянные сессии, потоковую передачу прогресса, файлы, артефакты, отмену задач и структурированные ошибки.
Его интерфейс задач намеренно совместим с OpenAI Responses API, поэтому существующие Responses-SDK, парсеры потоков и UI-компоненты могут работать с UHP-сервером.
Пример обращения к API — достаточно указать harness_id в метаданных запроса:
curl -X POST http://localhost:3000/v1/responses \
-H "Authorization: Bearer $HARNESSROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"input": "Напиши unit-тесты для модуля auth.py",
"metadata": { "harness_id": "codex" }
}'
2. Поддерживаемые харнесы
Через один API можно запускать Codex, Claude Code, Hermes, Pi, DeepSeek Harness, OpenCode, Qwen Code, Cline, Gemini CLI и Oh My Pi — переключаться между ними по задачам — и получать обратно стримы, сессии, файлы и артефакты в рамках единого контракта.
3. Оптимизация стоимости и задержки
По данным бенчмарков на одной задаче с восемью конфигурациями харнесов и моделей: стоимость снизилась на 99,8% (с 223 до 0,47 кредита), а сквозная задержка сократилась в 3,2 раза (с 4 м 36 с до 1 м 25 с). При этом наиболее дешёвая и наиболее быстрая конфигурации варьируются в зависимости от задачи.
4. Self-hosted, без телеметрии
Достаточно настроить харнес, дать ему работу и наблюдать за выполнением — без аккаунта, без облака и без телеметрии. Ваши учётные данные модельного провайдера, состояние приложения и файлы остаются под вашим контролем.
5. Архитектура: один контейнер
HarnessRouter Community Edition — это self-hosted реализация UHP. Gateway, Runner и Console поставляются в одном Docker-контейнере.
Контейнер содержит: Console на порту 3000 (UI и прокси API), Gateway на loopback-порту (реализует Responses-style API и жизненный цикл харнесов), Runner на втором loopback-порту (выполняет CLI харнесов внутри сессионных рабочих пространств) и том /data с локальной базой SQLite, файлами, секретами и рабочими пространствами.
graph LR
A[Ваш продукт / backend] -->|OpenAI Responses API| B[HarnessRouter Gateway]
B --> C[Runner]
C --> D[Codex]
C --> E[Claude Code]
C --> F[Hermes]
C --> G[DSH / PI / Gemini CLI...]
B --> H[(SQLite + /data)]
B -->|Streaming / Артефакты| A
6. Unified Harness Protocol (UHP)
UHP — это открытый стандарт, который даёт различным агентным харнесам общий контракт выполнения. Релиз включает версионированную спецификацию, схемы и набор тестов на соответствие, охватывающих конфигурацию харнесов, выполнение задач, прогресс, сессии, файлы, отмену, ошибки и результаты.
metadata.harness_id — ваш существующий код на OpenAI SDK менять не придётся.Быстрый старт
# Запуск Community Edition
docker run -p 3000:3000 -v harnessrouter_data:/data harnessrouter/ce
После запуска:
- Откройте
http://localhost:3000и войдите в Console. - Откройте Bring Your Own Key в сайдбаре, нажмите Add Integration, выберите провайдера, задайте имя интеграции и добавьте его API-ключ — поддерживаемые модели станут доступны в консоли.
- Откройте API Keys в сайдбаре и создайте API-ключ для вашего продукта.
- Сохраните секрет как
HARNESSROUTER_API_KEYв вашем бэкенде. Никогда не передавайте его в браузерный код. Этот ключ CE отдельен от пароля Console и ключа провайдера.
Цены
HarnessRouter Community Edition распространяется под лицензией Apache 2.0 — бесплатно. Он поставляется как управляемый Cloud и как Apache 2.0 Community Edition, оба реализуют открытый Unified Harness Protocol (UHP).
| Редакция | Стоимость | Хостинг | Телеметрия |
|---|---|---|---|
| Community Edition | Бесплатно (Apache 2.0) | Ваш сервер / Docker | Нет |
| HarnessRouter Cloud | По запросу (managed SaaS) | Инфраструктура команды | Да (управляемая) |
Вы платите только за токены модельных провайдеров (OpenAI, Anthropic и др.) по их собственным тарифам.
Плюсы и минусы
| ✅ Плюсы | ❌ Минусы |
|---|---|
| Бесплатная лицензия Apache 2.0 | Молодой проект, экосистема только формируется |
| Один API для всех харнесов (Codex, Claude Code, Hermes, DSH, PI и др.) | Требует Docker и собственной инфраструктуры |
| OpenAI Responses API-совместимость — миграция без переписывания кода | Ограниченная документация за пределами README |
| Полный контроль над ключами и данными | Community Edition не имеет встроенного мониторинга/трейсинга |
| Нет телеметрии и vendor lock-in | SQLite в контейнере — не для высоконагруженного production |
| UHP conformance: Full (верифицировано тестами) | Cloud-редакция: цены не опубликованы открыто |
| Backed by Y Combinator | Пока нет встроенного human-in-the-loop UI |
Сравнение с альтернативами
| Параметр | HarnessRouter CE | LangGraph (OSS) | CrewAI (OSS) |
|---|---|---|---|
| Назначение | Унифицированный шлюз для запуска харнесов | Граф-фреймворк для агентов | Мульти-агентный фреймворк |
| Лицензия | Apache 2.0 | MIT | MIT |
| Self-hosted | ✅ Docker из коробки | ✅ (требует настройки) | ✅ (требует настройки) |
| OpenAI Responses API | ✅ Полная совместимость | ❌ | ❌ |
| Поддерживаемые харнесы | Codex, Claude Code, Hermes, DSH, PI, Gemini CLI и др. | Любые (своя реализация) | Любые (своя реализация) |
| Встроенный UI Console | ✅ | ❌ | ✅ (AMP) |
| Streaming / Cancellation | ✅ нативно по UHP | ✅ (ручная реализация) | ⚠️ частично |
| Telemetry | ❌ (нет) | ✅ LangSmith (платный) | ✅ AMP (платный) |
| Цена managed-платформы | По запросу | ~$39/сиденье/мес (LangSmith Plus) | Бесплатный OSS + Enterprise |
| Уровень абстракции | Харнес-шлюз | Граф-оркестрация | Ролевые агенты |
Вердикт
HarnessRouter Community Edition подойдёт:
- командам, которые встраивают несколько агентных харнесов в продукт и хотят избежать дублирования интеграционного кода;
- компаниям с требованиями к data residency — все ключи и данные локально;
- разработчикам, уже использующим OpenAI Responses API — переключение минимально;
- стартапам, которым нужна возможность менять харнес без рефакторинга.
Не подойдёт:
- если нужен фреймворк для построения агентной логики (смотрите в сторону LangGraph или CrewAI);
- для высоконагруженных production-систем «прямо из коробки» — Community Edition использует SQLite;
- командам без DevOps-ресурсов для поддержки Docker-инфраструктуры.
Рейтинг: 8/10
Проект решает реальную и болезненную проблему фрагментации агентных харнесов. Открытый стандарт UHP, нулевая телеметрия, совместимость с OpenAI Responses API и бэкинг от YC делают HarnessRouter Community Edition одним из самых перспективных инструментов в нише агентной инфраструктуры 2026 года. Основное ограничение — молодость экосистемы и отсутствие встроенных observability-инструментов в CE-редакции.