Claude 使用技巧
}Claude Code 配置文件详解与模型映射关系说明
Claude 使用技巧#
本文档介绍 Claude Code 的配置方法,特别是模型配置的相关说明。
Claude Code 工作模式#
Claude Code 支持三种工作模式,你可以根据任务需求灵活切换:
模式说明#
| 模式 | 显示标识 | 说明 |
|---|---|---|
| Normal Mode | 默认(无特殊标识) | 正常执行模式,每次编辑需要确认 |
| Auto-Accept Mode | ⏵⏵ accept edits on | 自动接受并应用编辑 |
| Plan Mode | ⏸ plan mode on | 计划模式,先制定计划再执行 |
模式切换方法#
使用 Shift+Tab 在三种模式之间循环切换:
- Normal Mode(默认)→ 按 Shift+Tab → 进入 Auto-Accept Mode
- Auto-Accept Mode → 按 Shift+Tab → 进入 Plan Mode
- Plan Mode → 按 Shift+Tab → 回到 Normal Mode
各模式适用场景#
适用场景:
- 日常对话和简单问答
- 需要仔细审查每个修改的代码编辑
- 不确定 Claude 会做什么,希望保持控制
特点:
- 每个文件编辑都会询问是否应用
- 最安全、可控性最强的模式
适用场景:
- 批量重构代码
- 需要创建多个文件的复杂功能
- 信任 Claude 的编辑能力,希望提高效率
特点:
- 自动应用所有编辑
- 终端底部显示
⏵⏵ accept edits on - 适合需要连续多步编辑的任务
适用场景:
- 探索代码库、进行安全代码审查
- 复杂的多文件更改,需要先规划
- 需要用户批准计划后再执行
特点:
- Claude 仅使用只读操作分析代码
- 自动创建计划文件(
/root/.claude/plans/) - 使用
AskUserQuestion收集需求 - 终端底部显示
⏸ plan mode on
模型配置详解#
在 settings.json 中,你可以通过环境变量来配置 Claude 使用的模型。
配置示例#
{
"env": {
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "doubao-seed-2.0-code",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "minimax-m2.5",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "kimi-k2.5",
"ANTHROPIC_MODEL": "glm-4.7"
}
}json模型映射关系#
| /models 选项 | 环境变量 | 说明 |
|---|---|---|
| Haiku | ANTHROPIC_DEFAULT_HAIKU_MODEL | 快速、轻量级模型 |
| Sonnet | ANTHROPIC_DEFAULT_SONNET_MODEL | 平衡性能与质量 |
| Opus | ANTHROPIC_DEFAULT_OPUS_MODEL | 最高质量的模型 |
| 默认模型 | ANTHROPIC_MODEL | 普通对话使用的模型 |
使用第三方 API#
你可以通过配置 ANTHROPIC_BASE_URL 来使用第三方 API 服务:
{
"env": {
"ANTHROPIC_BASE_URL": "https://ark.cn-beijing.volces.com/api/coding"
}
}json常用配置项#
| 配置项 | 说明 | 示例值 |
|---|---|---|
ANTHROPIC_MODEL | 默认使用的模型 | glm-4.7 |
ANTHROPIC_DEFAULT_HAIKU_MODEL | Haiku 模式使用的模型 | doubao-seed-2.0-code |
ANTHROPIC_DEFAULT_SONNET_MODEL | Sonnet 模式使用的模型 | kimi-k2.5 |
ANTHROPIC_DEFAULT_OPUS_MODEL | Opus 模式使用的模型 | minimax-m2.5 |
ANTHROPIC_BASE_URL | API 基础 URL | https://api.example.com |
API_TIMEOUT_MS | API 超时时间(毫秒) | 300000 |
会话管理#
Claude Code 支持会话恢复和管理,方便你在不同任务之间切换。
恢复会话#
启动 Claude Code 时,可以使用以下方式恢复会话:
| 命令 | 说明 |
|---|---|
claude --continue | 继续当前目录中最近的对话 |
claude --resume | 打开对话选择器或按名称恢复 |
claude --from-pr 123 | 恢复链接到特定拉取请求的会话 |
在活跃会话内切换#
在 Claude Code 交互模式中:
- 使用
/resume切换到不同的对话 - 使用
/rename <name>给当前会话起描述性名称
会话存储#
- 会话按项目目录存储
/resume选择器显示来自同一 git 存储库的会话,包括 worktrees- 给会话起描述性名称是处理多个任务时的最佳实践
撤销操作 (/rewind)#
Claude Code 提供了强大的 /rewind 功能,让你可以轻松撤销操作。
功能说明#
/rewind 让你可以回到之前的任意一个提示词节点,并选择:
- 仅恢复代码 - 撤销代码修改但保留对话历史
- 仅恢复对话 - 保留代码但回退对话状态
- 两者同时回退 - 完全回到之前的状态
使用场景#
- 刚让 Claude 修改代码就立刻后悔:“等等,还是撤销吧”
- 想回到之前的某个决策点尝试不同方案
- 批量撤销多个步骤而不需要逐个回退
使用方法#
- 输入
/rewind - 选择要回退到的节点
- 选择回退范围(代码/对话/两者)
- 确认后即可恢复
常用快捷键#
掌握以下快捷键可以更高效地使用 Claude Code:
| 快捷键 | 功能 | 说明 |
|---|---|---|
Shift+Tab | 切换工作模式 | 在 Normal、Auto-Accept、Plan 三种模式间循环切换 |
Ctrl+O | 切换详细输出 | 开启/关闭详细的工具使用和执行情况显示 |
Ctrl+D(两次) | 退出 Claude Code | 第一次按确认,第二次按真正退出 |
Esc + Esc | 回退或总结 | 将代码和/或对话恢复到上一个点,或从选定的消息进行总结 |
Alt+P(Windows/Linux) | 切换模型 | 在不清除提示的情况下切换模型 |
| 自定义快捷键 | 切换扩展思考 | 启用或禁用扩展思考模式。首先运行 /terminal-setup 以启用此快捷键 |
Ctrl+K | 删除到行尾 | 存储已删除的文本以供粘贴 |
Ctrl+U | 删除整行 | 存储已删除的文本以供粘贴 |
Ctrl+Y | 粘贴已删除的文本 | 粘贴用 Ctrl+K 或 Ctrl+U 删除的文本 |
Ctrl+R | 反向搜索历史提示词 | 循环匹配历史提示词,按 Enter 运行,按 Tab 编辑后运行 |
快速命令#
| 快捷键 | 功能 | 说明 |
|---|---|---|
/(在开始输入) | 命令或 skill | 触发内置命令和 skills 的自动补全 |
!(在开始输入) | Bash 模式 | 直接运行命令并将执行输出添加到会话 |
@ | 文件路径提及 | 触发文件路径自动完成 |
常用命令#
| 命令 | 功能 | 说明 |
|---|---|---|
/cost | 查看成本统计 | 显示当前会话的 API 调用成本统计信息 |
已弃用命令#
| 命令 | 状态 | 替代方案 |
|---|---|---|
review | 已弃用 | 安装 code-review 插件:claude plugin install code-review@claude-code-marketplace |
Hooks(钩子)功能#
Hooks 是在特定事件触发时自动执行的脚本,用于自定义工作流、拦截危险操作、自动格式化代码等。
核心工作流程#
事件触发 → Hook 拦截 → 执行自定义脚本 → 返回结果 → 继续/阻止操作plaintextHook 事件类型#
| 事件类型 | 触发时机 | 典型用途 |
|---|---|---|
user-prompt-submit | 用户提交提示词前 | 验证、修改提示词 |
tool-use | 工具使用前 | 权限检查、参数验证 |
after-tool-use | 工具使用后 | 日志记录、结果处理 |
permission-request | 权限请求时 | 拦截危险操作 |
notification | 通知时 | 发送告警、更新状态 |
配置方式#
方式一:通过 /hooks 命令#
# 在 Claude Code 中
/hooksbash方式二:通过配置文件#
在 ~/.claude/settings.json 或项目 .claude/settings.json 中配置:
{
"hooks": {
"user-prompt-submit-hook": {
"command": "npm run validate-prompt",
"enabled": true
},
"tool-use-hook": {
"command": "~/.claude/hooks/check-permission.sh",
"enabled": true,
"blocking": true
},
"after-tool-use-hook": {
"command": "echo 'Tool used: {{toolName}}' >> ~/.claude/hooks.log",
"enabled": true
}
}
}json实战示例#
拦截危险命令#
#!/bin/bash
# ~/.claude/hooks/check-dangerous.sh
# 读取工具调用信息
TOOL_NAME=$(jq -r '.toolName' <<< "$CLAUDE_HOOK_INPUT")
# 危险操作列表
DANGEROUS_TOOLS=("rm" "delete" "format" "shutdown")
if [[ " ${DANGEROUS_TOOLS[@]} " =~ " ${TOOL_NAME} " ]]; then
echo "⚠️ 警告:即将执行危险操作 - $TOOL_NAME"
echo "请确认是否继续? (yes/no)"
read -r confirmation
if [[ "$confirmation" != "yes" ]]; then
exit 1 # 阻止操作
fi
fibash发送通知#
{
"hooks": {
"task-complete-hook": {
"command": "notify-send 'Claude Code' '任务已完成'",
"enabled": true
}
}
}json自动格式化代码(PostToolUse Hook)#
来自创始人的实战经验 - 彻底消灭 CI 里的格式报错:
{
"hooks": {
"after-tool-use-hook": {
"command": "bun run format || true",
"enabled": true,
"blocking": false
}
}
}json工作原理:
- 每次 Claude 使用
Write或Edit工具后自动触发 - 运行格式化命令(这里是
bun run format) || true确保即使格式化失败也不阻塞流程- 虽然 Claude 已经写得很规范,但这最后 10% 的自动化处理能彻底解决格式问题
效果:
- ✅ CI 中不再有格式报错
- ✅ 代码风格始终一致
- ✅ 无需手动运行格式化
- ✅ Git diff 更清晰
Plugin(插件)安装与使用#
什么是 Plugin?#
Plugins 是打包在一起的扩展集合,可以包含:
- 5 个 Skills - 可复用的技能和工作流
- 10 个斜杠命令 - 自定义命令
- 3 个 MCP 服务器配置 - 外部服务集成
- 2 个 SubAgent 定义 - 专用子代理
- 若干 Hooks - 自动化钩子脚本
Plugins vs Skills#
| 特性 | Skills | Plugins |
|---|---|---|
| 复杂度 | 简单工作流 | 完整功能套件 |
| 内容 | 单一技能 | 多种资源的集合 |
| 安装 | 独立安装 | 一次性安装多个资源 |
| 适用场景 | 单一任务 | 完整解决方案 |
插件市场来源#
| 来源 | 地址 | 说明 |
|---|---|---|
| Anthropic Skills | https://github.com/anthropics/skills ↗ | 官方 Skills 库,包含多个插件 |
| Claude Code Marketplace | https://claudecodemarketplaces.com ↗ | 插件市场目录 |
| Awesome Claude Code | https://awesomeclaude.ai/plugins ↗ | 社区插件精选 |
添加插件市场#
# 添加官方 Anthropic 插件市场
claude /plugin marketplace add anthropics/skills
# 添加本地插件市场
claude /plugin marketplace add ~/my-marketplace
# 浏览可用插件
claude /plugin
# 选择 "Browse Plugins" 查看完整列表bash常用官方插件#
# 文档处理插件套件
claude /plugin marketplace add anthropics/skills
claude /plugin install document-skills
# 前端开发插件
claude /plugin install frontend-design
# Git 工作流插件
claude /plugin install git-workflowbash安装 Plugin#
从市场安装#
claude plugin install <plugin-name>bash从本地安装#
# 安装本地插件
claude plugin install ./my-plugin
# 或使用完整路径
claude plugin install /path/to/my-pluginbash从 GitHub 安装#
# 直接从 GitHub 仓库安装
claude plugin install github:user/repobash管理 Plugins#
查看已安装的插件#
claude /pluginbash浏览可用插件#
# 在 Claude Code 中输入
/plugin
# 选择 "Browse Plugins"bash卸载插件#
claude plugin uninstall <plugin-name>bash创建自定义 Plugin#
插件目录结构#
my-plugin/
├── plugin.json # Plugin 配置
├── skills/ # Skills 目录
│ ├── skill1/
│ └── skill2/
├── commands/ # 自定义斜杠命令
│ └── my-command.md
├── mcp/ # MCP 配置
│ └── mcp-config.json
├── agents/ # SubAgent 定义
│ └── agent1.json
└── hooks/ # Hook 脚本
└── hook1.shplaintextplugin.json 示例#
{
"name": "my-plugin",
"version": "1.0.0",
"description": "我的自定义插件",
"author": "Your Name",
"skills": [
"skills/skill1",
"skills/skill2"
],
"commands": [
{
"name": "/my-command",
"description": "我的自定义命令",
"file": "commands/my-command.md"
}
],
"mcpServers": [
{
"name": "my-mcp",
"config": "mcp/mcp-config.json"
}
],
"agents": [
{
"name": "my-agent",
"config": "agents/agent1.json"
}
]
}jsonMCP Servers(模型上下文协议服务器)#
什么是 MCP?#
MCP (Model Context Protocol) 是 AI 的扩展接口标准,通过添加 MCP 服务器可以扩展 Claude Code 获取外部工具、资源、服务的能力。
核心架构#
Claude Code
↓
MCP Client
↓
MCP Server 1 ──┐
MCP Server 2 ───┼── 各种外部服务(GitHub API、Database、Browser 等)
MCP Server N ───┘plaintext常用 MCP 服务器#
| MCP Server | 功能 | Star 数 |
|---|---|---|
chrome-devtools-mcp | 浏览器自动化,26 个工具 | 18.5k |
github-mcp | GitHub API 集成 | 10k+ |
postgres-mcp | PostgreSQL 数据库操作 | 5k+ |
filesystem-mcp | 增强文件系统操作 | 3k+ |
web-search-mcp | 网络搜索功能 | 2k+ |
MCP 安装方式#
方式一:命令行安装#
claude mcp add chrome-devtools npx chrome-devtools-mcp@latestbash方式二:配置文件安装#
编辑 ~/.claude/mcp.json:
{
"mcpServers": {
"chrome-devtools": {
"command": "npx",
"args": ["chrome-devtools-mcp@latest"],
"disabled": false
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "your_github_token_here"
}
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres"],
"env": {
"POSTGRES_CONNECTION_STRING": "postgresql://user:password@localhost:5432/db"
}
}
}
}json验证安装#
# 在 Claude Code 中
/mcp
# 或通过命令行
claude mcp list
claude mcp test chrome-devtoolsbashChrome DevTools MCP 实战#
安装#
claude mcp add chrome-devtools npx chrome-devtools-mcp@latestbash使用示例#
在 Claude Code 中输入:
用 Chrome 浏览器打开 https://example.com,然后通过 chrome devtools mcp 完成以下任务:
1. 截取页面截图
2. 提取所有链接
3. 分析页面结构
4. 获取页面性能数据plaintextSubagents(子代理)#
什么是 Subagents?#
Subagents 是可以并行处理任务的独立 AI 代理,每个子代理拥有独立的 200K 上下文窗口,可以分配不同任务以提高效率。
核心理念#
把常用工作流看作自动化运行的”子智能体”,就像圣诞老人分派任务给精灵一样,每个子智能体专注于特定领域。
核心优势#
主代理 Claude Code
↓
├─ 子代理1:代码审查
├─ 子代理2:测试编写
├─ 子代理3:文档生成
└─ 子代理4:性能优化
↓
并行处理 → 结果汇总plaintextSubagent 配置#
方式一:通过 /agents 命令#
claude /agentsbash方式二:配置文件#
在 ~/.claude/agents.json 或项目 .claude/agents.json 中配置:
{
"agents": {
"code-reviewer": {
"description": "专门负责代码审查的子代理",
"model": "claude-opus-4-5",
"instructions": "你是一个专业的代码审查专家,专注于检查代码质量、安全漏洞和性能问题。",
"tools": ["read", "search", "git"],
"permissions": {
"allowWrite": false
}
},
"test-writer": {
"description": "专门负责编写测试的子代理",
"model": "claude-sonnet-4-5",
"instructions": "你是一个测试工程师,专注于编写全面的单元测试和集成测试。",
"tools": ["read", "write", "bash"]
},
"doc-generator": {
"description": "专门负责生成文档的子代理",
"model": "claude-sonnet-4-5",
"instructions": "你是一个技术文档专家,专注于生成清晰、准确的技术文档。",
"tools": ["read", "write"]
}
}
}jsonSubagent 使用示例#
场景:完成一个功能开发#
# 主任务
我需要完成用户认证功能,请帮我:
1. 使用 code-reviewer agent 审查现有认证代码
2. 使用 test-writer agent 编写测试用例
3. 使用 doc-generator agent 更新 API 文档
这三个任务并行执行bashClaude Code 会自动:
- 创建三个独立的子代理
- 分配各自的上下文(200K × 3)
- 并行执行任务
- 汇总结果返回
实战子代理案例#
来自 Claude Code 创始人 Boris Cherny 的实际使用。
code-simplifier#
# .claude/agents/code-simplifier.md
你是一个代码精简专家。在 Claude 完成工作后,你的任务是:
1. 分析代码的复杂度和可读性
2. 识别可以简化的逻辑
3. 提供优化建议但保持功能不变
4. 优先考虑性能和可维护性markdownverify-app#
# .claude/agents/verify-app.md
你是一个端到端测试专家。你的任务是验证应用功能:
1. 运行完整的测试套件
2. 检查所有关键路径
3. 验证边界情况
4. 确保用户体验"感觉对劲"
5. 如果发现问题,提供详细的修复步骤markdown使用方式#
# 在 Claude Code 中
使用 code-simplifier agent 优化刚才写的代码
使用 verify-app agent 验证应用是否正常工作bashCLAUDE.md(项目记忆文件)#
什么是 CLAUDE.md?#
CLAUDE.md 是 Claude Code 的”项目记忆文件”,记录项目结构、构建命令、代码规范、架构决策等信息,让 Claude Code 快速理解项目上下文。
CLAUDE.md 的作用#
| 作用 | 说明 |
|---|---|
| 📚 项目知识库 | 记录项目架构、技术栈、依赖关系 |
| 🚀 快速启动 | 自动读取,无需重复解释项目背景 |
| 🤝 团队协作 | 共享项目规范,确保团队理解一致 |
| 🔄 持续迭代 | 随项目演进自动更新 |
CLAUDE.md 最佳位置#
项目根目录/_CLAUDE.md ← 全局项目配置
src/.claude/_CLAUDE.md ← 模块级配置
.claude/_rules/auth.md ← 特定规则
~/.claude/_CLAUDE.md ← 用户级配置
优先级:特定规则 > 模块配置 > 项目配置 > 用户配置plaintextCLAUDE.md 示例#
完整示例#
# 项目名称: E-Commerce Platform
## 项目概述
这是一个基于 Node.js + React 的电商平台,支持商品管理、订单处理、支付集成等功能。
## 技术栈
- **前端:** React 18, TypeScript, Tailwind CSS, Redux Toolkit
- **后端:** Node.js 20, Express, TypeScript
- **数据库:** PostgreSQL 15, Redis 7
- **认证:** JWT, OAuth 2.0
- **测试:** Jest, Playwright
- **部署:** Docker, Kubernetes
## 项目结构
markdownsrc/ ├── frontend/ # React 前端 │ ├── components/ # 可复用组件 │ ├── pages/ # 页面组件 │ ├── store/ # Redux store │ └── utils/ # 工具函数 ├── backend/ # Node.js 后端 │ ├── controllers/ # 控制器 │ ├── services/ # 业务逻辑 │ ├── models/ # 数据模型 │ └── routes/ # API 路由 └── shared/ # 共享代码 └── types/ # TypeScript 类型定义
## 常用命令
### 开发环境
```bash
# 安装依赖
npm install
# 启动前端开发服务器
npm run dev:frontend
# 启动后端开发服务器
npm run dev:backend
# 同时启动前后端
npm run devplaintext构建与部署#
# 构建前端
npm run build:frontend
# 构建后端
npm run build:backend
# 构建所有
npm run build
# Docker 构建
docker-compose build
docker-compose upbash测试#
# 运行所有测试
npm test
# 前端单元测试
npm run test:frontend
# 后端单元测试
npm run test:backend
# E2E 测试
npm run test:e2e
# 测试覆盖率
npm run test:coveragebash代码质量#
# 代码格式化
npm run format
# 代码检查
npm run lint
# 类型检查
npm run type-checkbash代码规范#
命名规范#
- 文件名: kebab-case (user-profile.ts)
- 组件名: PascalCase (UserProfile)
- 函数/变量: camelCase (getUserProfile)
- 常量: UPPER_SNAKE_CASE (API_BASE_URL)
- 类型/接口: PascalCase (UserProfile)
Git 提交规范#
遵循 Conventional Commits:
feat: 新功能fix: 修复 bugdocs: 文档更新style: 代码格式调整refactor: 代码重构test: 测试相关chore: 构建/工具链更新
代码审查清单#
- 代码符合项目命名规范
- 添加了必要的注释
- 更新了相关文档
- 编写了/更新了测试
- 通过了所有测试
- 通过了 lint 检查
- 没有引入安全漏洞
架构决策#
ADR-001: 选择 TypeScript 而非 JavaScript#
日期: 2024-01-15 状态: 已接受 理由:
- 类型安全减少运行时错误
- 更好的 IDE 支持
- 代码可维护性更高
ADR-002: 采用微服务架构#
日期: 2024-02-20 状态: 已接受 理由:
- 便于团队并行开发
- 独立部署和扩展
- 技术栈灵活性
环境变量#
必需变量#
DATABASE_URL=postgresql://...
REDIS_URL=redis://...
JWT_SECRET=your-secret-key
API_BASE_URL=https://api.example.combash可选变量#
LOG_LEVEL=info
NODE_ENV=development
PORT=3000bash常见问题#
Q: 如何添加新的 API 端点?#
A:
- 在
backend/routes/创建路由文件 - 在
backend/controllers/创建控制器 - 在
backend/services/实现业务逻辑 - 添加测试用例
- 更新 API 文档
Q: 如何调试前端状态管理问题?#
A:
- 使用 Redux DevTools 浏览器扩展
- 在
src/frontend/store/添加日志 - 检查 action 和 reducer 逻辑
重要注意事项#
- 安全: 永远不要在代码中硬编码密钥或敏感信息
- 性能: 大数据查询必须使用分页
- 测试: 所有新功能必须包含测试
- 文档: API 变更必须更新文档
- 兼容性: 确保向后兼容,使用版本控制
相关资源#
### 生成 CLAUDE.md 的方式
####方式一:使用 `/init` 命令
```bash
# 在项目根目录
claude /initplaintextClaude Code 会自动扫描项目并生成初始 CLAUDE.md,包含:
- 构建和测试命令
- 目录结构说明
- 代码规范和架构决策
- 技术栈信息
方式二:手动创建#
# 创建基础文件
touch CLAUDE.md
# 让 Claude Code 帮助生成
claude "请根据当前项目结构生成 CLAUDE.md 文件"bash方式三:模块化规则#
# 在 .claude/rules/ 目录创建多个规则文件
.claude/rules/
├── auth.md # 认证相关规则
├── database.md # 数据库相关规则
├── api.md # API 设计规范
└── testing.md # 测试规范bash方式四:Memory Updates - 动态更新记忆#
# 直接告诉 Claude 更新知识
Update CLAUDE.md: always use bun instead of npm
Update CLAUDE.md: 不要使用 enum,改用 string union
# Claude 会自动把新知识写入记忆文件,无需手动编辑bashCLAUDE.md 的 AI 进化机制#
来自 Claude Code 创始人团队的实战经验:
核心理念#
让 Claude 在 Code Review 中自我迭代,越用越聪明
实战流程#
- 在 PR 中发现问题
- 让 Claude 记住教训
- Claude 自动更新
- 团队共同维护
示例:
# 在 GitHub PR 评论中
@claude 这里的代码使用了 enum,但我们项目规范要求使用 string union,请修复
# 在 PR 中直接告诉 Claude
@claude 请把这次的教训写入 CLAUDE.md:不要使用 enum,改用 string union
# Claude 会在 CLAUDE.md 中添加
## 代码规范更新 (2026-01-03)
### Enum vs String Union
- ❌ 不要使用 enum
- ✅ 改用 string union
- 理由:更好的类型推断和 Tree-shakingbash团队共同维护#
# 将 CLAUDE.md 签入 Git
git add CLAUDE.md
git commit -m "docs: 更新 CLAUDE.md 规范"
# 整个团队共享这份"行为准则"bash价值体现#
- 🧠 集体智慧: 每个团队成员的反馈都让 AI 更聪明
- 🔄 持续进化: Claude 不会重复犯同样的错误
- 📚 知识沉淀: 项目规范自动文档化
- 🤝 团队协作: 统一的 AI 助手理解团队偏好
实际案例#
# CLAUDE.md - 实际演进示例
## 初始版本 (第1周)
- 使用 TypeScript
- 测试覆盖率 > 80%
## 第1次更新 (第2周 - PR反馈)
+ 永远使用 bun 而不是 npm
+ 理由:启动速度快 10 倍
## 第2次更新 (第3周 - PR反馈)
+ 不要使用 enum,改用 string union
+ 理由:更好的类型推断
## 第3次更新 (第4周 - PR反馈)
+ 所有 API 必须添加错误处理
+ 使用 try-catch 包装所有 async 函数markdownHeadless 模式(无头模式)#
什么是 Headless 模式?#
Headless 模式是非交互式运行方式,输出结果直接流向标准输出,可集成到 Shell 脚本或 CI/CD 流程中。
使用场景#
| 场景 | 示例 |
|---|---|
| 🔄 CI/CD 集成 | 自动化代码审查 |
| 📜 脚本自动化 | 批量处理任务 |
| 🔍 快速分析 | 不需要交互的代码分析 |
| 📊 报告生成 | 自动生成文档 |
Headless 模式使用#
基本用法#
# 从管道输入
git diff | claude -p "解释这些更改"
# 从文件输入
cat file.txt | claude -p "总结这个文件"
# 直接指定
claude -p "检查代码质量" < src/main.jsbashCI/CD 集成示例#
# .github/workflows/claude-review.yml
name: Claude Code Review
on:
pull_request:
types: [opened, synchronize]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
- name: Install Claude Code
run: npm install -g @anthropic-ai/claude-code
- name: Run Code Review
run: |
git diff origin/main...HEAD | claude -p "审查这个 PR 的代码变更" > review.txt
- name: Comment PR
uses: actions/github-script@v6
with:
script: |
const fs = require('fs');
const review = fs.readFileSync('review.txt', 'utf8');
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: review
});yaml脚本自动化示例#
#!/bin/bash
# batch-process.sh
for file in src/**/*.js; do
echo "Processing $file..."
# 使用 Claude Code 分析代码
claude -p "检查文件 $file 的代码质量,包括:
1. 潜在的 bug
2. 性能问题
3. 安全漏洞
4. 代码规范违规" < "$file" > "reports/$(basename $file).md"
echo "✓ Completed $file"
done
echo "All files processed!"bash参考资源#
官方文档#
- Claude Code 官方文档 ↗ - Claude Code 的完整官方文档
开发指南参考博客#
- Claude Code 开发指南 ↗ - 详细的 Claude Code 使用指南和实战技巧