agents-sdk
Этот Agent Skill предназначен для разработки AI-агентов на Cloudflare Workers через Agents SDK. Его используют, когда агенту нужно не просто обработать один HTTP-запрос, а сохранять состояние экземпляра, принимать новые сообщения по WebSocket, выполнять отложенные действия или поддерживать длительный рабочий процесс. Источник связывает навык с официальной документацией Cloudflare и прямо рекомендует заново получать актуальные сведения из неё: API и практики SDK могут меняться, поэтому карточка не заменяет проверку текущей версии документации. Главная модель — класс Agent, который работает как экземпляр с долговременным состоянием. Навык показывает чтение состояния через this.state и его изменение через this.setState; для защиты инвариантов можно валидировать новое состояние, а после обновления реагировать на изменение. Состояние хранится в SQLite Durable Object и автоматически синхронизируется с подключёнными клиентами. Это удобно для счётчиков, комнат, пользовательских сессий, очередей задач и других сценариев, где каждому экземпляру требуется отдельное устойчивое состояние, а не общий объект в памяти процесса. Для взаимодействия с агентом источник описывает callable-методы и RPC: публичный метод можно вызвать через WebSocket, задать тайм-аут или вернуть потоковый результат. Встроенная маршрутизация использует путь вида /agents/{agent-name}/{instance-name}; при необходимости запрос можно направить вручную через getAgentByName. На клиенте доступны React-хуки useAgent и useAgentChat, а для чат-сценариев — AIChatAgent, сохранение сообщений, инструменты и возобновляемая передача потока после разрыва соединения. Такой набор подходит для чатов, совместно используемых состояний, голосовых интерфейсов и приложений, где сервер должен отправить сообщение клиенту самостоятельно. Навык также собирает фоновые и интеграционные возможности SDK. Через schedule и scheduleEvery запускают разовые, периодические и cron-задачи; AgentWorkflow и runWorkflow позволяют раскладывать длительную обработку на надёжные шаги. runFiber и stash предназначены для работы, которая должна пережить выселение Durable Object. Встроенная FIFO-очередь queue помогает передать задачу обработчику, а this.retry — повторить операцию с ограничением попыток, задержкой и jitter. Для интеграций описаны MCP-клиент и MCP-сервер на базе McpAgent, webhooks, обработка электронной почты, push-уведомления и диагностические события через diagnostics_channel. Перед реализацией нужно установить пакет agents, а для чат-агента — связку agents, @cloudflare/ai-chat, ai и @ai-sdk/react. В конфигурации Wrangler должны быть согласованы совместимость nodejs_compat, Durable Object binding, имя класса и миграция new_sqlite_classes; для Workers AI отдельно добавляется binding AI. Документ предупреждает не включать experimentalDecorators, не редактировать уже выпущенные миграции и не забывать отдельную binding и миграцию для каждого класса агента. Эти требования важны: без них локальный пример может выглядеть рабочим, но развёртывание или восстановление состояния будет некорректным. Практический предел этого навыка задан самим источником. Он описывает интеграцию именно с Cloudflare Workers, Durable Objects и текущими пакетами Agents SDK; сначала нужно проверить установку командой npm ls agents и сверить конфигурацию с документацией. Voice, browser tools и Think помечены как экспериментальные, поэтому их нельзя считать стабильной гарантией продукта без отдельной проверки. Скилл не обещает автономную оценку качества ответов, безопасность пользовательских инструментов или готовую бизнес-логику: разработчик должен сам определить права доступа, обработку ошибок, лимиты, хранение секретов и тестирование конкретного агента.
Для чего подходит
- Создание stateful AI-агента
- Интеграция MCP и RPC
- Оркестрация Workflows на Workers
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/cloudflare/skills/tree/main/skills/agents-sdk