CtrlK
BlogDocsLog inGet started
Tessl Logo

chat_with_agent

当你需要咨询其他 agent、寻求帮助,或用户明确要求某个 agent 参与时,使用本 skill。

SKILL.md
Quality
Evals
Security

与 Agent 对话

什么时候用

当你需要向另一个 agent 询问问题、寻求帮助、请求方案、请求复核、请求决策支持,或者进行任何形式的交流时,使用本 skill。
如果用户明确要求与某个 agent 对话,也应使用本 skill。

应该使用

  • 需要另一个 agent 的专长、判断或第二意见
  • 需要向某个 agent 请求方案、复核或建议
  • 用户明确要求某个 agent 参与、协助或回答
  • 需要继续某个已有的 agent 会话,并保留上下文

不应使用

  • 你自己可以直接完成,且用户没有明确要求调用其他 agent
  • 只是普通问答,不需要专门 agent
  • 目标 agent 不明确,应该先追问或先查可用 agents
  • 刚收到某个 agent 的消息,又立刻回调同一个 agent,可能造成循环

决策规则

  1. 如果用户明确要求某个 agent,优先按要求执行,但仍要先查 agent,不要猜 ID
  2. 如果你自己能完成,就不要调用其他 agent
  3. 需要保留上下文续聊时,必须传 session_id
  4. 默认优先使用 list_agents()chat_with_agent(...) 进行前台对话,不要绕到别的方式
  5. 如果任务需要后台执行,使用 submit_to_agent(...) 提交,再用 check_agent_task(...) 查询状态

使用流程

请严格按照以下流程顺序使用本 skill:

  1. 确保你的工具列表中包含 list_agents()chat_with_agent(...) 两个内建工具
  • 这两个工具是与其他 agent 对话的基础,不要删除或禁用它们
  • 如果你没有这两个工具,请告诉用户你需要它们来与其他 agent 对话,并请求用户添加
  1. 使用 list_agents() 工具查看当前可用的 Agent,并从中选择一个 agent 提取其 id
  • 请根据用户的需求和对应 Agent 的描述来选择最合适的 Agent
  • 如果找不到合适的 Agent 且你不是 Default Agent,就使用 Default Agent
  • 否则告诉用户没有合适的 Agent 可用,并建议他们创建一个新的 Agent 或调整现有 Agent 的描述以便更好地匹配需求
  1. 调用 chat_with_agent(...) 发起前台求助,其中需要传递的关键参数包括
  • to_agent: 对话目标 Agent 的 ID,注意是 ID 不是名字
  • text: 你要对目标 Agent 说的内容
  • session_id: (可选)如果你需要与同一个 Agent 进行多轮对话,从第二轮开始传递相同的 session_id 来保持上下文连续
  • timeout: (可选)预估任务需要的前台等待时间,避免过早超时
  1. 如果任务适合后台执行,请使用新的后台工具路径
  • submit_to_agent(...):提交后台任务,参数只需要 to_agenttext 和可选 session_id
  • check_agent_task(...):通过 task_id 查询任务状态,完成时返回最终结果

最小调用示例

新对话

list_agents()

chat_with_agent(
  to_agent="<target_agent_id>",
  text="[Agent <your_agent_id> requesting] 我需要你帮我判断这个问题的处理方向。",
)

续接已有对话

chat_with_agent(
  to_agent="<target_agent_id>",
  text="[Agent <your_agent_id> requesting] 请基于刚才的结论继续展开第 2 点。",
  session_id="<previous_session_id>",
)

后台提交与查询

submit_to_agent(
  to_agent="<target_agent_id>",
  text="[Agent <your_agent_id> requesting] 请在后台完成这个较长任务。",
)

check_agent_task(
  task_id="<task_id>",
)

注意事项

  • 添加对话标识符:建议对话内容以如下内容开头
[Agent <your_agent_id> requesting]

这样可以让对方 Agent 更清楚地知道是谁在跟它说话,有助于提高沟通效率和准确性。

  • 合理复用会话:如果你需要与同一个 Agent 进行多轮对话,务必传递相同的 session_id 来保持上下文连续。否则每次调用都会被视为新的对话,可能导致对方 Agent 无法正确理解你的需求。session_id 可以从第一轮对话的返回结果中获取,例如

    [SESSION: xxx]

    其中 xxx 就是 session_id 的值,该值一般由系统生成,长度一般较长,具有唯一性。你需要把这个 session_id 存下来,在后续与同一个 Agent 的对话中继续使用它。

Repository
agentscope-ai/QwenPaw
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.