SpyBara
Go Premium

settings.md 2026-05-17 01:01 UTC to 2026-05-18 23:59 UTC

10 added, 7 removed.

2026
Sun 31 06:39 Sat 30 06:23 Fri 29 06:38 Thu 28 06:37 Wed 27 06:42 Tue 26 06:33 Sun 24 06:25 Sat 23 06:18 Fri 22 06:33 Thu 21 06:36 Wed 20 06:35 Tue 19 06:34 Mon 18 23:59 Sun 17 01:01 Fri 15 22:58 Thu 14 17:02 Wed 13 23:01 Tue 12 22:57 Mon 11 23:00 Sun 10 23:03 Sat 9 04:57 Fri 8 22:00 Thu 7 22:59 Tue 5 23:00 Mon 4 22:58 Sat 2 18:14 Fri 1 18:19

Pengaturan Claude Code

Konfigurasikan Claude Code dengan pengaturan global dan tingkat proyek, serta variabel lingkungan.

Claude Code menawarkan berbagai pengaturan untuk mengonfigurasi perilakunya sesuai kebutuhan Anda. Anda dapat mengonfigurasi Claude Code dengan menjalankan perintah /config saat menggunakan REPL interaktif, yang membuka antarmuka Pengaturan bertab di mana Anda dapat melihat informasi status dan memodifikasi opsi konfigurasi.

Cakupan konfigurasi

Claude Code menggunakan sistem cakupan untuk menentukan di mana konfigurasi berlaku dan siapa yang membagikannya. Memahami cakupan membantu Anda memutuskan cara mengonfigurasi Claude Code untuk penggunaan pribadi, kolaborasi tim, atau penyebaran perusahaan.

Cakupan yang tersedia

Cakupan Lokasi Siapa yang terpengaruh Dibagikan dengan tim?
Managed Pengaturan yang dikelola server, plist / registry, atau managed-settings.json tingkat sistem Semua pengguna di mesin Ya (digunakan oleh IT)
User Direktori ~/.claude/ Anda, di semua proyek Tidak
Project .claude/ di repositori Semua kolaborator di repositori ini Ya (dikomit ke git)
Local .claude/settings.local.json Anda, hanya di repositori ini Tidak (diabaikan git)

Kapan menggunakan setiap cakupan

Cakupan Managed adalah untuk:

  • Kebijakan keamanan yang harus diterapkan di seluruh organisasi
  • Persyaratan kepatuhan yang tidak dapat ditimpa
  • Konfigurasi standar yang digunakan oleh IT/DevOps

Cakupan User paling baik untuk:

  • Preferensi pribadi yang Anda inginkan di mana-mana (tema, pengaturan editor)
  • Tools dan plugins yang Anda gunakan di semua proyek
  • Kunci API dan autentikasi (disimpan dengan aman)

Cakupan Project paling baik untuk:

  • Pengaturan bersama tim (izin, hooks, MCP servers)
  • Plugins yang harus dimiliki seluruh tim
  • Standardisasi tooling di seluruh kolaborator

Cakupan Local paling baik untuk:

  • Penggantian pribadi untuk proyek tertentu
  • Pengaturan pengujian sebelum dibagikan dengan tim
  • Pengaturan spesifik mesin yang tidak akan berfungsi untuk orang lain

Bagaimana cakupan berinteraksi

Ketika pengaturan yang sama muncul dalam beberapa cakupan, Claude Code menerapkannya dalam urutan prioritas:

  1. Managed (tertinggi) - tidak dapat ditimpa oleh apa pun
  2. Argumen baris perintah - penggantian sesi sementara
  3. Local - menimpa pengaturan proyek dan pengguna
  4. Project - menimpa pengaturan pengguna
  5. User (terendah) - berlaku ketika tidak ada yang menentukan pengaturan

Misalnya, jika pengaturan pengguna Anda menetapkan spinnerTipsEnabled ke true dan pengaturan proyek menetapkannya ke false, nilai proyek berlaku. Aturan izin berperilaku berbeda karena mereka menggabungkan di seluruh cakupan daripada menimpa. Lihat Preseden pengaturan.

Apa yang menggunakan cakupan

Cakupan berlaku untuk banyak fitur Claude Code:

Fitur Lokasi pengguna Lokasi proyek Lokasi lokal
Settings ~/.claude/settings.json .claude/settings.json .claude/settings.local.json
Subagents ~/.claude/agents/ .claude/agents/ Tidak ada
MCP servers ~/.claude.json .mcp.json ~/.claude.json (per-proyek)
Plugins ~/.claude/settings.json .claude/settings.json .claude/settings.local.json
CLAUDE.md ~/.claude/CLAUDE.md CLAUDE.md atau .claude/CLAUDE.md CLAUDE.local.md

Di Windows, jalur yang ditampilkan sebagai ~/.claude diselesaikan ke %USERPROFILE%\.claude.


File pengaturan

File settings.json adalah mekanisme resmi untuk mengonfigurasi Claude Code melalui pengaturan hierarki:

  • Pengaturan pengguna didefinisikan dalam ~/.claude/settings.json dan berlaku untuk semua proyek.

  • Pengaturan proyek disimpan di direktori proyek Anda:

    • .claude/settings.json untuk pengaturan yang diperiksa ke dalam kontrol sumber dan dibagikan dengan tim Anda
    • .claude/settings.local.json untuk pengaturan yang tidak diperiksa, berguna untuk preferensi pribadi dan eksperimen. Claude Code akan mengonfigurasi git untuk mengabaikan .claude/settings.local.json saat dibuat.
  • Pengaturan Managed: Untuk organisasi yang memerlukan kontrol terpusat, Claude Code mendukung beberapa mekanisme pengiriman untuk pengaturan yang dikelola. Semua menggunakan format JSON yang sama dan tidak dapat ditimpa oleh pengaturan pengguna atau proyek:

    • Pengaturan yang dikelola server: dikirimkan dari server Anthropic melalui konsol admin Claude.ai. Lihat pengaturan yang dikelola server.

    • Kebijakan tingkat MDM/OS: dikirimkan melalui manajemen perangkat asli di macOS dan Windows:

      • macOS: domain preferensi terkelola com.anthropic.claudecode. Kunci tingkat atas plist mencerminkan managed-settings.json, dengan pengaturan bersarang sebagai kamus dan array sebagai array plist. Terapkan melalui profil konfigurasi di Jamf, Iru (Kandji), atau alat MDM serupa.
      • Windows: kunci registry HKLM\SOFTWARE\Policies\ClaudeCode dengan nilai Settings (REG_SZ atau REG_EXPAND_SZ) berisi JSON (digunakan melalui Group Policy atau Intune)
      • Windows (tingkat pengguna): HKCU\SOFTWARE\Policies\ClaudeCode (prioritas kebijakan terendah, hanya digunakan ketika tidak ada sumber tingkat admin)
    • Berbasis file: managed-settings.json dan managed-mcp.json digunakan ke direktori sistem:

      • macOS: /Library/Application Support/ClaudeCode/
      • Linux dan WSL: /etc/claude-code/
      • Windows: C:\Program Files\ClaudeCode\

      Pengaturan yang dikelola berbasis file juga mendukung direktori drop-in di managed-settings.d/ dalam direktori sistem yang sama bersama managed-settings.json. Ini memungkinkan tim terpisah untuk menggunakan fragmen kebijakan independen tanpa mengoordinasikan pengeditan ke file tunggal.

      Mengikuti konvensi systemd, managed-settings.json digabungkan terlebih dahulu sebagai dasar, kemudian semua file *.json dalam direktori drop-in diurutkan secara alfabetis dan digabungkan di atas. File yang lebih baru menimpa yang lebih awal untuk nilai skalar; array digabungkan dan dihilangkan duplikatnya; objek digabungkan secara mendalam. File tersembunyi yang dimulai dengan . diabaikan.

      Gunakan prefiks numerik untuk mengontrol urutan penggabungan, misalnya 10-telemetry.json dan 20-security.json.

    Lihat pengaturan yang dikelola dan Konfigurasi MCP yang Dikelola untuk detail.

    Repositori ini mencakup template penyebaran pemula untuk Jamf, Iru (Kandji), Intune, dan Group Policy. Gunakan ini sebagai titik awal dan sesuaikan dengan kebutuhan Anda.

  • Konfigurasi lainnya disimpan dalam ~/.claude.json. File ini berisi sesi OAuth, konfigurasi MCP server untuk cakupan pengguna dan lokal, status per-proyek (tools yang diizinkan, pengaturan kepercayaan), dan berbagai cache. MCP servers dengan cakupan proyek disimpan secara terpisah dalam .mcp.json.

{
  "$schema": "https://json.schemastore.org/claude-code-settings.json",
  "permissions": {
    "allow": [
      "Bash(npm run lint)",
      "Bash(npm run test *)",
      "Read(~/.zshrc)"
    ],
    "deny": [
      "Bash(curl *)",
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)"
    ]
  },
  "env": {
    "CLAUDE_CODE_ENABLE_TELEMETRY": "1",
    "OTEL_METRICS_EXPORTER": "otlp"
  },
  "companyAnnouncements": [
    "Welcome to Acme Corp! Review our code guidelines at docs.acme.com",
    "Reminder: Code reviews required for all PRs",
    "New security policy in effect"
  ]
}

Baris $schema dalam contoh di atas menunjuk ke skema JSON resmi untuk pengaturan Claude Code. Menambahkannya ke settings.json Anda memungkinkan pelengkapan otomatis dan validasi inline di VS Code, Cursor, dan editor lain yang mendukung validasi skema JSON.

Skema yang dipublikasikan diperbarui secara berkala dan mungkin tidak menyertakan pengaturan yang ditambahkan dalam rilis CLI terbaru, jadi peringatan validasi pada bidang yang baru didokumentasikan tidak harus berarti konfigurasi Anda tidak valid.

Pengaturan yang tersedia

settings.json mendukung sejumlah opsi:

Kunci Deskripsi Contoh
agent Jalankan thread utama sebagai subagent bernama. Menerapkan prompt sistem subagent, pembatasan tool, dan model. Lihat Panggil subagents secara eksplisit "code-reviewer"
allowedChannelPlugins (Pengaturan yang dikelola saja) Daftar putih plugin channel yang dapat mendorong pesan. Menggantikan daftar putih Anthropic default saat diatur. Tidak terdefinisi = kembali ke default, array kosong = blokir semua plugin channel. Memerlukan channelsEnabled: true. Lihat Batasi plugin channel mana yang dapat dijalankan [{ "marketplace": "claude-plugins-official", "plugin": "telegram" }]
allowedHttpHookUrls Daftar putih pola URL yang dapat ditargetkan oleh HTTP hooks. Mendukung * sebagai wildcard. Saat diatur, hooks dengan URL yang tidak cocok diblokir. Tidak terdefinisi = tidak ada pembatasan, array kosong = blokir semua HTTP hooks. Array digabungkan di seluruh sumber pengaturan. Lihat Konfigurasi Hook ["https://hooks.example.com/*"]
allowedMcpServers Saat diatur dalam managed-settings.json, daftar putih MCP servers yang dapat dikonfigurasi pengguna. Tidak terdefinisi = tidak ada pembatasan, array kosong = lockdown. Berlaku untuk semua cakupan. Daftar hitam memiliki prioritas. Lihat Konfigurasi MCP yang Dikelola [{ "serverName": "github" }]
allowManagedHooksOnly (Pengaturan yang dikelola saja) Hanya hooks yang dikelola, SDK hooks, dan hooks dari plugins yang dipaksa diaktifkan dalam pengaturan yang dikelola enabledPlugins yang dimuat. Hooks pengguna, proyek, dan semua plugin hooks lainnya diblokir. Lihat Konfigurasi Hook true
allowManagedMcpServersOnly (Pengaturan yang dikelola saja) Hanya allowedMcpServers dari pengaturan yang dikelola yang dihormati. deniedMcpServers masih digabungkan dari semua sumber. Pengguna masih dapat menambahkan MCP servers, tetapi hanya daftar putih yang ditentukan admin yang berlaku. Lihat Konfigurasi MCP yang Dikelola true
allowManagedPermissionRulesOnly (Pengaturan yang dikelola saja) Cegah pengaturan pengguna dan proyek dari mendefinisikan aturan izin allow, ask, atau deny. Hanya aturan dalam pengaturan yang dikelola yang berlaku. Lihat Pengaturan khusus yang dikelola true
alwaysThinkingEnabled Aktifkan pemikiran yang diperluas secara default untuk semua sesi. Biasanya dikonfigurasi melalui perintah /config daripada mengedit langsung. Untuk memaksa pemikiran mati terlepas dari pengaturan ini, atur CLAUDE_CODE_DISABLE_THINKING dalam env true
apiKeyHelper Skrip khusus, yang akan dieksekusi dalam /bin/sh, untuk menghasilkan nilai auth. Nilai ini akan dikirim sebagai header X-Api-Key dan Authorization: Bearer untuk permintaan model. Atur interval penyegaran dengan CLAUDE_CODE_API_KEY_HELPER_TTL_MS /bin/generate_temp_api_key.sh
attribution Sesuaikan atribusi untuk komit git dan pull request. Lihat Pengaturan atribusi {"commit": "🤖 Generated with Claude Code", "pr": ""}
autoMemoryDirectory Direktori khusus untuk penyimpanan memori otomatis. Menerima jalur absolut atau jalur dengan awalan ~/. Diterima dari kebijakan dan pengaturan pengguna, dan dari flag --settings. Tidak diterima dari pengaturan proyek atau lokal, karena repositori yang diklon dapat menyediakan file apa pun untuk mengalihkan penulisan memori ke lokasi sensitif "~/my-memory-dir"
autoMemoryEnabled Aktifkan memori otomatis. Saat false, Claude tidak membaca dari atau menulis ke direktori memori otomatis. Default: true. Anda juga dapat mengalihkan ini dengan /memory selama sesi. Untuk menonaktifkan melalui variabel lingkungan, atur CLAUDE_CODE_DISABLE_AUTO_MEMORY dalam env false
autoMode Sesuaikan apa yang diblokir dan diizinkan oleh pengklasifikasi mode otomatis. Berisi array aturan prosa environment, allow, soft_deny, dan hard_deny. Sertakan string literal "$defaults" dalam array untuk mewarisi aturan bawaan pada posisi tersebut. Lihat Konfigurasikan mode otomatis. Tidak dibaca dari pengaturan proyek bersama {"soft_deny": ["$defaults", "Never run terraform apply"]}
autoScrollEnabled Dalam rendering fullscreen, ikuti output baru ke bagian bawah percakapan. Default: true. Muncul di /config sebagai Auto-scroll. Prompt izin masih bergulir ke tampilan saat ini dimatikan false
autoUpdatesChannel Saluran rilis untuk diikuti untuk pembaruan. Gunakan "stable" untuk versi yang biasanya sekitar satu minggu lama dan melewati versi dengan regresi besar, atau "latest" (default) untuk rilis terbaru. Untuk menonaktifkan auto-updates sepenuhnya, atur DISABLE_AUTOUPDATER dalam env "stable"
availableModels Batasi model mana yang dapat dipilih pengguna melalui /model, --model, atau ANTHROPIC_MODEL. Tidak mempengaruhi opsi Default. Lihat Batasi pemilihan model ["sonnet", "haiku"]
awaySummaryEnabled Tampilkan ringkasan sesi satu baris saat Anda kembali ke terminal setelah beberapa menit pergi. Atur ke false atau matikan Session recap di /config untuk menonaktifkan. Sama dengan CLAUDE_CODE_ENABLE_AWAY_SUMMARY true
awsAuthRefresh Skrip khusus yang memodifikasi direktori .aws (lihat konfigurasi kredensial lanjutan) aws sso login --profile myprofile
awsCredentialExport Skrip khusus yang menampilkan JSON dengan kredensial AWS (lihat konfigurasi kredensial lanjutan) /bin/generate_aws_grant.sh
blockedMarketplaces (Pengaturan yang dikelola saja) Daftar hitam sumber marketplace. Diterapkan pada penambahan marketplace dan instalasi plugin, pembaruan, penyegaran, dan auto-update, jadi marketplace yang ditambahkan sebelum kebijakan ditetapkan tidak dapat digunakan untuk mengambil plugin. Sumber yang diblokir diperiksa sebelum mengunduh, jadi mereka tidak pernah menyentuh sistem file. Lihat Pembatasan marketplace yang dikelola [{ "source": "github", "repo": "untrusted/plugins" }]
channelsEnabled (Pengaturan yang dikelola saja) Izinkan channels untuk organisasi. Pada paket Claude.ai Team dan Enterprise, channels diblokir saat ini tidak diatur atau false. Untuk akun Anthropic Console menggunakan autentikasi kunci API, channels diizinkan secara default kecuali organisasi Anda menggunakan pengaturan yang dikelola, dalam hal ini kunci ini harus diatur ke true true
claudeMd (Pengaturan yang dikelola saja) Instruksi gaya CLAUDE.md yang disuntikkan sebagai memori yang dikelola organisasi. Hanya dihormati saat diatur dalam pengaturan yang dikelola atau kebijakan dan diabaikan dalam pengaturan pengguna, proyek, dan lokal. Lihat CLAUDE.md di seluruh organisasi "Always run make lint before committing."
claudeMdExcludes Pola glob atau jalur absolut file CLAUDE.md untuk dilewati saat memuat memory. Pola cocok dengan jalur file absolut. Hanya berlaku untuk memori pengguna, proyek, dan lokal; file kebijakan yang dikelola tidak dapat dikecualikan ["**/vendor/**/CLAUDE.md"]
cleanupPeriodDays File sesi yang lebih lama dari periode ini dihapus saat startup (default: 30 hari, minimum 1). Pengaturan ke 0 ditolak dengan kesalahan validasi. Juga mengontrol cutoff usia untuk penghapusan otomatis worktrees subagent yatim piatu saat startup. Untuk menonaktifkan penulisan transkrip sepenuhnya, atur variabel lingkungan CLAUDE_CODE_SKIP_PROMPT_HISTORY, atau dalam mode non-interaktif (-p) gunakan flag --no-session-persistence atau opsi SDK persistSession: false. 20
companyAnnouncements Pengumuman untuk ditampilkan kepada pengguna saat startup. Jika beberapa pengumuman disediakan, mereka akan diputar secara acak. ["Welcome to Acme Corp! Review our code guidelines at docs.acme.com"]
defaultShell Shell default untuk perintah ! input-box. Menerima "bash" (default) atau "powershell". Pengaturan "powershell" merutekan perintah ! interaktif melalui PowerShell di Windows. Memerlukan CLAUDE_CODE_USE_POWERSHELL_TOOL=1. Lihat PowerShell tool "powershell"
deniedMcpServers Saat diatur dalam managed-settings.json, daftar hitam MCP servers yang secara eksplisit diblokir. Berlaku untuk semua cakupan termasuk servers yang dikelola. Daftar hitam memiliki prioritas atas daftar putih. Lihat Konfigurasi MCP yang Dikelola [{ "serverName": "filesystem" }]
disableAgentView Atur ke true untuk mematikan background agents dan agent view: claude agents, --bg, /background, dan supervisor on-demand. Biasanya diatur dalam pengaturan yang dikelola. Setara dengan pengaturan CLAUDE_CODE_DISABLE_AGENT_VIEW ke 1 true
disableAllHooks Nonaktifkan semua hooks dan status line khusus apa pun true
disableAutoMode Atur ke "disable" untuk mencegah mode otomatis diaktifkan. Menghapus auto dari siklus Shift+Tab dan menolak --permission-mode auto saat startup. Paling berguna dalam pengaturan yang dikelola di mana pengguna tidak dapat menimpanya "disable"
disableDeepLinkRegistration Atur ke "disable" untuk mencegah Claude Code mendaftarkan penanganan protokol claude-cli:// dengan sistem operasi saat startup. Deep links memungkinkan tools eksternal membuka sesi Claude Code dengan prompt yang sudah diisi sebelumnya. Berguna di lingkungan di mana pendaftaran penanganan protokol dibatasi atau dikelola secara terpisah "disable"
disabledMcpjsonServers Daftar MCP servers spesifik dari file .mcp.json untuk menolak ["filesystem"]
disableRemoteControl {/* min-version: 2.1.128 */}Nonaktifkan Remote Control: memblokir claude remote-control, flag --remote-control, auto-start, dan toggle dalam sesi. Biasanya ditempatkan dalam pengaturan yang dikelola untuk penegakan MDM per-perangkat, tetapi berfungsi dari cakupan apa pun. Memerlukan Claude Code v2.1.128 atau lebih baru true
disableSkillShellExecution Nonaktifkan eksekusi shell inline untuk blok !`...` dan ```! dalam skills dan perintah khusus dari sumber pengguna, proyek, plugin, atau direktori tambahan. Perintah diganti dengan [shell command execution disabled by policy] daripada dijalankan. Skills bundel dan yang dikelola tidak terpengaruh. Paling berguna dalam pengaturan yang dikelola di mana pengguna tidak dapat menimpanya true
editorMode Mode binding kunci untuk prompt input: "normal" atau "vim". Default: "normal". Muncul di /config sebagai Editor mode "vim"
effortLevel Pertahankan tingkat usaha di seluruh sesi. Menerima "low", "medium", "high", atau "xhigh". Ditulis secara otomatis saat Anda menjalankan /effort dengan salah satu nilai tersebut. --effort dan CLAUDE_CODE_EFFORT_LEVEL menimpa ini untuk satu sesi. Lihat Sesuaikan tingkat usaha untuk model yang didukung "xhigh"
enableAllProjectMcpServers Secara otomatis menyetujui semua MCP servers yang ditentukan dalam file .mcp.json proyek true
enabledMcpjsonServers Daftar MCP servers spesifik dari file .mcp.json untuk menyetujui ["memory", "github"]
env Variabel lingkungan yang akan diterapkan ke setiap sesi {"FOO": "bar"}
fastModePerSessionOptIn Saat true, mode cepat tidak bertahan di seluruh sesi. Setiap sesi dimulai dengan mode cepat mati, memerlukan pengguna untuk mengaktifkannya dengan /fast. Preferensi mode cepat pengguna masih disimpan. Lihat Memerlukan opt-in per sesi true
feedbackSurveyRate Probabilitas (0–1) bahwa survei kualitas sesi muncul saat memenuhi syarat. Atur ke 0 untuk menekan sepenuhnya, atau atur CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY dalam env. Berguna saat menggunakan Bedrock, Vertex, atau Foundry di mana tingkat sampel default tidak berlaku 0.05
fileSuggestion Konfigurasikan skrip khusus untuk pelengkapan otomatis file @. Lihat Pengaturan saran file {"type": "command", "command": "~/.claude/file-suggestion.sh"}
forceLoginMethod Gunakan claudeai untuk membatasi login ke akun Claude.ai, console untuk membatasi login ke akun Claude Console (penagihan penggunaan API) claudeai
forceLoginOrgUUID Memerlukan login untuk milik organisasi tertentu. Menerima string UUID tunggal, yang juga pra-memilih organisasi tersebut selama login, atau array UUID di mana organisasi yang terdaftar apa pun diterima tanpa pra-pemilihan. Saat diatur dalam pengaturan yang dikelola, login gagal jika akun yang diautentikasi tidak milik organisasi yang terdaftar; array kosong gagal tertutup dan memblokir login dengan pesan salah konfigurasi "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" atau ["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy"]
forceRemoteSettingsRefresh (Pengaturan yang dikelola saja) Blokir startup CLI sampai pengaturan yang dikelola jarak jauh segar diambil dari server. Jika pengambilan gagal, CLI keluar daripada melanjutkan dengan pengaturan yang di-cache atau tidak ada. Saat tidak diatur, startup berlanjut tanpa menunggu pengaturan jarak jauh. Lihat penegakan fail-closed true
gcpAuthRefresh Skrip khusus yang menyegarkan GCP Application Default Credentials saat kedaluwarsa atau tidak dapat dimuat. Lihat konfigurasi kredensial lanjutan gcloud auth application-default login
hooks Konfigurasikan perintah khusus untuk dijalankan pada acara siklus hidup. Lihat dokumentasi hooks untuk format Lihat hooks
httpHookAllowedEnvVars Daftar putih nama variabel lingkungan yang dapat diinterpolasi oleh HTTP hooks ke dalam header. Saat diatur, allowedEnvVars efektif setiap hook adalah persimpangan dari daftar sendiri dan pengaturan ini. Tidak terdefinisi = tidak ada pembatasan. Array digabungkan di seluruh sumber pengaturan. Lihat Konfigurasi Hook ["MY_TOKEN", "HOOK_SECRET"]
includeCoAuthoredBy Usang: Gunakan attribution sebagai gantinya. Apakah akan menyertakan baris co-authored-by Claude dalam komit git dan pull request (default: true) false
includeGitInstructions Sertakan instruksi alur kerja komit dan PR bawaan dan snapshot status git dalam prompt sistem Claude (default: true). Atur ke false untuk menghapus keduanya, misalnya saat menggunakan skills alur kerja git Anda sendiri. Variabel lingkungan CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS memiliki prioritas atas pengaturan ini saat diatur false
language Konfigurasikan bahasa respons pilihan Claude (misalnya, "japanese", "spanish", "french"). Claude akan merespons dalam bahasa ini secara default. Juga menetapkan bahasa voice dictation "japanese"
maxSkillDescriptionChars {/* min-version: 2.1.105 */}Batas karakter per-skill pada teks description dan when_to_use gabungan dalam skill listing yang Claude lihat setiap giliran (default: 1536). Teks yang lebih panjang dari ini dipotong. Naikkan untuk menjaga deskripsi panjang tetap utuh dengan biaya lebih banyak konteks per giliran; turunkan untuk menyesuaikan lebih banyak skills di bawah skillListingBudgetFraction. Memerlukan Claude Code v2.1.105 atau lebih baru 2048
minimumVersion Lantai yang mencegah auto-updates latar belakang dan claude update dari menginstal versi di bawah ini. Beralih dari saluran "latest" ke "stable" melalui /config meminta Anda untuk tetap pada versi saat ini atau memungkinkan downgrade. Memilih untuk tetap menetapkan nilai ini. Juga berguna dalam pengaturan yang dikelola untuk menyematkan minimum di seluruh organisasi "2.1.100"
model Timpa model default untuk digunakan untuk Claude Code. --model dan ANTHROPIC_MODEL menimpa ini untuk satu sesi "claude-sonnet-4-6"
modelOverrides Peta ID model Anthropic ke ID model spesifik penyedia seperti ARN profil inferensi Bedrock. Setiap entri pemilih model menggunakan nilai yang dipetakan saat memanggil API penyedia. Lihat Timpa ID model per versi {"claude-opus-4-6": "arn:aws:bedrock:..."}
otelHeadersHelper Skrip untuk menghasilkan header OpenTelemetry dinamis. Berjalan saat startup dan secara berkala. Atur interval penyegaran dengan CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS. Lihat Header dinamis /bin/generate_otel_headers.sh
outputStyle Konfigurasikan gaya output untuk menyesuaikan prompt sistem. Lihat dokumentasi gaya output "Explanatory"
parentSettingsBehavior {/* min-version: 2.1.133 */}(Pengaturan yang dikelola saja) Mengontrol apakah pengaturan yang dikelola yang disediakan secara terprogram oleh proses host penyematan, seperti Agent SDK atau ekstensi IDE, berlaku saat tingkat yang dikelola yang digunakan admin juga ada. "first-wins": pengaturan yang disediakan parent dijatuhkan dan hanya tingkat admin yang berlaku. "merge": pengaturan yang disediakan parent berlaku di bawah tingkat admin, disaring sehingga mereka dapat mengencangkan kebijakan tetapi tidak melonggarkannya. Tidak berpengaruh saat tidak ada tingkat admin yang digunakan. Default: "first-wins". Memerlukan Claude Code v2.1.133 atau lebih baru "merge"
permissions Lihat tabel di bawah untuk struktur izin.
plansDirectory Sesuaikan di mana file rencana disimpan. Jalur relatif terhadap akar proyek. Default: ~/.claude/plans "./plans"
pluginTrustMessage (Pengaturan yang dikelola saja) Pesan khusus ditambahkan ke peringatan kepercayaan plugin yang ditampilkan sebelum instalasi. Gunakan ini untuk menambahkan konteks spesifik organisasi, misalnya untuk mengonfirmasi bahwa plugin dari marketplace internal Anda telah disaring. "All plugins from our marketplace are approved by IT"
policyHelper {/* min-version: 2.1.136 */}Admin-deployed executable yang menghitung pengaturan yang dikelola secara dinamis saat startup. Hanya dihormati dari MDM atau file managed-settings.json sistem. Lihat Hitung pengaturan yang dikelola dengan policy helper. Memerlukan Claude Code v2.1.136 atau lebih baru {"path": "/usr/local/bin/claude-policy"}
preferredNotifChannel Metode untuk notifikasi task-complete dan permission-prompt: "auto", "terminal_bell", "iterm2", "iterm2_with_bell", "kitty", "ghostty", atau "notifications_disabled". Default: "auto", yang mengirim notifikasi desktop di iTerm2, Ghostty, dan Kitty dan tidak melakukan apa pun di terminal lain. Atur "terminal_bell" untuk membunyikan karakter bell di terminal apa pun. Muncul di /config sebagai Notifications. Lihat Dapatkan terminal bell atau notifikasi "terminal_bell"
prefersReducedMotion Kurangi atau nonaktifkan animasi UI (spinners, shimmer, efek flash) untuk aksesibilitas true
prUrlTemplate Template URL untuk lencana PR yang ditampilkan di footer dan dalam ringkasan hasil tool. Mengganti {host}, {owner}, {repo}, {number}, dan {url} dari URL PR yang dilaporkan gh. Gunakan untuk mengarahkan tautan PR ke alat review kode internal daripada github.com. Tidak mempengaruhi autolinks #123 dalam prosa Claude "https://reviews.example.com/{owner}/{repo}/pull/{number}"
respectGitignore Kontrol apakah pemilih file @ menghormati pola .gitignore. Saat true (default), file yang cocok dengan pola .gitignore dikecualikan dari saran false
showClearContextOnPlanAccept Tampilkan opsi "clear context" pada layar penerimaan rencana. Default ke false. Atur ke true untuk mengembalikan opsi true
showThinkingSummaries Tampilkan ringkasan pemikiran yang diperluas dalam sesi interaktif. Saat tidak diatur atau false (default dalam mode interaktif), blok pemikiran diredaksi oleh API dan ditampilkan sebagai stub yang runtuh. Redaksi hanya mengubah apa yang Anda lihat, bukan apa yang dihasilkan model: untuk mengurangi pengeluaran pemikiran, turunkan anggaran atau nonaktifkan pemikiran sebagai gantinya. Pengaturan ini tidak berpengaruh dalam mode non-interaktif (-p), Agent SDK, atau ekstensi IDE seperti VS Code true
showTurnDuration Tampilkan pesan durasi giliran setelah respons, misalnya "Cooked for 1m 6s". Default: true. Muncul di /config sebagai Show turn duration false
skillListingBudgetFraction {/* min-version: 2.1.105 */}Fraksi jendela konteks model yang dicadangkan untuk skill listing yang Claude lihat setiap giliran (default: 0.01 = 1%). Saat listing melebihi anggaran, deskripsi untuk skills yang paling jarang digunakan runtuh menjadi nama telanjang sehingga Claude masih dapat menginvokasinya tetapi tidak akan melihat mengapa. Naikkan untuk menjaga lebih banyak deskripsi terlihat dengan biaya lebih banyak konteks per giliran. /doctor menunjukkan jumlah pemotongan saat ini dan skills mana yang terpengaruh. Memerlukan Claude Code v2.1.105 atau lebih baru 0.02
skillOverrides {/* min-version: 2.1.129 */}Penggantian visibilitas per-skill yang dikunci berdasarkan nama skill. Nilai adalah "on", "name-only", "user-invocable-only", atau "off". Memungkinkan Anda menyembunyikan atau menciutkan skill tanpa mengedit SKILL.md-nya. Tidak berlaku untuk plugin skills, yang dikelola melalui /plugin. Menu /skills menulis ini ke .claude/settings.local.json. Lihat Timpa visibilitas skill dari pengaturan. Memerlukan Claude Code v2.1.129 atau lebih baru {"legacy-context": "name-only", "deploy": "off"}
skipWebFetchPreflight Lewati pemeriksaan keamanan domain WebFetch yang mengirim setiap nama host yang diminta ke api.anthropic.com sebelum mengambil. Atur ke true di lingkungan yang memblokir lalu lintas ke Anthropic, seperti penyebaran Bedrock, Vertex AI, atau Foundry dengan egress yang ketat. Saat dilewati, WebFetch mencoba URL apa pun tanpa berkonsultasi dengan daftar blokir true
spinnerTipsEnabled Tampilkan tips dalam spinner saat Claude bekerja. Atur ke false untuk menonaktifkan tips (default: true) false
spinnerTipsOverride Timpa tips spinner dengan string khusus. tips: array string tip. excludeDefault: jika true, hanya tampilkan tips khusus; jika false atau tidak ada, tips khusus digabungkan dengan tips bawaan { "excludeDefault": true, "tips": ["Use our internal tool X"] }
spinnerVerbs Sesuaikan kata kerja aksi yang ditampilkan dalam spinner dan pesan durasi giliran. Atur mode ke "replace" untuk menggunakan hanya kata kerja Anda, atau "append" untuk menambahkannya ke default {"mode": "append", "verbs": ["Pondering", "Crafting"]}
sshConfigs Koneksi SSH untuk ditampilkan dalam dropdown lingkungan Desktop. Setiap entri memerlukan id, name, dan sshHost; sshPort, sshIdentityFile, dan startDirectory bersifat opsional. Saat diatur dalam pengaturan yang dikelola, koneksi bersifat read-only untuk pengguna. Dibaca dari pengaturan yang dikelola dan pengguna saja [{"id": "dev-vm", "name": "Dev VM", "sshHost": "user@dev.example.com"}]
statusLine Konfigurasikan status line khusus untuk menampilkan konteks. Lihat dokumentasi statusLine {"type": "command", "command": "~/.claude/statusline.sh"}
strictKnownMarketplaces (Pengaturan yang dikelola saja) Daftar putih sumber marketplace plugin. Tidak terdefinisi = tidak ada pembatasan, array kosong = lockdown. Diterapkan pada penambahan marketplace dan instalasi plugin, pembaruan, penyegaran, dan auto-update, jadi marketplace yang ditambahkan sebelum kebijakan ditetapkan tidak dapat digunakan untuk mengambil plugin. Lihat Pembatasan marketplace yang dikelola [{ "source": "github", "repo": "acme-corp/plugins" }]
syntaxHighlightingDisabled Nonaktifkan syntax highlighting dalam diffs, code blocks, dan file previews true
teammateMode Bagaimana rekan tim agent ditampilkan: auto (memilih panel terpisah di tmux atau iTerm2, dalam proses sebaliknya), in-process, atau tmux. --teammate-mode menimpa ini untuk satu sesi. Lihat pilih mode tampilan "in-process"
terminalProgressBarEnabled Tampilkan bilah kemajuan terminal di terminal yang didukung: ConEmu, Ghostty 1.2.0+, dan iTerm2 3.6.6+. Default: true. Muncul di /config sebagai Terminal progress bar false
tui Renderer UI terminal. Gunakan "fullscreen" untuk renderer alt-screen bebas flicker dengan scrollback virtual. Gunakan "default" untuk renderer main-screen klasik. Atur melalui /tui. Anda juga dapat menetapkan variabel lingkungan CLAUDE_CODE_NO_FLICKER "fullscreen"
useAutoModeDuringPlan Apakah plan mode menggunakan semantik mode otomatis saat mode otomatis tersedia. Default: true. Tidak dibaca dari pengaturan proyek bersama. Muncul di /config sebagai "Use auto mode during plan" false
viewMode Mode tampilan transkrip default saat startup: "default", "verbose", atau "focus". Menimpa pemilihan /focus yang lengket saat diatur. Flag --verbose menimpa ini untuk satu sesi "verbose"
voice Pengaturan voice dictation: enabled mengaktifkan dictation, mode memilih "hold" atau "tap", dan autoSubmit mengirim prompt pada pelepasan kunci dalam mode hold. Ditulis secara otomatis saat Anda menjalankan /voice. Memerlukan akun Claude.ai { "enabled": true, "mode": "tap" }
voiceEnabled Alias warisan untuk voice.enabled. Lebih suka objek voice true
wslInheritsWindowsSettings (Pengaturan yang dikelola Windows saja) Saat true, Claude Code di WSL membaca pengaturan yang dikelola dari rantai kebijakan Windows selain /etc/claude-code, dengan sumber Windows memiliki prioritas. Hanya dihormati saat diatur dalam kunci registry HKLM atau C:\Program Files\ClaudeCode\managed-settings.json, keduanya memerlukan admin Windows untuk menulis. Untuk kebijakan HKCU juga berlaku di WSL, flag harus juga diatur di HKCU itu sendiri. Tidak berpengaruh pada Windows asli true

Pengaturan konfigurasi global

Pengaturan ini disimpan dalam ~/.claude.json daripada settings.json. Menambahkannya ke settings.json akan memicu kesalahan validasi skema.

Kunci Deskripsi Contoh
autoConnectIde Secara otomatis terhubung ke IDE yang sedang berjalan saat Claude Code dimulai dari terminal eksternal. Default: false. Muncul di /config sebagai Auto-connect to IDE (external terminal) saat berjalan di luar terminal VS Code atau JetBrains. Variabel lingkungan CLAUDE_CODE_AUTO_CONNECT_IDE menimpa ini saat diatur true
autoInstallIdeExtension Secara otomatis instal ekstensi IDE Claude Code saat berjalan dari terminal VS Code. Default: true. Muncul di /config sebagai Auto-install IDE extension saat berjalan di dalam terminal VS Code atau JetBrains. Anda juga dapat menetapkan variabel lingkungan CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL false
externalEditorContext Tambahkan respons sebelumnya Claude sebagai konteks berkomentar # saat Anda membuka editor eksternal dengan Ctrl+G. Default: false. Muncul di /config sebagai Show last response in external editor true
teammateDefaultModel Model default untuk agent team teammates saat prompt spawn tidak menentukan satu. Atur ke alias model seperti "sonnet", atau null untuk mewarisi pemilihan /model saat ini lead. Muncul di /config sebagai Default teammate model "sonnet"

Pengaturan worktree

Konfigurasikan bagaimana --worktree membuat dan mengelola git worktrees.

Kunci Deskripsi Contoh
worktree.baseRef Ref mana yang baru worktrees cabang dari. "fresh" (default) cabang dari origin/<default-branch> untuk pohon bersih yang cocok dengan remote. "head" cabang dari HEAD lokal Anda saat ini, jadi komit yang tidak didorong dan status cabang fitur ada di worktree. Berlaku untuk --worktree, tool EnterWorktree, dan isolasi subagent "head"
worktree.symlinkDirectories Direktori untuk symlink dari repositori utama ke setiap worktree untuk menghindari duplikasi direktori besar di disk. Tidak ada direktori yang disymlink secara default ["node_modules", ".cache"]
worktree.sparsePaths Direktori untuk diperiksa di setiap worktree melalui git sparse-checkout. Hanya jalur yang terdaftar plus file tingkat root yang ditulis ke disk, yang lebih cepat di monorepo besar ["packages/my-app", "shared/utils"]
worktree.bgIsolation {/* min-version: 2.1.143 */}Mode isolasi untuk background sessions. "worktree" (default) memblokir Edit/Write dalam checkout utama sampai EnterWorktree dipanggil. "none" memungkinkan pekerjaan latar belakang mengedit salinan kerja secara langsung. Memerlukan Claude Code v2.1.143 atau lebih baru "none"

Untuk menyalin file yang diabaikan git seperti .env ke worktrees baru, gunakan file .worktreeinclude di akar proyek Anda daripada pengaturan.

Pengaturan izin

Kunci Deskripsi Contoh
allow Array aturan izin untuk memungkinkan penggunaan tool. Lihat Sintaks aturan izin di bawah untuk detail pencocokan pola [ "Bash(git diff *)" ]
ask Array aturan izin untuk meminta konfirmasi saat penggunaan tool. Lihat Sintaks aturan izin di bawah [ "Bash(git push *)" ]
deny Array aturan izin untuk menolak penggunaan tool. Gunakan ini untuk mengecualikan file sensitif dari akses Claude Code. Lihat Sintaks aturan izin dan Batasan izin Bash [ "WebFetch", "Bash(curl *)", "Read(./.env)", "Read(./secrets/**)" ]
additionalDirectories Direktori kerja tambahan untuk akses file. Sebagian besar konfigurasi .claude/ tidak ditemukan dari direktori ini [ "../docs/" ]
defaultMode Mode izin default saat membuka Claude Code. Nilai yang valid: default, acceptEdits, plan, auto, dontAsk, bypassPermissions. {/* min-version: 2.1.142 */}Sejak Claude Code v2.1.142, auto diabaikan saat diatur dalam pengaturan proyek atau lokal (.claude/settings.json, .claude/settings.local.json) sehingga repositori tidak dapat memberikan dirinya sendiri mode otomatis. Atur di ~/.claude/settings.json sebagai gantinya. Flag CLI --permission-mode menimpa pengaturan ini untuk sesi tunggal "acceptEdits"
disableBypassPermissionsMode Atur ke "disable" untuk mencegah mode bypassPermissions diaktifkan. Ini menonaktifkan flag baris perintah --dangerously-skip-permissions. Paling berguna dalam pengaturan yang dikelola untuk menegakkan kebijakan organisasi, tetapi berfungsi dari cakupan apa pun "disable"
skipDangerousModePermissionPrompt Lewati prompt konfirmasi yang ditampilkan sebelum memasuki mode bypass permissions melalui --dangerously-skip-permissions atau defaultMode: "bypassPermissions". Diabaikan saat diatur dalam pengaturan proyek (.claude/settings.json) untuk mencegah repositori yang tidak terpercaya dari auto-bypass prompt true

Sintaks aturan izin

Aturan izin mengikuti format Tool atau Tool(specifier). Aturan dievaluasi secara berurutan: aturan deny terlebih dahulu, kemudian ask, kemudian allow. Aturan pertama yang cocok menang.

Contoh cepat:

Aturan Efek
Bash Cocok dengan semua perintah Bash
Bash(npm run *) Cocok dengan perintah yang dimulai dengan npm run
Read(./.env) Cocok dengan membaca file .env
WebFetch(domain:example.com) Cocok dengan permintaan fetch ke example.com

Untuk referensi sintaks aturan lengkap, termasuk perilaku wildcard, pola spesifik tool untuk Read, Edit, WebFetch, MCP, dan aturan Agent, dan batasan keamanan pola Bash, lihat Sintaks aturan izin.

Pengaturan sandbox

Konfigurasikan perilaku sandboxing lanjutan. Sandboxing mengisolasi perintah bash dari sistem file dan jaringan Anda. Lihat Sandboxing untuk detail.

Kunci Deskripsi Contoh
enabled Aktifkan bash sandboxing (macOS, Linux, dan WSL2). Default: false true
failIfUnavailable Keluar dengan kesalahan saat startup jika sandbox.enabled adalah true tetapi sandbox tidak dapat dimulai (dependensi yang hilang atau platform yang tidak didukung). Saat false (default), peringatan ditampilkan dan perintah berjalan tanpa sandbox. Dimaksudkan untuk penyebaran pengaturan yang dikelola yang memerlukan sandboxing sebagai gerbang keras true
autoAllowBashIfSandboxed Secara otomatis menyetujui perintah bash saat sandboxed. Default: true true
excludedCommands Perintah yang harus dijalankan di luar sandbox ["docker *"]
allowUnsandboxedCommands Izinkan perintah dijalankan di luar sandbox melalui parameter dangerouslyDisableSandbox. Saat diatur ke false, pintu keluar dangerouslyDisableSandbox sepenuhnya dinonaktifkan dan semua perintah harus dijalankan sandboxed (atau berada dalam excludedCommands). Berguna untuk kebijakan perusahaan yang memerlukan sandboxing ketat. Default: true false
filesystem.allowWrite Jalur tambahan di mana perintah sandboxed dapat menulis. Array digabungkan di seluruh semua cakupan pengaturan: jalur pengguna, proyek, dan yang dikelola digabungkan, bukan diganti. Juga digabungkan dengan jalur dari aturan izin Edit(...) allow. Lihat prefiks jalur sandbox di bawah. ["/tmp/build", "~/.kube"]
filesystem.denyWrite Jalur di mana perintah sandboxed tidak dapat menulis. Array digabungkan di seluruh semua cakupan pengaturan. Juga digabungkan dengan jalur dari aturan izin Edit(...) deny. ["/etc", "/usr/local/bin"]
filesystem.denyRead Jalur di mana perintah sandboxed tidak dapat membaca. Array digabungkan di seluruh semua cakupan pengaturan. Juga digabungkan dengan jalur dari aturan izin Read(...) deny. ["~/.aws/credentials"]
filesystem.allowRead Jalur untuk mengizinkan kembali pembacaan dalam region denyRead. Memiliki prioritas atas denyRead. Array digabungkan di seluruh semua cakupan pengaturan. Gunakan ini untuk membuat pola akses baca khusus workspace. ["."]
filesystem.allowManagedReadPathsOnly (Pengaturan yang dikelola saja) Hanya jalur filesystem.allowRead dari pengaturan yang dikelola yang dihormati. denyRead masih digabungkan dari semua sumber. Default: false true
network.allowUnixSockets (macOS saja) Jalur soket Unix yang dapat diakses dalam sandbox. Diabaikan di Linux dan WSL2, di mana filter seccomp tidak dapat memeriksa jalur soket; gunakan allowAllUnixSockets sebagai gantinya. ["~/.ssh/agent-socket"]
network.allowAllUnixSockets Izinkan semua koneksi soket Unix dalam sandbox. Di Linux dan WSL2 ini adalah satu-satunya cara untuk mengizinkan soket Unix, karena melewati filter seccomp yang sebaliknya memblokir panggilan socket(AF_UNIX, ...). Default: false true
network.allowLocalBinding Izinkan pengikatan ke port localhost (macOS saja). Default: false true
network.allowMachLookup Nama layanan XPC/Mach tambahan yang dapat dicari sandbox (macOS saja). Mendukung * tunggal di akhir untuk pencocokan prefiks. Diperlukan untuk tools yang berkomunikasi melalui XPC seperti iOS Simulator atau Playwright. ["com.apple.coresimulator.*"]
network.allowedDomains Array domain untuk memungkinkan lalu lintas jaringan keluar. Mendukung wildcard (misalnya, *.example.com). ["github.com", "*.npmjs.org"]
network.deniedDomains Array domain untuk memblokir lalu lintas jaringan keluar. Mendukung sintaks wildcard yang sama seperti allowedDomains. Memiliki prioritas atas allowedDomains saat keduanya cocok. Digabungkan dari semua sumber pengaturan terlepas dari allowManagedDomainsOnly. ["sensitive.cloud.example.com"]
network.allowManagedDomainsOnly (Pengaturan yang dikelola saja) Hanya allowedDomains dan aturan allow WebFetch(domain:...) dari pengaturan yang dikelola yang dihormati. Domain dari pengaturan pengguna, proyek, dan lokal diabaikan. Domain yang tidak diizinkan diblokir secara otomatis tanpa meminta pengguna. Domain yang ditolak masih dihormati dari semua sumber. Default: false true
network.httpProxyPort Port proxy HTTP yang digunakan jika Anda ingin membawa proxy Anda sendiri. Jika tidak ditentukan, Claude akan menjalankan proxy-nya sendiri. 8080
network.socksProxyPort Port proxy SOCKS5 yang digunakan jika Anda ingin membawa proxy Anda sendiri. Jika tidak ditentukan, Claude akan menjalankan proxy-nya sendiri. 8081
enableWeakerNestedSandbox Aktifkan sandbox yang lebih lemah untuk lingkungan Docker tanpa hak istimewa (Linux dan WSL2 saja). Mengurangi keamanan. Default: false true
enableWeakerNetworkIsolation (macOS saja) Izinkan akses ke layanan kepercayaan TLS sistem (com.apple.trustd.agent) dalam sandbox. Diperlukan untuk tools berbasis Go seperti gh, gcloud, dan terraform untuk memverifikasi sertifikat TLS saat menggunakan httpProxyPort dengan proxy MITM dan CA khusus. Mengurangi keamanan dengan membuka jalur eksfiltrasi data potensial. Default: false true
bwrapPath (Pengaturan yang dikelola saja, Linux/WSL2) Jalur absolut ke binary bubblewrap (bwrap). Menimpa deteksi otomatis melalui PATH. Hanya dihormati dari pengaturan yang dikelola, bukan dari pengaturan pengguna atau proyek. Berguna saat bwrap diinstal di lokasi non-standar di lingkungan yang dikelola. /opt/admin/bwrap
socatPath (Pengaturan yang dikelola saja, Linux/WSL2) Jalur absolut ke binary socat yang digunakan untuk proxy jaringan sandbox. Menimpa deteksi otomatis melalui PATH. Hanya dihormati dari pengaturan yang dikelola. /opt/admin/socat

Prefiks jalur sandbox

Jalur dalam filesystem.allowWrite, filesystem.denyWrite, filesystem.denyRead, dan filesystem.allowRead mendukung prefiks ini:

Prefiks Arti Contoh
/ Jalur absolut dari akar sistem file /tmp/build tetap /tmp/build
~/ Relatif terhadap direktori home ~/.kube menjadi $HOME/.kube
./ atau tidak ada prefiks Relatif terhadap akar proyek untuk pengaturan proyek, atau ke ~/.claude untuk pengaturan pengguna ./output dalam .claude/settings.json diselesaikan ke <project-root>/output

Prefiks //path yang lebih lama untuk jalur absolut masih berfungsi. Jika Anda sebelumnya menggunakan /path tunggal mengharapkan resolusi relatif proyek, beralih ke ./path. Sintaks ini berbeda dari aturan izin Read dan Edit, yang menggunakan //path untuk absolut dan /path untuk relatif proyek. Jalur sistem file sandbox menggunakan konvensi standar: /tmp/build adalah jalur absolut.

Contoh konfigurasi:

{
  "sandbox": {
    "enabled": true,
    "autoAllowBashIfSandboxed": true,
    "excludedCommands": ["docker *"],
    "filesystem": {
      "allowWrite": ["/tmp/build", "~/.kube"],
      "denyRead": ["~/.aws/credentials"]
    },
    "network": {
      "allowedDomains": ["github.com", "*.npmjs.org", "registry.yarnpkg.com"],
      "deniedDomains": ["uploads.github.com"],
      "allowUnixSockets": [
        "/var/run/docker.sock"
      ],
      "allowLocalBinding": true
    }
  }
}

Pembatasan sistem file dan jaringan dapat dikonfigurasi dalam dua cara yang digabungkan bersama:

  • Pengaturan sandbox.filesystem (ditampilkan di atas): Kontrol jalur pada batas sandbox tingkat OS. Pembatasan ini berlaku untuk semua perintah subprocess (misalnya, kubectl, terraform, npm), bukan hanya tools file Claude.
  • Aturan izin: Gunakan aturan allow/deny Edit untuk mengontrol akses tools file Claude, aturan deny Read untuk memblokir pembacaan, dan aturan allow/deny WebFetch untuk mengontrol domain jaringan. Jalur dari aturan ini juga digabungkan ke dalam konfigurasi sandbox.

Pengaturan atribusi

Claude Code menambahkan atribusi ke komit git dan pull request. Ini dikonfigurasi secara terpisah:

  • Komit menggunakan git trailers (seperti Co-Authored-By) secara default, yang dapat disesuaikan atau dinonaktifkan
  • Deskripsi pull request adalah teks biasa
Kunci Deskripsi
commit Atribusi untuk komit git, termasuk trailer apa pun. String kosong menyembunyikan atribusi komit
pr Atribusi untuk deskripsi pull request. String kosong menyembunyikan atribusi pull request

Atribusi komit default:

🤖 Generated with [Claude Code](https://claude.com/claude-code)

   Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

Atribusi pull request default:

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Contoh:

{
  "attribution": {
    "commit": "Generated with AI\n\nCo-Authored-By: AI <ai@example.com>",
    "pr": ""
  }
}

Pengaturan saran file

Konfigurasikan perintah khusus untuk pelengkapan otomatis jalur file @. Saran file bawaan menggunakan traversal sistem file cepat, tetapi monorepo besar mungkin mendapat manfaat dari pengindeksan spesifik proyek seperti indeks file yang telah dibangun sebelumnya atau tooling khusus.

{
  "fileSuggestion": {
    "type": "command",
    "command": "~/.claude/file-suggestion.sh"
  }
}

Perintah berjalan dengan variabel lingkungan yang sama seperti hooks, termasuk CLAUDE_PROJECT_DIR. Ini menerima JSON melalui stdin dengan bidang query:

{"query": "src/comp"}

Keluarkan jalur file yang dipisahkan baris baru ke stdout (saat ini dibatasi hingga 15):

src/components/Button.tsx
src/components/Modal.tsx
src/components/Form.tsx

Contoh:

#!/bin/bash
query=$(cat | jq -r '.query')
your-repo-file-index --query "$query" | head -20

Konfigurasi hook

Pengaturan ini mengontrol hook mana yang diizinkan untuk dijalankan dan apa yang dapat diakses oleh HTTP hooks. Pengaturan allowManagedHooksOnly hanya dapat dikonfigurasi dalam pengaturan yang dikelola. Daftar putih URL dan env var dapat diatur di tingkat pengaturan apa pun dan digabungkan di seluruh sumber.

Perilaku saat allowManagedHooksOnly adalah true:

  • Hooks yang dikelola dan hooks SDK dimuat
  • Hooks dari plugins yang dipaksa diaktifkan dalam pengaturan yang dikelola enabledPlugins dimuat. Ini memungkinkan administrator mendistribusikan hooks yang disaring melalui marketplace organisasi sambil memblokir segalanya. Kepercayaan diberikan oleh ID plugin@marketplace penuh, jadi plugin dengan nama yang sama dari marketplace berbeda tetap diblokir
  • Hooks pengguna, hooks proyek, dan semua plugin hooks lainnya diblokir

Batasi URL HTTP hook:

Batasi URL mana yang dapat ditargetkan oleh HTTP hooks. Mendukung * sebagai wildcard untuk pencocokan. Saat array didefinisikan, HTTP hooks yang menargetkan URL yang tidak cocok diblokir secara diam-diam. Pencocokan nama host tidak peka huruf besar-kecil dan mengabaikan titik FQDN di akhir, mencocokkan semantik DNS.

{
  "allowedHttpHookUrls": ["https://hooks.example.com/*", "http://localhost:*"]
}

Batasi variabel lingkungan HTTP hook:

Batasi nama variabel lingkungan mana yang dapat diinterpolasi oleh HTTP hooks ke dalam nilai header. allowedEnvVars efektif setiap hook adalah persimpangan dari daftar sendiri dan pengaturan ini.

{
  "httpHookAllowedEnvVars": ["MY_TOKEN", "HOOK_SECRET"]
}

Hitung pengaturan yang dikelola dengan policy helper

Pengaturan policyHelper menunjuk ke executable yang menghitung pengaturan yang dikelola saat startup, sehingga admin dapat menurunkan kebijakan dari postur perangkat, identitas, atau layanan jarak jauh daripada file statis. Konfigurasikan dari MDM atau file managed-settings.json sistem. Claude Code mengabaikan policyHelper saat muncul dalam cakupan apa pun, termasuk pengaturan pengguna, pengaturan proyek, hive registry HKCU, dan pengaturan yang dikelola server.

Pengaturan menerima kunci ini:

Kunci Tipe Deskripsi
path string Jalur absolut ke executable helper
timeoutMs number Berapa lama menunggu helper sebelum memperlakukan run sebagai gagal
refreshIntervalMs number Seberapa sering menjalankan kembali helper di latar belakang. Atur ke 0 untuk menonaktifkan refresh, atau ke setidaknya 60000

Helper menulis amplop JSON ke stdout. Letakkan pengaturan di bawah kunci managedSettings daripada di tingkat atas, karena objek pengaturan telanjang diuraikan dengan managedSettings tidak terdefinisi dan menerapkan tidak ada:

{
  "managedSettings": {
    "permissions": { "deny": ["Read(//etc/secrets/**)"] }
  },
  "claudeMd": "# Organization context\n...",
  "appendSystemPrompt": "Always cite the internal style guide."
}

Saat helper memancarkan managedSettings, objek itu menggantikan pengaturan yang dikelola berbasis file untuk run. Saat helper keluar non-zero saat startup, Claude Code mencetak kesalahan dan menolak untuk memulai, jadi helper yang memerlukan ketahanan pemadaman harus melayani dari cache sendiri dan keluar 0.

Prioritas pengaturan

Pengaturan berlaku dalam urutan prioritas. Dari tertinggi ke terendah:

  1. Pengaturan yang dikelola (yang dikelola server, kebijakan tingkat MDM/OS, atau pengaturan yang dikelola)

    • Kebijakan yang digunakan oleh IT melalui pengiriman server, profil konfigurasi MDM, kebijakan registry, atau file pengaturan yang dikelola
    • Tidak dapat ditimpa oleh tingkat apa pun, termasuk argumen baris perintah
    • Dalam tingkat yang dikelola, prioritas adalah: yang dikelola server > kebijakan tingkat MDM/OS > file-based (managed-settings.d/*.json + managed-settings.json) > registry HKCU (Windows saja). Hanya satu sumber yang dikelola yang digunakan; sumber tidak digabungkan di seluruh tingkat. Dalam tingkat berbasis file, file drop-in dan file dasar digabungkan bersama.
  2. Argumen baris perintah

    • Penggantian sementara untuk sesi tertentu. JSON yang dilewatkan melalui --settings <file-or-json> digabungkan dengan pengaturan berbasis file menggunakan aturan yang sama seperti lapisan lainnya: kunci yang diatur di sini menimpa kunci yang sama dalam pengaturan lokal, proyek, atau pengguna, dan menghilangkan kunci membiarkan nilai lapisan lebih rendah tetap ada
  3. Pengaturan proyek lokal (.claude/settings.local.json)

    • Pengaturan proyek pribadi
  4. Pengaturan proyek bersama (.claude/settings.json)

    • Pengaturan proyek bersama tim dalam kontrol sumber
  5. Pengaturan pengguna (~/.claude/settings.json)

    • Pengaturan global pribadi

Hierarki ini memastikan bahwa kebijakan organisasi selalu diterapkan sambil tetap memungkinkan tim dan individu untuk menyesuaikan pengalaman mereka. Prioritas yang sama berlaku apakah Anda menjalankan Claude Code dari CLI, ekstensi VS Code, atau IDE JetBrains.

Misalnya, jika pengaturan pengguna Anda memungkinkan Bash(npm run *) tetapi pengaturan bersama proyek menolaknya, pengaturan proyek memiliki prioritas dan perintah diblokir.

Verifikasi pengaturan aktif

Jalankan /status di dalam Claude Code untuk melihat sumber pengaturan mana yang aktif. Tab Status mencakup baris Setting sources yang mencantumkan setiap lapisan Claude Code yang dimuat untuk sesi saat ini, seperti User settings atau Project local settings. Ketika pengaturan yang dikelola berlaku, entri menunjukkan saluran pengiriman dalam tanda kurung, misalnya Enterprise managed settings (remote), (plist), (HKLM), (HKCU), atau (file). Lapisan muncul dalam daftar hanya ketika sumber itu dimuat dengan setidaknya satu kunci, jadi daftar kosong berarti tidak ada sumber pengaturan yang ditemukan.

Baris Setting sources mengonfirmasi sumber mana yang sedang dibaca. Ini tidak menunjukkan lapisan mana yang memasok setiap kunci individual. Tab Config dalam dialog yang sama adalah editor untuk set toggle tetap seperti tema dan output verbose, bukan tampilan konten settings.json Anda. Jika file pengaturan berisi kesalahan, seperti JSON tidak valid atau nilai yang gagal validasi, /status melaporkan masalah sehingga Anda dapat memperbaikinya.

Poin kunci tentang sistem konfigurasi

  • File memori (CLAUDE.md): Berisi instruksi dan konteks yang dimuat Claude saat startup
  • File pengaturan (JSON): Konfigurasikan izin, variabel lingkungan, dan perilaku tool
  • Skills: Prompt khusus yang dapat dipanggil dengan /skill-name atau dimuat oleh Claude secara otomatis
  • MCP servers: Perluas Claude Code dengan tools dan integrasi tambahan
  • Prioritas: Konfigurasi tingkat lebih tinggi (Managed) menimpa yang tingkat lebih rendah (User/Project)
  • Warisan: Pengaturan digabungkan di seluruh cakupan; nilai skalar dari cakupan prioritas lebih tinggi menimpa, dan array digabungkan

Prompt sistem

Prompt sistem internal Claude Code tidak dipublikasikan. Untuk menambahkan instruksi khusus, gunakan file CLAUDE.md atau flag --append-system-prompt.

Mengecualikan file sensitif

Untuk mencegah Claude Code mengakses file yang berisi informasi sensitif seperti kunci API, rahasia, dan file lingkungan, gunakan pengaturan permissions.deny dalam file .claude/settings.json Anda:

{
  "permissions": {
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)",
      "Read(./config/credentials.json)",
      "Read(./build)"
    ]
  }
}

Ini menggantikan konfigurasi ignorePatterns yang usang. File yang cocok dengan pola ini dikecualikan dari penemuan file dan hasil pencarian, dan operasi baca pada file ini ditolak.

Konfigurasi subagent

Claude Code mendukung subagents AI khusus yang dapat dikonfigurasi di tingkat pengguna dan proyek. Subagents ini disimpan sebagai file Markdown dengan frontmatter YAML:

  • Subagents pengguna: ~/.claude/agents/ - Tersedia di semua proyek Anda
  • Subagents proyek: .claude/agents/ - Spesifik untuk proyek Anda dan dapat dibagikan dengan tim Anda

File subagent mendefinisikan asisten AI khusus dengan prompt khusus dan izin tool. Pelajari lebih lanjut tentang membuat dan menggunakan subagents dalam dokumentasi subagents.

Konfigurasi plugin

Claude Code mendukung sistem plugin yang memungkinkan Anda memperluas fungsionalitas dengan skills, agents, hooks, dan MCP servers. Plugin didistribusikan melalui marketplace dan dapat dikonfigurasi di tingkat pengguna dan repositori.

Pengaturan plugin

Pengaturan terkait plugin dalam settings.json:

{
  "enabledPlugins": {
    "formatter@acme-tools": true,
    "deployer@acme-tools": true,
    "analyzer@security-plugins": false
  },
  "extraKnownMarketplaces": {
    "acme-tools": {
      "source": {
        "source": "github",
        "repo": "acme-corp/claude-plugins"
      }
    }
  }
}

enabledPlugins

Mengontrol plugin mana yang diaktifkan. Format: "plugin-name@marketplace-name": true/false

Cakupan:

  • Pengaturan pengguna (~/.claude/settings.json): Preferensi plugin pribadi
  • Pengaturan proyek (.claude/settings.json): Plugin spesifik proyek yang dibagikan dengan tim
  • Pengaturan lokal (.claude/settings.local.json): Penggantian per-mesin (tidak dikomit)
  • Pengaturan yang dikelola (managed-settings.json): Penggantian kebijakan organisasi yang memblokir instalasi di semua cakupan dan menyembunyikan plugin dari marketplace

Contoh:

{
  "enabledPlugins": {
    "code-formatter@team-tools": true,
    "deployment-tools@team-tools": true,
    "experimental-features@personal": false
  }
}

extraKnownMarketplaces

Mendefinisikan marketplace tambahan yang harus tersedia untuk repositori. Biasanya digunakan dalam pengaturan tingkat repositori untuk memastikan anggota tim memiliki akses ke sumber plugin yang diperlukan.

Ketika repositori menyertakan extraKnownMarketplaces:

  1. Anggota tim diminta untuk menginstal marketplace saat mereka mempercayai folder
  2. Anggota tim kemudian diminta untuk menginstal plugin dari marketplace tersebut
  3. Pengguna dapat melewati marketplace atau plugin yang tidak diinginkan (disimpan dalam pengaturan pengguna)
  4. Instalasi menghormati batas kepercayaan dan memerlukan persetujuan eksplisit

Contoh:

{
  "extraKnownMarketplaces": {
    "acme-tools": {
      "source": {
        "source": "github",
        "repo": "acme-corp/claude-plugins"
      }
    },
    "security-plugins": {
      "source": {
        "source": "git",
        "url": "https://git.example.com/security/plugins.git"
      }
    }
  }
}

Jenis sumber marketplace:

  • github: Repositori GitHub (menggunakan repo)
  • git: URL git apa pun (menggunakan url)
  • directory: Jalur sistem file lokal (menggunakan path, hanya untuk pengembangan)
  • hostPattern: Pola regex untuk mencocokkan host marketplace (menggunakan hostPattern)
  • settings: marketplace inline yang dideklarasikan langsung dalam settings.json tanpa repositori yang dihosting terpisah (menggunakan name dan plugins)

Setiap entri marketplace juga menerima Boolean autoUpdate opsional. Atur "autoUpdate": true bersama source untuk membuat Claude Code menyegarkan marketplace tersebut dan memperbarui plugin yang terinstal saat startup. Jika dihilangkan, marketplace Anthropic resmi default ke true dan semua marketplace lainnya default ke false. Lihat Konfigurasi pembaruan otomatis.

Gunakan source: 'settings' untuk mendeklarasikan serangkaian plugin kecil inline tanpa menyiapkan repositori marketplace yang dihosting. Plugin yang terdaftar di sini harus mereferensikan sumber eksternal seperti GitHub atau npm. Anda masih perlu mengaktifkan setiap plugin secara terpisah dalam enabledPlugins.

{
  "extraKnownMarketplaces": {
    "team-tools": {
      "source": {
        "source": "settings",
        "name": "team-tools",
        "plugins": [
          {
            "name": "code-formatter",
            "source": {
              "source": "github",
              "repo": "acme-corp/code-formatter"
            }
          }
        ]
      }
    }
  }
}

strictKnownMarketplaces

Pengaturan yang dikelola saja: Mengontrol marketplace plugin mana yang diizinkan pengguna untuk ditambahkan dan menginstal plugin darinya. Pengaturan ini hanya dapat dikonfigurasi dalam pengaturan yang dikelola dan memberikan administrator kontrol ketat atas sumber marketplace.

Lokasi file pengaturan yang dikelola:

  • macOS: /Library/Application Support/ClaudeCode/managed-settings.json
  • Linux dan WSL: /etc/claude-code/managed-settings.json
  • Windows: C:\Program Files\ClaudeCode\managed-settings.json

Karakteristik kunci:

  • Hanya tersedia dalam pengaturan yang dikelola (managed-settings.json)
  • Tidak dapat ditimpa oleh pengaturan pengguna atau proyek (prioritas tertinggi)
  • Diterapkan SEBELUM operasi jaringan/sistem file (sumber yang diblokir tidak pernah dieksekusi)
  • Menggunakan pencocokan tepat untuk spesifikasi sumber (termasuk ref, path untuk sumber git), kecuali hostPattern dan pathPattern, yang menggunakan pencocokan regex

Perilaku daftar putih:

  • undefined (default): Tidak ada pembatasan - pengguna dapat menambahkan marketplace apa pun
  • Array kosong []: Lockdown lengkap - pengguna tidak dapat menambahkan marketplace baru apa pun
  • Daftar sumber: Pengguna hanya dapat menambahkan marketplace yang cocok dengan tepat

Semua jenis sumber yang didukung:

Daftar putih mendukung beberapa jenis sumber marketplace. Sebagian besar sumber menggunakan pencocokan tepat, sementara hostPattern dan pathPattern menggunakan pencocokan regex terhadap host marketplace dan jalur sistem file masing-masing.

  1. Repositori GitHub:
{ "source": "github", "repo": "acme-corp/approved-plugins" }
{ "source": "github", "repo": "acme-corp/security-tools", "ref": "v2.0" }
{ "source": "github", "repo": "acme-corp/plugins", "ref": "main", "path": "marketplace" }

Bidang: repo (diperlukan), ref (opsional: cabang/tag/SHA), path (opsional: subdirektori)

  1. Repositori Git:
{ "source": "git", "url": "https://gitlab.example.com/tools/plugins.git" }
{ "source": "git", "url": "https://bitbucket.org/acme-corp/plugins.git", "ref": "production" }
{ "source": "git", "url": "ssh://git@git.example.com/plugins.git", "ref": "v3.1", "path": "approved" }

Bidang: url (diperlukan), ref (opsional: cabang/tag/SHA), path (opsional: subdirektori)

  1. Marketplace berbasis URL:
{ "source": "url", "url": "https://plugins.example.com/marketplace.json" }
{ "source": "url", "url": "https://cdn.example.com/marketplace.json", "headers": { "Authorization": "Bearer ${TOKEN}" } }

Bidang: url (diperlukan), headers (opsional: header HTTP untuk akses terautentikasi)

  1. Paket NPM:
{ "source": "npm", "package": "@acme-corp/claude-plugins" }
{ "source": "npm", "package": "@acme-corp/approved-marketplace" }

Bidang: package (diperlukan, mendukung paket berscopus)

  1. Jalur file:
{ "source": "file", "path": "/usr/local/share/claude/acme-marketplace.json" }
{ "source": "file", "path": "/opt/acme-corp/plugins/marketplace.json" }

Bidang: path (diperlukan: jalur absolut ke file marketplace.json)

  1. Jalur direktori:
{ "source": "directory", "path": "/usr/local/share/claude/acme-plugins" }
{ "source": "directory", "path": "/opt/acme-corp/approved-marketplaces" }

Bidang: path (diperlukan: jalur absolut ke direktori yang berisi .claude-plugin/marketplace.json)

  1. Pencocokan pola host:
{ "source": "hostPattern", "hostPattern": "^github\\.example\\.com$" }
{ "source": "hostPattern", "hostPattern": "^gitlab\\.internal\\.example\\.com$" }

Bidang: hostPattern (diperlukan: pola regex untuk mencocokkan terhadap host marketplace)

Gunakan pencocokan pola host saat Anda ingin memungkinkan semua marketplace dari host tertentu tanpa menghitung setiap repositori secara individual. Ini berguna untuk organisasi dengan server GitHub Enterprise atau GitLab internal di mana pengembang membuat marketplace mereka sendiri.

Ekstraksi host berdasarkan jenis sumber:

  • github: selalu cocok dengan github.com
  • git: mengekstrak nama host dari URL (mendukung format HTTPS dan SSH)
  • url: mengekstrak nama host dari URL
  • npm, file, directory: tidak didukung untuk pencocokan pola host
  1. Pencocokan pola jalur:
{ "source": "pathPattern", "pathPattern": "^/opt/approved/" }
{ "source": "pathPattern", "pathPattern": ".*" }

Bidang: pathPattern (diperlukan: pola regex yang dicocokkan terhadap bidang path dari sumber file dan directory)

Gunakan pencocokan pola jalur untuk memungkinkan marketplace berbasis sistem file bersama dengan pembatasan hostPattern untuk sumber jaringan. Atur ".*" untuk memungkinkan semua jalur lokal, atau pola yang lebih sempit untuk membatasi ke direktori tertentu.

Contoh konfigurasi:

Contoh: izinkan marketplace spesifik saja:

{
  "strictKnownMarketplaces": [
    {
      "source": "github",
      "repo": "acme-corp/approved-plugins"
    },
    {
      "source": "github",
      "repo": "acme-corp/security-tools",
      "ref": "v2.0"
    },
    {
      "source": "url",
      "url": "https://plugins.example.com/marketplace.json"
    },
    {
      "source": "npm",
      "package": "@acme-corp/compliance-plugins"
    }
  ]
}

Contoh - Nonaktifkan semua penambahan marketplace:

{
  "strictKnownMarketplaces": []
}

Contoh: izinkan semua marketplace dari server git internal:

{
  "strictKnownMarketplaces": [
    {
      "source": "hostPattern",
      "hostPattern": "^github\\.example\\.com$"
    }
  ]
}

Persyaratan pencocokan tepat:

Sumber marketplace harus cocok dengan tepat agar penambahan pengguna diizinkan. Untuk sumber berbasis git (github dan git), ini termasuk semua bidang opsional:

  • repo atau url harus cocok dengan tepat
  • Bidang ref harus cocok dengan tepat (atau keduanya tidak terdefinisi)
  • Bidang path harus cocok dengan tepat (atau keduanya tidak terdefinisi)

Contoh sumber yang TIDAK cocok:

// Ini adalah sumber BERBEDA:
{ "source": "github", "repo": "acme-corp/plugins" }
{ "source": "github", "repo": "acme-corp/plugins", "ref": "main" }

// Ini juga BERBEDA:
{ "source": "github", "repo": "acme-corp/plugins", "path": "marketplace" }
{ "source": "github", "repo": "acme-corp/plugins" }

Perbandingan dengan extraKnownMarketplaces:

Aspek strictKnownMarketplaces extraKnownMarketplaces
Tujuan Penegakan kebijakan organisasi Kenyamanan tim
File pengaturan managed-settings.json saja File pengaturan apa pun
Perilaku Blokir penambahan yang tidak ada dalam daftar putih Instal otomatis marketplace yang hilang
Saat diterapkan Sebelum operasi jaringan/sistem file Setelah prompt kepercayaan pengguna
Dapat ditimpa Tidak (prioritas tertinggi) Ya (oleh pengaturan prioritas lebih tinggi)
Format sumber Objek sumber langsung Marketplace bernama dengan sumber bersarang
Kasus penggunaan Pembatasan kepatuhan, keamanan Onboarding, standardisasi

Perbedaan format:

strictKnownMarketplaces menggunakan objek sumber langsung:

{
  "strictKnownMarketplaces": [
    { "source": "github", "repo": "acme-corp/plugins" }
  ]
}

extraKnownMarketplaces memerlukan marketplace bernama:

{
  "extraKnownMarketplaces": {
    "acme-tools": {
      "source": { "source": "github", "repo": "acme-corp/plugins" }
    }
  }
}

Menggunakan keduanya bersama:

strictKnownMarketplaces adalah gerbang kebijakan: mengontrol apa yang dapat ditambahkan pengguna tetapi tidak mendaftarkan marketplace apa pun. Untuk membatasi dan pra-mendaftarkan marketplace untuk semua pengguna, atur keduanya dalam managed-settings.json:

{
  "strictKnownMarketplaces": [
    { "source": "github", "repo": "acme-corp/plugins" }
  ],
  "extraKnownMarketplaces": {
    "acme-tools": {
      "source": { "source": "github", "repo": "acme-corp/plugins" }
    }
  }
}

Dengan hanya strictKnownMarketplaces yang diatur, pengguna masih dapat menambahkan marketplace yang diizinkan secara manual melalui /plugin marketplace add, tetapi tidak tersedia secara otomatis.

Catatan penting:

  • Pembatasan diperiksa SEBELUM permintaan jaringan atau operasi sistem file apa pun
  • Saat diblokir, pengguna melihat pesan kesalahan yang jelas menunjukkan sumber diblokir oleh kebijakan yang dikelola
  • Pembatasan diterapkan pada penambahan marketplace dan pada instalasi plugin, pembaruan, penyegaran, dan pembaruan otomatis. Marketplace yang ditambahkan sebelum kebijakan ditetapkan tidak dapat digunakan untuk menginstal atau memperbarui plugin setelah sumbernya tidak lagi cocok dengan daftar putih
  • Pengaturan yang dikelola memiliki prioritas tertinggi dan tidak dapat ditimpa

Lihat Pembatasan marketplace yang dikelola untuk dokumentasi yang menghadap pengguna.

Mengelola plugin

Gunakan perintah /plugin untuk mengelola plugin secara interaktif:

  • Jelajahi plugin yang tersedia dari marketplace
  • Instal/copot plugin
  • Aktifkan/nonaktifkan plugin
  • Lihat detail plugin (skills, agents, hooks yang disediakan)
  • Tambah/hapus marketplace

Pelajari lebih lanjut tentang sistem plugin dalam dokumentasi plugins.

Variabel lingkungan

Variabel lingkungan memungkinkan Anda mengontrol perilaku Claude Code tanpa mengedit file pengaturan. Variabel apa pun juga dapat dikonfigurasi dalam settings.json di bawah kunci env untuk menerapkannya ke setiap sesi atau mengulanginya ke tim Anda.

Lihat referensi variabel lingkungan untuk daftar lengkap.

Tools yang tersedia untuk Claude

Claude Code memiliki akses ke serangkaian tools untuk membaca, mengedit, mencari, menjalankan perintah, dan mengorkestrasi subagents. Nama tool adalah string tepat yang Anda gunakan dalam aturan izin dan pencocokan hook.

Lihat referensi tools untuk daftar lengkap dan detail perilaku tool Bash.

Lihat juga