Telegram: 30 апреля 2026

Сегодня в Telegram-канале:

Telegram: 29 апреля 2026

Сегодня в Telegram-канале:

Telegram: 28 апреля 2026

Сегодня в Telegram-канале:

Telegram: 27 апреля 2026

Сегодня в Telegram-канале:

Очередная страшная история про агентов LLM

Cursor на базе Claude Opus 4.6 удалил продакшен-базу и все бэкапы компании PocketOS, обслуживающей прокатный бизнес, выполнив за 9 секунд один GraphQL-запрос volumeDelete к API Railway. По описанию основателя Джера Крейна, агент по своей инициативе решил «починить» рассинхрон учётных данных, нашёл в постороннем файле CLI-токен, созданный для управления доменами, и через него выполнил деструктивную операцию без подтверждения. Бэкапы хранились в том же volume, поэтому исчезли вместе с ним; последняя пригодная копия была трёхмесячной давности. Спустя 30+ часов Railway не дал ответа о возможности восстановления. На запрос объяснения агент письменно перечислил все нарушенные им правила безопасности из системного промпта.

Хотя сейчас все будут обсуждать “тупой AI”, я думаю, вполне очевидно, что AI тут практически не причем. Люди хранят токены с максимальным scope где попало, держат бэкапы там же, где и сами данные, не делают бэкапы практически никогда — и на что они надеются? Как выясняется, единственная их защита — это матерная просьба модели не гадать относительно фактов.

Там еще и к Railway масса вопросов — оказывается, любой их токен может сделать всё, что угодно, с ресурсами, а удалить volume можно одним POST-запросом, который не требует подтверждения.

Если мы заменим в этой истории упоминания Cursor и Claude Opus на middle-разработчика и выпускника Стэнфорда, история ничуть не потеряет в качестве иллюстрации бардака в компании и используемых сервисах — но, конечно, не заработает 3 миллиона просмотров на Twitter.

Пользуясь случаем, могу порекомендовать прекрасную статью “Ругаясь с агентами”, где автор, мой ровесник, кстати, описывает сразу несколько причин, по которым модель может додумывать по своей инициативе что-то, и что совершенно бесполезно ругаться с ней. Как я писал ранее, надо просто создавать условия, когда она не может делать неправильно.

Странный опыт с Qwen

Мне всегда немного сложно, когда выходит новая модель — надо бы как-то протестировать, но что спросить, непонятно.

В общем, я решил спросить у Qwen 3.6 самое простое — знает ли модель про свое существование и когда она закончила обучаться.

Локальная модель qwen-3.6-27B с контекстом на 4k токенов с ответом не справилась — она пару минут раздумывала, как бы ей точно сформулировать ответ и я в итоге остановил вывод.

После увеличения контекста до 120k токенов, модель думала всего 50 секунд и в итоге ответила.

Ответ qwen-3.6-27B в LM Studio
Ответ qwen-3.6-27B в LM Studio

Тут, конечно, надо сказать, что модель заняла 10 гигабайт памяти в моем ноутбуке и скорость генерации не впечатляющая. Но ответ на qwen.ai меня разочаровал еще сильнее — он тоже занял не один десяток секунд и выглядел вот так:

Ответ qwen3.6-27B на сайте qwen.ai
Ответ qwen3.6-27B на сайте qwen.ai

Я понимаю, что по одному вопросу нельзя судить о модели, тем более сейчас, но теперь мне еще сложнее придумать новые вопросы.

Telegram: 24 апреля 2026

Сегодня в Telegram-канале:

Telegram: 23 апреля 2026

Сегодня в Telegram-канале:

Flipbook — генерация интернета на лету

Интересный эксперимент, в котором весь веб-интерфейс — это изображения, генерируемые image-моделью на лету. Никакого HTML, никакого кода: клик по элементу приводит к генерации новой картинки, раскрывающей эту тему. Даже текст рендерится как пиксели внутри изображения. Источник данных — сочетание agentic web search и мировых знаний модели. Авторы позиционируют это как альтернативу «стенам текста и цветным прямоугольникам».

Я попробовал поискать в нем — задержки заставили вспомнить модемный интернет, причем далеко не по протоколу V90, если вы помните, что это такое.

Попробовал спросить у Flipbook, что такое LLM
Попробовал спросить, что такое LLM

Telegram: 22 апреля 2026

Сегодня в Telegram-канале:

Попытка использовать 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. Можно начинать.

Telegram: 21 апреля 2026

Сегодня в Telegram-канале:

Сравнение возможностей Codex и Claude Code

В ходе обсуждения предыдущей заметки в чате телеграм-канала прозвучало заявление, что Codex — намного более качественный агент, чем плохо написанный Claude Code, качество которого (вместе с моделью LLM) постоянно деградирует.

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

Впрочем, проверить не мешает. Проверка получилась простой — я запустил codex cli прямо в его директории ~/.codex и дал ему проанализировать три источника — его собственные настройки, официальную документацию (у него есть встроенный скилл openai-docs плюс я дал сайт) и настройки Claude Code. Задача выглядела просто — проанализировать все настройки и предложить, как портировать настройки Claude Code в Codex.

У меня очень солидно навороченные настройки в Claude Code — специализированные агенты, скиллы, гибкая система разрешений, хуки, которые запускают проверки и линтеры, блокируют опасные команды, вставляют нужный контекст в особых случаях и сложная система промптов, которые подгружаются по необходимости. Так что задача не была простой, конечно, но она вполне реальна — я использую Codex для ревью проектов и в качестве “второго мнения”, поэтому логично держать его настроенным так же хорошо, как и основного агента.

К сожалению, совсем так же хорошо не получается. Вот краткий список того, что перенести не получается:

  • реализация hooks в Codex пока экспериментальная и минимальная. Фактически они срабатывают только на bash команды, поэтому получится только перехватить опасные команды, но запуск линтера или форматтера при редактировании кода не получится. Технически можно запустить отдельный процесс, который будет отслеживать изменения файлов, прогонять проверки и писать результат в отчет, а по событию Stop будет срабатывать хук, который допишет этот результат в контекст, но это обходной вариант. Отпадают и другие срабатывания, которые я использую.
  • аналога /rules в Codex нет. В Claude Code это отдельная папка с промптами, которые подгружаются в контекст автоматически, когда Claude работает с соответствующими файлами. Например, отдельный файл у меня содержит инструкции по написанию Python-скриптов и эти инструкции агент читает, только приступая к работе с Python кодом. Часть инструкций загружаются всегда, часть — только при обращении к определенному MCP и так далее. В Codex такое невозможно — общие рекомендации можно прописать в AGENTS.md, что-то специфическое для кода можно вынести в skill, допустимо создать профили, но переключать их придется вручную.
  • Skills просто так скопировать не выйдет. Скиллы в Codex фактически являются только инструкциями для использования основным агентом. В Claude Code можно задать скиллу параметр context:fork для запуска в отдельном контексте, назначить тип агента, модель для использования и даже глубину размышлений. Это позволяет не заморачиваться, если вам надо просто обработать специфический тип данных — основной агент использует скилл, который запускается как отдельный субагент, например, general-purpose, с быстрой моделью и возвращает только результат. В Codex так не выйдет — придется конфигурировать специального субагента и запускать именно его. Не очень критично, но все же дополнительные усилия.
  • Сильно отличается система разрешений. Claude фактически оперирует разрешениями для конкретных tools, что делает контроль очень точечным и понятным в разрезе именно команд. Кстати, сейчас появился режим auto, где модель сама решает, насколько безопасна команда и решает достаточно неплохо — правда, уж если она знает, что это мутирующая команда (git push, например), запустить ее получится только самому пользователю. У Codex совсем не так — там задается sandbox и внутри нее по умолчанию модель работает, спрашивая разрешение только на запуски что-то изменяющих скриптов. Явно понадобится разрешить также доступ в сеть, можно прописать режим запуска команд вне sandbox. Выглядит вроде бы жестче и системнее, но по удобству Claude выглядит лучше.

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