Datasette Agent 0.2a0 发布,支持交互式工具调用
Simon Willison 发布的开源 Agent 框架 Datasette Agent 迎来 0.2a0 版本。核心更新两项:一是工具现在可在执行过程中提问用户(yes/no、多选或自由文本),问题以表单形式渲染在聊天 UI 中,并持久化存储——服务器重启后对话继续,回答后工具从头重新执行且答案自动回放;二是新增 `save_query` 工具,让 Agent 将生成的 SQL 保存为 Datasette 存储查询,全程需人工批准。这两项能力由 Claude Fable 5 在 Claude Code 环境下辅助开发完成。
设计要点
①
工具中断交互
工具通过 `context.ask_user()` 可暂停执行向用户提问,避免盲目执行危险操作(如删除数据),形成「暂停→用户回答→从头重放」的人在回路流程。
②
查询保存防护
Agent 生成 SQL 后显示完整语句、名称、数据库和可见性供人类审批,只有点击确认才写入数据库,避免自动污染。
③
状态持久化
挂起的对话、用户答案存入内部数据库,支持服务器崩溃恢复,打破了早期 Agent 「一问一答即焚」的脆弱模式。