ykdojo 在 GitHub 上整理了 45 个 Claude Code 实战技巧,获得 8100+ Star,涵盖自定义状态栏脚本、系统提示瘦身一半、Gemini CLI 协作、容器运行等进阶用法。本文整理其中最有价值的技巧。
基础效率篇
Tip 0:自定义状态栏
Claude Code 底部状态栏可以自定义显示内容。作者提供了一个脚本,让状态栏显示当前会话的 Token 用量、成本预估和模型名称,一眼看出当前消耗情况。
在 .claude/settings.json 里配置 statusBarContent 字段,或使用仓库提供的脚本自动更新。
Tip 1:掌握核心 Slash 命令
重点记住这 8 个:
/clear - 清除全部上下文,重新开始
/compact - 压缩对话历史,保留摘要
/diff - 查看所有变更的交互式 diff
/rewind - 回退到上一个 Checkpoint
/plan - 进入只读规划模式
/resume - 恢复之前的会话
/memory - 查看和编辑 CLAUDE.md 文件
/cost - 查看当前会话的 Token 和费用
Tip 2:用语音跟 Claude Code 交流
结合系统语音输入(macOS 用 Dictation,或第三方如 Whisper)直接说话描述需求,Claude Code 实时处理语音转文字。
对于描述复杂需求特别有效——说比打字快,而且更自然。/voice 命令(按住 Space 推送)也是原生选项。
Tip 4:配合 GitHub CLI 使用
安装 gh,让 Claude Code 可以直接操作 GitHub:
# 让 Claude Code 可以直接创建 PR
gh pr create --title "..." --body "..."
# 查看 CI 状态
gh pr checks
# 合并(满足条件时)
gh pr merge --auto --squash在 CLAUDE.md 里加入:当 PR 审查通过且 CI 绿了,自动用 squash merge 合并。
Tip 7:设置常用终端别名
# 在 ~/.zshrc 或 ~/.bashrc 里
alias cc="claude" # 快速启动
alias ccp="claude -p" # 打印模式
alias ccc="claude -c" # 继续上次会话
alias ccr="claude --resume" # 恢复指定会话
alias ccw="claude -w" # 在新 worktree 里
# 组合别名
alias cc-review="git diff main | claude -p 'security review'"
alias cc-explain="claude -p 'explain the last git commit in simple terms'"上下文管理篇
Tip 5:AI 上下文就像牛奶,趁新鲜用!
核心原则:上下文是易腐品。
- 较早的对话内容随着上下文增长逐渐被"推远"
- 30-40 条消息后,早期的规划和约束的影响力大幅下降
- 与其等到 Claude 开始"忘事",不如主动
/compact
最佳实践:每完成一个小任务就 /compact,保持上下文聚焦。
Tip 8:主动压缩上下文,不要被动等待
区分 /compact 和 /clear:
- 需要保留任务状态(当前在某个功能中间)→ 用
/compact - 完全切换任务(上一件事已完成)→ 用
/clear
技巧:在 /compact 时加提示词:
/compact 保留:正在修改 auth.ts 的 JWT 验证逻辑,已完成 login 函数,还需要处理 refresh token
这样压缩后的摘要会优先保留你指定的关键信息。
Tip 13:搜索你的会话历史
会话历史存储在 ~/.claude/projects/ 目录下,可以用 grep 搜索:
# 搜索提到某个函数名的历史会话
grep -r "handleAuthentication" ~/.claude/projects/ --include="*.json" -l
# 搜索最近 7 天的会话
find ~/.claude/projects/ -name "*.json" -newer $(date -d "7 days ago" +%Y-%m-%d) | xargs grep -l "keyword"也可以在 Claude Code 内直接用 /resume 后用 / 搜索历史。
Tip 23:克隆/Fork 对话,半克隆对话
Fork 会话:创建一个新 ID 的会话,但继承当前完整上下文。
claude -c --fork-session适合:想尝试一个不同的实现方向,但不想破坏当前会话。
半克隆(Half-clone):只把最重要的部分复制到新会话。
手动操作:运行 /compact,把压缩后的摘要复制出来,在新的 /clear 会话里粘贴这个摘要作为起点。
进阶技术篇
Tip 11:用 Gemini CLI 作为 Claude Code 的助手
当 Claude Code 需要访问被限制的网站(如某些需要 Google 搜索的内容),可以让 Gemini CLI 帮忙搜索,再把结果传给 Claude Code。
# 先用 Gemini 搜索
gemini "搜索关于 X 的最新文档"
# 把结果通过管道传给 Claude Code
gemini "search for React 19 migration guide" | claude -p "根据这个指南,帮我分析我们的代码需要哪些改动"进化版:在 CLAUDE.md 里告诉 Claude Code:当需要搜索某类信息时,调用 gemini CLI 工具。
Tip 15:把系统提示削减一半
默认的系统提示很长,但大部分内容适用于通用场景,你的项目可能不需要那么多。
用 --bare flag 绕过默认系统提示相关的部分:
claude --bare配合自定义 --append-system-prompt-file 加入项目专用的精简提示:
claude --bare --append-system-prompt-file ./my-lean-system-prompt.txt这样可以显著减少每次请求的 Token 消耗,尤其对高频 API 调用有用。
Tip 16:Git Worktree 并行处理多个分支
# 创建两个独立 worktree
git worktree add ../feature-a feature/user-auth
git worktree add ../feature-b feature/payment-flow
# 在各自目录里独立运行 Claude Code
cd ../feature-a && claude # Terminal 1
cd ../feature-b && claude # Terminal 2
# 或者直接用 -w flag
claude -w feature/user-auth # Terminal 1
claude -w feature/payment-flow # Terminal 2两个 Claude Code 共享 git 历史,但各自有完全独立的工作目录和 Claude 上下文。
Tip 21:在容器里运行高风险任务
对于需要 --dangerously-skip-permissions 的长时间任务,在 Docker 容器里运行更安全:
# Dockerfile
FROM ubuntu:22.04
RUN apt-get update && apt-get install -y curl git nodejs npm
RUN curl -sSL https://claude.ai/install.sh | bash
WORKDIR /workspace
COPY . .# 构建容器
docker build -t claude-sandbox .
# 在容器里运行 Claude Code(完全权限,但隔离在容器里)
docker run -it --rm \
-e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY \
-v $(pwd)/output:/workspace/output \
claude-sandbox \
claude --dangerously-skip-permissions -p "完成完整的重构任务,把结果写到 output/ 目录"容器的好处:
- 即使出了问题,最坏只是容器里的环境被破坏
- 主机文件系统安全
- 可以用
-v挂载特定目录获取输出
Tip 24:用 realpath 获取绝对路径
当你需要告诉 Claude Code 某个文件的确切路径:
# 获取绝对路径,粘贴到 Claude Code 对话里
realpath src/components/UserAuth.tsx
# → /Users/you/projects/myapp/src/components/UserAuth.tsx
# 批量获取
find src -name "*.test.ts" | xargs realpath这样避免相对路径在不同工作目录下的歧义。
CLAUDE.md 和项目配置篇
Tip 25:CLAUDE.md vs Skills vs Slash Commands vs Plugins 的区别
| 工具 | 位置 | 用途 | 示例 |
|---|---|---|---|
| CLAUDE.md | 项目根目录 / ~/.claude/ | 持久项目指令,每次会话自动加载 | 代码规范、架构约定、禁止操作 |
| Skills | .claude/skills/ | 可复用的复杂 Prompt 模板 | /security-audit、/dependency-check |
| Slash Commands | .claude/commands/ | 单次执行的短命令 | /pr-review、/changelog |
| Plugins | .claude-plugin/ | 扩展 Claude Code 功能的代码 | dx 插件(开发体验增强) |
使用原则:
- 每个会话都需要的 → CLAUDE.md
- 复杂、多步骤、可复用的流程 → Skills
- 简单一次性命令 → Slash Commands
- 需要代码逻辑的扩展 → Plugins
Tip 30:定期审查并精简 CLAUDE.md
CLAUDE.md 容易越来越长,变成"规则垃圾场":
每月问自己:
- 这条规则上个月违反过吗?
- 去掉这条 Claude 会犯错吗?
- 这条是真正重要的约束,还是只是我的个人偏好?
能删的就删。CLAUDE.md 越短,每条规则的影响力越强。
Tip 33:审查已批准的命令
运行 claude config 查看已经永久批准的命令白名单。随着时间推移可能积累了不少"随手批准"的条目,定期清理:
# 查看当前批准的工具
/permissions
# 或查看 settings 文件
cat .claude/settings.json | python3 -m json.tool | grep -A5 '"allow"'自动化和工作流篇
Tip 36:在后台运行 Bash 命令和 Subagents
让长时间运行的任务在后台进行,不阻塞当前对话:
> 在后台运行测试套件,完成后告诉我结果
> 启动一个 subagent 处理 API 文档生成,在后台运行,我继续处理功能开发
Claude Code 会在后台创建进程,你可以继续在前台对话,测试跑完后 Claude 会主动报告结果。
Tip 39:规划和快速原型要平衡
过度规划的陷阱:花了 2 小时规划,结果实际实现时发现设计不可行,规划全废。
技巧:
- 简单任务(< 3 步):直接实现,不规划
- 中等任务(5-10 步):用
/plan,5 分钟快速规划 - 大型任务(> 2 天工作量):用
ultraplan,完整规划 + 浏览器审阅 - 不确定可行性时:先做 2 小时的"探索性原型",再根据结果规划
Tip 44:安装 dx 插件
dx(开发体验)插件增加了多个实用功能:
# 安装
git clone https://github.com/ykdojo/claude-code-tips ~/.claude-plugin/dx插件提供的增强:
- 更好的错误提示
- 代码变更摘要
- 快速访问常用命令
- 改进的状态显示
Tip 45:一键快速配置脚本
仓库提供了一个 scripts/setup.sh,一键完成:
- 创建
.claude/commands/目录 - 复制常用 Slash 命令模板
- 配置推荐的
.gitignore条目 - 设置基础 CLAUDE.md
# 在新项目里快速配置
curl -sL https://raw.githubusercontent.com/ykdojo/claude-code-tips/main/scripts/setup.sh | bash来源:GitHub - ykdojo/claude-code-tips(8.1k Stars)| 整理:ClaudeEagle