Claude Code

关注公众号 jb51net

关闭
AI > Claude Code >

Claude Code 最佳实践完整指南(最新更新)

脚本之家

一、CLAUDE.md 配置原则

核心原则:保持简短

示例:好的 CLAUDE.md 结构

## 工作流
- 每次代码变更后运行 `npm test`
- 每个任务创建新分支,绝不直接提交到 main
- 使用 Conventional Commits(feat:, fix:, refactor:, docs:)
- 每次提交前运行 `eslint . --fix`
- 完成后通过 `gh pr create` 创建 PR
## 技术栈
- Node.js 18+, Express 4.x, PostgreSQL 16
- 测试:Jest + React Testing Library
- 认证:JWT + bcrypt

二、工作流最佳实践

1. 复杂任务用 Plan Mode

2. 让 Claude 先采访你

3. 分阶段工作流

4. 小任务别用复杂工作流

5. 善用 ! 命令的自动响应

6. 用大模型做大活,用小模型做小活

7. 重复性监控用 /loop

8. 输出复杂结果用 Artifacts 发布页面

三、调试与纠错

1. 粘贴 bug,说"fix"

2. 两次失败 = /clear

3. 走偏了?Esc Esc 回滚

4. 要求重写平庸方案

5. 用 /doctor 做定期健康检查

6. 配置出问题时用 --safe-mode

四、上下文管理

1. 50% 时手动压缩

2. /compact 可指定压缩策略

# 聚焦 API 变更压缩
/compact focusing on API changes
# 保留测试相关历史
/compact keep test-related history
# 保留错误解决历史
/compact keep error resolution

3. 切换目录用 /cd 不要用 /clear

4. Checkpoints(检查点)

五、Subagents(子智能体)

1. 什么时候该用子智能体

2. 专用子智能体 > 通用 mega-agent

3. 后台子智能体可以在重启后自动恢复

4. 子智能体有独立上下文窗口

5. 典型用法

# 让 Claude 自动拆分任务并行处理
> 审查用户认证模块,use subagents
# 跨文件批量修改
> 重命名所有文件中的 User 为 Account,use subagents

六、Skills(技能)管理

1. 技能应该是文件夹结构

skills/
  api-design/
    SKILL.md          # 主文件:核心规则和索引
    references/       # 语料库、参考资料
    scripts/          # 辅助脚本
    examples/         # 示例代码

2. 嵌套 Skills 自动按路径加载

3. 堆叠调用多个技能

4. 添加 Gotchas(坑点记录)部分

这是长期最有价值的技术:每次 Claude 犯错时记录失败模式,长期积累成为信噪比最高的内容

Gotchas 结构示例

# SKILL.md
## Gotchas(坑点记录)
### 2026-04-15: API 分页参数遗漏
- **问题**:生成 API 时忘记添加分页参数
- **表现**:返回所有数据导致性能问题
- **修复**:在 SKILL.md 中添加分页规则
- **预防**:检查清单中增加"是否包含分页"

Gotchas 维护原则

七、Superpowers 使用详解

1. 什么是 Superpowers?

Superpowers 是由 Jesse Vincent 和 Prime Radiant 团队开发的 Claude Code 插件,解决工程纪律问题。

核心功能

2. 安装与配置

# 在 Claude Code 会话中安装
/plugin install superpowers@claude-plugins-official
# 下次启动时看到"You have Superpowers"即表示成功

3. 技能激活方式

技能

何时激活

触发方式

brainstorming

创建功能或组件前

单独使用时自动

writing-plans

需求需要多步分解时

单独使用时自动

test-driven-development

实现功能或修复 bug 前

需在 CLAUDE.md 中显式配置

systematic-debugging

遇到 bug、测试失败、意外行为时

需在 CLAUDE.md 中显式配置

code-reviewer

完成主要实现步骤后

需在 CLAUDE.md 中显式配置

dispatching-parallel-agents

多个独立任务可并行时

当 2+ 任务无依赖时自动

verification-before-completion

声称工作完成前

需在 CLAUDE.md 中显式配置

## Superpowers 工作流规则
### 新功能开发
- 使用 /opsx:propose 开始(路由到 OpenSpec)
- 跳过 brainstorming/writing-plans(避免重复)
### 编码纪律
- 使用 /opsx:apply 时,始终遵循 TDD:先写失败的测试,再实现代码
- 遇到 bug 时,使用 systematic-debugging 技能
- 完成主要实现后,自动触发 code-reviewer
### 验证规则
- 声称工作完成前,必须通过 verification-before-completion
- 所有测试必须通过,无跳过测试

5. 四步强制序列

6. 管理已安装的插件

八、Spec Kit(OpenSpec)使用详解

1. 什么是 OpenSpec?

OpenSpec 是 Fission AI 开发的开源框架,解决需求不匹配问题。将一句话需求扩展为四个结构化文档。

核心功能

2. 安装与配置

# 需要 Node.js 20.19.0+
npm install -g @fission-ai/openspec@latest
cd your-project
openspec init  # 选择 Claude Code
# 创建 openspec/ 目录,包含 specs/、changes/archive/、AGENTS.md

3. 与 Claude Code 集成

// .claude/settings.json
{
  "mcpServers": {
    "openspec": {
      "command": "npx",
      "args": ["-y", "@fission-ai/openspec-mcp"]
    }
  },
  "permissions": {
    "allow": ["Bash:openspec:*", "Bash:npm:*", "Bash:git:*"]
  }
}

4. 工作流程

# 会话 1:需求 → 规范
> /opsx:propose 用户认证 API,Express + MongoDB + JWT
# 生成:
# - openspec/changes/YYYY-MM-DD--proposal.md
# - openspec/changes/YYYY-MM-DD--specs/
# - openspec/changes/YYYY-MM-DD--design.md
# - openspec/changes/YYYY-MM-DD--tasks.md
# 会话 2:规范 → 实现
> /opsx:apply
# 会话 3:独立验证
> /opsx:archive  # 归档当前迭代

5. Delta/Archive 机制

6. 五大常见陷阱

陷阱

表现

预防

规范写成伪代码

描述实现而非行为

使用 GIVEN/WHEN/THEN

过度详细规范

限制 AI 创造性

描述"什么",不描述"怎么做"

每次功能后不归档

历史混乱

每个功能完成后执行 archive

与 Superpowers 冲突

两个规划系统重复

在 CLAUDE.md 中路由到一个

忽略 out-of-scope

AI 添加未请求功能

明确定义范围边界

九、权限与安全

1. Hooks vs CLAUDE.md

需求

推荐

原因

文件保存后自动 lint

Hook

每次必须执行

阻止写入敏感文件

Hook

安全不能妥协

代码规范遵循

CLAUDE.md

需要情境判断

API 命名规则

CLAUDE.md

存在例外模式

2. Allowlist 减少审批疲劳

{
  "permissions": {
    "allow": [
      "Bash(npm run lint:*)",
      "Bash(npm run test:*)",
      "Bash(git status)",
      "Read",
      "Glob",
      "Grep"
    ]
  }
}

3. deny 比 Hooks 更安全

{
  "permissions": {
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)",
      "Bash(curl:*)"
    ]
  }
}

4. 权限规则进阶用法

5. --dangerously-skip-permissions 正确使用

适用场景

不适用场景

Lint 修复自动化

联网环境

样板代码生成

包含敏感数据的环境

封闭工作流

通用开发工作

重要:应在无互联网的隔离环境中使用。企业可设置 disableBypassPermissionsMode: true 全局禁用。

十、规格与实现分离

推荐流程

为什么分离?

十一、Claude Code 常见陷阱(Gotchas)

8 大陷阱

#

陷阱

表现

缓解方法

1

过早放弃

“已实现大部分功能,但 XX 不工作”

拆分任务为更小单元

2

上下文压缩后变笨

忘记之前纠正的错误

手动 /compact,必要时 /clear

3

初始测试质量差

测试看起来对但实际失败

TDD 模式,仔细审查测试

4

修改测试而非代码

降低测试标准匹配错误代码

严格审查测试变更

5

忘记编译

测试失败因为未编译

在 CLAUDE.md 中明确编译步骤

6

工作目录混乱

留下测试脚本、构建产物

git status 检查,手动清理

7

Git 操作危险

错误的变更合并到 PR

人工执行 Git 操作

8

重写但不删除旧代码

新旧代码共存

审查 diff,确认删除

陷阱 1:过早放弃

表现

我已实现大部分功能。功能在 XX 情况下工作正常。
但 YY 情况下不工作。代码已充分测试,这是好的开始。

缓解

陷阱 2:上下文压缩后变笨

表现

缓解

陷阱 3 & 4:测试问题

表现

缓解

陷阱 5:忘记编译

表现

缓解

陷阱 6 & 7:工作目录和 Git

表现

缓解

陷阱 8:重写但不删除

表现

缓解

新陷阱:后台会话意外中断

表现

缓解

十二、工具组合策略

Claude Code + OpenSpec + Superpowers 三重栈

解决三个核心问题

问题

工具

解决方式

AI 构建的不是你想要的

OpenSpec

需求 → 结构化规范

AI 跳过工程纪律

Superpowers

强制 TDD、审查、验证

设计决策在迭代中丢失

OpenSpec

Delta/Archive 机制

分工明确

OpenSpec 负责:思考 WHAT(构建什么、为什么)
Superpowers 负责:确保 HOW(如何构建好)
Claude Code 负责:执行(编辑文件、运行测试、处理 Git)

配置协作

# CLAUDE.md 中的路由规则
## 规划阶段
- 任何新功能:从 /opsx:propose 开始
- 跳过 brainstorming/writing-plans(避免重复)
## 编码阶段
- 使用 /opsx:apply 时:始终遵循 TDD
- 遇到 bug:使用 systematic-debugging
- 完成实现:触发 code-reviewer
- 声称完成:通过 verification-before-completion

十三、核心原则总结

上下文是宝贵资源

系统约束 > 提示词约束

分而治之

不要过度工程

持续改进

参考资料

到此这篇关于Claude Code 最佳实践完整指南(最新更新)的文章就介绍到这了,更多相关Claude Code最佳实践内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!