本地文件搜索
在用户电脑上搜索文件内容和文件名。
使用场景
- •用户说「帮我找一下上次写的报告」「搜一下包含 XXX 的文件」
- •用户需要查找特定文件但不记得存在哪里
- •任务执行中需要定位参考文件
搜索方式
方式 1:knowledge_search 工具(内容搜索,首选)
搜索已索引知识库中的文档内容。支持 FTS5 全文搜索和语义搜索。
code
工具名: knowledge_search 参数: query: 搜索查询(自然语言),必填 limit: 返回结果数量,默认 5 file_type: 过滤文件类型(如 .md, .txt, .pdf),可选
方式 2:mdfind(文件名搜索,补充)
knowledge_search 无结果时,用 macOS Spotlight 按文件名或元数据搜索。
bash
# 按文件名搜索 mdfind -name "报告" # 限定目录 mdfind -onlyin ~/Documents "预算" # 限定文件类型 mdfind "kind:pdf 合同" mdfind "kind:word 报告"
搜索策略
- •优先用 knowledge_search:覆盖已索引的知识库文件,支持内容搜索和语义匹配
- •knowledge_search 无结果时用 mdfind:按文件名或元数据搜索,覆盖面更广
- •两者都无结果时:告知用户,询问是否需要将目标目录加入知识库索引
输出规范
- •展示搜索结果,包含文件路径和摘要片段
- •路径用
~简写用户目录 - •告知用户总共找到多少结果
- •结果过多时询问用户是否要进一步筛选