SpyBara
Go Premium

auto-mode-config.md 2026-10-29 23:57 UTC to 2026-10-30 23:01 UTC

This page contains 1 addition and 1 deletion.

2026
Thu 1 23:59 Wed 7 23:59 Sat 10 23:01 Mon 19 23:58 Tue 20 23:00 Wed 21 23:02 Thu 22 22:58 Fri 23 22:59 Wed 28 23:57 Fri 30 23:01

Konfigurasi mode otomatis

Beri tahu pengklasifikasi mode otomatis repositori, bucket, dan domain mana yang dipercaya organisasi Anda. Atur konteks lingkungan, ganti aturan blokir dan izin default, dan periksa konfigurasi efektif Anda dengan subperintah CLI mode otomatis.

Mode otomatis memungkinkan Claude Code berjalan tanpa permintaan izin rutin dengan merutekan panggilan alat melalui pengklasifikasi yang memblokir apa pun yang tidak dapat dibalikkan, merusak, atau ditujukan di luar lingkungan Anda. Aturan penolakan dan permintaan eksplisit dievaluasi sebelum pengklasifikasi dan masih memblokir atau meminta. Gunakan blok pengaturan autoMode untuk memberi tahu pengklasifikasi tersebut repositori, bucket, dan domain mana yang dipercaya organisasi Anda, sehingga berhenti memblokir operasi internal rutin.

[!NOTE]

Halaman ini adalah referensi konfigurasi. Mengaktifkan dan menonaktifkan mode otomatis tercakup di halaman Permission modes:

Mode otomatis tersedia untuk semua pengguna di setiap penyedia, termasuk Anthropic API, Claude Platform on AWS, Amazon Bedrock, Agent Platform Google Cloud, Microsoft Foundry, dan sesi gateway aplikasi Claude yang masuk. Jika Claude Code melaporkan mode otomatis tidak tersedia untuk akun Anda, periksa persyaratan lengkap, yang juga mencakup model yang didukung dan kontrol tingkat organisasi pada paket Tim dan Enterprise.

Secara default, pengklasifikasi hanya mempercayai direktori kerja dan remote yang dikonfigurasi dari repositori saat ini. Tindakan seperti mendorong ke organisasi kontrol sumber perusahaan Anda atau menulis ke bucket cloud tim diblokir sampai Anda menambahkannya ke autoMode.environment.

Halaman ini mencakup cara:

Batas-batas umum

Mode otomatis memungkinkan push ke cabang mana pun dari repositori yang Anda kerjakan, termasuk cabang default, dan pembuatan pull request secara default. Cabang non-default yang namanya menandainya sebagai target deploy atau publikasi, seperti production, release, atau gh-pages, tidak tercakup oleh default tersebut: pengklasifikasi menilai push di sana berdasarkan syarat-syaratnya sendiri, termasuk sebagai deploy produksi. Konten push juga masih diperiksa, jadi force push, rahasia yang memasuki commit, atau perubahan yang akan mengirim rahasia di luar repositori ketika CI atau pipeline deploy menjalankannya tetap diblokir.

Jika Anda ingin checkpoint manusia sebelum perintah push dan pull request Claude, tambahkan aturan izin: resep di bawah menjaga mode otomatis tetap aktif untuk segalanya.

Tambahkan checkpoint manusia

Mekanisme paling langsung adalah permissions.ask. Aturan ask yang dibatasi konten seperti yang di bawah ini dievaluasi sebelum pengklasifikasi dan selalu memaksa prompt izin, bahkan dalam mode otomatis, karena aturan ask eksplisit adalah niat yang dinyatakan untuk diminta untuk tindakan tersebut. Tambahkan aturan di settings Anda:

{
  "permissions": {
    "ask": [
      "Bash(git push *)",
      "Bash(gh pr create *)"
    ]
  }
}

Aturan-aturan ini cocok dengan perintah yang dimulai dengan git push atau gh pr create. Push yang Claude tulis dengan cara lain, seperti git -C <dir> push atau git -c <key>=<value> push, tidak cocok dengan aturan, jadi tidak diperiksa. Untuk checkpoint yang memeriksa teks perintah lengkap, tambahkan hook PreToolUse.

Pilih mekanisme yang sesuai dengan seberapa tegas batas yang diperlukan:

Batas Mekanisme Perilaku dalam mode otomatis
Prompt sebelum tindakan permissions.ask Selalu meminta untuk perintah yang cocok dengan aturan yang dibatasi konten seperti resep di atas. Pengklasifikasi tidak dapat auto-approve tindakan yang cocok.
Jangan pernah jalankan tindakan permissions.deny Memblokir sebelum pengklasifikasi dikonsultasikan. Baik pengklasifikasi maupun niat pengguna tidak dapat menggantinya.
Batas satu kali untuk sesi ini Nyatakan dalam percakapan, seperti "jangan push sampai saya review" Pengklasifikasi memblokir tindakan yang cocok, tetapi batas dapat hilang jika context compaction menghapus pesan yang menyatakannya. Gunakan aturan ask atau deny untuk jaminan yang tahan lama.

Tempat pengklasifikasi membaca konfigurasi

Pengklasifikasi membaca konten CLAUDE.md yang sama yang dimuat Claude sendiri, jadi instruksi seperti "jangan pernah force push" di CLAUDE.md proyek Anda mengarahkan Claude dan pengklasifikasi secara bersamaan. Mulai dari sana untuk konvensi proyek dan aturan perilaku.

Untuk aturan yang berlaku di seluruh proyek, seperti infrastruktur terpercaya atau aturan penolakan di tingkat organisasi, gunakan blok pengaturan autoMode. Pengklasifikasi membaca autoMode dari cakupan berikut:

Cakupan File Gunakan untuk
Satu pengembang ~/.claude/settings.json Infrastruktur terpercaya pribadi
Di seluruh organisasi Pengaturan terkelola Infrastruktur terpercaya yang didistribusikan ke semua pengembang
Bendera --settings atau Agent SDK JSON inline Penggantian per-invokasi untuk otomasi

Pengklasifikasi tidak membaca autoMode dari pengaturan proyek di .claude/settings.json atau .claude/settings.local.json. Kedua file berada di direktori repo, jadi repo yang diperiksa atau langkah build dapat sebaliknya menyuntikkan aturan izinnya sendiri. Pindahkan blok autoMode apa pun di .claude/settings.local.json ke ~/.claude/settings.json.

Entri dari setiap cakupan digabungkan. Pengembang dapat memperluas environment, allow, soft_deny, dan hard_deny dengan entri pribadi tetapi tidak dapat menghapus entri yang disediakan pengaturan terkelola. Karena aturan izin bertindak sebagai pengecualian untuk aturan blok lunak di dalam pengklasifikasi, entri allow yang ditambahkan pengembang dapat mengganti entri soft_deny organisasi: kombinasinya bersifat aditif, bukan batas kebijakan keras.

[!NOTE]

Pengklasifikasi adalah gerbang kedua yang berjalan setelah sistem izin. Untuk tindakan yang tidak boleh pernah berjalan terlepas dari niat pengguna atau konfigurasi pengklasifikasi, gunakan permissions.deny dalam pengaturan terkelola, yang memblokir tindakan sebelum pengklasifikasi dikonsultasikan dan tidak dapat ditimpa.

Tentukan infrastruktur terpercaya

Untuk sebagian besar organisasi, autoMode.environment adalah satu-satunya bidang yang perlu Anda atur. Ini memberitahu pengklasifikasi repositori, bucket, dan domain mana yang terpercaya: pengklasifikasi menggunakannya untuk memutuskan apa arti "eksternal", jadi tujuan apa pun yang tidak tercantum adalah target potensi exfiltration.

claude auto-mode defaults mencetak tiga jenis entri lingkungan.

  • Context slots: mendeskripsikan organisasi, stack, dan postur keamanan Anda sehingga pengklasifikasi membaca aturan lain dalam konteks Anda. Masing-masing default ke None configured atau ke asumsi konservatif yang dinamai di sebelahnya:
    • Organization

    • Primary use of Claude Code: default ke software development

    • Cloud provider(s)

    • Repository visibility: sebuah repositori diasumsikan private kecuali host remote dan namanya menunjukkan sebaliknya, atau pengklasifikasi membaca pemeriksaan visibilitas lebih awal dalam percakapan yang menunjukkan bahwa itu public.

      Dalam permintaan pengklasifikasi yang dikirim oleh Claude Code itu sendiri, pengklasifikasi membaca pesan Anda dan perintah yang dijalankan Claude, bukan output mereka. Bukti harus berupa sesuatu yang dapat dibaca pengklasifikasi, seperti pesan Anda sendiri yang menyebutkan repositori sebagai public; output dari gh repo view saja tidak mencapainya.

    • Internal sharing / snippet hosting: layanan paste dan gist publik diperlakukan sebagai di luar batas kepercayaan sampai Anda menyebutkan satu

    • Org-specific CLIs

    • Secrets management

    • CI/CD deploy targets

    • Network posture

    • Host containment: default ke mesin developer biasa atau CI runner dengan internet terbuka. Jika Claude Code berjalan dalam container, VM, atau pod dengan daftar allow-list egress atau tetangga yang tidak boleh disentuh, sebutkan host yang diizinkan, apakah endpoint metadata cloud harus dapat dijangkau, dan proyek cloud, cluster, atau registry mana yang digunakan tugas dan di bawah identitas apa. Sampai entri ini menyebutkan identitas itu, pengklasifikasi memblokir permintaan untuk kredensial host itu sendiri. Memerlukan Claude Code v2.1.257 atau lebih baru

    • Protected deployment namespaces / environments: kembali ke heuristik Sensitive remote targets sampai Anda menyebutkannya

    • Data retention / declassification

  • Trust slots: sebutkan apa yang diperlakukan pengklasifikasi sebagai dalam batas Anda. Slot adalah Trusted repo, Source control, Trusted internal domains, Trusted cloud buckets, Key internal services, dan Internal package registry. Entri repo dan source-control default ke repositori kerja dan remote yang dikonfigurasinya. Setiap slot kepercayaan lainnya default ke None configured, jadi tidak ada yang lain terpercaya sampai Anda menambahkannya. Visibilitas repositori hanya mencakup materi rahasia: repositori private adalah tujuan yang dapat diterima untuk materi rahasia, tetapi membuat repositori private tidak pernah menghapus rahasia atau data pribadi atau terpercaya ke dalamnya, dan pengklasifikasi memperlakukan konten yang diport, diarahkan ulang, atau pertama kali dibaca dari luar repositori kerja sebagai bukan pekerjaan repositori itu sendiri.
  • Sensitivity slots: sebutkan apa yang diperlakukan aturan perlindungan sebagai berisiko tinggi. Slot adalah Sensitive data locations & audiences, Sensitive remote targets, dan Protected IaC scopes. Masing-masing default ke heuristik yang luas, seperti memperlakukan host atau namespace apa pun yang namanya membawa prod atau production sebagai target remote sensitif, jadi aturan perlindungan aktif sebelum Anda mengonfigurasi apa pun. Menyebutkan target konkret dalam slot sensitivitas membuat aturan tersebut berlaku untuk target yang disebutkan alih-alih heuristik.

Untuk menambahkan entri Anda sendiri bersama default, sertakan string literal "$defaults" dalam array. Entri default disambung pada posisi itu, jadi entri kustom Anda dapat berada sebelum atau sesudahnya.

Contoh berikut mempertahankan entri default dan menambahkan repo, bucket, domain, dan layanan organisasi.

{
  "autoMode": {
    "environment": [
      "$defaults",
      "Source control: github.example.com/acme-corp and all repos under it",
      "Trusted cloud buckets: s3://acme-build-artifacts, gs://acme-ml-datasets",
      "Trusted internal domains: *.corp.example.com, api.internal.example.com",
      "Key internal services: Jenkins at ci.example.com, Artifactory at artifacts.example.com"
    ]
  }
}

Setelah Anda menyimpan pengaturan Anda, jalankan claude auto-mode config untuk mengkonfirmasi aturan efektif mencakup entri Anda.

Entri adalah prosa, bukan regex atau pola alat. Pengklasifikasi membacanya sebagai aturan bahasa alami. Tulislah dengan cara Anda akan mendeskripsikan infrastruktur Anda kepada engineer baru. Bagian lingkungan yang menyeluruh mencakup:

  • Organization: nama perusahaan Anda dan apa Claude Code terutama digunakan untuk, seperti software development, infrastructure automation, atau data engineering
  • Source control: setiap GitHub, GitLab, atau Bitbucket org yang didorong developer Anda
  • Cloud providers and trusted buckets: nama bucket atau awalan yang Claude harus dapat membaca dan menulis
  • Trusted internal domains: hostname untuk API, dashboard, dan layanan di dalam jaringan Anda, seperti *.internal.example.com
  • Key internal services: CI, artifact registries, internal package indexes, incident tooling
  • Internal package registry: npm pribadi, PyPI, atau registry lain yang harus dirutekan install, jadi install yang melewatinya untuk registry publik mendapat blokir
  • Sensitive data locations & audiences: bucket, database, atau path yang menyimpan data pribadi, data bisnis rahasia, kredensial, data yang diatur, atau materi sensitif serupa, dan audiens yang data di setiap lokasi dapat dibagikan, jadi pengklasifikasi melindungi lokasi tersebut alih-alih menebak dari konten.
  • Sensitive remote targets: namespace, host, atau container yang dihitung sebagai production, jadi remote shell dan port-forward ke dalamnya memerlukan persetujuan eksplisit Anda
  • Protected IaC scopes: resource infrastruktur yang apply atau destroy harus selalu memerlukan Anda untuk menyebutkan perubahan
  • Additional context: batasan industri yang diatur, infrastruktur multi-tenant, atau persyaratan kepatuhan yang mempengaruhi apa yang harus diperlakukan pengklasifikasi sebagai berisiko

Template awal yang berguna: isi bidang dalam kurung dan hapus baris apa pun yang tidak berlaku.

{
  "autoMode": {
    "environment": [
      "$defaults",
      "Organization: {COMPANY_NAME}. Primary use: {PRIMARY_USE_CASE, e.g. software development, infrastructure automation}",
      "Source control: {SOURCE_CONTROL, e.g. GitHub org github.example.com/acme-corp}",
      "Cloud provider(s): {CLOUD_PROVIDERS, e.g. AWS, GCP, Azure}",
      "Trusted cloud buckets: {TRUSTED_BUCKETS, e.g. s3://acme-builds, gs://acme-datasets}",
      "Trusted internal domains: {TRUSTED_DOMAINS, e.g. *.internal.example.com, api.example.com}",
      "Key internal services: {SERVICES, e.g. Jenkins at ci.example.com, Artifactory at artifacts.example.com}",
      "Additional context: {EXTRA, e.g. regulated industry, multi-tenant infrastructure, compliance requirements}"
    ]
  }
}

Anda tidak perlu mengisi semuanya sekaligus. Rollout yang masuk akal: mulai dengan default dan tambahkan org source control dan layanan internal kunci Anda, yang menyelesaikan false positive paling umum seperti push ke repo Anda sendiri. Tambahkan domain terpercaya dan cloud bucket berikutnya. Isi sisanya saat blok muncul.

Membuat entri lingkungan dengan /auto-mode-setup

Jalankan /auto-mode-setup agar Claude Code menyusun draf entri autoMode.environment, dan terkadang juga entri aturan, dari proyek Anda dan sesi-sesi terbaru Anda di dalamnya. Jika Anda menerima draf tersebut, Claude Code menuliskannya ke ~/.claude/settings.json.

[!NOTE]

/auto-mode-setup tersedia pada paket Pro, Max, Ultra, Team, dan Enterprise serta dengan kunci API Claude Console. Pada paket Pro, Max, Ultra, atau Team, Anda memerlukan v2.1.228 atau yang lebih baru, atau v2.1.233 atau yang lebih baru di Windows native. Pada paket Enterprise atau dengan kunci API Claude Console, Anda memerlukan v2.1.283 atau yang lebih baru. Jika perintah ini tidak tersedia di sesi Anda, lihat /auto-mode-setup mengembalikan "Unknown command".

Apa yang dibaca oleh /auto-mode-setup

Jika ~/.claude/settings.json sudah berisi entri autoMode, Claude Code memulai dengan menanyakan apakah akan menambahkan ke daftar lingkungan Anda atau menggantinya, dan tetap mempertahankan aturan yang Anda tulis dalam kedua kasus. Claude Code kemudian menanyakan bagaimana Anda menggunakan proyek ini dan menawarkan dua pemindaian opsional sebelum memindai apa pun. Dalam pemindaian, Claude Code selalu membaca sumber-sumber berikut:

  • CLAUDE.md, README.md, file konfigurasi, dan remote git milik proyek ini
  • Pengaturan autoMode dan permissions.allow Anda
  • Host, bucket, dan nama perintah dari perintah yang dijalankan Claude dalam sesi-sesi terbaru Anda di proyek ini, tidak pernah pesan Anda

Kedua pemindaian opsional masing-masing menambahkan satu sumber:

  • Kata pertama dari setiap perintah dalam riwayat shell Anda
  • Host remote dan nama repositori di bawah direktori home Anda

Meninjau dan menyimpan draf

Claude Code memindai di latar belakang, lalu menampilkan draf kepada Anda. Anda menerima atau membuang draf tersebut secara keseluruhan, jadi edit ~/.claude/settings.json setelahnya untuk menyesuaikan entri satu per satu. Saat Anda menerimanya, Claude Code menuliskan draf dan menyelaraskannya dengan pengaturan yang sudah Anda miliki:

  • Claude Code menulis daftar environment tanpa "$defaults", karena draf tersebut menuliskan secara eksplisit entri bawaan yang dibiarkannya tidak berubah
  • Claude Code menyertakan "$defaults" di setiap daftar allow, soft_deny, dan hard_deny yang ditambahi entri oleh draf, kecuali Anda sudah menulis daftar allow tanpanya, sehingga aturan bawaan yang belum Anda ganti tetap berlaku
  • Setelah menyimpan, Claude Code menawarkan untuk menghapus aturan permissions.allow di ~/.claude/settings.json yang diabaikan oleh auto mode, seperti Bash(*), atau yang menyetujui perintah destruktif secara otomatis

Kemudian jalankan claude auto-mode config untuk melihat hasil yang berlaku.

Mematikan /auto-mode-setup

Setelah auto mode memblokir beberapa tindakan dan Anda masih belum memiliki entri autoMode.environment, Claude Code menampilkan dialog berjudul "Teach auto mode about your environment?" di akhir sebuah giliran dan menawarkan untuk menjalankan /auto-mode-setup untuk Anda. Untuk menghentikan tawaran tersebut tetapi tetap mempertahankan perintahnya, pilih Don't show again di dialog tersebut.

Untuk mematikan perintah sekaligus tawarannya, tambahkan entri skillOverrides ini ke ~/.claude/settings.json:

{
  "skillOverrides": {
    "auto-mode-setup": "off"
  }
}

/auto-mode-setup adalah perintah bawaan, bukan skill bawaan, sehingga entri skillOverrides ini tetap berlaku untuknya, tetapi disableBundledSkills tidak mematikannya.

/auto-mode-setup returns "Unknown command"

Jika mengetik /auto-mode-setup di prompt Claude Code menampilkan Unknown command: /auto-mode-setup, periksa penyebab-penyebab berikut:

Di sesi cloud, perintah ini justru menampilkan /auto-mode-setup isn't available in this environment.. Jalankan perintah ini di sesi interaktif di terminal Anda.

Ganti aturan blokir dan izin

Tiga bidang tambahan memungkinkan Anda mengganti daftar aturan bawaan pengklasifikasi:

  • autoMode.hard_deny: batas keamanan tanpa syarat
  • autoMode.soft_deny: tindakan destruktif yang niat pengguna dapat menghapus
  • autoMode.allow: pengecualian untuk aturan blokir soft

Masing-masing adalah array deskripsi prosa, dibaca sebagai aturan bahasa alami. Untuk hard block berbasis pola alat yang berjalan sebelum pengklasifikasi, gunakan permissions.deny.

Di dalam pengklasifikasi, prioritas bekerja dalam empat tingkat:

  • Aturan hard_deny memblokir tanpa syarat. Niat pengguna dan pengecualian allow tidak berlaku.
  • Aturan soft_deny memblokir selanjutnya. Niat pengguna dan pengecualian allow dapat mengganti ini.
  • Aturan allow kemudian mengganti aturan soft_deny yang cocok sebagai pengecualian.
  • Niat pengguna eksplisit mengganti blokir soft yang tersisa: jika pesan pengguna secara langsung dan spesifik menggambarkan tindakan yang tepat Claude akan ambil, pengklasifikasi mengizinkannya bahkan ketika aturan soft_deny cocok.

Permintaan umum tidak dihitung sebagai niat eksplisit. Meminta Claude untuk "membersihkan repo" tidak mengotorisasi force-push, tetapi meminta Claude untuk "force-push cabang ini" melakukannya.

Untuk melonggarkan, tambahkan ke allow ketika pengklasifikasi berulang kali menandai pola rutin yang pengecualian default tidak cover. Untuk mengencangkan, tambahkan ke soft_deny untuk risiko destruktif spesifik lingkungan Anda yang default lewatkan, atau ke hard_deny untuk batas keamanan yang tidak boleh pernah dilintasi.

Untuk menjaga aturan bawaan sambil menambahkan aturan Anda sendiri, sertakan string literal "$defaults" dalam array. Aturan default disisipi pada posisi itu, jadi aturan kustom Anda dapat berada sebelum atau sesudahnya, dan Anda terus mewarisi pembaruan saat daftar bawaan berubah di seluruh rilis.

Contoh berikut menjaga default di semua empat daftar dan menambahkan aturan spesifik organisasi ke masing-masing.

{
  "autoMode": {
    "environment": [
      "$defaults",
      "Source control: github.example.com/acme-corp and all repos under it"
    ],
    "allow": [
      "$defaults",
      "Deploying to the staging namespace is allowed: staging is isolated from production and resets nightly",
      "Writing to s3://acme-scratch/ is allowed: ephemeral bucket with a 7-day lifecycle policy"
    ],
    "soft_deny": [
      "$defaults",
      "Never run database migrations outside the migrations CLI, even against dev databases",
      "Never modify files under infra/terraform/prod/: production infrastructure changes go through the review workflow"
    ],
    "hard_deny": [
      "$defaults",
      "Never send repository contents to third-party code-review APIs"
    ]
  }
}

[!CAUTION]

Menetapkan salah satu dari environment, allow, soft_deny, atau hard_deny tanpa "$defaults" menggantikan seluruh daftar default untuk bagian itu. Jika Anda menetapkan array tanpa "$defaults", Anda membuang aturan bawaan untuk bagian itu:

  • soft_deny: setiap aturan blokir soft bawaan, termasuk force push, curl | bash, production deploys, dan bypass auto-mode
  • hard_deny: aturan data exfiltration bawaan

Setiap bagian dievaluasi secara independen, jadi menetapkan environment saja membiarkan daftar allow, soft_deny, dan hard_deny default tetap utuh.

Hanya hilangkan "$defaults" ketika Anda bermaksud mengambil kepemilikan penuh atas daftar. Untuk melakukan itu dengan aman, jalankan claude auto-mode defaults untuk mencetak aturan bawaan, salin ke file pengaturan Anda, kemudian tinjau setiap aturan terhadap pipeline Anda sendiri dan toleransi risiko.

Edit rules from /permissions

Untuk melihat dan mengedit aturan classifier dan entri environment tanpa membuka file pengaturan, jalankan /permissions dan pilih tab Auto mode. Tab tersebut memerlukan Claude Code v2.1.246 atau lebih baru, dan hanya muncul ketika auto mode tersedia untuk sesi Anda.

Claude Code menampilkan entri dari managed settings atau flag --settings sebagai read-only, dan menyimpan setiap perubahan yang Anda buat di tab ke ~/.claude/settings.json.

Arahkan semua perintah shell melalui pengklasifikasi

Secara default, aturan Bash dan PowerShell yang sempit seperti Bash(npm test) tetap berlaku dalam mode otomatis. Claude Code menyelesaikannya sebelum pengklasifikasi berjalan, kecuali perintah membawa domain yang diizinkan per-perintah. Claude Code menangguhkan hanya aturan luas yang memberikan eksekusi kode arbitrer, seperti Bash(*) atau interpreter dengan wildcard, bersama dengan setiap aturan yang menyebutkan Monitor, karena perintah Monitor berjalan melalui shell. Ini berarti aturan yang sempit masih dapat membiarkan argumen yang merusak melewati tanpa pengklasifikasi melihatnya, misalnya jalur skrip atau flag yang tidak diantisipasi oleh awalan aturan.

Atur autoMode.classifyAllShell ke true untuk menangguhkan setiap aturan izin Bash dan PowerShell saat mode otomatis aktif, sehingga pengklasifikasi mengevaluasi setiap perintah shell terlepas dari daftar izin Anda, kecuali penghapusan jalur kritis.

{
  "autoMode": {
    "classifyAllShell": true
  }
}

Ini menukar latensi untuk cakupan: perintah yang akan disetujui oleh aturan izin secara instan sekarang menunggu keputusan pengklasifikasi, dan setiap perintah shell dihitung sebagai panggilan pengklasifikasi.

Pengaturan hanya berlaku saat mode otomatis aktif, dan aturan izin Anda berperilaku normal dalam mode izin lainnya.

Periksa default dan konfigurasi efektif Anda

Subperintah claude auto-mode membantu Anda memeriksa, memvalidasi, dan mengatur ulang konfigurasi Anda.

Cetak aturan bawaan environment, allow, soft_deny, dan hard_deny sebagai JSON:

claude auto-mode defaults

Untuk membaca kata-kata lengkap satu aturan tanpa melalui pipa jq, berikan --label dengan awal label aturan, seperti claude auto-mode defaults --label 'Git Destructive'. Pencocokan adalah awalan yang tidak peka huruf besar-kecil pada label setiap aturan, dan bagian tanpa kecocokan dicetak sebagai daftar kosong.

Cetak apa yang sebenarnya digunakan pengklasifikasi sebagai JSON, dengan pengaturan Anda diterapkan di mana diatur dan default sebaliknya:

claude auto-mode config

Baik defaults maupun config mencetak empat daftar aturan sebagai satu objek JSON, dengan setiap aturan sebagai string prosa. Ini adalah contoh yang dipotong:

{
  "allow": [
    ...
    "Test Artifacts: Hardcoded test API keys, placeholder credentials in examples, or hardcoding test cases. Placeholder means authored as a placeholder — a file or value copied from a real secret or sensitive path is never a test artifact (see Sensitive-Source Provenance).",
    ...
  ],
  "soft_deny": [
    "Git Destructive [named+specifics — **must name:** the destructive operation and its target]: Force pushing (`git push --force`), deleting remote branches, tags, or releases, or rewriting remote history. Also `git commit --amend` when the commit being rewritten is not the agent's own unpushed work: either no prior `git commit` is visible (HEAD pre-dates the session), or a `git push` of the current branch is visible after the most recent commit (it has been pushed). Clears when the user asked to amend/reword/fixup, or when it is a message-only reword (`--amend -m …`, nothing newly staged) of a commit the agent visibly created this session.",
    ...
  ],
  "hard_deny": [...],
  "environment": [
    ...
    "**Trusted repo**: The git repository the agent started in (its working directory) and its configured remote(s). When the repo's public/private visibility is given — by the Repository visibility entry or the user's own message — use it to scope what is OK to commit or push there: confidential material is fine in a private repo; in a public one, only that repo's own work is — and content ported, repointed, or first read from outside this session's repo is not its own work, whoever directed the port. Visibility scopes confidential material only: secrets and sensitive data (personal & entrusted) are never cleared into any repo by its visibility (see Definitions).",
    ...
  ]
}

Dapatkan umpan balik AI tentang entri allow, soft_deny, hard_deny, dan environment kustom Anda:

claude auto-mode critique

Jika Anda telah menulis aturan kustom, claude auto-mode critique meninjau mereka dan menandai entri yang ambigu, berlebihan, atau kemungkinan menyebabkan positif palsu.

Untuk membuang kustomisasi Anda dan kembali ke default bawaan, jalankan subperintah reset, yang menghapus bagian autoMode dari file pengaturan pengguna Anda:

claude auto-mode reset

Perintah merangkum apa yang akan dihapus dan menanyakan Reset auto mode configuration to defaults? sebelum menulis; berikan --yes untuk melewati konfirmasi. Reset hanya mengubah ~/.claude/settings.json: aturan autoMode dari managed settings atau bendera --settings masih berlaku.

Tinjau penolakan

Untuk meninjau dan mencoba kembali tindakan yang ditolak oleh pengklasifikasi mode otomatis, buka /permissions dan pilih tab Recently denied, di mana Claude Code mencatat setiap penolakan. Tekan r pada tindakan yang ditolak untuk menandainya untuk dicoba kembali: ketika Anda keluar dari dialog, Claude Code mengirimkan pesan yang memberitahu model bahwa mungkin dapat mencoba kembali panggilan alat tersebut dan melanjutkan percakapan.

Ketika pengklasifikasi menghasilkan tidak ada putusan tentang tindakan, karena pemeriksaan keamanan terpisah dari mode otomatis menolak permintaan pengklasifikasi sendiri atau responsnya tidak dapat diuraikan, Claude Code menolak tindakan tanpa mencatatnya di bawah Recently denied. Entri kesalahan yang ditautkan mencakup apa yang diberitahu kepada Claude dan cara menjalankan tindakan jika Anda membutuhkannya.

Perbaiki penolakan dengan aturan izin, entri lingkungan, atau percobaan ulang

Untuk membaca perintah atau URL di balik pemberitahuan seperti bash denied by auto mode · [Data Exfiltration] · /permissions, gunakan tab Recently denied, hook, atau percakapan:

  • Tab Recently denied: di dialog /permissions, sorot tindakan Bash atau PowerShell yang ditolak untuk membaca perintahnya di bawah daftar. Dalam mode pembaca layar, semua perintah muncul sebelum daftar.
  • Hook: untuk menangkap input yang tepat dari penolakan secara terprogram, tambahkan hook PermissionDenied, yang menerimanya sebagai tool_input.
  • Percakapan: temukan panggilan tool. Jika panggilan muncul diperpendek atau dilipat ke dalam baris ringkasan seperti Ran 3 shell commands, tekan Ctrl+O untuk membuka penampil transkrip, yang memperluas panggilan tersebut.

Teks di bawah panggilan memberi tahu Anda apakah ada yang perlu diperbaiki. Baris redup Not run · auto mode's check had no usable answer, atau teks yang melaporkan masalah dengan pengklasifikasi itu sendiri, seperti Auto mode could not evaluate this action, berarti Claude Code memblokir panggilan tanpa putusan dari pengklasifikasi. Untuk baris Not run, tekan Ctrl+O untuk membaca pesan lengkapnya, lalu lihat Auto mode cannot determine the safety of an action atau The server returned no safety verdict untuk mengetahui apa yang harus dilakukan.

Jika tidak, baris yang berbunyi Denied by auto mode classifier dengan alasan seperti [Production Deploy] atau Blocked by classifier berarti pengklasifikasi menilai panggilan tidak aman, jadi pilih perbaikan dari apa yang dicoba oleh panggilan untuk dicapai atau lakukan:

  • Tujuan yang Claude butuhkan sepanjang tugas, seperti registri paket, domain internal, atau host repositori: tambahkan ke autoMode.environment.
  • Perintah yang ingin Anda jalankan tanpa tinjauan dari sekarang: tambahkan aturan allow.
  • Tindakan sekali pakai yang memang Anda maksudkan: nyatakan niat itu dalam pesan berikutnya dan biarkan Claude mencoba kembali.

Anda dapat menambahkan entri lingkungan atau aturan allow dari tab Auto mode dialog /permissions.

Teks dalam tanda kurung siku, seperti [Data Exfiltration], adalah nama aturan yang cocok dengan pengklasifikasi. Untuk membaca kata-kata lengkap aturan tersebut, lihat Inspeksi default dan konfigurasi efektif Anda.

Perbaiki penolakan berulang

Penolakan berulang untuk tujuan yang sama biasanya berarti pengklasifikasi kehilangan konteks. Tambahkan tujuan itu ke autoMode.environment, atau jalankan /auto-mode-setup untuk membuat Claude Code membuat draf entri, kemudian jalankan claude auto-mode config untuk mengonfirmasi perubahan telah diterapkan.

Lihat juga

  • Mode izin: apa itu mode otomatis, apa yang diblokir secara default, dan sesi mana yang dimulai di dalamnya
  • Pengaturan terkelola: terapkan konfigurasi autoMode di seluruh organisasi Anda
  • Izin: aturan izinkan, tanya, dan tolak yang berlaku sebelum pengklasifikasi berjalan
  • Semua pengaturan: setiap kunci pengaturan, termasuk autoMode