返回首页

内置工具

工具层是模型从"回答器"变成"执行体"的关键。Claude Code 的 13 个内置工具覆盖文件操作、搜索发现、命令执行、Agent 调度和任务管理, 每个工具都有明确的使用优先级和行为约束。

文件操作

FileRead

读取文件内容,支持行范围指定

使用场景

读文件时优先使用,替代 cat/head/tail

  • 支持指定起止行号,避免读取整个大文件
  • 自动处理编码检测
  • 权限控制下运行,用户可拒绝

FileEdit

编辑已有文件,基于精确匹配的原子替换

使用场景

改文件时优先使用,替代 sed/awk

  • 基于 old_string → new_string 的精确匹配替换
  • 原子操作,失败时不会产生半修改状态
  • 自动检测冲突(old_string 不存在或匹配多处)

FileWrite

创建新文件或完整覆写已有文件

使用场景

新建文件时优先使用,替代 echo/heredoc 重定向

  • 创建不存在的文件(含中间目录)
  • 覆写已有文件时需要用户确认
  • 支持指定文件编码

搜索发现

Glob

按模式匹配搜索文件路径

使用场景

搜文件时优先使用,替代 find/ls

  • 支持 ** 递归匹配、{} 多选、! 排除
  • 返回匹配的文件路径列表
  • 比 shell find 更快(原生实现)

Grep

按正则表达式搜索文件内容

使用场景

搜内容时优先使用,替代 grep/rg

  • 支持正则表达式和字面量搜索
  • 返回匹配行及上下文
  • 支持文件类型过滤

命令执行

Bash

Shell 命令执行,最后手段

使用场景

仅用于真正需要 shell 的场景(构建、测试、git 操作)

  • 走 speculative classifier 预检(判断命令风险等级)
  • 高风险命令需要用户确认
  • 支持超时控制和输出截断
  • 优先使用专用工具,Bash 是 fallback

Agent 与 Skill

Agent

调用子 Agent 执行任务

使用场景

复杂任务分解、并行研究、独立验证

  • 支持 fork(继承上下文)和指定 built-in agent
  • fork 共享 prompt cache,不额外消耗 Token
  • 支持前台/后台/远程三种运行模式
  • 子 Agent 有独立的工具集和权限

Skill

执行 Skill 工作流包

使用场景

匹配到 Skill 时必须调用,不能只提不执行

  • Skill 是 Markdown prompt bundle
  • 带 frontmatter 元数据(allowed-tools、model hints)
  • 支持 slash command 快捷调用(如 /commit)
  • 自动发现和按需注入

MCPTool

调用 MCP 服务器提供的外部工具

使用场景

访问外部服务(GitHub API、数据库、浏览器等)

  • MCP server 的 instructions 自动注入 system prompt
  • 模型知道每个外部工具怎么用
  • 支持动态连接和断开

任务管理

TodoWrite

任务分解与进度追踪

使用场景

复杂任务时分解为子任务,逐个标记完成

  • 创建结构化的任务列表
  • 每完成一个子任务立即标记,不要批量标记
  • 帮助用户追踪 AI 的工作进度

AskUserQuestion

向用户提问,获取澄清信息

使用场景

真正卡住时才使用,不是遇到困难的第一反应

  • 先自己调查,确认无法解决后再问用户
  • 问题要具体,不要泛泛而问
  • 被拒绝的工具调用后可以用这个问原因