gog5-ops
8dbcaadfaf
fix(agents): use jsonSchema helper instead of zod for tool inputSchema
zod 4 + AI SDK 6.x 下 tool({ inputSchema: z.object(...) }) 经过
prepareToolsAndToolChoice() 处理后 schema 被错误转换为
{"properties":{}, "additionalProperties":false},所有参数定义被剥光,
导致 LLM 工具调用乱传参/静默失败/死循环。
修复方案:改用 AI SDK 官方 jsonSchema() helper 替代 z.object(),
绕过出 bug 的 zod 转换路径。不动 node_modules,
未来 SDK 升级也不会回归。
改动 9 个文件,全部为 z.object → jsonSchema 替换:
- src/agents/scriptAgent/{tools.ts, index.ts}
- src/agents/productionAgent/{tools.ts, index.ts}
- src/utils/agent/{memory.ts, skillsTools.ts}
- src/routes/script/extractAssets.ts
- src/routes/setting/vendorConfig/modelTest.ts
- src/routes/cornerScape/batchBindAudio.ts
E2E 验证:
- 9 个工具 inputSchema.jsonSchema.properties 字段完整保留
- storySkeleton 子代理收到 get_novel_events([1,2,3,4,5]) 完整章节范围
(之前 schema 损坏时只能盲传 [1],导致死循环)
- 故事骨架 / 改编策略 / 分镜面板等多 sub-agent 不再因 schema 损坏卡死
Related upstream: vercel/ai#13460, vercel/ai#12020
Fixes: HBAI-Ltd/Toonflow-app#80, #94, #121, #122 类似症状
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 00:20:59 +00:00
..
2026-04-26 00:20:59 +00:00
2026-04-13 18:27:27 +08:00
2026-04-06 23:04:46 +08:00
2026-04-06 22:15:13 +08:00
2026-02-04 14:39:05 +08:00
2026-04-02 16:40:49 +08:00
2026-02-06 16:58:19 +08:00
2026-03-24 22:52:47 +08:00
2026-03-27 17:49:03 +08:00
2026-04-18 15:37:13 +08:00
2026-04-18 15:37:13 +08:00
2026-03-27 01:36:21 +08:00
2026-03-19 20:00:24 +08:00
2026-04-18 15:47:18 +08:00
2026-04-13 05:00:42 +08:00
2026-04-06 04:12:45 +08:00