主题
工具调用
工具是对话从「聊天」变成「能干活」的那一步。没有工具,她只能说话;有了工具,她能读文件、搜网页、放歌、改桌面上的 Doro。
工具都有哪些
按用途分:
| 类别 | 能做什么 |
|---|---|
| 时间与网络 | 查当前时间、网页搜索、抓取指定网页的正文 |
| 文件 | 读文件、写文件、局部修改文件、列出目录内容 |
| 命令 | 在你的电脑上执行 shell 命令,输出会回传给她 |
| 记忆 | 写入一条记忆、检索已有记忆 |
| 桌宠 | 切换表情、播放动作、改变情绪 |
| 背包 | 查看背包、购买物品、使用物品、出门旅行 |
| 图片 | 生成图片、编辑已有图片 |
| 音乐 | 搜索并播放歌曲、搜索歌单、播放歌单、查当前播放、加入歌单、分享歌曲卡片 |
| 提醒与资讯 | 创建定时提醒、查天气、看热榜 |
| 浏览器 | 打开网页、截图、点击、输入、滚动、取文本、关闭 |
| 协作 | 把任务拆给子智能体执行、验收产物、读取技能 |
不是每个角色都能用
工具是否可用由两处共同决定:角色上的「启用工具调用」开关,以及每一轮实际下发的工具白名单。关掉开关的角色,连工具列表都看不到。
权限:每次动手前先问你
除了少数只读的(比如查时间),大部分工具在执行前会弹一张确认卡片,说明它要做什么。
你有三个选择:
| 选择 | 含义 |
|---|---|
| 仅本次允许 | 就这一次,下次还问 |
| 始终允许 | 记住这个决定,以后同类操作不再问(部分工具支持选择记住的范围) |
| 拒绝 | 不执行。她会收到「被拒绝」的结果,通常会换个思路或跟你确认 |
被拒绝不是报错。她能看到拒绝的原因,一般会转而问你想要什么,而不是反复重试同一个操作。
别对写操作一路「始终允许」
读取类的工具设成始终允许很合理。但 run_command(执行命令)、write_file(写文件)这类,建议保持逐次确认——始终允许意味着以后它改任何文件都不会再问你。
工作区内自动允许
权限设置里有一个开关:「工作区内自动允许」。
打开后,AI 在会话工作区里读写的文件操作不再逐次确认。理由是它被限制在这个目录里,跑不出去。
这是个不错的折中:日常整理文件不再被卡片打断,而工作区之外的操作依然会问。
它其实怎么「思考」工具
模型本身不知道自己有哪些工具。每一轮对话时,程序会把当前可用的工具清单和说明一起发过去,模型再决定要不要调用。
这带来两个实际影响:
一是角色提示词里不要写工具说明。 写了就会和实际下发的清单打架,出现「声称自己能做某事但实际没这个工具」的情况。
二是工具会不会被调用,很大程度取决于你怎么说。 「帮我查一下今天北京天气」比「你知道天气吗」有效得多——前者是明确的任务,后者是闲聊。
几个典型场景
让它整理文件
把工作区里的三个 csv 合并成一个,按日期排序,输出到工作区根目录
它会依次调用列目录、读文件、写文件。你会在确认卡片里看到每次操作的目标路径。
让它查资料
搜一下 XXX 的最新进展,把关键结论整理成三点
会走网页搜索,必要时抓取具体页面正文。注意搜索结果的质量取决于搜索源,重要信息建议自己复核。
让它放歌
放一首周杰伦的歌
走音乐工具的搜索 + 播放链路,实际播放由应用内的播放器完成。
让它动起来
换个开心的表情
直接调桌宠的表情/动作工具,桌面上的 Doro 会立刻反应——这类不涉及文件系统的操作通常不弹确认。
出问题时
她说「我没有这个工具」
角色没开「启用工具调用」,或者该工具没进本轮白名单。
卡片一直不消失
点拒绝或允许任一项即可。如果没反应,多半是这一轮已经被中断了,卡片是残留——关掉重开会话即可。
工具执行失败但她说成功了
模型有时会美化结果。涉及文件的实际结果,去工作区里看一眼比信她的话可靠。