跳至主要内容

規則


規則工作原理

大型語言模型在每次生成之間不會保留記憶。規則透過在提示層面提供持久化、可複用的上下文來解決這一問題。

當規則生效時,其內容會被包含在模型上下文起始位置。這為AI提供持續指導,無論其正在生成程式碼、解析編輯內容還是協助工作流程。


專案規則

專案規則儲存於.cursor/rules目錄。每個規則以檔案形式儲存並進行版本控制。可透過路徑模式限定作用範圍、手動觸發或基於相關性自動包含。

專案規則用於:

  • 編碼特定領域的程式碼庫知識
  • 自動化專案專屬工作流或模板
  • 標準化程式碼風格或架構決策

規則結構

每個規則檔案採用MDC格式(.mdc),這種輕量級格式支援在單個檔案中儲存後設資料和內容。規則支援以下型別:

規則型別描述說明
Always始終包含在模型上下文中
Auto Attached當引用匹配glob模式的檔案時自動包含
Agent RequestedAI可主動呼叫的規則(需提供描述)
Manual僅當顯式呼叫@ruleName時生效

MDC規則示例

---
description: RPC服务模板
globs:
alwaysApply: false
---

- 定义服务时使用内部RPC模式
- 服务名称始终采用snake_case格式

@service-template.ts

當規則觸發時,@service-template.ts這類引用檔案將作為附加上下文包含。

巢狀規則

可在專案結構中透過.cursor/rules目錄組織巢狀規則,例如:

project/
.cursor/rules/ # 全局规则
backend/
server/
.cursor/rules/ # 后端专属规则
frontend/
.cursor/rules/ # 前端专属规则

巢狀規則特性:

  • 當引用其目錄內檔案時自動生效
  • 仍可在上下文選擇器和AI規則列表中訪問
  • 便於將領域規則就近關聯相關程式碼

這在單體倉庫(monorepos)或需要獨立指導的多元件專案中尤其有用。

建立規則

透過新建Cursor规则命令或前往Cursor设置 > 规则建立規則。新規則將儲存在.cursor/rules目錄。設定介面可檢視所有規則及其狀態。

生成規則

可透過/生成Cursor规则命令在對話中直接建立規則。

當對話中已確定Agent行為規範時,此功能可快速生成可複用的規則。


最佳實踐

優質規則應聚焦、可操作且作用域明確:

  • 保持規則簡潔(建議500行以內)
  • 將複雜概念拆分為多個組合規則
  • 必要時提供具體示例或引用檔案
  • 避免模糊指導(按編寫內部文件的標準撰寫)
  • 當聊天中重複使用相同提示時轉為規則複用

示例

Cursor程式碼庫例項

以下為Cursor內部使用的規則:

Next.js、Cloudflare、Browserbase等供應商提供大量範例。社羣貢獻的規則可在多個眾包資源庫中獲取。


使用者規則

使用者規則在Cursor設定 > 規則中定義。

這些規則適用於所有專案,始終包含在模型上下文中。可用於:

  • 設定回覆語言風格
  • 新增個人編碼偏好

示例: 请以简洁风格回复,避免不必要的重复或填充词

使用者規則不支援MDC格式,僅限純文字。


團隊規則

當前暫不支援跨專案共享規則。

我們計劃未來支援可跨團隊專案引用的共享MDC規則。目前可透過以下方式實現:

  • 將共享規則儲存在專屬倉庫中
  • 複製或符號連結至各專案的.cursor/rules目錄

.cursorrules(舊版)

專案根目錄的.cursorrules檔案仍受支援,但將被棄用。建議遷移至專案規則格式以獲得更精細的控制、靈活性和可見性。


常見問題

規則未生效怎麼辦?
檢查規則型別:Agent Requested型別需定義描述;Auto Attached型別需確保檔案模式匹配引用檔案。

規則能否引用其他規則或檔案?
支援。使用@filename.ts語法可在規則上下文中包含檔案。

能否透過聊天建立規則?
支援。可要求AI"將此轉換為規則"或"基於此提示建立可複用規則"。

規則是否影響Cursor標籤頁或其他AI功能?
否。規則僅作用於Agent和Cmd-K AI模型。