build-managed-agents
YijiaDuan/build-managed-agentsClaude Code скилл для создания, запуска и аудита облачных агентов через Anthropic Managed Agents API. Покрывает полный цикл: определение агента и окружения, запуск сессий, потоковая обработка событий, аудит токенов и цепочек событий.
Установка
pip install anthropic # 或 npm install @anthropic-ai/sdkREADME
build-managed-agents
Скилл для coding agent — устанавливается в Claude Code / OpenClaw / Cursor и другие агенты. Когда пользователь говорит «создай мне managed agent», скилл берёт управление и пошагово вызывает новый Claude Managed Agents API от Anthropic, покрывая полный цикл create / run / audit: определение агента и окружения, запуск сессии, потоковая обработка событий, аудит потребления токенов и цепочек событий.
Позволяет отказаться от самостоятельной реализации agent loop, выполнения инструментов, песочниц, парсинга SSE и журналов аудита — всё это берёт на себя управляемая инфраструктура Anthropic.
Установка
# Глобально (рекомендуется, доступно во всех проектах)
git clone https://github.com/YijiaDuan/build-managed-agents \
~/.claude/skills/build-managed-agents
# Или только для текущего проекта
mkdir -p .claude/skills
git clone https://github.com/YijiaDuan/build-managed-agents \
.claude/skills/build-managed-agentsЗависимости времени выполнения:
pip install anthropic # или npm install @anthropic-ai/sdk
export ANTHROPIC_API_KEY="sk-ant-..."Использование
Напишите в диалоге Claude Code что-нибудь вроде:
- «Создай managed agent, который делает XXX»
- «Проведи аудит этой сессии: потребление токенов и поток событий»
- «Напиши XXX с использованием
client.beta.sessions.events.stream» - «Оформи это как managed agent с открытым исходным кодом»
Claude автоматически сопоставит запрос с этим скиллом и выполнит его согласно справочной документации в reference/. Полный рецепт — в SKILL.md.
Что покрывает скилл
Create ──────► Run ──────► Audit
│ │ │
│ │ ├─ Список всех статусов сессий
│ │ ├─ Полный поток событий (цепочка аудита)
│ │ ├─ Потребление токенов + оценка стоимости
│ │ └─ Экспорт отчёта в Markdown
│ │
│ ├─ Отправка user.message
│ ├─ Потоковый приём agent.message / tool_use
│ ├─ Обработка custom_tool_use в замкнутом цикле
│ ├─ tool_confirmation (always_ask)
│ ├─ Прерывание interrupt
│ └─ Мульти-агент / memory stores (research preview)
│
├─ Создание Agent (model + system + tools + MCP + skills)
├─ Создание Environment (облачный контейнер + пакеты + сетевые правила)
└─ Создание Session (подключение GitHub repo / файлов / memory)
Структура проекта
build-managed-agents/
├── SKILL.md # Точка входа: триггеры + краткий workflow + список ловушек
├── reference/
│ ├── create.md # Полные параметры Agent/Environment/Session
│ ├── run.md # Отправка и приём событий, мульти-агент, memory stores
│ ├── events.md # Схемы всех типов событий
│ ├── audit.md # Запросы списков, потребление, стоимость, экспорт
│ └── errors.md # Типы ошибок, повторные попытки, конечный автомат
├── scripts/
│ ├── quickstart.py # Готовый шаблон: create→run→audit за один запуск
│ └── admin.py # CLI: list/show/export/stats/cost/cleanup
├── README.md
├── LICENSE
└── .gitignore
SKILL.md остаётся компактным (6 КБ), детали подгружаются по мере необходимости из reference/. Файлы в scripts/ — рабочие шаблоны и инструменты управления, а не заглушки.
Известные ловушки (выборка из SKILL.md)
- Порядок stream нельзя менять. Сначала открывайте канал через
.stream(), затем отправляйте сообщение через.send(). Обратный порядок приведёт к потере первых событий. - Custom tool обязан вернуть результат. После получения
agent.custom_tool_useнеобходимо отправитьuser.custom_tool_result(допустимо сis_error=True), иначе сессия навсегда зависнет в состоянии idle. - Дрейф версии агента. В продакшене фиксируйте версию:
agent={"type": "agent", "id": "...", "version": N}, иначе после обновления новые сессии будут молча переходить на новую версию. - Нельзя удалить работающую сессию. Сначала отправьте
user.interrupt, чтобы перевести её в состояние idle. - Archive предпочтительнее delete. Archive сохраняет цепочку аудита; delete — необратимая операция.
- Rate limits: создающие операции — 60/мин, читающие — 600/мин; для списочных операций используйте pagination.
- Beta header: функции research preview (outcomes / мульти-агент / memory stores) требуют дополнительного beta-заголовка.
Когда скилл не подходит
- Интерактивность с задержкой в миллисекунды — лучше использовать Messages API.
- Простые однократные вопросы и ответы — managed agents избыточны.
- Чистая генерация текста без потребности в облачных инструментах — достаточно прямого обращения к модели.
Лицензия
MIT © Yijia Duan