OpenCode

Попытка использовать OpenCode/GPT

Я далеко не такой упертый пользователь Claude Code и регулярно пробую что-то новое. Потестировав Codex и убедившись, что он не дотягивает до нужного мне уровня, я решил посмотреть на, пожалуй, один из самых серьезных агентов — OpenCode. Там есть много похожего на Claude Code, что-то реализовано иначе, но тоже неплохо — в общем, почему бы не попробовать?

Сначала он упал. Точнее, на любой запрос выдавал стек ошибок и останавливался. Я удалил конфиг вообще, запустил его, показал ему настройки Claude Code и предложил портировать. Он перенес часть настроек и после рестарта (а OpenCode не подгружает изменения сам) упал опять. Пришлось позвать Claude Code, который определил, что проблема в плагине Claude-mem — тот хоть и заявляет поддержку OpenCode, но не очень про нее знает. Заодно Claude Code выяснил, что никакие настройки OpenCode с GPT не перенес — он просто в конфиге сослался на файлы Claude Code, перед этим запланировав именно миграцию, а не подключение.

ОК, через некоторое время работы Claude Code конфигурация была портирована и OpenCode запустился. Я предложил ему самому перенести MCP серверы и приключения продолжились — сначала он перенес только те, что были указаны в проектах, а глобальные проигнорировал. Затем он перенес глобальные и начал настаивать, что вот тут токены в конфиге, их надо ротировать обязательно, они уже скомпрометированы, и вообще указать в окружении. Я согласился перенести в окружение, он сделал — и они не заработали. Оказывается, он нафантазировал фрагмент конфига. Конфиг он поправил — все это сопровождается постоянными рестартами для переподключения, — теперь надо бы протестировать. Я даю URL для проверки Cloudflare Browser Rendering — это фактически Chrome в облаке Cloudflare. Дальше смотрите скриншоты.

Сначала он запустил локальный Chrome вместо облачного
Сначала он запустил локальный Chrome вместо облачного
Признал этот факт
Признал этот факт
Затем он вместо обращения к MCP пишет свой скрипт для запроса через API
Затем он вместо обращения к MCP пишет свой скрипт для запроса через API
Соглашается, что неправ
Соглашается, что неправ
Затем он читает свой конфиг и решает посмотреть документацию
Затем он читает свой конфиг и решает посмотреть документацию
В итоге он читает страницу простым fetch вместо MCP
В итоге он читает страницу простым fetch вместо MCP

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

Даже не сомневаюсь, что мне объяснят, что я не умею использовать AI. Можно начинать.