Как использовать Unreal Agent: тест CLI-раннера на репозитории

Разбираем, как запустить Unreal Agent на одной задаче в репозитории: установка Go, ключи провайдера, JSONL-логи, сессии, расходы и границы безопасности.

Thursday, September 24, 2026Omid Saffari
Как использовать Unreal Agent: тест CLI-раннера на репозитории

Разберём, как использовать Unreal Agent, чтобы запускать задачи по репозиторию из командной строки, сохранять всю сессию в JSONL и на данных решать, стоит ли встраивать его асинхронную работу с инструментами в собственное приложение. Речь о новом агентном рантайме на Go от Unreal Labs, а не об ассистенте для Unreal Engine. Для первого теста возьмите одну задачу только на чтение: составить обзор репозитория. Зафиксируйте модель, уровень рассуждений, время выполнения, код завершения, расход токенов и изменённые файлы, а затем сравните эти данные с работой вашего текущего агента.

Что такое Unreal Agent на практике

Unreal Agent — это прослойка между моделью и инструментами, которые выполняют работу. Представьте его прорабом на стройке: модель решает, что нужно сделать, а рантайм запускает команды, фиксирует ход работы и определяет, когда показать модели каждый результат.

Главная особенность — асинхронное выполнение инструментов. Когда модель вызывает инструмент, рантайм отмечает задачу как выполняющуюся и оставляет её работать в фоне. После завершения результат добавляется в сессию, и модель вызывается снова. Поэтому долгая команда настройки не блокирует другую полезную работу или новую уточняющую команду.

Проект был запущен Unreal Labs 22 сентября 2026 года. В SDK входят библиотека на Go, устанавливаемый раннер и совместимый с Harbor раннер бенчмарков. Репозиторий распространяется по лицензии MIT.

Схема работы: закреплённая версия раннера Unreal Agent проходит от настройки модели и рабочей среды к задаче с чёткими границами и сбору доказательств в JSONL
Первый полезный запуск — это управляемый цикл: закрепить версию, настроить среду, ограничить задачу и изучить данные.

По данным Unreal Labs, в их продакшен-нагрузках и опубликованных бенчмарках агентов затраты оказались до 40% ниже, чем у Codex, и до 20% ниже, чем у Pi. Это цифры поставщика, а не гарантированная скидка для любой задачи. Заявленный механизм достаточно правдоподобен, чтобы его проверить: меньший объём промпта, компактные результаты инструментов, отказ от субагентов и воркфлоу, а также больше операций с инструментами между вызовами модели. Но проценты бесполезны, пока не совпадают модель, уровень рассуждений, промпт, состояние репозитория и критерии успеха.

Экономика начинается с задачи, а не с бенчмарка

Лицензия MIT не предполагает платы за каждого пользователя раннера, но эксплуатация всё равно стоит денег. Платить придётся за вызовы модели, вычисления, песочницу, интеграцию, логи и инженера, который поддерживает надёжность системы.

Ориентиром может служить бюджет на проверку кода. Тариф Starter у Graphite стоит $20 за пользователя в месяц, а Team — $40 при ежегодной оплате. Годовые тарифы CodeRabbit составляют $24, $48 и $72 за разработчика в месяц. Для команды из 10 разработчиков опубликованный диапазон составляет от $200 до $720 в месяц.

Это не делает Unreal Agent прямой заменой ни одного из этих продуктов. Зато платформенная команда получает открытый рантайм, на котором можно построить один узкий внутренний сценарий. Экономику оценивают просто: полные месячные затраты на такой сценарий, включая модель и поддержку, сравнивают с бюджетом на лицензии или стоимостью рабочего времени, которое он заменяет. Без стоимости успешно завершённой задачи экономия остаётся красивой цифрой без практического смысла.

Как использовать Unreal Agent для одной задачи с чёткими границами

Начните с раннера. Библиотека понадобится командам, которые уже понимают, какое поведение агента нужно встроить в своё приложение.

1. По-настоящему изолируйте репозиторий

-workspace задаёт рабочий каталог для агента и его инструмента Bash, но в документации это не названо песочницей безопасности. Используйте одноразовую копию репозитория или контейнер, удалите продакшен-секреты, ограничьте сетевой доступ и передайте процессу только нужные токены. Промпт «не изменяй файлы» — это инструкция, а не технический запрет. Если вы впервые столкнулись с такой задачей, начните с практических вариантов в материале о песочницах для ИИ-агентов, работающих с кодом.

Проверьте, нет ли в рабочей среде файла .env. Раннер загружает его из выбранного каталога, поэтому даже скопированный репозиторий может открыть забытые учётные данные.

2. Закрепите версию раннера, провайдера, модель и уровень рассуждений

По состоянию на 24 сентября 2026 года актуальный релиз — v0.2.0, опубликованный днём ранее. В README раннера указаны Go 1.27 или новее и тег @latest; для воспроизводимой оценки указывайте тег конкретного релиза.

В примере ниже используются OpenAI, текущая модель по умолчанию в исходном коде — gpt-6-astra — и уровень рассуждений high. Если замените модель, зафиксируйте замену. Запускайте команду на одноразовой копии my-project:

Shell
go version
go install github.com/unreallabsai/unreal-agent/cmd/unreal-agent-runner@v0.2.0

export OPENAI_API_KEY="..."
export UNREAL_HARNESS_LLM_PROVIDER="openai"
export UNREAL_HARNESS_LLM_MODEL="gpt-6-astra"

started_at=$(date +%s)
set +e
unreal-agent-runner \
  -workspace ./my-project \
  -session-directory ./unreal-sessions \
  '{"prompt":"Read this repository. Return its purpose, entry points, test command, and three concrete risks. Do not modify files.","model":"gpt-6-astra","thinking_level":"high","session_id":"repo-summary-v1","disallowed_tools":["ViewImage"]}' \
  > run.jsonl
run_status=$?
set -e
elapsed_seconds=$(( $(date +%s) - started_at ))
printf 'exit_status=%s elapsed_seconds=%s\n' "$run_status" "$elapsed_seconds"
jq -c 'select(.Kind=="model_response") | .Data.Response.Usage' run.jsonl

Раннер также поддерживает openai-codex, openrouter, fireworks и ollama. В запросе можно задать модель, уровень рассуждений, число повторных попыток, ID сессии, системный промпт и исключаемые инструменты. Произвольные инструменты через extra_allowed_tools пока добавить нельзя: поле принимается, но игнорируется.

3. Рассматривайте запуск как набор доказательств

Полезная запись эксперимента состоит из шести частей:

ПроверкаЧто фиксироватьЗачем это нужно
РезультатОпределил ли агент назначение репозитория, точки входа, реальную команду запуска тестов и риски, подтверждённые фактами?Дешёвый, но неверный ответ не приносит ценности.
БезопасностьОстался ли репозиторий без изменений?Первая задача намеренно была ограничена чтением.
ЗавершениеКод завершения процессаАвтоматизации нужен надёжный сигнал успеха.
ВремяПрошедшее время в секундахАсинхронное выполнение должно сокращать время до готовой задачи, а не только число токенов.
ТокеныВходные, кэшированные входные, записанные в кэш входные, выходные токены и токены рассужденийЭти поля позволяют корректно сравнивать затраты в одинаковых условиях.
ТрассировкаВызовы инструментов, их результаты и финальный ответ в run.jsonlНужно видеть, на какую работу ушло время и где возникли сбои.

Сессия хранится в unreal-sessions/repo-summary-v1.session.jsonl. Чтобы продолжить её, повторно используйте тот же session_id. Для чистого сравнения задайте новый ID, иначе предыдущий контекст повлияет и на качество, и на стоимость.

Здесь нет собственных замеров производительности, потому что запуск с живым провайдером не выполнялся. Единственные честные цифры — те, которые вы получите на своём репозитории.

Раннер или библиотека: что выбрать?

Раннер подходит для теста промпта, оценки задачи по репозиторию или подключения процесса к CI. Библиотеку стоит выбирать, когда агент должен стать частью вашего продукта, а команда готова взять на себя хранение сессий, жизненный цикл, инструменты, безопасность и интеграцию с провайдером.

Разница примерно такая же, как между готовым электроинструментом и его двигателем. В раннере уже есть корпус, кнопки и переключатели. Библиотека даёт двигатель и свободу самим спроектировать корпус, органы управления и систему защиты. Если выбор зависит от того, кто владеет сессией, ориентиром послужит сравнение Agents API и SDK.

Схема выбора между раннером Unreal Agent для тестов и библиотекой на Go для встраиваемых продуктов
Сначала докажите ценность одной задачи на раннере. Встраивайте библиотеку, только когда подтверждены сама задача, контроль и экономика.

По умолчанию лучше выбрать раннер: работа над интеграцией может замаскировать слабую исходную задачу. Если один и тот же промпт с чёткими границами дважды не даёт полезного результата, API-обёртка не спасёт идею продукта.

Шесть задач для теста — от самой ценной

1. Первичная проверка пул-реквестов, написанных агентами

Команда разработки, получающая крупные пул-реквесты с кодом от ИИ, может передавать раннеру чистую копию репозитория, дифф и команды запуска тестов. Агент изучит затронутый код, выполнит целевые проверки и вернёт пакет данных для ревью с трассировкой в JSONL. Цель не в том, чтобы убрать человека из ревью. Агент заранее берёт на себя типовую проверку репозитория, чтобы ревьюер сосредоточился на архитектуре и рисках.

2. Знакомство нового инженера с репозиторием

Платформенная команда может запускать тот же промпт для обзора при подключении нового инженера к сервису. Результат покажет точки входа, команды запуска тестов, конфигурацию и очевидные риски, а трассировка сессии позволит проверить выводы. Выгода — воспроизводимый первый час работы без необходимости каждый раз просить старшего инженера заново объяснять один и тот же репозиторий.

3. Разбор падающих тестов

При шумном сбое CI разработчик может поручить раннеру воспроизвести один упавший тест, изучить связанные участки кода и отделить вероятную причину от постороннего вывода. Здесь важна асинхронная работа с инструментами: настройка среды, поиск и запуск тестов могут идти параллельно. В результате инженер, который будет исправлять сбой, получит компактный пакет доказательств.

4. Подготовка к обновлению зависимостей

Мейнтейнер может передать агенту ветку с обновлением одной зависимости и попросить его найти затронутые импорты, устаревшие вызовы, пробелы в тестовом покрытии и рекомендации по миграции. Результатом будет чек-лист, а не автоматический мерж. Это ускоряет оценку объёма работ до того, как кто-то выделит на них полноценный инженерный блок.

5. Проверка готовности к релизу

Ответственный за релиз может попросить агента найти изменившиеся части системы, пропущенные миграции, пробелы в документации и релевантные команды тестирования кандида на релиз. Запись сессии сохраняет информацию о том, что именно проверил агент. Такой единообразный предрелизный контроль дополняет детерминированный CI, а не заменяет его.

6. Пакеты данных для эскалации в поддержке

Продуктовый инженер может поместить воспроизводимую проблему клиента в очищенную от чувствительных данных среду репозитория и попросить раннер проследить вероятные пути в коде, воспроизвести симптом и перечислить нерешённые вопросы. В итоге поддержка передает в разработку структурированный пакет данных, не открывая агенту доступ к продакшен-системам клиента.

Два продукта, которые стоит построить

Лучшая идея: ИИ-агент для проверки кода как обязательный гейт

Создайте проверку для GitHub или GitLab, которая запускает Unreal Agent в изолированной среде, сверяет пул-реквест с правилами репозитория, выполняет разрешённые проверки и публикует резюме со ссылками на доказательства для ревьюера. Покупатели — команды, которые создают всё больше кода с помощью агентов.

Спрос очевиден. Запрос ai powered code review platform получает около 1,900 поисковых запросов в месяц в США, а ai code review — около 1,300 при CPC $55.73. Существующие продукты подтверждают бюджет на лицензии от $20 до $72 за разработчика в месяц при годовой оплате.

Минимально продаваемая версия должна поддерживать один хостинг кода, одного провайдера модели, фиксированный промпт для ревью, строгий список разрешённых команд и страницу результата, собранную из JSONL-трассировки. Главная проблема — доверие. Ложные срабатывания, утечка секретов, шумные комментарии и небезопасные команды способны быстро уничтожить ценность. Но это всё равно лучшая возможность: задача возникает часто, измерима и уже привязана к существующему бюджету.

Раннер задач по репозиторию с собственной моделью

Можно создать небольшую внутреннюю панель управления: команда выбирает репозиторий, проверенный шаблон задачи, провайдера, модель и лимит расходов, а затем получает трассировку сессии и результат, готовый к согласованию. За такой сервис будут платить агентства и платформенные команды, которым нужен открытый рантайм, но не хочется самим строить очередь, изоляцию и отчётность.

Запрос open source ai coding agent получает около 5,400 поисковых запросов в месяц в США, имеет коммерческий интент и CPC $13.11. Этот спрос шире, чем на ревью кода, но сам запрос на продукт сформулирован менее конкретно.

В MVP войдут коннектор репозитория, эфемерная рабочая среда, два шаблона задач, настройка провайдера, статус задачи, отчёт по токенам и скачиваемый JSONL. Слабое место — дифференциация. Тонкую обёртку над ранней версией рантайма легко скопировать, а серьёзные покупатели потребуют управление идентификацией, журналы аудита, сетевые политики и надёжную очистку. Побеждать нужно за счёт конкретного сценария и эксплуатационных механизмов, а не имени продукта.

Чего Unreal Agent не решает

Unreal Agent не создаёт полноценную границу защиты для продакшена. Флаг рабочей среды не заменяет песочницу, а встроенный инструмент Bash может действовать внутри переданной ему среды. Изоляция, сетевая политика, учётные данные, согласования и очистка остаются вашей зоной ответственности.

Он не устраняет различия между провайдерами. По данным Unreal Labs, во время их тестов некоторые модели у некоторых инференс-провайдеров, отличных от OpenAI, отклоняли схему, при которой результат инструмента сначала помечается как выполняющийся, а затем завершённый. Проверьте именно ту пару провайдера и модели, которую планируете использовать.

В нём нет сложной оркестрации. Небольшой объём, отказ от субагентов и воркфлоу — часть аргумента в пользу эффективности. Продукт плохо подходит для сценариев, которым из коробки нужны визуальный конструктор процессов, большой каталог управляемых коннекторов или делегирование специализированным агентам.

Он также не доказывает экономию на вашей нагрузке. На итоговый счёт влияют модель, интенсивность рассуждений, кэш, объём вывода инструментов, повторные попытки и успех задачи. Сравнивайте стоимость успешно завершённых задач, а не общее число токенов при разных настройках.

Что сделать в понедельник

В понедельник платформенному инженеру стоит закрепить v0.2.0, подготовить одну копию репозитория без учётных данных и дважды запустить задачу обзора репозитория с одной и той же моделью и уровнем рассуждений. Сохраните JSONL, файл сессии, код завершения, прошедшее время, расход токенов и дифф репозитория. Если оба запуска окажутся полезными и чистыми, повторите ту же задачу с текущим агентом. И только после этого решайте, пробовать ли сценарий ревью или встраивать библиотеку.

Что такое Unreal Agent?

Unreal Agent — агентный рантайм на Go от Unreal Labs, изначально рассчитанный на асинхронную работу. В него входят библиотека на Go, устанавливаемый раннер для командной строки и совместимый с Harbor раннер бенчмарков. К Epic Games Unreal Engine он не относится.

Что нужно для запуска Unreal Agent?

Для установки из исходного кода нужны Go 1.27 или новее, рабочая среда, конфигурация поддерживаемого провайдера, модель и требуемые провайдером учётные данные. Раннер поддерживает OpenAI, OpenAI Codex, OpenRouter, Fireworks и Ollama.

Можно ли продолжить сессию Unreal Agent?

Да. Укажите session_id в JSON-запросе. Повторное использование этого ID продолжит сохранённую сессию, а новый ID создаст новую.

Создаёт ли флаг workspace песочницу для агента?

Нет. Он выбирает рабочий каталог для агента и Bash. Запускайте процесс в отдельной песочнице или одноразовой среде и уже там ограничивайте учётные данные и сетевой доступ.

Unreal Agent дешевле Codex?

По данным Unreal Labs, на их нагрузках и в опубликованных бенчмарках экономия по сравнению с Codex достигает 40%. Это цифра поставщика, а не гарантия. Перед выводами сравните одинаковые модель, уровень рассуждений, промпт, состояние репозитория и критерии успеха.

Если вам нужен управляемый агент для работы с репозиторием, построенный вокруг вашего процесса, начните с разработки ИИ-агента.

Последнее обновление
24 сент. 2026 г.
Категория
Build

Сделать этот сайт предпочтительным в Google

Добавить omidsaffari.com как предпочтительный источник в Google Поиске

Отметьте omidsaffari.com как предпочтительный источник — и Google будет поднимать его для вас в Top Stories, AI Overviews и AI Mode.

Похожие статьи
Cursor Rollouts бесплатно? Что дают стартовые кредиты

Cursor Rollouts бесплатно? Что дают стартовые кредиты

Разбираем, доступен ли Cursor Rollouts бесплатно, кому дают кредиты на 10 дней, сколько стоит Teams и что известно о цене после их окончания.24 сент. 2026 г.Build
JetBrains Air: настройка и первый запуск ИИ-агента

JetBrains Air: настройка и первый запуск ИИ-агента

Разбираемся, как установить JetBrains Air, подключить ИИ-агента, передать ему контекст проекта и безопасно проверить первое изменение в коде.23 сент. 2026 г.Build
Цена JetBrains Air: бесплатный плагин и расходы на ИИ

Цена JetBrains Air: бесплатный плагин и расходы на ИИ

Плагин JetBrains Air бесплатен, но за IDE, ИИ-агента, API или кредиты может платить другой аккаунт. Сравниваем Junie Lite и тарифы JetBrains AI.23 сент. 2026 г.Build
Самостоятельный хостинг Firecrawl: установка, проверка и реальные расходы

Самостоятельный хостинг Firecrawl: установка, проверка и реальные расходы

Разбираем самостоятельный хостинг Firecrawl: как развернуть и проверить стек, какие функции доступны и почему Cloud дешевле при 1,000–10,000 страницах.22 сент. 2026 г.Build
Контроль ИИ-агентов: платный повтор требует решения человека

Контроль ИИ-агентов: платный повтор требует решения человека

ИИ-агент потратил $5.48 до проверки человеком. Разбираем, почему платный повтор требует отдельного разрешения, которое модель не может выдать себе сама.22 сент. 2026 г.Build
Конструктор ИИ-агентов MindStudio: цены, возможности и ограничения

Конструктор ИИ-агентов MindStudio: цены, возможности и ограничения

Подробный разбор MindStudio: кому подходит конструктор ИИ-агентов без кода, сколько он стоит, где его пределы и как провести проверку на 20 записях.22 сент. 2026 г.Build
Superwhisper или Wispr Flow: что лучше для диктовки?

Superwhisper или Wispr Flow: что лучше для диктовки?

Superwhisper или Wispr Flow: сравниваем цены, локальную обработку, платформы и функции для команд, чтобы понять, какой сервис выбрать для диктовки.22 сент. 2026 г.Build
Автоматизация бизнеса с ИИ: 4 агентства для сложных процессов

Автоматизация бизнеса с ИИ: 4 агентства для сложных процессов

Сравните агентства ИИ-автоматизации по реальным процессам, полной стоимости за 90 дней, поддержке и условиям передачи — до пилота и договора.22 сент. 2026 г.Build
Рассылка

Одно письмо, каждое воскресенье.Работающие системы, а не горячие мнения.

Еженедельно. Без спама. Отписка в любой момент.