SpyBara
Go Premium

Documentation 2026-11-05 23:03 UTC to 2026-11-06 23:01 UTC

47 files changed +340 −181. View all changes and history on the product overview
2026
Thu 12 21:00 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

167 167 

168### Разрешения инструментов168### Разрешения инструментов

169 169 

170Claude определяет, какие инструменты вызывать на основе задачи, но вы контролируете, разрешено ли выполнение этих вызовов. Вы можете автоматически одобрить определенные инструменты, полностью заблокировать другие или требовать одобрения для всего. Три опции работают вместе, чтобы определить, что работает:170Claude определяет, какие инструменты вызывать на основе задачи, но вы контролируете, разрешено ли выполнение этих вызовов. Используйте следующие параметры, чтобы автоматически подтверждать инструменты, блокировать инструменты и задавать режим разрешений:

171 171 

172* **`allowed_tools` / `allowedTools`** автоматически подтверждает перечисленные инструменты. Агент только для чтения с `["Read", "Glob", "Grep"]` в списке разрешенных инструментов запускает эти инструменты без запросов, за исключением чтения из [сетевых путей](https://code.claude.com/docs/ru/permissions.md#network-paths). Инструменты, не указанные в списке, все еще доступны, и вызовы к ним, которые требуют подтверждения, переходят к режиму разрешений и `canUseTool`.172* **`allowed_tools` / `allowedTools`** автоматически подтверждает перечисленные инструменты. Агент только для чтения с `["Read", "Glob", "Grep"]` в списке разрешенных инструментов запускает эти инструменты без запросов, за исключением чтения из [сетевых путей](https://code.claude.com/docs/ru/permissions.md#network-paths). Инструменты, не указанные в списке, все еще доступны, и вызовы к ним, которые требуют подтверждения, переходят к режиму разрешений и `canUseTool`.

173* **`disallowed_tools` / `disallowedTools`** блокирует перечисленные инструменты, независимо от других настроек. См. [Разрешения](https://code.claude.com/docs/ru/agent-sdk/permissions.md) для порядка, в котором правила проверяются перед запуском инструмента.173* **`disallowed_tools` / `disallowedTools`** блокирует перечисленные инструменты, независимо от других настроек. См. [Разрешения](https://code.claude.com/docs/ru/agent-sdk/permissions.md) для порядка, в котором правила проверяются перед запуском инструмента.

Details

303 303 

304API сообщает реальное количество выходных данных в конце ответа, и Claude Code добавляет его в результирующее сообщение. Читайте выходные токены из `usage` результата или из `modelUsage` для разбивки по моделям.304API сообщает реальное количество выходных данных в конце ответа, и Claude Code добавляет его в результирующее сообщение. Читайте выходные токены из `usage` результата или из `modelUsage` для разбивки по моделям.

305 305 

306Чтобы наблюдать, как растет количество выходных данных ответа во время потоковой передачи, установите `includePartialMessages` или `include_partial_messages` в Python и читайте `usage` из каждого события потока `message_delta`, типизированного как [`SDKPartialAssistantMessage`](https://code.claude.com/docs/ru/agent-sdk/typescript#sdkpartialassistantmessage) в TypeScript и [`StreamEvent`](https://code.claude.com/docs/ru/agent-sdk/python#streamevent) в Python.

307 

308### Отслеживание затрат при неудачных разговорах306### Отслеживание затрат при неудачных разговорах

309 307 

310Оба результирующих сообщения об успехе и ошибке включают `usage` и `total_cost_usd`; в Python оба поля типизированы как необязательные, поэтому проверьте, что они не равны `None` перед их чтением.308Оба результирующих сообщения об успехе и ошибке включают `usage` и `total_cost_usd`; в Python оба поля типизированы как необязательные, поэтому проверьте, что они не равны `None` перед их чтением.

Details

226| `timeout` | `number` | `undefined` | Таймаут в секундах. Если опущен, Claude Code применяет [таймаут события по умолчанию](#hook-timeout). Ваши SDK callbacks следуют значениям по умолчанию хука `command` |226| `timeout` | `number` | `undefined` | Таймаут в секундах. Если опущен, Claude Code применяет [таймаут события по умолчанию](#hook-timeout). Ваши SDK callbacks следуют значениям по умолчанию хука `command` |

227| `onFailure` | `"continue" \| "block"` | `undefined` | Что происходит при сбое callback. Установите `"block"`, чтобы [блокировать действие при сбое callback](#block-the-action-when-a-callback-fails). В Python используйте `on_failure` |227| `onFailure` | `"continue" \| "block"` | `undefined` | Что происходит при сбое callback. Установите `"block"`, чтобы [блокировать действие при сбое callback](#block-the-action-when-a-callback-fails). В Python используйте `on_failure` |

228 228 

229Используйте паттерн `matcher` для нацеливания на конкретные инструменты, когда это возможно. Matcher с `'Bash'` запускается только для команд Bash, в то время как опущение паттерна запускает ваши callbacks для каждого возникновения события.229Используйте паттерн `matcher` для нацеливания на конкретные инструменты, когда это возможно. С matcher `'Bash'` ваши callbacks запускаются для команд Bash. В Claude Code версии 2.1.314 или позже они также запускаются в `PreToolUse` и `PermissionRequest` для команд Monitor, которые они [могут отклонить, но не одобрить](https://code.claude.com/docs/ru/hooks.md#match-monitor-commands). Без matcher они запускаются для каждого возникновения события.

230 230 

231### Функции обратного вызова231### Функции обратного вызова

232 232 

Details

70>70>

71> Путь должен указывать на корневую директорию plugin: родительскую директорию `skills/`, `agents/`, `hooks/`, `commands/` или `.claude-plugin/`.71> Путь должен указывать на корневую директорию plugin: родительскую директорию `skills/`, `agents/`, `hooks/`, `commands/` или `.claude-plugin/`.

72 72 

73### Перезагрузка плагинов в работающей сессии

74 

75Чтобы применить изменения в скиллах, командах, агентах или хуках плагина без запуска новой сессии, вызовите [`reloadPlugins()`](https://code.claude.com/docs/ru/agent-sdk/typescript#query-object) для объекта `Query` в TypeScript SDK. Python SDK не предоставляет эквивалентного метода; вместо этого отправьте [`/reload-plugins`](https://code.claude.com/docs/ru/plugins/cli-reference#reload-plugins) как промпт в сессии.

76 

73### Добавление плагинов в работающую сессию77### Добавление плагинов в работающую сессию

74 78 

75В TypeScript SDK вызовите [`reloadPlugins()`](https://code.claude.com/docs/ru/agent-sdk/typescript#load-more-plugin-folders-with-addplugins) для объекта `Query`, который вернул `query()`, и укажите директорию плагина в опции `addPlugins` этого вызова. Каждая запись `addPlugins` — это объект `{ type: "local", path }` с абсолютным `path`. Требуется TypeScript Agent SDK v0.3.301 или новее.79В TypeScript SDK вызовите [`reloadPlugins()`](https://code.claude.com/docs/ru/agent-sdk/typescript#load-more-plugin-folders-with-addplugins) для объекта `Query`, который вернул `query()`, и укажите директорию плагина в опции `addPlugins` этого вызова. Каждая запись `addPlugins` — это объект `{ type: "local", path }` с абсолютным `path`. Требуется TypeScript Agent SDK v0.3.301 или новее.

Details

1385| `enabled` | `type`, `budget_tokens`, `display` | Включить мышление с определённым бюджетом токенов |1385| `enabled` | `type`, `budget_tokens`, `display` | Включить мышление с определённым бюджетом токенов |

1386| `disabled` | `type` | Отключить мышление |1386| `disabled` | `type` | Отключить мышление |

1387 1387 

1388Необязательное поле `display` определяет, возвращается ли текст размышлений в виде `"summarized"` или `"omitted"`. В Claude Opus 4.7 и новее значение API по умолчанию — `"omitted"`, поэтому установите `"summarized"`, чтобы получать содержимое размышлений в выходных данных [`ThinkingBlock`](#thinkingblock). Claude Code не передаёт ваше значение `display` некоторым поставщикам, таким как Amazon Bedrock и Google Cloud's Agent Platform. У этих поставщиков Opus 4.7 и новее возвращают пустые выходные данные `ThinkingBlock`, даже если вы установили `display` в `"summarized"`.1388Необязательное поле `display` определяет, возвращается ли текст размышлений в виде `"summarized"` или `"omitted"`. В Claude Opus 4.7 и новее значение API по умолчанию — `"omitted"`, поэтому установите `"summarized"`, чтобы получать содержимое размышлений в выходных данных [`ThinkingBlock`](#thinkingblock). У таких поставщиков, как Amazon Bedrock и Google Cloud's Agent Platform, Claude Code не передаёт `display` для распознаваемых им более ранних моделей. Это Opus 4.6, Sonnet 4.6, Haiku 4.5 и более ранние модели, которые используют своё значение по умолчанию.

1389 1389 

1390Поскольку это классы `TypedDict`, во время выполнения они являются простыми словарями. Можно либо создавать их как dict-литералы, либо вызывать класс как конструктор; в обоих случаях получается `dict`. Обращайтесь к полям через `config["budget_tokens"]`, а не `config.budget_tokens`:1390Поскольку это классы `TypedDict`, во время выполнения они являются простыми словарями. Можно либо создавать их как dict-литералы, либо вызывать класс как конструктор; в обоих случаях получается `dict`. Обращайтесь к полям через `config["budget_tokens"]`, а не `config.budget_tokens`:

1391 1391 


2517 2517 

2518### Пример использования hooks2518### Пример использования hooks

2519 2519 

2520Этот пример регистрирует два hooks: один, который блокирует опасные команды bash, такие как `rm -rf /`, и другой, который регистрирует все использование инструментов для аудита. Hooks безопасности работает только на командах Bash (через `matcher`), в то время как hooks логирования работает на всех инструментах.2520Этот пример регистрирует два хука: один блокирует опасные команды Bash, такие как `rm -rf /`, а другой записывает в лог всё использование инструментов для аудита. Благодаря [matcher `Bash`](https://code.claude.com/docs/ru/agent-sdk/hooks#matchers) хук безопасности выполняется при вызовах инструмента Bash. У хука логирования нет matcher, поэтому он выполняется при каждом вызове инструмента.

2521 2521 

2522```python theme={null}2522```python theme={null}

2523import asyncio2523import asyncio


3668 3668 

3669### `SandboxIgnoreViolations`3669### `SandboxIgnoreViolations`

3670 3670 

3671Конфигурация для игнорирования определенных нарушений sandbox.3671Нарушения, которые не нужно включать в отчёт песочницы о нарушениях. Каждый ключ соответствует части команды или `*` для всех команд, а каждое значение перечисляет текст для поиска в строке нарушения: `{"*": ["/etc/hosts"]}` скрывает нарушения, в которых упоминается `/etc/hosts`. Соответствующий доступ по-прежнему блокируется. См. [`sandbox.ignoreViolations`](https://code.claude.com/docs/ru/settings-reference#sandbox-ignoreviolations).

3672 3672 

3673```python theme={null}3673```python theme={null}

3674class SandboxIgnoreViolations(TypedDict, total=False):3674SandboxIgnoreViolations = dict[str, list[str]]

3675 file: list[str]

3676 network: list[str]

3677```3675```

3678 3676 

3679| Property | Type | Default | Description |

3680| :- | :- | :- | :- |

3681| `file` | `list[str]` | `[]` | Шаблоны путей файлов для игнорирования нарушений |

3682| `network` | `list[str]` | `[]` | Шаблоны сети для игнорирования нарушений |

3683 

3684### Fallback системы разрешений для команд без Sandbox3677### Fallback системы разрешений для команд без Sandbox

3685 3678 

3686Когда `allowUnsandboxedCommands` включен, модель может запросить выполнение команд вне sandbox, установив `dangerouslyDisableSandbox: True` во входных данных инструмента. Эти запросы переходят к существующей системе разрешений, что означает, что ваш обработчик `can_use_tool` будет вызван, позволяя вам реализовать пользовательскую логику авторизации.3679Когда `allowUnsandboxedCommands` включен, модель может запросить выполнение команд вне sandbox, установив `dangerouslyDisableSandbox: True` во входных данных инструмента. Эти запросы переходят к существующей системе разрешений, что означает, что ваш обработчик `can_use_tool` будет вызван, позволяя вам реализовать пользовательскую логику авторизации.

Details

1931 1931 

1932Та же пара полей присутствует в [`SDKSystemMessage`](#sdksystemmessage) и в [`SDKControlInitializeResponse`](#sdkcontrolinitializeresponse), поэтому вы можете прочитать состояние быстрого режима перед первым ходом.1932Та же пара полей присутствует в [`SDKSystemMessage`](#sdksystemmessage) и в [`SDKControlInitializeResponse`](#sdkcontrolinitializeresponse), поэтому вы можете прочитать состояние быстрого режима перед первым ходом.

1933 1933 

1934Поле `origin` передаёт [`SDKMessageOrigin`](#sdkmessageorigin) пользовательского сообщения, вызвавшего этот результат. К результатам, несущим `origin: { kind: "task-notification" }`, относятся:1934Поле `origin` содержит [`SDKMessageOrigin`](#sdkmessageorigin), который Claude Code назначил сообщению пользователя, вызвавшему этот результат, а не копию отправленного вами `origin`. К результатам с `origin: { kind: "task-notification" }` относятся:

1935 1935 

1936* **Синтетические последующие ходы**: когда SDK внедряет синтетический последующий ход, например для завершившейся фоновой задачи, итоговый `SDKResultMessage` несёт этот вид1936* **Синтетические последующие ходы**: когда SDK внедряет синтетический последующий ход, например для завершившейся фоновой задачи, итоговый `SDKResultMessage` несёт этот вид

1937* **Сработавшие запланированные задачи и сообщения из других сессий**: облачные запланированные задачи, чей триггер сработал, и проверенные сервером сообщения из ваших других сессий также приходят с этим видом, каждый с `subkind`, описанным в разделе [Подвиды task-notification](#task-notification-subkinds)1937* **Сработавшие запланированные задачи и сообщения из других сессий**: облачные запланированные задачи, чей триггер сработал, и проверенные сервером сообщения из ваших других сессий также приходят с этим видом, каждый с `subkind`, описанным в разделе [Подвиды task-notification](#task-notification-subkinds)


1940 1940 

1941Когда несколько завершений фоновых задач ставятся в очередь вместе, Claude Code может ответить на них в одном ходе, а не в отдельном ходе для каждого. Каждое завершение всё равно создаёт свой результат с этим происхождением. Все завершения, на которые Claude Code отвечает вместе, кроме последнего, по порядку создают пустые результаты с `num_turns: 0`, а результат последнего содержит ход, который отвечает на них все.1941Когда несколько завершений фоновых задач ставятся в очередь вместе, Claude Code может ответить на них в одном ходе, а не в отдельном ходе для каждого. Каждое завершение всё равно создаёт свой результат с этим происхождением. Все завершения, на которые Claude Code отвечает вместе, кроме последнего, по порядку создают пустые результаты с `num_turns: 0`, а результат последнего содержит ход, который отвечает на них все.

1942 1942 

1943Это поле отсутствует для результатов, выданных до любого пользовательского хода, например для ошибок запуска.1943`origin` отсутствует, когда Claude Code его не назначил, например:

1944 

1945* В ходе, который вы начинаете сообщением без `origin` и без [`isSynthetic`](#sdkusermessage)

1946* В результатах, отправленных до любого хода пользователя, например при ошибках запуска

1944 1947 

1945Когда хук `PreToolUse` возвращает `permissionDecision: "defer"`, результат имеет `stop_reason: "tool_deferred"`, а `deferred_tool_use` содержит `id`, `name` и `input` ожидающего инструмента. Читайте это поле, чтобы показать запрос в вашем собственном интерфейсе, затем возобновите работу с тем же `session_id`, чтобы продолжить. См. [Defer a tool call for later](https://code.claude.com/docs/ru/hooks.md#defer-a-tool-call-for-later) о полном цикле.1948Когда хук `PreToolUse` возвращает `permissionDecision: "defer"`, результат имеет `stop_reason: "tool_deferred"`, а `deferred_tool_use` содержит `id`, `name` и `input` ожидающего инструмента. Читайте это поле, чтобы показать запрос в вашем собственном интерфейсе, затем возобновите работу с тем же `session_id`, чтобы продолжить. См. [Defer a tool call for later](https://code.claude.com/docs/ru/hooks.md#defer-a-tool-call-for-later) о полном цикле.

1946 1949 


2435 2438 

2436### `SDKMessageOrigin`2439### `SDKMessageOrigin`

2437 2440 

2438Происхождение сообщения с ролью пользователя. Оно присутствует как `origin` в [`SDKUserMessage`](#sdkusermessage) и передаётся в соответствующее [`SDKResultMessage`](#sdkresultmessage), чтобы вы могли определить, что запустило данный ход.2441Происхождение сообщения с ролью пользователя. Отображается как `origin` в [`SDKUserMessage`](#sdkusermessage). [`SDKResultMessage`](#sdkresultmessage) для хода содержит `origin`, назначенный Claude Code, поэтому вы можете определить, что инициировало этот ход.

2439 2442 

2440```typescript theme={null}2443```typescript theme={null}

2441type SDKMessageOrigin =2444type SDKMessageOrigin =


2462 | { kind: "unclassified" };2465 | { kind: "unclassified" };

2463```2466```

2464 2467 

2468Ваше приложение может устанавливать следующие виды `origin` в отправляемом сообщении:

2469 

2470* `{ kind: "human" }`: то, что ввёл пользователь

2471* `{ kind: "task-notification", subkind: "scheduled-trigger" }`: [объявленный вами запуск по расписанию](#declare-a-scheduled-run)

2472 

2473Остальные виды оставьте Claude Code и серверам Anthropic. Если вы установите один из этих видов, Claude по умолчанию воспринимает сообщение как пользовательское.

2474 

2475Чтобы отправить текст, который пользователь не писал, например загруженную страницу или вывод другого агента, отправьте его отдельным сообщением с [`isSynthetic`](#sdkusermessage), установленным в `true`, и без `origin`. Также установите [`client_composed`](#sdkusermessage) в `true`, чтобы текст, начинающийся с `/`, не выполнялся как команда.

2476 

2465| `kind` | Значение |2477| `kind` | Значение |

2466| - | - |2478| - | - |

2467| `human` | Прямой ввод от конечного пользователя. Если ваше приложение передаёт то, что напечатал пользователь, как пользовательское сообщение, явно установите его `origin` в `{ kind: "human" }`: Claude Code рассматривает пользовательское сообщение без `origin` как неатрибутированное, и проверки, требующие промпта, введённого человеком, например [ключевое слово `ultracode` для workflow](https://code.claude.com/docs/ru/workflows#ask-for-a-workflow-in-your-prompt), его не принимают. До v2.1.210 Claude Code рассматривал отсутствующий `origin` в пользовательском сообщении как ввод человека. |2479| `human` | Прямой ввод от конечного пользователя. Если ваше приложение пересылает введённое пользователем как пользовательское сообщение, установите его `origin` в `{ kind: "human" }`. Без этого `origin` Claude всё равно воспринимает сообщение как пользовательское, но проверки, требующие промпта, введённого человеком, например [ключевое слово рабочего процесса `ultracode`](https://code.claude.com/docs/ru/workflows#ask-for-a-workflow-in-your-prompt), не принимают такое сообщение. |

2468| `channel` | Сообщение, поступившее по [каналу](https://code.claude.com/docs/ru/channels.md). `server` — это имя исходного MCP-сервера. |2480| `channel` | Сообщение, поступившее по [каналу](https://code.claude.com/docs/ru/channels.md). `server` — это имя исходного MCP-сервера. |

2469| `peer` | Сообщение от другого агента: внутрипроцессного [участника команды](https://code.claude.com/docs/ru/agent-teams.md) или [пира из другой сессии](https://code.claude.com/docs/ru/cross-session-messaging.md), то есть другой вашей сессии Claude Code. См. [Поля происхождения peer](#peer-origin-fields) о семантике каждого поля и модели доверия. |2481| `peer` | Сообщение от другого агента Claude Code: [участника команды](https://code.claude.com/docs/ru/agent-teams.md) в том же процессе или [однорангового узла из другой сессии](https://code.claude.com/docs/ru/cross-session-messaging.md) — другой вашей сессии Claude Code. [Десктопное приложение](https://code.claude.com/docs/ru/desktop.md#work-across-sessions), которое передаёт такие сообщения между вашими сессиями, объявляет этот вид с [`fromMode`](#peer-origin-fields). Чтобы передать вывод другого агента из собственного приложения, вместо этого установите `isSynthetic` и `client_composed`. Семантику каждого поля и модель доверия см. в разделе [Поля происхождения peer](#peer-origin-fields). |

2470| `task-notification` | Синтетический ход, внедрённый для доставки, которая поступает без нового промпта пользователя, например для завершённой фоновой задачи; см. [`SDKTaskNotificationMessage`](#sdktasknotificationmessage) об этом варианте. Промпт, который ваше приложение [объявляет запланированным запуском](#declare-a-scheduled-run), также имеет этот вид. Необязательный `subkind` указывает, что вызвало уведомление. См. [Подвиды уведомлений задач](#task-notification-subkinds). |2482| `task-notification` | Синтетический ход, внедрённый для доставки, которая поступает без нового промпта пользователя, например для завершённой фоновой задачи; см. [`SDKTaskNotificationMessage`](#sdktasknotificationmessage) об этом варианте. Промпт, который ваше приложение [объявляет запланированным запуском](#declare-a-scheduled-run), также имеет этот вид. Необязательный `subkind` указывает, что вызвало уведомление. См. [Подвиды уведомлений задач](#task-notification-subkinds). |

2471| `coordinator` | Сообщение от координатора команды в [команде агентов](https://code.claude.com/docs/ru/agent-teams.md). |2483| `coordinator` | Сообщение от координатора команды в [команде агентов](https://code.claude.com/docs/ru/agent-teams.md). |

2472| `auto-continuation` | Синтетический ход, внедрённый, когда сессия продолжается без нового пользовательского ввода, например результат команды, который запускает промпт продолжения. |2484| `auto-continuation` | Синтетический ход, внедрённый, когда сессия продолжается без нового пользовательского ввода, например результат команды, который запускает промпт продолжения. |

2473| `unclassified` | Внедрённый ход, происхождение которого не удалось определить. Требует Claude Code v2.1.223 или позже. Когда Claude Code получает [`SDKUserMessage`](#sdkusermessage) с `isSynthetic: true` и не может отнести его ни к какому другому `kind`, он устанавливает этот вид при поступлении сообщения и представляет ход модели как исходящий не от пользователя, а не рассматривает его как ввод человека. Ваше приложение не должно устанавливать это значение. |2485| `unclassified` | Сообщение, помеченное как исходящее не от пользователя, например [`SDKUserMessage`](#sdkusermessage), отправленное вами с `isSynthetic: true`. Требуется Claude Code v2.1.223 или более поздней версии. |

2474 2486 

2475### Подвиды уведомлений задач2487### Подвиды уведомлений задач

2476 2488 


2494Происхождение `peer` определяет, какой агент отправил сообщение: [участник команды](https://code.claude.com/docs/ru/agent-teams.md), работающий в том же процессе и отправляющий сообщение в `main` с помощью `SendMessage`, или [одноранговый узел из другой сессии](https://code.claude.com/docs/ru/cross-session-messaging.md) — другая ваша сессия Claude Code. Для одноранговых узлов из других сессий требуется Claude Code v2.1.224 или новее на macOS и Linux; требования для нативной Windows см. в разделе [доступность межсессионного обмена сообщениями](https://code.claude.com/docs/ru/cross-session-messaging.md#availability). Одноранговый узел из другой сессии может работать на той же машине или на [другой вашей машине](https://code.claude.com/docs/ru/cross-session-messaging.md#message-sessions-on-other-machines), если его сообщение поступает через [Remote Control](https://code.claude.com/docs/ru/remote-control.md).2506Происхождение `peer` определяет, какой агент отправил сообщение: [участник команды](https://code.claude.com/docs/ru/agent-teams.md), работающий в том же процессе и отправляющий сообщение в `main` с помощью `SendMessage`, или [одноранговый узел из другой сессии](https://code.claude.com/docs/ru/cross-session-messaging.md) — другая ваша сессия Claude Code. Для одноранговых узлов из других сессий требуется Claude Code v2.1.224 или новее на macOS и Linux; требования для нативной Windows см. в разделе [доступность межсессионного обмена сообщениями](https://code.claude.com/docs/ru/cross-session-messaging.md#availability). Одноранговый узел из другой сессии может работать на той же машине или на [другой вашей машине](https://code.claude.com/docs/ru/cross-session-messaging.md#message-sessions-on-other-machines), если его сообщение поступает через [Remote Control](https://code.claude.com/docs/ru/remote-control.md).

2495 2507 

2496* `from`: имя участника команды или адрес отправителя для межсессионного пира. Для [одностороннего сообщения с другой машины](https://code.claude.com/docs/ru/cross-session-messaging.md#message-sessions-on-other-machines) у отправителя нет адреса для ответа, и `from` равно `"unknown"`. Значение задаётся отправителем; проверенной идентичностью является `verifiedPeerPid`.2508* `from`: имя участника команды или адрес отправителя для межсессионного пира. Для [одностороннего сообщения с другой машины](https://code.claude.com/docs/ru/cross-session-messaging.md#message-sessions-on-other-machines) у отправителя нет адреса для ответа, и `from` равно `"unknown"`. Значение задаётся отправителем; проверенной идентичностью является `verifiedPeerPid`.

2497* `fromMode`: класс разрешений отправляющей сессии, `bypass` или `prompting`, объявленный хостом, который передаёт сообщение пира между вашими сессиями, например [настольным приложением](https://code.claude.com/docs/ru/desktop.md#work-across-sessions). Claude Code читает его в принимающей сессии, когда применяет [контроль входящих сообщений](https://code.claude.com/docs/ru/cross-session-messaging.md#control-inbound-messages). Требует Agent SDK v0.3.234 или позже.2509* `fromMode`: класс разрешений отправляющей сессии, `bypass` или `prompting`. Claude Code считывает его в принимающей сессии, когда применяет [средства управления входящими сообщениями](https://code.claude.com/docs/ru/cross-session-messaging.md#control-inbound-messages). Требуется Agent SDK v0.3.234 или более поздней версии.

2498* `senderTaskId`: ID задачи участника команды. Отсутствует для межсессионного пира.2510* `senderTaskId`: ID задачи участника команды. Отсутствует для межсессионного пира.

2499* `name`: отображаемое имя отправителя, нормализованное Claude Code: он удаляет управляющие, форматирующие и суррогатные кодовые точки Unicode, а также разделители строк и абзацев, затем обрезает пробелы и ограничивает результат 64 кодовыми точками с многоточием. Требует Claude Code v2.1.205 или позже.2511* `name`: отображаемое имя отправителя, нормализованное Claude Code: он удаляет управляющие, форматирующие и суррогатные кодовые точки Unicode, а также разделители строк и абзацев, затем обрезает пробелы и ограничивает результат 64 кодовыми точками с многоточием. Требует Claude Code v2.1.205 или позже.

2500* `body`: декодированное тело сообщения с удалённой peer-обёрткой, побайтово совпадающее с тем, что видит модель. Присутствует для одиночного сообщения участника команды и отсутствует, когда несколько сообщений объединены; для узла из другой сессии присутствует, только если ход состоит ровно из одной peer-обёртки, сформированной Claude Code. Отображайте `name` и `body` вместо повторного разбора текста сообщения. До версии v2.1.299 объединённые сообщения сохраняли `body` первого сообщения. Требуется Claude Code v2.1.205 или новее.2512* `body`: декодированное тело сообщения с удалённой peer-обёрткой, побайтово совпадающее с тем, что видит модель. Присутствует для одиночного сообщения участника команды и отсутствует, когда несколько сообщений объединены; для узла из другой сессии присутствует, только если ход состоит ровно из одной peer-обёртки, сформированной Claude Code. Отображайте `name` и `body` вместо повторного разбора текста сообщения. До версии v2.1.299 объединённые сообщения сохраняли `body` первого сообщения. Требуется Claude Code v2.1.205 или новее.


5419 | { type: "disabled" }; // Без расширенного мышления5431 | { type: "disabled" }; // Без расширенного мышления

5420```5432```

5421 5433 

5422Необязательное поле `display` управляет тем, возвращается ли текст размышлений как `"summarized"` или `"omitted"`. На Claude Opus 4.7 и более поздних версиях значение API по умолчанию — `"omitted"`, поэтому установите `"summarized"`, чтобы получать содержимое размышлений в блоках `thinking`. Claude Code не передаёт ваше значение `display` некоторым провайдерам, например Amazon Bedrock и Google Cloud's Agent Platform. У этих провайдеров Opus 4.7 и более поздние версии возвращают пустые блоки `thinking`, даже если вы установите `display` в `"summarized"`.5434Необязательное поле `display` управляет тем, возвращается ли текст размышлений как `"summarized"` или `"omitted"`. На Claude Opus 4.7 и более поздних версиях значение API по умолчанию — `"omitted"`, поэтому установите `"summarized"`, чтобы получать содержимое размышлений в блоках `thinking`. У таких провайдеров, как Amazon Bedrock и Google Cloud's Agent Platform, Claude Code не передаёт `display` для распознаваемых им более ранних моделей. Это Opus 4.6, Sonnet 4.6, Haiku 4.5 и более ранние модели, которые используют своё значение по умолчанию.

5423 5435 

5424### `SpawnedProcess`5436### `SpawnedProcess`

5425 5437 


6040| `allowUnsandboxedCommands` | `boolean` | `true` | Разрешите модели запрашивать выполнение команд вне sandbox. Когда `true`, модель может установить `dangerouslyDisableSandbox` в входных данных tool, что переходит к [системе разрешений](#permissions-fallback-for-unsandboxed-commands) |6052| `allowUnsandboxedCommands` | `boolean` | `true` | Разрешите модели запрашивать выполнение команд вне sandbox. Когда `true`, модель может установить `dangerouslyDisableSandbox` в входных данных tool, что переходит к [системе разрешений](#permissions-fallback-for-unsandboxed-commands) |

6041| `network` | [`SandboxNetworkConfig`](#sandboxnetworkconfig) | `undefined` | Конфигурация sandbox, специфичная для сети |6053| `network` | [`SandboxNetworkConfig`](#sandboxnetworkconfig) | `undefined` | Конфигурация sandbox, специфичная для сети |

6042| `filesystem` | [`SandboxFilesystemConfig`](#sandboxfilesystemconfig) | `undefined` | Конфигурация sandbox, специфичная для файловой системы, для ограничений чтения/записи |6054| `filesystem` | [`SandboxFilesystemConfig`](#sandboxfilesystemconfig) | `undefined` | Конфигурация sandbox, специфичная для файловой системы, для ограничений чтения/записи |

6043| `ignoreViolations` | `Record<string, string[]>` | `undefined` | Карта подстрок команд или `*` для каждой команды к подстрокам текста нарушения для игнорирования, такие как `{ "*": ['/etc/hosts'] }`; см. [`sandbox.ignoreViolations`](https://code.claude.com/docs/ru/settings-reference#sandbox-ignoreviolations) |6055| `ignoreViolations` | `Record<string, string[]>` | `undefined` | Нарушения, которые не нужно включать в отчёт о нарушениях песочницы. Каждый ключ соответствует части команды или `*` для любой команды, а каждое значение перечисляет текст для поиска в строке нарушения: `{ "*": ['/etc/hosts'] }` скрывает нарушения, в которых упоминается `/etc/hosts`. См. [`sandbox.ignoreViolations`](https://code.claude.com/docs/ru/settings-reference#sandbox-ignoreviolations) |

6044| `enableWeakerNestedSandbox` | `boolean` | `false` | Включите более слабый вложенный sandbox для совместимости |6056| `enableWeakerNestedSandbox` | `boolean` | `false` | Включите более слабый вложенный sandbox для совместимости |

6045| `allowNestedUserNamespaces` | `boolean` | `false` | Разрешите командам в песочнице на Linux и WSL2 создавать пользовательские пространства имён (user namespaces). Прежде чем установить значение `true`, прочитайте [`sandbox.allowNestedUserNamespaces`](https://code.claude.com/docs/ru/settings-reference#sandbox-allownestedusernamespaces), где описаны инструменты, которым это нужно, и граница безопасности, которую вы отключаете. Требует Claude Code v2.1.305 или позже |6057| `allowNestedUserNamespaces` | `boolean` | `false` | Разрешите командам в песочнице на Linux и WSL2 создавать пользовательские пространства имён (user namespaces). Прежде чем установить значение `true`, прочитайте [`sandbox.allowNestedUserNamespaces`](https://code.claude.com/docs/ru/settings-reference#sandbox-allownestedusernamespaces), где описаны инструменты, которым это нужно, и граница безопасности, которую вы отключаете. Требует Claude Code v2.1.305 или позже |

6046| `ripgrep` | `{ command: string; args?: string[] }` | `undefined` | Конфигурация пользовательского бинарного файла ripgrep для окружений sandbox |6058| `ripgrep` | `{ command: string; args?: string[] }` | `undefined` | Конфигурация пользовательского бинарного файла ripgrep для окружений sandbox |

agent-teams.md +1 −1

Details

296>296>

297> Чтобы он спрашивал перед редактированием, нажмите Enter на строке `main` в панели агентов и также переключите лидера в режим Manual. Тогда лидер тоже будет спрашивать, как и любой другой участник команды в режиме Manual.297> Чтобы он спрашивал перед редактированием, нажмите Enter на строке `main` в панели агентов и также переключите лидера в режим Manual. Тогда лидер тоже будет спрашивать, как и любой другой участник команды в режиме Manual.

298 298 

299Задать режимы разрешений для отдельных участников команды при порождении нельзя. Новый участник команды начинает в режиме лидера, включая режим `bypassPermissions`, который включается флагом `--dangerously-skip-permissions`. Если лидер находится в [режиме `dontAsk`](https://code.claude.com/docs/ru/permission-modes#allow-only-pre-approved-tools-with-dontask-mode), участник команды вместо этого начинает в [режиме Manual](https://code.claude.com/docs/ru/permission-modes.md#available-modes).299Задать режимы разрешений для отдельных участников команды при порождении нельзя. Новый участник команды начинает в режиме лидера, включая режим `bypassPermissions`, который включается флагом `--dangerously-skip-permissions`. Если лидер находится в [режиме `dontAsk`](https://code.claude.com/docs/ru/permission-modes#allow-only-pre-approved-tools-with-dontask-mode), участник команды вместо этого начинает в [режиме Manual](https://code.claude.com/docs/ru/permission-modes.md#available-modes). Для участника команды в разделенной панели, лидер которого находится в режиме Manual или `dontAsk`, для этого требуется Claude Code v2.1.317 или новее.

300 300 

301Участник команды, [работающий в процессе](#choose-a-display-mode), работает по текущим правилам разрешения и запрета лидера, поэтому к нему применяются [`--disallowedTools`](https://code.claude.com/docs/ru/cli-reference#cli-flags), `--tools` и `--allowedTools`. Для участника команды в разделенной панели проверьте каждый флаг:301Участник команды, [работающий в процессе](#choose-a-display-mode), работает по текущим правилам разрешения и запрета лидера, поэтому к нему применяются [`--disallowedTools`](https://code.claude.com/docs/ru/cli-reference#cli-flags), `--tools` и `--allowedTools`. Для участника команды в разделенной панели проверьте каждый флаг:

302 302 

artifacts.md +9 −9

Details

131 131 

132Если редактор публикует версию, пока у Claude есть более старая копия страницы, Claude Code отклоняет публикацию, основанную на этой копии. Затем Claude выполняет слияние своих изменений с более новой версией и публикует снова.132Если редактор публикует версию, пока у Claude есть более старая копия страницы, Claude Code отклоняет публикацию, основанную на этой копии. Затем Claude выполняет слияние своих изменений с более новой версией и публикует снова.

133 133 

134## Прочитайте артефакт, которым с вами поделились134## Чтение артефакта, которым с вами поделились

135 135 

136Когда кто-то делится с вами артефактом, вы можете попросить Claude прочитать его: предоставьте Claude его URL или прикрепите его из [`/artifacts`](#find-an-artifact-again).136Когда кто-то делится с вами артефактом, вы можете попросить Claude прочитать его: передайте Claude его URL или прикрепите его из [`/artifacts`](#find-an-artifact-again).

137 137 

138Claude читает страницу, написанную кем-то другим, так же, как он читает веб-страницу с помощью [WebFetch](https://code.claude.com/docs/ru/tools-reference.md#webfetch-tool-behavior): он получает краткое описание того, о чем его попросили, а не исходную страницу, и краткое описание содержит инструкции, написанные на странице, вместо того чтобы их передавать. Claude Code также сохраняет полный исходный код страницы в локальный файл, который Claude может открыть, когда ему нужно точное содержимое, например для повторной публикации артефакта в качестве [редактора](#let-someone-edit-with-you).138Claude читает страницу, написанную кем-то другим, так же, как читает веб-страницу с помощью [WebFetch](https://code.claude.com/docs/ru/tools-reference.md#webfetch-tool-behavior): он получает сводку по тому, о чём спросил, а не исходную страницу, и эта сводка сообщает о том, что на странице написаны инструкции, вместо того чтобы передавать их дальше. Claude Code также сохраняет полный исходный код страницы в локальный файл, который Claude может открыть, когда ему нужно точное содержимое, например чтобы повторно опубликовать артефакт в качестве [редактора](#let-someone-edit-with-you).

139 139 

140Claude Code запрашивает ваше подтверждение, прежде чем Claude прочитает артефакт, в следующих случаях — в дополнение к любому запросу, который требуют ваш режим разрешений или правила:140Claude Code запрашивает ваше подтверждение, прежде чем Claude прочитает артефакт, в следующих случаях — в дополнение к любому запросу, которого требуют ваш режим разрешений или правила:

141 141 

142* **Облачная сессия без доступа к сети**: для [облачной среды](https://code.claude.com/docs/ru/cloud-environments.md#access-levels) это уровень **None**. В [авторежиме](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode) вместо вас подтверждение может дать классификатор; в сессии [Cowork](https://claude.com/product/cowork) подтверждение даете только вы.142* **Облачная сессия без доступа к сети**: для [облачного окружения](https://code.claude.com/docs/ru/cloud-environments.md#access-levels) это уровень **None**. В [авторежиме](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode) вместо вас подтвердить может классификатор; в сессии [Cowork](https://claude.com/product/cowork) подтверждение даёте только вы.

143* **Публичный артефакт другой организации**: Claude Code сначала спрашивает вас, даже в авторежиме. Если Claude Code не может спросить вас, например в режиме `bypassPermissions`, Claude не может прочитать артефакт. Claude может читать такие артефакты только при включенном [получении feature-флагов](https://code.claude.com/docs/ru/env-vars.md#features-that-need-feature-flag-fetching).143* **Публичный артефакт другой организации**: Claude Code сначала спрашивает вас, даже в авторежиме. Там, где Claude Code не может спросить вас, например в режиме `bypassPermissions`, Claude не может прочитать артефакт. Claude может читать такие артефакты, только пока включено [получение feature-флагов](https://code.claude.com/docs/ru/env-vars.md#features-that-need-feature-flag-fetching).

144* **Неподтвержденный владелец или сетевая настройка**: если Claude Code не может подтвердить, кто создал артефакт, или не может подтвердить сетевую настройку облачной сессии, он спрашивает, и ваше подтверждение распространяется только на этот один запрос.144* **Неподтверждённый владелец или настройка сети**: когда Claude Code не может подтвердить, кто создал артефакт, или не может подтвердить сетевую настройку облачной сессии, он спрашивает вас, и ваше подтверждение распространяется только на этот один запрос. В [авторежиме](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode) классификатор может одобрить или заблокировать чтение вместо того, чтобы спрашивать вас.

145* **Режим планирования**: в [режиме планирования](https://code.claude.com/docs/ru/permission-modes.md#analyze-before-you-edit-with-plan-mode) Claude Code спрашивает, прежде чем инструмент Artifact прочитает артефакт, созданный кем-то другим в вашей организации.145* **Режим планирования**: в [режиме планирования](https://code.claude.com/docs/ru/permission-modes.md#analyze-before-you-edit-with-plan-mode) Claude Code спрашивает вас, прежде чем инструмент Artifact прочитает артефакт, созданный кем-то другим в вашей организации.

146 146 

147Когда Claude читает артефакт с помощью WebFetch, собственные [правила запросов](https://code.claude.com/docs/ru/tools-reference.md#webfetch-tool-behavior) WebFetch по-прежнему действуют.147Когда Claude читает артефакт с помощью WebFetch, по-прежнему действуют собственные [правила запросов](https://code.claude.com/docs/ru/tools-reference.md#webfetch-tool-behavior) WebFetch.

148 148 

149## Собирайте комментарии к артефакту149## Собирайте комментарии к артефакту

150 150 

Details

29 29 

30## Сделайте сеанс подходящим30## Сделайте сеанс подходящим

31 31 

32Если причина в шлюзе, попросите администратора вашей компании или поставщика шлюза пропускать запросы и ответы без изменений. Это означает пересылку заголовков запросов и полей тела в том виде, в котором они есть, включая те, которые шлюз не распознает, такие как поле запроса `safeguards`, и возврат ответов и событий потоковой передачи без удаления ключей, таких как поле `safeguard_results` или переписывание идентификаторов использования инструментов, как описано в [руководстве совместимости шлюза](https://code.claude.com/docs/ru/llm-gateway-protocol.md#feature-pass-through). Шлюз, пропускающий трафик таким образом, продолжает работать с этой функцией и с будущими. Новые сеансы затем снова используют проверки сервера.32Если шлюз не позволяет серверным проверкам авторежима доходить до ваших сессий и вы не управляете им, отправьте приведённые ниже требования администратору вашей компании или поставщику шлюза. Если [вышестоящий сервис принимает формат, который получает шлюз](https://code.claude.com/docs/ru/llm-gateway-protocol.md#format-mismatch-with-the-upstream), Claude Code ожидает, что шлюз будет пропускать запросы и ответы без изменений, как описано в [руководстве по совместимости шлюза](https://code.claude.com/docs/ru/llm-gateway-protocol.md#feature-pass-through):

33 

34* **Запросы**: чтобы пропустить проверки, шлюз пересылает без изменений и заголовок `anthropic-beta`, и поле тела `safeguards`, поскольку [они передаются в паре](https://code.claude.com/docs/ru/llm-gateway-protocol.md#beta-header-and-body-field-pairs). В [формате Amazon Bedrock InvokeModel](https://code.claude.com/docs/ru/llm-gateway-protocol.md#api-formats) шлюз вместо заголовка пересылает поле тела `anthropic_beta`.

35* **Ответы**: шлюз возвращает ответы и события потоковой передачи, не удаляя поля и не переписывая идентификаторы использования инструментов. Чтобы пропустить результаты проверок, он сохраняет поле `safeguard_results`.

36 

37Шлюз, пропускающий трафик таким образом, продолжает работать с этой функцией и с будущими. Новые сессии затем снова используют проверки сервера.

33 38 

34Если вы уже знаете, что ваш шлюз не может предоставить проверки сервера, скажите Claude Code не запрашивать их там, установив `CLAUDE_CODE_AUTO_MODE_SERVER` на `0` перед началом сеанса в вашей оболочке или в [ключе параметров `env`](https://code.claude.com/docs/ru/settings-reference#env):39Если вы уже знаете, что ваш шлюз не может предоставить проверки сервера, скажите Claude Code не запрашивать их там, установив `CLAUDE_CODE_AUTO_MODE_SERVER` на `0` перед началом сеанса в вашей оболочке или в [ключе параметров `env`](https://code.claude.com/docs/ru/settings-reference#env):

35 40 

channels.md +1 −1

Details

354| Функция | Что она делает | Хорошо для |354| Функция | Что она делает | Хорошо для |

355| - | - | - |355| - | - | - |

356| [Облачные сессии](https://code.claude.com/docs/ru/claude-code-on-the-web.md) | Запускает задачи в свежей облачной песочнице, клонированной из GitHub | Делегирование самостоятельной асинхронной работы, которую вы проверяете позже |356| [Облачные сессии](https://code.claude.com/docs/ru/claude-code-on-the-web.md) | Запускает задачи в свежей облачной песочнице, клонированной из GitHub | Делегирование самостоятельной асинхронной работы, которую вы проверяете позже |

357| [Claude в Slack](https://code.claude.com/docs/ru/slack.md) | Создает облачный сеанс из упоминания `@Claude` в канале или потоке | Запуск задач непосредственно из контекста командного разговора |357| [Claude в Slack](https://code.claude.com/docs/ru/slack.md) | Создает облачную сессию из упоминания `@Claude` в канале или потоке | Запуск задач непосредственно из командного диалога |

358| Стандартный [MCP-сервер](https://code.claude.com/docs/ru/mcp.md) | Claude запрашивает его во время задачи; ничего не отправляется в сеанс | Предоставление Claude доступа по требованию для чтения или запроса системы |358| Стандартный [MCP-сервер](https://code.claude.com/docs/ru/mcp.md) | Claude запрашивает его во время задачи; ничего не отправляется в сеанс | Предоставление Claude доступа по требованию для чтения или запроса системы |

359| [Remote Control](https://code.claude.com/docs/ru/remote-control.md) | Вы управляете своим локальным сеансом из claude.ai или мобильного приложения Claude | Управление активным сеансом, пока вас нет за столом |359| [Remote Control](https://code.claude.com/docs/ru/remote-control.md) | Вы управляете своим локальным сеансом из claude.ai или мобильного приложения Claude | Управление активным сеансом, пока вас нет за столом |

360 360 

Details

350 350 

351### Доставка политики в сессии Claude Desktop351### Доставка политики в сессии Claude Desktop

352 352 

353Claude Desktop запускает свои вкладки Cowork и Code, а также Chat, если вы его включите, во встроенных сессиях Claude Code и отправляет их запросы к модели через шлюз. Он передаёт политику каждой из этих сессий, сформированную из конфигурации, которую шлюз предоставляет ему по адресу `/user/bootstrap`: список разрешённых моделей, отключённые инструменты и список разрешённых адресов для исходящего трафика, полученные из блока `cli` или `code` сопоставленной политики, а также [оверлей `desktop`](https://code.claude.com/docs/ru/claude-apps-gateway-config#claude-desktop-overlay).353Claude Desktop запускает свои вкладки во встроенных сессиях Claude Code и отправляет их запросы к модели через шлюз. Он передаёт политику каждой из этих сессий, сформированную из конфигурации, которую шлюз предоставляет ему по адресу `/user/bootstrap`. Эта конфигурация содержит список разрешённых моделей, отключённые инструменты и список разрешённых адресов для исходящего трафика, полученные из блока `cli` или `code` сопоставленной политики, а также [оверлей `desktop`](https://code.claude.com/docs/ru/claude-apps-gateway-config#claude-desktop-overlay).

354 354 

355Другие ключи блока, такие как хуки, `env` и правила разрешений с ограниченной областью действия вроде `Bash(npm *)`, доходят до клиентов, которые входят через `/login`. Если они находятся в `code`, они также доходят до сессии вкладки Code, когда выполняются [условия для вкладки Code](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#apply-code-settings-in-the-code-tab). До сессий Cowork и Chat они не доходят. Claude Desktop читает URL шлюза из своей собственной управляемой конфигурации и выполняет вход по собственной схеме, независимо от ключей `forceLoginMethod` и `forceLoginGatewayUrl` из раздела [Задание URL шлюза](#set-the-gateway-url).355Другие ключи блока, такие как хуки, `env` и правила разрешений с ограниченной областью действия вроде `Bash(npm *)`, доходят до клиентов, которые входят через `/login`. Если они находятся в `code`, они также доходят до сессии вкладки Code, когда выполняются [условия для вкладки Code](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#apply-code-settings-in-the-code-tab). До сессий Cowork и Chat они не доходят. Claude Desktop читает URL шлюза из своей собственной управляемой конфигурации и выполняет вход по собственной схеме, независимо от ключей `forceLoginMethod` и `forceLoginGatewayUrl` из раздела [Задание URL шлюза](#set-the-gateway-url).

356 356 


476 476 

477### Подключение Claude Desktop477### Подключение Claude Desktop

478 478 

479[Claude Desktop](https://code.claude.com/docs/ru/desktop.md) подключается к тому же шлюзу через другой ключ MDM: задайте `bootstrapUrl` в [управляемой конфигурации](https://claude.com/docs/third-party/claude-desktop/configuration) Claude Desktop равным `<listen.public_url>/user/bootstrap` и включите политику пользователя с помощью ключа `desktop`. Раздел [Наложение Claude Desktop](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#claude-desktop-overlay) описывает обе части. Требуется Claude Code v2.1.203 или новее на сервере шлюза.479[Claude Desktop](https://code.claude.com/docs/ru/desktop.md) подключается к тому же шлюзу через другой ключ MDM: задайте `bootstrapUrl` в [управляемой конфигурации](https://claude.com/docs/third-party/claude-desktop/configuration) Claude Desktop равным `<listen.public_url>/user/bootstrap` и включите политику пользователя с помощью ключа `desktop`. Раздел [Наложение Claude Desktop](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#claude-desktop-overlay) описывает обе части. Требуется Claude Code v2.1.203 или новее на сервере шлюза. После подключения Claude Desktop отправляет запросы к модели из каждой включённой вкладки через шлюз.

480 480 

481Claude Desktop выполняет вход разработчика через провайдера удостоверений шлюза с тем же шагом SSO в браузере, а затем получает свою конфигурацию от шлюза, а не от Anthropic. Доступ к моделям и политика подчиняются тем же правилам для групп, что и в CLI. Разработчик, который использует и CLI, и Claude Desktop, входит в каждый из них отдельно; сессия шлюза между ними не разделяется.481Claude Desktop выполняет вход разработчика через провайдера удостоверений шлюза с тем же шагом SSO в браузере, а затем получает свою конфигурацию от шлюза, а не от Anthropic. Доступ к моделям и политика подчиняются тем же правилам для групп, что и в CLI. Разработчик, который использует и CLI, и Claude Desktop, входит в каждый из них отдельно; сессия шлюза между ними не разделяется.

482 482 

483После подключения Claude Desktop отправляет запросы к модели из каждой включённой вкладки через шлюз. По умолчанию он показывает вкладки Cowork и Code. Чтобы сделать доступной также вкладку Chat, задайте `chatTabEnabled` равным `true` в [блоке `desktop`](https://code.claude.com/docs/ru/claude-apps-gateway-config#claude-desktop-overlay) политики на шлюзе с Claude Code v2.1.227 или новее. Если Cowork включён, Claude Desktop в этом случае показывает Chat и Cowork вместе в одной вкладке.

484 

485### Конвейеры CI и удалённые машины483### Конвейеры CI и удалённые машины

486 484 

487Схемы с сервисными токенами для автоматических конвейеров не существует. Вход в шлюз всегда использует поток авторизации устройства через браузер, поэтому задача CI, в которой нет разработчика для подтверждения входа, не может пройти аутентификацию; настройте такие задачи на прямую работу с вашим провайдером. Развёртывайте `forceLoginMethod` и `forceLoginGatewayUrl` на машинах разработчиков и не задавайте их на раннерах CI. На машине, управляемые настройки которой задают эти ключи, сессия, проходящая аутентификацию с помощью `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` или `apiKeyHelper`, [завершается при запуске](https://code.claude.com/docs/ru/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in).485Схемы с сервисными токенами для автоматических конвейеров не существует. Вход в шлюз всегда использует поток авторизации устройства через браузер, поэтому задача CI, в которой нет разработчика для подтверждения входа, не может пройти аутентификацию; настройте такие задачи на прямую работу с вашим провайдером. Развёртывайте `forceLoginMethod` и `forceLoginGatewayUrl` на машинах разработчиков и не задавайте их на раннерах CI. На машине, управляемые настройки которой задают эти ключи, сессия, проходящая аутентификацию с помощью `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN` или `apiKeyHelper`, [завершается при запуске](https://code.claude.com/docs/ru/errors.md#administrator-policy-requires-a-cloud-gateway-sign-in).


523| Пересылка вывода (Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform, Microsoft Foundry, Anthropic) | Доступно | С переводом модели для каждого вышестоящего уровня и отказоустойчивостью. Вышестоящий уровень Amazon Bedrock использует эндпоинт `bedrock-runtime` и цепь учётных данных AWS по умолчанию. [Вышестоящий уровень Amazon Bedrock Mantle](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#amazon-bedrock-mantle-endpoint) требует Claude Code v2.1.283 или более поздней версии на сервере шлюза, а [вышестоящий уровень Claude Platform on AWS](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#claude-platform-on-aws) требует v2.1.198 или более поздней версии. |521| Пересылка вывода (Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform, Microsoft Foundry, Anthropic) | Доступно | С переводом модели для каждого вышестоящего уровня и отказоустойчивостью. Вышестоящий уровень Amazon Bedrock использует эндпоинт `bedrock-runtime` и цепь учётных данных AWS по умолчанию. [Вышестоящий уровень Amazon Bedrock Mantle](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#amazon-bedrock-mantle-endpoint) требует Claude Code v2.1.283 или более поздней версии на сервере шлюза, а [вышестоящий уровень Claude Platform on AWS](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#claude-platform-on-aws) требует v2.1.198 или более поздней версии. |

524| Контекстное окно на 1M токенов | Доступно | Модели Fable, Sonnet 5 и более поздние, а также Opus 4.7 и более поздние по умолчанию работают с контекстным окном 1M; см. [Расширенный контекст](https://code.claude.com/docs/ru/model-config.md#extended-context). Окно 1M по умолчанию для моделей Fable и Opus требует Claude Code v2.1.287 или более поздней версии на компьютере разработчика |522| Контекстное окно на 1M токенов | Доступно | Модели Fable, Sonnet 5 и более поздние, а также Opus 4.7 и более поздние по умолчанию работают с контекстным окном 1M; см. [Расширенный контекст](https://code.claude.com/docs/ru/model-config.md#extended-context). Окно 1M по умолчанию для моделей Fable и Opus требует Claude Code v2.1.287 или более поздней версии на компьютере разработчика |

525| Доступ к модели и управляемые настройки по группе IdP | Доступно | Доступ к модели применяется на стороне сервера; управляемые настройки доставляются для каждой группы IdP и применяются CLI на [уровне управляемых настроек](https://code.claude.com/docs/ru/settings.md#settings-precedence) |523| Доступ к модели и управляемые настройки по группе IdP | Доступно | Доступ к модели применяется на стороне сервера; управляемые настройки доставляются для каждой группы IdP и применяются CLI на [уровне управляемых настроек](https://code.claude.com/docs/ru/settings.md#settings-precedence) |

526| Claude Desktop | Доступно с согласия | Шлюз обслуживает конфигурацию Claude Desktop по адресу `/user/bootstrap` после того, как политика [согласится с ключом `desktop`](https://code.claude.com/docs/ru/claude-apps-gateway-config#claude-desktop-overlay), и Claude Desktop отправляет свои запросы к модели через шлюз. Чтобы включить Chat, см. [Подключение Claude Desktop](#connect-claude-desktop). Требует Claude Code v2.1.203 или более поздней версии на сервере шлюза. |524| Claude Desktop | Доступно с согласия | Включите политику с помощью [ключа `desktop`](https://code.claude.com/docs/ru/claude-apps-gateway-config#claude-desktop-overlay). Требует Claude Code v2.1.203 или более поздней версии на сервере шлюза. |

527| Телеметрия fan-out (OTLP/HTTP) | Доступно | Идентификация-отмечена для каждого экспорта; оба кодирования protobuf и JSON |525| Телеметрия fan-out (OTLP/HTTP) | Доступно | Идентификация-отмечена для каждого экспорта; оба кодирования protobuf и JSON |

528| Поставщики идентификации OIDC | Доступно | Любой совместимый с OIDC IdP; шлюз запускает стандартное обнаружение OIDC и поток авторизации-кода. См. [Настройка поставщика идентификации](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md#identity-provider-setup) для конфигурации для каждого IdP |526| Поставщики идентификации OIDC | Доступно | Любой совместимый с OIDC IdP; шлюз запускает стандартное обнаружение OIDC и поток авторизации-кода. См. [Настройка поставщика идентификации](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md#identity-provider-setup) для конфигурации для каждого IdP |

529| Ограничения расходов для каждого пользователя и группы | Доступно | См. [Ограничения расходов](https://code.claude.com/docs/ru/claude-apps-gateway-spend-limits.md) |527| Ограничения расходов для каждого пользователя и группы | Доступно | См. [Ограничения расходов](https://code.claude.com/docs/ru/claude-apps-gateway-spend-limits.md) |


540| Мультитенантность (несколько издателей OIDC) | Не поддерживается | Один издатель на шлюз. Запустите отдельные экземпляры |538| Мультитенантность (несколько издателей OIDC) | Не поддерживается | Один издатель на шлюз. Запустите отдельные экземпляры |

541| Сервер Windows | Не поддерживается | Развёртывайте на Linux. macOS только для локальной разработки |539| Сервер Windows | Не поддерживается | Развёртывайте на Linux. macOS только для локальной разработки |

542| Helm chart | Недоступно | Шлюз работает как стандартное развёртывание без состояния; см. [руководство по развёртыванию](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md#kubernetes) |540| Helm chart | Недоступно | Шлюз работает как стандартное развёртывание без состояния; см. [руководство по развёртыванию](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md#kubernetes) |

543| Пользовательский интерфейс администратора | Недоступно | Конфигурация — это файл YAML; переразвёртывайте, чтобы изменить его |541| Пользовательский интерфейс администратора | Только ограничения расходов | В Claude Desktop 4.23118.0 или более поздней версии, [подключённом к шлюзу](#connect-claude-desktop), участники [`admin.admin_groups`](https://code.claude.com/docs/ru/claude-apps-gateway-config#admin) могут управлять ограничениями расходов. Остальная конфигурация — это файл YAML; переразвёртывайте, чтобы изменить её |

544 542 

545## Следующие шаги543## Следующие шаги

546 544 

Details

1651| `reply_tokens` | Нет | По умолчанию `750`. Примерное количество токенов текста в каждом заготовленном ответе, целое число от 1 до 100000. |1651| `reply_tokens` | Нет | По умолчанию `750`. Примерное количество токенов текста в каждом заготовленном ответе, целое число от 1 до 100000. |

1652| `reply_seconds` | Нет | По умолчанию `9.5`. Сколько времени занимает потоковый ответ, от 0 до 600. `0` отправляет весь ответ сразу. Ответ на непотоковый запрос всегда возвращается сразу. |1652| `reply_seconds` | Нет | По умолчанию `9.5`. Сколько времени занимает потоковый ответ, от 0 до 600. `0` отправляет весь ответ сразу. Ответ на непотоковый запрос всегда возвращается сразу. |

1653 1653 

1654Нагрузочный тест в этом режиме охватывает шлюз, ваш Postgres и всё, что находится перед шлюзом. Он не охватывает лимиты провайдера, его скорость и сетевой путь к нему.1654Нагрузочный тест в этом режиме охватывает шлюз, ваш Postgres и всё, что стоит перед шлюзом. Он не охватывает ограничения, скорость и сетевой путь провайдера, а также ожидание на [ограничении числа одновременных запросов к вышестоящему серверу](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md#concurrent-upstream-requests) каждой реплики. Реплика по-прежнему записывает в лог предупреждение `client requests are open`, когда открытых запросов больше этого ограничения — порога, при котором запросы в рабочей среде начинают ждать.

1655 1655 

1656Запросы к модели не отправляются провайдеру, поэтому загрузка CPU реплики на запрос является оценочной и оказывается ниже, чем в продакшене, где трафик к провайдеру ещё и шифруется. Подтвердите количество реплик небольшим пилотом с реальным провайдером. До v2.1.283 оценка оказывается значительно ниже.1656Запросы к модели не отправляются провайдеру, поэтому загрузка CPU реплики на запрос является оценочной и оказывается ниже, чем в продакшене, где трафик к провайдеру ещё и шифруется. Подтвердите количество реплик небольшим пилотом с реальным провайдером. До v2.1.283 оценка оказывается значительно ниже.

1657 1657 

Details

202>202>

203> Каждый открытый запрос занимает память в процессе шлюза во время потоковой передачи и во время ожидания слота. Даже если оставить лимит равным 256, память перегруженной реплики всё равно растёт, поскольку ожидающие запросы хранят свои тела. Рассчитывайте объём памяти контейнера на число запросов, открытых в пиковый момент, и следите за памятью при изменении лимита. Реплика, у которой заканчивается память, принудительно завершается и обрывает все удерживаемые ею потоки.203> Каждый открытый запрос занимает память в процессе шлюза во время потоковой передачи и во время ожидания слота. Даже если оставить лимит равным 256, память перегруженной реплики всё равно растёт, поскольку ожидающие запросы хранят свои тела. Рассчитывайте объём памяти контейнера на число запросов, открытых в пиковый момент, и следите за памятью при изменении лимита. Реплика, у которой заканчивается память, принудительно завершается и обрывает все удерживаемые ею потоки.

204 204 

205При нагрузочном тестировании с [`load_test_mode`](https://code.claude.com/docs/ru/claude-apps-gateway-config#load_test_mode) запросы не ожидают на этом лимите, но реплика всё равно записывает в лог предупреждение `client requests are open`.

206 

205### Держите `API_TIMEOUT_MS` выше времени до первого байта шлюза207### Держите `API_TIMEOUT_MS` выше времени до первого байта шлюза

206 208 

207Если вы уменьшаете [`API_TIMEOUT_MS`](https://code.claude.com/docs/ru/network-config#streaming-idle-watchdogs), чтобы быстрее повторять попытку для запроса без ответа, держите его значение выше времени, которое требуется шлюзу для отправки первых байтов потокового ответа. Запрос, ожидающий дольше, завершается по таймауту, как и каждая повторная попытка, ожидающая столько же, пока ход не завершится с `Request timed out`, если его раньше не завершит [крайний срок первого байта](#retry-an-unanswered-request-sooner-with-the-first-byte-deadline).209Если вы уменьшаете [`API_TIMEOUT_MS`](https://code.claude.com/docs/ru/network-config#streaming-idle-watchdogs), чтобы быстрее повторять попытку для запроса без ответа, держите его значение выше времени, которое требуется шлюзу для отправки первых байтов потокового ответа. Запрос, ожидающий дольше, завершается по таймауту, как и каждая повторная попытка, ожидающая столько же, пока ход не завершится с `Request timed out`, если его раньше не завершит [крайний срок первого байта](#retry-an-unanswered-request-sooner-with-the-first-byte-deadline).

Details

628 628 

629* [Справочник конфигурации](https://code.claude.com/docs/ru/claude-apps-gateway-config.md): каждая опция `gateway.yaml`, включая `managed.policies` и `telemetry`629* [Справочник конфигурации](https://code.claude.com/docs/ru/claude-apps-gateway-config.md): каждая опция `gateway.yaml`, включая `managed.policies` и `telemetry`

630* [Развёртывание и операции](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md): настройка IdP, проверки здоровья, ротация секрета JWT, обновления и модель безопасности630* [Развёртывание и операции](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md): настройка IdP, проверки здоровья, ротация секрета JWT, обновления и модель безопасности

631* [Режим нагрузочного тестирования](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#load_test_mode): нагрузочное тестирование шлюза без обращения к поставщику модели

631* [Обзор Claude apps gateway](https://code.claude.com/docs/ru/claude-apps-gateway): быстрый старт и подключение разработчиков632* [Обзор Claude apps gateway](https://code.claude.com/docs/ru/claude-apps-gateway): быстрый старт и подключение разработчиков

632* [Примеры AWS для Claude apps gateway](https://github.com/aws-samples/anthropic-on-aws/tree/main/claude-apps-gateway): примеры развёртывания, поддерживаемые AWS, охватывающие диапазон сред клиентов633* [Примеры AWS для Claude apps gateway](https://github.com/aws-samples/anthropic-on-aws/tree/main/claude-apps-gateway): примеры развёртывания, поддерживаемые AWS, охватывающие диапазон сред клиентов

Details

316 316 

317* [Справочник конфигурации](https://code.claude.com/docs/ru/claude-apps-gateway-config.md): каждый параметр `gateway.yaml`, включая `managed.policies` и `telemetry`317* [Справочник конфигурации](https://code.claude.com/docs/ru/claude-apps-gateway-config.md): каждый параметр `gateway.yaml`, включая `managed.policies` и `telemetry`

318* [Развертывание и операции](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md): настройка IdP, проверки здоровья, ротация секрета JWT, обновления и модель безопасности318* [Развертывание и операции](https://code.claude.com/docs/ru/claude-apps-gateway-deploy.md): настройка IdP, проверки здоровья, ротация секрета JWT, обновления и модель безопасности

319* [Режим нагрузочного тестирования](https://code.claude.com/docs/ru/claude-apps-gateway-config.md#load_test_mode): нагрузочное тестирование шлюза без обращения к поставщику модели

319* [Обзор Claude apps gateway](https://code.claude.com/docs/ru/claude-apps-gateway): быстрый старт и подключение разработчиков320* [Обзор Claude apps gateway](https://code.claude.com/docs/ru/claude-apps-gateway): быстрый старт и подключение разработчиков

Details

95Ограничьте проект одним потоком работы, который вы будете постоянно пополнять, например всем, что требуется для поддержания одного API в пределах его целевой задержки. [Когда использовать проект](#when-to-use-a-project) содержит больше примеров. Затем заполните поля диалогового окна:95Ограничьте проект одним потоком работы, который вы будете постоянно пополнять, например всем, что требуется для поддержания одного API в пределах его целевой задержки. [Когда использовать проект](#when-to-use-a-project) содержит больше примеров. Затем заполните поля диалогового окна:

96 96 

97* **Name**: как проект отображается в списке **Projects**.97* **Name**: как проект отображается в списке **Projects**.

98* **Goal** (опционально): одна строка того, что вы пытаетесь сделать, например "Держать p95 задержку API ниже 200 мс". Claude в разговоре работает над этим. Без цели Claude работает из задач, которые вы отправляете, и вы можете добавить цель позже в **Project settings > General**.98* **What do you want to work on?** (опционально): одна строка, которая становится целью проекта, например «Держать p95 задержку API ниже 200 мс». Claude в диалоге работает над ее достижением. Без цели Claude работает на основе задач, которые вы отправляете, и вы можете добавить цель позже в **Project settings > General**.

99* **Context** (опционально): репозитории GitHub, над которыми работает этот проект, плюс любые файлы, папки или папки Google Drive, которые потоки должны читать. Нажмите **Add** для каждого. Добавьте репозитории, которые нужны большинству задач, а не каждый, который работа может затронуть; [Решение, какие репозитории добавить](#decide-which-repositories-to-add) охватывает выбор, и вы можете добавить больше позже в **Project settings > Environment**.99* **Context** (опционально): репозитории GitHub, над которыми работает этот проект, плюс любые файлы, папки или папки Google Drive, которые потоки должны читать. Нажмите **Add** для каждого. Добавьте репозитории, которые нужны большинству задач, а не каждый, который работа может затронуть; [Решение, какие репозитории добавить](#decide-which-repositories-to-add) охватывает выбор, и вы можете добавить больше позже в **Project settings > Environment**.

100 100 

101Постоянные правила того, как потоки должны работать, идут в [инструкции проекта](#give-a-project-standing-context), которые вы устанавливаете после создания проекта.101Постоянные правила того, как потоки должны работать, идут в [инструкции проекта](#give-a-project-standing-context), которые вы устанавливаете после создания проекта.


388| Plugins | Plugins | Plugins, которые загружаются в каждый новый поток |388| Plugins | Plugins | Plugins, которые загружаются в каждый новый поток |

389| Usage | Usage | [Использование токенов](#usage-and-cost) по потокам и по моделям |389| Usage | Usage | [Использование токенов](#usage-and-cost) по потокам и по моделям |

390| Memory | Memory | Файлы [памяти](#give-a-project-standing-context) проекта |390| Memory | Memory | Файлы [памяти](#give-a-project-standing-context) проекта |

391| Auto-continue when usage limits reset | General | Продолжает ли поток или диалог проекта, который [останавливается на лимите использования](#usage-limit-reached), работу самостоятельно, когда лимит сбрасывается. Включено по умолчанию. |

391| Restart Claude | General | Перезапускает разговор проекта, когда [Claude перестает отвечать там](#claude-hasnt-responded) |392| Restart Claude | General | Перезапускает разговор проекта, когда [Claude перестает отвечать там](#claude-hasnt-responded) |

392| Pause, Archive, Delete | General | Останавливает, скрывает или удаляет проект; см. [Пауза, архивирование или удаление проекта](#pause-archive-or-delete-a-project) |393| Pause, Archive, Delete | General | Останавливает, скрывает или удаляет проект; см. [Пауза, архивирование или удаление проекта](#pause-archive-or-delete-a-project) |

393 394 


403 404 

404Использование проекта считается против тех же [лимитов плана](https://code.claude.com/docs/ru/errors.md#youve-hit-your-session-limit), что и ваши другие сеансы Claude Code, и проект не может потратить больше этих лимитов самостоятельно.405Использование проекта считается против тех же [лимитов плана](https://code.claude.com/docs/ru/errors.md#youve-hit-your-session-limit), что и ваши другие сеансы Claude Code, и проект не может потратить больше этих лимитов самостоятельно.

405 406 

406Поток, который достигает лимита вашего плана, ждет и продолжает самостоятельно, когда лимит сбрасывается, поэтому работа, которую вы оставили работающей, начинает использовать ваше следующее окно использования без сообщения от вас. [Поток достиг лимита использования](#usage-limit-reached) охватывает то, что вы видите, как его остановить и один случай, который не ждет.407Поток, который останавливается на лимите вашего плана, ждет и по умолчанию продолжает работу самостоятельно, когда лимит сбрасывается. Тогда его работа засчитывается в ваше следующее окно использования. Чтобы потоки не продолжали работу, см. [Поток достиг лимита использования](#usage-limit-reached).

407 408 

408Работа выходит за пределы лимитов вашего плана только если вы включили [usage credits](https://code.claude.com/docs/ru/costs.md#add-usage-credits-to-your-subscription) для вашего аккаунта. Поток не может включить их для вас.409Работа выходит за пределы лимитов вашего плана только если вы включили [usage credits](https://code.claude.com/docs/ru/costs.md#add-usage-credits-to-your-subscription) для вашего аккаунта. Поток не может включить их для вас.

409 410 


484 485 

485### Поток достиг лимита использования486### Поток достиг лимита использования

486 487 

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

488 489 

489Пока поток ждет, он показывает **Service is busy** с "Claude is still retrying and will continue automatically." Вам не нужно ничего делать, чтобы работа продолжилась. Если вы предпочитаете, чтобы он не использовал ваше следующее окно использования, нажмите **Stop** в потоке или [приостановите проект](#pause-archive-or-delete-a-project), чтобы поставить на паузу все потоки. [Ошибки лимита использования](https://code.claude.com/docs/ru/errors.md#youve-hit-your-session-limit) объясняют лимиты и когда они сбрасываются.490Чтобы поток или диалог не продолжил работу во время сброса, указанное в его сообщении, отключите **Auto-continue when usage limits reset** в [**Project settings > General**](#project-settings-reference) до этого момента. Настройка действует для всего проекта, а не только для потока, который вы просматриваете. Чтобы продолжить при отключенной настройке, отправьте потоку или диалогу сообщение после сброса. [Ошибки лимита использования](https://code.claude.com/docs/ru/errors.md#youve-hit-your-session-limit) объясняют лимиты и когда они сбрасываются.

490 491 

491### Требуются дополнительные usage credits492### Требуются дополнительные usage credits

492 493 


509| "Unable to connect to repository" с "Claude couldn't access your repository or environment" | Ваш аккаунт GitHub требует доступ на push к репозиторию, и среда должна все еще существовать. Проверьте оба в **Project settings > Environment**, затем повторите |510| "Unable to connect to repository" с "Claude couldn't access your repository or environment" | Ваш аккаунт GitHub требует доступ на push к репозиторию, и среда должна все еще существовать. Проверьте оба в **Project settings > Environment**, затем повторите |

510| "Couldn't show the setup proposal" | Приложение, которое у вас открыто, старше, чем **Setup recommendations**, которые Claude отправил. Обновите страницу или перезагрузите настольное приложение, или попросите Claude предложить настройку снова |511| "Couldn't show the setup proposal" | Приложение, которое у вас открыто, старше, чем **Setup recommendations**, которые Claude отправил. Обновите страницу или перезагрузите настольное приложение, или попросите Claude предложить настройку снова |

511| "The project's environment was removed" | Выберите другую среду в **Project settings > Environment**; изменение применяется к новым потокам |512| "The project's environment was removed" | Выберите другую среду в **Project settings > Environment**; изменение применяется к новым потокам |

512| "Setup script failed" | Нажмите **Edit setup script** на ошибке, исправьте скрипт в среде, затем отправьте другое сообщение. [Setup script failed](https://code.claude.com/docs/ru/web-quickstart.md#setup-script-failed) перечисляет общие причины |513| "Setup script failed" | В разделе [Setup script failed](https://code.claude.com/docs/ru/web-quickstart.md#setup-script-failed) перечислены распространенные причины. Исправьте скрипт в среде, затем попросите Claude в диалоге проекта выполнить задачу в новом потоке, чтобы скрипт запустился снова |

513| "Claude ran out of context on this turn" | Поток заполнил свое контекстное окно. Если сообщение говорит, что поток продолжает в свежем сеансе, он продолжает самостоятельно; в противном случае попросите Claude в разговоре проекта запустить новый поток для оставшейся работы |514| "Claude ran out of context on this turn" | Поток заполнил свое контекстное окно. Если сообщение говорит, что поток продолжает в свежем сеансе, он продолжает самостоятельно; в противном случае попросите Claude в разговоре проекта запустить новый поток для оставшейся работы |

514| "Couldn't start in" с последующим названием вашей папки | Вы разрешили потоку работать на вашем компьютере, но сеанс не смог там начать. Когда строка под сообщением дает причину, исправьте это, затем попросите Claude запустить задачу снова |515| "Couldn't start in" с последующим названием вашей папки | Вы разрешили потоку работать на вашем компьютере, но сеанс не смог там начать. Когда строка под сообщением дает причину, исправьте это, затем попросите Claude запустить задачу снова |

515| "Claude is out of date on your device" | Компьютер, который вы выбрали для запуска потока, имеет версию Claude Code старше v2.1.280. Обновите Claude Code там или обновите настольное приложение, если это то, что подключает папку, затем попросите Claude запустить задачу снова |516| "Claude is out of date on your device" | Компьютер, который вы выбрали для запуска потока, имеет версию Claude Code старше v2.1.280. Обновите Claude Code там или обновите настольное приложение, если это то, что подключает папку, затем попросите Claude запустить задачу снова |

Details

120 120 

121Выберите **Add secret** (в настройках администратора эта кнопка называется **Add**) и заполните форму. Оставьте **Secret type** по умолчанию, **Bearer**, для API-ключа, который передаётся в заголовке запроса, и заполните эти поля:121Выберите **Add secret** (в настройках администратора эта кнопка называется **Add**) и заполните форму. Оставьте **Secret type** по умолчанию, **Bearer**, для API-ключа, который передаётся в заголовке запроса, и заполните эти поля:

122 122 

123* **Name**: метка для секрета, например `Internal billing API`

124* **Allowed websites**: хосты API, например `api.example.com`. Префикс `*.` соответствует любому поддомену123* **Allowed websites**: хосты API, например `api.example.com`. Префикс `*.` соответствует любому поддомену

125* **Custom headers**: одна строка для заголовка, который несёт ключ. Строка начинается с `Authorization` в качестве **Name** заголовка и `Bearer` в качестве его **Prefix**; вставьте сам ключ в качестве **Value**. Для заголовка вроде `X-Api-Key`, который принимает значение без префикса, измените имя и очистите префикс124* **Custom headers**: одна строка для заголовка, который несёт ключ. В строке уже указаны `Authorization` в качестве **Header name** и `Bearer` в качестве **Prefix**; вставьте сам ключ в качестве **Value**. Для заголовка вроде `X-Api-Key`, который принимает значение без префикса, измените имя и очистите префикс

126 125 

127Для API, который использует другой способ аутентификации, выберите другой **Secret type**. Это тот же список, который [Claude Tag](https://claude.com/docs/claude-tag/overview), интеграция со Slack для планов Team и Enterprise, предлагает для [соединений](https://claude.com/docs/claude-tag/admins/add-connections).126Для API, который использует другой способ аутентификации, выберите другой **Secret type**. Это тот же список, который [Claude Tag](https://claude.com/docs/claude-tag/overview), интеграция со Slack для планов Team и Enterprise, предлагает для [соединений](https://claude.com/docs/claude-tag/admins/add-connections).

128 127 


137Если вы используете план Team или Enterprise и не имеете [роли администратора организации](#requirements), форма **Add secret** принимает один секрет для одного хоста. Выберите [строку **Network secrets**](#add-a-credential) вашей среды, а затем **Add secret**. Заполните эти поля и нажмите кнопку **Add secret** в форме:136Если вы используете план Team или Enterprise и не имеете [роли администратора организации](#requirements), форма **Add secret** принимает один секрет для одного хоста. Выберите [строку **Network secrets**](#add-a-credential) вашей среды, а затем **Add secret**. Заполните эти поля и нажмите кнопку **Add secret** в форме:

138 137 

139* **Host**: единственный хост, который получает секрет, например `api.example.com`. Форма не принимает подстановочный знак `*.`138* **Host**: единственный хост, который получает секрет, например `api.example.com`. Форма не принимает подстановочный знак `*.`

140* **Name**: необязательная метка для секрета139* **Secret type**: **Token** для ключа, который передаётся в заголовке запроса, или **Username and password**. Для токена вставьте ключ в поле **Token**. Для заголовка, отличного от `Authorization`, например `X-Api-Key`, укажите его имя в поле **Header**

141* **Secret type**: **Token** для ключа, который передаётся в заголовке запроса, или **Username and password**. Для токена вставьте ключ в качестве **Value**

142 140 

143#### Какие запросы получают секрет141#### Какие запросы получают секрет

144 142 


445 443 

446При написании скрипта установки нужно учитывать четыре ограничения:444При написании скрипта установки нужно учитывать четыре ограничения:

447 445 

448* **Выход с нулём**: если скрипт выходит с ненулевым значением, сеанс не запускается. Добавьте `|| true` к некритичным командам, чтобы перебой установки не блокировал сеанс.446* **Выход с нулём**: если скрипт завершается с ненулевым кодом, сессия [не запускается](https://code.claude.com/docs/ru/web-quickstart.md#setup-script-failed) или запускается без того, что скрипту не удалось установить. Добавьте `|| true` к некритичным командам, чтобы случайный сбой установки не приводил к сбою скрипта.

449* **Завершение в течение пяти минут**: держите общее время выполнения скрипта примерно под пять минут, чтобы [кэш среды](#environment-caching) мог построиться. Когда установка занимает больше времени, среда не кэшируется. Запускайте независимые установки параллельно с `&` и `wait`, и переместите любую одиночную загрузку, которая не подходит, в [SessionStart hook](#setup-scripts-vs-sessionstart-hooks), который запускает её в фоне. Если новые сеансы зависают или не удаются во время установки, смотрите [New sessions hang or time out during setup](https://code.claude.com/docs/ru/web-quickstart.md#new-sessions-hang-or-time-out-during-setup).447* **Завершение в течение пяти минут**: держите общее время выполнения скрипта примерно под пять минут, чтобы [кэш среды](#environment-caching) мог построиться. Когда установка занимает больше времени, среда не кэшируется. Запускайте независимые установки параллельно с `&` и `wait`, и переместите любую одиночную загрузку, которая не подходит, в [SessionStart hook](#setup-scripts-vs-sessionstart-hooks), который запускает её в фоне. Если новые сеансы зависают или не удаются во время установки, смотрите [New sessions hang or time out during setup](https://code.claude.com/docs/ru/web-quickstart.md#new-sessions-hang-or-time-out-during-setup).

450* **Сетевой доступ для установок**: установки пакетов должны достичь реестров. Уровень **Trusted** по умолчанию охватывает [общие реестры пакетов](#default-allowed-domains), включая npm, PyPI, RubyGems и crates.io; с **None** сетевым доступом установки не удаются.448* **Сетевой доступ для установок**: установки пакетов должны достичь реестров. Уровень **Trusted** по умолчанию охватывает [общие реестры пакетов](#default-allowed-domains), включая npm, PyPI, RubyGems и crates.io; с **None** сетевым доступом установки не удаются.

451* **Переменные среды ещё не заданы**: скрипт запускается до того, как сессия задаёт [переменные окружения](#set-environment-variables) среды. Задавайте все значения, которые нужны скрипту, в самом скрипте.449* **Переменные среды ещё не заданы**: скрипт запускается до того, как сессия задаёт [переменные окружения](#set-environment-variables) среды. Задавайте все значения, которые нужны скрипту, в самом скрипте.

Details

25 25 

26## Используйте REVIEW\.md для правил, относящихся только к ревью26## Используйте REVIEW\.md для правил, относящихся только к ревью

27 27 

28`REVIEW.md` — это файл в корне репозитория, который адаптирует Code Review к вашему репозиторию. Вы также можете добавить `REVIEW.md` в подкаталог, чтобы добавить проверки для изменений по этому пути в дополнение к корневому файлу.28`REVIEW.md` — это файл в корне репозитория, который адаптирует Code Review к вашему репозиторию. В [защищённой ветке](#what-a-review-reads-for-each-branch-setup) вы также можете добавить `REVIEW.md` в [большинство подкаталогов](#when-a-subdirectory-review-md-doesnt-apply), чтобы добавить проверки для изменений в этом подкаталоге в дополнение к корневому файлу.

29 29 

30Агенты, которые находят проблемы, и агенты, которые их проверяют, получают его содержимое как инструкции ревью вашего репозитория вместе со стандартными рекомендациями Code Review. Этап, на котором пишется итоговое ревью, обращается к нему, прежде чем определить серьёзность и написать сводку.30Агенты, которые находят проблемы, и агенты, которые их проверяют, получают его содержимое как инструкции ревью вашего репозитория вместе со стандартными рекомендациями Code Review. Этап, на котором пишется итоговое ревью, обращается к нему, прежде чем определить серьёзность и написать сводку.

31 31 


46>46>

47> Сервис Code Review и локальная [команда `/code-review`](https://code.claude.com/docs/ru/code-review-local) — это два отдельных инструмента, и они читают разные файлы. Сервис читает и `CLAUDE.md`, и `REVIEW.md`. Команда `/code-review`, которую вы запускаете в сессии Claude Code на своём компьютере, читает ваши файлы `CLAUDE.md`, но не `REVIEW.md`. Указания, которые должны применяться в обоих местах, помещайте в `CLAUDE.md`, а `REVIEW.md` оставьте для правил, специфичных для ревью pull request.47> Сервис Code Review и локальная [команда `/code-review`](https://code.claude.com/docs/ru/code-review-local) — это два отдельных инструмента, и они читают разные файлы. Сервис читает и `CLAUDE.md`, и `REVIEW.md`. Команда `/code-review`, которую вы запускаете в сессии Claude Code на своём компьютере, читает ваши файлы `CLAUDE.md`, но не `REVIEW.md`. Указания, которые должны применяться в обоих местах, помещайте в `CLAUDE.md`, а `REVIEW.md` оставьте для правил, специфичных для ревью pull request.

48 48 

49### Когда REVIEW\.md в подкаталоге не применяется

50 

51Code Review не применяет `REVIEW.md`, расположенный в подкаталоге с одним из следующих имён или ниже него, независимо от содержимого подкаталога. Имя подкаталога совпадает только целиком, в любом регистре и на любой глубине, поэтому `Tests` совпадает, а `integration-tests` — нет:

52 

53* **Тесты**: `test`, `tests`, `__tests__`, `testdata`, `fixtures`, `__fixtures__`, `golden`, `corpus`, `snapshots`, `__snapshots__`

54* **Примеры**: `example`, `examples`, `sample`, `samples`, `demo`, `demos`

55* **Сгенерированный код**: `generated`

56* **Сторонний код**: `vendor`, `third_party`, `third-party`, `thirdparty`, `node_modules`, `bower_components`, `external`, `extern`, `deps`, `godeps`, `pods`, `carthage`, `site-packages`, `contrib`

57 

58Размещайте проверки для таких подкаталогов в корневом `REVIEW.md` или в `REVIEW.md` родительского подкаталога, если ни этот родительский подкаталог, ни что-либо выше него не входит в список.

59 

60Остальные файлы `REVIEW.md` в подкаталогах на путях, которые изменяет pull request, имеют общее ограничение в 150 000 байт, не считая корневого файла. Если [check run](https://code.claude.com/docs/ru/code-review-pull-requests.md#check-run-output) сообщает, что некоторые из них не поместились, сократите файлы, чтобы уложиться в это ограничение.

61 

49### Пример REVIEW\.md62### Пример REVIEW\.md

50 63 

51Этот `REVIEW.md` перекалибровывает серьёзность для бэкенд-сервиса, ограничивает количество мелких замечаний, пропускает сгенерированные файлы и добавляет проверки, специфичные для репозитория.64Этот `REVIEW.md` перекалибровывает серьёзность для бэкенд-сервиса, ограничивает количество мелких замечаний, пропускает сгенерированные файлы и добавляет проверки, специфичные для репозитория.


217 230 

218| Защита ветки | Читаемая копия | Читаемые файлы |231| Защита ветки | Читаемая копия | Читаемые файлы |

219| :- | :- | :- |232| :- | :- | :- |

220| Ветка по умолчанию защищена, и pull request направлен в неё или в ветку, не защищённую ни одним ruleset | Ветка по умолчанию | Корневой файл, включаемые им файлы и файлы подкаталогов |233| Ветка по умолчанию защищена, и pull request направлен в неё или в ветку, не защищённую ни одним ruleset | Ветка по умолчанию | Корневой файл, включаемые им файлы и [большинство файлов подкаталогов](#when-a-subdirectory-review-md-doesnt-apply) |

221| Pull request направлен в другую ветку, защищённую ruleset | Эта базовая ветка | Корневой файл, включаемые им файлы и файлы подкаталогов |234| Pull request направлен в другую ветку, защищённую ruleset | Эта базовая ветка | Корневой файл, включаемые им файлы и [большинство файлов подкаталогов](#when-a-subdirectory-review-md-doesnt-apply) |

222| Ветка по умолчанию не защищена, и у базовой ветки нет правила защиты ни одного из типов | Ветка по умолчанию | Корневой файл |235| Ветка по умолчанию не защищена, и у базовой ветки нет правила защиты ни одного из типов | Ветка по умолчанию | Корневой файл |

223| Code Review не может подтвердить настройки защиты. Сюда относится незащищённая ветка по умолчанию с базовой веткой, у которой есть только классическое правило | Нет | Нет |236| Code Review не может подтвердить настройки защиты. Сюда относится незащищённая ветка по умолчанию с базовой веткой, у которой есть только классическое правило | Нет | Нет |

224 237 

Details

4 4 

5# Тестирование iOS приложений в симуляторе5# Тестирование iOS приложений в симуляторе

6 6 

7> Claude Code Desktop открывает ваше приложение в панели iOS Simulator при сборке, запуске или проверке, с отдельным симулятором для каждой сессии.7> Claude Code Desktop открывает ваше приложение в панели iOS Simulator, когда Claude собирает, запускает или проверяет его.

8 8 

9> [!NOTE]9> [!NOTE]

10>10>


63 63 

64Когда приложение запускается в симуляторе, панель iOS Simulator открывается рядом с беседой. В первый раз, когда Claude использует устройство, приложение для рабочего стола просит вас разрешить это; см. [Предоставьте Claude доступ к устройству](#grant-claude-access-to-a-device). Claude устанавливает приложение, взаимодействует с ним и читает экран, чтобы проверить свои собственные изменения, пока вы наблюдаете.64Когда приложение запускается в симуляторе, панель iOS Simulator открывается рядом с беседой. В первый раз, когда Claude использует устройство, приложение для рабочего стола просит вас разрешить это; см. [Предоставьте Claude доступ к устройству](#grant-claude-access-to-a-device). Claude устанавливает приложение, взаимодействует с ним и читает экран, чтобы проверить свои собственные изменения, пока вы наблюдаете.

65 65 

66Панель симулятора открывается всякий раз, когда Claude запускает приложение в симуляторе, в любой момент сессии. Когда ваш запрос касается просмотра приложения, например "выглядит ли новый экран правильно?", Claude запускает симулятор перед началом работы. После того как Claude исправит ошибку или изменит экран, попросите его проверить изменение: перезапуск приложения снова откроет панель, если она не открыта.66Когда ваш промпт касается просмотра приложения, например «выглядит ли новый экран правильно?», Claude запускает симулятор перед началом работы. После того как Claude исправит ошибку или изменит экран, попросите его проверить изменение.

67 67 

68Панель симулятора показывает то устройство, на котором приложение фактически запустилось. Чтобы протестировать на конкретном устройстве, назовите его в своем запросе, например "запустите его на симуляторе iPhone SE", и Claude будет нацеливаться на это устройство при сборке и запуске.68Панель симулятора показывает то устройство, на котором приложение фактически запустилось. Чтобы протестировать на конкретном устройстве, назовите его в своем запросе, например "запустите его на симуляторе iPhone SE", и Claude будет нацеливаться на это устройство при сборке и запуске.

69 69 


86 86 

87Вы и Claude управляете одним и тем же устройством, поэтому ваши касания изменяют состояние приложения, которое видит Claude. Чтобы Claude проверил конкретный экран, перейдите к нему, касаясь, затем попросите. Пока Claude управляет устройством, панель показывает значок **Claude is using this device** над экраном; воздержитесь от касания до тех пор, пока значок не исчезнет, чтобы результат отражал приложение, а не ваш ввод.87Вы и Claude управляете одним и тем же устройством, поэтому ваши касания изменяют состояние приложения, которое видит Claude. Чтобы Claude проверил конкретный экран, перейдите к нему, касаясь, затем попросите. Пока Claude управляет устройством, панель показывает значок **Claude is using this device** над экраном; воздержитесь от касания до тех пор, пока значок не исчезнет, чтобы результат отражал приложение, а не ваш ввод.

88 88 

89### Свернуть или закрыть панель симулятора

90 

91Вы можете свернуть или закрыть панель симулятора, и в любом случае Claude по-прежнему сможет использовать устройство.

92 

93* Если вы свернёте панель, устройство останется на виду в уменьшенном размере. Чтобы свернуть панель или снова развернуть её, см. [Свернуть панель](https://code.claude.com/docs/ru/desktop.md#minimize-a-pane).

94* Если вы закроете полноразмерную или свёрнутую панель, устройство останется подключённым и запущенным. Чтобы снова показать устройство, нажмите **iOS Simulator** в заголовке окна сессии.

95 

89## Как сессии управляют устройствами96## Как сессии управляют устройствами

90 97 

91Каждое устройство принадлежит сессии, которая его запустила, поэтому [параллельные сессии](https://code.claude.com/docs/ru/desktop.md#work-in-parallel-with-sessions) не делят устройство: то, что вы видите в панели одной сессии, отражает работу этой сессии, а не другой. Переключение сессий на боковой панели переключает вид симулятора вместе с беседой, и переключение обратно возобновляет то же устройство, где оно остановилось. Если Claude работает с более чем одним устройством, каждое открывает свою собственную панель, до 4 на сессию.98Если в вашем промпте не указан симулятор, Claude использует уже запущенный, даже если его открыла другая [параллельная сессия](https://code.claude.com/docs/ru/desktop.md#work-in-parallel-with-sessions). Чтобы у каждой сессии был собственный симулятор, укажите разные симуляторы в промпте каждой сессии.

92 99 

93Claude Code Desktop выключает симуляторы, которые он загрузил, как только они больше не используются: когда вы закрываете приложение, когда вы архивируете сессию или через 10 минут после отключения устройства от его панели. Устройства, которые вы загружаете вне Claude Code Desktop, например в приложении Apple Simulator или в Device Hub, никогда не выключаются автоматически. Чтобы выключить подключённое устройство прямо сейчас, используйте кнопку выключения в панели.100Claude Code Desktop выключает симуляторы, которые он загрузил, как только они больше не используются: когда вы закрываете приложение, когда вы архивируете сессию или через 10 минут после отключения устройства от его панели. Устройства, которые вы загружаете вне Claude Code Desktop, например в приложении Apple Simulator или в Device Hub, никогда не выключаются автоматически. Чтобы выключить подключённое устройство прямо сейчас, используйте кнопку выключения в панели.

94 101 


102 109 

103После того как вы разрешите устройство, действия Claude на нём, такие как касание, ввод текста и снятие скриншотов, выполняются без запросов разрешения, но запуск приложения вы подтверждаете так, как того требует ваш [режим разрешений](#actions-that-follow-your-permission-mode). Они имеют такой же уровень доверия, как если бы вы щёлкали в панели, и они касаются только симулированного устройства, поэтому панель не требует разрешений macOS Accessibility и Screen Recording, которые требует компьютерное управление.110После того как вы разрешите устройство, действия Claude на нём, такие как касание, ввод текста и снятие скриншотов, выполняются без запросов разрешения, но запуск приложения вы подтверждаете так, как того требует ваш [режим разрешений](#actions-that-follow-your-permission-mode). Они имеют такой же уровень доверия, как если бы вы щёлкали в панели, и они касаются только симулированного устройства, поэтому панель не требует разрешений macOS Accessibility и Screen Recording, которые требует компьютерное управление.

104 111 

105Если вы откажетесь, устройство всё ещё загружается и панель всё ещё работает для ваших собственных касаний; только доступ Claude остаётся отключённым. Чтобы передумать позже, нажмите **Let Claude use it** в панели.112Если вы отклоните запрос Claude, устройство не подключается, и Desktop не загружает его. Чтобы использовать устройство самостоятельно:

113 

1141. Нажмите **Attach simulator** в панели.

1152. Нажмите **Continue** на экране разрешений.

1163. Нажмите **Cancel** в появившемся затем диалоговом окне.

117 

118Устройство подключается и работает для ваших собственных касаний, а доступ Claude остаётся отключённым. После этого, чтобы предоставить Claude доступ, нажмите **Let Claude use it** в панели.

106 119 

107### Действия, которые следуют вашему режиму разрешений120### Действия, которые следуют вашему режиму разрешений

108 121 

Details

53gpg --show-keys /usr/share/keyrings/claude-desktop-archive-keyring.asc53gpg --show-keys /usr/share/keyrings/claude-desktop-archive-keyring.asc

54```54```

55 55 

56Отпечаток, который выводит gpg, должен быть `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE`. Если gpg сообщает, что файл не может быть открыт или не содержит действительных данных OpenPGP, загрузка не удалась или вернула неправильное содержимое: подтвердите, что ваша сеть может достичь `downloads.claude.ai`, затем повторно выполните команду загрузки.56Единственный отпечаток, который выводит gpg, должен быть `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE`. Если gpg сообщает, что файл не может быть открыт или не содержит действительных данных OpenPGP, загрузка не удалась или вернула неправильное содержимое. Подтвердите, что ваша сеть может достичь `downloads.claude.ai`, затем повторно выполните команду загрузки.

57 57 

58Зарегистрируйте репозиторий:58Зарегистрируйте репозиторий:

59 59 

Details

160 160 

161## Разрешения для запланированных задач161## Разрешения для запланированных задач

162 162 

163Каждая задача имеет свой режим разрешений, который вы устанавливаете при создании или редактировании задачи. Правила разрешения из `~/.claude/settings.json` также применяются к сессиям запланированных задач. Если задача запускается в [режиме Manual](https://code.claude.com/docs/ru/desktop.md#choose-a-permission-mode) и должна запустить инструмент, для которого у нее нет разрешения, запуск зависает до вашего подтверждения. Чтобы подтвердить его, [найдите сессию этого запуска](#find-a-runs-session) и ответьте там на запрос разрешения.163Каждая задача имеет свой [режим разрешений](https://code.claude.com/docs/ru/desktop.md#choose-a-permission-mode), который вы устанавливаете при создании или редактировании задачи. Разрешающие правила из `~/.claude/settings.json` также применяются к сессиям запланированных задач. Если запуск завис на запросе разрешения, [найдите сессию этого запуска](#find-a-runs-session) и ответьте там на запрос.

164 164 

165Чтобы избежать зависания, нажмите **Run now** после создания задачи, следите за запросами разрешений и выберите "always allow" для каждого. Будущие запуски этой задачи автоматически одобряют те же инструменты без запроса. Вы можете просмотреть и отозвать эти одобрения со страницы деталей задачи.165Чтобы избежать зависания, нажмите **Run now** после создания задачи, следите за запросами разрешений и выберите "always allow" для каждого. Будущие запуски пропускают большинство этих запросов. Вы можете просмотреть и отозвать эти подтверждения со страницы деталей задачи. Если вы выберете "always allow" для редактирования файла в папке задачи, в режим **Accept edits** переключится только эта сессия, поэтому установите для задачи режим разрешений **Accept edits**.

166 166 

167Инструменты MCP, отмеченные [`requiresUserInteraction`](https://code.claude.com/docs/ru/mcp#require-approval-for-a-specific-tool), запрашивают разрешение при каждом вызове и не предлагают опцию "always allow". Запуски, которые вызывают эти инструменты, зависают каждый раз.167Инструменты MCP, отмеченные [`requiresUserInteraction`](https://code.claude.com/docs/ru/mcp#require-approval-for-a-specific-tool), запрашивают разрешение при каждом вызове и не предлагают опцию "always allow". Запуски, которые вызывают эти инструменты, зависают каждый раз.

168 168 


179 179 

180Вы также можете перечислять, создавать, редактировать и приостанавливать задачи, попросив Claude в любом сеансе Desktop. Например, "приостанови мою задачу dependency-audit" или "покажи мои запланированные задачи." Чтобы удалить задачу, используйте кнопку **Delete** на ее странице деталей.180Вы также можете перечислять, создавать, редактировать и приостанавливать задачи, попросив Claude в любом сеансе Desktop. Например, "приостанови мою задачу dependency-audit" или "покажи мои запланированные задачи." Чтобы удалить задачу, используйте кнопку **Delete** на ее странице деталей.

181 181 

182Запланированная задача также может изменять свое собственное расписание или подсказку в рамках запущенного сеанса, используя инструмент MCP `update_scheduled_task`. Это позволяет задаче перепланировать себя на основе того, что она находит, например, перепланировать проверку кода на более раннее время, когда она обнаруживает, что была создана ветка выпуска.182Чтобы позволить задаче изменять свое собственное расписание или промпт с помощью инструмента MCP `update_scheduled_task`, нажимайте **Run now** и подтверждайте вызов каждый раз.

183 183 

184Чтобы отредактировать подсказку задачи на диске, откройте `~/.claude/scheduled-tasks/<task-name>/SKILL.md` (или под [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/ru/env-vars), если установлено). Файл использует YAML frontmatter для `name` и `description`, с подсказкой в качестве тела. Изменения вступают в силу при следующем запуске. Расписание, папка, модель и состояние включения не находятся в этом файле: измените их через форму Edit или попросите Claude.184Чтобы отредактировать подсказку задачи на диске, откройте `~/.claude/scheduled-tasks/<task-name>/SKILL.md` (или под [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/ru/env-vars), если установлено). Файл использует YAML frontmatter для `name` и `description`, с подсказкой в качестве тела. Изменения вступают в силу при следующем запуске. Расписание, папка, модель и состояние включения не находятся в этом файле: измените их через форму Edit или попросите Claude.

185 185 

env-vars.md +5 −3

Details

221| `CLAUDE_CODE_CLIENT_CERT` | Путь к файлу клиентского сертификата для аутентификации mTLS |221| `CLAUDE_CODE_CLIENT_CERT` | Путь к файлу клиентского сертификата для аутентификации mTLS |

222| `CLAUDE_CODE_CLIENT_KEY` | Путь к файлу закрытого ключа клиента для аутентификации mTLS |222| `CLAUDE_CODE_CLIENT_KEY` | Путь к файлу закрытого ключа клиента для аутентификации mTLS |

223| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Парольная фраза для зашифрованного CLAUDE\_CODE\_CLIENT\_KEY (необязательно) |223| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Парольная фраза для зашифрованного CLAUDE\_CODE\_CLIENT\_KEY (необязательно) |

224| `CLAUDE_CODE_CONFIG_LOCK_WAIT_MS` | Количество миллисекунд, в течение которых команда, добавляющая или удаляющая MCP-сервер с областью действия `user` или `local`, например `claude mcp add`, пытается получить блокировку `~/.claude.json`, прежде чем [завершиться ошибкой](https://code.claude.com/docs/ru/errors.md#mcp-server-was-not-saved-or-removed). Если переменная не задана, команда ждёт примерно 10–20 секунд, и более короткое значение ничего не меняет. Требуется Claude Code v2.1.318 или новее |

224| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | Удалена в v2.1.186 и теперь ни на что не влияет. Ранее задавала отдельный таймаут для фазы подключения, TLS и получения заголовков ответа потокового запроса API. Используйте вместо неё `API_TIMEOUT_MS`. Для фазы получения заголовков ответа потокового запроса см. `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |225| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | Удалена в v2.1.186 и теперь ни на что не влияет. Ранее задавала отдельный таймаут для фазы подключения, TLS и получения заголовков ответа потокового запроса API. Используйте вместо неё `API_TIMEOUT_MS`. Для фазы получения заголовков ответа потокового запроса см. `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |

225| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Переопределяет путь к файлу отладочного лога. Несмотря на название, это путь к файлу, а не к каталогу. Требует отдельного включения режима отладки через `--debug`, `/debug` или переменную окружения `DEBUG`: сама по себе эта переменная логирование не включает. Флаг [`--debug-file`](https://code.claude.com/docs/ru/cli-reference#cli-flags) делает и то, и другое сразу. По умолчанию `~/.claude/debug/<session-id>.txt` |226| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Переопределяет путь к файлу отладочного лога. Несмотря на название, это путь к файлу, а не к каталогу. Требует отдельного включения режима отладки через `--debug`, `/debug` или переменную окружения `DEBUG`: сама по себе эта переменная логирование не включает. Флаг [`--debug-file`](https://code.claude.com/docs/ru/cli-reference#cli-flags) делает и то, и другое сразу. По умолчанию `~/.claude/debug/<session-id>.txt` |

226| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Минимальный уровень логирования, записываемый в файл отладочного лога. Значения: `verbose`, `debug` (по умолчанию), `info`, `warn`, `error`. Установите `verbose`, чтобы включить объёмную диагностику, например полный вывод команды строки состояния, или повысьте до `error`, чтобы уменьшить шум |227| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Минимальный уровень логирования, записываемый в файл отладочного лога. Значения: `verbose`, `debug` (по умолчанию), `info`, `warn`, `error`. Установите `verbose`, чтобы включить объёмную диагностику, например полный вывод команды строки состояния, или повысьте до `error`, чтобы уменьшить шум |


277| `CLAUDE_CODE_DISABLE_WEB_FETCH` | Установите `1`, чтобы отключить инструмент [WebFetch](https://code.claude.com/docs/ru/tools-reference.md#webfetch-tool-behavior). Инструмент [WebSearch](https://code.claude.com/docs/ru/tools-reference.md#websearch-tool-behavior) остаётся доступным. Требуется Claude Code v2.1.285 или новее |278| `CLAUDE_CODE_DISABLE_WEB_FETCH` | Установите `1`, чтобы отключить инструмент [WebFetch](https://code.claude.com/docs/ru/tools-reference.md#webfetch-tool-behavior). Инструмент [WebSearch](https://code.claude.com/docs/ru/tools-reference.md#websearch-tool-behavior) остаётся доступным. Требуется Claude Code v2.1.285 или новее |

278| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Установите `1`, чтобы запускать команды [инструмента PowerShell](https://code.claude.com/docs/ru/tools-reference.md#powershell-tool) в Windows напрямую, а не через загрузчик `cmd.exe`. По умолчанию загрузчик позволяет команде PowerShell, [выполняющейся в фоне](https://code.claude.com/docs/ru/tools-reference.md#background-commands), [переходить в следующий процесс сессии](https://code.claude.com/docs/ru/agent-view.md#the-supervisor-process), например когда вы [переводите сессию в фон](https://code.claude.com/docs/ru/agent-view.md#from-inside-a-session). Если задать переменную, фоновая команда PowerShell останавливается при завершении процесса сессии. Команды Bash не затрагиваются. Требуется Claude Code v2.1.269 или новее |279| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Установите `1`, чтобы запускать команды [инструмента PowerShell](https://code.claude.com/docs/ru/tools-reference.md#powershell-tool) в Windows напрямую, а не через загрузчик `cmd.exe`. По умолчанию загрузчик позволяет команде PowerShell, [выполняющейся в фоне](https://code.claude.com/docs/ru/tools-reference.md#background-commands), [переходить в следующий процесс сессии](https://code.claude.com/docs/ru/agent-view.md#the-supervisor-process), например когда вы [переводите сессию в фон](https://code.claude.com/docs/ru/agent-view.md#from-inside-a-session). Если задать переменную, фоновая команда PowerShell останавливается при завершении процесса сессии. Команды Bash не затрагиваются. Требуется Claude Code v2.1.269 или новее |

279| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Установите `1`, чтобы отключить [рабочие процессы](https://code.claude.com/docs/ru/workflows.md#turn-workflows-off). Эквивалентно настройке [`disableWorkflows`](https://code.claude.com/docs/ru/settings-reference#disableworkflows) |280| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Установите `1`, чтобы отключить [рабочие процессы](https://code.claude.com/docs/ru/workflows.md#turn-workflows-off). Эквивалентно настройке [`disableWorkflows`](https://code.claude.com/docs/ru/settings-reference#disableworkflows) |

281| `CLAUDE_CODE_DROP_UNAVAILABLE_DEFERRED_TOOL` | Установите `1`, чтобы отбрасывать [отложенный вызов инструмента](https://code.claude.com/docs/ru/hooks.md#resume-when-a-deferred-tool-is-unavailable), инструмент которого недоступен при возобновлении с `-p`. Без этой переменной вызов остаётся в ожидании, и отправленный вами промпт не доходит до Claude. Требуется Claude Code v2.1.319 или новее |

280| `CLAUDE_CODE_EFFORT_LEVEL` | Задаёт уровень effort для поддерживаемых моделей. Значения: `low`, `medium`, `high`, `xhigh` или `max`. Доступные уровни зависят от модели. Имеет приоритет над `--effort`, `/effort`, а также над настройками `modelSettings` и `effortLevel`. Ограничение [`maxEffortLevel`](https://code.claude.com/docs/ru/settings-reference#maxeffortlevel) по-прежнему действует. Установите значение `auto` или `unset`, чтобы Claude Code [не отправлял уровень effort](https://code.claude.com/docs/ru/model-config.md#send-no-effort-level) и API применял собственное значение по умолчанию для модели. См. [Настройка уровня effort](https://code.claude.com/docs/ru/model-config.md#adjust-effort-level) |282| `CLAUDE_CODE_EFFORT_LEVEL` | Задаёт уровень effort для поддерживаемых моделей. Значения: `low`, `medium`, `high`, `xhigh` или `max`. Доступные уровни зависят от модели. Имеет приоритет над `--effort`, `/effort`, а также над настройками `modelSettings` и `effortLevel`. Ограничение [`maxEffortLevel`](https://code.claude.com/docs/ru/settings-reference#maxeffortlevel) по-прежнему действует. Установите значение `auto` или `unset`, чтобы Claude Code [не отправлял уровень effort](https://code.claude.com/docs/ru/model-config.md#send-no-effort-level) и API применял собственное значение по умолчанию для модели. См. [Настройка уровня effort](https://code.claude.com/docs/ru/model-config.md#adjust-effort-level) |

281| `CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS` | Установите `1`, чтобы добавлять в поток сообщений сообщения [`session_state_changed`](https://code.claude.com/docs/ru/agent-sdk/typescript#sdksessionstatechangedmessage), содержащие состояние сессии. Требуется либо [Agent SDK](https://code.claude.com/docs/ru/agent-sdk/overview.md), либо `--print`, `--output-format stream-json` и `--verbose` |283| `CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS` | Установите `1`, чтобы добавлять в поток сообщений сообщения [`session_state_changed`](https://code.claude.com/docs/ru/agent-sdk/typescript#sdksessionstatechangedmessage), содержащие состояние сессии. Требуется либо [Agent SDK](https://code.claude.com/docs/ru/agent-sdk/overview.md), либо `--print`, `--output-format stream-json` и `--verbose` |

282| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Принимается для совместимости со старыми версиями и ни на что не влияет. Авторежим доступен по умолчанию у всех провайдеров, включая Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry и сессии [Claude apps gateway](https://code.claude.com/docs/ru/claude-apps-gateway) с выполненным входом. В версиях с v2.1.158 по v2.1.206 установка значения `1` требовалась, чтобы сделать [авторежим](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode) доступным у этих провайдеров |284| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Принимается для совместимости со старыми версиями и ни на что не влияет. Авторежим доступен по умолчанию у всех провайдеров, включая Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry и сессии [Claude apps gateway](https://code.claude.com/docs/ru/claude-apps-gateway) с выполненным входом. В версиях с v2.1.158 по v2.1.206 установка значения `1` требовалась, чтобы сделать [авторежим](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode) доступным у этих провайдеров |


295| `CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS` | Установите `1`, чтобы [выполнять опасные команды `rm` без запроса подтверждения](https://code.claude.com/docs/ru/permission-modes#turn-off-the-critical-path-removal-prompt-in-bypasspermissions-mode) в режиме `bypassPermissions`; это убирает защитный запрос подтверждения для разрушительных удалений. В указанном разделе перечислены случаи, когда переменная не действует. [Задавайте её в окружении, из которого запускается Claude Code](#set-variables-in-your-shell), поскольку Claude Code [игнорирует её в блоке `env` настроек](https://code.claude.com/docs/ru/settings-reference#variables-claude-code-ignores-in-env). Требуется Claude Code v2.1.311 или новее |297| `CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS` | Установите `1`, чтобы [выполнять опасные команды `rm` без запроса подтверждения](https://code.claude.com/docs/ru/permission-modes#turn-off-the-critical-path-removal-prompt-in-bypasspermissions-mode) в режиме `bypassPermissions`; это убирает защитный запрос подтверждения для разрушительных удалений. В указанном разделе перечислены случаи, когда переменная не действует. [Задавайте её в окружении, из которого запускается Claude Code](#set-variables-in-your-shell), поскольку Claude Code [игнорирует её в блоке `env` настроек](https://code.claude.com/docs/ru/settings-reference#variables-claude-code-ignores-in-env). Требуется Claude Code v2.1.311 или новее |

296| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Время ожидания в миллисекундах после перехода цикла запросов в состояние простоя перед автоматическим завершением. Полезно для автоматизированных рабочих процессов и скриптов, использующих режим SDK |298| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Время ожидания в миллисекундах после перехода цикла запросов в состояние простоя перед автоматическим завершением. Полезно для автоматизированных рабочих процессов и скриптов, использующих режим SDK |

297| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Установите `1`, чтобы включить [команды агентов](https://code.claude.com/docs/ru/agent-teams.md). Команды агентов являются экспериментальными и по умолчанию отключены |299| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Установите `1`, чтобы включить [команды агентов](https://code.claude.com/docs/ru/agent-teams.md). Команды агентов являются экспериментальными и по умолчанию отключены |

298| `CLAUDE_CODE_EXTRA_BODY` | JSON-объект, объединяемый с верхним уровнем тела каждого запроса к API. Полезно для передачи специфичных для провайдера параметров, которые Claude Code не предоставляет напрямую. Значение, экспортированное в вашей оболочке, также применяется к [фоновым сессиям](https://code.claude.com/docs/ru/agent-view.md), которые вы запускаете с помощью `claude agents` или `--bg`. До v2.1.206 фоновые сессии игнорировали значение, экспортированное в оболочке, и использовали ту копию, которую унаследовал фоновый процесс-супервизор |300| `CLAUDE_CODE_EXTRA_BODY` | JSON-объект, который объединяется с верхним уровнем тел запросов к модели, за исключением некоторых запросов вне диалога, например проверок `/model`. Полезно для передачи специфичных для провайдера параметров, которые Claude Code не предоставляет напрямую. Значение, экспортированное в вашей оболочке, также применяется к [фоновым сессиям](https://code.claude.com/docs/ru/agent-view.md), которые вы запускаете с помощью `claude agents` или `--bg`. До v2.1.206 фоновые сессии игнорировали значение, экспортированное в оболочке, и использовали ту копию, которую унаследовал фоновый процесс-супервизор |

299| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Переопределяет лимит токенов по умолчанию для [чтения файлов](https://code.claude.com/docs/ru/tools-reference.md#large-files), который составляет 25 000 токенов. Полезно, когда нужно прочитать большие файлы целиком. Чтение, которое Claude выполняет с параметром `allow_large`, может превысить этот лимит, если в контекстном окне есть место |301| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Переопределяет лимит токенов по умолчанию для [чтения файлов](https://code.claude.com/docs/ru/tools-reference.md#large-files), который составляет 25 000 токенов. Полезно, когда нужно прочитать большие файлы целиком. Чтение, которое Claude выполняет с параметром `allow_large`, может превысить этот лимит, если в контекстном окне есть место |

300| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Установите `1`, чтобы принудительно включить сохранение транскриптов, истории промптов и регистрацию в `claude agents`, даже если этот `claude` был запущен изнутри другой сессии Claude Code. Используйте, когда унаследованное значение `CLAUDE_CODE_CHILD_SESSION`, например из сессии `screen` или фонового загрузчика, впервые запущенного инструментом Bash в Claude Code, приводит к тому, что настоящая сессия верхнего уровня ошибочно классифицируется как вложенная. Начиная с v2.1.178 Claude Code автоматически распознаёт случай с tmux и игнорирует унаследованный маркер, поэтому для tmux эта переменная больше не нужна. Также учитывается в v2.1.169 и более ранних версиях; не действует в v2.1.170 и v2.1.171, где было удалено обнаружение вложенных сессий, которое она переопределяет |302| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Установите `1`, чтобы принудительно включить сохранение транскриптов, истории промптов и регистрацию в `claude agents`, даже если этот `claude` был запущен изнутри другой сессии Claude Code. Используйте, когда унаследованное значение `CLAUDE_CODE_CHILD_SESSION`, например из сессии `screen` или фонового загрузчика, впервые запущенного инструментом Bash в Claude Code, приводит к тому, что настоящая сессия верхнего уровня ошибочно классифицируется как вложенная. Начиная с v2.1.178 Claude Code автоматически распознаёт случай с tmux и игнорирует унаследованный маркер, поэтому для tmux эта переменная больше не нужна. Также учитывается в v2.1.169 и более ранних версиях; не действует в v2.1.170 и v2.1.171, где было удалено обнаружение вложенных сессий, которое она переопределяет |

301| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Установите `1`, чтобы принудительно отображать `~~text~~` в ответах Claude зачёркнутым, когда ваш терминал это поддерживает, но не определяется автоматически, например при работе по SSH без пересылки `TERM_PROGRAM`. Без этого неопределённые терминалы показывают буквальные маркеры `~~` вместо зачёркнутого текста. Требуется Claude Code v2.1.186 или новее |303| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Установите `1`, чтобы принудительно отображать `~~text~~` в ответах Claude зачёркнутым, когда ваш терминал это поддерживает, но не определяется автоматически, например при работе по SSH без пересылки `TERM_PROGRAM`. Без этого неопределённые терминалы показывают буквальные маркеры `~~` вместо зачёркнутого текста. Требуется Claude Code v2.1.186 или новее |


313| `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 не может обнаружить, неправильно обрабатывает сжатые запросы |315| `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 не может обнаружить, неправильно обрабатывает сжатые запросы |

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

315| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Переопределяет адрес хоста, используемый для подключения к расширению IDE. По умолчанию Claude Code автоматически определяет правильный адрес, включая маршрутизацию из WSL в Windows |317| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Переопределяет адрес хоста, используемый для подключения к расширению IDE. По умолчанию Claude Code автоматически определяет правильный адрес, включая маршрутизацию из WSL в Windows |

316| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Установите значение `1`, чтобы `/ide` не устанавливал расширение IDE. Эквивалентно значению `false` для [`autoInstallIdeExtension`](https://code.claude.com/docs/ru/settings-reference#autoinstallideextension) |318| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Установите `1`, чтобы `/ide` не устанавливал расширение IDE. Эквивалентно установке [`autoInstallIdeExtension`](https://code.claude.com/docs/ru/settings-reference#autoinstallideextension) в `false`. Версии Claude Code до v2.1.318 также устанавливают или обновляют расширение, когда вы запускаете `claude` в терминале VS Code, Cursor или Devin Desktop. Эта переменная отключает и это |

317| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Установите `1`, чтобы пропустить проверку записей lock-файла IDE при подключении. Используйте, когда автоподключение не находит вашу IDE, хотя она запущена |319| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Установите `1`, чтобы пропустить проверку записей lock-файла IDE при подключении. Используйте, когда автоподключение не находит вашу IDE, хотя она запущена |

318| `CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS` | Размер контекста в токенах, начиная с которого к диалогу применяется [сжатие контекста при простое](https://code.claude.com/docs/ru/settings-reference.md#idlecompaction) (по умолчанию: `200000`). Принимает положительное целое число; всё остальное игнорируется. Значения ниже `100000` повышаются до `100000` — наименьшего порога. Сжатие при простое по умолчанию включено для диалогов, которые соответствуют его условиям. Чтобы отключить его, установите `idleCompaction` в `false`. Требуется Claude Code v2.1.290 или новее |320| `CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS` | Размер контекста в токенах, начиная с которого к диалогу применяется [сжатие контекста при простое](https://code.claude.com/docs/ru/settings-reference.md#idlecompaction) (по умолчанию: `200000`). Принимает положительное целое число; всё остальное игнорируется. Значения ниже `100000` повышаются до `100000` — наименьшего порога. Сжатие при простое по умолчанию включено для диалогов, которые соответствуют его условиям. Чтобы отключить его, установите `idleCompaction` в `false`. Требуется Claude Code v2.1.290 или новее |

319| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Сколько [субагентов](https://code.claude.com/docs/ru/sub-agents.md#concurrent-subagent-limit) может выполняться в одной сессии, прежде чем инструмент Agent откажется запускать ещё одного (по умолчанию: 20). Принимает положительное целое число, записанное цифрами; всё остальное игнорируется, поэтому переменная может изменить ограничение, но не отключить его. Требуется Claude Code v2.1.217 или новее |321| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Сколько [субагентов](https://code.claude.com/docs/ru/sub-agents.md#concurrent-subagent-limit) может выполняться в одной сессии, прежде чем инструмент Agent откажется запускать ещё одного (по умолчанию: 20). Принимает положительное целое число, записанное цифрами; всё остальное игнорируется, поэтому переменная может изменить ограничение, но не отключить его. Требуется Claude Code v2.1.217 или новее |


486| `MCP_DISCOVERY_CACHE_STRIKES` | При запуске, когда запись [кэша обнаружения](https://code.claude.com/docs/ru/mcp.md#server-status-detail) старше `MCP_DISCOVERY_CACHE_TTL_S`, Claude Code обновляет её в фоне. Эта переменная задаёт, сколько обновлений подряд могут завершиться неудачей, прежде чем Claude Code отбросит запись и вместо этого подключит сервер при следующем запуске (по умолчанию: 1). Увеличьте значение, если ваше сетевое соединение иногда обрывается, чтобы одно неудачное обновление не приводило к удалению записи. Требуется Claude Code v2.1.238 или новее |488| `MCP_DISCOVERY_CACHE_STRIKES` | При запуске, когда запись [кэша обнаружения](https://code.claude.com/docs/ru/mcp.md#server-status-detail) старше `MCP_DISCOVERY_CACHE_TTL_S`, Claude Code обновляет её в фоне. Эта переменная задаёт, сколько обновлений подряд могут завершиться неудачей, прежде чем Claude Code отбросит запись и вместо этого подключит сервер при следующем запуске (по умолчанию: 1). Увеличьте значение, если ваше сетевое соединение иногда обрывается, чтобы одно неудачное обновление не приводило к удалению записи. Требуется Claude Code v2.1.238 или новее |

487| `MCP_DISCOVERY_CACHE_TTL_S` | Количество секунд, в течение которых Claude Code использует запись [кэша обнаружения](https://code.claude.com/docs/ru/mcp.md#server-status-detail) без обновления (по умолчанию: 900). При запуске, когда запись старше этого значения, Claude Code всё ещё использует её, но обновляет в фоне. Когда запись становится старше `MCP_DISCOVERY_CACHE_MAX_STALE_S`, Claude Code вместо этого отбрасывает её. Claude Code ограничивает значение величиной `MCP_DISCOVERY_CACHE_MAX_STALE_S`, которая по умолчанию составляет 4 часа. До v2.1.238 Claude Code не ограничивал значение |489| `MCP_DISCOVERY_CACHE_TTL_S` | Количество секунд, в течение которых Claude Code использует запись [кэша обнаружения](https://code.claude.com/docs/ru/mcp.md#server-status-detail) без обновления (по умолчанию: 900). При запуске, когда запись старше этого значения, Claude Code всё ещё использует её, но обновляет в фоне. Когда запись становится старше `MCP_DISCOVERY_CACHE_MAX_STALE_S`, Claude Code вместо этого отбрасывает её. Claude Code ограничивает значение величиной `MCP_DISCOVERY_CACHE_MAX_STALE_S`, которая по умолчанию составляет 4 часа. До v2.1.238 Claude Code не ограничивал значение |

488| `MCP_OAUTH_CALLBACK_PORT` | Фиксированный порт для обратного вызова перенаправления OAuth, как альтернатива `--callback-port` при добавлении MCP-сервера с [предварительно настроенными учётными данными](https://code.claude.com/docs/ru/mcp.md#use-pre-configured-oauth-credentials) |490| `MCP_OAUTH_CALLBACK_PORT` | Фиксированный порт для обратного вызова перенаправления OAuth, как альтернатива `--callback-port` при добавлении MCP-сервера с [предварительно настроенными учётными данными](https://code.claude.com/docs/ru/mcp.md#use-pre-configured-oauth-credentials) |

489| `MCP_PROTOCOL_NEGOTIATION` | Только в [среде выполнения клиента MCP v2](https://code.claude.com/docs/ru/mcp.md#mcp-client-runtimes) определяет, проверяет ли Claude Code поддержку серверами ревизии протокола MCP 2026-07-28. Задайте `legacy`, чтобы пропустить проверку, и тогда каждый сервер подключается с рукопожатием, существовавшим до этой ревизии. Задайте `auto`, чтобы проверять типы серверов, поддерживающие проверку: HTTP- и stdio-серверы, коннекторы claude.ai и коннекторы облачных сессий и сессий Remote Control. Если переменная не задана, Claude Code по умолчанию проверяет те же типы; см. [Среды выполнения клиента MCP](https://code.claude.com/docs/ru/mcp.md#mcp-client-runtimes). Любое другое значение игнорируется с предупреждением в логе отладки. Требуется Claude Code v2.1.221 или новее |491| `MCP_PROTOCOL_NEGOTIATION` | Только в [среде выполнения клиента MCP v2](https://code.claude.com/docs/ru/mcp.md#mcp-client-runtimes) определяет, проверяет ли Claude Code поддержку серверами ревизии протокола MCP 2026-07-28. Задайте `legacy`, чтобы все серверы использовали прежнее рукопожатие, или `auto`, чтобы проверять те виды серверов, которые её поддерживают. Если переменная не задана, Claude Code проверяет их, но может [пропустить некоторые серверы](https://code.claude.com/docs/ru/mcp.md#mcp-client-runtimes). Любое другое значение игнорируется с предупреждением в логе отладки. Требуется Claude Code v2.1.221 или новее |

490| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Максимальное количество удалённых MCP-серверов (HTTP/SSE), подключаемых параллельно при запуске (по умолчанию: 20) |492| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Максимальное количество удалённых MCP-серверов (HTTP/SSE), подключаемых параллельно при запуске (по умолчанию: 20) |

491| `MCP_SDK_GENERATION` | Закрепить [среду выполнения клиента MCP](https://code.claude.com/docs/ru/mcp.md#mcp-client-runtimes), с помощью которой этот процесс подключается к MCP-серверам: `v1`, построенную на MCP TypeScript SDK 1.x, или `v2`, построенную на [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Без этой переменной Claude Code использует v2, начиная с версий, перечисленных в том разделе. В Claude Code v2.1.221 или новее среда выполнения v2 проверяет издателя, которого сервер MCP OAuth возвращает в ответе авторизации, и при несовпадении завершает вход с ошибкой, начинающейся с `Issuer mismatch in authorization response`. Среда выполнения v1 эту проверку не выполняет. Если вы зададите нераспознанное значение, Claude Code проигнорирует его и запишет предупреждение в лог отладки. Claude Code считывает значение один раз за процесс. Требуется Claude Code v2.1.218 или новее |493| `MCP_SDK_GENERATION` | Закрепить [среду выполнения клиента MCP](https://code.claude.com/docs/ru/mcp.md#mcp-client-runtimes), с помощью которой этот процесс подключается к MCP-серверам: `v1`, построенную на MCP TypeScript SDK 1.x, или `v2`, построенную на [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Без этой переменной Claude Code использует v2, начиная с версий, перечисленных в том разделе. В Claude Code v2.1.221 или новее среда выполнения v2 проверяет издателя, которого сервер MCP OAuth возвращает в ответе авторизации, и при несовпадении завершает вход с ошибкой, начинающейся с `Issuer mismatch in authorization response`. Среда выполнения v1 эту проверку не выполняет. Если вы зададите нераспознанное значение, Claude Code проигнорирует его и запишет предупреждение в лог отладки. Claude Code считывает значение один раз за процесс. Требуется Claude Code v2.1.218 или новее |

492| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Максимальное количество локальных MCP-серверов (stdio), подключаемых параллельно при запуске (по умолчанию: 3) |494| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Максимальное количество локальных MCP-серверов (stdio), подключаемых параллельно при запуске (по умолчанию: 3) |

errors.md +27 −17

Details

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

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

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

64| `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) |64| `Your organization's settings need an update` | [Аутентификация](#claude-code-didnt-send-your-claude-ai-login) |

65| `Couldn't load your organization's settings. Check your connection` | [Аутентификация](#claude-code-didnt-send-your-claude-ai-login) |

66| `Restart Claude Code to finish signing in` | [Аутентификация](#claude-code-didnt-send-your-claude-ai-login) |

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

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

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


1117 1119 

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

1119 1121 

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

1121 1123 

1122```text theme={null}1124```text theme={null}

1123Claude 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.1125Your organization's settings need an update. Ask your administrator to fix the API key helper configuration.

1126Couldn't load your organization's settings. Check your connection, then restart Claude Code.

1127Restart Claude Code to finish signing in.

1124```1128```

1125 1129 

1126**Что делать:**1130**Что делать:**

1127 1131 

1128* Чтобы сообщить администратору, какие управляемые источники есть на вашей машине, выполните `/status` в промпте Claude Code и скопируйте [строку `Setting sources`](https://code.claude.com/docs/ru/managed-settings#read-the-source-in-/status). Если появляется строка `Skipped sources`, скопируйте и её1132* `Your organization's settings need an update`: попросите администратора исправить конфигурацию хелпера API-ключа

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

1134 * Если настройки администрируете вы, а хелпер находится в файле управляемых настроек машины или в политике MDM, см. [Когда `apiKeyHelper` машины не действует](https://code.claude.com/docs/ru/server-managed-settings#machine-apikeyhelper-not-in-effect)

1135* `Couldn't load your organization's settings`: проверьте подключение, затем перезапустите Claude Code. Если сообщение возвращается после перезапуска, сообщите администратору

1136* `Restart Claude Code to finish signing in`: перезапустите Claude Code

1137 

1138До v2.1.315 отклонённый промпт или загрузка файла выводили одно сообщение, начинавшееся с `Claude Code didn't send your claude.ai login`.

1130 1139 

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

1132 1141 


3422* **`Error: Workspace not trusted. <folder> is your home directory`**: поскольку доверие для домашнего каталога никогда не сохраняется, предварительный запуск `claude` там не поможет. Вместо этого выполните `claude ultrareview` из каталога проекта, предварительно один раз запустив там `claude`, чтобы принять диалог доверия, или добавьте `--trust-workspace`.3431* **`Error: Workspace not trusted. <folder> is your home directory`**: поскольку доверие для домашнего каталога никогда не сохраняется, предварительный запуск `claude` там не поможет. Вместо этого выполните `claude ultrareview` из каталога проекта, предварительно один раз запустив там `claude`, чтобы принять диалог доверия, или добавьте `--trust-workspace`.

3423* **`No answer in time.` с последующим `Error: Workspace not trusted`**: на вопрос `Trust <folder>? [y/N]` не было ответа в течение 5 минут. Снова выполните `claude ultrareview` и ответьте на него.3432* **`No answer in time.` с последующим `Error: Workspace not trusted`**: на вопрос `Trust <folder>? [y/N]` не было ответа в течение 5 минут. Снова выполните `claude ultrareview` и ответьте на него.

3424* **`Ultrareview did not start: <folder> is not trusted`**: вы отказались на вопрос `Trust <folder>? [y/N]`, например ответив `n` или нажав Enter. Чтобы начать ревью, снова выполните `claude ultrareview` и ответьте `y`.3433* **`Ultrareview did not start: <folder> is not trusted`**: вы отказались на вопрос `Trust <folder>? [y/N]`, например ответив `n` или нажав Enter. Чтобы начать ревью, снова выполните `claude ultrareview` и ответьте `y`.

3425* **``Ultrareview did not start: `--trust-workspace` takes no value``**: после `--trust-workspace` следует что-то, кроме флага, например номер PR или `false`. Если вы не доверяете папке, не указывайте этот флаг. Чтобы доверять ей на время этого запуска, поставьте номер PR или базовую ветку перед флагом: `claude ultrareview 1234 --trust-workspace`.3434* **``Ultrareview did not start: `--trust-workspace` takes no value``**: после `--trust-workspace` следует что-то, кроме флага, например номер PR или `false`. Если вы не доверяете папке, не указывайте флаг. Чтобы доверять ей на время этого запуска, поставьте номер PR или базовую ветку перед флагом: `claude ultrareview 1234 --trust-workspace`.

3426 3435 

3427До v2.1.309 `claude ultrareview` не принимал `--trust-workspace`.3436До v2.1.309 `claude ultrareview` не принимал `--trust-workspace`.

3428 3437 


3554 3563 

3555### MCP-сервер не был сохранён или удалён3564### MCP-сервер не был сохранён или удалён

3556 3565 

3557Вы выполнили `claude mcp add`, `claude mcp add-json` или `claude mcp remove` для сервера в [области действия](https://code.claude.com/docs/ru/mcp.md#mcp-installation-scopes) `user` или `local`. Обе области действия хранятся в `~/.claude.json`, и изменения нет в этом файле, когда Claude Code перечитывает его после записи. Команда завершается с этой ошибкой вместо строки об успехе.3566Эта ошибка означает, что команда вроде `claude mcp add` или `claude mcp remove` не смогла внести ваше изменение в `~/.claude.json`. Возможно, другие процессы Claude Code удерживали блокировку файла, или файл доступен только для чтения либо защищён песочницей.

3558 3567 

3559```text theme={null}3568```text theme={null}

3560MCP server "example" was not saved to /home/user/.claude.json. If that file is read-only or protected by a sandbox, make it writable or run the command outside the sandbox, then add the server again.3569MCP server "example" was not saved to /home/user/.claude.json. If other Claude Code processes use that file, they may have kept it locked: add the server again, with CLAUDE_CODE_CONFIG_LOCK_WAIT_MS=60000 set to wait up to a minute. If that file is read-only or protected by a sandbox, make it writable or run the command outside the sandbox first.

3561```3570```

3562 3571 

3563После удаления сообщение содержит `was not removed from` и заканчивается на `then remove the server again`. Для сервера в области действия `local` за путём следует каталог проекта, к которому относится запись, в виде `(local scope for /path/to/project)`.3572После удаления сообщение содержит `was not removed from` вместо `was not saved to` и `remove the server again` вместо `add the server again`. Для сервера с областью действия `local` после пути указывается каталог проекта, к которому относится запись, в виде `(local scope for /path/to/project)`.

3564 

3565До v2.1.283 `claude mcp add`, `claude mcp add-json` и `claude mcp remove` сообщали об успехе, даже если изменение не попадало в файл.

3566 3573 

3567**Что делать:**3574**Что делать:**

3568 3575 

3569* Сделайте файл, указанный в сообщении, доступным для записи или выполните команду вне песочницы, затем снова выполните ту же команду добавления или удаления.3576* **Запущены другие процессы Claude Code**: команда ждёт блокировку файла примерно от 10 до 20 секунд, затем сдаётся, ничего не записав. Снова выполните ту же команду, задав в [`CLAUDE_CODE_CONFIG_LOCK_WAIT_MS`](https://code.claude.com/docs/ru/env-vars#variables) более долгое ожидание в миллисекундах, например `60000`.

3577* **Файл доступен только для чтения или защищён песочницей**: сделайте указанный в сообщении файл доступным для записи и снова выполните ту же команду добавления или удаления либо выполните эту команду вне песочницы.

3578 

3579До v2.1.283 `claude mcp add`, `claude mcp add-json` и `claude mcp remove` сообщали об успехе, даже если изменение не попало в файл. До v2.1.318 сообщение не упоминало блокировку, а Claude Code не читал [`CLAUDE_CODE_CONFIG_LOCK_WAIT_MS`](https://code.claude.com/docs/ru/env-vars#variables).

3570 3580 

3571### MCP-сервер, возможно, не был сохранён или удалён3581### MCP-сервер, возможно, не был сохранён или удалён

3572 3582 

3573Вы выполнили `claude mcp add`, `claude mcp add-json` или `claude mcp remove` для сервера в [области действия](https://code.claude.com/docs/ru/mcp.md#mcp-installation-scopes) `user` или `local`, и Claude Code не смог перечитать `~/.claude.json`, чтобы подтвердить изменение. Изменение может быть или не быть на диске. Текст в скобках — ошибка этого чтения.3583Вы выполнили `claude mcp add`, `claude mcp add-json` или `claude mcp remove` для сервера с [областью действия](https://code.claude.com/docs/ru/mcp.md#mcp-installation-scopes) `user` или `local`, и Claude Code не смог прочитать `~/.claude.json` обратно, чтобы подтвердить изменение. Изменение может как оказаться на диске, так и нет. В скобках после `to confirm the change` указана причина.

3574 3584 

3575```text theme={null}3585```text theme={null}

3576MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.3586MCP server "example" may not have been saved: /home/user/.claude.json could not be read to confirm the change (EACCES: permission denied, open '/home/user/.claude.json'). Run `claude mcp get example` to check, then add the server again if it is missing.

3577```3587```

3578 3588 

3579После удаления сообщение содержит `may not have been removed` и заканчивается на `then remove the server again if it is still listed`.3589После удаления сообщение содержит `may not have been removed` и заканчивается на `then remove the server again if it is still listed`. Если причина — `the file was not found`, сервер может всё ещё быть сконфигурирован.

3580 3590 

3581До v2.1.283 эти команды сообщали об успехе, даже если изменение не удавалось подтвердить.3591До v2.1.283 эти команды сообщали об успехе, даже если изменение не удавалось подтвердить.

3582 3592 


3714 3724 

3715Родственные сообщения появляются ещё до запуска команды:3725Родственные сообщения появляются ещё до запуска команды:

3716 3726 

3717* `Shell command permission check failed for pattern "..."`: проверка разрешений не пропустила команду. В разделе [Проверки разрешений для внедрённых команд](https://code.claude.com/docs/ru/skills.md#permission-checks-on-injected-commands) описано, какие результаты прерывают выполнение в каждом режиме разрешений и как заранее одобрить команду с помощью `allowed-tools`3727* `Shell command permission check failed for pattern "..."`: проверка разрешений не позволила выполнить команду. В разделе [Проверки разрешений для внедрённых команд](https://code.claude.com/docs/ru/skills.md#permission-checks-on-injected-commands) описано, какие результаты прерывают выполнение в каждом режиме разрешений и как заранее разрешить команду с помощью `allowed-tools`

3718* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: frontmatter скилла требует bash на машине, где его нет. Установите Git for Windows или измените frontmatter на `shell: powershell`. См. [Как выполняются внедрённые команды](https://code.claude.com/docs/ru/skills.md#how-injected-commands-run)3728* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: frontmatter скилла требует bash на компьютере, где его нет. Установите Git for Windows или измените frontmatter на `shell: powershell`. См. [Как выполняются внедрённые команды](https://code.claude.com/docs/ru/skills.md#how-injected-commands-run)

3719 3729 

3720**Что делать:**3730**Что делать:**

3721 3731 


3868 3878 

3869* **Вы не передали базовую ветку**: Claude Code сравнивал с веткой репозитория по умолчанию и предлагает явно передать вашу базовую ветку, как в примере выше3879* **Вы не передали базовую ветку**: Claude Code сравнивал с веткой репозитория по умолчанию и предлагает явно передать вашу базовую ветку, как в примере выше

3870* **Вы передали базовую ветку, которая уже была в вашем клоне**: подсказка гласит ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``3880* **Вы передали базовую ветку, которая уже была в вашем клоне**: подсказка гласит ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``

3871* **Вы передали базовую ветку, которой не было в вашем клоне**: Claude Code получил её из origin перед сравнением. Подсказка гласит ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; если Claude Code не может определить, является ли ваш клон поверхностным (shallow), он вместо этого предлагает `git fetch --unshallow origin`. До v2.1.221 подсказка предлагала `git fetch --unshallow origin` для любой полученной базовой ветки, а в полном клоне эта команда завершается ошибкой `fatal: --unshallow on a complete repository does not make sense`.3881* **Вы передали базовую ветку, которой не было в вашем клоне**: Claude Code загрузил её из origin перед сравнением. Подсказка гласит ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; если Claude Code не может определить, является ли ваш клон неполным (shallow), он вместо этого предлагает `git fetch --unshallow origin`. До версии v2.1.221 подсказка предлагала `git fetch --unshallow origin` для каждой загруженной базовой ветки, а на полном клоне эта команда завершается ошибкой `fatal: --unshallow on a complete repository does not make sense`.

3872 3882 

3873**Что делать:**3883**Что делать:**

3874 3884 

fast-mode.md +5 −5

Details

35В CLI включайте быстрый режим одним из следующих способов:35В CLI включайте быстрый режим одним из следующих способов:

36 36 

37* Запустите `/fast`, нажмите Space для включения или отключения, затем нажмите Enter для подтверждения37* Запустите `/fast`, нажмите Space для включения или отключения, затем нажмите Enter для подтверждения

38* Установите `"fastMode": true` в вашем [файле пользовательских настроек](https://code.claude.com/docs/ru/settings.md)38* На модели, которая поддерживает быстрый режим, установите `"fastMode": true` в вашем [файле пользовательских настроек](https://code.claude.com/docs/ru/settings.md). Если вы установите его на любой другой модели, вы останетесь на этой модели с отключенным быстрым режимом.

39 39 

40По умолчанию быстрый режим, который вы включаете в интерактивном сеансе, сохраняется между сеансами. Вы можете настроить быстрый режим на сброс каждого сеанса. Подробности см. в разделе [обязательное согласие за сеанс](#require-per-session-opt-in).40По умолчанию быстрый режим, который вы включаете в интерактивной сессии, сохраняется между сессиями на поддерживаемой модели. Вы можете настроить быстрый режим на сброс в каждой сессии. Подробности см. в разделе [обязательное согласие за сессию](#require-per-session-opt-in).

41 41 

42Вне [облачного сеанса](#use-fast-mode-in-cloud-sessions), в [неинтерактивном режиме](https://code.claude.com/docs/ru/headless.md) с флагом `-p` команда `/fast` работает только в сеансе, запущенном с быстрым режимом в его значении [`--settings`](https://code.claude.com/docs/ru/cli-reference#cli-flags), например `claude -p --settings '{"fastMode": true}'`; переключение затем применяется только к этому сеансу и не сохраняется как ваше значение по умолчанию. Форма `-p` требует Claude Code v2.1.205 или более поздней версии. В остальных случаях в неинтерактивном режиме команда сообщает, что быстрый режим недоступен.42Вне [облачного сеанса](#use-fast-mode-in-cloud-sessions), в [неинтерактивном режиме](https://code.claude.com/docs/ru/headless.md) с флагом `-p` команда `/fast` работает только в сеансе, запущенном с быстрым режимом в его значении [`--settings`](https://code.claude.com/docs/ru/cli-reference#cli-flags), например `claude -p --settings '{"fastMode": true}'`; переключение затем применяется только к этому сеансу и не сохраняется как ваше значение по умолчанию. Форма `-p` требует Claude Code v2.1.205 или более поздней версии. В остальных случаях в неинтерактивном режиме команда сообщает, что быстрый режим недоступен.

43 43 


45 45 

46Для лучшей экономичности включайте быстрый режим в начале сеанса, а не переключайтесь в середине разговора. Подробности см. в разделе [понимание компромисса стоимости](#understand-the-cost-tradeoff).46Для лучшей экономичности включайте быстрый режим в начале сеанса, а не переключайтесь в середине разговора. Подробности см. в разделе [понимание компромисса стоимости](#understand-the-cost-tradeoff).

47 47 

48Когда вы включаете быстрый режим:48Когда вы включаете быстрый режим с помощью `/fast`:

49 49 

50* Если ваша текущая модель не поддерживает быстрый режим, Claude Code переключается на Opus50* Если ваша текущая модель не поддерживает быстрый режим, Claude Code переключается на Opus

51* Вы увидите сообщение подтверждения: "Fast mode ON"51* Вы увидите сообщение подтверждения: "Fast mode ON"


196 196 

197### Требование явного согласия для каждого сеанса197### Требование явного согласия для каждого сеанса

198 198 

199По умолчанию быстрый режим, который пользователь включает в интерактивном сеансе, сохраняется между сеансами. Чтобы изменить это, установите `fastModePerSessionOptIn` на `true` в любом [файле параметров](https://code.claude.com/docs/ru/settings.md#where-settings-live), что приводит к тому, что каждый сеанс начинается с отключенным быстрым режимом и требует от пользователей явного включения его с помощью `/fast`. Владельцы на планах [Team](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_teams#team-&-enterprise) или [Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_enterprise) могут развернуть его на уровне организации через [параметры, управляемые сервером](https://code.claude.com/docs/ru/server-managed-settings.md).199По умолчанию быстрый режим, который пользователь включает в интерактивной сессии, сохраняется между сессиями на поддерживаемой модели. Чтобы изменить это, установите `fastModePerSessionOptIn` на `true` в любом [файле настроек](https://code.claude.com/docs/ru/settings.md#where-settings-live), что приводит к тому, что каждая сессия начинается с отключенным быстрым режимом и требует от пользователей явного включения его с помощью `/fast`. Владельцы на планах [Team](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_teams#team-&-enterprise) или [Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=fast_mode_enterprise) могут развернуть его на уровне организации через [настройки, управляемые сервером](https://code.claude.com/docs/ru/server-managed-settings.md).

200 200 

201```json theme={null}201```json theme={null}

202{202{


221 221 

222Если вы исчерпаете кредиты использования во время сеанса, Claude Code повторно пытается выполнить каждый отклоненный запрос быстрого режима со стандартной скоростью и ценами, поэтому вы продолжаете работать, и охлаждение отсутствует. То, как вы видите отклонение, зависит от типа сеанса:222Если вы исчерпаете кредиты использования во время сеанса, Claude Code повторно пытается выполнить каждый отклоненный запрос быстрого режима со стандартной скоростью и ценами, поэтому вы продолжаете работать, и охлаждение отсутствует. То, как вы видите отклонение, зависит от типа сеанса:

223 223 

224* В интерактивном сеансе Claude Code показывает уведомление "Fast mode disabled · usage credits exhausted" и отключает быстрый режим на оставшуюся часть сеанса. Ваше сохраненное предпочтение быстрого режима не изменяется; запустите `/fast`, чтобы снова включить быстрый режим.224* В интерактивной сессии Claude Code показывает уведомление "Fast mode disabled · Out of usage credits" и отключает быстрый режим. Ваше сохраненное предпочтение быстрого режима не изменяется; запустите `/fast`, чтобы снова включить быстрый режим.

225* В [неинтерактивном режиме](https://code.claude.com/docs/ru/headless.md) с `--output-format stream-json` и через Agent SDK Claude Code выдает тот же текст в потоке сообщений как `system` сообщение с подтипом `notification`, один раз за ход, пока у вас закончились кредиты использования. Быстрый режим остается включенным. Требуется Claude Code v2.1.221 или позже.225* В [неинтерактивном режиме](https://code.claude.com/docs/ru/headless.md) с `--output-format stream-json` и через Agent SDK Claude Code выдает тот же текст в потоке сообщений как `system` сообщение с подтипом `notification`, один раз за ход, пока у вас закончились кредиты использования. Быстрый режим остается включенным. Требуется Claude Code v2.1.221 или позже.

226 226 

227## Исследовательское превью227## Исследовательское превью

hooks.md +64 −22

Details

70 70 

71> [tab] macOS/Linux71> [tab] macOS/Linux

72>72>

73> Фильтр `matcher` сужает область до вызовов инструмента Bash, а условие `if` сужает её дальше до команд Bash, совпадающих с `rm *`, поэтому `block-rm.sh` запускается только когда оба фильтра совпадают:73> `matcher` сужает область до вызовов инструмента Bash и [команд Monitor](#match-monitor-commands), а условие `if` сужает её дальше до подкоманд Bash, совпадающих с `rm *`, поэтому `block-rm.sh` запускается, только когда оба фильтра совпадают:

74>74>

75> ```json theme={null}75> ```json theme={null}

76> {76> {


112> fi112> fi

113> ```113> ```

114>114>

115> Этот скрипт, как и другие примеры Bash на этой странице, которые анализируют JSON входные данные, использует `jq`, поэтому установите `jq` и убедитесь, что он находится в вашем `PATH` перед попыткой их использования.115> Этот скрипт, как и другие примеры Bash на этой странице, которые анализируют JSON входные данные, использует `jq`, поэтому установите `jq` и убедитесь, что он находится в вашем `PATH`, перед попыткой их использования.

116 116 

117> [tab] Windows (PowerShell)117> [tab] Windows (PowerShell)

118>118>

119> Фильтр `Bash|PowerShell` охватывает [инструмент PowerShell](#powershell) а также Bash. Одно правило `if` совпадает только с вызовами одного инструмента, поэтому каждый инструмент получает свой обработчик: первый сужает область до команд Bash, совпадающих с `rm *`, второй — до команд PowerShell, совпадающих с `Remove-Item *`. Оба запускают один и тот же скрипт через `powershell.exe`:119> matcher `Bash|PowerShell` охватывает [инструмент PowerShell](#powershell), а также Bash. Одно правило `if` называет только один инструмент, поэтому каждый инструмент получает свой обработчик: первый сужает область до подкоманд Bash, совпадающих с `rm *`, второй — до команд PowerShell, совпадающих с `Remove-Item *`. Оба запускают один и тот же скрипт через `powershell.exe`:

120>120>

121> ```json theme={null}121> ```json theme={null}

122> {122> {


225Hooks определяются в JSON файлах настроек. Конфигурация имеет три уровня вложенности:225Hooks определяются в JSON файлах настроек. Конфигурация имеет три уровня вложенности:

226 226 

2271. Выберите [hook event](#hook-events) для ответа, например `PreToolUse` или `Stop`2271. Выберите [hook event](#hook-events) для ответа, например `PreToolUse` или `Stop`

2282. Добавьте [matcher group](#matcher-patterns) для фильтрации срабатывания, например "только для инструмента Bash"2282. Добавьте [группу matcher](#matcher-patterns), чтобы фильтровать срабатывание, например «для инструмента Bash»

2293. Определите один или несколько [hook handlers](#hook-handler-fields) для запуска при совпадении2293. Определите один или несколько [hook handlers](#hook-handler-fields) для запуска при совпадении

230 230 

231См. [Как разрешается hook](#how-a-hook-resolves) выше для полного пошагового руководства с аннотированным примером.231См. [Как разрешается hook](#how-a-hook-resolves) выше для полного пошагового руководства с аннотированным примером.


277| Значение фильтра | Оценивается как | Пример |277| Значение фильтра | Оценивается как | Пример |

278| :- | :- | :- |278| :- | :- | :- |

279| `"*"`, `""` или опущено | Совпадение со всеми | срабатывает при каждом возникновении события |279| `"*"`, `""` или опущено | Совпадение со всеми | срабатывает при каждом возникновении события |

280| Только буквы, цифры, `_`, `-`, пробелы, `,` и `\|` | Точная строка или список точных строк, разделённых `\|` или `,` с опциональным окружающим пробелом | `Bash` совпадает только с инструментом Bash; `Edit\|Write` и `Edit, Write` каждый совпадает с любым инструментом точно; `code-reviewer` совпадает только с этим типом агента |280| Только буквы, цифры, `_`, `-`, пробелы, `,` и `\|` | Точная строка или список точных строк, разделённых `\|` или `,` с необязательными пробелами вокруг | `Bash` совпадает с инструментом Bash, а для `PreToolUse` и `PermissionRequest` также с [командами Monitor](#match-monitor-commands); `Edit\|Write` и `Edit, Write` точно совпадают с любым из двух инструментов; `code-reviewer` совпадает только с этим типом агента |

281| Содержит любой другой символ | Регулярное выражение JavaScript без привязки | `^Notebook` совпадает с любым инструментом, имя которого начинается с `Notebook`; `mcp__memory__.*` совпадает с каждым инструментом сервера `memory` |281| Содержит любой другой символ | Регулярное выражение JavaScript без привязки | `^Notebook` совпадает с любым инструментом, имя которого начинается с `Notebook`; `mcp__memory__.*` совпадает с каждым инструментом сервера `memory` |

282 282 

283Фильтр на пути регулярного выражения проверяется с помощью `RegExp.prototype.test` JavaScript, который успешно совпадает в любом месте значения. `Edit.*` совпадает как с `Edit`, так и с `NotebookEdit`; оберните шаблон в `^` и `$`, как в `^Edit$`, когда вам нужно совпадение всей строки.283Фильтр на пути регулярного выражения проверяется с помощью `RegExp.prototype.test` JavaScript, который успешно совпадает в любом месте значения. `Edit.*` совпадает как с `Edit`, так и с `NotebookEdit`; оберните шаблон в `^` и `$`, как в `^Edit$`, когда вам нужно совпадение всей строки.


294| `SessionStart` | как сеанс начался | `startup`, `resume`, `clear`, `compact`, `fork` |294| `SessionStart` | как сеанс начался | `startup`, `resume`, `clear`, `compact`, `fork` |

295| `Setup` | какой флаг CLI запустил setup | `init`, `maintenance` |295| `Setup` | какой флаг CLI запустил setup | `init`, `maintenance` |

296| `SessionEnd` | почему сеанс закончился | `clear`, `resume`, `logout`, `prompt_input_exit`, `other` |296| `SessionEnd` | почему сеанс закончился | `clear`, `resume`, `logout`, `prompt_input_exit`, `other` |

297| `Notification` | тип уведомления | `permission_prompt`, `idle_prompt`, `auth_success`, `elicitation_dialog`, `elicitation_url_dialog`, `elicitation_complete`, `elicitation_response`, `agent_needs_input`, `agent_completed`, `quota_auto_resume_fired`, `quota_auto_resume_stale`, `quota_auto_resume_disabled`, `plugin_notification` |297| `Notification` | тип уведомления | `permission_prompt`, `idle_prompt`, `auth_success`, `auth_storage_failure`, `elicitation_dialog`, `elicitation_url_dialog`, `elicitation_complete`, `elicitation_response`, `agent_needs_input`, `agent_completed`, `quota_auto_resume_fired`, `quota_auto_resume_stale`, `quota_auto_resume_disabled`, `plugin_notification` |

298| `SubagentStart` | тип агента | `general-purpose`, `Explore`, `Plan`, пользовательские имена агентов или имена с областью плагина, такие как `^my-plugin:reviewer$` |298| `SubagentStart` | тип агента | `general-purpose`, `Explore`, `Plan`, пользовательские имена агентов или имена с областью плагина, такие как `^my-plugin:reviewer$` |

299| `PreCompact`, `PostCompact` | что вызвало компактирование | `manual`, `auto` |299| `PreCompact`, `PostCompact` | что вызвало компактирование | `manual`, `auto` |

300| `PreModelSwitch`, `PostModelSwitch` | каноническое имя модели, на которую переключается сеанс, как описано в [PreModelSwitch](#premodelswitch) | `claude-opus-5`, `claude-opus-4-6\|claude-opus-5`, `.*opus.*` |300| `PreModelSwitch`, `PostModelSwitch` | каноническое имя модели, на которую переключается сеанс, как описано в [PreModelSwitch](#premodelswitch) | `claude-opus-5`, `claude-opus-4-6\|claude-opus-5`, `.*opus.*` |


385}385}

386```386```

387 387 

388#### Сопоставление команд Monitor

389 

390Хук [`PreToolUse`](#pretooluse) или [`PermissionRequest`](#permissionrequest) с matcher `Bash` также запускается для shell-команд, которые Claude запускает с помощью [инструмента Monitor](https://code.claude.com/docs/ru/tools-reference.md#monitor-tool), но его `allow` и [`updatedInput`](#pretooluse-decision-control) на них не действуют. Требуется Claude Code v2.1.314 или новее. Matcher вроде `Bash|PowerShell`, `^Bash$` и `Bash.*` тоже являются matcher `Bash`. Хук с matcher `Bash` не запускается для [отслеживания WebSocket](https://code.claude.com/docs/ru/tools-reference.md#websocket-source), а хук `PostToolUse` с таким matcher не запускается для Monitor.

391 

392Хук, запускаемый для команды Monitor, может отклонить её или заставить Claude Code спросить вас о ней. Чтобы разрешить или переписать команду, замените matcher `Bash` на matcher, включающий Monitor:

393 

394* **Matcher, включающий Monitor**: с matcher вроде `Bash|Monitor` или `.*`, либо без matcher, хук получает собственные входные данные вызова Monitor, и `allow` и `updatedInput` применяются. В [`if`](#common-fields) указывайте Monitor, как в `Monitor(tail *)`, который сопоставляется по [тем же правилам, что и `Bash(tail *)`](#bash-if-matching). Если в его `if` указан Bash, хук всё равно получает входные данные вызова Monitor, но `allow` и `updatedInput` не действуют

395* **Matcher `Bash`**: хук получает вызов Bash. В `if` указывайте Bash, как в `Bash(tail *)`. Хук не запускается, если в его `if` указан Monitor

396 

388### Hook handler fields397### Hook handler fields

389 398 

390Каждый объект во внутреннем массиве `hooks` — это hook handler: команда оболочки, конечная точка HTTP, инструмент MCP, подсказка LLM или агент, который запускается при совпадении фильтра. Есть пять типов:399Каждый объект во внутреннем массиве `hooks` — это hook handler: команда оболочки, конечная точка HTTP, инструмент MCP, подсказка LLM или агент, который запускается при совпадении фильтра. Есть пять типов:


811* **Две или более строк, каждая из которых по отдельности разбирается как JSON, причём первая начинается с `{`, а последняя заканчивается `}`**: обычный текст, если ни одна строка не является объектом вывода JSON, задающим какое-либо поле. Если такая строка есть, вывод считается ошибкой разбора, поэтому выводите этот объект, не добавляя в stdout ничего другого.820* **Две или более строк, каждая из которых по отдельности разбирается как JSON, причём первая начинается с `{`, а последняя заканчивается `}`**: обычный текст, если ни одна строка не является объектом вывода JSON, задающим какое-либо поле. Если такая строка есть, вывод считается ошибкой разбора, поэтому выводите этот объект, не добавляя в stdout ничего другого.

812* **Всё остальное, что начинается с `{` и заканчивается `}`, но не является корректным JSON**: ошибка разбора.821* **Всё остальное, что начинается с `{` и заканчивается `}`, но не является корректным JSON**: ошибка разбора.

813 822 

814Для большинства событий Claude Code записывает stdout в отладочный лог и не показывает его в транскрипте. Исключения — `UserPromptSubmit`, `UserPromptExpansion`, `SessionStart` и `PostModelSwitch`, для которых Claude Code добавляет обычный текст из stdout как контекст, который Claude может видеть и учитывать. Для этих событий Claude Code не добавляет stdout, который ему не удалось разобрать.823Для большинства событий Claude Code записывает stdout в отладочный лог и не показывает его в транскрипте. Для следующих событий ваш stdout доходит до Claude или до сводки сжатия контекста:

824 

825* **`UserPromptSubmit`, `UserPromptExpansion`, `SessionStart` и `PostModelSwitch`**: Claude Code добавляет обычный текст из stdout как контекст, который Claude может видеть и учитывать. Stdout, который ему не удалось разобрать, Claude Code не добавляет.

826* **`PreCompact`**: ваш stdout становится [инструкциями для сводки сжатия контекста](#precompact-output)

815 827 

816Claude никогда не видит stderr хука, завершившегося с кодом 0. Чтобы прочитать его самостоятельно для таких событий, как `PreToolUse`, включите [отладочное логирование](#debug-hooks). Чтобы передать предупреждение Claude из хука `PostToolUse` или `PostToolUseFailure`, вместо этого выйдите с кодом 2, чтобы [Claude увидел stderr](#exit-code-2-behavior-per-event), хотя инструмент уже выполнился.828Claude никогда не видит stderr хука, завершившегося с кодом 0. Чтобы прочитать его самостоятельно для таких событий, как `PreToolUse`, включите [отладочное логирование](#debug-hooks). Чтобы передать предупреждение Claude из хука `PostToolUse` или `PostToolUseFailure`, вместо этого выйдите с кодом 2, чтобы [Claude увидел stderr](#exit-code-2-behavior-per-event), хотя инструмент уже выполнился.

817 829 


1050Строки `additionalContext`, `systemMessage` и `initialUserMessage` хука, а также его обычный stdout ограничены 10 000 символов:1062Строки `additionalContext`, `systemMessage` и `initialUserMessage` хука, а также его обычный stdout ограничены 10 000 символов:

1051 1063 

1052* **Область действия**: Claude Code измеряет каждую строку отдельно, даже если для одного события выполняется несколько хуков. Для вывода JSON каждое поле измеряется отдельно; обычный stdout измеряется целиком.1064* **Область действия**: Claude Code измеряет каждую строку отдельно, даже если для одного события выполняется несколько хуков. Для вывода JSON каждое поле измеряется отдельно; обычный stdout измеряется целиком.

1053* **Превышение лимита**: Claude Code сохраняет вывод в файл в каталоге сессии и заменяет его путём к файлу и превью, содержащим до 2 000 первых символов. Большой корректный результат Bash обрабатывается так же, как описано в разделе [Ограничения вывода](https://code.claude.com/docs/ru/tools-reference.md#output-limits). В отличие от этого ограничения Bash, у данного лимита нет настройки или переменной окружения, позволяющей его увеличить.1065* **Превышение лимита**: за исключением [stdout хука PreCompact](#precompact-output), Claude Code сохраняет вывод в файл в каталоге сессии. Он заменяет вывод путём к файлу и превью, содержащим до 2 000 первых символов. Большой корректный результат Bash обрабатывается так же, как описано в разделе [Ограничения вывода](https://code.claude.com/docs/ru/tools-reference.md#output-limits). В отличие от этого ограничения Bash, у данного лимита нет настройки или переменной окружения, позволяющей его увеличить.

1054* **Чтение файла**: Claude Code не просит Claude прочитать файл, поэтому держите всё, что Claude должен видеть всегда, в пределах лимита.1066* **Чтение файла**: Claude Code не просит Claude прочитать файл, поэтому держите всё, что Claude должен видеть всегда, в пределах лимита.

1055 1067 

1056Объект JSON поддерживает три вида полей:1068Объект JSON поддерживает три вида полей:


1954 1966 

1955#### Управление решениями PreToolUse1967#### Управление решениями PreToolUse

1956 1968 

1957Хуки `PreToolUse` могут управлять тем, будет ли выполнен вызов инструмента. В отличие от других хуков, использующих поле `decision` верхнего уровня, PreToolUse возвращает своё решение внутри объекта `hookSpecificOutput`. Это даёт более богатые возможности управления: четыре исхода (allow, deny, ask или defer), а также возможность изменять входные данные инструмента перед выполнением.1969Хуки `PreToolUse` могут управлять тем, будет ли выполнен вызов инструмента. В отличие от других хуков, использующих поле `decision` верхнего уровня, PreToolUse возвращает своё решение внутри объекта `hookSpecificOutput`. Это даёт более богатые возможности управления: четыре исхода (разрешить, запретить, запросить подтверждение или отложить), а также возможность изменить входные данные инструмента перед выполнением. О том, как разрешить или переписать команду Monitor, см. [Сопоставление команд Monitor](#match-monitor-commands).

1958 1970 

1959| Поле | Описание |1971| Поле | Описание |

1960| :- | :- |1972| :- | :- |


2051 2063 

2052#### Отложить вызов инструмента на потом2064#### Отложить вызов инструмента на потом

2053 2065 

2054`"defer"` предназначен для интеграций, которые запускают `claude -p` как подпроцесс и читают его вывод JSON, например приложение на Agent SDK или пользовательский интерфейс, построенный поверх Claude Code. Он позволяет вызывающему процессу приостановить Claude на вызове инструмента, собрать входные данные через свой интерфейс и продолжить с того же места. Claude Code учитывает это значение только в [неинтерактивном режиме](https://code.claude.com/docs/ru/headless.md) с флагом `-p`. В интерактивных сессиях он записывает в лог предупреждение и игнорирует результат хука.2066`"defer"` предназначен для интеграций, которые запускают `claude -p` как подпроцесс и читают его вывод в формате JSON, например для приложения на Agent SDK или собственного интерфейса, построенного поверх Claude Code. Он позволяет вызывающему процессу приостановить Claude на вызове инструмента, собрать ввод через собственный интерфейс и продолжить с того места, где работа была прервана.

2067 

2068Claude Code учитывает `"defer"` только в [неинтерактивном режиме](https://code.claude.com/docs/ru/headless.md) с флагом `-p` и только когда Claude делает единственный вызов инструмента за ход:

2069 

2070* **В интерактивных сессиях**: записывается предупреждение, а результат хука игнорируется

2071* **Несколько вызовов инструментов одновременно**: `"defer"` игнорируется с предупреждением, и инструмент проходит обычный процесс проверки разрешений

2055 2072 

2056Типичный случай — инструмент `AskUserQuestion`: Claude хочет что-то спросить у пользователя, но терминала для ответа нет. Запуск `-p` предлагает `AskUserQuestion` только при наличии [хоста разрешений](https://code.claude.com/docs/ru/headless.md#turn-off-permission-prompts-in-unattended-runs), например MCP-инструмента, который вы передаёте через `--permission-prompt-tool`, поэтому начинайте запуск с ним. Цикл работает так:2073Типичный случай — инструмент `AskUserQuestion`: Claude хочет что-то спросить у пользователя, но терминала для ответа нет. Запуск `-p` предлагает `AskUserQuestion` только при наличии [хоста разрешений](https://code.claude.com/docs/ru/headless.md#turn-off-permission-prompts-in-unattended-runs), например MCP-инструмента, который вы передаёте через `--permission-prompt-tool`, поэтому начинайте запуск с ним. Цикл работает так:

2057 2074 


20614. Вызывающий процесс выполняет `claude -p --resume <session-id>` с тем же хостом разрешений. Тот же вызов инструмента снова вызывает `PreToolUse`.20784. Вызывающий процесс выполняет `claude -p --resume <session-id>` с тем же хостом разрешений. Тот же вызов инструмента снова вызывает `PreToolUse`.

20625. Хук возвращает `permissionDecision: "allow"` с ответом в `updatedInput`. Инструмент выполняется, и Claude продолжает работу.20795. Хук возвращает `permissionDecision: "allow"` с ответом в `updatedInput`. Инструмент выполняется, и Claude продолжает работу.

2063 2080 

2064Поле `deferred_tool_use` содержит `id`, `name` и `input` инструмента. `input` — это параметры, которые Claude сформировал для вызова инструмента, зафиксированные до выполнения:2081Поле `deferred_tool_use` содержит `id`, `name` и `input` инструмента:

2065 2082 

2066```json theme={null}2083```json theme={null}

2067{2084{


2077}2094}

2078```2095```

2079 2096 

2080Таймаута или ограничения на повторные попытки нет. Сессия остаётся на диске, пока вы её не возобновите, с учётом очистки по сроку хранения [`cleanupPeriodDays`](https://code.claude.com/docs/ru/settings-reference#cleanupperioddays), которая по умолчанию удаляет файлы сессий через 30 дней согласно [правилам очистки по сроку хранения](https://code.claude.com/docs/ru/claude-directory.md#cleaned-up-automatically).2097Ни таймаута, ни ограничения на число повторных попыток нет. Сессия хранится на диске, пока её не удалит [плановая очистка](https://code.claude.com/docs/ru/claude-directory.md#cleaned-up-automatically) по [`cleanupPeriodDays`](https://code.claude.com/docs/ru/settings-reference#cleanupperioddays), по умолчанию через 30 дней.

2081 

2082Если при возобновлении отложенный инструмент больше недоступен, первый результат возобновления содержит `stop_reason: "tool_deferred_unavailable"` и `is_error: true`, а хук не срабатывает. Это происходит, когда MCP-сервер, предоставлявший инструмент, не подключён в возобновлённой сессии. Данные `deferred_tool_use` всё равно включаются, чтобы вы могли определить, какой инструмент пропал.

2083 

2084* **Если вы не отправили промпт ни при возобновлении, ни после него**, вызов по-прежнему ожидает. Возобновите снова, когда инструмент будет доступен, и он выполнится первым.

2085* **Если вы отправили промпт при возобновлении или после него**, Claude Code отвечает на него без результата инструмента и отбрасывает отложенный вызов. Если вызов всё ещё нужен, отправьте новый промпт, когда инструмент станет доступен.

2086 2098 

2087Если ответ, которого вы ждёте, ещё не готов при возобновлении без промпта, хук может снова вернуть `"defer"`. Если вы отправили промпт и хук снова откладывает вызов, Claude Code обрабатывает промпт так же: отвечает без результата инструмента и отбрасывает вызов. Возобновляйте без промпта, пока хук не вернёт `"allow"` или `"deny"` — так вызывающий процесс выходит из цикла.2099Если ответ ещё не готов к моменту возобновления, хук может снова вернуть `"defer"`. Если при этом возобновлении вы отправили промпт, Claude ответит на него без результата инструмента и не выполнит вызов. Возобновляйте без промпта, пока хук не вернёт `"allow"` или `"deny"`.

2088 

2089`"defer"` работает, только когда Claude делает один вызов инструмента за ход. Если Claude делает несколько вызовов инструментов одновременно, `"defer"` игнорируется с предупреждением, и инструмент проходит обычную процедуру проверки разрешений. Это ограничение существует потому, что при возобновлении можно повторно выполнить только один инструмент: нет способа отложить один вызов из пакета, не оставив остальные неразрешёнными.

2090 2100 

2091> [!NOTE]2101> [!NOTE]

2092>2102>

2093> Чтобы возобновить отложенную сессию в режиме планирования, передайте [`--permission-prompt-tool`](https://code.claude.com/docs/ru/cli-reference#cli-flags) вместе с `--resume`, чтобы Claude Code мог представить план на утверждение. Прочие условия см. в разделе [Возобновление в режиме планирования с `-p`](https://code.claude.com/docs/ru/sessions#resume-in-plan-mode-with-p). Требуется Claude Code v2.1.246 или новее.2103> Чтобы возобновить отложенную сессию в режиме планирования, передайте [`--permission-prompt-tool`](https://code.claude.com/docs/ru/cli-reference#cli-flags) вместе с `--resume`, чтобы Claude Code мог представить план на утверждение. Прочие условия см. в разделе [Возобновление в режиме планирования с `-p`](https://code.claude.com/docs/ru/sessions#resume-in-plan-mode-with-p). Требуется Claude Code v2.1.246 или новее.

2094>2104>

2095> При возобновлении с `-p` Claude Code не восстанавливает никакой другой сохранённый режим разрешений. Он начинает запуск в том режиме разрешений, в котором начался бы новый запуск `claude -p`, поэтому снова передайте `--permission-mode` или `--dangerously-skip-permissions`, если отложенная сессия их использовала. При возобновлении с `claude --resume <session-id>` без `-p` Claude Code восстанавливает сохранённый режим разрешений, за исключениями, перечисленными в разделе [режим разрешений при возобновлении](https://code.claude.com/docs/ru/sessions.md#permission-mode-on-resume).2105> При возобновлении с `-p` Claude Code не восстанавливает никакой другой сохранённый режим разрешений. Запуск начинается в том режиме разрешений, в котором начался бы новый запуск `claude -p`, поэтому снова передайте `--permission-mode` или `--dangerously-skip-permissions`, если отложенная сессия их использовала.

2106 

2107##### Возобновление, когда отложенный инструмент недоступен

2108 

2109Результат с `stop_reason: "tool_deferred_unavailable"` означает, что инструмент отложенного вызова недоступен в возобновлённой сессии, например потому что его MCP-сервер не подключён. Ваш хук `PreToolUse` не срабатывает, а поле `deferred_tool_use` результата указывает инструмент.

2110 

2111Пока вызов ожидает, любой отправленный вами промпт не доходит до Claude, а запуск завершается с кодом выхода 1. Поле `result` начинается с `<tool> isn't available, so its deferred call didn't run.` Выполните вызов или отбросьте его, чтобы он не выполнялся:

2112 

2113* **Чтобы выполнить вызов**: сделайте инструмент доступным и возобновите сессию снова.

2114* **Чтобы отбросить вызов**: возобновите сессию с промптом, установив [`CLAUDE_CODE_DROP_UNAVAILABLE_DEFERRED_TOOL`](https://code.claude.com/docs/ru/env-vars#variables) в `1`. Claude получит ошибку в качестве результата вызова и ответит на ваш промпт. При следующем возобновлении ожидающих вызовов не будет.

2115 

2116Когда вы отбрасываете вызов, запуск записывает результат `tool_deferred_unavailable` с пустым полем `result`, а затем ответ Claude во втором результате. Он завершается с кодом выхода 0, если только этот ответ не является ошибкой. Если вы установите переменную и не отправите промпт, запуск всё равно отбросит вызов и завершится с кодом выхода 1.

2117 

2118До v2.1.319 Claude Code отвечал на промпт без результата инструмента и отбрасывал вызов. В этих версиях отправьте новый промпт, когда инструмент станет доступен.

2096 2119 

2097### PermissionRequest2120### PermissionRequest

2098 2121 


2148| `message` | Только для `"deny"`: сообщает Claude, почему разрешение было отклонено |2171| `message` | Только для `"deny"`: сообщает Claude, почему разрешение было отклонено |

2149| `interrupt` | Только для `"deny"`: если `true`, останавливает Claude |2172| `interrupt` | Только для `"deny"`: если `true`, останавливает Claude |

2150 2173 

2174Чтобы разрешить или переписать команду Monitor, см. раздел [Сопоставление команд Monitor](#match-monitor-commands).

2175 

2151Хук, завершающийся с кодом 2 без объекта `decision`, оставляет процесс обработки разрешения без изменений, а его stderr отбрасывается. Чтобы предоставить или отклонить запрос, верните объект `decision`.2176Хук, завершающийся с кодом 2 без объекта `decision`, оставляет процесс обработки разрешения без изменений, а его stderr отбрасывается. Чтобы предоставить или отклонить запрос, верните объект `decision`.

2152 2177 

2153```json theme={null}2178```json theme={null}


2205* Чтобы запускать хук после успешного завершения любого инструмента, опустите `matcher` или установите его в `"*"`. Тогда ваш хук может сам определить, что изменилось, например выполнив `git status --porcelain`, который также перечисляет неотслеживаемые файлы, пропускаемые `git diff`. Для вызовов инструментов, завершившихся с ошибкой, добавьте тот же хук в [PostToolUseFailure](#posttoolusefailure).2230* Чтобы запускать хук после успешного завершения любого инструмента, опустите `matcher` или установите его в `"*"`. Тогда ваш хук может сам определить, что изменилось, например выполнив `git status --porcelain`, который также перечисляет неотслеживаемые файлы, пропускаемые `git diff`. Для вызовов инструментов, завершившихся с ошибкой, добавьте тот же хук в [PostToolUseFailure](#posttoolusefailure).

2206* Чтобы запускать хук при изменении определённого файла на диске, независимо от того, кто его записал, используйте [FileChanged](#filechanged). Claude Code не запускает хук `PostToolUse` с matcher `Edit|Write`, когда тот же файл перезаписывает команда `Bash` или процесс вне Claude Code.2231* Чтобы запускать хук при изменении определённого файла на диске, независимо от того, кто его записал, используйте [FileChanged](#filechanged). Claude Code не запускает хук `PostToolUse` с matcher `Edit|Write`, когда тот же файл перезаписывает команда `Bash` или процесс вне Claude Code.

2207 2232 

2233#### PostToolUse после прерывания

2234 

2235Если хук `PostToolUse` останавливается раньше времени после того, как вы отправили сообщение или прервали работу во время вызова инструмента, проверьте, нажали ли вы `Ctrl+Enter`, `Enter` или `Esc`:

2236 

2237* **`Ctrl+Enter`**: если нажатие [завершает ход](https://code.claude.com/docs/ru/interactive-mode.md#when-claude-code-sends-what-you-queued) во время работы инструмента и инструмент завершается, ваши хуки `PostToolUse` выполняются на его результате, и у них есть 10 секунд на завершение. Клавиша действует как `Esc`, если вы поставили в очередь команду `!` перед своими сообщениями или фоновые задачи отключены, например с помощью [`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS`](https://code.claude.com/docs/ru/env-vars#variables).

2238* **`Enter`**: сообщение, поставленное в очередь с помощью `Enter`, не прерывает ход, поэтому хуки сохраняют свой обычный `timeout`.

2239* **`Esc`**: вы сразу отменяете хуки, поэтому отправляйте сообщение с помощью `Enter` или `Ctrl+Enter`, когда хуки должны выполниться.

2240 

2241Когда 10 секунд истекают, Claude Code завершает всё ещё работающий хук команды, независимо от его [`timeout`](#common-fields). Чтобы позволить более долгому хуку команды завершиться, запускайте его с [`async: true`](#run-hooks-in-the-background); это означает, что хук не сможет заблокировать или переписать результат.

2242 

2243До v2.1.319 хуки не запускались после того, как вы прерывали ход сообщением, а работающий хук останавливался.

2244 

2208#### Входные данные PostToolUse2245#### Входные данные PostToolUse

2209 2246 

2210Хуки `PostToolUse` срабатывают после того, как инструмент уже успешно выполнился. Входные данные включают как `tool_input` — аргументы, переданные инструменту, так и `tool_response` — возвращённый им результат. Точная схема обоих полей зависит от инструмента. Пути в `tool_input` файловых инструментов приходят в том же формате, что и для [PreToolUse](#pretooluse-input): всегда абсолютные, с нативными разделителями платформы, то есть с обратными слешами в Windows. Для инструмента MCP входные данные также содержат объект [`mcp_server`](#pretooluse-input).2247Хуки `PostToolUse` срабатывают после того, как инструмент уже успешно выполнился. Входные данные включают как `tool_input` — аргументы, переданные инструменту, так и `tool_response` — возвращённый им результат. Точная схема обоих полей зависит от инструмента. Пути в `tool_input` файловых инструментов приходят в том же формате, что и для [PreToolUse](#pretooluse-input): всегда абсолютные, с нативными разделителями платформы, то есть с обратными слешами в Windows. Для инструмента MCP входные данные также содержат объект [`mcp_server`](#pretooluse-input).


2479| `permission_prompt` | Claude нужно ваше подтверждение для использования инструмента или [сетевого запроса](https://code.claude.com/docs/ru/sandboxing.md#network-isolation) команды в песочнице, и запрос ожидает около шести секунд |2516| `permission_prompt` | Claude нужно ваше подтверждение для использования инструмента или [сетевого запроса](https://code.claude.com/docs/ru/sandboxing.md#network-isolation) команды в песочнице, и запрос ожидает около шести секунд |

2480| `idle_prompt` | Claude закончил отвечать около 60 секунд назад, и с тех пор вы ничего не вводили |2517| `idle_prompt` | Claude закончил отвечать около 60 секунд назад, и с тех пор вы ничего не вводили |

2481| `auth_success` | Аутентификация завершена |2518| `auth_success` | Аутентификация завершена |

2519| `auth_storage_failure` | Вход выполнен, но Claude Code не может сохранить новые учётные данные в своё [хранилище учётных данных](https://code.claude.com/docs/ru/authentication.md#credential-management). Срабатывает вместо `auth_success` |

2482| `elicitation_dialog` | MCP-сервер открывает форму запроса данных, и вы ничего не вводили около шести секунд |2520| `elicitation_dialog` | MCP-сервер открывает форму запроса данных, и вы ничего не вводили около шести секунд |

2483| `elicitation_url_dialog` | MCP-сервер просит вас открыть URL в браузере, и вы ничего не вводили около шести секунд |2521| `elicitation_url_dialog` | MCP-сервер просит вас открыть URL в браузере, и вы ничего не вводили около шести секунд |

2484| `elicitation_complete` | MCP-сервер сообщает, что [запрос данных в режиме URL](#elicitation-input) завершён |2522| `elicitation_complete` | MCP-сервер сообщает, что [запрос данных в режиме URL](#elicitation-input) завершён |


2490| `quota_auto_resume_disabled` | Claude Code прекращает ожидание лимита использования claude.ai, не продолжая вашу задачу: [`autoContinueAtUsageLimit`](https://code.claude.com/docs/ru/settings-reference#autocontinueatusagelimit) был отключён или сброс сместился более чем на 24 часа вперёд во время ожидания, которое Claude Code начал самостоятельно, продолженная задача продолжала упираться в лимит, или продолжение было заблокировано до того, как дошло до модели. Не срабатывает, когда вы нажимаете `Esc` или `Ctrl+C` или выбираете **Don't continue automatically** |2528| `quota_auto_resume_disabled` | Claude Code прекращает ожидание лимита использования claude.ai, не продолжая вашу задачу: [`autoContinueAtUsageLimit`](https://code.claude.com/docs/ru/settings-reference#autocontinueatusagelimit) был отключён или сброс сместился более чем на 24 часа вперёд во время ожидания, которое Claude Code начал самостоятельно, продолженная задача продолжала упираться в лимит, или продолжение было заблокировано до того, как дошло до модели. Не срабатывает, когда вы нажимаете `Esc` или `Ctrl+C` или выбираете **Don't continue automatically** |

2491| `plugin_notification` | [Мод](https://code.claude.com/docs/ru/plugins/mods/api.md#show-something-without-starting-a-turn) выводит уведомление с помощью `$.ui.notify`. `title` хука — это имя мода, если мод не задал его сам |2529| `plugin_notification` | [Мод](https://code.claude.com/docs/ru/plugins/mods/api.md#show-something-without-starting-a-turn) выводит уведомление с помощью `$.ui.notify`. `title` хука — это имя мода, если мод не задал его сам |

2492 2530 

2493Для типов `quota_auto_resume_fired`, `quota_auto_resume_stale` и `quota_auto_resume_disabled` требуется Claude Code v2.1.234 или новее.2531Типы `quota_auto_resume_fired`, `quota_auto_resume_stale` и `quota_auto_resume_disabled` требуют Claude Code v2.1.234 или новее. Тип `auth_storage_failure` требует v2.1.288 или новее.

2494 2532 

2495В терминальных сессиях для `permission_prompt` при сетевом запросе команды в песочнице требуется Claude Code v2.1.246 или новее.2533В терминальных сессиях для `permission_prompt` при сетевом запросе команды в песочнице требуется Claude Code v2.1.246 или новее.

2496 2534 


3326}3364}

3327```3365```

3328 3366 

3367#### Выходные данные PreCompact

3368 

3369Когда хук PreCompact завершается с кодом 0 и не блокирует сжатие, Claude Code использует его stdout как инструкции для сводки сжатия. Ограничивайте этот stdout 10 000 символов на хук. Более длинный вывод Claude Code обрезает на этом пределе и добавляет маркер.

3370 

3329### PostCompact3371### PostCompact

3330 3372 

3331Запускается после того, как Claude Code завершает операцию сжатия контекста. Используйте это событие, чтобы реагировать на новое сжатое состояние, например чтобы записать в лог сгенерированную сводку или обновить внешнее состояние. Claude Code отбрасывает поля `systemMessage` и `continue` хука PostCompact.3373Запускается после того, как Claude Code завершает операцию сжатия контекста. Используйте это событие, чтобы реагировать на новое сжатое состояние, например чтобы записать в лог сгенерированную сводку или обновить внешнее состояние. Claude Code отбрасывает поля `systemMessage` и `continue` хука PostCompact.

hooks-guide.md +4 −3

Details

177> >177> >

178> > Если вы запускаете Claude Code внутри WSL, `powershell.exe` должен быть доступен в вашем `PATH` через Windows interop.178> > Если вы запускаете Claude Code внутри WSL, `powershell.exe` должен быть доступен в вашем `PATH` через Windows interop.

179 179 

180Пустой `matcher` срабатывает на все типы уведомлений. Чтобы срабатывать только на определённые события, установите его на одно из этих значений:180Пустой `matcher` срабатывает на все типы уведомлений. Чтобы срабатывать только на определённые события, установите его на тип уведомления, например на одно из этих значений:

181 181 

182| Matcher | Срабатывает когда |182| Matcher | Срабатывает когда |

183| :- | :- |183| :- | :- |

184| `permission_prompt` | Claude требует вашего одобрения использования инструмента или [сетевого запроса](https://code.claude.com/docs/ru/sandboxing.md#network-isolation) изолированной команды, и запрос ждал около шести секунд |184| `permission_prompt` | Claude требует вашего одобрения использования инструмента или [сетевого запроса](https://code.claude.com/docs/ru/sandboxing.md#network-isolation) изолированной команды, и запрос ждал около шести секунд |

185| `idle_prompt` | Claude завершил ответ около 60 секунд назад и вы не печатали с тех пор |185| `idle_prompt` | Claude завершил ответ около 60 секунд назад и вы не печатали с тех пор |

186| `auth_success` | Аутентификация завершена |186| `auth_success` | Аутентификация завершена |

187| `auth_storage_failure` | Вход выполнен, но Claude Code не может сохранить новые учётные данные в своё [хранилище учётных данных](https://code.claude.com/docs/ru/authentication.md#credential-management). Срабатывает вместо `auth_success` |

187| `elicitation_dialog` | Сервер MCP открывает форму выяснения и вы не печатали около шести секунд |188| `elicitation_dialog` | Сервер MCP открывает форму выяснения и вы не печатали около шести секунд |

188| `elicitation_url_dialog` | Сервер MCP просит вас открыть URL браузера и вы не печатали около шести секунд |189| `elicitation_url_dialog` | Сервер MCP просит вас открыть URL браузера и вы не печатали около шести секунд |

189| `elicitation_complete` | Сервер MCP сообщает, что [выяснение в режиме URL](https://code.claude.com/docs/ru/hooks.md#elicitation-input) завершено |190| `elicitation_complete` | Сервер MCP сообщает, что [выяснение в режиме URL](https://code.claude.com/docs/ru/hooks.md#elicitation-input) завершено |


197 198 

198Claude Code по-разному рассчитывает время `permission_prompt` в терминале и в Claude Desktop, расширении VS Code и других хостах, которые отвечают на запросы разрешений через Agent SDK. См. [когда срабатывает каждый тип уведомления](https://code.claude.com/docs/ru/hooks.md#notification) для обоих времён.199Claude Code по-разному рассчитывает время `permission_prompt` в терминале и в Claude Desktop, расширении VS Code и других хостах, которые отвечают на запросы разрешений через Agent SDK. См. [когда срабатывает каждый тип уведомления](https://code.claude.com/docs/ru/hooks.md#notification) для обоих времён.

199 200 

200Matchers `quota_auto_resume_fired`, `quota_auto_resume_stale` и `quota_auto_resume_disabled` требуют Claude Code v2.1.234 или позже.201Matchers `quota_auto_resume_fired`, `quota_auto_resume_stale` и `quota_auto_resume_disabled` требуют Claude Code v2.1.234 или позже. Matcher `auth_storage_failure` требует v2.1.288 или позже.

201 202 

202В сеансах терминала `permission_prompt` для сетевого запроса изолированной команды требует Claude Code v2.1.246 или позже.203В сеансах терминала `permission_prompt` для сетевого запроса изолированной команды требует Claude Code v2.1.246 или позже.

203 204 


688| `SessionStart` | как начался сеанс | `startup`, `resume`, `clear`, `compact`, `fork` |689| `SessionStart` | как начался сеанс | `startup`, `resume`, `clear`, `compact`, `fork` |

689| `Setup` | какой флаг CLI запустил setup | `init`, `maintenance` |690| `Setup` | какой флаг CLI запустил setup | `init`, `maintenance` |

690| `SessionEnd` | почему закончился сеанс | `clear`, `resume`, `logout`, `prompt_input_exit`, `other` |691| `SessionEnd` | почему закончился сеанс | `clear`, `resume`, `logout`, `prompt_input_exit`, `other` |

691| `Notification` | тип уведомления | `permission_prompt`, `idle_prompt`, `auth_success`, `elicitation_dialog`, `elicitation_url_dialog`, `elicitation_complete`, `elicitation_response`, `agent_needs_input`, `agent_completed`, `quota_auto_resume_fired`, `quota_auto_resume_stale`, `quota_auto_resume_disabled`, `plugin_notification` |692| `Notification` | тип уведомления | `permission_prompt`, `idle_prompt`, `auth_success`, `auth_storage_failure`, `elicitation_dialog`, `elicitation_url_dialog`, `elicitation_complete`, `elicitation_response`, `agent_needs_input`, `agent_completed`, `quota_auto_resume_fired`, `quota_auto_resume_stale`, `quota_auto_resume_disabled`, `plugin_notification` |

692| `SubagentStart` | тип агента | `general-purpose`, `Explore`, `Plan` или пользовательские имена агентов |693| `SubagentStart` | тип агента | `general-purpose`, `Explore`, `Plan` или пользовательские имена агентов |

693| `PreCompact`, `PostCompact` | что запустило компактирование | `manual`, `auto` |694| `PreCompact`, `PostCompact` | что запустило компактирование | `manual`, `auto` |

694| `PreModelSwitch`, `PostModelSwitch` | каноническое имя модели, на которую переключается сеанс, как описано в [PreModelSwitch](https://code.claude.com/docs/ru/hooks.md#premodelswitch) | `claude-opus-5`, `claude-opus-4-6\|claude-opus-5`, `.*opus.*` |695| `PreModelSwitch`, `PostModelSwitch` | каноническое имя модели, на которую переключается сеанс, как описано в [PreModelSwitch](https://code.claude.com/docs/ru/hooks.md#premodelswitch) | `claude-opus-5`, `claude-opus-4-6\|claude-opus-5`, `.*opus.*` |

mcp.md +13 −3

Details

252 252 

253Статусы из этого списка отражают решение конфигурации, а не попытку подключения, поэтому Claude Code выводит их без подключения к серверу:253Статусы из этого списка отражают решение конфигурации, а не попытку подключения, поэтому Claude Code выводит их без подключения к серверу:

254 254 

255* ``⏸ Pending approval (run `claude` to approve)``: сервер с областью действия проекта из `.mcp.json`, который вы ещё не подтвердили. Claude Code показывает его и в `claude mcp list`, и в `claude mcp get <name>`. Запустите `claude` в интерактивном режиме, чтобы просмотреть и подтвердить его.255* ``⏸ Pending approval (run `claude` to approve)``: сервер уровня проекта из `.mcp.json`, который вы ещё не подтвердили. Claude Code показывает его и в `claude mcp list`, и в `claude mcp get <name>`. Запустите `claude` в интерактивном режиме, чтобы просмотреть и подтвердить его.

256* `✘ Rejected (see disabledMcpjsonServers in settings)`: сервер из `.mcp.json`, который отклоняет запись [`disabledMcpjsonServers`](https://code.claude.com/docs/ru/settings-reference#disabledmcpjsonservers). Claude Code показывает его только в `claude mcp get <name>`.256* `✘ Rejected (see disabledMcpjsonServers in settings)`: сервер из `.mcp.json`, который отклоняет запись [`disabledMcpjsonServers`](https://code.claude.com/docs/ru/settings-reference#disabledmcpjsonservers). Claude Code показывает его только в `claude mcp get <name>`.

257* `⊘ Disabled for this project (re-enable via /mcp)`: сервер, указанный в списке [`disabledMcpServers`](#disable-a-server-without-removing-it) проекта. Claude Code показывает его и в `claude mcp list`, и в `claude mcp get <name>`. Включите сервер обратно в панели `/mcp`.257* `⊘ Disabled for this project (re-enable via /mcp)`: сервер, указанный в списке [`disabledMcpServers`](#disable-a-server-without-removing-it) проекта. Claude Code показывает его и в `claude mcp list`, и в `claude mcp get <name>`. Включите сервер обратно в панели `/mcp`.

258* `✘ Blocked by enterprise managed policy`: сервер, который отклоняет одна из политик вашей организации. Claude Code показывает его и в `claude mcp list`, и в `claude mcp get <name>`. Сервер, заблокированный списком разрешённых, списком запрещённых или другим ограничением в [управляемой конфигурации MCP](https://code.claude.com/docs/ru/managed-mcp.md#how-restrictions-appear-to-users), скрыт в обеих командах, а не показан с этим статусом. Спросите администратора, какая политика блокирует сервер.258* `✘ Blocked by enterprise managed policy`: сервер, который отклоняет одна из политик вашей организации. Claude Code показывает его и в `claude mcp list`, и в `claude mcp get <name>`. Сервер, заблокированный списком разрешённых, списком запрещённых или другим ограничением в [управляемой конфигурации MCP](https://code.claude.com/docs/ru/managed-mcp.md#how-restrictions-appear-to-users), скрыт в обеих командах, а не показан с этим статусом. Спросите администратора, какая политика блокирует сервер.


306 306 

307Панель `/mcp` показывает количество инструментов рядом с каждым подключённым сервером и помечает серверы, которые объявляют возможность tools, но не предоставляют ни одного инструмента.307Панель `/mcp` показывает количество инструментов рядом с каждым подключённым сервером и помечает серверы, которые объявляют возможность tools, но не предоставляют ни одного инструмента.

308 308 

309##### Количество инструментов в облачной сессии

310 

311В [облачной сессии](https://code.claude.com/docs/ru/claude-code-on-the-web.md) значение вида `3 of 13 tools available` означает, что Claude не может использовать остальные 10. Проверьте, среди прочего, следующие причины:

312 

313* **Правило запрета в `.claude/settings.json` вашего репозитория называет этот инструмент или весь его сервер**: удалите [правило](https://code.claude.com/docs/ru/permissions.md#mcp), если [ваша сессия читает этот файл](https://code.claude.com/docs/ru/settings.md#settings-in-cloud-sessions)

314* **Полное имя инструмента длиннее 128 символов**: выполните [шаги для слишком длинного имени](https://code.claude.com/docs/ru/errors.md#mcp-tool-name-over-128-characters)

315* **Сервер предоставляет инструмент для своего собственного интерфейса, а не для Claude**: если вы поддерживаете сервер, добавьте `model` в `_meta.ui.visibility` инструмента, чтобы предоставить инструмент Claude. В противном случае исправлять нечего.

316 

317##### Инструменты сервера, который ещё подключается

318 

309Если для вашего запроса нужны инструменты сервера, который всё ещё подключается в фоне, Claude ждёт этот сервер, прежде чем продолжить. То, как происходит ожидание, зависит от вашей конфигурации:319Если для вашего запроса нужны инструменты сервера, который всё ещё подключается в фоне, Claude ждёт этот сервер, прежде чем продолжить. То, как происходит ожидание, зависит от вашей конфигурации:

310 320 

311* **С [поиском инструментов](#scale-with-mcp-tool-search), по умолчанию**: ожидание происходит внутри вызова `ToolSearch`.321* **С [поиском инструментов](#scale-with-mcp-tool-search), по умолчанию**: ожидание происходит внутри вызова `ToolSearch`.


349* Прерывает [вход через MCP OAuth](#authenticate-with-remote-mcp-servers), если ответ авторизации указывает неожиданного издателя.359* Прерывает [вход через MCP OAuth](#authenticate-with-remote-mcp-servers), если ответ авторизации указывает неожиданного издателя.

350* Отправляет [учётные данные MCP OAuth](#authenticate-with-remote-mcp-servers) только на эндпоинт токена, обслуживаемый по HTTPS или на `localhost`, `127.0.0.1` или `::1`. Вход не удаётся для сервера, эндпоинт токена которого — простой `http://` в любом другом месте, например на устройстве в вашей локальной сети. См. [Refusing to send credentials to non-https token endpoint](https://code.claude.com/docs/ru/errors.md#refusing-to-send-credentials-to-non-https-token-endpoint).360* Отправляет [учётные данные MCP OAuth](#authenticate-with-remote-mcp-servers) только на эндпоинт токена, обслуживаемый по HTTPS или на `localhost`, `127.0.0.1` или `::1`. Вход не удаётся для сервера, эндпоинт токена которого — простой `http://` в любом другом месте, например на устройстве в вашей локальной сети. См. [Refusing to send credentials to non-https token endpoint](https://code.claude.com/docs/ru/errors.md#refusing-to-send-credentials-to-non-https-token-endpoint).

351 361 

352Anthropic может оставить конкретный сервер на более раннем протоколе или без этого потока с помощью флага функции, который получает Claude Code.362Anthropic может оставить конкретный сервер на более ранней версии протокола или без этого потока с помощью флага функции, который получает Claude Code. Чтобы выбрать среду выполнения самостоятельно, задайте [`MCP_SDK_GENERATION`](https://code.claude.com/docs/ru/env-vars) значение `v1` или `v2`.

353 363 

354Чтобы выбрать среду выполнения самостоятельно, установите [`MCP_SDK_GENERATION`](https://code.claude.com/docs/ru/env-vars) в `v1` или `v2`. Чтобы определить, будет ли Claude Code спрашивать, установите [`MCP_PROTOCOL_NEGOTIATION`](https://code.claude.com/docs/ru/env-vars) в `auto` или `legacy`.364Чтобы решить, спрашивает ли Claude Code серверы о более новой ревизии, задайте [`MCP_PROTOCOL_NEGOTIATION`](https://code.claude.com/docs/ru/env-vars) значение `auto` или `legacy`. Если эта переменная не задана, Claude Code может не спрашивать stdio-сервер в течение 7 дней, например после того как сервер завершился в ответ на вопрос. Чтобы обновлённый сервер был опрошен раньше, задайте `auto`.

355 365 

356### Динамическое обновление инструментов366### Динамическое обновление инструментов

357 367 

mobile.md +1 −1

Details

66 66 

67### Получайте push-уведомления67### Получайте push-уведомления

68 68 

69Когда Remote Control активен, Claude может отправлять push-уведомления на ваш телефон, обычно когда долгоживущая задача завершается или когда ему нужно решение от вас. Вы также можете запросить его в своём запросе, например `notify me when the tests finish`. См. [мобильные push-уведомления](https://code.claude.com/docs/ru/remote-control.md#mobile-push-notifications) для двух переключателей `/config` и устранения неполадок доставки.69Когда Remote Control активен, Claude может отправлять push-уведомления на ваш телефон, когда долгая задача завершается или когда ему нужно решение от вас. Вы также можете попросить об уведомлении в своём промпте, например `notify me when the tests finish`. См. [мобильные push-уведомления](https://code.claude.com/docs/ru/remote-control.md#mobile-push-notifications) для двух переключателей `/config` и устранения неполадок доставки.

70 70 

71Dispatch отправляет своё собственное уведомление, когда сеанс Code, который он создал, завершается или требует вашего одобрения, описано в [сеансах из Dispatch](https://code.claude.com/docs/ru/desktop.md#sessions-from-dispatch).71Dispatch отправляет своё собственное уведомление, когда сеанс Code, который он создал, завершается или требует вашего одобрения, описано в [сеансах из Dispatch](https://code.claude.com/docs/ru/desktop.md#sessions-from-dispatch).

72 72 

model-config.md +10 −1

Details

566* Если обе модели помечают один и тот же запрос, вы можете отредактировать промпт и повторить попытку или начать новую сессию.566* Если обе модели помечают один и тот же запрос, вы можете отредактировать промпт и повторить попытку или начать новую сессию.

567* В [облачных сессиях](https://code.claude.com/docs/ru/claude-code-on-the-web.md) в мобильном приложении редактирование и повторная попытка не поддерживаются. Переключите модели или продолжите сессию в браузере на компьютере или в настольном приложении.567* В [облачных сессиях](https://code.claude.com/docs/ru/claude-code-on-the-web.md) в мобильном приложении редактирование и повторная попытка не поддерживаются. Переключите модели или продолжите сессию в браузере на компьютере или в настольном приложении.

568* В [неинтерактивном режиме](https://code.claude.com/docs/ru/cli-reference.md#cli-flags) и интеграциях SDK, которые не могут показать запрос, помеченный запрос вместо этого завершает ход отказом.568* В [неинтерактивном режиме](https://code.claude.com/docs/ru/cli-reference.md#cli-flags) и интеграциях SDK, которые не могут показать запрос, помеченный запрос вместо этого завершает ход отказом.

569* В [субагенте](https://code.claude.com/docs/ru/sub-agents.md) Claude Code не показывает запрос, и помеченный запрос, который привёл бы к переключению моделей, повторно выполняется на резервной модели.569* В субагенте, которого Claude запускает с помощью [инструмента Agent](https://code.claude.com/docs/ru/tools-reference.md#agent-tool-behavior), Claude Code не приостанавливается, чтобы спросить, и субагент завершается сбоем вместо переключения моделей. См. [Субагенты переключаются или завершаются сбоем без запроса](#subagents-switch-or-fail-without-asking).

570* Когда целевая резервная модель заблокирована [`availableModels`](#restrict-model-selection), Claude Code не показывает запрос. Помеченный запрос завершается отказом, так же как при автоматическом переключении, когда целевая модель заблокирована.570* Когда целевая резервная модель заблокирована [`availableModels`](#restrict-model-selection), Claude Code не показывает запрос. Помеченный запрос завершается отказом, так же как при автоматическом переключении, когда целевая модель заблокирована.

571 571 

572#### Субагенты переключаются или завершаются сбоем без запроса

573 

574Во встроенном или пользовательском [субагенте](https://code.claude.com/docs/ru/sub-agents.md), которого Claude запускает с помощью [инструмента Agent](https://code.claude.com/docs/ru/tools-reference.md#agent-tool-behavior), Claude Code не [приостанавливается, чтобы спросить](#ask-before-switching), на помеченном запросе. Если резервная модель доступна, запрос повторно выполняется на ней или субагент завершается сбоем — в зависимости от вашего выбора **Switch models when a message is flagged** в `/config`:

575 

576* **Switch automatically** или если выбор ещё не сделан: запрос повторно выполняется на резервной модели, а модель вашей сессии не изменяется

577* **Ask each time**: субагент завершается сбоем с [`Agent terminated early due to an API error`](https://code.claude.com/docs/ru/errors#agent-terminated-early-due-to-an-api-error) и сообщением об отказе. Claude получает эту ошибку и решает, что делать с незавершённой задачей. Чтобы субагенты могли переключать модели, выберите **Switch automatically**. Тогда ваш основной диалог тоже будет переключаться без запроса.

578 

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

580 

572#### Включение резервного варианта на Bedrock, Agent Platform и Foundry581#### Включение резервного варианта на Bedrock, Agent Platform и Foundry

573 582 

574На [Amazon Bedrock](https://code.claude.com/docs/ru/amazon-bedrock.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) идентификаторы моделей специфичны для поставщика, поэтому автоматическое переключение на резервную модель работает, только когда Claude Code может идентифицировать каждую задействованную модель:583На [Amazon Bedrock](https://code.claude.com/docs/ru/amazon-bedrock.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) идентификаторы моделей специфичны для поставщика, поэтому автоматическое переключение на резервную модель работает, только когда Claude Code может идентифицировать каждую задействованную модель:

Details

89export NODE_EXTRA_CA_CERTS=/path/to/ca-cert.pem89export NODE_EXTRA_CA_CERTS=/path/to/ca-cert.pem

90```90```

91 91 

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

93 

94* `Claude Code used only the certificates that it could read in full from the NODE_EXTRA_CA_CERTS file`

95* `Claude Code ignored all of the NODE_EXTRA_CA_CERTS file: it holds no certificate that Claude Code can read`

96 

97Полный текст каждого предупреждения объясняет, как исправить файл. Пропущенный сертификат, который также есть в [хранилище сертификатов CA](#ca-certificate-store), по-прежнему работает.

98 

92## Аутентификация mTLS99## Аутентификация mTLS

93 100 

94Для корпоративных сред, требующих аутентификации с использованием сертификата клиента:101Для корпоративных сред, требующих аутентификации с использованием сертификата клиента:

Details

154 154 

155### Режимы разрешений с конфигурацией HIPAA155### Режимы разрешений с конфигурацией HIPAA

156 156 

157В организации, к которой применена [конфигурация HIPAA](https://code.claude.com/docs/ru/hipaa-setup.md), встроенное значение по умолчанию `auto` не применяется. Сессия терминала или VS Code начинается в режиме Manual, если начальный режим разрешений не выбирает ничто другое. Сессия терминала также показывает `Auto mode isn't the default for your organization · Shift+Tab to switch`, а расширение VS Code не показывает никакого уведомления. В разделе [Проверка того, как разработчики входят в систему и подключаются](https://code.claude.com/docs/ru/hipaa-setup.md#check-how-developers-sign-in-and-connect) перечислены сессии, к которым это относится.157В организации, к которой применена [конфигурация HIPAA](https://code.claude.com/docs/ru/hipaa-setup.md), [встроенное значение по умолчанию `auto`](#which-mode-a-session-starts-in) не применяется. Сессия терминала или VS Code начинается в режиме Manual, если начальный режим разрешений не выбирает ничто другое. Сессия терминала также показывает `Auto mode isn't the default for your organization · Shift+Tab to switch`, а расширение VS Code не показывает никакого уведомления. В разделе [Проверка того, как разработчики входят в систему и подключаются](https://code.claude.com/docs/ru/hipaa-setup.md#check-how-developers-sign-in-and-connect) перечислены сессии, к которым это относится.

158 158 

159Авторежим и `bypassPermissions` остаются доступными:159Авторежим и `bypassPermissions` остаются доступными:

160 160 


163* **Убрать авторежим**: установите [`permissions.disableAutoMode`](https://code.claude.com/docs/ru/settings-reference#disableautomode) в значение `"disable"` в управляемых настройках163* **Убрать авторежим**: установите [`permissions.disableAutoMode`](https://code.claude.com/docs/ru/settings-reference#disableautomode) в значение `"disable"` в управляемых настройках

164* **Заблокировать `bypassPermissions`**: установите [`permissions.disableBypassPermissionsMode`](https://code.claude.com/docs/ru/settings-reference#permissions-disablebypasspermissionsmode) в значение `"disable"` в управляемых настройках164* **Заблокировать `bypassPermissions`**: установите [`permissions.disableBypassPermissionsMode`](https://code.claude.com/docs/ru/settings-reference#permissions-disablebypasspermissionsmode) в значение `"disable"` в управляемых настройках

165 165 

166Требуется Claude Code v2.1.285 или новее — [минимальная версия для конфигурации HIPAA](https://code.claude.com/docs/ru/hipaa-setup.md#update-claude-code-and-claude-desktop).

167 

168## Переключение режимов разрешений166## Переключение режимов разрешений

169 167 

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


253>251>

254> На [claude.ai/code](https://claude.ai/code) используйте раскрывающееся меню режима в строке под полем промпта. В мобильном приложении нажмите кнопку **+** в поле промпта, затем **Permission**. Облачные сессии и сессии Remote Control предлагают разные режимы разрешений:252> На [claude.ai/code](https://claude.ai/code) используйте раскрывающееся меню режима в строке под полем промпта. В мобильном приложении нажмите кнопку **+** в поле промпта, затем **Permission**. Облачные сессии и сессии Remote Control предлагают разные режимы разрешений:

255>253>

256> * **[Облачные сессии](https://code.claude.com/docs/ru/claude-code-on-the-web.md)**: Accept edits, Plan и Auto. Accept edits соответствует режиму `default`: облачные сессии заранее разрешают редактирование файлов независимо от режима, поэтому раскрывающееся меню показывает Accept edits вместо Manual. Облачные сессии по-прежнему соблюдают `defaultMode: "acceptEdits"` из настроек. Авторежим появляется, только когда ваша организация это разрешает и выбранная модель это поддерживает. Bypass permissions недоступен.254> * **[Облачные сессии](https://code.claude.com/docs/ru/claude-code-on-the-web.md)**: Accept edits, Plan и Auto. Accept edits соответствует режиму `default`: облачные сессии заранее разрешают редактирование файлов независимо от режима, поэтому раскрывающееся меню показывает Accept edits вместо Manual. Облачные сессии по-прежнему соблюдают `defaultMode: "acceptEdits"` из настроек. Авторежим отображается, если ваша организация его не отключила, а на claude.ai/code он неактивен (выделен серым), если выбранная модель его не [поддерживает](#eliminate-prompts-with-auto-mode). Bypass permissions недоступен.

257> * **Сессии [Remote Control](https://code.claude.com/docs/ru/remote-control.md)** на вашем локальном компьютере: Manual, Accept edits, Plan и Auto для сессии, которую вы запустили сами, и вы не можете выбрать Bypass permissions из приложения. Чтобы использовать Auto, сессия должна соответствовать [требованиям доступности](#eliminate-prompts-with-auto-mode) авторежима. Для потока проекта, работающего на вашем компьютере, см. [Запустить поток на вашем собственном компьютере](https://code.claude.com/docs/ru/claude-projects.md#run-a-thread-on-your-own-computer).255> * **Сессии [Remote Control](https://code.claude.com/docs/ru/remote-control.md)** на вашем локальном компьютере: Manual, Accept edits, Plan и Auto для сессии, которую вы запустили сами, и вы не можете выбрать Bypass permissions из приложения. Чтобы использовать Auto, сессия должна соответствовать [требованиям доступности](#eliminate-prompts-with-auto-mode) авторежима. Для потока проекта, работающего на вашем компьютере, см. [Запустить поток на вашем собственном компьютере](https://code.claude.com/docs/ru/claude-projects.md#run-a-thread-on-your-own-computer).

258> * За исключением Bypass permissions, раскрывающееся меню показывает режим разрешений, в котором находится локальная сессия, включая режим, установленный из терминала. Оно обновляется, когда режим разрешений изменяется в приложении или в терминале.256> * За исключением Bypass permissions, раскрывающееся меню показывает режим разрешений, в котором находится локальная сессия, включая режим, установленный из терминала. Оно обновляется, когда режим разрешений изменяется в приложении или в терминале.

259> * Сессии, размещённые [настольным приложением](https://code.claude.com/docs/ru/desktop.md) или [расширением VS Code](https://code.claude.com/docs/ru/vs-code.md), сообщают изменения режима разрешений в claude.ai по мере их возникновения, так же как сессии, размещённые в терминале.257> * Сессии, размещённые [настольным приложением](https://code.claude.com/docs/ru/desktop.md) или [расширением VS Code](https://code.claude.com/docs/ru/vs-code.md), сообщают изменения режима разрешений в claude.ai по мере их возникновения, так же как сессии, размещённые в терминале.


433claude --permission-mode auto --debug-file classifier-debug.log431claude --permission-mode auto --debug-file classifier-debug.log

434```432```

435 433 

436Попросите Claude выполнить shell-команду, которая не является командой только для чтения, затем найдите в логе `classifier_request_started`:434Чтобы дать классификатору команду для проверки, попросите Claude выполнить `curl https://example.com`, затем найдите в логе `classifier_request_started`:

437 435 

438* **Ваша модель после `model=`**: переменная вступила в силу436* **Ваша модель после `model=`**: переменная вступила в силу

439* **Другая модель после `model=`**: найдите в логе `ignoring CLAUDE_CODE_AUTO_MODE_MODEL` — там указаны причина и необходимые действия, если они есть437* **Другая модель после `model=`**: найдите в логе `ignoring CLAUDE_CODE_AUTO_MODE_MODEL` — там указаны причина и необходимые действия, если они есть

440* **Такой строки нет**: посмотрите значение `Auto mode server` в `/status` в промпте Claude Code:438* **Такой строки нет**: посмотрите значение `Auto mode server` в `/status` в промпте Claude Code:

441 * **`Enabled`**: [сервер](#server-side-classifier-review) настроен проверять вызовы этой сессии.439 * **`Enabled`**: [сервер](#server-side-classifier-review) настроен проверять вызовы этой сессии.

442 * **`Disabled`**: убедитесь, что [режим разрешений](#switch-permission-modes) — авторежим, затем попросите Claude выполнить ещё одну команду, которая не является командой только для чтения.440 * **`Disabled`**: эта проверка ещё не протестировала вашу модель. Убедитесь, что [режим разрешений](#switch-permission-modes) — авторежим и ни одно [правило разрешений](https://code.claude.com/docs/ru/permissions.md#manage-permissions) не совпадает с `curl`, затем снова выполните проверку с отключённой [песочницей](https://code.claude.com/docs/ru/sandboxing.md).

443 441 

444### Что классификатор блокирует по умолчанию442### Что классификатор блокирует по умолчанию

445 443 

permissions.md +7 −4

Details

338 338 

339#### Что охватывают правила `Read` и `Edit`339#### Что охватывают правила `Read` и `Edit`

340 340 

341Правила `Edit` применяются ко всем встроенным инструментам, которые редактируют файлы. Claude по мере возможности применяет правила `Read` ко всем встроенным инструментам, которые читают файлы, например Grep и Glob, к упоминаниям `@file` в ваших промптах, а также к выделению и контексту открытого файла, которыми подключённая [IDE](https://code.claude.com/docs/ru/vs-code.md#the-built-in-ide-mcp-server) делится с Claude.341Правила `Edit` применяются ко всем встроенным инструментам, которые редактируют файлы. Claude по мере возможности применяет правила deny `Read(path)` ко всем встроенным инструментам, которые читают файлы, например Grep и Glob. Так же по мере возможности он применяет правила deny `Read(path)` к упоминаниям `@file` в ваших промптах, а также к выделению и контексту открытого файла, которыми подключённая [IDE](https://code.claude.com/docs/ru/vs-code.md#the-built-in-ide-mcp-server) делится с Claude.

342 342 

343Правило deny `Read(path)` также применяется к путям изображений, которые вы вставляете в промпт, и к каталогам, которые вы упоминаете через @:343Правило deny `Read(path)` также применяется к путям изображений, которые вы вставляете в промпт, и к каталогам, которые вы упоминаете через @:

344 344 


353>353>

354> Правила deny для Read и Edit применяются к встроенным файловым инструментам Claude, к файловым командам, которые Claude Code распознаёт в Bash, таким как `cat`, `head`, `tail`, `sed` и `tee`, и к целям [перенаправлений](#redirections) Bash, таким как `> file` и `< file`. Они не применяются к команде, которая читает файлы, не называя их, например `grep -r pattern .`, запущенной из каталога, содержащего файл, или к произвольным подпроцессам, которые читают или записывают файлы косвенно, например к скрипту Python или Node, который сам открывает файлы. Для ограничений на уровне ОС, которые блокируют доступ к пути для всех процессов, [включите песочницу](https://code.claude.com/docs/ru/sandboxing.md).354> Правила deny для Read и Edit применяются к встроенным файловым инструментам Claude, к файловым командам, которые Claude Code распознаёт в Bash, таким как `cat`, `head`, `tail`, `sed` и `tee`, и к целям [перенаправлений](#redirections) Bash, таким как `> file` и `< file`. Они не применяются к команде, которая читает файлы, не называя их, например `grep -r pattern .`, запущенной из каталога, содержащего файл, или к произвольным подпроцессам, которые читают или записывают файлы косвенно, например к скрипту Python или Node, который сам открывает файлы. Для ограничений на уровне ОС, которые блокируют доступ к пути для всех процессов, [включите песочницу](https://code.claude.com/docs/ru/sandboxing.md).

355 355 

356#### Правила `Write(path)`, `NotebookEdit(path)` и `Glob(path)` никогда не срабатывают356#### Правила `Write(path)`, `Glob(path)` и `Grep(path)` не срабатывают

357 357 

358Claude Code проверяет файловые разрешения только по правилам `Edit(path)` и `Read(path)`. Если вы напишете правило с путём для `Write`, `NotebookEdit`, `Glob` или устаревшего `MultiEdit`, Claude Code примет правило, но никогда не будет сопоставлять с ним чтение или правку.358Claude Code проверяет файловые разрешения по правилам `Edit(path)` и `Read(path)`. Он принимает правило с путём, отличным от `*`, для одного из перечисленных ниже инструментов, но не сопоставляет с ним чтение, поиск или правку. Правило deny `Grep(docs/**)` не мешает Grep выполнять поиск в `docs`. Вместо него напишите правило `Edit` или `Read`:

359 359 

360Используйте `Edit(docs/**)` вместо `Write(docs/**)`, `NotebookEdit(docs/**)` или `MultiEdit(docs/**)`, и `Read(docs/**)` вместо `Glob(docs/**)`. Чтобы сопоставить любое использование инструмента Write, NotebookEdit или Glob независимо от пути, укажите только имя инструмента.360* **`Write`, `NotebookEdit` или устаревший `MultiEdit`**: используйте `Edit(docs/**)` вместо `Write(docs/**)`.

361* **`Glob` или `Grep`**: используйте `Read(docs/**)` вместо `Grep(docs/**)`. В качестве правила ask `Read(docs/**)` запрашивает подтверждение, когда Claude вызывает Grep или Glob для соответствующего пути, но не тогда, когда поиск в рабочем каталоге выше него возвращает соответствующие файлы.

362 

363Чтобы сопоставить любое использование одного из этих инструментов независимо от пути, [укажите только имя инструмента](#match-all-uses-of-a-tool).

361 364 

362#### Как сопоставляются шаблоны путей365#### Как сопоставляются шаблоны путей

363 366 

Details

608 608 

609#### Проверка каталога609#### Проверка каталога

610 610 

611`<path>` — это файл манифеста или каталог. Учитывая каталог, Claude Code выбирает то, что проверять, по тому, что он там находит:611`<path>` — это [файл манифеста](#validate-a-manifest-file) или каталог. Учитывая каталог, Claude Code выбирает то, что проверять, по тому, что он там находит:

612 612 

613* `.claude-plugin/marketplace.json`, когда он существует613* `.claude-plugin/marketplace.json`, когда он существует

614* Иначе `.claude-plugin/plugin.json`614* Иначе `.claude-plugin/plugin.json`


631* **`CLAUDE.md` в корне плагина**: в запуске плагина Claude Code также предупреждает о `CLAUDE.md` в корне плагина631* **`CLAUDE.md` в корне плагина**: в запуске плагина Claude Code также предупреждает о `CLAUDE.md` в корне плагина

632* **Файлы плагина в запуске маркетплейса**: из каталога маркетплейса Claude Code не открывает файлы скиллов, агентов, команд или хуков плагинов, которые маркетплейс перечисляет в других каталогах, или файлы MCP-серверов, которые они включают. Чтобы найти ошибки в этих файлах, проверьте каждый каталог плагина632* **Файлы плагина в запуске маркетплейса**: из каталога маркетплейса Claude Code не открывает файлы скиллов, агентов, команд или хуков плагинов, которые маркетплейс перечисляет в других каталогах, или файлы MCP-серверов, которые они включают. Чтобы найти ошибки в этих файлах, проверьте каждый каталог плагина

633 633 

634#### Проверка файла манифеста

635 

636Когда файл не называется `plugin.json` или `marketplace.json` и не находится в каталоге `.claude-plugin`, Claude Code определяет, что это за файл, по его полям. Он проверяет файл как маркетплейс в следующих случаях, а в остальных — как манифест плагина:

637 

638* `plugins` является массивом

639* Присутствуют и `plugins`, и `owner`

640* В файле есть поле, которое определяет только `marketplace.json`, например `owner`, и нет ни одного поля, которое определяет только `plugin.json`, например `author`

641 

642Чтобы самостоятельно выбрать проверки, назовите файл `plugin.json` или `marketplace.json`. Любой другой файл в каталоге `.claude-plugin` Claude Code проверяет как манифест плагина.

643 

634#### Выход и коды выхода644#### Выход и коды выхода

635 645 

636Claude Code выводит файл, который он проверил, любые ошибки и предупреждения с их путями, и строку вердикта. Код выхода следует вердикту:646Claude Code выводит файл, который он проверил, любые ошибки и предупреждения с их путями, и строку вердикта. Код выхода следует вердикту:

Details

455 455 

456## Сообщения валидации456## Сообщения валидации

457 457 

458`claude plugin validate <path>` принимает корень marketplace или сам файл marketplace. Он выводит ошибки и предупреждения. Для кодов выхода и `--strict` см. [plugin validate](https://code.claude.com/docs/ru/plugins/cli-reference.md#plugin-validate).458`claude plugin validate <path>` принимает корень маркетплейса или сам файл маркетплейса. Чтобы этот файл был [проверен как маркетплейс](https://code.claude.com/docs/ru/plugins/cli-reference.md#validate-a-manifest-file), а не как манифест плагина, назовите его `marketplace.json`. Для кодов выхода и `--strict` см. [plugin validate](https://code.claude.com/docs/ru/plugins/cli-reference.md#plugin-validate).

459 459 

460Сообщение называет запись плагина по её индексу, написанному как `plugins.1.source` или `plugins[1].source`.460Сообщение называет запись плагина по её индексу, написанному как `plugins.1.source` или `plugins[1].source`.

461 461 

Details

103[Быстрый режим](https://code.claude.com/docs/ru/fast-mode.md) и стандартная скорость используют отдельные кэши, поэтому после того как вы включаете или отключаете быстрый режим, следующий запрос не может использовать то, что было кэшировано на другой скорости. Когда вы впервые включаете быстрый режим в диалоге, следующий запрос читает весь диалог до этого момента без кэша по [тарифам быстрого режима](https://code.claude.com/docs/ru/fast-mode.md#understand-the-cost-tradeoff). Чтобы эта стоимость оставалась небольшой, включайте его в начале сессии.103[Быстрый режим](https://code.claude.com/docs/ru/fast-mode.md) и стандартная скорость используют отдельные кэши, поэтому после того как вы включаете или отключаете быстрый режим, следующий запрос не может использовать то, что было кэшировано на другой скорости. Когда вы впервые включаете быстрый режим в диалоге, следующий запрос читает весь диалог до этого момента без кэша по [тарифам быстрого режима](https://code.claude.com/docs/ru/fast-mode.md#understand-the-cost-tradeoff). Чтобы эта стоимость оставалась небольшой, включайте его в начале сессии.

104 104 

105* Если вы включаете его, пока Claude работает, этот ход завершается на стандартной скорости, и вы оплачиваете некэшированное чтение при первом запросе вашего следующего хода.105* Если вы включаете его, пока Claude работает, этот ход завершается на стандартной скорости, и вы оплачиваете некэшированное чтение при первом запросе вашего следующего хода.

106* Если ваша текущая модель не поддерживает быстрый режим, включение быстрого режима также [переключает вас на Opus](https://code.claude.com/docs/ru/fast-mode.md#toggle-fast-mode). Это [переключение модели](#switching-models) само по себе запускает новый кэш начиная со следующего запроса в текущем ходе.106* Если ваша текущая модель не поддерживает быстрый режим, запуск `/fast` также [переключает вас на Opus](https://code.claude.com/docs/ru/fast-mode.md#toggle-fast-mode). Это [переключение модели](#switching-models) само по себе запускает новый кэш начиная со следующего запроса в текущем ходе.

107 107 

108При каждом последующем переключении без кэша читается всё то, чего нет в кэше для скорости, на которую вы переключаетесь. Изменения скорости, которые Claude Code выполняет самостоятельно, например [переключение на стандартную скорость](https://code.claude.com/docs/ru/fast-mode.md#handle-rate-limits) после ограничения частоты запросов и последующий возврат в быстрый режим, также считаются переключениями.108При каждом последующем переключении без кэша читается всё то, чего нет в кэше для скорости, на которую вы переключаетесь. Изменения скорости, которые Claude Code выполняет самостоятельно, например [переключение на стандартную скорость](https://code.claude.com/docs/ru/fast-mode.md#handle-rate-limits) после ограничения частоты запросов и последующий возврат в быстрый режим, также считаются переключениями.

109 109 

Details

147* **This session was ended or archived from another device or app**: запустите `/remote-control` только если вы хотите сеанс вернуть. Claude Code повторно открывает архивированный сеанс.147* **This session was ended or archived from another device or app**: запустите `/remote-control` только если вы хотите сеанс вернуть. Claude Code повторно открывает архивированный сеанс.

148* **The server no longer reports this session**: он может быть удален с другого устройства или приложения.148* **The server no longer reports this session**: он может быть удален с другого устройства или приложения.

149 149 

150Если `/remote-control` открывает диалоговое окно с сообщением `Remote Control isn't connected.`, выполните шаг, который указан в диалоговом окне, например запустите `/login` или выберите **Continue** и повторите попытку.

151 

150### Подключение с другого устройства152### Подключение с другого устройства

151 153 

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


318 320 

319Когда Remote Control активен, Claude может отправлять push-уведомления на ваш телефон.321Когда Remote Control активен, Claude может отправлять push-уведомления на ваш телефон.

320 322 

321Claude решает, когда отправить уведомление. Обычно он отправляет его, когда завершается долгоживущая задача или когда ему нужно ваше решение для продолжения. Вы также можете запросить push-уведомление в своем запросе, например `notify me when the tests finish`. Помимо двух переключателей включения/выключения ниже, нет конфигурации для отдельных событий.323Push-уведомление может прийти, когда завершается долгоживущая задача или когда Claude нужно ваше решение. Вы также можете запросить push-уведомление в своем промпте, например `notify me when the tests finish`. Помимо двух переключателей включения/выключения ниже, нет конфигурации для отдельных событий.

322 324 

323Чтобы настроить мобильные push-уведомления:325Чтобы настроить мобильные push-уведомления:

324 326 

Details

25| [Dev container](#dev-containers) | Полная среда разработки | Да | Среднее |25| [Dev container](#dev-containers) | Полная среда разработки | Да | Среднее |

26| [Custom container](#custom-container) | Полная среда разработки | Да | Среднее-высокое |26| [Custom container](#custom-container) | Полная среда разработки | Да | Среднее-высокое |

27| [Virtual machine](#virtual-machine) | Полная операционная система | Нет | Высокое |27| [Virtual machine](#virtual-machine) | Полная операционная система | Нет | Высокое |

28| [Cloud sessions](#cloud-sessions) | Полная операционная система, размещенная Anthropic | Нет | Нет; требуется подписка Claude, а также подключенный аккаунт GitHub, если вы не запускаете с `claude --cloud` |28| [Cloud sessions](#cloud-sessions) | Полная операционная система, размещенная Anthropic | Нет | Нет; требуется подписка Claude, а для клонирования репозитория GitHub — подключенный аккаунт GitHub |

29 29 

30[Sandboxed Bash tool](https://code.claude.com/docs/ru/sandboxing.md) встроен в Claude Code и ограничивает только команды Bash. Встроенные инструменты файлов, серверы MCP и hooks по-прежнему работают непосредственно на вашем хосте. Каждый другой подход в таблице помещает весь процесс Claude Code внутри границы изоляции, поэтому инструменты файлов, серверы MCP и hooks также ограничены.30[Sandboxed Bash tool](https://code.claude.com/docs/ru/sandboxing.md) встроен в Claude Code и ограничивает только команды Bash. Встроенные инструменты файлов, серверы MCP и hooks по-прежнему работают непосредственно на вашем хосте. Каждый другой подход в таблице помещает весь процесс Claude Code внутри границы изоляции, поэтому инструменты файлов, серверы MCP и hooks также ограничены.

31 31 


46| Изолировать серверы MCP и hooks, а также Bash, без Docker | Среда выполнения sandbox |46| Изолировать серверы MCP и hooks, а также Bash, без Docker | Среда выполнения sandbox |

47| Работать с ненадежным репозиторием | Выделенная виртуальная машина или [cloud session](https://code.claude.com/docs/ru/claude-code-on-the-web.md), если у вас есть подписка Claude; GitHub не требуется при запуске с `claude --cloud` |47| Работать с ненадежным репозиторием | Выделенная виртуальная машина или [cloud session](https://code.claude.com/docs/ru/claude-code-on-the-web.md), если у вас есть подписка Claude; GitHub не требуется при запуске с `claude --cloud` |

48| Стандартизировать изолированную среду в команде | Предварительно настроенный [dev container](https://code.claude.com/docs/ru/devcontainer.md), скопированный в ваш репозиторий |48| Стандартизировать изолированную среду в команде | Предварительно настроенный [dev container](https://code.claude.com/docs/ru/devcontainer.md), скопированный в ваш репозиторий |

49| Использовать Claude Code с устройства без локальной настройки | [cloud session](https://code.claude.com/docs/ru/claude-code-on-the-web.md), который требует подписку Claude и подключенный аккаунт GitHub |49| Использовать Claude Code с устройства без локальной настройки | [Облачная сессия](https://code.claude.com/docs/ru/claude-code-on-the-web.md), для которой требуется подписка Claude, а для клонирования репозитория GitHub — подключенный аккаунт GitHub |

50| Требовать изоляцию для каждого разработчика в вашей организации | [Enforce isolation across an organization](#enforce-isolation-across-an-organization) |50| Требовать изоляцию для каждого разработчика в вашей организации | [Enforce isolation across an organization](#enforce-isolation-across-an-organization) |

51| Работать на нативном хосте Windows | Контейнер или VM, или запустить Bash sandbox внутри WSL2 |51| Работать на нативном хосте Windows | Контейнер или VM, или запустить Bash sandbox внутри WSL2 |

52 52 


165 165 

166[Облачный сеанс](https://code.claude.com/docs/ru/claude-code-on-the-web.md) запускается в изолированной виртуальной машине, управляемой Anthropic. Сетевой прокси обеспечивает список разрешений по умолчанию, и отдельный прокси хранит ваш токен GitHub вне sandbox, выдавая ограниченные учетные данные для доступа к репозиторию внутри него. Сеансы, которые ваша организация маршрутизирует в [самостоятельно размещаемую среду](https://code.claude.com/docs/ru/self-hosted-environments), запускаются на инфраструктуре, которую вы предоставляете, где изоляция, контроль исходящего трафика и учетные данные git являются ответственностью вашего развертывания.166[Облачный сеанс](https://code.claude.com/docs/ru/claude-code-on-the-web.md) запускается в изолированной виртуальной машине, управляемой Anthropic. Сетевой прокси обеспечивает список разрешений по умолчанию, и отдельный прокси хранит ваш токен GitHub вне sandbox, выдавая ограниченные учетные данные для доступа к репозиторию внутри него. Сеансы, которые ваша организация маршрутизирует в [самостоятельно размещаемую среду](https://code.claude.com/docs/ru/self-hosted-environments), запускаются на инфраструктуре, которую вы предоставляете, где изоляция, контроль исходящего трафика и учетные данные git являются ответственностью вашего развертывания.

167 167 

168Используйте этот подход, когда вы хотите полную изоляцию VM без самостоятельного предоставления инфраструктуры, или когда вы делегируете задачи с устройства, которое не имеет локальной среды разработки. Это требует подписку Claude. Если вы не запускаете из CLI, вам также нужен подключенный аккаунт GitHub, чтобы sandbox мог клонировать ваш репозиторий. Когда вы запускаете из CLI с `--cloud`, Claude Code может [упаковать и загрузить ваш локальный репозиторий](https://code.claude.com/docs/ru/claude-code-on-the-web.md#send-local-repositories-without-github) вместо этого. См. [Использование Claude Code в облаке](https://code.claude.com/docs/ru/claude-code-on-the-web.md) для доступности плана и опций аутентификации GitHub.168Используйте этот подход, когда вам нужна полная изоляция VM без самостоятельного предоставления инфраструктуры или когда вы делегируете задачи с устройства, на котором нет локальной среды разработки. Для этого требуется:

169 

170* **Подписка**: подписка Claude

171* **GitHub**: подключённый аккаунт GitHub для работы в репозитории GitHub. Если вы запускаете из CLI с `--cloud`, он не нужен, если Claude Code [упакует и загрузит ваш локальный репозиторий](https://code.claude.com/docs/ru/claude-code-on-the-web.md#send-local-repositories-without-github)

172 

173См. [Использование Claude Code в облаке](https://code.claude.com/docs/ru/claude-code-on-the-web.md), чтобы узнать о доступности по планам и вариантах аутентификации GitHub.

169 174 

170## Enforce isolation across an organization175## Enforce isolation across an organization

171 176 

Details

46| `CLAUDE_CODE_REMOTE_SLACK_CHANNEL_ID` | Для сессии Claude Tag — ID канала Slack или личного сообщения, которое обслуживает сессия или в котором находится её ветка, например `C0123ABCDE`. Временная метка Slack идентифицирует сообщение в пределах одного канала, поэтому записывайте этот ID вместе с `CLAUDE_CODE_REMOTE_SLACK_THREAD_TS`. Не установлена для других сессий и может быть не установлена и для сессии Claude Tag. |46| `CLAUDE_CODE_REMOTE_SLACK_CHANNEL_ID` | Для сессии Claude Tag — ID канала Slack или личного сообщения, которое обслуживает сессия или в котором находится её ветка, например `C0123ABCDE`. Временная метка Slack идентифицирует сообщение в пределах одного канала, поэтому записывайте этот ID вместе с `CLAUDE_CODE_REMOTE_SLACK_THREAD_TS`. Не установлена для других сессий и может быть не установлена и для сессии Claude Tag. |

47| `CLAUDE_SESSION_INGRESS_TOKEN_FILE` | Абсолютный путь к файлу для каждой сессии, содержащему текущий JWT сессии, который поддерживается в актуальном состоянии при обновлении токенов. Подпроцессы оболочки читают его для своего заголовка `Authorization` при загрузке вложений, которые пользователь добавил в сессию. `exec` сохраняет переменную автоматически; обёртка, которая перестраивает окружение дочернего процесса, должна перенести переменную, иначе загрузки вложений молча прекратятся. |47| `CLAUDE_SESSION_INGRESS_TOKEN_FILE` | Абсолютный путь к файлу для каждой сессии, содержащему текущий JWT сессии, который поддерживается в актуальном состоянии при обновлении токенов. Подпроцессы оболочки читают его для своего заголовка `Authorization` при загрузке вложений, которые пользователь добавил в сессию. `exec` сохраняет переменную автоматически; обёртка, которая перестраивает окружение дочернего процесса, должна перенести переменную, иначе загрузки вложений молча прекратятся. |

48| `CLAUDE_CONFIG_DIR` | Каталог конфигурации Claude для каждой сессии, записываемый при запуске сессии из снимка конфигурации хоста средства выполнения, который средство выполнения захватывает при запуске; см. [Разрешения и подтверждение инструментов](#permissions-and-tool-approval). Записи здесь изолированы для этой сессии. Каталог остаётся в `<base-dir>/_sessions/` после завершения сессии, если вы не запустите средство выполнения с [`--remove-session-state`](https://code.claude.com/docs/ru/self-hosted-environments-reference#runner-cli-flags); см. [Повторное использование предварительно подготовленного checkout](https://code.claude.com/docs/ru/self-hosted-environments-deploy.md#reuse-a-pre-warmed-checkout). |48| `CLAUDE_CONFIG_DIR` | Каталог конфигурации Claude для каждой сессии, записываемый при запуске сессии из снимка конфигурации хоста средства выполнения, который средство выполнения захватывает при запуске; см. [Разрешения и подтверждение инструментов](#permissions-and-tool-approval). Записи здесь изолированы для этой сессии. Каталог остаётся в `<base-dir>/_sessions/` после завершения сессии, если вы не запустите средство выполнения с [`--remove-session-state`](https://code.claude.com/docs/ru/self-hosted-environments-reference#runner-cli-flags); см. [Повторное использование предварительно подготовленного checkout](https://code.claude.com/docs/ru/self-hosted-environments-deploy.md#reuse-a-pre-warmed-checkout). |

49| `CLAUDE_CODE_REMOTE_MCP_CONFIG` | Путь к файлу в `CLAUDE_CONFIG_DIR`, содержащему определения MCP-серверов, которые плоскость управления Anthropic доставила для этой сессии. Если ваша обёртка перестраивает окружение дочернего процесса, перенесите эту переменную. Без неё, когда плоскость управления обновляет доставленные серверы, дочерний процесс завершает работу любого сервера stdio, HTTP или SSE, добавленного вашей обёрткой с помощью [`--mcp-config`](https://code.claude.com/docs/ru/cli-reference#cli-flags), которого нет в обновлении. Требует Claude Code v2.1.299 или новее. |49| `CLAUDE_CODE_REMOTE_MCP_CONFIG` | Путь к файлу в `CLAUDE_CONFIG_DIR`, содержащему MCP-серверы, доставленные плоскостью управления. Если ваша обёртка перестраивает окружение дочернего процесса, перенесите эту переменную, [`CLAUDE_CODE_REMOTE`](https://code.claude.com/docs/ru/env-vars#variables) и `CLAUDE_CODE_ENVIRONMENT_KIND` без изменений; средство выполнения устанавливает все три. Если `CLAUDE_CODE_REMOTE` поступает, а эта переменная или `CLAUDE_CODE_ENVIRONMENT_KIND` — нет, дочерний процесс останавливает серверы stdio, HTTP и SSE, добавленные вашей обёрткой с помощью [`--mcp-config`](https://code.claude.com/docs/ru/cli-reference#cli-flags), которых нет в обновлении доставленных серверов. Требует Claude Code v2.1.299 или новее. |

50| `ANTHROPIC_BASE_URL` | Базовый URL API, который будет использовать дочерний процесс, доставляемый плоскостью управления для каждой сессии; обычно `https://api.anthropic.com`. Не переопределяйте его: учётные данные вывода сессии — это выданный Anthropic токен OAuth, который другие поставщики не принимают. |50| `ANTHROPIC_BASE_URL` | Базовый URL API, который будет использовать дочерний процесс, доставляемый плоскостью управления для каждой сессии; обычно `https://api.anthropic.com`. Не переопределяйте его: учётные данные вывода сессии — это выданный Anthropic токен OAuth, который другие поставщики не принимают. |

51| `CLAUDE_CODE_OAUTH_TOKEN` | Краткосрочный токен доступа OAuth, который дочерний процесс использует для вывода модели, со временем жизни около 30 минут. Средство выполнения перевыпускает его до истечения срока и доставляет ротацию через stdin дочернего процесса, поэтому обёртка, которая не [сохраняет stdin подключённым](#keep-stdin-and-file-descriptor-3-attached), видит только начальное значение. Не полагайтесь на список разрешённых IP-адресов вашей организации для ограничения использования этого токена: рассматривайте его как Bearer-токен, который остаётся пригодным для использования примерно 30 минут в случае утечки, и не записывайте его в лог, не сохраняйте на диск и не пересылайте за пределы контейнера сессии. |51| `CLAUDE_CODE_OAUTH_TOKEN` | Краткосрочный токен доступа OAuth, который дочерний процесс использует для вывода модели, со временем жизни около 30 минут. Средство выполнения перевыпускает его до истечения срока и доставляет ротацию через stdin дочернего процесса, поэтому обёртка, которая не [сохраняет stdin подключённым](#keep-stdin-and-file-descriptor-3-attached), видит только начальное значение. Не полагайтесь на список разрешённых IP-адресов вашей организации для ограничения использования этого токена: рассматривайте его как Bearer-токен, который остаётся пригодным для использования примерно 30 минут в случае утечки, и не записывайте его в лог, не сохраняйте на диск и не пересылайте за пределы контейнера сессии. |

52| `CLAUDE_RUNNER_ALIVE_EVERY_MS` | Средство выполнения задаёт, как часто (в миллисекундах) дочерний процесс сообщает, что он активен, когда [ход начинается до инициализации дочернего процесса](https://code.claude.com/docs/ru/self-hosted-environments-reference.md#session-startup-timeout). Если ваша обёртка перестраивает окружение дочернего процесса, перенесите эту переменную, иначе средство выполнения может освободить сессию во время этого хода и записать в лог `no child output for <n> — releasing`. Требует v2.1.309 или новее на средстве выполнения и в дочернем процессе. |52| `CLAUDE_RUNNER_ALIVE_EVERY_MS` | Средство выполнения задаёт, как часто (в миллисекундах) дочерний процесс сообщает, что он активен, когда [ход начинается до инициализации дочернего процесса](https://code.claude.com/docs/ru/self-hosted-environments-reference.md#session-startup-timeout). Если ваша обёртка перестраивает окружение дочернего процесса, перенесите эту переменную, иначе средство выполнения может освободить сессию во время этого хода и записать в лог `no child output for <n> — releasing`. Требует v2.1.309 или новее на средстве выполнения и в дочернем процессе. |


329| `CLAUDE_RUNNER_REPO_SOURCES` | JSON массив `{url, revision}` для всех источников git сеанса для хуков, которые маршрутизируют на вторичный репозиторий. Пусто, когда нет источников. |329| `CLAUDE_RUNNER_REPO_SOURCES` | JSON массив `{url, revision}` для всех источников git сеанса для хуков, которые маршрутизируют на вторичный репозиторий. Пусто, когда нет источников. |

330| `CLAUDE_RUNNER_CORRELATION_ID` | ID корреляции, предоставленный при создании сеанса, повторно отправленный, чтобы хук мог сопоставить этот наряд на работу с запросом, который создал сеанс. Пусто, когда сеанс не имеет ни одного. |330| `CLAUDE_RUNNER_CORRELATION_ID` | ID корреляции, предоставленный при создании сеанса, повторно отправленный, чтобы хук мог сопоставить этот наряд на работу с запросом, который создал сеанс. Пусто, когда сеанс не имеет ни одного. |

331| `CLAUDE_RUNNER_CLIENT_PLATFORM` | Поверхность клиента, которая создала сеанс, такая как `web_claude_ai`, `desktop_app`, `ios` или `scheduled_trigger`, для аналитики внедрения. Не установлена, когда сеанс не имеет записанной или распознанной поверхности, и для запросов предварительного прогрева; проверьте ее с помощью `[ -n "${CLAUDE_RUNNER_CLIENT_PLATFORM:-}" ]`, что остается безопасным под `set -u`. |331| `CLAUDE_RUNNER_CLIENT_PLATFORM` | Поверхность клиента, которая создала сеанс, такая как `web_claude_ai`, `desktop_app`, `ios` или `scheduled_trigger`, для аналитики внедрения. Не установлена, когда сеанс не имеет записанной или распознанной поверхности, и для запросов предварительного прогрева; проверьте ее с помощью `[ -n "${CLAUDE_RUNNER_CLIENT_PLATFORM:-}" ]`, что остается безопасным под `set -u`. |

332| `CLAUDE_RUNNER_SPAWN_REASON` | [Почему Anthropic отправил этот запрос на порождение](#find-out-why-a-spawn-request-was-sent), например `runner_lost` или `resumed`. Не установлена, если запрос не содержит корректно сформированной причины, поэтому читайте её как `"${CLAUDE_RUNNER_SPAWN_REASON:-}"`. Требуется Claude Code v2.1.318 или новее на оркестраторе |

332 333 

333Порожденное средство выполнения регистрируется с нарядом на работу вместо секрета окружения:334Порожденное средство выполнения регистрируется с нарядом на работу вместо секрета окружения:

334 335 


828 829 

829К self-hosted сессии не подключён терминал, поэтому запрос разрешения, оставшийся без ответа, приостанавливает ход, пока пользователь не ответит в интерфейсе. Управляющий уровень Anthropic передаёт список инструментов и правила разрешений каждой сессии вместе с данными задания; конфигурация по умолчанию заранее разрешает рутинные вызовы инструментов, включая `Bash`, а облачные сессии [заранее разрешают редактирование файлов независимо от режима](https://code.claude.com/docs/ru/permission-modes.md#switch-permission-modes). Для вызова, который ничто заранее не разрешает, запрос выводится в интерфейсе сессии.830К self-hosted сессии не подключён терминал, поэтому запрос разрешения, оставшийся без ответа, приостанавливает ход, пока пользователь не ответит в интерфейсе. Управляющий уровень Anthropic передаёт список инструментов и правила разрешений каждой сессии вместе с данными задания; конфигурация по умолчанию заранее разрешает рутинные вызовы инструментов, включая `Bash`, а облачные сессии [заранее разрешают редактирование файлов независимо от режима](https://code.claude.com/docs/ru/permission-modes.md#switch-permission-modes). Для вызова, который ничто заранее не разрешает, запрос выводится в интерфейсе сессии.

830 831 

832### Закрепление режима разрешений в обёртке

833 

831> [!NOTE]834> [!NOTE]

832>835>

833> Закрепляйте авторежим только в тех окружениях, где контейнеры сессий работают с [запретом исходящего сетевого трафика по умолчанию](https://code.claude.com/docs/ru/self-hosted-environments-deploy.md#default-deny-egress) и применены остальные меры из [раздела об усилении защиты](https://code.claude.com/docs/ru/self-hosted-environments-deploy.md#harden-your-deployment). Рутинные вызовы инструментов, включая сетевые запросы `Bash`, выполняются без участия человека как с набором инструментов, разрешённых по умолчанию, так и в авторежиме, поэтому именно сетевая граница ограничивает, куда могут обращаться эти вызовы.836> Закрепляйте авторежим только в тех окружениях, где контейнеры сессий работают с [запретом исходящего сетевого трафика по умолчанию](https://code.claude.com/docs/ru/self-hosted-environments-deploy.md#default-deny-egress) и применены остальные меры из [раздела об усилении защиты](https://code.claude.com/docs/ru/self-hosted-environments-deploy.md#harden-your-deployment). Рутинные вызовы инструментов, включая сетевые запросы `Bash`, выполняются без участия человека как с набором инструментов, разрешённых по умолчанию, так и в авторежиме, поэтому именно сетевая граница ограничивает, куда могут обращаться эти вызовы.

834 837 

835Чтобы свести запросы к минимуму независимо от того, что передаёт управляющий уровень, закрепите [авторежим](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode) в своём скрипте-обёртке или [хуке `command`](#command). Авторежим позволяет сессиям работать без рутинных запросов разрешений: отдельная модель-классификатор проверяет действия перед выполнением и блокирует отклонённые, а явные правила ask по-прежнему принудительно вызывают запрос; о том, что проверяет классификатор, рассказано на странице о режимах разрешений. Раннер добавляет вычисленные сервером флаги перед вызовом обёртки, а для флагов с одним значением, таких как `--permission-mode`, парсер учитывает последнее вхождение, поэтому флаг, добавленный после `"$@"`, переопределяет значение, переданное сервером:838Чтобы сессии запускались в [авторежиме](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode), пока claude.ai/code или другой клиент не задаст для них режим разрешений, закрепите его в своём скрипте-обёртке или [хуке `command`](#command). Раннер вызывает обёртку, передавая ей собственные флаги в качестве аргументов, а Claude Code применяет последний `--permission-mode` в командной строке, поэтому добавьте свой после `"$@"`:

836 839 

837```bash theme={null}840```bash theme={null}

838#!/bin/bash841#!/bin/bash

839exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@" --permission-mode auto842exec "$CLAUDE_RUNNER_CLAUDE_BIN" "$@" --permission-mode auto

840```843```

841 844 

842Чтобы вместо этого заранее разрешить конкретные инструменты, добавьте `--allowed-tools` со своими правилами, например `--allowed-tools "Bash(bazel *) Bash(yarn *) mcp__internal__*"`. Списочные флаги, такие как `--allowed-tools` и `--disallowed-tools`, накапливаются между вхождениями, а не переопределяют друг друга, поэтому ваши правила применяются поверх любых правил, переданных управляющим уровнем. Чтобы сузить набор, добавьте `--disallowed-tools`: этот флаг запрещает инструменты, даже если другое правило их разрешает.845Как только клиент задаёт режим, добавленный вами режим перестаёт применяться, даже после перезапуска сессии на раннере. Например, claude.ai/code задаёт режим с первым сообщением сессии, если в его раскрывающемся списке режимов показан Auto или если кто-то выбрал там режим.

846 

847В авторежиме отдельная модель-классификатор проверяет действия перед выполнением и блокирует отклонённые. Явное правило ask по-прежнему принудительно вызывает запрос. Вызов, который блокирует [правило запрета](https://code.claude.com/docs/ru/permissions.md#manage-permissions), остаётся заблокированным в любом режиме.

848 

849### Предварительное разрешение конкретных инструментов

850 

851Чтобы заранее разрешить конкретные инструменты, добавьте `--allowed-tools` со своими правилами после `"$@"` в скрипте-обёртке, например `--allowed-tools "Bash(bazel *) Bash(yarn *) mcp__internal__*"`. Списочные флаги, такие как `--allowed-tools` и `--disallowed-tools`, накапливаются между вхождениями, а не переопределяют друг друга, поэтому ваши правила применяются поверх любых правил, переданных управляющим уровнем. Чтобы сузить набор, добавьте `--disallowed-tools`: этот флаг запрещает инструменты, даже если другое правило их разрешает.

843 852 

844### Как собирается конфигурация каждой сессии853### Как собирается конфигурация каждой сессии

845 854 

Details

195* Кэшированное значение [`prependPlugins`](https://code.claude.com/docs/ru/settings-reference#prependplugins), [`appendPlugins`](https://code.claude.com/docs/ru/settings-reference#appendplugins) или [`enabledPlugins`](https://code.claude.com/docs/ru/settings-reference#enabledplugins) не может удалить встроенного стража, изменить его позицию или отключить его, пока получение в рамках сессии не подтвердит данные195* Кэшированное значение [`prependPlugins`](https://code.claude.com/docs/ru/settings-reference#prependplugins), [`appendPlugins`](https://code.claude.com/docs/ru/settings-reference#appendplugins) или [`enabledPlugins`](https://code.claude.com/docs/ru/settings-reference#enabledplugins) не может удалить встроенного стража, изменить его позицию или отключить его, пока получение в рамках сессии не подтвердит данные

196* На машине, где [источник, управляемый на уровне конечного устройства](https://code.claude.com/docs/ru/managed-settings.md#choose-a-delivery-mechanism), перечисляет или включает собственные плагины, плагин, который включён только кэшированным списком, считается [плагином пользователя](https://code.claude.com/docs/ru/plugins/mods/admin.md#install-your-organizations-mods), а не вашей организации, пока получение не подтвердит данные196* На машине, где [источник, управляемый на уровне конечного устройства](https://code.claude.com/docs/ru/managed-settings.md#choose-a-delivery-mechanism), перечисляет или включает собственные плагины, плагин, который включён только кэшированным списком, считается [плагином пользователя](https://code.claude.com/docs/ru/plugins/mods/admin.md#install-your-organizations-mods), а не вашей организации, пока получение не подтвердит данные

197* Claude Code получает свежие настройки в фоновом режиме197* Claude Code получает свежие настройки в фоновом режиме

198* Если провайдер сессии отсутствует в кэшированном списке [`allowedProviders`](https://code.claude.com/docs/ru/settings-reference#allowedproviders), Claude Code может дождаться этого получения и проверить ещё раз, прежде чем отклонить сессию. Если получение завершается неудачно, сессия отклоняется

198* Кэшированные настройки сохраняются при сбоях сети. Если получение при запуске завершается неудачно, Claude Code предупреждает в интерактивных сессиях и на вкладке Code, что действует кэшированная политика199* Кэшированные настройки сохраняются при сбоях сети. Если получение при запуске завершается неудачно, Claude Code предупреждает в интерактивных сессиях и на вкладке Code, что действует кэшированная политика

199* Пока получение не завершится успешно, значения, удержанные при запуске, остаются удержанными200* Пока получение не завершится успешно, значения, удержанные при запуске, остаются удержанными

200 201 

Details

111| [`footerLinksRegexes`](#footerlinksregexes) | Превратите ID задач или рецензий в выводе в [кликабельные ссылки](https://code.claude.com/docs/ru/statusline.md#clickable-links) под полем ввода | Interface and terminal | User or managed |111| [`footerLinksRegexes`](#footerlinksregexes) | Превратите ID задач или рецензий в выводе в [кликабельные ссылки](https://code.claude.com/docs/ru/statusline.md#clickable-links) под полем ввода | Interface and terminal | User or managed |

112| [`forceLoginGatewayUrl`](#forcelogingatewayurl) | Установите [URL шлюза](https://code.claude.com/docs/ru/claude-apps-gateway#set-the-gateway-url), к которому подключается экран входа | Authentication and providers | User or managed |112| [`forceLoginGatewayUrl`](#forcelogingatewayurl) | Установите [URL шлюза](https://code.claude.com/docs/ru/claude-apps-gateway#set-the-gateway-url), к которому подключается экран входа | Authentication and providers | User or managed |

113| [`forceLoginMethod`](#forceloginmethod) | [Ограничьте вход](https://code.claude.com/docs/ru/authentication.md#restrict-login-to-your-organization) на claude.ai, Claude Console или [облачный шлюз](https://code.claude.com/docs/ru/claude-apps-gateway) | Authentication and providers | Any file |113| [`forceLoginMethod`](#forceloginmethod) | [Ограничьте вход](https://code.claude.com/docs/ru/authentication.md#restrict-login-to-your-organization) на claude.ai, Claude Console или [облачный шлюз](https://code.claude.com/docs/ru/claude-apps-gateway) | Authentication and providers | Any file |

114| [`forceLoginOrgUUID`](#forceloginorguuid) | [Привяжите входы claude.ai к вашей организации](https://code.claude.com/docs/ru/authentication.md#restrict-login-to-your-organization); только управляемый источник это обеспечивает | Authentication and providers | Any file |114| [`forceLoginOrgUUID`](#forceloginorguuid) | [Привяжите входы claude.ai к вашей организации](https://code.claude.com/docs/ru/authentication.md#restrict-login-to-your-organization); это обеспечивают только управляемые настройки | Authentication and providers | Any file |

115| [`forceRemoteSettingsRefresh`](#forceremotesettingsrefresh) | Блокируйте запуск до тех пор, пока [настройки, управляемые сервером](https://code.claude.com/docs/ru/server-managed-settings.md), не будут заново получены | Enterprise and managed settings | Managed |115| [`forceRemoteSettingsRefresh`](#forceremotesettingsrefresh) | Блокируйте запуск до тех пор, пока [настройки, управляемые сервером](https://code.claude.com/docs/ru/server-managed-settings.md), не будут заново получены | Enterprise and managed settings | Managed |

116| [`gatewayInternalNetworks`](#gatewayinternalnetworks) | Позвольте `/login` достичь [облачного шлюза](https://code.claude.com/docs/ru/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) в общедоступном пространстве IPv4, которое ваша организация использует внутри | Authentication and providers | Managed |116| [`gatewayInternalNetworks`](#gatewayinternalnetworks) | Позвольте `/login` достичь [облачного шлюза](https://code.claude.com/docs/ru/claude-apps-gateway#allow-a-gateway-on-public-address-space-you-own) в общедоступном пространстве IPv4, которое ваша организация использует внутри | Authentication and providers | Managed |

117| [`gcpAuthRefresh`](#gcpauthrefresh) | Обновляйте [учётные данные Google Cloud](https://code.claude.com/docs/ru/google-vertex-ai.md#advanced-credential-configuration) с помощью вашей собственной команды | Authentication and providers | Any file |117| [`gcpAuthRefresh`](#gcpauthrefresh) | Обновляйте [учётные данные Google Cloud](https://code.claude.com/docs/ru/google-vertex-ai.md#advanced-credential-configuration) с помощью вашей собственной команды | Authentication and providers | Any file |


446 446 

447### `fastMode`447### `fastMode`

448 448 

449Включите [быстрый режим](https://code.claude.com/docs/ru/fast-mode.md) для сессий, где он доступен, — для интерактивной работы, например быстрой итерации или отладки в реальном времени, когда вам нужна скорость при более высокой стоимости за токен. Обычно этот ключ не редактируют вручную: выполнение `/fast` записывает `fastMode: true` в `~/.claude/settings.json`, а повторное выполнение для отключения быстрого режима удаляет ключ. Быстрый режим работает только на Opus 5.5, Opus 5 и Opus 4.8: его включение на другой модели переключает вас на Opus, а переключение на неподдерживаемую модель отключает его. См. [Переключение моделей при включённом быстром режиме](https://code.claude.com/docs/ru/fast-mode.md#switch-models-while-fast-mode-is-on).449Включите [быстрый режим](https://code.claude.com/docs/ru/fast-mode.md) для сессий, где он доступен, — для интерактивной работы, например быстрой итерации или отладки в реальном времени, когда вам нужна скорость при более высокой стоимости за токен. Обычно этот ключ не редактируют вручную. Выполнение `/fast` записывает `fastMode: true` в `~/.claude/settings.json`, а повторное выполнение для отключения быстрого режима удаляет ключ.

450 

451Быстрый режим поддерживают только Opus 5.5, Opus 5 и Opus 4.8. Выполнение `/fast` на другой модели переключает вас на Opus, а переключение на неподдерживаемую модель отключает быстрый режим. См. [Переключение моделей при включённом быстром режиме](https://code.claude.com/docs/ru/fast-mode.md#switch-models-while-fast-mode-is-on).

450 452 

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

452* **Тип**: Boolean454* **Тип**: Boolean


463 465 

464### `fastModePerSessionOptIn`466### `fastModePerSessionOptIn`

465 467 

466Обычно выполнение `/fast` сохраняет [`fastMode`](#fastmode) в пользовательские настройки человека, поэтому быстрый режим включён в начале каждой последующей сессии. Установите этот ключ в `true`, чтобы это прекратить: сохранённое `fastMode: true` больше не включает быстрый режим при запуске сессии, и каждому пользователю нужно выполнять `/fast` в каждой сессии, где он нужен. Claude Code оставляет ключ `fastMode` в файле пользователя, поэтому отключение этого ключа восстанавливает прежнее поведение.468Обычно выполнение `/fast` сохраняет [`fastMode`](#fastmode) в пользовательские настройки человека, поэтому новые сессии на поддерживаемой модели начинаются с включённым быстрым режимом. Установите этот ключ в `true`, чтобы это прекратить: сохранённое `fastMode: true` больше не включает быстрый режим при запуске сессии, и каждому пользователю нужно выполнять `/fast` в каждой сессии, где он нужен. Claude Code оставляет ключ `fastMode` в файле пользователя, поэтому отключение этого ключа восстанавливает прежнее поведение.

467 469 

468Владельцы на тарифах Team или Enterprise могут развернуть его на всю организацию через [настройки, управляемые сервером](https://code.claude.com/docs/ru/server-managed-settings.md). Когда ключ задан в управляемых настройках, `/fast on` отклоняется вне интерактивных сессий в терминале и сообщает, что ваша организация отключила быстрый режим. Это касается [неинтерактивного режима](https://code.claude.com/docs/ru/headless.md), [расширения VS Code](https://code.claude.com/docs/ru/vs-code.md) и [облачных сессий](https://code.claude.com/docs/ru/claude-code-on-the-web.md).470Владельцы на тарифах Team или Enterprise могут развернуть его на всю организацию через [настройки, управляемые сервером](https://code.claude.com/docs/ru/server-managed-settings.md). Когда ключ задан в управляемых настройках, `/fast on` отклоняется вне интерактивных сессий в терминале и сообщает, что ваша организация отключила быстрый режим. Это касается [неинтерактивного режима](https://code.claude.com/docs/ru/headless.md), [расширения VS Code](https://code.claude.com/docs/ru/vs-code.md) и [облачных сессий](https://code.claude.com/docs/ru/claude-code-on-the-web.md).

469 471 

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

471* **Тип**: Boolean473* **Тип**: Boolean

472 * `true`: сохранённое `fastMode: true` больше не включает быстрый режим при запуске сессии, поэтому каждый пользователь выполняет `/fast` в каждой сессии, где он нужен; `fastMode: true`, переданное через `--settings`, по-прежнему учитывается для этой сессии, если этот ключ не задан в управляемых настройках474 * `true`: сохранённое `fastMode: true` больше не включает быстрый режим при запуске сессии, поэтому каждый пользователь выполняет `/fast` в каждой сессии, где он нужен; `fastMode: true`, переданное через `--settings`, по-прежнему учитывается для этой сессии, если этот ключ не задан в управляемых настройках

473 * `false`: сохранённое `fastMode: true` включает быстрый режим в начале каждой последующей сессии475 * `false`: сохранённое `fastMode: true` включает быстрый режим в начале каждой новой сессии на поддерживаемой модели

474* **По умолчанию**: `false`476* **По умолчанию**: `false`

475 477 

476```json settings.json theme={null}478```json settings.json theme={null}


4827 4829 

4828### `agentPushNotifEnabled`4830### `agentPushNotifEnabled`

4829 4831 

4830Разрешить Claude отправлять push-уведомление на ваш телефон, когда он решит, что его стоит отправить, например, когда завершится длительная задача. Claude может отправить его, пока подключён [Remote Control](https://code.claude.com/docs/ru/remote-control.md). Отображается в `/config` как **Push when Claude decides**. Когда вы меняете значение там, Claude Code также сохраняет его в вашей учётной записи.4832Разрешить Claude отправлять push-уведомление на ваш телефон, когда он решит, что его стоит отправить, например, когда завершится длительная задача. В локальной сессии Claude может отправить его, пока подключён [Remote Control](https://code.claude.com/docs/ru/remote-control.md). Отображается в `/config` как **Push when Claude decides**. Когда вы меняете значение там, Claude Code также сохраняет его в вашей учётной записи.

4831 4833 

4832* **Scope**: [`Any file`](#scopes). Claude Code также читает значение, оставленное в `~/.claude.json` старыми версиями.4834* **Scope**: [`Any file`](#scopes). Claude Code также читает значение, оставленное в `~/.claude.json` старыми версиями.

4833* **Type**: Boolean4835* **Type**: Boolean


4964 4966 

4965### `inputNeededNotifEnabled`4967### `inputNeededNotifEnabled`

4966 4968 

4967Получить push-уведомление на ваш телефон, когда запрос разрешения или вопрос ожидает вашего ввода. Claude Code отправляет эти уведомления только пока [Удалённое управление](https://code.claude.com/docs/ru/remote-control.md) подключено. Отображается в `/config` как **Push when actions required**.4969Получать push-уведомление на ваш телефон, когда запрос разрешения или вопрос ожидает вашего ввода. В локальной сессии Claude Code отправляет эти уведомления, только пока подключён [Remote Control](https://code.claude.com/docs/ru/remote-control.md). Отображается в `/config` как **Push when actions required**.

4968 4970 

4969* **Scope**: [`Any file`](#scopes). Claude Code также читает значение, оставленное в `~/.claude.json` старыми версиями.4971* **Scope**: [`Any file`](#scopes). Claude Code также читает значение, оставленное в `~/.claude.json` старыми версиями.

4970* **Type**: Boolean4972* **Type**: Boolean

4971 * `true`: вы получаете push-уведомление на ваш телефон, когда запрос разрешения или вопрос ожидает, пока подключено Удалённое управление

4972 * `false`: Claude Code не отправляет такие уведомления

4973* **Default**: `false`4973* **Default**: `false`

4974 4974 

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


4986 4986 

4987* **Scope**: [`Any file`](#scopes). Claude Code также читает значение, оставленное в `~/.claude.json` старыми версиями.4987* **Scope**: [`Any file`](#scopes). Claude Code также читает значение, оставленное в `~/.claude.json` старыми версиями.

4988* **Type**: строка, одна из:4988* **Type**: строка, одна из:

4989 * `"auto"`: Claude Code отправляет уведомление рабочего стола в iTerm2, Ghostty и Kitty, звонит в колокол в Terminal.app только когда его звуковой колокол отключён, и ничего не делает в других местах4989 * `"auto"`: Claude Code отправляет уведомление рабочего стола, когда обнаруживает iTerm2, Ghostty или Kitty, звонит в колокол в Terminal.app только когда его звуковой колокол отключён, и ничего не делает в других местах

4990 * `"terminal_bell"`: Claude Code звонит в символ колокола в любом терминале4990 * `"terminal_bell"`: Claude Code звонит в символ колокола в любом терминале

4991 * `"iterm2"`: Claude Code отправляет уведомление рабочего стола iTerm24991 * `"iterm2"`: Claude Code отправляет уведомление рабочего стола iTerm2

4992 * `"iterm2_with_bell"`: Claude Code отправляет уведомление рабочего стола iTerm2 и звонит в колокол4992 * `"iterm2_with_bell"`: Claude Code отправляет уведомление рабочего стола iTerm2 и звонит в колокол


5001}5001}

5002```5002```

5003 5003 

5004С `"auto"` Claude Code отправляет уведомление рабочего стола в iTerm2, Ghostty и Kitty. В Terminal.app он звонит в символ колокола только когда вы отключили звуковой колокол Terminal, и в других терминалах ничего не делает. Установите `"terminal_bell"`, чтобы звонить в символ колокола в любом терминале. См. [Get a terminal bell or notification](https://code.claude.com/docs/ru/terminal-config.md#get-a-terminal-bell-or-notification).5004С `"auto"` Claude Code отправляет уведомление рабочего стола, когда обнаруживает iTerm2, Ghostty или Kitty. В Terminal.app он звонит в символ колокола только когда вы отключили звуковой колокол Terminal, и в других терминалах ничего не делает. Установите `"terminal_bell"`, чтобы звонить в символ колокола в любом терминале. См. [Get a terminal bell or notification](https://code.claude.com/docs/ru/terminal-config.md#get-a-terminal-bell-or-notification).

5005 5005 

5006### `remote.defaultEnvironmentId`5006### `remote.defaultEnvironmentId`

5007 5007 


5176 5176 

5177* После истечения времени жизни кэша, пять минут по умолчанию или интервал, который вы установили с помощью [`CLAUDE_CODE_API_KEY_HELPER_TTL_MS`](https://code.claude.com/docs/ru/env-vars).5177* После истечения времени жизни кэша, пять минут по умолчанию или интервал, который вы установили с помощью [`CLAUDE_CODE_API_KEY_HELPER_TTL_MS`](https://code.claude.com/docs/ru/env-vars).

5178* Когда запрос к API Anthropic, напрямую или через [LLM-шлюз](https://code.claude.com/docs/ru/llm-gateway), завершается с ошибкой `401` или `403`.5178* Когда запрос к API Anthropic, напрямую или через [LLM-шлюз](https://code.claude.com/docs/ru/llm-gateway), завершается с ошибкой `401` или `403`.

5179* Когда запрос через LLM-шлюз завершается с ошибкой `401`, но не `403`, и вы установили [`CLAUDE_CODE_SKIP_VERTEX_AUTH`](https://code.claude.com/docs/ru/env-vars) для Google Cloud's Agent Platform, `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` для Claude Platform on AWS или `CLAUDE_CODE_SKIP_MANTLE_AUTH` для Amazon Bedrock Mantle. Требуется Claude Code v2.1.318 или позже.

5179* Перед отправкой запроса к API Anthropic, напрямую или через LLM-шлюз, когда кэшированный вывод — это JWT, который истёк после того, как помощник его создал. Требуется Claude Code v2.1.246 или позже.5180* Перед отправкой запроса к API Anthropic, напрямую или через LLM-шлюз, когда кэшированный вывод — это JWT, который истёк после того, как помощник его создал. Требуется Claude Code v2.1.246 или позже.

5180 5181 

5181Последние два случая применяются, только когда вывод помощника — это учётные данные, которые отправляет Claude Code, и `ANTHROPIC_AUTH_TOKEN` не установлен.5182Последние три случая применяются, только когда вывод помощника — это учётные данные, которые отправляет Claude Code, и `ANTHROPIC_AUTH_TOKEN` не установлен.

5182 5183 

5183В интерактивных сессиях, когда команда поступает из настроек проекта или локальных настроек, Claude Code не запускает её до тех пор, пока вы не примете запрос доверия к рабочему пространству. См. [Управление учётными данными](https://code.claude.com/docs/ru/authentication.md#credential-management).5184В интерактивных сессиях, когда команда поступает из настроек проекта или локальных настроек, Claude Code не запускает её до тех пор, пока вы не примете запрос доверия к рабочему пространству. См. [Управление учётными данными](https://code.claude.com/docs/ru/authentication.md#credential-management).

5184 5185 


5261 5262 

5262Из управляемого источника требуйте, чтобы входы с учётной записью claude.ai принадлежали одной организации Anthropic, указанной как один UUID, или любой из нескольких организаций, указанных как массив. Из любого файла настроек Claude Code также использует один UUID для предварительного выбора этой организации во время входа в claude.ai или Claude Console и ничего не выбирает предварительно для массива. Если вы установите ключ в любом файле настроек, Claude Code также перестаёт предлагать [вход в Console без ключа](https://code.claude.com/docs/ru/authentication.md#sign-in-without-an-api-key) в сессиях, к которым применяется этот файл, и вместо этого создаёт API-ключ.5263Из управляемого источника требуйте, чтобы входы с учётной записью claude.ai принадлежали одной организации Anthropic, указанной как один UUID, или любой из нескольких организаций, указанных как массив. Из любого файла настроек Claude Code также использует один UUID для предварительного выбора этой организации во время входа в claude.ai или Claude Console и ничего не выбирает предварительно для массива. Если вы установите ключ в любом файле настроек, Claude Code также перестаёт предлагать [вход в Console без ключа](https://code.claude.com/docs/ru/authentication.md#sign-in-without-an-api-key) в сессиях, к которым применяется этот файл, и вместо этого создаёт API-ключ.

5263 5264 

5264* **Scope**: [`Any file`](#scopes). Ограничение применяет только управляемый источник; один UUID в любом другом файле настроек предварительно выбирает организацию во время входа, не ограничивая его.5265* **Scope**: [`Any file`](#scopes). В файле настроек, который не является управляемым источником, Claude Code не проверяет, к какой организации относится вход, а один UUID предварительно выбирает организацию во время входа.

5265* **Type**: строка, один UUID, или массив строк, несколько UUID5266* **Type**: строка, один UUID, или массив строк, несколько UUID

5266* **Default**: не установлено, поэтому может входить любая организация5267* **Default**: не установлено, поэтому может входить любая организация

5267 5268 


5827 5828 

5828### `autoInstallIdeExtension`5829### `autoInstallIdeExtension`

5829 5830 

5830Позволяет [`/ide`](https://code.claude.com/docs/ru/commands) устанавливать расширение Claude Code IDE в запущенный VS Code, Cursor или Devin Desktop, когда вы выполняете команду из внешнего терминала. Claude Code не устанавливает расширение при своем запуске. Отображается в `/config` как **Auto-install IDE extension** при запуске Claude Code внутри терминала VS Code или JetBrains.5831Позволяет [`/ide`](https://code.claude.com/docs/ru/commands) устанавливать расширение Claude Code IDE в запущенный VS Code, Cursor или Devin Desktop, когда вы выполняете команду из внешнего терминала. Claude Code не устанавливает и не обновляет расширение при запуске `claude`. До v2.1.318 Claude Code устанавливает или обновляет расширение при запуске `claude` в терминале одного из этих редакторов, если только этот ключ не имеет значение `false`.

5832 

5833Отображается в `/config` как **Auto-install IDE extension** при запуске Claude Code внутри терминала VS Code или JetBrains.

5831 5834 

5832* **Scope**: [`Global config`](#scopes)5835* **Scope**: [`Global config`](#scopes)

5833* **Type**: Boolean5836* **Type**: Boolean

setup.md +4 −4

Details

389> gpg --show-keys /etc/apt/keyrings/claude-code.asc389> gpg --show-keys /etc/apt/keyrings/claude-code.asc

390> ```390> ```

391>391>

392> Отпечаток, который выводит gpg, должен быть `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE`. Если gpg сообщает, что файл не может быть открыт или не содержит действительных данных OpenPGP, загрузка не удалась или вернула неправильное содержимое: подтвердите, что ваша сеть может достичь `downloads.claude.ai`, затем повторно выполните команду загрузки.392> Единственный отпечаток, который выводит gpg, должен быть `31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE`. Если gpg сообщает, что файл не может быть открыт или не содержит действительных данных OpenPGP, загрузка не удалась или вернула неправильное содержимое. Убедитесь, что ваша сеть может достичь `downloads.claude.ai`, затем повторно выполните команду загрузки.

393>393>

394> Зарегистрируйте репозиторий на канале `stable` и установите:394> Зарегистрируйте репозиторий на канале `stable` и установите:

395>395>


536Проверьте отделенную подпись против манифеста.536Проверьте отделенную подпись против манифеста.

537 537 

538```bash theme={null}538```bash theme={null}

539gpg --verify manifest.json.sig manifest.json539gpg --with-fingerprint --verify manifest.json.sig manifest.json

540```540```

541 541 

542Действительный результат сообщает `Good signature from "Anthropic Claude Code Release Signing <security@anthropic.com>"`.542Действительный результат сообщает `Good signature from "Anthropic Claude Code Release Signing <security@anthropic.com>"`. При настройках по умолчанию `gpg` также выводит `WARNING: This key is not certified with a trusted signature!` для вновь импортированного ключа. Это ожидается. Строка `Good signature` подтверждает, что криптографическая проверка прошла.

543 543 

544`gpg` также выводит `WARNING: This key is not certified with a trusted signature!` для любого вновь импортированного ключа. Это ожидается. Строка `Good signature` подтверждает, что криптографическая проверка прошла. Сравнение отпечатков на шаге 1 подтверждает, что сам ключ является подлинным.544Чтобы убедиться, что манифест подписан ключом Anthropic, сравните строку `Primary key fingerprint` в конце вывода с отпечатком, указанным на этой странице в шаге 1. Если они совпадают и вывод не содержит `BAD signature`, перейдите к шагу 4. В противном случае не используйте этот манифест.

545 545 

546**4. Проверка двоичного файла против манифеста**546**4. Проверка двоичного файла против манифеста**

547 547 

slack.md +7 −10

Details

20 20 

21## Варианты использования21## Варианты использования

22 22 

23* **Исследование и исправление ошибок**: Попросите Claude исследовать и исправить ошибки, как только они будут сообщены в каналах Slack.23* **Исследование и исправление ошибок**: Опишите ошибку и попросите Claude исследовать и исправить её.

24* **Быстрые проверки кода и модификации**: Пусть Claude реализует небольшие функции или рефакторит код на основе отзывов команды.24* **Быстрые код-ревью и модификации**: Пусть Claude реализует небольшие функции или рефакторит код.

25* **Совместная отладка**: Когда обсуждения в команде предоставляют важный контекст (например, воспроизведение ошибок или отчеты пользователей), Claude может использовать эту информацию для информирования своего подхода к отладке.

26* **Параллельное выполнение задач**: Запустите задачи кодирования в Slack, пока вы продолжаете другую работу, получая уведомления по завершении.25* **Параллельное выполнение задач**: Запустите задачи кодирования в Slack, пока вы продолжаете другую работу, получая уведомления по завершении.

27 26 

28## Предварительные требования27## Предварительные требования


91 90 

92### Сбор контекста91### Сбор контекста

93 92 

94**Из цепочек**: Когда вы упоминаете Claude в цепочке, он собирает контекст из всех сообщений в этой цепочке, чтобы понять полную беседу.93* **Из цепочек**: когда вы впервые упоминаете Claude через @mention в цепочке, он собирает контекст из ваших и своих собственных сообщений в этой цепочке.

94* **Из каналов**: когда вы упоминаете Claude через @mention непосредственно в канале, он просматривает ваши недавние сообщения и свои собственные в этом канале, а также название, тему и описание канала.

95 95 

96**Из каналов**: Когда упоминается непосредственно в канале, Claude смотрит на недавние сообщения канала для получения соответствующего контекста.96Этот контекст помогает Claude понять проблему, выбрать соответствующий репозиторий и определить свой подход к задаче. Чтобы передать Claude то, что написал коллега, например отчет об ошибке, вставьте этот текст в сообщение, в котором вы упоминаете Claude через @mention.

97 

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

99 97 

100> [!WARNING]98> [!WARNING]

101>99>


160### Написание эффективных запросов158### Написание эффективных запросов

161 159 

162* **Будьте конкретны**: Включайте имена файлов, имена функций или сообщения об ошибках, когда это уместно.160* **Будьте конкретны**: Включайте имена файлов, имена функций или сообщения об ошибках, когда это уместно.

163* **Предоставьте контекст**: Упомяните репозиторий или проект, если это не ясно из беседы.161* **Предоставьте контекст**: Упомяните репозиторий или проект.

164* **Определите успех**: Объясните, как выглядит "готово" — должен ли Claude писать тесты? Обновить документацию? Создать PR?162* **Определите успех**: Объясните, как выглядит "готово" — должен ли Claude писать тесты? Обновить документацию? Создать PR?

165* **Используйте цепочки**: Отвечайте в цепочках при обсуждении ошибок или функций, чтобы Claude мог собрать полный контекст.

166 163 

167### Когда использовать Slack vs. веб-версию164### Когда использовать Slack vs. веб-версию

168 165 

169**Используйте Slack когда**: Контекст уже существует в обсуждении Slack, вы хотите запустить задачу асинхронно или сотрудничаете с товарищами по команде, которым нужна видимость.166**Используйте Slack когда**: Вы хотите запустить задачу асинхронно или сотрудничаете с товарищами по команде, которым нужна видимость.

170 167 

171**Используйте веб-версию напрямую когда**: Вам нужно загрузить файлы, вы хотите взаимодействие в реальном времени во время разработки или работаете над более длительными, более сложными задачами.168**Используйте веб-версию напрямую когда**: Вам нужно загрузить файлы, вы хотите взаимодействие в реальном времени во время разработки или работаете над более длительными, более сложными задачами.

172 169 

Details

74 74 

75По умолчанию Claude Code отправляет уведомление рабочего стола в одних терминалах, а в других — символ звонка или ничего:75По умолчанию Claude Code отправляет уведомление рабочего стола в одних терминалах, а в других — символ звонка или ничего:

76 76 

77* **Ghostty, Kitty и iTerm2**: уведомление рабочего стола, которое iTerm2 показывает только после того, как вы включите его настройки оповещений.77* **Ghostty, Kitty и iTerm2, когда Claude Code их обнаруживает**: уведомление рабочего стола, которое iTerm2 показывает только после того, как вы включите его настройки оповещений.

78* **Apple Terminal**: без звука; беззвучный символ звонка, если Claude Code обнаруживает, что параметр "Audible bell" отключён в профиле активного окна Terminal, в противном случае ничего. Этот символ звонка отображается как мигание окна или подпрыгивание значка в Dock, пока Terminal находится в фоне, если в этом профиле включён параметр "Visual bell" или подпрыгивание в Dock.78* **Apple Terminal**: без звука; беззвучный символ звонка, если Claude Code обнаруживает, что параметр "Audible bell" отключён в профиле активного окна Terminal, в противном случае ничего. Этот символ звонка отображается как мигание окна или подпрыгивание значка в Dock, пока Terminal находится в фоне, если в этом профиле включён параметр "Visual bell" или подпрыгивание в Dock.

79* **Другие терминалы**: ничего.79* **Другие терминалы**: ничего.

80 80 


86}86}

87```87```

88 88 

89Уведомление рабочего стола достигает вашей локальной машины через SSH, поэтому удалённый сеанс всё ещё может вас оповестить. Ghostty и Kitty перенаправляют его в центр уведомлений вашей ОС без дополнительной настройки. iTerm2 требует включения перенаправления:89При подключении через SSH из терминала, запущенного вне tmux, установите [`preferredNotifChannel`](https://code.claude.com/docs/ru/settings-reference#preferrednotifchannel) на значение вашего локального терминала — `"iterm2"`, `"kitty"` или `"ghostty"` — на машине, где работает Claude Code. Тогда уведомление рабочего стола дойдёт до вашей локальной машины. Ghostty и Kitty перенаправляют его в центр уведомлений вашей ОС без дополнительной настройки. iTerm2 требует включения перенаправления:

90 90 

91**1. Откройте параметры уведомлений iTerm2**91**1. Откройте параметры уведомлений iTerm2**

92 92 


131 131 

132## Настройка tmux132## Настройка tmux

133 133 

134Когда Claude Code работает внутри tmux, по умолчанию Shift+Enter отправляет вместо вставки новой строки, и уведомления рабочего стола и [индикатор прогресса](https://code.claude.com/docs/ru/settings-reference.md#terminalprogressbarenabled) никогда не достигают внешнего терминала. Добавьте эти строки в `~/.tmux.conf`, затем запустите `tmux source-file ~/.tmux.conf`, чтобы применить их к работающему серверу:134Когда Claude Code работает внутри tmux, по умолчанию Shift+Enter отправляет вместо вставки новой строки, а уведомления рабочего стола не достигают внешнего терминала. Добавьте эти строки в `~/.tmux.conf`, затем запустите `tmux source-file ~/.tmux.conf`, чтобы применить их к работающему серверу:

135 135 

136```bash ~/.tmux.conf theme={null}136```bash ~/.tmux.conf theme={null}

137set -g allow-passthrough on137set -g allow-passthrough on


140set -as terminal-features 'xterm*:extkeys'140set -as terminal-features 'xterm*:extkeys'

141```141```

142 142 

143Строка `allow-passthrough` позволяет уведомлениям и обновлениям прогресса достигать внешнего терминала вместо того, чтобы быть поглощенными tmux. Строки `extended-keys` позволяют tmux различать Shift+Enter и простой Enter, чтобы сочетание клавиш для новой строки работало.143Чтобы отправлять уведомления из видимой панели во внешний терминал, оставьте строку `allow-passthrough` и задайте для [`preferredNotifChannel`](https://code.claude.com/docs/ru/settings-reference#preferrednotifchannel) значение `"iterm2"`, `"kitty"` или `"ghostty"`. С этим примером панель в окне, которое вы не просматриваете, не отправляет уведомлений. Строки `extended-keys` позволяют tmux различать Shift+Enter и простой Enter, чтобы сочетание клавиш для новой строки работало.

144 144 

145Элементу [`Image` мода](https://code.claude.com/docs/ru/plugins/mods/reference#elements) нужны строки `allow-passthrough` и `focus-events`, а также выполнение остальных [требований для отрисовки внутри tmux](https://code.claude.com/docs/ru/plugins/mods/gallery.md#draw-an-image-inside-tmux). После добавления строк также отключитесь от tmux, подключитесь снова и перезапустите Claude Code.145Элементу [`Image` мода](https://code.claude.com/docs/ru/plugins/mods/reference#elements) нужны строки `allow-passthrough` и `focus-events`, а также выполнение остальных [требований для отрисовки внутри tmux](https://code.claude.com/docs/ru/plugins/mods/gallery.md#draw-an-image-inside-tmux). После добавления строк также отключитесь от tmux, подключитесь снова и перезапустите Claude Code.

146 146 

Details

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/claude-code-on-the-web.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 |

vs-code.md +12 −3

Details

818 818 

819### Запуск CLI в VS Code819### Запуск CLI в VS Code

820 820 

821Чтобы использовать CLI, не выходя из VS Code, нажмите `` Ctrl+` `` в Windows/Linux или `` Cmd+` `` на Mac, чтобы открыть встроенный терминал, а затем выполните `claude`. Запуск `claude` не устанавливает расширение. Без него `/ide` во встроенном терминале сообщает "No available IDEs detected", а `/status` показывает IDE как "Not connected".821Чтобы использовать CLI, не выходя из VS Code, нажмите `` Ctrl+` `` в Windows/Linux или `` Cmd+` `` на Mac, чтобы открыть встроенный терминал, а затем выполните `claude`.

822 822 

823Чтобы получить такие функции, как просмотр diff и передача диагностики, подключите CLI к расширению из встроенного или внешнего терминала:823Чтобы получить такие функции, как просмотр diff и передача диагностики, подключите CLI к расширению из встроенного или внешнего терминала:

824 824 

825* **Встроенный терминал**: [установите расширение](#install-the-extension), а затем запустите `claude`. CLI подключится автоматически.825* **Встроенный терминал**: [установите расширение](#install-the-extension), а затем запустите `claude`. CLI подключится автоматически. Claude Code v2.1.318 или новее не устанавливает расширение за вас, поэтому, пока вы его не установите, `/ide` сообщает "No available IDEs detected", а `/status` показывает IDE как "Not connected".

826* **Внешний терминал**: выполните `/ide` внутри Claude Code, чтобы подключиться к VS Code. Если VS Code запущен без расширения, `/ide` установит его, если только вы не отключили [`autoInstallIdeExtension`](https://code.claude.com/docs/ru/settings-reference#autoinstallideextension).826* **Внешний терминал**: выполните `/ide` внутри Claude Code, чтобы подключиться к VS Code. Если VS Code запущен без расширения, `/ide` установит его, если только вы не отключили [`autoInstallIdeExtension`](https://code.claude.com/docs/ru/settings-reference#autoinstallideextension).

827 827 

828Установка расширения не добавляет `claude` в PATH вашей оболочки. Расширение содержит собственную копию CLI для своей панели чата, но для ввода `claude` в терминале требуется [автономная установка CLI](https://code.claude.com/docs/ru/setup.md). Выполните установку один раз, и команды на этой странице, включая `claude mcp add` и `claude --resume`, будут работать в любом терминале. Если после установки `claude` по-прежнему не найден, [проверьте ваш PATH](https://code.claude.com/docs/ru/troubleshoot-install.md#verify-your-path).828Установка расширения не добавляет `claude` в PATH вашей оболочки. Расширение содержит собственную копию CLI для своей панели чата, но для ввода `claude` в терминале требуется [автономная установка CLI](https://code.claude.com/docs/ru/setup.md). Выполните установку один раз, и команды на этой странице, включая `claude mcp add` и `claude --resume`, будут работать в любом терминале. Если после установки `claude` по-прежнему не найден, [проверьте ваш PATH](https://code.claude.com/docs/ru/troubleshoot-install.md#verify-your-path).


10912. Найдите «Claude Code»10912. Найдите «Claude Code»

10923. Нажмите **Uninstall**10923. Нажмите **Uninstall**

1093 1093 

1094Расширение остаётся удалённым, когда вы запускаете `claude`. Если вы выполните `/ide` во внешнем терминале, пока запущен VS Code, Claude Code переустановит его. Чтобы это предотвратить, задайте для [`autoInstallIdeExtension`](https://code.claude.com/docs/ru/settings-reference#autoinstallideextension) значение `false` в `~/.claude.json` или отключите **Auto-install IDE extension** в `/config` во встроенном терминале. Также можно задать для переменной окружения [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](https://code.claude.com/docs/ru/env-vars) значение `1`.1094Если после удаления вы выполните любое из следующих действий, расширение вернётся:

1095 

1096* Запуск `/ide` во внешнем терминале, пока запущен VS Code

1097* Запуск `claude` во встроенном терминале в версии Claude Code ниже v2.1.318

1098 

1099Чтобы расширение не возвращалось, выполните одно из следующих действий, а затем снова удалите его, если оно уже вернулось:

1100 

1101* Задайте для [`autoInstallIdeExtension`](https://code.claude.com/docs/ru/settings-reference#autoinstallideextension) значение `false` в `~/.claude.json`

1102* Задайте для [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](https://code.claude.com/docs/ru/env-vars#variables) значение `1` в разделе `env` [файла настроек](https://code.claude.com/docs/ru/env-vars.md#in-settings-files)

1103* Во встроенном терминале отключите **Auto-install IDE extension** в `/config`

1095 1104 

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

1097 1106 

Details

12 12 

13Облачный сеанс запускает Claude Code на облачной инфраструктуре вместо вашей машины, управляемой Anthropic по умолчанию. Этот краткий старт запускает один с [claude.ai/code](https://claude.ai/code) в вашем браузере. Вы также можете запустить один из мобильного приложения Claude, приложения Desktop или вашего терминала с помощью `claude --cloud`.13Облачный сеанс запускает Claude Code на облачной инфраструктуре вместо вашей машины, управляемой Anthropic по умолчанию. Этот краткий старт запускает один с [claude.ai/code](https://claude.ai/code) в вашем браузере. Вы также можете запустить один из мобильного приложения Claude, приложения Desktop или вашего терминала с помощью `claude --cloud`.

14 14 

15Вам потребуется репозиторий GitHub для [начала работы](#connect-github). Claude клонирует его в изолированную виртуальную машину, вносит изменения и отправляет ветку для вашего просмотра. Сессии сохраняются на всех устройствах, поэтому задача, которую вы начали на ноутбуке, готова к просмотру с телефона позже. Каждая сессия учитывается в лимитах использования вашего плана наряду с остальным использованием Claude и Claude Code, а за облачную виртуальную машину отдельная плата не взимается.15Claude клонирует выбранный вами [репозиторий GitHub](#connect-github) в изолированную виртуальную машину, вносит изменения и отправляет ветку для вашего просмотра. Сессии сохраняются на всех устройствах, поэтому задача, которую вы начали на ноутбуке, готова к просмотру с телефона позже. Каждая сессия учитывается в лимитах использования вашего плана наряду с остальным использованием Claude и Claude Code, а за облачную виртуальную машину отдельная плата не взимается.

16 16 

17Облачные сеансы хорошо подходят для:17Облачные сеансы хорошо подходят для:

18 18 


44| **Откуда вы её запускаете** | claude.ai/code, мобильное приложение Claude, приложение Desktop с выбранным режимом **Cloud** или `claude --cloud` | Ваш терминал, ваша IDE или приложение Desktop с выбранным режимом **Local** | Ваш терминал, расширение VS Code или приложение Desktop |44| **Откуда вы её запускаете** | claude.ai/code, мобильное приложение Claude, приложение Desktop с выбранным режимом **Cloud** или `claude --cloud` | Ваш терминал, ваша IDE или приложение Desktop с выбранным режимом **Local** | Ваш терминал, расширение VS Code или приложение Desktop |

45| **Откуда вы общаетесь** | claude.ai, мобильное приложение или приложение Desktop | Там, где вы её запустили | claude.ai или мобильное приложение, а также там, где вы её запустили |45| **Откуда вы общаетесь** | claude.ai, мобильное приложение или приложение Desktop | Там, где вы её запустили | claude.ai или мобильное приложение, а также там, где вы её запустили |

46| **Использует вашу локальную конфигурацию** | Нет, только репозиторий | Да | Да |46| **Использует вашу локальную конфигурацию** | Нет, только репозиторий | Да | Да |

47| **Требует GitHub** | Да, или можно [упаковать локальный репозиторий](https://code.claude.com/docs/ru/claude-code-on-the-web.md#send-local-repositories-without-github) через `--cloud` | Нет | Нет |47| **Требует GitHub** | Да, для репозитория GitHub, если только `--cloud` не [упаковывает ваш локальный репозиторий](https://code.claude.com/docs/ru/claude-code-on-the-web.md#send-local-repositories-without-github) | Нет | Нет |

48| **Продолжает работу при отключении** | Да | Нет | Пока сессия остаётся открытой на вашем компьютере |48| **Продолжает работу при отключении** | Да | Нет | Пока сессия остаётся открытой на вашем компьютере |

49| **[Режимы разрешений](https://code.claude.com/docs/ru/permission-modes.md)** | Accept edits, Plan, Auto | Все режимы в терминале; для IDE и приложения Desktop см. [Переключение режимов разрешений](https://code.claude.com/docs/ru/permission-modes.md#switch-permission-modes) | Manual, Accept edits, Plan или Auto из claude.ai и мобильного приложения |49| **[Режимы разрешений](https://code.claude.com/docs/ru/permission-modes.md)** | Accept edits, Plan, Auto | Все режимы в терминале; для IDE и приложения Desktop см. [Переключение режимов разрешений](https://code.claude.com/docs/ru/permission-modes.md#switch-permission-modes) | Manual, Accept edits, Plan или Auto из claude.ai и мобильного приложения |

50| **Доступ к сети** | Настраивается для каждого окружения | Сеть вашего компьютера | Сеть вашего компьютера |50| **Доступ к сети** | Настраивается для каждого окружения | Сеть вашего компьютера | Сеть вашего компьютера |


138 138 

139[Элемент управления режимом разрешений](https://code.claude.com/docs/ru/permission-modes.md#switch-permission-modes) показывает режим разрешений, в котором будет работать сессия:139[Элемент управления режимом разрешений](https://code.claude.com/docs/ru/permission-modes.md#switch-permission-modes) показывает режим разрешений, в котором будет работать сессия:

140 140 

141* **Auto**: классификатор проверяет действия Claude вместо того, чтобы просить вас. Появляется, когда ваша организация разрешает режим auto и выбранная модель его поддерживает141* **Auto**: классификатор проверяет действия Claude вместо того, чтобы спрашивать вас. Отображается, если ваша организация не отключила [авторежим](https://code.claude.com/docs/ru/permission-modes.md#eliminate-prompts-with-auto-mode). Если на claude.ai/code этот вариант неактивен, выберите модель, которая поддерживает авторежим

142* **Accept edits**: Claude вносит изменения и отправляет ветку без остановки для одобрения142* **Accept edits**: Claude вносит изменения и отправляет ветку без остановки для одобрения

143* **Plan**: Claude предлагает подход и ждет вашего одобрения перед редактированием файлов143* **Plan**: Claude предлагает подход и ждет вашего одобрения перед редактированием файлов

144 144 


209 209 

210### На странице отображается только кнопка входа GitHub210### На странице отображается только кнопка входа GitHub

211 211 

212Облачные сеансы требуют подключенной учетной записи GitHub. Подключитесь через поток браузера выше или запустите `/web-setup` из терминала, если вы используете GitHub CLI. Если вы предпочитаете вообще не подключать GitHub, смотрите [Remote Control](https://code.claude.com/docs/ru/remote-control.md) для запуска Claude Code на вашей машине и мониторинга его из браузера или телефона.212Чтобы работать с репозиторием GitHub в облачной сессии, [подключите свою учетную запись GitHub](#connect-github) или запустите `/web-setup` из терминала, если вы используете GitHub CLI. Если вы предпочитаете вообще не подключать GitHub, смотрите [Remote Control](https://code.claude.com/docs/ru/remote-control.md) для запуска Claude Code на вашей машине и мониторинга его из браузера или телефона.

213 213 

214### "Claude Code isn't available on your account"214### "Claude Code isn't available on your account"

215 215 


242 242 

243### Скрипт настройки не удался243### Скрипт настройки не удался

244 244 

245Скрипт настройки завершился с ненулевым статусом, что блокирует запуск сеанса. Распространенные причины:245[Скрипт настройки](https://code.claude.com/docs/ru/cloud-environments.md#setup-scripts) завершился с ненулевым статусом, поэтому сессия не запустилась или запустилась без того, что скрипт не смог установить. Если сессия запустилась, вы можете продолжать работать в ней.

246 

247Распространенные причины:

246 248 

247* Установка пакета не удалась, потому что реестр не находится на вашем [уровне доступа в сеть](https://code.claude.com/docs/ru/cloud-environments.md#access-levels). `Trusted` охватывает большинство менеджеров пакетов; `None` блокирует их все.249* Установка пакета не удалась, потому что реестр не находится на вашем [уровне доступа в сеть](https://code.claude.com/docs/ru/cloud-environments.md#access-levels). `Trusted` охватывает большинство менеджеров пакетов; `None` блокирует их все.

248* Скрипт ссылается на файл или путь, который не существует в свежем клоне.250* Скрипт ссылается на файл или путь, который не существует в свежем клоне.

249* Команда, которая работает локально, требует другого вызова на Ubuntu.251* Команда, которая работает локально, требует другого вызова на Ubuntu.

250 252 

251Для отладки добавьте `set -x` в начало скрипта, чтобы увидеть, какая команда не удалась. Для некритических команд добавьте `|| true`, чтобы они не блокировали запуск сеанса.253Для отладки добавьте `set -x` в начало скрипта, чтобы увидеть, какая команда не удалась. Для некритических команд добавьте `|| true`, чтобы они не приводили к сбою скрипта. После устранения причины запустите новую сессию, чтобы скрипт выполнился снова. Если не удалось запустить выполнение [облачной запланированной задачи](https://code.claude.com/docs/ru/routines.md), нажмите **Run now** на странице сведений о задаче вместо запуска новой сессии.

252 254 

253### Новые сеансы зависают или истекает время ожидания во время настройки255### Новые сеансы зависают или истекает время ожидания во время настройки

254 256