核心设计原则
- 确定性:所有操作必须明确、可预测
- 安全性:防止意外修改或破坏
- 可追溯性:每个操作都有明确记录
工具使用规则
- 单次操作:每次只能使用一个工具
- 确认机制:必须等待用户确认后再继续
- 格式规范:工具调用必须严格遵循XML格式
文件编辑规则
- 专用工具:必须使用指定工具修改文件
- 精确匹配:SEARCH内容必须完全匹配
- 状态确认:修改后必须确认最终状态
命令执行规则
- 透明性:必须说明命令用途和预期结果
- 安全确认:危险操作需要明确用户确认
- 环境隔离:命令在指定工作目录执行
交互规则
- 效率优先:避免开放式问题,直接提供解决方案
- 问题导向:每个响应应推进任务完成
- 结果清晰:最终输出应自包含、完整
工作流程 (Workflow)
四阶段模型
- 任务分解:
- 逐步执行:
- 结果确认:
- 迭代优化:
典型工作流示例
graph TD
A[接收任务] --> B[分析需求]
B --> C[制定计划]
C --> D[执行第一步]
D --> E{验证结果}
E -->|成功| F[执行下一步]
E -->|失败| G[调整方案]
F --> H{任务完成?}
H -->|否| D
H -->|是| I[交付结果]
质量控制
- 每个步骤原子化
- 操作可回滚
- 结果可验证
聊天命令
/new: 创建新任务(清空当前上下文)/task [内容]: 定义任务内容/act: 切换到执行模式(执行具体操作)/plan: 切换到计划模式(制定计划)/help: 获取帮助信息/mode: 显示当前模式(ACT/PLAN)/reset: 重置当前任务/continue: 继续上次未完成任务/settings: 查看当前设置/smol: 切换到简洁响应模式/newrules: 设置新的自定义规则
使用建议
- 提供明确的任务描述
- 分步骤确认执行结果
- 利用工具组合完成复杂任务
Cline Rules 指南
规则概述
Cline Rules 允许为项目或全局对话提供系统级指导,是一种持久化的上下文和偏好设置方式。
创建规则
- 点击Rules标签页的"+“按钮
- 在IDE中编辑规则文件
- 保存位置:
- 也可使用
/newrule命令创建
规则文件示例
# Project Guidelines
### Documentation Requirements
- 更新相关文档在/docs目录
- 保持README.md同步
- 维护CHANGELOG.md
### Architecture Decision Records
在/docs/adr创建ADRs记录:
- 主要依赖变更
- 架构模式变更
- 新集成模式
- 数据库模式变更
### Code Style & Patterns
- 使用OpenAPI Generator生成API客户端
- 采用TypeScript axios模板
- 生成代码放在/src/generated
- 优先使用组合而非继承
- 数据访问使用仓库模式
关键优势
- 版本控制:
.clinerules成为项目代码一部分 - 团队一致性:确保所有成员行为一致
- 项目特定:为每个项目定制规则
- 知识传承:维护项目标准和实践
文件夹系统
your-project/
├── .clinerules/ # 活动规则
│ ├── 01-coding.md # 编码标准
│ └── current-sprint.md
├── clinerules-bank/ # 规则库
│ ├── clients/ # 客户特定规则
│ └── frameworks/ # 框架特定规则
└── ...
文件夹系统优势
- 上下文激活:从规则库复制相关规则
- 易于维护:单独更新规则文件
- 团队灵活性:按需激活规则
- 减少干扰:保持活动规则集专注
使用建议
- 清晰简洁:使用简单明确的语言
- 关注结果:描述期望结果而非具体步骤
- 测试迭代:实验找到最佳工作流
规则管理UI (v3.13+)
- 查看活动规则
- 快速切换规则
- 添加/管理规则
MCP 指南
MCP 功能概述
MCP (Model Context Protocol) 是一种扩展协议,允许AI助手与本地运行的MCP服务器通信,从而扩展AI的能力。主要功能包括:
- 提供额外的工具和资源
- 连接外部API和服务
- 执行自定义操作
- 访问专用数据源
基本用法
可用工具
use_mcp_tool: 使用MCP服务器提供的工具access_mcp_resource: 访问MCP服务器提供的资源
使用示例
<use_mcp_tool>
<server_name>weather-server</server_name>
<tool_name>get_forecast</tool_name>
<arguments>
{
"city": "Beijing",
"days": 3
}
</arguments>
</use_mcp_tool>