字节笔记本
2026年2月21日
Claude Code 系统提示词赏析
本文深入解析 Claude Code 的系统提示词(System Prompt),揭示其作为交互式 CLI 工具的核心设计哲学,帮助开发者更好地理解与 AI 协作的最佳实践。
系统提示词(System Prompt)
这部分是 Claude Code 的核心身份定义。它明确了自己是一个 "交互式 CLI 工具",专注于"软件工程任务",并强调了"防御性安全" 原则。
You are Claude Code, Anthropic's official CLI for Claude. You are an interactive CLI tool that helps users with software engineering tasks.
安全原则
Claude Code 被严格限制只能协助防御性安全任务:
IMPORTANT: Assist with defensive security tasks only. Refuse to create, modify, or improve code that may be used maliciously.
语气与风格(Tone and style)
Claude Code 的沟通风格被定义为简洁、直接:
- 回答应少于 4 行文字(除非用户要求详细说明)
- 单字回答是最好的
- 避免介绍、结论和解释
- 不要使用表情符号(除非用户明确要求)
主动性(Proactiveness)
"在被要求时才主动",这是对 AI 主动性的精妙平衡:
- 做正确的事,包括采取行动和后续行动
- 不让用户对未请求的行动感到意外
- 不添加额外的代码解释摘要(除非用户要求)
遵循约定(Following conventions)
Claude Code 被要求融入项目,而不是强加自己的风格:
- 首先理解文件的代码约定
- 模仿代码风格,使用现有的库和工具
- 永远不要假设给定的库是可用的
- 始终遵循安全最佳实践
代码风格
IMPORTANT: DO NOT ADD ANY COMMENTS unless asked
将代码注释的控制权完全交给开发者,避免 AI 生成过多冗余注释。
任务管理(Task Management)
TodoWrite 和 TodoRead 工具的使用被提到了非常高的高度,表明 Claude Code 被设计用来处理复杂任务,并重视过程的透明化和可追溯性。
执行任务(Doing tasks)
执行软件工程任务的标准流程:
- 使用 TodoWrite 工具规划任务
- 使用搜索工具理解代码库
- 使用所有可用工具实现解决方案
- 使用测试验证解决方案
- 完成后必须运行 lint 和 typecheck 命令
工具使用策略(Tool usage policy)
- 进行文件搜索时,优先使用 Task 工具以减少上下文使用
- 能够并行调用多个工具
- 批量执行 bash 命令以提高效率
代码引用格式
要求使用 file_path:line_number 的格式引用代码,方便用户直接跳转到代码位置。
可用工具详解
Task 工具
Agent-in-Agent 设计,通过 Task 工具启动子 Agent 执行搜索等探索性任务,体现"分治"思想。
Bash 工具
对 Bash 的使用做了严格限制:
- 禁止使用
find和grep(强制使用内置工具) - 强调路径引用和详细的 git 操作流程
- 标准化的
git commit和gh pr create流程
其他工具
- Glob: 文件模式匹配
- Grep: 强大的搜索工具(基于 ripgrep)
- Read: 读取文件内容
- Edit: 精确字符串替换
- Write: 写入文件
- WebFetch/WebSearch: 网络内容获取和搜索
总结
Claude Code 的系统提示词展现了一个精心设计的 AI Agent:
- 明确的角色定位 - 交互式 CLI 工具,专注软件工程
- 严格的安全边界 - 仅协助防御性安全任务
- 极致的简洁追求 - 最少 token,最高效率
- 完善的任务管理 - Todo 工具确保复杂任务可追溯
- 精细的工具设计 - 每个工具都有明确的使用场景和限制
理解这些提示词设计,不仅能帮助我们更好地使用 Claude Code,还能启发我们如何构建自己的 AI Agent 系统提示词。
原文链接:https://feisky.xyz/posts/2025-06-24-claude-code-system-prompts/