Atur apa saja yang boleh dilakukan agen dengan menggunakan token izin di konfigurasi CLI kamu. Izin disetel di ~/.cursor/cli-config.json (global) atau <project>/.cursor/cli.json (khusus proyek).

Jenis izin

Perintah shell

Format: Shell(commandBase) Mengontrol akses ke perintah shell. commandBase adalah token pertama pada command line.
ContohDeskripsi
Shell(ls)Izinkan menjalankan perintah ls
Shell(git)Izinkan subperintah git apa pun
Shell(npm)Izinkan perintah pengelola paket npm
Shell(rm)Tolak penghapusan file yang destruktif (umumnya di deny)

Pembacaan file

Format: Read(pathOrGlob) Mengontrol akses baca ke file dan direktori. Mendukung pola glob.
ContohDeskripsi
Read(src/**/*.ts)Izinkan membaca file TypeScript di src
Read(**/*.md)Izinkan membaca file Markdown di mana saja
Read(.env*)Tolak membaca file environment
Read(/etc/passwd)Tolak membaca file sistem

Penulisan file

Format: Write(pathOrGlob) Mengontrol akses tulis ke file dan direktori. Mendukung pola glob. Saat digunakan dalam mode print, --force diperlukan untuk menulis file.
ContohDeskripsi
Write(src/**)Izinkan menulis ke file apa pun di bawah src
Write(package.json)Izinkan mengubah package.json
Write(**/*.key)Tolak menulis file private key
Write(**/.env*)Tolak menulis file environment

Konfigurasi

Tambahkan permission ke objek permissions di file konfigurasi CLI lo:
{
  "permissions": {
    "allow": [
      "Shell(ls)",
      "Shell(git)", 
      "Read(src/**/*.ts)",
      "Write(package.json)"
    ],
    "deny": [
      "Shell(rm)",
      "Read(.env*)",
      "Write(**/*.key)"
    ]
  }
}

Pencocokan pola

  • Pola glob menggunakan wildcard **, *, dan ?
  • Path relatif berlaku dalam ruang kerja saat ini
  • Path absolut bisa menargetkan file di luar proyek
  • Aturan deny punya prioritas dibanding aturan allow