Langsung ke konten utama

Documentation Index

Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

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

CakupanLokasiSiapa yang terpengaruhDibagikan dengan tim?
ManagedPengaturan yang dikelola server, plist / registry, atau managed-settings.json tingkat sistemSemua pengguna di mesinYa (digunakan oleh IT)
UserDirektori ~/.claude/Anda, di semua proyekTidak
Project.claude/ di repositoriSemua kolaborator di repositori iniYa (dikomit ke git)
Local.claude/settings.local.jsonAnda, hanya di repositori iniTidak (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:
FiturLokasi penggunaLokasi proyekLokasi 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.mdCLAUDE.md atau .claude/CLAUDE.mdCLAUDE.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\
      Jalur Windows warisan C:\ProgramData\ClaudeCode\managed-settings.json tidak lagi didukung sejak v2.1.75. Administrator yang menggunakan pengaturan ke lokasi tersebut harus memigrasikan file ke C:\Program Files\ClaudeCode\managed-settings.json.
      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.
    Penyebaran yang dikelola juga dapat membatasi penambahan marketplace plugin menggunakan strictKnownMarketplaces. Untuk informasi lebih lanjut, lihat Pembatasan marketplace yang dikelola.
  • 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.
Claude Code secara otomatis membuat cadangan file konfigurasi dengan stempel waktu dan menyimpan lima cadangan terbaru untuk mencegah kehilangan data.
Contoh settings.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:
KunciDeskripsiContoh
agentJalankan 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" }]
allowedHttpHookUrlsDaftar 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/*"]
allowedMcpServersSaat 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 Hooktrue
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 Dikelolatrue
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 dikelolatrue
alwaysThinkingEnabledAktifkan 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 envtrue
apiKeyHelperSkrip 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
attributionSesuaikan atribusi untuk komit git dan pull request. Lihat Pengaturan atribusi{"commit": "🤖 Generated with Claude Code", "pr": ""}
autoMemoryDirectoryDirektori 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"
autoMemoryEnabledAktifkan 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 envfalse
autoModeSesuaikan 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"]}
autoScrollEnabledDalam 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 dimatikanfalse
autoUpdatesChannelSaluran 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"
availableModelsBatasi model mana yang dapat dipilih pengguna melalui /model, --model, atau ANTHROPIC_MODEL. Tidak mempengaruhi opsi Default. Lihat Batasi pemilihan model["sonnet", "haiku"]
awaySummaryEnabledTampilkan 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_SUMMARYtrue
awsAuthRefreshSkrip khusus yang memodifikasi direktori .aws (lihat konfigurasi kredensial lanjutan)aws sso login --profile myprofile
awsCredentialExportSkrip 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 truetrue
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."
claudeMdExcludesPola 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"]
cleanupPeriodDaysFile 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
companyAnnouncementsPengumuman 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"]
defaultShellShell 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"
deniedMcpServersSaat 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" }]
disableAgentViewAtur 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 1true
disableAllHooksNonaktifkan semua hooks dan status line khusus apa puntrue
disableAutoModeAtur 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"
disableDeepLinkRegistrationAtur 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"
disabledMcpjsonServersDaftar MCP servers spesifik dari file .mcp.json untuk menolak["filesystem"]
disableRemoteControlNonaktifkan 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 barutrue
disableSkillShellExecutionNonaktifkan 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 menimpanyatrue
editorModeMode binding kunci untuk prompt input: "normal" atau "vim". Default: "normal". Muncul di /config sebagai Editor mode"vim"
effortLevelPertahankan 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"
enableAllProjectMcpServersSecara otomatis menyetujui semua MCP servers yang ditentukan dalam file .mcp.json proyektrue
enabledMcpjsonServersDaftar MCP servers spesifik dari file .mcp.json untuk menyetujui["memory", "github"]
envVariabel lingkungan yang akan diterapkan ke setiap sesi{"FOO": "bar"}
fastModePerSessionOptInSaat 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 sesitrue
feedbackSurveyRateProbabilitas (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 berlaku0.05
fileSuggestionKonfigurasikan skrip khusus untuk pelengkapan otomatis file @. Lihat Pengaturan saran file{"type": "command", "command": "~/.claude/file-suggestion.sh"}
forceLoginMethodGunakan claudeai untuk membatasi login ke akun Claude.ai, console untuk membatasi login ke akun Claude Console (penagihan penggunaan API)claudeai
forceLoginOrgUUIDMemerlukan 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-closedtrue
gcpAuthRefreshSkrip khusus yang menyegarkan GCP Application Default Credentials saat kedaluwarsa atau tidak dapat dimuat. Lihat konfigurasi kredensial lanjutangcloud auth application-default login
hooksKonfigurasikan perintah khusus untuk dijalankan pada acara siklus hidup. Lihat dokumentasi hooks untuk formatLihat hooks
httpHookAllowedEnvVarsDaftar 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"]
includeCoAuthoredByUsang: Gunakan attribution sebagai gantinya. Apakah akan menyertakan baris co-authored-by Claude dalam komit git dan pull request (default: true)false
includeGitInstructionsSertakan 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 diaturfalse
languageKonfigurasikan bahasa respons pilihan Claude (misalnya, "japanese", "spanish", "french"). Claude akan merespons dalam bahasa ini secara default. Juga menetapkan bahasa voice dictation"japanese"
maxSkillDescriptionCharsBatas 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 baru2048
minimumVersionLantai 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"
modelTimpa model default untuk digunakan untuk Claude Code. --model dan ANTHROPIC_MODEL menimpa ini untuk satu sesi"claude-sonnet-4-6"
modelOverridesPeta 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:..."}
otelHeadersHelperSkrip 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
outputStyleKonfigurasikan gaya output untuk menyesuaikan prompt sistem. Lihat dokumentasi gaya output"Explanatory"
parentSettingsBehavior(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"
permissionsLihat tabel di bawah untuk struktur izin.
plansDirectorySesuaikan 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"
policyHelperAdmin-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"}
preferredNotifChannelMetode 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"
prefersReducedMotionKurangi atau nonaktifkan animasi UI (spinners, shimmer, efek flash) untuk aksesibilitastrue
prUrlTemplateTemplate 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}"
respectGitignoreKontrol apakah pemilih file @ menghormati pola .gitignore. Saat true (default), file yang cocok dengan pola .gitignore dikecualikan dari saranfalse
showClearContextOnPlanAcceptTampilkan opsi “clear context” pada layar penerimaan rencana. Default ke false. Atur ke true untuk mengembalikan opsitrue
showThinkingSummariesTampilkan 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. Mode non-interaktif (-p) dan pemanggil SDK selalu menerima ringkasan terlepas dari pengaturan initrue
showTurnDurationTampilkan pesan durasi giliran setelah respons, misalnya “Cooked for 1m 6s”. Default: true. Muncul di /config sebagai Show turn durationfalse
skillListingBudgetFractionFraksi 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 baru0.02
skillOverridesPenggantian 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"}
skipWebFetchPreflightLewati 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 blokirtrue
spinnerTipsEnabledTampilkan tips dalam spinner saat Claude bekerja. Atur ke false untuk menonaktifkan tips (default: true)false
spinnerTipsOverrideTimpa 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"] }
spinnerVerbsSesuaikan 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"]}
sshConfigsKoneksi 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"}]
statusLineKonfigurasikan 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" }]
syntaxHighlightingDisabledNonaktifkan syntax highlighting dalam diffs, code blocks, dan file previewstrue
teammateModeBagaimana 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"
terminalProgressBarEnabledTampilkan 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 barfalse
tuiRenderer 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"
useAutoModeDuringPlanApakah 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
viewModeMode tampilan transkrip default saat startup: "default", "verbose", atau "focus". Menimpa pemilihan /focus yang lengket saat diatur. Flag --verbose menimpa ini untuk satu sesi"verbose"
voicePengaturan 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" }
voiceEnabledAlias warisan untuk voice.enabled. Lebih suka objek voicetrue
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 aslitrue

Pengaturan konfigurasi global

Pengaturan ini disimpan dalam ~/.claude.json daripada settings.json. Menambahkannya ke settings.json akan memicu kesalahan validasi skema.
Versi sebelum v2.1.119 juga menyimpan autoScrollEnabled, editorMode, showTurnDuration, teammateMode, dan terminalProgressBarEnabled di sini daripada dalam settings.json.
KunciDeskripsiContoh
autoConnectIdeSecara 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 diaturtrue
autoInstallIdeExtensionSecara 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_INSTALLfalse
externalEditorContextTambahkan 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 editortrue
teammateDefaultModelModel 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.
KunciDeskripsiContoh
worktree.baseRefRef 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.symlinkDirectoriesDirektori 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.sparsePathsDirektori 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"]
Untuk menyalin file yang diabaikan git seperti .env ke worktrees baru, gunakan file .worktreeinclude di akar proyek Anda daripada pengaturan.

Pengaturan izin

KunciDeskripsiContoh
allowArray aturan izin untuk memungkinkan penggunaan tool. Lihat Sintaks aturan izin di bawah untuk detail pencocokan pola[ "Bash(git diff *)" ]
askArray aturan izin untuk meminta konfirmasi saat penggunaan tool. Lihat Sintaks aturan izin di bawah[ "Bash(git push *)" ]
denyArray 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/**)" ]
additionalDirectoriesDirektori kerja tambahan untuk akses file. Sebagian besar konfigurasi .claude/ tidak ditemukan dari direktori ini[ "../docs/" ]
defaultModeMode izin default saat membuka Claude Code. Nilai yang valid: default, acceptEdits, plan, auto, dontAsk, bypassPermissions. Flag CLI --permission-mode menimpa pengaturan ini untuk sesi tunggal"acceptEdits"
disableBypassPermissionsModeAtur ke "disable" untuk mencegah mode bypassPermissions diaktifkan. Ini menonaktifkan flag baris perintah --dangerously-skip-permissions. Paling berguna dalam pengaturan yang dikelola di mana pengguna tidak dapat menimpanya"disable"
skipDangerousModePermissionPromptLewati 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 prompttrue

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:
AturanEfek
BashCocok 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.
KunciDeskripsiContoh
enabledAktifkan bash sandboxing (macOS, Linux, dan WSL2). Default: falsetrue
failIfUnavailableKeluar 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 kerastrue
autoAllowBashIfSandboxedSecara otomatis menyetujui perintah bash saat sandboxed. Default: truetrue
excludedCommandsPerintah yang harus dijalankan di luar sandbox["docker *"]
allowUnsandboxedCommandsIzinkan 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: truefalse
filesystem.allowWriteJalur 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.denyWriteJalur 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.denyReadJalur 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.allowReadJalur 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: falsetrue
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.allowAllUnixSocketsIzinkan 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: falsetrue
network.allowLocalBindingIzinkan pengikatan ke port localhost (macOS saja). Default: falsetrue
network.allowMachLookupNama 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.allowedDomainsArray domain untuk memungkinkan lalu lintas jaringan keluar. Mendukung wildcard (misalnya, *.example.com).["github.com", "*.npmjs.org"]
network.deniedDomainsArray 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: falsetrue
network.httpProxyPortPort proxy HTTP yang digunakan jika Anda ingin membawa proxy Anda sendiri. Jika tidak ditentukan, Claude akan menjalankan proxy-nya sendiri.8080
network.socksProxyPortPort proxy SOCKS5 yang digunakan jika Anda ingin membawa proxy Anda sendiri. Jika tidak ditentukan, Claude akan menjalankan proxy-nya sendiri.8081
enableWeakerNestedSandboxAktifkan sandbox yang lebih lemah untuk lingkungan Docker tanpa hak istimewa (Linux dan WSL2 saja). Mengurangi keamanan. Default: falsetrue
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: falsetrue
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:
PrefiksArtiContoh
/Jalur absolut dari akar sistem file/tmp/build tetap /tmp/build
~/Relatif terhadap direktori home~/.kube menjadi $HOME/.kube
./ atau tidak ada prefiksRelatif 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
KunciDeskripsi
commitAtribusi untuk komit git, termasuk trailer apa pun. String kosong menyembunyikan atribusi komit
prAtribusi 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 attribution memiliki prioritas atas pengaturan includeCoAuthoredBy yang usang. Untuk menyembunyikan semua atribusi, atur commit dan pr ke string kosong.

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:
KunciTipeDeskripsi
pathstringJalur absolut ke executable helper
timeoutMsnumberBerapa lama menunggu helper sebelum memperlakukan run sebagai gagal
refreshIntervalMsnumberSeberapa 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.
Pengaturan array digabungkan di seluruh cakupan. Ketika pengaturan yang bernilai array yang sama (seperti sandbox.filesystem.allowWrite atau permissions.allow) muncul dalam beberapa cakupan, array digabungkan dan dihilangkan duplikatnya, bukan diganti. Ini berarti cakupan prioritas lebih rendah dapat menambahkan entri tanpa menimpa yang ditetapkan oleh cakupan prioritas lebih tinggi, dan sebaliknya. Misalnya, jika pengaturan yang dikelola menetapkan allowWrite ke ["/opt/company-tools"] dan pengguna menambahkan ["~/.kube"], kedua jalur disertakan dalam konfigurasi akhir.

Verifikasi pengaturan aktif

Jalankan /status di dalam Claude Code untuk melihat sumber pengaturan mana yang aktif dan dari mana asalnya. Output menunjukkan setiap lapisan konfigurasi (yang dikelola, pengguna, proyek) bersama dengan asalnya, seperti Enterprise managed settings (remote), Enterprise managed settings (plist), Enterprise managed settings (HKLM), Enterprise managed settings (HKCU), atau Enterprise managed settings (file). Jika file pengaturan berisi kesalahan, /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, dengan pengaturan yang lebih spesifik menambah atau menimpa yang lebih luas

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
Pengaturan proyek memiliki prioritas lebih tinggi daripada pengaturan pengguna, jadi mengatur plugin ke false dalam ~/.claude/settings.json tidak menonaktifkan plugin yang diaktifkan oleh .claude/settings.json proyek. Untuk menolak plugin yang diaktifkan proyek di mesin Anda, atur ke false dalam .claude/settings.local.json sebagai gantinya.Plugin yang dipaksa diaktifkan oleh pengaturan yang dikelola tidak dapat dinonaktifkan dengan cara ini, karena pengaturan yang dikelola menggantikan pengaturan lokal.
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)
Marketplace berbasis URL hanya mengunduh file marketplace.json. Mereka tidak mengunduh file plugin dari server. Plugin dalam marketplace berbasis URL harus menggunakan sumber eksternal (GitHub, npm, atau URL git) daripada jalur relatif. Untuk plugin dengan jalur relatif, gunakan marketplace berbasis Git sebagai gantinya. Lihat Troubleshooting untuk detail.
  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:
AspekstrictKnownMarketplacesextraKnownMarketplaces
TujuanPenegakan kebijakan organisasiKenyamanan tim
File pengaturanmanaged-settings.json sajaFile pengaturan apa pun
PerilakuBlokir penambahan yang tidak ada dalam daftar putihInstal otomatis marketplace yang hilang
Saat diterapkanSebelum operasi jaringan/sistem fileSetelah prompt kepercayaan pengguna
Dapat ditimpaTidak (prioritas tertinggi)Ya (oleh pengaturan prioritas lebih tinggi)
Format sumberObjek sumber langsungMarketplace bernama dengan sumber bersarang
Kasus penggunaanPembatasan kepatuhan, keamananOnboarding, 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