Claude Code 的内置工具有各自清晰、不重叠的职责。Grep 搜内容。Glob 搜路径。Read 加载文件。Edit 做定向修改。Write 创建或覆写文件。Bash 执行命令。搞清楚哪个工具做什么能防止最常见的误用。
工具地图
| 需求 | 用这个工具 | 不是这个 |
|---|---|---|
| 跨代码库找函数调用 | Grep | 不是 Glob(只搜路径) |
| 按名称模式找文件 | Glob | 不是 Grep(只搜内容) |
| 加载特定文件 | Read | 不是 Bash 跑 cat |
| 定向文本替换 | Edit | 不是 Write(覆写整个文件) |
| 创建新文件 | Write | 不是 Edit(需要已有文件) |
| 跑测试、装包 | Bash | 但先试内置工具 |
Grep/Glob 之惑
这是考得最多的区分点。Grep = 文件内容(里面有什么)。Glob = 文件路径(有哪些文件)。“找所有调用 processPayment 的文件”→ Grep。“找所有 .test.tsx 文件”→ Glob。
标准探索工作流
- Grep 搜关键模式(入口点、函数名、import)来找相关文件
- Read Grep 找到的具体文件来理解代码
- Glob 按命名模式找相关文件(有需要时)
这比读每个文件更高效——Grep 先缩小范围,Read 再加载具体内容。
Bash 作为兜底
Bash 处理专用工具搞不定的一切:跑测试、git 操作、包管理、构建命令。但能用专用工具就优先用——Grep 优于 bash grep,Read 优于 bash cat,Glob 优于 bash find。专用工具提供更好的集成和上下文管理。
一句话总结: Grep 搜内容,Glob 搜路径,Read 加载文件,Edit 定向替换,Write 创建/覆写,Bash 是兜底——Grep/Glob 之惑是最常见的误用。