The Ultimate Claude Code Cheatsheet
Original article: https://mp.weixin.qq.com/s/KXtVEn08HOe8k2zktAqJ0w
Original by Tonydai sourceAICG 2025-11-11 10:36
Complete reference guide with commands, shortcuts, configuration, plugins, skills, MCP integration, and automation workflows
Quick Start
Install via curl (macOS/Linux)
Recommended installation method
curl -fsSL https://claude.ai/install.sh | bash
Install via Homebrew
Install using Homebrew on macOS
brew install --cask claude-code
Install via PowerShell (Windows)
Install using PowerShell on Windows
irm https://claude.ai/install.ps1 | iex
Install via npm
Install globally using npm (requires Node.js 18+)
npm install -g @anthropic-ai/claude-code
Launch Claude Code
在您的项目中Launch Claude Code
cd your-project && claude
Update to Latest Version
Keep Claude Code up to date
claude update
Keyboard Shortcuts
| Shortcut | Description |
|---|---|
! | Bash mode prefix |
@ | Reference file/folder |
\ | Line break (backslash + enter) |
Esc | Interrupt Claude response |
Esc+Esc | Open rollback menu (undo changes) |
Ctrl+R | Show full output/context |
Ctrl+V | Paste image |
Shift+Tab | Auto-accept("yolo 模式") |
Shift+Tab+Tab | Plan mode |
Cmd+Esc / Ctrl+Esc | Quick launch in IDE |
Cmd+Option+K / Alt+Ctrl+K | Insert file reference |
Configuration Management ### 📁 Configuration File Locations (Priority Order) 1. Enterprise:/etc/claude-code/managed-settings.json (Highest priority)
Project Local:.claude/settings.local.json
(Personal settings, Git ignored)Project Shared:.claude/settings.json
(Team settings)User Global: ~/.claude/settings.json
(Personal default settings)
View All Settings
List current configuration
claude config list
Get Setting Value
Check specific setting
claude config get <key>
Set Configuration
Change setting value
claude config set <key> <value>
Add to List Setting
Add value to array settings (like permissions)
claude config add <key> <value>
Remove from List
Remove value from array setting
claude config remove <key> <value>
Checkpoints - Undo and Rollback
⏮️ 自动安全网
Claude 代码自动跟踪所有文件编辑,让您在出现Issue时快速恢复到之前的状态。
⌨️ RollbackCommand
| Command | Description |
|---|---|
Esc+Esc | 打开Rollback菜单恢复之前的状态 |
/rewind | 通过Slash Commands打开Rollback菜单 |
| ### ✨ Rollback选项 选项 | Description |
|---|---|
| 自动跟踪 | 每次用户提示都会创建新检查点 |
| 对话Rollback | 恢复到之前的用户消息,同时保留代码 |
| 代码Rollback | 恢复文件更改,同时保留对话 |
| 完全Rollback | 同时恢复代码和对话到之前状态 |
⚠️ 限制 - Bash 更改无法追踪: 通过 bash Command(rm, mv, cp)修改的文件无法撤销
外部更改无法追踪:
Claude 代码外的手动编辑不会被捕获非版本控制:
检查点是对 Git 的补充,但不能替代它
💡 Using Checkpoints进行快速恢复,使用 Git 进行永久历史记录
Slash Commands - 交互式Session控制
⚡ 交互式SessionCommand
在 Claude 代码聊天界面中直接输入Command来控制 Claude 的行为。
📋 内置Command
| Command | Description |
|---|---|
/add-dir | 添加额外工作目录 |
/agents | 管理自定义 AI 子代理进行专项任务 |
/bug | 报告错误(发送对话给 Anthropic) |
/clear | 清除对话历史 |
/compact [指令] | 压缩对话并可选聚焦指令 |
/config | 查看/修改Configuration |
/cost | 显示令牌使用统计 |
/doctor | 检查 Claude 代码Installation状态 |
/help | 获取使用Help |
/init | 使用 CLAUDE.md 指南初始化项目 |
/login | 切换 Anthropic 账户 |
/logout | 登出 Anthropic 账户 |
/mcp | 管理 MCP 服务器连接和 OAuth 认证 |
/memory | 编辑 CLAUDE.md 记忆文件 |
/model | 选择或更改 AI 模型 |
/permissions | 查看或Update权限 |
/pr_comments | 查看拉取请求评论 |
/review | 请求Code Review |
/rewind | Rollback对话和/或代码 (Esc+Esc) |
/sandbox | 启用带文件系统和网络隔离的安全沙箱工具 |
/status | 查看账户和系统状态 |
/terminal-setup | Installation Shift+Enter 键绑定 (iTerm2/VSCode) |
/usage | 显示计划使用限制和速率限制状态(仅订阅计划) |
/vim | 进入 vim 模式进行交替插入/Command模式 |
🎯 自定义Slash Commands模板
基础项目Command
创建简单的项目特定Command 📁 保存位置: .claude/commands/optimize.md
分析这段代码的性能Issue并建议优化方案:
个人Command
创建适用于所有项目的用户级Command 📁 保存位置: ~/.claude/commands/security-review.md
审查这段代码的安全漏洞:
带全部参数的Command
使用 $ARGUMENTS 占位符表示所有参数 📁 保存位置: .claude/commands/fix-issue.md
按照我们的编码标准修复Issue #$ARGUMENTS
带位置参数的Command
使用 1, 2, $3 表示单个参数 📁 保存位置: .claude/commands/review-pr.md
---
参数提示: [pr编号] [优先级] [负责人]
描述: 按优先级和负责人审查拉取请求
---
审查 PR #$1,优先级 $2,分配给 $3。
重点关注安全性、性能和代码风格。
Git 提交Command
带 bash 执行和文件引用的高级Command 📁 保存位置: .claude/commands/commit.md
---
允许工具: Bash(git add:*), Bash(git status:*), Bash(git commit:*)
参数提示: [消息]
描述: 创建 git 提交
---
## 上下文
- 当前 git 状态: !`git status`
- 当前 git 差异: !`git diff HEAD`
- 当前分支: !`git branch --show-current`
- 近期提交: !`git log --oneline -10`
## 任务
基于以上更改,创建单个 git 提交。
带模型覆盖的Command
Specify Model并禁用自动调用 📁 保存位置: .claude/commands/deep-analysis.md
---
描述: 执行深度代码分析
模型: claude-opus-4-1-20250805
禁用模型调用: true
---
对此代码库进行全面分析,重点关注:
- 架构模式
- 潜在的可扩展性Issue
- 安全漏洞
- 性能瓶颈
💡 使用技巧
项目Command:
存储在 .claude/commands/
中(与团队共享)个人Command:
存储在 ~/.claude/commands/
中(所有项目可用)参数:
使用 $ARGUMENTS
占位符表示动态valueBash 执行:
使用 !Command
在处理前运行Command文件引用:
使用 @文件名
包含文件内容MCP Command:
格式: /mcp__服务器__提示名称
Headless Mode - 程序化使用
🤖 非交互式运行 Claude 代码
使用 --print
(或 -p
)实现自动化、脚本和 CI/CD 管道。非常适合 SRE 机器人、自动Code Review和代理集成。
📋 关键无头Command
| Command | Description |
|---|---|
claude -p "查询" | 非交互模式,打印结果并退出 |
claude -p --output-format json "查询" | 以 JSON 格式输出带元数据 |
claude -p --output-format stream-json "查询" | 实时流式传输 JSON 消息 |
claude -c -p "查询" | 非交互式继续最近对话 |
claude --resume <SessionID> -p "查询" | 非交互式恢复特定Session |
| `echo "查询" | claude -p` |
claude --verbose -p "查询" | Enable verbose logging用于调试 |
claude --max-turns 3 -p "查询" | 在非交互模式中限制代理轮次 |
💼 实际案例 #### SRE 事件响应
自动化事件调查
claude -p "分析这些错误" \
--append-system-prompt "你是 SRE 专家" \
--output-format json \
--allowedTools "Bash,Read,mcp__datadog"
安全审计
自动化 PR 安全审查
gh pr diff 123 | claude -p \
--append-system-prompt "你是安全工程师" \
--output-format json \
--allowedTools "Read,Grep" > audit.json
多轮Session
跨多个Command保持上下文
session_id=$(claude -p "开始审查" --output-format json | jq -r '.session_id')
claude --resume "$session_id" -p "检查合规性"
claude --resume "$session_id" -p "生成摘要"
📊 输出格式
text (默认):
纯文本响应json:
带元数据的结构化数据(成本、持续时间、SessionID)stream-json:
实时处理的消息流
💡 使用 JSON 格式进行程序化解析和自动化
代理技能 - 模块化能力
🧠 什么是代理技能?
技能是扩展 Claude 功能的模块化能力。与Slash Commands(用户调用)不同,技能是模型调用的——Claude 会根据上下文自主使用它们。
位置:.claude/skills/
(项目) 或 ~/.claude/skills/
(个人)结构:
包含 SKILL.md 的目录 + 可选脚本和资源发现:
基于描述和上下文自动发现
📋 技能设置Command
| Command | Description |
|---|---|
mkdir -p .claude/skills/技能名称 | 创建项目技能目录 |
mkdir -p ~/.claude/skills/技能名称 | 创建个人技能目录 |
cat > .claude/skills/我的技能/SKILL.md | 创建技能定义文件 |
🎯 技能模板 #### 简单技能
基础单文件技能 📁 .claude/skills/commit-helper/SKILL.md
---
名称: 生成提交消息
描述: 根据 git 差异生成清晰的提交消息。在编写提交消息或审查暂存更改时使用。
---
# 生成提交消息
## 指令
1. 运行 `git diff --staged` 查看更改
2. 我将提供包含以下内容的提交消息:
- 不超过 50 字符的摘要
- 详细描述
- 受影响的组件
## Best Practices
- 使用现在时
- 解释内容和原因,而非方式
带工具权限的技能
限制工具访问的技能 📁 .claude/skills/code-reviewer/SKILL.md
---
名称: Code Review员
描述: 审查代码的Best Practices和潜在Issue。在审查代码、检查 PR 或分析代码质量时使用。
允许工具: Read, Grep, Glob
---
# Code Review员
## 审查清单
1. 代码组织和结构
2. 错误处理
3. 性能考虑
4. 安全Issue
5. 测试覆盖率
🔄 技能与Slash Commands的区别
Slash Commands:
用户调用(输入 /Command
),简单提示,单文件代理技能:
模型调用(自动),复杂能力,多文件 + 脚本
💡 使用技能处理综合工作流,使用Command处理快速提示
插件 - 扩展 Claude 代码
🧩 什么是插件?
插件通过自定义Command、代理、钩子、技能和 MCP 服务器扩展 Claude 代码。从市场Installation或创建自己的插件。
📋 插件管理Command
| Command | Description |
|---|---|
/plugin | 打开插件管理界面 |
/plugin marketplace add <URL或路径> | 添加插件市场 |
/plugin install <名称>@<市场> | 从市场Installation插件 |
/plugin enable <名称>@<市场> | 启用禁用的插件 |
/plugin disable <名称>@<市场> | 禁用插件但不卸载 |
/plugin uninstall <名称>@<市场> | 完全移除插件 |
💡 Quick Start示例 #### 添加 GitHub 市场
从 GitHub 添加插件市场
claude mcp add marketplace your-org/claude-plugins
Installation插件
从市场Installation特定插件
/plugin install formatter@your-org
本地开发市场
为插件开发添加本地市场
/plugin marketplace add ./dev-marketplace
✨ 插件功能
自定义Command:
为工作流添加Slash Commands专业代理:
部署特定任务的专家子代理代理技能:
打包 Claude 可发现的能力自动化钩子:
在 Claude 代码事件上运行脚本MCP 服务器:
连接到外部工具和服务
MCP 服务器与扩展
🔌 模型上下文协议 (MCP)
通过外部工具和集成扩展 Claude 代码。MCP 服务器提供浏览器自动化、数据库访问和 API integration等额外功能。
📋 MCP 管理Command
| Command | Description |
|---|---|
claude mcp add <名称> <Command> [参数...] | 添加带Command的 MCP 服务器 |
claude mcp add --transport sse <名称> <URL> | 添加 SSE 传输的 MCP 服务器 |
claude mcp add --transport http <名称> <URL> | 添加 HTTP 传输的 MCP 服务器 |
claude mcp list | 列出已Installation的 MCP 服务器 |
claude mcp remove <名称> | 移除 MCP 服务器 |
⚡ 热门 MCP Integration #### Airtable
读写记录,管理数据库和表格
claude mcp add --transport stdio airtable --env AIRTABLE_API_KEY=您的密钥 -- npx -y airtable-mcp-server
Asana
与您的 Asana 工作区交互
claude mcp add --transport sse asana https://mcp.asana.com/sse
Atlassian
管理 Jira 工单和 Confluence 文档
claude mcp add --transport sse atlassian https://mcp.atlassian.com/v1/sse
Box
访问企业内容并自动化工作流
claude mcp add --transport http box https://mcp.box.com/
Canva
浏览、总结、自动填充和生成 Canva 设计
claude mcp add --transport http canva https://mcp.canva.com/mcp
ClickUp
任务管理,项目跟踪
claude mcp add --transport stdio clickup --env CLICKUP_API_KEY=您的密钥 --env CLICKUP_TEAM_ID=您的团队 -- npx -y @hauptsache.net/clickup-mcp
Cloudflare
构建应用,分析流量,管理安全
claude mcp add --transport http cloudflare https://mcp.cloudflare.com/mcp
Cloudinary
上传、管理、转换媒体资源
claude mcp add --transport http cloudinary https://mcp.cloudinary.com/mcp
Daloopa
高质量基础财务数据
claude mcp add --transport http daloopa https://mcp.daloopa.com/server/mcp
Figma
在完整 Figma 上下文中生成更好的代码
claude mcp add --transport http figma https://mcp.figma.com/mcp
Fireflies
从会议记录中提取见解
claude mcp add --transport http fireflies https://api.fireflies.ai/mcp
GitHub
管理仓库、PR 和Issue
claude mcp add --transport http github https://api.githubcopilot.com/mcp/
HubSpot
访问和管理 HubSpot CRM 数据
claude mcp add --transport http hubspot https://mcp.hubspot.com/anthropic
Hugging Face
访问 Hugging Face Hub 和 Gradio 应用
claude mcp add --transport http huggingface https://huggingface.co/mcp
Intercom
访问客户对话和工单
claude mcp add --transport http intercom https://mcp.intercom.com/mcp
invideo
构建视频创建能力
claude mcp add --transport sse invideo https://mcp.invideo.io/sse
Jam
通过访问 Jam 记录进行 AI 代理调试
claude mcp add --transport http jam https://mcp.jam.dev/mcp
Linear
Issue跟踪和项目管理
claude mcp add --transport http linear https://mcp.linear.app/mcp
Monday
管理 monday.com 看板和项目
claude mcp add --transport http monday https://mcp.monday.com/mcp
Netlify
创建、部署和管理网站
claude mcp add --transport http netlify https://netlify-mcp.netlify.app/mcp
Notion
阅读文档,Update页面,管理任务
claude mcp add --transport http notion https://mcp.notion.com/mcp
PayPal
支付处理和交易管理
claude mcp add --transport http paypal https://mcp.paypal.com/mcp
Plaid
银行数据和金融账户链接
claude mcp add --transport sse plaid https://api.dashboard.plaid.com/mcp/sse
Playwright
高级浏览器自动化
claude mcp add --transport stdio playwright -- npx @playwright/mcp@latest
Puppeteer
浏览器自动化
claude mcp add --transport stdio puppeteer -- npx -y @modelcontextprotocol/server-puppeteer
Sentry
监控错误,调试生产Issue
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
Socket
依赖项的安全分析
claude mcp add --transport http socket https://mcp.socket.dev/
Square
支付、库存、订单等
claude mcp add --transport sse square https://mcp.squareup.com/sse
Stripe
支付处理和订阅管理
claude mcp add --transport http stripe https://mcp.stripe.com
Stytch
Configuration和管理认证服务
claude mcp add --transport http stytch http://mcp.stytch.dev/mcp
Supabase
Database operations
claude mcp add --transport stdio supabase --env SUPABASE_ACCESS_TOKEN=您的令牌 -- npx -y @supabase/mcp-server-supabase@latest
Vercel
管理项目、部署和日志
claude mcp add --transport http vercel https://mcp.vercel.com/
Workato
访问应用、工作流和数据
claude mcp add --transport http workato https://mcp.workato.com/mcp
Zapier
连接 8,000+ 应用
claude mcp add --transport http zapier https://mcp.zapier.com/mcp
Git 工作树 - 并行开发
🚀 为何在 Claude 代码中使用 Git 工作树?
无上下文丢失:
每个 Claude Session保持完整的项目理解并行工作:
在继续功能开发的同时处理热修复安全实验:
在完全隔离的环境中测试高风险更改模型比较:
在相同任务上运行不同 AI 模型零切换成本:
不再需要 git stash、checkout、重启循环
📋 基本工作树Command
| Command | Description |
|---|---|
git worktree add <路径> <分支> | 使用现有分支创建工作树 |
git worktree add <路径> -b <分支> <起点> | 使用新分支创建工作树 |
git worktree list | 列出所有工作树及其分支 |
git worktree remove <路径> | 移除工作树目录 |
git worktree prune | 清理工作树引用 |
git worktree move <工作树> <新路径> | 移动工作树到新位置 |
💡 强大工作流示例 #### 并行功能开发
同时处理多个功能
git worktree add ../myapp-auth -b feature/auth main
git worktree add ../myapp-api -b feature/api main
cd ../myapp-auth && claude
cd ../myapp-api && claude
开发中处理热修复
在不丢失上下文的情况下处理紧急修复
git worktree add ../myapp-hotfix -b hotfix/critical main
cd ../myapp-hotfix
claude "修复关键错误"
# 原始工作在主目录中继续
安全实验测试
在隔离环境中测试高风险更改
git worktree add ../myapp-experiment -b experiment/refactor main
cd ../myapp-experiment
claude "重构整个认证系统"
# 如果失败,只需删除目录
模型比较
比较不同的 AI 实现
git worktree add ../ml-sonnet -b experiment/sonnet main
git worktree add ../ml-opus -b experiment/opus main
cd ../ml-sonnet && claude --model sonnet
cd ../ml-opus && claude --model opus
Code Review准备
在不影响主要工作的情况下优化代码
git worktree add ../myapp-review -b review/cleanup feature-branch
cd ../myapp-review
claude "添加文档、测试并清理代码风格"
git merge review/cleanup
子代理 - 专业 AI 助手
🤖 为何使用子代理?
上下文保留:
每个子代理与主对话有独立的上下文专业专长:
为特定领域和任务微调的提示可重用工作流:
跨项目并与团队共享子代理工具控制:
为安全性按子代理授予特定工具访问权限自动委派:
Claude 主动使用合适的子代理
📁 子代理位置
项目子代理:.claude/agents/
(Highest priority,团队共享)用户子代理: ~/.claude/agents/
(个人,所有项目)文件格式:
带 YAML 前言的 Markdown
📋 基本子代理Command
| Command | Description |
|---|---|
/agents | 打开子代理管理界面 |
claude "使用 [名称] 子代理来..." | 显式调用特定子代理 |
mkdir -p .claude/agents | 创建项目子代理目录 |
mkdir -p ~/.claude/agents | 创建用户子代理目录 |
🎯 开箱即用子代理模板 #### Code Review员
编写/修改代码后的专家Code Review 📁 保存位置: .claude/agents/code-reviewer.md
---
名称: Code Review员
描述: 专家Code Review专员。主动审查代码质量、安全性和可维护性。在编写或修改代码后立即使用。
工具: Read, Grep, Glob, Bash
模型: 继承
---
您是确保代码质量和安全性的高级Code Review员。
调用时:
1. 运行 git diff 查看近期更改
2. 关注修改的文件
3. 立即开始审查
审查清单:
- 代码简洁易读
- 函数和变量命名恰当
- 无重复代码
- 正确的错误处理
- 无暴露的密钥或 API key
- 已实现输入验证
- 良好的测试覆盖率
- 已处理性能Issue
按优先级提供反馈:
- 关键Issue(必须修复)
- 警告(应该修复)
- 建议(考虑改进)
包含具体修复Issue的示例。
调试器
针对错误和测试失败的调试专家 📁 保存位置: .claude/agents/debugger.md
---
名称: 调试器
描述: 错误、测试失败和意外行为的调试专家。在遇到任何Issue时主动使用。
工具: Read, Edit, Bash, Grep, Glob
模型: sonnet
---
您是专门从事根本原因分析的专家调试员。
调用时:
1. 捕获错误信息和堆栈跟踪
2. 确定复现步骤
3. 隔离失败位置
4. 实施最小修复
5. 验证Solution有效
调试流程:
- 分析错误信息和日志
- 检查最近的代码更改
- 形成和测试假设
- 添加策略性调试日志
- 检查变量状态
对每个Issue提供:
- 根本原因解释
- 支持诊断的证据
- 具体代码修复
- 测试方法
- 预防建议
专注于修复根本Issue,而非仅解决症状。
数据科学家
SQL 和 BigQuery 的数据分析专家 📁 保存位置: .claude/agents/data-scientist.md
---
名称: 数据科学家
描述: SQL 查询、BigQuery Action和数据洞察的数据分析专家。在数据分析任务中主动使用。
工具: Bash, Read, Write
模型: opus
---
您是专门从事 SQL 和 BigQuery 分析的数据科学家。
调用时:
1. 理解数据分析需求
2. 编写高效的 SQL 查询
3. 在适当时使用 BigQuery Command行工具 (bq)
4. 分析和总结结果
5. 清晰呈现发现
关键实践:
- 编写带适当过滤器的优化 SQL 查询
- 使用合适的聚合和连接
- 包含解释复杂逻辑的注释
- 格式化结果以提高可读性
- 提供数据驱动的建议
始终确保查询高效且成本效益高。
💡 使用技巧
自动调用:
在描述中包含"主动"或"必须使用"显式调用: "使用Code Review员子代理检查我的代码"
链式调用: "先使用调试器再使用优化器子代理"
工具限制:
仅为安全和专注授予必要工具团队共享:
将项目子代理纳入版本控制
📝 子代理文件格式
---
名称: 您的子代理名称
描述: 何时调用此子代理
工具: Read, Edit, Bash # 可选 - 如果省略则继承全部
---
您的子代理System Prompt在此处。
包含具体指令、示例和约束。
定义子代理在其领域内
解决Issue的角色、能力和方法。
权限与安全
🔒 开箱即用权限模板
为不同安全级别复制完整的 settings.json Configuration。保存到项目的 .claude/settings.json
。
⚠️ MCP Tools权限
**不支持通配符:*mcp__github__
无效✅ 批准服务器的所有工具: "allow": ["mcp__github"]
✅ 批准特定工具: "allow": ["mcp__github__get_issue"]
🏢 企业Configuration
托管设置: /etc/claude-code/managed-settings.json
托管 MCP: /etc/claude-code/managed-mcp.json
MCP 允许/拒绝列表:
通过 allowedMcpServers
和 deniedMcpServers
控制员工可使用的 MCP 服务器
💡 拒绝列表优先级绝对高于允许列表
基础安全
阻止敏感文件,允许常见开发Command 💡 大多数项目的良好起点
{
"permissions": {
"allow": [
"Bash(npm run *)",
"Bash(git status)",
"Bash(git diff)",
"Bash(git add *)",
"Bash(git commit *)"
],
"ask": [
"Bash(git push:*)",
"Bash(npm install *)"
],
"deny": [
"Read(./.env*)",
"Read(./secrets/**)",
"Read(./**/credentials*)",
"Bash(rm -rf:*)",
"Bash(curl:*)"
]
}
}
严格安全
敏感项目的最高安全性 💡 适用于生产系统或敏感代码库
{
"permissions": {
"ask": [
"Bash(*)",
"Write(*)",
"Edit(*)"
],
"deny": [
"Read(./.env*)",
"Read(./secrets/**)",
"Read(./config/**)",
"Read(./**/credentials*)",
"Read(./**/*.key)",
"Read(./**/*.pem)",
"WebFetch",
"Bash(curl:*)",
"Bash(wget:*)",
"Bash(ssh:*)"
]
}
}
Slash Commands权限
控制 Claude 可调用的Slash Commands 💡 限制自动Command执行
{
"permissions": {
"allow": [
"SlashCommand:/commit",
"SlashCommand:/review-pr:*"
],
"deny": [
"SlashCommand"
]
}
}
企业 MCP 限制
企业 MCP 服务器允许/拒绝列表示例 💡 控制可使用的 MCP 服务器
{
"allowedMcpServers": [
{
"serverName": "github"
},
{
"serverName": "sentry"
},
{
"serverName": "company-internal"
}
],
"deniedMcpServers": [
{
"serverName": "filesystem"
}
]
}
钩子 - 自动化与控制
⚠️ 安全警告
钩子使用您的凭证自动执行 shell Command。添加前务必审查钩子代码。恶意钩子可能损坏您的系统或窃取数据。 使用钩子自动化格式化、日志记录、通知和自定义权限,而非依赖 Claude 记住这些任务。
📋 钩子事件
| 事件 | Description |
|---|---|
PreToolUse | 在工具调用前运行(可阻止调用) |
PostToolUse | 在工具调用完成后运行 |
UserPromptSubmit | 在用户提交提示后、Claude 处理前运行 |
Notification | 在 Claude 代码发送通知时运行 |
Stop | 在 Claude 代码完成响应时运行 |
SubagentStop | 在子代理任务完成时运行 |
PreCompact | 在压缩Action前运行 |
SessionStart | 在 Claude 代码启动/Resume Session时运行 |
SessionEnd | 在 Claude 代码Session结束时运行 |
| ### 🛠️ 钩子管理Command Command | Description |
|---|---|
/hooks | 打开钩子Configuration界面 |
claude --debug | 运行调试输出查看钩子执行 |
mkdir -p .claude/hooks | 创建项目钩子目录 |
chmod +x .claude/hooks/script.sh | 使钩子脚本可执行 |
🎯 开箱即用钩子示例 #### 自动格式化代码
在编辑文件上运行 prettier事件: PostToolUse****匹配器: Edit|Write
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "npx prettier --write $FILE_PATH"
}
]
}
]
}
}
记录活动
记录所有 Claude Session活动事件: Stop
{
"hooks": {
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "echo \"$(date): $CONVERSATION_SUMMARY\" >> ~/.claude/activity.log"
}
]
}
]
}
}
🏗️ 钩子结构与技巧
设置位置: ~/.claude/settings.json
(用户) 或 .claude/settings.json
(项目)匹配器:
匹配工具名称(如 Bash
, Edit|Write
, *
)项目脚本:
相对路径使用 $CLAUDE_PROJECT_DIR**退出代码:**0
=成功, 2
=阻止并显示给 Claude, 其他=错误JSON 输入:
钩子通过 stdin 接收Session数据(使用 jq
解析)调试:
使用 claude --debug
查看钩子执行详情
PDF 和 PNG 下载
Printable Version
专为打印或桌面参考设计的特殊版本。包含所有基本Shortcut、Command、Configuration和File Locations的紧凑格式。

Claude 代码速查手册 - 包含Shortcut、Command和Configuration的Printable Version
