SpyBara
Go Premium

Documentation 2026-11-01 23:57 UTC to 2026-11-02 23:57 UTC

42 files changed +674 −200. View all changes and history on the product overview
2026
Thu 12 23:02 Wed 11 22:59 Tue 10 21:57 Mon 9 23:02 Sun 8 22:58 Sat 7 23:58 Fri 6 23:01 Thu 5 23:03 Wed 4 23:59 Tue 3 23:58 Mon 2 23:57 Sun 1 23:57
Details

20>20>

21> Одно правило выставления счетов, которое моделирует SDK, — это [ценообразование на основе местоположения данных](https://platform.claude.com/docs/en/about-claude/pricing#data-residency-pricing). Когда `usage` ответа сообщает `inference_geo: "us"`, SDK умножает цену списка токенов этого ответа на 1,1. Плата за запрос, такая как веб-поиск, не умножается. Требуется TypeScript Agent SDK версии 0.3.239 или более поздней, либо Python Agent SDK версии 0.2.144 или более поздней.21> Одно правило выставления счетов, которое моделирует SDK, — это [ценообразование на основе местоположения данных](https://platform.claude.com/docs/en/about-claude/pricing#data-residency-pricing). Когда `usage` ответа сообщает `inference_geo: "us"`, SDK умножает цену списка токенов этого ответа на 1,1. Плата за запрос, такая как веб-поиск, не умножается. Требуется TypeScript Agent SDK версии 0.3.239 или более поздней, либо Python Agent SDK версии 0.2.144 или более поздней.

22>22>

23> Используйте эти поля для получения информации о разработке и приблизительного бюджетирования. Для авторитетного выставления счетов используйте [API использования и затрат](https://platform.claude.com/docs/en/build-with-claude/usage-cost-api) или страницу использования в [Claude Console](https://platform.claude.com/usage). Не выставляйте счета конечным пользователям и не принимайте финансовые решения на основе этих полей.23> Используйте эти поля для получения информации о разработке и приблизительного бюджетирования. Авторитетные данные биллинга см. в разделе [Управление затратами для вашей организации](https://code.claude.com/docs/ru/costs.md#manage-costs-for-your-organization). Не выставляйте счета конечным пользователям и не принимайте финансовые решения на основе этих полей.

24 24 

25## Понимание использования токенов25## Понимание использования токенов

26 26 

Details

52 52 

53Если ваше приложение объединяет Agent SDK вместе со своими собственными зависимостями, импортируйте из `@anthropic-ai/claude-agent-sdk/core` вместо корня пакета. Запись `/core` требует TypeScript Agent SDK версии 0.3.282 или позже, и её типы требуют TypeScript 5.0 или позже.53Если ваше приложение объединяет Agent SDK вместе со своими собственными зависимостями, импортируйте из `@anthropic-ai/claude-agent-sdk/core` вместо корня пакета. Запись `/core` требует TypeScript Agent SDK версии 0.3.282 или позже, и её типы требуют TypeScript 5.0 или позже.

54 54 

55Запись `/core` экспортирует то же самое `query()`, `startup()`, `tool()`, `createSdkMcpServer()` и `resolveSettings()`, что и корневая запись, вместе с функциями, которые переименовывают, помечают и удаляют сеансы, `AbortError`, константы времени выполнения и каждый тип. Она не добавляет имена своего собственного. Чтобы сохранить код, который загружает ваше приложение, небольшим, `/core` опускает некоторые корневые экспорты, включая `prewarm()`, класс `InMemorySessionStore` и вспомогательные функции, которые перечисляют, читают, разветвляют, импортируют и суммируют сеансы. Если вам нужна одна из них, используйте корневую запись вместо этого.55Чтобы код, который загружает ваше приложение, оставался небольшим, запись `/core` опускает некоторые корневые экспорты:

56 

57* **Экспортируется**: те же `query()`, `startup()`, [`prewarm()`](#prewarm), `tool()`, `createSdkMcpServer()` и `resolveSettings()`, что и в корневой записи, вместе с функциями, которые переименовывают, помечают и удаляют сессии, `AbortError`, константы времени выполнения и все типы. Импорт альфа-версии `prewarm()` из `/core` требует Agent SDK версии 0.3.314 или позже.

58* **Опущено**: корневые экспорты, включая класс `InMemorySessionStore` и вспомогательные функции, которые перечисляют, читают, разветвляют, импортируют и суммируют сессии. Если вам нужна одна из них, используйте корневую запись вместо этого.

56 59 

57Корневая запись встраивает свои собственные копии `zod` и `@modelcontextprotocol/sdk`. Запись `/core` импортирует их из вашего `node_modules` в диапазонах, которые объявляют `peerDependencies` Agent SDK, поэтому пакет, который уже их включает, не несёт вторую копию. Импортируйте либо из корня, либо из `/core` в данном процессе, но не из обоих: это отдельные пакеты, и загрузка обоих даёт вам две копии классов и состояния Agent SDK.60Корневая запись встраивает свои собственные копии `zod` и `@modelcontextprotocol/sdk`. Запись `/core` импортирует их из вашего `node_modules` в диапазонах, которые объявляют `peerDependencies` Agent SDK, поэтому пакет, который уже их включает, не несёт вторую копию. Импортируйте либо из корня, либо из `/core` в данном процессе, но не из обоих: это отдельные пакеты, и загрузка обоих даёт вам две копии классов и состояния Agent SDK.

58 61 


2002 2005 

2003* Возобновление, которое Claude Code останавливает, потому что [не может вернуть сессию в её worktree](https://code.claude.com/docs/ru/worktrees.md#the-session-resumes-outside-its-worktree), с `worktree_unverified` или `worktree_resume_refused`. В том разделе сказано, какая ошибка содержит какое значение.2006* Возобновление, которое Claude Code останавливает, потому что [не может вернуть сессию в её worktree](https://code.claude.com/docs/ru/worktrees.md#the-session-resumes-outside-its-worktree), с `worktree_unverified` или `worktree_resume_refused`. В том разделе сказано, какая ошибка содержит какое значение.

2004* Отклонённое [`continue`](#options) диалога, который удерживает фоновая сессия, с `session_held_by_background`. Для отклонённого [`resume`](#options) такого диалога Claude Code записывает результат, только когда переменная установлена.2007* Отклонённое [`continue`](#options) диалога, который удерживает фоновая сессия, с `session_held_by_background`. Для отклонённого [`resume`](#options) такого диалога Claude Code записывает результат, только когда переменная установлена.

2008* Запуск, который Claude Code отклоняет, потому что включён [`failIfUnavailable`](#sandboxsettings) и песочница не может запуститься, с `sandbox_required_unavailable`.

2009 

2010Тип `SDKStartupFailureReason` перечисляет значения, которые может принимать `startup_failure_reason`:

2005 2011 

2006```typescript theme={null}2012```typescript theme={null}

2007type SDKStartupFailureReason =2013type SDKStartupFailureReason =


2023 | "cli_version_too_old"2029 | "cli_version_too_old"

2024 | "bypass_root"2030 | "bypass_root"

2025 | "org_config_required_unavailable"2031 | "org_config_required_unavailable"

2026 | "org_config_refused";2032 | "org_config_refused"

2033 | "sandbox_required_unavailable";

2027```2034```

2028 2035 

2029Каждое значение называет один отказ:2036Каждое значение называет один отказ:


2049| `bypass_root` | Режим разрешений bypass был запрошен при работе от имени root |2056| `bypass_root` | Режим разрешений bypass был запрошен при работе от имени root |

2050| `org_config_required_unavailable` | Сессии для запуска нужны политики и управляемые настройки организации, а их не удалось загрузить, например из-за сетевого сбоя или ошибки сервера Anthropic. Требуется Agent SDK v0.3.293 или новее |2057| `org_config_required_unavailable` | Сессии для запуска нужны политики и управляемые настройки организации, а их не удалось загрузить, например из-за сетевого сбоя или ошибки сервера Anthropic. Требуется Agent SDK v0.3.293 или новее |

2051| `org_config_refused` | Anthropic отказался предоставить политики и управляемые настройки организации для этого входа, например потому что срок действия входа истёк или он был отозван, или организация не разрешает Claude Code для этой учётной записи. Требуется Agent SDK v0.3.293 или новее |2058| `org_config_refused` | Anthropic отказался предоставить политики и управляемые настройки организации для этого входа, например потому что срок действия входа истёк или он был отозван, или организация не разрешает Claude Code для этой учётной записи. Требуется Agent SDK v0.3.293 или новее |

2059| `sandbox_required_unavailable` | [`failIfUnavailable`](#sandboxsettings) включён, и песочница не может запуститься. Текст в `errors` заканчивается на `Set sandbox.failIfUnavailable=false to allow unsandboxed execution.` Требуется Agent SDK v0.3.314 или новее |

2052 2060 

2053### `SDKSystemMessage`2061### `SDKSystemMessage`

2054 2062 

Details

308 308 

309Когда Claude Code запускается с настроенным Amazon Bedrock, он проверяет, доступны ли модели, которые он намеревается использовать, в вашей учётной записи.309Когда Claude Code запускается с настроенным Amazon Bedrock, он проверяет, доступны ли модели, которые он намеревается использовать, в вашей учётной записи.

310 310 

311Если вы закрепили версию модели, которая старше текущего значения по умолчанию Claude Code, и ваша учётная запись может вызывать более новую версию, Claude Code предлагает вам обновить закрепление. Принятие записывает новый ID модели в ваш [файл пользовательских настроек](https://code.claude.com/docs/ru/settings.md) и перезапускает Claude Code. Отклонение запоминается до следующего изменения версии по умолчанию. Закрепления, указывающие на [ARN профиля вывода приложения](#map-each-model-version-to-an-inference-profile), пропускаются, так как они управляются вашим администратором.311Возможно, вы закрепили версию модели, которая старше текущего значения по умолчанию Claude Code. Если ваша учётная запись может вызывать более новую версию, Claude Code предлагает вам обновить закрепление. Принятие записывает новый ID модели в ваш [файл пользовательских настроек](https://code.claude.com/docs/ru/settings.md) и перезапускает Claude Code. Отклонение запоминается до следующего изменения версии по умолчанию.

312 

313Claude Code не проверяет следующие закрепления и не предлагает их обновить:

314 

315* Закрепление в блоке `env` [управляемых настроек](https://code.claude.com/docs/ru/managed-settings.md)

316* Закрепление, указывающее на [ARN профиля вывода приложения](#map-each-model-version-to-an-inference-profile), так как им управляет ваш администратор

312 317 

313Если вы не закрепили модель и текущее значение по умолчанию недоступно в вашей учётной записи, Claude Code переходит на резервный вариант для текущей сессии и показывает уведомление. Сначала он пытается использовать более ранние версии модели по умолчанию и, когда моделью по умолчанию является модель Opus и ни одна версия Opus недоступна, переходит на модель Sonnet по умолчанию. Резервный вариант не сохраняется. Включите более новую модель в вашей учётной записи Amazon Bedrock или [закрепите версию](#4-pin-model-versions), чтобы сделать выбор постоянным.318Если вы не закрепили модель и текущее значение по умолчанию недоступно в вашей учётной записи, Claude Code переходит на резервный вариант для текущей сессии и показывает уведомление. Сначала он пытается использовать более ранние версии модели по умолчанию и, когда моделью по умолчанию является модель Opus и ни одна версия Opus недоступна, переходит на модель Sonnet по умолчанию. Резервный вариант не сохраняется. Включите более новую модель в вашей учётной записи Amazon Bedrock или [закрепите версию](#4-pin-model-versions), чтобы сделать выбор постоянным.

314 319 

315Когда вы запускаете сессию на конкретной версии Sonnet или Opus, например с помощью `--model`, `ANTHROPIC_MODEL` или параметра [`model`](https://code.claude.com/docs/ru/settings-reference#model), эта версия действует как закреплённое значение по умолчанию сессии для соответствующего псевдонима `sonnet` или `opus`. Claude Code пропускает проверку доступности встроенного значения по умолчанию, которое заменяет ваша модель, и запускается на настроенной вами модели без уведомления о резервном варианте.320Когда вы запускаете сессию на конкретной версии Sonnet или Opus, например с помощью `--model`, `ANTHROPIC_MODEL` или параметра [`model`](https://code.claude.com/docs/ru/settings-reference#model), эта версия действует как закреплённое значение по умолчанию сессии для соответствующего псевдонима `sonnet` или `opus`. Claude Code пропускает проверку доступности встроенного значения по умолчанию, которое заменяет ваша модель, и запускается на настроенной вами модели без уведомления о резервном варианте.

316 321 

317Псевдонимы моделей, такие как `opus`, не действуют как закрепления, и также не действует ID модели, который Claude Code не распознаёт, например ARN профиля вывода приложения.322Следующие варианты не действуют как закрепления, когда вы запускаете на них сессию:

323 

324* Псевдоним модели, например `opus`

325* ID модели, который Claude Code не распознаёт, например ARN профиля вывода приложения

318 326 

319Когда эти проверки находят модель, которую ваша учётная запись не может вызвать, Claude Code запоминает отказ на этом компьютере на срок до одного дня, и при запуске в течение этого времени пропускает запомненную модель без повторного обращения к Amazon Bedrock. Claude Code проверяет запомненный отказ текущей модели по умолчанию снова при запуске один раз через десять минут после последней проверки, поэтому значение по умолчанию, которое ваш администратор повторно включит, вернётся. Чтобы отключить память, установите [`CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY=1`](https://code.claude.com/docs/ru/env-vars).327Когда эти проверки находят модель, которую ваша учётная запись не может вызвать, Claude Code запоминает отказ на этом компьютере на срок до одного дня, и при запуске в течение этого времени пропускает запомненную модель без повторного обращения к Amazon Bedrock. Claude Code проверяет запомненный отказ текущей модели по умолчанию снова при запуске один раз через десять минут после последней проверки, поэтому значение по умолчанию, которое ваш администратор повторно включит, вернётся. Чтобы отключить память, установите [`CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY=1`](https://code.claude.com/docs/ru/env-vars).

320 328 

analytics.md +10 −10

Details

77* **Lines of code with CC**: общее количество строк кода во всех объединённых PR, написанных с помощью Claude Code. Подсчитываются только "эффективные строки": строки с более чем 3 символами после нормализации, исключая пустые строки и строки только со скобками или тривиальной пунктуацией.77* **Lines of code with CC**: общее количество строк кода во всех объединённых PR, написанных с помощью Claude Code. Подсчитываются только "эффективные строки": строки с более чем 3 символами после нормализации, исключая пустые строки и строки только со скобками или тривиальной пунктуацией.

78* **PRs with Claude Code (%)**: процент всех объединённых PR, содержащих код, написанный с помощью Claude Code78* **PRs with Claude Code (%)**: процент всех объединённых PR, содержащих код, написанный с помощью Claude Code

79* **Suggestion accept rate**: процент случаев, когда пользователи принимают предложения Claude Code по редактированию кода, включая использование инструментов Edit, Write и NotebookEdit79* **Suggestion accept rate**: процент случаев, когда пользователи принимают предложения Claude Code по редактированию кода, включая использование инструментов Edit, Write и NotebookEdit

80* **Lines of code accepted**: общее количество строк кода, написанных Claude Code, которые пользователи приняли в своих сеансах. Это исключает отклонённые предложения и не отслеживает последующие удаления.80* **Lines of code accepted**: общее количество строк кода, которые инструменты Edit и Write в Claude Code добавили или удалили в принятых правках. Это исключает отклонённые предложения, а строки, удалённые позже, не уменьшают итоговое значение.

81 81 

82### Изучение диаграмм82### Изучение диаграмм

83 83 


192 192 

193## Доступ к аналитике для клиентов API193## Доступ к аналитике для клиентов API

194 194 

195Клиенты API, использующие Claude Console, могут получить доступ к аналитике на [platform.claude.com/claude-code](https://platform.claude.com/claude-code). Вам нужно разрешение UsageView для доступа к панели, которое предоставляется ролям Developer, Billing, Admin, Owner и Primary Owner. Для получения тех же ежедневных метрик на пользователя программным способом используйте [Claude Code Analytics API](https://platform.claude.com/docs/en/build-with-claude/claude-code-analytics-api) с ключом Admin API.195Клиенты API, использующие Claude Console, могут получить доступ к аналитике на [platform.claude.com/claude-code](https://platform.claude.com/claude-code). Для доступа к панели вам нужно разрешение UsageView. Это разрешение есть у ролей Developer, Billing, Admin, Owner и Primary Owner. Для получения ежедневных метрик на пользователя программным способом используйте [Claude Code Analytics API](https://platform.claude.com/docs/en/build-with-claude/claude-code-analytics-api) с Admin API-ключом.

196 196 

197> [!NOTE]197> [!NOTE]

198>198>


200 200 

201Панель Console отображает:201Панель Console отображает:

202 202 

203* **Lines of code accepted**: общее количество строк кода, написанных Claude Code, которые пользователи приняли в своих сеансах. Это исключает отклонённые предложения и не отслеживает последующие удаления.203* **Lines of code accepted**: общее количество строк кода, добавленных или удалённых инструментами Edit и Write в Claude Code в рамках принятых правок. Это исключает отклонённые предложения, а строки, удалённые позже, не уменьшают итоговое значение.

204* **Suggestion accept rate**: процент случаев, когда пользователи принимают использование инструмента редактирования кода, включая инструменты Edit, Write и NotebookEdit.204* **Suggestion accept rate**: процент случаев, когда пользователи принимают использование инструмента редактирования кода, включая инструменты Edit, Write и NotebookEdit.

205* **Activity**: ежедневные активные пользователи и сеансы, показанные на диаграмме.205* **Active users** и **Sessions**: ежедневное количество активных пользователей и сессий Claude Code.

206* **Spend**: ежедневные затраты API в долларах наряду с количеством пользователей.206* **Spend**: ежедневные затраты API в долларах.

207 207 

208### Просмотр аналитики команды208### Просмотр аналитики команды

209 209 

210Таблица аналитики команды показывает метрики для каждого пользователя:210Таблица аналитики команды показывает следующие столбцы для каждого пользователя за диапазон дат, выбранный в верхней части панели (по умолчанию последние 30 дней):

211 211 

212* **Members**: все пользователи, которые прошли аутентификацию в Claude Code. Пользователи API-ключей отображаются по идентификатору ключа, пользователи OAuth отображаются по адресу электронной почты.212* **Members**: пользователи и API-ключи, для которых зафиксировано использование Claude Code в этом диапазоне. Пользователи API-ключей отображаются по имени ключа, пользователи OAuth — по адресу электронной почты.

213* **Spend this month**: общие затраты API для каждого пользователя за текущий месяц.213* **Spend**: общие затраты API для каждого пользователя.

214* **Lines this month**: общее количество принятых строк кода для каждого пользователя за текущий месяц.214* **Lines accepted**: общее количество строк для каждого пользователя, добавленных или удалённых инструментами Edit и Write в рамках принятых правок.

215 215 

216> [!NOTE]216> [!NOTE]

217>217>

218> Цифры расходов на панели Console являются оценками в целях аналитики. Для фактических затрат обратитесь на страницу выставления счётов.218> Цифры расходов на панели Console являются оценками в целях аналитики. Для фактических затрат обратитесь к [странице Cost](https://platform.claude.com/cost).

219 219 

220## Связанные ресурсы220## Связанные ресурсы

221 221 

Details

355 355 

356## Проверка отклонённых действий356## Проверка отклонённых действий

357 357 

358Чтобы просмотреть и повторить действия, которые классификатор автоматического режима отклонил, откройте `/permissions` и выберите вкладку **Recently denied**, где Claude Code записывает каждое отклонение. Нажмите `r` на отклонённом действии, чтобы отметить его для повтора: когда вы закроете диалог, Claude Code отправит сообщение, сообщающее модели, что она может повторить этот вызов инструмента, и возобновит разговор.358Чтобы позволить Claude повторить попытку заблокированного действия, используйте вкладку **Recently blocked** в `/permissions`:

359 359 

360Когда классификатор выдаёт [отсутствие вердикта по действию](https://code.claude.com/docs/ru/errors.md#auto-mode-cannot-determine-the-safety-of-an-action), потому что проверка безопасности, отдельная от автоматического режима, отклонила собственный запрос классификатора или его ответ не был распарсен, Claude Code отклоняет действие без записи его в **Recently denied**. Связанная запись об ошибке описывает, что сообщается Claude, и как запустить действие, если оно вам нужно.360**1. Откройте вкладку**

361 

362Выполните `/permissions` в своей сессии, чтобы открыть диалоговое окно разрешений, затем выберите вкладку **Recently blocked**.

363 

364**2. Проверьте действие**

365 

366Выделите строку действия и прочитайте его команду или ввод под списком. Ориентируйтесь на команду или ввод, а не на описание строки, которое написал Claude или инструмент.

367 

368**3. Подтвердите действие**

369 

370Нажмите `r`, чтобы подтвердить действие и позволить Claude повторить попытку.

371 

372**4. Закройте диалоговое окно**

373 

374Нажмите `Esc`, чтобы закрыть диалоговое окно и применить подтверждение. Если Claude работал, когда вы открыли `/permissions`, отправьте сообщение после того, как Claude закончит, чтобы Claude повторил попытку действия. В противном случае ничего отправлять не нужно: Claude сразу продолжит работу и может повторить попытку. Если он этого не сделает, назовите действие в следующем сообщении, как описано в разделе [Подтверждения, которые вы даёте в диалоге](https://code.claude.com/docs/ru/permission-modes.md#approvals-you-state-in-conversation).

375 

376Подтверждение действия не добавляет правило разрешений. В авторежиме повторная попытка действия снова проходит проверку, поэтому оно может быть снова заблокировано. Чтобы пропускать команду и в дальнейшем, [добавьте правило `allow`](#fix-a-denial-with-an-allow-rule-an-environment-entry-or-a-retry).

377 

378Если вы не хотите, чтобы Claude сразу повторил попытку, вы можете подтвердить действие на потом, отозвать подтверждение или закрыть диалоговое окно, отменив подтверждения:

379 

380* **Подтвердить на потом**: нажмите `Enter` на строке, затем `Esc`. Строка исчезнет с вкладки, и Claude сможет повторить попытку действия после вашего следующего сообщения, когда закончит работу. Если вы также нажали `r` на другой строке, строка, на которой вы нажали `Enter`, останется на вкладке, и Claude не будет сообщено об этом действии. Подтвердите эту строку при следующем посещении или нажмите `r` на обеих

381* **Отозвать подтверждение**: до нажатия `Esc` нажмите `Enter` на строке, независимо от того, подтвердили вы её с помощью `Enter` или `r`

382* **Закрыть диалоговое окно и отменить подтверждения**: дважды нажмите `Ctrl+C`

383 

384Подтвердить действие на вкладке нельзя, если его строка не может показать всю команду или ввод или если у действия нет строки:

385 

386* **В строке написано `This row can't be approved here`**: если вы действительно хотели выполнить это действие, скажите об этом Claude в следующем сообщении, и Claude может попробовать снова

387* **Строки нет, а в диалоге есть `Not run` или ошибка классификатора**: классификатор авторежима не вынес вердикта. Чтобы узнать, как выполнить действие, прочитайте [Auto mode cannot determine the safety of an action](https://code.claude.com/docs/ru/errors.md#auto-mode-cannot-determine-the-safety-of-an-action)

361 388 

362### Исправить отклонение с помощью правила allow, записи окружения или повтора389### Исправить отклонение с помощью правила allow, записи окружения или повтора

363 390 

364Чтобы увидеть команду или URL, стоящие за уведомлением, таким как `bash denied by auto mode · [Data Exfiltration] · /permissions`, используйте вкладку **Recently denied**, хук или диалог:391Уведомления выглядят как `bash blocked by auto mode · /permissions · Auto mode: [Data Exfiltration]`. Чтобы увидеть команду или URL, стоящие за уведомлением, используйте вкладку **Recently blocked**, хук или диалог:

365 392 

366* **Вкладка Recently denied**: в диалоговом окне `/permissions` выделите отклонённое действие Bash или PowerShell, чтобы прочитать его команду под списком. В [режиме экранного диктора](https://code.claude.com/docs/ru/accessibility.md) все команды вместо этого отображаются перед списком.393* **Вкладка Recently blocked**: выделите строку действия. В [режиме экранного диктора](https://code.claude.com/docs/ru/accessibility.md) все команды и вводы отображаются перед списком.

367* **Хук**: чтобы программно захватить точный ввод отклонений, добавьте [хук `PermissionDenied`](https://code.claude.com/docs/ru/hooks#permissiondenied), который получает его как `tool_input`.394* **Хук**: чтобы программно захватить точный ввод отклонений, добавьте [хук `PermissionDenied`](https://code.claude.com/docs/ru/hooks#permissiondenied), который получает его как `tool_input`. Если ваш хук читает `reason`, учитывайте, что префикса `Auto mode:` не будет, а вместо `No reason provided` будет текст, например `Blocked by classifier`.

368* **Диалог**: найдите вызов инструмента. Если вызов отображается сокращённым или свёрнутым в строку сводки, такую как `Ran 3 shell commands`, нажмите `Ctrl+O`, чтобы открыть [средство просмотра транскрипта](https://code.claude.com/docs/ru/interactive-mode.md#transcript-viewer), которое его развернёт.395* **Диалог**: найдите вызов инструмента. Если вызов отображается сокращённым или свёрнутым в строку сводки, такую как `Ran 3 shell commands`, нажмите `Ctrl+O`, чтобы открыть [средство просмотра транскрипта](https://code.claude.com/docs/ru/interactive-mode.md#transcript-viewer), которое его развернёт.

369 396 

370Текст под вызовом говорит вам, есть ли что-то для исправления. Тусклая строка `Not run · auto mode's check had no usable answer` или текст, который сообщает о проблеме с самим классификатором, такой как `Auto mode could not evaluate this action`, означает, что Claude Code заблокировал вызов без вердикта от классификатора. Для строки `Not run` нажмите `Ctrl+O`, чтобы прочитать полное сообщение, затем см. [Auto mode cannot determine the safety of an action](https://code.claude.com/docs/ru/errors.md#auto-mode-cannot-determine-the-safety-of-an-action) или [The server returned no safety verdict](https://code.claude.com/docs/ru/errors.md#the-server-returned-no-safety-verdict), чтобы узнать, что делать.397Текст под вызовом говорит вам, есть ли что-то для исправления. Тусклая строка `Not run · auto mode's check had no usable answer` или текст, который сообщает о проблеме с самим классификатором, такой как `Auto mode could not evaluate this action`, означает, что Claude Code заблокировал вызов без вердикта от классификатора. Для строки `Not run` нажмите `Ctrl+O`, чтобы прочитать полное сообщение, затем см. [Auto mode cannot determine the safety of an action](https://code.claude.com/docs/ru/errors.md#auto-mode-cannot-determine-the-safety-of-an-action) или [The server returned no safety verdict](https://code.claude.com/docs/ru/errors.md#the-server-returned-no-safety-verdict), чтобы узнать, что делать.

371 398 

372В противном случае строка `Denied by auto mode classifier` с причиной, такой как `[Production Deploy]` или `Blocked by classifier`, означает, что классификатор посчитал вызов небезопасным, поэтому выберите исправление исходя из того, к чему вызов пытался обратиться или что пытался сделать:399В противном случае строка `Blocked by auto mode` означает, что классификатор посчитал вызов небезопасным. Чтобы пропустить вызов, выполните шаг, соответствующий тому, к чему Claude пытался обратиться или что пытался сделать:

373 400 

374* Пункт назначения, который Claude нужен на протяжении всей задачи, такой как реестр пакетов, внутренний домен или хост репозитория: добавьте его в `autoMode.environment`.401* Пункт назначения, который Claude нужен на протяжении всей задачи, такой как реестр пакетов, внутренний домен или хост репозитория: добавьте его в `autoMode.environment`.

375* Команда, которую вы хотите запустить без проверки с этого момента: добавьте правило `allow`.402* Команда, которую вы хотите запустить без проверки с этого момента: добавьте правило `allow`.

Details

397* Отправка конфиденциальных данных на внешние эндпоинты397* Отправка конфиденциальных данных на внешние эндпоинты

398* Действия, которые выглядят так, будто ими управляет контент, прочитанный Claude, а не вы398* Действия, которые выглядят так, будто ими управляет контент, прочитанный Claude, а не вы

399 399 

400Когда он всё же что-то блокирует, вы получаете уведомление, а действие появляется в разделе **Recently denied** в `/permissions`, где его можно повторить с ручным подтверждением. После [трёх блокировок подряд](https://code.claude.com/docs/ru/permission-modes.md#when-auto-mode-falls-back) (или двадцати в сумме) авторежим приостанавливается и снова начинает спрашивать вас.400Когда авторежим блокирует действие, вы получаете уведомление, а действие появляется в разделе **Recently blocked** в `/permissions`, где вы можете [подтвердить действие, чтобы Claude мог повторить попытку](https://code.claude.com/docs/ru/auto-mode-config.md#review-denials). После [трёх блокировок подряд](https://code.claude.com/docs/ru/permission-modes.md#when-auto-mode-falls-back) (или двадцати в сумме) авторежим приостанавливается и снова начинает спрашивать вас.

401 401 

402Ничто из этого не заменяет ваши детерминированные механизмы, потому что классификатор работает *после* них. Правила deny и ask, а также хуки `PreToolUse` применяются до того, как классификатор что-либо увидит, поэтому правило deny блокирует в авторежиме точно так же, как и везде. Песочница по-прежнему ограничивает [shell-команды, которые она оборачивает](https://code.claude.com/docs/ru/sandboxing.md#what-runs-outside-the-sandbox).402Ничто из этого не заменяет ваши детерминированные механизмы, потому что классификатор работает *после* них. Правила deny и ask, а также хуки `PreToolUse` применяются до того, как классификатор что-либо увидит, поэтому правило deny блокирует в авторежиме точно так же, как и везде. Песочница по-прежнему ограничивает [shell-команды, которые она оборачивает](https://code.claude.com/docs/ru/sandboxing.md#what-runs-outside-the-sandbox).

403 403 

Details

30[Обзор шлюза](https://code.claude.com/docs/ru/gateways.md) охватывает, что делает шлюз и почему вы бы его запустили. Claude apps gateway — это собственный шлюз Anthropic, встроенный в двоичный файл `claude` и протестированный вместе с каждым выпуском Claude Code, поэтому он пересылает значения `anthropic-beta` и поля запроса, которые отправляет Claude Code, без того, чтобы операторы поддерживали отдельный список разрешённых значений. После развёртывания он даёт вам:30[Обзор шлюза](https://code.claude.com/docs/ru/gateways.md) охватывает, что делает шлюз и почему вы бы его запустили. Claude apps gateway — это собственный шлюз Anthropic, встроенный в двоичный файл `claude` и протестированный вместе с каждым выпуском Claude Code, поэтому он пересылает значения `anthropic-beta` и поля запроса, которые отправляет Claude Code, без того, чтобы операторы поддерживали отдельный список разрешённых значений. После развёртывания он даёт вам:

31 31 

32* **Учётные данные**: ключ API вышестоящего уровня или учётные данные облака существуют только в вашей инфраструктуре. Разработчики аутентифицируются с помощью корпоративного SSO и получают краткосрочные токены-носители, поэтому отключение происходит в вашем IdP. Отключите пользователя, и его доступ к шлюзу истекает в течение времени жизни сеанса, по умолчанию один час.32* **Учётные данные**: ключ API вышестоящего уровня или учётные данные облака существуют только в вашей инфраструктуре. Разработчики аутентифицируются с помощью корпоративного SSO и получают краткосрочные токены-носители, поэтому отключение происходит в вашем IdP. Отключите пользователя, и его доступ к шлюзу истекает в течение времени жизни сеанса, по умолчанию один час.

33* **Контроль доступа**: ваши группы IdP сопоставляются со списками разрешённых моделей и политиками [управляемых параметров](https://code.claude.com/docs/ru/managed-settings.md). Шлюз обеспечивает доступ к модели на стороне сервера, отклоняя запросы для неразрешённых моделей, и выбирает политику управляемых параметров каждой группы, которую CLI применяет на [уровне управляемых параметров](https://code.claude.com/docs/ru/settings.md#settings-precedence). Разные команды получают разные модели, инструменты и разрешения, и разработчик не может переопределить то, что его политика блокирует.33* **Контроль доступа**: ваши группы IdP сопоставляются со списками разрешённых моделей, политиками [управляемых настроек](https://code.claude.com/docs/ru/managed-settings.md) и [вышестоящими сервисами](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#send-each-team-to-its-own-upstream). Шлюз обеспечивает доступ к модели на стороне сервера, отклоняя запросы для неразрешённых моделей, и выбирает политику управляемых настроек каждой группы, которую CLI применяет на [уровне управляемых настроек](https://code.claude.com/docs/ru/settings.md#settings-precedence). Разные команды получают разные модели, инструменты и разрешения, и разработчик не может переопределить то, что его политика блокирует.

34* **Доставка параметров**: шлюз доставляет управляемые параметры подписанным клиентам сам, занимая место [параметров, управляемых сервером](https://code.claude.com/docs/ru/server-managed-settings.md) из консоли администратора claude.ai.34* **Доставка параметров**: шлюз доставляет управляемые параметры подписанным клиентам сам, занимая место [параметров, управляемых сервером](https://code.claude.com/docs/ru/server-managed-settings.md) из консоли администратора claude.ai.

35* **Телеметрия**: каждое настроенное назначение получает [метрики OpenTelemetry Protocol (OTLP)](https://code.claude.com/docs/ru/monitoring-usage.md) с подсчётом токенов, моделью, идентификацией пользователя и задержкой по умолчанию, с журналами и трассировками как дополнительные параметры для каждого назначения.35* **Телеметрия**: каждое настроенное назначение получает [метрики OpenTelemetry Protocol (OTLP)](https://code.claude.com/docs/ru/monitoring-usage.md) с подсчётом токенов, моделью, идентификацией пользователя и задержкой по умолчанию, с журналами и трассировками как дополнительные параметры для каждого назначения.

36* **Маршрутизация вышестоящего уровня**: клиенты говорят API Anthropic Messages с шлюзом, и шлюз переводит для каждого вышестоящего уровня, будь то Amazon Bedrock, [Claude Platform on AWS](https://code.claude.com/docs/ru/claude-platform-on-aws.md), Agent Platform Google Cloud, Microsoft Foundry или API Anthropic, с отказоустойчивостью между ними. Вы можете менять регионы, поставщиков или порядок отказоустойчивости без того, чтобы разработчики замечали или переконфигурировали.36* **Маршрутизация вышестоящего уровня**: клиенты говорят API Anthropic Messages с шлюзом, и шлюз переводит для каждого вышестоящего уровня, будь то Amazon Bedrock, [Claude Platform on AWS](https://code.claude.com/docs/ru/claude-platform-on-aws.md), Agent Platform Google Cloud, Microsoft Foundry или API Anthropic, с отказоустойчивостью между ними. Вы можете менять регионы, поставщиков или порядок отказоустойчивости без того, чтобы разработчики замечали или переконфигурировали.

Details

214 214 

215### `upstreams`215### `upstreams`

216 216 

217`upstreams` — это упорядоченный список. Шлюз направляет запросы инференса первому upstream, который разрешает запрошенную модель.217`upstreams` — упорядоченный список. Шлюз перенаправляет инференс на первый вышестоящий сервер, который разрешает запрошенную модель, пропуская любой вышестоящий сервер, [список `groups`](#send-each-team-to-its-own-upstream) которого не включает разработчика.

218 218 

219При `5xx`, `429`, `401`, `403`, `404` или таймауте шлюз переключается на следующий upstream; при других `4xx` — нет, потому что такие ошибки связаны с запросом, а не с upstream. `401` или `403` означает, что upstream отклонил учётные данные, которые использовал шлюз, или отказал ему в доступе, например к запрошенной модели. `404` означает, что этот upstream не обслуживает запрошенную модель, поэтому её может обслужить следующий upstream в списке.219При `5xx`, `429`, `401`, `403`, `404` или таймауте шлюз переключается на следующий upstream; при других `4xx` — нет, потому что такие ошибки связаны с запросом, а не с upstream. `401` или `403` означает, что upstream отклонил учётные данные, которые использовал шлюз, или отказал ему в доступе, например к запрошенной модели. `404` означает, что этот upstream не обслуживает запрошенную модель, поэтому её может обслужить следующий upstream в списке.

220 220 


231В зависимости от того, как ответили upstream, шлюз возвращает ответ с ошибкой от одного из них или собственный `502`:231В зависимости от того, как ответили upstream, шлюз возвращает ответ с ошибкой от одного из них или собственный `502`:

232 232 

233* **Upstream вернул статус, при котором шлюз не [переключается](#multiple-upstreams)**: ответ этого upstream. Другие upstream шлюз больше не пробует.233* **Upstream вернул статус, при котором шлюз не [переключается](#multiple-upstreams)**: ответ этого upstream. Другие upstream шлюз больше не пробует.

234* **Каждый опробованный upstream завершился ошибкой, при которой шлюз [переключается](#multiple-upstreams)**: последний `429`. Если ни один не вернул `429`, шлюз выбирает, в порядке предпочтения, последний `401` или `403`, последний `404` и последний `501`. Если ни один не вернул ничего из этого — собственный `502` шлюза, `all upstreams failed (N attempted)`, где N — число всех записей в [`upstreams`](#upstreams), включая те, которые шлюз пропустил, потому что они не обслуживают запрошенную модель.234* **Все вышестоящие серверы, которые пробовал шлюз, завершились ошибкой, при которой он [переключается](#multiple-upstreams)**: последний `429`. Если ни один не вернул `429`, шлюз предпочитает по порядку последний `401` или `403`, последний `404` и последний `501`. Если ни один не вернул ничего из этого — собственный `502` шлюза, `all upstreams failed (N attempted)`. N — это число ваших записей [`upstreams`](#upstreams), включая пропущенные, за вычетом тех, [список `groups`](#send-each-team-to-its-own-upstream) которых не включает разработчика.

235 235 

236Возвращая ответ upstream, шлюз сохраняет его код статуса. Сохраняется ли сообщение upstream, зависит от поставщика. Тело ошибки от upstream Anthropic API доходит до разработчика без изменений.236Возвращая ответ upstream, шлюз сохраняет его код статуса. Сохраняется ли сообщение upstream, зависит от поставщика. Тело ошибки от upstream Anthropic API доходит до разработчика без изменений.

237 237 


289 base_url: https://upstream-gateway.internal.example.com289 base_url: https://upstream-gateway.internal.example.com

290 auth:290 auth:

291 api_key: ${PROXY_KEY}291 api_key: ${PROXY_KEY}

292 forward_user_identity: true # по умолчанию false292 forward_user_identity: true # default false

293```293```

294 294 

295Шлюз добавляет эти заголовки к каждому запросу, который направляет этому upstream.295Шлюз добавляет эти заголовки к каждому запросу, который направляет этому upstream.


320upstreams:320upstreams:

321 - provider: bedrock321 - provider: bedrock

322 region: us-east-1322 region: us-east-1

323 auth: {} # предпочтительно: цепочка учётных данных AWS по умолчанию323 auth: {} # preferred: AWS default credential chain

324 # ИЛИ явные учётные данные:324 # OR explicit credentials:

325 # auth:325 # auth:

326 # aws_access_key_id: ${AWS_AKID}326 # aws_access_key_id: ${AWS_AKID}

327 # aws_secret_access_key: ${AWS_SK}327 # aws_secret_access_key: ${AWS_SK}

328 # aws_session_token: ${AWS_ST}328 # aws_session_token: ${AWS_ST}

329 # ИЛИ Bearer-токен Bedrock API:329 # OR a Bedrock API bearer token:

330 # auth:330 # auth:

331 # aws_bearer_token: ${AWS_BEARER_TOKEN}331 # aws_bearer_token: ${AWS_BEARER_TOKEN}

332 # Переопределите эндпоинт bedrock-runtime для развёртываний с FIPS или VPC-эндпоинтом:332 # Override the bedrock-runtime endpoint for FIPS or VPC-endpoint deployments:

333 # base_url: https://bedrock-runtime-fips.us-east-1.amazonaws.com333 # base_url: https://bedrock-runtime-fips.us-east-1.amazonaws.com

334```334```

335 335 


356 region: us-east-1356 region: us-east-1

357 auth: {}357 auth: {}

358 guardrail:358 guardrail:

359 id: gr-abc123 # ID guardrail или полный ARN359 id: gr-abc123 # guardrail ID or full ARN

360 version: "1" # номер опубликованной версии или DRAFT360 version: "1" # a published version number, or DRAFT

361 # сохраните кавычки: 1 без кавычек вызывает ошибку при загрузке361 # keep the quotes: a bare 1 fails at boot

362```362```

363 363 

364> [!WARNING]

365>

366> Шлюз не поддерживает входные теги guardrail. Он не добавляет теги содержимого guard в промпты, поэтому фильтр guardrail, который Amazon Bedrock применяет только к помеченному входу, не срабатывает для трафика через шлюз. Какие фильтры зависят от входных тегов, см. в разделе [input tags](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-tagging.html) документации Amazon Bedrock.

367 

368Также предоставьте `bedrock:ApplyGuardrail` на этот guardrail принципалу, который подписывает запросы этого upstream: принципалу AWS шлюза или, при использовании [`assume_role`](#bedrock-in-another-aws-account), роли, указанной в `role_arn`.364Также предоставьте `bedrock:ApplyGuardrail` на этот guardrail принципалу, который подписывает запросы этого upstream: принципалу AWS шлюза или, при использовании [`assume_role`](#bedrock-in-another-aws-account), роли, указанной в `role_arn`.

369 365 

370Задайте `guardrail` либо для каждого upstream `bedrock`, либо ни для одного. При смешанной конфигурации шлюз отказывается запускаться, потому что иначе [переключение](#multiple-upstreams) могло бы отправить запрос в upstream Bedrock без guardrail.366Задайте `guardrail` либо для каждого upstream `bedrock`, либо ни для одного. При смешанной конфигурации шлюз отказывается запускаться, потому что иначе [переключение](#multiple-upstreams) могло бы отправить запрос в upstream Bedrock без guardrail.


373 369 

374Когда запрос `/v1/messages`, тело которого содержит поле `amazon-bedrock-*`, например `amazon-bedrock-guardrailConfig`, попадает в upstream Bedrock с заданным `guardrail`, шлюз отвечает 400 вместо того, чтобы переслать его.370Когда запрос `/v1/messages`, тело которого содержит поле `amazon-bedrock-*`, например `amazon-bedrock-guardrailConfig`, попадает в upstream Bedrock с заданным `guardrail`, шлюз отвечает 400 вместо того, чтобы переслать его.

375 371 

372> [!WARNING]

373>

374> По умолчанию шлюз не добавляет к промптам входные теги, поэтому фильтр guardrail, который Amazon Bedrock применяет только к помеченному вводу, не срабатывает на трафике через шлюз. Чтобы добавлять теги, задайте [`input_tagging`](#add-guardrail-input-tags). О том, какие фильтры зависят от входных тегов, см. [входные теги](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-tagging.html) в документации Amazon Bedrock.

375 

376##### Добавление входных тегов guardrail

377 

378Чтобы шлюз добавлял входные теги, которые нужны [фильтру атак на промпты](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-prompt-attack.html) guardrail Amazon Bedrock, задайте `input_tagging` в блоке `guardrail` и перезапустите шлюз. Задайте одно и то же значение на каждом вышестоящем сервере `bedrock`, иначе шлюз не запустится. Требуется Claude Code v2.1.316 или новее на сервере шлюза. Шлюз версии, в которой нет этого ключа, завершается при запуске с ошибкой `Unrecognized key(s) in object: 'input_tagging'`.

379 

380> [!WARNING]

381>

382> Согласно [документации Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-tagging.html), как только запрос содержит входные теги, каждый фильтр в guardrail перестаёт оценивать непомеченное содержимое. Опробуйте `input_tagging` на тестовом шлюзе, прежде чем задавать его на шлюзе, которым пользуются разработчики.

383 

384`input_tagging` принимает одно из следующих значений:

385 

386| `input_tagging` | Где шлюз помечает текст | После того как guardrail заблокировал промпт |

387| :- | :- | :- |

388| `last_message` | Сообщения `user` после последнего ответа Claude | В Claude Code следующий промпт может пройти, и тогда Claude получит заблокированный промпт как часть диалога |

389| `user_messages` | Сообщения `user` | Последующие промпты в сессии тоже могут блокироваться, пока разработчик не удалит заблокированный промпт |

390| `all_messages` | Сообщения `user` и `assistant` | Так же, как при `user_messages` |

391| `all_messages_and_system` | Системный промпт и каждое сообщение, включая [системные сообщения посреди диалога](https://code.claude.com/docs/ru/llm-gateway-protocol.md#feature-pass-through) | Так же, как при `user_messages` |

392 

393При `last_message`, если в сообщениях `user` после последнего ответа Claude нет текста для пометки, шлюз вместо этого помечает системные сообщения посреди диалога, появившиеся после этого ответа. Вызов инструмента считается ответом.

394 

395Рекомендация Amazon Bedrock для фильтра атак на промпты — [помечать пользовательский ввод так, чтобы системный промпт был исключён](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-prompt-attack.html). Если вы зададите `all_messages_and_system`, фильтр, срабатывающий на собственный системный промпт Claude Code, может блокировать запросы.

396 

397В примере ниже помечается текст в каждом сообщении `user`:

398 

399```yaml theme={null}

400upstreams:

401 - provider: bedrock

402 region: us-east-1

403 auth: {}

404 guardrail:

405 id: gr-abc123

406 version: "1"

407 input_tagging: user_messages

408```

409 

410Сообщения `user` могут также содержать текст, который добавляет Claude Code, например [системные напоминания](https://code.claude.com/docs/ru/glossary.md#system-reminder), поэтому проверьте на тестовом шлюзе, что обычные запросы не блокируются.

411 

412В тестах Anthropic помеченная сессия сохраняла чтение из [кэша промптов](https://code.claude.com/docs/ru/prompt-caching.md) от одного промпта к другому, а теги не добавляли входных токенов.

413 

414##### Что не покрывают входные теги

415 

416Ни одно значение `input_tagging` не остановит разработчика, который намеренно помещает текст туда, куда тег не ставится. Не рассчитывайте, что guardrail будет оценивать следующие части запроса:

417 

418* **Содержимое, которое шлюз не помечает**: сообщения, не охваченные вашим значением `input_tagging`, определения инструментов, входные данные вызовов инструментов, изображения и PDF, среди прочего. Если не задано `all_messages_and_system`, системный промпт тоже не помечается.

419* **Результаты инструментов**: они содержат то, что возвращают инструменты Claude, например содержимое файлов и веб-страницы. В тестах Anthropic фильтр слов не оценивал их ни с тегами, ни без них.

420 

421Если ваш аккаунт или организация AWS принудительно применяет guardrail, о том, как такой guardrail обрабатывает входные теги, см. [документацию Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-enforcements.html).

422 

423##### Запись в лог сработавшего фильтра guardrail

424 

425Чтобы выяснить, какой фильтр guardrail Amazon Bedrock заблокировал запрос разработчика, задайте `guardrail_trace: true` для вышестоящего сервера Bedrock, перезапустите шлюз и попросите разработчика отправить запрос снова. Затем найдите событие `guardrail.trace` этого запроса в [журнале аудита](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md#logs). Требует Claude Code v2.1.314 или новее на сервере шлюза. Более ранний шлюз отказывается запускаться, обнаружив `guardrail_trace`.

426 

427```yaml theme={null}

428upstreams:

429 - provider: bedrock

430 region: us-east-1

431 auth: {}

432 guardrail:

433 id: gr-abc123

434 version: "1"

435 guardrail_trace: true # default false; beside guardrail, not inside it

436```

437 

438Шлюз записывает событие `guardrail.trace` без совпавшего текста, когда сработал фильтр или действие guardrail равно `INTERVENED`. Ищите события разработчика по `email` или `sub`. Один запрос с потоковой передачей может породить несколько событий, и у одного из них список `filters` может быть пустым, поэтому читайте все события с одинаковым `request_id`:

439 

440| Поле | Что содержит |

441| - | - |

442| `request_id` | Идентификатор запроса |

443| `sub`, `email` | Идентификатор пользователя и email разработчика |

444| `upstream` | Вышестоящий сервер, от которого пришёл ответ |

445| `action` | Действие guardrail, например `INTERVENED` |

446| `filters` | Сработавшие фильтры. Список пуст, если AWS не присылает подробностей о фильтрах |

447| `filters[].side` | `input` или `output` |

448| `filters[].guardrail` | Идентификатор guardrail |

449| `filters[].policy` | Политика и список Bedrock, например `contentPolicy.filters` или `sensitiveInformationPolicy.piiEntities` |

450| Другие поля `filters[]` | Запись также может содержать такие поля, как `action`, `name`, `type`, `confidence`, `filterStrength`, `score` и `threshold` |

451 

452Событие не содержит текста, совпавшего с фильтром, включая поле `match` трассировки Bedrock. Разработчики не получают данные трассировки Bedrock, поскольку шлюз удаляет их из каждого ответа, потокового или нет.

453 

454Если клиент отправляет поле `amazon-bedrock-*` в теле запроса `/v1/messages`, шлюз отвечает 400 на вышестоящем сервере, для которого задан `guardrail_trace`.

455 

376##### Bedrock в другом аккаунте AWS456##### Bedrock в другом аккаунте AWS

377 457 

378Если задать `assume_role` для upstream Bedrock, шлюз использует собственную идентичность AWS только для вызова `sts:AssumeRole` на указанную вами роль, которая может находиться в другом аккаунте AWS, чем шлюз. Каждый запрос Bedrock от этого upstream подписывается одночасовыми учётными данными, которые возвращает STS, поэтому ни один долгоживущий ключ доступа не пересекает границы аккаунтов.458Если задать `assume_role` для upstream Bedrock, шлюз использует собственную идентичность AWS только для вызова `sts:AssumeRole` на указанную вами роль, которая может находиться в другом аккаунте AWS, чем шлюз. Каждый запрос Bedrock от этого upstream подписывается одночасовыми учётными данными, которые возвращает STS, поэтому ни один долгоживущий ключ доступа не пересекает границы аккаунтов.


384 - name: bedrock-isolated464 - name: bedrock-isolated

385 provider: bedrock465 provider: bedrock

386 region: us-east-1466 region: us-east-1

387 auth: {} # собственная роль шлюза: она только вызывает STS467 auth: {} # the gateway's own role: it only calls STS

388 assume_role:468 assume_role:

389 role_arn: arn:aws:iam::222222222222:role/claude-gateway-bedrock469 role_arn: arn:aws:iam::222222222222:role/claude-gateway-bedrock

390 # external_id: ${BEDROCK_ROLE_EXTERNAL_ID} # если политика доверия роли его требует470 # external_id: ${BEDROCK_ROLE_EXTERNAL_ID} # when the role's trust policy requires one

391```471```

392 472 

393Блок `assume_role` принимает три ключа:473Блок `assume_role` принимает три ключа:


415* Если STS отклоняет вызов или недоступен, шлюз не отправляет запрос с собственными учётными данными upstream. Он записывает в лог ошибку STS с указанием, что проверить, затем пробует следующий указанный вами upstream. Что получает клиент, если ни один upstream не справился, описано в разделе [Сообщения об ошибках upstream](#upstream-error-messages). Следующий upstream без `assume_role` обслужит запрос со своими учётными данными, поэтому указывайте такой upstream, только если вам нужно именно это.495* Если STS отклоняет вызов или недоступен, шлюз не отправляет запрос с собственными учётными данными upstream. Он записывает в лог ошибку STS с указанием, что проверить, затем пробует следующий указанный вами upstream. Что получает клиент, если ни один upstream не справился, описано в разделе [Сообщения об ошибках upstream](#upstream-error-messages). Следующий upstream без `assume_role` обслужит запрос со своими учётными данными, поэтому указывайте такой upstream, только если вам нужно именно это.

416* Шлюз вызывает региональный эндпоинт STS `sts.<region>.amazonaws.com`, который должен быть доступен из его сети. Для эндпоинта FIPS задайте `AWS_USE_FIPS_ENDPOINT=true` в окружении шлюза, а не `use_fips_endpoint` в файле конфигурации AWS.496* Шлюз вызывает региональный эндпоинт STS `sts.<region>.amazonaws.com`, который должен быть доступен из его сети. Для эндпоинта FIPS задайте `AWS_USE_FIPS_ENDPOINT=true` в окружении шлюза, а не `use_fips_endpoint` в файле конфигурации AWS.

417* `assume_role` применяется только к `provider: bedrock` и требует исходных учётных данных SigV4: шлюз отказывается запускаться, если он задан вместе с `aws_bearer_token`.497* `assume_role` применяется только к `provider: bedrock` и требует исходных учётных данных SigV4: шлюз отказывается запускаться, если он задан вместе с `aws_bearer_token`.

418* Этот upstream может использовать каждый разработчик, допущенный шлюзом; какие разработчики могут использовать какие модели, определяет [`managed`](#managed). Чтобы модель, обслуживаемая через роль, не обслуживалась также из другого аккаунта, дайте ей пользовательский id, карта `upstream_model` которого содержит только имя этого upstream. Для такого id шлюз пропускает все остальные upstream, поэтому ни запрос, ни подсчёт токенов для прерванного запроса не могут переключиться на другой аккаунт. Запрос к встроенному имени модели всё равно может [дойти до этого upstream](#multiple-upstreams), и шлюз подпишет его той же ролью. Указывайте этот upstream последним, если только его аккаунт не должен обслуживать и эти модели.498* Без [списка `groups`](#send-each-team-to-its-own-upstream) этот вышестоящий сервер может использовать каждый разработчик, которого допускает шлюз. Чтобы ограничить, какие модели может использовать разработчик, задайте `availableModels` в политике [`managed`](#managed).

499* Чтобы модель, обслуживаемая через роль, не обслуживалась также из другого аккаунта, дайте ей пользовательский id, карта `upstream_model` которого содержит только имя этого вышестоящего сервера. Для такого id шлюз пропускает все остальные вышестоящие серверы, поэтому ни сам запрос, ни подсчёт токенов для прерванного запроса не могут переключиться на другой аккаунт.

500* Запрос встроенного имени модели всё равно может [дойти до этого вышестоящего сервера](#multiple-upstreams), и шлюз подписывает его той же ролью. Указывайте этот вышестоящий сервер последним, если его аккаунт не должен также обслуживать эти модели.

419 501 

420В этом примере одной модели дан пользовательский id, который обслуживает только изолированный upstream:502В этом примере одной модели дан пользовательский id, который обслуживает только изолированный upstream:

421 503 

422```yaml theme={null}504```yaml theme={null}

423models:505models:

424 - id: restricted-claude-opus-4-8 # пользовательский id, а не встроенное имя модели506 - id: restricted-claude-opus-4-8 # a custom id, not a built-in model name

425 upstream_model:507 upstream_model:

426 bedrock-isolated: us.anthropic.claude-opus-4-8 # единственный upstream, который её обслуживает508 bedrock-isolated: us.anthropic.claude-opus-4-8 # the only upstream that serves it

427```509```

428 510 

429##### Учёт затрат AWS по разработчикам511##### Учёт затрат AWS по разработчикам


436upstreams:518upstreams:

437 - provider: bedrock519 - provider: bedrock

438 region: us-east-1520 region: us-east-1

439 auth: {} # собственная роль шлюза: она только вызывает STS521 auth: {} # the gateway's own role: it only calls STS

440 assume_role:522 assume_role:

441 role_arn: arn:aws:iam::123456789012:role/claude-gateway-bedrock-user523 role_arn: arn:aws:iam::123456789012:role/claude-gateway-bedrock-user

442 session_name: email # или sub524 session_name: email # or sub

443```525```

444 526 

445`session_name` выбирает, какой проверенный claim становится AWS `RoleSessionName`: `email` или `sub`. Любой символ, кроме латинских букв ASCII, цифр и `_+,.@-`, шлюз записывает как `=XX` в hex для каждого байта UTF-8, а результат длиннее 64 символов сокращает до префикса и хеша, поэтому имя сессии каждого разработчика остаётся допустимым и уникальным. Запрос от разработчика, токен которого не содержит нужного claim, не отправляется через этот upstream, а в логе оператора появляется совет переключиться на `sub` или задать [`oidc.email_claim`](#oidc).527`session_name` выбирает, какой проверенный claim становится AWS `RoleSessionName`: `email` или `sub`. Любой символ, кроме латинских букв ASCII, цифр и `_+,.@-`, шлюз записывает как `=XX` в hex для каждого байта UTF-8, а результат длиннее 64 символов сокращает до префикса и хеша, поэтому имя сессии каждого разработчика остаётся допустимым и уникальным. Запрос от разработчика, токен которого не содержит нужного claim, не отправляется через этот upstream, а в логе оператора появляется совет переключиться на `sub` или задать [`oidc.email_claim`](#oidc).


460upstreams:542upstreams:

461 - provider: mantle543 - provider: mantle

462 region: us-east-1544 region: us-east-1

463 models: [claude-opus-4-7, claude-haiku-4-5] # обязательно545 models: [claude-opus-4-7, claude-haiku-4-5] # required

464 auth: {} # цепочка учётных данных AWS по умолчанию546 auth: {} # AWS default credential chain

465 - provider: bedrock547 - provider: bedrock

466 region: us-east-1548 region: us-east-1

467 auth: {}549 auth: {}


499 region: us-east-1581 region: us-east-1

500 workspace_id: wrkspc_...582 workspace_id: wrkspc_...

501 auth:583 auth:

502 api_key: ${ANTHROPIC_AWS_API_KEY} # отправляется как x-api-key584 api_key: ${ANTHROPIC_AWS_API_KEY} # sent as x-api-key

503 # ИЛИ SigV4 через цепочку учётных данных AWS по умолчанию:585 # OR SigV4 via the AWS default credential chain:

504 # auth: {}586 # auth: {}

505 # ИЛИ явные учётные данные SigV4:587 # OR explicit SigV4 credentials:

506 # auth:588 # auth:

507 # aws_access_key_id: ${AWS_ACCESS_KEY_ID}589 # aws_access_key_id: ${AWS_ACCESS_KEY_ID}

508 # aws_secret_access_key: ${AWS_SECRET_ACCESS_KEY}590 # aws_secret_access_key: ${AWS_SECRET_ACCESS_KEY}

509 # Переопределите выведенный эндпоинт:591 # Override the derived endpoint:

510 # base_url: https://aws-external-anthropic.us-east-1.api.aws592 # base_url: https://aws-external-anthropic.us-east-1.api.aws

511```593```

512 594 


531 - provider: vertex613 - provider: vertex

532 region: us-east5614 region: us-east5

533 project_id: example-prod615 project_id: example-prod

534 auth: {} # предпочтительно: Application Default Credentials616 auth: {} # preferred: Application Default Credentials

535 # ИЛИ файл ключа сервисного аккаунта:617 # OR a service account key file:

536 # auth: { service_account_json: /secrets/sa.json }618 # auth: { service_account_json: /secrets/sa.json }

537 # Переопределите эндпоинт aiplatform для Private Service Connect:619 # Override the aiplatform endpoint for Private Service Connect:

538 # base_url: https://us-east5-aiplatform.p.googleapis.com620 # base_url: https://us-east5-aiplatform.p.googleapis.com

539```621```

540 622 


558upstreams:640upstreams:

559 - provider: foundry641 - provider: foundry

560 resource: example-foundry # https://example-foundry.services.ai.azure.com642 resource: example-foundry # https://example-foundry.services.ai.azure.com

561 auth: { use_azure_ad: true } # предпочтительно: DefaultAzureCredential / Managed Identity643 auth: { use_azure_ad: true } # preferred: DefaultAzureCredential / Managed Identity

562 # ИЛИ API-ключ:644 # OR an API key:

563 # auth:645 # auth:

564 # api_key: ${FOUNDRY_API_KEY}646 # api_key: ${FOUNDRY_API_KEY}

565```647```


627 709 

628`429` означает нехватку мощности конкретного upstream, поэтому при исчерпании выделенной пропускной способности (PT) запросы переключаются на оплату по запросу. Если вы задали [`forward_user_identity: true`](#per-user-identity-headers-for-a-proxy-you-run) для upstream, `429` на запрос, содержащий email разработчика, считается отказом для отдельного пользователя и не приводит к переключению.710`429` означает нехватку мощности конкретного upstream, поэтому при исчерпании выделенной пропускной способности (PT) запросы переключаются на оплату по запросу. Если вы задали [`forward_user_identity: true`](#per-user-identity-headers-for-a-proxy-you-run) для upstream, `429` на запрос, содержащий email разработчика, считается отказом для отдельного пользователя и не приводит к переключению.

629 711 

630Каждый запрос начинается с первого upstream. Запрос доходит до следующего upstream, только если все предыдущие завершились ошибкой или не обслуживают запрошенную модель.712Запрос переходит к следующему вышестоящему провайдеру только в следующих случаях:

713 

714* Вышестоящий провайдер вернул ошибку

715* Вышестоящий провайдер не обслуживает запрошенную модель

716* У вышестоящего провайдера есть [список `groups`](#send-each-team-to-its-own-upstream), в который разработчик не входит

631 717 

632Шлюз не запоминает неудачные upstream, поэтому, пока upstream недоступен, каждый доходящий до него запрос всё равно пробует его и ждёт ошибки, прежде чем двигаться дальше.718Шлюз не запоминает неудачные upstream, поэтому, пока upstream недоступен, каждый доходящий до него запрос всё равно пробует его и ждёт ошибки, прежде чем двигаться дальше.

633 719 


680| - | - |766| - | - |

681| Разные регионы | По одному upstream Amazon Bedrock на регион, каждый со своим `region:`. С [`auto_include_builtin_models: true`](#models) межрегиональные профили инференса маршрутизируются автоматически; для развёртываний, закреплённых за регионом, используйте блок `models:`. |767| Разные регионы | По одному upstream Amazon Bedrock на регион, каждый со своим `region:`. С [`auto_include_builtin_models: true`](#models) межрегиональные профили инференса маршрутизируются автоматически; для развёртываний, закреплённых за регионом, используйте блок `models:`. |

682| Разные аккаунты | По одному upstream Amazon Bedrock на аккаунт. Цепочка по умолчанию (`auth: {}`) использует идентичность пода; для второго аккаунта добавьте [`assume_role`](#bedrock-in-another-aws-account), чтобы обращаться к нему с короткоживущими учётными данными, или задайте в `auth:` явные учётные данные или Bearer-токен. |768| Разные аккаунты | По одному upstream Amazon Bedrock на аккаунт. Цепочка по умолчанию (`auth: {}`) использует идентичность пода; для второго аккаунта добавьте [`assume_role`](#bedrock-in-another-aws-account), чтобы обращаться к нему с короткоживущими учётными данными, или задайте в `auth:` явные учётные данные или Bearer-токен. |

769| Разные команды | Задайте для вышестоящего провайдера каждой команды список `groups`, чтобы к нему обращались только разработчики из этих групп IdP. См. [Направление каждой команды к своему вышестоящему провайдеру](#send-each-team-to-its-own-upstream). |

683| Выделенная пропускная способность | Сопоставьте модель с ARN выделенной пропускной способности в `models:` для имени этого upstream. Остальные upstream сохраняют ID для оплаты по запросу, поэтому мощность PT исчерпывается до переключения. |770| Выделенная пропускная способность | Сопоставьте модель с ARN выделенной пропускной способности в `models:` для имени этого upstream. Остальные upstream сохраняют ID для оплаты по запросу, поэтому мощность PT исчерпывается до переключения. |

684| Эндпоинты VPC / FIPS | Задайте в `base_url:` upstream URL вашего VPC-эндпоинта или эндпоинта FIPS |771| Эндпоинты VPC / FIPS | Задайте в `base_url:` upstream URL вашего VPC-эндпоинта или эндпоинта FIPS |

685| Маршрутизация по моделям | Только пользовательский `id` модели, то есть не встроенной модели Claude, пропускает upstream, отсутствующие в его карте `upstream_model:`. Upstream `mantle` пробуется только для моделей, перечисленных в его [поле `models`](#amazon-bedrock-mantle-endpoint). На всех остальных upstream шлюз пробует встроенные модели по порядку и использует ID поставщика по умолчанию, если в карте нет записи, поэтому для встроенных моделей карта меняет то, какой ID получает upstream, а не то, пробуется ли он; upstream, отклонивший ID, подчиняется тем же [правилам переключения](#upstreams), что и при любой другой ошибке upstream. |772| Маршрутизация по модели | Пользовательский `id` модели, то есть не встроенной модели Claude, пропускает вышестоящих провайдеров, отсутствующих в его карте `upstream_model:`. Вышестоящий провайдер со списком `models`, который обязателен для [провайдера `mantle`](#amazon-bedrock-mantle-endpoint), используется только для этих моделей. |

773| Маршрутизация встроенных моделей | Для вышестоящего провайдера без списков `models` и `groups` шлюз перебирает встроенные модели по порядку и использует ID провайдера по умолчанию, если в карте `upstream_model:` нет записи. Для встроенной модели, у которой у провайдера есть ID по умолчанию, карта определяет, какой ID получит вышестоящий провайдер, а не то, будет ли он использован. Вышестоящий провайдер, отклонивший ID, подчиняется тем же [правилам переключения](#upstreams), что и при любой другой ошибке. |

686 774 

687Переключение между облачными поставщиками или на Anthropic API напрямую меняет соглашение, географию и другие условия, которым подчиняется запрос.775Переключение между облачными поставщиками или на Anthropic API напрямую меняет соглашение, географию и другие условия, которым подчиняется запрос.

688 776 

689CLI применяет одинаковые ограничения функций к шлюзам независимо от того, какой upstream обслуживает конкретный запрос, поэтому по умолчанию переключение не приводит к отправке поля тела, которое upstream отклонил бы. Если вы задаёте в политике [одночасовой TTL кэша](#one-hour-prompt-cache), он отправляется каждому upstream в списке, поэтому задавайте его, только если все они его принимают.777CLI применяет одинаковые ограничения функций к шлюзам независимо от того, какой upstream обслуживает конкретный запрос, поэтому по умолчанию переключение не приводит к отправке поля тела, которое upstream отклонил бы. Если вы задаёте в политике [одночасовой TTL кэша](#one-hour-prompt-cache), он отправляется каждому upstream в списке, поэтому задавайте его, только если все они его принимают.

690 778 

779#### Направление каждой команды к своему вышестоящему провайдеру

780 

781Чтобы направлять запросы каждой команды в её собственный аккаунт AWS или проект Google Cloud, укажите по одному вышестоящему провайдеру на команду и задайте каждому список `groups`. К такому провайдеру обращаются только разработчики из перечисленных групп IdP — как при первой попытке, так и при [переключении](#multiple-upstreams). `groups` поддерживается всеми провайдерами. Требуется Claude Code v2.1.314 или новее на сервере шлюза.

782 

783В этом примере группы `payments-eng` и `search-eng` получают по аккаунту AWS, а также добавлен вышестоящий провайдер без списка `groups`, доступный всем разработчикам:

784 

785```yaml theme={null}

786upstreams:

787 - name: bedrock-payments

788 provider: bedrock

789 region: us-east-1

790 auth: {}

791 assume_role:

792 role_arn: arn:aws:iam::111111111111:role/claude-gateway-bedrock

793 groups: [payments-eng]

794 - name: bedrock-search

795 provider: bedrock

796 region: us-east-1

797 auth: {}

798 assume_role:

799 role_arn: arn:aws:iam::222222222222:role/claude-gateway-bedrock

800 groups: [search-eng]

801 - name: bedrock-shared # no groups: open to everyone, so listed last

802 provider: bedrock

803 region: us-east-1

804 auth: {}

805```

806 

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

808 

809| Группы разработчика | Вышестоящие провайдеры по порядку |

810| - | - |

811| `payments-eng` | `bedrock-payments`, затем `bedrock-shared` |

812| `search-eng` | `bedrock-search`, затем `bedrock-shared` |

813| `payments-eng` и `search-eng` | `bedrock-payments`, затем `bedrock-search`, затем `bedrock-shared` |

814| Ни одной | `bedrock-shared` |

815 

816Когда вышестоящий провайдер команды отклоняет запрошенную модель с кодом `403`, шлюз пробует следующего провайдера в строке этой команды, который обслуживает модель. Чтобы закрепить команду за одним провайдером, задайте список `groups` каждому вышестоящему провайдеру и убедитесь, что ни один другой провайдер не перечисляет группу, в которую входят разработчики команды. Тогда у этой команды не будет переключения, а запросы разработчиков, не входящих ни в одну из перечисленных групп, [завершатся ошибкой `400`](#what-happens-when-a-developer-is-in-no-listed-group).

817 

818Чтобы каждый разработчик попадал к нужному вышестоящему провайдеру, записывайте точно совпадающие значения и размещайте открытых провайдеров последними:

819 

820* **Значения**: записывайте каждую группу точно так, как ваш IdP передаёт её в [claim групп](#oidc), который также читает [`match.groups`](#managed). Шлюз отказывается запускаться, если находит пустой список или пустое значение. Он не сверяет значения с вашим IdP, поэтому значение, которому никто не соответствует, не вызывает предупреждения.

821* **Порядок**: размещайте вышестоящего провайдера без списка `groups` последним. Он обслуживает всех, поэтому, если указать его раньше, он будет перехватывать запросы команды до её собственного провайдера.

822 

823> [!WARNING]

824>

825> Шлюз версии ниже v2.1.314 отказывается запускаться, если находит `groups`, поэтому обновите все реплики, прежде чем добавлять этот параметр.

826>

827> Перед откатом на предыдущую версию удалите каждого вышестоящего провайдера со списком `groups`, а также все ключи `upstream_model` и переопределения цен, ссылающиеся на него, и оставьте хотя бы одного вышестоящего провайдера. Если удалить только ключ `groups`, этот провайдер станет доступен всем разработчикам. Ключ или переопределение, которые всё ещё ссылаются на удалённого провайдера, не дают шлюзу запуститься с ошибкой `references unknown upstream`.

828 

829##### Что происходит, если разработчик не входит ни в одну из перечисленных групп

830 

831Если у каждого вышестоящего провайдера есть список `groups`, разработчик, не входящий ни в одну из этих групп, видит следующую ошибку, и шлюз не обращается ни к одному провайдеру:

832 

833```text theme={null}

834API Error: 400 you aren't in a group that can use this gateway. Ask your administrator to add you to one

835```

836 

837Добавьте разработчика в одну из перечисленных групп в вашем IdP или добавьте вышестоящего провайдера без списка `groups`.

838 

839Шлюз заново считывает группы разработчика при каждом обновлении токена. Если ваш IdP не передаёт группы при обновлении, у разработчика их не оказывается:

840 

841* **Задан [`oidc.allowed_groups`](#oidc)**: шлюз отклоняет обновление, и сессия завершается

842* **Иначе, если у какого-либо вышестоящего провайдера нет списка `groups`**: запросы разработчика переходят к нему

843* **Иначе, если у каждого вышестоящего провайдера есть список `groups`**: запросы разработчика завершаются этой ошибкой

844 

845Если эндпоинт userinfo вашего IdP возвращает claim групп, а `oidc.google_groups` не задан, установите [`oidc.userinfo_fallback`](#oidc) в `true`, чтобы получать группы оттуда.

846 

691## Необязательные разделы847## Необязательные разделы

692 848 

693### `admin`849### `admin`


782 938 

783#### Отправка тарифов клиентам, вошедшим в систему939#### Отправка тарифов клиентам, вошедшим в систему

784 940 

785С v2.1.268 или новее на сервере шлюза шлюз также помещает тарифы из `pricing` в обслуживаемые им политики [`managed`](#managed) в виде управляемой настройки [`modelPricing`](https://code.claude.com/docs/ru/settings-reference#modelpricing). Разработчики, подпадающие под политику, видят тарифы `pricing` первого upstream, обслуживающего каждый ID модели, в `/usage`, строке состояния и OpenTelemetry. Разработчик, не подпадающий ни под одну политику, не получает управляемых настроек, поэтому его цифры остаются по прейскуранту. Клиенты применяют эту настройку в Claude Code v2.1.242 или новее.941С v2.1.268 или новее на сервере шлюза шлюз также помещает ставки из `pricing` в обслуживаемые им политики [`managed`](#managed) в виде управляемой настройки [`modelPricing`](https://code.claude.com/docs/ru/settings-reference#modelpricing).

942 

943Разработчики, подпадающие под политику, затем видят ставки `pricing` в `/usage`, строке состояния и OpenTelemetry. Разработчик, не подпадающий ни под одну политику, не получает управляемых настроек, поэтому его показатели остаются по прейскурантной цене. Клиенты применяют эту настройку в Claude Code v2.1.242 или новее.

786 944 

787* Что добавляет шлюз: если блок `cli` политики ещё не задаёт `modelPricing`, шлюз добавляет `multiplier` и, для каждого ID модели, который может запросить клиент, строку переопределения первого upstream, обслуживающего этот ID. Тариф, который взимает только резервный upstream, остаётся на шлюзе.945* Что добавляет шлюз: если блок `cli` политики ещё не задаёт `modelPricing`, шлюз добавляет `multiplier` и, для каждого ID модели, который может запросить клиент, строку переопределения первого upstream, обслуживающего этот ID. Тариф, который взимает только резервный upstream, остаётся на шлюзе.

946* Upstream со [списком `groups`](#send-each-team-to-its-own-upstream): если такой upstream — первый, обслуживающий ID модели, шлюз не добавляет строку для этого ID. Тогда разработчики видят собственную ставку Claude Code для этого ID — стандартную ставку модели, если Claude Code распознаёт ID, — умноженную на `multiplier`.

788* Исключение отдельной политики: установите `modelPricing` в `{}` в блоке `cli` этой политики, и её разработчики останутся на прейскурантных ценах.947* Исключение отдельной политики: установите `modelPricing` в `{}` в блоке `cli` этой политики, и её разработчики останутся на прейскурантных ценах.

789* Сохранение собственных тарифов политики: политика, блок `cli` которой задаёт `modelPricing` с собственными `multiplier` или `overrides`, сохраняет этот `modelPricing` целиком, и шлюз не добавляет в него свои тарифы.948* Сохранение собственных тарифов политики: политика, блок `cli` которой задаёт `modelPricing` с собственными `multiplier` или `overrides`, сохраняет этот `modelPricing` целиком, и шлюз не добавляет в него свои тарифы.

790 949 


808 967 

809### `managed`968### `managed`

810 969 

811Блок `managed` определяет политики доступа на основе ролей, привязанные к группам IdP или домену email. Политики вычисляются по порядку; выбирается первое совпадение, которое затем объединяется с базовым универсальным `match: {}`. Они отдаются каждому пользователю на `GET /managed/settings` с кэшированием ETag/304.970Блок `managed` определяет политики доступа на основе ролей, привязанные к группам IdP или домену email. Политики оцениваются по порядку; по умолчанию выбирается первое совпадение, которое затем объединяется с базовой политикой `match: {}`, охватывающей всех. Пользователь, подпадающий под две ролевые политики, получает только первую, поэтому правила запрета второй политики не применяются, если вы не [примените все подходящие политики](#apply-every-matching-policy). Политики обслуживаются для каждого пользователя по адресу `GET /managed/settings` с кэшированием ETag/304.

812 971 

813```yaml theme={null}972```yaml theme={null}

814managed:973managed:


849 1008 

850Аутентифицированный пользователь, не подпадающий ни под одну политику, получает значения шлюза по умолчанию, то есть все модели из каталога и никаких управляемых настроек. Добавьте последней универсальную политику `match: {}`, если вам нужна гарантированная политика по умолчанию.1009Аутентифицированный пользователь, не подпадающий ни под одну политику, получает значения шлюза по умолчанию, то есть все модели из каталога и никаких управляемых настроек. Добавьте последней универсальную политику `match: {}`, если вам нужна гарантированная политика по умолчанию.

851 1010 

1011Размещайте правила запрета на уровне организации в политике `match: {}`, потому что правила групповой политики применяются только пока токен пользователя содержит эту группу.

1012 

852> [!NOTE]1013> [!NOTE]

853>1014>

854> Шлюз не хранит собственного каталога пользователей. Он авторизует каждый запрос по токену IdP пользователя, считывая членство в группах из claim `groups` токена и вычисляя политики по нему. Нет списка пользователей для перечисления и нет учётных записей для предварительного создания, а значит, нет и эндпоинта SCIM, потому что SCIM нечего синхронизировать.1015> Шлюз не хранит собственного каталога пользователей. Он авторизует каждый запрос по токену IdP пользователя, считывая членство в группах из claim `groups` токена и вычисляя политики по нему. Нет списка пользователей для перечисления и нет учётных записей для предварительного создания, а значит, нет и эндпоинта SCIM, потому что SCIM нечего синхронизировать.


862>1023>

863> Claude Desktop следует [собственному расписанию](#when-a-policy-change-reaches-claude-desktop).1024> Claude Desktop следует [собственному расписанию](#when-a-policy-change-reaches-claude-desktop).

864 1025 

1026#### Применение всех подходящих политик

1027 

1028Пользователь, подпадающий под несколько ролевых политик, получает только первую, если вы не зададите `policy_mode: layered` рядом с `policies`. С `layered` применяется каждая политика, под которую подпадает пользователь, вплоть до первой политики `match: {}`.

1029 

1030`policy_mode` требует Claude Code v2.1.316 или новее на сервере шлюза. Шлюз версии без поддержки этого ключа отказывается запускаться, обнаружив его. Обновите все реплики, прежде чем добавлять ключ, и удалите ключ перед откатом на более раннюю версию. В этом примере одна группа теряет `WebFetch`, а другая получает Opus:

1031 

1032```yaml theme={null}

1033managed:

1034 policy_mode: layered

1035 policies:

1036 - match: { groups: [no-web] }

1037 cli:

1038 permissions: { deny: ["WebFetch"] }

1039 - match: { groups: [opus-users] }

1040 cli:

1041 availableModels: [opus, sonnet]

1042 - match: {}

1043 cli:

1044 availableModels: [sonnet]

1045 enforceAvailableModels: true

1046```

1047 

1048В таблице показано, что получает пользователь, состоящий и в `no-web`, и в `opus-users`, при режиме по умолчанию, `first_match`, и при `layered`.

1049 

1050| Настройка | `first_match` | `layered` |

1051| - | - | - |

1052| `availableModels` | `sonnet` | `opus`, `sonnet` |

1053| `enforceAvailableModels` | `true` | `true` |

1054| `permissions.deny` | `WebFetch` | `WebFetch` |

1055 

1056Шлюз объединяет каждую подходящую политику с политиками, указанными ниже неё, по тем же [правилам объединения](#managed), что и для базового слоя:

1057 

1058* **Списки разрешённых, одиночные значения и блоки, такие как `sandbox`**: каждый берётся целиком из первой по порядку подходящей политики, которая его задаёт, поэтому списки `availableModels` двух групп не суммируются.

1059* **Списки запрещённых и массивы хуков**: суммируются по всем подходящим политикам, поэтому пользователь в двух группах получает правила запрета обеих групп.

1060* **`env`, `modelOverrides` и `skillOverrides`**: записи объединяются по имени, и значение для имени берётся из первой по порядку подходящей политики, которая его задаёт.

1061* **Ключи `desktop`**: объединяются по [правилам для базового блока `desktop`](#how-a-role-policy-inherits-the-base-desktop-block).

1062 

1063> [!WARNING]

1064>

1065> В сумме политики могут дать более мягкие правила, чем любая из них по отдельности. Например, политика `match: {}` задаёт `sandbox.enabled: true`, политика одной группы задаёт `permissions.allow: ["Bash"]`, а политика другой — `sandbox.enabled: false`. Пользователь в обеих группах получает разрешённый `Bash` с выключенной песочницей. В таком случае укажите первой политику, разрешающую `Bash`, и скопируйте в неё весь блок `sandbox` политики `match: {}`.

1066 

1067С `layered` шлюз отказывается запускаться при некоторых настройках, в том числе таких:

1068 

1069* **Шаблон с `!`**: [отрицание `!`](https://code.claude.com/docs/ru/permissions#special-characters-and-negation) в правиле `Read` или `Edit` в списке `permissions.deny` или `permissions.ask` любой политики, включая политику `match: {}`

1070* **Ограничение хуков вне политики, охватывающей всех**: `disableAllHooks`, `allowedHttpHookUrls` или `httpHookAllowedEnvVars` в любой политике, кроме `match: {}`

1071 

865#### Запуск сессий на модели, разрешённой политикой1072#### Запуск сессий на модели, разрешённой политикой

866 1073 

867Если `availableModels` не включает модель Claude Code по умолчанию, сессии получают ответы `400`, пока разработчик не выберет модель из списка, например с помощью `/model`. В сессиях через шлюз моделью по умолчанию является модель Opus, на которую указывает псевдоним `opus`, и `availableModels` сам по себе её не меняет.1074Если `availableModels` не включает модель Claude Code по умолчанию, сессии получают ответы `400`, пока разработчик не выберет модель из списка, например с помощью `/model`. В сессиях через шлюз моделью по умолчанию является модель Opus, на которую указывает псевдоним `opus`, и `availableModels` сам по себе её не меняет.

Details

169 * `access.public_client` содержит IP-адрес клиента первого запроса в рамках процесса, пришедшего с публичного адреса, когда `access_control.allow_cidrs` пуст. Шлюз обслуживает запрос как обычно; событие сигнализирует о том, что шлюз может быть доступен из публичного интернета. Что считается публичным адресом и какой список разрешённых адресов рекомендуется, см. в [справочнике по `access_control`](https://code.claude.com/docs/ru/claude-apps-gateway-config#http-tuning).169 * `access.public_client` содержит IP-адрес клиента первого запроса в рамках процесса, пришедшего с публичного адреса, когда `access_control.allow_cidrs` пуст. Шлюз обслуживает запрос как обычно; событие сигнализирует о том, что шлюз может быть доступен из публичного интернета. Что считается публичным адресом и какой список разрешённых адресов рекомендуется, см. в [справочнике по `access_control`](https://code.claude.com/docs/ru/claude-apps-gateway-config#http-tuning).

170 * `inference` фиксирует, какой вышестоящий сервер обслужил запрос, и статус ответа170 * `inference` фиксирует, какой вышестоящий сервер обслужил запрос, и статус ответа

171 * `desktop_bootstrap.denied` фиксирует отклонённый запрос начальной загрузки Claude Desktop с указанием причины (`not_configured`, `policy_not_opted_in` или `no_policy_matched`) и идентификатора пользователя171 * `desktop_bootstrap.denied` фиксирует отклонённый запрос начальной загрузки Claude Desktop с указанием причины (`not_configured`, `policy_not_opted_in` или `no_policy_matched`) и идентификатора пользователя

172 * `guardrail.trace` фиксирует, [какой фильтр сработал](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#log-which-guardrail-filter-fired), без совпавшего текста

172 * `admin.denied` фиксирует отклонённую попытку аутентификации в API администратора с IP-адресом клиента, методом, путём и причиной, без предъявленного ключевого материала: `invalid_key`, если был предъявлен `x-api-key`, не совпавший ни с одним настроенным ключом; `bearer_rejected`, если был предъявлен только заголовок `Authorization` и он не прошёл проверку как сессия шлюза в `admin.admin_groups`; или `no_credentials`, если не был предъявлен ни один из заголовков173 * `admin.denied` фиксирует отклонённую попытку аутентификации в API администратора с IP-адресом клиента, методом, путём и причиной, без предъявленного ключевого материала: `invalid_key`, если был предъявлен `x-api-key`, не совпавший ни с одним настроенным ключом; `bearer_rejected`, если был предъявлен только заголовок `Authorization` и он не прошёл проверку как сессия шлюза в `admin.admin_groups`; или `no_credentials`, если не был предъявлен ни один из заголовков

173* **Операционные логи**: удобочитаемые строки с префиксом `[gateway]` о запуске, предупреждениях и ошибках вышестоящих серверов. Переменная окружения `CLAUDE_GATEWAY_LOG_LEVEL` управляет уровнем детализации и принимает значения `debug`, `info`, `warn` или `error`; по умолчанию используется `info`. На уровне `debug` при каждом входе и обновлении также записываются в лог имена (но не значения) claims в id\_token, а также имена claims userinfo, если `userinfo_fallback` их предоставил, что позволяет диагностировать настройки `email_claim` и `groups_claim` без записи персональных данных в лог. На события аудита эта переменная не влияет — они генерируются всегда.174* **Операционные логи**: удобочитаемые строки с префиксом `[gateway]` о запуске, предупреждениях и ошибках вышестоящих серверов. Переменная окружения `CLAUDE_GATEWAY_LOG_LEVEL` управляет уровнем детализации и принимает значения `debug`, `info`, `warn` или `error`; по умолчанию используется `info`. На уровне `debug` при каждом входе и обновлении также записываются в лог имена (но не значения) claims в id\_token, а также имена claims userinfo, если `userinfo_fallback` их предоставил, что позволяет диагностировать настройки `email_claim` и `groups_claim` без записи персональных данных в лог. На события аудита эта переменная не влияет — они генерируются всегда.

174 175 


311 312 

312Миграции только добавляются, поэтому откат к предыдущему бинарному файлу, знающему меньше миграций, безопасен; он игнорирует лишние строки. При откате YAML также повторно проверяется по схеме более старого бинарного файла, поэтому конфигурация, использующая ключ, появившийся в более новом выпуске, не позволит запуститься старой версии. Удалите новый ключ перед откатом.313Миграции только добавляются, поэтому откат к предыдущему бинарному файлу, знающему меньше миграций, безопасен; он игнорирует лишние строки. При откате YAML также повторно проверяется по схеме более старого бинарного файла, поэтому конфигурация, использующая ключ, появившийся в более новом выпуске, не позволит запуститься старой версии. Удалите новый ключ перед откатом.

313 314 

315> [!WARNING]

316>

317> Если удалить у вышестоящего сервера только ключ `groups`, он станет доступен всем разработчикам. См. [что удалить перед откатом](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#roll-back-a-gateway-that-uses-groups).

318 

314Поскольку вы закрепляете версию шлюза в собственном образе, исправления из новых выпусков Claude Code, включая исправления безопасности, попадают в ваше развёртывание только после того, как вы обновите закреплённую версию и выполните повторное развёртывание. Включите шлюз в тот же график установки обновлений, который вы используете для других сервисов, хранящих производственные учётные данные.319Поскольку вы закрепляете версию шлюза в собственном образе, исправления из новых выпусков Claude Code, включая исправления безопасности, попадают в ваше развёртывание только после того, как вы обновите закреплённую версию и выполните повторное развёртывание. Включите шлюз в тот же график установки обновлений, который вы используете для других сервисов, хранящих производственные учётные данные.

315 320 

316## Безопасность321## Безопасность


422| При пиковой нагрузке ответы медленно начинаются или кажутся зависшими, или не удаются с 502 `all upstreams failed`, пока upstream здоров | У реплики открыто больше запросов, чем она одновременно отправляет в upstream, поэтому дополнительные запросы ждут внутри шлюза. На upstream `provider: anthropic` запрос, который ждёт дольше, чем `timeouts.upstream_ttfb_ms`, отказывается от этого upstream, что приводит к 502, когда никакой следующий upstream его не обслуживает. Лог показывает предупреждение, которое содержит `client requests are open`. | Добавьте реплики или поднимите лимит на каждой реплике. См. [Concurrent upstream requests](#concurrent-upstream-requests). |427| При пиковой нагрузке ответы медленно начинаются или кажутся зависшими, или не удаются с 502 `all upstreams failed`, пока upstream здоров | У реплики открыто больше запросов, чем она одновременно отправляет в upstream, поэтому дополнительные запросы ждут внутри шлюза. На upstream `provider: anthropic` запрос, который ждёт дольше, чем `timeouts.upstream_ttfb_ms`, отказывается от этого upstream, что приводит к 502, когда никакой следующий upstream его не обслуживает. Лог показывает предупреждение, которое содержит `client requests are open`. | Добавьте реплики или поднимите лимит на каждой реплике. См. [Concurrent upstream requests](#concurrent-upstream-requests). |

423| На upstream, отличном от `provider: anthropic`, ход с долгой паузой на мышление завершается сбоем. Прокси перед шлюзом записывает в лог один запрос, который остаётся открытым около 12,5 минуты, затем серию ошибок `504` | Claude Code завершил поток, который доставил первое событие ответа, а затем передавал только keepalive-пинги. Он повторно отправил запрос без потоковой передачи, и каждый ответ занимает больше времени, чем таймаут прокси. | Увеличьте `CLAUDE_STREAM_IDLE_TIMEOUT_MS` для ваших разработчиков. См. [Долгое мышление заканчивается таймаутами прокси](#long-thinking-ends-in-proxy-timeouts). |428| На upstream, отличном от `provider: anthropic`, ход с долгой паузой на мышление завершается сбоем. Прокси перед шлюзом записывает в лог один запрос, который остаётся открытым около 12,5 минуты, затем серию ошибок `504` | Claude Code завершил поток, который доставил первое событие ответа, а затем передавал только keepalive-пинги. Он повторно отправил запрос без потоковой передачи, и каждый ответ занимает больше времени, чем таймаут прокси. | Увеличьте `CLAUDE_STREAM_IDLE_TIMEOUT_MS` для ваших разработчиков. См. [Долгое мышление заканчивается таймаутами прокси](#long-thinking-ends-in-proxy-timeouts). |

424| На `provider: anthropic` ход с долгой паузой на мышление завершается сбоем. Прокси записывает в лог один запрос, открытый около 20 минут, затем ошибки `502` или `504` | Claude Code завершил поток, который доставил первое событие ответа, а затем передавал только keepalive-пинги. Он повторно отправил запрос без потоковой передачи, и каждый ответ занимает больше времени, чем ожидание шлюзом ответа upstream, `timeouts.upstream_ttfb_ms`, или таймаут прокси. | Увеличьте `CLAUDE_STREAM_IDLE_TIMEOUT_MS` для ваших разработчиков. См. [Долгое мышление на upstream Anthropic API](#long-thinking-on-an-anthropic-api-upstream). |429| На `provider: anthropic` ход с долгой паузой на мышление завершается сбоем. Прокси записывает в лог один запрос, открытый около 20 минут, затем ошибки `502` или `504` | Claude Code завершил поток, который доставил первое событие ответа, а затем передавал только keepalive-пинги. Он повторно отправил запрос без потоковой передачи, и каждый ответ занимает больше времени, чем ожидание шлюзом ответа upstream, `timeouts.upstream_ttfb_ms`, или таймаут прокси. | Увеличьте `CLAUDE_STREAM_IDLE_TIMEOUT_MS` для ваших разработчиков. См. [Долгое мышление на upstream Anthropic API](#long-thinking-on-an-anthropic-api-upstream). |

430| Запросы разработчика завершаются ошибкой `API Error: 400 you aren't in a group that can use this gateway. Ask your administrator to add you to one` | У каждого upstream есть [список `groups`](https://code.claude.com/docs/ru/claude-apps-gateway-config#what-happens-when-a-developer-is-in-no-listed-group), и сессия разработчика не содержит ни одной из перечисленных групп. | Добавьте разработчика в одну из перечисленных групп в вашем IdP или укажите последним upstream без `groups`, чтобы он обслуживал всех остальных. Шлюз заново считывает группы при следующем обновлении токена разработчика. Если IdP не включил группы, а его эндпоинт userinfo их возвращает, установите [`oidc.userinfo_fallback: true`](https://code.claude.com/docs/ru/claude-apps-gateway-config#oidc). |

425| Ошибка IdP: unknown or unsupported scope | IdP отклоняет scope, которые он не распознаёт | Установите в `oidc.scopes` точно тот список, который принимает ваш IdP; он должен включать `openid`. По умолчанию `openid profile email offline_access`. |431| Ошибка IdP: unknown or unsupported scope | IdP отклоняет scope, которые он не распознаёт | Установите в `oidc.scopes` точно тот список, который принимает ваш IdP; он должен включать `openid`. По умолчанию `openid profile email offline_access`. |

426| Сессии не обновляются незаметно после установки `oidc.scopes` | `offline_access` был удалён из переопределения | Добавьте `offline_access` обратно, если ваш IdP его поддерживает. Без refresh token разработчики повторно проходят вход в браузере каждые `session.ttl_hours`. |432| Сессии не обновляются незаметно после установки `oidc.scopes` | `offline_access` был удалён из переопределения | Добавьте `offline_access` обратно, если ваш IdP его поддерживает. Без refresh token разработчики повторно проходят вход в браузере каждые `session.ttl_hours`. |

427| Браузер показывает "This request came from another site and was blocked" | Cross-site form POST, заблокирован как защита CSRF. Ожидается для встроенных или проксированных страниц | Откройте ссылку проверки напрямую |433| Браузер показывает "This request came from another site and was blocked" | Cross-site form POST, заблокирован как защита CSRF. Ожидается для встроенных или проксированных страниц | Откройте ссылку проверки напрямую |


449* **Задан `limits.max_request_header_bytes`**: увеличьте значение или удалите ключ455* **Задан `limits.max_request_header_bytes`**: увеличьте значение или удалите ключ

450* **Ни то, ни другое не применимо, или `431` продолжает возникать после этого**: сделайте так, чтобы ваш IdP выдавал меньше групп. В разделе [Identity provider setup](#identity-provider-setup) описано, как Okta, Microsoft Entra ID и Google Workspace передают группы456* **Ни то, ни другое не применимо, или `431` продолжает возникать после этого**: сделайте так, чтобы ваш IdP выдавал меньше групп. В разделе [Identity provider setup](#identity-provider-setup) описано, как Okta, Microsoft Entra ID и Google Workspace передают группы

451 457 

452Сокращая утверждение groups, сохраните группы, указанные в следующих настройках, которые определяют доступ разработчика, применяемую к нему политику и лимиты расходов:458Сокращая утверждение groups, сохраните группы, указанные в следующих настройках, которые определяют доступ разработчика, применяемую к нему политику, upstream и лимиты расходов:

453 459 

454* **[`oidc.allowed_groups`](https://code.claude.com/docs/ru/claude-apps-gateway-config#oidc)**: определяет, кто может войти460* **[`oidc.allowed_groups`](https://code.claude.com/docs/ru/claude-apps-gateway-config#oidc)**: определяет, кто может войти

455* **[`admin.admin_groups`](https://code.claude.com/docs/ru/claude-apps-gateway-config#admin)**: определяет, кто может вызывать admin API со своей сессией шлюза461* **[`admin.admin_groups`](https://code.claude.com/docs/ru/claude-apps-gateway-config#admin)**: определяет, кто может вызывать admin API со своей сессией шлюза

456* **`match.groups` в [`managed.policies`](https://code.claude.com/docs/ru/claude-apps-gateway-config#managed)**: определяет, какая политика применяется к разработчику462* **`match.groups` в [`managed.policies`](https://code.claude.com/docs/ru/claude-apps-gateway-config#managed)**: определяет, какая политика применяется к разработчику

463* **`groups` у [upstream](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#send-each-team-to-its-own-upstream)**: определяет, какие upstream обслуживают разработчика

457* **`rbac_group` [лимиты расходов](https://code.claude.com/docs/ru/claude-apps-gateway-spend-limits.md)**: определяют, какие групповые лимиты применяются к разработчику464* **`rbac_group` [лимиты расходов](https://code.claude.com/docs/ru/claude-apps-gateway-spend-limits.md)**: определяют, какие групповые лимиты применяются к разработчику

458 465 

459### Долгое мышление заканчивается таймаутами прокси466### Долгое мышление заканчивается таймаутами прокси

Details

620 620 

621Попросите разработчика передавать идентификатор команды, для которой выполняется работа, например `claude --model data-claude-opus-4-8`.621Попросите разработчика передавать идентификатор команды, для которой выполняется работа, например `claude --model data-claude-opus-4-8`.

622 622 

623Шлюз применяет [первую подходящую политику](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#managed), поэтому разработчик, состоящий только в двух группах команд, получает политику `team-platform`. Его сессии с идентификатором команды data завершаются ошибкой `is not in your role's availableModels allowlist`, в которой указана модель Claude Code по умолчанию, а не введённый им идентификатор. Если вместо этого перечислить обе группы команд в `groups` одной политики, любой участник любой из команд сможет относить расходы на профиль любой команды.623По умолчанию шлюз применяет [первую подходящую политику](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#managed), поэтому разработчик, состоящий только в двух группах команд, получает политику `team-platform`. Его сессии с идентификатором команды data завершаются ошибкой `is not in your role's availableModels allowlist`, в которой указана модель Claude Code по умолчанию, а не введённый им идентификатор. Если вместо этого перечислить обе группы команд в `groups` одной политики, любой участник любой из команд сможет относить расходы на профиль любой команды.

624 624 

625В собственных [лимитах расходов](https://code.claude.com/docs/ru/claude-apps-gateway-spend-limits.md#set-a-cap) шлюза у разработчика есть одна общая сумма и один лимит на период, по умолчанию наименьший из лимитов его групп, независимо от того, какой идентификатор использует сессия. Чтобы более низкий лимит одной команды не останавливал работу для другой, задайте для разработчика индивидуальный лимит.625В собственных [лимитах расходов](https://code.claude.com/docs/ru/claude-apps-gateway-spend-limits.md#set-a-cap) шлюза у разработчика есть одна общая сумма и один лимит на период, по умолчанию наименьший из лимитов его групп, независимо от того, какой идентификатор использует сессия. Чтобы более низкий лимит одной команды не останавливал работу для другой, задайте для разработчика индивидуальный лимит.

626 626 

Details

99| `--init-only` | Запустить [Setup](https://code.claude.com/docs/ru/hooks.md#setup) и `SessionStart` hooks, затем выйти без запуска беседы | `claude --init-only` |99| `--init-only` | Запустить [Setup](https://code.claude.com/docs/ru/hooks.md#setup) и `SessionStart` hooks, затем выйти без запуска беседы | `claude --init-only` |

100| `--include-hook-events` | Включить события жизненного цикла hook в выходной поток. События `SessionStart` и `Setup` hook всегда включены и не требуют этого флага. Некоторые события hook, такие как `Notification`, `SessionEnd`, `PreCompact` и `PostCompact`, никогда не производят событие `hook_started`, даже с этим флагом. Для этих событий Claude Code всё ещё выдаёт `hook_progress`, пока команда hook, которая работает более одной секунды, производит вывод, и выдаёт `hook_response` только когда [hook, который работает в фоне](https://code.claude.com/docs/ru/hooks.md#run-hooks-in-the-background), завершается. Требует `--output-format stream-json` | `claude -p --output-format stream-json --verbose --include-hook-events "query"` |100| `--include-hook-events` | Включить события жизненного цикла hook в выходной поток. События `SessionStart` и `Setup` hook всегда включены и не требуют этого флага. Некоторые события hook, такие как `Notification`, `SessionEnd`, `PreCompact` и `PostCompact`, никогда не производят событие `hook_started`, даже с этим флагом. Для этих событий Claude Code всё ещё выдаёт `hook_progress`, пока команда hook, которая работает более одной секунды, производит вывод, и выдаёт `hook_response` только когда [hook, который работает в фоне](https://code.claude.com/docs/ru/hooks.md#run-hooks-in-the-background), завершается. Требует `--output-format stream-json` | `claude -p --output-format stream-json --verbose --include-hook-events "query"` |

101| `--include-partial-messages` | Включить частичные события потоковой передачи в вывод. Требует `--print` и `--output-format stream-json` | `claude -p --output-format stream-json --verbose --include-partial-messages "query"` |101| `--include-partial-messages` | Включить частичные события потоковой передачи в вывод. Требует `--print` и `--output-format stream-json` | `claude -p --output-format stream-json --verbose --include-partial-messages "query"` |

102| `--input-format` | Указать формат входных данных для режима печати (опции: `text`, `stream-json`) | `claude -p --output-format json --input-format stream-json` |102| `--input-format` | Указать формат входных данных для режима печати (варианты: `text`, `stream-json`) | `claude -p --input-format stream-json --output-format stream-json --verbose` |

103| `--json-schema` | Получить проверенный вывод JSON, соответствующий JSON Schema после завершения рабочего процесса агента (только режим печати). См. [структурированные выходы](https://code.claude.com/docs/ru/agent-sdk/structured-outputs.md). Claude Code выходит с ошибкой при недействительной схеме и принимает ключевое слово `format` как аннотацию без проверки на стороне клиента | `claude -p --json-schema '{"type":"object","properties":{...}}' "query"` |103| `--json-schema` | Получить проверенный вывод JSON, соответствующий JSON Schema после завершения рабочего процесса агента (только режим печати). См. [структурированные выходы](https://code.claude.com/docs/ru/agent-sdk/structured-outputs.md). Claude Code выходит с ошибкой при недействительной схеме и принимает ключевое слово `format` как аннотацию без проверки на стороне клиента | `claude -p --json-schema '{"type":"object","properties":{...}}' "query"` |

104| `--maintenance` | Запустить [Setup hooks](https://code.claude.com/docs/ru/hooks.md#setup) с matcher `maintenance` перед сеансом (только режим печати) | `claude -p --maintenance "query"` |104| `--maintenance` | Запустить [Setup hooks](https://code.claude.com/docs/ru/hooks.md#setup) с matcher `maintenance` перед сеансом (только режим печати) | `claude -p --maintenance "query"` |

105| `--max-budget-usd` | Остановить запуск, как только оценочные расходы на вызовы API достигнут этой суммы (только режим печати). Claude Code сверяет лимит со своей [клиентской оценкой стоимости](https://code.claude.com/docs/ru/agent-sdk/cost-tracking.md#estimates-not-billing), которая может отличаться от вашего счёта. Расходы [субагентов](https://code.claude.com/docs/ru/sub-agents.md) учитываются в лимите. Расходы могут превысить лимит, поэтому [оставляйте запас](https://code.claude.com/docs/ru/agent-sdk/agent-loop.md#budget-headroom). Когда вы возвращаетесь к диалогу с `--continue` или `--resume`, итоги, [восстановленные из предыдущих запусков](https://code.claude.com/docs/ru/agent-sdk/cost-tracking.md#accumulate-costs-across-multiple-calls), в нём не учитываются. Когда расходы достигают лимита, запуск ещё одного субагента завершается ошибкой `Budget limit reached`, а Claude Code останавливает всё ещё работающих фоновых субагентов; для этого поведения ограничения требуется Claude Code v2.1.217 или новее | `claude -p --max-budget-usd 5.00 "query"` |105| `--max-budget-usd` | Остановить запуск, как только оценочные расходы на вызовы API достигнут этой суммы (только режим печати). Claude Code сверяет лимит со своей [клиентской оценкой стоимости](https://code.claude.com/docs/ru/agent-sdk/cost-tracking.md#estimates-not-billing), которая может отличаться от вашего счёта. Расходы [субагентов](https://code.claude.com/docs/ru/sub-agents.md) учитываются в лимите. Расходы могут превысить лимит, поэтому [оставляйте запас](https://code.claude.com/docs/ru/agent-sdk/agent-loop.md#budget-headroom). Когда вы возвращаетесь к диалогу с `--continue` или `--resume`, итоги, [восстановленные из предыдущих запусков](https://code.claude.com/docs/ru/agent-sdk/cost-tracking.md#accumulate-costs-across-multiple-calls), в нём не учитываются. Когда расходы достигают лимита, запуск ещё одного субагента завершается ошибкой `Budget limit reached`, а Claude Code останавливает всё ещё работающих фоновых субагентов; для этого поведения ограничения требуется Claude Code v2.1.217 или новее | `claude -p --max-budget-usd 5.00 "query"` |

106| `--max-turns` | Ограничить количество агентских ходов (только режим печати). Выходит с ошибкой при достижении лимита. По умолчанию нет лимита. С `--input-format stream-json` сообщение, всё ещё находящееся в очереди, когда лимит заканчивает ход, остаётся в очереди и начинает новый ход с собственным лимитом | `claude -p --max-turns 3 "query"` |106| `--max-turns` | Ограничить количество агентских ходов (только режим печати). По умолчанию лимита нет. С `--input-format stream-json` сообщение, всё ещё находящееся в очереди, когда лимит завершает ход, остаётся в очереди и начинает новый ход со своим лимитом | `claude -p --max-turns 3 "query"` |

107| `--mcp-config` | Загрузить MCP-серверы из JSON-файлов или строк (через пробел). Когда вы передаёте этот флаг с `-p`, Claude Code перед первым ходом ждёт подключения ещё не подключившихся серверов — не дольше стартового таймаута [`MCP_TIMEOUT`](https://code.claude.com/docs/ru/env-vars), по умолчанию 30 секунд; сервер с [кэшированным списком инструментов](https://code.claude.com/docs/ru/mcp.md#managing-your-servers) не ожидается и подключается при первом использовании. В [самостоятельно размещённом окружении](https://code.claude.com/docs/ru/self-hosted-environments-configuration.md#connection-timing) вместо этого действует более короткое ожидание. Для ожидания требуется Claude Code v2.1.221 или новее | `claude --mcp-config ./mcp.json` |107| `--mcp-config` | Загрузить MCP-серверы из JSON-файлов или строк (через пробел). Когда вы передаёте этот флаг с `-p`, Claude Code перед первым ходом ждёт подключения ещё не подключившихся серверов — не дольше стартового таймаута [`MCP_TIMEOUT`](https://code.claude.com/docs/ru/env-vars), по умолчанию 30 секунд; сервер с [кэшированным списком инструментов](https://code.claude.com/docs/ru/mcp.md#managing-your-servers) не ожидается и подключается при первом использовании. В [самостоятельно размещённом окружении](https://code.claude.com/docs/ru/self-hosted-environments-configuration.md#connection-timing) вместо этого действует более короткое ожидание. Для ожидания требуется Claude Code v2.1.221 или новее | `claude --mcp-config ./mcp.json` |

108| `--model` | Устанавливает модель для текущего сеанса с [псевдонимом модели](https://code.claude.com/docs/ru/model-config.md#model-aliases), таким как `sonnet`, `opus`, `haiku` или `fable`, или полным именем модели. Переопределяет параметр [`model`](https://code.claude.com/docs/ru/settings-reference#model) и [`ANTHROPIC_MODEL`](https://code.claude.com/docs/ru/model-config#environment-variables) | `claude --model claude-sonnet-5` |108| `--model` | Устанавливает модель для текущего сеанса с [псевдонимом модели](https://code.claude.com/docs/ru/model-config.md#model-aliases), таким как `sonnet`, `opus`, `haiku` или `fable`, или полным именем модели. Переопределяет параметр [`model`](https://code.claude.com/docs/ru/settings-reference#model) и [`ANTHROPIC_MODEL`](https://code.claude.com/docs/ru/model-config#environment-variables) | `claude --model claude-sonnet-5` |

109| `--name`, `-n` | Задать отображаемое имя сессии, которое показывается в `/resume` и в заголовке терминала. Именованную сессию можно возобновить с помощью `claude --resume <name>`. [`/rename`](https://code.claude.com/docs/ru/commands) изменяет имя во время сессии и также показывает его на панели промпта | `claude -n "my-feature-work"` |109| `--name`, `-n` | Задать отображаемое имя сессии, которое показывается в `/resume` и в заголовке терминала. Именованную сессию можно возобновить с помощью `claude --resume <name>`. [`/rename`](https://code.claude.com/docs/ru/commands) изменяет имя во время сессии и также показывает его на панели промпта | `claude -n "my-feature-work"` |

Details

335| **C/C++** | GCC, Clang, cmake, ninja, conan |335| **C/C++** | GCC, Clang, cmake, ninja, conan |

336| **Docker** | docker, dockerd, docker compose |336| **Docker** | docker, dockerd, docker compose |

337| **Базы данных** | PostgreSQL 16, Redis 7.0 |337| **Базы данных** | PostgreSQL 16, Redis 7.0 |

338| **Браузер** | Chrome for Testing в `/usr/bin/google-chrome`, при этом переменная окружения `CHROME_PATH` указывает на этот путь |

338| **Утилиты** | git, gh, jq, yq, ripgrep, tmux, vim, nano |339| **Утилиты** | git, gh, jq, yq, ripgrep, tmux, vim, nano |

339 340 

340¹ Bun установлен, но имеет известные [проблемы совместимости с прокси](#install-dependencies-with-a-sessionstart-hook) при загрузке пакетов.341¹ Bun установлен, но имеет известные [проблемы совместимости с прокси](#install-dependencies-with-a-sessionstart-hook) при загрузке пакетов.

commands.md +2 −2

Details

35В таблице ниже перечислены все команды, входящие в Claude Code. Большинство из них — встроенные команды, поведение которых запрограммировано в CLI. Отмечены записи двух видов:35В таблице ниже перечислены все команды, входящие в Claude Code. Большинство из них — встроенные команды, поведение которых запрограммировано в CLI. Отмечены записи двух видов:

36 36 

37* **[Скилл](https://code.claude.com/docs/ru/skills.md#bundled-skills)**: встроенный скилл. Он работает так же, как скиллы, которые вы пишете сами: это промпт, передаваемый Claude.37* **[Скилл](https://code.claude.com/docs/ru/skills.md#bundled-skills)**: встроенный скилл. Он работает так же, как скиллы, которые вы пишете сами: это промпт, передаваемый Claude.

38 * `/verify` запускается только по вашему вызову. До v2.1.215 Claude также мог запускать `/verify` самостоятельно.38 * `/verify` запускается только по вашему вызову.

39* **[Рабочий процесс](https://code.claude.com/docs/ru/workflows.md#bundled-workflows)**: встроенный [динамический рабочий процесс](https://code.claude.com/docs/ru/workflows.md), который распределяет работу между множеством субагентов и выполняется в фоновом режиме.39* **[Рабочий процесс](https://code.claude.com/docs/ru/workflows.md#bundled-workflows)**: встроенный [динамический рабочий процесс](https://code.claude.com/docs/ru/workflows.md), который распределяет работу между множеством субагентов и выполняется в фоновом режиме.

40 * `/deep-research` запускается только по вашему вызову.40 * `/deep-research` запускается только по вашему вызову.

41 41 


114| `/model [model]` | Сменить AI-модель и сохранить её как модель по умолчанию для новых сессий. Для моделей, которые это поддерживают, используйте стрелки влево/вправо, чтобы [настроить уровень effort](https://code.claude.com/docs/ru/model-config.md#adjust-effort-level). Без аргумента открывает окно выбора; нажмите `s` на строке, чтобы переключиться только для текущей сессии. См. [когда начинает действовать новая модель](https://code.claude.com/docs/ru/interactive-mode.md#when-claude-code-sends-what-you-queued). До v2.1.242 переключение могло откладываться. С `-p` передайте аргумент модели, который не сохраняется как модель по умолчанию; требуется v2.1.205 или новее |114| `/model [model]` | Сменить AI-модель и сохранить её как модель по умолчанию для новых сессий. Для моделей, которые это поддерживают, используйте стрелки влево/вправо, чтобы [настроить уровень effort](https://code.claude.com/docs/ru/model-config.md#adjust-effort-level). Без аргумента открывает окно выбора; нажмите `s` на строке, чтобы переключиться только для текущей сессии. См. [когда начинает действовать новая модель](https://code.claude.com/docs/ru/interactive-mode.md#when-claude-code-sends-what-you-queued). До v2.1.242 переключение могло откладываться. С `-p` передайте аргумент модели, который не сохраняется как модель по умолчанию; требуется v2.1.205 или новее |

115| `/output-style [style]` | Показать список [стилей вывода](https://code.claude.com/docs/ru/output-styles.md) или переключиться на один из них, например `/output-style concise`. См. [Изменение стиля вывода](https://code.claude.com/docs/ru/output-styles.md#change-your-output-style). Требуется Claude Code v2.1.269 или новее |115| `/output-style [style]` | Показать список [стилей вывода](https://code.claude.com/docs/ru/output-styles.md) или переключиться на один из них, например `/output-style concise`. См. [Изменение стиля вывода](https://code.claude.com/docs/ru/output-styles.md#change-your-output-style). Требуется Claude Code v2.1.269 или новее |

116| `/passes` | Поделиться бесплатной неделей Claude Code с друзьями. Отображается, только если ваша учётная запись соответствует требованиям |116| `/passes` | Поделиться бесплатной неделей Claude Code с друзьями. Отображается, только если ваша учётная запись соответствует требованиям |

117| `/permissions` | Управлять правилами allow, ask и deny для разрешений инструментов. Открывает интерактивное диалоговое окно, где можно просматривать правила по области действия, добавлять или удалять правила, управлять рабочими каталогами и просматривать [недавние отказы авторежима](https://code.claude.com/docs/ru/auto-mode-config.md#review-denials). Вы также можете просматривать и редактировать [правила классификатора авторежима](https://code.claude.com/docs/ru/auto-mode-config.md#edit-rules-from-permissions) на вкладке **Auto mode** диалогового окна. Если вы запускаете команду, пока Claude отвечает, Claude Code сразу открывает диалоговое окно и применяет ваши изменения начиная со следующего вызова инструмента Claude в том же ходе. До v2.1.234 Claude Code ставил команду в очередь до завершения хода. Псевдоним: `/allowed-tools` |117| `/permissions` | Управлять правилами allow, ask и deny для разрешений инструментов. Открывает интерактивное диалоговое окно, где можно просматривать правила по области действия, добавлять или удалять правила, управлять рабочими каталогами и просматривать [недавние отказы авторежима](https://code.claude.com/docs/ru/auto-mode-config.md#review-denials). Вы также можете просматривать и редактировать [правила классификатора авторежима](https://code.claude.com/docs/ru/auto-mode-config.md#edit-rules-from-permissions) на вкладке **Auto mode** диалогового окна. Псевдоним: `/allowed-tools` |

118| `/plan [description]` | Войти в режим планирования прямо из промпта. Передайте необязательное описание, чтобы войти в режим планирования и сразу начать с этой задачи, например `/plan fix the auth bug` |118| `/plan [description]` | Войти в режим планирования прямо из промпта. Передайте необязательное описание, чтобы войти в режим планирования и сразу начать с этой задачи, например `/plan fix the auth bug` |

119| `/plugin [subcommand]` | Управлять [плагинами](https://code.claude.com/docs/ru/plugins/overview.md) Claude Code. Запустите без аргумента, чтобы открыть меню плагинов, или передайте подкоманду, такую как `list`, `install`, `enable` или `disable`, чтобы действовать напрямую. Claude Code может активировать плагин во время установки; [сводка установки](https://code.claude.com/docs/ru/plugins/install.md#install-a-plugin) сообщит, сделал ли он это или нужно выполнить `/reload-plugins` |119| `/plugin [subcommand]` | Управлять [плагинами](https://code.claude.com/docs/ru/plugins/overview.md) Claude Code. Запустите без аргумента, чтобы открыть меню плагинов, или передайте подкоманду, такую как `list`, `install`, `enable` или `disable`, чтобы действовать напрямую. Claude Code может активировать плагин во время установки; [сводка установки](https://code.claude.com/docs/ru/plugins/install.md#install-a-plugin) сообщит, сделал ли он это или нужно выполнить `/reload-plugins` |

120| `/plugin-authoring` | Загрузить справочник, на основе которого Claude [пишет мод](https://code.claude.com/docs/ru/plugins/mods/create.md#ask-claude-for-a-mod). Claude может загрузить его самостоятельно, когда вы просите мод. Это скилл из [встроенного плагина](https://code.claude.com/docs/ru/plugins/mods/overview.md#mods-built-into-claude-code), который можно отключить в `/plugin`. Требуется Claude Code v2.1.287 или новее |120| `/plugin-authoring` | Загрузить справочник, на основе которого Claude [пишет мод](https://code.claude.com/docs/ru/plugins/mods/create.md#ask-claude-for-a-mod). Claude может загрузить его самостоятельно, когда вы просите мод. Это скилл из [встроенного плагина](https://code.claude.com/docs/ru/plugins/mods/overview.md#mods-built-into-claude-code), который можно отключить в `/plugin`. Требуется Claude Code v2.1.287 или новее |

costs.md +6 −4

Details

20>20>

21> Блок Session в `/usage` показывает использование токенов API и предназначен для пользователей API. Для подписчиков Claude Pro, Max и Ultra использование включено в подписку, поэтому цифра стоимости сессии не имеет значения для целей биллинга. Подписчики видят полосы использования плана, статистику активности и разбивку использования на том же экране.21> Блок Session в `/usage` показывает использование токенов API и предназначен для пользователей API. Для подписчиков Claude Pro, Max и Ultra использование включено в подписку, поэтому цифра стоимости сессии не имеет значения для целей биллинга. Подписчики видят полосы использования плана, статистику активности и разбивку использования на том же экране.

22 22 

23Блок Session в верхней части `/usage` показывает подробную статистику использования токенов для вашей текущей сессии. Claude Code вычисляет цифру в долларах локально на основе количества токенов по цене списка, если только таблица [`modelPricing`](https://code.claude.com/docs/ru/settings-reference#modelpricing) не действует. Администратор устанавливает её в управляемых параметрах вашей организации, чтобы цифра использовала ваши договорные ставки, и пока таблица действует, строка `Total cost` содержит примечание `at your organization's configured rates`. Цифра является оценкой, поэтому для авторитетного выставления счётов см. страницу Usage в [Claude Console](https://platform.claude.com/usage).23Блок Session в верхней части `/usage` показывает подробную статистику использования токенов для вашей текущей сессии.

24 

25Claude Code вычисляет цифру в долларах локально на основе количества токенов по цене списка, если только не действует таблица [`modelPricing`](https://code.claude.com/docs/ru/settings-reference#modelpricing). Администратор устанавливает её в управляемых настройках вашей организации, чтобы цифра использовала ваши договорные ставки, и пока таблица действует, строка `Total cost` содержит примечание `at your organization's configured rates`. Цифра является оценкой, поэтому для точных данных биллинга см. [Управление затратами для вашей организации](#manage-costs-for-your-organization).

24 26 

25```text theme={null}27```text theme={null}

26Total cost: $0.5528Total cost: $0.55


138 140 

139Если вы запустите `/usage-credits` снова, пока ваш более ранний запрос ожидает администратора, Claude Code говорит вам, что запрос уже был отправлен, а не отправляет дубликат. После того как администратор отклонит ваш запрос, запуск команды снова отправляет новый. До версии v2.1.222 отклонённый запрос также блокировал новые запросы.141Если вы запустите `/usage-credits` снова, пока ваш более ранний запрос ожидает администратора, Claude Code говорит вам, что запрос уже был отправлен, а не отправляет дубликат. После того как администратор отклонит ваш запрос, запуск команды снова отправляет новый. До версии v2.1.222 отклонённый запрос также блокировал новые запросы.

140 142 

141На планах Pro и Max, когда вы достигнете лимита расходов с доступными кредитами использования, Claude Code предлагает вам увеличить или удалить лимит без выхода из CLI. Если сервер отклоняет изменение, см. [Could not update your spend limit](https://code.claude.com/docs/ru/errors.md#could-not-update-your-spend-limit).143На планах Pro, Max и Ultra, когда вы достигнете лимита расходов с доступными кредитами использования, Claude Code предлагает вам увеличить или удалить лимит без выхода из CLI. Если сервер отклоняет изменение, см. [Could not update your spend limit](https://code.claude.com/docs/ru/errors.md#could-not-update-your-spend-limit).

142 144 

143## Управление затратами для вашей организации145## Управление затратами для вашей организации

144 146 


149| Ваша конфигурация | Просмотр расходов | Ограничение расходов | Отчётность по пользователям |151| Ваша конфигурация | Просмотр расходов | Ограничение расходов | Отчётность по пользователям |

150| :- | :- | :- | :- |152| :- | :- | :- | :- |

151| [Claude for Teams или Enterprise](#claude-for-teams-and-enterprise) | [Отчёт о расходах в аналитике организации](https://support.claude.com/en/articles/12883420-view-usage-analytics-for-team-and-enterprise-plans) | Лимиты расходов в параметрах администратора | [CSV отчёт о расходах](https://support.claude.com/en/articles/12883420-view-usage-analytics-for-team-and-enterprise-plans); [Enterprise Analytics API](https://platform.claude.com/docs/en/api/admin/analytics) на Enterprise |153| [Claude for Teams или Enterprise](#claude-for-teams-and-enterprise) | [Отчёт о расходах в аналитике организации](https://support.claude.com/en/articles/12883420-view-usage-analytics-for-team-and-enterprise-plans) | Лимиты расходов в параметрах администратора | [CSV отчёт о расходах](https://support.claude.com/en/articles/12883420-view-usage-analytics-for-team-and-enterprise-plans); [Enterprise Analytics API](https://platform.claude.com/docs/en/api/admin/analytics) на Enterprise |

152| [Claude Console (API)](#claude-console) | [Страница использования Console](https://platform.claude.com/usage) | Лимиты расходов рабочего пространства | [Панель управления Console](https://platform.claude.com/claude-code), [Claude Code Analytics API](https://platform.claude.com/docs/en/build-with-claude/claude-code-analytics-api) |154| [Claude Console (API)](#claude-console) | [Страница Cost в Console](https://platform.claude.com/cost) | Лимиты расходов рабочего пространства | [Панель управления Console](https://platform.claude.com/claude-code), [Claude Code Analytics API](https://platform.claude.com/docs/en/build-with-claude/claude-code-analytics-api) |

153| [Amazon Bedrock, Google Cloud's Agent Platform или Microsoft Foundry](#cloud-providers) | Ваша консоль биллинга облака | Элементы управления бюджетом вашего облака | [OpenTelemetry](https://code.claude.com/docs/ru/monitoring-usage.md) или [LLM gateway](https://code.claude.com/docs/ru/llm-gateway) |155| [Amazon Bedrock, Google Cloud's Agent Platform или Microsoft Foundry](#cloud-providers) | Ваша консоль биллинга облака | Элементы управления бюджетом вашего облака | [OpenTelemetry](https://code.claude.com/docs/ru/monitoring-usage.md) или [LLM gateway](https://code.claude.com/docs/ru/llm-gateway) |

154 156 

155[Экспорт OpenTelemetry](https://code.claude.com/docs/ru/monitoring-usage.md) работает на каждой конфигурации и является единственным вариантом, который передаёт метрики токенов и затрат по пользователям в ваш собственный стек наблюдаемости практически в реальном времени.157[Экспорт OpenTelemetry](https://code.claude.com/docs/ru/monitoring-usage.md) работает на каждой конфигурации и является единственным вариантом, который передаёт метрики токенов и затрат по пользователям в ваш собственный стек наблюдаемости практически в реальном времени.


193>195>

194> Для организаций с пользовательскими ограничениями скорости трафик Claude Code в этом рабочем пространстве учитывается в общих ограничениях скорости API вашей организации. Вы можете установить [ограничение скорости рабочего пространства](https://platform.claude.com/docs/en/api/rate-limits#setting-lower-limits-for-workspaces) на странице Limits этого рабочего пространства в Claude Console, чтобы ограничить долю Claude Code и защитить другие производственные рабочие нагрузки.196> Для организаций с пользовательскими ограничениями скорости трафик Claude Code в этом рабочем пространстве учитывается в общих ограничениях скорости API вашей организации. Вы можете установить [ограничение скорости рабочего пространства](https://platform.claude.com/docs/en/api/rate-limits#setting-lower-limits-for-workspaces) на странице Limits этого рабочего пространства в Claude Console, чтобы ограничить долю Claude Code и защитить другие производственные рабочие нагрузки.

195 197 

196Для отчётности по пользователям [панель управления Console](https://platform.claude.com/claude-code) показывает расходы и принятые строки на члена команды, а [Claude Code Analytics API](https://platform.claude.com/docs/en/build-with-claude/claude-code-analytics-api) возвращает те же ежедневные метрики по пользователям программно с помощью [Admin API ключа](https://platform.claude.com/settings/admin-keys). См. [аналитика для клиентов API](https://code.claude.com/docs/ru/analytics.md#access-analytics-for-api-customers).198Для отчётности по пользователям [панель управления Console](https://platform.claude.com/claude-code) показывает расходы и принятые строки на члена команды, а [Claude Code Analytics API](https://platform.claude.com/docs/en/build-with-claude/claude-code-analytics-api) программно возвращает ежедневные метрики по пользователям с помощью [Admin API-ключа](https://platform.claude.com/settings/admin-keys). См. [аналитика для клиентов API](https://code.claude.com/docs/ru/analytics.md#access-analytics-for-api-customers).

197 199 

198#### Рекомендации по ограничению скорости200#### Рекомендации по ограничению скорости

199 201 

desktop.md +24 −11

Details

131* Запускать или останавливать серверы либо останавливать все сразу из меню **Dev servers** в заголовке панели Browser131* Запускать или останавливать серверы либо останавливать все сразу из меню **Dev servers** в заголовке панели Browser

132* Выбирать, сохраняет ли Browser cookies после выхода из приложения, с помощью **Keep cookies** в меню **⋮** панели Browser, чтобы вам не приходилось повторно входить во время разработки132* Выбирать, сохраняет ли Browser cookies после выхода из приложения, с помощью **Keep cookies** в меню **⋮** панели Browser, чтобы вам не приходилось повторно входить во время разработки

133 133 

134В сессии SSH cookies панели теряются при выходе из Desktop. Изменить это с помощью **Keep cookies** нельзя.

135 

134Claude создаёт начальную конфигурацию сервера на основе вашего проекта. Если ваше приложение использует пользовательскую команду dev, отредактируйте `.claude/launch.json` в соответствии с вашей конфигурацией. См. [Configure preview servers](#configure-preview-servers) для полного справочника.136Claude создаёт начальную конфигурацию сервера на основе вашего проекта. Если ваше приложение использует пользовательскую команду dev, отредактируйте `.claude/launch.json` в соответствии с вашей конфигурацией. См. [Configure preview servers](#configure-preview-servers) для полного справочника.

135 137 

136Чтобы очистить сохранённые данные Browser, выберите **Clear browsing data** в меню **⋮** панели Browser. Чтобы полностью отключить Browser, выключите **Browser tools** в **Settings > Code** или **Settings > Claude Code**.138Чтобы очистить сохранённые данные Browser, выберите **Clear browsing data** в меню **⋮** панели Browser. Чтобы полностью отключить Browser, выключите **Browser tools** в **Settings > Code** или **Settings > Claude Code**.


312 314 

313В любом макете введите `/context` в поле ввода промпта, чтобы вывести в чат разбивку контекстного окна этой сессии по категориям.315В любом макете введите `/context` в поле ввода промпта, чтобы вывести в чат разбивку контекстного окна этой сессии по категориям.

314 316 

315В обоих макетах есть кольцо использования рядом с выбором модели. Нажмите на него, чтобы увидеть использование вашего плана, которое является общим для всех ваших интерфейсов Claude Code.317В обоих макетах кольцо использования находится в строке под полем ввода промпта. Нажмите на него, чтобы увидеть использование вашего плана, которое является общим для всех ваших интерфейсов Claude Code.

316 318 

317## Позвольте Claude использовать ваш компьютер319## Позвольте Claude использовать ваш компьютер

318 320 


409 411 

410#### Запуск сессии в собственном worktree412#### Запуск сессии в собственном worktree

411 413 

412В проекте, который является Git-репозиторием, включите **Worktree** перед запуском сессии, чтобы запустить её в собственном [Git worktree](https://code.claude.com/docs/ru/worktrees.md) — изолированной копии проекта. По умолчанию **Worktree** отключён, и Claude работает непосредственно в папке проекта. В [текущем макете](#check-which-layout-you-have) включите кнопку **Worktree** в [строке под полем промпта](#start-a-session).414В проекте, который является репозиторием Git, включите **Worktree** перед началом сессии, чтобы запустить её в отдельном [Git worktree](https://code.claude.com/docs/ru/worktrees.md) — изолированной копии проекта. По умолчанию **Worktree** отключён, и Claude работает непосредственно в папке проекта. В [текущем макете](#check-which-layout-you-have) включите **Worktree** в [строке под полем ввода промпта](#start-a-session).

413 415 

414* **Со [сторонним поставщиком](https://code.claude.com/docs/ru/third-party-integrations.md)**: если в строке под полем промпта отображается элемент управления папкой проекта, но нет кнопки **Worktree**, нажмите на этот элемент управления и включите **Worktree**416* **Со [сторонним провайдером](https://code.claude.com/docs/ru/third-party-integrations.md)**: если в строке под полем ввода промпта отображается элемент управления папкой проекта, но нет **Worktree**, нажмите на элемент управления папкой проекта и включите **Worktree**

415* **По умолчанию для [сохранённого локального окружения или окружения SSH](#create-a-saved-environment)**: задайте **Worktree** при создании или редактировании окружения417* **По умолчанию для [сохранённого локального окружения или окружения SSH](#create-a-saved-environment)**: задайте **Worktree** при создании или редактировании окружения

416* **[Прежний макет](#check-which-layout-you-have)**: установите флажок **worktree** рядом с названием ветки над полем промпта418* **[Прежний макет](#check-which-layout-you-have)**: установите флажок **worktree** рядом с названием ветки над полем промпта

417 419 


1094 1096 

1095##### Подключение в Windows без клиента OpenSSH1097##### Подключение в Windows без клиента OpenSSH

1096 1098 

1097В Windows вы подключаетесь через встроенный SSH-клиент Desktop, если ваш компьютер не соответствует [требованиям для клиента OpenSSH](#use-your-ssh-configuration). Со сторонним провайдером вы по умолчанию подключаетесь через встроенный клиент, и ваш администратор может это изменить. Об этой настройке см. [SSH remote sessions in Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions).1099В Windows вы подключаетесь через встроенный SSH-клиент Desktop, если ваш компьютер не соответствует [требованиям для клиента OpenSSH](#use-your-ssh-configuration). При стороннем провайдере то, через какой клиент вы подключаетесь, также зависит от версии Desktop и настроек вашего администратора. См. [SSH remote sessions in Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions).

1098 1100 

1099Со встроенным клиентом вы всё равно можете ввести имя `Host` из вашей конфигурации SSH в поле **SSH host**, если в вашем `PATH` есть команда `ssh`, со следующими ограничениями:1101Со встроенным клиентом вы всё равно можете ввести имя `Host` из вашей конфигурации SSH в поле **SSH host**, если в вашем `PATH` есть команда `ssh`, со следующими ограничениями:

1100 1102 

1101* **Настройки из записи**: Desktop берёт `HostName`, `User`, `Port` и `IdentityFile`. Он также берёт `ProxyCommand`, если в вашем `PATH` есть оболочка `sh`.1103* **Настройки из записи**: Desktop берёт `HostName`, `User`, `Port`, `IdentityFile` и `ConnectTimeout`. Он также берёт `ProxyCommand`, если в вашем `PATH` есть оболочка `sh`.

1102* **SSH key (optional)**: оставьте это поле пустым, чтобы сохранить `IdentityFile` из записи, поскольку выбранный здесь файл ключа заменяет `IdentityFile`1104* **SSH key (optional)**: оставьте это поле пустым, чтобы сохранить `IdentityFile` из записи, поскольку выбранный здесь файл ключа заменяет `IdentityFile`

1103* **`CertificateFile` и `ProxyJump`**: Desktop игнорирует `CertificateFile`, а подключение завершается ошибкой, если в записи задан `ProxyJump`. Чтобы использовать любую из этих настроек, [подключайтесь через клиент OpenSSH](#use-your-ssh-configuration).1105* **`CertificateFile` и `ProxyJump`**: Desktop игнорирует `CertificateFile`, а подключение завершается ошибкой, если в записи задан `ProxyJump`. Чтобы использовать любую из этих настроек, [подключайтесь через клиент OpenSSH](#use-your-ssh-configuration).

1104 1106 


1198 1200 

1199##### Увеличение таймаута SSH-соединения1201##### Увеличение таймаута SSH-соединения

1200 1202 

1201Если ваша конфигурация SSH не задаёт `ConnectTimeout` для хоста, Desktop даёт `ssh` 30 секунд на подключение. При использовании jump-хоста или `ProxyCommand` это время включает время, необходимое маршруту для подключения. Если вашему маршруту нужно больше времени, добавьте в запись большее значение:1203Если время ожидания сессии истекает при подключении через промежуточный хост или `ProxyCommand`, увеличьте `ConnectTimeout` в записи удалённой машины в вашем `~/.ssh/config`. Используйте значение больше 90 секунд. Прибавьте время, в течение которого промежуточный хост или `ProxyCommand` ждёт вас, например на запросе входа или push-уведомления на телефон:

1202 1204 

1203```text ~/.ssh/config theme={null}1205```text ~/.ssh/config theme={null}

1204Host devbox1206Host devbox


1210 1212 

1211`ssh` использует первое найденное для хоста значение, поэтому размещайте запись выше любой записи `Host *`, которая задаёт `ConnectTimeout`. Чтобы убедиться, выполните `ssh -G devbox` в терминале на вашем компьютере. Его вывод содержит `connecttimeout 120`. После изменения значения закройте и снова откройте Desktop.1213`ssh` использует первое найденное для хоста значение, поэтому размещайте запись выше любой записи `Host *`, которая задаёт `ConnectTimeout`. Чтобы убедиться, выполните `ssh -G devbox` в терминале на вашем компьютере. Его вывод содержит `connecttimeout 120`. После изменения значения закройте и снова откройте Desktop.

1212 1214 

1213Если сама удалённая машина ожидает подтверждения на вашем телефоне, подтвердите в течение 45 секунд, какое бы значение `ConnectTimeout` вы ни задали. Этот лимит нельзя увеличить, потому что Desktop сам задаёт `ServerAliveInterval` и `ServerAliveCountMax`, и тогда `ssh` закрывает вход, во время которого удалённая машина ничего не отправляет в течение этого времени. Если вместо этого вас ожидает jump-хост или `ProxyCommand`, увеличьте `ConnectTimeout` в записи удалённой машины, чтобы покрыть это время.1215Если ваша конфигурация SSH не задаёт `ConnectTimeout` для хоста, Desktop даёт `ssh` 30 секунд на подключение. При подключении через промежуточный хост или `ProxyCommand` это время включает время, за которое подключается маршрут.

1216 

1217| `ConnectTimeout` | Подключение | Время, которое у вас есть |

1218| - | - | - |

1219| Не задан | Вы запускаете сессию через промежуточный хост или `ProxyCommand` в Claude Desktop v4.4212.0 или новее в macOS или Linux | 30 секунд, затем вторая попытка с 90 секундами. Если Desktop показал вам запрос во время первой попытки, второй попытки не будет. Время на запросе входа, который Desktop показывает для хоста `ProxyJump`, не учитывается. Другие ожидания на маршруте учитываются. |

1220| Не задан | Desktop в Windows или более ранней версии, удалённая машина с `MaxSessions 1` или переподключение, которое Desktop начинает сам | 30 секунд. Учитывается каждое ожидание на маршруте. |

1221| Задан | Каждое подключение и переподключение | Заданное вами значение. Учитывается каждое ожидание на маршруте. |

1222 

1223Если сама удалённая машина ждёт подтверждения на вашем телефоне, подтвердите в течение 45 секунд, какое бы значение `ConnectTimeout` вы ни задали. Этот лимит нельзя увеличить, потому что Desktop сам задаёт `ServerAliveInterval` и `ServerAliveCountMax`, и `ssh` затем закрывает вход, в котором удалённая машина ничего не отправляет в течение этого времени.

1214 1224 

1215##### Исправление блока `Match host`, который применяет только Desktop1225##### Исправление блока `Match host`, который применяет только Desktop

1216 1226 


1334>1344>

1335> В некоторых случаях изменения всё равно завершаются ошибкой, в том числе в следующих:1345> В некоторых случаях изменения всё равно завершаются ошибкой, в том числе в следующих:

1336>1346>

1337> * **Встроенный SSH-клиент**: Desktop использует его, например, при установке из Microsoft Store, на компьютере с Windows без OpenSSH 9.4 или более поздней версии от Microsoft, или по умолчанию на Windows со сторонним провайдером1347> * **Встроенный SSH-клиент**: Desktop использует его, например при установке из Microsoft Store или на компьютере с Windows без Microsoft OpenSSH 9.4 или новее

1338> * **Расположение репозитория**: репозиторий — это ваш домашний каталог, папка выше него или `~/.claude`1348> * **Расположение репозитория**: репозиторий — это ваш домашний каталог, папка выше него или `~/.claude`

1339> * **Пути macOS**: на удалённой машине с macOS репозиторий находится в `/Volumes`, или имя папки в пути к репозиторию или worktree содержит `~` или символ, не входящий в ASCII1349> * **Пути macOS**: на удалённой машине с macOS репозиторий находится в `/Volumes`, или имя папки в пути к репозиторию или worktree содержит `~` или символ, не входящий в ASCII

1340> * **Ограничения папок**: ваша организация ограничивает папки, которые могут использовать сессии1350> * **Ограничения папок**: ваша организация ограничивает папки, которые могут использовать сессии


1369* **Запомненный пароль**: пароль, который вы разрешили Desktop запомнить, тоже работает без запроса, но для длительного отсутствия предпочтительнее ключ, хранящийся в вашем SSH-агенте. Если входы с этим паролем прерываются или зависают, Desktop может прекратить попытки переподключения и ждать вас.1379* **Запомненный пароль**: пароль, который вы разрешили Desktop запомнить, тоже работает без запроса, но для длительного отсутствия предпочтительнее ключ, хранящийся в вашем SSH-агенте. Если входы с этим паролем прерываются или зависают, Desktop может прекратить попытки переподключения и ждать вас.

1370* **Любой другой запрос**: если удалённая машина запрашивает что-то ещё, например одноразовый код, вы можете получить уведомление на компьютере. Нажмите на уведомление или отправьте сообщение в сессии, и Desktop покажет запрос.1380* **Любой другой запрос**: если удалённая машина запрашивает что-то ещё, например одноразовый код, вы можете получить уведомление на компьютере. Нажмите на уведомление или отправьте сообщение в сессии, и Desktop покажет запрос.

1371 1381 

1372> [accordion] Если jump-хост запрашивает вход, перебой длительный, часть вывода отсутствует или процесс исчез1382> [accordion] Если промежуточный хост запрашивает вход, сбой длительный, сообщение не отправлено, вывод отсутствует или процесс исчез

1373>1383>

1374> * **Jump-хост, push-уведомления прекращаются в ваше отсутствие**: это может происходить с Desktop на macOS или Linux, когда никто не отвечает на запрос входа jump-хоста, например push-уведомление на телефон. Тогда Desktop прекращает попытки переподключения, пока за компьютером никого нет. Когда вы разблокируете компьютер или начнёте им пользоваться, вы можете получить ещё одно push-уведомление, потому что Desktop может повторить попытку. После трёх попыток без ответа он ждёт, пока вы не повторите попытку или не отправите сообщение.1384> * **Jump-хост, push-уведомления прекращаются в ваше отсутствие**: это может происходить с Desktop на macOS или Linux, когда никто не отвечает на запрос входа jump-хоста, например push-уведомление на телефон. Тогда Desktop прекращает попытки переподключения, пока за компьютером никого нет. Когда вы разблокируете компьютер или начнёте им пользоваться, вы можете получить ещё одно push-уведомление, потому что Desktop может повторить попытку. После трёх попыток без ответа он ждёт, пока вы не повторите попытку или не отправите сообщение.

1375> * **Jump-хост, push-уведомления продолжают приходить**: там, где Desktop не может определить, что никто не отвечает, как в случае Desktop на Windows, он продолжает попытки, пока у него есть процесс, к которому можно снова присоединиться, независимо от того, работает ли этот процесс. С каждой попыткой вы можете получать новое push-уведомление. Чтобы прекратить попытки, закройте Desktop, что [может стоить вам выполняющейся задачи](#reopen-a-session-after-you-quit-desktop).1385> * **Jump-хост, push-уведомления продолжают приходить**: там, где Desktop не может определить, что никто не отвечает, как в случае Desktop на Windows, он продолжает попытки, пока у него есть процесс, к которому можно снова присоединиться, независимо от того, работает ли этот процесс. С каждой попыткой вы можете получать новое push-уведомление. Чтобы прекратить попытки, закройте Desktop, что [может стоить вам выполняющейся задачи](#reopen-a-session-after-you-quit-desktop).

1376> * **Длительный перебой**: Desktop замедляется примерно до одной попытки каждые пять минут. Чтобы переподключиться быстрее, повторите попытку в сессии или отправьте сообщение, которое Desktop доставит после подключения.1386> * **Длительный сбой**: Desktop замедляется примерно до одной попытки каждые пять минут. Чтобы переподключиться раньше, повторите попытку в сессии или отправьте сообщение. Desktop пытается доставить сообщение, как только подключится.

1387> * **Сообщение не отправлено**: строка `Your organization's settings haven't loaded, so your message to <host> wasn't sent. Retry to send it.` под вашим сообщением означает, что Desktop переподключился и задержал ваше сообщение, потому что настройки вашей организации ещё не загрузились. Выберите **Retry**, чтобы отправить сообщение сейчас. Если ничего не делать, Desktop повторит попытку, как только настройки загрузятся.

1377> * **Отсутствующий вывод**: пока Desktop отключён, помощник хранит самый последний вывод Claude Code каждой сессии в буфере размером 16 MiB и отбрасывает более старый вывод. После переподключения Desktop сессия может показывать `Loading recent output from <host>…`. Если Desktop не может загрузить весь вывод, вы увидите строку `Some output produced while you were disconnected may be missing here.` Эта строка не означает, что задача остановилась.1388> * **Отсутствующий вывод**: пока Desktop отключён, помощник хранит самый последний вывод Claude Code каждой сессии в буфере размером 16 MiB и отбрасывает более старый вывод. После переподключения Desktop сессия может показывать `Loading recent output from <host>…`. Если Desktop не может загрузить весь вывод, вы увидите строку `Some output produced while you were disconnected may be missing here.` Эта строка не означает, что задача остановилась.

1378> * **Процесс пропал**: процесс завершился, пока Desktop был отключён, например при перезапуске удалённой машины. Тогда Desktop может запустить новый процесс из сохранённой истории диалога и сказать Claude продолжить задачу. Если задача остаётся остановленной, отправьте сообщение. Со сторонним провайдером обновитесь до Claude Desktop v2.42304.0 или новее, поскольку более ранние версии никогда не продолжают задачу самостоятельно.1389> * **Процесс пропал**: процесс завершился, пока Desktop был отключён, например при перезапуске удалённой машины. Тогда Desktop может запустить новый процесс из сохранённой истории диалога и сказать Claude продолжить задачу. Если задача остаётся остановленной, отправьте сообщение. Со сторонним провайдером обновитесь до Claude Desktop v2.42304.0 или новее, поскольку более ранние версии никогда не продолжают задачу самостоятельно.

1379 1390 


1625 1636 

1626| Поле | Значение |1637| Поле | Значение |

1627| :- | :- |1638| :- | :- |

1628| `id` | До 64 ASCII-букв, цифр, `.`, `_` и `-`, начиная с буквы или цифры. Используйте `id`, которого нет ни у одной другой записи в `sshHostCommands` или [`sshConfigs`](#pre-configure-ssh-connections-for-your-team). Desktop хранит хост подключения под этим `id`, поэтому при его изменении подключение начинается заново без хоста, его машины продолжают работать, и Desktop [всё ещё может к ним подключаться](#remove-an-entry). |1639| `id` | До 64 символов: латинские буквы ASCII, цифры, `.`, `_` и `-`, начиная с буквы или цифры. Используйте `id`, которого нет ни у одной другой записи в `sshHostCommands` или [`sshConfigs`](#pre-configure-ssh-connections-for-your-team). Desktop хранит под ним хост подключения, поэтому если вы его измените, подключение начнётся заново без хоста, его машины продолжат работать, и Desktop сможет [по-прежнему подключаться к ним](#remove-an-entry). |

1629| `name` | Имя подключения в селекторе окружения, до 200 символов в одну строку |1640| `name` | Имя подключения в селекторе окружения, до 200 символов в одну строку |

1630| `command` | Программа и её аргументы, как описано в разделе [Написание команды](#write-the-command) |1641| `command` | Программа и её аргументы, как описано в разделе [Написание команды](#write-the-command) |

1631| `sshIdentityFile` | Путь к вашему закрытому ключу, например `~/.ssh/id_ed25519`. Не указывайте его, чтобы использовать вашу конфигурацию SSH или SSH-агент. |1642| `sshIdentityFile` | Путь к вашему закрытому ключу, например `~/.ssh/id_ed25519`. Не указывайте его, чтобы использовать вашу конфигурацию SSH или SSH-агент. |


2290| `<host> is out of disk space` | `[ENOSPC]` или `[EDQUOT]` | Освободите место или квоту на удалённой машине, в вашем домашнем каталоге или в `/tmp` |2301| `<host> is out of disk space` | `[ENOSPC]` или `[EDQUOT]` | Освободите место или квоту на удалённой машине, в вашем домашнем каталоге или в `/tmp` |

2291| `Free up disk space on this computer` | `[ENOSPC]` или `[EDQUOT]` в сообщении, которое начинается с `Couldn't prepare the deploy locally` | Освободите место на вашем компьютере |2302| `Free up disk space on this computer` | `[ENOSPC]` или `[EDQUOT]` в сообщении, которое начинается с `Couldn't prepare the deploy locally` | Освободите место на вашем компьютере |

2292| `Claude Code won't start on <host>` | `[CLI_UNRESPONSIVE]` | Подождите минуту, затем повторите попытку. Если сбой повторяется, выполните на удалённой машине команду, указанную в сообщении, чтобы проверить, отвечает ли там Claude Code. |2303| `Claude Code won't start on <host>` | `[CLI_UNRESPONSIVE]` | Подождите минуту, затем повторите попытку. Если сбой повторяется, выполните на удалённой машине команду, указанную в сообщении, чтобы проверить, отвечает ли там Claude Code. |

2304| `Ask <host>'s administrator to let Claude's server run` | `[SERVER_NOT_RUNNABLE]` или `[SETUP_DIR_NOEXEC]` | Попросите администратора удалённой машины разрешить запуск программ из `~/.claude/remote/` на этой машине, как указано в [требованиях](#remote-machine-requirements-for-ssh-sessions) |

2305| `Try again in a few minutes` | `[DOWNLOAD_BUSY]` | Подождите несколько минут, затем повторите попытку. Сервер загрузок Anthropic или прокси в сети вашего компьютера сообщил, что он занят. Если карточка продолжает появляться, спросите администратора этой сети, не ограничивает ли прокси загрузки. |

2293 2306 

2294Для любого другого сообщения проверьте [требования к удалённой машине](#remote-machine-requirements-for-ssh-sessions).2307Для любого другого сообщения проверьте [требования к удалённой машине](#remote-machine-requirements-for-ssh-sessions).

2295 2308 

env-vars.md +4 −5

Details

126> * `CLAUDE_CODE_TMUX_TRUECOLOR`126> * `CLAUDE_CODE_TMUX_TRUECOLOR`

127> * `IS_DEMO`127> * `IS_DEMO`

128>128>

129> Ещё одна переменная подчиняется собственному правилу: `FORCE_HYPERLINK` читает число, поэтому отключает её только `0`. В строке каждой переменной также указано её собственное правило.129> В строке каждой переменной также указано её собственное правило.

130 130 

131| Переменная | Назначение |131| Переменная | Назначение |

132| :- | :- |132| :- | :- |


239| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Задайте `1`, чтобы останавливать выполняющуюся работу [фоновой сессии](https://code.claude.com/docs/ru/agent-view.md), когда [супервизор](https://code.claude.com/docs/ru/agent-view.md#the-supervisor-process) останавливает, перезапускает или обновляет процесс этой сессии, вместо того чтобы передавать её следующему процессу сессии. Эта работа — выполняющиеся фоновые shell-команды сессии, а начиная с v2.1.198 — и фоновые субагенты. Влияет только на эту передачу: перевод сессии в фон с помощью `←` или [`/background`](https://code.claude.com/docs/ru/agent-view#from-inside-a-session) по-прежнему переносит выполняющуюся фоновую работу. Требуется Claude Code v2.1.196 или новее |239| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Задайте `1`, чтобы останавливать выполняющуюся работу [фоновой сессии](https://code.claude.com/docs/ru/agent-view.md), когда [супервизор](https://code.claude.com/docs/ru/agent-view.md#the-supervisor-process) останавливает, перезапускает или обновляет процесс этой сессии, вместо того чтобы передавать её следующему процессу сессии. Эта работа — выполняющиеся фоновые shell-команды сессии, а начиная с v2.1.198 — и фоновые субагенты. Влияет только на эту передачу: перевод сессии в фон с помощью `←` или [`/background`](https://code.claude.com/docs/ru/agent-view#from-inside-a-session) по-прежнему переносит выполняющуюся фоновую работу. Требуется Claude Code v2.1.196 или новее |

240| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Установите `1`, чтобы Claude Code не завершал [фоновые shell-команды](https://code.claude.com/docs/ru/interactive-mode.md#background-bash-commands) при нехватке памяти. По умолчанию в macOS и Linux Claude Code завершает фоновые оболочки, когда операционная система сообщает о критической нехватке памяти, а сессия простаивает 30 минут без выполняющегося хода или субагента. В Windows нет сигнала о нехватке памяти, поэтому там эта переменная ни на что не влияет. Требуется Claude Code v2.1.193 или новее |240| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Установите `1`, чтобы Claude Code не завершал [фоновые shell-команды](https://code.claude.com/docs/ru/interactive-mode.md#background-bash-commands) при нехватке памяти. По умолчанию в macOS и Linux Claude Code завершает фоновые оболочки, когда операционная система сообщает о критической нехватке памяти, а сессия простаивает 30 минут без выполняющегося хода или субагента. В Windows нет сигнала о нехватке памяти, поэтому там эта переменная ни на что не влияет. Требуется Claude Code v2.1.193 или новее |

241| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Установите `1`, чтобы отключить [скиллы](https://code.claude.com/docs/ru/skills.md) и рабочие процессы, входящие в состав Claude Code: встроенные скиллы и рабочие процессы полностью удаляются, а встроенные команды, такие как `/init`, по-прежнему можно ввести, но они скрыты от модели. `/doctor` по-прежнему можно ввести, как и встроенные команды; чтобы скрыть её, используйте `DISABLE_DOCTOR_COMMAND`. Скиллы из плагинов, `.claude/skills/` и `.claude/commands/` не затрагиваются. Эквивалентно настройке [`disableBundledSkills`](https://code.claude.com/docs/ru/settings-reference#disablebundledskills) |241| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Установите `1`, чтобы отключить [скиллы](https://code.claude.com/docs/ru/skills.md) и рабочие процессы, входящие в состав Claude Code: встроенные скиллы и рабочие процессы полностью удаляются, а встроенные команды, такие как `/init`, по-прежнему можно ввести, но они скрыты от модели. `/doctor` по-прежнему можно ввести, как и встроенные команды; чтобы скрыть её, используйте `DISABLE_DOCTOR_COMMAND`. Скиллы из плагинов, `.claude/skills/` и `.claude/commands/` не затрагиваются. Эквивалентно настройке [`disableBundledSkills`](https://code.claude.com/docs/ru/settings-reference#disablebundledskills) |

242| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Установите `1`, чтобы оставить доступными браузерные инструменты [Claude in Chrome](https://code.claude.com/docs/ru/chrome.md), но исключить раздел Chrome из системного промпта и [встроенный скилл](https://code.claude.com/docs/ru/skills.md#bundled-skills) `/claude-in-chrome`. Для хостов, которые встраивают Claude Code и предоставляют собственные инструкции для браузера. Требуется Claude Code v2.1.257 или новее |242| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Для хостов, которые встраивают Claude Code и предоставляют собственные указания по работе с браузером. Задайте `1`, чтобы сохранить доступность инструментов браузера [Claude in Chrome](https://code.claude.com/docs/ru/chrome.md), но исключить раздел о Chrome из системного промпта и [встроенный скилл](https://code.claude.com/docs/ru/skills.md#bundled-skills) `/claude-in-chrome`. В VS Code расширение версии v2.1.314 или новее также исключает инструкции Claude in Chrome из сообщений сессии. Требуется Claude Code v2.1.257 или новее |

243| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Установите `1`, чтобы не загружать в контекст никакие файлы памяти CLAUDE.md, включая пользовательские, проектные файлы и файлы автоматической памяти |243| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Установите `1`, чтобы не загружать в контекст никакие файлы памяти CLAUDE.md, включая пользовательские, проектные файлы и файлы автоматической памяти |

244| `CLAUDE_CODE_DISABLE_CRON` | Задайте `1`, чтобы отключить [запланированные задачи в рамках сессии](https://code.claude.com/docs/ru/scheduled-tasks.md). Скилл `/loop` и инструменты cron становятся недоступными, а все уже запланированные задачи перестают срабатывать, включая задачи, которые уже выполняются посреди сессии |244| `CLAUDE_CODE_DISABLE_CRON` | Задайте `1`, чтобы отключить [запланированные задачи в рамках сессии](https://code.claude.com/docs/ru/scheduled-tasks.md). Скилл `/loop` и инструменты cron становятся недоступными, а все уже запланированные задачи перестают срабатывать, включая задачи, которые уже выполняются посреди сессии |

245| `CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` | Установите `1`, чтобы отключить [ограничение времени и отказы](https://code.claude.com/docs/ru/permission-modes.md#time-limits-and-denials-in-auto-and-bypasspermissions-modes) режимов `auto` и `bypassPermissions` при удалении критических путей. Такие удаления тогда передаются классификатору в режиме `auto` и получают запрос разрешения без ограничения времени в режиме `bypassPermissions` везде, где Claude Code может его показать. Задайте её в окружении, из которого запускается Claude Code, поскольку Claude Code игнорирует копию, переданную через блок `env` в настройках. Требуется Claude Code v2.1.281 или новее |245| `CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` | Установите `1`, чтобы отключить [ограничение времени и отказы](https://code.claude.com/docs/ru/permission-modes.md#time-limits-and-denials-in-auto-and-bypasspermissions-modes) режимов `auto` и `bypassPermissions` при удалении критических путей. Такие удаления тогда передаются классификатору в режиме `auto` и получают запрос разрешения без ограничения времени в режиме `bypassPermissions` везде, где Claude Code может его показать. Задайте её в окружении, из которого запускается Claude Code, поскольку Claude Code игнорирует копию, переданную через блок `env` в настройках. Требуется Claude Code v2.1.281 или новее |


307| `CLAUDE_CODE_GIT_BASH_PATH` | Только для Windows: путь к исполняемому файлу Git Bash (`bash.exe`). Используйте, когда Git Bash установлен, но отсутствует в PATH. Если путь не существует или файл называется не `bash.exe`, `sh.exe`, `bash` или `sh`, Claude Code игнорирует переменную и автоматически определяет Git Bash так, как если бы она не была задана, записывая в лог предупреждение, видимое с `--debug`. До v2.1.219 Claude Code завершался при запуске, если путь не существовал, и использовал любой существующий файл в качестве оболочки, не проверяя, что это bash или sh. См. [Настройка в Windows](https://code.claude.com/docs/ru/setup.md#set-up-on-windows) |307| `CLAUDE_CODE_GIT_BASH_PATH` | Только для Windows: путь к исполняемому файлу Git Bash (`bash.exe`). Используйте, когда Git Bash установлен, но отсутствует в PATH. Если путь не существует или файл называется не `bash.exe`, `sh.exe`, `bash` или `sh`, Claude Code игнорирует переменную и автоматически определяет Git Bash так, как если бы она не была задана, записывая в лог предупреждение, видимое с `--debug`. До v2.1.219 Claude Code завершался при запуске, если путь не существовал, и использовал любой существующий файл в качестве оболочки, не проверяя, что это bash или sh. См. [Настройка в Windows](https://code.claude.com/docs/ru/setup.md#set-up-on-windows) |

308| `CLAUDE_CODE_GLOB_HIDDEN` | Установите `false`, чтобы исключать dot-файлы из результатов, когда Claude вызывает [инструмент Glob](https://code.claude.com/docs/ru/tools-reference.md#glob-tool-behavior). По умолчанию они включаются. Не влияет на автодополнение файлов через `@`, `ls`, Grep или Read |308| `CLAUDE_CODE_GLOB_HIDDEN` | Установите `false`, чтобы исключать dot-файлы из результатов, когда Claude вызывает [инструмент Glob](https://code.claude.com/docs/ru/tools-reference.md#glob-tool-behavior). По умолчанию они включаются. Не влияет на автодополнение файлов через `@`, `ls`, Grep или Read |

309| `CLAUDE_CODE_GLOB_NO_IGNORE` | Установите `false`, чтобы [инструмент Glob](https://code.claude.com/docs/ru/tools-reference.md#glob-tool-behavior) учитывал шаблоны `.gitignore`. По умолчанию Glob возвращает все подходящие файлы, включая игнорируемые git. Не влияет на автодополнение файлов через `@`, у которого есть собственная [настройка `respectGitignore`](https://code.claude.com/docs/ru/settings-reference#respectgitignore) |309| `CLAUDE_CODE_GLOB_NO_IGNORE` | Установите `false`, чтобы [инструмент Glob](https://code.claude.com/docs/ru/tools-reference.md#glob-tool-behavior) учитывал шаблоны `.gitignore`. По умолчанию Glob возвращает все подходящие файлы, включая игнорируемые git. Не влияет на автодополнение файлов через `@`, у которого есть собственная [настройка `respectGitignore`](https://code.claude.com/docs/ru/settings-reference#respectgitignore) |

310| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Таймаут в секундах для обнаружения файлов инструментом Glob. По умолчанию 20 секунд на большинстве платформ и 60 секунд в WSL |310| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Таймаут в секундах для поиска инструментами [Glob](https://code.claude.com/docs/ru/tools-reference.md#glob-tool-behavior) и Grep. По умолчанию 20 секунд на большинстве платформ и 60 секунд в WSL |

311| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | Сколько минут фоновая работа может удерживать активную цель в ожидании, прежде чем Claude Code [попросит Claude проверить её](https://code.claude.com/docs/ru/goal.md#background-work-defers-evaluation). По умолчанию `30`. Установите `0`, чтобы отключить проверки. Укажите целое число минут цифрами, не более `10080`, то есть одной недели. Любое другое значение Claude Code считает незаданным и использует значение по умолчанию. Требуется Claude Code v2.1.234 или новее |311| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | Сколько минут фоновая работа может удерживать активную цель в ожидании, прежде чем Claude Code [попросит Claude проверить её](https://code.claude.com/docs/ru/goal.md#background-work-defers-evaluation). По умолчанию `30`. Установите `0`, чтобы отключить проверки. Укажите целое число минут цифрами, не более `10080`, то есть одной недели. Любое другое значение Claude Code считает незаданным и использует значение по умолчанию. Требуется Claude Code v2.1.234 или новее |

312| `CLAUDE_CODE_GZIP_REQUEST_BODIES` | Установите `0`, чтобы отключить gzip-сжатие тел запросов Claude API, телеметрии и публикации [артефактов](https://code.claude.com/docs/ru/artifacts.md), отправляемых на `api.anthropic.com`. По умолчанию Claude Code сжимает большие тела запросов при прямых подключениях и пропускает сжатие, когда вы отправляете запросы через прокси, настраиваете клиентский сертификат или задаёте `NODE_EXTRA_CA_CERTS`. Используйте `0`, если [прокси с инспекцией TLS](https://code.claude.com/docs/ru/network-config.md#ca-certificate-store), который Claude Code не может обнаружить, неправильно обрабатывает сжатые запросы |312| `CLAUDE_CODE_GZIP_REQUEST_BODIES` | Установите `0`, чтобы отключить gzip-сжатие тел запросов Claude API, телеметрии и публикации [артефактов](https://code.claude.com/docs/ru/artifacts.md), отправляемых на `api.anthropic.com`. По умолчанию Claude Code сжимает большие тела запросов при прямых подключениях и пропускает сжатие, когда вы отправляете запросы через прокси, настраиваете клиентский сертификат или задаёте `NODE_EXTRA_CA_CERTS`. Используйте `0`, если [прокси с инспекцией TLS](https://code.claude.com/docs/ru/network-config.md#ca-certificate-store), который Claude Code не может обнаружить, неправильно обрабатывает сжатые запросы |

313| `CLAUDE_CODE_HIDE_CWD` | Установите `1`, чтобы скрыть рабочий каталог в логотипе при запуске. Полезно при демонстрации экрана или записях, где путь раскрывает ваше имя пользователя ОС |313| `CLAUDE_CODE_HIDE_CWD` | Установите `1`, чтобы скрыть рабочий каталог в логотипе при запуске. Полезно при демонстрации экрана или записях, где путь раскрывает ваше имя пользователя ОС |


469| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Устарела. Используйте вместо неё `ENABLE_PROMPT_CACHING_1H`. Не влияет на сессии [Claude apps gateway](https://code.claude.com/docs/ru/claude-apps-gateway), даже когда шлюз направляет запросы в Amazon Bedrock |469| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Устарела. Используйте вместо неё `ENABLE_PROMPT_CACHING_1H`. Не влияет на сессии [Claude apps gateway](https://code.claude.com/docs/ru/claude-apps-gateway), даже когда шлюз направляет запросы в Amazon Bedrock |

470| `ENABLE_TOOL_SEARCH` | Управляет [поиском инструментов MCP](https://code.claude.com/docs/ru/mcp.md#scale-with-mcp-tool-search). Незаданное значение или `true` откладывает загрузку инструментов MCP, кроме [случаев, когда поиск инструментов остаётся отключённым](https://code.claude.com/docs/ru/mcp.md#configure-tool-search). `auto` включает поиск инструментов, когда определения достигают 10% контекстного окна. `auto:N` задаёт собственный порог, например `auto:5` для 5%. `false` загружает все инструменты сразу. Если шлюз отклоняет поиск инструментов, см. [Поиск инструментов через LLM-шлюз](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway) |470| `ENABLE_TOOL_SEARCH` | Управляет [поиском инструментов MCP](https://code.claude.com/docs/ru/mcp.md#scale-with-mcp-tool-search). Незаданное значение или `true` откладывает загрузку инструментов MCP, кроме [случаев, когда поиск инструментов остаётся отключённым](https://code.claude.com/docs/ru/mcp.md#configure-tool-search). `auto` включает поиск инструментов, когда определения достигают 10% контекстного окна. `auto:N` задаёт собственный порог, например `auto:5` для 5%. `false` загружает все инструменты сразу. Если шлюз отклоняет поиск инструментов, см. [Поиск инструментов через LLM-шлюз](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway) |

471| `FORCE_AUTOUPDATE_PLUGINS` | Установите значение `1`, чтобы принудительно автоматически обновлять плагины, даже если основной механизм автообновления отключён через `DISABLE_AUTOUPDATER` |471| `FORCE_AUTOUPDATE_PLUGINS` | Установите значение `1`, чтобы принудительно автоматически обновлять плагины, даже если основной механизм автообновления отключён через `DISABLE_AUTOUPDATER` |

472| `FORCE_HYPERLINK` | Установите значение `1`, чтобы включить кликабельные гиперссылки OSC 8, когда ваш терминал их поддерживает, но это не определяется автоматически, или `0`, чтобы отключить их. Если переменная не задана, Claude Code включает гиперссылки, только когда обнаруживает поддержку терминалом. Claude Code разбирает это значение как число, а не логическое значение, поэтому значения вроде `false`, `no` или `off` включают гиперссылки, а не отключают их. [Значок PR или merge request](https://code.claude.com/docs/ru/interactive-mode.md#pr-review-status) в нижней строке отображается как гиперссылка, даже когда Claude Code не может обнаружить поддержку терминалом, например через SSH. Установите `0`, чтобы отображать значок как обычный текст |472| `FORCE_HYPERLINK` | Установите `1`, чтобы включить кликабельные гиперссылки OSC 8, если ваш терминал их поддерживает, но это не определяется автоматически. Если переменная не задана, Claude Code включает большинство гиперссылок, только когда обнаруживает их поддержку терминалом. [Значок PR или merge request](https://code.claude.com/docs/ru/interactive-mode.md#pr-review-status) в нижней строке и длинные URL для входа являются ссылками в любом случае. Укажите `0`, `false`, `no` или `off`, чтобы отображать их все как обычный текст. До v2.1.314 значения `false`, `no` и `off`, наоборот, включали гиперссылки |

473| `FORCE_PROMPT_CACHING_5M` | Установите значение `1`, чтобы принудительно использовать TTL кэша промптов в 5 минут, даже если иначе применялся бы TTL в 1 час. Переопределяет `CLAUDE_CODE_PROMPT_CACHE_TTL`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, `ENABLE_PROMPT_CACHING_1H`, а также настройки `promptCacheTtl` и `subagentPromptCacheTtl` |473| `FORCE_PROMPT_CACHING_5M` | Установите значение `1`, чтобы принудительно использовать TTL кэша промптов в 5 минут, даже если иначе применялся бы TTL в 1 час. Переопределяет `CLAUDE_CODE_PROMPT_CACHE_TTL`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, `ENABLE_PROMPT_CACHING_1H`, а также настройки `promptCacheTtl` и `subagentPromptCacheTtl` |

474| `HTTP_PROXY` | Указать HTTP-прокси-сервер для сетевых соединений |474| `HTTP_PROXY` | Указать HTTP-прокси-сервер для сетевых соединений |

475| `HTTPS_PROXY` | Указать HTTPS-прокси-сервер для сетевых соединений |475| `HTTPS_PROXY` | Указать HTTPS-прокси-сервер для сетевых соединений |


586* Получать [отзывы, составленные Claude](https://code.claude.com/docs/ru/tools-reference.md#sendfeedback-tool-behavior), которые Claude Code включает через загружаемый флаг586* Получать [отзывы, составленные Claude](https://code.claude.com/docs/ru/tools-reference.md#sendfeedback-tool-behavior), которые Claude Code включает через загружаемый флаг

587* Добиться того, чтобы Claude [воспринимал большие вставки как вставленный, а не набранный текст](https://code.claude.com/docs/ru/terminal-config.md#how-claude-treats-pasted-text); содержимое за заполнителем `[Pasted text #N]` поступает к Claude без пометки587* Добиться того, чтобы Claude [воспринимал большие вставки как вставленный, а не набранный текст](https://code.claude.com/docs/ru/terminal-config.md#how-claude-treats-pasted-text); содержимое за заполнителем `[Pasted text #N]` поступает к Claude без пометки

588* Добиться того, чтобы Claude Code [исключал MCP-инструменты, схему входных данных которых API отклонил бы](https://code.claude.com/docs/ru/mcp.md#tools-with-invalid-input-schemas)588* Добиться того, чтобы Claude Code [исключал MCP-инструменты, схему входных данных которых API отклонил бы](https://code.claude.com/docs/ru/mcp.md#tools-with-invalid-input-schemas)

589* Добиться того, чтобы Claude Code [сжимал длинный диалог, пока ваша сессия в терминале простаивает](https://code.claude.com/docs/ru/settings-reference.md#idlecompaction), незадолго до истечения срока действия часового кэша промптов

590 589 

591### Первая сессия после установки или обновления590### Первая сессия после установки или обновления

592 591 

errors.md +66 −11

Details

59| `Could not resolve authentication method` | [Authentication](#could-not-resolve-authentication-method) |59| `Could not resolve authentication method` | [Authentication](#could-not-resolve-authentication-method) |

60| `Invalid API key` | [Authentication](#invalid-api-key) |60| `Invalid API key` | [Authentication](#invalid-api-key) |

61| `Your apiKeyHelper script is failing` | [Authentication](#your-apikeyhelper-script-is-failing) |61| `Your apiKeyHelper script is failing` | [Authentication](#your-apikeyhelper-script-is-failing) |

62| `Claude Code didn't send your claude.ai login, because the API key helper your administrator set isn't in effect` | [Аутентификация](#claude-code-didnt-send-your-claude-ai-login) |

62| `Invalid auth token · Fix external auth token` | [Authentication](#invalid-request-header-value) |63| `Invalid auth token · Fix external auth token` | [Authentication](#invalid-request-header-value) |

63| `Invalid ANTHROPIC_CUSTOM_HEADERS · Fix the environment variable` | [Authentication](#invalid-request-header-value) |64| `Invalid ANTHROPIC_CUSTOM_HEADERS · Fix the environment variable` | [Authentication](#invalid-request-header-value) |

64| `Invalid request header from the environment · Fix the environment variable` | [Authentication](#invalid-request-header-value) |65| `Invalid request header from the environment · Fix the environment variable` | [Authentication](#invalid-request-header-value) |


326| `MCP server "<name>" tool "<tool>" timed out after <N>s. The server asked the user a question, and no answer came before the time limit.` | [Tool errors](#mcp-tool-call-timed-out-with-the-servers-question-unanswered) |327| `MCP server "<name>" tool "<tool>" timed out after <N>s. The server asked the user a question, and no answer came before the time limit.` | [Tool errors](#mcp-tool-call-timed-out-with-the-servers-question-unanswered) |

327| `would be spawned with zero tools — refusing` | [Tool errors](#agent-would-be-spawned-with-zero-tools) |328| `would be spawned with zero tools — refusing` | [Tool errors](#agent-would-be-spawned-with-zero-tools) |

328| `File is covered by a Read deny rule in your permission settings` | [Tool errors](#file-is-covered-by-a-read-deny-rule) |329| `File is covered by a Read deny rule in your permission settings` | [Tool errors](#file-is-covered-by-a-read-deny-rule) |

330| `<path> is outside <dirs>; the permissions.blockWritesOutsideWorkingDirectories setting blocks writes outside the working directories` | [Ошибки инструментов](#setting-blocks-writes-outside-the-working-directories) |

331| `<path>: Writes outside the working directories are blocked (permissions.blockWritesOutsideWorkingDirectories)` | [Ошибки инструментов](#setting-blocks-writes-outside-the-working-directories) |

332| `Writes to Claude Code settings files are blocked while permissions.blockWritesOutsideWorkingDirectories is on` | [Ошибки инструментов](#writes-to-claude-code-settings-files-are-blocked) |

329| `cannot contain null bytes (\0)` | [Tool errors](#path-cannot-contain-null-bytes) |333| `cannot contain null bytes (\0)` | [Tool errors](#path-cannot-contain-null-bytes) |

330| `Path contains null bytes` | [Tool errors](#path-cannot-contain-null-bytes) |334| `Path contains null bytes` | [Tool errors](#path-cannot-contain-null-bytes) |

331| `command contains the invisible character U+FEFF (byte order mark) or U+180E (Mongolian vowel separator), and was not run` | [Ошибки инструментов](#command-contains-an-invisible-character) |335| `command contains the invisible character U+FEFF (byte order mark) or U+180E (Mongolian vowel separator), and was not run` | [Ошибки инструментов](#command-contains-an-invisible-character) |


548 552 

549* Проверьте [status.claude.com](https://status.claude.com) или страницу статуса поставщика, указанную в сообщении, на предмет активных инцидентов553* Проверьте [status.claude.com](https://status.claude.com) или страницу статуса поставщика, указанную в сообщении, на предмет активных инцидентов

550* Подождите минуту, затем отправьте сообщение еще раз. Ваше исходное сообщение все еще находится в диалоге, поэтому для длинного промпта вы можете ввести `try again` вместо вставки всего текста.554* Подождите минуту, затем отправьте сообщение еще раз. Ваше исходное сообщение все еще находится в диалоге, поэтому для длинного промпта вы можете ввести `try again` вместо вставки всего текста.

551* Если [`ANTHROPIC_BASE_URL`](https://code.claude.com/docs/ru/env-vars) указывает на [LLM-шлюз](https://code.claude.com/docs/ru/llm-gateway) и каждый запрос завершается такой ошибкой, проверьте, не отклоняет ли ваш шлюз поля поиска инструментов, которые Claude Code отправляет по умолчанию. Для проверки установите `ENABLE_TOOL_SEARCH=false`, как описано в разделе [Поиск инструментов через LLM-шлюз](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway), затем повторите попытку. До v2.1.304 поиск инструментов за шлюзом был отключен, если вы не включали его с помощью `ENABLE_TOOL_SEARCH`.555* Если [`ANTHROPIC_BASE_URL`](https://code.claude.com/docs/ru/env-vars) указывает на [LLM-шлюз](https://code.claude.com/docs/ru/llm-gateway) и каждый запрос завершается такой ошибкой, проверьте, принимают ли ваш шлюз и его вышестоящий сервис поля [поиска инструментов](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway). По умолчанию Claude Code отправляет поля инструментов `defer_loading` и блоки `tool_reference` вместе с заголовком `anthropic-beta`, который их включает. До v2.1.304 поиск инструментов за шлюзом был отключен, если вы не включали его с помощью `ENABLE_TOOL_SEARCH`.

552* Если ошибка сохраняется без опубликованного инцидента, запустите `/feedback`, чтобы Anthropic могла расследовать проблему с деталями вашего запроса. См. [Сообщить об ошибке](#report-an-error), если `/feedback` недоступен в вашей среде.556* Если ошибка сохраняется без опубликованного инцидента, запустите `/feedback`, чтобы Anthropic могла расследовать проблему с деталями вашего запроса. См. [Сообщить об ошибке](#report-an-error), если `/feedback` недоступен в вашей среде.

553 557 

554### API Error: Repeated 529 Overloaded errors558### API Error: Repeated 529 Overloaded errors


672<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait a moment and then try this action again.676<model> is temporarily unavailable, so auto mode cannot determine the safety of <tool> right now. Wait a moment and then try this action again.

673```677```

674 678 

675В интерактивной сессии вместо этого сообщения под вызовом инструмента появляется приглушенная строка `Not run · auto mode's check had no usable answer`. Нажмите `Ctrl+O`, чтобы прочитать сообщение в [средстве просмотра транскрипта](https://code.claude.com/docs/ru/interactive-mode.md#transcript-viewer). Отказы `gave no verdict`, описанные в разделе [The server returned no safety verdict](#the-server-returned-no-safety-verdict), показывают ту же строку. До v2.1.296 сообщение появлялось под вызовом как красная ошибка.679В интерактивной сессии вместо этого сообщения под вызовом инструмента появляется приглушенная строка `Not run · auto mode's check had no usable answer`. Эта строка также может заменять сообщение о том, что [сервер не вынес вердикт](#the-server-returned-no-safety-verdict), или, вне удаленной сессии, сообщение, начинающееся с `Auto mode could not evaluate`. Нажмите `Ctrl+O`, чтобы прочитать ее сообщение в [средстве просмотра транскрипта](https://code.claude.com/docs/ru/interactive-mode.md#transcript-viewer). До v2.1.296 сообщение появлялось как красная ошибка.

676 680 

677Когда Claude Code может определить категорию сбоя, он указывает ее в скобках после `temporarily unavailable`, например `<model> is temporarily unavailable (rate-limited), so auto mode cannot determine the safety of <tool> right now`. Категории: `(rate-limited)`, `(overloaded)`, `(server error)`, `(timed out)` и `(connection failed)`. Если `(timed out)` или `(connection failed)` повторяется, проверьте соединение; см. [Unable to connect to API](#unable-to-connect-to-api). До v2.1.229 сообщение никогда не указывало категорию и выглядело как `Wait briefly and then try this action again`.681Когда Claude Code может определить категорию сбоя, он указывает ее в скобках после `temporarily unavailable`, например `<model> is temporarily unavailable (rate-limited), so auto mode cannot determine the safety of <tool> right now`. Категории: `(rate-limited)`, `(overloaded)`, `(server error)`, `(timed out)` и `(connection failed)`. Если `(timed out)` или `(connection failed)` повторяется, проверьте соединение; см. [Unable to connect to API](#unable-to-connect-to-api). До v2.1.229 сообщение никогда не указывало категорию и выглядело как `Wait briefly and then try this action again`.

678 682 


833* Запустите `/usage-credits`, чтобы купить дополнительное использование на Pro, Max и Ultra, или запросить его у администратора на Team и Enterprise. См. [usage credits for paid plans](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans), чтобы узнать, как это оплачивается.837* Запустите `/usage-credits`, чтобы купить дополнительное использование на Pro, Max и Ultra, или запросить его у администратора на Team и Enterprise. См. [usage credits for paid plans](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans), чтобы узнать, как это оплачивается.

834* Чтобы обновить ваш план для более высоких базовых лимитов, см. [claude.com/pricing](https://claude.com/pricing)838* Чтобы обновить ваш план для более высоких базовых лимитов, см. [claude.com/pricing](https://claude.com/pricing)

835 839 

836Перед тем как окно закончится, Claude Code может предупредить вас, что вы использовали большую его часть, сообщением, таким как `You've used 85% of your session limit · resets 3:45pm`. Чтобы непрерывно отслеживать оставшийся лимит, добавьте поля `rate_limits` в [custom status line](https://code.claude.com/docs/ru/statusline.md#rate-limit-usage), или в Desktop app нажмите [usage ring](https://code.claude.com/docs/ru/desktop.md#check-usage) рядом с выбором модели.840Перед тем как окно закончится, Claude Code может предупредить вас, что вы использовали большую его часть, сообщением, таким как `You've used 85% of your session limit · resets 3:45pm`. Чтобы отслеживать оставшийся лимит, добавьте поля `rate_limits` в [custom status line](https://code.claude.com/docs/ru/statusline.md#rate-limit-usage), или в Desktop app нажмите [usage ring](https://code.claude.com/docs/ru/desktop.md#check-usage).

837 841 

838### Usage credits required for 1M context842### Usage credits required for 1M context

839 843 


1074* Запустите `/status`, чтобы увидеть сбой и убедиться, что `apiKeyHelper` — активный источник учётных данных. Строка `apiKeyHelper` показывает `Failing` с подробностями последнего сбоя, такими как код выхода и вывод ошибки команды, и исчезает после следующего успешного запуска. До версии v2.1.274 `/status` показывал только источник учётных данных, но не сбой.1078* Запустите `/status`, чтобы увидеть сбой и убедиться, что `apiKeyHelper` — активный источник учётных данных. Строка `apiKeyHelper` показывает `Failing` с подробностями последнего сбоя, такими как код выхода и вывод ошибки команды, и исчезает после следующего успешного запуска. До версии v2.1.274 `/status` показывал только источник учётных данных, но не сбой.

1075* При каждом сбое команды её код выхода и вывод ошибки также появляются в панели `Authentication` в терминале. До версии v2.1.212 панель называлась `Cloud authentication`.1079* При каждом сбое команды её код выхода и вывод ошибки также появляются в панели `Authentication` в терминале. До версии v2.1.212 панель называлась `Cloud authentication`.

1076 1080 

1081### Claude Code didn't send your claude.ai login

1082 

1083Отправьте это сообщение целиком своему администратору. В нём перечислены изменения, которые он может внести. Сообщение означает, что Claude Code отклонил ваш промпт. Пока вы используете вход в claude.ai, Claude Code продолжает отклонять промпты, в том числе после перезапуска:

1084 

1085```text theme={null}

1086Claude Code didn't send your claude.ai login, because the API key helper your administrator set isn't in effect. Your organization's managed settings may be overriding it. Ask your administrator to keep the key helper and its API address in effect, to name Anthropic's API address in those managed settings, or to remove the key helper. Run /status to see your setting sources.

1087```

1088 

1089**Что делать:**

1090 

1091* Чтобы сообщить администратору, какие управляемые источники есть на вашей машине, выполните `/status` в промпте Claude Code и скопируйте [строку `Setting sources`](https://code.claude.com/docs/ru/managed-settings#read-the-source-in-/status). Если появляется строка `Skipped sources`, скопируйте и её

1092* Если вы управляете настройками, см. раздел [почему хелпер ключа машины не действует](https://code.claude.com/docs/ru/server-managed-settings.md#machine-apikeyhelper-not-in-effect)

1093 

1077### Недопустимое значение заголовка запроса1094### Недопустимое значение заголовка запроса

1078 1095 

1079Значение, которое Claude Code собирался отправить как заголовок запроса, содержит символ, который не может передаваться в HTTP-заголовках: перевод строки, байт NUL или символ выше `U+00FF`, например фигурную кавычку или пробел нулевой ширины. Claude Code останавливает запрос до какой-либо отправки и называет переменную или настройку, которую нужно исправить. Обычная причина — учётные данные, вставленные из документа или чата, которые содержали невидимый символ или случайный перевод строки.1096Значение, которое Claude Code собирался отправить как заголовок запроса, содержит символ, который не может передаваться в HTTP-заголовках: перевод строки, байт NUL или символ выше `U+00FF`, например фигурную кавычку или пробел нулевой ширины. Claude Code останавливает запрос до какой-либо отправки и называет переменную или настройку, которую нужно исправить. Обычная причина — учётные данные, вставленные из документа или чата, которые содержали невидимый символ или случайный перевод строки.


1333* Если `/status` показывает только ваш вход, запустите `/login` один раз. Если учётные данные были отозваны, новый вход заменит их.1350* Если `/status` показывает только ваш вход, запустите `/login` один раз. Если учётные данные были отозваны, новый вход заменит их.

1334* Если то же сообщение возвращается для той же учётной записи, учётная запись или организация больше не активна. Проверьте учётную запись и организацию, которые показывает `/status`, и попросите администратора организации восстановить доступ.1351* Если то же сообщение возвращается для той же учётной записи, учётная запись или организация больше не активна. Проверьте учётную запись и организацию, которые показывает `/status`, и попросите администратора организации восстановить доступ.

1335* Если [`ANTHROPIC_BASE_URL`](https://code.claude.com/docs/ru/env-vars) указывает на [LLM-шлюз](https://code.claude.com/docs/ru/llm-gateway), текст после `401` — это сообщение вашего шлюза, а не Anthropic, и `/login` его не меняет. Вместо этого исправьте учётные данные, которые ожидает ваш шлюз.1352* Если [`ANTHROPIC_BASE_URL`](https://code.claude.com/docs/ru/env-vars) указывает на [LLM-шлюз](https://code.claude.com/docs/ru/llm-gateway), текст после `401` — это сообщение вашего шлюза, а не Anthropic, и `/login` его не меняет. Вместо этого исправьте учётные данные, которые ожидает ваш шлюз.

1336* Если каждый запрос завершается ошибкой `401`, хотя шлюз получает ожидаемые учётные данные, проверьте, не отклоняет ли шлюз поля поиска инструментов, которые Claude Code отправляет по умолчанию. Для проверки задайте `ENABLE_TOOL_SEARCH=false`, как описано в разделе [Поиск инструментов через LLM-шлюз](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway), затем попробуйте снова. До v2.1.304 поиск инструментов за шлюзом был отключён, если вы не включали его через `ENABLE_TOOL_SEARCH`.1353* Если каждый запрос завершается ошибкой `401` даже после того, как ваш шлюз получил ожидаемые учётные данные, проверьте, что шлюз и его вышестоящий сервис принимают поля [поиска инструментов](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway). По умолчанию Claude Code отправляет поля инструментов `defer_loading` и блоки `tool_reference` с заголовком `anthropic-beta`, который их включает. До v2.1.304 поиск инструментов за шлюзом был отключён, если вы не включали его с помощью `ENABLE_TOOL_SEARCH`.

1337 1354 

1338### Срок входа истёк1355### Срок входа истёк

1339 1356 


1936* Убедитесь, что хост API доступен из той же оболочки, выполнив `curl -I https://api.anthropic.com`. В Windows PowerShell используйте `curl.exe -I https://api.anthropic.com`, чтобы не использовался встроенный псевдоним `Invoke-WebRequest`.1953* Убедитесь, что хост API доступен из той же оболочки, выполнив `curl -I https://api.anthropic.com`. В Windows PowerShell используйте `curl.exe -I https://api.anthropic.com`, чтобы не использовался встроенный псевдоним `Invoke-WebRequest`.

1937* Если вы находитесь за корпоративным прокси, задайте `HTTPS_PROXY` перед запуском Claude Code и см. [Настройка сети](https://code.claude.com/docs/ru/network-config.md)1954* Если вы находитесь за корпоративным прокси, задайте `HTTPS_PROXY` перед запуском Claude Code и см. [Настройка сети](https://code.claude.com/docs/ru/network-config.md)

1938* Если вы направляете трафик через LLM-шлюз или ретранслятор, задайте [`ANTHROPIC_BASE_URL`](https://code.claude.com/docs/ru/env-vars) равным его адресу. Инструкции по настройке см. в разделе [Подключение Claude Code к LLM-шлюзу](https://code.claude.com/docs/ru/llm-gateway-connect.md).1955* Если вы направляете трафик через LLM-шлюз или ретранслятор, задайте [`ANTHROPIC_BASE_URL`](https://code.claude.com/docs/ru/env-vars) равным его адресу. Инструкции по настройке см. в разделе [Подключение Claude Code к LLM-шлюзу](https://code.claude.com/docs/ru/llm-gateway-connect.md).

1939* Если `ANTHROPIC_BASE_URL` уже указывает на ваш шлюз и каждый запрос завершается `Connection dropped`, проверьте, не отклоняет ли ваш шлюз поля поиска инструментов, которые Claude Code отправляет по умолчанию. Для проверки задайте `ENABLE_TOOL_SEARCH=false`, как описано в разделе [Поиск инструментов через LLM-шлюз](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway), затем повторите попытку. До версии v2.1.304 поиск инструментов за шлюзом был отключён, если вы не включали его с помощью `ENABLE_TOOL_SEARCH`.1956* Если `ANTHROPIC_BASE_URL` уже указывает на ваш шлюз и каждый запрос завершается `Connection dropped`, проверьте, принимают ли ваш шлюз и его вышестоящий сервис поля [поиска инструментов](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway). По умолчанию Claude Code отправляет поля инструментов `defer_loading` и блоки `tool_reference` вместе с заголовком `anthropic-beta`, который их включает. До версии v2.1.304 поиск инструментов за шлюзом был отключён, если вы не включали его с помощью `ENABLE_TOOL_SEARCH`.

1940* Убедитесь, что ваш брандмауэр разрешает хосты, перечисленные в разделе [Требования к сетевому доступу](https://code.claude.com/docs/ru/network-config.md#network-access-requirements)1957* Убедитесь, что ваш брандмауэр разрешает хосты, перечисленные в разделе [Требования к сетевому доступу](https://code.claude.com/docs/ru/network-config.md#network-access-requirements)

1941* Для периодических сбоев [повторные попытки выполняются автоматически](#automatic-retries)1958* Для периодических сбоев [повторные попытки выполняются автоматически](#automatic-retries)

1942 1959 


2471**Что делать:**2488**Что делать:**

2472 2489 

2473* Если сообщение содержит `context_management: Extra inputs are not permitted`, [обновите Claude Code](https://code.claude.com/docs/ru/setup.md#update-claude-code) до v2.1.304 или новее. После обновления Claude Code отвечает на такой отказ, отправляя запрос ещё раз без этого поля. До v2.1.304 Claude Code не повторял попытку при таком отказе.2490* Если сообщение содержит `context_management: Extra inputs are not permitted`, [обновите Claude Code](https://code.claude.com/docs/ru/setup.md#update-claude-code) до v2.1.304 или новее. После обновления Claude Code отвечает на такой отказ, отправляя запрос ещё раз без этого поля. До v2.1.304 Claude Code не повторял попытку при таком отказе.

2474* Если сообщение называет `defer_loading` или `tool_reference`, обновите Claude Code или отключите [поиск инструментов](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway):2491* Если сообщение называет `defer_loading` или `tool_reference`, [обновите Claude Code](https://code.claude.com/docs/ru/setup.md#update-claude-code) до v2.1.305 или новее. Тогда Claude Code отвечает на такое отклонение [повторной отправкой запроса](https://code.claude.com/docs/ru/llm-gateway-protocol.md#retry-without-tool-search) без полей поиска инструментов.

2475 * [Обновите Claude Code](https://code.claude.com/docs/ru/setup.md#update-claude-code) до v2.1.305 или новее. Тогда Claude Code отвечает на такой отказ, отправляя запрос ещё раз без полей поиска инструментов.

2476 * Если вы не можете обновиться или сообщение продолжает появляться после обновления, задайте `ENABLE_TOOL_SEARCH=false` в оболочке или в [`env` настроек](https://code.claude.com/docs/ru/settings-reference#env). Если файл настроек уже задаёт эту переменную, измените её там, поскольку это значение [может переопределить export в оболочке](https://code.claude.com/docs/ru/settings-reference.md#how-env-values-interact-with-your-shell). Тогда Claude Code загружает инструменты MCP заранее.

2477* Если ваш шлюз отбрасывает заголовок, настройте его на пересылку заголовка `anthropic-beta`. О том, что должны пересылать шлюзы, см. раздел [Сквозная передача функций](https://code.claude.com/docs/ru/llm-gateway-protocol.md#feature-pass-through).2492* Если ваш шлюз отбрасывает заголовок, настройте его на пересылку заголовка `anthropic-beta`. О том, что должны пересылать шлюзы, см. раздел [Сквозная передача функций](https://code.claude.com/docs/ru/llm-gateway-protocol.md#feature-pass-through).

2478* В качестве резервного варианта задайте [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](https://code.claude.com/docs/ru/env-vars) перед запуском. Точный охват описан в разделе [Disable pre-release capabilities](https://code.claude.com/docs/ru/llm-gateway-protocol.md#disable-pre-release-capabilities).2493* В качестве резервного варианта задайте [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](https://code.claude.com/docs/ru/env-vars) перед запуском. Точный охват описан в разделе [Disable pre-release capabilities](https://code.claude.com/docs/ru/llm-gateway-protocol.md#disable-pre-release-capabilities).

2479 2494 


2552* Используйте псевдоним, например `sonnet` или `opus`, вместо полного ID с версией. Псевдонимы указывают на поддерживаемое значение по умолчанию, поэтому не устаревают. См. раздел [Model configuration](https://code.claude.com/docs/ru/model-config.md).2567* Используйте псевдоним, например `sonnet` или `opus`, вместо полного ID с версией. Псевдонимы указывают на поддерживаемое значение по умолчанию, поэтому не устаревают. См. раздел [Model configuration](https://code.claude.com/docs/ru/model-config.md).

2553* Если в CLI постоянно возвращается неправильная модель, где-то задан устаревший ID. Проверьте места, где можно задать модель, в [порядке приоритета](https://code.claude.com/docs/ru/model-config.md#setting-your-model) и удалите устаревшее значение.2568* Если в CLI постоянно возвращается неправильная модель, где-то задан устаревший ID. Проверьте места, где можно задать модель, в [порядке приоритета](https://code.claude.com/docs/ru/model-config.md#setting-your-model) и удалите устаревшее значение.

2554* Claude Code сообщает об истёкшем входе в claude.ai как [Login expired](#login-expired), а не как об этой ошибке. До версии 2.1.206 истёкший вход, который уже нельзя было обновить, приводил к этой ошибке для любой модели; если вы видите это в более старой версии, выполните `/login`.2569* Claude Code сообщает об истёкшем входе в claude.ai как [Login expired](#login-expired), а не как об этой ошибке. До версии 2.1.206 истёкший вход, который уже нельзя было обновить, приводил к этой ошибке для любой модели; если вы видите это в более старой версии, выполните `/login`.

2555* Если [`ANTHROPIC_BASE_URL`](https://code.claude.com/docs/ru/env-vars) указывает на [LLM-шлюз](https://code.claude.com/docs/ru/llm-gateway) и так завершаются все модели, проверьте, не отклоняет ли ваш шлюз поля поиска инструментов, которые Claude Code отправляет по умолчанию. Для проверки задайте `ENABLE_TOOL_SEARCH=false`, как описано в разделе [Поиск инструментов через LLM-шлюз](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway), затем попробуйте снова. До v2.1.304 поиск инструментов за шлюзом был отключён, если вы не включали его через `ENABLE_TOOL_SEARCH`.2570* Если [`ANTHROPIC_BASE_URL`](https://code.claude.com/docs/ru/env-vars) указывает на [LLM-шлюз](https://code.claude.com/docs/ru/llm-gateway) и все модели завершаются этой ошибкой, проверьте, что ваш шлюз и его вышестоящий сервис принимают поля [поиска инструментов](https://code.claude.com/docs/ru/mcp.md#tool-search-through-a-gateway). По умолчанию Claude Code отправляет поля инструментов `defer_loading` и блоки `tool_reference` с заголовком `anthropic-beta`, который их включает. До v2.1.304 поиск инструментов за шлюзом был отключён, если вы не включали его с помощью `ENABLE_TOOL_SEARCH`.

2556* Для развёртываний в Google Cloud's Agent Platform см. раздел [Устранение неполадок в Google Cloud's Agent Platform](https://code.claude.com/docs/ru/google-vertex-ai.md#troubleshooting).2571* Для развёртываний в Google Cloud's Agent Platform см. раздел [Устранение неполадок в Google Cloud's Agent Platform](https://code.claude.com/docs/ru/google-vertex-ai.md#troubleshooting).

2557 2572 

2558### Model is not a recognized model id2573### Model is not a recognized model id


4563* Если Claude должен иметь возможность изменять файл, удалите или сузьте запрещающее правило `Read` в `/permissions` или в [настройках](https://code.claude.com/docs/ru/settings-reference.md#permission-settings)4578* Если Claude должен иметь возможность изменять файл, удалите или сузьте запрещающее правило `Read` в `/permissions` или в [настройках](https://code.claude.com/docs/ru/settings-reference.md#permission-settings)

4564* Если файл должен остаться нетронутым, сохраните правило и добавьте запрещающее правило `Edit` для того же пути, чтобы также заблокировать инструмент NotebookEdit4579* Если файл должен остаться нетронутым, сохраните правило и добавьте запрещающее правило `Edit` для того же пути, чтобы также заблокировать инструмент NotebookEdit

4565 4580 

4581### Setting blocks writes outside the working directories

4582 

4583Когда Claude пытается записать файл и вызов инструмента завершается ошибкой с этим сообщением, путь находится вне [рабочих каталогов](https://code.claude.com/docs/ru/permissions.md#working-directories) сессии, и настройка [`permissions.blockWritesOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockwritesoutsideworkingdirectories) включена:

4584 

4585```text wrap theme={null}

4586<path> is outside <dirs>; the permissions.blockWritesOutsideWorkingDirectories setting blocks writes outside the working directories. Ask the user to add the directory with /add-dir, or to remove that setting.

4587```

4588 

4589Claude Code отклоняет такую запись в любом режиме разрешений. Отказ также может выглядеть так:

4590 

4591```text wrap theme={null}

4592<path>: Writes outside the working directories are blocked (permissions.blockWritesOutsideWorkingDirectories). Add the directory with /add-dir, or remove that setting.

4593```

4594 

4595**Что делать:**

4596 

4597* Если Claude не должен записывать туда, ничего не делайте

4598* Чтобы позволить Claude записывать в существующий каталог, содержащий этот путь, выполните `/add-dir <directory>` в промпте Claude Code или передайте `--add-dir <directory>` при запуске Claude Code

4599* Если путь указывает на файл настроек Claude Code, например `~/.claude/settings.json`, отредактируйте его самостоятельно. Добавление его каталога с помощью `/add-dir` не поможет, потому что тогда Claude Code отклонит запись [как запись в файл настроек](#writes-to-claude-code-settings-files-are-blocked).

4600* Чтобы каталог оставался доступным для записи в каждой сессии, укажите его в [`permissions.additionalDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-additionaldirectories) в пользовательских или управляемых настройках

4601* Чтобы отключить `permissions.blockWritesOutsideWorkingDirectories`, удалите эту настройку из каждого файла настроек, в котором она задана, затем перезапустите Claude Code

4602* Если ни в одном из ваших файлов настроек нет `permissions.blockWritesOutsideWorkingDirectories`, эта настройка может поступать из `--settings` или из хост-приложения. Claude Code также отклоняет такие записи, пока не может прочитать `permissions` в ваших [управляемых настройках](https://code.claude.com/docs/ru/managed-settings.md#keys-that-fail-closed). Обратитесь к тому, кто запускает сессию или управляет ею.

4603 

4604### Writes to Claude Code settings files are blocked

4605 

4606Когда Claude пытается записать файл и вызов инструмента завершается ошибкой с этим сообщением, Claude Code считает этот файл одним из своих файлов настроек, и настройка [`permissions.blockWritesOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockwritesoutsideworkingdirectories) включена:

4607 

4608```text wrap theme={null}

4609<path>: Writes to Claude Code settings files are blocked while permissions.blockWritesOutsideWorkingDirectories is on, because a settings file can lift that block. While a managed settings folder cannot be resolved, any .json file counts as one.

4610```

4611 

4612**Что делать:**

4613 

4614* Чтобы изменить настройку, отредактируйте файл настроек самостоятельно

4615* Чтобы снова позволить Claude редактировать файлы настроек, удалите `permissions.blockWritesOutsideWorkingDirectories` из каждого файла настроек, в котором она задана, затем перезапустите Claude Code

4616* Если файл не является одним из ваших файлов настроек, найдите его среди других файлов, которые Claude Code считает файлами настроек:

4617 * **Файл, переданный в `--agents` или `--mcp-config`**: отредактируйте его самостоятельно

4618 * **Сохранённая копия [настроек, управляемых сервером](https://code.claude.com/docs/ru/server-managed-settings.md#security-considerations), и файлы, хранящиеся вместе с ней**: попросите [Owner](https://code.claude.com/docs/ru/server-managed-settings.md#access-control) изменить настройку в настройках, управляемых сервером.

4619 * **Любой файл `.json`, пока Claude Code не может определить, куда ведёт папка [`managed-settings.d/`](https://code.claude.com/docs/ru/managed-settings#split-a-file-based-policy-across-teams)**: попросите администратора проверить эту папку

4620 

4566### Path cannot contain null bytes4621### Path cannot contain null bytes

4567 4622 

4568Аргумент пути или шаблона в вызове файлового инструмента содержал нулевой байт, который файловые системы и инструменты поиска не могут принять. Read, Write, Edit, NotebookEdit, Glob и Grep проверяют это, и сообщение называет инструмент и аргумент:4623Аргумент пути или шаблона в вызове файлового инструмента содержал нулевой байт, который файловые системы и инструменты поиска не могут принять. Read, Write, Edit, NotebookEdit, Glob и Grep проверяют это, и сообщение называет инструмент и аргумент:


6147В скрипте или harness, который читает stderr, совпадайте с префиксом `[claude-code:unrecognized_model]`. После префикса и одного пробела Claude Code записывает однострочный объект JSON. Claude Code может добавлять поля к нему в более поздней версии, поэтому игнорируйте любое поле, которое вы не ожидаете. Он записывает по крайней мере эти два:6202В скрипте или harness, который читает stderr, совпадайте с префиксом `[claude-code:unrecognized_model]`. После префикса и одного пробела Claude Code записывает однострочный объект JSON. Claude Code может добавлять поля к нему в более поздней версии, поэтому игнорируйте любое поле, которое вы не ожидаете. Он записывает по крайней мере эти два:

6148 6203 

6149* `model`: строка модели, как вы её настроили6204* `model`: строка модели, как вы её настроили

6150* `query_source`: путь запроса, который использовал модель. Claude Code сообщает `sdk` для запуска `-p` и значение, которое начинается с `agent:` для subagent.6205* `query_source`: путь запроса, использовавший модель. Например, для основного диалога запуска `-p` значение равно `sdk`, а для субагента начинается с `agent:`.

6151 6206 

6152Claude Code записывает строку в одно из двух мест, в зависимости от того, как вы его запускаете:6207Claude Code записывает строку в одно из двух мест, в зависимости от того, как вы его запускаете:

6153 6208 

6154* В [non-interactive mode](https://code.claude.com/docs/ru/headless.md) с `-p`, Claude Code записывает её в stderr под каждым `--output-format`, поэтому вы можете анализировать stdout без фильтрации строки6209* В [non-interactive mode](https://code.claude.com/docs/ru/headless.md) с `-p`, Claude Code записывает её в stderr под каждым `--output-format`, поэтому вы можете анализировать stdout без фильтрации строки

6155* В интерактивном сеансе или [background session](https://code.claude.com/docs/ru/agent-view.md), Claude Code записывает её в журнал отладки вместо этого; выполните с `--debug` для захвата её в `~/.claude/debug/<session-id>.txt`6210* В интерактивном сеансе или [background session](https://code.claude.com/docs/ru/agent-view.md), Claude Code записывает её в журнал отладки вместо этого; выполните с `--debug` для захвата её в `~/.claude/debug/<session-id>.txt`

6156 6211 

6157Claude Code записывает строку один раз на строку модели на процесс. Он записывает отдельную строку для каждого дополнительного нераспознанного ID, например одного, который [subagent](https://code.claude.com/docs/ru/sub-agents.md#choose-a-model) или [background functionality](https://code.claude.com/docs/ru/costs.md#background-token-usage) использует.6212Claude Code записывает строку один раз для каждого ID модели в рамках процесса. Для каждого следующего нераспознанного ID записывается отдельная строка, например для ID, который использует [субагент](https://code.claude.com/docs/ru/sub-agents.md#choose-a-model) или [фоновая функциональность](https://code.claude.com/docs/ru/model-config.md#environment-variables).

6158 6213 

6159Claude Code не записывает строку для ID поставщиков, которые он разрешает на модель, которую он распознаёт, например Amazon Bedrock `us.anthropic.claude-...` ID, ID Google Cloud's Agent Platform с суффиксом версии `@` и имена развёртывания Microsoft Foundry, которые содержат ID модели Claude. Claude Code проверяет модель позади Amazon Bedrock [application inference profile ARN](https://code.claude.com/docs/ru/amazon-bedrock.md#map-each-model-version-to-an-inference-profile) а не сам ARN. Он не записывает строку для ARN, который он не может разрешить, например неправильно введённый.6214Claude Code не записывает строку для ID поставщиков, которые он разрешает на модель, которую он распознаёт, например Amazon Bedrock `us.anthropic.claude-...` ID, ID Google Cloud's Agent Platform с суффиксом версии `@` и имена развёртывания Microsoft Foundry, которые содержат ID модели Claude. Claude Code проверяет модель позади Amazon Bedrock [application inference profile ARN](https://code.claude.com/docs/ru/amazon-bedrock.md#map-each-model-version-to-an-inference-profile) а не сам ARN. Он не записывает строку для ARN, который он не может разрешить, например неправильно введённый.

6160 6215 

fast-mode.md +8 −1

Details

14 14 

15Быстрый режим — это не другая модель. Он использует Claude Opus с другой конфигурацией API, которая приоритизирует скорость над экономичностью. Вы получаете идентичное качество и возможности с более быстрыми ответами. Быстрый режим поддерживается на Opus 5.5, Opus 5 и Opus 4.8. Он недоступен на Sonnet, Haiku или других моделях.15Быстрый режим — это не другая модель. Он использует Claude Opus с другой конфигурацией API, которая приоритизирует скорость над экономичностью. Вы получаете идентичное качество и возможности с более быстрыми ответами. Быстрый режим поддерживается на Opus 5.5, Opus 5 и Opus 4.8. Он недоступен на Sonnet, Haiku или других моделях.

16 16 

17> [!WARNING]

18>

19> Быстрый режим для Opus 4.8 был объявлен устаревшим 30 октября 2026 года и будет удален 30 ноября 2026 года. Если после этой даты вы по-прежнему используете Opus 4.8 с включенным быстрым режимом, API будет отклонять ваши запросы. До этой даты переключитесь на Opus 5.5 или отключите быстрый режим в своей сессии:

20>

21> * **Чтобы сохранить быстрый режим**: используйте [`/model`](https://code.claude.com/docs/ru/model-config#setting-your-model), чтобы переключиться на [Opus 5.5](https://code.claude.com/docs/ru/model-config.md#model-aliases); для этого требуется Claude Code v2.1.280 или новее. После переключения быстрый режим остается включенным. Если новая сессия по-прежнему запускается на Opus 4.8, см. раздел [Новая сессия запускается на другой модели, чем вы выбрали](https://code.claude.com/docs/ru/model-config.md#a-new-session-starts-on-a-different-model-than-you-picked).

22> * **Чтобы остаться на Opus 4.8 со стандартной скоростью**: выполните [`/fast off`](https://code.claude.com/docs/ru/commands)

23 

17Opus 4.7 не поддерживает быстрый режим, поэтому переключение на него отключает быстрый режим. Быстрый режим для Opus 4.7 был объявлен устаревшим 25 июня 2026 года и удален 24 июля 2026 года.24Opus 4.7 не поддерживает быстрый режим, поэтому переключение на него отключает быстрый режим. Быстрый режим для Opus 4.7 был объявлен устаревшим 25 июня 2026 года и удален 24 июля 2026 года.

18 25 

19Что нужно знать:26Что нужно знать:


88 95 

89* **Pro, Max и Ultra**: вы платите за быстрый режим из своих кредитов использования. Перейдите на [**Settings > Usage**](https://claude.ai/settings/usage) на claude.ai, где раздел **Usage credits** показывает, сколько вы потратили в кредитах использования в этом месяце. Эта цифра включает быстрый режим, но не разбивает его отдельно.96* **Pro, Max и Ultra**: вы платите за быстрый режим из своих кредитов использования. Перейдите на [**Settings > Usage**](https://claude.ai/settings/usage) на claude.ai, где раздел **Usage credits** показывает, сколько вы потратили в кредитах использования в этом месяце. Эта цифра включает быстрый режим, но не разбивает его отдельно.

90* **Team и Enterprise**: ваша организация платит за использование быстрого режима из своих кредитов использования. Чтобы увидеть свои расходы в кредитах использования, запустите [`/usage`](https://code.claude.com/docs/ru/costs#check-your-usage-credits-spend). Для того, где ваша организация видит эти расходы, см. [Claude для Teams и Enterprise](https://code.claude.com/docs/ru/costs.md#claude-for-teams-and-enterprise).97* **Team и Enterprise**: ваша организация платит за использование быстрого режима из своих кредитов использования. Чтобы увидеть свои расходы в кредитах использования, запустите [`/usage`](https://code.claude.com/docs/ru/costs#check-your-usage-credits-spend). Для того, где ваша организация видит эти расходы, см. [Claude для Teams и Enterprise](https://code.claude.com/docs/ru/costs.md#claude-for-teams-and-enterprise).

91* **Claude Console**: ваша организация платит за быстрый режим вместе с остальным использованием API. На страницах Console [Usage](https://platform.claude.com/usage) и [Cost](https://platform.claude.com/cost) выберите **Speed (Research Preview)** в меню **Group by** для отделения быстрого режима от использования стандартной скорости. Вы видите эту опцию только когда выбранный диапазон дат включает использование быстрого режима.98* **Claude Console**: ваша организация платит за быстрый режим вместе с остальным использованием API. На страницах Console [Usage](https://platform.claude.com/usage) и [Cost](https://platform.claude.com/cost) выберите **Speed (research preview)** в меню **Group by** для отделения быстрого режима от использования стандартной скорости. Вы видите эту опцию только когда выбранный диапазон дат включает использование быстрого режима.

92 99 

93## Решение о том, когда использовать быстрый режим100## Решение о том, когда использовать быстрый режим

94 101 

Details

192 192 

193Когда Claude Code запускается с настроенной Agent Platform от Google Cloud, он проверяет, доступны ли в вашем проекте модели, которые он собирается использовать.193Когда Claude Code запускается с настроенной Agent Platform от Google Cloud, он проверяет, доступны ли в вашем проекте модели, которые он собирается использовать.

194 194 

195Если вы закрепили версию модели, которая старше текущей версии по умолчанию в Claude Code, и ваш проект может вызывать более новую версию, Claude Code предложит обновить закреплённую версию. Если вы согласитесь, новый идентификатор модели будет записан в ваш [файл пользовательских настроек](https://code.claude.com/docs/ru/settings.md), и Claude Code перезапустится. Отказ запоминается до следующей смены версии по умолчанию.195Возможно, вы закрепили версию модели, которая старше текущей версии по умолчанию в Claude Code. Если ваш проект может вызывать более новую версию, Claude Code предложит обновить закреплённую версию:

196 

197* **Если вы согласитесь**: Claude Code запишет новый идентификатор модели в ваш [файл пользовательских настроек](https://code.claude.com/docs/ru/settings.md) и перезапустится

198* **Если вы откажетесь**: Claude Code запомнит ваш выбор до следующей смены версии по умолчанию

199 

200Для закреплённой версии в блоке `env` [управляемых настроек](https://code.claude.com/docs/ru/managed-settings.md) Claude Code не выполняет проверку и не предлагает обновление.

196 201 

197Если вы не закрепили модель и текущая модель по умолчанию недоступна в вашем проекте, Claude Code использует резервный вариант для текущей сессии и показывает уведомление. Сначала он пробует более ранние версии модели по умолчанию, а если модель по умолчанию относится к Opus и ни одна версия Opus не доступна, переключается на модель Sonnet по умолчанию. Резервный вариант не сохраняется. Включите более новую модель в [Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) или [закрепите версию](#5-pin-model-versions), чтобы сделать выбор постоянным.202Если вы не закрепили модель и текущая модель по умолчанию недоступна в вашем проекте, Claude Code использует резервный вариант для текущей сессии и показывает уведомление. Сначала он пробует более ранние версии модели по умолчанию, а если модель по умолчанию относится к Opus и ни одна версия Opus не доступна, переключается на модель Sonnet по умолчанию. Резервный вариант не сохраняется. Включите более новую модель в [Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) или [закрепите версию](#5-pin-model-versions), чтобы сделать выбор постоянным.

198 203 

hooks.md +3 −3

Details

580| Поле | Обязательно | Описание |580| Поле | Обязательно | Описание |

581| :- | :- | :- |581| :- | :- | :- |

582| `prompt` | да | Текст подсказки для отправки модели. Используйте `$ARGUMENTS` как заполнитель для JSON входа hook. Экранируйте обратной косой чертой для включения буквального текста: `\$1.00` отображается как `$1.00` |582| `prompt` | да | Текст подсказки для отправки модели. Используйте `$ARGUMENTS` как заполнитель для JSON входа hook. Экранируйте обратной косой чертой для включения буквального текста: `\$1.00` отображается как `$1.00` |

583| `model` | нет | Модель для использования при оценке. По умолчанию модель, которую Claude Code использует для [фоновой функциональности](https://code.claude.com/docs/ru/costs.md#background-token-usage) |583| `model` | нет | Модель для оценки. По умолчанию — модель, которую Claude Code использует для [фоновых функций](https://code.claude.com/docs/ru/model-config.md#environment-variables) |

584 584 

585### Reference scripts by path585### Reference scripts by path

586 586 


3914 3914 

3915Вместо выполнения команды Bash, prompt-based hooks:3915Вместо выполнения команды Bash, prompt-based hooks:

3916 3916 

39171. Отправляют входные данные hook и вашу подсказку модели Claude, по умолчанию той, которую Claude Code использует для [фоновой функциональности](https://code.claude.com/docs/ru/costs.md#background-token-usage)39171. Отправляют входные данные хука и ваш промпт модели Claude, по умолчанию той, которую Claude Code использует для [фоновой функциональности](https://code.claude.com/docs/ru/model-config.md#environment-variables)

39182. LLM отвечает структурированным JSON, содержащим решение39182. LLM отвечает структурированным JSON, содержащим решение

39193. Claude Code автоматически обрабатывает решение39193. Claude Code автоматически обрабатывает решение

3920 3920 


3947| :- | :- | :- |3947| :- | :- | :- |

3948| `type` | да | Должно быть `"prompt"` |3948| `type` | да | Должно быть `"prompt"` |

3949| `prompt` | да | Текст подсказки для отправки LLM. Используйте `$ARGUMENTS` как заполнитель для JSON входа hook. Если `$ARGUMENTS` отсутствует, JSON входа добавляется к подсказке |3949| `prompt` | да | Текст подсказки для отправки LLM. Используйте `$ARGUMENTS` как заполнитель для JSON входа hook. Если `$ARGUMENTS` отсутствует, JSON входа добавляется к подсказке |

3950| `model` | нет | Модель для использования при оценке. По умолчанию модель, которую Claude Code использует для [фоновой функциональности](https://code.claude.com/docs/ru/costs.md#background-token-usage) |3950| `model` | нет | Модель для использования при оценке. По умолчанию модель, которую Claude Code использует для [фоновой функциональности](https://code.claude.com/docs/ru/model-config.md#environment-variables) |

3951| `timeout` | нет | Таймаут в секундах. По умолчанию: 30 |3951| `timeout` | нет | Таймаут в секундах. По умолчанию: 30 |

3952| `continueOnBlock` | нет | На событиях, к которым это применяется, `true` передаёт причину `ok: false` обратно Claude и продолжает вместо завершения хода. По умолчанию: `false`. См. [Response schema](#response-schema) для поведения для каждого события |3952| `continueOnBlock` | нет | На событиях, к которым это применяется, `true` передаёт причину `ok: false` обратно Claude и продолжает вместо завершения хода. По умолчанию: `false`. См. [Response schema](#response-schema) для поведения для каждого события |

3953 3953 

Details

674* **Esc**: вернуться из diff файла в список или закрыть диалоговое окно из списка.674* **Esc**: вернуться из diff файла в список или закрыть диалоговое окно из списка.

675* **Tab**: перейти к селектору `source`, затем выбрать `Current` или представление хода с помощью Up и Down и нажать Enter. В diff файла Tab переводит фокус на кнопку `ask`. Нажмите Enter, чтобы прикрепить diff этого файла к вашему следующему промпту.675* **Tab**: перейти к селектору `source`, затем выбрать `Current` или представление хода с помощью Up и Down и нажать Enter. В diff файла Tab переводит фокус на кнопку `ask`. Нажмите Enter, чтобы прикрепить diff этого файла к вашему следующему промпту.

676 676 

677## Боковые вопросы с /btw677## Побочные вопросы с /btw

678 678 

679Используйте `/btw` для задания вопроса о вашей текущей работе без добавления в историю разговора.679Используйте `/btw`, чтобы задать вопрос о текущей работе, не добавляя его в историю диалога.

680 680 

681```681```

682/btw what was the name of that config file again?682/btw what was the name of that config file again?

683```683```

684 684 

685Claude отвечает на боковой вопрос на основе того, что уже находится в разговоре: ваши сообщения, его ответы и результаты инструментов, которые он собрал. Вы можете спросить о коде, который Claude уже прочитал, о решениях, которые он принял ранее, или о чём-либо ещё из сеанса. Более поздний боковой вопрос также видит ваши более ранние боковые вопросы: Claude Code воспроизводит последние 20 обменов с каждым запросом, пока вы их не очистите. Вопрос и ответ никогда не попадают в историю разговора. В терминале они появляются в закрываемом оверлее. Терминал хранит поток в памяти: нажмите `x` для очистки более ранних обменов, и они исчезнут при выходе из Claude Code.685Claude отвечает на побочный вопрос на основе того, что уже есть в диалоге: ваших сообщений, своих ответов и собранных результатов инструментов. Вы можете спросить о коде, который Claude уже прочитал, о решениях, принятых им ранее, или о чём-либо ещё из сессии. Следующий побочный вопрос также видит ваши предыдущие побочные вопросы: Claude Code воспроизводит 20 последних обменов при каждом запросе, пока вы их не очистите. Вопрос и ответ никогда не попадают в историю диалога. В терминале они отображаются в закрываемом оверлее. Терминал хранит эту ветку в памяти: нажмите `x`, чтобы очистить предыдущие обмены, а при выходе из Claude Code она исчезает.

686 686 

687В [панели чата расширения VS Code](https://code.claude.com/docs/ru/vs-code.md#use-the-prompt-box) `/btw` открывает панель вместо оверлея, описанного в этом разделе, и вы задаёте дополнительные вопросы прямо в панели. Поток панели сохраняется при перезагрузке окна согласно графику хранения, описанному на этой странице. Вам нужно расширение версии 2.1.227 или позже. Более ранние версии расширения не предлагают `/btw`.687В панели чата [расширения VS Code](https://code.claude.com/docs/ru/vs-code.md#use-the-prompt-box) команда `/btw` открывает панель, а не оверлей, описанный в этом разделе, и уточняющие вопросы задаются прямо в панели. Ветка в панели сохраняется при перезагрузке окна в соответствии с графиком хранения, описанным на той странице. Требуется расширение версии v2.1.227 или новее. Более ранние версии расширения не поддерживают `/btw`.

688 688 

689* **Доступно во время работы Claude**: вы можете запустить `/btw` даже во время обработки Claude ответа. Боковой вопрос выполняется независимо и не прерывает основной ход. Он видит всё в разговоре до сих пор, кроме ответа, который Claude ещё пишет.689* **Доступно, пока Claude работает**: вы можете выполнить `/btw`, даже когда Claude обрабатывает ответ. Побочный вопрос выполняется независимо и не прерывает основной ход. Он видит всё, что есть в диалоге к этому моменту, кроме ответа, который Claude ещё пишет.

690* **Без доступа к инструментам**: боковые вопросы отвечают только на основе того, что уже находится в контексте. Claude не может читать файлы, выполнять команды или искать при ответе на боковой вопрос. Если Claude всё же выводит вызовы инструментов как текст, ответ заканчивается примечанием о том, что ничего не было выполнено.690* **Без доступа к инструментам**: побочные вопросы отвечаются только на основе того, что уже есть в контексте. Отвечая на побочный вопрос, Claude не может читать файлы, выполнять команды или выполнять поиск. Если Claude всё же выпишет вызовы инструментов в виде текста, ответ завершится примечанием о том, что ничего не было выполнено.

691* **Один ответ**: в оверлее нет дополнительных ходов. Чтобы продолжить поток, задайте ещё один вопрос `/btw`. Чтобы продолжить с полным доступом к инструментам в локальном сеансе, нажмите `f` для разветвления этого вопроса и ответа в [фоновый подагент](https://code.claude.com/docs/ru/sub-agents.md#fork-the-current-conversation).691* **Один ответ**: в оверлее нет последующих ходов. Чтобы продолжить ветку, задайте ещё один вопрос через `/btw`. Чтобы продолжить с полным доступом к инструментам в локальной сессии, нажмите `f` и ответвите этот вопрос и ответ в [фоновый субагент](https://code.claude.com/docs/ru/sub-agents.md#fork-the-current-conversation).

692* **Низкая стоимость**: пока [кэш подсказок](https://code.claude.com/docs/ru/prompt-caching.md) разговора активен, боковой вопрос стоит немного больше, чем сам ответ.692* **Низкая стоимость**: пока [кэш промптов](https://code.claude.com/docs/ru/prompt-caching.md) диалога «тёплый», побочный вопрос почти ничего не стоит сверх стоимости самого ответа.

693 693 

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

695 695 

696Чтобы вернуться к оверлею после его закрытия, запустите `/btw` без вопроса. Оверлей снова откроется на вашем самом последнем обмене.696Чтобы вернуться к оверлею после его закрытия, выполните `/btw` без вопроса. Оверлей снова откроется на вашем последнем обмене.

697 697 

698После появления ответа оверлей принимает эти клавиши.698Когда ответ появится, оверлей принимает следующие клавиши.

699 699 

700| Клавиша | Действие |700| Клавиша | Действие |

701| :- | :- |701| :- | :- |

702| `Space`, `Enter`, `Escape` | Закрыть ответ и вернуться к подсказке |702| `Space`, `Enter`, `Escape` | Закрыть ответ и вернуться к промпту |

703| `Up` / `Down` | Прокрутить ответ |703| `Up` / `Down` | Прокрутить ответ |

704| `Shift+Left` / `Shift+Right` | Переходить между этим ответом и вашими более ранними ответами `/btw`. `Shift+Left` переходит к более старым ответам, а `Shift+Right` возвращается к текущему. `[` и `]` делают то же самое для терминалов, которые не сообщают `Shift` со стрелками. `Tab` / `Shift+Tab` циклируют через те же ответы. Требуется Claude Code версии 2.1.257 или позже. Между версиями 2.1.187 и 2.1.256 клавишами были простые `Left` / `Right` |704| `Shift+Left` / `Shift+Right` | Переключаться между этим ответом и предыдущими ответами `/btw`. `Shift+Left` переходит к более старым ответам, а `Shift+Right` возвращает к текущему. `[` и `]` делают то же самое — для терминалов, которые не передают `Shift` вместе с клавишами-стрелками. `Tab` / `Shift+Tab` циклически перебирают те же ответы. Требуется Claude Code v2.1.257 или новее. В версиях с v2.1.187 по v2.1.256 использовались обычные `Left` / `Right` |

705| `c` | Скопировать ответ в буфер обмена как необработанный Markdown. Используйте это вместо выделения мышью, которое захватывает жёсткий перенос терминала вместо исходного текста |705| `c` | Скопировать ответ в буфер обмена в виде исходного Markdown. Используйте это вместо выделения мышью, которое захватывает отрисовку терминала с жёсткими переносами строк, а не исходный текст |

706| `f` | Запустить [разветвлённый подагент](https://code.claude.com/docs/ru/sub-agents.md#fork-the-current-conversation), который наследует родительский разговор плюс этот вопрос и ответ, чтобы он мог продолжить с полным доступом к инструментам. Вы остаётесь в текущем сеансе и находите разветвление в [панели ниже вашей подсказки](https://code.claude.com/docs/ru/sub-agents.md#observe-and-steer-running-forks). Доступно только в локальных сеансах |706| `f` | Запустить [ответвлённый субагент](https://code.claude.com/docs/ru/sub-agents.md#fork-the-current-conversation), который наследует родительский диалог вместе с этим вопросом и ответом, чтобы продолжить работу с полным доступом к инструментам. Вы остаётесь в текущей сессии и найдёте ответвление на [панели под промптом](https://code.claude.com/docs/ru/sub-agents.md#observe-and-steer-running-forks). Доступно только в локальных сессиях |

707| `x` | Очистить список более ранних обменов `/btw`, показанный над текущим ответом |707| `x` | Очистить список предыдущих обменов `/btw`, отображаемый над текущим ответом |

708 708 

709В присоединённом [фоновом сеансе](https://code.claude.com/docs/ru/agent-view.md#attach-to-a-session) `Left` отсоединяет и возвращает вас в представление агента, даже во время прибытия ответа. Боковой вопрос продолжает выполняться, пока вас нет. В следующий раз, когда вы присоедините к сеансу, оверлей снова откроется с боковым вопросом или с его ответом. До версии 2.1.257 `Left` там не отсоединял.709В подключённой [фоновой сессии](https://code.claude.com/docs/ru/agent-view.md#attach-to-a-session) клавиша `Left` отключает вас от сессии и возвращает в представление агентов, даже пока ответ ещё поступает. Побочный вопрос продолжает выполняться, пока вас нет. При следующем подключении к сессии оверлей снова откроется с побочным вопросом или с ответом на него. До v2.1.257 клавиша `Left` там не выполняла отключение.

710 710 

711`/btw` видит ваш полный разговор, но не имеет инструментов. [Подагент](https://code.claude.com/docs/ru/sub-agents.md) имеет инструменты и начинает с подсказки, которую он получает, или, для [разветвления](https://code.claude.com/docs/ru/sub-agents.md#fork-the-current-conversation), с копии этого разговора. Используйте `/btw` для вопросов о том, что Claude уже знает из этого сеанса; используйте подагента для поиска чего-то нового.711`/btw` видит весь ваш диалог или [открытый вами транскрипт субагента](#ask-btw-about-a-subagent), но не имеет инструментов. [Субагент](https://code.claude.com/docs/ru/sub-agents.md) имеет инструменты и начинает с полученного промпта. [Ответвление](https://code.claude.com/docs/ru/sub-agents.md#fork-the-current-conversation) начинает с копии этого диалога. Используйте `/btw`, чтобы спросить о том, что Claude уже знает из этой сессии; используйте субагент, чтобы выяснить что-то новое.

712 

713### Вопрос /btw о субагенте

714 

715Когда открыт [транскрипт субагента](https://code.claude.com/docs/ru/sub-agents.md#observe-and-steer-running-forks), Claude отвечает на `/btw` на основе этого транскрипта, а не основного диалога, поэтому вы можете спросить, что сделал субагент. Следующий `/btw` из этого транскрипта видит только побочные вопросы, заданные из него. Требуется Claude Code v2.1.314 или новее.

716 

717Из транскрипта участника [команды агентов](https://code.claude.com/docs/ru/agent-teams.md) Claude отвечает на основе основного диалога.

712 718 

713## Список задач719## Список задач

714 720 


749* **После сна вашего компьютера**: если он спал более чем примерно 30 минут и лимит сбросился во время сна, первая строка читается как `Your usage limit has reset`, а вторая — `Press enter to continue`. Нажмите `Enter` для продолжения. После более короткого сна или сна, закончившегося до сброса, Claude Code продолжает самостоятельно.755* **После сна вашего компьютера**: если он спал более чем примерно 30 минут и лимит сбросился во время сна, первая строка читается как `Your usage limit has reset`, а вторая — `Press enter to continue`. Нажмите `Enter` для продолжения. После более короткого сна или сна, закончившегося до сброса, Claude Code продолжает самостоятельно.

750* **Раньше**: когда вы закончите добавлять [кредиты использования](https://code.claude.com/docs/ru/costs.md#add-usage-credits-to-your-subscription) с помощью `/usage-credits`, снова войдёте в систему после `/upgrade` или переключите модели с помощью `/model` во время ожидания, Claude Code проверяет, доступно ли использование снова, и продолжает немедленно, если оно доступно. Он не проверяет после обновления или покупки, которые вы совершаете в браузере самостоятельно. В разделе [`opusplan`](https://code.claude.com/docs/ru/model-config#opusplan-model-setting) и других параметрах модели, которые запускают режим плана на другой модели, Claude Code ждёт сброса вместо этого.756* **Раньше**: когда вы закончите добавлять [кредиты использования](https://code.claude.com/docs/ru/costs.md#add-usage-credits-to-your-subscription) с помощью `/usage-credits`, снова войдёте в систему после `/upgrade` или переключите модели с помощью `/model` во время ожидания, Claude Code проверяет, доступно ли использование снова, и продолжает немедленно, если оно доступно. Он не проверяет после обновления или покупки, которые вы совершаете в браузере самостоятельно. В разделе [`opusplan`](https://code.claude.com/docs/ru/model-config#opusplan-model-setting) и других параметрах модели, которые запускают режим плана на другой модели, Claude Code ждёт сброса вместо этого.

751 757 

752Продолженная задача работает как любой другой ход. Claude Code по-прежнему запрашивает [разрешения](https://code.claude.com/docs/ru/permissions.md) как обычно, поэтому задача может остановиться на запросе, пока вас нет. Если он снова достигнет лимита, Claude Code повторно активирует ожидание самостоятельно максимум два раза подряд, затем останавливается и показывает `Automatic continue stopped after repeated usage-limit hits · /rate-limit-options to try again`.758В продолженной задаче Claude Code по-прежнему запрашивает [разрешения](https://code.claude.com/docs/ru/permissions.md) как обычно, поэтому задача может остановиться на запросе разрешения, пока вас нет. Если задача снова достигнет лимита, ожидание начнётся снова.

759 

760После трёх автоматических продолжений автоматическое продолжение прекращается и появляется уведомление `Automatic continue stopped after repeated usage-limit hits`. Запустите `/rate-limit-options`, чтобы выбрать, что делать дальше. Когда вы отправляете другой промпт или выбираете ожидание в этом меню, счётчик начинается заново. Автоматическое продолжение также прекращается после трёх продолжений для [`/goal`](https://code.claude.com/docs/ru/goal) или [запланированной задачи в рамках сессии](https://code.claude.com/docs/ru/scheduled-tasks.md), которая проходит через несколько окон сброса.

753 761 

754### Отмена ожидания762### Отмена ожидания

755 763 

Details

237* Когда вышестоящий сервер отклоняет запись `role: "system"` внутри `messages`, Claude Code один раз повторяет попытку без этих системных сообщений в середине диалога и вместо этого передает их текст в пользовательских сообщениях. Последующие запросы в диалоге сохраняют эту форму, пока разработчик не выполнит `/clear` или диалог не будет сжат237* Когда вышестоящий сервер отклоняет запись `role: "system"` внутри `messages`, Claude Code один раз повторяет попытку без этих системных сообщений в середине диалога и вместо этого передает их текст в пользовательских сообщениях. Последующие запросы в диалоге сохраняют эту форму, пока разработчик не выполнит `/clear` или диалог не будет сжат

238* Когда вышестоящий сервер отклоняет только маркер `cache_control` на системном сообщении в середине диалога, Claude Code сохраняет системные сообщения и один раз повторяет попытку с перемещенным маркером. Маркер ставится на последнюю запись в `messages`, которая не является системным сообщением, — в этой повторной попытке и в последующих запросах до выхода из Claude Code238* Когда вышестоящий сервер отклоняет только маркер `cache_control` на системном сообщении в середине диалога, Claude Code сохраняет системные сообщения и один раз повторяет попытку с перемещенным маркером. Маркер ставится на последнюю запись в `messages`, которая не является системным сообщением, — в этой повторной попытке и в последующих запросах до выхода из Claude Code

239* Когда вышестоящий сервер отклоняет [подпись мышления](https://platform.claude.com/docs/en/build-with-claude/extended-thinking), включая ошибку `400`, сообщение которой говорит, что блок `bound to a different conversation`, Claude Code удаляет более ранние блоки мышления из запроса, повторяет и исключает их из каждого последующего запроса. Новые ответы по-прежнему включают мышление239* Когда вышестоящий сервер отклоняет [подпись мышления](https://platform.claude.com/docs/en/build-with-claude/extended-thinking), включая ошибку `400`, сообщение которой говорит, что блок `bound to a different conversation`, Claude Code удаляет более ранние блоки мышления из запроса, повторяет и исключает их из каждого последующего запроса. Новые ответы по-прежнему включают мышление

240* Когда шлюз или его вышестоящий сервер отклоняет запись [инструмента-советника](https://code.claude.com/docs/ru/advisor.md) в `tools` как неизвестный тип инструмента, Claude Code повторяет запрос один раз без этой записи и ее значения `anthropic-beta`. Более поздние запросы к этому базовому URL оставляют советника без внимания до выхода Claude Code, и `/advisor` недоступен разработчику в течение этого времени. Claude Code распознает это отклонение по ответу `400` или `422`, сообщение которого называет тип инструмента после `Input tag`, например `Input tag 'advisor_20260301'`. До версии v2.1.280 Claude Code не повторял это отклонение240* Когда шлюз или его вышестоящий сервер отклоняет запись [инструмента-советника](https://code.claude.com/docs/ru/advisor.md) в `tools` как неизвестный тип инструмента, Claude Code повторяет запрос один раз без этой записи и ее значения `anthropic-beta`. [Последующие запросы](#how-long-a-rejected-beta-value-stays-out) их не содержат. Claude Code распознает это отклонение по ответу `400` или `422`, сообщение которого называет тип инструмента после `Input tag`, например `Input tag 'advisor_20260301'`. До версии v2.1.280 Claude Code не повторял попытку при этом отклонении

241* Когда вышестоящий сервер отклоняет `output_config.effort` или его значение `anthropic-beta`, Claude Code повторяет попытку и не добавляет ни то, ни другое в запросы к этой модели до выхода из Claude Code. Вашему шлюзу не нужны изменения, если он пересылает ошибку `400` вышестоящего сервера без изменений, а ее сообщение:241* Когда вышестоящий сервер отклоняет `output_config.effort` или его значение `anthropic-beta`, шлюз получает запрос еще раз без них. [Последующие запросы](#how-long-a-rejected-beta-value-stays-out) их не содержат. Вашему шлюзу не нужны изменения, если он пересылает ошибку `400` вышестоящего сервера без изменений, а ее сообщение:

242 * Называет `output_config.effort` вместе с `Extra inputs are not permitted`242 * Называет `output_config.effort` вместе с `Extra inputs are not permitted`

243 * Сообщает, что модель не поддерживает параметр effort243 * Сообщает, что модель не поддерживает параметр effort

244 * Начинается с `Unexpected value(s)` и указывает `effort-2025-11-24` для заголовка `anthropic-beta`. Требуется v2.1.310 или более поздняя версия. Разработчики, у которых [`ANTHROPIC_BETAS`](https://code.claude.com/docs/ru/env-vars) содержит это значение, продолжают его отправлять и получать ошибку `400`, поэтому попросите их удалить эту запись244 * Начинается с `Unexpected value(s)` и указывает `effort-2025-11-24` для заголовка `anthropic-beta`. Требуется v2.1.310 или более поздняя версия. Разработчики, у которых [`ANTHROPIC_BETAS`](https://code.claude.com/docs/ru/env-vars) содержит это значение, продолжают его отправлять и получать ошибку `400`, поэтому попросите их удалить эту запись

245* Когда вышестоящий сервер отклоняет поле `context_management` или его значение `anthropic-beta`, шлюз получает запрос еще раз без них. Если шлюз снова увидит их в более позднем запросе и вышестоящий сервер снова их отклонит, последует такая же повторная попытка. Claude Code распознает это отклонение по его сообщению, например содержащему `context_management: Extra inputs are not permitted`. До версии v2.1.304 Claude Code не повторял попытку при этом отклонении245* Когда вышестоящий сервер отклоняет поле `context_management` или его значение `anthropic-beta`, шлюз получает запрос еще раз без них. [Последующие запросы](#how-long-a-rejected-beta-value-stays-out) их не содержат. Claude Code распознает это отклонение по его сообщению, например содержащему `context_management: Extra inputs are not permitted`. До версии v2.1.304 Claude Code не повторял попытку при этом отклонении

246* Когда ошибка `400` отклоняет по имени другое значение `anthropic-beta`, шлюз получает запрос еще раз без него, если [повторная попытка распространяется на это значение](#retry-without-a-rejected-beta-value)

246* Когда вышестоящий сервер отклоняет бета-поле инструмента, отличное от `defer_loading`, например `strict`, ошибка `400` доходит до разработчика. Перед этим шлюз может снова получить запрос [без полей поиска инструментов](#retry-without-tool-search). Чтобы прекратить отправку таких полей, попросите разработчиков установить [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](#disable-pre-release-capabilities)247* Когда вышестоящий сервер отклоняет бета-поле инструмента, отличное от `defer_loading`, например `strict`, ошибка `400` доходит до разработчика. Перед этим шлюз может снова получить запрос [без полей поиска инструментов](#retry-without-tool-search). Чтобы прекратить отправку таких полей, попросите разработчиков установить [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`](#disable-pre-release-capabilities)

247 248 

248Отклонение `bound to a different conversation` поступает из проверки [сохраненного мышления](https://platform.claude.com/docs/en/build-with-claude/preserved-thinking) API, которая не срабатывает, когда содержимое `system`, `tools` или более ранних `messages` отличается от запроса, который создал мышление. Шлюз, который переписывает любое из этого содержимого, может вызвать само отклонение; [Libraries, proxies, and gateways](https://platform.claude.com/docs/en/build-with-claude/preserved-thinking#libraries-proxies-gateways) охватывает то, что нужно пересылать без изменений.249Отклонение `bound to a different conversation` поступает из проверки [сохраненного мышления](https://platform.claude.com/docs/en/build-with-claude/preserved-thinking) API, которая не срабатывает, когда содержимое `system`, `tools` или более ранних `messages` отличается от запроса, который создал мышление. Шлюз, который переписывает любое из этого содержимого, может вызвать само отклонение; [Libraries, proxies, and gateways](https://platform.claude.com/docs/en/build-with-claude/preserved-thinking#libraries-proxies-gateways) охватывает то, что нужно пересылать без изменений.

249 250 

250Большая часть этой логики повторных попыток ориентируется на формулировку ошибки вышестоящего сервера, поэтому пересылайте тела ответов об ошибках без изменений. Шлюз, который оборачивает ошибки вышестоящего сервера в свой собственный конверт, нарушает путь восстановления, даже если он сохраняет код состояния, если только сообщение конверта не содержит стабильный токен `capability_rejected:`. [Claude apps gateway подставляет эти токены вместо формулировок ошибок облачных поставщиков](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#upstream-error-messages), например `capability_rejected: prompt_too_long`.251Большая часть этой логики повторных попыток ориентируется на формулировку ошибки вышестоящего сервера, поэтому пересылайте тела ответов об ошибках без изменений. Шлюз, который оборачивает ошибки вышестоящего сервера в свой собственный конверт, нарушает путь восстановления, даже если он сохраняет код состояния, если только сообщение конверта не содержит стабильный токен `capability_rejected:`. [Claude apps gateway подставляет эти токены вместо формулировок ошибок облачных поставщиков](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#upstream-error-messages), например `capability_rejected: prompt_too_long`.

251 252 

253#### Повторная попытка без отклоненного бета-значения

254 

255Когда ошибка `400` отклоняет по имени значение `anthropic-beta`, на которое распространяется эта повторная попытка, шлюз получает запрос еще раз без него. [Последующие запросы](#how-long-a-rejected-beta-value-stays-out) не содержат это значение. Для большинства охватываемых значений требуется v2.1.314 или более поздняя версия.

256 

257Вашему шлюзу не нужны изменения, если сообщение возвращаемой им ошибки `400` содержит значение в одной из следующих форм:

258 

259* **Предложение API**: предложение `Unexpected value(s)`, в котором указано значение для заголовка `anthropic-beta`

260* **Токен `beta_header:`**: `capability_rejected: beta_header:`, за которым следует значение, — [токен `capability_rejected:`](#automatic-retry-and-error-forwarding)

261 

262Повторная попытка не охватывает такие случаи, как значение с собственной повторной попыткой, значение, которое Claude Code не распознает, или сообщение, в котором не указано никакого значения:

263 

264* **Значение с собственной повторной попыткой, например советник или поиск инструментов**: шлюз вместо этого видит [собственную повторную попытку этой возможности](#automatic-retry-and-error-forwarding)

265* **Значение, которое Claude Code не распознает**: значение, заданное разработчиком через `ANTHROPIC_BETAS`, остается в каждом запросе, поэтому запросы разработчика продолжают завершаться ошибкой `400`. Попросите разработчика удалить эту запись

266* **Сообщение, содержащее только `invalid beta flag`**: Claude Code предполагает, какое значение отклонил вышестоящий сервер. Если запрос содержал одно из предполагаемых значений, шлюз снова получает запрос без этого значения. Если ошибка `400` все равно доходит до разработчика, сделайте так, чтобы ваш шлюз указывал отклоненное значение в одной из этих форм

267 

268#### Как долго отклоненное бета-значение не отправляется

269 

270| Что отклонил вышестоящий сервер | Запросы, в которых оно не передается | До какого момента |

271| :- | :- | :- |

272| Тип инструмента-советника или значение `anthropic-beta` советника | Запросы к тому же базовому URL. `/advisor` недоступен | Выход из Claude Code |

273| `output_config.effort` или его значение `anthropic-beta` | Запросы к той же модели | Выход из Claude Code |

274| `context_management` или другое значение `anthropic-beta`, на которое распространяется [повторная попытка по имени](#retry-without-a-rejected-beta-value) | Запросы в том же диалоге | Завершение диалога или пересборка промпта Claude Code, например при сжатии основного диалога |

275| `context_management` или другое значение, на которое распространяется эта повторная попытка, когда сообщение об ошибке начинается с собственного предложения API об отклонении, например `Unexpected value(s)`, или содержит токен `beta_header:` | Также новые диалоги с моделью, указанной в отклоненном запросе, в том числе после `/clear` | Выход из Claude Code |

276 

252#### Повторная попытка без поиска инструментов277#### Повторная попытка без поиска инструментов

253 278 

254В версии v2.1.305 или более поздней запрос, содержащий [поля `defer_loading` и блоки `tool_reference`](https://code.claude.com/docs/ru/mcp#tool-search-through-a-gateway), может прийти повторно без них после ошибки `400` или `422`, причину которой Claude Code не распознает. После успешной повторной попытки последующие запросы также их не содержат.279В версии v2.1.305 или более поздней Claude Code повторно отправляет запрос без [полей `defer_loading` и блоков `tool_reference`](https://code.claude.com/docs/ru/mcp#tool-search-through-a-gateway) после ошибки `400` или `422`, в которой упоминается поиск инструментов или причину которой он не распознает. После успешной повторной попытки последующие запросы в этом диалоге также их не содержат.

255 280 

256Запросы разработчика продолжают работать без каких-либо изменений на шлюзе, а их инструменты MCP загружаются заранее. Позже Claude Code снова пробует использовать поиск инструментов, поэтому шлюз может увидеть еще один отклоненный запрос, за которым следует его повторная попытка. Чтобы исключить эти поля из всех запросов, попросите разработчиков установить `ENABLE_TOOL_SEARCH=false`. Для работы самого поиска инструментов Claude Code ожидает, что шлюз будет пересылать поля `defer_loading` и блоки `tool_reference` вместе с их значением `anthropic-beta`.281Запросы разработчика продолжают работать без каких-либо изменений на шлюзе, а их инструменты MCP загружаются заранее. Когда Claude Code снова пробует использовать поиск инструментов, шлюз видит еще один отклоненный запрос, за которым следует его повторная попытка. Для работы самого поиска инструментов Claude Code ожидает, что шлюз будет пересылать поля `defer_loading` и блоки `tool_reference` вместе с их значением `anthropic-beta`.

257 282 

258### Отключение предварительных возможностей283### Отключение предварительных возможностей

259 284 

Details

166| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Запрашивает `/v1/models` шлюза при запуске и добавляет возвращаемые имена в средство выбора `/model` | Ваш шлюз обслуживает `/v1/models` и вы хотите, чтобы средства выбора разработчиков были заполнены из него |166| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Запрашивает `/v1/models` шлюза при запуске и добавляет возвращаемые имена в средство выбора `/model` | Ваш шлюз обслуживает `/v1/models` и вы хотите, чтобы средства выбора разработчиков были заполнены из него |

167| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Останавливает отправку Claude Code заголовков и полей тела предварительного выпуска. [Отключить предварительные возможности](https://code.claude.com/docs/ru/llm-gateway-protocol.md#disable-pre-release-capabilities) охватывает точный объем | Ваш шлюз перенаправляет на восходящий Amazon Bedrock или Google Cloud's Agent Platform, который отклоняет поля бета-версии. См. [Требования к шлюзу](#gateway-requirements) |167| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Останавливает отправку Claude Code заголовков и полей тела предварительного выпуска. [Отключить предварительные возможности](https://code.claude.com/docs/ru/llm-gateway-protocol.md#disable-pre-release-capabilities) охватывает точный объем | Ваш шлюз перенаправляет на восходящий Amazon Bedrock или Google Cloud's Agent Platform, который отклоняет поля бета-версии. См. [Требования к шлюзу](#gateway-requirements) |

168| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` или `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Восстанавливает [быстрый режим](https://code.claude.com/docs/ru/fast-mode.md), когда его проверка доступности, которая вызывает `api.anthropic.com` напрямую, а не следует `ANTHROPIC_BASE_URL`, не работает, перехватывается или пропускается из-за отсутствия учетных данных Anthropic | Ваша организация использует быстрый режим, и разработчики аутентифицируются только с `ANTHROPIC_AUTH_TOKEN`, с ключом, выданным шлюзом в `ANTHROPIC_API_KEY` или из `apiKeyHelper`, или ваша сеть блокирует или перехватывает прямые запросы к `api.anthropic.com`; [использовать быстрый режим за прокси и LLM шлюзами](https://code.claude.com/docs/ru/fast-mode.md#use-fast-mode-behind-proxies-and-llm-gateways) охватывает, какая из двух переменных соответствует вашей конфигурации |168| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` или `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Восстанавливает [быстрый режим](https://code.claude.com/docs/ru/fast-mode.md), когда его проверка доступности, которая вызывает `api.anthropic.com` напрямую, а не следует `ANTHROPIC_BASE_URL`, не работает, перехватывается или пропускается из-за отсутствия учетных данных Anthropic | Ваша организация использует быстрый режим, и разработчики аутентифицируются только с `ANTHROPIC_AUTH_TOKEN`, с ключом, выданным шлюзом в `ANTHROPIC_API_KEY` или из `apiKeyHelper`, или ваша сеть блокирует или перехватывает прямые запросы к `api.anthropic.com`; [использовать быстрый режим за прокси и LLM шлюзами](https://code.claude.com/docs/ru/fast-mode.md#use-fast-mode-behind-proxies-and-llm-gateways) охватывает, какая из двух переменных соответствует вашей конфигурации |

169| `ANTHROPIC_MODEL` или [`ANTHROPIC_DEFAULT_HAIKU_MODEL`](https://code.claude.com/docs/ru/model-config) | Установить, какое имя модели Claude Code запрашивает для основного сеанса и для фонового трафика | Ваш шлюз маршрутизирует имена моделей, которые не соответствуют значениям по умолчанию Claude Code, или вы маршрутизируете [фоновую функциональность](https://code.claude.com/docs/ru/costs.md#background-token-usage) на другую модель. Маршрутизируйте как переопределенные имена, так и встроенные идентификаторы моделей Claude Code, которые запрашиваются, когда переопределение не установлено, так как некоторые подвызовы могут запросить встроенный идентификатор независимо от переопределения; [конфигурация моделей](https://code.claude.com/docs/ru/model-config.md) охватывает, какую модель использует каждая часть сеанса |169| `ANTHROPIC_MODEL` или [`ANTHROPIC_DEFAULT_HAIKU_MODEL`](https://code.claude.com/docs/ru/model-config) | Задают, какое имя модели Claude Code запрашивает для основной сессии и для фонового трафика | Ваш шлюз маршрутизирует имена моделей, которые не совпадают со значениями по умолчанию Claude Code, или вы направляете [фоновую функциональность](https://code.claude.com/docs/ru/model-config.md#environment-variables) на другую модель. Маршрутизируйте как имена переопределений, так и встроенные идентификаторы моделей, которые Claude Code запрашивает, когда переопределение не задано, поскольку некоторые фоновые подвызовы запрашивают встроенный идентификатор независимо от переопределения |

170| `ANTHROPIC_BEDROCK_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL`, `ANTHROPIC_FOUNDRY_BASE_URL` или `ANTHROPIC_AWS_BASE_URL` с [переменными для этого поставщика](https://code.claude.com/docs/ru/llm-gateway-connect.md#route-to-a-cloud-provider-through-a-gateway) | Указать Claude Code на шлюз через базовый URL, специфичный для поставщика. Amazon Bedrock и Google Cloud's Agent Platform также переключаются на собственный формат запроса этих поставщиков | Ваш шлюз находится перед Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry или Claude Platform на AWS; см. [Форматы API](https://code.claude.com/docs/ru/llm-gateway-protocol.md#api-formats) |170| `ANTHROPIC_BEDROCK_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL`, `ANTHROPIC_FOUNDRY_BASE_URL` или `ANTHROPIC_AWS_BASE_URL` с [переменными для этого поставщика](https://code.claude.com/docs/ru/llm-gateway-connect.md#route-to-a-cloud-provider-through-a-gateway) | Указать Claude Code на шлюз через базовый URL, специфичный для поставщика. Amazon Bedrock и Google Cloud's Agent Platform также переключаются на собственный формат запроса этих поставщиков | Ваш шлюз находится перед Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry или Claude Platform на AWS; см. [Форматы API](https://code.claude.com/docs/ru/llm-gateway-protocol.md#api-formats) |

171 171 

172#### Распределить через управляемые параметры172#### Распределить через управляемые параметры

mcp.md +20 −4

Details

952* Для сервера, чей заголовок `Authorization` вы настроили в `headers` или через [`headersHelper`](#use-dynamic-headers-for-custom-authentication), `401` или `403` при подключении не помечает сервер, потому что исправлять нужно те учётные данные, которые вы настроили. Claude Code вместо этого сообщает о неудачном подключении. Если вы установили этот заголовок из ссылки `${VAR}`, проверьте, является ли эта переменная одной из тех, которые Claude Code [читает как пустые](#credential-variables-that-read-as-empty).952* Для сервера, чей заголовок `Authorization` вы настроили в `headers` или через [`headersHelper`](#use-dynamic-headers-for-custom-authentication), `401` или `403` при подключении не помечает сервер, потому что исправлять нужно те учётные данные, которые вы настроили. Claude Code вместо этого сообщает о неудачном подключении. Если вы установили этот заголовок из ссылки `${VAR}`, проверьте, является ли эта переменная одной из тех, которые Claude Code [читает как пустые](#credential-variables-that-read-as-empty).

953* Для коннектора, [доставленного в облачную сессию](#how-connectors-reach-claude-code), Claude Code не запускает поток входа, потому что прокси сессии аутентифицируется на коннекторе с авторизацией, которую вы предоставили в claude.ai. Когда коннектор там требует повторной авторизации, переподключите его на [claude.ai/customize/connectors](https://claude.ai/customize/connectors), а не из сессии.953* Для коннектора, [доставленного в облачную сессию](#how-connectors-reach-claude-code), Claude Code не запускает поток входа, потому что прокси сессии аутентифицируется на коннекторе с авторизацией, которую вы предоставили в claude.ai. Когда коннектор там требует повторной авторизации, переподключите его на [claude.ai/customize/connectors](https://claude.ai/customize/connectors), а не из сессии.

954 954 

955Когда OAuth-сервер, на который вы уже вошли, отклоняет ваш сохранённый токен с `401 Unauthorized`, Claude Code обновляет токен, переподключается и повторяет запрос один раз. Он помечает сервер в `/mcp`, только если эта повторная попытка также не удаётся. При запуске `claude -p` или Agent SDK на macOS запрос, который Claude Code отправил, когда не мог прочитать ваш сохранённый токен, вместо этого завершается [ошибкой сохранённых учётных данных](https://code.claude.com/docs/ru/errors.md#couldnt-read-the-stored-credentials-for-mcp-server).955Когда OAuth-сервер, на который вы уже вошли, отклоняет ваш сохранённый токен с `401 Unauthorized`, Claude Code переподключается с новым токеном или без него:

956 

957* **В вашем сохранённом входе есть токен обновления**: Claude Code обновляет токен, переподключается и повторяет запрос один раз. Сервер помечается в `/mcp`, только если эта повторная попытка также не удаётся.

958* **В вашем сохранённом входе нет токена обновления**: Claude Code подключается один раз без токена. Если сервер отвечает, его инструменты работают, пока вы не вошли в систему, а отклонённый токен удаляется. Если сервер отклоняет и это подключение, `/mcp` показывает, что сервер требует аутентификации.

959 

960При запуске `claude -p` или Agent SDK на macOS запрос, который Claude Code отправил, когда не мог прочитать ваш сохранённый токен, завершается [ошибкой сохранённых учётных данных](https://code.claude.com/docs/ru/errors.md#couldnt-read-the-stored-credentials-for-mcp-server).

956 961 

957Когда сервер отклоняет сохранённый токен обновления, Claude Code немедленно показывает уведомление, указывающее на `/mcp`. Откройте `/mcp` и выберите **Re-authenticate** на сервере, чтобы войти снова до того, как следующий вызов инструмента завершится ошибкой.962Когда сервер отклоняет сохранённый токен обновления, Claude Code немедленно показывает уведомление, указывающее на `/mcp`. Откройте `/mcp` и выберите **Re-authenticate** на сервере, чтобы войти снова до того, как следующий вызов инструмента завершится ошибкой.

958 963 


1640 1645 

1641## Ответ на запросы elicitation MCP1646## Ответ на запросы elicitation MCP

1642 1647 

1643MCP серверы могут запрашивать у вас структурированный ввод во время выполнения задачи, используя elicitation. Когда серверу требуется информация, которую он не может получить самостоятельно, Claude Code отображает интерактивный диалог и передает ваш ответ обратно серверу. С вашей стороны не требуется никакой конфигурации: диалоги elicitation появляются автоматически, когда сервер их запрашивает.1648MCP-серверы могут запрашивать у вас структурированный ввод во время выполнения задачи, используя elicitation. Когда серверу требуется информация, которую он не может получить самостоятельно, Claude Code отображает интерактивный диалог в терминале и передает ваш ответ обратно серверу. С вашей стороны не требуется никакой конфигурации: диалоги elicitation появляются автоматически, когда сервер их запрашивает.

1644 1649 

1645Серверы могут запрашивать ввод двумя способами:1650Серверы могут запрашивать ввод двумя способами:

1646 1651 


1653 1658 

1654Если вы создаете MCP сервер, который использует elicitation, см. [спецификацию MCP elicitation](https://modelcontextprotocol.io/docs/learn/client-concepts#elicitation) для деталей протокола и примеров схемы.1659Если вы создаете MCP сервер, который использует elicitation, см. [спецификацию MCP elicitation](https://modelcontextprotocol.io/docs/learn/client-concepts#elicitation) для деталей протокола и примеров схемы.

1655 1660 

1661### Ответ на запрос elicitation в облачной сессии

1662 

1663Когда задача Claude в вашей облачной сессии ожидает ответа на запрос MCP-сервера, серверу что-то нужно от вас, например значение или вход в систему. Если запрос отображается в виде карточки на claude.ai/code или на вкладке **Code** в приложении Desktop, ответьте на карточке:

1664 

1665* **Режим формы**: заполните поля, затем нажмите **Submit**

1666* **Режим URL**: нажмите **Open link**, завершите открывшийся поток, затем нажмите **I’m done, continue** на карточке

1667 

1668Чтобы отказаться от запроса, нажмите **Decline**. Claude продолжит работу, как только сервер ответит.

1669 

1670Если вы не видите карточку ни в одном из этих мест, вы не можете ответить на запрос там. В своей собственной сессии нажмите там кнопку остановки, чтобы завершить ход.

1671 

1656### Режимы elicitation, которые объявляет Claude Code1672### Режимы elicitation, которые объявляет Claude Code

1657 1673 

1658Если вы создаете MCP-сервер, возможности клиента, которые Claude Code отправляет при подключении, сообщают вашему серверу, какие режимы elicitation он может запрашивать. Claude Code объявляет `elicitation: {form: {}, url: {}}` на следующих соединениях, поэтому сервер на любом из них может запрашивать оба режима:1674Если вы создаете MCP-сервер, возможности клиента, которые Claude Code отправляет при подключении, сообщают вашему серверу, какие режимы elicitation он может запрашивать. Claude Code объявляет `elicitation: {form: {}, url: {}}` на следующих соединениях, поэтому сервер на любом из них может запрашивать оба режима:


1815> * **Вы установили `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`**: см. [как это влияет на поиск инструментов](#configure-tool-search)1831> * **Вы установили `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`**: см. [как это влияет на поиск инструментов](#configure-tool-search)

1816> * **Запрос завершился ошибкой, в которой упоминается `defer_loading` или `tool_reference`**: см. [Extra inputs are not permitted](https://code.claude.com/docs/ru/errors.md#extra-inputs-are-not-permitted)1832> * **Запрос завершился ошибкой, в которой упоминается `defer_loading` или `tool_reference`**: см. [Extra inputs are not permitted](https://code.claude.com/docs/ru/errors.md#extra-inputs-are-not-permitted)

1817 1833 

1818Когда `ANTHROPIC_BASE_URL` указывает на шлюз, поиск инструментов включён по умолчанию, поэтому запросы содержат поля инструментов `defer_loading` и блоки `tool_reference`, которые шлюз должен переслать. Пока поиск инструментов включён, инструменты MCP [отложены](#scale-with-mcp-tool-search). Чтобы вместо этого загружать все инструменты заранее, установите `ENABLE_TOOL_SEARCH=false` в своей оболочке или в [`env` настроек](https://code.claude.com/docs/ru/settings-reference#env). До v2.1.304 поиск инструментов за шлюзом был отключён, если только `ENABLE_TOOL_SEARCH` не имел значение `true`, `auto` или `auto:N`.1834Когда `ANTHROPIC_BASE_URL` указывает на шлюз, Claude Code ожидает, что шлюз будет пересылать поля инструментов `defer_loading` и блоки `tool_reference` [вместе с заголовком `anthropic-beta`](https://code.claude.com/docs/ru/llm-gateway-protocol#beta-header-and-body-field-pairs). За шлюзом поиск инструментов включён по умолчанию, поэтому инструменты MCP [отложены](#scale-with-mcp-tool-search), а запросы содержат эти поля и блоки. До v2.1.304 поиск инструментов за шлюзом был отключён, если только `ENABLE_TOOL_SEARCH` не имел значение `true`, `auto` или `auto:N`.

1819 1835 

1820На v2.1.305 или позже Claude Code может [повторить запрос без поиска инструментов](https://code.claude.com/docs/ru/llm-gateway-protocol.md#retry-without-tool-search) после ответа `400` или `422`, причину которого он не распознаёт. Когда повторная попытка срабатывает, на экране ничего не отображается и вам не нужно ничего делать: инструменты MCP вместо этого загружаются заранее. Позже Claude Code снова пробует поиск инструментов ценой ещё одного отклонённого запроса. Чтобы пропустить эти запросы, установите `ENABLE_TOOL_SEARCH=false`.1836На v2.1.305 или позже Claude Code может [повторить запрос без поиска инструментов](https://code.claude.com/docs/ru/llm-gateway-protocol.md#retry-without-tool-search) после ответа `400` или `422`. Когда повторная попытка срабатывает, на экране ничего не отображается и вам не нужно ничего делать: инструменты MCP вместо этого загружаются заранее. Позже Claude Code снова пробует поиск инструментов ценой ещё одного отклонённого запроса.

1821 1837 

1822#### Инструменты, которые остаются отложенными ниже порога `ENABLE_TOOL_SEARCH=auto`1838#### Инструменты, которые остаются отложенными ниже порога `ENABLE_TOOL_SEARCH=auto`

1823 1839 

memory.md +6 −5

Details

206- Include OpenAPI documentation comments206- Include OpenAPI documentation comments

207```207```

208 208 

209Правила без поля `paths` загружаются безусловно и применяются ко всем файлам. Path-scoped правило загружается, когда Claude использует инструмент Read, Write или Edit для совпадающего файла. Оно также загружается, когда Claude просматривает совпадающий файл с помощью команды Bash, которая [считается чтением](https://code.claude.com/docs/ru/tools-reference.md#edit-tool-behavior), например `cat` или `head` для одного файла. Сопоставление также работает, когда Claude достигает файла через символически связанный путь к каталогу проекта, например в символически связанном checkout.209Path-scoped правило загружается, когда Claude использует инструмент Read, Write или Edit для совпадающего файла. Оно также загружается, когда Claude просматривает совпадающий файл с помощью команды Bash, которая [считается чтением](https://code.claude.com/docs/ru/tools-reference.md#edit-tool-behavior), например `cat` или `head` для одного файла. Сопоставление также работает, когда Claude достигает файла через символически связанный путь к каталогу проекта, например в символически связанном checkout.

210 210 

211Каждый шаблон указывается относительно базового каталога правила:211Каждый шаблон указывается относительно базового каталога правила:

212 212 


219 219 

220| Шаблон | Совпадает |220| Шаблон | Совпадает |

221| - | - |221| - | - |

222| `**/*.ts` | Все файлы TypeScript в любом каталоге |222| `**/*.ts` | Файлы `.ts` в любом месте внутри базового каталога |

223| `src/**/*` | Все файлы в каталоге `src/` |223| `src/**/*` | Все файлы внутри `src/` базового каталога |

224| `*.md` | Файлы Markdown в корне проекта |224| `*.md` | Файлы `.md` в любом месте внутри базового каталога |

225| `src/components/*.tsx` | React компоненты в определённом каталоге |225| `/*.md` | Файлы `.md` непосредственно в базовом каталоге, но не в подпапках |

226| `src/components/*.tsx` | Файлы `.tsx` непосредственно в `src/components/` базового каталога, но не в подпапках |

226 227 

227Вы можете указать несколько шаблонов и использовать расширение скобок для сопоставления нескольких расширений в одном шаблоне:228Вы можете указать несколько шаблонов и использовать расширение скобок для сопоставления нескольких расширений в одном шаблоне:

228 229 

model-config.md +1 −1

Details

933| `ANTHROPIC_DEFAULT_FABLE_MODEL` | Модель для использования с `fable` и идентификатор модели, который Claude Code распознаёт как модель Fable для [автоматического переключения на резервную модель](#automatic-model-fallback) у сторонних поставщиков |933| `ANTHROPIC_DEFAULT_FABLE_MODEL` | Модель для использования с `fable` и идентификатор модели, который Claude Code распознаёт как модель Fable для [автоматического переключения на резервную модель](#automatic-model-fallback) у сторонних поставщиков |

934| `ANTHROPIC_DEFAULT_OPUS_MODEL` | Модель для использования с `opus` или для `opusplan`, когда активен Plan Mode. |934| `ANTHROPIC_DEFAULT_OPUS_MODEL` | Модель для использования с `opus` или для `opusplan`, когда активен Plan Mode. |

935| `ANTHROPIC_DEFAULT_SONNET_MODEL` | Модель для использования с `sonnet` или для `opusplan`, когда Plan Mode неактивен. |935| `ANTHROPIC_DEFAULT_SONNET_MODEL` | Модель для использования с `sonnet` или для `opusplan`, когда Plan Mode неактивен. |

936| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | Модель для использования с `haiku` или [фоновая функциональность](https://code.claude.com/docs/ru/costs.md#background-token-usage) |936| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | Модель для использования с `haiku` или для фоновой функциональности |

937| `CLAUDE_CODE_SUBAGENT_MODEL` | Модель по умолчанию для [субагентов](https://code.claude.com/docs/ru/sub-agents.md#choose-a-model), участников [команды агентов](https://code.claude.com/docs/ru/agent-teams.md#specify-teammates-and-models) и агентов [workflow](https://code.claude.com/docs/ru/workflows.md), которым не назначена модель другим способом. Принимает псевдоним, такой как `haiku`, или полное имя модели. Модель для каждого вызова или поле `model` определения, включая `inherit`, имеет приоритет. Чтобы изменить это, установите [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](https://code.claude.com/docs/ru/sub-agents#run-every-subagent-on-one-model) |937| `CLAUDE_CODE_SUBAGENT_MODEL` | Модель по умолчанию для [субагентов](https://code.claude.com/docs/ru/sub-agents.md#choose-a-model), участников [команды агентов](https://code.claude.com/docs/ru/agent-teams.md#specify-teammates-and-models) и агентов [workflow](https://code.claude.com/docs/ru/workflows.md), которым не назначена модель другим способом. Принимает псевдоним, такой как `haiku`, или полное имя модели. Модель для каждого вызова или поле `model` определения, включая `inherit`, имеет приоритет. Чтобы изменить это, установите [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](https://code.claude.com/docs/ru/sub-agents#run-every-subagent-on-one-model) |

938 938 

939У сторонних поставщиков [Настройка отображения и возможностей закреплённой модели](#customize-pinned-model-display-and-capabilities) описывает, что показывает строка закреплённой модели в средстве выбора `/model`.939У сторонних поставщиков [Настройка отображения и возможностей закреплённой модели](#customize-pinned-model-display-and-capabilities) описывает, что показывает строка закреплённой модели в средстве выбора `/model`.

Details

1559 1559 

1560> [!NOTE]1560> [!NOTE]

1561>1561>

1562> Метрики затрат являются приблизительными. Для официальных данных о выставлении счетов обратитесь к вашему поставщику API (Claude Console, Amazon Bedrock или Google Cloud's Agent Platform).1562> Метрики затрат являются приблизительными. Официальные данные биллинга см. в разделе [Управление затратами для вашей организации](https://code.claude.com/docs/ru/costs.md#manage-costs-for-your-organization).

1563 1563 

1564Claude Code учитывает каждый потоковый ответ в метриках затрат и токенов ровно один раз, включая случаи, когда шлюз или прокси-сервер за `ANTHROPIC_BASE_URL` потоком передает использование прогрессивно через несколько кадров.1564Claude Code учитывает каждый потоковый ответ в метриках затрат и токенов ровно один раз, включая случаи, когда шлюз или прокси-сервер за `ANTHROPIC_BASE_URL` потоком передает использование прогрессивно через несколько кадров.

1565 1565 

Details

41* Чтение вне рабочих директорий, пока [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockreadsoutsideworkingdirectories) включено: распознанные команды Bash для чтения файлов и любой [неизолированный повтор](https://code.claude.com/docs/ru/sandboxing.md#the-unsandboxed-retry-escape-hatch), который требует одобрения для запуска вне песочницы, запрашивают даже в режиме auto и режиме `bypassPermissions`. Требует Claude Code v2.1.257 или более поздней версии.41* Чтение вне рабочих директорий, пока [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockreadsoutsideworkingdirectories) включено: распознанные команды Bash для чтения файлов и любой [неизолированный повтор](https://code.claude.com/docs/ru/sandboxing.md#the-unsandboxed-retry-escape-hatch), который требует одобрения для запуска вне песочницы, запрашивают даже в режиме auto и режиме `bypassPermissions`. Требует Claude Code v2.1.257 или более поздней версии.

42 42 

43 Команда, которую парсер оболочки не может отследить, такая как команда, которая меняет директорию более одного раза или запускает подоболочку, запрашивает то же самое, даже если она не называет никакой внешний путь. Этот запрос не применяется, когда команда выполняется в [песочнице](https://code.claude.com/docs/ru/sandboxing.md) и песочница обеспечивает блокировку.43 Команда, которую парсер оболочки не может отследить, такая как команда, которая меняет директорию более одного раза или запускает подоболочку, запрашивает то же самое, даже если она не называет никакой внешний путь. Этот запрос не применяется, когда команда выполняется в [песочнице](https://code.claude.com/docs/ru/sandboxing.md) и песочница обеспечивает блокировку.

44* Запись вне рабочих каталогов, пока [`permissions.blockWritesOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockwritesoutsideworkingdirectories) включено: Claude Code отклоняет там вызовы `Write`, `Edit` и `NotebookEdit`, за исключением [некоторых собственных файлов](https://code.claude.com/docs/ru/settings-reference.md#what-the-write-block-refuses-and-what-stays-writable). Этот ключ не ограничивает shell-команды, инструменты MCP или программы, которые запускают хуки, поэтому используйте [изоляцию в песочнице](https://code.claude.com/docs/ru/sandboxing.md), чтобы ограничить, куда записывают shell-команды. Требует Claude Code v2.1.314 или более поздней версии.

44 45 

45## Распространённые конфигурации46## Распространённые конфигурации

46 47 


531Каким бы ни был ваш ответ, Claude продолжает работу:532Каким бы ни был ваш ответ, Claude продолжает работу:

532 533 

533* **Да, и и дальше разрешать любое чтение за пределами рабочих каталогов**: чтение выполняется, последующие чтения за пределами рабочих каталогов выполняются как прежде, а Claude Code сохраняет ваш ответ, чтобы запрос больше не появлялся534* **Да, и и дальше разрешать любое чтение за пределами рабочих каталогов**: чтение выполняется, последующие чтения за пределами рабочих каталогов выполняются как прежде, а Claude Code сохраняет ваш ответ, чтобы запрос больше не появлялся

534* **Нет, и с этого момента блокировать чтение за пределами рабочих каталогов**: в чтении отказано, а Claude Code устанавливает [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockreadsoutsideworkingdirectories) в значение `true` в ваших пользовательских настройках, из-за чего файловые инструменты отказывают в таком чтении во всех последующих сессиях и во всех режимах разрешений. Чтобы позже позволить Claude прочитать такой путь, добавьте его каталог с помощью `/add-dir` или удалите эту настройку.535* **Нет, и с этого момента блокировать чтение за пределами рабочих каталогов**: в чтении отказано, а Claude Code устанавливает [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockreadsoutsideworkingdirectories) в значение `true` в ваших пользовательских настройках, из-за чего файловые инструменты отказывают в таком чтении в этой и во всех последующих сессиях и во всех режимах разрешений. Чтобы снять блокировку, удалите эту настройку из каждого [файла настроек](https://code.claude.com/docs/ru/settings.md#settings-files-and-who-they-affect), в котором она задана, затем перезапустите каждую работающую сессию. Для одного каталога в текущей сессии используйте `/add-dir`.

535* **Нет, и спросить снова в следующий раз**: в чтении отказано, и при следующем чтении за пределами рабочих каталогов запрос появится снова536* **Нет, и спросить снова в следующий раз**: в чтении отказано, и при следующем чтении за пределами рабочих каталогов запрос появится снова

536* **Да, но спросить снова в следующий раз**: чтение выполняется, ничего не сохраняется, и при следующем чтении за пределами рабочих каталогов запрос появится снова537* **Да, но спросить снова в следующий раз**: чтение выполняется, ничего не сохраняется, и при следующем чтении за пределами рабочих каталогов запрос появится снова

537 538 


553 554 

554Когда авторежим не может подтвердить действия вашей сессии, дальнейшее зависит от ситуации:555Когда авторежим не может подтвердить действия вашей сессии, дальнейшее зависит от ситуации:

555 556 

556* **Заблокированное действие**: Claude Code показывает уведомление и выводит действие в `/permissions` на вкладке **Recently denied**, где можно нажать `r`, чтобы повторить попытку с ручным подтверждением.557* **Заблокированное действие**: Claude Code показывает уведомление и выводит действие в `/permissions` на вкладке **Recently blocked**, где можно [подтвердить действие, чтобы Claude мог повторить попытку](https://code.claude.com/docs/ru/auto-mode-config.md#review-denials).

557* **Повторяющиеся блокировки**: если классификатор блокирует действие 3 раза подряд или 20 раз в сумме, авторежим приостанавливается, и Claude Code снова начинает запрашивать разрешения. Подтверждение запрошенного действия возобновляет авторежим. О том, как подсчитываются блокировки, см. [Пороги повторяющихся блокировок](#repeated-block-thresholds).558* **Повторяющиеся блокировки**: если классификатор блокирует действие 3 раза подряд или 20 раз в сумме, авторежим приостанавливается, и Claude Code снова начинает запрашивать разрешения. Подтверждение запрошенного действия возобновляет авторежим. О том, как подсчитываются блокировки, см. [Пороги повторяющихся блокировок](#repeated-block-thresholds).

558* **Нет вердикта от классификатора**: когда проверка безопасности, не связанная с авторежимом, отклоняет собственный запрос классификатора или ответ классификатора не удаётся разобрать, Claude Code отклоняет действие без уведомления и без записи в **Recently denied**. Какое сообщение показывается в каждом случае и что делать, см. в разделе [Авторежим не может определить безопасность действия](https://code.claude.com/docs/ru/errors.md#auto-mode-cannot-determine-the-safety-of-an-action).559* **Нет вердикта от классификатора**: когда проверка безопасности, не связанная с авторежимом, отклоняет собственный запрос классификатора или ответ классификатора не удаётся разобрать, Claude Code блокирует действие без уведомления и без записи в **Recently blocked**. Какое сообщение показывается в каждом случае и что делать, см. в разделе [Авторежим не может определить безопасность действия](https://code.claude.com/docs/ru/errors.md#auto-mode-cannot-determine-the-safety-of-an-action).

559* **Нет вердикта от сервера**: при [проверке классификатором на стороне сервера](#server-side-classifier-review) Claude Code отклоняет действие, по которому сервер не вынес вердикт, и останавливает ход после десяти подряд ответов без вердикта. См. [Сервер не вернул вердикт безопасности](https://code.claude.com/docs/ru/errors.md#the-server-returned-no-safety-verdict).560* **Нет вердикта от сервера**: при [проверке классификатором на стороне сервера](#server-side-classifier-review) Claude Code отклоняет действие, по которому сервер не вынес вердикт, и останавливает ход после десяти подряд ответов без вердикта. См. [Сервер не вернул вердикт безопасности](https://code.claude.com/docs/ru/errors.md#the-server-returned-no-safety-verdict).

560* **Переключение режима во время проверки**: если вы переключаете режим разрешений, пока проверка классификатора ещё не завершена, Claude Code отбрасывает вердикт, который новый режим не запросил бы. Вместо этого вам показывается запрос подтверждения, либо действие автоматически отклоняется в [режиме `dontAsk`](#allow-only-pre-approved-tools-with-dontask-mode).561* **Переключение режима во время проверки**: если вы переключаете режим разрешений, пока проверка классификатора ещё не завершена, Claude Code отбрасывает вердикт, который новый режим не запросил бы. Вместо этого вам показывается запрос подтверждения, либо действие автоматически отклоняется в [режиме `dontAsk`](#allow-only-pre-approved-tools-with-dontask-mode).

561 562 


738 739 

739В сеансе, запущенном с [`--restricted`](https://code.claude.com/docs/ru/cli-reference#cli-flags), который требует Claude Code v2.1.248 или позже, классификатор не может одобрить записи в защищённые пути.740В сеансе, запущенном с [`--restricted`](https://code.claude.com/docs/ru/cli-reference#cli-flags), который требует Claude Code v2.1.248 или позже, классификатор не может одобрить записи в защищённые пути.

740 741 

742Пока включён параметр [`permissions.blockWritesOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockwritesoutsideworkingdirectories), Claude Code отклоняет записи `Write`, `Edit` и `NotebookEdit` в файлы настроек в любом режиме разрешений.

743 

741В режимах, которые маршрутизируют записи в защищённые пути классификатору, запись, которую [проверка символических ссылок](https://code.claude.com/docs/ru/permissions.md#symlinks) разрешает в защищённый путь, требует вашего подтверждения вместо этого, когда путь, который запросил Claude, сам по себе не защищён.744В режимах, которые маршрутизируют записи в защищённые пути классификатору, запись, которую [проверка символических ссылок](https://code.claude.com/docs/ru/permissions.md#symlinks) разрешает в защищённый путь, требует вашего подтверждения вместо этого, когда путь, который запросил Claude, сам по себе не защищён.

742 745 

743Правила [`permissions.allow`](https://code.claude.com/docs/ru/permissions#manage-permissions) в файлах параметров не предварительно одобряют записи в защищённые пути. Проверка безопасности выполняется до того, как Claude Code оценивает правила allow из параметров, поэтому запись вроде `Edit(.claude/**)` в `~/.claude/settings.json` или `.claude/settings.json` не изменяет результат для каждого режима в таблице выше. В режимах, которые требуют подтверждения, запрос для записи в папку `.claude/` проекта или в `~/.claude/` может предложить один из этих вариантов, ограниченных сеансом:746Правила [`permissions.allow`](https://code.claude.com/docs/ru/permissions#manage-permissions) в файлах параметров не предварительно одобряют записи в защищённые пути. Проверка безопасности выполняется до того, как Claude Code оценивает правила allow из параметров, поэтому запись вроде `Edit(.claude/**)` в `~/.claude/settings.json` или `.claude/settings.json` не изменяет результат для каждого режима в таблице выше. В режимах, которые требуют подтверждения, запрос для записи в папку `.claude/` проекта или в `~/.claude/` может предложить один из этих вариантов, ограниченных сеансом:


776* `.devcontainer.json`779* `.devcontainer.json`

777* `.ripgreprc`, `pyrightconfig.json`780* `.ripgreprc`, `pyrightconfig.json`

778* `.mcp.json`, `.claude.json`781* `.mcp.json`, `.claude.json`

782* `remote-settings.json` — сохранённая копия [управляемых сервером настроек](https://code.claude.com/docs/ru/server-managed-settings.md) вашей организации, а также файлы подписи, синхронизации и согласия, которые Claude Code хранит вместе с ней, в `~/.claude` или в каталоге, на который указывает [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/ru/env-vars)

779* Файл, который вы передали в [`--settings`](https://code.claude.com/docs/ru/cli-reference#cli-flags), `--mcp-config` или `--agents` при запуске сессии783* Файл, который вы передали в [`--settings`](https://code.claude.com/docs/ru/cli-reference#cli-flags), `--mcp-config` или `--agents` при запуске сессии

780* Файл, на который указывает ваш пользовательский, проектный или локальный [файл настроек](https://code.claude.com/docs/ru/settings.md#settings-files-and-who-they-affect), когда сам файл настроек является символической ссылкой, например в репозиторий dotfiles. В режимах, которые маршрутизируют записи в защищённые пути классификатору, запись в этот файл вместо этого требует вашего подтверждения, даже если совпадает правило allow. Если собственный путь файла также является путём файла настроек, например `.claude/settings.json` в другой папке, запись направляется классификатору, как и другие записи в защищённые пути784* Файл, на который указывает ваш пользовательский, проектный или локальный [файл настроек](https://code.claude.com/docs/ru/settings.md#settings-files-and-who-they-affect), когда сам файл настроек является символической ссылкой, например в репозиторий dotfiles. В режимах, которые маршрутизируют записи в защищённые пути классификатору, запись в этот файл вместо этого требует вашего подтверждения, даже если совпадает правило allow. Если собственный путь файла также является путём файла настроек, например `.claude/settings.json` в другой папке, запись направляется классификатору, как и другие записи в защищённые пути

781 785 

permissions.md +9 −2

Details

668 668 

669Вы не можете добавить большинство [сетевых путей](https://code.claude.com/docs/ru/errors.md#working-directory-is-a-network-path), таких как общая папка UNC `\\server\share`, в качестве рабочих каталогов, потому что поиск может связаться с хостом, который она называет. На Windows вместо этого сопоставьте общую папку с буквой диска и передайте диск с помощью `--add-dir` при запуске.669Вы не можете добавить большинство [сетевых путей](https://code.claude.com/docs/ru/errors.md#working-directory-is-a-network-path), таких как общая папка UNC `\\server\share`, в качестве рабочих каталогов, потому что поиск может связаться с хостом, который она называет. На Windows вместо этого сопоставьте общую папку с буквой диска и передайте диск с помощью `--add-dir` при запуске.

670 670 

671Установите [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockreadsoutsideworkingdirectories), чтобы инструменты работы с файлами отказывали в путях, которые она ограничивает, в каждом режиме разрешений. В автоматическом режиме Claude Code предлагает включить это в первый раз, когда Claude [читает вне рабочих каталогов](https://code.claude.com/docs/ru/permission-modes.md#first-read-outside-the-working-directories).

672 

673В фоновых сеансах на macOS хост сеанса запрашивает доступ к защищённым папкам, таким как `~/Desktop`, `~/Documents` и `~/Downloads`, отдельно от вашего терминала, когда Claude нужно читать или писать файлы там; если чтение там завершается с ошибкой `Operation not permitted`, см. [как предоставить доступ к папкам для фоновых сеансов](https://code.claude.com/docs/ru/agent-view.md#background-sessions-can%E2%80%99t-read-desktop-documents-or-downloads-on-macos).671В фоновых сеансах на macOS хост сеанса запрашивает доступ к защищённым папкам, таким как `~/Desktop`, `~/Documents` и `~/Downloads`, отдельно от вашего терминала, когда Claude нужно читать или писать файлы там; если чтение там завершается с ошибкой `Operation not permitted`, см. [как предоставить доступ к папкам для фоновых сеансов](https://code.claude.com/docs/ru/agent-view.md#background-sessions-can%E2%80%99t-read-desktop-documents-or-downloads-on-macos).

674 672 

673### Блокировка чтения и записи файловыми инструментами вне рабочих каталогов

674 

675Чтобы файловые инструменты Claude отказывали в доступе к путям вне рабочих каталогов в каждом режиме разрешений, включая `bypassPermissions`, установите один или оба этих ключа в `true`:

676 

677* **[`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockreadsoutsideworkingdirectories)**: файловые инструменты отказывают в чтении там, за исключением файлов, которые нужны самому Claude Code. В авторежиме Claude Code предлагает включить этот ключ в первый раз, когда Claude [читает вне рабочих каталогов](https://code.claude.com/docs/ru/permission-modes.md#first-read-outside-the-working-directories).

678* **[`permissions.blockWritesOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockwritesoutsideworkingdirectories)**: инструменты `Write`, `Edit` и `NotebookEdit` отказывают в записи там, за исключением некоторых собственных файлов Claude Code, таких как файлы планов. Этот ключ не ограничивает shell-команды, инструменты MCP или программы, которые запускают хуки, поэтому используйте [изоляцию в песочнице](https://code.claude.com/docs/ru/sandboxing.md), чтобы ограничить, куда пишут shell-команды. Требуется Claude Code версии 2.1.314 или более поздней.

679 

680Чтобы один внешний каталог оставался доступным, пока любой из этих ключей равен `true`, [добавьте его как рабочий каталог](https://code.claude.com/docs/ru/settings-reference.md#let-one-directory-through-the-read-or-write-block).

681 

675### Переместить сеанс в другой каталог682### Переместить сеанс в другой каталог

676 683 

677Чтобы переместить сессию в другой основной рабочий каталог, вместо [добавления каталога](#working-directories) рядом с текущим, выполните `/cd <path>`. Claude Code сохраняет диалог, загружает `CLAUDE.md` нового каталога и предлагает вам [доверять рабочему пространству](#project-allow-rules-and-workspace-trust), если вы в нём раньше не работали. После этого Claude Code [находит перемещённую сессию](https://code.claude.com/docs/ru/sessions.md#where-the-session-picker-looks), когда вы запускаете `--resume` из нового каталога.684Чтобы переместить сессию в другой основной рабочий каталог, вместо [добавления каталога](#working-directories) рядом с текущим, выполните `/cd <path>`. Claude Code сохраняет диалог, загружает `CLAUDE.md` нового каталога и предлагает вам [доверять рабочему пространству](#project-allow-rules-and-workspace-trust), если вы в нём раньше не работали. После этого Claude Code [находит перемещённую сессию](https://code.claude.com/docs/ru/sessions.md#where-the-session-picker-looks), когда вы запускаете `--resume` из нового каталога.

Details

256 256 

257### Остановка фоновой работы257### Остановка фоновой работы

258 258 

259Таймеры останавливаются при перезагрузке модуля. Для долгоживущей работы внутри хука [`next.signal`](https://code.claude.com/docs/ru/plugins/mods/reference#the-hook-function) — это `AbortSignal`, который прерывается, когда событие, которое обрабатывает ваш хук, отменяется, например когда пользователь прерывает, поэтому передавайте его всему, что работает долго.259Таймеры останавливаются при перезагрузке модуля. Для долгоживущей работы внутри хука [`next.signal`](https://code.claude.com/docs/ru/plugins/mods/reference#the-hook-function) — это `AbortSignal`, который прерывается, когда событие, которое обрабатывает ваш хук, отменяется, например когда пользователь прерывает работу. Передавайте его всему, что работает долго.

260 260 

261### Вызовы и фоновая работа после того, как пользователь прерывает ход261### Вызовы и фоновая работа после того, как пользователь прерывает ход

262 262 

Details

738})738})

739```739```

740 740 

741Claude Code теперь запускает ваш хук `ui.render` один раз в секунду. Таймер останавливается при перезагрузке модуля, и новая копия модуля запускает свой собственный.741Теперь Claude Code запускает ваш хук `ui.render` раз в секунду. Таймер останавливается после перезагрузки модуля, и новый экземпляр модуля запускает собственный таймер.

742 742 

743### Как часто сайт может перерисовываться743### Как часто сайт может перерисовываться

744 744 

plugins/org.md +1 −1

Details

339Чтобы запустить стабильные и ранние каналы доступа, разместите два marketplace, которые указывают на разные refs одних и тех же плагинов. Затем дайте каждой группе пользователей свой собственный marketplace через отдельные управляемые параметры конечной точки или политику шлюза. Управляемые параметры сервера из консоли администратора [применяются к каждому пользователю в вашей организации](https://code.claude.com/docs/ru/server-managed-settings.md#current-limitations), поэтому они не могут назначать разные параметры разным группам.339Чтобы запустить стабильные и ранние каналы доступа, разместите два marketplace, которые указывают на разные refs одних и тех же плагинов. Затем дайте каждой группе пользователей свой собственный marketplace через отдельные управляемые параметры конечной точки или политику шлюза. Управляемые параметры сервера из консоли администратора [применяются к каждому пользователю в вашей организации](https://code.claude.com/docs/ru/server-managed-settings.md#current-limitations), поэтому они не могут назначать разные параметры разным группам.

340 340 

341* Развертывайте отдельные [управляемые параметры конечной точки](https://code.claude.com/docs/ru/managed-settings.md#delivery-mechanisms), такие как файл управляемых параметров или профиль MDM, на устройства каждой группы. Чтобы проверить, применяется ли файл или профиль для каждой группы на устройстве, которое также имеет источник на уровне организации, см. [Как Claude Code объединяет управляемые источники](https://code.claude.com/docs/ru/managed-settings.md#precedence-within-the-managed-tier).341* Развертывайте отдельные [управляемые параметры конечной точки](https://code.claude.com/docs/ru/managed-settings.md#delivery-mechanisms), такие как файл управляемых параметров или профиль MDM, на устройства каждой группы. Чтобы проверить, применяется ли файл или профиль для каждой группы на устройстве, которое также имеет источник на уровне организации, см. [Как Claude Code объединяет управляемые источники](https://code.claude.com/docs/ru/managed-settings.md#precedence-within-the-managed-tier).

342* Определите одну [политику шлюза Claude apps](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#managed) для каждой группы. Шлюз применяет первую политику, чье правило совпадения подходит пользователю, поэтому упорядочите политики так, чтобы каждый пользователь достигал политики своей группы. Карта `extraKnownMarketplaces` этой политики не объединяется с картой любой другой политики, поэтому перечислите каждый marketplace, который группе нужен в ней, а не только ее marketplace канала.342* Определите по одной [политике шлюза Claude apps](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#managed) для каждой группы. По умолчанию шлюз применяет первую политику, правило сопоставления которой подходит пользователю, поэтому упорядочите политики так, чтобы каждый пользователь попадал в политику своей группы. Карта `extraKnownMarketplaces` этой политики не объединяется с картами других политик, поэтому перечислите в ней все маркетплейсы, которые нужны группе, а не только маркетплейс ее канала.

343 343 

344С любым механизмом стабильная группа получает эту конфигурацию:344С любым механизмом стабильная группа получает эту конфигурацию:

345 345 

Details

51>51>

52> До тех пор, пока вы не примете одноразовое подтверждение Remote Control, `claude remote-control` объясняет, что он делает, и спрашивает `Enable Remote Control? (y/n)` перед запуском сервера. Ответьте `y`, чтобы принять и запустить сервер. Если вы откажетесь, Claude Code завершит работу без запуска сервера и снова спросит при следующем запуске команды.52> До тех пор, пока вы не примете одноразовое подтверждение Remote Control, `claude remote-control` объясняет, что он делает, и спрашивает `Enable Remote Control? (y/n)` перед запуском сервера. Ответьте `y`, чтобы принять и запустить сервер. Если вы откажетесь, Claude Code завершит работу без запуска сервера и снова спросит при следующем запуске команды.

53>53>

54> Процесс продолжает работать в вашем терминале в режиме сервера, ожидая удаленных подключений. Он отображает URL сеанса, который вы можете использовать для [подключения с другого устройства](#connect-from-another-device), и вы можете нажать пробел, чтобы показать QR-код для быстрого доступа с телефона. Пока активен удаленный сеанс, терминал показывает статус подключения и активность инструментов.54> Процесс продолжает работать в вашем терминале в режиме сервера, ожидая удаленных подключений. Он отображает URL, который вы можете использовать для [подключения с другого устройства](#connect-from-another-device), и вы можете нажать пробел, чтобы показать QR-код для быстрого доступа с телефона. Пока активна удаленная сессия, терминал показывает статус подключения и активность инструментов.

55>55>

56> Передавайте любые из этих флагов после `remote-control`:56> Передавайте любые из этих флагов после `remote-control`:

57>57>


151 151 

152После активации сеанса Remote Control у вас есть несколько способов подключиться с другого устройства:152После активации сеанса Remote Control у вас есть несколько способов подключиться с другого устройства:

153 153 

154* **Откройте URL сеанса** в любом браузере, чтобы перейти непосредственно к сеансу на [claude.ai/code](https://claude.ai/code).154* **Откройте URL, который отображает Claude Code**, в любом браузере, чтобы перейти на [claude.ai/code](https://claude.ai/code).

155* **Отсканируйте QR-код**, показанный рядом с URL сеанса, чтобы открыть его непосредственно в приложении Claude. С `claude remote-control` нажмите пробел, чтобы переключить отображение QR-кода.155* **Отсканируйте QR-код**, показанный рядом с URL, чтобы открыть его в приложении Claude. С `claude remote-control` нажмите пробел, чтобы переключить отображение QR-кода.

156* **Откройте [claude.ai/code](https://claude.ai/code) или приложение Claude** и найдите сеанс по имени в списке сеансов. В мобильном приложении Claude нажмите **Code** в навигации, чтобы достичь списка сеансов. Сеансы Remote Control показывают значок компьютера с зеленой точкой статуса при подключении.156* **Откройте [claude.ai/code](https://claude.ai/code) или приложение Claude** и найдите сеанс по имени в списке сеансов. В мобильном приложении Claude нажмите **Code** в навигации, чтобы достичь списка сеансов. Сеансы Remote Control показывают значок компьютера с зеленой точкой статуса при подключении.

157 157 

158Когда вы подключаетесь, устройство показывает любых подагентов и рабочие процессы, которые сеанс уже запустил в фоновом режиме. Остановите один из них с устройства, и Claude Code остановит эту задачу на вашей машине.158Когда вы подключаетесь, устройство показывает любых подагентов и рабочие процессы, которые сеанс уже запустил в фоновом режиме. Остановите один из них с устройства, и Claude Code остановит эту задачу на вашей машине.

routines.md +1 −1

Details

105 105 

106**5. Выберите окружение**106**5. Выберите окружение**

107 107 

108После выбора репозитория под ним появляется **Cloud environment**. Выберите [облачное окружение](https://code.claude.com/docs/ru/cloud-environments.md) для задачи. Окружения определяют, к чему имеет доступ облачная сессия:108После выбора репозитория под ним появляется **Cloud environment**. Выберите [облачное окружение](https://code.claude.com/docs/ru/cloud-environments.md) для задачи. Если окружение уже выбрано, можно оставить его или выбрать другое. Окружения определяют, к чему имеет доступ облачная сессия:

109 109 

110* **Network access**: задайте уровень доступа в интернет во время каждого запуска110* **Network access**: задайте уровень доступа в интернет во время каждого запуска

111* **Environment variables**: укажите значения, которые Claude может использовать во время каждого запуска. Они [видны всем, кто использует окружение](https://code.claude.com/docs/ru/cloud-environments.md#what-carries-over-from-your-setup), поэтому в окружении, размещённом Anthropic, храните ключи для API, которые Claude вызывает во время запуска, в виде [сетевых секретов](https://code.claude.com/docs/ru/cloud-environments.md#add-network-secrets). В том же разделе перечислены запросы, которые никогда не получают секрет111* **Environment variables**: укажите значения, которые Claude может использовать во время каждого запуска. Они [видны всем, кто использует окружение](https://code.claude.com/docs/ru/cloud-environments.md#what-carries-over-from-your-setup), поэтому в окружении, размещённом Anthropic, храните ключи для API, которые Claude вызывает во время запуска, в виде [сетевых секретов](https://code.claude.com/docs/ru/cloud-environments.md#add-network-secrets). В том же разделе перечислены запросы, которые никогда не получают секрет

Details

157* **Ключи собственного входа**: [`forceLoginOrgUUID`](https://code.claude.com/docs/ru/settings-reference#forceloginorguuid) и значения `"claudeai"` и `"console"` для [`forceLoginMethod`](https://code.claude.com/docs/ru/settings-reference#forceloginmethod). Если вы также развёртываете политику MDM или файл управляемых настроек, задавайте их и там, и в управляемых сервером настройках на claude.ai, пока на всех клиентах не будет v2.1.299 или новее. О том, где задавать эти ключи после этого и значение какого источника применяется, см. в разделе [Какой управляемый источник предоставляет ключи входа](https://code.claude.com/docs/ru/managed-settings.md#which-managed-source-supplies-login-keys).157* **Ключи собственного входа**: [`forceLoginOrgUUID`](https://code.claude.com/docs/ru/settings-reference#forceloginorguuid) и значения `"claudeai"` и `"console"` для [`forceLoginMethod`](https://code.claude.com/docs/ru/settings-reference#forceloginmethod). Если вы также развёртываете политику MDM или файл управляемых настроек, задавайте их и там, и в управляемых сервером настройках на claude.ai, пока на всех клиентах не будет v2.1.299 или новее. О том, где задавать эти ключи после этого и значение какого источника применяется, см. в разделе [Какой управляемый источник предоставляет ключи входа](https://code.claude.com/docs/ru/managed-settings.md#which-managed-source-supplies-login-keys).

158* **Ключи входа в шлюз**: Claude Code никогда не читает [`forceLoginGatewayUrl`](https://code.claude.com/docs/ru/settings-reference#forcelogingatewayurl), [`gatewayInternalNetworks`](https://code.claude.com/docs/ru/settings-reference#gatewayinternalnetworks) или значение `"gateway"` [`forceLoginMethod`](https://code.claude.com/docs/ru/settings-reference#forceloginmethod) из управляемых сервером параметров, поэтому значение там ни не применяется, ни не скрывает значение, установленное в политике MDM или файле управляемых параметров. Запись [`managedSourcesBehavior`](https://code.claude.com/docs/ru/settings-reference#managedsourcesbehavior) указывает, какой источник администратора на машине их предоставляет.158* **Ключи входа в шлюз**: Claude Code никогда не читает [`forceLoginGatewayUrl`](https://code.claude.com/docs/ru/settings-reference#forcelogingatewayurl), [`gatewayInternalNetworks`](https://code.claude.com/docs/ru/settings-reference#gatewayinternalnetworks) или значение `"gateway"` [`forceLoginMethod`](https://code.claude.com/docs/ru/settings-reference#forceloginmethod) из управляемых сервером параметров, поэтому значение там ни не применяется, ни не скрывает значение, установленное в политике MDM или файле управляемых параметров. Запись [`managedSourcesBehavior`](https://code.claude.com/docs/ru/settings-reference#managedsourcesbehavior) указывает, какой источник администратора на машине их предоставляет.

159 159 

160#### Когда `apiKeyHelper` машины не действует

161 

162Когда ваши управляемые сервером настройки являются выбранным источником, `apiKeyHelper` в файле управляемых настроек или политике MDM машины не действует. В этом случае Claude Code [отклоняет промпты](https://code.claude.com/docs/ru/errors.md#claude-code-didnt-send-your-claude-ai-login) в сессии, которая использовала бы сохранённый вход claude.ai, если выполняются оба условия:

163 

164* Файл или политика включает облачного провайдера, либо любой источник задаёт адрес API, отличный от адреса Anthropic

165* Управляемые сервером настройки не задают помощника и не указывают адрес API Anthropic

166 

167Чтобы снять отказ, сохраните действие помощника и его адреса API, укажите адрес API Anthropic в управляемых сервером настройках или удалите помощника из политики машины. Для отказа требуется Claude Code v2.1.314 или новее.

168 

160### Поведение выборки и кэширования169### Поведение выборки и кэширования

161 170 

162Claude Code выполняет выборку параметров с серверов Anthropic при запуске и опрашивает обновления каждый час во время активных сеансов.171Claude Code выполняет выборку параметров с серверов Anthropic при запуске и опрашивает обновления каждый час во время активных сеансов.

settings.md +3 −0

Details

184* [`model`](https://code.claude.com/docs/ru/settings-reference#model): используйте [`/model`](https://code.claude.com/docs/ru/model-config#setting-your-model) для переключения в середине сеанса. Каждая модель имеет свой собственный кэш подсказок, поэтому первый запрос после переключения повторно читает весь разговор без кэша; см. [Переключение моделей](https://code.claude.com/docs/ru/prompt-caching.md#switching-models)184* [`model`](https://code.claude.com/docs/ru/settings-reference#model): используйте [`/model`](https://code.claude.com/docs/ru/model-config#setting-your-model) для переключения в середине сеанса. Каждая модель имеет свой собственный кэш подсказок, поэтому первый запрос после переключения повторно читает весь разговор без кэша; см. [Переключение моделей](https://code.claude.com/docs/ru/prompt-caching.md#switching-models)

185* [`effortLevel`](https://code.claude.com/docs/ru/settings-reference#effortlevel) и [`modelSettings`](https://code.claude.com/docs/ru/settings-reference#modelsettings): используйте [`/effort`](https://code.claude.com/docs/ru/model-config#adjust-effort-level) для изменения усилий в середине сеанса185* [`effortLevel`](https://code.claude.com/docs/ru/settings-reference#effortlevel) и [`modelSettings`](https://code.claude.com/docs/ru/settings-reference#modelsettings): используйте [`/effort`](https://code.claude.com/docs/ru/model-config#adjust-effort-level) для изменения усилий в середине сеанса

186 186 

187Если удалить [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockreadsoutsideworkingdirectories) посреди сессии, файловые инструменты сохранят блокировку в работающей сессии. Чтобы снять её, удалите ключ из всех файлов настроек, где он задан, а затем перезапустите каждую работающую сессию.

188 

187### Подтвердите, что загружено189### Подтвердите, что загружено

188 190 

189Запустите `/status` внутри Claude Code, чтобы увидеть, какие источники параметров активны. Вкладка **Status** включает строку `Setting sources`, которая перечисляет каждый файл параметров, который Claude Code загрузил для текущего сеанса, такой как `User settings` или `Project local settings`. Когда [управляемые параметры](https://code.claude.com/docs/ru/admin-setup.md#decide-how-settings-reach-devices) действуют, запись управляемых параметров показывает в скобках, как они достигли вашей машины.191Запустите `/status` внутри Claude Code, чтобы увидеть, какие источники параметров активны. Вкладка **Status** включает строку `Setting sources`, которая перечисляет каждый файл параметров, который Claude Code загрузил для текущего сеанса, такой как `User settings` или `Project local settings`. Когда [управляемые параметры](https://code.claude.com/docs/ru/admin-setup.md#decide-how-settings-reach-devices) действуют, запись управляемых параметров показывает в скобках, как они достигли вашей машины.


307| [`enableArtifact`](https://code.claude.com/docs/ru/settings-reference#enableartifact) | `false` из любой области действия и `disableArtifact: true` из любой области действия | Соблюдается даже когда управляемый источник устанавливает `true`; ничто не включает [инструмент Artifact](https://code.claude.com/docs/ru/artifacts.md#disable-artifacts) обратно. Требует Claude Code v2.1.242 или позже |309| [`enableArtifact`](https://code.claude.com/docs/ru/settings-reference#enableartifact) | `false` из любой области действия и `disableArtifact: true` из любой области действия | Соблюдается даже когда управляемый источник устанавливает `true`; ничто не включает [инструмент Artifact](https://code.claude.com/docs/ru/artifacts.md#disable-artifacts) обратно. Требует Claude Code v2.1.242 или позже |

308| [`isolatePeerMachines`](https://code.claude.com/docs/ru/settings-reference#isolatepeermachines) | `true` из любой области действия | Соблюдается даже когда управляемый источник устанавливает `false` |310| [`isolatePeerMachines`](https://code.claude.com/docs/ru/settings-reference#isolatepeermachines) | `true` из любой области действия | Соблюдается даже когда управляемый источник устанавливает `false` |

309| [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockreadsoutsideworkingdirectories) | `true` из любой области действия | Соблюдается даже когда управляемый источник устанавливает `false`. Требует Claude Code v2.1.257 или позже |311| [`permissions.blockReadsOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockreadsoutsideworkingdirectories) | `true` из любой области действия | Соблюдается даже когда управляемый источник устанавливает `false`. Требует Claude Code v2.1.257 или позже |

312| [`permissions.blockWritesOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockwritesoutsideworkingdirectories) | `true` из любой области действия | Соблюдается даже когда управляемый источник устанавливает `false`. Требует Claude Code v2.1.314 или позже |

310| [`autoMode.classifyAllShell`](https://code.claude.com/docs/ru/settings-reference#automode-classifyallshell) | `true` из `~/.claude/settings.json` или `--settings` | Соблюдается даже когда управляемый источник устанавливает `false` |313| [`autoMode.classifyAllShell`](https://code.claude.com/docs/ru/settings-reference#automode-classifyallshell) | `true` из `~/.claude/settings.json` или `--settings` | Соблюдается даже когда управляемый источник устанавливает `false` |

311| [`remoteControlAtStartup`](https://code.claude.com/docs/ru/settings-reference#remotecontrolatstartup) | `false` из `.claude/settings.json` или `.claude/settings.local.json` | Соблюдается даже когда управляемый источник устанавливает `true`; проектный или локальный `true` игнорируется |314| [`remoteControlAtStartup`](https://code.claude.com/docs/ru/settings-reference#remotecontrolatstartup) | `false` из `.claude/settings.json` или `.claude/settings.local.json` | Соблюдается даже когда управляемый источник устанавливает `true`; проектный или локальный `true` игнорируется |

312| [`crossSessionInbound`](https://code.claude.com/docs/ru/settings-reference#crosssessioninbound) | Более строгое значение из `.claude/settings.json` или `.claude/settings.local.json`, на лестнице `accept` \< `hold` \< `refuse` | Соблюдается вместо управляемых, `--settings` и пользовательских значений; проектное или локальное значение, которое не является более строгим, игнорируется |315| [`crossSessionInbound`](https://code.claude.com/docs/ru/settings-reference#crosssessioninbound) | Более строгое значение из `.claude/settings.json` или `.claude/settings.local.json`, на лестнице `accept` \< `hold` \< `refuse` | Соблюдается вместо управляемых, `--settings` и пользовательских значений; проектное или локальное значение, которое не является более строгим, игнорируется |

Details

144| [`permissions.allow`](#permissions-allow) | Одобряйте перечисленные [использования инструментов](https://code.claude.com/docs/ru/permissions.md#permission-rule-syntax) без запроса подтверждения | Permission settings | Any file |144| [`permissions.allow`](#permissions-allow) | Одобряйте перечисленные [использования инструментов](https://code.claude.com/docs/ru/permissions.md#permission-rule-syntax) без запроса подтверждения | Permission settings | Any file |

145| [`permissions.ask`](#permissions-ask) | Всегда запрашивайте подтверждение перед перечисленными [использованиями инструментов](https://code.claude.com/docs/ru/permissions.md#permission-rule-syntax) | Permission settings | Any file |145| [`permissions.ask`](#permissions-ask) | Всегда запрашивайте подтверждение перед перечисленными [использованиями инструментов](https://code.claude.com/docs/ru/permissions.md#permission-rule-syntax) | Permission settings | Any file |

146| [`permissions.blockReadsOutsideWorkingDirectories`](#permissions-blockreadsoutsideworkingdirectories) | Заставьте файловые инструменты отказываться от чтения вне [рабочих каталогов](https://code.claude.com/docs/ru/permissions.md#working-directories) в каждом режиме разрешений | Permission settings | Any file |146| [`permissions.blockReadsOutsideWorkingDirectories`](#permissions-blockreadsoutsideworkingdirectories) | Заставьте файловые инструменты отказываться от чтения вне [рабочих каталогов](https://code.claude.com/docs/ru/permissions.md#working-directories) в каждом режиме разрешений | Permission settings | Any file |

147| [`permissions.blockWritesOutsideWorkingDirectories`](#permissions-blockwritesoutsideworkingdirectories) | Заставьте инструменты `Write`, `Edit` и `NotebookEdit` отказываться от путей вне [рабочих каталогов](https://code.claude.com/docs/ru/permissions.md#working-directories) в каждом режиме разрешений, за исключением [некоторых собственных файлов Claude Code](#what-the-write-block-refuses-and-what-stays-writable) | Permission settings | Any file |

147| [`permissions.defaultMode`](#permissions-defaultmode) | Установите [режим разрешений](https://code.claude.com/docs/ru/permission-modes.md#which-mode-a-session-starts-in), в котором начинаются новые сессии | Permission settings | Any file |148| [`permissions.defaultMode`](#permissions-defaultmode) | Установите [режим разрешений](https://code.claude.com/docs/ru/permission-modes.md#which-mode-a-session-starts-in), в котором начинаются новые сессии | Permission settings | Any file |

148| [`permissions.deny`](#permissions-deny) | Блокируйте перечисленные [использования инструментов](https://code.claude.com/docs/ru/permissions.md#permission-rule-syntax), включая чтение файлов, содержащих секреты | Permission settings | Any file |149| [`permissions.deny`](#permissions-deny) | Блокируйте перечисленные [использования инструментов](https://code.claude.com/docs/ru/permissions.md#permission-rule-syntax), включая чтение файлов, содержащих секреты | Permission settings | Any file |

149| [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) | Запретите кому-либо входить в [режим bypassPermissions](https://code.claude.com/docs/ru/permission-modes.md#skip-all-checks-with-bypasspermissions-mode) | Permission settings | Any file |150| [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) | Запретите кому-либо входить в [режим bypassPermissions](https://code.claude.com/docs/ru/permission-modes.md#skip-all-checks-with-bypasspermissions-mode) | Permission settings | Any file |


901Управляйте тем, какие инструменты Claude может использовать без запроса, какие всегда требуют подтверждения, а какие заблокированы, и задайте [режим разрешений](https://code.claude.com/docs/ru/permission-modes.md), в котором начинается сессия. Все ключи `permissions.*` ниже вложены в этот объект.902Управляйте тем, какие инструменты Claude может использовать без запроса, какие всегда требуют подтверждения, а какие заблокированы, и задайте [режим разрешений](https://code.claude.com/docs/ru/permission-modes.md), в котором начинается сессия. Все ключи `permissions.*` ниже вложены в этот объект.

902 903 

903* **Область действия**: [`Any file`](#scopes)904* **Область действия**: [`Any file`](#scopes)

904* **Тип**: объект с `allow`, `ask`, `deny`, `additionalDirectories`, `blockReadsOutsideWorkingDirectories`, `defaultMode`, `disableBypassPermissionsMode` и `disableAutoMode`905* **Тип**: объект с `allow`, `ask`, `deny`, `additionalDirectories`, `blockReadsOutsideWorkingDirectories`, `blockWritesOutsideWorkingDirectories`, `defaultMode`, `disableBypassPermissionsMode` и `disableAutoMode`

905* **По умолчанию**: не установлено906* **По умолчанию**: не установлено

906 907 

907Этот пример разрешает команды `npm run` без запроса, запрашивает подтверждение перед `git push`, блокирует чтение `.env` и запускает сессии в `acceptEdits`:908Этот пример разрешает команды `npm run` без запроса, запрашивает подтверждение перед `git push`, блокирует чтение `.env` и запускает сессии в `acceptEdits`:


1062}1063}

1063```1064```

1064 1065 

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

1067 

1065Каталоги, которые вы добавляете с помощью `--add-dir`, `/add-dir` или `additionalDirectories` в пользовательских или управляемых настройках, считаются рабочими каталогами для блокировки. Каталоги, добавленные только в настройках репозитория, не считаются: те, что указаны в `.claude/settings.json`, и те, что указаны в `.claude/settings.local.json`, если только git не сообщает, что этот файл не отслеживается. В каталоге, который не является git-репозиторием, или когда git отслеживает этот файл, Claude Code рассматривает `.claude/settings.local.json` как настройки репозитория, поэтому каталоги, которые должны оставаться доступными для чтения, указывайте в пользовательских настройках.1068Каталоги, которые вы добавляете с помощью `--add-dir`, `/add-dir` или `additionalDirectories` в пользовательских или управляемых настройках, считаются рабочими каталогами для блокировки. Каталоги, добавленные только в настройках репозитория, не считаются: те, что указаны в `.claude/settings.json`, и те, что указаны в `.claude/settings.local.json`, если только git не сообщает, что этот файл не отслеживается. В каталоге, который не является git-репозиторием, или когда git отслеживает этот файл, Claude Code рассматривает `.claude/settings.local.json` как настройки репозитория, поэтому каталоги, которые должны оставаться доступными для чтения, указывайте в пользовательских настройках.

1066 1069 

1067Когда [`autoMemoryDirectory`](#automemorydirectory) задан в `.claude/settings.json` проекта или в `.claude/settings.local.json`, [рассматриваемом как предоставленный репозиторием](https://code.claude.com/docs/ru/permissions.md#when-your-local-settings-file-needs-trust), Claude Code не загружает [автоматическую память](https://code.claude.com/docs/ru/memory.md#storage-location) из этого каталога и ничего в него не сохраняет.1070Когда [`autoMemoryDirectory`](#automemorydirectory) задан в `.claude/settings.json` проекта или в `.claude/settings.local.json`, [рассматриваемом как предоставленный репозиторием](https://code.claude.com/docs/ru/permissions.md#when-your-local-settings-file-needs-trust), Claude Code не загружает [автоматическую память](https://code.claude.com/docs/ru/memory.md#storage-location) из этого каталога и ничего в него не сохраняет.

1068 1071 

1069Чтобы снять блокировку, удалите ключ из всех файлов настроек, которые его устанавливают, затем начните новую сессию.

1070 

1071#### Команды в песочнице при действующей блокировке1072#### Команды в песочнице при действующей блокировке

1072 1073 

1073Когда [изоляция в песочнице](https://code.claude.com/docs/ru/sandboxing.md) включена, блокировка также распространяется на команды в песочнице. Claude Code запрещает им чтение вашего домашнего каталога и других корневых каталогов, содержащих пользовательские файлы: `/Users`, `/home`, `/root`, `/Volumes`, `/mnt`, `/media`, `/run/media` и `/srv`. Затем он снова открывает рабочие каталоги, [worktree](https://code.claude.com/docs/ru/worktrees.md), которые Claude Code создаёт в сессии, временный каталог сессии и те части `~/.claude`, которые нужны командам, например скиллы и плагины. Пока блокировка действует, записи `allowRead` и `allowWrite` из настроек репозитория не учитываются.1074Когда [изоляция в песочнице](https://code.claude.com/docs/ru/sandboxing.md) включена, блокировка также распространяется на команды в песочнице. Claude Code запрещает им чтение вашего домашнего каталога и других корневых каталогов, содержащих пользовательские файлы: `/Users`, `/home`, `/root`, `/Volumes`, `/mnt`, `/media`, `/run/media` и `/srv`. Затем он снова открывает рабочие каталоги, [worktree](https://code.claude.com/docs/ru/worktrees.md), которые Claude Code создаёт в сессии, временный каталог сессии и те части `~/.claude`, которые нужны командам, например скиллы и плагины. Пока блокировка действует, записи `allowRead` и `allowWrite` из настроек репозитория не учитываются.


1092 1093 

1093Если снова открытый файл содержит секрет, например токен `http.extraHeader`, добавьте его путь в [`sandbox.filesystem.denyRead`](#sandbox-filesystem-denyread). Запись `denyRead`, охватывающая файл, всегда имеет приоритет над этим повторным открытием.1094Если снова открытый файл содержит секрет, например токен `http.extraHeader`, добавьте его путь в [`sandbox.filesystem.denyRead`](#sandbox-filesystem-denyread). Запись `denyRead`, охватывающая файл, всегда имеет приоритет над этим повторным открытием.

1094 1095 

1096### `permissions.blockWritesOutsideWorkingDirectories`

1097 

1098Заставьте инструменты `Write`, `Edit` и `NotebookEdit` отказывать в работе с путями за пределами ваших [рабочих каталогов](https://code.claude.com/docs/ru/permissions.md#working-directories) в любом режиме разрешений, включая `bypassPermissions`, за исключением [некоторых собственных файлов Claude Code](#what-the-write-block-refuses-and-what-stays-writable). Ключ не ограничивает shell-команды, MCP-инструменты или программы, которые запускают хуки. Чтобы ограничить, куда пишут shell-команды, включите [изоляцию в песочнице](https://code.claude.com/docs/ru/sandboxing.md). Требуется Claude Code v2.1.314 или новее.

1099 

1100Когда ключ включён, Claude Code также удаляет инструменты `EnterWorktree` и `ExitWorktree` или отклоняет их вызовы. Чтобы продолжить работу в worktree, следуйте инструкциям из раздела [У Claude нет инструмента `EnterWorktree`](https://code.claude.com/docs/ru/worktrees#claude-has-no-enterworktree-tool).

1101 

1102* **Область действия**: [`Any file`](#scopes). Значение `true` в любом файле, который загружает сессия, применяется, поэтому репозиторий может включить блокировку для себя, но не может снять вашу. В [облачной сессии](https://code.claude.com/docs/ru/claude-code-on-the-web.md) Claude Code может не применять этот ключ, поскольку файловые инструменты работают в контейнере, который сам является границей.

1103* **Тип**: Boolean

1104 * `true`: включает блокировку

1105 * `false`: то же, что и отсутствие значения; блокировка всё равно применяется, если другой файл устанавливает `true`

1106* **По умолчанию**: не установлено, поэтому запись за пределами рабочих каталогов подчиняется вашему [режиму разрешений](https://code.claude.com/docs/ru/permission-modes.md). Блокировка также включена, пока Claude Code не может прочитать объект `permissions` в ваших [управляемых настройках](https://code.claude.com/docs/ru/managed-settings.md#keys-that-fail-closed).

1107 

1108```json settings.json theme={null}

1109{

1110 "permissions": {

1111 "blockWritesOutsideWorkingDirectories": true

1112 }

1113}

1114```

1115 

1116Чтобы проверить блокировку, попросите Claude с помощью инструмента Write создать файл за пределами ваших рабочих каталогов, например `~/block-test.txt`, если ваш домашний каталог не входит в их число. Claude Code отклонит вызов, а в сообщении об отказе будет сказано, что [настройка блокирует запись за пределами рабочих каталогов](https://code.claude.com/docs/ru/errors.md#setting-blocks-writes-outside-the-working-directories).

1117 

1118Чтобы снять блокировку, удалите ключ из всех файлов настроек, которые его устанавливают, затем перезапустите Claude Code.

1119 

1120#### Что запрещает блокировка записи и что остаётся доступным для записи

1121 

1122Некоторые собственные файлы Claude Code остаются доступными для записи, например файлы планов, [scratchpad](https://code.claude.com/docs/ru/claude-directory.md#session-scratchpad-directory), каталог `tmp` [фоновой сессии](https://code.claude.com/docs/ru/agent-view.md) и файлы `.md` в [автоматической памяти](https://code.claude.com/docs/ru/memory.md#storage-location) этого проекта.

1123 

1124Помимо ваших собственных файлов за пределами рабочих каталогов, блокировка запрещает запись в:

1125 

1126* **Файлы настроек Claude Code**: Claude Code [отклоняет такую запись](https://code.claude.com/docs/ru/errors.md#writes-to-claude-code-settings-files-are-blocked) и внутри рабочих каталогов, поскольку файл настроек может снять блокировку. Редактируйте файлы настроек самостоятельно.

1127* **Каталог, который добавляют только настройки репозитория**: каталог, который [`additionalDirectories`](#permissions-additionaldirectories) перечисляет только в `.claude/settings.json` или в `.claude/settings.local.json`, если только git не сообщает, что этот файл не отслеживается

1128* **Worktree субагента**: редактирование файлов субагентом с [`isolation: worktree`](https://code.claude.com/docs/ru/worktrees#isolate-subagents-with-worktrees) отклоняется, когда его worktree находится за пределами рабочих каталогов

1129* **Автоматическую память в каталоге, выбранном репозиторием**: каталог, который [`autoMemoryDirectory`](#automemorydirectory) указывает в настройках репозитория

1130 

1131Запись в файлы настроек остаётся запрещённой, что бы вы ни добавили. Чтобы разрешить запись в любом из остальных случаев, [добавьте рабочий каталог](#let-one-directory-through-the-read-or-write-block). `/add-dir` требует существующего каталога, поэтому для worktree субагентов укажите каталог `.claude/worktrees` в корне репозитория.

1132 

1133#### Пропуск одного каталога через блокировку чтения или записи

1134 

1135Чтобы Claude мог обращаться к одному каталогу за пределами проекта, пока `blockReadsOutsideWorkingDirectories` или `blockWritesOutsideWorkingDirectories` имеет значение `true`, добавьте его как рабочий каталог. Выполните `/add-dir <directory>` в сессии, передайте `--add-dir <directory>` при запуске Claude Code или укажите его в `additionalDirectories` в пользовательских или управляемых настройках. Никакое [разрешающее правило](https://code.claude.com/docs/ru/permissions.md#read-and-edit) не пропускает файловые инструменты Claude через любую из этих блокировок.

1136 

1095### `permissions.defaultMode`1137### `permissions.defaultMode`

1096 1138 

1097Задайте [режим разрешений](https://code.claude.com/docs/ru/permission-modes.md), в котором начинаются новые сессии. Если оставить ключ не установленным, сессии начинаются во [встроенном режиме по умолчанию](https://code.claude.com/docs/ru/permission-modes.md#which-mode-a-session-starts-in) для вашего интерфейса.1139Задайте [режим разрешений](https://code.claude.com/docs/ru/permission-modes.md), в котором начинаются новые сессии. Если оставить ключ не установленным, сессии начинаются во [встроенном режиме по умолчанию](https://code.claude.com/docs/ru/permission-modes.md#which-mode-a-session-starts-in) для вашего интерфейса.


2427* **Сессия**: вы находитесь в интерактивной сессии терминала, в панели чата расширения VS Code или на вкладке Code настольного приложения, если сессия выполняется на вашем компьютере или через SSH2469* **Сессия**: вы находитесь в интерактивной сессии терминала, в панели чата расширения VS Code или на вкладке Code настольного приложения, если сессия выполняется на вашем компьютере или через SSH

2428* **Автосжатие**: [`autoCompactEnabled`](#autocompactenabled) включён2470* **Автосжатие**: [`autoCompactEnabled`](#autocompactenabled) включён

2429* **Кэш промптов**: диалог использует [часовой TTL кэша промптов](https://code.claude.com/docs/ru/prompt-caching.md#which-ttl-each-request-gets)2471* **Кэш промптов**: диалог использует [часовой TTL кэша промптов](https://code.claude.com/docs/ru/prompt-caching.md#which-ttl-each-request-gets)

2430* **Флаги функций**: Claude Code может [получать флаги функций от Anthropic](https://code.claude.com/docs/ru/env-vars.md#features-that-need-feature-flag-fetching)

2431* **Размер**: контекст диалога достиг порога токенов, который вы можете [изменить](#change-the-idle-compaction-threshold) со значения по умолчанию 200 0002472* **Размер**: контекст диалога достиг порога токенов, который вы можете [изменить](#change-the-idle-compaction-threshold) со значения по умолчанию 200 000

2432* **Время простоя**: с момента последнего запроса прошло около часа, и до этого момента ваш компьютер не переходит в спящий режим2473* **Время простоя**: с момента последнего запроса прошло около часа, и до этого момента ваш компьютер не переходит в спящий режим

2433 2474 


2449Чтобы отключить или включить сжатие в режиме простоя прямо в сессии терминала, запустите `/config` и измените строку **Idle compaction**. Ваш выбор сохраняется в пользовательских настройках и применяется сразу. Эта строка требует Claude Code v2.1.302 или позже. Если вы используете одну из этих версий, а `/config` не показывает эту строку, проверьте следующие причины:2490Чтобы отключить или включить сжатие в режиме простоя прямо в сессии терминала, запустите `/config` и измените строку **Idle compaction**. Ваш выбор сохраняется в пользовательских настройках и применяется сразу. Эта строка требует Claude Code v2.1.302 или позже. Если вы используете одну из этих версий, а `/config` не показывает эту строку, проверьте следующие причины:

2450 2491 

2451* **Ключ задан в другом источнике настроек**: значение в управляемых настройках, флаге `--settings` или файле настроек проекта или локальных настроек переопределяет ваши пользовательские настройки. Измените ключ в этом источнике2492* **Ключ задан в другом источнике настроек**: значение в управляемых настройках, флаге `--settings` или файле настроек проекта или локальных настроек переопределяет ваши пользовательские настройки. Измените ключ в этом источнике

2452* **Флаги функций недоступны**: там, где Claude Code не может [получать флаги функций от Anthropic](https://code.claude.com/docs/ru/env-vars.md#features-that-need-feature-flag-fetching), сжатие в режиме простоя не выполняется, поэтому отключать нечего2493* **Флаги функций недоступны в версии до v2.1.314**: там, где Claude Code не может [получать флаги функций от Anthropic](https://code.claude.com/docs/ru/env-vars.md#features-that-need-feature-flag-fetching), сжатие в режиме простоя не выполняется, поэтому отключать нечего

2453 2494 

2454Ключ требует Claude Code v2.1.290 или позже. В более ранней версии, которая игнорирует этот ключ, отключите [`autoCompactEnabled`](#autocompactenabled), чтобы остановить сжатие в режиме простоя.2495Ключ требует Claude Code v2.1.290 или позже. В более ранней версии, которая игнорирует этот ключ, отключите [`autoCompactEnabled`](#autocompactenabled), чтобы остановить сжатие в режиме простоя.

2455 2496 

skills.md +1 −1

Details

698 698 

699Когда вы вводите текст в промпт Claude Code в терминале, вы можете поставить несколько скиллов подряд в начале одного сообщения. Через Agent SDK или `claude -p` Claude Code загружает только первый скилл, а остаток строки использует как его аргументы. В промпте терминала ввод `/write-tests /fix-issue 123` загружает оба скилла и передаёт завершающий текст `123` каждому из них как `$ARGUMENTS`.699Когда вы вводите текст в промпт Claude Code в терминале, вы можете поставить несколько скиллов подряд в начале одного сообщения. Через Agent SDK или `claude -p` Claude Code загружает только первый скилл, а остаток строки использует как его аргументы. В промпте терминала ввод `/write-tests /fix-issue 123` загружает оба скилла и передаёт завершающий текст `123` каждому из них как `$ARGUMENTS`.

700 700 

701Claude Code раскрывает первый скилл и до пяти следующих за ним. Раскрытие останавливается на первом токене, который не является встроенным скиллом, вызываемым пользователем. Если вы добавите скилл, который выполняется как [ответвлённый субагент](#run-skills-in-a-subagent), например [`/code-review`](https://code.claude.com/docs/ru/code-review-local), или скилл, аргументы которого могут начинаться с другой команды, например `/loop`, раскрытие на нём заканчивается. Этот токен и всё, что следует за ним, становятся текстом аргументов для каждого раскрытого скилла.701Claude Code раскрывает первый скилл и до пяти следующих за ним. Раскрытие останавливается на первом токене, который не является скиллом, вызываемым пользователем и выполняемым в текущем диалоге. Если вы добавите скилл, который выполняется как [ответвлённый субагент](#run-skills-in-a-subagent), например [`/code-review`](https://code.claude.com/docs/ru/code-review-local), или скилл, аргументы которого могут начинаться с другой команды, например `/loop`, раскрытие на нём заканчивается. Этот токен и всё, что следует за ним, становятся текстом аргументов для каждого раскрытого скилла.

702 702 

703## Продвинутые приёмы703## Продвинутые приёмы

704 704 

slack.md +9 −11

Details

49 49 

501. Откройте приложение Claude в Slack, нажав на "Claude" в разделе "Apps"501. Откройте приложение Claude в Slack, нажав на "Claude" в разделе "Apps"

512. Перейдите на вкладку App Home512. Перейдите на вкладку App Home

523. Нажмите "Connect", чтобы связать вашу учетную запись Slack с вашей учетной записью Claude523. Нажмите **Connect Claude account**, чтобы связать вашу учетную запись Slack с вашей учетной записью Claude

534. Завершите процесс аутентификации в вашем браузере534. Завершите процесс аутентификации в вашем браузере

54 54 

55**3. Настройте облачные сеансы**55**3. Настройте облачные сеансы**


71 71 

72> [!NOTE]72> [!NOTE]

73>73>

74> В режиме "Код + Чат", если Claude маршрутизирует сообщение в Chat, но вы хотели сеанс кодирования, вы можете нажать "Retry as Code", чтобы создать сеанс Claude Code. Аналогично, если он маршрутизирован в Code, но вы хотели сеанс Chat, вы можете выбрать этот вариант в этой цепочке.74> В режиме "Код + Чат", если Claude отвечает в Chat, но вы хотели сессию кодирования, нажмите **Switch to code repo...** в ответе и выберите репозиторий. После этого Claude вместо этого запустит сессию Claude Code с вашим сообщением.

75 75 

76**5. Добавьте Claude в каналы**76**5. Добавьте Claude в каналы**

77 77 


1072. **Обнаружение**: Claude анализирует ваше сообщение и обнаруживает намерение кодирования1072. **Обнаружение**: Claude анализирует ваше сообщение и обнаруживает намерение кодирования

1083. **Создание сеанса**: Новый сеанс Claude Code создается на claude.ai/code1083. **Создание сеанса**: Новый сеанс Claude Code создается на claude.ai/code

1094. **Обновления прогресса**: Claude публикует обновления статуса в вашу цепочку Slack по мере выполнения работы1094. **Обновления прогресса**: Claude публикует обновления статуса в вашу цепочку Slack по мере выполнения работы

1105. **Завершение**: По завершении Claude упоминает вас с резюме и кнопками действия1105. **Завершение**: По завершении Claude обновляет свое сообщение в цепочке, добавляя окончательный ответ и кнопки действий, и отправляет вам личное сообщение со ссылкой на него

1116. **Проверка**: Нажмите "View Session", чтобы увидеть полную стенограмму, или "Create PR", чтобы открыть запрос на слияние1116. **Проверка**: Нажмите **View session**, чтобы увидеть полный транскрипт, или **Create PR**, чтобы открыть pull request

112 112 

113## Элементы пользовательского интерфейса113## Элементы пользовательского интерфейса

114 114 

115### Действия с сообщениями115### Действия с сообщениями

116 116 

117* **View Session**: Открывает полный сеанс Claude Code в вашем браузере, где вы можете увидеть всю выполненную работу, продолжить сеанс или сделать дополнительные запросы.117* **View session**: Открывает полную сессию Claude Code в вашем браузере, где вы можете увидеть всю выполненную работу, продолжить сессию или сделать дополнительные запросы.

118* **Create PR**: Создает запрос на слияние прямо из изменений сеанса.118* **Create PR**: Открывает страницу сравнения GitHub для ветки сессии, где вы создаёте pull request. Кнопка появляется на статусном сообщении, которое Claude опубликовал при запуске сессии, после завершения сессии.

119* **Retry as Code**: Если Claude первоначально ответил как помощник чата, но вы хотели сеанс кодирования, нажмите эту кнопку, чтобы повторить запрос как задачу Claude Code.119* **Switch to code repo...**: Если Claude ответил в режиме Chat, но вы хотели сессию программирования, нажмите эту кнопку и выберите репозиторий, и Claude запустит сессию Claude Code с вашим исходным запросом.

120* **Change Repo**: Позволяет вам выбрать другой репозиторий, если Claude выбрал неправильно.

121 120 

122### Выбор репозитория121### Выбор репозитория

123 122 

124Claude автоматически выбирает репозиторий на основе контекста из вашей беседы Slack. Если несколько репозиториев могут применяться, Claude может отобразить раскрывающееся меню, позволяющее вам выбрать правильный.123Claude автоматически выбирает репозиторий на основе контекста из вашего диалога в Slack. Если Claude не может определить, какой репозиторий вы имеете в виду, он попросит вас выбрать: нажмите **Select repository** и выберите репозиторий из списка.

125 124 

126## Доступ и разрешения125## Доступ и разрешения

127 126 


219 218 

220### Выбран неправильный репозиторий219### Выбран неправильный репозиторий

221 220 

2221. Нажмите кнопку "Change Repo", чтобы выбрать другой репозиторий221Включите имя репозитория в ваш запрос для более точного выбора.

2232. Включите имя репозитория в ваш запрос для более точного выбора

224 222 

225### Ошибки аутентификации223### Ошибки аутентификации

226 224 

sub-agents.md +2 −2

Details

1048 1048 

1049Рассмотрите вместо этого [скиллы](https://code.claude.com/docs/ru/skills.md), если вам нужны переиспользуемые промпты или рабочие процессы, которые выполняются в контексте основного диалога, а не в изолированном контексте субагента.1049Рассмотрите вместо этого [скиллы](https://code.claude.com/docs/ru/skills.md), если вам нужны переиспользуемые промпты или рабочие процессы, которые выполняются в контексте основного диалога, а не в изолированном контексте субагента.

1050 1050 

1051Для вопроса о чём-то, что уже есть в вашем диалоге, используйте [`/btw`](https://code.claude.com/docs/ru/interactive-mode#side-questions-with-%2Fbtw) вместо субагента. Он видит весь ваш контекст, но не имеет доступа к инструментам, и ответ не добавляется в историю.1051Для вопроса о чём-то, что уже есть в вашем диалоге, используйте [`/btw`](https://code.claude.com/docs/ru/interactive-mode#side-questions-with-%2Fbtw) вместо субагента. У него нет доступа к инструментам, и ответ не добавляется в историю.

1052 1052 

1053### Разрешите субагентам порождать собственных субагентов1053### Разрешите субагентам порождать собственных субагентов

1054 1054 


1242| `x` | Остановите выбранный fork, если он работает, или отклоните его строку, если он больше не работает. На строке основной сессии или на строке fork, чей транскрипт вы открыли с помощью `Enter`, `x` вводит текст в приглашение вместо этого |1242| `x` | Остановите выбранный fork, если он работает, или отклоните его строку, если он больше не работает. На строке основной сессии или на строке fork, чей транскрипт вы открыли с помощью `Enter`, `x` вводит текст в приглашение вместо этого |

1243| `Esc` | Верните фокус на входное приглашение |1243| `Esc` | Верните фокус на входное приглашение |

1244 1244 

1245Когда открыт транскрипт fork или субагента, последующие сообщения и [скиллы](https://code.claude.com/docs/ru/skills.md) отправляются этому агенту, а встроенные команды — в ваш основной диалог, со следующими мерами предосторожности:1245Когда открыт транскрипт fork или субагента, последующие сообщения и [скиллы](https://code.claude.com/docs/ru/skills.md) отправляются этому агенту. В Claude Code v2.1.314 или новее [`/btw`](https://code.claude.com/docs/ru/interactive-mode#ask-btw-about-a-subagent) отвечает на основе открытого транскрипта. Другие встроенные команды отправляются в ваш основной диалог, со следующими мерами предосторожности:

1246 1246 

1247* `/compact`, `/clear` и `/rewind` действуют на основной диалог, поэтому Claude Code просит вас подтвердить запуск любой из них из этого представления.1247* `/compact`, `/clear` и `/rewind` действуют на основной диалог, поэтому Claude Code просит вас подтвердить запуск любой из них из этого представления.

1248* `/model` и `/fast` задают модель и быстрый режим основного диалога, а не просматриваемого агента, поэтому из этого представления они не запускаются. Уведомление объясняет причину.1248* `/model` и `/fast` задают модель и быстрый режим основного диалога, а не просматриваемого агента, поэтому из этого представления они не запускаются. Уведомление объясняет причину.

tools-reference.md +38 −29

Details

6 6 

7> Полный справочник по инструментам, которые может использовать Claude Code, включая требования к разрешениям и поведение каждого инструмента.7> Полный справочник по инструментам, которые может использовать Claude Code, включая требования к разрешениям и поведение каждого инструмента.

8 8 

9Claude Code имеет доступ к набору встроенных инструментов, которые помогают ему понять и изменить вашу кодовую базу. Названия инструментов — это точные строки, которые вы используете в [правилах разрешений](https://code.claude.com/docs/ru/permissions.md#tool-specific-permission-rules), [списках инструментов подагентов](https://code.claude.com/docs/ru/sub-agents.md) и [сопоставителях hooks](https://code.claude.com/docs/ru/hooks.md).9Claude Code имеет доступ к набору встроенных инструментов, которые помогают ему понять и изменить вашу кодовую базу. Названия инструментов — это точные строки, которые вы используете в [правилах разрешений](https://code.claude.com/docs/ru/permissions.md#tool-specific-permission-rules), [списках инструментов субагентов](https://code.claude.com/docs/ru/sub-agents.md) и [matcher хуков](https://code.claude.com/docs/ru/hooks.md).

10 10 

11Чтобы контролировать, какие инструменты может использовать Claude и когда он запрашивает разрешение, настройте [правила разрешений](https://code.claude.com/docs/ru/permissions.md#tool-specific-permission-rules) в ваших параметрах, [hooks](https://code.claude.com/docs/ru/hooks.md) или [списке инструментов подагента](https://code.claude.com/docs/ru/sub-agents.md#supported-frontmatter-fields). См. [Настройка инструментов с помощью правил разрешений и hooks](#configure-tools-with-permission-rules-and-hooks) для каждого места, которое принимает имя инструмента.11Чтобы контролировать, какие инструменты может использовать Claude и когда он запрашивает разрешение, настройте [правила разрешений](https://code.claude.com/docs/ru/permissions.md#tool-specific-permission-rules) в ваших настройках, [хуки](https://code.claude.com/docs/ru/hooks.md) или [список инструментов субагента](https://code.claude.com/docs/ru/sub-agents.md#supported-frontmatter-fields). См. [Настройка инструментов с помощью правил разрешений и хуков](#configure-tools-with-permission-rules-and-hooks) для каждого места, которое принимает имя инструмента.

12 12 

13Чтобы добавить пользовательские инструменты, подключите [MCP сервер](https://code.claude.com/docs/ru/mcp.md). Чтобы расширить Claude переиспользуемыми рабочими процессами на основе подсказок, напишите [skill](https://code.claude.com/docs/ru/skills.md), который работает через существующий инструмент `Skill` вместо добавления новой записи инструмента.13Чтобы добавить пользовательские инструменты, подключите [MCP-сервер](https://code.claude.com/docs/ru/mcp.md). Чтобы расширить Claude переиспользуемыми рабочими процессами на основе промптов, напишите [скилл](https://code.claude.com/docs/ru/skills.md), который работает через существующий инструмент `Skill` вместо добавления новой записи инструмента.

14 14 

15> [!NOTE]15> [!NOTE]

16>16>

17> В [режиме auto](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode) классификатор решает большинство подсказок разрешений вместо вас. Столбец `Permission required` показывает, запрашивает ли инструмент разрешение в [режиме Manual](https://code.claude.com/docs/ru/permission-modes.md) для путей внутри рабочего каталога. Инструменты доступа к файлам, отмеченные как No, включая `Read`, `Grep` и `Glob`, по-прежнему запрашивают разрешение для путей вне [рабочего каталога и дополнительных каталогов](https://code.claude.com/docs/ru/permissions.md#working-directories). `Bash` отмечен как Yes, но запускает встроенный набор [команд только для чтения](https://code.claude.com/docs/ru/permissions.md#read-only-commands) без запроса разрешения.17> В [авторежиме](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode) классификатор решает большинство запросов разрешений вместо вас. Столбец `Permission required` показывает, запрашивает ли инструмент разрешение в [режиме Manual](https://code.claude.com/docs/ru/permission-modes.md) для путей внутри рабочего каталога. Инструменты доступа к файлам, отмеченные как No, включая `Read`, `Grep` и `Glob`, по-прежнему запрашивают разрешение для путей вне [рабочего каталога и дополнительных каталогов](https://code.claude.com/docs/ru/permissions.md#working-directories). `Bash` отмечен как Yes, но запускает встроенный набор [команд только для чтения](https://code.claude.com/docs/ru/permissions.md#read-only-commands) без запроса разрешения.

18 18 

19| Инструмент | Описание | Требуется разрешение |19| Инструмент | Описание | Требуется разрешение |

20| :- | :- | :- |20| :- | :- | :- |

21| `Agent` | Создает [подагента](https://code.claude.com/docs/ru/sub-agents.md) с собственным окном контекста для выполнения задачи. С включенными [командами агентов](https://code.claude.com/docs/ru/agent-teams.md) вызов, содержащий `name`, может запустить [товарища по команде](https://code.claude.com/docs/ru/agent-teams.md#how-claude-starts-agent-teams) вместо этого. См. [Поведение инструмента Agent](#agent-tool-behavior) | No |21| `Agent` | Создает [субагента](https://code.claude.com/docs/ru/sub-agents.md) с собственным контекстным окном для выполнения задачи. С включенными [командами агентов](https://code.claude.com/docs/ru/agent-teams.md) вызов, содержащий `name`, может вместо этого запустить [участника команды](https://code.claude.com/docs/ru/agent-teams.md#how-claude-starts-agent-teams). См. [Поведение инструмента Agent](#agent-tool-behavior) | No |

22| `Artifact` | Публикует HTML- или Markdown-файл на claude.ai как [артефакт](https://code.claude.com/docs/ru/artifacts.md): приватную интерактивную страницу. Вы можете поделиться ею по публичной ссылке или внутри вашей организации в планах Team и Enterprise, где публичный доступ требует, чтобы Owner [включил его](https://code.claude.com/docs/ru/artifacts.md#control-public-sharing). Требует план Pro, Max, Ultra, Team или Enterprise и аутентификацию `/login`; см. [Доступность](https://code.claude.com/docs/ru/artifacts.md#availability) | Yes |22| `Artifact` | Публикует HTML- или Markdown-файл на claude.ai как [артефакт](https://code.claude.com/docs/ru/artifacts.md): приватную интерактивную страницу. Вы можете поделиться ею по публичной ссылке или внутри вашей организации в планах Team и Enterprise, где публичный доступ требует, чтобы Owner [включил его](https://code.claude.com/docs/ru/artifacts.md#control-public-sharing). Требует план Pro, Max, Ultra, Team или Enterprise и аутентификацию `/login`; см. [Доступность](https://code.claude.com/docs/ru/artifacts.md#availability) | Yes |

23| `AskUserQuestion` | Задает вопросы с несколькими вариантами ответов для сбора требований или уточнения неоднозначности. Вопросы остаются открытыми до тех пор, пока вы на них не ответите по умолчанию. См. [Поведение инструмента AskUserQuestion](#askuserquestion-tool-behavior) | No |23| `AskUserQuestion` | Задает вопросы с несколькими вариантами ответов для сбора требований или уточнения неоднозначности. По умолчанию вопросы остаются открытыми до тех пор, пока вы на них не ответите. См. [Поведение инструмента AskUserQuestion](#askuserquestion-tool-behavior) | No |

24| `Bash` | Выполняет команды shell в вашей среде. См. [Поведение инструмента Bash](#bash-tool-behavior) | Yes |24| `Bash` | Выполняет shell-команды в вашей среде. См. [Поведение инструмента Bash](#bash-tool-behavior) | Yes |

25| `CronCreate` | Планирует повторяющийся или одноразовый промпт в текущей сессии. Задачи привязаны к сессии и восстанавливаются при `--resume` или `--continue`, если не истекли. См. [запланированные задачи в рамках сессии](https://code.claude.com/docs/ru/scheduled-tasks.md) | No |25| `CronCreate` | Планирует повторяющийся или одноразовый промпт в текущей сессии. Задачи привязаны к сессии и восстанавливаются при `--resume` или `--continue`, если не истекли. См. [запланированные задачи в рамках сессии](https://code.claude.com/docs/ru/scheduled-tasks.md) | No |

26| `CronDelete` | Отменяет запланированную задачу в рамках сессии по ID | No |26| `CronDelete` | Отменяет запланированную задачу в рамках сессии по ID | No |

27| `CronList` | Выводит список всех запланированных задач в рамках сессии | No |27| `CronList` | Выводит список всех запланированных задач в рамках сессии | No |

28| `Edit` | Вносит целевые изменения в конкретные файлы. См. [Поведение инструмента Edit](#edit-tool-behavior) | Yes |28| `Edit` | Вносит целевые изменения в конкретные файлы. См. [Поведение инструмента Edit](#edit-tool-behavior) | Yes |

29| `EndConversation` | Завершает сессию в редких случаях постоянного оскорбительного ввода или когда вы просите Claude продемонстрировать инструмент. См. [Поведение инструмента EndConversation](#endconversation-tool-behavior) | No |29| `EndConversation` | Завершает сессию в редких случаях постоянного оскорбительного ввода или когда вы просите Claude продемонстрировать инструмент. См. [Поведение инструмента EndConversation](#endconversation-tool-behavior) | No |

30| `EnterPlanMode` | Переключается в режим планирования для разработки подхода перед кодированием | No |30| `EnterPlanMode` | Переключается в режим планирования для разработки подхода перед написанием кода | No |

31| `EnterWorktree` | Создает изолированный [git worktree](https://code.claude.com/docs/ru/worktrees.md) и переключается в него. Передайте `path` для переключения в существующий worktree вместо создания нового. При первом входе целевой путь может быть worktree текущего репозитория или, в многорепозиторном рабочем пространстве, репозитория, вложенного в него. До v2.1.203 worktree вложенного репозитория был отклонен. `path` вне `.claude/worktrees/` запрашивает ваше одобрение перед входом, так как он перемещает рабочий каталог сеанса и доступ на запись в это место. Создание новых worktrees и пути под `.claude/worktrees/` не запрашивают разрешение. До v2.1.206 Claude входил в пути вне `.claude/worktrees/` без запроса. Из сеанса worktree или из подагента с закрепленным рабочим каталогом, таким как [`isolation: worktree`](https://code.claude.com/docs/ru/sub-agents#supported-frontmatter-fields), доступна только форма `path` и целевой путь должен быть под `.claude/worktrees/` репозитория сеанса | Yes |31| `EnterWorktree` | Создает изолированный [git worktree](https://code.claude.com/docs/ru/worktrees.md) и переключается в него или переключается в существующий worktree. См. [Поведение инструмента EnterWorktree](#enterworktree-tool-behavior) | Yes |

32| `ExitPlanMode` | Представляет план для одобрения и выходит из режима планирования | Yes |32| `ExitPlanMode` | Представляет план на утверждение и выходит из режима планирования | Yes |

33| `ExitWorktree` | Выходит из сеанса worktree и возвращается в исходный каталог. Недоступно подагентам, которые уже работают в собственном рабочем каталоге, например с [`isolation: worktree`](https://code.claude.com/docs/ru/sub-agents#supported-frontmatter-fields) | No |33| `ExitWorktree` | Выходит из сессии worktree и возвращается в исходный каталог. Недоступно субагентам, которые уже работают в собственном рабочем каталоге, например с [`isolation: worktree`](https://code.claude.com/docs/ru/sub-agents#supported-frontmatter-fields). Удаляется или отклоняется, когда включен [`permissions.blockWritesOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockwritesoutsideworkingdirectories) | No |

34| `Glob` | Находит файлы на основе сопоставления шаблонов. Отсутствует по умолчанию на macOS, Linux и WSL. См. [Поведение инструмента Glob](#glob-tool-behavior) | No |34| `Glob` | Находит файлы на основе сопоставления шаблонов. Отсутствует по умолчанию на macOS, Linux и WSL. См. [Поведение инструмента Glob](#glob-tool-behavior) | No |

35| `Grep` | Ищет шаблоны в содержимом файлов. Отсутствует по умолчанию на macOS, Linux и WSL. См. [Поведение инструмента Grep](#grep-tool-behavior) | No |35| `Grep` | Ищет шаблоны в содержимом файлов. Отсутствует по умолчанию на macOS, Linux и WSL. См. [Поведение инструмента Grep](#grep-tool-behavior) | No |

36| `ListAgents` | Выводит список агентов, с которыми Claude может общаться через `SendMessage`: подагентов в сеансе, товарищей по команде [команды агентов](https://code.claude.com/docs/ru/agent-teams.md), ваши другие локальные сеансы Claude Code и, пока этот сеанс подключен к [Remote Control](https://code.claude.com/docs/ru/remote-control.md), ваши [облачные сеансы](https://code.claude.com/docs/ru/claude-code-on-the-web.md) и ваши сеансы Remote Control на других машинах. Поддерживает команду `/list-agents`. См. [обмен сообщениями между сеансами](https://code.claude.com/docs/ru/cross-session-messaging.md). Требует Claude Code v2.1.224 или позже и появляется только в сеансах, где [обмен сообщениями между сеансами включен](https://code.claude.com/docs/ru/cross-session-messaging.md#availability). Строки товарищей по команде и первая строка, показывающая имя этого сеанса, требуют v2.1.239 или позже | No |36| `ListAgents` | Выводит список агентов, с которыми Claude может общаться через `SendMessage`: субагентов в сессии, участников [команды агентов](https://code.claude.com/docs/ru/agent-teams.md), ваши другие локальные сессии Claude Code и, пока эта сессия подключена к [Remote Control](https://code.claude.com/docs/ru/remote-control.md), ваши [облачные сессии](https://code.claude.com/docs/ru/claude-code-on-the-web.md) и ваши сессии Remote Control на других машинах. Поддерживает команду `/list-agents`. См. [обмен сообщениями между сессиями](https://code.claude.com/docs/ru/cross-session-messaging.md). Требует Claude Code v2.1.224 или новее и появляется только в сессиях, где [включен обмен сообщениями между сессиями](https://code.claude.com/docs/ru/cross-session-messaging.md#availability). Строки участников команды и первая строка, показывающая имя этой сессии, требуют v2.1.239 или новее | No |

37| `ListMcpResourcesTool` | Выводит список ресурсов, предоставляемых подключенными [MCP серверами](https://code.claude.com/docs/ru/mcp.md), исключая [ресурсы MCP Apps UI](https://code.claude.com/docs/ru/mcp.md#reference-mcp-resources), которые являются страницами для отображения хост-приложением | No |37| `ListMcpResourcesTool` | Выводит список ресурсов, предоставляемых подключенными [MCP-серверами](https://code.claude.com/docs/ru/mcp.md), исключая [ресурсы MCP Apps UI](https://code.claude.com/docs/ru/mcp.md#reference-mcp-resources), которые являются страницами для отображения хост-приложением | No |

38| `LSP` | Интеллект кода через языковые серверы: переход к определениям, поиск ссылок, отчеты об ошибках типов и предупреждениях. См. [Поведение инструмента LSP](#lsp-tool-behavior) | No |38| `LSP` | Анализ кода через языковые серверы: переход к определениям, поиск ссылок, отчеты об ошибках типов и предупреждениях. См. [Поведение инструмента LSP](#lsp-tool-behavior) | No |

39| `Monitor` | Запускает команду в фоновом режиме и передает каждую строку вывода обратно Claude, чтобы он мог реагировать на записи журнала, изменения файлов или опрашиваемый статус в середине разговора. Может также открыть WebSocket и рассматривать каждое входящее сообщение как событие. См. [Инструмент Monitor](#monitor-tool) | Yes |39| `Monitor` | Запускает команду в фоновом режиме и передает каждую строку вывода обратно Claude, чтобы он мог реагировать на записи лога, изменения файлов или опрашиваемый статус прямо по ходу диалога. Может также открыть WebSocket и рассматривать каждое входящее сообщение как событие. См. [Инструмент Monitor](#monitor-tool) | Yes |

40| `NotebookEdit` | Изменяет ячейки Jupyter notebook. См. [Поведение инструмента NotebookEdit](#notebookedit-tool-behavior) | Yes |40| `NotebookEdit` | Изменяет ячейки Jupyter notebook. См. [Поведение инструмента NotebookEdit](#notebookedit-tool-behavior) | Yes |

41| `PowerShell` | Выполняет команды PowerShell нативно. См. [Инструмент PowerShell](#powershell-tool) для доступности | Yes |41| `PowerShell` | Выполняет команды PowerShell нативно. См. [Инструмент PowerShell](#powershell-tool) для доступности | Yes |

42| `PushNotification` | Отправляет уведомление на рабочий стол и push-уведомление на телефон, когда подключен [Remote Control](https://code.claude.com/docs/ru/remote-control.md), чтобы долгоживущая задача или [запланированная задача в рамках сессии](https://code.claude.com/docs/ru/scheduled-tasks.md) могла вас достичь, когда вы отойдете. Доставка push-уведомлений осуществляется через инфраструктуру, размещенную Anthropic, которая недоступна из Amazon Bedrock, Claude Platform на AWS, Agent Platform Google Cloud или Microsoft Foundry | No |42| `PushNotification` | Отправляет уведомление на рабочий стол и push-уведомление на телефон, когда подключен [Remote Control](https://code.claude.com/docs/ru/remote-control.md), чтобы долго выполняющаяся задача или [запланированная задача в рамках сессии](https://code.claude.com/docs/ru/scheduled-tasks.md) могла до вас достучаться, когда вы отойдете. Доставка push-уведомлений осуществляется через инфраструктуру, размещенную Anthropic, которая недоступна из Amazon Bedrock, Claude Platform на AWS, Agent Platform Google Cloud или Microsoft Foundry | No |

43| `Read` | Читает содержимое файлов. См. [Поведение инструмента Read](#read-tool-behavior) | No |43| `Read` | Читает содержимое файлов. См. [Поведение инструмента Read](#read-tool-behavior) | No |

44| `ReadMcpResourceTool` | Читает конкретный MCP ресурс по URI | No |44| `ReadMcpResourceTool` | Читает конкретный MCP-ресурс по URI | No |

45| `RemoteTrigger` | Создает, обновляет, запускает и выводит список [облачных запланированных задач](https://code.claude.com/docs/ru/routines.md) (ранее — routines) на claude.ai. Поддерживает команду `/schedule`. [Справочник входных данных `RemoteTrigger`](https://code.claude.com/docs/ru/agent-sdk/typescript#remotetrigger) документирует каждое действие и политики организации, которые удаляют инструмент. Облачные запланированные задачи находятся на claude.ai и требуют план Pro, Max, Ultra, Team или Enterprise. Поэтому этот инструмент недоступен из Amazon Bedrock, Claude Platform на AWS, Agent Platform Google Cloud или Microsoft Foundry | No |45| `RemoteTrigger` | Создает, обновляет, запускает и выводит список [облачных запланированных задач](https://code.claude.com/docs/ru/routines.md) (ранее — routines) на claude.ai. Поддерживает команду `/schedule`. [Справочник входных данных `RemoteTrigger`](https://code.claude.com/docs/ru/agent-sdk/typescript#remotetrigger) документирует каждое действие и политики организации, которые удаляют инструмент. Облачные запланированные задачи находятся на claude.ai и требуют план Pro, Max, Ultra, Team или Enterprise. Поэтому этот инструмент недоступен из Amazon Bedrock, Claude Platform на AWS, Agent Platform Google Cloud или Microsoft Foundry | No |

46| `ReportFindings` | Сообщает о результатах код-ревью в виде структурированного списка с файлом, кратким описанием и сценарием сбоя для каждого результата, чтобы Claude Code мог их отобразить вместо вывода в виде текста. Claude вызывает его, когда активные инструкции код-ревью предписывают ему это. Результат также может содержать необязательный слаг `category`, например `correctness` или `test-coverage`, который показывается рядом с местоположением файла в отображаемом списке | No |46| `ReportFindings` | Сообщает о результатах код-ревью в виде структурированного списка с файлом, кратким описанием и сценарием сбоя для каждого результата, чтобы Claude Code мог их отобразить вместо вывода в виде текста. Claude вызывает его, когда активные инструкции код-ревью предписывают ему это. Результат также может содержать необязательный слаг `category`, например `correctness` или `test-coverage`, который показывается рядом с местоположением файла в отображаемом списке | No |

47| `ScheduleWakeup` | Переносит следующую итерацию [самостоятельного `/loop`](https://code.claude.com/docs/ru/scheduled-tasks#let-claude-choose-the-interval). Claude вызывает это в конце каждой итерации, чтобы выбрать, когда запустится следующая, между одной минутой и одним часом; вы не вызываете это напрямую. Чтобы вместо этого завершить цикл, Claude вызывает его с `stop: true`, что отменяет ожидающее пробуждение. Ожидающее пробуждение появляется в `session_crons` во [входных данных хука Stop](https://code.claude.com/docs/ru/hooks.md#stop-input) | No |47| `ScheduleWakeup` | Переносит следующую итерацию [самостоятельного `/loop`](https://code.claude.com/docs/ru/scheduled-tasks#let-claude-choose-the-interval). Claude вызывает это в конце каждой итерации, чтобы выбрать, когда запустится следующая, между одной минутой и одним часом; вы не вызываете это напрямую. Чтобы вместо этого завершить цикл, Claude вызывает его с `stop: true`, что отменяет ожидающее пробуждение. Ожидающее пробуждение появляется в `session_crons` во [входных данных хука Stop](https://code.claude.com/docs/ru/hooks.md#stop-input) | No |

48| `SendFeedback` | Составляет отчет об обратной связи о Claude Code, охватывающий проблему продукта или поведение Claude в сеансе, и ставит его в очередь на вашей машине для вашего просмотра. Claude Code ничего не отправляет, пока вы не выберете отправить черновик. См. [Поведение инструмента SendFeedback](#sendfeedback-tool-behavior). Требует Claude Code v2.1.238 или позже | No |48| `SendFeedback` | Составляет отчет об обратной связи о Claude Code, охватывающий проблему продукта или поведение Claude в сессии, и ставит его в очередь на вашей машине для вашего просмотра. Claude Code ничего не отправляет, пока вы не решите отправить черновик. См. [Поведение инструмента SendFeedback](#sendfeedback-tool-behavior). Требует Claude Code v2.1.238 или новее | No |

49| `SendMessage` | Отправляет сообщение другому агенту: товарищу по команде [команды агентов](https://code.claude.com/docs/ru/agent-teams.md), [подагенту, который он возобновляет](https://code.claude.com/docs/ru/sub-agents.md#resume-subagents) по ID или имени агента, или одному из ваших других сеансов Claude Code, на этой машине или за ее пределами. Обмен сообщениями с другими сеансами требует Claude Code v2.1.224 или позже. [Обмен сообщениями между сеансами](https://code.claude.com/docs/ru/cross-session-messaging.md) охватывает, какие сеансы Claude может достичь, [как выглядит сообщение, когда оно прибывает](https://code.claude.com/docs/ru/cross-session-messaging.md#what-a-message-looks-like), и [как Claude получает уведомление, когда другой сеанс переходит в режим ожидания](https://code.claude.com/docs/ru/cross-session-messaging.md#get-a-notice-when-another-session-goes-idle). Claude может включить необязательный ввод `summary`, обычно 5-10 слов, который Claude Code показывает как однострочный предпросмотр. Когда Claude опускает его в [простом текстовом сообщении](https://code.claude.com/docs/ru/cross-session-messaging.md#limitations), Claude Code использует первую строку сообщения как резюме. Claude Code обрезает резюме длиннее 200 символов с многоточием | No |49| `SendMessage` | Отправляет сообщение другому агенту: участнику [команды агентов](https://code.claude.com/docs/ru/agent-teams.md), [субагенту, которого он возобновляет](https://code.claude.com/docs/ru/sub-agents.md#resume-subagents) по ID или имени агента, или одной из ваших других сессий Claude Code, на этой машине или за ее пределами. Обмен сообщениями с другими сессиями требует Claude Code v2.1.224 или новее. [Обмен сообщениями между сессиями](https://code.claude.com/docs/ru/cross-session-messaging.md) описывает, до каких сессий может достучаться Claude, [как выглядит сообщение, когда оно приходит](https://code.claude.com/docs/ru/cross-session-messaging.md#what-a-message-looks-like), и [как Claude получает уведомление, когда другая сессия переходит в режим ожидания](https://code.claude.com/docs/ru/cross-session-messaging.md#get-a-notice-when-another-session-goes-idle). Claude может включить необязательный ввод `summary`, обычно 5-10 слов, который Claude Code показывает как однострочный предпросмотр. Когда Claude опускает его в [простом текстовом сообщении](https://code.claude.com/docs/ru/cross-session-messaging.md#limitations), Claude Code использует первую строку сообщения как резюме. Claude Code обрезает резюме длиннее 200 символов с многоточием | No |

50| `SendUserFile` | Отправляет вам файлы из сессии с необязательной подписью, чтобы созданный отчет, диаграмма, снимок экрана или собранный артефакт попал на ваше устройство, а не только упоминался в транскрипте. Необязательный ввод `display` управляет представлением: `render` открывает файл встроенным в клиент, `attach` показывает только карточку загрузки, а если он не задан, клиент решает по типу файла. Доступно, когда подключен клиент [Remote Control](https://code.claude.com/docs/ru/remote-control.md), или в [облачной сессии](https://code.claude.com/docs/ru/claude-code-on-the-web.md). Доставка осуществляется через инфраструктуру, размещенную Anthropic, поэтому инструмент недоступен на Amazon Bedrock, Agent Platform Google Cloud или Microsoft Foundry | No |50| `SendUserFile` | Отправляет вам файлы из сессии с необязательной подписью, чтобы созданный отчет, диаграмма, снимок экрана или собранный артефакт попал на ваше устройство, а не только упоминался в транскрипте. Необязательный ввод `display` управляет представлением: `render` открывает файл встроенным в клиент, `attach` показывает только карточку загрузки, а если он не задан, клиент решает по типу файла. Доступно, когда подключен клиент [Remote Control](https://code.claude.com/docs/ru/remote-control.md), или в [облачной сессии](https://code.claude.com/docs/ru/claude-code-on-the-web.md). Доставка осуществляется через инфраструктуру, размещенную Anthropic, поэтому инструмент недоступен на Amazon Bedrock, Agent Platform Google Cloud или Microsoft Foundry | No |

51| `ShareOnboardingGuide` | Загружает `ONBOARDING.md` и возвращает ссылку для общего доступа, которую участники команды могут открыть в Claude Code. Вызывается из `/team-onboarding` после написания руководства. Доступно подписчикам claude.ai в планах Team и Enterprise | Yes |51| `ShareOnboardingGuide` | Загружает `ONBOARDING.md` и возвращает ссылку для общего доступа, которую участники команды могут открыть в Claude Code. Вызывается из `/team-onboarding` после написания руководства. Доступно подписчикам claude.ai в планах Team и Enterprise | Yes |

52| `Skill` | Выполняет [skill](https://code.claude.com/docs/ru/skills.md#control-who-invokes-a-skill) в основном разговоре | Yes |52| `Skill` | Выполняет [скилл](https://code.claude.com/docs/ru/skills.md#control-who-invokes-a-skill) в основном диалоге | Yes |

53| `SubagentHandback` | Доставляет финальный отчет подагента в разговор, который получает результат этого подагента. Предоставляется только в [режиме auto](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode), подагентам, которых запускает инструмент Agent локально, кроме [форков](https://code.claude.com/docs/ru/sub-agents.md#fork-the-current-conversation), и доступно в терминальном CLI, расширениях IDE, облачных сеансах и Agent SDK; классификатор проверяет отчет перед его доставкой. Требует Claude Code v2.1.271 или позже | No |53| `SubagentHandback` | Доставляет финальный отчет субагента в тот диалог, который получает результат этого субагента. Предоставляется только в [авторежиме](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode) субагентам, которых инструмент Agent запускает локально, кроме [форков](https://code.claude.com/docs/ru/sub-agents.md#fork-the-current-conversation), и доступен в терминальном CLI, расширениях IDE, облачных сессиях и Agent SDK; классификатор проверяет отчет перед его доставкой. Требует Claude Code v2.1.271 или новее | No |

54| `TaskCreate` | Создает новую задачу в списке задач. Предоставляется по умолчанию только на моделях, перечисленных в [Доступность инструмента Task](#task-tool-availability), и на других моделях, когда вы согласитесь | No |54| `TaskCreate` | Создает новую задачу в списке задач. Предоставляется по умолчанию только на моделях, перечисленных в [Доступность инструмента Task](#task-tool-availability), а на других моделях — если вы его включите | No |

55| `TaskGet` | Получает полные детали для конкретной задачи. Предоставляется по умолчанию только на моделях, перечисленных в [Доступность инструмента Task](#task-tool-availability), и на других моделях, когда вы согласитесь | No |55| `TaskGet` | Получает полные сведения о конкретной задаче. Предоставляется по умолчанию только на моделях, перечисленных в [Доступность инструмента Task](#task-tool-availability), а на других моделях — если вы его включите | No |

56| `TaskList` | Выводит список всех задач с их текущим статусом. Предоставляется по умолчанию только на моделях, перечисленных в [Доступность инструмента Task](#task-tool-availability), и на других моделях, когда вы согласитесь | No |56| `TaskList` | Выводит список всех задач с их текущим статусом. Предоставляется по умолчанию только на моделях, перечисленных в [Доступность инструмента Task](#task-tool-availability), а на других моделях — если вы его включите | No |

57| `TaskOutput` | Удален в v2.1.277. Ранее получал вывод фоновой задачи; теперь Claude читает [выходной файл](https://code.claude.com/docs/ru/interactive-mode.md#how-backgrounding-works) фоновой задачи с помощью `Read` | No |57| `TaskOutput` | Удален в v2.1.277. Ранее получал вывод фоновой задачи; теперь Claude читает [выходной файл](https://code.claude.com/docs/ru/interactive-mode.md#how-backgrounding-works) фоновой задачи с помощью `Read` | No |

58| `TaskStop` | Останавливает работающую фоновую задачу по ID. Он также принимает [участника команды агентов](https://code.claude.com/docs/ru/agent-teams.md) или именованного фонового агента по ID или имени агента. Когда ни одна задача не соответствует ID, ошибка выводит список работающих фоновых агентов с их ID и описанием, включая агентов, которых создал другой агент | No |58| `TaskStop` | Останавливает работающую фоновую задачу по ID. Он также принимает [участника команды агентов](https://code.claude.com/docs/ru/agent-teams.md) или именованного фонового агента по ID или имени агента. Когда ни одна задача не соответствует ID, ошибка выводит список работающих фоновых агентов с их ID и описанием, включая агентов, которых создал другой агент | No |

59| `TaskUpdate` | Обновляет статус задачи, зависимости, детали или удаляет задачи. Предоставляется по умолчанию только на моделях, перечисленных в [Доступность инструмента Task](#task-tool-availability), и на других моделях, когда вы согласитесь | No |59| `TaskUpdate` | Обновляет статус задачи, зависимости, сведения или удаляет задачи. Предоставляется по умолчанию только на моделях, перечисленных в [Доступность инструмента Task](#task-tool-availability), а на других моделях — если вы его включите | No |

60| `TodoWrite` | Управляет контрольным списком задач сеанса. Отключено по умолчанию в пользу `TaskCreate`, `TaskGet`, `TaskList` и `TaskUpdate`. Установите `CLAUDE_CODE_ENABLE_TASKS=0` для повторного включения в [сеансах, которые имеют инструменты отслеживания задач](#task-tool-availability) | No |60| `TodoWrite` | Управляет контрольным списком задач сессии. Отключен по умолчанию в пользу `TaskCreate`, `TaskGet`, `TaskList` и `TaskUpdate`. Установите `CLAUDE_CODE_ENABLE_TASKS=0`, чтобы снова включить его в [сессиях, в которых есть инструменты отслеживания задач](#task-tool-availability) | No |

61| `ToolSearch` | Ищет и загружает отложенные инструменты, когда [поиск инструментов](https://code.claude.com/docs/ru/mcp.md#scale-with-mcp-tool-search) включен | No |61| `ToolSearch` | Ищет и загружает отложенные инструменты, когда включен [поиск инструментов](https://code.claude.com/docs/ru/mcp.md#scale-with-mcp-tool-search) | No |

62| `WaitForMcpServers` | Ожидает один или несколько [MCP серверов](https://code.claude.com/docs/ru/mcp.md), которые все еще подключаются в фоновом режиме, чтобы запрос мог использовать их инструменты без перезагрузки сеанса. Claude вызывает это, когда нужный сервер еще не подключен. Появляется только, когда [поиск инструментов](https://code.claude.com/docs/ru/mcp.md#scale-with-mcp-tool-search) отключен, так как `ToolSearch` обрабатывает ожидание, когда он включен | No |62| `WaitForMcpServers` | Ожидает один или несколько [MCP-серверов](https://code.claude.com/docs/ru/mcp.md), которые все еще подключаются в фоновом режиме, чтобы запрос мог использовать их инструменты без перезапуска сессии. Claude вызывает его, когда нужный сервер еще не подключен. Появляется, только когда [поиск инструментов](https://code.claude.com/docs/ru/mcp.md#scale-with-mcp-tool-search) отключен, так как при включенном поиске ожидание обрабатывает `ToolSearch` | No |

63| `WebFetch` | Получает содержимое с указанного URL. См. [Поведение инструмента WebFetch](#webfetch-tool-behavior) | Yes |63| `WebFetch` | Получает содержимое с указанного URL. См. [Поведение инструмента WebFetch](#webfetch-tool-behavior) | Yes |

64| `WebSearch` | Выполняет веб-поиск. См. [Поведение инструмента WebSearch](#websearch-tool-behavior) | Yes |64| `WebSearch` | Выполняет веб-поиск. См. [Поведение инструмента WebSearch](#websearch-tool-behavior) | Yes |

65| `Workflow` | Запускает [динамический рабочий процесс](https://code.claude.com/docs/ru/workflows.md): скрипт, который организует множество подагентов в фоновом режиме и возвращает один консолидированный результат | Yes |65| `Workflow` | Запускает [динамический рабочий процесс](https://code.claude.com/docs/ru/workflows.md): скрипт, который организует множество субагентов в фоновом режиме и возвращает один консолидированный результат | Yes |

66| `Write` | Создает или перезаписывает файлы. См. [Поведение инструмента Write](#write-tool-behavior) | Yes |66| `Write` | Создает или перезаписывает файлы. См. [Поведение инструмента Write](#write-tool-behavior) | Yes |

67 67 

68## Настройка инструментов с правилами разрешений и hooks68## Настройка инструментов с правилами разрешений и hooks


299* **Режим запуска**: не сессия [`--bare`](https://code.claude.com/docs/ru/headless#start-faster-with-bare-mode). Режим bare загружает только инструменты shell и файлов, поэтому инструмент никогда там не регистрируется.299* **Режим запуска**: не сессия [`--bare`](https://code.claude.com/docs/ru/headless#start-faster-with-bare-mode). Режим bare загружает только инструменты shell и файлов, поэтому инструмент никогда там не регистрируется.

300* **Поставщик**: недоступно на [Amazon Bedrock](https://code.claude.com/docs/ru/amazon-bedrock.md), [Claude Platform on AWS](https://code.claude.com/docs/ru/claude-platform-on-aws.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/ru/google-vertex-ai.md) или [Microsoft Foundry](https://code.claude.com/docs/ru/microsoft-foundry.md), или на сессиях, вошедших через [облачный шлюз](https://code.claude.com/docs/ru/claude-apps-gateway).300* **Поставщик**: недоступно на [Amazon Bedrock](https://code.claude.com/docs/ru/amazon-bedrock.md), [Claude Platform on AWS](https://code.claude.com/docs/ru/claude-platform-on-aws.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/ru/google-vertex-ai.md) или [Microsoft Foundry](https://code.claude.com/docs/ru/microsoft-foundry.md), или на сессиях, вошедших через [облачный шлюз](https://code.claude.com/docs/ru/claude-apps-gateway).

301 301 

302## Поведение инструмента EnterWorktree

303 

304Инструмент EnterWorktree создаёт изолированный [git worktree](https://code.claude.com/docs/ru/worktrees.md) и переключается в него. Если передан `path`, инструмент переключается в существующий worktree вместо создания нового.

305 

306* **Какие worktree можно указать в `path`**: при первом входе целевым может быть worktree текущего репозитория. В репозитории, который содержит другие репозитории, это также может быть worktree вложенного в него репозитория.

307* **Когда запрашивается подтверждение**: для `path` вне `.claude/worktrees/` перед входом запрашивается ваше подтверждение, поскольку это переносит рабочий каталог сессии и доступ на запись в это расположение. Создание нового worktree и пути внутри `.claude/worktrees/` подтверждения не требуют. До v2.1.206 Claude входил в пути вне `.claude/worktrees/` без запроса.

308* **Изнутри worktree**: в сессии внутри worktree доступна только форма с `path`, и целевой путь должен находиться в `.claude/worktrees/` репозитория сессии. То же самое относится к субагенту с закреплённым рабочим каталогом, например с [`isolation: worktree`](https://code.claude.com/docs/ru/sub-agents#supported-frontmatter-fields).

309* **Когда инструмент отсутствует**: если включён параметр [`permissions.blockWritesOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockwritesoutsideworkingdirectories), Claude Code удаляет `EnterWorktree` и `ExitWorktree` или отклоняет их вызовы. Чтобы продолжить работу в worktree, см. [У Claude нет инструмента `EnterWorktree`](https://code.claude.com/docs/ru/worktrees#claude-has-no-enterworktree-tool).

310 

302## Поведение инструмента Glob311## Поведение инструмента Glob

303 312 

304Инструмент Glob находит файлы по шаблону имени. На Windows он входит в набор инструментов по умолчанию. На macOS, Linux и WSL Claude Code исключает Glob и [Grep](#grep-tool-behavior) из набора инструментов по умолчанию, и Claude выполняет поиск с помощью `find` и `grep` через инструмент Bash. В оболочке Claude эти две команды запускают встроенные версии `bfs` и `ugrep`, и поиск достигает ваших хуков и правил разрешений как вызовы `Bash`.313Инструмент Glob находит файлы по шаблону имени. На Windows он входит в набор инструментов по умолчанию. На macOS, Linux и WSL Claude Code исключает Glob и [Grep](#grep-tool-behavior) из набора инструментов по умолчанию, и Claude выполняет поиск с помощью `find` и `grep` через инструмент Bash. В оболочке Claude эти две команды запускают встроенные версии `bfs` и `ugrep`, и поиск достигает ваших хуков и правил разрешений как вызовы `Bash`.

worktrees.md +17 −3

Details

41 41 

42### Попросите Claude создать worktree42### Попросите Claude создать worktree

43 43 

44Вы также можете попросить Claude "работать в worktree" во время сеанса, и он создаст один с помощью инструмента [`EnterWorktree`](https://code.claude.com/docs/ru/tools-reference). После входа в worktree Claude может переключиться непосредственно на другой worktree в `.claude/worktrees/`, вызвав `EnterWorktree` с целевым путём; предыдущий worktree остаётся на диске нетронутым.44Вы также можете попросить Claude «работать в worktree» во время сессии, и он создаст его с помощью инструмента [`EnterWorktree`](https://code.claude.com/docs/ru/tools-reference#enterworktree-tool-behavior). После входа в worktree Claude может переключиться непосредственно на другой worktree в `.claude/worktrees/`, вызвав `EnterWorktree` с целевым путём; предыдущий worktree остаётся на диске нетронутым.

45 45 

46Когда Claude входит в путь вне каталога `.claude/worktrees/` репозитория, Claude Code сначала запрашивает ваше подтверждение. Это перемещение переносит в указанное место рабочий каталог сессии, доступ на запись и конфигурацию проекта, такую как `CLAUDE.md` и настройки. [Правило разрешений](https://code.claude.com/docs/ru/permissions.md) для `EnterWorktree` или выбор «не спрашивать снова» не отключает этот запрос подтверждения; пропускает его только режим `bypassPermissions`.46Когда Claude входит в путь вне каталога `.claude/worktrees/` репозитория, Claude Code сначала запрашивает ваше подтверждение. Это перемещение переносит в указанное место рабочий каталог сессии, доступ на запись и конфигурацию проекта, такую как `CLAUDE.md` и настройки. [Правило разрешений](https://code.claude.com/docs/ru/permissions.md) для `EnterWorktree` или выбор «не спрашивать снова» не отключает этот запрос подтверждения; пропускает его только режим `bypassPermissions`.

47 47 


52> * **`${CLAUDE_PROJECT_DIR}` остаётся на месте**: он по-прежнему указывает на корень проекта, где сеанс начался, поэтому команда hook, такая как `${CLAUDE_PROJECT_DIR}/.claude/hooks/check-style.sh`, по-прежнему запускает скрипт в основной копии.52> * **`${CLAUDE_PROJECT_DIR}` остаётся на месте**: он по-прежнему указывает на корень проекта, где сеанс начался, поэтому команда hook, такая как `${CLAUDE_PROJECT_DIR}/.claude/hooks/check-style.sh`, по-прежнему запускает скрипт в основной копии.

53> * **`cwd` следует за Claude**: поле `cwd` в [входном JSON](https://code.claude.com/docs/ru/hooks.md#common-input-fields) hook — это корень worktree, и оно снова перемещается, когда Claude запускает `cd`. Читайте его, когда hook нужен путь worktree.53> * **`cwd` следует за Claude**: поле `cwd` в [входном JSON](https://code.claude.com/docs/ru/hooks.md#common-input-fields) hook — это корень worktree, и оно снова перемещается, когда Claude запускает `cd`. Читайте его, когда hook нужен путь worktree.

54 54 

55#### У Claude нет инструмента `EnterWorktree`

56 

57Если вы просите Claude работать в worktree, а у него нет инструмента `EnterWorktree` или `ExitWorktree`, проверьте, включён ли параметр [`permissions.blockWritesOutsideWorkingDirectories`](https://code.claude.com/docs/ru/settings-reference#permissions-blockwritesoutsideworkingdirectories). Когда этот параметр включён, Claude Code удаляет оба инструмента для работы с worktree или отклоняет их вызовы.

58 

59Вы можете продолжать работать в worktree, пока этот параметр включён:

60 

61* **Интерактивные сессии**: запустите сессию в worktree с помощью `claude --worktree`.

62* **[Фоновые сессии](https://code.claude.com/docs/ru/agent-view.md#how-file-edits-are-isolated)**: Claude Code отклоняет правки фоновой сессии в вашей основной копии, пока сессия не вызовет `EnterWorktree`, которого у неё нет. Любой из следующих способов позволяет сессии вносить правки:

63 * Запустите её с помощью `claude --bg --worktree`

64 * Установите для [`worktree.bgIsolation`](https://code.claude.com/docs/ru/settings-reference#worktree-bgisolation) значение `"none"`

65 * Попросите Claude вносить правки в worktree, созданном с помощью `git worktree add` внутри каталога, в котором была запущена сессия

66 

67Чтобы вернуть инструменты, выполните `/status` в сессии, чтобы вывести список [загруженных ею источников настроек](https://code.claude.com/docs/ru/settings.md#check-what-loaded), и удалите этот параметр из каждого файла, в котором он задан. Затем перезапустите Claude Code. Если параметр задан в управляемых настройках, спросите у администратора, следует ли изменить политику.

68 

55## Очистка worktrees69## Очистка worktrees

56 70 

57Когда вы выходите из интерактивного сеанса worktree, Claude проверяет worktree на наличие работы, которая будет удалена при удалении: изменённые или неотслеживаемые файлы, незафиксированная работа внутри извлечённых подмодулей и новые коммиты. Эти правила применяются к worktrees, которые Claude создал с помощью git. Для worktree, который создал ваш [WorktreeCreate hook](https://code.claude.com/docs/ru/hooks.md#worktreecreate), см. вместо этого [WorktreeRemove](https://code.claude.com/docs/ru/hooks.md#worktreeremove).71Когда вы выходите из интерактивного сеанса worktree, Claude проверяет worktree на наличие работы, которая будет удалена при удалении: изменённые или неотслеживаемые файлы, незафиксированная работа внутри извлечённых подмодулей и новые коммиты. Эти правила применяются к worktrees, которые Claude создал с помощью git. Для worktree, который создал ваш [WorktreeCreate hook](https://code.claude.com/docs/ru/hooks.md#worktreecreate), см. вместо этого [WorktreeRemove](https://code.claude.com/docs/ru/hooks.md#worktreeremove).


67 81 

68## Возобновите сеанс worktree82## Возобновите сеанс worktree

69 83 

70Когда вы возобновляете сеанс, который закончился внутри worktree без [выхода из него](#clean-up-worktrees), Claude Code возвращает сеанс в этот worktree. Это применяется к интерактивным возобновлениям, к `--continue` и `--resume` в [неинтерактивном режиме](https://code.claude.com/docs/ru/headless.md) с `-p` и к Agent SDK. `--continue` выбирает самый последний сеанс, записанный в каталоге, из которого вы запускаете. Вернувшись в worktree, Claude может по-прежнему выйти из него с помощью инструмента [`ExitWorktree`](https://code.claude.com/docs/ru/tools-reference).84Когда вы возобновляете сессию, которая закончилась внутри worktree без [выхода из него](#clean-up-worktrees), Claude Code возвращает сессию в этот worktree. Это применяется к интерактивным возобновлениям, к `--continue` и `--resume` в [неинтерактивном режиме](https://code.claude.com/docs/ru/headless.md) с `-p` и к Agent SDK. `--continue` выбирает самую последнюю сессию, записанную в каталоге, из которого вы запускаете. Вернувшись в worktree, Claude может выйти из него с помощью инструмента [`ExitWorktree`](https://code.claude.com/docs/ru/tools-reference), [если у сессии есть этот инструмент](#claude-has-no-enterworktree-tool).

71 85 

72Перед возвращением сеанса в его worktree Claude Code проверяет, что worktree по-прежнему является отдельной копией от основной, и отказывается повторно входить в worktree, который не проходит проверку. Для git worktree проверка читает его метаданные git. Worktree без метаданных git, такой как тот, который создал hook [`WorktreeCreate`](#non-git-version-control), может пройти проверку; случаи, которые Claude Code по-прежнему отказывается использовать, перечислены с их восстановлением в разделе [Claude Code отказывается использовать worktree](#claude-code-refuses-to-use-a-worktree). Для сообщений и способов восстановления от каждого см. [Сеанс возобновляется вне его worktree](#the-session-resumes-outside-its-worktree).86Перед возвращением сеанса в его worktree Claude Code проверяет, что worktree по-прежнему является отдельной копией от основной, и отказывается повторно входить в worktree, который не проходит проверку. Для git worktree проверка читает его метаданные git. Worktree без метаданных git, такой как тот, который создал hook [`WorktreeCreate`](#non-git-version-control), может пройти проверку; случаи, которые Claude Code по-прежнему отказывается использовать, перечислены с их восстановлением в разделе [Claude Code отказывается использовать worktree](#claude-code-refuses-to-use-a-worktree). Для сообщений и способов восстановления от каждого см. [Сеанс возобновляется вне его worktree](#the-session-resumes-outside-its-worktree).

73 87 


91 105 

92Claude Code применяет четыре проверки:106Claude Code применяет четыре проверки:

93 107 

94* **Правки файлов**: Claude Code блокирует `Edit`, `Write` или `NotebookEdit`, который нацелен на путь в основной копии.108* **Правки файлов**: Claude Code блокирует `Edit`, `Write` или `NotebookEdit`, который нацелен на путь в основной копии. Чтобы изменить файл в основной копии, отредактируйте его самостоятельно или запустите там интерактивную сессию.

95* **Рабочий каталог команды**: Claude Code блокирует команду Bash, PowerShell или Monitor, чей рабочий каталог разрешается в основную копию, или чей рабочий каталог он не может проверить, остаётся вне неё.109* **Рабочий каталог команды**: Claude Code блокирует команду Bash, PowerShell или Monitor, чей рабочий каталог разрешается в основную копию, или чей рабочий каталог он не может проверить, остаётся вне неё.

96* **Перенаправления git**: Claude Code блокирует команду Bash или Monitor, которая перенаправляет git в основную копию. Перенаправление может поступать через `git -C`, `--git-dir`, переменную `GIT_DIR` или `GIT_WORK_TREE` или `cd` в основную копию перед запуском git.110* **Перенаправления git**: Claude Code блокирует команду Bash или Monitor, которая перенаправляет git в основную копию. Перенаправление может поступать через `git -C`, `--git-dir`, переменную `GIT_DIR` или `GIT_WORK_TREE` или `cd` в основную копию перед запуском git.

97* **Форма команды**: Claude Code блокирует команду Bash или Monitor, когда он не может проверить из текста команды, что любой git, который запускает команда, остаётся внутри worktree. Это происходит, например, когда имя команды вычисляется во время выполнения, когда синтаксис не может быть проанализирован, или когда расширение, такое как `${!name}` или `${ command; }`, может запустить команду, которую текст не указывает явно. Claude Code сообщает Claude, как переписать отказанную команду, например разделив её на простые отдельные команды. Вы не можете отключить эту проверку.111* **Форма команды**: Claude Code блокирует команду Bash или Monitor, когда он не может проверить из текста команды, что любой git, который запускает команда, остаётся внутри worktree. Это происходит, например, когда имя команды вычисляется во время выполнения, когда синтаксис не может быть проанализирован, или когда расширение, такое как `${!name}` или `${ command; }`, может запустить команду, которую текст не указывает явно. Claude Code сообщает Claude, как переписать отказанную команду, например разделив её на простые отдельные команды. Вы не можете отключить эту проверку.