chat_with_agent
- Repo stars 16,894
- Author repo QwenPaw
与 Agent 对话
什么时候用
当你需要向另一个 agent 询问问题、寻求帮助、请求方案、请求复核、请求决策支持,或者进行任何形式的交流时,使用本 skill。
如果用户明确要求与某个 agent 对话,也应使用本 skill。
应该使用
- 需要另一个 agent 的专长、判断或第二意见
- 需要向某个 agent 请求方案、复核或建议
- 用户明确要求某个 agent 参与、协助或回答
- 需要继续某个已有的 agent 会话,并保留上下文
不应使用
- 你自己可以直接完成,且用户没有明确要求调用其他 agent
- 只是普通问答,不需要专门 agent
- 目标 agent 不明确,应该先追问或先查可用 agents
- 刚收到某个 agent 的消息,又立刻回调同一个 agent,可能造成循环
决策规则
- 如果用户明确要求某个 agent,优先按要求执行,但仍要先查 agent,不要猜 ID
- 如果你自己能完成,就不要调用其他 agent
- 需要保留上下文续聊时,必须传
session_id - 默认优先使用
list_agents()和chat_with_agent(...)进行前台对话,不要绕到别的方式 - 如果任务需要后台执行,使用
submit_to_agent(...)提交,再用check_agent_task(...)查询状态
使用流程
请严格按照以下流程顺序使用本 skill:
- 确保你的工具列表中包含
list_agents()和chat_with_agent(...)两个内建工具
- 这两个工具是与其他 agent 对话的基础,不要删除或禁用它们
- 如果你没有这两个工具,请告诉用户你需要它们来与其他 agent 对话,并请求用户添加
- 使用
list_agents()工具查看当前可用的 Agent,并从中选择一个 agent 提取其 id
- 请根据用户的需求和对应 Agent 的描述来选择最合适的 Agent
- 如果找不到合适的 Agent 且你不是 Default Agent,就使用 Default Agent
- 否则告诉用户没有合适的 Agent 可用,并建议他们创建一个新的 Agent 或调整现有 Agent 的描述以便更好地匹配需求
- 调用
chat_with_agent(...)发起前台求助,其中需要传递的关键参数包括
to_agent: 对话目标 Agent 的 ID,注意是 ID 不是名字text: 你要对目标 Agent 说的内容session_id: (可选)如果你需要与同一个 Agent 进行多轮对话,从第二轮开始传递相同的session_id来保持上下文连续timeout: (可选)预估任务需要的前台等待时间,避免过早超时
- 如果任务适合后台执行,请使用新的后台工具路径
submit_to_agent(...):提交后台任务,参数只需要to_agent、text和可选session_idcheck_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 的对话中继续使用它。
- Fluxly category
- AI
- Author-declared agents
- No explicit declaration found; this is not inferred or tested compatibility
- Static check
- 88 / 100 · heuristic scan, not runtime safety proof
- Author / version / license
- @agentscope-ai · no license declared
- Fluxly token estimate
- Lean
- Fluxly setup estimate
- Plug-and-play
- External API key
- No requirement detected
- Detected OS requirements
- Unspecified
- Runtime requirements
- Unspecified
- Detected file/system behavior
-
- Read-only
- Detected network behavior
- Local-only
- Install commands
- None (reference only)
Profile is derived at build time from SKILL.md and install vectors. Subject to drift from author intent.
Heads up: 未限定 allowed-tools,默认拥有全部工具权限。
The current SKILL.md does not define a fixed output example. 当你需要向另一个 agent 询问问题、寻求帮助、请求方案、请求复核、请求决策支持,或者进行任何形式的交流时,使用本 skill。 如果用户明确要求与某个 agent 对话,也应使用本 skill。
需要另一个 agent 的专长、判断或第二意见 需要向某个 agent 请求方案、复核或建议 用户明确要求某个 agent 参与、协助或回答
你自己可以直接完成,且用户没有明确要求调用其他 agent 只是普通问答,不需要专门 agent 目标 agent 不明确,应该先追问或先查可用 agents
如果用户明确要求某个 agent,优先按要求执行,但仍要先查 agent,不要猜 ID 如果你自己能完成,就不要调用其他 agent 需要保留上下文续聊时,必须传 sessionid
请严格按照以下流程顺序使用本 skill: 确保你的工具列表中包含 listagents() 和 chatwithagent(...) 两个内建工具 这两个工具是与其他 agent 对话的基础,不要删除或禁用它们
最小调用示例
# 与 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 对话,并请求用户添加
2) 使用 `list_agents()` 工具查看当前可用的 Agent,并从中选择一个 agent 提取其 id
- 请根据用户的需求和对应 Agent 的描述来选择最合适的 Agent
- 如果找不到合适的 Agent 且你不是 Default Agent,就使用 Default Agent
- 否则告诉用户没有合适的 Agent 可用,并建议他们创建一个新的 Agent 或调整现有 Agent 的描述以便更好地匹配需求
3) 调用 `chat_with_agent(...)` 发起前台求助,其中需要传递的关键参数包括
- `to_agent`: 对话目标 Agent 的 ID,注意是 ID 不是名字
- `text`: 你要对目标 Agent 说的内容
- `session_id`: (可选)如果你需要与同一个 Agent 进行多轮对话,从第二轮开始传递相同的 `session_id` 来保持上下文连续
- `timeout`: (可选)预估任务需要的前台等待时间,避免过早超时
4) 如果任务适合后台执行,请使用新的后台工具路径
- `submit_to_agent(...)`:提交后台任务,参数只需要 `to_agent`、`text` 和可选 `session_id`
- `check_agent_task(...)`:通过 `task_id` 查询任务状态,完成时返回最终结果
## 最小调用示例
### 新对话
```text
list_agents()
chat_with_agent(
to_agent="<target_agent_id>",
text="[Agent <your_agent_id> requesting] 我需要你帮我判断这个问题的处理方向。",
)
```
### 续接已有对话
```text
chat_with_agent(
to_agent="<target_agent_id>",
text="[Agent <your_agent_id> requesting] 请基于刚才的结论继续展开第 2 点。",
… Author text anchors workflow facts; Fluxly only indexes current sections, terms, files, and commands.
sections -> 什么时候用 → 应该使用 → 不应使用 → 决策规则 → 使用流程 → 最小调用示例
terms -> 向另一个 agent 询问问题、寻求帮助、请求方案、请求复核、请求决策支持,或者进行任何形式的交流 · 用户明确要求与某个 agent 对话 · 如果用户明确要求某个 agent,优先按要求执行,但仍要先查 agent,不要猜 ID · 如果你自己能完成,就不要调用其他 agent · 需要保留上下文续聊时,必须传 sessionid · 默认优先使用 listagents() 和 chatwithagent(...) 进行前台对话,不要绕到别的方式 · 如果任务需要后台执行,使用 submittoagent(...) 提交,再用 checkagenttask(...) 查询状态 · 添加对话标识符
files/cmd -> sessionid · listagents() · chatwithagent(...) · submittoagent(...) · checkagenttask(...) · toagent · text · timeout
body sha256 -> f79700b3e59e
Decide Fit First
Design Intent
How To Use It
Boundaries And Review