跳轉到主要內容
在 CLI 設定中用 permission tokens 設定代理可以做的事。權限可在 ~/.cursor/cli-config.json(全域)或 <project>/.cursor/cli.json(專案)中設定。

權限類型

Shell 指令

格式: Shell(commandBase) 控制對 Shell 指令的存取。commandBase 是指令列中的第一個標記(token)。
範例說明
Shell(ls)允許執行 ls 指令
Shell(git)允許任何 git 子指令
Shell(npm)允許執行 npm 套件管理工具的指令
Shell(rm)拒絕具有破壞性的檔案刪除(常見於 deny

檔案讀取

格式: Read(pathOrGlob) 控制對檔案與目錄的讀取存取。支援 glob 模式。
範例說明
Read(src/**/*.ts)允許讀取 src 中的 TypeScript 檔案
Read(**/*.md)允許在任何位置讀取 Markdown 檔案
Read(.env*)拒絕讀取環境設定檔
Read(/etc/passwd)拒絕讀取系統檔案

檔案寫入

格式: Write(pathOrGlob) 控制對檔案與目錄的寫入存取。支援 glob 模式。在列印模式下使用時,寫入檔案需要 --force
範例說明
Write(src/**)允許寫入 src 底下的任何檔案
Write(package.json)允許修改 package.json
Write(**/*.key)拒絕寫入私鑰檔案
Write(**/.env*)拒絕寫入環境設定檔

設定

在 CLI 設定檔的 permissions 物件中加入權限:
{
  "permissions": {
    "allow": [
      "Shell(ls)",
      "Shell(git)", 
      "Read(src/**/*.ts)",
      "Write(package.json)"
    ],
    "deny": [
      "Shell(rm)",
      "Read(.env*)",
      "Write(**/*.key)"
    ]
  }
}

模式比對

  • Glob 模式使用 ***? 萬用字元
  • 相對路徑以目前工作區為範圍
  • 絕對路徑可指向專案以外的檔案
  • 拒絕規則優先於允許規則
I