РелизAPI / Продукт · В работуHabr AI→ оригинал

Claude Code угадал Drupal по email даже в safe-mode — автор сделал скилл /ccu

Автор спросил Claude Code, какую CMS выбрать, и получил Drupal: агент увидел его кастомный скилл под Drupal. Флаг --safe-mode отключил конфиг, но ответ не изменился — модель вывела работодателя из email в контексте аккаунта. Тогда появился скилл /ccu: он запускает чистый инстанс с пустым HOME и пустым окружением. В таком режиме тот же вопрос дал Payload.

AI-обработка оригинала Habr AI; редакция Hamidun News
Claude Code угадал Drupal по email даже в safe-mode — автор сделал скилл /ccu
Источник: Habr AI. Коллаж: Hamidun News.
Слушать статью
Паспорт материала и цифры
ПараметрДанные
ПервоисточникHabr AI ↗
Главный редактор
Ключевой факт #1--safe-mode не убирает email из профиля аккаунта
/ccuenv -i, пустой HOME и временная папка work
Ключевой факт #3Права для claude -p задаются заранее в settings.json

Вы просите AI-агента о нейтральном совете и получаете ответ, подогнанный под вас. Не потому что модель льстит, а потому что она читает всё, что вы ей оставили: инструкции, скиллы, память, даже адрес почты. Автор этой истории на собственном опыте убедился, что убрать этот шум сложнее, чем кажется.

Drupal вместо нейтрального совета

Автор спросил Claude Code, какую CMS тот порекомендует. Ответ: Drupal. На вопрос «почему» агент честно объяснил, что увидел самописный скилл для Drupal и решил, что пользователь с ним работает. Логично: личные CLAUDE.md, скиллы и настройки превращают агента в эхо хозяина.

Тогда автор нашёл флаг --safe-mode, который обещает запуск без CLAUDE.md, скиллов, плагинов, хуков и MCP-серверов при той же подписке. Он спросил снова и опять получил Drupal. Цепочка на этот раз была такая: email в контексте агента, домен amazee.io, компания известна Drupal-хостингом, значит, пользователь работает в Drupal-ориентированной среде. Конфиг убрали, а идентичность осталась.

Как устроен /ccu

Решением стал скилл /ccu (Claude Code, Unbiased by me). Автору не нужна полноценная чистая сессия, нужна быстрая проверка время от времени, поэтому это именно скилл. Основной агент пишет промпт, копирует в пустую папку нужные файлы, запускает там чистый инстанс и приносит ответ.

Изоляция простая. Каждый запуск получает свежую временную директорию с двумя папками: work для файлов задачи и пустой home. Дальше запуск идёт примерно так: переход в work, затем env -i с HOME на пустую папку, PATH и OAuth-токеном, и после этого claude -p с нужной моделью и промптом на входе. Флаг env -i стартует с пустым окружением, так что из шелла ничего не утекает. Токен тот же, что у текущей сессии, его скилл берёт из macOS Keychain. Подписка остаётся прежней, а email пропадает: профиль аккаунта лежит в .claude.json, который пишется при логине, а в чистом home его нет.

Есть нюанс с правами. Режим claude -p отклоняет любой инструмент, требующий подтверждения, ведь подтверждать некому. Поэтому основной агент заранее перечисляет нужные инструменты в work/.claude/settings.json, например WebFetch, WebSearch и Bash(curl:*). Но в недоверенной папке эти настройки игнорируются, и /ccu помечает work как доверенную через hasTrustDialogAccepted в .claude.json внутри home.

Отдельная деталь: после запуска скилл превращает сырой лог в читаемый transcript.md. Основной агент получает только ответ чистого инстанса, транскрипт он не читает. Человек может заглянуть в него сам и проверить, не влиял ли основной агент на результат.

Зачем это знать на практике

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

Практические выводы такие:

  • Не доверяйте флагу «безопасный режим» как гарантии чистоты: проверяйте, что реально попадает в контекст, включая данные аккаунта.
  • Для честных сравнений запускайте модель в отдельном HOME с пустым окружением, а не просто отключайте плагины.
  • Если автоматизируете запуск через claude -p, продумайте права заранее и учтите правило доверия к папке.

Ограничения тоже есть. Решение завязано на macOS Keychain и на конкретное поведение Claude Code, которое может измениться. Токен по-прежнему принадлежит вашей подписке, так что с ним нужно обращаться осторожно. И даже чистый инстанс видит ОС, шелл, путь к временной папке и дату, а значит, абсолютно нейтрального ответа не бывает.

А что с CMS? В чистом инстансе Claude Code порекомендовал Payload. Разница между Drupal и Payload хорошо показывает, сколько в обычных ответах агента на самом деле вас.

Сюжет

Вопросы и ответы по материалу

Что известно по теме: Drupal вместо нейтрального совета?

Автор спросил Claude Code, какую CMS тот порекомендует. Ответ: Drupal. На вопрос «почему» агент честно объяснил, что увидел самописный скилл для Drupal и решил, что пользователь с ним работает. Логично: личные CLAUDE.md, скиллы и настройки превращают агента в эхо хозяина. Тогда автор нашёл флаг --safe-mode, который обещает запуск без CLAUDE.md, скиллов, плагинов, хуков и MCP-серверов при той же подписке. Он спросил снова и опять получил Drupal.

Что известно по теме: как устроен /ccu?

Решением стал скилл /ccu (Claude Code, Unbiased by me). Автору не нужна полноценная чистая сессия, нужна быстрая проверка время от времени, поэтому это именно скилл. Основной агент пишет промпт, копирует в пустую папку нужные файлы, запускает там чистый инстанс и приносит ответ. Изоляция простая. Каждый запуск получает свежую временную директорию с двумя папками: work для файлов задачи и пустой home.

Что известно по теме: зачем это знать на практике?

Вывод шире, чем про CMS. Любой совет от агента с накопленным контекстом нужно считать персонализированным. Если вы выбираете стек, оцениваете архитектуру или просите ревью текста, ответ будет смещён в сторону того, что агент про вас знает. Автор использует /ccu и для персон-ревьюеров блога вроде редактора или коллеги, которые не должны знать, кто автор. Практические выводы такие: Не доверяйте флагу «безопасный режим» как гарантии чистоты: проверяйте, что реально попадает в контекст, включая данные аккаунта.

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ Практика · Hamidun Academy

Соберите рабочего ИИ-агента или сервис своими руками без ручного кода

В Академии Жемала Хамидуна (academy.hamidun.com) открыт бесплатный 72-часовой тест-драйв: интерактивные скетч-уроки по Claude Code и Cursor, живой Tech Radar и готовые шаблоны агентов.

Открыть 72ч бесплатный доступ →Интенсив по Вайб-кодингу
Что вы думаете?
Загружаем комментарии…