article
README
applyTo: apps/web/**
**示例**:
- `10-ui-development.md` - 仅在`apps/web/**`目录下工作时生效。
- `11-playwright-auth.md` - 仅在`apps/e2e/**`目录下工作时生效。
这样可减少认知负担,仅显示当前上下文相关的规则。
### 配置文件
#### settings.json
定义权限和钩子:
**权限**:
- **允许**:安全的开发命令(`pnpm test`、`pnpm build`、`git status`)
- **禁止**:危险操作(`rm -rf`、强制推送、`.env`读取)
- **保护**:锁定文件、迁移脚本、CI工作流
**钩子**:
- **工具使用后**:使用`pnpm lint:fix`在编辑/写入后自动格式化TypeScript文件
#### CLAUDE.md
每次会话加载的项目记忆文件,包含:
- 项目概述和技术栈
- 单仓库结构(8个应用 + 15个包)
- 常用命令和工作流
- 关键位置和约定
- 架构总结
该文件提供持久化上下文,让Claude理解项目结构。
#### rules/*.md
按主题组织的模块化规则。每个规则文件保持在约300行以内,专注于特定方面:
**核心规则(00 - 09)**:
- `00-core-principles.md` - YAGNI原则、简单解决方案、垂直切片
- `01-hexagonal-architecture.md` - 端口与适配器、决策矩阵
- `02-testing-strategy.md` - 每个测试一个事务模式
- `03-typescript-esm.md` - ESM标准、项目引用
- `04-code-quality.md` - ESLint规则、文件命名
**应用特定规则(10 - 19)**:
- `10-ui-development.md` - TanStack Start + shadcn/ui(作用域:`apps/web/**`)
- `11-playwright-auth.md` - 认证优先的端到端测试(作用域:`apps/e2e/**`)
**流程规则(20 - 29)**:
- `20-adr-process.md` - ADR创建和任务ID
- `21-tech-debt-logging.md` - 强制记录技术债
**工具规则(30 - 39)**:
- `30-git-workflow.md` - 常规提交、质量检查
### 如何更新规则
#### 添加新规则
1. 选择合适的编号范围(00 - 09、10 - 19等)
2. 在`.claude/rules/`目录下创建新的`.md`文件
3. 若需要路径作用域,添加前置元数据:
```markdown
---
applyTo: packages/domain/**
---
微信扫一扫