Langsung ke konten utama
Atur apa yang boleh dilakukan agen pakai token izin di konfigurasi CLI lo. Izin disetel di ~/.cursor/cli-config.json (global) atau <project>/.cursor/cli.json (spesifik proyek).

Jenis izin

Perintah shell

Format: Shell(commandBase) Mengontrol akses ke perintah shell. commandBase adalah token pertama di baris perintah.
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 pun
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 memodifikasi package.json
Write(**/*.key)Tolak menulis file kunci privat
Write(**/.env*)Tolak menulis file environment

Konfigurasi

Tambah izin 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 workspace saat ini
  • Path absolut bisa menargetkan file di luar proyek
  • Aturan deny memiliki prioritas dibanding aturan allow
I