Первый практический вопрос про Devin Local звучит обманчиво просто: он вообще включён и это точно он? В экосистеме, где за словом "агент" стоят два разных исполнителя, ответ не очевиден, а цена ошибки - реальные правки не тем инструментом и не с той моделью прав.
Наивный ход - открыть новую вкладку и сразу писать задачу, полагая, что раз редактор обновился, то и агент под капотом уже новый. Ожидание подкреплено фактом: новые вкладки действительно выбирают Devin Local по умолчанию, если вы не закрепили другого агента. Кажется, проверять нечего. Иллюзию усиливает то, что интерфейс и раскладка окна не меняются: знакомая поверхность подсказывает, что и исполнитель под ней знакомый.
Ломается это на слове "если". По документации, при недоступности Devin Local вкладка честно откатывается на Cascade - и делает это молча. Доступность зависит не только от вас: в Enterprise агент включает администратор через team settings, а на личной машине Devin Local нужно один раз явно включить в настройках. Пока это не сделано, "новая вкладка" открывает не тот агент, а задача уходит исполнителю с другой моделью прав. И это не редкий крайний случай: fallback срабатывает молча ровно тогда, когда вы меньше всего этого ждёте - на свежей установке, на машине без нужной подписки, на вкладке, открытой ещё до включения агента.
Профессиональный ход - включить агент осознанно и один раз, по документированной процедуре. Открыть Command Palette (Cmd+Shift+P на macOS, Ctrl+Shift+P на Windows и Linux), зайти в Devin User Settings, на вкладке Agents включить Devin Local и перезапустить Desktop. В Enterprise доступность даёт администратор в разделе Settings, Enterprise, Windsurf. После перезапуска агент готов - но это ещё не повод писать первый prompt.
Второй шаг - распознавание, и он важнее первого. Активный агент показан в селекторе в правом нижнем углу Devin Desktop. Взгляд туда до первого prompt отвечает на вопрос "кто исполнит задачу" фактом, а не предположением. Это дешёвая привычка: одна секунда против часа разбирательств, почему "агент повёл себя странно".
Почему откат на Cascade сделан тихим, а не блокирующим. Разработчику важнее непрерывность работы, чем строгий отказ: лучше дать legacy-агента, чем оставить вкладку без исполнителя. Но у непрерывности есть оборотная сторона - неявная подмена, и снимать её приходится вниманием, а не надеждой. Devin Local делит agent harness с Devin CLI, но исполняется внутри Desktop с доступом к локальным файлам, инструментам и окружению - значит, подмена меняет не косметику, а именно эту связку прав и среды.
Цена невнимания конкретна. Инструкция, написанная в расчёте на permission-модель Devin Local, попав в Cascade, исполнится по его modes и auto-execution, а не по вашим deny, ask и allow. И наоборот: rule или memory эпохи Cascade не подхватятся Devin Local. В обоих случаях агент работает честно - просто не тот и не по тем правилам, а вы объясняете результат причиной из чужого слоя. Разобрать такую путаницу задним числом дороже, чем предупредить: логи и diff покажут, что сделано, но не подскажут, что за словом "агент" в тот момент стоял другой исполнитель.
Отдельная настройка убирает саму двусмысленность. Cascade можно скрыть параметром devin.cascade.enabled - тогда выбор сужается до одного исполнителя, и вопрос "кто в селекторе" отпадает. Это разумно на личной машине, где legacy-процессы уже мигрированы; там, где Cascade ещё нужен для старых workflows и memories, скрывать его рано.
Проверять результат включения стоит другим способом, чем вы его делали. Включили в настройках - подтвердите не повторным заходом в настройки, а взглядом в селектор на реальной вкладке. Ещё точнее - выдать безопасную задачу вроде чтения файла и увидеть в approval-карточке имя агента и характер его запросов: если карточка ведёт себя по модели deny, ask, allow, перед вами Devin Local, а не Cascade с его переключателями авто-исполнения. Две проверки разного рода - взгляд в селектор и поведение карточки - надёжнее одной: настройка могла сохраниться, но не примениться до перезапуска.
Типичные провалы растут из пропущенного взгляда в селектор. "Мои permission-правила не действуют" - потому что вкладку исполняет Cascade. "Devin Local не появился" - потому что в Enterprise его не включил администратор или Desktop не перезапущен. "Агент ведёт себя как раньше" - потому что закреплён старый предпочтительный агент, и default на него не влияет. Признак один: про поведение агента говорят, не назвав, какой агент стоит в селекторе. Назовите его первым - и большинство этих "почему-то" исчезнет ещё до задачи.