- Scheduled: запуск по повторяющемуся расписанию, например ежечасно, ежедневно или еженедельно, или один раз в определенное будущее время
- API: срабатывание по требованию путем отправки HTTP POST на выделенную конечную точку рутины с токеном-носителем
- GitHub: автоматический запуск в ответ на события репозитория, такие как pull request или релизы
/schedule.
Владельцы Team и Enterprise могут отключить рутины для всех членов с помощью переключателя Routines на claude.ai/admin-settings/claude-code. При отключении существующие рутины перестают работать, и члены не могут создавать новые.
На этой странице рассматривается создание рутины, настройка каждого типа триггера, управление запусками и применение ограничений использования.
Примеры использования
Каждый пример сочетает тип триггера с типом работы, для которой подходят рутины: без присмотра, повторяемая и связанная с четким результатом. Обслуживание очереди задач. Триггер расписания запускается каждый вечер в рабочие дни для вашего трекера проблем через коннектор. Рутина читает проблемы, открытые с момента последнего запуска, применяет метки, назначает владельцев на основе области кода, на которую ссылаются, и публикует сводку в Slack, чтобы команда начала день с упорядоченной очередью. Сортировка оповещений. Ваш инструмент мониторинга вызывает конечную точку API рутины при превышении порога ошибок, передавая тело оповещения какtext. Рутина извлекает трассировку стека, коррелирует ее с недавними коммитами в репозитории и открывает черновой pull request с предложенным исправлением и ссылкой обратно на оповещение. Дежурный инженер проверяет PR вместо того, чтобы начинать с пустого терминала.
Пользовательская проверка кода. Триггер GitHub запускается на pull_request.opened. Рутина применяет собственный контрольный список проверки вашей команды, оставляет встроенные комментарии по проблемам безопасности, производительности и стиля, а также добавляет сводный комментарий, чтобы человеческие рецензенты могли сосредоточиться на дизайне вместо механических проверок.
Проверка развертывания. Ваш конвейер CD вызывает конечную точку API рутины после каждого развертывания в production. Рутина запускает дымовые тесты для новой сборки, сканирует журналы ошибок на предмет регрессий и публикует решение (go или no-go) в канал релизов до закрытия окна развертывания.
Дрейф документации. Триггер расписания запускается еженедельно. Рутина сканирует объединенные PR с момента последнего запуска, отмечает документацию, которая ссылается на измененные API, и открывает PR обновления для репозитория документации, чтобы редактор мог его проверить.
Портирование библиотеки. Триггер GitHub запускается на pull_request.closed, отфильтрованный по объединенным PR в одном репозитории SDK. Рутина переносит изменение в параллельный SDK на другом языке и открывает соответствующий PR, сохраняя две библиотеки в синхронизации без необходимости человека переимплементировать каждое изменение.
Создание рутины
Создайте рутину из веб-версии на claude.ai/code/routines, из приложения Desktop или из CLI. Все три интерфейса записывают в один облачный аккаунт, поэтому рутина, которую вы создаете в одном, сразу же появляется в других. В приложении Desktop на вкладке Code нажмите Routines на боковой панели или в меню More боковой панели, затем New routine, и выберите Cloud; выбор Local вместо этого создает локальную запланированную задачу Desktop, которая запускается на вашей машине, а не в облаке. Форма создания настраивает подсказку рутины, репозитории, окружение, коннекторы и триггеры. Рутины работают автономно как полные облачные сеансы Claude Code: нет выбора режима разрешений и нет запросов на одобрение во время запуска. Сеанс может запускать команды shell, использовать skills, зафиксированные в клонированном репозитории, и вызывать любые коннекторы, которые вы включите. То, что может достичь рутина, определяется выбранными вами репозиториями, окружением сетевого доступа и переменных, а также включенными коннекторами. Ограничьте каждый из них тем, что рутине действительно нужно. Рутины принадлежат вашему индивидуальному аккаунту claude.ai. Они не совместно используются с товарищами по команде и учитываются в дневном лимите запусков вашего аккаунта. Все, что рутина делает через вашу подключенную идентификацию GitHub или коннекторы, отображается как вы: коммиты и pull request несут вашего пользователя GitHub, а сообщения Slack, задачи Linear или другие действия коннектора используют ваши связанные аккаунты для этих сервисов.Создание из веб-версии
Откройте форму создания
Назовите рутину и напишите подсказку
Выберите репозитории
claude/ для своих изменений.Выберите окружение
- Network access: установите уровень доступа в Интернет, доступный во время каждого запуска
- Environment variables: предоставьте значения, которые может использовать Claude во время каждого запуска. Они видны всем, кто использует окружение, поэтому в планах Pro и Max сохраняйте ключи для API, которые Claude вызывает во время запуска, как API credentials вместо этого. Этот раздел также содержит список запросов, которые никогда не получают учетные данные
- Setup script: установите зависимости и инструменты, которые нужны рутине. Результат кэшируется, поэтому скрипт не переустанавливается при каждом сеансе
Выберите триггер
- Schedule
- GitHub event
- API
Проверьте коннекторы
Создайте рутину
Создание из CLI
Запустите/schedule в любом сеансе, чтобы создать запланированную рутину в диалоговом режиме. Вы также можете передать описание напрямую, например для повторяющейся рутины как /schedule daily PR review at 9am или одноразовой как /schedule clean up feature flag in one week. Claude проходит через ту же информацию, которую собирает веб-форма, затем сохраняет рутину в ваш аккаунт. Команда также доступна под псевдонимом /routines.
Успешный старт выглядит как диалог: Claude задает уточняющие вопросы о расписании, репозиториях и подсказке перед сохранением. Если Claude вместо этого ответит, что вам нужно пройти аутентификацию или что он не может подключиться к вашему удаленному аккаунту claude.ai, рутина не была создана; смотрите Troubleshooting.
/schedule в CLI создает запланированные рутины. Чтобы добавить триггер API, отредактируйте рутину в веб-версии на claude.ai/code/routines. Вы можете добавить GitHub trigger из веб-версии или из CLI. Путь CLI требует Claude Code версии 2.1.225 или позже.
Рутина без триггера расписания, такая как запускаемая только вызовами API или событиями GitHub, не имеет времени следующего запуска, и CLI не показывает его, когда Claude сохраняет или обновляет рутину. До версии 2.1.211 CLI сообщал время следующего запуска в году 1 для этих рутин.
Настройка триггеров
Рутина запускается, когда один из ее триггеров совпадает. Вы можете присоединить любую комбинацию триггеров расписания, API и GitHub к одной рутине и добавлять или удалять их в любое время из раздела Select a trigger формы редактирования рутины.Добавление триггера расписания
Триггер расписания запускает рутину по повторяющемуся расписанию или один раз в определенное будущее время. Выберите предустановленную частоту в разделе Select a trigger: ежечасно, ежедневно, по рабочим дням или еженедельно. Времена вводятся в вашем локальном часовом поясе и преобразуются автоматически, поэтому рутина запускается в это время независимо от того, где находится облачная инфраструктура. Запуски могут начаться на несколько минут позже запланированного времени из-за разброса. Смещение согласовано для каждой рутины. Для пользовательского интервала, такого как каждые два часа или первое число каждого месяца, выберите ближайшую предустановку в форме, затем запустите/schedule update в CLI, чтобы установить конкретное выражение cron. Минимальный интервал — один час; выражения, которые запускаются чаще, отклоняются.
Планирование одноразового запуска
Одноразовое расписание запускает рутину один раз в определенный момент времени. Используйте его, чтобы напомнить себе позже на неделе, открыть PR очистки после завершения развертывания или запустить последующую задачу, когда приходит изменение вышестоящего уровня. После запуска рутины она автоматически отключается, и веб-интерфейс отмечает ее как Ran. Чтобы запустить ее снова, отредактируйте рутину и установите новое одноразовое время. Создайте одноразовый запуск из CLI, описав время на естественном языке. Claude разрешает фразу относительно текущего времени и подтверждает абсолютный момент времени перед сохранением.Добавление триггера API
Триггер API дает рутине выделенную конечную точку HTTP. POST на конечную точку с токеном-носителем рутины запускает новый сеанс и возвращает URL сеанса. Используйте это для подключения Claude Code к системам оповещений, конвейерам развертывания, внутренним инструментам или везде, где вы можете сделать аутентифицированный HTTP запрос. Триггеры API добавляются к существующей рутине из веб-версии. CLI в настоящее время не может создавать или отзывать токены.Откройте рутину для редактирования
Добавьте триггер API
Скопируйте URL и сгенерируйте токен
Вызовите конечную точку
Authorization: Bearer при POST на URL. Раздел Trigger a routine ниже показывает полный пример.Запуск рутины
Отправьте POST запрос на конечную точку/fire с токеном-носителем в заголовке Authorization. Тело запроса принимает дополнительное поле text для контекста, специфичного для запуска, такого как тело оповещения или неудачный журнал, переданное рутине вместе с ее сохраненной подсказкой. Значение — это свободный текст и не анализируется: если вы отправляете JSON или другую структурированную полезную нагрузку, рутина получает ее как буквальную строку.
Значение text не достигает рутину как простое сообщение. Оно приходит завернутым в блок <routine-fire-payload>, который помечает его как ненадежные данные и говорит Claude не следовать инструкциям внутри него, если только собственная подсказка рутины не говорит об этом. То же самое обертывание применяется к тексту, предоставленному с помощью Run now в веб-интерфейсе.
Это означает, что сохраненная подсказка рутины должна явно согласиться действовать на текст fire: напишите подсказку, чтобы явно ссылаться на полезную нагрузку, например “Investigate the alert described in the routine-fire-payload block”, или рутина будет рассматривать текст как инертный контекст. Любой, кто держит токен-носитель, может отправить text, поэтому обертка делает текст fire из утекшего токена помеченным как ненадежные данные, а не как прямые инструкции вашей рутине.
Пример ниже запускает рутину из shell. ID рутины и токен, показанные здесь, являются заполнителями: замените их на URL и токен, которые вы скопировали при добавлении триггера API, или запрос завершится с ошибкой аутентификации 401:
Справочник API
Для полного справочника API, включая все ответы об ошибках, правила валидации и ограничения полей, смотрите Trigger a routine via API в документации Claude Platform. Конечная точка/fire доступна только пользователям claude.ai и не является частью поверхности Claude Platform API.
Добавление триггера GitHub
Триггер GitHub запускает новый сеанс автоматически, когда совпадающее событие происходит в подключенном репозитории. Claude Code не переиспользует сеансы между событиями, поэтому два обновления PR создают два независимых сеанса.- Настраивайте триггеры GitHub из веб-интерфейса, который предложит вам установить приложение, если оно отсутствует. Следуйте шагам ниже, чтобы настроить его из веб-версии.
- Из CLI сначала установите приложение со страницы GitHub App, затем попросите Claude присоединить триггер GitHub к существующей рутине, например
/schedule add a GitHub trigger to my nightly review for pull requests opened in acme/webapp. Путь CLI требует Claude Code v2.1.225 или позже. Когда Claude добавляет триггер, он отвечает ссылкой на рутину, которую запускает триггер.
Откройте рутину для редактирования
Добавьте триггер события GitHub
/web-setup в CLI предоставляет доступ к репозиторию для клонирования, но не устанавливает приложение Claude GitHub и не включает доставку вебхука.Настройте триггер
Поддерживаемые события
Триггеры GitHub могут подписаться на одну из следующих категорий событий. В каждой категории вы можете выбрать конкретное действие, такое какpull_request.opened, или реагировать на все действия в категории.
Фильтрация pull request
Используйте фильтры, чтобы сузить, какие pull request запускают новый сеанс. Все условия фильтра должны совпадать, чтобы рутина сработала. Доступные поля фильтра:matches regex проверяет все значение поля, а не подстроку в нем. Чтобы совпадать с любым заголовком, содержащим hotfix, напишите .*hotfix.*. Без окружающих .*, фильтр совпадает только с заголовком, который точно hotfix без ничего до или после. Для буквального совпадения подстроки без синтаксиса regex используйте оператор contains вместо этого.
Несколько примеров комбинаций фильтров:
- Auth module review: base branch
main, head branch containsauth-provider. Отправляет любой PR, который касается аутентификации, сосредоточенному рецензенту. - Ready-for-review only: is draft is
false. Пропускает черновики, поэтому рутина запускается только, когда PR готов к проверке. - Label-gated backport: labels include
needs-backport. Запускает рутину портирования в другую ветвь только, когда мейнтейнер помечает PR.
Управление рутинами
Нажмите рутину в списке, чтобы открыть ее страницу деталей. Страница деталей показывает репозитории рутины, коннекторы, подсказку, расписание, токены API, триггеры GitHub и список прошлых запусков.Просмотр и взаимодействие с запусками
Нажмите любой запуск, чтобы открыть его как полный сеанс. Оттуда вы можете увидеть, что сделал Claude, проверить изменения, создать pull request или продолжить разговор. Каждый сеанс запуска работает как любой другой сеанс: используйте меню раскрывающегося списка рядом с заголовком сеанса, чтобы переименовать, архивировать или удалить его.Редактирование и управление рутинами
Со страницы деталей рутины вы можете:- Нажать Run now, чтобы начать запуск немедленно без ожидания следующего запланированного времени. Вы можете дополнительно предоставить текст, специфичный для запуска, который достигает рутину так же, как поле
textтриггера API. - Использовать переключатель в разделе Repeats, чтобы приостановить или возобновить расписание. Приостановленные рутины сохраняют свою конфигурацию, но не запускаются, пока вы их не переактивируете.
- Нажать значок карандаша, чтобы открыть Edit routine и изменить имя, подсказку, репозитории, окружение, коннекторы или любые триггеры рутины. Раздел Select a trigger — это место, где вы добавляете или удаляете расписания, токены API и триггеры событий GitHub.
- Нажать значок удаления, чтобы удалить рутину. Прошлые сеансы, созданные рутиной, остаются в вашем списке сеансов.
Управление рутинами из CLI
CLI поддерживает управление существующими рутинами. Запустите/schedule list, чтобы увидеть все рутины, /schedule update, чтобы изменить одну, или /schedule run, чтобы запустить ее немедленно.
Вы также можете спросить об истории запусков рутины, например /schedule why did my nightly review do nothing this morning?. Claude выводит список недавних запусков рутины с их статусом и ссылкой на открытие каждого запуска в веб-интерфейсе, и читает журнал запуска, чтобы объяснить, что произошло, включая ошибки инструментов, отказы в разрешении и окончательный результат. Требуется Claude Code v2.1.227 или позже.
Репозитории и разрешения ветвей
Рутинам нужен доступ GitHub для клонирования репозиториев. Когда вы создаете рутину из CLI с/schedule, Claude проверяет, имеет ли ваш аккаунт доступ GitHub для репозитория, из которого вы его запустили, и, если это не так, добавляет примечание настройки, указывающее, как предоставить доступ. Смотрите GitHub authentication options для двух способов предоставления доступа.
Каждый репозиторий, который вы добавляете, клонируется при каждом запуске. Claude начинает с ветви по умолчанию репозитория, если ваша подсказка не указывает иное.
Claude отправляет свою работу в ветви с префиксом claude/, которые всегда принимаются. Когда ваша подсказка направляет Claude на отправку в другую ветвь, Claude Code сначала проверяет отправку и отклоняет ее, если выполняется любое из следующих условий:
- Ветвь защищена на GitHub
- У кого-то еще есть открытый pull request из этой ветви
- Ветвь содержит коммиты, созданные кем-то другим, чем вы
Коннекторы
Рутины могут использовать ваши подключенные MCP коннекторы для чтения и записи во внешние сервисы во время каждого запуска. Например, рутина, которая сортирует запросы поддержки, может читать из канала Slack и создавать проблемы в Linear. Коннекторы — это интеграции claude.ai на вашем аккаунте. MCP серверы, которые вы добавили локально в CLI с помощьюclaude mcp add, хранятся на вашей машине, а не на вашем аккаунте claude.ai, поэтому они не отображаются в списке коннекторов. Чтобы использовать один из этих серверов в рутине, добавьте его как коннектор на claude.ai/customize/connectors или объявите его в committed .mcp.json, чтобы он был частью клонированного репозитория.
Когда вы создаете рутину, все ваши текущие подключенные коннекторы включены по умолчанию. Удалите все, которые не нужны, чтобы ограничить, к каким инструментам Claude имеет доступ во время запуска. Вы также можете добавлять коннекторы непосредственно из формы рутины.
Чтобы управлять или добавлять коннекторы вне формы рутины, посетите claude.ai/customize/connectors или используйте /schedule update в CLI.
Окружения и сетевой доступ
Каждая рутина использует облачное окружение, которое контролирует сетевой доступ, переменные окружения и скрипты настройки. Рутина наследует политику сетевого доступа окружения при каждом запуске. Окружение Default использует Trusted сетевой доступ, который позволяет только список разрешений по умолчанию через сеть сеанса. Запросы на этом пути к хостам вне списка разрешений завершаются с ошибкой403 и x-deny-reason: host_not_allowed. Трафик MCP коннектора маршрутизируется через серверы Anthropic, а не на этом пути, поэтому коннекторы, которые вы добавляете в рутину, работают без добавления их хостов в Allowed domains. Удалите все коннекторы, которые вам не нужны, в разделе Коннекторы.
Чтобы разрешить дополнительные домены:
Откройте рутину для редактирования
Откройте селектор окружения
Откройте параметры окружения
Измените уровень сетевого доступа
Сохранить
Использование и ограничения
Рутины снижают использование подписки так же, как интерактивные сеансы. В дополнение к стандартным ограничениям подписки, рутины имеют дневной лимит на количество запусков, которые могут начаться на аккаунт. Смотрите ваше текущее потребление и оставшиеся дневные запуски рутин на claude.ai/code/routines или claude.ai/settings/usage. Когда рутина достигает дневного лимита или лимита использования вашей подписки, организации с включенными кредитами использования могут продолжать запускать рутины на измеренный перерасход. Без кредитов использования дополнительные запуски отклоняются до сброса окна. Включите кредиты использования на claude.ai/settings/usage. На планах Team и Enterprise администратор включает их для организации на claude.ai/admin-settings/usage. Разовые запуски не учитываются в дневном лимите рутин. Они снижают ваше обычное использование подписки как любой другой сеанс.Устранение неполадок
/schedule returns “Unknown command”
CLI скрывает /schedule, когда одно из его требований не выполнено: меню команд показывает No commands match "/schedule" во время ввода, а отправка возвращает Unknown command: /schedule во всех случаях ниже, кроме Console API key или профиля Anthropic с включенной загрузкой флагов функций. Причина обычно одна из следующих:
- Вы аутентифицированы с помощью Console API key, профиля Anthropic или учетных данных федерации, или облачного провайдера, такого как Amazon Bedrock, Google Cloud’s Agent Platform или Microsoft Foundry.
/scheduleтребует входа с подпиской claude.ai. С Console API key или профилем отправка/scheduleвместо этого показывает/schedule is available with Claude for Enterprise — ask your admin about migrating from API-key access. С входом облачного провайдера вы все еще видитеUnknown command: /schedule. ЕслиANTHROPIC_API_KEYилиANTHROPIC_AUTH_TOKENустановлены в вашей оболочке, илиapiKeyHelperустановлен вsettings.json, удалите их сначала, так как они имеют приоритет над входом claude.ai. Профиль или учетные данные федерации также имеют приоритет, поэтому отключите их тоже - Вы находитесь в сеансе Claude Code в веб-версии. Управляйте рутинами из веб-интерфейса вместо этого
- Политика вашей организации отключает Claude Code в веб-версии, на которой работают рутины
- Владелец отключил рутины для вашей организации Team или Enterprise. До версии v2.1.227 команда все еще появлялась в этом случае, и claude.ai отклонял рутину, когда Claude пытался создать или запустить ее
/schedule просит вас пройти аутентификацию
Если /schedule запускается, но Claude отвечает, что вам нужно сначала аутентифицироваться с помощью учетной записи claude.ai, то CLI не имеет сохраненного входа claude.ai. Учетные записи API не поддерживаются для рутин. Запустите /login, войдите с помощью вашей учетной записи claude.ai, затем снова запустите /schedule.
“Routines are disabled by your organization’s policy”
Владелец в вашей организации Team или Enterprise, вероятно, отключил переключатель Routines на claude.ai/admin-settings/claude-code. В Claude Code версии 2.1.227 или позже этот же переключатель также скрывает/schedule в CLI. Это серверное организационное параметр, поэтому его нельзя переопределить из вашей локальной конфигурации. Попросите владельца включить рутины для вашей организации.
Связанные ресурсы
/loopand in-session scheduling: запланируйте локальные задачи в открытом сеансе CLI- Desktop scheduled tasks: локальные запланированные задачи, которые запускаются на вашей машине с доступом к локальным файлам
- Cloud environments: настройте сетевой доступ, переменные окружения и скрипты настройки для облачных сеансов
- MCP connectors: подключите внешние сервисы, такие как Slack, Linear и Google Drive
- GitHub Actions: запустите Claude в вашем конвейере CI при событиях репозитория