OpenCode 2.0: агент, который управляет собственным интерфейсом
Разработчики OpenCode выпустили версию 2.0 — по их словам, это не косметическое обновление, а глубокая переработка, опирающаяся на опыт миллионов ежедневных пользователей. Ниже — наиболее заметные изменения.
Единый сервис
С самого начала OpenCode строился по модели «клиент — сервер», но по умолчанию этим мало кто пользовался. Теперь сервер автоматически работает как единый фоновый процесс. Терминальный интерфейс, веб-версия и настольное приложение обращаются к одному и тому же центральному процессу. Программный клиент @opencode/client сам находит локальную службу, что удобно для запланированных задач; сервис можно открыть и другим хостам через команду pair.
Переписанный API
Старый API, по признанию авторов, рос хаотично и был неудачным. Его написали заново, разобрав странные сценарии использования со стороны пользователей. Главное новшество: OpenCode знает о собственном API и сам вызывает его — например, переносит текущую сессию в отдельный git worktree, останавливает зависшую задачу, переименовывает сессию или закрывает завершённые вкладки по команде на естественном языке.
Режим кода
Модели любят писать код, и OpenCode 2.0 использует это сильнее конкурентов. В пакете @opencode/codemode появился минималистичный интерпретатор JavaScript. Он превращает MCP-серверы и OpenAPI-эндпоинты в функции, которые агент вызывает прямо в скрипте — и выполняет скрипт без тяжёлых решений вроде Node.js VM или QuickJS. Агент может за один заход получить список задач из одного сервиса и создать их в другом. Все MCP-серверы по умолчанию работают в этом режиме, поэтому их можно подключать хоть тысячу без раздувания контекста.
Фоновые задачи
Появились фоновые субагенты: основной агент поручает работу другому и продолжает трудиться. Запуск происходит автоматически, но его можно вызвать и вручную — даже с другой моделью. Так же асинхронно работают и команды оболочки: долгие сборки и тесты больше не блокируют основного агента. Любую затянувшуюся задачу можно горячей клавишей отправить в фон.
Плагины и SDK
Система плагинов из версии 1.0 была заброшена. Чтобы исправить это, авторы заставили себя реализовать почти каждую функцию 2.0 как внутренний плагин — их теперь более 80. Плагины для текстового интерфейса стали стабильными, а всё в системе поддерживает горячую перезагрузку, так что агент может написать себе плагин прямо посреди сессии. Наконец, пакет @opencode/sdk позволяет использовать OpenCode как библиотеку и собирать собственные варианты системы.
Обновление до 2.0 выполняется командой opencode upgrade --major с последней версии 1.x. Есть несовместимые изменения: плагины 1.0 не работают, API сервера полностью иной, формат конфигурации изменён.
Источник: Hacker News
Комментарии
Войдите, чтобы комментировать.