问题描述
在 WeChat clawbot 模式下,当 agent 正在执行任务时,用户发送 /stop 命令,虽然 Agent 内部 stop_sig 被置为 True 导致主循环中断,但 _handle() 线程仍然会处理之前积累的中间结果,将部分输出逐条发送给用户,并最终显示 [任务已完成],让用户感觉 /stop 没有生效。
复现步骤
- 启动 WeChat Bot (
wechatapp.py)
- 通过微信发送一个耗时的任务(比如需要多次 LLM 调用或执行多个工具)
- 在任务执行过程中发送
/stop
- 观察到:虽然 Agent 会显示一个已停止,但还是会继续执行任务发消息
环境
- 项目版本:main 分支最新
- 操作系统:Windows
- Python 版本:3.13
问题描述
在 WeChat clawbot 模式下,当 agent 正在执行任务时,用户发送
/stop命令,虽然 Agent 内部stop_sig被置为True导致主循环中断,但_handle()线程仍然会处理之前积累的中间结果,将部分输出逐条发送给用户,并最终显示[任务已完成],让用户感觉/stop没有生效。复现步骤
wechatapp.py)/stop环境