Ошибка 400 в Claude Code через сторонний API: проверьте схему Artifact

Как распознать регрессию Artifact input_schema в Claude Code, проверить версию клиента и отличить её от других ошибок HTTP 400.

Чёрный линейный рисунок электрической вилки на светлой карточке, песочный фон и заголовок Claude Code 400.

Если после обновления Claude Code стал выдавать ошибку на каждом ходе, а ответ упоминает неверное регулярное выражение в input schema инструмента Artifact, проверьте версию клиента, прежде чем менять ключ или модель. В пользовательском сообщении #92969 в официальном репозитории описана регрессия версий 2.1.265 и 2.1.266: строгие валидаторы отклоняли pattern с Unicode property escapes.

Это конкретная историческая несовместимость, а не объяснение любого HTTP 400. Нельзя представлять её как неисправленную проблему всех современных клиентов. В официальном журнале Claude Code исправление для сторонних эндпоинтов записано в версии 2.1.268.

Сначала сопоставьте признаки ошибки

Эту причину стоит проверить при сочетании трёх признаков: сбои начались после затронутого обновления, используется сторонний Anthropic-совместимый эндпоинт, а ошибка указывает на схему Artifact или pattern, который «not a regex». Точная формулировка зависит от валидатора.

Отклонение схемы происходит до ответа модели на задачу. Поэтому замена сложного запроса о коде простым приветствием может ничего не изменить. Это не доказывает поломку модели: некорректная часть может находиться в определении инструмента, приложенном к запросу.

ПризнакНаправление проверки
Artifact input_schema и неверный patternЗатронутые версии Claude Code и версия с исправлением
Нет tool_result после tool_useПорядок сообщений и результатов инструментов
Неверная thinking signatureСохранность блоков thinking и совместимость провайдера
401 или 403Аутентификация и разрешения
429Лимиты, а не синтаксис схемы

Таблица помогает выбрать проверку, но не ставит диагноз. Сохраните полный обезличенный ответ и сравните путь поля с исходным сообщением. Не отключайте посторонние меры защиты и не переписывайте все схемы из-за одного отказа.

Узнайте версию реально работающего клиента

Начните с команды:

claude --version

Проверьте каждую среду: терминал, IDE и фоновый обработчик могут использовать разные установки. Обновите клиент обычным для вашей установки способом, перезапустите соответствующий процесс и снова проверьте версию.

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

Обновиться должен клиент, формирующий запрос. Изменение локальной установки в другом терминале не обновляет отдельно развёрнутый обработчик. Зафиксируйте, какой процесс отправил неудачный запрос и какой выполнил успешную повторную проверку.

Проверьте один запрос до перезапуска большой задачи

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

Затем проверьте нужный процесс с инструментами: обычный текстовый ответ не выполняет ту же последовательность вызовов. Сохраните версию, маршрут, время, обезличенную ошибку и ID запроса. Если актуальный клиент всё ещё получает отказ схемы, сравните путь поля в новой ошибке, не предполагая автоматически старую регрессию.

Статья основана на сообщении в исходном проекте и журнале выпусков. Она не заявляет о воспроизведении в рабочей среде Ofox или измеренной доле успехов на разных шлюзах.

Почему пометки «Anthropic-совместимый» недостаточно

Совместимость может охватывать аутентификацию, формат сообщений и потоковую передачу, но не все возможности JSON Schema. Описанная проблема касается обработки pattern во встроенном определении инструмента валидатором. Это не то же самое, что способность модели рассуждать о коде.

Не редактируйте сгенерированное регулярное выражение вслепую и не отключайте проверку в рабочей среде. Это может пропустить нежелательные значения или скрыть другую несовместимость. Предпочтителен исправленный клиент; оставшуюся проблему передайте провайдеру в минимальном примере без секретов.

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

Другие ошибки 400 требуют отдельных проверок

Инструкция по отсутствующему tool_result разбирает прерванные или неверно сформированные обмены с инструментами. Руководство по thinking signature касается других проблем сохранения сообщений. Не заменяйте эти объяснения схемой Artifact, если признаки ошибки не совпадают.

Полезное обращение в поддержку начинается с наблюдений: версия клиента, тип эндпоинта, отклонённое поле и точный ответ. Формулировка «Claude Code не работает» не отличает исправленную регрессию клиента от продолжающейся проблемы провайдера.

Часто задаваемые вопросы

В каком выпуске исправили регрессию pattern Artifact?
Официальный журнал указывает 2.1.268. Используйте поддерживаемый актуальный клиент, а не откатывайтесь к этому историческому выпуску.
Нужно заменить ключ API?
Ошибка проверки схемы не доказывает недействительность ключа. Проверяйте аутентификацию отдельно, если ответ указывает на неё. Замена ключа не является документированным исправлением этой регрессии.
Любой 400 на стороннем эндпоинте вызван Artifact?
Нет. Сопоставьте поле схемы, версию и текст ошибки. Порядок tool_result, неподдерживаемые параметры и подписи thinking проверяются отдельно.