最近在拿Claude的Agent SDK搭一个自动查数据库+生成报表的小工具,工具定义就三个:query_db、calc_stats、render_chart。单轮调用没问题,但只要让它连续调用三次以上,第三步开始工具入参就开始瞎填了,比如把上一步的result字段名当成表名传进query_db。我试过在system prompt里强调“必须基于上一步返回值”,也试过强制每步输出JSON schema,效果都不稳定。看文档说支持多轮tool use,但没找到控制上下文里工具返回结果长度的参数。想问下大家做Agent多步规划时,是怎么防止模型在后续步骤里“遗忘”或“篡改”前面工具的真实返回值的?需要自己在外层做状态机校验吗?