基于 Claude Code 的 AI 编程工作流探索
一、 Claude Code 简介Claude Code 是 Anthropic 推出的面向开发者的 AI 编程协作工具。Claude Code 的核心目标是理解你的整个项目并参与到真实的编码、修改和重构过程中。Claude Code 不是一个代码生成器而是一个能读项目、懂上下文、遵守约束的 AI 编程工具。它不是网页里的聊天框而是直接在你的终端(Terminal)里运行,读取你整个项目的代码理解文件之间的关系直接修改代码文件执行你的指令并给出建议。二、Claude Code 特性全局上下文感知不仅能读单个文件还能理解整个项目的结构、文件间的依赖关系及架构。工程级代码修改可以直接读取并修改代码文件如批量替换 var 为 let、拆分函数、添加错误处理而不仅仅是给出建议。深度分析与解释能结合上下文解释代码逻辑、排查报错原因及分析性能瓶颈。可定制行为 (Skills)通过“技能包”将团队的编码规范、注释要求、测试标准等固化下来让 AI 自动遵守。局限性不能替用户做最终技术决策不能保证 100% 无 Bug无法理解未明确说明的业务语义三、 安装教程3.1、 安装 Claude Code使用官方脚本curl -fsSL https://claude.ai/install.sh | bashmac 安装npm install -g anthropic-ai/claude-code安装后验证claude --version3.2、 配置 Claude Code配置文件路径~/.claude/settings.json{env:{ANTHROPIC_AUTH_TOKEN:你的Coding Plan API Key,ANTHROPIC_BASE_URL:https://token-plan.cn-beijing.maas.aliyuncs.com/apps/anthropic,ANTHROPIC_DEFAULT_FABLE_MODEL:qwen3.7-plus[1M],ANTHROPIC_DEFAULT_FABLE_MODEL_NAME:qwen3.7-plus,ANTHROPIC_DEFAULT_HAIKU_MODEL:glm-5.2,ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME:glm-5.2,ANTHROPIC_DEFAULT_OPUS_MODEL:kimi-k2.7-code[1M],ANTHROPIC_DEFAULT_OPUS_MODEL_NAME:kimi-k2.7-code,ANTHROPIC_DEFAULT_SONNET_MODEL:qwen3.7-max[1M],ANTHROPIC_DEFAULT_SONNET_MODEL_NAME:qwen3.7-max},custom_instructions:{language:Always respond in Simplified Chinese. You must not output English explanations or mixed language.},includeCoAuthoredBy:false,model:sonnet,enabledPlugins:{superpowersclaude-plugins-official:true,frontend-designclaude-plugins-official:true,playwrightclaude-plugins-official:true},effortLevel:high,theme:dark,switchModelsOnFlag:true,permissions:{allow:[mcp__codegraph__*]},hooks:{UserPromptSubmit:[{hooks:[{type:command,command:codegraph prompt-hook}]}]}}通过上面步骤就完成了 Claude Code 的配置。接下来就开始练习如何使用。3.3、 Claude Code 三种权限模式模式行为正常模式每次操作前询问Plan Mode计划模式先说明计划批准后执行自动接受模式直接编辑不再询问其他一些小功能直接用 提到文件或文件夹可以拖拉文件到对话框四、基础使用4.1、 常用命令命令功能Esc执行退出/resume恢复对话/列出所有命令/clear清除会话/cost查看消耗防烧 Token/compact压缩上下文/reset切换任务/review检查 Git 暂存区4.2、 快捷操作操作功能CtrlC取消当前操作CtrlL清屏CtrlO切换详细输出CtrlK删除到行尾/开头触发斜杠命令!开头直接运行 Bash 命令触发文件路径自动补全\ Enter换行输入五、工作逻辑代理循环Claude Code 的核心是代理循环Agent Loop像人类程序员一样自主工作思考 → 行动 → 验证 → 循环5.1 模型大脑模型适用场景Sonnet日常编码速度快性价比高Opus复杂架构设计、深度推理5.2 内置工具双手工具能力文件操作读取、修改、创建、重命名搜索按文件名或正则查找执行命令npm、git、测试、启动服务器网络搜索查询文档或错误信息代码智能LSP 集成、类型检查示例工作流运行测试 → 读错误日志 → 搜索相关文件 → 理解代码 → 修改 → 再次验证5.3 增强能力体系基础能力 ├── Skills技能包 ├── MCP外部服务 ├── Hooks自动化 └── SubAgents子助手下面是可以直接补进文章里的「6. 项目应用」部分风格尽量保持清晰、直观、适合读者理解。六、 项目应用前面介绍的是 Claude Code 的安装、命令和基础能力。真正把 Claude Code 用好关键在于让它理解你的项目、遵守你的规范并在合适的模式下协助你完成开发任务。在实际项目中Claude Code 通常会围绕以下几个方面展开使用/init初始化项目上下文通过CLAUDE.md固化项目规则使用.claude/目录管理命令、规则、技能和子代理6.1、 项目初始化/init/init是 Claude Code 在项目中非常重要的一个命令。它的核心作用是为当前项目生成一个CLAUDE.md文件。这个文件可以理解为 Claude Code 的“项目说明书”或“长期上下文”。有了它Claude 每次进入这个项目时就能快速了解这个项目是做什么的用了哪些技术栈如何启动、构建和测试项目的目录结构是什么团队有哪些代码规范提交代码时需要遵守哪些约定6.1.1 如何使用/init进入项目根目录后启动 Claude Codeclaude然后在 Claude Code 会话中输入/initClaude Code 会自动扫描当前项目并生成一个类似这样的文件CLAUDE.md6.1.2CLAUDE.md是什么CLAUDE.md是 Claude Code 在当前项目中的核心配置文件。它不是代码文件而是一个 Markdown 文档用来告诉 Claude你在这个项目里应该如何工作。一个典型的CLAUDE.md可能包含以下内容# Project Overview This is a React TypeScript frontend project. ## Tech Stack - React - TypeScript - Vite - Tailwind CSS - pnpm ## Common Commands - Install dependencies: pnpm install - Start dev server: pnpm dev - Run tests: pnpm test - Build project: pnpm build ## Code Style - Use TypeScript for all new files - Prefer functional components - Use named exports instead of default exports - Keep components small and focused ## Project Structure - src/components: reusable UI components - src/pages: page-level components - src/hooks: custom React hooks - src/utils: utility functions ## Development Rules - Do not introduce new dependencies without confirmation - Do not modify public APIs unless explicitly requested - Run tests after changing business logic6.1.3CLAUDE.md通常包含哪些内容内容说明项目描述当前项目的目标、业务背景、核心功能技术栈使用的语言、框架、构建工具、测试框架常用命令安装依赖、启动项目、运行测试、打包构建目录结构各个目录的职责和用途代码风格命名规范、组件规范、注释规范等架构约定模块分层、接口设计、状态管理方式工作流程提交规范、测试要求、Review 规则注意事项不允许随意修改的文件、敏感逻辑说明6.1.4 使用/init的好处1. 建立项目上下文没有CLAUDE.md时每次你都需要重新告诉 Claude这是一个 Vue 项目用 pnpm测试用 Vitest不要用 npm。有了CLAUDE.md后这些信息可以长期保存在项目中Claude 每次进入项目时都能自动读取。2. 保持代码风格一致团队项目中最怕 AI 改出来的代码风格和原项目不一致。比如项目要求使用pnpm使用 TypeScript不使用默认导出API 请求统一放在services/目录组件统一使用函数组件这些规则都可以写进CLAUDE.md让 Claude 在生成和修改代码时自动遵守。3. 降低沟通成本如果一个项目有多个成员每个人都使用 Claude Code那么把CLAUDE.md提交到 Git 仓库后团队成员可以共享同一套 AI 使用规范。这样 Claude 不会因为不同人的描述差异而产生完全不同的代码风格。6.2 Claude Code 项目结构在实际项目中Claude Code 不只依赖一个CLAUDE.md文件。随着项目复杂度提升通常会出现一个专门的.claude/目录用来管理 Claude 的行为规则、权限、自定义命令、技能和子代理。一个比较完整的 Claude Code 项目结构如下your-project/ ├── CLAUDE.md ├── CLAUDE.local.md ├── .mcp.json ├── .claude/ │ ├── settings.json │ ├── commands/ │ │ ├── review.md │ │ ├── test.md │ │ └── release.md │ ├── rules/ │ │ ├── code-style.md │ │ ├── git.md │ │ └── testing.md │ ├── skills/ │ │ ├── write-unit-tests/ │ │ │ └── SKILL.md │ │ └── refactor-component/ │ │ └── SKILL.md │ └── agents/ │ ├── frontend-reviewer.md │ ├── backend-analyst.md │ └──>6.2.1CLAUDE.md项目级说明书位置CLAUDE.md作用团队共享放在项目根目录告诉 Claude 当前项目的整体规则适合写入项目介绍技术栈启动命令测试命令构建命令代码规范架构说明注意事项示例# Claude Instructions ## Project This is a Node.js backend service. ## Rules - Use TypeScript for all new files. - Do not change database schema without confirmation. - Use pnpm instead of npm. - Run pnpm test after modifying business logic.6.2.2CLAUDE.local.md个人私有规则位置CLAUDE.local.md作用只保存个人本地偏好不建议提交到 Git适合存放本地开发相关信息例如# Local Claude Preferences - My local database is running on port 5433. - When testing locally, use .env.local. - Prefer shorter explanations unless I ask for details.因为这个文件可能包含个人环境信息建议加入.gitignoreCLAUDE.local.md6.2.3.claude/settings.json权限与安全配置位置.claude/settings.json作用控制 Claude Code 可以执行什么限制危险命令作为团队安全基线例如可以限制 Claude 不允许执行危险命令{ permissions: { allow: [ Bash(pnpm test), Bash(pnpm build), Bash(git status) ], deny: [ Bash(rm -rf *), Bash(sudo *), Bash(curl * | bash) ] } }这样可以避免 Claude 在自动化执行时误删文件或执行高风险命令。6.2.4.claude/commands/自定义斜杠命令位置.claude/commands/作用将重复性任务封装成命令每个.md文件会映射成一个自定义斜杠命令适合团队标准化流程例如创建文件.claude/commands/review.md内容请检查当前 Git 暂存区的改动重点关注 1. 是否存在明显 Bug 2. 是否符合项目代码规范 3. 是否有性能问题 4. 是否需要补充测试 5. 是否有安全风险 请按照“问题 / 影响 / 建议修改”的格式输出。之后就可以在 Claude Code 中直接使用/project:review这样团队成员不需要每次重复输入长 Prompt。6.2.5.claude/rules/模块化行为规则位置.claude/rules/作用拆分长期规则避免CLAUDE.md过于臃肿让不同类型规则更加清晰例如.claude/rules/code-style.md .claude/rules/testing.md .claude/rules/git.mdcode-style.md# Code Style Rules - Use TypeScript. - Avoid any unless necessary. - Prefer small functions. - Use meaningful variable names. - Do not introduce new dependencies without approval.testing.md# Testing Rules - Add unit tests for new business logic. - Run tests after modifying core modules. - Follow the existing test style.这种方式适合中大型项目可以把规则拆得更清楚。6.2.6.claude/skills/自动调用的工作流位置.claude/skills/作用定义复杂工作流Claude 判断任务匹配时自动调用适合封装高频开发能力目录结构示例.claude/skills/ └── write-unit-tests/ └── SKILL.mdSKILL.md示例# Write Unit Tests Skill When the user asks to add or improve tests: 1. Inspect the target file. 2. Find existing test patterns. 3. Create or update the corresponding test file. 4. Cover normal cases, edge cases, and error cases. 5. Run the test command if allowed. 6. Summarize what was tested.当你说请帮我给这个函数补充单元测试。Claude 可能会自动读取这个 Skill并按照里面定义的流程执行。6.2.7.claude/agents/子代理角色位置.claude/agents/作用定义不同专业角色主 Claude 可以把任务分配给不同子代理子代理拥有独立上下文和权限范围适合复杂项目中的多角色协作例如.claude/agents/frontend-reviewer.md内容--- name: frontend-reviewer description: Review frontend code quality and user experience --- You are a frontend code reviewer. Focus on: 1. Component structure 2. React hooks usage 3. TypeScript correctness 4. Accessibility 5. UI consistency 6. Performance issues Do not modify files directly. Only provide review comments and suggestions.在复杂任务中主 Claude 可以把不同任务交给不同子代理处理避免所有上下文都塞到一个会话里。七、Claude Code 中使用 MCPMCP 是 Claude Code 连接外部世界的桥梁让 AI 从代码顾问进化为全能工程师。7.1 基础概念维度说明定义Anthropic 提出的开放协议作用让 Claude 实时访问外部系统数据类比AI 应用的USB-C 接口能力访问 GitHub/数据库/Slack/浏览器等7.2 添加 MCP Server三种通信方式类型用途http远程服务stdio本地进程sse旧版已逐渐废弃添加远程 HTTP MCPclaude mcp add --transport http notion https://mcp.notion.com/mcp添加本地 Node.js MCPclaude mcp add everything -- npx -y modelcontextprotocol/server-everything携带鉴权claude mcp add --transport http my-api https://api.example.com/mcp \ --header Authorization: Bearer $TOKEN7.3 MCP 常用管理命令命令功能claude mcp list列出所有 MCP 服务器claude mcp get name查看指定配置claude mcp remove name移除指定/mcp会话内查看 鉴权claude mcp serve自身作为 MCP Server7.4 配置文件用户级全局~/.claude.json项目级推荐团队共享.mcp.json{mcpServers:{github:{command:npx,args:[modelcontextprotocol/server-github],env:{GITHUB_TOKEN:${GITHUB_TOKEN}}}}}7.5 作用域与加载三层作用域作用域位置优先级User~/.claude.json低Project.mcp.json中Local项目中项目项高八、 总结Claude Code 不是一个简单的聊天机器人而是一位执行力极强、但需要明确约束的工程师。记住三个关键原则提问越具体产出越精准— 说清楚背景、目标、约束选择合适的模式— Ask 搞清楚、Plan 避免弯路、Edit 谨慎执行善用 MCP 扩展— 让 Claude 从写代码到跑代码、测代码、管代码开始使用你的 AI 编程伙伴吧