
1. Claude Code 工作机制概述Claude Code 是 Anthropic 公司开发的命令行界面工具专为软件工程任务设计。通过抓包分析我们发现其核心工作机制建立在三个关键组件之上分层提示词架构、模块化工具系统和动态上下文管理。这种设计使得 Claude Code 能够高效处理从简单代码修改到复杂项目重构的各种任务。1.1 技术架构特点从抓包数据中可以看到Claude Code 的技术架构具有以下显著特征双向通信协议默认使用 HTTPS 进行安全通信但在调试模式下可切换为 HTTP流式响应采用 Server-Sent Events (SSE) 实现实时交互缓存优化通过 cache_control 机制减少重复数据传输并行处理支持同时执行多个独立操作典型的请求结构如下{ model: doubao-seed-2-0-lite-260215, messages: [...], system: [...], tools: [...], stream: true }1.2 核心工作流程Claude Code 处理用户请求的标准流程包括接收用户输入注入动态上下文System Reminder选择适当的工具或技能执行操作可能需要用户确认流式返回结果提示在实际抓包过程中发现即使是简单的你是谁查询系统也会加载超过20,000 tokens的上下文信息这说明其设计非常注重完整性和安全性。2. 抓包环境搭建与配置2.1 工具选型与配置要进行 Claude Code 的抓包分析需要特定的工具配置# 代理设置示例 export HTTP_PROXYhttp://127.0.0.1:8888推荐工具组合Charles Proxy用于拦截和修改 HTTP/HTTPS 流量Wireshark用于底层网络协议分析当需要更深入排查时ModHeader用于修改请求头信息2.1.1 解决 HTTPS 抓包问题由于 Claude Code 默认使用 HTTPS需要特殊配置才能抓包安装 Charles 根证书在设备信任该证书配置 Claude Code 使用 HTTP 协议调试模式设置代理指向 Charles 监听端口常见问题排查如果遇到证书错误检查系统时间是否正确502 Bad Gateway 错误通常表示代理配置有问题连接超时可能是防火墙阻止了代理连接2.2 抓包技巧与注意事项在实际抓包过程中我们发现几个关键技巧过滤技巧使用claude或doubao作为过滤关键词关注/v1/responses等API端点流量分析要点注意观察cache_control字段的变化跟踪user_id等元数据字段分析流式响应中的SSE事件序列移动端抓包 对于移动设备上的 Claude Code 使用配置设备使用电脑作为代理安装并信任Charles证书可能需要禁用HSTS策略重要提醒抓包仅用于学习和研究目的请遵守相关服务条款和隐私政策。3. System Prompt 深度解析3.1 系统提示词结构从抓包数据中提取的 System Prompt 显示其采用分层设计身份定位层You are Claude Code, Anthropics official CLI for Claude. You are an interactive agent that helps users with software engineering tasks.核心原则层安全原则拒绝破坏性操作任务专注原则仅处理软件工程问题风险管理原则考虑操作的可逆性工具规范层工具使用优先级并行执行策略前置条件要求3.2 关键设计理念System Prompt 中体现的几个重要设计理念专用工具优先使用Read而非cat使用Edit而非sed使用Write而非echo最小权限原则默认禁止危险操作需要显式用户确认操作完全可审计渐进式披露动态注入相关上下文避免一次性加载所有信息根据当前任务显示对应提示3.3 提示词工程技巧从 Claude Code 的 System Prompt 中可以学到这些实用技巧使用具体指令不好的示例要小心处理文件好的示例NEVER force push to main/master提供正反示例good-example user: Please write a function... assistant: Uses Write tool... /good-example bad-example user: Please write a function... assistant: Uses Bash tool with echo... /bad-example环境感知 System Prompt 中包含详细的平台信息# Environment - Platform: win32 - Shell: bash - OS Version: MSYS_NT-10.0-262004. 工具系统架构分析4.1 核心工具分类从抓包数据中识别出的25个工具可分为几大类类别代表工具功能描述文件操作Read/Edit/Write安全地读写和修改文件代码搜索Glob/Grep在代码库中查找内容系统操作Bash执行受控的Shell命令代理管理Agent创建子代理处理复杂任务任务管理TaskCreate/Stop管理后台任务用户交互AskUserQuestion获取用户确认或输入4.2 Agent 工具详解Agent 工具是 Claude Code 最强大的功能之一{ name: Agent, description: Launch a new agent to handle complex tasks, input_schema: { properties: { description: Agent description, prompt: Task to perform, subagent_type: Type of specialized agent } } }支持的子代理类型包括general-purpose通用代理Explore代码库探索专家Plan软件架构设计专家statusline-setup配置状态栏claude-code-guide回答 Claude Code 相关问题关键特性后台执行run_in_background会话恢复resume参数隔离环境在git worktree中运行4.3 文件操作工具设计文件操作工具体现了精细的安全设计Read工具支持分段读取大文件可处理多种格式文本、图片等必须在使用Edit/Write前调用Edit工具{ name: Edit, description: Perform precise string replacement in files, input_schema: { required: [file_path, old_string, new_string] } }要求old_string必须唯一保留原始缩进修改前必须使用Read确认内容Write工具创建新文件相对自由修改现有文件需要先Read禁止自动创建文档文件5. Skills 系统工作机制5.1 Skills 与 Tools 的区别通过抓包数据可以清晰看到两者的差异维度ToolsSkills定义方式API请求中静态定义System Reminder动态注入调用方式直接调用通过Skill工具间接调用扩展性需要修改API可动态添加用途基础操作高级工作流5.2 典型 Skills 分析常见的Skills包括simplify触发条件代码变更后功能检查代码的可重用性和效率loop/loop 5m 检查系统状态定时重复执行任务适用于监控类任务claude-api触发条件代码导入anthropic SDK功能帮助构建Claude API应用5.3 Skill 触发机制Skills通过两种方式激活显式调用 用户直接输入技能命令如/simplify条件触发 当代码满足特定模式时自动建议例如TRIGGER when: code imports anthropic DO NOT TRIGGER when: code imports openai6. 渐进式披露策略实现6.1 System Reminder 机制从抓包数据中可以看到动态上下文的注入方式{ role: user, content: [ { type: text, text: system-reminderSkills available.../system-reminder }, { type: text, text: 实际用户问题 } ] }6.2 Reminder 类型分析发现的几种典型ReminderSkills提醒system-reminder The following skills are available: - simplify: Review changed code... /system-reminder上下文提醒system-reminder # currentDate Today is 2026-03-15 /system-reminder工具提醒system-reminder TodoWrite tool hasnt been used recently. /system-reminder6.3 实现优势这种设计带来多方面好处认知负荷管理仅显示相关信息避免信息过载Token效率静态内容可缓存减少重复传输动态适应性根据上下文调整提示实时反映系统状态7. 性能优化技术剖析7.1 缓存策略抓包数据中观察到的缓存机制{ cache_control: { type: ephemeral } }缓存类型包括ephemeral临时缓存会话有效persistent持久化缓存跨会话none禁用缓存7.2 并行执行System Prompt中的明确指导If you intend to call multiple tools and there are no dependencies between them, make all independent tool calls in parallel.实际请求示例{ tools: [ {name: Read, file_path: file1}, {name: Read, file_path: file2} ] }7.3 流式响应SSE事件序列示例message_start开始消息content_block_start开始内容块content_block_delta增量内容message_stop结束消息优势低延迟可中断更好的用户体验8. 安全设计深度解析8.1 权限模型Claude Code采用精细的权限控制模式选择Autopilot自主操作Supervised操作需确认工具权限基础工具自动允许危险工具需要明确授权Git保护禁止强制推送main分支禁止跳过钩子(--no-verify)禁止修改git配置8.2 风险管理策略System Prompt中的关键安全规则可逆性检查Carefully consider the reversibility and blast radius of actions.确认机制对危险操作必须使用AskUserQuestion提供详细的解释和影响评估审计追踪所有工具调用都被记录Git提交包含Co-Authored-By标记8.3 安全边界明确禁止的操作包括拒绝服务(DoS)攻击供应链攻击生成猜测性URL未经请求的功能添加9. 异常处理与调试9.1 常见错误分析从抓包数据中发现的典型错误502 Bad Gateway原因代理配置问题解决方案检查Charles代理设置证书错误原因系统未信任Charles证书解决方案安装并信任根证书工具调用失败原因前置条件不满足解决方案先调用Read工具9.2 调试技巧有效的调试方法日志分析检查请求/响应完整内容关注SSE事件序列简化重现从简单请求开始逐步增加复杂度对比测试正常与异常情况对比不同环境下的表现9.3 问题排查流程建议的排查步骤确认代理设置正确验证证书有效性检查网络连接分析具体错误响应简化请求复现问题10. 技术启示与最佳实践10.1 AI Agent 设计原则从Claude Code分析中总结的关键原则模块化设计工具单一职责组合简单工具完成复杂任务用户体验优先渐进式披露透明操作及时反馈安全第一最小权限可逆操作全面审计10.2 性能优化建议可借鉴的优化策略缓存静态内容System Prompt工具定义并行化独立操作文件读取代码分析后台处理长时间任务资源密集型操作10.3 工程实践指导具体实施建议提示词工程分层组织具体明确包含示例工具设计清晰的前置条件严格的输入验证详细的错误信息状态管理会话持久化上下文压缩记忆优化