🧠 Claude Code 使用心法:

「不是人驯AI,是人和AI共舞——前提是,你得先递上舞伴证」

“别人用 AI 写代码:5分钟写,2小时 debug。
Boris 用 Claude Code:5分钟规划,10分钟跑通,剩下时间喝咖啡看日出。”


🌟 先说结论:Claude Code 的「灵魂」不是模型,而是——

✅ 可验证的反馈闭环 ✅ 可共享的集体记忆 ✅ 可自动化的高频动作

这三点,缺一不可。
模型再强,不验证 = 盲人开车;
提示再精,不共享 = 重复造轮子;
流程再顺,不自动化 = 裸手搬砖。


今天就来分享claude code之父使用AI的技巧。

🕺 13 条「Boris 流」实战心法

💡 每一条都来自 Claude Code 之父 Boris Cherny 亲授,不是「网传秘籍」,是「生产环境真·生存法则」。

手机、笔记本、大屏三端同步:iOS Claude App / claude.ai/code / Terminal

1️⃣ 并行 5 开「Claude 分身术」——让AI自己排队等你

终端分屏:5个 tab 编号 1-5,系统通知弹出 “Claude #3 needs your input”

Boris 原话
“我同时跑 5 个本地 Claude 实例,标签页编号 1-5。
它需要我输入?系统通知会喊我——
就像养了 5 只高智商边牧,谁饿了自己叼碗过来。”

🔹 懒人复刻

# 启动 5 个后台会话(macOS/Linux)
for i in {1..5}; do
  nohup claude-code --name "Claude-$i" > /tmp/claude-$i.log 2>&1 &
done

🧠 小剧场:
你:「一次只聊一个,怕它分心」
Boris:「不,怕的是——你分心时,它干等着」
👉 高并发的不是 AI,是人的上下文切换能力。


2️⃣ 全平台「三端接力」——终端 ↔ 网页 ↔ 手机,无缝切换

Boris 的日常

  • 📱 早上通勤:手机上丢个任务 → “帮我设计个用户增长漏斗”
  • 💻 到工位:& 一键 teleport 到 claude.ai/code,接着细化
  • 🖥️ 深度编码:本地 terminal + --teleport 接手,跑测试、改代码

🔹 关键命令

# 终端 → 网页:传送当前会话
claude-code --teleport

# 网页端手动启动(URL 自动带 session ID)
# → https://claude.ai/code?session=abc123

🪄 魔法点:会话状态完整保留——连光标位置、未提交的编辑都同步!
→ 你不是在「换设备」,是在「换姿势继续写」。

使用 &符号把任务迁移到web端

在这里插入图片描述


3️⃣ 一切任务,只用 Opus 4.5 + Think Mode

Opus 4.5 启用思考模式:模型先列计划、再执行,成功率飙升

Boris 原话
“Opus 4.5 是我用过最好的编码模型。
它慢?是。但它几乎不用引导,还能主动用工具——
算下来,总耗时反而更少。”

🔹 数据对比(Boris 团队实测):

任务 Sonnet 3.5 Opus 4.5
实现登录 + JWT 12 分钟(3轮修正) 6 分钟(1轮通过)
修一个 flaky test 找不到根因 自动 git bisect + 复现步骤

🎯 关键:开启 Think Mode(思考模式)
→ 让它先写计划,再执行。Plan 都对了,Code 还会错?
不过这个问题是仁者见仁了,不同场景下可能需要不同的模型来最大化效率。


4️⃣ 全员共建 CLAUDE.md —— 给 AI 写「团队风格指南」

CLAUDE.md 文件内容:代码规范 / PR 模板 / 常见坑点

这不是文档,是「集体记忆体外硬盘」

  • ✅ 常见 bash 命令(git commit -m "feat: ..."
  • ✅ 代码风格(「别用 var,用 :=」)
  • ✅ 错误日志格式(logger.Errorw("msg", "err", err)
  • ✅ PR 模板(「Changes: / Testing:」)

🔹 尺寸控制:Boris 的 CLAUDE.md2.5K tokens
→ 够用,不臃肿。像一本「程序员生存手册」,不是百科全书。

📌 灵魂操作
每次 Code Review 发现 Claude 写错 → 立刻加一条到 CLAUDE.md
→ 下次,它就「长记性」了。

如下是claude code团队的习惯做法

在这里插入图片描述
在这里插入图片描述
claude.md里面主要包含了项目的命令,代码风格,仓库协作规范,AI常犯的错误。


5️⃣ Code Review 时 @.claude —— 自动更新 CLAUDE.md

GitHub PR 里评论 @.claude:触发 GitHub Action 自动 commit CLAUDE.md

@.claude  
请将以下规则加入 CLAUDE.md:  
- 所有 API 错误必须返回结构化 JSON:`{"error": "msg", "code": "ERR_XXX"}`

→ 自动触发 GitHub Action,生成 commit:
chore(claude): add error response format rule

🎁 复利式工程(Compounding Engineering):
今天花 1 分钟写规则,未来 1000 次 PR 自动受益。


6️⃣ 启动会话,先按 Shift+Tab×2 —— 进入「计划模式」

Plan Mode 界面:Claude 输出分步计划,可编辑确认

Boris 心法
“如果目标是写一个 PR,我 90% 时间花在 Plan Mode。
计划对了,Auto-Accept 模式一开——它常一次性搞定。”

🔹 典型计划结构:

1. [ ] 分析需求:用户需要「按标签筛选笔记」
2. [ ] 设计 API:`GET /notes?tags=go,ai`
3. [ ] 修改 DB schema:加 `tags` 字段(TEXT + JSON)
4. [ ] 实现控制器 + 单元测试
5. [ ] 更新 Swagger 文档

✅ 你确认 ✔️ → 它自动执行
❌ 你划掉 ✖️ → 它重写计划
你控方向,它控细节


7️⃣ 高频操作 → /slash 命令 —— 把工作流「封装成命令」

.claude/commands/ 目录:/commit-push-pr /test /deploy 等命令

示例:/commit-push-pr(Boris 每天用几十次)

# .claude/commands/commit-push-pr.yaml
name: Commit, Push, and Create PR
description: Stage all, commit w/ conventional commit, push, open PR
bash: |
  git add .
  git status --porcelain | head -5  # inline preview
  # → Claude 会读 stdout 决定下一步,不反复问你!
steps:
  - prompt: "Commit message (conventional style):"
    variable: COMMIT_MSG
  - run: 'git commit -m "$COMMIT_MSG"'
  - run: git push -u origin HEAD
  - run: gh pr create --fill

高频动作,一键封装,永不遗忘

如下是命令的位置
在这里插入图片描述


8️⃣ 子代理(Subagents)—— 给 AI 配「专业副手」

子代理架构:main agent → code-simplifier / verify-app 等子代理

  • code-simplifier:主任务完成后,自动简化代码
    → “这段能用 lo.Map 重写吗?”
  • verify-app:端到端测试专用代理
    → “启服务 → curl /health → 检查日志 → 关服务”

🔹 配置示例:

# .claude/subagents/verify-app.yaml
name: verify-app
instructions: |
  Run the app and verify it works:
  1. go build -o app && ./app &
  2. sleep 2 && curl http://localhost:8080/health
  3. grep "OK" in logs
  4. kill %1

🧠 哲理时刻:
别让主模型干杂活——给它配「实习生」。


9️⃣ PostToolUse 钩子 —— 给代码「最后抛光」

// Claude 生成的代码(80分)
func getUser(id int) (*User, error) {
user := &User{}
if err := db.First(&user, id).Error; err != nil {
return nil, err
}
return user, nil
}

→ 经 PostToolUse 钩子自动美化:

// 钩子后(100分)
func getUser(id int) (*User, error) {
	var user User // 避免 &User{} 潜在 nil 问题
	if err := db.First(&user, "id = ?", id).Error; err != nil {
		return nil, fmt.Errorf("get user %d: %w", id, err)
	}
	return &user, nil
}

CI 不再因格式挂掉


🔟 /permissions 预授权 —— 绕过「烦人确认弹窗」

🔹 正确姿势

# 预授权常用命令(check in 到 .claude/settings.json)
claude-code /permissions --allow "git.*, make.*, go.*"

→ 团队共享 settings.json

{
  "permissions": {
    "allow": ["git push", "go test ./...", "docker build ."]
  }
}

⚠️ 安全提示:
不要用 --dangerously-skip-permissions
预授权 ≠ 放权,而是「明确授权」


1️⃣1️⃣ 让 Claude 用 所有工具 —— 它是「数字员工」,不是「代码生成器」

MCP 配置:接入 Slack / BigQuery / Sentry

Boris 的真实用例:

  • 📊 bq query "SELECT count(*) FROM logs WHERE error" → 自动生成监控看板
  • 📢 slack post --channel #alerts --msg "Deploy failed!"
  • 🐞 sentry fetch --event=abc123 → 自动分析崩溃堆栈
  • 📈 用 MCP 协议统一接入(类似 LSP 之于编辑器)

🚀 一句话:
它不只需要 vim,它需要整个 DevOps 工具链。


1️⃣2️⃣ 长任务?三种「无人值守」模式

场景 方案 工具
编译 + 测试(10min) 后台代理验证 /background-verify
数据迁移(1h) Stop 钩子自动收尾 --hook-stop=scripts/cleanup.sh

💡 核心思想:给它一个「验收标准」,然后放手
→ 你去开会,它去干活;你回来看结果。

对于长任务,我们希望它不要阻塞的执行下去,就需要配置下权限
在这里插入图片描述


🔑 1️⃣3️⃣ 终极心法:给 Claude 一个验证工作的方法!

“这可能是从 Claude Code 获得出色结果最重要的一点。”
——Boris Cherny

Claude Chrome 扩展:自动启浏览器 → 测试 UI → 截图反馈

🔹 验证方式因场景而异:

领域 验证方式
后端 API curl /health && go test ./...
前端 UI Claude Chrome 扩展自动点击 + 截图
数据分析 python script.py && head output.csv
DevOps terraform plan 预览无误

🌈 金句:
没有验证的 AI 输出,只是「看起来很美」的幻觉。
有验证的 AI 输出,才是「可交付」的资产。



🌅 最后一句

AI 不会取代程序员,
但会用 AI 的程序员,会取代不用 AI 的程序员。

而 Boris 告诉我们:
真正拉开差距的,不是谁用 AI,
而是谁给 AI 装上了「验证闭环」和「集体大脑」。


Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐