前提

已熟悉基础版工作流,能跑通四个阶段。
本文聚焦 “如何用得更好、更快、更自动化”


1. 上下文工程:让 AI 记住你的规则

核心思想

与其每次对话都重复说明项目规则,不如把规则写进文件,让 Claude 自动加载。

CLAUDE.md:项目级记忆

在项目根目录创建 CLAUDE.md,Claude 每次启动都会自动读取:

# 项目规范

## 技术栈
- 后端:Node.js + TypeScript + Express
- 数据库:PostgreSQL(使用 Prisma ORM)
- 测试:Jest + Supertest

## 编码规范
- 函数命名:camelCase
- 文件命名:kebab-case
- 错误处理:所有异步函数必须有 try/catch

## 禁止事项
- 不得直接修改 migration 文件
- 不得使用 any 类型

## 常用命令
- 启动:`npm run dev`
- 测试:`npm test`
- 构建:`npm run build`

最佳实践

  • 单个 CLAUDE.md 控制在 200 行以内(超出后 Claude 对后面内容的遵守率下降)
  • .claude/rules/ 目录拆分大型规则文件,按文件名用 glob 匹配触发
  • 重要规则用 <important if="..."> 标签包裹,防止被忽略
<!-- .claude/rules/database.md -->
<!-- Glob: src/db/** -->
<important if="editing database files">
所有数据库操作必须走事务,不得裸写 SQL
</important>

settings.json:行为级配置

.claude/settings.json 控制 Claude 的行为,比 CLAUDE.md 更可靠(由 harness 强制执行):

{
  "model": "claude-opus-4-6",
  "permissions": {
    "allow": [
      "Bash(npm run *)",
      "Bash(git *)",
      "Edit(src/**)",
      "Edit(tests/**)"
    ],
    "deny": [
      "Bash(rm -rf *)",
      "Edit(.env)"
    ]
  },
  "attribution": {
    "commit": ""
  }
}

重要区别:在 CLAUDE.md"NEVER add Co-Authored-By" 不可靠;用 settings.jsonattribution.commit: "" 才是确定性的。


2. 进阶规划技巧

让 Claude 先采访你,再规划

不要一次性给出所有需求,让 Claude 用问题挖掘你可能没想到的细节:

用 AskUserQuestion 工具采访我,收集实现「用户通知系统」所需的所有信息,
直到你认为细节足够才开始规划。

这种方式产出的规划质量远高于你直接描述需求。

用第二个 Claude 审查规划

规划完成后,开一个新的 Claude 会话(或用 Codex)让它扮演「资深工程师」来挑规划的毛病:

codex "以资深工程师视角审查以下技术方案,指出:
1. 架构缺陷
2. 遗漏的边界条件
3. 潜在的扩展性问题
4. 安全风险

方案:$(cat plan.md)"

Ultraplan:在浏览器中协作审查

/ultraplan

生成云端规划草稿,可分享给团队在浏览器中添加评论,再决定是否执行。

分阶段门控规划(Phase-Gated)

把大任务拆成有明确验收标准的阶段,每阶段都包含测试:

请制定分阶段规划,每个阶段包含:
- 具体的交付物
- 单元测试要求
- 集成测试要求
- 进入下一阶段的验收标准

需求:重构用户认证模块

用 ultrathink 触发深度推理

在需要 Claude 深入思考时,在 prompt 中加入关键词:

claude --model claude-opus-4-6 "ultrathink:分析这个分布式系统中的竞态条件风险"

3. Slash Commands:把工作流变成命令

核心思想

重复做同一件事超过 2 次,就把它变成一个斜杠命令。

创建自定义命令

在项目目录创建 .claude/commands/ 文件夹,每个 .md 文件就是一个命令:

mkdir -p .claude/commands

示例:创建 /review 命令

<!-- .claude/commands/review.md -->
对当前 git diff 进行 code review,关注:
1. 逻辑错误和边界条件
2. 安全漏洞(OWASP Top 10)
3. 性能问题
4. 错误处理完整性
5. 测试覆盖是否足够

输出格式:Markdown 表格,列:文件 | 行号 | 严重程度 | 问题 | 建议

使用:

/review

示例:创建 /deploy-check 命令

<!-- .claude/commands/deploy-check.md -->
执行上线前检查清单:
1. 运行全量测试:`npm test`
2. 检查环境变量配置是否完整
3. 检查 migration 是否有未执行的
4. 审查最近的 git diff 是否有调试代码(console.log、TODO、FIXME)
5. 生成上线摘要报告

高频命令建议

命令名 用途
/review 审查当前变更
/test 运行测试并分析失败原因
/techdebt 列出当前代码的技术债
/deploy-check 上线前检查清单
/context-dump 导出当前任务上下文到文件

4. Subagents:专职 AI 小组

核心思想

与其让一个 Claude 做所有事,不如给特定任务配专职 Agent,每个 Agent 有独立上下文和专属工具。

创建 Subagent

.claude/agents/ 目录下创建 <name>.md

<!-- .claude/agents/security-reviewer.md -->
---
name: security-reviewer
description: 专门审查代码安全问题,当涉及认证、授权、数据验证时自动调用
model: opus
tools: Read, Grep, Glob
---

你是一个专注安全审查的工程师,专注于:
- OWASP Top 10 漏洞检测
- 认证和授权缺陷
- SQL 注入、XSS、CSRF
- 敏感数据泄露
- 加密使用是否正确

审查完成后输出结构化报告,包含严重程度(Critical/High/Medium/Low)。

在主对话中调用 Subagent

分析 src/auth/ 目录的代码,用 subagents 并行审查安全性和性能

测试时间计算(Test Time Compute)

同一模型,两个独立上下文,让一个 Agent 写代码,另一个找 bug:

# Agent 1 实现功能
claude --model claude-opus-4-6 "实现用户登录功能" > login.ts

# Agent 2(独立上下文)找 bug
cat login.ts | claude --model claude-opus-4-6 \
  "找出这段代码中所有可能的 bug 和安全问题,不要提供修复,只报告问题"

为什么有效? 独立的上下文窗口让第二个 Agent 没有“确认偏差”,能更客观地找问题。


5. Skills:可复用的技能包

Skills 是比 Commands 更强大的复用单元,支持:预加载到 Agent、独立上下文运行、动态注入 shell 输出。

创建 Skill

mkdir -p .claude/skills/code-review
<!-- .claude/skills/code-review/SKILL.md -->
---
name: code-review
description: 对代码进行全面审查,关注质量、安全和性能
context: fork
allowed-tools: Read, Grep, Glob
---

## 审查框架

### 安全检查
- 输入验证(所有用户输入是否经过校验)
- 认证和授权
- 依赖版本是否有已知漏洞:!`npm audit --json 2>/dev/null | head -50`

### 性能检查
- 数据库查询(N+1 问题、缺少索引)
- 内存泄漏风险
- 同步操作阻塞事件循环

### 代码质量
- 函数复杂度(超过 20 行的函数需要拆分)
- 错误处理完整性
- 测试覆盖率

## Gotchas(Claude 常犯的错误)
- 不要忽略 async/await 中未捕获的 Promise rejection
- 检查 TypeScript 的 any 类型是否过度使用

技巧!command 语法会在 Skill 加载时执行 shell 命令并注入结果,上例中 npm audit 的输出会直接进入 Claude 的上下文。

两种 Skill 使用模式

模式一:用户手动调用

/code-review

模式二:预加载到 Subagent(推荐用于专职 Agent)

<!-- .claude/agents/backend-dev.md -->
---
name: backend-dev
skills:
  - code-review
  - database-migration
---

6. Hooks:自动化触发器

Hooks 让 Claude Code 在特定事件发生时自动执行脚本,无需人工干预。

常用 Hook 场景

场景一:提交代码后自动格式化

// .claude/settings.json
{
  "hooks": {
    "PostToolUse": [{
      "matcher": "Edit|Write",
      "hooks": [{
        "type": "command",
        "command": "npm run format -- $CLAUDE_TOOL_INPUT_PATH 2>/dev/null || true"
      }]
    }]
  }
}

场景二:Stop Hook 让 Claude 自我核查

{
  "hooks": {
    "Stop": [{
      "hooks": [{
        "type": "prompt",
        "prompt": "检查你的工作是否完整:1) 有没有遗留的 TODO?2) 测试是否通过?3) 有没有调试代码未清理?如有问题请继续处理。"
      }]
    }]
  }
}

场景三:git commit 前安全检查

{
  "hooks": {
    "PreToolUse": [{
      "matcher": "Bash(git commit*)",
      "hooks": [{
        "type": "command",
        "command": "git diff --cached | grep -E '(password|secret|api_key|token)' && echo 'WARNING: 可能包含敏感信息!' || true"
      }]
    }]
  }
}

Hook 事件完整列表

事件 触发时机
PreToolUse 工具调用前(可拦截)
PostToolUse 工具调用后
Stop Claude 完成一轮回答后
UserPromptSubmit 用户提交 prompt 前
SessionStart 会话开始时
TaskCompleted 任务完成时

7. 并行开发:Git Worktrees + Agent Teams

核心思想

多个 Agent 同时处理不同功能分支,互不干扰,效率翻倍。

Git Worktrees:给每个 Agent 独立工作区

# 为新功能创建独立工作区
git worktree add .worktrees/feature-auth -b feature/auth
git worktree add .worktrees/feature-payment -b feature/payment

# 在两个 worktree 中分别启动 Claude
cd .worktrees/feature-auth && claude --model claude-opus-4-6 &
cd .worktrees/feature-payment && claude --model claude-opus-4-6 &

每个 Claude 实例在独立分支上工作,不会互相冲突。

用 tmux 管理多个 Claude 实例

# 创建 tmux 会话,左右分屏
tmux new-session -d -s dev
tmux send-keys -t dev "cd .worktrees/feature-auth && claude" Enter
tmux split-window -h -t dev
tmux send-keys -t dev "cd .worktrees/feature-payment && claude" Enter
tmux attach -t dev

Agent Teams(实验性)

让多个 Agent 共享任务协调:

# 设置环境变量启用 Agent Teams
export CLAUDE_AGENT_TEAMS=1

# 启动主 Claude,它会自动协调子 Agent
claude --model claude-opus-4-6 \
  "并行实现用户模块和支付模块,用 subagents 分别处理,完成后合并方案"

清理 Worktrees

# 查看所有 worktrees
git worktree list

# 删除不再需要的 worktree
git worktree remove .worktrees/feature-auth

8. 模型与成本优化

模型选择策略

场景 推荐模型 原因
复杂架构设计 Opus + ultrathink 最强推理
日常编码 Sonnet 速度与质量均衡
Plan Mode 规划 Opus 全局视角好
Code Review Sonnet 或 Codex 足够用,成本低
简单问答/重复任务 Haiku 最快最便宜
单元测试生成 Codex / Haiku 模式匹配,不需要强推理

在会话中动态切换模型

# 规划阶段用 Opus
/model claude-opus-4-6

# 切到实现阶段,改用 Sonnet 节省成本
/model claude-sonnet-4-6

# 查看当前模型和上下文用量
/model
/context

上下文管理:避免“Agent 衰退区”

上下文超过 50% 后,Claude 的表现会下降。主动管理上下文:

# 在交互模式中查看上下文用量
/context

# 上下文到 50% 时主动压缩
/compact

# 切换到完全不同的任务时,清空上下文重开
/clear

命名会话,随时续接:

# 给当前会话命名
/rename "feat: 用户注册模块"

# 以后恢复这个会话
/resume

用 /sandbox 减少权限弹窗

# 启用沙箱模式,减少约 84% 的权限确认弹窗
/sandbox

9. 进阶 Git / PR 工作流

PR 体积控制

  • 目标:p50 控制在 ~120 行以内
  • 原则:一个 PR 只做一件事
  • 好处:更容易 review、更容易 revert、更容易 cherry-pick
# 让 Claude 帮你拆分大 PR
claude "分析当前的 git diff,建议如何拆分成多个小 PR,每个 PR 专注一个逻辑变更"

Squash Merge(推荐)

始终用 squash merge,保持主分支线性历史:

  • 每个功能 → 主分支一个 commit
  • 方便 git revert 和 git bisect
gh pr merge --squash --auto

多 Agent PR Review

# 用内置的 code-review 功能
/code-review

# 或用 Codex 做第二视角
git diff main...HEAD | codex "以资深工程师身份审查这个 PR 的所有变更"

自动化 lint 规则生成

发现某类问题在 review 中反复出现?让 Claude 自动生成 lint 规则:

claude "分析最近 20 个 PR 的 review 意见,总结高频问题,为每类问题生成对应的 ESLint 规则"

10. 调试进阶技巧

截图调试

遇到 UI 问题时,直接截图丢给 Claude:

# 截图后在 claude 中
> 查看截图 /path/to/screenshot.png,诊断为什么按钮没有居中

让 Claude 读浏览器 Console

配合 MCP 服务(Chrome DevTools / Playwright),让 Claude 直接看到控制台报错:

# 安装 Playwright MCP
npm install -g @playwright/mcp

# 在 .mcp.json 中配置
# 然后 Claude 可以直接:
> 打开 http://localhost:3000,检查控制台报错

后台运行长命令

# 在 claude 交互模式中,让长命令在后台跑
> 在后台启动 npm run dev,监控输出,有报错时通知我

走偏了?立刻回退

# 按两次 Esc,或:
/rewind

# 回退后,换一个角度重新描述问题
> 忽略上面的方案,换一种更简单的实现思路

上下文压缩报错?

# 切到支持更长上下文的模型再压缩
/model claude-opus-4-6   # Opus 支持 1M token
/compact

11. 定时任务与自动化

/loop:本地定时循环(最长 3 天)

# 每 5 分钟检查一次 CI 状态
/loop 5m 检查 CI 状态,如果失败输出错误原因

# 每小时运行一次测试
/loop 1h npm test,分析失败的测试用例

/schedule:云端定时任务(机器关机也能跑)

# 每天早上 9 点生成每日代码质量报告
/schedule "每天 9:00" 运行 npm run lint 和 npm test,生成质量报告发给我

# 每周五下午生成本周技术债报告
/schedule "每周五 17:00" 分析本周的 git log 和 PR,总结技术债积累情况

进阶:用 Codex 做定期安全扫描

# 创建安全扫描脚本
cat > security-scan.sh << 'EOF'
#!/bin/bash
echo "=== 依赖安全扫描 ==="
npm audit

echo "=== 代码安全审查 ==="
git diff main | codex "审查这些变更的安全问题,重点关注 OWASP Top 10"
EOF

chmod +x security-scan.sh

# 在 claude 中设置定期运行
/loop 24h ./security-scan.sh

进阶技巧速查

提示词技巧

# 要求更优雅的方案(不满意初版时)
"knowing everything you know now, scrap this and implement the elegant solution"

# 让 Claude 证明方案可行
"prove to me this works — grill me on these changes before making a PR"

# 要求深度推理
"ultrathink: 分析这个设计的所有边界情况"

权限管理(替代 dangerously-skip-permissions)

// .claude/settings.json 中精细控制权限
{
  "permissions": {
    "allow": [
      "Bash(npm run *)",
      "Bash(git add *)",
      "Bash(git commit *)",
      "Edit(src/**)",
      "Edit(tests/**)"
    ]
  }
}

ASCII 架构图(高价值工具)

# 让 Claude 用 ASCII 图解释架构,比文字更清晰
claude "用 ASCII 图展示用户注册流程的完整架构,包括服务间调用关系"

每日最佳实践

# 每天更新 Claude Code
claude update

# 查看 changelog(了解新功能)
# https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md

# 会话开始时确认环境
/doctor

进阶架构参考

Command → Agent → Skill 模式

适合复杂的多步骤工作流:

用户输入 /my-workflow
    ↓
.claude/commands/my-workflow.md   (入口,描述工作流)
    ↓ 调用
.claude/agents/my-agent.md        (执行者,有专属工具和技能)
    ↓ 使用
.claude/skills/my-skill/SKILL.md  (可复用的知识包)

优势

  • Command 负责编排,Agent 负责执行,Skill 负责知识
  • 每层职责清晰,独立可测试
  • Skill 可以跨 Agent 复用
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐