简介
.clinerules 是 Cline 每次任务都会读的持久规则文件。不用重复打上下文就能引导 Cline 的代码风格、库选型、项目约定。适合团队统一 AI agent 在自己代码库里的写法。兼容 Cline(VS Code)和 Roo Code。装机时间 1 分钟。
格式
在仓库根目录创建 .clinerules(无扩展名)。Cline 把它当纯文本读取,每次任务都会注入到系统 prompt。
# Project: Acme Web
## Code Style
- TypeScript strict 模式,禁用 `any`
- 只用 functional 组件,禁用 class 组件
- 优先 `async/await`,避免 `.then()` 链
## Libraries
- UI:shadcn/ui + Tailwind(禁用 Material UI / Bootstrap)
- HTTP:原生 `fetch`(不用 axios)
- 表单:React Hook Form + Zod
- 状态:Zustand(不用 Redux)
## 文件结构
- 组件放 `src/components/<feature>/`
- Hook 放 `src/hooks/`
- API 路由放 `src/app/api/`
## 测试
- Vitest,不用 Jest
- `*.test.ts` 跟源码同目录
- 在网络层 mock,不在函数层 mock
## 不要做的
- 没要求别加注释
- 同一个 PR 不要顺手重构无关代码
- 没确认前不要加新依赖子目录规则
可以在子目录再放 .clinerules。Cline 会读距离被编辑文件最近的那一个:
src/
├── .clinerules # 前端规则
├── components/
└── api/
└── .clinerules # 后端专属覆盖Plan / Act 双模式
Cline 支持 Plan/Act 分离 —— Plan 阶段读规则文件、问澄清问题、提出方案,不动文件。Act 阶段才执行。两个阶段都会读规则文件。
FAQ
Q: .clinerules 免费吗? A: 免费。Cline 这个 VS Code 扩展本身 Apache-2.0 开源。你用自己的 LLM API key(Claude / OpenAI / OpenRouter 等),按推理量付费。
Q: Roo Code 能读 .clinerules 吗? A: 能。Roo Code 是 Cline 的 fork,保持 .clinerules 格式兼容。同一份文件,行为一致。
Q: 规则文件能多长? A: 实操上控制在 500 行以内。这文件每次任务都进系统 prompt,太长会持续浪费 token。可以按目录拆分,或者把长上下文移到引用文档里。