claude Code 速查指南

Claude Code · Mac 工作流指南
╔═════════════════╗ ║ > ready_ ║ ║ > claude --on ║ ╚═════════════════╝
Mac · Terminal · 2026

在终端里
与 Claude 共事。

这是一份为 Mac 开发者编写的 Claude Code 工作流地图 —— 从安装、日常命令、键盘快捷键,到 CLAUDE.md 记忆、MCP 扩展和真实工作流配方。 把它当作你的随身备忘录,敲 ⌘F 即可定位。

当前焦点编码 / 部署 / 日常学习
运行环境macOS · zsh / iTerm2
更新于2026.05 · v2.x
01

安装与启动 — 三种方式

Mac 上推荐用原生安装脚本;如果你是 Homebrew 重度用户,brew cask 一行搞定;前端工程师也可以走 npm 全局安装。

# 安装脚本会自动处理 PATH,不依赖 Node/Python
$ curl -fsSL https://claude.ai/install.sh | bash

# 验证
$ claude --version

# 升级
$ claude update
$ brew install --cask claude-code

# 之后用 brew 管理
$ brew upgrade --cask claude-code
# 需要 Node.js 18+
$ npm install -g @anthropic-ai/claude-code

# 若 npm 安装后官方建议迁移到原生:
$ claude install

首次启动

$ cd ~/my-project
$ claude

# 首次会引导浏览器登录 Anthropic 账号
# 之后凭据存储于 Mac 钥匙串,复用
建议

启动后立刻运行 /doctor,确认 API 连通性、Git 配置、MCP 服务都健康。

02

日常基本操作 — 从启动到结束

每天最常用的几条命令。建议把"继续上次会话"做成肌肉记忆,它能让你在多任务切换时不丢上下文。

# 进入项目并启动交互式会话
$ claude

# 带一个初始问题启动
$ claude "解释一下这个项目的架构"

# 单次执行后退出(适合写进脚本/Git Hook)
$ claude -p "为 utils/auth.ts 写一段中文文档注释"

# 管道输入:把日志/错误丢给它分析
$ cat error.log | claude -p "这是什么错误?怎么修?"

# 继续当前目录最近一次会话(保留全部上下文)
$ claude -c

# 从所有历史会话中挑选恢复
$ claude --resume
高频心法

不要每次都开新会话。claude -c 让你像翻开昨天笔记本继续写,所有读过的文件、做过的决策都还在。

03

斜杠命令 — 会话内的瑞士军刀

在交互式会话中输入 / 即可呼出菜单。按使用频次分组 —— 先掌握高频组,剩下的遇到再查。

每天都会用的

/help
列出所有可用命令与快捷键
/clear
清空当前对话历史,开新话题
/compact [指令]
压缩上下文。长会话快撑满时救命用,可指定保留重点
省 token
/cost
查看当前会话 token 消耗与花费
/model
切换模型 (Opus / Sonnet / Haiku)
/review
让 Claude 做一次代码审查,找 bug 和优化点

项目与记忆

/init
为项目生成 CLAUDE.md(项目说明书)
新项目必做
/memory
编辑 CLAUDE.md 内存文件
/add-dir <path>
把额外目录加进当前会话上下文
/agents
管理子代理,处理专门任务

账号与系统

/login · /logout
切换 / 登出 Anthropic 账户
/status
查看账户、订阅、系统状态
/config
查看 / 修改配置
/permissions
查看或更新 Claude 可执行的操作范围
/doctor
健康检查:API、Git、MCP、终端
出错先跑
/bug
把当前对话作为 bug 报告发给 Anthropic

集成与编辑器

/mcp
管理 MCP 服务器连接与授权
/pr_comments
查看 Pull Request 评论
/terminal-setup
配置 iTerm2 / VSCode 用 Shift+Enter 换行
推荐运行
/vim
开启 vim 模式 (插入/命令切换)
04

特殊语法 — @ # !

这三个符号是 Claude Code 的"魔法字符"。一旦用熟,输入效率翻倍。

@ — 引用文件、目录、URL

# 把单个文件喂给 Claude
> 帮我重构 @src/auth/login.ts

# 整个目录
> 对照 @src/components/ 中的风格,给我新写一个按钮

# 网页 URL(只读)
> 参考 @https://react.dev/learn 重写这段组件

# — 写入项目记忆 (CLAUDE.md)

# 在输入框开头打 #,回车后会追加到 CLAUDE.md
> # 本项目使用 pnpm,不要建议 npm 命令
> # 部署目标是 Vercel,环境变量在 .env.production

! — 执行 Bash 命令

# 不离开 Claude 会话直接跑 shell
> !git status
> !pnpm test
> !ls -la dist/
05

CLI 启动参数 — 脚本与自动化

把 Claude Code 当作 Unix 工具用:可管道、可脚本、可 Git Hook。

— 会话管理 —
$ claude -c # 继续最近会话 (--continue)
$ claude --resume # 交互选择历史会话
$ claude -r "abc123" "完成 PR" # 按 ID 恢复

— 非交互(脚本) —
$ claude -p "生成 changelog" # print 模式
$ claude -p --output-format json "解析此 diff"
$ git diff | claude -p "写一条 commit message"

— 系统提示 —
$ claude --append-system-prompt "始终用中文回答"

— 工具升级 —
$ claude update # 升级到最新版
$ claude mcp # 配置 MCP 服务器
⚠ 注意

--dangerously-skip-permissions 会跳过所有权限提示。只在沙盒容器或一次性任务中使用,永远不要在主机直接跑。

06

键盘快捷键 — Mac 专用版

注意:终端不同会影响部分快捷键。会话内按 ? 可查看当前环境实际生效的绑定。

会话内

快捷键作用
Return发送当前输入
Option + Return多行输入换行(无需配置)
Shift + Return换行(运行 /terminal-setup 后启用,iTerm2/VSCode)
Esc中断 Claude 当前思考 / 执行
Esc Esc编辑上一条消息(连按两下)
Tab命令 / 路径自动补全
翻阅历史输入
?显示本环境的快捷键列表
Ctrl + C取消当前输入;连按两下退出
Ctrl + D退出 Claude 会话
Ctrl + L清屏(保留历史)

IDE 扩展(VS Code / JetBrains)

快捷键作用
+ Return在 IDE 扩展中提交消息(默认绑定)
+ Shift + PVS Code 命令面板 → 搜 "Claude"
Mac 用户必做

启动后先运行 /terminal-setupShift + Return 配置为换行 —— 写多行 prompt 时手感最自然。

07

CLAUDE.md — 项目说明书

这是 Claude Code 整个体验的核心:每次会话启动它都会自动读 CLAUDE.md。把你希望它"永远记住"的事写在这里。

两种位置

路径作用域
<项目根>/CLAUDE.md项目级(团队共享,进 Git)
~/.claude/CLAUDE.md用户级(你所有项目都生效)

典型内容

# 项目名称
一个使用 Next.js 14 + Drizzle 的 SaaS。

## 技术栈
- pnpm,不要用 npm/yarn
- TypeScript strict 模式
- Tailwind,不引入其他 UI 库
- 测试:Vitest + Playwright

## 部署
- Staging: `pnpm deploy:staging`
- Production: 走 GitHub PR → main 自动部署

## 风格约定
- 函数组件 + Hooks,不写 class
- 文件命名 kebab-case
- API 错误统一从 lib/errors 抛

## 常见任务
- 新增 API:在 app/api/* 建路由,导出 GET/POST handler
- 加表:drizzle/schema.ts 改完跑 `pnpm db:push`
小技巧

不必一开始就写得很全。会话中边用边在输入框开头打 #,让 Claude 把约定自动追加进 CLAUDE.md,慢慢沉淀。

08

自定义命令 — 把重复活儿做成 /command

把你天天敲的那段 prompt 存成 Markdown 文件,下次只要 /命令名 就能调用。

# 项目级(团队共享,进 Git)
$ mkdir -p .claude/commands
$ cat > .claude/commands/deploy-check.md <<'EOF'
检查部署前 checklist:
1. 跑 pnpm test,必须全绿
2. pnpm build 无错误
3. 列出 .env 中所有 NEXT_PUBLIC_ 开头的变量
4. 给出本次发布的 commit 列表
EOF

# 用户级(所有项目可用)
$ mkdir -p ~/.claude/commands
$ echo "用中文一句话总结当前 git diff,作为 commit message" \
> ~/.claude/commands/commit.md

# 之后在 Claude 会话中调用
> /deploy-check
> /commit

命令文件还支持 $ARGUMENTS 占位、内嵌 bash、引用文件 (@) 等高级用法。

09

Skills 速查 — 给 Claude 一本专业手册

Skill 是一个文件夹,里面有一份 SKILL.md(YAML frontmatter + Markdown),可选 scripts/references/assets/。Claude 会根据描述自动调用 —— 相当于让它带着一本"专项操作手册"工作。同一份 SKILL.md 文件在 Claude Code、Cursor、Codex CLI、Gemini CLI 之间通用。

文件结构

# 个人级 — 所有项目可见
~/.claude/skills/<skill-name>/SKILL.md

# 项目级 — 通过 Git 与团队共享
.claude/skills/<skill-name>/SKILL.md

# 完整目录布局
my-skill/
├── SKILL.md ← YAML frontmatter + 指令(必需)
├── scripts/ ← 重复性任务的脚本
├── references/ ← 按需加载的参考文档
└── assets/ ← 模板、字体、图标等

SKILL.md 最简模板

---
name: pdf-fill
description: 填写 PDF 表单字段。当用户提到 PDF、表单、
合同填写、批量生成 PDF 时使用此 skill。
---

# PDF Fill

具体操作步骤:
1. 用 pypdf 打开文件
2. 用 form.fields 列出可填字段
3. 写入数据后另存为新文件

## Gotchas
- 不要尝试用 pypdf 处理 docx
- 加密 PDF 需要先 decrypt
写描述的秘诀

Claude 对 skill 有低触发倾向。description 里要"激进"一点 —— 多列同义词、用例、场景关键词,确保它认出该用这个 skill 的时机。这是 Anthropic 官方文档明确强调的。

三种安装方式

# 方式 1:从 plugin marketplace 装(最推荐)
> /plugin install pdf@claude-plugins-official

# 方式 2:npx 一键拉 GitHub skill
$ npx skills add anthropics/skills --skill pdf

# 方式 3:手动 clone 或复制目录
$ git clone https://github.com/anthropics/skills ~/tmp-skills
$ cp -r ~/tmp-skills/skills/pdf ~/.claude/skills/
$ claude # 重启会话即可识别

当下热门 Skills

frontend-design
让前端代码摆脱"AI 通用感"。打破 Inter 字体 / 紫渐变白底的统计中心。Anthropic 官方
官方 · 27 万+ 安装
pdf · docx · pptx · xlsx
官方文档处理四件套:填 PDF / 写 Word / 生成 PPT / 操作 Excel
官方 · 文档
skill-creator
用 Claude 帮你写新 skill 的元工具,自带模板和评估
官方 · 元工具
firecrawl
让 Claude 会爬虫、网页搜索、浏览器自动化
★ 周 11.7 万
code-reviewer
合并前的资深 reviewer 视角,找安全漏洞和性能问题
Agensi 第一
git-commit-writer
基于 diff 自动写规范 commit message
Git
pr-description-writer
分析改动,生成 PR 描述与 reviewer 提示
Git
readme-generator
扫项目自动生成结构化 README
文档
env-doctor
诊断 .env、依赖、Node 版本、端口冲突
运维
mcp-builder
官方:用对话方式造一个新的 MCP server
官方 · 进阶
webapp-testing
官方:基于 Playwright 的端到端测试编写
官方 · 测试
visual-explainer
生成 HTML 可视化页:架构图、diff 评审、数据表
★ 731
10

Plugins 与市场 — 一键打包的能力

Plugin 是分发格式,一个 plugin 可以打包多个 skills、hooks、子代理和 MCP 配置。简单记忆:你装 plugin,你用 skills。Claude Code 启动后默认连接官方市场 claude-plugins-official

/plugin 命令全套

# 打开浏览器:Installed / Discover 两个 Tab
> /plugin

# 从官方市场装(最简洁)
> /plugin install github@claude-plugins-official

# 添加第三方市场,再装其中的 plugin
> /plugin marketplace add obra/superpowers-marketplace
> /plugin install superpowers@superpowers-marketplace

# 查看已装 / 列出市场
> /plugin marketplace list

# 更新市场目录(如果遇到"找不到 plugin")
> /plugin marketplace update claude-plugins-official
⚠ 信任检查

Anthropic 明确说明:plugin 可以在你机器上执行任意代码。装第三方 plugin 前 —— 看仓库 star、看 maintainer、看最近 commit。Pro/Max 订阅自 2026.04 起已禁止部分第三方 agent 框架。

官方市场的明星合作伙伴

启动后直接 /plugin install <name>@claude-plugins-official 即可装:

github
issue / PR / 仓库元信息读写
官方合作
playwright
浏览器自动化、UI 测试、截图
官方合作
supabase
数据库、Auth、Storage 全栈接入
官方合作
figma
读设计稿、抽取 design token
官方合作
vercel
部署管理、环境变量、域名
官方合作
linear
issue / 项目管理
官方合作
sentry
线上错误监控与定位
官方合作
stripe · firebase
支付 / Google 全家桶
官方合作

社区热门市场与 Plugin

obra/superpowers
brainstorming → planning → TDD → 子代理协作 一整套工作流。已被官方收录,最有声誉的社区框架
★ 94k
xiaolai/claude-plugin-marketplace
cc-suite, tdd-guardian, docs-guardian, echo-sleuth 实用套件
套件
knowledge-work-plugins
非编码场景:品牌语调、营销、销售、生产力
非技术
cam · code-assistant-manager
命令行管理 74 个市场 + 1182 plugin 的元工具
元工具

去哪里发现新东西

站点定位
claude.com/plugins官方目录,最权威的起点
github.com/anthropics/skills官方 Skills 仓库(37.5k ★)
anthropics/claude-plugins-official官方 plugin 市场源码
skills.shVercel 维护的 Skills 搜索引擎
agensi.ioSkills 市场,按安装量排行
claudeskills.infoHub,658+ skills 分类浏览
claudepluginhub.com插件聚合站,覆盖第三方市场
aitmpl.com/plugins主题 / 行业向的插件目录
awesome-claude-plugins74 市场 / 1182 plugin,每日自动更新
awesome-claude-code手工精选清单(36.8k ★)
everything-claude-code聚合 firehose(141k ★)—— 想看全部
code.claude.com/docs官方文档:发现与安装插件
挑选三看

1) 最近一次 commit —— 昨天的更新是当下,去年的就是考古;2) 维护者背景 —— 真正在用的工程师比"做清单的人"更可信;3) star 不代表质量 —— 聚合 firehose 的 star 高,但精选清单可能更有用。

11

MCP 扩展 — 接外部世界

MCP (Model Context Protocol) 让 Claude Code 能调用外部服务:数据库、GitHub、浏览器、Slack、文件系统等等。

查看与添加

# 在会话内
> /mcp

# 在终端配置(生成 .mcp.json)
$ claude mcp add github
$ claude mcp add postgres
$ claude mcp list

常用 MCP 服务器

github
读写 issue / PR / 仓库元信息
postgres
直接查询数据库,让 Claude 写真实可跑的 SQL
filesystem
读写指定根目录外的文件
playwright / puppeteer
让 Claude 开浏览器跑 UI、截图反馈
slack
读频道消息、发部署通知
memory
长期记忆服务,跨项目持久化
12

工作流配方 — 真实场景

围绕你的三个核心场景(写代码 · 部署 · 日常学习)整理的几条可直接照搬的流程。

起一个新功能 / 改一个 bug
When 接到 issue,需要从 0 到 PR
$ cd ~/projects/myapp
$ claude

> @docs/architecture.md 帮我理解项目结构
> 现在我要做这个:<粘贴 issue 内容>
> 先告诉我你打算改哪些文件,先不要动

# Claude 给方案 → 你确认 / 修正 → 让它写代码

> 开始改吧
> !pnpm test
> /review
> !git checkout -b fix/xxx && git add . && git commit
部署前体检 + 一键发布
When 准备 push 到生产
$ claude -c # 接着原来的会话

> /deploy-check # 你自定义的命令
> !git log --oneline origin/main..HEAD # 看待发布的 commit
> 帮我总结这次发布的 release notes,中文,markdown
> !pnpm deploy:production

# 部署中想中断?按 Esc 一次即可
日常学习:搞懂一段陌生代码 / 一个新概念
When 翻别人代码、读源码、学新框架
$ cd /path/to/source
$ claude

> 这是 @src/,我以前没接触过这个项目
> 用 5 段话给我讲清楚架构,标出值得细看的入口文件
> 接下来挑 @src/core/scheduler.ts 逐行讲,
在每个有趣的设计点停下来问我"懂了吗?"

# 学完整理笔记
> 把刚才讲的整理成 markdown,存到 ~/notes/scheduler.md
长会话快撑爆了 — 续命
When 看到 token 警告 / 响应变慢
> /cost # 看一眼当前消耗
> /compact 重点保留 auth 模块的设计决策,
其他细节可以摘要

# 之后会话照常继续,上下文窗口又宽敞了
13

避坑与技巧 — 老用户的肌肉记忆

先讨论,再动手

在让 Claude 改代码前,让它先口头说出"打算改哪些文件、改成什么样"。这一步省掉的回滚远超过几条来回的成本。

用 @ 而不是粘贴

直接 @src/foo.ts 让 Claude 自己读文件。粘贴代码会污染上下文,文件引用则保留完整路径信息。

用 Esc 而不是 Ctrl+C

想中断 Claude 当前动作(比如它跑偏了),按一下 Esc 就好。Ctrl+C 会清空你正在写的内容,再按一下还会直接退出。

把权限收紧

/permissions 限制可执行的命令范围(比如默认拒绝 rm -rf 和远程推送)。生产仓库尤其重要。

多窗口并行

iTerm2 开多个标签页,每个标签 cd 到不同项目跑独立 claude。它们的会话历史互不影响。

⚠ 别提交泄密

CLAUDE.md 会进 Git。.env、API key、内部 URL 一律不要写进去;那些放在 ~/.claude/CLAUDE.md 用户级文件里。

⚠ 模型选择有成本

日常代码用 Sonnet 性价比最高。Opus 留给真正复杂的架构决策、棘手的 bug。/cost 经常看一眼。

<script> // === Copy buttons === document.querySelectorAll('.code .copy').forEach(btn => { btn.addEventListener('click', () => { const pre = btn.closest('.code').querySelector('pre'); const text = pre.innerText; navigator.clipboard.writeText(text).then(() => { btn.textContent = 'Copied ✓'; btn.classList.add('copied'); setTimeout(() => { btn.textContent = 'Copy'; btn.classList.remove('copied'); }, 1400); }); }); }); // === Tabs === document.querySelectorAll('.tab').forEach(tab => { tab.addEventListener('click', () => { const group = tab.parentElement; const target = tab.dataset.tab; group.querySelectorAll('.tab').forEach(t => t.classList.remove('active')); tab.classList.add('active'); // siblings of tabs container const parent = group.parentElement; parent.querySelectorAll('.tab-content').forEach(c => c.classList.remove('active')); parent.querySelector('#' + target).classList.add('active'); }); }); // === Search filter === const search = document.getElementById('searchInput'); search.addEventListener('input', e => { const q = e.target.value.trim().toLowerCase(); const targets = document.querySelectorAll('[data-search]'); if (!q) { targets.forEach(el => el.classList.remove('hidden')); document.querySelectorAll('section').forEach(s => s.style.display = ''); return; } targets.forEach(el => { const hay = (el.dataset.search + ' ' + el.innerText).toLowerCase(); if (hay.includes(q)) el.classList.remove('hidden'); else el.classList.add('hidden'); }); }); // === Active nav based on scroll === const sections = document.querySelectorAll('section[id]'); const navLinks = document.querySelectorAll('.nav a'); const observer = new IntersectionObserver(entries => { entries.forEach(entry => { if (entry.isIntersecting) { const id = entry.target.id; navLinks.forEach(a => { a.classList.toggle('active', a.getAttribute('href') === '#' + id); }); } }); }, { rootMargin: '-30% 0px -60% 0px' }); sections.forEach(s => observer.observe(s)); // === Keyboard: / to focus search === document.addEventListener('keydown', e => { if (e.key === '/' && document.activeElement.tagName !== 'INPUT') { e.preventDefault(); search.focus(); } if (e.key === 'Escape' && document.activeElement === search) { search.value = ''; search.dispatchEvent(new Event('input')); search.blur(); } }); </script>
posted @ 2026-05-22 14:21  言思宁  阅读(152)  评论(0)    收藏  举报