关于 managed-agent
managed-agent 是用于操作 Anthropic Claude Managed Agents 的技能,这是一种适合长时间或异步任务的云端运行环境。技能涵盖 Agent、环境和会话的设置、事件检查、安装容器软件包,以及通过终止会话控制持续费用。
主要功能
- 01创建托管 Agent 和环境
- 02安装容器软件包
- 03发送提示词并检查事件
- 04列出并终止会话
- 05跟踪使用成本
适用场景
- 01运行持续数分钟或数小时的任务
- 02使用可访问网络的云容器
- 03检查会话中的工具活动
- 04查找并终止过期会话
MCP 相关
该技能使用 managed_agent_* 工具管理云会话,也说明如何为托管 Agent 添加可访问的 MCP 服务。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ ruvnet/ ruflo --skill managed-agent安装后在 Claude Code 中输入/managed-agent确认已加载。
详细介绍
托管 Agent(Anthropic 云运行时)
ruflo-agent 通过同一套概念模型提供两种 Agent 运行时:
| 运行时 | 工具 | 适用场景 |
|---|---|---|
WASM(本地,rvagent) | wasm_agent_* / wasm_gallery_* | 快速、免费、临时、离线,或在沙箱中运行不受信任的代码 |
| 托管(Anthropic 云) | managed_agent_*(本技能) | 长时间运行 / 异步工作(数分钟到数小时),需要带有预装软件包和网络的真实云容器,以及可在多轮对话间保留的文件系统和对话记录 |
本技能驱动托管运行时 — Anthropic 的 Claude Managed Agents(测试版)。其模型为:Agent(模型 + 系统提示 + 工具 + MCP 服务 + 技能)→ Environment(容器模板)→ Session(运行中的实例)→ Events(轮次 / 工具使用 / 状态,在服务端持久化)。请参阅 docs/adr/0001-wasm-contract.md 和项目 ADR-115。
前置条件
- 环境中设置了
ANTHROPIC_API_KEY(或CLAUDE_API_KEY),并已获得 Claude Managed Agents 测试版访问权限。 - 如果未设置密钥,每个
managed_agent_*工具都会返回结构化错误,提示“使用wasm_agent_create启动无需密钥的本地运行时”——请改用 WASM 技能。
步骤
-
创建 —
mcp__plugin_ruflo-core_ruflo__managed_agent_create{ model?, system?, name?, networking?, packages?, initScript?, mcpServers?, skills? }→{ sessionId, agentId, environmentId, status }。创建 Agent、Environment 和 Session。请保存这三个 ID。mcpServers:[{type:"url", url, name, authorization_token?}]— 云 Agent 必须能够访问该 URL。本地的ruflo mcp start无法从 Anthropic 云访问;如果希望云 Agent 使用 ruflo 的工具,请先部署或通过隧道接入 HTTP ruflo MCP 服务。packages:{pip?:[], npm?:[], apt?:[], cargo?:[], gem?:[], go?:[]}— 安装在容器中。
-
发送提示词 —
mcp__plugin_ruflo-core_ruflo__managed_agent_prompt{ sessionId, message, maxWaitMs? }→ 发送一轮用户消息,并轮询事件日志,直到 Session 进入空闲状态(默认 180 秒,最长 600 秒)→{ finished, status, stopReason, assistantText, toolUses[], eventCount }。对于耗时很长的任务,请调高maxWaitMs,或使用managed_agent_events查看后续事件。 -
检查 —
mcp__plugin_ruflo-core_ruflo__managed_agent_status{ sessionId }(空闲 / 运行中 / 错误)·mcp__plugin_ruflo-core_ruflo__managed_agent_events{ sessionId, raw? }(完整对话记录:用户轮次、Agent 思考、tool_use、tool_result、状态 — 云端对应的wasm_agent_files)。 -
列出 —
mcp__plugin_ruflo-core_ruflo__managed_agent_list{ limit? }— 列出组织中的所有 Session(以查看哪些仍在运行 / 计费)。 -
终止 —
mcp__plugin_ruflo-core_ruflo__managed_agent_terminate{ sessionId, environmentId? }— 完成后务必执行:云 Session 会持续按容器时间和令牌计费,直到删除。传入environmentId,还会删除 ruflo 创建的 Environment。
费用与安全
- Managed Agents 按 Session 计费(大模型令牌 + 容器时间),并受组织级速率限制。长时间运行前请估算费用;完成的 Session 请记录到
cost-tracking命名空间。 - 请将孤立的 Session 视为泄漏的资源 — 使用
managed_agent_list查找过期的 Session,并通过managed_agent_terminate终止。 - 测试版 API(
managed-agents-2026-04-01);Agent 配置中的multiagent/define-outcomes属于研究预览功能。
快速示例
managed_agent_create { "model": "claude-haiku-4-5-20251001", "system": "Terse. Do exactly what is asked.", "name": "scratch" }
→ { sessionId: "sesn_…", agentId: "agent_…", environmentId: "env_…", status: "idle" }
managed_agent_prompt { "sessionId": "sesn_…", "message": "echo hello > /tmp/x && cat /tmp/x — then stop." , "maxWaitMs": 60000 }
→ { finished: true, status: "idle", stopReason: "end_turn", assistantText: "Done.", toolUses: [{name:"bash", input:{command:"echo hello > /tmp/x && cat /tmp/x"}}] }
managed_agent_terminate { "sessionId": "sesn_…", "environmentId": "env_…" }
→ { sessionDeleted: true, environmentDeleted: true }