ClawSkills logoClawSkills

OpenClaw Optimised

编写和优化 CLAUDE.md 文件以实现最大 Claude Code 性能的指南。在创建新的 CLAUDE.md、审查现有文件,或用户询问时使用。

介绍

# CLAUDE.md Optimization Guide

编写 CLAUDE.md 文件,以最大化 Claude 的遵从度和性能。

## 核心原则:少即是多

CLAUDE.md 太长 = Claude 会忽略其中一半内容。关键规则会被淹没在噪音中。

**对每一行都要问:**“删除这行会导致 Claude 犯错吗?” - 如果否 → 删除它 - 如果 Claude 本来就能正确做到 → 删除它或将其转换为钩子

## 包含内容

### 必要(高价值)

| 章节 | 示例 | |---------|---------| | 项目上下文 | “带有 Stripe 的 Next.js 电商应用”(1 行) | | 构建/测试命令 | `npm run test`、`pnpm build` | | 关键陷阱 | “切勿直接修改 auth.ts” | | 非显而易见的约定 | “使用 `vi` 管理状态,而非 `useState`” | | 领域术语 | “PO = Purchase Order(采购订单),而非 Product Owner” |

### 仅在非标准时包含

- 分支命名(如果不是 `feature/`、`fix/`) - 提交格式(如果不是约定式提交) - 文件边界(需避免的敏感文件)

### 切勿包含

- Claude 已知的内容(通用编码实践) - 显而易见的模式(可从现有代码中检测) - 冗长的解释(保持简练) - 理想化规则(仅限你遇到过的真实问题)

## 结构

```markdown # Project Name

One-line description.

## Commands - Test: `npm test` - Build: `npm run build` - Lint: `npm run lint`

## Code Style - [Only non-obvious conventions]

## Architecture - [Brief, only if complex]

## IMPORTANT - [Critical warnings - use sparingly] ```

## 格式规则

- 优先使用**要点**而非段落 - 使用 **Markdown 标题**分隔模块(防止指令渗透) - **具体**而非模糊:写“2空格缩进”而非“格式正确” - 对关键规则使用 **IMPORTANT/YOU MUST**(少量使用,否则会失去效果)

## 文件位置

| 位置 | 范围 | |----------|-------| | `~/.claude/CLAUDE.md` | 所有会话(用户偏好) | | `./CLAUDE.md` | 项目根目录(可通过 git 共享) | | `./subdir/CLAUDE.md` | 在子目录中工作时加载 | | `.claude/rules/*.md` | 作为项目记忆自动加载 |

## 优化清单

在定稿前: - [ ] 是否在 50 行以内?(理想目标) - [ ] 每一行是否都解决你遇到过的真实问题? - [ ] 是否与其他 CLAUDE.md 位置的内容冗余? - [ ] 是否包含 Claude 默认遵循的指令? - [ ] 是否通过观察 Claude 的行为变化进行了测试?

## 维护

- 以 `/init` 为起点,然后进行大幅修剪 - 每隔几周:“审查此 CLAUDE.md 并建议删除内容” - 当 Claude 行为异常时:添加具体规则 - 当 Claude 忽略规则时:文件太长,修剪其他内容

## 反模式

| 不要这样做 | 原因 | |-------|-----| | 200+ 行的 CLAUDE.md | 会被忽略 | | “编写干净的代码” | Claude 已知此点 | | 跨文件重复规则 | 浪费 token,易冲突 | | 理论化考虑 | 仅针对真实问题添加 | | 长篇大论的解释 | 使用要点 |

## 示例:极简有效的 CLAUDE.md

```markdown # MyApp

React Native app with Expo. Backend is Supabase.

## Commands - `pnpm test` - run tests - `pnpm ios` - run iOS simulator

## Style - Prefer Zustand over Context - Use `clsx` for conditional classes

## IMPORTANT - NEVER commit .env files - Auth logic lives in src/lib/auth.ts only ```

约 15 行。涵盖 Claude 无法推断的内容。除此之外别无其他。

更多产品