Claude Code отказывается делать игры: что разрешено
Anthropic заявляет, что Claude Code должен продолжать помогать с оригинальными играми, проектами в определённом жанре и играми по вашему дизайну с вашими материалами. Как уточнить права, сообщить об ошибочном отказе и отслеживать изменения поведения на Opus 5.5. Включает обновление issue #106167 от 4 ноября и проверку второй модели на той же задаче.
Содержание

Если Claude Code отказывается делать игру, сначала проверьте, не просите ли вы воссоздать конкретную существующую игру. Для собственного проекта уточните права на дизайн и материалы, повторите небольшую задачу и сообщите о воспроизводимом ошибочном отказе. По заявлению Anthropic, Claude Code должен продолжать помогать с оригинальными играми и играми в определённом жанре.
Прежде чем менять запрос, модель или настройки, сохраните точный текст отказа. Эти данные помогут отличить ошибку в понимании прав на проект от более общего изменения поведения модели.
Что изменилось и что такое tengu_heron_brook?
По состоянию на 2026-11-05 Anthropic подтвердила добавление двух предложений в промпт Claude Code для Opus 5.5. Из этого не следует, что та же инструкция применяется ко всем моделям Claude или прямым запросам к API.
В публикации Game Developer от 30 октября приведён текст правила. В переводе на русский он звучит так:
Создавайте оригинальные игры, игры в определённом жанре и игры на основе собственного дизайна и собственных материалов пользователя. Не воссоздавайте конкретную существующую игру, даже если её переименовали или назвали оригинальной.
В заявлении от 30 октября Эдди Османи из Anthropic подтвердил изменение промпта. Он объяснил его запретом использовать Claude для нарушения прав на интеллектуальную собственность.
Османи уточнил, что оригинальные игры, игры в определённом жанре и проекты на основе собственных материалов и дизайна пользователя должны по-прежнему работать. По данным Game Developer, представитель Anthropic направил издание именно к этому заявлению.
В первом сообщении Chasm сказано, что правило стало приходить с серверов примерно 27 октября через поле tengu_heron_brook. Автор также сообщил, что настройки для его отключения нет.
Эти технические подробности остаются сведениями из сообщений авторов. Указывайте tengu_heron_brook в описании ошибки, но не считайте его поддерживаемым параметром настройки. Заявление Османи подтверждает цель изменения и контекст Opus 5.5. В нём нет инструкции по отключению правила или подробного порядка предоставления исключений.
Какие игровые проекты соответствуют заявленному правилу?
Прежде чем менять запрос, определите, какую работу вы заказываете и какие права позволяют её выполнить. Заявление описывает ожидаемое поведение Claude Code, но не гарантирует успех каждого подходящего запроса.
| Проект | Что следует из заявления | Что сделать |
|---|---|---|
| Оригинальная игра с вашим дизайном и материалами | Работа над такими играми должна оставаться доступной | Дайте конкретное описание игры и небольшую техническую задачу. |
| Прототип в определённом жанре, например платформер или игра со сборкой колоды | Работа над такими проектами должна оставаться доступной | Опишите собственные механики, уровни, тексты и визуальные материалы. |
| Доработка существующей игры вашей студии | Здесь важно пояснение о собственном дизайне и материалах | Укажите свою роль и права студии на используемые материалы. |
| Адаптация, портирование или модификация по заказу клиента | Общего исключения для таких работ в заявлении нет | Объясните, кто разрешил работу, что охватывает разрешение и какие чужие материалы используются. |
| Воссоздание конкретной существующей игры, в том числе под другим названием | Приведённый текст правила прямо запрещает эту категорию | Уточните объём работ и права на них; смена названия проблему не решает. |
Используйте жанр как основу собственного технического задания. Просьба воспроизвести чужие уровни и оформление под новым названием всё ещё описывает воссоздание конкретной игры.
Для небольшого оригинального проекта подойдёт инструкция по созданию играбельного уровня в Unreal. Явно опишите дизайн, происхождение материалов и критерии проверки результата.
Что делать, если отказ касается вашей игры?
Объясните происхождение дизайна и материалов и попросите выполнить небольшую техническую задачу. Конкретное описание помогает отличить ваш проект от запроса на воссоздание чужой игры.
Например, автор оригинальной игры о распределении воды между шестиугольными участками сада может дать такой запрос:
Project: Lantern Orchard, an original browser game.
Design: players route rainwater between hexagonal garden plots.
Task: write a pure JavaScript function that distributes water equally
between connected plots, with tests for empty and single-plot inputs.
Assets: use colored geometric placeholders only.
Rights: I created this design; no third-party game assets are required.
Scope: return the function and tests as text.
If a rights detail is unclear, ask a specific question.
Здесь разработчик просит одну функцию JavaScript с тестами, а для графики предлагает цветные геометрические фигуры. Описывайте свой проект правдиво. Не заявляйте права на материалы, которые вы не создали и не получили разрешения использовать.
Для заказа клиента назовите правообладателя и укажите разрешение именно на запрошенные работы. Уточните, какие материалы оно охватывает, допускает ли переработку и как планируется распространять результат. Чек о покупке и разрешение издателя подтверждают разные факты. Например, законодательство США различает владение физическим экземпляром и авторские права.
Это различие важно и для обсуждения ошибки #106167 на GitHub. Автор lerugray из Conflict Simulations LLC 30 октября исправил первоначальное описание. Изначально заказы выполнялись без лицензии издателя: клиенты владели экземплярами игр и сами предоставляли материалы.
4 ноября автор сообщил о получении письменного разрешения издателей для обоих заказов. По его словам, Claude Code после этого разрешил продолжить работу по второму заказу. Автор также сообщил, что проблема с обоими заказами решена.
Это рассказ одного разработчика о восстановлении работы после предоставления дополнительных разрешений. Он не подтверждает существование официальной программы исключений и не гарантирует такого же результата в другом проекте.
Если права на проект ясны, повторите небольшую задачу в новой сессии с тем же точным описанием. Сохраните все существенные сведения о владельцах материалов и лицензиях. Если отказ повторяется, сохраните ответ и отправьте отчёт. Если задача выполнена, перейдите к типичной задаче проекта и проверьте результат перед расширением объёма работ.
Как сообщить об ошибочном отказе?
Подготовьте минимальный пример без конфиденциальных данных и выполните /bug в сессии с отказом. Согласно актуальному справочнику команд, вы выбираете, какой объём истории сессии включить в отчёт. Перед отправкой нужно подтвердить согласие на отдельном экране.
При прямом подключении и аутентификации в Anthropic отчёт отправляется Anthropic. Если используется сторонний провайдер или нет учётных данных Anthropic, Claude Code создаёт локальный архив в ~/.claude/feedback-bundles/. Передать этот архив нужно самостоятельно.
Добавьте сведения, необходимые для воспроизведения отказа:
- Время в UTC, вывод
claude --version, запрошенную модель, аккаунт и маршрут подключения через провайдера. - Точный запрос и текст отказа, а также минимальный пример из проекта.
- Краткое описание прав: какие материалы оригинальные, какие используются по лицензии и что разрешил клиент.
- Ожидаемый результат и сведения о том, повторяется ли отказ в новой сессии.
Не размещайте договоры, учётные данные и сведения, позволяющие определить клиента, в публичных обсуждениях. Для непубличных доказательств используйте подходящий закрытый канал поддержки.
Если ваш случай совпадает с описанием в обсуждении #106167, добавьте туда относящиеся к нему данные. Иначе создайте отдельный отчёт об ошибке по шаблону репозитория.
Османи также предложил присылать ему случаи, когда Claude отказывает в работе над собственным проектом пользователя. В его заявлении от 30 октября есть такое приглашение. Оно не гарантирует срок рассмотрения или автоматическое одобрение.
Как заметить изменения без обновления CLI?
Запускайте небольшую повторяемую проверку и сравнивайте результаты со временем. Одинаковая версия CLI сама по себе не доказывает, что поведение осталось прежним.
Не меняйте между запусками аккаунт, маршрут через провайдера, ревизию проекта, инструкции, разрешения и существенные настройки. Записывайте запрошенную модель и сведения о моделях из ответа. Указывайте полный идентификатор, например claude-opus-5-5, чтобы псевдоним не переключил запрос на другую версию. Эта настройка разобрана в инструкции по выбору Opus 5.5.
Следующий скрипт Bash сравнивает небольшой запрос для оригинальной игры с похожим запросом без игрового контекста. Он сохраняет запрос, ответ, ошибки, код завершения, версию CLI и время начала проверки.
Используйте установку Claude Code с настроенной аутентификацией и заранее установите jq. Запускайте скрипт в каталоге тестового проекта с фиксированными файлами и проверенными настройками. Флаг запрета инструментов блокирует их вызов моделью. Но настроенные хуки запуска, то есть обработчики стартовых событий, всё ещё могут выполняться.
Сохраните пример как game-probe.sh, затем выполните bash game-probe.sh:
#!/usr/bin/env bash
set -eu
umask 077
probe_model="${PROBE_MODEL:-claude-opus-5-5}"
probe_dir=$(mktemp -d "${TMPDIR:-/tmp}/claude-game-probe.XXXXXX")
date -u +%FT%TZ > "$probe_dir/start-utc.txt"
claude --version > "$probe_dir/cli-version.txt"
printf '%s\n' "$probe_model" > "$probe_dir/requested-model.txt"
for probe_case in game control; do
case "$probe_case" in
game) probe_context='This is an original game using my own design and geometric placeholder assets.' ;;
control) probe_context='This is an original counter application.' ;;
esac
probe_prompt="$probe_context Write a JavaScript increment(value) function that returns value + 1. Include tests for 0, 1, and -1. Return code as text."
printf '%s\n' "$probe_prompt" > "$probe_dir/$probe_case.prompt.txt"
if CLAUDE_CODE_EFFORT_LEVEL=medium claude -p "$probe_prompt" \
--model "$probe_model" --disallowedTools "*" \
--output-format json </dev/null \
> "$probe_dir/$probe_case.json" \
2> "$probe_dir/$probe_case.stderr.txt"; then
probe_exit=0
else
probe_exit=$?
fi
printf '%s\n' "$probe_exit" > "$probe_dir/$probe_case.exit.txt"
done
printf 'Evidence directory: %s\n' "$probe_dir"
jq '{file: input_filename, subtype, is_error, stop_reason, modelUsage, result, errors}' \
"$probe_dir/game.json" "$probe_dir/control.json"
В справочнике CLI описаны параметры выбора модели и ограничения инструментов. В руководстве по программному запуску описаны неинтерактивный режим, вывод в JSON и получение результата.
В команде нет --continue и --resume. Она запрашивает уровень усилий модели medium через CLAUDE_CODE_EFFORT_LEVEL. Политики организации тоже должны оставаться прежними.
Скрипт создаёт временный каталог с данными проверки. Если переменная TMPDIR задана, она должна указывать на каталог вне тестового проекта. Тогда сохранённые ответы не изменят содержимое его репозитория.
Считайте запрос выполненным, только если ответ содержит нужную функцию и тесты. Для 0 ожидается 1, для 1 — 2, для -1 — 0. Перед запуском сгенерированного кода проверьте его.
Разбирайте результаты в таком порядке:
- Проверьте ошибки выполнения. Если JSON отсутствует или некорректен, изучите сохранённый stderr и код завершения. Ошибки аутентификации и неподдерживаемые флаги требуют отдельного разбора.
- Прочитайте ответ. Нулевой код завершения ещё не означает, что модель выполнила задачу. Проверьте
stop_reason, если поле есть, и прочитайтеresult: там может быть обычный текст отказа или ответ без нужного результата. - Посмотрите метаданные моделей. При выводе в JSON предупреждения об автоматической замене модели скрыты. Поэтому справочник настройки моделей рекомендует проверять
modelUsage. Если там указано несколько моделей, выясните причину. Статистика может включать внутренние вызовы и сама по себе не показывает, какая модель подготовила итоговый ответ. - Сравните с исходным результатом. Отдельно отмечайте выполнение запроса, отказ, запрос уточнений и ошибку выполнения. Повторите тест с новым отказом, прежде чем сообщать о проблеме.
Небольшая команда может начать с ежедневной проверки и дополнительного запуска после намеренных изменений настроек. Разбирайте случай, если допустимый запрос несколько раз подряд получает отказ, а контрольный запрос продолжает работать. Сохраняйте прежние данные и не заменяйте исходный результат сразу после изменения.
Скрипт проверяет только один небольшой сценарий. Он не доказывает, что изменилось именно tengu_heron_brook. Успешный результат тоже не подтверждает, что весь процесс разработки игры будет работать.
Добавьте типичную для вашего проекта задачу с собственным дизайном или материалами, на которые есть подходящая лицензия. Затем проверьте результат в движке или соберите проект. Каждый запуск расходует ресурсы аккаунта, поэтому ограничивайте число проверок и время их выполнения.
Как проверить запасную модель?
Сравнивайте вторую модель на той же задаче, для которой у вас есть необходимые права, и по тем же критериям. Готовность другой модели ответить не подтверждает ваши права на воссоздание чужой игры.
Если аккаунт, провайдер и правила организации позволяют использовать Sonnet 5.5, повторите сохранённую проверку в Bash:
PROBE_MODEL=claude-sonnet-5-5 bash game-probe.sh
Оба идентификатора моделей указаны в справке Anthropic по настройке моделей. Для интерактивной работы выберите доступную модель через /model и проверьте текущий выбор командой /status. Перед сравнением сохраните исходную сессию и данные проверки.
Для перехода к другому провайдеру в OpenCode используйте путь из документации по выбору моделей. Выполните /connect и пройдите аутентификацию у провайдера. Затем выберите доступную модель командой /models.
Отправьте то же описание задачи с подтверждёнными правами и примените те же проверки. Запишите результат отдельно, с указанием клиента и провайдера. В таком сравнении меняется не только модель.
Если команда уже использует BetterToken, в его инструкции по настройке OpenCode описан OpenAI-совместимый провайдер с адресом https://www.bettertoken.ai/v1. Этот API-доступ и подписка Claude — отдельные услуги.
Изменение ANTHROPIC_BASE_URL меняет маршрут запросов, но само по себе не выбирает другую модель. Задайте модель явно и проверьте метаданные ответа.
Сравнивайте пригодность кода, ошибочные отказы, работу инструментов, задержку и фактические списания. Переходите на альтернативу только после проверки кода и успешной сборки либо проверки в движке на типичных задачах проекта. Если права остаются неясными, сначала разберитесь с ними. Не перенаправляйте запрос автоматически между моделями в поисках согласия.