主agent与sub-agent的区分取决于角色定义、职责边界和调用契约。主agent须锚定目标不可拆分、责任不可下放、失败必须兜底;sub-agent则需锁死输入唯一、输出强制、行为禁区三道门,并依赖结构化tool schema与运行时机制实现精准分工。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

主 Agent 和 Sub-agent 的提示词不是靠“语气强弱”或“字数多少”区分的,而是由角色定义、职责边界和调用契约共同决定的。关键不在怎么“写得像主Agent”,而在于如何让模型清楚:谁该启动、谁该执行、谁对最终结果负责。
主 Agent 提示词要锚定三件事
主 Agent 是任务总控者,它的提示词必须明确:目标不可拆分、责任不可下放、失败必须兜底。常见错误是把主 Agent 写成“发号施令的领导”,实际它更像一个带决策权的项目经理。
- 开篇就声明身份与终局责任:“You are /root, the primary agent. You own the user’s goal end-to-end. If any subtask fails, you must recover, retry, or explain — never assume it’s ‘someone else’s problem’。”
- 禁用模糊动词:删掉“请考虑”“可以尝试”“视情况而定”。换成“你必须判断是否需要 spawn_agent”“你必须在 tool_results 不满足条件时主动 followup_task”。
- 显式定义分派逻辑:不只说“交给子 Agent”,而要写清触发条件。例如:“当且仅当出现以下任一情况时 spawn_agent:① 需要调用外部 API 且返回结构复杂;② 涉及用户隐私字段需单独校验;③ 同一类型工具连续调用超 2 次。”
Sub-agent 提示词要锁死三道门
Sub-agent 不是“能力弱一点的主 Agent”,而是被严格限定在某个垂直切片里的执行单元。它的提示词本质是一份运行时契约,不是说明书。
使用统一的预运行界面,为代理生成的竖屏视频负载对接 Sora/OpenAI、GeminiVeo、xAI/Grok 及 Seedance 风格的服务提供商。适用于...
-
第一道门:输入来源唯一——明确只接收主 Agent 通过
spawn_agent或followup_task传入的参数,拒绝任何上下文外推。“You receive ONLY the task description and input parameters passed by /root. Do not read messages outside this payload.” - 第二道门:输出格式强制——用 Pydantic Schema 或 JSON Schema 约束返回结构,而不是靠语言描述。“Your output MUST be valid JSON matching this schema: {‘status’: ‘success’|‘error’, ‘data’: object, ‘trace_id’: string}。任何其他格式将被丢弃。”
- 第三道门:行为禁区明确——禁止跨域操作。“You may NOT call tools outside your assigned category. You may NOT spawn further agents. You may NOT modify shared state directly — use only send_message to report.”
指令区分的核心不是文字,是工具 Schema 和调用链路
真正让主/辅角色落地的,不是提示词本身,而是配套的 Tool Schema 和运行时机制。比如:
- 主 Agent 调用的
spawn_agent工具,其参数 schema 必须包含role: Literal['validator', 'fetcher', 'formatter'],而不是笼统的role: str; - 每个 Sub-agent 启动时,自动注入只读的
parent_task_id和可写的subtask_result字段,主 Agent 只监听后者变更; - 所有
send_message通信都带intent标签(如"intent": "retry_request"),主 Agent 的提示词里直接引用该标签做分支判断。
别用自然语言猜意图,用结构化字段做路由
很多团队花大量时间打磨“让主 Agent 更聪明地识别何时该分派”,结果发现不如加一个字段来得稳。例如,在用户原始输入里解析出 is_urgent: bool,主 Agent 提示词中直接写:“if is_urgent is True, skip validation sub-agent and call executor directly”。这不是偷懒,而是把模糊判断变成确定性路由——这正是 Agent 工程里“缰绳比咒语管用”的体现。










