如果说系统提示词是“顶层战略”,那么注入到每一个工具 description 字段中的提示词就是微型驾驭器 (micro-harness),它们在微观层面直接塑造模型对特定工具的使用行为,。
以下是该章节的核心内容总结:
1. 工具提示词的本质:行为约束协议
在 Claude Code 中,工具的描述字段不仅是功能说明,而是一套完整的行为约束协议,包含功能描述、正面引导、负面禁令(NEVER)、条件分支和格式模板。这种设计与系统提示词共同构成了**“双层驾驭架构”**:系统提示词设定全局人格,工具提示词塑造局部行为。
2. 六大核心工具的微型驾驭策略
BashTool (最复杂的驾驭器):
流量导向:建立“工具偏好矩阵”,明确禁止用 Bash 执行文件编辑或搜索,强制导流至专用工具以保证权限受控。
Git 六层防线:严禁
push --force、修改 git config 或未经许可的 commit,防御数据丢失场景。策略透明化:将沙箱配置以 JSON 格式内联,让模型“理解”自己的路径和网络权限,从而自检合规性,。
反模式抑制:明确禁止使用
sleep进行轮询,并提供后台执行等替代方案。
FileEditTool (接口契约):
前置读取强制:在提示词和运行时双重强制“编辑前必须先读取”,防止模型因“幻觉”导致错误的编辑操作,。
Token 经济学:引导模型使用 2-4 行的“最小唯一 old_string”,在确保匹配准确性的同时节省 Token。
FileReadTool (资源感知):
渐进式限制:设定 2000 行默认限制;对 PDF 采取分页读取策略,且仅在运行时支持 PDF 解析时才声明该能力,确保“能力与运行时对齐”,。
GrepTool (安全默认值):
排他性声明:强调搜索必须使用 GrepTool 而非 Bash grep,因为前者经过了权限和忽略模式的优化。
逃生舱口:默认限制 250 条输出(上下文保护),但保留
head_limit=0作为无限制的逃生舱口,。
AgentTool (缓存保护与委派质量):
动态内容外移:为保护提示词缓存,将频繁变化的 Agent 列表移至附件消息,使工具描述保持静态,。
元认知约束:提出“Never delegate understanding”(永不委派理解),防止模型将核心思考工作甩给子代理。
SkillTool (预算管理):
1% 预算约束:将技能列表体积硬性限制在上下文窗口的 1%,防止其侵蚀工作空间,。
三级截断策略:按照“内置技能 > 非内置描述 > 仅保留名称”的优先级动态裁剪,确保在任何规模下都成本受控。
3. 设计工具提示词的通用原则
本章总结了七条核心原则,帮助开发者构建生产级 Agent:
双向闭环:在工具 A 中禁做 X 并导向 B,在 B 中声明做 X 必须用我。
理由先于禁令:每一条 “NEVER” 禁令后都应跟随一个 “because” 解释。
能力与运行时对齐:仅在环境支持时声明某项功能。
安全默认值 + 逃生舱口:保守的默认输出限制配合显式的解除方式。
预算意识:通过归一化和截断策略控制工具描述本身的 Token 成本。
前置条件声明:在提示词中声明依赖(如先读后写),并在运行时强制执行。
委派质量标准:约束向子系统传递任务时的描述完整性和具体性。
本章小结:优秀的工具提示词不是简单的功能文档,而是行为契约。它通过精准的约束和引导,确保模型在安全、高效、成本可控的轨道上运行。
