SpyBara
Go Premium

Documentation 2026-10-06 23:59 UTC to 2026-10-07 20:01 UTC

62 files changed +910 −828. View all changes and history on the product overview
2026
Wed 7 20:57 Tue 6 23:59 Mon 5 23:58 Sun 4 23:58 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59

advisor.md +8 −8

Details

87Claude Code menggunakan flag sebagai pengganti pengaturan `advisorModel` untuk sesi itu. Ini tidak mencantumkan `--advisor` dalam `claude --help`. Claude Code keluar dengan kesalahan saat peluncuran jika:87Claude Code menggunakan flag sebagai pengganti pengaturan `advisorModel` untuk sesi itu. Ini tidak mencantumkan `--advisor` dalam `claude --help`. Claude Code keluar dengan kesalahan saat peluncuran jika:

88 88 

89* Model utama sesi tidak mendukung advisor89* Model utama sesi tidak mendukung advisor

90* Model yang diminta, seperti Haiku, tidak dapat bertindak sebagai advisor90* Model yang diminta, seperti Haiku 4.5, tidak dapat bertindak sebagai advisor

91* Allowlist [`availableModels`](/docs/id/model-config#restrict-model-selection) organisasi Anda mengecualikan model yang diminta91* Allowlist [`availableModels`](/docs/id/model-config#restrict-model-selection) organisasi Anda mengecualikan model yang diminta

92* Anda meminta Fable dan akun Anda masih memerlukan [persetujuan kredit penggunaan](#fable-advisor-and-usage-credits)92* Anda meminta Fable dan akun Anda masih memerlukan [persetujuan kredit penggunaan](#fable-advisor-and-usage-credits)

93 93 


103 103 

104| Model utama | Advisor yang diterima |104| Model utama | Advisor yang diterima |

105| - | - |105| - | - |

106| Haiku 4.5 | Fable, Opus, Sonnet |106| Haiku 4.5 | Fable, Opus, Sonnet, Haiku 5.5 |

107| Sonnet 4.6 | Fable, Opus, Sonnet |107| Sonnet 4.6 | Fable, Opus, Sonnet, Haiku 5.5 |

108| Opus 4.6 | Fable, Opus, Sonnet 5 atau lebih baru |108| Opus 4.6 | Fable, Opus, Sonnet 5 atau lebih baru, Haiku 5.5 |

109| Sonnet 5 | Fable, Opus 4.7 atau lebih baru, Sonnet 5 atau lebih baru |109| Sonnet 5 atau Haiku 5.5 | Fable, Opus 4.7 atau lebih baru, Sonnet 5 atau lebih baru, Haiku 5.5 |

110| Opus 4.7 atau Opus 4.8 | Fable, Opus 4.7 atau lebih baru, Sonnet 5.5 |110| Opus 4.7 atau Opus 4.8 | Fable, Opus 4.7 atau lebih baru, Sonnet 5.5 |

111| Sonnet 5.5 | Fable, Opus 5 atau lebih baru, Sonnet 5.5 |111| Sonnet 5.5 | Fable, Opus 5 atau lebih baru, Sonnet 5.5 |

112| Opus 5 atau Opus 5.5 | Fable, Opus 5 atau lebih baru |112| Opus 5 atau Opus 5.5 | Fable, Opus 5 atau lebih baru |

113| Fable 5 | Fable 5.1 atau Fable 5 |113| Fable 5 | Fable 5.1 atau Fable 5 |

114| Fable 5.1 | Fable 5.1 |114| Fable 5.1 | Fable 5.1 |

115 115 

116Fable 5.1 memerlukan Claude Code v2.1.257 atau lebih baru. Model Fable memerlukan [akses Fable](/docs/id/model-config#work-with-fable). Sonnet 5.5 sebagai advisor untuk model utama Opus 4.7 atau Opus 4.8 memerlukan Claude Code v2.1.287 atau lebih baru.116Fable 5.1 memerlukan Claude Code v2.1.257 atau lebih baru. Model Fable memerlukan [akses Fable](/docs/id/model-config#work-with-fable). Sonnet 5.5 sebagai advisor untuk model utama Opus 4.7 atau Opus 4.8 memerlukan Claude Code v2.1.287 atau lebih baru. Haiku 5.5 sebagai model utama atau sebagai advisor memerlukan Claude Code v2.1.293 atau lebih baru.

117 117 

118Atur advisor sebagai `fable`, `opus`, atau `sonnet`. Alias ini diselesaikan ke [versi default bawaan](/docs/id/model-config#model-aliases) Claude Code untuk setiap keluarga model, yang berkembang dengan rilis Claude Code baru. Anda juga dapat melewatkan ID model lengkap seperti `claude-opus-5-5`. Haiku dapat memanggil advisor tetapi tidak dapat bertindak sebagai advisor.118Atur advisor sebagai `fable`, `opus`, atau `sonnet`. Alias ini diselesaikan ke [versi default bawaan](/docs/id/model-config#model-aliases) Claude Code untuk setiap keluarga model, yang berkembang dengan rilis Claude Code baru. Anda juga dapat melewatkan ID model lengkap seperti `claude-opus-5-5` atau `claude-haiku-5-5`. Haiku 4.5 dapat memanggil advisor tetapi tidak dapat bertindak sebagai advisor.

119 119 

120Subagent mewarisi advisor yang dikonfigurasi dan menerapkan pemeriksaan pasangan yang sama terhadap model mereka sendiri.120Subagent mewarisi advisor yang dikonfigurasi dan menerapkan pemeriksaan pasangan yang sama terhadap model mereka sendiri.

121 121 


202Alat advisor memerlukan semua hal berikut:202Alat advisor memerlukan semua hal berikut:

203 203 

204* **Hanya API Anthropic**: advisor adalah alat yang dieksekusi server. Alat ini tidak tersedia di Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform, atau Microsoft Foundry. Melalui [LLM gateway](/docs/id/llm-gateway) yang dikonfigurasi dengan `ANTHROPIC_BASE_URL`, ketersediaan tergantung pada apakah gateway meneruskan permintaan utuh ke API Anthropic. Jika gateway atau upstream-nya tidak mengenali alat advisor, lihat [Pengulangan otomatis dan penerusan kesalahan](/docs/id/llm-gateway-protocol#automatic-retry-and-error-forwarding) untuk mengetahui bagaimana Claude Code merespons.204* **Hanya API Anthropic**: advisor adalah alat yang dieksekusi server. Alat ini tidak tersedia di Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform, atau Microsoft Foundry. Melalui [LLM gateway](/docs/id/llm-gateway) yang dikonfigurasi dengan `ANTHROPIC_BASE_URL`, ketersediaan tergantung pada apakah gateway meneruskan permintaan utuh ke API Anthropic. Jika gateway atau upstream-nya tidak mengenali alat advisor, lihat [Pengulangan otomatis dan penerusan kesalahan](/docs/id/llm-gateway-protocol#automatic-retry-and-error-forwarding) untuk mengetahui bagaimana Claude Code merespons.

205* **Model utama yang didukung**: Fable, Opus 4.6 atau lebih baru, Sonnet 4.6 atau lebih baru, atau Haiku 4.5. Lihat [Pilih model advisor](#choose-an-advisor-model) untuk mengetahui advisor mana yang diterima masing-masing.205* **Model utama yang didukung**: Fable, Opus 4.6 atau lebih baru, Sonnet 4.6 atau lebih baru, Haiku 4.5, atau Haiku 5.5. Lihat [Pilih model advisor](#choose-an-advisor-model) untuk mengetahui advisor mana yang diterima masing-masing.

206* **Pengambilan bendera fitur**: Claude Code mengaktifkan advisor melalui bendera fitur yang diambilnya dari Anthropic. Dalam sesi di mana variabel yang mematikan pengambilan bendera diatur, seperti `DISABLE_TELEMETRY`, advisor tetap mati. Lihat [Fitur yang memerlukan pengambilan bendera fitur](/docs/id/env-vars#features-that-need-feature-flag-fetching).206* **Pengambilan bendera fitur**: Claude Code mengaktifkan advisor melalui bendera fitur yang diambilnya dari Anthropic. Dalam sesi di mana variabel yang mematikan pengambilan bendera diatur, seperti `DISABLE_TELEMETRY`, advisor tetap mati. Lihat [Fitur yang memerlukan pengambilan bendera fitur](/docs/id/env-vars#features-that-need-feature-flag-fetching).

207 207 

208<h2 id="turn-the-advisor-off">208<h2 id="turn-the-advisor-off">

agent-sdk/hooks.md +13 −13

Details

140 ```140 ```

141</CodeGroup>141</CodeGroup>

142 142 

143Ketika Anda menjalankan salah satu skrip, Claude mencoba membuat file `.env`, hook menolak pemanggilan tool, dan respons akhir Claude menjelaskan bahwa ia tidak dapat membuat file `.env`.143Ketika Anda menjalankan salah satu skrip, Claude mencoba membuat file `.env` dan hook menolak panggilan tool tersebut.

144 144 

145<h2 id="available-hooks">145<h2 id="available-hooks">

146 Available hooks146 Available hooks


179| `ConfigChange` | Tidak | Ya | File konfigurasi berubah | Reload pengaturan secara dinamis |179| `ConfigChange` | Tidak | Ya | File konfigurasi berubah | Reload pengaturan secara dinamis |

180| `InstructionsLoaded` | Tidak | Ya | File `CLAUDE.md` atau rules dimuat ke dalam konteks | Audit file instruksi mana yang dimuat |180| `InstructionsLoaded` | Tidak | Ya | File `CLAUDE.md` atau rules dimuat ke dalam konteks | Audit file instruksi mana yang dimuat |

181| `WorktreeCreate` | Tidak | Ya | Git worktree dibuat | Track isolated workspaces |181| `WorktreeCreate` | Tidak | Ya | Git worktree dibuat | Track isolated workspaces |

182| `WorktreeRemove` | Tidak | Ya | Git worktree dihapus | Bersihkan workspace resources |182| `WorktreeRemove` | Tidak | Ya | Worktree yang dibuat oleh hook `WorktreeCreate` sedang dihapus | Bersihkan workspace resources |

183| `CwdChanged` | Tidak | Ya | Working directory berubah selama sesi | Reload environment variables per direktori |183| `CwdChanged` | Tidak | Ya | Working directory berubah selama sesi | Reload environment variables per direktori |

184| `FileChanged` | Tidak | Ya | File yang diawasi dimodifikasi, dibuat, atau dihapus | Reload konfigurasi saat file proyek berubah |184| `FileChanged` | Tidak | Ya | File yang diawasi dimodifikasi, dibuat, atau dihapus | Reload konfigurasi saat file proyek berubah |

185| `DirectoryAdded` | Tidak | Ya | Working directory ditambahkan selama sesi | Instal dependencies untuk repository yang ditambahkan di tengah-sesi |185| `DirectoryAdded` | Tidak | Ya | Working directory ditambahkan selama sesi | Instal dependencies untuk repository yang ditambahkan di tengah-sesi |


262* **Top-level fields** diterima pada setiap event: `systemMessage` menampilkan pesan kepada pengguna, dan `continue` (`continue_` di Python) menentukan apakah agent terus berjalan setelah hook ini. Beberapa events membuangnya atau mengirimnya ke tempat lain. Setiap [bagian event](/docs/id/hooks#hook-events) di halaman hooks mengatakan di mana mereka mendarat.262* **Top-level fields** diterima pada setiap event: `systemMessage` menampilkan pesan kepada pengguna, dan `continue` (`continue_` di Python) menentukan apakah agent terus berjalan setelah hook ini. Beberapa events membuangnya atau mengirimnya ke tempat lain. Setiap [bagian event](/docs/id/hooks#hook-events) di halaman hooks mengatakan di mana mereka mendarat.

263* **`hookSpecificOutput`** mengontrol operasi saat ini. Fields yang Anda tetapkan di dalamnya tergantung pada tipe hook event:263* **`hookSpecificOutput`** mengontrol operasi saat ini. Fields yang Anda tetapkan di dalamnya tergantung pada tipe hook event:

264 * Untuk hooks `PreToolUse`, di sinilah Anda menetapkan `permissionDecision` (`"allow"`, `"deny"`, `"ask"`, atau `"defer"`), `permissionDecisionReason`, dan `updatedInput`. Jika Anda mengembalikan `"defer"`, giliran berakhir dengan pesan hasil yang `stop_reason`-nya adalah `"tool_deferred"`, sehingga Anda dapat [melanjutkan panggilan tersebut nanti](/docs/id/hooks#defer-a-tool-call-for-later).264 * Untuk hooks `PreToolUse`, di sinilah Anda menetapkan `permissionDecision` (`"allow"`, `"deny"`, `"ask"`, atau `"defer"`), `permissionDecisionReason`, dan `updatedInput`. Jika Anda mengembalikan `"defer"`, giliran berakhir dengan pesan hasil yang `stop_reason`-nya adalah `"tool_deferred"`, sehingga Anda dapat [melanjutkan panggilan tersebut nanti](/docs/id/hooks#defer-a-tool-call-for-later).

265 * Untuk hooks `PostToolUse`, Anda dapat menetapkan `additionalContext` untuk menambahkan informasi ke hasil tool. Untuk mengganti output tool sebelum Claude melihatnya, tetapkan `updatedToolOutput`, yang bekerja untuk tool apa pun di kedua SDK. Field `updatedMCPToolOutput` yang lebih lama mengganti output MCP tool saja dan sudah usang.265 * Untuk hooks `PostToolUse`, Anda dapat menetapkan `additionalContext` untuk menambahkan informasi ke hasil tool. Untuk mengganti output tool sebelum Claude melihatnya, tetapkan `updatedToolOutput`, yang bekerja untuk tool apa pun di kedua SDK. Field `updatedMCPToolOutput` yang lebih lama hanya mengganti output MCP tool.

266 * Di TypeScript SDK, callback `PostToolUse` juga dapat mengembalikan `classifierContext`, catatan singkat tentang hasil pemanggilan tool untuk [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) permission classifier. Karena callback Anda berjalan dalam proses aplikasi Anda sendiri, classifier dapat menimbang pernyataan pengguna yang Anda sampaikan dalam catatan sebagai intent pengguna. Field memerlukan TypeScript Agent SDK v0.3.236 atau lebih baru. [Annotate a result for the auto mode classifier](/docs/id/hooks#annotate-a-result-for-the-auto-mode-classifier) mencakup batas panjang, aturan synchronous-only, dan apa yang tidak boleh dimasukkan dalam catatan.266 * Di TypeScript SDK, callback `PostToolUse` juga dapat mengembalikan `classifierContext`, catatan singkat tentang hasil pemanggilan tool untuk [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) permission classifier. Karena callback Anda berjalan dalam proses aplikasi Anda sendiri, classifier dapat menimbang pernyataan pengguna yang Anda sampaikan dalam catatan sebagai intent pengguna. Field memerlukan TypeScript Agent SDK v0.3.236 atau lebih baru. [Annotate a result for the auto mode classifier](/docs/id/hooks#annotate-a-result-for-the-auto-mode-classifier) mencakup batas panjang, aturan synchronous-only, dan apa yang tidak boleh dimasukkan dalam catatan.

267 267 

268Kembalikan `{}` untuk mengizinkan operasi tanpa perubahan. SDK callback hooks menggunakan format output JSON yang sama dengan [Claude Code shell command hooks](/docs/id/hooks#json-output), yang mendokumentasikan setiap field dan opsi spesifik event. Untuk definisi tipe SDK, lihat referensi SDK [TypeScript](/docs/id/agent-sdk/typescript#synchookjsonoutput) dan [Python](/docs/id/agent-sdk/python#synchookjsonoutput).268Kembalikan `{}` untuk mengizinkan operasi tanpa perubahan. SDK callback hooks menggunakan format output JSON yang sama dengan [Claude Code shell command hooks](/docs/id/hooks#json-output), yang mendokumentasikan setiap field dan opsi spesifik event. Untuk definisi tipe SDK, lihat referensi SDK [TypeScript](/docs/id/agent-sdk/typescript#synchookjsonoutput) dan [Python](/docs/id/agent-sdk/python#synchookjsonoutput).


832 832 

833Ketika callback melampaui timeout-nya, Claude Code membatalkannya dan membuang output-nya, dan sesi berlanjut daripada hang. Apa yang terjadi selanjutnya tergantung pada event:833Ketika callback melampaui timeout-nya, Claude Code membatalkannya dan membuang output-nya, dan sesi berlanjut daripada hang. Apa yang terjadi selanjutnya tergantung pada event:

834 834 

835* `PreToolUse`: Claude Code tidak menjalankan tool call, Claude menerima hasil tool yang menyatakan hook tidak merespons sebelum timeout-nya, dan turn berlanjut. Jika hook `PreToolUse` lain mengembalikan explicit deny, Claude menerima denial itu sebagai gantinya dari error timeout. Sebelum v2.1.210, Claude Code melaporkan timeout ke Claude sebagai user rejection, yang membuat unattended sessions berhenti dan menunggu input.835* `PreToolUse`: Claude Code tidak menjalankan panggilan tool, Claude menerima hasil tool yang menyatakan hook tidak merespons sebelum timeout-nya, dan giliran berlanjut. Jika hook `PreToolUse` lain mengembalikan explicit deny, Claude menerima denial itu sebagai gantinya dari error timeout. Sebelum v2.1.210, Claude Code melaporkan timeout ke Claude sebagai user rejection, yang membuat unattended sessions berhenti dan menunggu input.

836* `PostToolUse` dan `PostToolUseFailure`: Claude Code menyimpan hasil tool dan turn berlanjut.836* `PostToolUse` dan `PostToolUseFailure`: Claude Code menyimpan hasil tool dan giliran berlanjut.

837* `UserPromptSubmit` dan [`UserPromptExpansion`](/docs/id/hooks#userpromptexpansion): Claude Code memblokir prompt dengan pesan yang menyebutkan hook dan timeout, dan sesi berlanjut. Karena callback pada events ini dapat bertindak sebagai policy gate, Claude Code tidak pernah membiarkan prompt yang timed-out melewati tanpa screening. Sebelum v2.1.208, Claude Code mengakhiri query dengan `error_during_execution` ketika callback pada events ini timed out.837* `UserPromptSubmit` dan [`UserPromptExpansion`](/docs/id/hooks#userpromptexpansion): Claude Code memblokir prompt dengan pesan yang menyebutkan hook dan timeout, dan sesi berlanjut. Karena callback pada events ini dapat bertindak sebagai policy gate, Claude Code tidak pernah membiarkan prompt yang timed-out melewati tanpa screening. Sebelum v2.1.208, Claude Code mengakhiri query dengan `error_during_execution` ketika callback pada events ini timed out.

838* `Stop` dan `SubagentStop`: callback yang timed-out dihitung sebagai tidak mengembalikan keputusan. Agent atau subagent berhenti seolah-olah callback itu telah mengizinkannya, dan keputusan dari hooks lain Anda pada event masih berlaku. Sebelum Claude Code v2.1.273, callback `Stop` atau `SubagentStop` yang timed-out dihitung sebagai failed hook run, dan Claude Code membuang keputusan hooks lain Anda pada event.838* `Stop` dan `SubagentStop`: callback yang timed-out dihitung sebagai tidak mengembalikan keputusan. Agent atau subagent berhenti seolah-olah callback itu telah mengizinkannya, dan keputusan dari hooks lain Anda pada event masih berlaku. Sebelum Claude Code v2.1.273, callback `Stop` atau `SubagentStop` yang timed-out dihitung sebagai failed hook run, dan Claude Code membuang keputusan hooks lain Anda pada event.

839* `SessionStart`: callback yang timed-out dihitung sebagai tidak mengembalikan output, dan sesi berlanjut dengan output dari hooks `SessionStart` lain Anda.839* `SessionStart`: callback yang timed-out dihitung sebagai tidak mengembalikan output, dan sesi berlanjut dengan output dari hooks `SessionStart` lain Anda.


842 842 

843Pertama kali callback `Stop` atau `SessionStart` timed out di sesi utama, Claude Code juga menambahkan [`SDKInformationalMessage`](/docs/id/agent-sdk/typescript#sdkinformationalmessage) ke message stream mengatakan app yang menjalankan sesi tidak merespons. Timeouts kemudian tidak mengulangi pesan itu saat app Anda tetap tidak responsif.843Pertama kali callback `Stop` atau `SessionStart` timed out di sesi utama, Claude Code juga menambahkan [`SDKInformationalMessage`](/docs/id/agent-sdk/typescript#sdkinformationalmessage) ke message stream mengatakan app yang menjalankan sesi tidak merespons. Timeouts kemudian tidak mengulangi pesan itu saat app Anda tetap tidak responsif.

844 844 

845Jika Anda mengganggu query saat callback tertunda, Claude Code membatalkan pending tool call. Sebelum v2.1.208, tool call masih bisa melanjutkan jika Anda mengganggu selama pending `PreToolUse` callback.845Jika Anda mengganggu query saat callback tertunda, Claude Code membatalkan panggilan tool yang tertunda. Sebelum v2.1.208, panggilan tool masih bisa dilanjutkan jika Anda mengganggu selama callback `PreToolUse` yang tertunda.

846 846 

847Jika callback Anda membutuhkan lebih banyak waktu, atur `timeout` yang lebih tinggi pada `HookMatcher`-nya. Di TypeScript, gunakan `AbortSignal` dari argumen callback ketiga untuk menangani pembatalan dengan baik ketika timeout terjadi.847Jika callback Anda membutuhkan lebih banyak waktu, atur `timeout` yang lebih tinggi pada `HookMatcher`-nya. Di TypeScript, gunakan `AbortSignal` dari argumen callback ketiga untuk menangani pembatalan dengan baik ketika timeout terjadi.

848 848 


870 };870 };

871 ```871 ```

872 872 

873* Jangan pasangkan `updatedInput` dengan `permissionDecision: 'defer'`, yang menghilangkan input yang dimodifikasi. Menghilangkan `permissionDecision` tidak masalah: input yang dimodifikasi masih berlaku melalui evaluasi permission normal. Anda juga dapat mengembalikan `'allow'` untuk auto-approve input yang dimodifikasi atau `'ask'` untuk menampilkannya kepada pengguna untuk persetujuan873* Jangan pasangkan `updatedInput` dengan `permissionDecision: 'defer'`, yang menghilangkan input yang dimodifikasi. Menghilangkan `permissionDecision` tidak masalah: input yang dimodifikasi masih berlaku melalui evaluasi izin normal. Anda juga dapat mengembalikan `'allow'` untuk auto-approve input yang dimodifikasi atau `'ask'` untuk menampilkannya kepada pengguna untuk persetujuan

874 874 

875* Sertakan `hookEventName` di `hookSpecificOutput` untuk mengidentifikasi tipe hook mana output-nya875* Sertakan `hookEventName` di `hookSpecificOutput` untuk mengidentifikasi tipe hook mana output-nya

876 876 


878 Session hooks not available in Python878 Session hooks not available in Python

879</h3>879</h3>

880 880 

881`SessionStart` dan `SessionEnd` dapat didaftarkan sebagai SDK callback hooks di TypeScript, tetapi tidak tersedia di Python SDK karena tipe `HookEvent`-nya menghilangkannya. Di Python, mereka hanya tersedia sebagai [shell command hooks](/docs/id/hooks#hook-events) yang didefinisikan dalam file pengaturan seperti `.claude/settings.json`. Untuk memuat shell command hooks dari aplikasi SDK Anda, sertakan setting source yang sesuai dengan [`setting_sources`](/docs/id/agent-sdk/python#settingsource) atau [`settingSources`](/docs/id/agent-sdk/typescript#settingsource):881`SessionStart` dan `SessionEnd` dapat didaftarkan sebagai SDK callback hooks di TypeScript, tetapi tidak tersedia di Python SDK karena tipe `HookEvent`-nya menghilangkannya. Di Python, mereka hanya tersedia sebagai [shell command hooks](/docs/id/hooks#hook-events) yang didefinisikan dalam file pengaturan seperti `.claude/settings.json`. File pengaturan mana yang dimuat oleh aplikasi SDK Anda bergantung pada [`setting_sources`](/docs/id/agent-sdk/python#settingsource) atau [`settingSources`](/docs/id/agent-sdk/typescript#settingsource). Jika Anda mengatur opsi tersebut, sertakan sumber yang berisi hook:

882 882 

883<CodeGroup>883<CodeGroup>

884 ```python Python theme={null}884 ```python Python theme={null}


900 Subagent permission prompts multiplying900 Subagent permission prompts multiplying

901</h3>901</h3>

902 902 

903Ketika spawning multiple subagents, masing-masing mungkin meminta permissions secara terpisah untuk tool calls-nya sendiri. Untuk menghindari prompts berulang, gunakan hooks `PreToolUse` untuk auto-approve tools spesifik, atau konfigurasi permission rules, yang subagents [warisi dari parent conversation](/docs/id/sub-agents#permission-modes).903Ketika menjalankan beberapa subagent, masing-masing mungkin meminta izin secara terpisah untuk panggilan tool-nya sendiri. Untuk menghindari permintaan izin berulang, gunakan hooks `PreToolUse` untuk auto-approve tool spesifik, atau konfigurasikan aturan izin, yang [diwarisi subagent dari percakapan induk](/docs/id/sub-agents#permission-modes).

904 904 

905<h3 id="recursive-hook-loops-with-subagents">905<h3 id="recursive-hook-loops-with-subagents">

906 Recursive hook loops with subagents906 Recursive hook loops with subagents

907</h3>907</h3>

908 908 

909Hook `UserPromptSubmit` yang spawns subagents dapat membuat infinite loops jika subagents tersebut memicu hook yang sama. Untuk mencegah ini:909Hook `UserPromptSubmit` yang menjalankan subagent dapat membuat infinite loops jika subagent tersebut memicu hook yang sama. Untuk mencegah ini:

910 910 

911* Gunakan shared variable atau session state untuk track apakah Anda sudah berada di dalam subagent911* Gunakan shared variable atau session state untuk melacak apakah Anda sudah berada di dalam subagent

912* Scope hooks untuk hanya berjalan untuk sesi top-level agent912* Batasi hook agar hanya berjalan untuk sesi agent tingkat atas

913 913 

914<h3 id="systemmessage-not-appearing-in-output">914<h3 id="systemmessage-not-appearing-in-output">

915 systemMessage not appearing in output915 systemMessage not appearing in output


919 919 

920Sebelum v2.1.227, SDK menampilkan hook output di message stream hanya untuk hooks `SessionStart` dan `Setup`. Untuk event lainnya, output muncul hanya di lifecycle events yang [`includeHookEvents`](/docs/id/agent-sdk/typescript#options) (`include_hook_events` di Python) tambahkan. Entry opsi itu mencakup lifecycle events mana yang setiap hook event hasilkan.920Sebelum v2.1.227, SDK menampilkan hook output di message stream hanya untuk hooks `SessionStart` dan `Setup`. Untuk event lainnya, output muncul hanya di lifecycle events yang [`includeHookEvents`](/docs/id/agent-sdk/typescript#options) (`include_hook_events` di Python) tambahkan. Entry opsi itu mencakup lifecycle events mana yang setiap hook event hasilkan.

921 921 

922Jika Anda perlu menampilkan hook decisions ke aplikasi Anda dengan andal, log mereka secara terpisah atau gunakan dedicated output channel.922Jika Anda perlu menampilkan keputusan hook ke aplikasi Anda dengan andal, catat keputusan tersebut secara terpisah atau gunakan channel output khusus.

923 923 

924<h2 id="related-resources">924<h2 id="related-resources">

925 Related resources925 Related resources

Details

194 `ToolAnnotations`194 `ToolAnnotations`

195</h4>195</h4>

196 196 

197Petunjuk perilaku untuk tool, diteruskan sebagai argumen `annotations` dari [`tool()`](#tool). `ToolAnnotations` memperluas `mcp.types.ToolAnnotations` SDK MCP dengan field `maxResultSizeChars`, dan Anda dapat menulis setiap petunjuk dalam camelCase atau snake\_case: `ToolAnnotations(readOnlyHint=True)` dan `ToolAnnotations(read_only_hint=True)` adalah setara. Anda juga dapat melewatkan `mcp.types.ToolAnnotations` biasa di mana pun SDK menerima anotasi.197Petunjuk perilaku untuk tool, diteruskan sebagai argumen `annotations` dari [`tool()`](#tool). `ToolAnnotations` memperluas `mcp.types.ToolAnnotations` SDK MCP dengan field `maxResultSizeChars`, dan Anda dapat menulis setiap petunjuk dalam camelCase atau snake\_case: `ToolAnnotations(readOnlyHint=True)` dan `ToolAnnotations(read_only_hint=True)` adalah setara. Untuk membaca kembali petunjuk dari objek, gunakan ejaan yang dideklarasikan oleh paket `mcp` yang terinstal: `.readOnlyHint` pada `mcp` 1.x dan `.read_only_hint` pada 2.x, sedangkan `.maxResultSizeChars` berfungsi pada keduanya. Anda juga dapat melewatkan `mcp.types.ToolAnnotations` biasa di mana pun SDK menerima anotasi.

198 198 

199Nama snake\_case dan field `maxResultSizeChars` yang diketik memerlukan Python Agent SDK 0.2.140 atau lebih baru. Versi 0.1.31 hingga 0.2.139 mengekspor ulang `mcp.types.ToolAnnotations` tanpa perubahan. Pada versi 0.1.55 hingga 0.2.139 Anda masih dapat melewatkan `maxResultSizeChars` sebagai argumen kata kunci: kelas MCP menerima field tambahan, dan SDK meneruskan nilai ke Claude Code.199Nama snake\_case dan field `maxResultSizeChars` yang diketik memerlukan Python Agent SDK 0.2.140 atau lebih baru. Versi 0.1.31 hingga 0.2.139 mengekspor ulang `mcp.types.ToolAnnotations` tanpa perubahan. Pada versi 0.1.55 hingga 0.2.139 Anda masih dapat melewatkan `maxResultSizeChars` sebagai argumen kata kunci: kelas MCP menerima field tambahan, dan SDK meneruskan nilai ke Claude Code.

200 200 


321| `summary` | `str` | Judul tampilan: judul kustom, prompt terbaru, ringkasan yang dihasilkan otomatis, atau prompt pertama |321| `summary` | `str` | Judul tampilan: judul kustom, prompt terbaru, ringkasan yang dihasilkan otomatis, atau prompt pertama |

322| `last_modified` | `int` | Waktu modifikasi terakhir dalam milidetik sejak epoch |322| `last_modified` | `int` | Waktu modifikasi terakhir dalam milidetik sejak epoch |

323| `file_size` | `int \| None` | Ukuran file sesi dalam byte (`None` untuk backend penyimpanan jarak jauh) |323| `file_size` | `int \| None` | Ukuran file sesi dalam byte (`None` untuk backend penyimpanan jarak jauh) |

324| `custom_title` | `str \| None` | Judul sesi yang ditetapkan pengguna |324| `custom_title` | `str \| None` | Judul sesi: judul yang ditetapkan pengguna, atau judul yang dihasilkan otomatis jika tidak ada yang ditetapkan |

325| `first_prompt` | `str \| None` | Prompt pengguna bermakna pertama dalam sesi |325| `first_prompt` | `str \| None` | Prompt pengguna bermakna pertama dalam sesi |

326| `git_branch` | `str \| None` | Cabang Git di akhir sesi |326| `git_branch` | `str \| None` | Branch Git di akhir sesi |

327| `cwd` | `str \| None` | Direktori kerja untuk sesi |327| `cwd` | `str \| None` | Direktori kerja untuk sesi |

328| `tag` | `str \| None` | Tag sesi yang ditetapkan pengguna (lihat [`tag_session()`](#tag_session)) |328| `tag` | `str \| None` | Tag sesi yang ditetapkan pengguna (lihat [`tag_session()`](#tag_session)) |

329| `created_at` | `int \| None` | Waktu pembuatan sesi dalam milidetik sejak epoch |329| `created_at` | `int \| None` | Waktu pembuatan sesi dalam milidetik sejak epoch |


927| `continue_conversation` | `bool` | `False` | Lanjutkan percakapan terbaru |927| `continue_conversation` | `bool` | `False` | Lanjutkan percakapan terbaru |

928| `resume` | `str \| None` | `None` | ID sesi untuk dilanjutkan |928| `resume` | `str \| None` | `None` | ID sesi untuk dilanjutkan |

929| `session_id` | `str \| None` | `None` | Gunakan ID sesi tertentu alih-alih yang dibuat otomatis. Harus UUID yang valid. Tidak dapat digabungkan dengan `continue_conversation` atau `resume` kecuali `fork_session` juga diatur |929| `session_id` | `str \| None` | `None` | Gunakan ID sesi tertentu alih-alih yang dibuat otomatis. Harus UUID yang valid. Tidak dapat digabungkan dengan `continue_conversation` atau `resume` kecuali `fork_session` juga diatur |

930| `max_turns` | `int \| None` | `None` | Jumlah maksimal putaran agentic (round trip penggunaan tool) |930| `max_turns` | `int \| None` | `None` | Jumlah maksimal giliran agentic (round trip penggunaan tool) |

931| `max_budget_usd` | `float \| None` | `None` | Hentikan query ketika estimasi biaya sisi klien mencapai nilai USD ini. Hanya menghitung pengeluaran panggilan sendiri; total yang dipulihkan dari sesi yang dilanjutkan tidak dihitung. Untuk peringatan akurasi dan perilaku reset, lihat [Track cost and usage](/docs/id/agent-sdk/cost-tracking) |931| `max_budget_usd` | `float \| None` | `None` | Hentikan query ketika estimasi biaya sisi klien mencapai nilai USD ini. Hanya menghitung pengeluaran panggilan sendiri; total yang dipulihkan dari sesi yang dilanjutkan tidak dihitung. Untuk peringatan akurasi dan perilaku reset, lihat [Track cost and usage](/docs/id/agent-sdk/cost-tracking) |

932| `disallowed_tools` | `list[str]` | `[]` | Tools untuk ditolak. Nama bare seperti `"Bash"` menghapus tool dari konteks Claude. Aturan scoped seperti `"Bash(rm *)"` membiarkan tool tersedia dan menolak panggilan yang cocok di setiap mode izin, termasuk `bypassPermissions`, untuk perintah [seperti yang ditulis](/docs/id/permissions#bash-rule-limits). Lihat [Permissions](/docs/id/agent-sdk/permissions#allow-and-deny-rules) |932| `disallowed_tools` | `list[str]` | `[]` | Tools untuk ditolak. Nama bare seperti `"Bash"` menghapus tool dari konteks Claude. Aturan scoped seperti `"Bash(rm *)"` membiarkan tool tersedia dan menolak panggilan yang cocok di setiap mode izin, termasuk `bypassPermissions`, untuk perintah [seperti yang ditulis](/docs/id/permissions#bash-rule-limits). Lihat [Permissions](/docs/id/agent-sdk/permissions#allow-and-deny-rules) |

933| `enable_file_checkpointing` | `bool` | `False` | Aktifkan pelacakan perubahan file untuk rewinding. Lihat [File checkpointing](/docs/id/agent-sdk/file-checkpointing) |933| `enable_file_checkpointing` | `bool` | `False` | Aktifkan pelacakan perubahan file untuk rewinding. Lihat [File checkpointing](/docs/id/agent-sdk/file-checkpointing) |


940| `cli_path` | `str \| Path \| None` | `None` | Jalur kustom ke executable CLI Claude Code |940| `cli_path` | `str \| Path \| None` | `None` | Jalur kustom ke executable CLI Claude Code |

941| `settings` | `str \| None` | `None` | Jalur ke file pengaturan atau string JSON inline |941| `settings` | `str \| None` | `None` | Jalur ke file pengaturan atau string JSON inline |

942| `add_dirs` | `list[str \| Path]` | `[]` | Direktori tambahan yang dapat diakses Claude. SDK meneruskan setiap entri ke Claude Code sebagai `--add-dir`, jadi dengan sumber pengaturan `project` Claude Code juga [memuat skills, commands, dan subagents direktori](/docs/id/permissions#additional-directories-grant-file-access-not-configuration) |942| `add_dirs` | `list[str \| Path]` | `[]` | Direktori tambahan yang dapat diakses Claude. SDK meneruskan setiap entri ke Claude Code sebagai `--add-dir`, jadi dengan sumber pengaturan `project` Claude Code juga [memuat skills, commands, dan subagents direktori](/docs/id/permissions#additional-directories-grant-file-access-not-configuration) |

943| `env` | `dict[str, str]` | `{}` | Variabel lingkungan yang digabungkan di atas lingkungan proses yang diwarisi. Lihat [Environment variables](/docs/id/env-vars) untuk variabel yang dibaca CLI yang mendasar, dan [Handle slow or stalled API responses](#handle-slow-or-stalled-api-responses) untuk variabel terkait timeout. Atur `CLAUDE_AGENT_SDK_CLIENT_APP` untuk mengidentifikasi aplikasi Anda di header User-Agent |943| `env` | `dict[str, str]` | `{}` | Environment variable yang digabungkan di atas lingkungan proses yang diwarisi. Lihat [Environment variables](/docs/id/env-vars) untuk variabel yang dibaca CLI yang mendasar, dan [Handle slow or stalled API responses](#handle-slow-or-stalled-api-responses) untuk variabel terkait timeout. Atur `CLAUDE_AGENT_SDK_CLIENT_APP` untuk mengidentifikasi aplikasi Anda di header User-Agent |

944| `extra_args` | `dict[str, str \| None]` | `{}` | Argumen CLI tambahan untuk diteruskan langsung ke CLI |944| `extra_args` | `dict[str, str \| None]` | `{}` | Argumen CLI tambahan untuk diteruskan langsung ke CLI |

945| `max_buffer_size` | `int \| None` | `None` | Byte maksimal saat membuffer stdout CLI |945| `max_buffer_size` | `int \| None` | `None` | Byte maksimal saat membuffer stdout CLI |

946| `debug_stderr` | `Any` | `sys.stderr` | *Deprecated* - SDK mengabaikan nilai ini. Gunakan callback `stderr` untuk output stderr CLI |946| `debug_stderr` | `Any` | `sys.stderr` | *Deprecated* - SDK mengabaikan nilai ini. Gunakan callback `stderr` untuk output stderr CLI |


951| `include_partial_messages` | `bool` | `False` | Sertakan event streaming pesan parsial. Ketika diaktifkan, pesan [`StreamEvent`](#streamevent) dihasilkan |951| `include_partial_messages` | `bool` | `False` | Sertakan event streaming pesan parsial. Ketika diaktifkan, pesan [`StreamEvent`](#streamevent) dihasilkan |

952| `include_hook_events` | `bool` | `False` | Sertakan event lifecycle hook dalam aliran pesan sebagai objek `HookEventMessage` |952| `include_hook_events` | `bool` | `False` | Sertakan event lifecycle hook dalam aliran pesan sebagai objek `HookEventMessage` |

953| `forward_subagent_text` | `bool` | `False` | Teruskan blok teks dan thinking subagent dalam aliran pesan. Tanpa opsi ini, Claude Code memancarkan blok `tool_use` dan `tool_result` subagent tetapi bukan teks atau thinking. Memerlukan Python Agent SDK 0.2.140 atau lebih baru |953| `forward_subagent_text` | `bool` | `False` | Teruskan blok teks dan thinking subagent dalam aliran pesan. Tanpa opsi ini, Claude Code memancarkan blok `tool_use` dan `tool_result` subagent tetapi bukan teks atau thinking. Memerlukan Python Agent SDK 0.2.140 atau lebih baru |

954| `verbatim_prompts` | `bool` | `False` | Berikan setiap prompt seperti yang ditulis. SDK mengirim setiap pesan pengguna dengan `client_composed` diatur ke `True`. Lihat [`client_composed`](/docs/id/agent-sdk/typescript#sdkusermessage) untuk apa yang Claude Code lewati pada pesan tersebut. Gunakan opsi ini ketika teks prompt Anda menyertakan konten yang pengguna akhir tidak ketik. Untuk kontrol per-turn, biarkan mati dan atur `"client_composed": True` pada pesan streaming individual sebagai gantinya. Sementara opsi aktif, SDK menimpa nilai `client_composed` apa pun yang Anda atur. Memerlukan Python Agent SDK 0.2.158 atau lebih baru dan Claude Code v2.1.248 atau lebih baru; CLI yang disertakan dengan versi SDK tersebut memenuhi persyaratan Claude Code |954| `verbatim_prompts` | `bool` | `False` | Berikan setiap prompt seperti yang ditulis. SDK mengirim setiap pesan pengguna dengan `client_composed` diatur ke `True`. Lihat [`client_composed`](/docs/id/agent-sdk/typescript#sdkusermessage) untuk apa yang Claude Code lewati pada pesan tersebut. Gunakan opsi ini ketika teks prompt Anda menyertakan konten yang pengguna akhir tidak ketik. Untuk kontrol per giliran, biarkan mati dan atur `"client_composed": True` pada pesan streaming individual sebagai gantinya. Sementara opsi aktif, SDK menimpa nilai `client_composed` apa pun yang Anda atur. Memerlukan Python Agent SDK 0.2.158 atau lebih baru dan Claude Code v2.1.248 atau lebih baru; CLI yang disertakan dengan versi SDK tersebut memenuhi persyaratan Claude Code |

955| `fork_session` | `bool` | `False` | Ketika melanjutkan dengan `resume`, fork ke ID sesi baru alih-alih melanjutkan sesi asli |955| `fork_session` | `bool` | `False` | Ketika melanjutkan dengan `resume`, fork ke ID sesi baru alih-alih melanjutkan sesi asli |

956| `resume_session_at` | `str \| None` | `None` | Ketika melanjutkan, muat percakapan hanya hingga dan termasuk pesan dengan UUID ini. Gunakan dengan `resume`, dan biasanya `fork_session`, untuk cabang dari titik sebelumnya. Memerlukan Python Agent SDK 0.2.137 atau lebih baru |956| `resume_session_at` | `str \| None` | `None` | Ketika melanjutkan, muat percakapan hanya hingga dan termasuk pesan dengan UUID ini. Gunakan dengan `resume`, dan biasanya `fork_session`, untuk bercabang dari titik sebelumnya. Memerlukan Python Agent SDK 0.2.137 atau lebih baru |

957| `resume_drops_turn` | `str \| None` | `None` | UUID dari prompt pengguna yang putaran pemotongan `resume_session_at` buang. Ketika diatur, CLI menolak resume jika rentang yang dibuang menyimpan entri yang tidak dapat diatribusikan ke putaran itu. Memerlukan Python Agent SDK 0.2.137 atau lebih baru dan Claude Code v2.1.223 atau lebih baru; CLI yang disertakan dengan versi SDK tersebut memenuhi persyaratan Claude Code |957| `resume_drops_turn` | `str \| None` | `None` | UUID dari prompt pengguna yang gilirannya dibuang oleh pemotongan `resume_session_at`. Ketika diatur, CLI menolak resume jika rentang yang dibuang menyimpan entri yang tidak dapat diatribusikan ke giliran itu. Memerlukan Python Agent SDK 0.2.137 atau lebih baru dan Claude Code v2.1.223 atau lebih baru; CLI yang disertakan dengan versi SDK tersebut memenuhi persyaratan Claude Code |

958| `agents` | `dict[str, AgentDefinition] \| None` | `None` | Subagent yang didefinisikan secara programatis |958| `agents` | `dict[str, AgentDefinition] \| None` | `None` | Subagent yang didefinisikan secara programatis |

959| `plugins` | `list[SdkPluginConfig]` | `[]` | Muat plugin kustom dari jalur lokal. Lihat [Plugins](/docs/id/agent-sdk/plugins) untuk detail |959| `plugins` | `list[SdkPluginConfig]` | `[]` | Muat plugin kustom dari jalur lokal. Lihat [Plugins](/docs/id/agent-sdk/plugins) untuk detail |

960| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | Konfigurasi perilaku sandbox secara programatis. Lihat [Sandbox settings](#sandboxsettings) untuk detail |960| `sandbox` | [`SandboxSettings`](#sandboxsettings) ` \| None` | `None` | Konfigurasi perilaku sandbox secara programatis. Lihat [Sandbox settings](#sandboxsettings) untuk detail |

961| `setting_sources` | `list[SettingSource] \| None` | `None` (CLI defaults: all sources) | Kontrol pengaturan filesystem mana yang akan dimuat. Teruskan `[]` untuk menonaktifkan pengaturan pengguna, proyek, dan lokal. Dengan `skills` diatur dan field ini tidak diatur, hanya sumber pengguna dan proyek yang dimuat. Atur `setting_sources` secara eksplisit untuk menyimpan pengaturan lokal. Pengaturan kebijakan terkelola endpoint dimuat terlepas dari itu; pengaturan yang dikelola server diambil ketika sesi mengautentikasi dengan kredensial organisasi pada [konfigurasi yang memenuhi syarat](/docs/id/server-managed-settings#platform-availability). Untuk input yang dibaca terlepas dari opsi ini, lihat [What settingSources does not control](/docs/id/agent-sdk/claude-code-features#what-settingsources-does-not-control) |961| `setting_sources` | `list[SettingSource] \| None` | `None` (CLI defaults: all sources) | Kontrol pengaturan filesystem mana yang akan dimuat. Teruskan `[]` untuk menonaktifkan pengaturan pengguna, proyek, dan lokal. Dengan `skills` diatur dan field ini tidak diatur, hanya sumber pengguna dan proyek yang dimuat. Atur `setting_sources` secara eksplisit untuk menyimpan pengaturan lokal. Pengaturan kebijakan terkelola endpoint dimuat terlepas dari itu; pengaturan yang dikelola server diambil ketika sesi mengautentikasi dengan kredensial organisasi pada [konfigurasi yang memenuhi syarat](/docs/id/server-managed-settings#platform-availability). Untuk input yang dibaca terlepas dari opsi ini, lihat [What settingSources does not control](/docs/id/agent-sdk/claude-code-features#what-settingsources-does-not-control) |

962| `skills` | `list[str] \| Literal["all"] \| None` | `None` | Skills yang tersedia untuk sesi. Teruskan `"all"` untuk mengaktifkan setiap skill yang ditemukan, atau daftar nama skill. Teruskan nama yang tepat saja. SDK menolak nama yang salah bentuk dan bentuk wildcard dengan `ValueError` sebelum memulai proses Claude Code; pemeriksaan ini memerlukan Python Agent SDK 0.2.129 atau lebih baru. Ketika diatur, SDK secara otomatis menambahkan tool Skill ke `allowed_tools`. Jika Anda juga meneruskan `tools`, sertakan `"Skill"` dalam daftar itu. Lihat [Skills](/docs/id/agent-sdk/skills) |962| `skills` | `list[str] \| Literal["all"] \| None` | `None` | Skills yang tersedia untuk sesi. Teruskan `"all"` untuk mengaktifkan setiap skill yang ditemukan, atau daftar nama skill. Teruskan nama yang tepat saja. SDK menolak nama yang salah bentuk dan bentuk wildcard dengan `ValueError` sebelum memulai proses Claude Code; pemeriksaan ini memerlukan Python Agent SDK 0.2.129 atau lebih baru. Ketika diatur, SDK secara otomatis menambahkan tool Skill ke `allowed_tools`. Jika Anda juga meneruskan `tools`, sertakan `"Skill"` dalam daftar itu. Lihat [Skills](/docs/id/agent-sdk/skills) |

963| `max_thinking_tokens` | `int \| None` | `None` | *Deprecated* - Token maksimal untuk blok thinking. Gunakan `thinking` sebagai gantinya |963| `max_thinking_tokens` | `int \| None` | `None` | *Deprecated* - Token maksimal untuk blok thinking. Gunakan `thinking` sebagai gantinya |

964| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | Mengontrol perilaku extended thinking. Mengambil prioritas atas `max_thinking_tokens` |964| `thinking` | [`ThinkingConfig`](#thinkingconfig) ` \| None` | `None` | Mengontrol perilaku extended thinking. Diutamakan daripada `max_thinking_tokens` |

965| `effort` | [`EffortLevel`](#effortlevel) ` \| None` | `None` | Tingkat usaha untuk kedalaman thinking. Lihat [adjust the effort level](/docs/id/model-config#adjust-effort-level) |965| `effort` | [`EffortLevel`](#effortlevel) ` \| None` | `None` | Tingkat effort untuk kedalaman thinking. Lihat [adjust the effort level](/docs/id/model-config#adjust-effort-level) |

966| `session_store` | [`SessionStore`](/docs/id/agent-sdk/session-storage#the-sessionstore-interface) ` \| None` | `None` | Cerminkan transkrip sesi ke backend eksternal sehingga host apa pun dapat melanjutkannya. Lihat [Persist sessions to external storage](/docs/id/agent-sdk/session-storage) |966| `session_store` | [`SessionStore`](/docs/id/agent-sdk/session-storage#the-sessionstore-interface) ` \| None` | `None` | Cerminkan transkrip sesi ke backend eksternal sehingga host lain dapat melanjutkannya. Lihat [Persist sessions to external storage](/docs/id/agent-sdk/session-storage) |

967| `session_store_flush` | `Literal["batched", "eager"]` | `"batched"` | Kapan membuang entri transkrip yang dicerminkan ke `session_store`. `"batched"` membuang sekali per putaran atau ketika buffer penuh; `"eager"` memicu pembilasan latar belakang setelah setiap frame. Diabaikan ketika `session_store` adalah `None` |967| `session_store_flush` | `Literal["batched", "eager"]` | `"batched"` | Kapan membuang entri transkrip yang dicerminkan ke `session_store`. `"batched"` membuang sekali per giliran atau ketika buffer penuh; `"eager"` memicu pembilasan latar belakang setelah setiap frame. Diabaikan ketika `session_store` adalah `None` |

968| `load_timeout_ms` | `int` | `60000` | Per-call timeout untuk `session_store.load()` dan `list_subkeys()` selama materialisasi resume, dalam milidetik |968| `load_timeout_ms` | `int` | `60000` | Per-call timeout untuk `session_store.load()` dan `list_subkeys()` selama materialisasi resume, dalam milidetik |

969| `task_budget` | `TaskBudget \| None` | `None` | Budget token sisi API. Dikirim sebagai `output_config.task_budget` dengan header beta `task-budgets-2026-03-13`. Teruskan `{"total": <int>}`. |969| `task_budget` | `TaskBudget \| None` | `None` | Budget token sisi API. Dikirim sebagai `output_config.task_budget` dengan header beta `task-budgets-2026-03-13`. Teruskan `{"total": <int>}`. |

970 970 


972 Menangani respons API yang lambat atau terhenti972 Menangani respons API yang lambat atau terhenti

973</h4>973</h4>

974 974 

975Subprocess CLI membaca beberapa variabel lingkungan yang mengontrol timeout API dan deteksi stall. Teruskan melalui `ClaudeAgentOptions.env`:975Subprocess CLI membaca beberapa environment variable yang mengontrol timeout API dan deteksi stall. Teruskan melalui `ClaudeAgentOptions.env`:

976 976 

977```python theme={null}977```python theme={null}

978from claude_agent_sdk import ClaudeAgentOptions978from claude_agent_sdk import ClaudeAgentOptions


987```987```

988 988 

989* `API_TIMEOUT_MS`: timeout per-permintaan pada klien Anthropic, dalam milidetik. Default `600000`. Berlaku untuk loop utama dan semua subagent.989* `API_TIMEOUT_MS`: timeout per-permintaan pada klien Anthropic, dalam milidetik. Default `600000`. Berlaku untuk loop utama dan semua subagent.

990* `CLAUDE_CODE_MAX_RETRIES`: maksimal retry API. Default `10`, dibatasi pada `15`. Setiap retry mendapat jendela `API_TIMEOUT_MS` sendiri, jadi waktu dinding terburuk kira-kira `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` ditambah backoff. Untuk run tanpa pengawasan yang perlu menunggu melalui pemadaman yang lebih lama, atur [`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/id/errors#tune-retry-behavior): itu retry error kapasitas transien tanpa batas dan, pada Claude Code v2.1.199 atau lebih baru, menaikkan default untuk error transien lainnya menjadi `300` dan menghapus batas pada variabel ini.990* `CLAUDE_CODE_MAX_RETRIES`: maksimal retry API. Default `10`, dibatasi pada `15`. Setiap retry mendapat jendela `API_TIMEOUT_MS` sendiri, jadi waktu dinding terburuk kira-kira `API_TIMEOUT_MS × (CLAUDE_CODE_MAX_RETRIES + 1)` ditambah backoff. Untuk run tanpa pengawasan yang perlu menunggu melalui pemadaman yang lebih lama, atur [`CLAUDE_CODE_RETRY_WATCHDOG=1`](/docs/id/errors#tune-retry-behavior): itu mencoba ulang error kapasitas transien tanpa batas dan, pada Claude Code v2.1.199 atau lebih baru, menaikkan default untuk error transien lainnya menjadi `300` dan menghapus batas pada variabel ini.

991* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: watchdog stall untuk subagent. Sementara watchdog stream aktif, default adalah `CLAUDE_STREAM_IDLE_TIMEOUT_MS` ditambah 5 menit, yang menjadi `600000` kecuali Anda menaikkan variabel itu. Dengan watchdog stream mati, default adalah `600000`. Sebelum v2.1.257, default selalu `600000`.991* `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS`: watchdog stall untuk subagent. Sementara watchdog stream aktif, default adalah `CLAUDE_STREAM_IDLE_TIMEOUT_MS` ditambah 5 menit, yang menjadi `600000` kecuali Anda menaikkan variabel itu. Dengan watchdog stream mati, default adalah `600000`. Sebelum v2.1.257, default selalu `600000`.

992 992 

993 Timer direset pada setiap event stream. Pada stall, Claude Code membatalkan subagent dan melaporkan stall ke parent. Untuk subagent latar belakang, itu juga menandai tugas gagal dan melampirkan hasil parsial apa pun.993 Timer direset pada setiap event stream. Pada stall, Claude Code membatalkan subagent dan melaporkan stall ke parent. Untuk subagent latar belakang, itu juga menandai tugas gagal dan melampirkan hasil parsial apa pun.


1034| `type` | Ya | Harus `"preset"` untuk menggunakan preset system prompt |1034| `type` | Ya | Harus `"preset"` untuk menggunakan preset system prompt |

1035| `preset` | Ya | Harus `"claude_code"` untuk menggunakan system prompt Claude Code |1035| `preset` | Ya | Harus `"claude_code"` untuk menggunakan system prompt Claude Code |

1036| `append` | Tidak | Instruksi tambahan untuk ditambahkan ke preset system prompt |1036| `append` | Tidak | Instruksi tambahan untuk ditambahkan ke preset system prompt |

1037| `exclude_dynamic_sections` | Tidak | Pindahkan konteks per-pengguna, seperti lokasi memori otomatis, dari system prompt ke pesan pengguna pertama. Meningkatkan reuse prompt-cache di seluruh pengguna dan mesin. Lihat [Modify system prompts](/docs/id/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |1037| `exclude_dynamic_sections` | Tidak | Pindahkan konteks per-pengguna, seperti lokasi auto memory, dari system prompt ke pesan pengguna pertama. Meningkatkan reuse prompt-cache di seluruh pengguna dan mesin. Lihat [Modify system prompts](/docs/id/agent-sdk/modifying-system-prompts#improve-prompt-caching-across-users-and-machines) |

1038| `snapshot` | Tidak | Atur ke `False` untuk membangun kembali system prompt pada setiap permintaan alih-alih [menggunakan kembali prompt yang sesi catat pada permintaan pertamanya](/docs/id/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session). Memerlukan `claude-agent-sdk` v0.2.153 atau lebih baru |1038| `snapshot` | Tidak | Atur ke `False` untuk membangun kembali system prompt pada setiap permintaan alih-alih [menggunakan kembali prompt yang sesi catat pada permintaan pertamanya](/docs/id/agent-sdk/modifying-system-prompts#change-the-prompt-of-an-existing-session). Memerlukan `claude-agent-sdk` v0.2.153 atau lebih baru |

1039 1039 

1040<h3 id="systempromptcustom">1040<h3 id="systempromptcustom">

1041 `SystemPromptCustom`1041 `SystemPromptCustom`

1042</h3>1042</h3>

1043 1043 

1044Prompt system kustom dalam bentuk objek, setara dengan melewatkan string sebagai `system_prompt`, yang juga dapat mengatur `snapshot`. Memerlukan `claude-agent-sdk` v0.2.153 atau lebih baru.1044System prompt kustom dalam bentuk objek, setara dengan melewatkan string sebagai `system_prompt`, yang juga dapat mengatur `snapshot`. Memerlukan `claude-agent-sdk` v0.2.153 atau lebih baru.

1045 1045 

1046```python theme={null}1046```python theme={null}

1047class SystemPromptCustom(TypedDict):1047class SystemPromptCustom(TypedDict):


1177Untuk memuat instruksi proyek CLAUDE.md, sertakan `"project"` dalam `setting_sources`. Lihat [Modify system prompts](/docs/id/agent-sdk/modifying-system-prompts#claude-md-files-for-project-level-instructions) untuk cara loading CLAUDE.md berinteraksi dengan opsi system prompt.1177Untuk memuat instruksi proyek CLAUDE.md, sertakan `"project"` dalam `setting_sources`. Lihat [Modify system prompts](/docs/id/agent-sdk/modifying-system-prompts#claude-md-files-for-project-level-instructions) untuk cara loading CLAUDE.md berinteraksi dengan opsi system prompt.

1178 1178 

1179<h4 id="settings-precedence">1179<h4 id="settings-precedence">

1180 Preseden pengaturan1180 Prioritas pengaturan

1181</h4>1181</h4>

1182 1182 

1183Ketika beberapa sumber dimuat, pengaturan digabungkan dengan preseden ini (tertinggi ke terendah):1183Ketika beberapa sumber dimuat, pengaturan digabungkan dengan urutan prioritas ini (tertinggi ke terendah):

1184 1184 

11851. Pengaturan lokal (`.claude/settings.local.json`)11851. Pengaturan lokal (`.claude/settings.local.json`)

11862. Pengaturan proyek (`.claude/settings.json`)11862. Pengaturan proyek (`.claude/settings.json`)

11873. Pengaturan pengguna (`~/.claude/settings.json`)11873. Pengaturan pengguna (`~/.claude/settings.json`)

1188 1188 

1189Opsi programatis seperti `agents`, `allowed_tools`, dan `settings` mengganti pengaturan filesystem pengguna, proyek, dan lokal. Pengaturan kebijakan terkelola mengambil prioritas atas opsi programatis.1189Opsi programatis seperti `agents`, `allowed_tools`, dan `settings` menimpa pengaturan filesystem pengguna, proyek, dan lokal. Pengaturan kebijakan terkelola diutamakan daripada opsi programatis.

1190 1190 

1191<h3 id="agentdefinition">1191<h3 id="agentdefinition">

1192 `AgentDefinition`1192 `AgentDefinition`


1218| `prompt` | Ya | System prompt agent |1218| `prompt` | Ya | System prompt agent |

1219| `tools` | Tidak | Array nama tool yang diizinkan. Jika dihilangkan, mewarisi setiap [tool yang tersedia untuk subagent](/docs/id/sub-agents#available-tools) |1219| `tools` | Tidak | Array nama tool yang diizinkan. Jika dihilangkan, mewarisi setiap [tool yang tersedia untuk subagent](/docs/id/sub-agents#available-tools) |

1220| `disallowedTools` | Tidak | Array nama tool untuk dihapus dari set tool agent. Pola tingkat server MCP juga diterima: `mcp__server` atau `mcp__server__*` menghapus setiap tool dari server itu, dan `mcp__*` menghapus setiap tool MCP dari server apa pun |1220| `disallowedTools` | Tidak | Array nama tool untuk dihapus dari set tool agent. Pola tingkat server MCP juga diterima: `mcp__server` atau `mcp__server__*` menghapus setiap tool dari server itu, dan `mcp__*` menghapus setiap tool MCP dari server apa pun |

1221| `model` | Tidak | Penggantian model untuk agent ini. Menerima alias seperti `"sonnet"`, `"opus"`, `"haiku"`, atau `"inherit"`, atau ID model lengkap. Ketika Anda menghilangkannya, Claude Code memilih model dalam [urutan model subagent](/docs/id/sub-agents#choose-a-model) |1221| `model` | Tidak | Override model untuk agent ini. Menerima alias seperti `"sonnet"`, `"opus"`, `"haiku"`, atau `"inherit"`, atau ID model lengkap. Ketika Anda menghilangkannya, Claude Code memilih model dalam [urutan model subagent](/docs/id/sub-agents#choose-a-model) |

1222| `skills` | Tidak | Daftar nama skill untuk preload ke dalam konteks agent saat startup. Skill yang tidak terdaftar tetap dapat dipanggil melalui tool Skill |1222| `skills` | Tidak | Daftar nama skill untuk preload ke dalam konteks agent saat startup. Skill yang tidak terdaftar tetap dapat dipanggil melalui tool Skill |

1223| `memory` | Tidak | Sumber memori untuk agent ini: `"user"`, `"project"`, atau `"local"` |1223| `memory` | Tidak | Sumber memori untuk agent ini: `"user"`, `"project"`, atau `"local"` |

1224| `mcpServers` | Tidak | Server MCP yang tersedia untuk agent ini. Setiap entri adalah nama server atau dict `{name: config}` inline |1224| `mcpServers` | Tidak | Server MCP yang tersedia untuk agent ini. Setiap entri adalah nama server atau dict `{name: config}` inline |

1225| `initialPrompt` | Tidak | Auto-submitted sebagai putaran pengguna pertama ketika agent ini berjalan sebagai agent thread utama |1225| `initialPrompt` | Tidak | Auto-submitted sebagai giliran pengguna pertama ketika agent ini berjalan sebagai agent thread utama |

1226| `maxTurns` | Tidak | Jumlah maksimal putaran agentic sebelum agent berhenti |1226| `maxTurns` | Tidak | Jumlah maksimal giliran agentic sebelum agent berhenti |

1227| `background` | Tidak | Jalankan agent ini sebagai tugas latar belakang non-blocking ketika dipanggil |1227| `background` | Tidak | Jalankan agent ini sebagai tugas latar belakang non-blocking ketika dipanggil |

1228| `effort` | Tidak | Tingkat usaha reasoning untuk agent ini. Menerima tingkat bernama atau integer. Lihat [`EffortLevel`](#effortlevel) |1228| `effort` | Tidak | Tingkat effort reasoning untuk agent ini. Menerima tingkat bernama atau integer. Lihat [`EffortLevel`](#effortlevel) |

1229| `permissionMode` | Tidak | Mode izin untuk eksekusi tool dalam agent ini. [Aturan inheritance subagent](/docs/id/agent-sdk/permissions#available-modes) memutuskan kapan itu berlaku. Lihat [`PermissionMode`](#permissionmode) |1229| `permissionMode` | Tidak | Mode izin untuk eksekusi tool dalam agent ini. [Aturan inheritance subagent](/docs/id/agent-sdk/permissions#available-modes) memutuskan kapan itu berlaku. Lihat [`PermissionMode`](#permissionmode) |

1230 1230 

1231<Note>1231<Note>


1253 `EffortLevel`1253 `EffortLevel`

1254</h3>1254</h3>

1255 1255 

1256Tingkat usaha untuk membimbing kedalaman thinking.1256Tingkat effort untuk membimbing kedalaman thinking.

1257 1257 

1258```python theme={null}1258```python theme={null}

1259EffortLevel = Literal[1259EffortLevel = Literal[


1465| `enabled` | `type`, `budget_tokens`, `display` | Aktifkan thinking dengan budget token tertentu |1465| `enabled` | `type`, `budget_tokens`, `display` | Aktifkan thinking dengan budget token tertentu |

1466| `disabled` | `type` | Nonaktifkan thinking |1466| `disabled` | `type` | Nonaktifkan thinking |

1467 1467 

1468Field opsional `display` mengontrol apakah teks thinking dikembalikan `"summarized"` atau `"omitted"`. Pada Claude Opus 4.7 dan lebih baru, default API adalah `"omitted"`, jadi atur `"summarized"` untuk menerima konten thinking dalam output [`ThinkingBlock`](#thinkingblock). Claude Code tidak mengirim `display` ke Amazon Bedrock atau Google Cloud's Agent Platform, jadi pada penyedia tersebut Opus 4.7 dan lebih baru mengembalikan output `ThinkingBlock` kosong bahkan ketika Anda mengatur `display` ke `"summarized"`.1468Field opsional `display` mengontrol apakah teks thinking dikembalikan `"summarized"` atau `"omitted"`. Pada Claude Opus 4.7 dan lebih baru, default API adalah `"omitted"`, jadi atur `"summarized"` untuk menerima konten thinking dalam output [`ThinkingBlock`](#thinkingblock). Claude Code tidak meneruskan nilai `display` Anda ke beberapa penyedia, seperti Amazon Bedrock dan Google Cloud's Agent Platform. Pada penyedia tersebut, Opus 4.7 dan lebih baru mengembalikan output `ThinkingBlock` kosong bahkan ketika Anda mengatur `display` ke `"summarized"`.

1469 1469 

1470Karena ini adalah kelas `TypedDict`, mereka adalah dict biasa saat runtime. Baik buatlah sebagai dict literal atau panggil kelas seperti konstruktor; keduanya menghasilkan `dict`. Akses field dengan `config["budget_tokens"]`, bukan `config.budget_tokens`:1470Karena ini adalah kelas `TypedDict`, mereka adalah dict biasa saat runtime. Baik buatlah sebagai dict literal atau panggil kelas seperti konstruktor; keduanya menghasilkan `dict`. Akses field dengan `config["budget_tokens"]`, bukan `config.budget_tokens`:

1471 1471 


1626| `serverInfo` | `dict` (opsional) | Nama dan versi server (`{"name": str, "version": str}`) |1626| `serverInfo` | `dict` (opsional) | Nama dan versi server (`{"name": str, "version": str}`) |

1627| `error` | `str` (opsional) | Pesan error jika server gagal terhubung |1627| `error` | `str` (opsional) | Pesan error jika server gagal terhubung |

1628| `config` | [`McpServerStatusConfig`](#mcpserverstatusconfig) (opsional) | Konfigurasi server. Bentuk yang sama seperti [`McpServerConfig`](#mcpserverconfig) (stdio, SSE, HTTP, atau SDK), ditambah varian `claudeai-proxy` untuk server yang terhubung melalui claude.ai |1628| `config` | [`McpServerStatusConfig`](#mcpserverstatusconfig) (opsional) | Konfigurasi server. Bentuk yang sama seperti [`McpServerConfig`](#mcpserverconfig) (stdio, SSE, HTTP, atau SDK), ditambah varian `claudeai-proxy` untuk server yang terhubung melalui claude.ai |

1629| `scope` | `str` (opsional) | Scope konfigurasi |1629| `scope` | `str` (opsional) | Cakupan konfigurasi |

1630| `tools` | `list` (opsional) | Tools yang disediakan oleh server ini, masing-masing dengan field `name`, `description`, dan `annotations` |1630| `tools` | `list` (opsional) | Tools yang disediakan oleh server ini, masing-masing dengan field `name`, `description`, dan `annotations` |

1631 1631 

1632<h3 id="contextusageresponse">1632<h3 id="contextusageresponse">


1660 apiUsage: NotRequired[dict[str, Any] | None]1660 apiUsage: NotRequired[dict[str, Any] | None]

1661```1661```

1662 1662 

1663Setiap entri `ContextUsageCategory` membawa `name`, `tokens`, `color`, dan flag `isDeferred` opsional. `totalTokens` adalah penggunaan konteks sesi saat ini, dan `maxTokens` adalah jendela yang penggunaan diukur terhadapnya. Jendela itu adalah jendela konteks model, atau jendela auto-compaction yang lebih rendah ketika satu berlaku, dan `rawMaxTokens` membawa nilai yang sama dengan `maxTokens`. `apiUsage` menyimpan penggunaan dari respons API terbaru, bukan total berjalan untuk sesi. Claude Code meninggalkan key `deferredBuiltinTools`, `systemTools`, dan `systemPromptSections` opsional yang tidak diatur, jadi harapkan mereka tidak ada bahkan meskipun tipe mendeklarasikannya.1663Setiap entri `ContextUsageCategory` membawa `name`, `tokens`, `color`, dan flag `isDeferred` opsional. `totalTokens` adalah penggunaan konteks sesi saat ini, dan `maxTokens` adalah window yang penggunaan diukur terhadapnya. Window itu adalah context window model, atau window auto-compaction yang lebih rendah ketika satu berlaku, dan `rawMaxTokens` membawa nilai yang sama dengan `maxTokens`. `apiUsage` menyimpan penggunaan dari respons API terbaru, bukan total berjalan untuk sesi. Claude Code meninggalkan key `deferredBuiltinTools`, `systemTools`, dan `systemPromptSections` opsional yang tidak diatur, jadi harapkan mereka tidak ada bahkan meskipun tipe mendeklarasikannya.

1664 1664 

1665<h3 id="sdkpluginconfig">1665<h3 id="sdkpluginconfig">

1666 `SdkPluginConfig`1666 `SdkPluginConfig`


1734| `uuid` | `str \| None` | Pengenal pesan unik |1734| `uuid` | `str \| None` | Pengenal pesan unik |

1735| `parent_tool_use_id` | `str \| None` | ID penggunaan tool jika pesan ini adalah respons hasil tool |1735| `parent_tool_use_id` | `str \| None` | ID penggunaan tool jika pesan ini adalah respons hasil tool |

1736| `tool_use_result` | `dict[str, Any] \| None` | Data hasil tool jika berlaku |1736| `tool_use_result` | `dict[str, Any] \| None` | Data hasil tool jika berlaku |

1737| `origin` | `MessageOrigin \| None` | Asal pesan ini, diisi pada putaran yang disuntikkan seperti notifikasi tugas dan pesan peer. `None` ketika CLI tidak mengatribusikannya. Memerlukan Python Agent SDK 0.2.137 atau lebih baru |1737| `origin` | `MessageOrigin \| None` | Asal pesan ini, diisi pada giliran yang disuntikkan seperti notifikasi tugas dan pesan peer. `None` ketika CLI tidak mengatribusikannya. Memerlukan Python Agent SDK 0.2.137 atau lebih baru |

1738 1738 

1739SDK melewatkan `tool_use_result` melalui dari CLI tanpa modifikasi. Untuk tool pada server MCP eksternal yang hasilnya berisi blok `resource_link`, dict memiliki kunci `resourceLinks` yang menyimpan daftar dict dengan kunci dari tipe TypeScript [`SDKMcpResourceLink`](/docs/id/agent-sdk/typescript#sdkmcpresourcelink). Claude menerima setiap link sebagai baris teks dalam hasil tool. Untuk merender file yang dikembalikan server, baca `resourceLinks` alih-alih mengurai teks itu. Kunci `resourceLinks` memerlukan Python Agent SDK 0.2.150 atau lebih baru dan Claude Code v2.1.257 atau lebih baru; CLI yang dibundel dengan versi SDK itu memenuhi persyaratan Claude Code.1739SDK melewatkan `tool_use_result` melalui dari CLI tanpa modifikasi. Untuk tool pada server MCP eksternal yang hasilnya berisi blok `resource_link`, dict memiliki kunci `resourceLinks` yang menyimpan daftar dict dengan kunci dari tipe TypeScript [`SDKMcpResourceLink`](/docs/id/agent-sdk/typescript#sdkmcpresourcelink). Claude menerima setiap link sebagai baris teks dalam hasil tool. Untuk merender file yang dikembalikan server, baca `resourceLinks` alih-alih mengurai teks itu. Kunci `resourceLinks` memerlukan Python Agent SDK 0.2.150 atau lebih baru dan Claude Code v2.1.257 atau lebih baru; CLI yang dibundel dengan versi SDK itu memenuhi persyaratan Claude Code.

1740 1740 


1767| `parent_tool_use_id` | `str \| None` | ID penggunaan tool jika ini adalah respons bersarang |1767| `parent_tool_use_id` | `str \| None` | ID penggunaan tool jika ini adalah respons bersarang |

1768| `error` | [`AssistantMessageError`](#assistantmessageerror) ` \| None` | Tipe error jika respons mengalami error |1768| `error` | [`AssistantMessageError`](#assistantmessageerror) ` \| None` | Tipe error jika respons mengalami error |

1769| `usage` | `dict[str, Any] \| None` | Penggunaan token per-pesan (kunci yang sama seperti [`ResultMessage.usage`](#resultmessage)) |1769| `usage` | `dict[str, Any] \| None` | Penggunaan token per-pesan (kunci yang sama seperti [`ResultMessage.usage`](#resultmessage)) |

1770| `message_id` | `str \| None` | ID pesan API. Beberapa pesan dari satu putaran berbagi ID yang sama |1770| `message_id` | `str \| None` | ID pesan API. Beberapa pesan dari satu giliran berbagi ID yang sama |

1771| `stop_reason` | `str \| None` | Alasan berhenti dari API (misalnya `end_turn`, `tool_use`) |1771| `stop_reason` | `str \| None` | Alasan berhenti dari API (misalnya `end_turn`, `tool_use`) |

1772| `session_id` | `str \| None` | ID sesi pesan ini milik |1772| `session_id` | `str \| None` | ID sesi pesan ini milik |

1773| `uuid` | `str \| None` | Pengenal pesan unik dalam transkrip sesi |1773| `uuid` | `str \| None` | Pengenal pesan unik dalam transkrip sesi |


1840 1840 

1841Beberapa field membawa detail diagnostik tentang bagaimana percakapan berakhir:1841Beberapa field membawa detail diagnostik tentang bagaimana percakapan berakhir:

1842 1842 

1843* `is_error`: `True` ketika percakapan berakhir dalam status error. Selalu `True` pada subtype `error_*`. Pada `subtype="success"` ini adalah `True` ketika permintaan model terakhir gagal, berarti loop agen selesai tetapi panggilan API terakhir mengembalikan error.1843* `is_error`: `True` ketika percakapan berakhir dalam status error. Selalu `True` pada subtype `error_*`. Pada `subtype="success"` ini adalah `True` ketika permintaan model terakhir gagal, berarti loop agent selesai tetapi panggilan API terakhir mengembalikan error.

1844* `api_error_status`: kode status HTTP dari error API yang mengakhiri. `None` ketika putaran berakhir tanpa satu. Diisi hanya pada `subtype="success"`.1844* `api_error_status`: kode status HTTP dari error API yang mengakhiri. `None` ketika giliran berakhir tanpa satu. Diisi hanya pada `subtype="success"`.

1845* `result`: teks pesan asisten terakhir pada `subtype="success"`, atau `None` pada subtype `error_*`. Ketika `subtype="success"` dan `is_error=True`, ini menyimpan string error API jika tersedia tetapi dapat kosong, jadi periksa `api_error_status` dan konten `AssistantMessage` sebelumnya untuk detail.1845* `result`: teks pesan asisten terakhir pada `subtype="success"`, atau `None` pada subtype `error_*`. Ketika `subtype="success"` dan `is_error=True`, ini menyimpan string error API jika tersedia tetapi dapat kosong, jadi periksa `api_error_status` dan konten `AssistantMessage` sebelumnya untuk detail.

1846* `errors`: string error tingkat loop seperti pesan max-turns. Diisi hanya pada subtype `error_*`.1846* `errors`: string error tingkat loop seperti pesan max-turns. Diisi hanya pada subtype `error_*`.

1847* `terminal_reason`: mengapa loop query berakhir, seperti `"completed"`, `"max_turns"`, `"api_error"`, `"aborted_streaming"`, atau `"aborted_tools"`. Nilai `"aborted_streaming"` atau `"aborted_tools"` berarti putaran dibatalkan sebelum selesai. Penyebab umum adalah [`interrupt()`](#claudesdkclient) dan callback izin mengembalikan [`PermissionResultDeny`](#permissionresultdeny) dengan `interrupt=True`. `None` pada versi CLI yang mendahului field, pada hasil dari perintah lokal seperti `/voice` atau `/usage`, yang melewati loop query, atau pada hasil error yang disintesis yang dipancarkan ketika sesi gagal secara fatal. Mencerminkan [`SDKResultMessage.terminal_reason`](/docs/id/agent-sdk/typescript#sdkresultmessage) SDK TypeScript, yang mencantumkan set lengkap nilai.1847* `terminal_reason`: mengapa loop query berakhir, seperti `"completed"`, `"max_turns"`, `"api_error"`, `"aborted_streaming"`, atau `"aborted_tools"`. Nilai `"aborted_streaming"` atau `"aborted_tools"` berarti giliran dibatalkan sebelum selesai. Penyebab umum adalah [`interrupt()`](#claudesdkclient) dan callback izin mengembalikan [`PermissionResultDeny`](#permissionresultdeny) dengan `interrupt=True`. `None` pada versi CLI yang mendahului field, pada hasil dari perintah lokal seperti `/voice` atau `/usage`, yang melewati loop query, atau pada hasil error yang disintesis yang dipancarkan ketika sesi gagal secara fatal. Mencerminkan [`SDKResultMessage.terminal_reason`](/docs/id/agent-sdk/typescript#sdkresultmessage) SDK TypeScript, yang mencantumkan set lengkap nilai.

1848* `origin`: asal pesan pengguna yang memicu putaran ini. Dalam [mode input streaming](/docs/id/agent-sdk/streaming-vs-single-mode), periksa ini untuk membedakan hasil prompt Anda sendiri, di mana `origin` adalah `None` atau `{"kind": "human"}`, dari hasil putaran yang disuntikkan seperti notifikasi tugas latar belakang. Memerlukan Python Agent SDK 0.2.137 atau lebih baru.1848* `origin`: asal pesan pengguna yang memicu giliran ini. Dalam [mode input streaming](/docs/id/agent-sdk/streaming-vs-single-mode), periksa ini untuk membedakan hasil prompt Anda sendiri, di mana `origin` adalah `None` atau `{"kind": "human"}`, dari hasil giliran yang disuntikkan seperti notifikasi tugas latar belakang. Memerlukan Python Agent SDK 0.2.137 atau lebih baru.

1849 1849 

1850Dict `usage` mencakup loop agen utama saja dan mengecualikan subagent dan panggilan model bersarang atau tambahan lainnya. Dalam [mode input streaming](/docs/id/agent-sdk/streaming-vs-single-mode), nilainya per-putaran. Lebih suka `model_usage` untuk akuntansi token dan biaya. Dict `usage` berisi kunci berikut ketika ada:1850Dict `usage` mencakup loop agent utama saja dan mengecualikan subagent dan panggilan model bersarang atau tambahan lainnya. Dalam [mode input streaming](/docs/id/agent-sdk/streaming-vs-single-mode), nilainya per-giliran. Lebih suka `model_usage` untuk akuntansi token dan biaya. Dict `usage` berisi kunci berikut ketika ada:

1851 1851 

1852| Kunci | Tipe | Deskripsi |1852| Kunci | Tipe | Deskripsi |

1853| - | - | - |1853| - | - | - |

1854| `input_tokens` | `int` | Token input yang dikonsumsi oleh loop agen tingkat atas. [Token subagent tidak disertakan](/docs/id/agent-sdk/cost-tracking#get-the-total-cost-of-a-query); gunakan `model_usage` untuk akuntansi seluruh pohon. |1854| `input_tokens` | `int` | Token input yang dikonsumsi oleh loop agent tingkat atas. [Token subagent tidak disertakan](/docs/id/agent-sdk/cost-tracking#get-the-total-cost-of-a-query); gunakan `model_usage` untuk akuntansi seluruh pohon. |

1855| `output_tokens` | `int` | Token output yang dihasilkan oleh loop agen tingkat atas. Token subagent tidak disertakan. |1855| `output_tokens` | `int` | Token output yang dihasilkan oleh loop agent tingkat atas. Token subagent tidak disertakan. |

1856| `cache_creation_input_tokens` | `int` | Token yang digunakan untuk membuat entri cache baru. |1856| `cache_creation_input_tokens` | `int` | Token yang digunakan untuk membuat entri cache baru. |

1857| `cache_read_input_tokens` | `int` | Token yang dibaca dari entri cache yang ada. |1857| `cache_read_input_tokens` | `int` | Token yang dibaca dari entri cache yang ada. |

1858 1858 

1859Dict `model_usage` memetakan nama model ke penggunaan per-model. Ini mencakup setiap panggilan model yang dibuat melalui pipeline query: loop utama, subagent, dan panggilan internal seperti compaction dan Workflow agents. Panggilan helper di luar pipeline itu, seperti classifier izin dan permintaan penghitungan token, dikecualikan dari `model_usage`. Perlakukan `model_usage` sebagai perkiraan, bukan pernyataan penagihan.1859Dict `model_usage` memetakan nama model ke penggunaan per-model. Ini mencakup setiap panggilan model yang dibuat melalui pipeline query: loop utama, subagent, dan panggilan internal seperti compaction dan Workflow agents. Panggilan helper di luar pipeline itu, seperti pengklasifikasi izin dan permintaan penghitungan token, dikecualikan dari `model_usage`. Perlakukan `model_usage` sebagai perkiraan, bukan pernyataan penagihan.

1860 1860 

1861Dalam [mode input streaming](/docs/id/agent-sdk/streaming-vs-single-mode), `model_usage` dan `total_cost_usd` adalah kumulatif di seluruh putaran, jadi baca hasil terbaru daripada menjumlahkan di seluruh hasil. Panggilan yang melanjutkan sesi juga menghitung [total yang dipulihkan dari panggilan sebelumnya sesi](/docs/id/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). Lihat [Track costs in streaming input mode](/docs/id/agent-sdk/cost-tracking#track-costs-in-streaming-input-mode) untuk reset dan [Recover totals after a session crash](/docs/id/agent-sdk/cost-tracking#recover-totals-after-a-session-crash) untuk hasil yang dinolkan.1861Dalam [mode input streaming](/docs/id/agent-sdk/streaming-vs-single-mode), `model_usage` dan `total_cost_usd` adalah kumulatif di seluruh giliran, jadi baca hasil terbaru daripada menjumlahkan di seluruh hasil. Panggilan yang melanjutkan sesi juga menghitung [total yang dipulihkan dari panggilan sebelumnya sesi](/docs/id/agent-sdk/cost-tracking#accumulate-costs-across-multiple-calls). Lihat [Track costs in streaming input mode](/docs/id/agent-sdk/cost-tracking#track-costs-in-streaming-input-mode) untuk reset dan [Recover totals after a session crash](/docs/id/agent-sdk/cost-tracking#recover-totals-after-a-session-crash) untuk hasil yang dinolkan.

1862 1862 

1863Setiap nilai dalam `model_usage` adalah TypedDict `ModelUsage`, diimpor melalui `from claude_agent_sdk.types import ModelUsage`. Kuncinya menggunakan camelCase karena SDK melewatkan nilai tanpa modifikasi dari proses CLI yang mendasar, cocok dengan tipe TypeScript [`ModelUsage`](/docs/id/agent-sdk/typescript#modelusage):1863Setiap nilai dalam `model_usage` adalah TypedDict `ModelUsage`, diimpor melalui `from claude_agent_sdk.types import ModelUsage`. Kuncinya menggunakan camelCase karena SDK melewatkan nilai tanpa modifikasi dari proses CLI yang mendasar, cocok dengan tipe TypeScript [`ModelUsage`](/docs/id/agent-sdk/typescript#modelusage):

1864 1864 


1869| `cacheReadInputTokens` | `int` | Token baca cache untuk model ini. |1869| `cacheReadInputTokens` | `int` | Token baca cache untuk model ini. |

1870| `cacheCreationInputTokens` | `int` | Token pembuatan cache untuk model ini. |1870| `cacheCreationInputTokens` | `int` | Token pembuatan cache untuk model ini. |

1871| `webSearchRequests` | `int` | Permintaan pencarian web yang dibuat oleh model ini. |1871| `webSearchRequests` | `int` | Permintaan pencarian web yang dibuat oleh model ini. |

1872| `thinkingTokens` | `int` | Token thinking yang dihasilkan oleh model ini, sudah dihitung dalam `outputTokens`. Tidak ada sampai putaran berjalan pada versi Claude Code yang mencatatnya, dan tidak dideklarasikan pada TypedDict, jadi bacanya dengan `.get()`. Memerlukan Python Agent SDK 0.2.150 atau lebih baru, yang CLI bundel-nya mencatatnya. |1872| `thinkingTokens` | `int` | Token thinking yang dihasilkan oleh model ini, sudah dihitung dalam `outputTokens`. Tidak ada sampai giliran berjalan pada versi Claude Code yang mencatatnya, dan tidak dideklarasikan pada TypedDict, jadi bacanya dengan `.get()`. Memerlukan Python Agent SDK 0.2.150 atau lebih baru, yang CLI bundel-nya mencatatnya. |

1873| `costUSD` | `float` | Biaya yang diperkirakan dalam USD untuk model ini, dihitung sisi klien. Lihat [Track cost and usage](/docs/id/agent-sdk/cost-tracking) untuk peringatan penagihan. |1873| `costUSD` | `float` | Biaya yang diperkirakan dalam USD untuk model ini, dihitung sisi klien. Lihat [Track cost and usage](/docs/id/agent-sdk/cost-tracking) untuk peringatan penagihan. |

1874| `contextWindow` | `int` | Ukuran jendela konteks untuk model ini. |1874| `contextWindow` | `int` | Ukuran context window untuk model ini. |

1875| `maxOutputTokens` | `int` | Batas token output maksimal untuk model ini. |1875| `maxOutputTokens` | `int` | Batas token output maksimal untuk model ini. |

1876| `canonicalModel` | `str` | ID model kanonik yang digunakan untuk pencarian harga. Mungkin berbeda dari string model mentah yang menjadi kunci entri, seperti ID spesifik penyedia atau alias. Tidak selalu ada. |1876| `canonicalModel` | `str` | ID model kanonik yang digunakan untuk pencarian harga. Mungkin berbeda dari string model mentah yang menjadi kunci entri, seperti ID spesifik penyedia atau alias. Tidak selalu ada. |

1877| `provider` | `str` | Penyedia API yang melayani model ini, seperti `firstParty`, `bedrock`, `vertex`, `foundry`, `anthropicAws`, `mantle`, atau `gateway`. Tidak selalu ada. |1877| `provider` | `str` | Penyedia API yang melayani model ini, seperti `firstParty`, `bedrock`, `vertex`, `foundry`, `anthropicAws`, `mantle`, atau `gateway`. Tidak selalu ada. |

1878| `costBasis` | `str` | Tabel harga yang menentukan harga permintaan terbaru model ini: `list` untuk harga daftar, `managed` untuk tabel [`modelPricing`](/docs/id/settings-reference#modelpricing), atau `unknown` ketika tidak ada yang cocok dengan ID model. Tidak selalu ada, dan tidak dideklarasikan pada TypedDict, jadi bacanya dengan `.get()`. Memerlukan Claude Code v2.1.246 atau lebih baru. |

1878 1879 

1879<h3 id="streamevent">1880<h3 id="streamevent">

1880 `StreamEvent`1881 `StreamEvent`


1978 `TaskStartedMessage`1979 `TaskStartedMessage`

1979</h3>1980</h3>

1980 1981 

1981Dipancarkan ketika tugas latar belakang dimulai. Tugas latar belakang adalah apa pun yang dilacak di luar putaran utama: perintah Bash yang di-background, [Monitor](#monitor) watch, subagent yang dihasilkan melalui tool Agent, atau agent jarak jauh. Field `task_type` memberi tahu Anda yang mana. Penamaan ini tidak terkait dengan penggantian nama tool `Task`-ke-`Agent`.1982Dipancarkan ketika tugas latar belakang dimulai. Tugas latar belakang adalah apa pun yang dilacak di luar giliran utama: perintah Bash yang di-background, [Monitor](#monitor) watch, subagent yang dihasilkan melalui tool Agent, atau agent jarak jauh. Field `task_type` memberi tahu Anda yang mana. Penamaan ini tidak terkait dengan penggantian nama tool `Task`-ke-`Agent`.

1982 1983 

1983```python theme={null}1984```python theme={null}

1984@dataclass1985@dataclass


2166 """Base error for Claude SDK."""2167 """Base error for Claude SDK."""

2167```2168```

2168 2169 

2169Ketika `query()` single-shot berakhir dengan hasil error, misalnya error turn-limit, SDK mengangkat [`ResultError`](#resulterror) setelah menghasilkan pesan hasil akhir. Versi Python Agent SDK sebelum 0.2.140 mengangkat `Exception` biasa yang bukan subkelas `ClaudeSDKError`.2170Ketika `query()` single-shot berakhir dengan hasil error, misalnya error turn-limit, SDK mengangkat [`ResultError`](#resulterror).

2170 2171 

2171<h3 id="clinotfounderror">2172<h3 id="clinotfounderror">

2172 `CLINotFoundError`2173 `CLINotFoundError`


2216 `ResultError`2217 `ResultError`

2217</h3>2218</h3>

2218 2219 

2219Diangkat setelah [`ResultMessage`](#resultmessage) akhir ketika proses Claude Code keluar karena run berakhir dengan hasil error, seperti error turn-limit atau error API. `ResultError` adalah subkelas `ProcessError`, jadi handler `except ProcessError` yang sudah ada juga menangkapnya. Atributnya membawa bidang-bidang dari pesan hasil tersebut, sehingga Anda dapat membuat cabang tentang mengapa run gagal tanpa mengurai teks pesan. Memerlukan Python Agent SDK 0.2.140 atau lebih baru.2220Diangkat ketika proses Claude Code keluar karena run berakhir dengan [pesan hasil](#resultmessage) error, seperti error turn-limit atau error API. `ResultError` adalah subkelas `ProcessError`, jadi handler `except ProcessError` yang sudah ada juga menangkapnya. Atributnya membawa bidang-bidang dari pesan hasil tersebut, sehingga Anda dapat membuat cabang tentang mengapa run gagal tanpa mengurai teks pesan. Memerlukan Python Agent SDK 0.2.140 atau lebih baru.

2220 2221 

2221```python theme={null}2222```python theme={null}

2222class ResultError(ProcessError):2223class ResultError(ProcessError):


2649 hookEventName: Literal["PostToolUse"]2650 hookEventName: Literal["PostToolUse"]

2650 additionalContext: NotRequired[str]2651 additionalContext: NotRequired[str]

2651 updatedToolOutput: NotRequired[Any]2652 updatedToolOutput: NotRequired[Any]

2652 updatedMCPToolOutput: NotRequired[Any] # Deprecated: use updatedToolOutput, which works for all tools2653 updatedMCPToolOutput: NotRequired[Any] # MCP tools only. Prefer updatedToolOutput, which works for all tools

2653 2654 

2654 2655 

2655class PostToolUseFailureHookSpecificOutput(TypedDict):2656class PostToolUseFailureHookSpecificOutput(TypedDict):


2708 Contoh Penggunaan Hook2709 Contoh Penggunaan Hook

2709</h3>2710</h3>

2710 2711 

2711Contoh ini mendaftarkan dua hooks: satu yang memblokir perintah bash berbahaya seperti `rm -rf /`, dan satu lagi yang mencatat semua penggunaan tool untuk audit. Hook keamanan hanya berjalan pada perintah Bash (melalui `matcher`), sementara hook logging berjalan pada semua tools.2712Contoh ini mendaftarkan dua hooks: satu yang memblokir perintah Bash berbahaya seperti `rm -rf /`, dan satu lagi yang mencatat semua penggunaan tool untuk audit. Hook keamanan hanya berjalan pada perintah Bash (melalui `matcher`), sementara hook logging berjalan pada semua tools.

2712 2713 

2713```python theme={null}2714```python theme={null}

2714import asyncio2715import asyncio


2782```python theme={null}2783```python theme={null}

2783{2784{

2784 "description": str, # Deskripsi singkat tugas (3-5 kata)2785 "description": str, # Deskripsi singkat tugas (3-5 kata)

2785 "prompt": str, # Tugas untuk dijalankan oleh agen2786 "prompt": str, # Tugas untuk dijalankan oleh agent

2786 "subagent_type": str | None, # Jenis agen khusus yang digunakan2787 "subagent_type": str | None, # Jenis agent khusus yang digunakan

2787 "model": "sonnet" | "opus" | "haiku" | "fable" | None, # Penggantian model untuk agen ini2788 "model": "sonnet" | "opus" | "haiku" | "fable" | None, # Override model untuk agent ini

2788 "run_in_background": bool | None, # Agen berjalan di latar belakang secara default; atur ke False untuk menjalankan secara sinkron2789 "run_in_background": bool | None, # Agent berjalan di latar belakang secara default; atur ke False untuk menjalankan secara sinkron

2789 "name": str | None, # Nama untuk agen yang dihasilkan2790 "name": str | None, # Nama untuk agent yang dihasilkan

2790 "team_name": str | None, # Tidak digunakan lagi; diabaikan2791 "team_name": str | None, # Tidak digunakan lagi; diabaikan

2791 "mode": "acceptEdits" | "auto" | "bypassPermissions" | "default" | "dontAsk" | "plan" | None, # Tidak digunakan lagi; diabaikan. Aturan pewarisan subagen memutuskan mode izin subagen2792 "mode": "acceptEdits" | "auto" | "bypassPermissions" | "default" | "dontAsk" | "plan" | None, # Tidak digunakan lagi; diabaikan. Aturan pewarisan subagent memutuskan mode izin subagent

2792 "isolation": "worktree" | "remote" | None, # Mode isolasi untuk perubahan agen2793 "isolation": "worktree" | "remote" | None, # Mode isolasi untuk perubahan agent

2793}2794}

2794```2795```

2795 2796 

2796Meluncurkan agen baru untuk menangani tugas kompleks multi-langkah secara otonom.2797Meluncurkan agent baru untuk menangani tugas kompleks multi-langkah secara otonom.

2797 2798 

2798**Output (status: `"completed"`):**2799**Output (status: `"completed"`):**

2799 2800 


2850{2851{

2851 "status": "async_launched",2852 "status": "async_launched",

2852 "isAsync": bool | None, # True pada peluncuran latar belakang2853 "isAsync": bool | None, # True pada peluncuran latar belakang

2853 "agentId": str, # ID agen yang diluncurkan2854 "agentId": str, # ID agent yang diluncurkan

2854 "description": str, # Deskripsi tugas2855 "description": str, # Deskripsi tugas

2855 "resolvedModel": str | None, # Model yang digunakan pada transisi backgrounding2856 "resolvedModel": str | None, # Model yang digunakan pada transisi backgrounding

2856 "modelsUsed": list[str] | None, # Model yang digunakan sebelum backgrounding, secara berurutan, dengan pengulangan berturut-turut yang runtuh2857 "modelsUsed": list[str] | None, # Model yang digunakan sebelum backgrounding, secara berurutan, dengan pengulangan berturut-turut yang runtuh

2857 "prompt": str, # Prompt yang dijalankan agen2858 "prompt": str, # Prompt yang dijalankan agent

2858 "outputFile": str, # Jalur file tempat output agen ditulis2859 "outputFile": str, # Jalur file tempat output agent ditulis

2859 "canReadOutputFile": bool | None, # Apakah file output dapat dibaca secara langsung2860 "canReadOutputFile": bool | None, # Apakah file output dapat dibaca secara langsung

2860}2861}

2861```2862```


2868 "taskId": str, # ID tugas yang dikirimkan2869 "taskId": str, # ID tugas yang dikirimkan

2869 "sessionUrl": str, # Tautan ke sesi cloud2870 "sessionUrl": str, # Tautan ke sesi cloud

2870 "description": str, # Deskripsi tugas2871 "description": str, # Deskripsi tugas

2871 "prompt": str, # Prompt yang dijalankan agen2872 "prompt": str, # Prompt yang dijalankan agent

2872 "outputFile": str, # Jalur file tempat output agen ditulis2873 "outputFile": str, # Jalur file tempat output agent ditulis

2873}2874}

2874```2875```

2875 2876 

2876Mengembalikan hasil dari subagen. Output dibedakan pada bidang `status`: `"completed"` untuk tugas yang selesai, `"async_launched"` untuk tugas latar belakang, dan `"remote_launched"` untuk tugas yang Claude Code kirimkan ke sesi cloud, di mana `sessionUrl` menautkan ke sesi itu dan `taskId` mengidentifikasinya. Jika Claude Code [menyimpan worktree subagen yang terisolasi](/docs/id/worktrees#isolate-subagents-with-worktrees), `worktreePath` pada varian `completed` adalah tempat menemukannya, dan `worktreeBranch` adalah cabangnya ketika Claude Code membuat worktree dengan git.2877Mengembalikan hasil dari subagent. Output dibedakan pada bidang `status`: `"completed"` untuk tugas yang selesai, `"async_launched"` untuk tugas latar belakang, dan `"remote_launched"` untuk tugas yang Claude Code kirimkan ke sesi cloud, di mana `sessionUrl` menautkan ke sesi itu dan `taskId` mengidentifikasinya. Jika Claude Code [menyimpan worktree subagent yang terisolasi](/docs/id/worktrees#isolate-subagents-with-worktrees), `worktreePath` pada varian `completed` adalah tempat menemukannya, dan `worktreeBranch` adalah branch-nya ketika Claude Code membuat worktree dengan git.

2877 2878 

2878Pada varian `completed`, `resolvedModel` menamai model yang dimulai subagen, yang dapat berbeda dari input `model` yang diminta ketika [`availableModels`](/docs/id/model-config#restrict-model-selection) atau penggantian lain berlaku. Bidang ini memerlukan Claude Code v2.1.174 atau lebih baru. Pada varian `async_launched`, `resolvedModel` menamai model yang digunakan ketika agen pindah ke latar belakang, jadi swap yang terjadi sebelum backgrounding tercermin di sana. Bidang `modelsUsed` pada kedua varian mencantumkan model yang digunakan secara berurutan, dengan pengulangan berturut-turut yang runtuh; itu diatur hanya ketika model ditukar di tengah-run. `modelsUsed` dan perilaku `resolvedModel` saat backgrounding memerlukan Claude Code v2.1.212 atau lebih baru.2879Pada varian `completed`, `resolvedModel` menamai model yang dimulai subagent, yang dapat berbeda dari input `model` yang diminta ketika [`availableModels`](/docs/id/model-config#restrict-model-selection) atau override lain berlaku. Bidang ini memerlukan Claude Code v2.1.174 atau lebih baru. Pada varian `async_launched`, `resolvedModel` menamai model yang digunakan ketika agent pindah ke latar belakang, jadi swap yang terjadi sebelum backgrounding tercermin di sana. Bidang `modelsUsed` pada kedua varian mencantumkan model yang digunakan secara berurutan, dengan pengulangan berturut-turut yang runtuh; itu diatur hanya ketika model ditukar di tengah-run. `modelsUsed` dan perilaku `resolvedModel` saat backgrounding memerlukan Claude Code v2.1.212 atau lebih baru.

2879 2880 

2880Claude Code mengisi `usage` dan `totalTokens` dari permintaan API final subagent, bukan dari seluruh run. Ketika ada, `thinking_tokens` di bawah `output_tokens_details` dalam `usage` adalah jumlah token output permintaan itu yang merupakan thinking token. Kunci `output_tokens_details` memerlukan Python SDK v0.2.136 atau lebih baru, yang menggabungkan Claude Code v2.1.228. Kunci `fallback_credit` memerlukan Python SDK v0.2.162 atau lebih baru, yang menggabungkan Claude Code v2.1.285.2881Claude Code mengisi `usage` dan `totalTokens` dari permintaan API final subagent, bukan dari seluruh run. Ketika ada, `thinking_tokens` di bawah `output_tokens_details` dalam `usage` adalah jumlah token output permintaan itu yang merupakan thinking token. Kunci `output_tokens_details` memerlukan Python SDK v0.2.136 atau lebih baru, yang menggabungkan Claude Code v2.1.228. Kunci `fallback_credit` memerlukan Python SDK v0.2.162 atau lebih baru, yang menggabungkan Claude Code v2.1.285.

2881 2882 


3150 "file": {3151 "file": {

3151 "filePath": str,3152 "filePath": str,

3152 },3153 },

3153 "source": "seeded" | None, # Hadir ketika salinan sebelumnya berasal dari file CLAUDE.md atau memory yang dimuat saat startup daripada panggilan Read3154 "source": "seeded" | None, # Hadir ketika salinan sebelumnya berasal dari file CLAUDE.md atau memori yang dimuat saat startup daripada panggilan Read

3154}3155}

3155```3156```

3156 3157 


3593```python theme={null}3594```python theme={null}

3594{3595{

3595 "plan": str | None, # Rencana yang disajikan kepada pengguna3596 "plan": str | None, # Rencana yang disajikan kepada pengguna

3596 "isAgent": bool, # True ketika subagen memanggil tool3597 "isAgent": bool, # True ketika subagent memanggil tool

3597 "filePath": str | None, # Hadir ketika rencana disimpan ke file3598 "filePath": str | None, # Hadir ketika rencana disimpan ke file

3598 "hasTaskTool": bool | None, # Opsional; apakah tool Agent tersedia dalam konteks saat ini3599 "hasTaskTool": bool | None, # Opsional; apakah tool Agent tersedia dalam konteks saat ini

3599 "planWasEdited": bool | None, # Hadir dan True ketika pengguna mengedit rencana sebelum menyetujui3600 "planWasEdited": bool | None, # Hadir dan True ketika pengguna mengedit rencana sebelum menyetujui

Details

58 Mulai cepat58 Mulai cepat

59</h2>59</h2>

60 60 

61Untuk menggunakan output terstruktur, tentukan [JSON Schema](https://json-schema.org/understanding-json-schema/about) yang menggambarkan bentuk data yang Anda inginkan, kemudian teruskan ke `query()` melalui opsi `outputFormat` (TypeScript) atau opsi `output_format` (Python). Ketika agen selesai, pesan hasil mencakup bidang `structured_output` dengan data yang divalidasi sesuai dengan skema Anda.61Untuk menggunakan output terstruktur, tentukan [JSON Schema](https://json-schema.org/understanding-json-schema/about) yang menggambarkan bentuk data yang Anda inginkan, kemudian teruskan ke `query()` melalui opsi `outputFormat` (TypeScript) atau opsi `output_format` (Python). Ketika agent selesai, pesan hasil mencakup bidang `structured_output` dengan data yang divalidasi sesuai dengan skema Anda.

62 62 

63Contoh di bawah ini meminta agen untuk meneliti Anthropic dan mengembalikan nama perusahaan, tahun didirikan, dan kantor pusat sebagai output terstruktur.63Sebelum menjalankan contoh di halaman ini, instal Claude Agent SDK dengan mengikuti [mulai cepat](/docs/id/agent-sdk/quickstart#setup). Contoh di bawah ini meminta agent untuk meneliti Anthropic dan mengembalikan nama perusahaan, tahun didirikan, dan kantor pusat sebagai output terstruktur.

64 64 

65<CodeGroup>65<CodeGroup>

66 ```typescript TypeScript theme={null}66 ```typescript TypeScript theme={null}


94 }94 }

95 }95 }

96 } catch (error) {96 } catch (error) {

97 // Satu query() yang ditembakkan melempar setelah menghasilkan hasil kesalahan, seperti97 // query() sekali jalan melempar setelah menghasilkan hasil kesalahan, seperti

98 // error_max_structured_output_retries; lihat bagian Penanganan kesalahan.98 // error_max_structured_output_retries; lihat bagian Penanganan kesalahan.

99 console.error(`Sesi berakhir dengan kesalahan: ${error}`);99 console.error(`Sesi berakhir dengan kesalahan: ${error}`);

100 }100 }


129 print(message.structured_output)129 print(message.structured_output)

130 # {'company_name': 'Anthropic', 'founded_year': 2021, 'headquarters': 'San Francisco, CA'}130 # {'company_name': 'Anthropic', 'founded_year': 2021, 'headquarters': 'San Francisco, CA'}

131 except Exception as error:131 except Exception as error:

132 # Satu query() yang ditembakkan melempar setelah menghasilkan hasil kesalahan, seperti132 # query() sekali jalan memunculkan exception setelah menghasilkan hasil kesalahan, seperti

133 # error_max_structured_output_retries; lihat bagian Penanganan kesalahan.133 # error_max_structured_output_retries; lihat bagian Penanganan kesalahan.

134 print(f"Sesi berakhir dengan kesalahan: {error}")134 print(f"Sesi berakhir dengan kesalahan: {error}")

135 135 


390 Penanganan kesalahan390 Penanganan kesalahan

391</h2>391</h2>

392 392 

393Pembuatan output terstruktur dapat gagal ketika agen tidak dapat menghasilkan JSON yang valid sesuai dengan skema Anda. Ini biasanya terjadi ketika skema terlalu kompleks untuk tugas, tugas itu sendiri ambigu, atau agen mencapai batas percobaan ulangnya mencoba memperbaiki kesalahan validasi. Ini juga dapat terjadi tanpa ada kegagalan validasi: [fallback model](/docs/id/model-config#automatic-model-fallback) dapat menarik kembali output yang sudah selesai di tengah aliran, dan jika tidak ada percobaan ulang yang menggantinya, jalannya berakhir dengan kesalahan yang sama. Periksa daftar `errors` pada pesan hasil untuk membedakan dua penyebab sebelum men-debug skema Anda.393Pembuatan output terstruktur dapat gagal ketika agent tidak dapat menghasilkan JSON yang valid sesuai dengan skema Anda. Ini biasanya terjadi ketika skema terlalu kompleks untuk tugas, tugas itu sendiri ambigu, atau agent mencapai batas retry-nya saat mencoba memperbaiki kesalahan validasi. Ini juga dapat terjadi tanpa ada kegagalan validasi: [fallback model](/docs/id/model-config#automatic-model-fallback) dapat menarik kembali output yang sudah selesai di tengah aliran, dan jika tidak ada retry yang menggantinya, jalannya berakhir dengan kesalahan yang sama. Periksa daftar `errors` pada pesan hasil kesalahan untuk membedakan dua penyebab tersebut sebelum men-debug skema Anda.

394 394 

395Ketika kesalahan terjadi, pesan hasil memiliki `subtype` yang menunjukkan apa yang salah:395Ketika kesalahan terjadi, pesan hasil memiliki `subtype` yang menunjukkan apa yang salah:

396 396 

397| Subtype | Arti |397| Subtype | Arti |

398| - | - |398| - | - |

399| `success` | Output dihasilkan dan divalidasi dengan berhasil |399| `success` | Output dihasilkan dan divalidasi dengan berhasil |

400| `error_max_structured_output_retries` | Tidak ada output yang valid yang bertahan setelah beberapa percobaan (kegagalan validasi, atau penarikan fallback model tanpa percobaan ulang yang berhasil) |400| `error_max_structured_output_retries` | Tidak ada output yang valid yang bertahan setelah beberapa percobaan (kegagalan validasi, atau penarikan fallback model tanpa retry yang berhasil) |

401 401 

402Hasil juga dapat berakhir dengan subtype `success` tetapi tanpa nilai `structured_output`, misalnya ketika jalannya selesai tanpa agen menghasilkan output terstruktur. Perlakukan kasus itu sebagai kegagalan juga. Entri troubleshooting [structured\_output is None but the result says success](/docs/id/agent-sdk/troubleshooting#structured_output-is-none-but-the-result-says-success) mencakup kasus ini. Contoh di bawah ini memperlakukan hasil sebagai berhasil hanya ketika `subtype` adalah `success` dan `structured_output` ada, dan menangani setiap hasil lainnya sebagai kegagalan:402Hasil juga dapat berakhir dengan subtype `success` tetapi tanpa nilai `structured_output`, misalnya ketika jalannya selesai tanpa agent menghasilkan output terstruktur. Perlakukan kasus itu sebagai kegagalan juga. Entri troubleshooting [structured\_output is None but the result says success](/docs/id/agent-sdk/troubleshooting#structured_output-is-none-but-the-result-says-success) mencakup kasus ini. Contoh di bawah ini memperlakukan hasil sebagai berhasil hanya ketika `subtype` adalah `success` dan `structured_output` ada, dan menangani setiap hasil lainnya sebagai kegagalan:

403 403 

404<CodeGroup>404<CodeGroup>

405 ```typescript TypeScript theme={null}405 ```typescript TypeScript theme={null}


488 488 

489* **Jaga skema tetap fokus.** Skema yang bersarang dalam dengan banyak bidang yang diperlukan lebih sulit untuk dipenuhi. Mulai sederhana dan tambahkan kompleksitas sesuai kebutuhan.489* **Jaga skema tetap fokus.** Skema yang bersarang dalam dengan banyak bidang yang diperlukan lebih sulit untuk dipenuhi. Mulai sederhana dan tambahkan kompleksitas sesuai kebutuhan.

490* **Cocokkan skema dengan tugas.** Jika tugas mungkin tidak memiliki semua informasi yang diperlukan skema Anda, buat bidang tersebut opsional.490* **Cocokkan skema dengan tugas.** Jika tugas mungkin tidak memiliki semua informasi yang diperlukan skema Anda, buat bidang tersebut opsional.

491* **Gunakan prompt yang jelas.** Prompt yang ambigu membuat lebih sulit bagi agen untuk mengetahui output apa yang harus dihasilkan.491* **Gunakan prompt yang jelas.** Prompt yang ambigu membuat lebih sulit bagi agent untuk mengetahui output apa yang harus dihasilkan.

492 492 

493<h2 id="related-resources">493<h2 id="related-resources">

494 Sumber daya terkait494 Sumber daya terkait

Details

6 6 

7> Referensi API lengkap untuk TypeScript Agent SDK, termasuk semua fungsi, tipe, dan antarmuka.7> Referensi API lengkap untuk TypeScript Agent SDK, termasuk semua fungsi, tipe, dan antarmuka.

8 8 

9<script src="/docs/components/typescript-sdk-type-links.js" defer />

10 

11<h2 id="installation">9<h2 id="installation">

12 Instalasi10 Instalasi

13</h2>11</h2>


186 console.error("Claim failed:", error.message);184 console.error("Claim failed:", error.message);

187});185});

188 186 

189for await (const message of claimedQuery) {187try {

188 for await (const message of claimedQuery) {

190 console.log(message);189 console.log(message);

190 }

191} catch (error) {

192 // Setelah klaim ditolak, query yang diklaim melempar error setelah menghasilkan hasil error

193 console.error(`Session ended with an error: ${error}`);

191}194}

192```195```

193 196 


717| `accountInfo()` | Mengembalikan informasi akun |720| `accountInfo()` | Mengembalikan informasi akun |

718| `reconnectMcpServer(serverName)` | Menghubungkan ulang server MCP berdasarkan nama. Jika nama tersebut juga cocok dengan entri dalam file pengaturan seperti `.mcp.json` atau `~/.claude.json`, Claude Code menghubungkan ulang server yang Anda konfigurasi melalui [`mcpServers`](#options) atau `setMcpServers()`, bukan entri file pengaturan. Urutan resolusi tersebut memerlukan Claude Code v2.1.257 atau yang lebih baru |721| `reconnectMcpServer(serverName)` | Menghubungkan ulang server MCP berdasarkan nama. Jika nama tersebut juga cocok dengan entri dalam file pengaturan seperti `.mcp.json` atau `~/.claude.json`, Claude Code menghubungkan ulang server yang Anda konfigurasi melalui [`mcpServers`](#options) atau `setMcpServers()`, bukan entri file pengaturan. Urutan resolusi tersebut memerlukan Claude Code v2.1.257 atau yang lebih baru |

719| `toggleMcpServer(serverName, enabled)` | Mengaktifkan atau menonaktifkan server MCP berdasarkan nama, dengan resolusi nama yang sama seperti `reconnectMcpServer()`. Menonaktifkan server akan memutuskan koneksinya dan menghapus tool-nya. Lihat [`toggleMcpServer()`](#togglemcpserver) untuk versi Claude Code yang diperlukan untuk setiap jenis server |722| `toggleMcpServer(serverName, enabled)` | Mengaktifkan atau menonaktifkan server MCP berdasarkan nama, dengan resolusi nama yang sama seperti `reconnectMcpServer()`. Menonaktifkan server akan memutuskan koneksinya dan menghapus tool-nya. Lihat [`toggleMcpServer()`](#togglemcpserver) untuk versi Claude Code yang diperlukan untuk setiap jenis server |

720| `setMcpServers(servers)` | Mengganti set server MCP untuk sesi ini secara dinamis. Resolve dengan [`McpSetServersResult`](#mcpsetserversresult) yang menyebutkan server mana yang ditambahkan dan dihapus, serta error apa pun |723| `setMcpServers(servers)` | Mengganti server MCP yang dikelola metode ini: server yang ditambahkan melaluinya dan [server SDK dalam proses](#createsdkmcpserver). Di-resolve dengan [`McpSetServersResult`](#mcpsetserversresult) yang menyebutkan server mana yang ditambahkan dan dihapus, serta error apa pun; bagian tersebut menjelaskan server lain mana yang tetap terhubung |

721| `readMcpResource(serverName, uri)` | *Alpha.* Membaca satu resource `ui://` MCP Apps dari server MCP yang terhubung sehingga aplikasi Anda dapat merender widget tool. Resolve dengan [`SDKControlMcpReadResourceResponse`](#sdkcontrolmcpreadresourceresponse). Memerlukan TypeScript Agent SDK v0.3.280 atau yang lebih baru |724| `readMcpResource(serverName, uri)` | *Alpha.* Membaca satu resource `ui://` MCP Apps dari server MCP yang terhubung sehingga aplikasi Anda dapat merender widget tool. Resolve dengan [`SDKControlMcpReadResourceResponse`](#sdkcontrolmcpreadresourceresponse). Memerlukan TypeScript Agent SDK v0.3.280 atau yang lebih baru |

722| `streamInput(stream)` | Men-stream pesan input ke kueri untuk percakapan multi-giliran |725| `streamInput(stream)` | Men-stream pesan input ke kueri untuk percakapan multi-giliran |

723| `stopTask(taskId)` | Menghentikan tugas latar belakang yang sedang berjalan berdasarkan ID |726| `stopTask(taskId)` | Menghentikan tugas latar belakang yang sedang berjalan berdasarkan ID |


844 847 

845`options.cwd` wajib diisi. Klaim juga dapat mengatur `additionalDirectories`, `model`, `permissionMode`, `maxThinkingTokens`, overlay pengaturan flag dalam `settings`, `appendSystemPrompt`, `title`, `agents`, dan token per sesi dalam `env`.848`options.cwd` wajib diisi. Klaim juga dapat mengatur `additionalDirectories`, `model`, `permissionMode`, `maxThinkingTokens`, overlay pengaturan flag dalam `settings`, `appendSystemPrompt`, `title`, `agents`, dan token per sesi dalam `env`.

846 849 

847Claude Code dapat menolak klaim, misalnya untuk folder yang tidak ada atau folder yang pengaturan proyeknya mengatur `env`, `agent`, atau `model`. Ketika `claimed` di-reject dengan pesan yang diawali `option_not_applied`, sesi berjalan tanpa `model` atau `maxThinkingTokens` yang Anda minta. Setelah penolakan lainnya, prompt Anda belum dijalankan, jadi mulai sesi dengan `query()` sebagai gantinya.850Claude Code dapat menolak klaim, misalnya untuk folder yang tidak ada atau folder yang pengaturan proyeknya mengatur `env`, `agent`, atau `model`. Setelah penolakan, prompt yang sudah dikirim oleh `claim()` mendapatkan hasil error yang teksnya diawali `not_claimed`, dan query yang dikembalikan kemudian melempar error. Bungkus loop query dalam blok try untuk melanjutkan melewati error tersebut. Ketika `claimed` di-reject dengan pesan yang diawali `option_not_applied`, sesi berjalan tanpa `model` atau `maxThinkingTokens` yang Anda minta. Setelah penolakan lainnya, prompt Anda belum dijalankan, jadi mulai sesi dengan `query()` sebagai gantinya.

848 851 

849<h3 id="sdkcontrolinitializeresponse">852<h3 id="sdkcontrolinitializeresponse">

850 `SDKControlInitializeResponse`853 `SDKControlInitializeResponse`


1337| `mcpServer` | `{ name: string; source: string }` | Untuk tool `mcp__*`, server MCP yang menyediakannya dan asal definisi server tersebut, dengan field dari [`McpServerProvenance`](#mcpserverprovenance). Tidak ada untuk tool lain. Memerlukan Agent SDK v0.3.274 atau yang lebih baru |1340| `mcpServer` | `{ name: string; source: string }` | Untuk tool `mcp__*`, server MCP yang menyediakannya dan asal definisi server tersebut, dengan field dari [`McpServerProvenance`](#mcpserverprovenance). Tidak ada untuk tool lain. Memerlukan Agent SDK v0.3.274 atau yang lebih baru |

1338| `decisionReason` | `string` | Menjelaskan mengapa permintaan izin ini dipicu |1341| `decisionReason` | `string` | Menjelaskan mengapa permintaan izin ini dipicu |

1339| `defaultToNo` | `boolean` | Ketika `true`, satu penekanan tombol yang tidak disengaja tidak boleh menyetujui permintaan ini: buka dialog Anda pada opsi tolak, jangan memilih setujui secara default, dan jangan tawarkan pintasan persetujuan satu tombol. Memerlukan Agent SDK v0.3.268 atau yang lebih baru |1342| `defaultToNo` | `boolean` | Ketika `true`, satu penekanan tombol yang tidak disengaja tidak boleh menyetujui permintaan ini: buka dialog Anda pada opsi tolak, jangan memilih setujui secara default, dan jangan tawarkan pintasan persetujuan satu tombol. Memerlukan Agent SDK v0.3.268 atau yang lebih baru |

1340| `suppressAlwaysAllowRule` | `boolean` | Ketika `true`, jangan tawarkan pilihan selalu-izinkan yang persisten untuk permintaan ini, karena aturan yang akan ditulisnya memberikan lebih dari tindakan permintaan itu sendiri. Memerlukan Agent SDK v0.3.268 atau yang lebih baru |1343| `suppressAlwaysAllowRule` | `boolean` | Ketika `true`, jangan tawarkan pilihan selalu-izinkan yang persisten untuk permintaan ini. Memerlukan Agent SDK v0.3.268 atau yang lebih baru |

1341| `toolUseID` | `string` | Pengidentifikasi unik untuk panggilan tool spesifik ini dalam pesan asisten |1344| `toolUseID` | `string` | Pengidentifikasi unik untuk panggilan tool spesifik ini dalam pesan asisten |

1342| `agentID` | `string` | Jika berjalan di dalam sub-agent, ID sub-agent tersebut |1345| `agentID` | `string` | Jika berjalan di dalam sub-agent, ID sub-agent tersebut |

1343| `requestId` | `string` | `request_id` dari envelope `control_request`. `control_response` yang dikirim aplikasi Anda di luar SDK, seperti HTTP POST yang ditandatangani, harus mengembalikan nilai ini agar proses Claude Code dapat mencocokkan balasan dengan permintaannya |1346| `requestId` | `string` | `request_id` dari envelope `control_request`. `control_response` yang dikirim aplikasi Anda di luar SDK, seperti HTTP POST yang ditandatangani, harus mengembalikan nilai ini agar proses Claude Code dapat mencocokkan balasan dengan permintaannya |


3790};3793};

3791```3794```

3792 3795 

3793Melaporkan temuan tinjauan kode sebagai daftar terstruktur sehingga Claude Code dapat merender alih-alih mencetaknya sebagai teks. `level` adalah tingkat upaya yang dijalankan tinjauan. Temuan diurutkan paling parah terlebih dahulu, dengan paling banyak 32 per panggilan, dan array kosong ketika tidak ada yang bertahan. Memerlukan Claude Code v2.1.196 atau lebih baru.3796Melaporkan temuan code review sebagai daftar terstruktur sehingga Claude Code dapat merendernya alih-alih mencetaknya sebagai teks. Temuan diurutkan paling parah terlebih dahulu, dengan paling banyak 32 per panggilan, dan array kosong ketika tidak ada yang bertahan. Memerlukan Claude Code v2.1.196 atau lebih baru.

3797 

3798`level` bersifat opsional dan berisi tingkat effort yang dilaporkan Claude untuk review tersebut. Claude Code tidak membandingkannya dengan tingkat yang digunakan saat review dijalankan, sehingga keduanya dapat berbeda.

3794 3799 

3795Setiap temuan membawa bidang-bidang ini:3800Setiap temuan membawa bidang-bidang ini:

3796 3801 


4840};4845};

4841```4846```

4842 4847 

4843Mengembalikan jumlah temuan yang dilaporkan, tingkat upaya yang dijalankan review, dan temuan yang diulang kembali untuk body hasil. Memerlukan Claude Code v2.1.196 atau lebih baru. Field `short_summary` yang diulang kembali memerlukan Claude Code v2.1.212 atau lebih baru.4848Mengembalikan jumlah temuan yang dilaporkan, nilai `level` yang diteruskan Claude, dan temuan yang diulang kembali untuk body hasil. Memerlukan Claude Code v2.1.196 atau lebih baru. Field `short_summary` yang diulang kembali memerlukan Claude Code v2.1.212 atau lebih baru.

4844 4849 

4845<h3 id="artifact-2">4850<h3 id="artifact-2">

4846 Artifact4851 Artifact


5461 | { type: "disabled" }; // No extended thinking5466 | { type: "disabled" }; // No extended thinking

5462```5467```

5463 5468 

5464Field `display` opsional mengontrol apakah teks thinking dikembalikan `"summarized"` atau `"omitted"`. Pada Claude Opus 4.7 dan yang lebih baru, default API adalah `"omitted"`, jadi atur `"summarized"` untuk menerima konten thinking dalam blok `thinking`. Claude Code tidak mengirimkan `display` ke Amazon Bedrock atau Agent Platform Google Cloud, jadi pada penyedia tersebut Opus 4.7 dan yang lebih baru mengembalikan blok `thinking` kosong bahkan ketika Anda menetapkan `display` ke `"summarized"`.5469Field `display` opsional mengontrol apakah teks thinking dikembalikan `"summarized"` atau `"omitted"`. Pada Claude Opus 4.7 dan yang lebih baru, default API adalah `"omitted"`, jadi atur `"summarized"` untuk menerima konten thinking dalam blok `thinking`. Claude Code tidak meneruskan nilai `display` Anda ke beberapa penyedia, seperti Amazon Bedrock dan Agent Platform Google Cloud. Pada penyedia tersebut, Opus 4.7 dan yang lebih baru mengembalikan blok `thinking` kosong bahkan ketika Anda menetapkan `display` ke `"summarized"`.

5465 5470 

5466<h3 id="spawnedprocess">5471<h3 id="spawnedprocess">

5467 `SpawnedProcess`5472 `SpawnedProcess`


5532 5537 

5533Ketika Anda memanggil `setMcpServers()`, Claude Code menerapkan aturan berikut:5538Ketika Anda memanggil `setMcpServers()`, Claude Code menerapkan aturan berikut:

5534 5539 

5535* **Server yang tidak disebutkan dalam panggilan**: Claude Code menjaga server yang disediakan plugin tetap berjalan. Memerlukan Agent SDK v0.3.210 atau lebih baru.5540* **Server yang tidak disebutkan dalam panggilan**: di luar [sesi cloud](/docs/id/claude-code-on-the-web), Claude Code memutuskan koneksi server yang ditambahkan oleh panggilan `setMcpServers()` sebelumnya dan server SDK dalam proses, lalu mencantumkannya dalam `removed`. Server lainnya tetap berjalan dan tidak dicantumkan dalam `removed`, di antaranya server stdio, HTTP, dan SSE dari opsi [`mcpServers`](#options), server dari file pengaturan, dan server yang disediakan plugin.

5536* **Server yang disebutkan dalam panggilan**: kecuali untuk server bawaan yang dimulai CLI saat startup, Claude Code mengganti server yang sedang berjalan hanya ketika konfigurasinya berbeda dari yang Anda teruskan.5541* **Server yang disebutkan dalam panggilan**: Claude Code mengganti server stdio, HTTP, atau SSE yang ditambahkan oleh panggilan `setMcpServers()` sebelumnya hanya ketika konfigurasinya berbeda dari yang Anda teruskan. Server SDK dalam proses yang sudah terdaftar dengan nama tersebut tetap seperti apa adanya, jadi untuk menggantinya, keluarkan server itu dari satu panggilan dan tambahkan pada panggilan berikutnya.

5537* **Server bawaan yang dimulai CLI saat startup**: jika panggilan menyebutkan salah satunya, Claude Code menghapus entri itu dan melaporkannya dalam `errors`.5542* **Server bawaan yang dimulai CLI saat startup**: jika panggilan menyebutkan salah satunya, Claude Code menghapus entri itu dan melaporkannya dalam `errors`.

5538 5543 

5539Promise diselesaikan setelah server stdio, HTTP, dan SSE yang baru ditambahkan terhubung atau gagal, jadi tool dari server yang terhubung tersedia pada giliran berikutnya.5544Promise diselesaikan setelah server stdio, HTTP, dan SSE yang baru ditambahkan terhubung atau gagal, jadi tool dari server yang terhubung tersedia pada giliran berikutnya.

agent-view.md +1 −0

Details

819| `claude rm <id> --discard-unpushed <commit>@<worktree-id>` | Hapus sesi yang penghapusannya ditolak karena commit yang belum di-push, membuang worktree beserta branch dan commitnya. Lewatkan nilai yang tepat yang ditampilkan penolakan; lihat [Apa yang dihapus saat menghapus sesi](#what-deleting-a-session-removes). Memerlukan v2.1.260 atau lebih baru |819| `claude rm <id> --discard-unpushed <commit>@<worktree-id>` | Hapus sesi yang penghapusannya ditolak karena commit yang belum di-push, membuang worktree beserta branch dan commitnya. Lewatkan nilai yang tepat yang ditampilkan penolakan; lihat [Apa yang dihapus saat menghapus sesi](#what-deleting-a-session-removes). Memerlukan v2.1.260 atau lebih baru |

820| `claude rm <id> --force-remove-worktree <worktree-id>` | Hapus sesi yang penghapusannya ditolak karena git atau hook `WorktreeRemove` tidak dapat menghapus worktreenya, menghapus direktori worktree bagaimanapun dan meninggalkan branch-nya di repositori. Lewatkan nilai yang tepat yang ditampilkan penolakan; lihat [Apa yang dihapus saat menghapus sesi](#what-deleting-a-session-removes). Memerlukan v2.1.268 atau lebih baru |820| `claude rm <id> --force-remove-worktree <worktree-id>` | Hapus sesi yang penghapusannya ditolak karena git atau hook `WorktreeRemove` tidak dapat menghapus worktreenya, menghapus direktori worktree bagaimanapun dan meninggalkan branch-nya di repositori. Lewatkan nilai yang tepat yang ditampilkan penolakan; lihat [Apa yang dihapus saat menghapus sesi](#what-deleting-a-session-removes). Memerlukan v2.1.268 atau lebih baru |

821| `claude daemon status` | Cetak status [supervisor](#the-supervisor-process), versi, direktori soket, dan jumlah pekerja |821| `claude daemon status` | Cetak status [supervisor](#the-supervisor-process), versi, direktori soket, dan jumlah pekerja |

822| `claude daemon logs` | Ikuti file log supervisor, [`~/.claude/daemon.log`](#where-state-is-stored), dengan mencetak baris baru saat baris tersebut masuk hingga Anda menekan `Ctrl+C` |

822| `claude daemon stop --any` | Hentikan proses supervisor dan sesi latar belakang yang dihosting. Lewatkan `--keep-workers` untuk membiarkan sesi latar belakang tetap berjalan sehingga supervisor berikutnya dapat terhubung kembali ke sesi tersebut. `claude agents` atau `claude --bg` berikutnya memulai supervisor baru |823| `claude daemon stop --any` | Hentikan proses supervisor dan sesi latar belakang yang dihosting. Lewatkan `--keep-workers` untuk membiarkan sesi latar belakang tetap berjalan sehingga supervisor berikutnya dapat terhubung kembali ke sesi tersebut. `claude agents` atau `claude --bg` berikutnya memulai supervisor baru |

823 824 

824`claude attach` dan `claude logs` dapat menerima sebagian nama sesi yang sedang berjalan sebagai pengganti ID, seperti dalam `claude logs "auth refactor"`. Meneruskan nama memerlukan Claude Code v2.1.290 atau lebih baru.825`claude attach` dan `claude logs` dapat menerima sebagian nama sesi yang sedang berjalan sebagai pengganti ID, seperti dalam `claude logs "auth refactor"`. Meneruskan nama memerlukan Claude Code v2.1.290 atau lebih baru.

agents.md +1 −1

Details

20 20 

21Tiga alat lagi mendukung pekerjaan ini tanpa menjadi cara untuk menjalankan agen sendiri:21Tiga alat lagi mendukung pekerjaan ini tanpa menjadi cara untuk menjalankan agen sendiri:

22 22 

23* [Worktrees](/docs/id/worktrees) memberikan setiap sesi checkout git terpisah, sehingga sesi paralel tidak pernah mengedit file yang sama. Gunakan untuk sesi yang Anda jalankan sendiri. Sesi yang Anda kirim dari agent view [berpindah ke worktree-nya sendiri sebelum mengedit file](/docs/id/agent-view#how-file-edits-are-isolated), dan subagents yang Anda hasilkan dapat masing-masing mendapatkan satu juga.23* [Worktrees](/docs/id/worktrees) memberikan setiap sesi checkout git terpisah, sehingga setiap sesi paralel mengedit salinan file miliknya sendiri. Gunakan untuk sesi yang Anda jalankan sendiri. Sesi yang Anda kirim dari agent view [berpindah ke worktree-nya sendiri sebelum mengedit file](/docs/id/agent-view#how-file-edits-are-isolated), dan subagent yang Anda hasilkan dapat masing-masing mendapatkan satu juga.

24* [Cross-session messaging](/docs/id/cross-session-messaging) memungkinkan Claude untuk membuat daftar dan mengirim pesan ke sesi Claude Code lain Anda di mesin ini, di mesin lain, atau [di cloud](/docs/id/claude-code-on-the-web), sehingga sesi yang Anda jalankan sendiri dapat melewatkan temuan dan status di antara mereka.24* [Cross-session messaging](/docs/id/cross-session-messaging) memungkinkan Claude untuk membuat daftar dan mengirim pesan ke sesi Claude Code lain Anda di mesin ini, di mesin lain, atau [di cloud](/docs/id/claude-code-on-the-web), sehingga sesi yang Anda jalankan sendiri dapat melewatkan temuan dan status di antara mereka.

25* [`/batch`](/docs/id/commands) adalah [skill](/docs/id/skills) yang membuat Claude membagi satu perubahan besar menjadi 5 hingga 30 subagents terisolasi worktree. Ini adalah penggunaan subagents dan worktrees yang dikemas, bukan gaya koordinasi terpisah.25* [`/batch`](/docs/id/commands) adalah [skill](/docs/id/skills) yang membuat Claude membagi satu perubahan besar menjadi 5 hingga 30 subagents terisolasi worktree. Ini adalah penggunaan subagents dan worktrees yang dikemas, bukan gaya koordinasi terpisah.

26 26 

Details

188 188 

189Cache mencakup setiap opsi kredensial di atas kecuali kunci API Amazon Bedrock, yang tidak menggunakan rantai penyedia. Untuk menyelesaikan rantai pada setiap permintaan, atur [`CLAUDE_CODE_SKIP_AWS_CRED_CACHE=1`](/docs/id/env-vars).189Cache mencakup setiap opsi kredensial di atas kecuali kunci API Amazon Bedrock, yang tidak menggunakan rantai penyedia. Untuk menyelesaikan rantai pada setiap permintaan, atur [`CLAUDE_CODE_SKIP_AWS_CRED_CACHE=1`](/docs/id/env-vars).

190 190 

191Setiap resolusi rantai habis waktu setelah 60 detik. Jika langkah dalam rantai terhenti, misalnya pembantu `credential_process` yang menunggu input yang tidak dapat diterima, permintaan gagal dengan [`AWS default-chain credential resolve timed out`](/docs/id/errors#aws-default-chain-credential-resolve-timed-out). Jika rantai Anda menjalankan masuk interaktif yang secara sah memerlukan waktu lebih lama, seperti SSO berbasis browser dengan MFA melalui pembungkus seperti `aws-vault`, naikkan batas dalam milidetik dengan [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/id/env-vars). Sebelum v2.1.207, resolusi kredensial yang terhenti membiarkan permintaan menunggu tanpa batas.191Resolusi yang mengisi cache habis waktu setelah 60 detik. Jika langkah dalam rantai terhenti, misalnya pembantu `credential_process` yang menunggu input yang tidak dapat diterima, permintaan gagal dengan [`AWS default-chain credential resolve timed out`](/docs/id/errors#aws-default-chain-credential-resolve-timed-out). Jika rantai Anda menjalankan masuk interaktif yang secara sah memerlukan waktu lebih lama, seperti SSO berbasis browser dengan MFA melalui pembungkus seperti `aws-vault`, naikkan batas dalam milidetik dengan [`CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS`](/docs/id/env-vars). Dengan `CLAUDE_CODE_SKIP_AWS_CRED_CACHE=1` diatur, setiap permintaan API menyelesaikan rantai tanpa batas ini.

192 192 

193Kecuali ketika Anda mengautentikasi dengan kunci API Amazon Bedrock, [wizard pengaturan](#sign-in-with-bedrock) menerapkan batas yang sama untuk setiap panggilan AWS yang dilakukannya saat memverifikasi kredensial Anda, dan untuk pencarian kredensial sebelum setiap pemeriksaan model. Selama verifikasi kredensial, pemeriksaan yang melampaui batas gagal dengan [`Timed out after 60s waiting for AWS`](/docs/id/errors#bedrock-setup-verification-timed-out-waiting-for-aws).193Kecuali ketika Anda mengautentikasi dengan kunci API Amazon Bedrock, [wizard pengaturan](#sign-in-with-bedrock) menerapkan batas yang sama untuk setiap panggilan AWS yang dilakukannya saat memverifikasi kredensial Anda, dan untuk pencarian kredensial sebelum setiap pemeriksaan model. Selama verifikasi kredensial, pemeriksaan yang melampaui batas gagal dengan [`Timed out after 60s waiting for AWS`](/docs/id/errors#bedrock-setup-verification-timed-out-waiting-for-aws).

194 194 


681 681 

682Amazon Bedrock melakukan streaming respons `InvokeModelWithResponseStream` dalam format event-stream biner dengan header `Content-Type: application/vnd.amazon.eventstream`. Gateway atau proxy antara Claude Code dan Amazon Bedrock harus meneruskan badan respons dan headernya, termasuk `Content-Type`, seperti yang dikirim Amazon Bedrock.682Amazon Bedrock melakukan streaming respons `InvokeModelWithResponseStream` dalam format event-stream biner dengan header `Content-Type: application/vnd.amazon.eventstream`. Gateway atau proxy antara Claude Code dan Amazon Bedrock harus meneruskan badan respons dan headernya, termasuk `Content-Type`, seperti yang dikirim Amazon Bedrock.

683 683 

684Jika gateway menulis ulang `Content-Type` ke nilai lain, Claude Code menolak respons dengan kesalahan yang dimulai dengan `Bedrock streaming response has content-type`, menyebutkan nilai yang diterima. Penulisan ulang umum adalah `text/event-stream`, dari integrasi yang memancarkan kembali aliran sebagai server-sent events.684Jika gateway menulis ulang `Content-Type` ke nilai lain, Claude Code menolak respons dengan kesalahan yang dimulai dengan `Bedrock streaming response has content-type`, menyebutkan nilai yang diterima. Penulisan ulang umum adalah `text/event-stream`, dari integrasi yang memancarkan kembali aliran sebagai server-sent events. Untuk variabel `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` yang disebutkan dalam pesan kesalahan, lihat [Bedrock streaming response has an unexpected content-type](/docs/id/errors#bedrock-streaming-response-has-an-unexpected-content-type).

685 685 

686Jika gateway menghapus atau mengosongkan header sebagai gantinya, Claude Code mengasumsikan badan adalah event stream Amazon Bedrock dan mendekodenya, jadi badan yang gateway teruskan tanpa diubah terus melakukan streaming.686Jika gateway menghapus atau mengosongkan header sebagai gantinya, Claude Code mengasumsikan badan adalah event stream Amazon Bedrock dan mendekodenya, jadi badan yang gateway teruskan tanpa diubah terus melakukan streaming.

687 687 

Details

12 Masuk ke Claude Code12 Masuk ke Claude Code

13</h2>13</h2>

14 14 

15Setelah [memasang Claude Code](/docs/id/setup#install-claude-code), jalankan `claude` di terminal Anda. Pada peluncuran pertama, Claude Code membuka jendela browser untuk Anda masuk. Jika Anda telah menetapkan variabel lingkungan `ANTHROPIC_API_KEY`, Claude Code melewati prompt login dan meminta Anda menyetujui kunci sebagai gantinya.15Setelah [memasang Claude Code](/docs/id/setup#install-claude-code), jalankan `claude` di terminal Anda. Pada peluncuran pertama, Claude Code membuka jendela browser untuk Anda masuk. Jika Anda telah menetapkan environment variable `ANTHROPIC_API_KEY` dan Anda menyetujui kunci tersebut ketika Claude Code menanyakan apakah akan menggunakannya, Claude Code melewati prompt login.

16 16 

17Jika browser tidak terbuka secara otomatis, tekan `c` untuk menyalin URL login ke clipboard Anda, kemudian tempel ke browser Anda.17Jika browser tidak terbuka secara otomatis, tekan `c` untuk menyalin URL login ke clipboard Anda, kemudian tempel ke browser Anda.

18 18 

Details

351}351}

352```352```

353 353 

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

355 355 

356```bash theme={null}356```bash theme={null}

357claude auto-mode critique357claude auto-mode critique

chrome.md +1 −1

Details

343 343 

344| Kesalahan | Penyebab | Perbaikan |344| Kesalahan | Penyebab | Perbaikan |

345| - | - | - |345| - | - | - |

346| "Browser extension is not connected" | Host messaging asli tidak dapat menjangkau ekstensi, atau allowlist IP organisasi Anda menolak koneksi ke `bridge.claudeusercontent.com` | Restart Chrome dan Claude Code, kemudian jalankan `/chrome` untuk menghubungkan kembali. Jika organisasi Anda menggunakan allowlist IP dan kesalahan berlanjut, lihat [Organization IP allowlists and proxy egress](/docs/id/network-config#organization-ip-allowlists-and-proxy-egress) |346| "Browser extension is not connected" | Host messaging asli tidak dapat menjangkau ekstensi, atau allowlist IP organisasi Anda menolak koneksi ke `bridge.claudeusercontent.com` | Periksa bahwa ekstensi masuk ke akun claude.ai yang sama dengan Claude Code, restart Chrome dan Claude Code, kemudian jalankan `/chrome` untuk menghubungkan kembali. Jika organisasi Anda menggunakan allowlist IP dan kesalahan berlanjut, lihat [Organization IP allowlists and proxy egress](/docs/id/network-config#organization-ip-allowlists-and-proxy-egress) |

347| Extension shows "Not detected" in `/chrome` | Ekstensi Chrome tidak diinstal atau dinonaktifkan | Instal atau aktifkan ekstensi di `chrome://extensions` |347| Extension shows "Not detected" in `/chrome` | Ekstensi Chrome tidak diinstal atau dinonaktifkan | Instal atau aktifkan ekstensi di `chrome://extensions` |

348| "No tab available" | Claude mencoba bertindak sebelum tab siap | Minta Claude membuat tab baru dan coba lagi |348| "No tab available" | Claude mencoba bertindak sebelum tab siap | Minta Claude membuat tab baru dan coba lagi |

349| "Receiving end does not exist" | Service worker ekstensi menjadi idle | Jalankan `/chrome` dan pilih "Reconnect extension" |349| "Receiving end does not exist" | Service worker ekstensi menjadi idle | Jalankan `/chrome` dan pilih "Reconnect extension" |

Details

73| - | - |73| - | - |

74| Claude Code v2.1.195 atau lebih baru | Subperintah `claude gateway` dan alur sign-in gateway dikirim di v2.1.195. Build publik sebelumnya tidak menyertakannya. Baik mesin yang menjalankan server gateway maupun mesin setiap pengembang harus pada v2.1.195 atau lebih baru; jalankan `claude update` untuk mendapatkan rilis terbaru. Upstream [Claude Platform on AWS](/docs/id/claude-apps-gateway-config#claude-platform-on-aws) memerlukan Claude Code v2.1.198 atau lebih baru di server gateway. |74| Claude Code v2.1.195 atau lebih baru | Subperintah `claude gateway` dan alur sign-in gateway dikirim di v2.1.195. Build publik sebelumnya tidak menyertakannya. Baik mesin yang menjalankan server gateway maupun mesin setiap pengembang harus pada v2.1.195 atau lebih baru; jalankan `claude update` untuk mendapatkan rilis terbaru. Upstream [Claude Platform on AWS](/docs/id/claude-apps-gateway-config#claude-platform-on-aws) memerlukan Claude Code v2.1.198 atau lebih baru di server gateway. |

75| Penyedia identitas OpenID Connect (OIDC) | Okta, Microsoft Entra ID, Google Workspace, Keycloak, atau Dex, atau IdP yang sesuai dengan OIDC lainnya seperti PingFederate. Gateway menjalankan penemuan OIDC standar dan alur kode otorisasi terhadapnya. SAML dan LDAP tidak didukung. |75| Penyedia identitas OpenID Connect (OIDC) | Okta, Microsoft Entra ID, Google Workspace, Keycloak, atau Dex, atau IdP yang sesuai dengan OIDC lainnya seperti PingFederate. Gateway menjalankan penemuan OIDC standar dan alur kode otorisasi terhadapnya. SAML dan LDAP tidak didukung. |

76| PostgreSQL 14 atau lebih baru | Mendukung alur sign-in perangkat, di mana callback browser menulis dan CLI polling membaca, ditambah penghitung batas laju. Postgres yang dikelola apa pun berfungsi, termasuk tingkat terkecil. Tanpa batas pengeluaran yang dikonfigurasi, gateway menyimpan beberapa KB status auth berumur pendek; dengan [batas pengeluaran](/docs/id/claude-apps-gateway-spend-limits), ia juga menyimpan tabel pengeluaran, audit, dan identitas yang tahan lama yang harus dicadangkan. TLS melalui `?sslmode=require` direkomendasikan. |76| PostgreSQL 11 atau lebih baru | Mendukung alur sign-in perangkat dan penghitung rate limit. Layanan PostgreSQL terkelola berfungsi, termasuk tingkat terkecil; lihat [database mana yang didukung](/docs/id/claude-apps-gateway-deploy#postgres). Dengan [batas pengeluaran](/docs/id/claude-apps-gateway-spend-limits), ia juga menyimpan tabel pengeluaran, audit, dan identitas yang tahan lama yang harus dicadangkan. TLS melalui `?sslmode=require` direkomendasikan. PostgreSQL 11, 12, dan 13 memerlukan Claude Code v2.1.290 atau lebih baru di server gateway. Proyek PostgreSQL tidak lagi memelihara versi tersebut, jadi gunakan versi yang lebih baru jika memungkinkan. |

77| Model upstream | Kredensial Amazon Bedrock, kredensial Claude Platform on AWS, kredensial Google Cloud, sumber daya Microsoft Foundry, atau kunci API Anthropic. Beberapa upstream didukung dengan failover. |77| Model upstream | Kredensial Amazon Bedrock, kredensial Claude Platform on AWS, kredensial Google Cloud, sumber daya Microsoft Foundry, atau kunci API Anthropic. Beberapa upstream didukung dengan failover. |

78| HTTPS | Gateway harus dapat dijangkau melalui `https://` dari laptop pengembang dan dari browser apa pun yang digunakan untuk sign-in; gateway melayani halaman verifikasi perangkat pada pendengar yang sama. Berikan sertifikat TLS melalui `listen.tls` atau jalankan di balik ingress yang menghentikan TLS, dan atur `listen.public_url` ke asal eksternal dalam kedua kasus. Asal `http://` biasa hanya diterima ketika host gateway adalah loopback: `localhost`, `127.0.0.1`, atau `::1`. |78| HTTPS | Gateway harus dapat dijangkau melalui `https://` dari laptop pengembang dan dari browser apa pun yang digunakan untuk sign-in; gateway melayani halaman verifikasi perangkat pada pendengar yang sama. Berikan sertifikat TLS melalui `listen.tls` atau jalankan di balik ingress yang menghentikan TLS, dan atur `listen.public_url` ke asal eksternal dalam kedua kasus. Asal `http://` biasa hanya diterima ketika host gateway adalah loopback: `localhost`, `127.0.0.1`, atau `::1`. |

79| Alamat jaringan pribadi | Di `/login`, Claude Code memerlukan nama host atau alamat IP gateway untuk diselesaikan hanya ke alamat pribadi: RFC 1918, link-local, CGNAT `100.64.0.0/10`, IPv6 ULA `fc00::/7`, atau loopback. Untuk gateway yang Anda hosting, alamat publik apa pun di luar blok yang Anda deklarasikan ditolak; lihat [model ancaman](/docs/id/claude-apps-gateway-deploy#threat-model-summary) dalam panduan penyebaran. Jika mesin pengembang merutekan HTTPS melalui proxy perusahaan, sign-in juga memerlukan host proxy untuk diselesaikan ke alamat pribadi; jika tidak, tambahkan host gateway ke `NO_PROXY` sehingga CLI terhubung langsung. Jika jaringan internal Anda bernomor dari ruang IPv4 publik yang dimiliki organisasi Anda, [deklarasikan blok-blok tersebut](#allow-a-gateway-on-public-address-space-you-own) sehingga `/login` menerima gateway di sana. |79| Alamat jaringan pribadi | Di `/login`, Claude Code memerlukan nama host atau alamat IP gateway untuk diselesaikan hanya ke alamat pribadi: RFC 1918, link-local, CGNAT `100.64.0.0/10`, IPv6 ULA `fc00::/7`, atau loopback. Untuk gateway yang Anda hosting, alamat publik apa pun di luar blok yang Anda deklarasikan ditolak; lihat [model ancaman](/docs/id/claude-apps-gateway-deploy#threat-model-summary) dalam panduan penyebaran. Jika mesin pengembang merutekan HTTPS melalui proxy perusahaan, sign-in juga memerlukan host proxy untuk diselesaikan ke alamat pribadi; jika tidak, tambahkan host gateway ke `NO_PROXY` sehingga CLI terhubung langsung. Jika jaringan internal Anda bernomor dari ruang IPv4 publik yang dimiliki organisasi Anda, [deklarasikan blok-blok tersebut](#allow-a-gateway-on-public-address-space-you-own) sehingga `/login` menerima gateway di sana. |


89 </Step>89 </Step>

90 90 

91 <Step title="Sediakan database PostgreSQL">91 <Step title="Sediakan database PostgreSQL">

92 Postgres 14 atau lebih baru apa pun berfungsi, termasuk tingkat terkelola terkecil. Gateway menjalankan migrasi skema sendiri saat boot, jadi peran database memerlukan hak untuk membuat dan mengubah tabel; lihat [`store`](/docs/id/claude-apps-gateway-config#store).92 Gunakan PostgreSQL 11 atau lebih baru. Tingkat terkelola terkecil sudah cukup. Gateway menjalankan migrasi skema sendiri saat boot, jadi peran database memerlukan hak untuk membuat dan mengubah tabel; lihat [`store`](/docs/id/claude-apps-gateway-config#store).

93 </Step>93 </Step>

94 94 

95 <Step title="Tulis gateway.yaml">95 <Step title="Tulis gateway.yaml">

Details

158Gateway membaca key dan sertifikat sekali saat boot, jadi file yang berubah baru berlaku setelah restart. Lakukan rotasi dengan urutan ini agar tidak ada permintaan token yang menyajikan sertifikat yang tidak dimiliki IdP:158Gateway membaca key dan sertifikat sekali saat boot, jadi file yang berubah baru berlaku setelah restart. Lakukan rotasi dengan urutan ini agar tidak ada permintaan token yang menyajikan sertifikat yang tidak dimiliki IdP:

159 159 

1601. Unggah sertifikat baru ke IdP di samping sertifikat lama.1601. Unggah sertifikat baru ke IdP di samping sertifikat lama.

1612. Ganti file key dan sertifikat yang dimuat oleh `gateway.yaml`, lalu restart gateway.1612. Ganti file key dan sertifikat yang dimuat oleh `gateway.yaml`, lalu restart gateway. Jika Anda menjalankan beberapa replica, [rolling restart](/docs/id/claude-apps-gateway-deploy#upgrades) dapat digunakan, karena IdP memiliki kedua sertifikat sampai Anda menghapus sertifikat lama.

1623. Hapus sertifikat lama dari IdP.1623. Setelah setiap replica di-restart, hapus sertifikat lama dari IdP.

163 163 

164<h4 id="idp-requests-through-a-forward-proxy">164<h4 id="idp-requests-through-a-forward-proxy">

165 IdP requests through a forward proxy165 IdP requests through a forward proxy


227 227 

228| Field | Diperlukan | Deskripsi |228| Field | Diperlukan | Deskripsi |

229| - | - | - |229| - | - | - |

230| `postgres_url` | Ya | `postgres://` atau `postgresql://` URL. Diperlukan: device-grant rendezvous, di mana browser callback menulis dan polling CLI membaca, memerlukan cross-replica state. Gateway menjalankan schema migrations-nya sendiri saat boot dan pada upgrade, jadi role memerlukan rights untuk membuat dan mengubah tables pada target schema. Lihat [Upgrades](/docs/id/claude-apps-gateway-deploy#upgrades) dan [Postgres](/docs/id/claude-apps-gateway-deploy#postgres). |230| `postgres_url` | Ya | URL `postgres://` atau `postgresql://` dengan satu host, bukan daftar yang dipisahkan koma. Gateway menjalankan schema migrations-nya sendiri saat boot dan pada upgrade, jadi role memerlukan rights untuk membuat dan mengubah tables pada target schema. Lihat [Upgrades](/docs/id/claude-apps-gateway-deploy#upgrades) dan [Postgres](/docs/id/claude-apps-gateway-deploy#postgres). |

231| `username` | Tidak | Overrides user di `postgres_url` |231| `username` | Tidak | Overrides user di `postgres_url` |

232| `password` | Tidak | Database credential. Atur di sini daripada di `postgres_url` jadi credential tetap keluar dari URL. Menerima karakter apa pun dan mengambil precedence atas URL credentials. |232| `password` | Tidak | Database credential. Atur di sini daripada di `postgres_url` jadi credential tetap keluar dari URL. Menerima karakter apa pun dan mengambil precedence atas URL credentials. |

233| `max_connections` | Tidak | Postgres connection-pool size per replica. Default `5`, yang konservatif dan ramah ke shared databases. Dengan [spend limits](#admin) diaktifkan, hot path melakukan beberapa operasi per inference request, jadi naikkan untuk dedicated database di bawah load, dan simpan replicas × ini di bawah database's `max_connections`. |233| `max_connections` | Tidak | Postgres connection-pool size per replica. Default `5`, yang konservatif dan ramah ke shared databases. Dengan [spend limits](#admin) diaktifkan, hot path melakukan beberapa operasi per inference request, jadi naikkan untuk dedicated database di bawah load, dan simpan replicas × ini di bawah database's `max_connections`. |


376| Tempat lain | Lewatkan credentials via `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, dan `AWS_SESSION_TOKEN` env vars, atau atur secara eksplisit di `auth:` dengan `${VAR}` expansion |376| Tempat lain | Lewatkan credentials via `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, dan `AWS_SESSION_TOKEN` env vars, atau atur secara eksplisit di `auth:` dengan `${VAR}` expansion |

377| Region | `region:` adalah API endpoint region. Cross-region inference profiles route across geo (US, EU, APAC) terlepas dari mana Anda memilih. Untuk non-US regions atau provisioned-throughput ARNs, tambahkan [`models:`](#models) block dengan per-upstream IDs yang benar. |377| Region | `region:` adalah API endpoint region. Cross-region inference profiles route across geo (US, EU, APAC) terlepas dari mana Anda memilih. Untuk non-US regions atau provisioned-throughput ARNs, tambahkan [`models:`](#models) block dengan per-upstream IDs yang benar. |

378 378 

379<a id="apply-an-amazon-bedrock-guardrail" />

380 

379<h5 id="apply-an-amazon-bedrock-guardrail">381<h5 id="apply-an-amazon-bedrock-guardrail">

380 Apply an Amazon Bedrock guardrail382 Apply an Amazon Bedrock guardrail

381</h5>383</h5>

Details

249 Postgres249 Postgres

250</h3>250</h3>

251 251 

252Gateway menyimpan statusnya dalam database PostgreSQL:

253 

254* **Database**: PostgreSQL itu sendiri, di-host sendiri atau terkelola, pada [versi minimum](/docs/id/claude-apps-gateway#prerequisites) atau lebih baru. Database yang hanya mengimplementasikan protokol Postgres, seperti database SQL terdistribusi, tidak didukung.

255* **Alamat**: `store.postgres_url` menerima satu host. Jika database memiliki beberapa node, gunakan alamat yang berada di depannya, seperti endpoint layanan terkelola Anda, load balancer, atau IP virtual. Atur [periode grace kesiapan](#readiness-grace-period) yang lebih lama dari waktu yang diperlukan failover.

256 

252Gateway menyimpan lima tabel data ditambah tabel `_migrations`, semuanya dibuat oleh migrasi waktu boot-nya:257Gateway menyimpan lima tabel data ditambah tabel `_migrations`, semuanya dibuat oleh migrasi waktu boot-nya:

253 258 

254| Tabel | Isi | Retensi |259| Tabel | Isi | Retensi |


396| CLI `/login`: `Could not resolve the configured HTTP proxy` | Nama host dalam `HTTPS_PROXY` atau `HTTP_PROXY` tidak diselesaikan dari mesin pengembang, biasanya karena tidak terhubung ke jaringan korporat | Minta pengembang terhubung ke jaringan atau VPN Anda dan coba ulang, atau perbaiki URL proxy |401| CLI `/login`: `Could not resolve the configured HTTP proxy` | Nama host dalam `HTTPS_PROXY` atau `HTTP_PROXY` tidak diselesaikan dari mesin pengembang, biasanya karena tidak terhubung ke jaringan korporat | Minta pengembang terhubung ke jaringan atau VPN Anda dan coba ulang, atau perbaiki URL proxy |

397| CLI `/login`: `Could not resolve gateway host <host>` | Mesin tidak dapat menyelesaikan nama DNS internal gateway, biasanya karena tidak berada di jaringan korporat | Minta pengembang terhubung ke jaringan atau VPN Anda, lalu coba ulang `/login` |402| CLI `/login`: `Could not resolve gateway host <host>` | Mesin tidak dapat menyelesaikan nama DNS internal gateway, biasanya karena tidak berada di jaringan korporat | Minta pengembang terhubung ke jaringan atau VPN Anda, lalu coba ulang `/login` |

398| Boot keluar dengan kesalahan validasi konfigurasi yang menamai `store.postgres_url` | Tidak ada Postgres yang dikonfigurasi; gateway memerlukan Postgres | Atur `store.postgres_url`. Untuk pengembangan lokal, gunakan kontainer sekali pakai: `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`. |403| Boot keluar dengan kesalahan validasi konfigurasi yang menamai `store.postgres_url` | Tidak ada Postgres yang dikonfigurasi; gateway memerlukan Postgres | Atur `store.postgres_url`. Untuk pengembangan lokal, gunakan kontainer sekali pakai: `docker run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust postgres`. |

404| Boot keluar: `store.postgres_url in <path> is not a URL the gateway can read`, atau sebelum v2.1.290 hanya `Invalid URL` atau `URI error` | URL tidak dapat diurai, misalnya karena mencantumkan lebih dari satu host atau kata sandinya memiliki `/`, `?`, `#`, atau `%` yang tidak dienkode | Sebutkan [satu host](#postgres), dan pindahkan kata sandi ke [`store.password`](/docs/id/claude-apps-gateway-config#store) |

399| Boot keluar: `requires the native binary` | Berjalan di bawah Node bukan biner asli | Instal Claude Code dengan salah satu [metode instalasi mandiri](/docs/id/setup) |405| Boot keluar: `requires the native binary` | Berjalan di bawah Node bukan biner asli | Instal Claude Code dengan salah satu [metode instalasi mandiri](/docs/id/setup) |

400| Boot keluar dengan kesalahan penemuan OIDC setelah `config.load` | `oidc.issuer` tidak dapat dijangkau, atau rantai TLS tidak dipercaya | Periksa issuer dapat dijangkau dari pod dan melayani `/.well-known/openid-configuration`. Atur `ca_cert_pem` untuk PKI pribadi. Jika pod menjangkau IdP hanya melalui proxy forward, atur [`oidc.use_proxy: true`](/docs/id/claude-apps-gateway-config#idp-requests-through-a-forward-proxy); pada versi sebelum v2.1.227, berikan pod rute langsung ke setiap endpoint IdP sebagai gantinya. Jika pod juga tidak dapat menyelesaikan nama host IdP, atau proxy menolak `CONNECT` ke alamat IP, lihat [Proxy-only egress](/docs/id/claude-apps-gateway-config#proxy-only-egress), yang memerlukan v2.1.277 atau lebih baru. |406| Boot keluar dengan kesalahan penemuan OIDC setelah `config.load` | `oidc.issuer` tidak dapat dijangkau, atau rantai TLS tidak dipercaya | Periksa issuer dapat dijangkau dari pod dan melayani `/.well-known/openid-configuration`. Atur `ca_cert_pem` untuk PKI pribadi. Jika pod menjangkau IdP hanya melalui proxy forward, atur [`oidc.use_proxy: true`](/docs/id/claude-apps-gateway-config#idp-requests-through-a-forward-proxy); pada versi sebelum v2.1.227, berikan pod rute langsung ke setiap endpoint IdP sebagai gantinya. Jika pod juga tidak dapat menyelesaikan nama host IdP, atau proxy menolak `CONNECT` ke alamat IP, lihat [Proxy-only egress](/docs/id/claude-apps-gateway-config#proxy-only-egress), yang memerlukan v2.1.277 atau lebih baru. |

401| Boot keluar dengan kesalahan izin Postgres | Peran database kekurangan hak DDL pada skemanya | Berikan peran `CREATE` pada skema gateway sehingga dapat membuat dan mengubah tabelnya saat boot |407| Boot keluar dengan kesalahan izin Postgres | Peran database kekurangan hak DDL pada skemanya | Berikan peran `CREATE` pada skema gateway sehingga dapat membuat dan mengubah tabelnya saat boot |

402| Log: `could not connect to Postgres at boot, attempt 1 of 3` | Database tidak dapat dijangkau ketika gateway dimulai, misalnya pada instance dingin yang jaringannya masih sedang dimulai | Jika gateway kemudian selesai boot, tidak ada tindakan yang diperlukan. Ketika database tidak dapat dijangkau, gateway mencoba koneksi tiga kali, dua detik terpisah, sebelum keluar. Jika keluar dengan `could not connect to Postgres`, periksa `store.postgres_url` dan jalur jaringan ke database. Jika upaya habis waktu daripada ditolak, naikkan [`store.connect_timeout_seconds`](/docs/id/claude-apps-gateway-config#store) untuk memberikan masing-masing lebih lama. |408| Log: `could not connect to Postgres at boot, attempt 1 of 3` | Database tidak dapat dijangkau ketika gateway dimulai, misalnya pada instance dingin yang jaringannya masih sedang dimulai | Jika gateway kemudian selesai boot, tidak ada tindakan yang diperlukan. Ketika database tidak dapat dijangkau, gateway mencoba koneksi tiga kali, dua detik terpisah, sebelum keluar. Jika keluar dengan `could not connect to Postgres`, periksa `store.postgres_url`, termasuk bahwa URL tersebut menyebutkan satu host, dan jalur jaringan ke database. Jika upaya habis waktu daripada ditolak, naikkan [`store.connect_timeout_seconds`](/docs/id/claude-apps-gateway-config#store) untuk memberikan masing-masing lebih lama. |

403| `/oauth/callback` menampilkan "Sign-in could not be completed" | Domain email ditolak, validasi id\_token gagal, atau `email_verified` secara eksplisit `false`, yang gateway selalu tolak tanpa override | Periksa `allowed_email_domains` dan bahwa IdP mengembalikan klaim `email` yang diverifikasi. Untuk `email_verified: false`, perbaiki verifikasi sisi IdP. Jika IdP Anda memancarkan email di bawah nama klaim berbeda, atur `oidc.email_claim`. |409| `/oauth/callback` menampilkan "Sign-in could not be completed" | Domain email ditolak, validasi id\_token gagal, atau `email_verified` secara eksplisit `false`, yang gateway selalu tolak tanpa override | Periksa `allowed_email_domains` dan bahwa IdP mengembalikan klaim `email` yang diverifikasi. Untuk `email_verified: false`, perbaiki verifikasi sisi IdP. Jika IdP Anda memancarkan email di bawah nama klaim berbeda, atur `oidc.email_claim`. |

404| Log: `token exchange failed request_id=<id>: id_token missing email claim` | IdP tidak menyertakan `email` dalam id\_token secara default. Penolakan ini hanya terjadi ketika `allowed_email_domains` diatur; tanpanya, email yang hilang mencetak sesi tanpa email | Konfigurasikan IdP untuk memancarkan `email` dalam id\_token. Okta: tambahkan `email` ke klaim ID-token server otorisasi khusus. Entra: tambahkan `email` sebagai klaim opsional pada pendaftaran aplikasi. PingFederate: aktifkan Kebijakan OpenID Connect yang memancarkan `email`. Jika IdP melayani `email` dari endpoint userinfo tetapi tidak akan menyertakannya dalam id\_token, seperti server otorisasi org Okta, atur `oidc.userinfo_fallback: true`. |410| Log: `token exchange failed request_id=<id>: id_token missing email claim` | IdP tidak menyertakan `email` dalam id\_token secara default. Penolakan ini hanya terjadi ketika `allowed_email_domains` diatur; tanpanya, email yang hilang mencetak sesi tanpa email | Konfigurasikan IdP untuk memancarkan `email` dalam id\_token. Okta: tambahkan `email` ke klaim ID-token server otorisasi khusus. Entra: tambahkan `email` sebagai klaim opsional pada pendaftaran aplikasi. PingFederate: aktifkan Kebijakan OpenID Connect yang memancarkan `email`. Jika IdP melayani `email` dari endpoint userinfo tetapi tidak akan menyertakannya dalam id\_token, seperti server otorisasi org Okta, atur `oidc.userinfo_fallback: true`. |

405| Log: `refresh failed request_id=<id>: invalid_token (…) (at userinfo_no_id_token, …)`, dan pengembang melihat `Cloud gateway session expired` setiap `session.ttl_hours` | IdP menerima token refresh tetapi tidak mengembalikan id\_token dengannya, jadi gateway menanyakan endpoint userinfo IdP untuk klaim pengguna. IdP menolak token akses yang diperbarui di sana. Gateway menjawab `temporarily_unavailable`, jadi Claude Code menyimpan token refresh tetapi tidak dapat memperbarui sesi. Versi gateway sebelum v2.1.260 mencatat baris yang sama tanpa detail `(at …)`. | Atur [`oidc.scope_on_refresh: true`](/docs/id/claude-apps-gateway-config#oidc), tersedia di gateway v2.1.260 atau lebih baru, sehingga permintaan refresh meminta `openid` lagi. Beberapa IdP, seperti Okta, mengembalikan id\_token pada refresh hanya ketika diminta. Di PingFederate, aktifkan **Return ID Token On Refresh Grant** di bawah **Applications > OAuth > OpenID Connect Policy Management** sebagai gantinya. Kunci tidak mengubah perilaku PingFederate. Untuk IdP lain yang masih menghilangkannya, periksa apakah endpoint userinfo menerima token akses yang dikeluarkan oleh refresh. Sebagai solusi sementara, naikkan [`session.ttl_hours`](/docs/id/claude-apps-gateway-config#session). Lihat [Penyiapan penyedia identitas](#identity-provider-setup) untuk tradeoff deprovisioning. |411| Log: `refresh failed request_id=<id>: invalid_token (…) (at userinfo_no_id_token, …)`, dan pengembang melihat `Cloud gateway session expired` setiap `session.ttl_hours` | IdP menerima token refresh tetapi tidak mengembalikan id\_token dengannya, jadi gateway menanyakan endpoint userinfo IdP untuk klaim pengguna. IdP menolak token akses yang diperbarui di sana. Gateway menjawab `temporarily_unavailable`, jadi Claude Code menyimpan token refresh tetapi tidak dapat memperbarui sesi. Versi gateway sebelum v2.1.260 mencatat baris yang sama tanpa detail `(at …)`. | Atur [`oidc.scope_on_refresh: true`](/docs/id/claude-apps-gateway-config#oidc), tersedia di gateway v2.1.260 atau lebih baru, sehingga permintaan refresh meminta `openid` lagi. Beberapa IdP, seperti Okta, mengembalikan id\_token pada refresh hanya ketika diminta. Di PingFederate, aktifkan **Return ID Token On Refresh Grant** di bawah **Applications > OAuth > OpenID Connect Policy Management** sebagai gantinya. Kunci tidak mengubah perilaku PingFederate. Untuk IdP lain yang masih menghilangkannya, periksa apakah endpoint userinfo menerima token akses yang dikeluarkan oleh refresh. Sebagai solusi sementara, naikkan [`session.ttl_hours`](/docs/id/claude-apps-gateway-config#session). Lihat [Penyiapan penyedia identitas](#identity-provider-setup) untuk tradeoff deprovisioning. |

Details

169 </Step>169 </Step>

170 170 

171 <Step title="Sediakan Amazon RDS untuk PostgreSQL">171 <Step title="Sediakan Amazon RDS untuk PostgreSQL">

172 Instans berjalan di subnet pribadi tanpa alamat publik dan enkripsi penyimpanan aktif. Versi mesin disematkan ke Postgres 16, yang memenuhi lantai yang didukung gateway dari PostgreSQL 14 dan menjamin keluarga grup parameter di bawah cocok dengan instans.172 Instans menjalankan Postgres 16 di subnet pribadi, tanpa alamat publik dan dengan enkripsi penyimpanan aktif.

173 173 

174 Pertama, buat grup subnet yang menempatkan database di subnet pribadi, dan grup parameter dengan `rds.force_ssl=1` sehingga server menolak koneksi plaintext. Versi mesin disematkan sekali karena keluarga grup parameter harus cocok dengan versi utama mesin yang dijalankan instans:174 Pertama, buat grup subnet yang menempatkan database di subnet pribadi, dan grup parameter dengan `rds.force_ssl=1` sehingga server menolak koneksi plaintext. Versi mesin disematkan sekali karena keluarga grup parameter harus cocok dengan versi utama mesin yang dijalankan instans:

175 175 

Details

416* **Mesin virtual terisolasi**: setiap sesi berjalan di VM yang terisolasi dan dikelola Anthropic. Sesi yang organisasi Anda arahkan ke [lingkungan self-hosted](/docs/id/self-hosted-environments) berjalan pada infrastruktur Anda sendiri sebagai gantinya, di mana isolasi adalah tanggung jawab deployment Anda416* **Mesin virtual terisolasi**: setiap sesi berjalan di VM yang terisolasi dan dikelola Anthropic. Sesi yang organisasi Anda arahkan ke [lingkungan self-hosted](/docs/id/self-hosted-environments) berjalan pada infrastruktur Anda sendiri sebagai gantinya, di mana isolasi adalah tanggung jawab deployment Anda

417* <span id="default-allowed-domains" />**Kontrol akses jaringan**: di lingkungan yang dihosting Anthropic, akses jaringan dibatasi secara default dan dapat dinonaktifkan. Lihat [Akses jaringan](/docs/id/cloud-environments#network-access) untuk tingkat akses, [domain yang diizinkan secara default](/docs/id/cloud-environments#default-allowed-domains), dan lalu lintas yang tidak melewati daftar izin. Di lingkungan self-hosted, Anda membatasi egress sesi di batas jaringan Anda sendiri. Saat berjalan dengan akses jaringan dinonaktifkan, Claude Code masih dapat berkomunikasi dengan API Anthropic, yang mungkin memungkinkan data keluar dari VM.417* <span id="default-allowed-domains" />**Kontrol akses jaringan**: di lingkungan yang dihosting Anthropic, akses jaringan dibatasi secara default dan dapat dinonaktifkan. Lihat [Akses jaringan](/docs/id/cloud-environments#network-access) untuk tingkat akses, [domain yang diizinkan secara default](/docs/id/cloud-environments#default-allowed-domains), dan lalu lintas yang tidak melewati daftar izin. Di lingkungan self-hosted, Anda membatasi egress sesi di batas jaringan Anda sendiri. Saat berjalan dengan akses jaringan dinonaktifkan, Claude Code masih dapat berkomunikasi dengan API Anthropic, yang mungkin memungkinkan data keluar dari VM.

418* **Perlindungan kredensial**: di lingkungan yang dihosting Anthropic, kredensial git dan kunci penandatanganan tetap di luar sandbox, dan proxy mengautentikasi atas nama sesi dengan kredensial bersistem. Di lingkungan self-hosted, deployment Anda menyediakan kredensial git; lihat [Konfigurasi git](/docs/id/self-hosted-environments-deploy#configure-git)418* **Perlindungan kredensial**: di lingkungan yang dihosting Anthropic, kredensial git dan kunci penandatanganan tetap di luar sandbox, dan proxy mengautentikasi atas nama sesi dengan kredensial bersistem. Di lingkungan self-hosted, deployment Anda menyediakan kredensial git; lihat [Konfigurasi git](/docs/id/self-hosted-environments-deploy#configure-git)

419* **Kredensial API**: di lingkungan yang dihosting Anthropic pada paket Pro dan Max, kunci yang Anda [tambahkan ke lingkungan cloud](/docs/id/cloud-environments#add-api-credentials) tetap di luar sandbox dengan cara yang sama, dilampirkan ke permintaan yang cocok setelah meninggalkan sesi. Lingkungan self-hosted tidak memiliki kredensial API, dan paket Team dan Enterprise belum memilikinya419* **Rahasia jaringan**: di lingkungan yang dihosting Anthropic pada paket Pro dan Max, kunci yang Anda [tambahkan ke lingkungan cloud](/docs/id/cloud-environments#add-api-credentials) tetap di luar sandbox dengan cara yang sama, dilampirkan ke permintaan yang cocok setelah meninggalkan sesi. Lingkungan self-hosted tidak memiliki rahasia jaringan, dan paket Team dan Enterprise belum memilikinya

420* **Analisis aman**: kode dianalisis dan dimodifikasi dalam lingkungan terisolasi sesi sebelum membuat PR420* **Analisis aman**: kode dianalisis dan dimodifikasi dalam lingkungan terisolasi sesi sebelum membuat PR

421 421 

422<h2 id="troubleshooting">422<h2 id="troubleshooting">


442`claude --cloud` dan `claude --teleport` memerlukan sign-in dengan akun claude.ai. Jika Anda mengautentikasi dengan kunci API, atau detail akun yang disimpan sudah usang, Anda akan melihat salah satu dari pesan berikut:442`claude --cloud` dan `claude --teleport` memerlukan sign-in dengan akun claude.ai. Jika Anda mengautentikasi dengan kunci API, atau detail akun yang disimpan sudah usang, Anda akan melihat salah satu dari pesan berikut:

443 443 

444* `Unable to get organization UUID`444* `Unable to get organization UUID`

445* Pesan bahwa autentikasi kunci API tidak cukup445* ``Cloud sessions need a claude.ai sign-in. Run `claude auth login` (or /login in a local session), then try again.``

446* `Error loading Claude Code sessions` di pemilih sesi, saat Anda menjalankan `claude --teleport` tanpa ID sesi446* `Error loading Claude Code sessions` di pemilih sesi, saat Anda menjalankan `claude --teleport` tanpa ID sesi

447 447 

448Jalankan `/login` untuk masuk dengan akun claude.ai Anda, kemudian coba lagi perintah. Jika kesalahan justru menyebutkan penyedia Anda, lihat [tabel kesalahan](#errors-when-sending-to-a-cloud-session): sesi cloud tidak tersedia melalui penyedia pihak ketiga.448Jalankan [`claude auth login`](/docs/id/cli-reference#cli-commands) di shell Anda untuk masuk dengan akun claude.ai Anda, kemudian coba lagi perintah tersebut. Di dalam sesi yang sedang berjalan, `/login` melakukan hal yang sama. Jika kesalahan justru menyebutkan penyedia Anda, lihat [tabel kesalahan](#errors-when-sending-to-a-cloud-session): sesi cloud tidak tersedia melalui penyedia pihak ketiga.

449 

450Dari v2.1.274 hingga v2.1.289, pesan sign-in berbunyi `Claude Code cloud sessions require authentication with a Claude.ai account. API key authentication is not sufficient. Please run /login to authenticate, or check your authentication status with /status.`

449 451 

450<h3 id="remote-control-session-expired-or-access-denied">452<h3 id="remote-control-session-expired-or-access-denied">

451 Remote Control session expired or access denied453 Remote Control session expired or access denied

Details

34 oneLiner: 'Project instructions Claude reads every session',34 oneLiner: 'Project instructions Claude reads every session',

35 when: 'Loaded into context at the start of every session',35 when: 'Loaded into context at the start of every session',

36 description: 'Project-specific instructions that shape how Claude works in this repository. Put your conventions, common commands, and architectural context here so Claude operates with the same assumptions your team does.',36 description: 'Project-specific instructions that shape how Claude works in this repository. Put your conventions, common commands, and architectural context here so Claude operates with the same assumptions your team does.',

37 tips: ['Target under 200 lines. Longer files still load in full but may reduce adherence', <>CLAUDE.md loads into every session. If something only matters for specific tasks, move it to a <A href="/docs/en/skills">skill</A> or a path-scoped <A href="/docs/en/memory#organize-rules-with-claude/rules/">rule</A> so it loads only when needed</>, 'List the commands you run most, like build, test, and format, so Claude knows them without you spelling them out each time', <>Run <C>/memory</C> to open and edit CLAUDE.md from within a session</>, <>Also works at <C>.claude/CLAUDE.md</C> if you prefer to keep the project root clean</>, <>If your repo already has an <C>AGENTS.md</C> for other coding agents, Claude Code <A href="/docs/en/memory#agents-md">can read that</A> on its own or alongside CLAUDE.md</>],37 tips: ['Target under 200 lines. Longer files still load in full but may reduce adherence', <>CLAUDE.md loads into every session. If something only matters for specific tasks, move it to a <A href="/docs/en/skills">skill</A> or a path-scoped <A href="/docs/en/memory#organize-rules-with-claude/rules/">rule</A> so it loads only when needed</>, 'List the commands you run most, like build, test, and format, so Claude knows them without you spelling them out each time', <>Run <C>/memory</C> to open and edit CLAUDE.md from within a session</>, <>Also works at <C>.claude/CLAUDE.md</C> if you prefer to keep the project root clean</>, <>If your repo already has an <C>AGENTS.md</C> for other coding agents, Claude Code <A href="/docs/en/memory#agents-md">can read that</A> in place of a <C>CLAUDE.md</C></>],

38 exampleIntro: 'This example is for a TypeScript and React project. It lists the build and test commands, the framework conventions Claude should follow, and project-specific rules like export style and file layout.',38 exampleIntro: 'This example is for a TypeScript and React project. It lists the build and test commands, the framework conventions Claude should follow, and project-specific rules like export style and file layout.',

39 example: `# Project conventions39 example: `# Project conventions

40 40 


164 icon: 'folder',164 icon: 'folder',

165 color: '#9B7BC4',165 color: '#9B7BC4',

166 oneLiner: 'Topic-scoped instructions, optionally gated by file paths',166 oneLiner: 'Topic-scoped instructions, optionally gated by file paths',

167 when: <>Rules without <C>paths:</C> load at session start. Rules with <C>paths:</C> load when a matching file enters context</>,167 when: <>Rules without <C>paths:</C> load at session start. Rules with <C>paths:</C> load when Claude reads, writes, or edits a matching file</>,

168 description: [<>Project instructions split into topic files that can load conditionally based on file paths. A rule without <C>paths:</C> frontmatter loads at session start like CLAUDE.md; a rule with <C>paths:</C> loads only when Claude reads, writes, or edits a matching file.</>, <>Like CLAUDE.md, rules are guidance Claude reads, not configuration Claude Code enforces. For guaranteed behavior use <A href="/docs/en/hooks">hooks</A> or <A href="/docs/en/permissions">permissions</A>.</>],168 description: [<>Project instructions split into topic files that can load conditionally based on file paths. A rule without <C>paths:</C> frontmatter loads at session start like CLAUDE.md; a rule with <C>paths:</C> loads only when Claude reads, writes, or edits a matching file.</>, <>Like CLAUDE.md, rules are guidance Claude reads, not configuration Claude Code enforces. For guaranteed behavior use <A href="/docs/en/hooks">hooks</A> or <A href="/docs/en/permissions">permissions</A>.</>],

169 tips: [<>Use <C>paths:</C> frontmatter with globs to scope rules to directories or file types</>, <>Subdirectories work: <C>.claude/rules/frontend/react.md</C> is discovered automatically</>, 'When CLAUDE.md approaches 200 lines, start splitting into rules'],169 tips: [<>Use <C>paths:</C> frontmatter with globs to scope rules to directories or file types</>, <>Subdirectories work: <C>.claude/rules/frontend/react.md</C> is discovered automatically</>, 'When CLAUDE.md approaches 200 lines, start splitting into rules'],

170 docsLink: '/en/memory#organize-rules-with-claude/rules/',170 docsLink: '/en/memory#organize-rules-with-claude/rules/',


176 color: '#9B7BC4',176 color: '#9B7BC4',

177 badge: 'committed',177 badge: 'committed',

178 oneLiner: 'Test conventions scoped to test files',178 oneLiner: 'Test conventions scoped to test files',

179 when: <>Loaded when Claude reads a file matching the <C>paths:</C> globs below</>,179 when: <>Loaded when Claude reads, writes, or edits a file matching the <C>paths:</C> globs below</>,

180 description: <>An example rule that only loads when Claude is working on test files. The <C>paths:</C> globs in the frontmatter define which files trigger it; here, anything ending in .test.ts or .test.tsx. For other files, this rule is not loaded into context.</>,180 description: <>An example rule that only loads when Claude is working on test files. The <C>paths:</C> globs in the frontmatter define which files trigger it; here, anything ending in .test.ts or .test.tsx. For other files, this rule is not loaded into context.</>,

181 example: `---181 example: `---

182paths:182paths:


197 color: '#9B7BC4',197 color: '#9B7BC4',

198 badge: 'committed',198 badge: 'committed',

199 oneLiner: 'API conventions scoped to backend code',199 oneLiner: 'API conventions scoped to backend code',

200 when: <>Loaded when Claude reads a file matching the <C>paths:</C> glob below</>,200 when: <>Loaded when Claude reads, writes, or edits a file matching the <C>paths:</C> glob below</>,

201 description: <>A second example showing a rule scoped to backend code. The <C>paths:</C> glob matches files under src/api/, so these conventions load only when Claude is editing API routes.</>,201 description: <>A second example showing a rule scoped to backend code. The <C>paths:</C> glob matches files under src/api/, so these conventions load only when Claude is working on API routes.</>,

202 example: `---202 example: `---

203paths:203paths:

204 - "src/api/**/*.ts"204 - "src/api/**/*.ts"


605 icon: 'folder',605 icon: 'folder',

606 color: '#9B7BC4',606 color: '#9B7BC4',

607 oneLiner: 'User-level rules that apply to every project',607 oneLiner: 'User-level rules that apply to every project',

608 when: <>Rules without <C>paths:</C> load at session start. Rules with <C>paths:</C> load when a matching file enters context</>,608 when: <>Rules without <C>paths:</C> load at session start. Rules with <C>paths:</C> load when Claude reads, writes, or edits a matching file</>,

609 description: 'Same as project .claude/rules/ but applies everywhere. Use this for conventions you want across all your work, like personal code style or commit message format.',609 description: 'Same as project .claude/rules/ but applies everywhere. Use this for conventions you want across all your work, like personal code style or commit message format.',

610 docsLink: '/en/memory#organize-rules-with-claude/rules/',610 docsLink: '/en/memory#organize-rules-with-claude/rules/',

611 children: []611 children: []


1434 1434 

1435Di Windows, `~/.claude` diselesaikan menjadi `%USERPROFILE%\.claude`. Jika Anda menetapkan [`CLAUDE_CONFIG_DIR`](/docs/id/env-vars), setiap jalur `~/.claude` di halaman ini berada di bawah direktori itu sebagai gantinya.1435Di Windows, `~/.claude` diselesaikan menjadi `%USERPROFILE%\.claude`. Jika Anda menetapkan [`CLAUDE_CONFIG_DIR`](/docs/id/env-vars), setiap jalur `~/.claude` di halaman ini berada di bawah direktori itu sebagai gantinya.

1436 1436 

1437Sebagian besar pengguna hanya mengedit `CLAUDE.md` dan `settings.json`. Jika repositori Anda sudah memiliki `AGENTS.md` untuk agen coding lainnya, Claude Code [dapat membacanya](/docs/id/memory#agents-md) sendiri atau bersama `CLAUDE.md`. Sisa direktori bersifat opsional: tambahkan skills, rules, atau subagents sesuai kebutuhan Anda.1437Sebagian besar pengguna hanya mengedit `CLAUDE.md` dan `settings.json`. Jika repositori Anda sudah memiliki `AGENTS.md` untuk agent coding lainnya, Claude Code [dapat membacanya](/docs/id/memory#agents-md) sebagai pengganti `CLAUDE.md`. Sisa direktori bersifat opsional: tambahkan skills, rules, atau subagents sesuai kebutuhan Anda.

1438 1438 

1439<h2 id="explore-the-directory">1439<h2 id="explore-the-directory">

1440 Jelajahi direktori1440 Jelajahi direktori


1452 1452 

1453| File | Lokasi | Tujuan |1453| File | Lokasi | Tujuan |

1454| - | - | - |1454| - | - | - |

1455| `managed-settings.json` | Tingkat sistem, bervariasi menurut OS | Pengaturan yang diberlakukan perusahaan yang tidak dapat Anda ganti, kecuali [pengecualian sempit](/docs/id/settings#security-keys-where-the-stricter-value-applies). Lihat [tempat menyimpan file](/docs/id/managed-settings#deploy-a-managed-settings-file) dan [sumber managed mana yang digunakan Claude Code](/docs/id/managed-settings#precedence-within-the-managed-tier). |1455| `managed-settings.json` | Tingkat sistem, bervariasi menurut OS | Pengaturan yang diberlakukan perusahaan yang tidak dapat ditimpa oleh file pengaturan Anda sendiri maupun nilai `--settings`, kecuali [pengecualian sempit](/docs/id/settings#exceptions-to-managed-settings-precedence). Lihat [tempat menyimpan file](/docs/id/managed-settings#deploy-a-managed-settings-file) dan [sumber terkelola mana yang digunakan Claude Code](/docs/id/managed-settings#precedence-within-the-managed-tier). |

1456| `CLAUDE.local.md` | Akar proyek | Preferensi pribadi Anda untuk proyek ini, dimuat bersama CLAUDE.md. Buatnya secara manual dan tambahkan ke `.gitignore`. |1456| `CLAUDE.local.md` | Akar proyek | Preferensi pribadi Anda untuk proyek ini, dimuat bersama CLAUDE.md. Buatnya secara manual dan tambahkan ke `.gitignore`. |

1457| `AGENTS.md` | Akar proyek, `.claude/`, atau direktori apa pun | Instruksi proyek yang Anda tulis untuk agen coding AI. Claude Code dapat [memuatnya](/docs/id/memory#agents-md) sendiri atau bersama `CLAUDE.md`. |1457| `AGENTS.md` | Akar proyek, `.claude/`, atau direktori apa pun | Instruksi proyek yang Anda tulis untuk agent coding AI. Claude Code dapat [memuatnya](/docs/id/memory#agents-md) sebagai pengganti `CLAUDE.md`. |

1458| Plugin yang diinstal | `~/.claude/plugins` | Marketplace yang dikloning, versi plugin yang diinstal, catatan instalasi `installed_plugins.json`, dan data per-plugin, dikelola oleh perintah `claude plugin`. Plugin yang [disinkronkan dari akun claude.ai Anda](/docs/id/plugins/loading#synced-plugins) diunduh ke `~/.claude/plugins/synced/`. Untuk plugin yang diinstal dari marketplace dengan [`command` source](/docs/id/plugins/marketplace-reference#command-plugin-source) dalam link mode, Claude Code menyimpan link di sini alih-alih salinan, dan file plugin tetap berada di direktori yang dicetak perintah. Sumber `command` memerlukan Claude Code v2.1.229 atau lebih baru. Plugin yang tercantum menurut jalur relatif dalam marketplace yang Anda tambahkan dari jalur lokal juga [dimuat di tempat](/docs/id/plugins/loading#find-plugins-on-disk) dari direktori sumbernya daripada dari salinan cache. Lihat [plugin caching](/docs/id/plugins/loading#find-plugins-on-disk) untuk cara versi yatim piatu dibersihkan. |1458| Plugin yang diinstal | `~/.claude/plugins` | Marketplace yang dikloning, versi plugin yang diinstal, catatan instalasi `installed_plugins.json`, dan data per-plugin, dikelola oleh perintah `claude plugin`. Plugin yang [disinkronkan dari akun claude.ai Anda](/docs/id/plugins/loading#synced-plugins) diunduh ke `~/.claude/plugins/synced/`. Untuk plugin yang diinstal dari marketplace dengan [`command` source](/docs/id/plugins/marketplace-reference#command-plugin-source) dalam link mode, Claude Code menyimpan link di sini alih-alih salinan, dan file plugin tetap berada di direktori yang dicetak perintah. Sumber `command` memerlukan Claude Code v2.1.229 atau lebih baru. Plugin yang tercantum menurut jalur relatif dalam marketplace yang Anda tambahkan dari jalur lokal juga [dimuat di tempat](/docs/id/plugins/loading#find-plugins-on-disk) dari direktori sumbernya daripada dari salinan cache. Lihat [plugin caching](/docs/id/plugins/loading#find-plugins-on-disk) untuk cara versi yatim piatu dibersihkan. |

1459 1459 

1460`~/.claude` juga menyimpan data yang ditulis Claude Code saat Anda bekerja: transkrip, riwayat prompt, snapshot file, cache, dan log. Lihat [application data](#application-data) di bawah.1460`~/.claude` juga menyimpan data yang ditulis Claude Code saat Anda bekerja: transkrip, riwayat prompt, snapshot file, cache, dan log. Lihat [application data](#application-data) di bawah.


1487<Note>1487<Note>

1488 Beberapa hal dapat mengganti apa yang Anda masukkan dalam file ini:1488 Beberapa hal dapat mengganti apa yang Anda masukkan dalam file ini:

1489 1489 

1490 * [Pengaturan yang dikelola](/docs/id/server-managed-settings) yang digunakan oleh organisasi Anda memiliki prioritas di atas segalanya, terlepas dari [pengecualian di bawah Prioritas pengaturan](/docs/id/settings#exceptions-to-managed-settings-precedence)1490 * [Pengaturan terkelola](/docs/id/server-managed-settings) yang diterapkan oleh organisasi Anda diutamakan daripada setiap file pengaturan dan nilai `--settings`, terlepas dari [pengecualian di bawah Prioritas pengaturan](/docs/id/settings#exceptions-to-managed-settings-precedence)

1491 * Bendera CLI seperti `--permission-mode` atau `--settings` mengganti `settings.json` untuk sesi itu1491 * Bendera CLI seperti `--permission-mode` atau `--settings` mengganti `settings.json` untuk sesi itu

1492 * Beberapa variabel lingkungan memiliki prioritas di atas pengaturan yang setara, tetapi ini bervariasi: periksa [referensi variabel lingkungan](/docs/id/env-vars) untuk masing-masing1492 * Beberapa variabel lingkungan memiliki prioritas di atas pengaturan yang setara, tetapi ini bervariasi: periksa [referensi variabel lingkungan](/docs/id/env-vars) untuk masing-masing

1493 1493 

claude-projects.md +29 −29

Details

56 56 

57* **Percakapan project**: satu sesi jangka panjang di mana Claude bertindak sebagai koordinator. Ini mengambil apa yang Anda kirim, memutuskan apa yang menjadi thread, dan melacak setiap thread yang dimulainya. Ini melihat apa yang dilaporkan thread kembali, bukan setiap langkah yang mereka ambil.57* **Percakapan project**: satu sesi jangka panjang di mana Claude bertindak sebagai koordinator. Ini mengambil apa yang Anda kirim, memutuskan apa yang menjadi thread, dan melacak setiap thread yang dimulainya. Ini melihat apa yang dilaporkan thread kembali, bukan setiap langkah yang mereka ambil.

58* **Threads**: para pekerja. Masing-masing adalah sesi terpisah dengan jendela konteks sendiri yang melakukan satu bagian pekerjaan dan melaporkan kembali ke percakapan ketika selesai. Thread cloud bekerja di cabang sendiri dan membuka pull request ketika pekerjaan memanggilnya.58* **Threads**: para pekerja. Masing-masing adalah sesi terpisah dengan jendela konteks sendiri yang melakukan satu bagian pekerjaan dan melaporkan kembali ke percakapan ketika selesai. Thread cloud bekerja di cabang sendiri dan membuka pull request ketika pekerjaan memanggilnya.

59* **Apa yang dimulai setiap cloud thread dengan**:59* **Apa yang dimiliki setiap cloud thread sejak awal**:

60 * Repositori dan file project, ditambah [instruksi dan memori](#give-a-project-standing-context)60 * Repositori dan file project, ditambah [instruksi dan memori](#give-a-project-standing-context) project

61 * `CLAUDE.md` dan skills di [setiap repositori project](#what-threads-pick-up-from-your-repositories), dan di project dengan satu repositori, aturan izin dan hooks repositori itu juga61 * `CLAUDE.md` dan skills di [setiap repositori project](#what-threads-pick-up-from-your-repositories), dan di project dengan satu repositori, aturan izin dan hook repositori itu juga

62 * [Connectors](#get-skills-plugins-connectors-and-tools-into-threads) di akun claude.ai Anda62 * [Konektor](#get-skills-plugins-connectors-and-tools-into-threads) di akun claude.ai Anda

63 * [Cloud environment](#choose-an-environment-for-threads) yang menetapkan akses jaringan, variabel lingkungan, kredensial API, dan alat yang terinstal63 * [Cloud environment](#choose-an-environment-for-threads) yang menetapkan akses jaringan, environment variable, rahasia jaringan, dan alat yang terinstal

64* **Pane Overview**: di mana Anda [melihat semua thread sekaligus](#see-what-needs-you-in-overview) dan mana yang membutuhkan Anda. Tab lainnya adalah **Library** untuk file yang Anda tambahkan dan file yang dihasilkan thread, **Pull requests** untuk yang dibuka thread, dan **Routines** untuk pekerjaan terjadwal di project.64* **Pane Overview**: di mana Anda [melihat semua thread sekaligus](#see-what-needs-you-in-overview) dan mana yang membutuhkan Anda. Tab lainnya adalah **Library** untuk file yang Anda tambahkan dan file yang dihasilkan thread, **Pull requests** untuk yang dibuka thread, dan **Routines** untuk pekerjaan terjadwal di project.

65 65 

66Cloud threads tidak mengambil apa pun dari setup Claude Code di mesin Anda sendiri. [Dapatkan skills, plugins, connectors, dan tools ke dalam threads](#get-skills-plugins-connectors-and-tools-into-threads) mencakup cara memberikan mereka apa yang mereka butuhkan.66Cloud threads tidak mengambil apa pun dari setup Claude Code di mesin Anda sendiri. [Dapatkan skills, plugins, connectors, dan tools ke dalam threads](#get-skills-plugins-connectors-and-tools-into-threads) mencakup cara memberikan mereka apa yang mereka butuhkan.


92 92 

93* **Paket**: Anda berada di Pro atau Max dan **Projects** ditampilkan di sidebar Anda.93* **Paket**: Anda berada di Pro atau Max dan **Projects** ditampilkan di sidebar Anda.

94* **GitHub, jika project akan bekerja pada kode**: kode Anda ada di github.com daripada GitHub Enterprise Server, GitLab, atau Bitbucket, akun GitHub yang terhubung memiliki akses push ke kode, dan Claude GitHub App terinstal di atasnya. Jika Anda menghubungkan GitHub dengan [`/web-setup`](/docs/id/web-quickstart#connect-from-your-terminal), token itu memungkinkan sesi cloud lain Anda menjangkau repositori tetapi tidak cukup untuk thread project, yang membutuhkan Claude GitHub App. [Atur akses GitHub](#set-up-github-access) memiliki langkah-langkahnya.94* **GitHub, jika project akan bekerja pada kode**: kode Anda ada di github.com daripada GitHub Enterprise Server, GitLab, atau Bitbucket, akun GitHub yang terhubung memiliki akses push ke kode, dan Claude GitHub App terinstal di atasnya. Jika Anda menghubungkan GitHub dengan [`/web-setup`](/docs/id/web-quickstart#connect-from-your-terminal), token itu memungkinkan sesi cloud lain Anda menjangkau repositori tetapi tidak cukup untuk thread project, yang membutuhkan Claude GitHub App. [Atur akses GitHub](#set-up-github-access) memiliki langkah-langkahnya.

95* **Jaringan, kredensial, dan alat**: untuk thread cloud, ini berasal dari [cloud environment](#choose-an-environment-for-threads) project. Environment default sudah menjangkau [registri paket umum](/docs/id/cloud-environments#default-allowed-domains), jadi periksa ini hanya jika pekerjaan membutuhkan domain lain, rahasia, atau alat yang tidak terinstal sebelumnya. Jika pekerjaan membutuhkan server MCP, periksa bahwa itu ditampilkan sebagai terhubung di [connectors claude.ai](https://claude.ai/customize/connectors) Anda.95* **Jaringan, rahasia, dan alat**: untuk thread cloud, ini berasal dari [cloud environment](#choose-an-environment-for-threads) project. Environment default sudah menjangkau [registri paket umum](/docs/id/cloud-environments#default-allowed-domains), jadi periksa ini hanya jika pekerjaan membutuhkan domain lain, rahasia, atau alat yang tidak terinstal sebelumnya. Jika pekerjaan membutuhkan server MCP, periksa bahwa itu ditampilkan sebagai terhubung di [konektor claude.ai](https://claude.ai/customize/connectors) Anda.

96 96 

97<h3 id="start-a-new-project-from-scratch">97<h3 id="start-a-new-project-from-scratch">

98 Mulai project baru dari awal98 Mulai project baru dari awal


333Project instructions adalah brief yang dimulai setiap thread baru. Klik ikon gear di header project untuk membuka **Project settings**, lalu buka **Memory > Project instructions**. Brief yang berguna mencakup:333Project instructions adalah brief yang dimulai setiap thread baru. Klik ikon gear di header project untuk membuka **Project settings**, lalu buka **Memory > Project instructions**. Brief yang berguna mencakup:

334 334 

335* Apa project itu untuk335* Apa project itu untuk

336* Di mana pekerjaan terjadi: repositori mana, cabang mana yang dimulai, cara memberi nama pull request336* Di mana pekerjaan terjadi: repositori mana, branch mana yang dimulai, cara memberi nama pull request

337* Bagaimana thread memeriksa pekerjaannya sendiri sebelum menyebutnya selesai337* Bagaimana thread memeriksa pekerjaannya sendiri sebelum menyebutnya selesai

338* Apa yang harus dilakukan ketika sesuatu yang dibutuhkan hilang338* Apa yang harus dilakukan ketika sesuatu yang dibutuhkan hilang

339* Apa yang membutuhkan persetujuan Anda terlebih dahulu339* Apa yang membutuhkan persetujuan Anda terlebih dahulu


345 345 

346- Branch dari main dan buka satu draft pull request per thread.346- Branch dari main dan buka satu draft pull request per thread.

347- Sebelum Anda menyebut pekerjaan selesai, jalankan `make test` dan `make lint` dan tempel baris ringkasan dalam pesan terakhir Anda.347- Sebelum Anda menyebut pekerjaan selesai, jalankan `make test` dan `make lint` dan tempel baris ringkasan dalam pesan terakhir Anda.

348- Jika Anda tidak dapat menjangkau sesuatu yang Anda butuhkan, seperti repositori, rahasia, API, atau connector, katakan dengan tepat apa yang hilang dalam pesan pertama Anda dan berhenti. Jangan ganti, mock, atau tebak.348- Jika Anda tidak dapat menjangkau sesuatu yang Anda butuhkan, seperti repositori, rahasia, API, atau konektor, katakan dengan tepat apa yang hilang dalam pesan pertama Anda dan berhenti. Jangan ganti, mock, atau tebak.

349- Jangan merge, force-push, atau ubah konfigurasi CI tanpa bertanya kepada saya di thread.349- Jangan merge, force-push, atau ubah konfigurasi CI tanpa bertanya kepada saya di thread.

350```350```

351 351 

352Aturan tentang satu repositori, seperti perintah buildnya, termasuk dalam `CLAUDE.md` repositori itu, yang dibaca setiap thread cloud ketika repositori adalah bagian dari project. Setelah pekerjaan sedang berlangsung, ketika Anda mengoreksi thread, juga beri tahu Claude untuk mengingat koreksi: itu masuk ke [project memory](#give-a-project-standing-context) dan thread yang lebih baru dimulai dengannya.352Aturan tentang satu repositori, seperti perintah build-nya, termasuk dalam `CLAUDE.md` repositori itu, yang dibaca setiap thread cloud ketika repositori adalah bagian dari project. Setelah pekerjaan sedang berlangsung, ketika Anda mengoreksi thread, juga beri tahu Claude untuk mengingat koreksi: itu masuk ke [project memory](#give-a-project-standing-context) dan thread cloud yang lebih baru dimulai dengannya.

353 353 

354<h3 id="decide-which-repositories-to-add">354<h3 id="decide-which-repositories-to-add">

355 Tentukan repositori mana yang akan ditambahkan355 Tentukan repositori mana yang akan ditambahkan


357 357 

358Repositori yang Anda tambahkan ke project datang dengan semua yang ada di dalamnya, kode, `CLAUDE.md`, dan skills, di setiap thread cloud. Repositori yang tidak Anda tambahkan masih dalam jangkauan: thread cloud dapat menambahkan satu ke dirinya sendiri ketika tugasnya membutuhkannya. Sebagian besar project menggunakan keduanya:358Repositori yang Anda tambahkan ke project datang dengan semua yang ada di dalamnya, kode, `CLAUDE.md`, dan skills, di setiap thread cloud. Repositori yang tidak Anda tambahkan masih dalam jangkauan: thread cloud dapat menambahkan satu ke dirinya sendiri ketika tugasnya membutuhkannya. Sebagian besar project menggunakan keduanya:

359 359 

360* **Tambahkan ke project**, di dialog **New project**, di **Project settings > Environment**, atau dengan meminta Claude dalam percakapan untuk menambahkannya ke project. Setiap thread dari saat itu mengklonnya dan dimulai dengan `CLAUDE.md` dan skills-nya dimuat, terlepas dari apakah tugas menyentuhnya. Pergi dari satu repositori ke beberapa juga mengubah apa yang diambil thread dari `.claude/settings.json` setiap repositori; lihat [Apa yang diambil thread dari repositori Anda](#what-threads-pick-up-from-your-repositories).360* **Tambahkan ke project**, di dialog **New project**, di **Project settings > Environment**, atau dengan meminta Claude dalam percakapan untuk menambahkannya ke project. Setiap thread cloud dari saat itu mengklonnya dan dimulai dengan `CLAUDE.md` dan skills-nya dimuat, terlepas dari apakah tugas menyentuhnya. Beralih dari satu repositori ke beberapa juga mengubah apa yang diambil thread dari `.claude/settings.json` setiap repositori; lihat [Apa yang diambil thread dari repositori Anda](#what-threads-pick-up-from-your-repositories).

361* **Biarkan off dan biarkan thread menambahkannya ketika diperlukan.** Thread cloud yang tugasnya membutuhkan repositori yang tidak dimiliki project dapat menambahkannya ke dirinya sendiri, dan catatan dalam thread mengatakan itu ditambahkan ke thread ini saja. Klon terjadi setengah jalan melalui tugas, jadi `CLAUDE.md` dan skills repositori itu tidak ada ketika thread dimulai. Thread berikutnya dimulai tanpanya lagi. Repositori yang ditambahkan dengan cara ini membutuhkan [prasyarat](#check-the-prerequisites) yang sama dengan repositori project: Claude GitHub App diinstal di atasnya dan akses push dari akun GitHub Anda.361* **Jangan tambahkan dan biarkan thread menambahkannya ketika diperlukan.** Thread cloud yang tugasnya membutuhkan repositori yang tidak dimiliki project dapat menambahkannya ke dirinya sendiri, dan catatan dalam thread mengatakan itu ditambahkan ke thread ini saja. Klon terjadi di tengah tugas, jadi `CLAUDE.md` dan skills repositori itu tidak ada ketika thread dimulai. Thread berikutnya dimulai tanpanya. Repositori yang ditambahkan dengan cara ini membutuhkan [prasyarat](#check-the-prerequisites) yang sama dengan repositori project: Claude GitHub App diinstal di atasnya dan akses push dari akun GitHub Anda.

362 362 

363Project tidak membutuhkan repositori sama sekali. Thread-nya masih dapat meneliti, menulis dokumen, dan menulis dan menjalankan kode di sandbox mereka sendiri, dan mereka memberikan file ke tab **Library**. Thread di sana juga dapat menambahkan repositori ke dirinya sendiri ketika tugas memanggilnya.363Project tidak membutuhkan repositori sama sekali. Thread cloud-nya masih dapat meneliti, menulis dokumen, dan menulis dan menjalankan kode di sandbox mereka sendiri, dan mereka memberikan file ke tab **Library**. Thread cloud mana pun di project itu tetap dapat menambahkan repositori ke dirinya sendiri ketika tugas membutuhkannya.

364 364 

365Setelah project memiliki repositori, Claude hanya dapat menambahkan repositori dari pemilik GitHub yang sudah digunakan project, apakah menambahkan satu ke project atau thread menambahkan satu ke dirinya sendiri. Untuk membawa repositori dari pemilik berbeda, tambahkan sendiri di **Project settings > Environment**.365Setelah project memiliki repositori, Claude hanya dapat menambahkan repositori dari pemilik GitHub yang sudah digunakan project, apakah menambahkan satu ke project atau thread menambahkan satu ke dirinya sendiri. Untuk membawa repositori dari pemilik berbeda, tambahkan sendiri ke project di **Project settings > Environment**.

366 366 

367Untuk project yang mencakup banyak repositori, seperti satu fitur dengan kode server, web, mobile, dan desktop, tambahkan satu atau dua repositori yang hampir setiap tugas sentuh dan beri nama yang lain di [project instructions](#write-project-instructions) sehingga Claude tahu di mana sisa kode berada. Thread kemudian dimulai kecil dan menarik repositori lain hanya untuk tugas yang membutuhkannya.367Untuk project yang mencakup banyak repositori, seperti satu fitur dengan kode server, web, mobile, dan desktop, tambahkan satu atau dua repositori yang hampir setiap tugas sentuh dan sebutkan yang lain di [project instructions](#write-project-instructions) sehingga Claude tahu di mana sisa kode berada. Thread cloud kemudian dimulai kecil dan menarik repositori lain hanya untuk tugas yang membutuhkannya.

368 368 

369<h3 id="add-files-and-folders">369<h3 id="add-files-and-folders">

370 Tambahkan file dan folder370 Tambahkan file dan folder


381 Apa yang diambil thread dari repositori Anda381 Apa yang diambil thread dari repositori Anda

382</h3>382</h3>

383 383 

384Setiap thread cloud mengkloning setiap repositori dalam project dan memuat `CLAUDE.md` dan skills dari semuanya. Permission rules, hooks, dan `env` hanya datang dari `.claude/settings.json` di direktori tempat thread dimulai: di dalam repositori ketika project memiliki satu, dan di atas klon ketika memiliki beberapa, di mana file repositori tidak dibaca untuk mereka.384Setiap thread cloud mengkloning setiap repositori dalam project dan memuat `CLAUDE.md` dan skills dari semuanya. Aturan izin, hook, dan `env` hanya datang dari `.claude/settings.json` di direktori tempat thread dimulai: di dalam repositori ketika project memiliki satu, dan di atas klon ketika memiliki beberapa, di mana file repositori mana pun tidak dibaca untuk hal tersebut.

385 385 

386| Di setiap repositori | Satu repositori | Beberapa repositori |386| Di setiap repositori | Satu repositori | Beberapa repositori |

387| :- | :- | :- |387| :- | :- | :- |

388| `CLAUDE.md` | Dimuat ketika thread dimulai | Dimuat dari setiap repositori ketika thread dimulai |388| `CLAUDE.md` | Dimuat ketika thread dimulai | Dimuat dari setiap repositori ketika thread dimulai |

389| Skills, agents, dan commands di bawah `.claude/` | Dimuat | Dimuat dari setiap repositori |389| Skills, agent, dan perintah di bawah `.claude/` | Dimuat | Dimuat dari setiap repositori |

390| Plugins yang diaktifkan di `.claude/settings.json` | Tidak dimuat. Tambahkan plugin di **Project settings > Plugins** sebagai gantinya | Tidak dimuat. Tambahkan plugin di **Project settings > Plugins** sebagai gantinya |390| Plugin yang diaktifkan di `.claude/settings.json` | Tidak dimuat. Tambahkan plugin di **Project settings > Plugins** sebagai gantinya | Tidak dimuat. Tambahkan plugin di **Project settings > Plugins** sebagai gantinya |

391| Permission rules, hooks, dan `env` yang didefinisikan di `.claude/settings.json` | Berlaku untuk thread, kecuali kunci `env` yang [tidak dihormati sesi cloud apa pun](/docs/id/cloud-environments#what-carries-over-from-your-setup) | Tidak berlaku |391| Aturan izin, hook, dan `env` yang didefinisikan di `.claude/settings.json` | Berlaku untuk thread, kecuali kunci `env` yang [tidak dihormati sesi cloud apa pun](/docs/id/cloud-environments#what-carries-over-from-your-setup) | Tidak berlaku |

392 392 

393Dalam project dengan beberapa repositori, setiap klon dilampirkan ke thread sebagai [direktori tambahan](/docs/id/memory#load-from-additional-directories) dengan pemuatan `CLAUDE.md` diaktifkan, itulah mengapa `CLAUDE.md` dan skills setiap repositori dimuat saat mulai meskipun thread dimulai di atasnya. Dalam project dengan beberapa repositori, masukkan aturan berdiri di project instructions dan berikan thread variabel lingkungan melalui [cloud environment](#choose-an-environment-for-threads).393Dalam project dengan beberapa repositori, setiap klon dilampirkan ke thread sebagai [direktori tambahan](/docs/id/memory#load-from-additional-directories) dengan pemuatan `CLAUDE.md` diaktifkan, itulah mengapa `CLAUDE.md` dan skills setiap repositori dimuat saat mulai meskipun thread dimulai di atasnya. Dalam project seperti itu, masukkan aturan berdiri di project instructions dan berikan thread environment variable melalui [cloud environment](#choose-an-environment-for-threads).

394 394 

395<h3 id="choose-an-environment-for-threads">395<h3 id="choose-an-environment-for-threads">

396 Pilih environment untuk thread396 Pilih environment untuk thread

397</h3>397</h3>

398 398 

399Setiap thread cloud baru dimulai dalam [cloud environment](/docs/id/cloud-environments) project. Environment menetapkan domain mana yang dapat dijangkau thread, variabel lingkungan mana yang mereka miliki, kredensial API mana yang ditambahkan ke permintaan mereka, dan apa yang diinstal skrip setup sebelum Claude dimulai. Thread cloud menggunakan environment default yang dihosting Anthropic sampai Anda memilih satu di **Project settings > Environment**.399Setiap thread cloud baru dimulai dalam [cloud environment](/docs/id/cloud-environments) project. Environment menetapkan domain mana yang dapat dijangkau thread, environment variable mana yang mereka miliki, network secret mana yang ditambahkan ke permintaan mereka, dan apa yang diinstal skrip setup sebelum Claude dimulai. Thread cloud menggunakan environment default yang dihosting Anthropic sampai Anda memilih satu di **Project settings > Environment**.

400 400 

401Jika thread cloud perlu menjangkau API internal atau registri paket pribadi, atau membutuhkan token yang biasanya disimpan mesin Anda, ubah environment daripada project: lihat [Network access](/docs/id/cloud-environments#network-access), [Add API credentials](/docs/id/cloud-environments#add-api-credentials), dan [Setup scripts](/docs/id/cloud-environments#setup-scripts).401Jika thread cloud perlu menjangkau API internal atau registri paket pribadi, atau membutuhkan token yang biasanya disimpan mesin Anda, ubah environment daripada project: lihat [Network access](/docs/id/cloud-environments#network-access), [Add network secrets](/docs/id/cloud-environments#add-api-credentials), dan [Setup scripts](/docs/id/cloud-environments#setup-scripts).

402 402 

403<h3 id="get-skills-plugins-connectors-and-tools-into-threads">403<h3 id="get-skills-plugins-connectors-and-tools-into-threads">

404 Dapatkan skills, plugins, connectors, dan tools ke dalam threads404 Dapatkan skills, plugin, konektor, dan tool ke dalam thread

405</h3>405</h3>

406 406 

407Thread cloud tidak memiliki skills, server MCP, plugins, dan tools yang diinstal hanya di mesin Anda. Thread yang Claude jalankan di mesin Anda melalui [Remote Control](/docs/id/remote-control) menggunakan apa yang diinstal di sana. Untuk membuat masing-masing tersedia untuk thread cloud:407Thread cloud tidak memiliki skills, server MCP, plugin, dan tool yang diinstal hanya di mesin Anda. Thread yang Claude jalankan di mesin Anda melalui [Remote Control](/docs/id/remote-control) menggunakan apa yang diinstal di sana. Untuk membuat masing-masing tersedia untuk thread cloud:

408 408 

409* Skills, subagents, dan commands: commit ke repositori yang Anda tambahkan ke project, misalnya skill di `.claude/skills/<skill-name>/SKILL.md`. Setiap thread cloud mengkloning setiap repositori dalam project dan memuat `.claude/skills/`, `.claude/agents/`, dan `.claude/commands/` dari masing-masing, jadi skill yang dicommit ke satu repositori tersedia di setiap thread cloud. Thread cloud juga memuat skills yang Anda aktifkan untuk akun claude.ai Anda.409* Skills, subagent, dan perintah: commit ke repositori yang Anda tambahkan ke project, misalnya skill di `.claude/skills/<skill-name>/SKILL.md`. Setiap thread cloud mengkloning setiap repositori dalam project dan memuat `.claude/skills/`, `.claude/agents/`, dan `.claude/commands/` dari masing-masing, jadi skill yang di-commit ke satu repositori tersedia di setiap thread cloud. Thread cloud juga memuat skills yang Anda aktifkan untuk akun claude.ai Anda.

410* Plugins: tambahkan di **Project settings > Plugins**; mereka dimuat ke setiap thread cloud baru. Plugins yang dideklarasikan repositori di `.claude/settings.json`-nya [tidak dimuat dalam thread cloud](/docs/id/cloud-environments#what-carries-over-from-your-setup).410* Plugin: tambahkan di **Project settings > Plugins**; mereka dimuat ke setiap thread cloud baru. Plugin yang dideklarasikan repositori di `.claude/settings.json`-nya [tidak dimuat dalam thread cloud](/docs/id/cloud-environments#what-carries-over-from-your-setup).

411* Server MCP: thread cloud mendapatkan alat MCP mereka dari connectors di akun claude.ai Anda, yang merupakan server MCP yang Anda hubungkan sekali di [claude.ai/customize/connectors](https://claude.ai/customize/connectors) atau melalui link **Manage connectors** di **Project settings > Environment**. Setiap thread cloud dapat menggunakan semuanya tanpa setup per-project. Percakapan project itu sendiri tidak memiliki connectors, jadi kirim pekerjaan yang membutuhkan satu sebagai tugas untuk thread cloud. Dalam project dengan satu repositori, thread cloud juga memuat server MCP dari [`.mcp.json`](/docs/id/cloud-environments#what-carries-over-from-your-setup) repositori itu. [Bagaimana connectors mencapai Claude Code](/docs/id/mcp#how-connectors-reach-claude-code) mencantumkan aturan untuk sesi cloud dan pengaturan yang mematikan connectors.411* Server MCP: thread cloud mendapatkan tool MCP mereka dari konektor di akun claude.ai Anda, yang merupakan server MCP yang Anda hubungkan sekali di [claude.ai/customize/connectors](https://claude.ai/customize/connectors) atau melalui link **Manage connectors** di **Project settings > Environment**. Setiap thread cloud dapat menggunakan semuanya tanpa setup per-project. Percakapan project itu sendiri tidak memiliki konektor, jadi kirim pekerjaan yang membutuhkan konektor sebagai tugas untuk thread cloud. Dalam project dengan satu repositori, thread cloud juga memuat server MCP dari [`.mcp.json`](/docs/id/cloud-environments#what-carries-over-from-your-setup) repositori itu. [Bagaimana konektor mencapai Claude Code](/docs/id/mcp#how-connectors-reach-claude-code) mencantumkan aturan untuk sesi cloud dan pengaturan yang mematikan konektor.

412* Command-line tools dan packages: instal di [setup script](/docs/id/cloud-environments#setup-scripts) environment.412* Tool command-line dan paket: instal di [setup script](/docs/id/cloud-environments#setup-scripts) environment.

413 413 

414Untuk melihat connectors mana yang dimiliki thread cloud yang sedang berjalan di claude.ai/code, buka thread dan pilih **Connectors** dari menu **+** di samping kotak pesannya. Mematikan connector di sana menghapusnya dari thread itu dan menyimpannya sebagai default akun Anda, jadi thread baru dan chat claude.ai dimulai tanpanya sampai Anda menyalakannya kembali. Thread cloud mengambil connector yang Anda tambahkan atau hubungkan kembali setelah pesan berikutnya yang Anda kirimkan.414Untuk melihat konektor mana yang dimiliki thread cloud yang sedang berjalan di claude.ai/code, buka thread dan pilih **Connectors** dari menu **+** di samping kotak pesannya. Mematikan konektor di sana menghapusnya dari thread itu dan menyimpannya sebagai default akun Anda, jadi thread baru dan obrolan claude.ai dimulai tanpanya sampai Anda menyalakannya kembali. Thread cloud mengambil konektor yang Anda tambahkan atau hubungkan kembali setelah pesan berikutnya yang Anda kirimkan.

415 415 

416<h2 id="project-settings-reference">416<h2 id="project-settings-reference">

417 Referensi pengaturan project417 Referensi pengaturan project


590</h2>590</h2>

591 591 

592* [Gunakan Claude Code di cloud](/docs/id/claude-code-on-the-web): bagaimana sesi cloud di balik setiap thread bekerja, termasuk opsi akses GitHub dan auto-fix pada pull request592* [Gunakan Claude Code di cloud](/docs/id/claude-code-on-the-web): bagaimana sesi cloud di balik setiap thread bekerja, termasuk opsi akses GitHub dan auto-fix pada pull request

593* [Konfigurasi cloud environments](/docs/id/cloud-environments): ubah apa yang dapat dijangkau thread di jaringan, berikan mereka variabel lingkungan dan kredensial API, dan instal alat dengan skrip setup593* [Konfigurasi cloud environments](/docs/id/cloud-environments): ubah apa yang dapat dijangkau thread cloud di jaringan, berikan mereka environment variable dan rahasia jaringan, dan instal alat dengan skrip setup

594* [Otomatisasi pekerjaan dengan routines](/docs/id/routines): jadwal, pemicu, dan manajemen untuk routine, termasuk yang dibuat Claude dari project594* [Otomatisasi pekerjaan dengan routines](/docs/id/routines): jadwal, pemicu, dan manajemen untuk routine, termasuk yang dibuat Claude dari project

595* [Kelola beberapa agen dengan agent view](/docs/id/agent-view): jalankan dan lacak beberapa sesi di mesin Anda sendiri ketika pekerjaan membutuhkan alat atau layanan yang hanya dapat dijangkau mesin Anda595* [Kelola beberapa agen dengan agent view](/docs/id/agent-view): jalankan dan lacak beberapa sesi di mesin Anda sendiri ketika pekerjaan membutuhkan alat atau layanan yang hanya dapat dijangkau mesin Anda

596* [Projects redesigned: from folder to conversation](https://claude.com/blog/projects-redesigned): pengumuman peluncuran, dengan pemikiran di balik membuat project menjadi percakapan dengan Claude596* [Projects redesigned: from folder to conversation](https://claude.com/blog/projects-redesigned): pengumuman peluncuran, dengan pemikiran di balik membuat project menjadi percakapan dengan Claude

Details

31| `claude attach <id\|name>` | Lampirkan ke [sesi latar belakang](/docs/id/agent-view#manage-sessions-from-the-shell) di terminal ini. Meneruskan sebagian nama sesi yang sedang berjalan sebagai pengganti ID memerlukan Claude Code v2.1.290 atau lebih baru | `claude attach 7c5dcf5d` |31| `claude attach <id\|name>` | Lampirkan ke [sesi latar belakang](/docs/id/agent-view#manage-sessions-from-the-shell) di terminal ini. Meneruskan sebagian nama sesi yang sedang berjalan sebagai pengganti ID memerlukan Claude Code v2.1.290 atau lebih baru | `claude attach 7c5dcf5d` |

32| `claude auto-mode defaults` | Cetak aturan pengklasifikasi [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) bawaan sebagai JSON. Gunakan `claude auto-mode config` untuk melihat konfigurasi efektif Anda dengan pengaturan yang diterapkan. `--label <prefix>` mencetak hanya aturan yang labelnya dimulai dengan awalan tersebut, cocok tanpa memperhatikan huruf besar-kecil. Memerlukan Claude Code v2.1.208 atau lebih baru | `claude auto-mode defaults --label 'Git Destructive'` |32| `claude auto-mode defaults` | Cetak aturan pengklasifikasi [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) bawaan sebagai JSON. Gunakan `claude auto-mode config` untuk melihat konfigurasi efektif Anda dengan pengaturan yang diterapkan. `--label <prefix>` mencetak hanya aturan yang labelnya dimulai dengan awalan tersebut, cocok tanpa memperhatikan huruf besar-kecil. Memerlukan Claude Code v2.1.208 atau lebih baru | `claude auto-mode defaults --label 'Git Destructive'` |

33| `claude auto-mode reset` | Pulihkan konfigurasi [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) default dengan menghapus bagian `autoMode` dari file pengaturan pengguna Anda. Meminta konfirmasi sebelum menulis; lewatkan `-y`/`--yes` untuk melewati prompt. Aturan dari [pengaturan terkelola](/docs/id/server-managed-settings) atau flag `--settings` masih berlaku. Memerlukan Claude Code v2.1.212 atau lebih baru. Lihat [Periksa default dan konfigurasi efektif Anda](/docs/id/auto-mode-config#inspect-the-defaults-and-your-effective-config) | `claude auto-mode reset --yes` |33| `claude auto-mode reset` | Pulihkan konfigurasi [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) default dengan menghapus bagian `autoMode` dari file pengaturan pengguna Anda. Meminta konfirmasi sebelum menulis; lewatkan `-y`/`--yes` untuk melewati prompt. Aturan dari [pengaturan terkelola](/docs/id/server-managed-settings) atau flag `--settings` masih berlaku. Memerlukan Claude Code v2.1.212 atau lebih baru. Lihat [Periksa default dan konfigurasi efektif Anda](/docs/id/auto-mode-config#inspect-the-defaults-and-your-effective-config) | `claude auto-mode reset --yes` |

34| `claude daemon logs` | Ikuti file log [supervisor](/docs/id/agent-view#the-supervisor-process) sesi latar belakang, `~/.claude/daemon.log`, dengan mencetak baris baru saat muncul hingga Anda menekan `Ctrl+C` | `claude daemon logs` |

35| `claude daemon run` | Jalankan [supervisor](/docs/id/agent-view#the-supervisor-process) sesi latar belakang di latar depan terminal ini, dengan mencetak log-nya | `claude daemon run` |

34| `claude daemon status` | Cetak status [supervisor](/docs/id/agent-view#the-supervisor-process) sesi latar belakang, versi, direktori soket, dan jumlah pekerja untuk diagnostik. Keluar dengan 1 jika supervisor tidak berjalan | `claude daemon status` |36| `claude daemon status` | Cetak status [supervisor](/docs/id/agent-view#the-supervisor-process) sesi latar belakang, versi, direktori soket, dan jumlah pekerja untuk diagnostik. Keluar dengan 1 jika supervisor tidak berjalan | `claude daemon status` |

35| `claude daemon stop --any` | Hentikan [supervisor](/docs/id/agent-view#the-supervisor-process) sesi latar belakang dan sesi yang dihosting. Lewatkan `--keep-workers` untuk membiarkan sesi latar belakang tetap berjalan sehingga supervisor berikutnya dapat terhubung kembali ke sesi tersebut. `--any` mengonfirmasi penghentian supervisor sesuai permintaan, yang merupakan default. Gunakan ini untuk pulih dari [supervisor yang tidak responsif](/docs/id/agent-view#agent-view-says-the-background-service-did-not-respond) | `claude daemon stop --any --keep-workers` |37| `claude daemon stop --any` | Hentikan [supervisor](/docs/id/agent-view#the-supervisor-process) sesi latar belakang dan sesi yang dihosting. Lewatkan `--keep-workers` untuk membiarkan sesi latar belakang tetap berjalan sehingga supervisor berikutnya dapat terhubung kembali ke sesi tersebut. `--any` mengonfirmasi penghentian supervisor sesuai permintaan, yang merupakan default. Gunakan ini untuk pulih dari [supervisor yang tidak responsif](/docs/id/agent-view#agent-view-says-the-background-service-did-not-respond) | `claude daemon stop --any --keep-workers` |

36| `claude doctor` | Cetak diagnostik instalasi dan pengaturan read-only dari terminal tanpa memulai sesi, termasuk kesehatan instalasi, kesalahan validasi file pengaturan, dan kelayakan Remote Control. Untuk pemeriksaan pengaturan dalam sesi yang juga dapat menerapkan perbaikan, jalankan [`/doctor`](/docs/id/commands#all-commands) | `claude doctor` |38| `claude doctor` | Cetak diagnostik instalasi dan pengaturan read-only dari terminal tanpa memulai sesi, termasuk kesehatan instalasi, kesalahan validasi file pengaturan, dan kelayakan Remote Control. Untuk pemeriksaan pengaturan dalam sesi yang juga dapat menerapkan perbaikan, jalankan [`/doctor`](/docs/id/commands#all-commands) | `claude doctor` |

Details

10 Lingkungan cloud berlaku untuk [sesi cloud](/docs/id/claude-code-on-the-web), yang tersedia pada paket Pro, Max, dan Team, serta untuk pengguna Enterprise dengan [kursi premium atau kursi Chat + Claude Code](https://support.claude.com/en/articles/11845131-use-claude-code-with-your-team-or-enterprise-plan).10 Lingkungan cloud berlaku untuk [sesi cloud](/docs/id/claude-code-on-the-web), yang tersedia pada paket Pro, Max, dan Team, serta untuk pengguna Enterprise dengan [kursi premium atau kursi Chat + Claude Code](https://support.claude.com/en/articles/11845131-use-claude-code-with-your-team-or-enterprise-plan).

11</Note>11</Note>

12 12 

13Setiap [sesi cloud](/docs/id/claude-code-on-the-web) berjalan di lingkungan cloud. Anda dapat mengonfigurasi lingkungan untuk mengizinkan atau menolak [akses jaringan](#access-levels), [menetapkan variabel lingkungan](#set-environment-variables) untuk sesi, pada paket Pro dan Max menyimpan [kredensial API](#add-api-credentials) yang digunakan sesi tanpa melihatnya, dan menjalankan [skrip setup](#setup-scripts) sebelum Claude mulai bekerja.13Setiap [sesi cloud](/docs/id/claude-code-on-the-web) berjalan di lingkungan cloud. Anda dapat mengonfigurasi lingkungan untuk mengizinkan atau menolak [akses jaringan](#access-levels), [menetapkan environment variable](#set-environment-variables) untuk sesi, pada paket Pro dan Max menyimpan [rahasia jaringan](#add-api-credentials) yang digunakan sesi tanpa melihatnya, dan menjalankan [skrip setup](#setup-scripts) sebelum Claude mulai bekerja.

14 14 

15Lingkungan yang sama berlaku di mana pun Anda memulai sesi cloud: [aplikasi Desktop](/docs/id/desktop), [aplikasi mobile Claude](/docs/id/mobile), browser Anda di [claude.ai/code](https://claude.ai/code), terminal dengan [`claude --cloud`](/docs/id/claude-code-on-the-web#from-terminal-to-cloud), [routines](/docs/id/routines), dan [Claude Tag](https://claude.com/docs/claude-tag/overview). Setiap permukaan ini juga dapat mengarahkan ke [lingkungan yang di-host sendiri](/docs/id/self-hosted-environments). [Ketersediaan dan batasan](/docs/id/self-hosted-environments#availability-and-limitations) mencakup apa yang Claude belum dapat gunakan ketika sesi Claude Tag berjalan di dalamnya.15Lingkungan yang sama berlaku di mana pun Anda memulai sesi cloud: [aplikasi Desktop](/docs/id/desktop), [aplikasi mobile Claude](/docs/id/mobile), browser Anda di [claude.ai/code](https://claude.ai/code), terminal dengan [`claude --cloud`](/docs/id/claude-code-on-the-web#from-terminal-to-cloud), [routines](/docs/id/routines), dan [Claude Tag](https://claude.com/docs/claude-tag/overview). Setiap permukaan ini juga dapat mengarahkan ke [lingkungan yang di-host sendiri](/docs/id/self-hosted-environments). [Ketersediaan dan batasan](/docs/id/self-hosted-environments#availability-and-limitations) mencakup apa yang Claude belum dapat gunakan ketika sesi Claude Tag berjalan di dalamnya.

16 16 


58 <Step title="Tambahkan atau edit lingkungan">58 <Step title="Tambahkan atau edit lingkungan">

59 Pilih **Cloud** untuk membuat daftar lingkungan Anda. Kemudian pilih **Add cloud environment**, atau arahkan ke lingkungan yang ada dan pilih ikon pengaturan yang muncul di sebelah kanan.59 Pilih **Cloud** untuk membuat daftar lingkungan Anda. Kemudian pilih **Add cloud environment**, atau arahkan ke lingkungan yang ada dan pilih ikon pengaturan yang muncul di sebelah kanan.

60 60 

61 Dialog mencakup nama, tingkat akses jaringan, variabel lingkungan, dan skrip setup. Ketika Anda mengedit lingkungan cloud yang ada pada paket Pro atau Max, dialog juga mencakup [kredensial API](#add-api-credentials).61 Dialog mencakup nama, tingkat akses jaringan, environment variable, dan skrip setup. Ketika Anda mengedit lingkungan cloud yang ada pada paket Pro atau Max, dialog juga mencakup [rahasia jaringan](#add-api-credentials).

62 62 

63 <Frame>63 <Frame>

64 <img src="https://mintcdn.com/claude-code/ZFId6l95856c5LSw/images/cloud-environment-dialog.png?fit=max&auto=format&n=ZFId6l95856c5LSw&q=85&s=30d4478b31d1f879f7ee287ddab32505" alt="Dialog New cloud environment. Bidang Name dengan placeholder Default, pemilih Network access yang diatur ke Trusted dengan tautan ke kebijakan jaringan dan tingkat akses, kotak Environment variables yang menampilkan teks placeholder format .env dengan catatan bahwa nilai terlihat oleh siapa pun yang menggunakan lingkungan, kotak Setup script yang dijelaskan sebagai skrip Bash yang berjalan ketika sesi baru dimulai sebelum Claude Code diluncurkan, dan tombol Cancel dan Create environment." width="874" height="1372" data-path="images/cloud-environment-dialog.png" />64 <img src="https://mintcdn.com/claude-code/ZFId6l95856c5LSw/images/cloud-environment-dialog.png?fit=max&auto=format&n=ZFId6l95856c5LSw&q=85&s=30d4478b31d1f879f7ee287ddab32505" alt="Dialog New cloud environment. Bidang Name dengan placeholder Default, pemilih Network access yang diatur ke Trusted dengan tautan ke kebijakan jaringan dan tingkat akses, kotak Environment variables yang menampilkan teks placeholder format .env dengan catatan bahwa nilai terlihat oleh siapa pun yang menggunakan lingkungan, kotak Setup script yang dijelaskan sebagai skrip Bash yang berjalan ketika sesi baru dimulai sebelum Claude Code diluncurkan, dan tombol Cancel dan Create environment." width="874" height="1372" data-path="images/cloud-environment-dialog.png" />


91 91 

92Sesi cloud juga menetapkan beberapa variabel sendiri ketika memulai. Untuk [`CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`](/docs/id/claude-code-on-the-web#manage-context), nilai yang ditetapkan sesi menimpa nilai yang Anda tambahkan di sini, jadi menambahkan kunci itu di sini tidak berpengaruh.92Sesi cloud juga menetapkan beberapa variabel sendiri ketika memulai. Untuk [`CLAUDE_AUTOCOMPACT_PCT_OVERRIDE`](/docs/id/claude-code-on-the-web#manage-context), nilai yang ditetapkan sesi menimpa nilai yang Anda tambahkan di sini, jadi menambahkan kunci itu di sini tidak berpengaruh.

93 93 

94Siapa pun yang menggunakan lingkungan dapat membaca nilai. Pada paket Pro dan Max, gunakan [kredensial API](#add-api-credentials) sebagai gantinya untuk kunci yang dapat dilampirkan proxy agen. [Permintaan yang tidak pernah mendapatkan kredensial](#requests-that-never-get-the-credential) tercantum di sana.94Siapa pun yang menggunakan lingkungan dapat membaca nilai. Pada paket Pro dan Max, gunakan [rahasia jaringan](#add-api-credentials) sebagai gantinya untuk kunci yang dapat dilampirkan proxy agent ke permintaan. [Permintaan yang tidak pernah mendapatkan rahasia](#requests-that-never-get-the-credential) tercantum di sana.

95 95 

96<h3 id="add-api-credentials">96<h3 id="add-api-credentials">

97 Tambahkan kredensial API97 Tambahkan rahasia jaringan

98</h3>98</h3>

99 99 

100Kredensial API adalah kunci API atau token yang Anda simpan di lingkungan cloud sehingga Claude dapat memanggil API itu dari sesi apa pun di lingkungan tanpa melihat kunci. Proxy agen Anthropic menambahkan kunci ke permintaan untuk host yang Anda cantumkan, setelah setiap permintaan meninggalkan VM sesi. Kunci tidak pernah mencapai Claude, perintah yang dijalankannya, atau variabel lingkungan sesi.100Rahasia jaringan adalah kunci API atau token yang Anda simpan di lingkungan cloud sehingga Claude dapat memanggil API itu dari sesi apa pun di lingkungan tanpa melihat kunci. Proxy agent Anthropic menambahkan kunci ke permintaan untuk host yang Anda cantumkan, setelah setiap permintaan meninggalkan VM sesi. Kunci tidak pernah mencapai Claude, perintah yang dijalankannya, atau environment variable sesi.

101 101 

102Kredensial API tersedia pada paket Pro dan Max. Mereka tidak tersedia pada paket Team atau Enterprise namun, jadi bagian **API credentials** tidak muncul di dialog lingkungan pada paket tersebut.102Rahasia jaringan tersedia pada paket Pro dan Max. Fitur ini belum tersedia pada paket Team atau Enterprise, jadi bagian **Network secrets** tidak muncul di dialog lingkungan pada paket tersebut.

103 103 

104<h4 id="requirements">104<h4 id="requirements">

105 Persyaratan105 Persyaratan

106</h4>106</h4>

107 107 

108Dua dari ini memutuskan apakah Anda dapat menambahkan kredensial, dan dua memutuskan apakah proxy agen dapat menggunakannya setelah ditambahkan:108Dua dari ini menentukan apakah Anda dapat menambahkan rahasia, dan dua menentukan apakah proxy agent dapat menggunakannya setelah ditambahkan:

109 109 

110* **Peran**: peran admin organisasi di organisasi claude.ai Anda110* **Peran**: peran admin organisasi di organisasi claude.ai Anda

111 * Pada Team dan Enterprise, Owner memegangnya dan Admin tidak111 * Pada Team dan Enterprise, Owner memegangnya dan Admin tidak

112 * Pada Pro dan Max, Anda memegangnya di organisasi Anda sendiri112 * Pada Pro dan Max, Anda memegangnya di organisasi Anda sendiri

113* **Jenis lingkungan**: lingkungan cloud yang di-host Anthropic yang sudah ada. [Lingkungan yang di-host sendiri](/docs/id/self-hosted-environments) tidak memiliki kredensial API113* **Jenis lingkungan**: lingkungan cloud yang di-host Anthropic yang sudah ada. [Lingkungan yang di-host sendiri](/docs/id/self-hosted-environments) tidak memiliki rahasia jaringan

114* **Jangkauan API**: API menerima koneksi dari internet, karena permintaan meninggalkan dari jaringan Anthropic114* **Jangkauan API**: API menerima koneksi dari internet, karena permintaan meninggalkan dari jaringan Anthropic

115* **Kunci enkripsi**: jika organisasi Anda menggunakan kunci enkripsi yang dikelola pelanggan, Anda tidak dapat menyimpan kredensial115* **Kunci enkripsi**: jika organisasi Anda menggunakan kunci enkripsi yang dikelola pelanggan, Anda tidak dapat menyimpan rahasia jaringan

116 116 

117<h4 id="add-a-credential">117<h4 id="add-a-credential">

118 Tambahkan kredensial118 Tambahkan rahasia

119</h4>119</h4>

120 120 

121Anda menambahkan kredensial satu per satu, dan Anda tidak dapat mengedit kredensial setelah menambahkannya. Untuk mengubah host atau nilai kredensial, hapus dan tambahkan lagi.121Anda menambahkan rahasia satu per satu, dan Anda tidak dapat mengedit rahasia setelah menambahkannya. Untuk mengubah host atau nilai rahasia, hapus dan tambahkan lagi.

122 122 

123<Steps>123<Steps>

124 <Step title="Buka kredensial API lingkungan">124 <Step title="Buka rahasia jaringan lingkungan">

125 [Buka lingkungan untuk diedit](#configure-your-environment) di [claude.ai/code](https://claude.ai/code). Di dialog **Edit environment**, temukan bagian **API credentials**. Anda melihat kredensial yang sudah ada di lingkungan, masing-masing dengan host yang berlaku.125 [Buka lingkungan untuk diedit](#configure-your-environment) di [claude.ai/code](https://claude.ai/code). Di dialog **Edit environment**, temukan bagian **Network secrets**. Anda melihat rahasia yang sudah ada di lingkungan, masing-masing dengan host yang berlaku.

126 </Step>126 </Step>

127 127 

128 <Step title="Tambahkan kredensial">128 <Step title="Tambahkan rahasia">

129 Pilih **Add credential** dan isi formulir. Pertahankan **Credential type** default, **Bearer**, untuk kunci API yang berjalan di header permintaan, dan isi bidang ini:129 Pilih **Add secret** dan isi formulir. Pertahankan **Credential type** default, **Bearer**, untuk kunci API yang berjalan di header permintaan, dan isi bidang ini:

130 130 

131 * **Name**: label untuk kredensial, seperti `Internal billing API`131 * **Name**: label untuk rahasia, seperti `Internal billing API`

132 * **Allowed websites**: host API, seperti `api.example.com`. `*.` di depan cocok dengan setiap subdomain132 * **Allowed websites**: host API, seperti `api.example.com`. `*.` di depan cocok dengan setiap subdomain

133 * **Custom headers**: satu baris untuk header yang membawa kunci. Baris dimulai dengan `Authorization` sebagai **Name** header dan `Bearer` sebagai **Prefix**; tempel kunci itu sendiri sebagai **Value**. Untuk header seperti `X-Api-Key` yang mengambil nilai telanjang, ubah nama dan kosongkan prefix133 * **Custom headers**: satu baris untuk header yang membawa kunci. Baris dimulai dengan `Authorization` sebagai **Name** header dan `Bearer` sebagai **Prefix**; tempel kunci itu sendiri sebagai **Value**. Untuk header seperti `X-Api-Key` yang mengambil nilai telanjang, ubah nama dan kosongkan prefix

134 134 

135 Untuk API yang mengautentikasi dengan cara lain, pilih **Credential type** yang berbeda. Daftar adalah yang sama yang ditawarkan [Claude Tag](https://claude.com/docs/claude-tag/overview), integrasi Slack untuk paket Team dan Enterprise, untuk [koneksi](https://claude.com/docs/claude-tag/admins/add-connections).135 Untuk API yang mengautentikasi dengan cara lain, pilih **Credential type** yang berbeda. Daftar adalah yang sama yang ditawarkan [Claude Tag](https://claude.com/docs/claude-tag/overview), integrasi Slack untuk paket Team dan Enterprise, untuk [koneksi](https://claude.com/docs/claude-tag/admins/add-connections).

136 </Step>136 </Step>

137 137 

138 <Step title="Simpan kredensial">138 <Step title="Simpan rahasia">

139 Pilih **Connect**. Kredensial muncul dalam daftar dengan hostnya, disimpan tanpa tombol **Save changes** dialog. Anda tidak dapat melihat nilai lagi setelah menyimpan.139 Pilih **Connect**. Rahasia muncul dalam daftar dengan hostnya, disimpan tanpa tombol **Save changes** dialog. Anda tidak dapat melihat nilai lagi setelah menyimpan.

140 </Step>140 </Step>

141</Steps>141</Steps>

142 142 

143Untuk mengonfirmasi kredensial berfungsi, mulai sesi di lingkungan dan minta Claude memanggil API, misalnya dengan `curl`. API menjawab seolah-olah kunci ada dalam permintaan, dan kunci tidak muncul di variabel lingkungan sesi atau di file apa pun. Jika daftar menandai kredensial **Not sent** sebagai gantinya, catatan di bawahnya mengatakan mengapa dan apa yang harus dilakukan. Dua kredensial yang hostnya tumpang tindih tanpa cocok persis tidak mendapat penanda, dan proxy agen mengirim hanya satu dari mereka.143Untuk mengonfirmasi rahasia berfungsi, mulai sesi di lingkungan dan minta Claude memanggil API, misalnya dengan `curl`. API menjawab seolah-olah kunci ada dalam permintaan, dan kunci tidak muncul di environment variable sesi atau di file apa pun. Jika daftar menandai rahasia **Not sent** sebagai gantinya, catatan di bawahnya menjelaskan alasannya dan apa yang harus dilakukan. Dua rahasia yang hostnya tumpang tindih tanpa cocok persis tidak mendapat penanda, dan proxy agent mengirim hanya satu dari keduanya.

144 144 

145<h4 id="which-requests-get-the-credential">145<h4 id="which-requests-get-the-credential">

146 Permintaan mana yang mendapatkan kredensial146 Permintaan mana yang mendapatkan rahasia

147</h4>147</h4>

148 148 

149Proxy agen melampirkan kredensial ke permintaan ketika host permintaan cocok dengan salah satu yang Anda cantumkan pada kredensial itu. Sesi dapat menjangkau host tersebut bahkan ketika [tingkat akses jaringan](#access-levels) lingkungan tidak akan mengizinkannya, kecuali [host yang tidak pernah mendapatkan kredensial](#requests-that-never-get-the-credential). Kredensial berlaku di setiap sesi yang berjalan di lingkungan, siapa pun yang memulainya, sampai Anda menghapusnya.149Proxy agent melampirkan rahasia ke permintaan ketika host permintaan cocok dengan salah satu yang Anda cantumkan pada rahasia itu. Sesi dapat menjangkau host tersebut bahkan ketika [tingkat akses jaringan](#access-levels) lingkungan tidak akan mengizinkannya, kecuali [host yang tidak pernah mendapatkan rahasia](#requests-that-never-get-the-credential). Rahasia berlaku di setiap sesi yang berjalan di lingkungan, siapa pun yang memulainya, sampai Anda menghapusnya.

150 150 

151<h4 id="requests-that-never-get-the-credential">151<h4 id="requests-that-never-get-the-credential">

152 Permintaan yang tidak pernah mendapatkan kredensial152 Permintaan yang tidak pernah mendapatkan rahasia

153</h4>153</h4>

154 154 

155Proxy agen tidak pernah melampirkan kredensial yang Anda tambahkan ke permintaan ini:155Proxy agent tidak pernah melampirkan rahasia yang Anda tambahkan ke permintaan ini:

156 156 

157* **GitHub**: [proxy GitHub](#github-proxy) mengautentikasi permintaan ke GitHub sebagai gantinya, jadi Anda tidak memerlukan kredensial API untuk itu157* **GitHub**: [proxy GitHub](#github-proxy) mengautentikasi permintaan ke GitHub sebagai gantinya, jadi Anda tidak memerlukan rahasia jaringan untuk itu

158* **API Anthropic dan registri paket publik**: `api.anthropic.com`, `registry.npmjs.org`, `jsr.io`, `npm.jsr.io`, `pypi.org`, `files.pythonhosted.org`, `index.crates.io`, dan `proxy.golang.org`158* **API Anthropic dan registri paket publik**: `api.anthropic.com`, `registry.npmjs.org`, `jsr.io`, `npm.jsr.io`, `pypi.org`, `files.pythonhosted.org`, `index.crates.io`, dan `proxy.golang.org`

159* **Permintaan skrip setup**: Claude Code terhubung ke proxy agen ketika diluncurkan, setelah [skrip setup](#setup-scripts) telah berjalan159* **Permintaan skrip setup**: Claude Code terhubung ke proxy agen ketika diluncurkan, setelah [skrip setup](#setup-scripts) telah berjalan

160* **Ekspor telemetri Claude Code**: Claude Code mengirim [ekspor telemetri](/docs/id/monitoring-usage#telemetry-from-cloud-sessions-and-claude-tag) miliknya sendiri daripada melalui perintah yang dijalankannya, dan permintaan itu tidak melewati proxy agen160* **Ekspor telemetri Claude Code**: Claude Code mengirim [ekspor telemetri](/docs/id/monitoring-usage#telemetry-from-cloud-sessions-and-claude-tag) miliknya sendiri daripada melalui perintah yang dijalankannya, dan permintaan itu tidak melewati proxy agen


179 179 

180* Sesi yang sudah berjalan di lingkungan terus bekerja.180* Sesi yang sudah berjalan di lingkungan terus bekerja.

181* Lingkungan menghilang dari pemilih dan dari `/remote-env`, jadi Anda tidak dapat memilihnya untuk sesi baru.181* Lingkungan menghilang dari pemilih dan dari `/remote-env`, jadi Anda tidak dapat memilihnya untuk sesi baru.

182* Kredensial API di lingkungan tetap terlampir di sesinya yang berjalan. Hapus yang tidak lagi Anda inginkan sebelum mengarsipkan.182* Rahasia jaringan di lingkungan tetap terlampir di sesinya yang berjalan. Hapus yang tidak lagi Anda inginkan sebelum mengarsipkan.

183* Tidak ada sesi baru yang dapat dimulai di lingkungan yang diarsipkan, di permukaan apa pun. Jika lingkungan adalah [default CLI](#select-an-environment-from-the-cli) yang disimpan, Claude Code memulai sesi cloud CLI di lingkungan yang di-host Anthropic ketika daftar Anda memiliki satu, dan sebaliknya di lingkungan pertama dalam daftar Anda yang bukan [lingkungan bridge Remote Control](#the-default-environment). Apa pun yang dikonfigurasi dengan lingkungan secara eksplisit, seperti [routine](/docs/id/routines#environments-and-network-access), tidak dapat memulai sesi baru di dalamnya. Arahkan ke lingkungan lain.183* Tidak ada sesi baru yang dapat dimulai di lingkungan yang diarsipkan, di permukaan apa pun. Jika lingkungan adalah [default CLI](#select-an-environment-from-the-cli) yang disimpan, Claude Code memulai sesi cloud CLI di lingkungan yang di-host Anthropic ketika daftar Anda memiliki satu, dan sebaliknya di lingkungan pertama dalam daftar Anda yang bukan [lingkungan bridge Remote Control](#the-default-environment). Apa pun yang dikonfigurasi dengan lingkungan secara eksplisit, seperti [routine](/docs/id/routines#environments-and-network-access), tidak dapat memulai sesi baru di dalamnya. Arahkan ke lingkungan lain.

184 184 

185<h3 id="organization-shared-environments">185<h3 id="organization-shared-environments">


197 197 

198Owner memilih [lingkungan default](#the-default-environment) organisasi secara terpisah, di [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code).198Owner memilih [lingkungan default](#the-default-environment) organisasi secara terpisah, di [claude.ai/admin-settings/claude-code](https://claude.ai/admin-settings/claude-code).

199 199 

200Sesi setiap anggota di lingkungan bersama membaca variabelnya, jadi jangan sertakan rahasia di dalamnya. [Kredensial API](#add-api-credentials), yang memberikan sesi kunci yang tidak dapat dibacanya, tidak tersedia pada paket Team atau Enterprise namun.200Sesi setiap anggota di lingkungan bersama membaca variabelnya, jadi jangan sertakan rahasia di dalamnya. [Rahasia jaringan](#add-api-credentials), yang memberikan sesi kunci yang tidak dapat dibacanya, belum tersedia pada paket Team atau Enterprise.

201 201 

202<h3 id="set-the-environment-a-claude-tag-channel-uses">202<h3 id="set-the-environment-a-claude-tag-channel-uses">

203 Tetapkan lingkungan yang digunakan saluran Claude Tag203 Tetapkan lingkungan yang digunakan saluran Claude Tag


239 239 

240* GitHub, melalui [proxy terpisahnya](#github-proxy)240* GitHub, melalui [proxy terpisahnya](#github-proxy)

241* [Konektor MCP](#network-access) yang Anda aktifkan, yang lalu lintasnya berjalan melalui server Anthropic241* [Konektor MCP](#network-access) yang Anda aktifkan, yang lalu lintasnya berjalan melalui server Anthropic

242* Host yang Anda cantumkan di [kredensial API](#add-api-credentials) lingkungan, kecuali [host yang tidak pernah mendapatkan kredensial](#requests-that-never-get-the-credential)242* Host yang Anda cantumkan di [secret jaringan](#add-api-credentials) lingkungan, kecuali [host yang tidak pernah mendapatkan secret](#requests-that-never-get-the-credential)

243* API Anthropic, untuk permintaan Claude Code sendiri, bahkan di **None**, seperti yang dicatat di bawah [Security and isolation](/docs/id/claude-code-on-the-web#security-and-isolation)243* API Anthropic, untuk permintaan Claude Code sendiri, bahkan di **None**, seperti yang dicatat di bawah [Security and isolation](/docs/id/claude-code-on-the-web#security-and-isolation)

244 244 

245<h3 id="allow-specific-domains">245<h3 id="allow-specific-domains">


254registry.example.com254registry.example.com

255```255```

256 256 

257Sesi di lingkungan ini sekarang dapat menjangkau `api.example.com`, subdomain apa pun dari `internal.example.com`, dan `registry.example.com`, dan tidak ada domain lain melalui jaringan sesi. [Lalu lintas GitHub](#github-proxy), [lalu lintas konektor MCP](#network-access), dan permintaan ke host [kredensial API](#add-api-credentials) lingkungan, selain [host yang tidak pernah mendapatkan kredensial](#requests-that-never-get-the-credential), tidak melewati allowlist ini. `*.` di depan cocok dengan setiap subdomain. Untuk menyimpan [domain Trusted](#default-allowed-domains) juga, centang **Also include default list of common package managers**; biarkan tidak dicentang untuk hanya mengizinkan apa yang Anda cantumkan.257Sesi di lingkungan ini sekarang dapat menjangkau `api.example.com`, subdomain apa pun dari `internal.example.com`, dan `registry.example.com`, dan tidak ada domain lain melalui jaringan sesi. [Lalu lintas GitHub](#github-proxy), [lalu lintas konektor MCP](#network-access), dan permintaan ke host [secret jaringan](#add-api-credentials) lingkungan, selain [host yang tidak pernah mendapatkan secret](#requests-that-never-get-the-credential), tidak melewati allowlist ini. `*.` di depan cocok dengan setiap subdomain. Untuk menyimpan [domain Trusted](#default-allowed-domains) juga, centang **Also include default list of common package managers**; biarkan tidak dicentang untuk hanya mengizinkan apa yang Anda cantumkan.

258 258 

259Jika organisasi Anda menggunakan [artifacts](/docs/id/artifacts#availability), Anda tidak memerlukan `*.frame.claudeusercontent.com` dalam daftar untuk sesi membacanya. Ketika daftar meninggalkan host itu, Claude Code membaca konten artifact melalui koneksi sesi ke Anthropic sebagai gantinya. Pertahankan host dalam allowlist dalam dua situasi:259Jika organisasi Anda menggunakan [artifacts](/docs/id/artifacts#availability), Anda tidak memerlukan `*.frame.claudeusercontent.com` dalam daftar untuk sesi membacanya. Ketika daftar meninggalkan host itu, Claude Code membaca konten artifact melalui koneksi sesi ke Anthropic sebagai gantinya. Pertahankan host dalam allowlist dalam dua situasi:

260 260 


292 Apa yang tersedia di sesi cloud292 Apa yang tersedia di sesi cloud

293</h2>293</h2>

294 294 

295Di lingkungan yang di-host Anthropic, setiap sesi mendapat mesin virtual (VM) segar yang menjalankan Ubuntu 24.04 pada x86\_64, terlepas dari sistem operasi dan arsitektur CPU Anda sendiri, dengan repositori Anda yang dikloning dan toolchain umum yang sudah diinstal sebelumnya. Ketika dependensi menyediakan binari yang sudah dikompilasi, seperti gem Ruby dengan ekstensi asli atau wheel Python yang sudah dibangun, gunakan build Linux x86\_64 untuk mencocokkan VM. Bagian ini mencakup default yang di-host Anthropic, alat GitHub bawaan, cara [menjalankan tes dan layanan](#run-tests-start-services-and-add-packages), [batas sumber daya](#resource-limits) yang diterima setiap VM, dan [batas waktu](#time-limits) pada pekerjaan yang berjalan lama.295Di lingkungan yang di-host Anthropic, setiap sesi mendapat mesin virtual (VM) segar yang menjalankan Ubuntu 24.04 pada x86\_64, terlepas dari sistem operasi dan arsitektur CPU Anda sendiri, dengan repositori Anda yang dikloning dan toolchain umum yang sudah diinstal sebelumnya. Ketika dependensi menyediakan binari yang sudah dikompilasi, seperti gem Ruby dengan ekstensi asli atau wheel Python yang sudah dibangun, gunakan build Linux x86\_64 untuk mencocokkan VM. Bagian ini mencakup default yang di-host Anthropic, tool GitHub bawaan, cara [menjalankan tes dan layanan](#run-tests-start-services-and-add-packages), [batas sumber daya](#resource-limits) yang diterima setiap VM, dan [batas waktu](#time-limits) pada pekerjaan yang berjalan lama.

296 296 

297<Note>297<Note>

298 Sesi yang organisasi Anda arahkan ke [lingkungan yang di-host sendiri](/docs/id/self-hosted-environments) berjalan di runner Anda sendiri sebagai gantinya, dengan alat yang disediakan gambar runner Anda.298 Sesi yang organisasi Anda arahkan ke [lingkungan yang di-host sendiri](/docs/id/self-hosted-environments) berjalan di runner Anda sendiri sebagai gantinya, dengan alat yang disediakan gambar runner Anda.


302 Apa yang terbawa dari setup Anda302 Apa yang terbawa dari setup Anda

303</h3>303</h3>

304 304 

305Cloud sessions start from a fresh clone of your repository. Apa pun yang Anda komitkan ke repo tersedia. Apa pun yang Anda instal atau konfigurasi hanya di mesin Anda sendiri tidak tersedia di sesi. Kebijakan organisasi Anda tiba secara terpisah melalui [pengaturan yang dikelola server](/docs/id/server-managed-settings).305Sesi cloud dimulai dari klon segar repositori Anda. Apa pun yang Anda commit ke repo tersedia. Apa pun yang Anda instal atau konfigurasi hanya di mesin Anda sendiri tidak tersedia di sesi. Kebijakan organisasi Anda tiba secara terpisah melalui [pengaturan terkelola server](/docs/id/server-managed-settings).

306 306 

307| | Tersedia di sesi cloud | Mengapa |307| | Tersedia di sesi cloud | Mengapa |

308| :- | :- | :- |308| :- | :- | :- |


312| `.claude/rules/` repo Anda | Ya | Bagian dari klon |312| `.claude/rules/` repo Anda | Ya | Bagian dari klon |

313| `.claude/skills/`, `.claude/agents/`, `.claude/commands/` repo Anda | Ya | Bagian dari klon |313| `.claude/skills/`, `.claude/agents/`, `.claude/commands/` repo Anda | Ya | Bagian dari klon |

314| Plugin dan marketplace yang dideklarasikan di `.claude/settings.json` repo Anda | Tidak | Sesi cloud tidak menginstal plugin yang dihidupkan repositori di bawah [`enabledPlugins`](/docs/id/settings-reference#enabledplugins), termasuk yang dari marketplace yang dicantumkan di bawah [`extraKnownMarketplaces`](/docs/id/settings-reference#extraknownmarketplaces) |314| Plugin dan marketplace yang dideklarasikan di `.claude/settings.json` repo Anda | Tidak | Sesi cloud tidak menginstal plugin yang dihidupkan repositori di bawah [`enabledPlugins`](/docs/id/settings-reference#enabledplugins), termasuk yang dari marketplace yang dicantumkan di bawah [`extraKnownMarketplaces`](/docs/id/settings-reference#extraknownmarketplaces) |

315| [Pengaturan yang dikelola server](/docs/id/server-managed-settings) organisasi Anda | Ya, kecuali dalam sesi [Claude Tag](https://claude.com/docs/claude-tag/overview) | Diambil dari server Anthropic ketika sesi dimulai. Lihat [Surface coverage](/docs/id/model-config#surface-coverage) untuk cara `availableModels` diterapkan di sesi cloud. Pengaturan yang digunakan di perangkat Anda melalui MDM atau file pengaturan yang dikelola tidak berlaku, karena sesi berjalan di VM yang dikelola Anthropic; di [lingkungan yang di-host sendiri](/docs/id/self-hosted-environments), sesi juga membaca file pengaturan yang dikelola dalam gambar runner, per [cara Claude Code menggabungkan sumber yang dikelola](/docs/id/managed-settings#how-claude-code-combines-managed-sources) |315| [Pengaturan terkelola server](/docs/id/server-managed-settings) organisasi Anda | Ya, kecuali dalam sesi [Claude Tag](https://claude.com/docs/claude-tag/overview) | Diambil dari server Anthropic ketika sesi dimulai. Lihat [Surface coverage](/docs/id/model-config#surface-coverage) untuk cara `availableModels` diterapkan di sesi cloud. Pengaturan yang digunakan di perangkat Anda melalui MDM atau file pengaturan terkelola tidak berlaku, karena sesi berjalan di VM yang dikelola Anthropic; di [lingkungan yang di-host sendiri](/docs/id/self-hosted-environments), sesi juga membaca file pengaturan terkelola dalam gambar runner, per [cara Claude Code menggabungkan sumber terkelola](/docs/id/managed-settings#how-claude-code-combines-managed-sources) |

316| `~/.claude/CLAUDE.md` pengguna Anda | Tidak | Hidup di mesin Anda, bukan di repo |316| `~/.claude/CLAUDE.md` pengguna Anda | Tidak | Hidup di mesin Anda, bukan di repo. Lihat [Tambahkan preferensi pribadi tanpa melakukan commit ke repo](#add-personal-preferences-without-committing-to-the-repo) |

317| `~/.claude/skills/`, `~/.claude/agents/`, `~/.claude/commands/` pengguna Anda | Tidak | Hidup di mesin Anda, bukan di repo. Komitkan mereka ke direktori `.claude/` repo sebagai gantinya. Sesi cloud secara otomatis memuat skill yang Anda aktifkan di claude.ai |317| `~/.claude/skills/`, `~/.claude/agents/`, `~/.claude/commands/` pengguna Anda | Tidak | Hidup di mesin Anda, bukan di repo. Commit mereka ke direktori `.claude/` repo sebagai gantinya. Sesi cloud secara otomatis memuat skill yang Anda aktifkan di claude.ai |

318| Plugin yang hanya diaktifkan di pengaturan pengguna Anda | Tidak | `enabledPlugins` yang dibatasi pengguna hidup di `~/.claude/settings.json` di mesin Anda |318| Plugin yang hanya diaktifkan di pengaturan pengguna Anda | Tidak | `enabledPlugins` yang dibatasi pengguna hidup di `~/.claude/settings.json` di mesin Anda |

319| Server MCP yang Anda tambahkan dengan `claude mcp add` di cakupan lokal default atau cakupan pengguna | Tidak | Mereka menulis ke `~/.claude.json` di mesin Anda, bukan repo. Tambahkan server dengan `claude mcp add --scope project`, yang menulis [`.mcp.json`](/docs/id/mcp#project-scope) repo, dan komitkan file itu. Sesi dengan satu repositori memuat file itu |319| Server MCP yang Anda tambahkan dengan `claude mcp add` di cakupan lokal default atau cakupan pengguna | Tidak | Mereka menulis ke `~/.claude.json` di mesin Anda, bukan repo. Tambahkan server dengan `claude mcp add --scope project`, yang menulis [`.mcp.json`](/docs/id/mcp#project-scope) repo, dan commit file itu. Sesi dengan satu repositori memuat file itu |

320| Variabel transport di blok `env` `.claude/settings.json` repo Anda, seperti `NODE_EXTRA_CA_CERTS` dan [variabel sertifikat klien mTLS](/docs/id/network-config#mtls-authentication) | Tidak | Lingkungan hosting mengelola koneksi API sesi, jadi Claude Code mengabaikan kunci ini dan mencatat setiap kunci yang diabaikan di log debug sesi |320| Variabel transport di blok `env` `.claude/settings.json` repo Anda, seperti `NODE_EXTRA_CA_CERTS` dan [variabel sertifikat klien mTLS](/docs/id/network-config#mtls-authentication) | Tidak | Lingkungan hosting mengelola koneksi API sesi, jadi Claude Code mengabaikan kunci ini dan mencatat setiap kunci yang diabaikan di log debug sesi |

321| Token API dan kredensial untuk layanan yang dipanggil Claude | Pada paket Pro dan Max, sebagai [kredensial API](#add-api-credentials) | Anda menambahkan kunci sekali di lingkungan dan proxy agen melampirkannya ke permintaan untuk host yang Anda cantumkan. Kunci yang proxy agen [tidak dapat lampirkan](#requests-that-never-get-the-credential), atau kunci apa pun pada paket Team atau Enterprise, tetap dalam variabel lingkungan |321| Kunci API dan token untuk layanan yang dipanggil Claude | Pada paket Pro dan Max, sebagai [rahasia jaringan](#add-api-credentials) | Anda menambahkan kunci sekali di lingkungan dan proxy agent melampirkannya ke permintaan untuk host yang Anda cantumkan. Kunci yang [tidak dapat dilampirkan](#requests-that-never-get-the-credential) proxy agent, atau kunci apa pun pada paket Team atau Enterprise, tetap berada dalam environment variable |

322| Auth interaktif seperti AWS SSO | Tidak | Tidak didukung. SSO memerlukan login berbasis browser yang tidak dapat berjalan di sesi cloud |322| Auth interaktif seperti AWS SSO | Tidak | Tidak didukung. SSO memerlukan login berbasis browser yang tidak dapat berjalan di sesi cloud |

323 323 

324Untuk membuat konfigurasi Anda sendiri tersedia di sesi cloud, komitkan ke repo.324Untuk membuat konfigurasi Anda sendiri tersedia di sesi cloud, commit ke repo.

325 325 

326Siapa pun yang menggunakan lingkungan dapat membaca variabel lingkungan dan skrip setupnya. Catatan dialog di bawah **Environment variables** mengatakan demikian dan memperingatkan terhadap penambahan rahasia di sana. Pada paket Pro dan Max, simpan kunci yang dapat dilampirkan proxy agen sebagai [kredensial API](#add-api-credentials) sebagai gantinya.326Siapa pun yang menggunakan lingkungan dapat membaca environment variable dan skrip setupnya. Catatan dialog di bawah **Environment variables** menyatakan hal ini dan memperingatkan agar tidak menaruh rahasia di sana. Pada paket Pro dan Max, simpan kunci yang dapat dilampirkan proxy agent sebagai [rahasia jaringan](#add-api-credentials) sebagai gantinya.

327 

328<h4 id="add-personal-preferences-without-committing-to-the-repo">

329 Tambahkan preferensi pribadi tanpa melakukan commit ke repo

330</h4>

331 

332Di lingkungan yang di-host Anthropic, tambahkan [skrip setup](#setup-scripts) yang menulis `~/.claude/CLAUDE.md` untuk preferensi yang tidak ingin Anda taruh di repositori bersama. Claude Code memuat file tersebut sebagai [instruksi pengguna](/docs/id/memory#choose-where-to-put-claude-md-files) dalam sesi. Contoh ini menetapkan preferensi pesan commit:

333 

334```bash theme={null}

335#!/bin/bash

336mkdir -p ~/.claude

337cat > ~/.claude/CLAUDE.md <<'EOF'

338Use conventional commit messages.

339EOF

340```

341 

342Tempatkan skrip di salah satu lingkungan Anda sendiri, bukan di [lingkungan bersama](#organization-shared-environments).

343 

344Jalankan `/context` di sesi cloud Anda berikutnya dan pastikan `/root/.claude/CLAUDE.md` muncul di bawah **Memory files**.

327 345 

328<h3 id="installed-tools">346<h3 id="installed-tools">

329 Alat yang diinstal347 Alat yang diinstal


354Toolchain di luar daftar ini, seperti .NET SDK, tidak diinstal sebelumnya bahkan ketika registri paket mereka ada di [allowlist default](#default-allowed-domains). Instal mereka dengan [skrip setup](#setup-scripts).372Toolchain di luar daftar ini, seperti .NET SDK, tidak diinstal sebelumnya bahkan ketika registri paket mereka ada di [allowlist default](#default-allowed-domains). Instal mereka dengan [skrip setup](#setup-scripts).

355 373 

356<h3 id="work-with-github-issues-and-pull-requests">374<h3 id="work-with-github-issues-and-pull-requests">

357 Bekerja dengan masalah GitHub dan permintaan tarik375 Bekerja dengan issue GitHub dan pull request

358</h3>376</h3>

359 377 

360Sesi cloud mencakup alat GitHub bawaan yang memungkinkan Claude membaca masalah, mencantumkan permintaan tarik, mengambil diff, dan memposting komentar tanpa setup apa pun. Alat ini mengautentikasi melalui [proxy GitHub](#github-proxy) menggunakan metode apa pun yang Anda konfigurasi di bawah [opsi autentikasi GitHub](/docs/id/claude-code-on-the-web#github-authentication-options), jadi token Anda tidak pernah memasuki kontainer.378Sesi cloud mencakup tool GitHub bawaan yang memungkinkan Claude membaca issue, mencantumkan pull request, mengambil diff, dan memposting komentar tanpa setup apa pun. Tool ini mengautentikasi melalui [proxy GitHub](#github-proxy) menggunakan metode apa pun yang Anda konfigurasi di bawah [opsi autentikasi GitHub](/docs/id/claude-code-on-the-web#github-authentication-options), jadi token Anda tidak pernah memasuki kontainer.

361 379 

362Anda dapat menetapkan `GH_TOKEN` atau `GITHUB_TOKEN` sendiri di [pengaturan lingkungan](#set-environment-variables), atau biarkan keduanya tidak ditetapkan dan biarkan [proxy GitHub](#github-proxy) mengautentikasi untuk Anda:380Anda dapat menetapkan `GH_TOKEN` atau `GITHUB_TOKEN` sendiri di [pengaturan lingkungan](#set-environment-variables), atau biarkan keduanya tidak ditetapkan dan biarkan [proxy GitHub](#github-proxy) mengautentikasi untuk Anda:

363 381 

364* Jika Anda menetapkan token, itu melewati ke kontainer tanpa perubahan, jadi skrip Anda dan [`gh` CLI](https://cli.github.com) GitHub menggunakannya secara langsung.382* Jika Anda menetapkan token, itu melewati ke kontainer tanpa perubahan, jadi skrip Anda dan [`gh` CLI](https://cli.github.com) GitHub menggunakannya secara langsung.

365* Jika Anda tidak menetapkan keduanya dan [proxy GitHub](#github-proxy) menangani autentikasi untuk sesi Anda, kedua variabel membaca sebagai string placeholder `proxy-injected` dalam perintah yang dijalankan Claude, dan proxy mengganti kredensial nyata Anda pada permintaan GitHub keluar. `gh` bekerja tanpa token Anda sendiri, tetapi skrip yang membaca `GITHUB_TOKEN` secara langsung mendapat placeholder, bukan token yang dapat digunakan.383* Jika Anda tidak menetapkan keduanya dan [proxy GitHub](#github-proxy) menangani autentikasi untuk sesi Anda, kedua variabel membaca sebagai string placeholder `proxy-injected` dalam perintah yang dijalankan Claude, dan proxy mengganti kredensial nyata Anda pada permintaan GitHub keluar. `gh` bekerja tanpa token Anda sendiri, tetapi skrip yang membaca `GITHUB_TOKEN` secara langsung mendapat placeholder, bukan token yang dapat digunakan.

366 384 

367Token yang Anda tetapkan adalah variabel lingkungan biasa, jadi siapa pun yang menggunakan lingkungan dapat membacanya; jalur proxy menjaga kredensial di luar konfigurasi lingkungan dan VM sesi.385Token yang Anda tetapkan adalah environment variable biasa, jadi siapa pun yang menggunakan lingkungan dapat membacanya; jalur proxy menjaga kredensial di luar konfigurasi lingkungan dan VM sesi.

368 386 

369Untuk memeriksa kasus mana yang berlaku untuk sesi Anda, minta Claude menjalankan `echo $GH_TOKEN`.387Untuk memeriksa kasus mana yang berlaku untuk sesi Anda, minta Claude menjalankan `echo $GH_TOKEN`.

370 388 

371[`gh` CLI](https://cli.github.com) GitHub sudah diinstal sebelumnya. Jika Anda memerlukan perintah `gh` yang tidak dicakup alat bawaan, seperti `gh release` atau `gh workflow run`, minta Claude menjalankannya. `gh` membaca `GH_TOKEN` secara otomatis, jadi Anda tidak perlu menjalankan `gh auth login`.389[`gh` CLI](https://cli.github.com) GitHub sudah diinstal sebelumnya. Jika Anda memerlukan perintah `gh` yang tidak dicakup tool bawaan, seperti `gh release` atau `gh workflow run`, minta Claude menjalankannya. `gh` membaca `GH_TOKEN` secara otomatis, jadi Anda tidak perlu menjalankan `gh auth login`.

372 390 

373<h3 id="link-output-back-to-the-session">391<h3 id="link-output-back-to-the-session">

374 Hubungkan output kembali ke sesi392 Hubungkan output kembali ke sesi

375</h3>393</h3>

376 394 

377Setiap sesi cloud memiliki URL transkrip di claude.ai, dan sesi dapat membaca ID-nya sendiri dari variabel lingkungan `CLAUDE_CODE_REMOTE_SESSION_ID`. Gunakan ini untuk menempatkan tautan yang dapat dilacak di badan PR, pesan komitmen, posting Slack, atau laporan yang dihasilkan sehingga reviewer dapat membuka jalankan yang menghasilkannya.395Setiap sesi cloud memiliki URL transkrip di claude.ai, dan sesi dapat membaca ID-nya sendiri dari environment variable `CLAUDE_CODE_REMOTE_SESSION_ID`. Gunakan ini untuk menempatkan tautan yang dapat dilacak di badan PR, pesan commit, posting Slack, atau laporan yang dihasilkan sehingga reviewer dapat membuka run yang menghasilkannya.

378 396 

379Komitmen yang dibuat Claude di sesi cloud mencakup trailer git `Claude-Session: <url>`, dan badan PR mencakup URL sesi di barisnya sendiri. Untuk menghilangkan trailer dan tautan badan PR, atur [`attribution.sessionUrl`](/docs/id/settings-reference#attribution-sessionurl) ke `false`.397Commit yang dibuat Claude di sesi cloud mencakup trailer git `Claude-Session: <url>`, dan badan PR mencakup URL sesi di barisnya sendiri. Untuk menghilangkan trailer dan tautan badan PR, atur [`attribution.sessionUrl`](/docs/id/settings-reference#attribution-sessionurl) ke `false`.

380 398 

381Untuk menyertakan tautan sesi dalam sesuatu selain komitmen atau PR, seperti pesan Slack yang diposting Claude atau file laporan yang ditulisnya, minta Claude menjalankan perintah berikut dan gunakan outputnya. Perintah mengonversi awalan `cse_` dalam nilai variabel lingkungan ke awalan `session_` yang diharapkan URL transkrip:399Untuk menyertakan tautan sesi dalam sesuatu selain commit atau PR, seperti pesan Slack yang diposting Claude atau file laporan yang ditulisnya, minta Claude menjalankan perintah berikut dan gunakan outputnya. Perintah mengonversi awalan `cse_` dalam nilai environment variable ke awalan `session_` yang diharapkan URL transkrip:

382 400 

383```bash theme={null}401```bash theme={null}

384echo "https://claude.ai/code/${CLAUDE_CODE_REMOTE_SESSION_ID/#cse_/session_}"402echo "https://claude.ai/code/${CLAUDE_CODE_REMOTE_SESSION_ID/#cse_/session_}"


438 456 

439Di lingkungan yang di-host Anthropic, batas waktu ini berlaku untuk pekerjaan yang berjalan lama di sesi cloud, seperti build, install, atau test run. Setiap entri menautkan ke bagian yang mendefinisikan batas.457Di lingkungan yang di-host Anthropic, batas waktu ini berlaku untuk pekerjaan yang berjalan lama di sesi cloud, seperti build, install, atau test run. Setiap entri menautkan ke bagian yang mendefinisikan batas.

440 458 

441* **Perintah yang dijalankan Claude**: lingkungan cloud tidak menetapkan timeout perintahnya sendiri, jadi default alat Bash berlaku. Claude menunggu 2 menit untuk perintah secara default dan dapat meminta hingga 10 menit.459* **Perintah yang dijalankan Claude**: lingkungan cloud tidak menetapkan timeout perintahnya sendiri, jadi default tool Bash berlaku. Claude menunggu 2 menit untuk perintah latar depan secara default dan dapat meminta hingga 10 menit.

442 460 

443 Ketika perintah mencapai [timeout](/docs/id/tools-reference#timeout-and-output-limits)-nya, Claude Code [memindahkannya ke latar belakang](/docs/id/tools-reference#foreground-commands-that-move-to-the-background) alih-alih menghentikannya, kecuali perintah dimulai dengan `sleep`. Perintah yang dipindahkan dengan cara ini dapat terus berjalan selama 30 menit lagi sebelum Claude Code menghentikannya di [batas waktu latar belakangnya](/docs/id/tools-reference#time-limit-for-background-commands). Menetapkan `BASH_DEFAULT_TIMEOUT_MS` di atas `1800000` milidetik memanjangkan batas itu serta default latar depan.461 Ketika perintah mencapai [timeout](/docs/id/tools-reference#timeout-and-output-limits)-nya, Claude Code [memindahkannya ke latar belakang](/docs/id/tools-reference#foreground-commands-that-move-to-the-background) alih-alih menghentikannya, kecuali perintah dimulai dengan `sleep`. Perintah yang dipindahkan dengan cara ini dapat terus berjalan selama 30 menit lagi sebelum Claude Code menghentikannya di [batas waktu latar belakangnya](/docs/id/tools-reference#time-limit-for-background-commands). Menetapkan `BASH_DEFAULT_TIMEOUT_MS` di atas `1800000` milidetik memanjangkan batas itu serta default latar depan.

444* **Hook SessionStart**: Claude Code membatalkan hook `command` setelah 600 detik kecuali Anda menetapkan [`timeout`](/docs/id/hooks#common-fields), dalam detik, pada entri hook. Claude Code tidak memberlakukan timeout pada hook yang Anda jalankan dengan [`async: true`](/docs/id/hooks#run-hooks-in-the-background).462* **Hook SessionStart**: Claude Code membatalkan hook `command` setelah 600 detik kecuali Anda menetapkan [`timeout`](/docs/id/hooks#common-fields), dalam detik, pada entri hook. Claude Code tidak memberlakukan timeout pada hook yang Anda jalankan dengan [`async: true`](/docs/id/hooks#run-hooks-in-the-background).

445* **Skrip setup**: skrip yang memakan waktu lebih lama dari kira-kira lima menit tidak di-cache. [Script requirements](#script-requirements) mencakup cara tetap di bawah itu.463* **Skrip setup**: skrip yang memakan waktu lebih lama dari kira-kira lima menit tidak di-cache. [Script requirements](#script-requirements) mencakup cara tetap di bawah itu.

446* **Sesi idle**: setelah beberapa menit tanpa aktivitas, VM sesi sesi dijeda dengan file-filenya disimpan, dan VM yang dijeda dapat kemudian diambil kembali. [Set environment variables](#set-environment-variables) menjelaskan apa yang diambil sesi dalam setiap kasus, dan [Environment expired](/docs/id/claude-code-on-the-web#environment-expired) mencakup cara membuka kembali sesi yang VM-nya diambil kembali.464* **Sesi idle**: setelah beberapa menit tanpa aktivitas, VM sesi dijeda dengan file-filenya disimpan, dan VM yang dijeda dapat kemudian diambil kembali. [Set environment variables](#set-environment-variables) menjelaskan apa yang diambil sesi dalam setiap kasus, dan [Environment expired](/docs/id/claude-code-on-the-web#environment-expired) mencakup cara membuka kembali sesi yang VM-nya diambil kembali.

447 465 

448Untuk menaikkan timeout perintah untuk sesi lingkungan, tambahkan [`BASH_DEFAULT_TIMEOUT_MS` dan `BASH_MAX_TIMEOUT_MS`](/docs/id/env-vars#variables) ke [variabel lingkungannya](#set-environment-variables). Keduanya mengambil milidetik. Misalnya, `BASH_DEFAULT_TIMEOUT_MS=600000` membuat 10 menit menjadi default.466Untuk menaikkan timeout perintah untuk sesi lingkungan, tambahkan [`BASH_DEFAULT_TIMEOUT_MS` dan `BASH_MAX_TIMEOUT_MS`](/docs/id/env-vars#variables) ke [environment variable-nya](#set-environment-variables). Keduanya mengambil milidetik. Misalnya, `BASH_DEFAULT_TIMEOUT_MS=600000` membuat 10 menit menjadi default.

449 467 

450<h2 id="setup-scripts">468<h2 id="setup-scripts">

451 Skrip setup469 Skrip setup

Details

1586 1586 

1587Sesi ini menjelaskan alur kerja yang realistis dengan jumlah token yang representatif:1587Sesi ini menjelaskan alur kerja yang realistis dengan jumlah token yang representatif:

1588 1588 

1589* **Sebelum Anda mengetik apa pun**: CLAUDE.md, memori otomatis, nama alat MCP, dan deskripsi skill semuanya dimuat ke dalam konteks. [File AGENTS.md](/docs/id/memory#agents-md) juga dapat dimuat, secara mandiri atau bersama CLAUDE.md. Pengaturan Anda sendiri mungkin menambahkan lebih banyak di sini, seperti [gaya output](/docs/id/output-styles) atau teks dari [`--append-system-prompt`](/docs/id/cli-reference).1589* **Sebelum Anda mengetik apa pun**: CLAUDE.md, auto memory, nama tool MCP, dan deskripsi skill semuanya dimuat ke dalam konteks. [File AGENTS.md](/docs/id/memory#agents-md) dapat dimuat sebagai pengganti CLAUDE.md. Pengaturan Anda sendiri mungkin menambahkan lebih banyak di sini, seperti [gaya output](/docs/id/output-styles) atau teks dari [`--append-system-prompt`](/docs/id/cli-reference).

1590* **Saat Claude bekerja**: setiap pembacaan file menambah konteks, [aturan dengan cakupan jalur](/docs/id/memory#path-specific-rules) dimuat secara otomatis bersama file yang cocok, dan [hook PostToolUse](/docs/id/hooks-guide) dijalankan setelah setiap pengeditan.1590* **Saat Claude bekerja**: setiap pembacaan file menambah konteks, [aturan dengan cakupan jalur](/docs/id/memory#path-specific-rules) dimuat secara otomatis bersama file yang cocok, dan [hook PostToolUse](/docs/id/hooks-guide) dijalankan setelah setiap pengeditan.

1591* **Prompt lanjutan**: [subagent](/docs/id/sub-agents) menangani penelitian dalam jendela konteks terpisahnya sendiri, sehingga pembacaan file besar tetap berada di luar milik Anda. Hanya ringkasan dan trailer metadata kecil yang kembali.1591* **Prompt lanjutan**: [subagent](/docs/id/sub-agents) menangani penelitian dalam jendela konteks terpisahnya sendiri, sehingga pembacaan file besar tetap berada di luar milik Anda. Hanya ringkasan dan trailer metadata kecil yang kembali.

1592* **Di akhir dari panduan**: Anda menjalankan `/compact`, yang menggantikan percakapan dengan ringkasan terstruktur. Sebagian besar konten startup dimuat ulang secara otomatis; tabel di bawah menunjukkan apa yang terjadi pada setiap mekanisme.1592* **Di akhir dari panduan**: Anda menjalankan `/compact`, yang menggantikan percakapan dengan ringkasan terstruktur. Sebagian besar konten startup dimuat ulang secara otomatis; tabel di bawah menunjukkan apa yang terjadi pada setiap mekanisme.


1632* **Bersihkan antar tugas**: jalankan `/clear` saat beralih ke pekerjaan yang tidak terkait. Percakapan lama mengalahkan file yang Anda butuhkan selanjutnya dan menghabiskan token pada setiap pesan.1632* **Bersihkan antar tugas**: jalankan `/clear` saat beralih ke pekerjaan yang tidak terkait. Percakapan lama mengalahkan file yang Anda butuhkan selanjutnya dan menghabiskan token pada setiap pesan.

1633* **Delegasikan pembacaan besar**: kirim penelitian ke [subagent](/docs/id/sub-agents) sehingga konten file tetap berada di jendela konteksnya, bukan milik Anda.1633* **Delegasikan pembacaan besar**: kirim penelitian ke [subagent](/docs/id/sub-agents) sehingga konten file tetap berada di jendela konteksnya, bukan milik Anda.

1634 1634 

1635Jika Anda membutuhkan jendela yang lebih besar daripada percakapan yang lebih kecil, model Fable, Sonnet 5 dan yang lebih baru, Opus 4.6 dan yang lebih baru, dan Sonnet 4.6 mendukung jendela konteks 1 juta token. Lihat [Extended context](/docs/id/model-config#extended-context) untuk ketersediaan menurut paket dan cara memilih varian model `[1m]`. Pemadatan bekerja dengan cara yang sama pada batas yang lebih besar.1635Jika Anda membutuhkan jendela yang lebih besar daripada percakapan yang lebih kecil, model Fable, Sonnet 5 dan yang lebih baru, Haiku 5.5, Opus 4.6 dan yang lebih baru, dan Sonnet 4.6 mendukung context window 1 juta token. Lihat [Extended context](/docs/id/model-config#extended-context) untuk ketersediaan menurut paket dan cara memilih varian model `[1m]`. Pemadatan bekerja dengan cara yang sama pada batas yang lebih besar.

1636 1636 

1637Sonnet 5.5 dan Sonnet 5 berjalan dengan jendela konteks 1M dan tidak memiliki varian `[1m]` untuk dipilih. Lihat [Sonnet 5.5 and Sonnet 5 context window](/docs/id/model-config#sonnet-5-5-and-sonnet-5-context-window) untuk ambang batas auto-compaction-nya, dan [the context window behind a gateway](/docs/id/model-config#context-window-behind-a-gateway) untuk cara Claude Code mengukur jendela saat Anda mengatur `ANTHROPIC_BASE_URL` ke [LLM gateway](/docs/id/llm-gateway).1637Sonnet 5.5 dan Sonnet 5 berjalan dengan jendela konteks 1M dan tidak memiliki varian `[1m]` untuk dipilih. Lihat [Sonnet 5.5 and Sonnet 5 context window](/docs/id/model-config#sonnet-5-5-and-sonnet-5-context-window) untuk ambang batas auto-compaction-nya, dan [the context window behind a gateway](/docs/id/model-config#context-window-behind-a-gateway) untuk cara Claude Code mengukur jendela saat Anda mengatur `ANTHROPIC_BASE_URL` ke [LLM gateway](/docs/id/llm-gateway).

1638 1638 

costs.md +18 −18

Details

252 Kurangi penggunaan token252 Kurangi penggunaan token

253</h2>253</h2>

254 254 

255Biaya token diskalakan dengan ukuran konteks: semakin banyak konteks yang diproses Claude, semakin banyak token yang Anda gunakan. Claude Code secara otomatis mengoptimalkan biaya melalui [prompt caching](/docs/id/prompt-caching), yang mengurangi biaya untuk konten berulang seperti prompt sistem, dan auto-compact, yang merangkum riwayat percakapan saat mendekati batas konteks.255Biaya token diskalakan dengan ukuran konteks: semakin banyak konteks yang diproses Claude, semakin banyak token yang Anda gunakan. Claude Code secara otomatis mengoptimalkan biaya melalui [prompt caching](/docs/id/prompt-caching), yang mengurangi biaya untuk konten berulang seperti system prompt, dan auto-compaction, yang merangkum riwayat percakapan saat mendekati batas konteks.

256 256 

257Strategi berikut membantu Anda menjaga konteks tetap kecil dan mengurangi biaya per pesan.257Strategi berikut membantu Anda menjaga konteks tetap kecil dan mengurangi biaya per pesan.

258 258 


277 Pilih model yang tepat277 Pilih model yang tepat

278</h3>278</h3>

279 279 

280Sonnet menangani sebagian besar tugas pengkodean dengan baik dan biayanya lebih rendah dari Opus. Cadangkan Opus untuk keputusan arsitektur yang kompleks atau penalaran multi-langkah. Gunakan `/model` untuk beralih model di tengah sesi, atau atur default di `/config`. Sakelar ke Opus juga berlaku untuk [subagents yang mewarisi model sesi Anda](/docs/id/model-config#setting-your-model). Untuk tugas subagent sederhana, tentukan `model: haiku` di [konfigurasi subagent](/docs/id/sub-agents#choose-a-model) Anda.280Sonnet menangani sebagian besar tugas pengkodean dengan baik dan biayanya lebih rendah dari Opus. Cadangkan Opus untuk keputusan arsitektur yang kompleks atau penalaran multi-langkah. Gunakan `/model` untuk beralih model di tengah sesi, atau atur default di `/config`. Peralihan ke Opus juga berlaku untuk [subagent yang mewarisi model sesi Anda](/docs/id/model-config#setting-your-model). Untuk tugas subagent sederhana, tentukan `model: haiku` di [konfigurasi subagent](/docs/id/sub-agents#choose-a-model) Anda.

281 281 

282<h3 id="reduce-mcp-server-overhead">282<h3 id="reduce-mcp-server-overhead">

283 Kurangi overhead server MCP283 Kurangi overhead server MCP

284</h3>284</h3>

285 285 

286Definisi alat MCP adalah [ditunda secara default](/docs/id/mcp#scale-with-mcp-tool-search), jadi hanya nama alat dan instruksi server yang masuk ke konteks sampai Claude menggunakan alat tertentu. Jalankan `/context` untuk melihat apa yang mengonsumsi ruang.286Definisi tool MCP [ditunda secara default](/docs/id/mcp#scale-with-mcp-tool-search), jadi hanya nama tool dan instruksi server yang masuk ke konteks sampai Claude menggunakan tool tertentu. Jalankan `/context` untuk melihat apa yang mengonsumsi ruang.

287 287 

288* **Lebih suka alat CLI jika tersedia**: Alat seperti `gh`, `aws`, `gcloud`, dan `sentry-cli` masih lebih efisien konteks daripada server MCP karena mereka tidak menambahkan daftar per-alat apa pun. Claude dapat menjalankan perintah CLI secara langsung.288* **Utamakan tool CLI jika tersedia**: Tool seperti `gh`, `aws`, `gcloud`, dan `sentry-cli` masih lebih efisien konteks daripada server MCP karena mereka tidak menambahkan daftar per-tool apa pun. Claude dapat menjalankan perintah CLI secara langsung.

289* **Nonaktifkan server yang tidak digunakan**: Jalankan `/mcp` untuk melihat server yang dikonfigurasi dan nonaktifkan yang tidak Anda gunakan secara aktif.289* **Nonaktifkan server yang tidak digunakan**: Jalankan `/mcp` untuk melihat server yang dikonfigurasi dan nonaktifkan yang tidak Anda gunakan secara aktif.

290 290 

291<h3 id="install-code-intelligence-plugins-for-typed-languages">291<h3 id="install-code-intelligence-plugins-for-typed-languages">


298 Offload pemrosesan ke hooks dan skills298 Offload pemrosesan ke hooks dan skills

299</h3>299</h3>

300 300 

301[Hooks](/docs/id/hooks) kustom dapat memproses data sebelum Claude melihatnya. Alih-alih Claude membaca file log 10.000 baris untuk menemukan kesalahan, hook dapat grep untuk `ERROR` dan mengembalikan hanya baris yang cocok, mengurangi konteks dari puluhan ribu token menjadi ratusan.301[Hook](/docs/id/hooks) kustom dapat memproses data sebelum Claude melihatnya. Alih-alih Claude membaca file log 10.000 baris untuk menemukan kesalahan, hook dapat melakukan grep untuk `ERROR` dan mengembalikan hanya baris yang cocok, mengurangi konteks dari puluhan ribu token menjadi ratusan.

302 302 

303[Skill](/docs/id/skills) dapat memberi Claude pengetahuan domain sehingga tidak harus menjelajahi. Misalnya, skill "codebase-overview" dapat mendeskripsikan arsitektur proyek Anda, direktori kunci, dan konvensi penamaan. Ketika Claude memanggil skill, ia mendapatkan konteks ini segera daripada menghabiskan token membaca beberapa file untuk memahami struktur.303[Skill](/docs/id/skills) dapat memberi Claude pengetahuan domain sehingga tidak harus menjelajahi. Misalnya, skill "codebase-overview" dapat mendeskripsikan arsitektur proyek Anda, direktori kunci, dan konvensi penamaan. Ketika Claude memanggil skill, ia mendapatkan konteks ini segera daripada menghabiskan token membaca beberapa file untuk memahami struktur.

304 304 


353 Pindahkan instruksi dari CLAUDE.md ke skills353 Pindahkan instruksi dari CLAUDE.md ke skills

354</h3>354</h3>

355 355 

356File [CLAUDE.md](/docs/id/memory) Anda dimuat ke konteks saat awal sesi. Jika berisi instruksi terperinci untuk alur kerja spesifik (seperti ulasan PR atau migrasi database), token tersebut ada bahkan ketika Anda melakukan pekerjaan yang tidak terkait. [Skills](/docs/id/skills) dimuat sesuai permintaan hanya saat dipanggil, jadi memindahkan instruksi khusus ke skills menjaga konteks dasar Anda tetap lebih kecil. Bertujuan untuk menjaga CLAUDE.md di bawah 200 baris dengan hanya menyertakan hal-hal penting.356File [CLAUDE.md](/docs/id/memory) Anda dimuat ke konteks saat awal sesi. Jika berisi instruksi terperinci untuk alur kerja spesifik (seperti ulasan PR atau migrasi database), token tersebut ada bahkan ketika Anda melakukan pekerjaan yang tidak terkait. [Skills](/docs/id/skills) dimuat sesuai permintaan hanya saat dipanggil, jadi memindahkan instruksi khusus ke skills menjaga konteks dasar Anda tetap lebih kecil. Usahakan untuk menjaga CLAUDE.md di bawah 200 baris dengan hanya menyertakan hal-hal penting.

357 357 

358<h3 id="adjust-extended-thinking">358<h3 id="adjust-extended-thinking">

359 Sesuaikan pemikiran yang diperluas359 Sesuaikan extended thinking

360</h3>360</h3>

361 361 

362Pemikiran yang diperluas diaktifkan secara default karena secara signifikan meningkatkan kinerja pada tugas perencanaan dan penalaran yang kompleks. Token pemikiran ditagih sebagai token output, dan anggaran default dapat mencapai puluhan ribu token per permintaan tergantung pada model.362Extended thinking diaktifkan secara default karena secara signifikan meningkatkan kinerja pada tugas perencanaan dan penalaran yang kompleks. Thinking token ditagih sebagai token output, dan anggaran default dapat mencapai puluhan ribu token per permintaan tergantung pada model.

363 363 

364Untuk tugas yang lebih sederhana di mana penalaran mendalam tidak diperlukan, Anda dapat mengurangi biaya dengan menurunkan [tingkat upaya](/docs/id/model-config#adjust-effort-level) dengan `/effort` atau di `/model`, atau dengan menonaktifkan pemikiran di `/config`. Anda tidak dapat mematikan pemikiran pada Opus 5.5, Sonnet 5.5, atau model Fable, yang selalu menggunakan pemikiran yang diperluas.364Untuk tugas yang lebih sederhana di mana penalaran mendalam tidak diperlukan, Anda dapat mengurangi biaya dengan menurunkan [tingkat effort](/docs/id/model-config#adjust-effort-level) dengan `/effort` atau di `/model`, atau dengan menonaktifkan thinking di `/config`. Anda tidak dapat mematikan thinking pada Opus 5.5, Sonnet 5.5, Haiku 5.5, atau model Fable, yang selalu menggunakan extended thinking.

365 365 

366Pada model dengan [anggaran pemikiran tetap](/docs/id/model-config#adaptive-reasoning-and-fixed-thinking-budgets), Anda juga dapat menurunkan anggaran dengan menetapkan [variabel lingkungan](/docs/id/env-vars) `MAX_THINKING_TOKENS`, misalnya `MAX_THINKING_TOKENS=8000`. Model adaptive-reasoning mengabaikan anggaran bukan nol, jadi gunakan tingkat upaya di sana.366Pada model dengan [thinking budget tetap](/docs/id/model-config#adaptive-reasoning-and-fixed-thinking-budgets), Anda juga dapat menurunkan anggaran dengan menetapkan [environment variable](/docs/id/env-vars) `MAX_THINKING_TOKENS`, misalnya `MAX_THINKING_TOKENS=8000`. Model adaptive-reasoning mengabaikan anggaran bukan nol, jadi gunakan tingkat effort di sana.

367 367 

368<h3 id="delegate-verbose-operations-to-subagents">368<h3 id="delegate-verbose-operations-to-subagents">

369 Delegasikan operasi verbose ke subagents369 Delegasikan operasi verbose ke subagent

370</h3>370</h3>

371 371 

372Menjalankan tes, mengambil dokumentasi, atau memproses file log dapat mengonsumsi konteks yang signifikan. Delegasikan ini ke [subagents](/docs/id/sub-agents#isolate-high-volume-operations) sehingga output verbose tetap dalam konteks subagent sementara hanya ringkasan yang kembali ke percakapan utama Anda.372Menjalankan tes, mengambil dokumentasi, atau memproses file log dapat mengonsumsi konteks yang signifikan. Delegasikan ini ke [subagent](/docs/id/sub-agents#isolate-high-volume-operations) sehingga output verbose tetap dalam konteks subagent sementara hanya ringkasan yang kembali ke percakapan utama Anda.

373 373 

374Permintaan subagent sendiri masih menarik penggunaan Anda. Untuk menghabiskan lebih sedikit pada mereka, [pilih model yang lebih kecil untuk subagent](/docs/id/sub-agents#choose-a-model) atau [jalankan setiap subagent pada satu model](/docs/id/sub-agents#run-every-subagent-on-one-model).374Permintaan subagent sendiri masih menarik penggunaan Anda. Untuk menghabiskan lebih sedikit pada mereka, [pilih model yang lebih kecil untuk subagent](/docs/id/sub-agents#choose-a-model) atau [jalankan setiap subagent pada satu model](/docs/id/sub-agents#run-every-subagent-on-one-model).

375 375 

376<h3 id="manage-agent-team-costs">376<h3 id="manage-agent-team-costs">

377 Kelola biaya tim agen377 Kelola biaya tim agent

378</h3>378</h3>

379 379 

380Tim agen menggunakan sekitar 7x lebih banyak token daripada sesi standar ketika rekan kerja berjalan dalam plan mode, karena setiap rekan kerja mempertahankan jendela konteks sendiri dan berjalan sebagai instans Claude terpisah. Jaga tugas tim tetap kecil dan mandiri untuk membatasi penggunaan token per rekan kerja. Lihat [tim agen](/docs/id/agent-teams) untuk detail.380Tim agent menggunakan sekitar 7x lebih banyak token daripada sesi standar ketika rekan kerja berjalan dalam plan mode, karena setiap rekan kerja mempertahankan context window sendiri dan berjalan sebagai instans Claude terpisah. Jaga tugas tim tetap kecil dan mandiri untuk membatasi penggunaan token per rekan kerja. Lihat [tim agent](/docs/id/agent-teams) untuk detail.

381 381 

382<h3 id="write-specific-prompts">382<h3 id="write-specific-prompts">

383 Tulis prompt spesifik383 Tulis prompt spesifik

384</h3>384</h3>

385 385 

386Permintaan yang tidak jelas seperti "tingkatkan basis kode ini" memicu pemindaian luas. Permintaan spesifik seperti "tambahkan validasi input ke fungsi login di auth.ts" memungkinkan Claude bekerja secara efisien dengan pembacaan file minimal.386Permintaan yang tidak jelas seperti "tingkatkan codebase ini" memicu pemindaian luas. Permintaan spesifik seperti "tambahkan validasi input ke fungsi login di auth.ts" memungkinkan Claude bekerja secara efisien dengan pembacaan file minimal.

387 387 

388<h3 id="work-efficiently-on-complex-tasks">388<h3 id="work-efficiently-on-complex-tasks">

389 Bekerja secara efisien pada tugas yang kompleks389 Bekerja secara efisien pada tugas yang kompleks


391 391 

392Untuk pekerjaan yang lebih lama atau lebih kompleks, kebiasaan ini membantu menghindari token yang terbuang dari mengambil jalan yang salah:392Untuk pekerjaan yang lebih lama atau lebih kompleks, kebiasaan ini membantu menghindari token yang terbuang dari mengambil jalan yang salah:

393 393 

394* **Gunakan plan mode untuk tugas yang kompleks**: Tekan Shift+Tab untuk memasuki [plan mode](/docs/id/permission-modes#analyze-before-you-edit-with-plan-mode) sebelum implementasi. Claude menjelajahi basis kode dan mengusulkan pendekatan untuk persetujuan Anda, mencegah pekerjaan ulang yang mahal ketika arah awal salah.394* **Gunakan plan mode untuk tugas yang kompleks**: Tekan Shift+Tab untuk beralih ke [plan mode](/docs/id/permission-modes#analyze-before-you-edit-with-plan-mode) sebelum implementasi. Claude menjelajahi codebase dan mengusulkan pendekatan untuk persetujuan Anda, mencegah pekerjaan ulang yang mahal ketika arah awal salah.

395* **Koreksi kursus lebih awal**: Jika Claude mulai menuju arah yang salah, tekan Escape untuk berhenti segera. Gunakan `/rewind` atau tekan dua kali Escape untuk mengembalikan percakapan dan kode ke checkpoint sebelumnya.395* **Koreksi arah lebih awal**: Jika Claude mulai menuju arah yang salah, tekan Escape untuk berhenti segera. Gunakan `/rewind` atau tekan dua kali Escape untuk mengembalikan percakapan dan kode ke checkpoint sebelumnya.

396* **Berikan target verifikasi**: Sertakan kasus uji, tempel tangkapan layar, atau tentukan output yang diharapkan dalam prompt Anda. Ketika Claude dapat memverifikasi pekerjaan sendiri, ia menangkap masalah sebelum Anda perlu meminta perbaikan.396* **Berikan target verifikasi**: Sertakan kasus uji, tempel tangkapan layar, atau tentukan output yang diharapkan dalam prompt Anda. Ketika Claude dapat memverifikasi pekerjaan sendiri, ia menangkap masalah sebelum Anda perlu meminta perbaikan.

397* **Uji secara bertahap**: Tulis satu file, uji, kemudian lanjutkan. Ini menangkap masalah lebih awal ketika murah untuk diperbaiki.397* **Uji secara bertahap**: Tulis satu file, uji, kemudian lanjutkan. Ini menangkap masalah lebih awal.

398 398 

399<h2 id="background-token-usage">399<h2 id="background-token-usage">

400 Penggunaan token latar belakang400 Penggunaan token latar belakang

desktop.md +4 −4

Details

108 Ketersediaan auto mode108 Ketersediaan auto mode

109</h4>109</h4>

110 110 

111Auto mode tersedia untuk semua pengguna di Anthropic API dan memerlukan Claude Opus 4.6 atau lebih baru, Sonnet 4.6 atau lebih baru, atau [model Fable](/docs/id/model-config#work-with-fable). Administrator organisasi dapat menonaktifkan auto mode dengan kunci `disableAutoMode` di [pengaturan terkelola](#managed-settings).111Auto mode tersedia untuk semua pengguna di Anthropic API dan memerlukan Claude Opus 4.6 atau lebih baru, Sonnet 4.6 atau lebih baru, Haiku 5.5, atau [model Fable](/docs/id/model-config#work-with-fable). Administrator organisasi dapat menonaktifkan auto mode dengan kunci `disableAutoMode` di [pengaturan terkelola](#managed-settings).

112 112 

113Dalam deployment Enterprise yang merutekan Desktop ke Google Cloud's Agent Platform, auto mode juga tersedia secara default; lihat [Auto mode on Bedrock, Agent Platform, or Foundry](/docs/id/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry) untuk model yang didukung.113Dalam deployment Enterprise yang merutekan Desktop ke Google Cloud's Agent Platform, auto mode juga tersedia secara default; lihat [Auto mode on Bedrock, Agent Platform, or Foundry](/docs/id/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry) untuk model yang didukung.

114 114 


743 743 

744Untuk mengatur variabel lingkungan untuk sesi lokal dan dev server di platform apa pun, buka dropdown lingkungan di kotak prompt, arahkan ke **Local**, dan klik ikon gear untuk membuka editor lingkungan lokal. Variabel yang Anda simpan di sini disimpan terenkripsi di mesin Anda dan berlaku untuk setiap sesi lokal dan server pratinjau yang Anda mulai. Anda juga dapat menambahkan variabel ke kunci `env` di file `~/.claude/settings.json` Anda, meskipun ini hanya mencapai sesi Claude dan bukan dev server. Lihat [environment variables](/docs/id/env-vars) untuk daftar lengkap variabel yang didukung.744Untuk mengatur variabel lingkungan untuk sesi lokal dan dev server di platform apa pun, buka dropdown lingkungan di kotak prompt, arahkan ke **Local**, dan klik ikon gear untuk membuka editor lingkungan lokal. Variabel yang Anda simpan di sini disimpan terenkripsi di mesin Anda dan berlaku untuk setiap sesi lokal dan server pratinjau yang Anda mulai. Anda juga dapat menambahkan variabel ke kunci `env` di file `~/.claude/settings.json` Anda, meskipun ini hanya mencapai sesi Claude dan bukan dev server. Lihat [environment variables](/docs/id/env-vars) untuk daftar lengkap variabel yang didukung.

745 745 

746[Extended thinking](/docs/id/model-config#extended-thinking) diaktifkan secara default, yang meningkatkan kinerja pada tugas penalaran kompleks tetapi menggunakan token tambahan. Pada Anthropic API, atur `MAX_THINKING_TOKENS` ke `0` di editor lingkungan lokal untuk mematikan pemikiran; ini tidak berpengaruh pada Opus 5.5, Sonnet 5.5, atau model Fable, yang selalu menggunakan extended thinking. Dengan pemikiran dimatikan pada Anthropic API, Claude Code mengirimkan effort `high` alih-alih level yang lebih tinggi ke model yang diketahui [tidak menerima kombinasi itu](/docs/id/errors#effort-isnt-available-with-thinking-turned-off), seperti Opus 5.746[Extended thinking](/docs/id/model-config#extended-thinking) diaktifkan secara default, yang meningkatkan kinerja pada tugas penalaran kompleks tetapi menggunakan token tambahan. Pada Anthropic API, atur `MAX_THINKING_TOKENS` ke `0` di editor lingkungan lokal untuk mematikan pemikiran; ini tidak berpengaruh pada Opus 5.5, Sonnet 5.5, Haiku 5.5, atau model Fable, yang selalu menggunakan extended thinking. Dengan pemikiran dimatikan pada Anthropic API, Claude Code mengirimkan effort `high` alih-alih level yang lebih tinggi ke model yang diketahui [tidak menerima kombinasi itu](/docs/id/errors#effort-isnt-available-with-thinking-turned-off), seperti Opus 5.

747 747 

748Pada model dengan [adaptive reasoning](/docs/id/model-config#adjust-effort-level), Claude Code mengabaikan angka itu sendiri dalam nilai `MAX_THINKING_TOKENS` yang positif karena adaptive reasoning mengontrol kedalaman pemikiran sebagai gantinya. Pada Opus 4.6 dan Sonnet 4.6, atur `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` ke `1` untuk menggunakan thinking budget tetap; model Fable, Sonnet 5 dan yang lebih baru, serta Opus 4.7 dan yang lebih baru selalu menggunakan adaptive reasoning dan tidak memiliki mode anggaran tetap.748Pada model dengan [adaptive reasoning](/docs/id/model-config#adjust-effort-level), Claude Code mengabaikan angka itu sendiri dalam nilai `MAX_THINKING_TOKENS` yang positif karena adaptive reasoning mengontrol kedalaman pemikiran sebagai gantinya. Pada Opus 4.6 dan Sonnet 4.6, atur `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` ke `1` untuk menggunakan thinking budget tetap; model Fable, Sonnet 5 dan yang lebih baru, Haiku 5.5, serta Opus 4.7 dan yang lebih baru selalu menggunakan adaptive reasoning dan tidak memiliki mode anggaran tetap.

749 749 

750<h4 id="local-sessions-on-managed-devices">750<h4 id="local-sessions-on-managed-devices">

751 Local sessions on managed devices751 Local sessions on managed devices


1092Untuk melihat versi aplikasi desktop yang Anda jalankan:1092Untuk melihat versi aplikasi desktop yang Anda jalankan:

1093 1093 

1094* **macOS**: klik **Claude** di menu bar, kemudian **About Claude**1094* **macOS**: klik **Claude** di menu bar, kemudian **About Claude**

1095* **Windows**: klik **Help**, kemudian **About**1095* **Windows**: klik **Help**, kemudian **About Claude**

1096 1096 

1097Klik nomor versi untuk menyalinnya ke clipboard Anda.1097Klik nomor versi untuk menyalinnya ke clipboard Anda.

1098 1098 

Details

92* Simpan tangkapan layar dengan **Cmd+S** atau perekaman layar dengan **Cmd+R**, menggunakan tombol tangkap pane atau pintasan keyboard; file disimpan ke Desktop Anda92* Simpan tangkapan layar dengan **Cmd+S** atau perekaman layar dengan **Cmd+R**, menggunakan tombol tangkap pane atau pintasan keyboard; file disimpan ke Desktop Anda

93* Hentikan streaming perangkat tanpa mematikannya dengan mengklik **Detach simulator**, yang mengembalikan pane ke status **Attach simulator**93* Hentikan streaming perangkat tanpa mematikannya dengan mengklik **Detach simulator**, yang mengembalikan pane ke status **Attach simulator**

94 94 

95Untuk menyesuaikan stream video dari simulator, buka menu **Display** pada pane. Kurangi **Frame rate** atau **Resolution** jika pane membebani Mac Anda. Kedua pengaturan ini mengubah cara pane menampilkan perangkat, bukan cara aplikasi berjalan.95Jika pane menampilkan menu **Display**, gunakan menu tersebut untuk menyesuaikan stream video dari simulator. Kurangi **Frame rate** atau **Resolution** jika pane membebani Mac Anda. Kedua pengaturan ini mengubah cara pane menampilkan perangkat, bukan cara aplikasi berjalan.

96 96 

97Anda dan Claude mengendalikan perangkat yang sama, jadi ketukan Anda mengubah status aplikasi yang Claude lihat. Untuk membuat Claude memeriksa layar tertentu, navigasikan ke sana dengan mengetuk, lalu minta. Sementara Claude mengendalikan perangkat, pane menampilkan lencana **Claude is using this device** di atas layar; tahan mengetuk sampai lencana hilang, sehingga hasilnya mencerminkan aplikasi daripada input Anda.97Anda dan Claude mengendalikan perangkat yang sama, jadi ketukan Anda mengubah status aplikasi yang Claude lihat. Untuk membuat Claude memeriksa layar tertentu, navigasikan ke sana dengan mengetuk, lalu minta. Sementara Claude mengendalikan perangkat, pane menampilkan lencana **Claude is using this device** di atas layar; tahan mengetuk sampai lencana hilang, sehingga hasilnya mencerminkan aplikasi daripada input Anda.

98 98 

env-vars.md +271 −267

Details

93}93}

94```94```

95 95 

96Claude Code menyalin nilai-nilai ini ke lingkungannya persis seperti yang ditulis. Tidak ada shell yang memprosesnya, sehingga singkatan seperti `~` atau `$HOME` tetap seperti yang diketik. Untuk variabel yang menerima path, seperti `CLAUDE_CONFIG_DIR`, tulis path absolut: `"CLAUDE_CONFIG_DIR": "/home/you/.claude-work"`.

97 

96File yang Anda pilih mengontrol siapa variabel berlaku untuk:98File yang Anda pilih mengontrol siapa variabel berlaku untuk:

97 99 

98| File | Berlaku untuk |100| File | Berlaku untuk |


124 Variabel126 Variabel

125</h2>127</h2>

126 128 

127Variabel numerik seperti timeout, anggaran token, dan jumlah retry menerima notasi ilmiah dan penulisan dengan pemisah digit selain digit biasa, kecuali jika baris variabel tersebut mencatat bahwa variabel itu hanya menerima digit biasa. Misalnya, Claude Code membaca `2e3` sebagai 2000 dan `64_000` sebagai 64000. Sebelum v2.1.211, penulisan ini dapat secara diam-diam menetapkan nilai yang jauh lebih kecil, seperti `1e6` yang menetapkan timeout menjadi 1.129Variabel numerik seperti timeout, anggaran token, dan jumlah retry menerima notasi ilmiah dan penulisan dengan pemisah digit selain digit biasa, kecuali jika baris variabel tersebut menyatakan bahwa variabel itu hanya menerima digit biasa. Misalnya, Claude Code membaca `2e3` sebagai 2000 dan `64_000` sebagai 64000. Sebelum v2.1.211, penulisan seperti ini dapat secara diam-diam menetapkan nilai yang jauh lebih kecil, seperti `1e6` yang menetapkan timeout menjadi 1.

128 130 

129<Note>131<Note>

130 Untuk variabel yang mengaktifkan atau mematikan suatu perilaku, atur `1`, `true`, `yes`, atau `on` untuk mengaktifkannya dan `0`, `false`, `no`, atau `off` untuk mematikannya, dalam huruf besar maupun kecil.132 Untuk variabel yang mengaktifkan atau menonaktifkan suatu perilaku, atur `1`, `true`, `yes`, atau `on` untuk mengaktifkannya dan `0`, `false`, `no`, atau `off` untuk menonaktifkannya, dengan penulisan huruf besar atau kecil apa pun.

131 133 

132 Beberapa variabel hanya membaca apakah Anda mengaturnya atau tidak, sehingga nilai apa pun yang tidak kosong termasuk `0` akan mengaktifkan perilaku tersebut, dan Anda mematikan perilaku itu dengan menghapus variabel atau mengaturnya ke nilai kosong. Variabel-variabel berikut bekerja dengan cara tersebut:134 Beberapa variabel hanya membaca apakah Anda mengaturnya atau tidak, sehingga nilai tidak kosong apa pun termasuk `0` akan mengaktifkan perilaku tersebut, dan Anda menonaktifkan perilaku tersebut dengan menghapus variabel atau mengaturnya ke nilai kosong. Variabel-variabel berikut bekerja dengan cara tersebut:

133 135 

134 * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`136 * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`

135 * `DISABLE_TELEMETRY`137 * `DISABLE_TELEMETRY`


138 * `FALLBACK_FOR_ALL_PRIMARY_MODELS`140 * `FALLBACK_FOR_ALL_PRIMARY_MODELS`

139 * `IS_DEMO`141 * `IS_DEMO`

140 142 

141 Satu variabel lain memiliki aturannya sendiri: `FORCE_HYPERLINK` membaca angka, sehingga hanya `0` yang mematikannya. Baris setiap variabel juga menyatakan aturannya sendiri.143 Satu variabel lain memiliki aturannya sendiri: `FORCE_HYPERLINK` membaca angka, sehingga hanya `0` yang menonaktifkannya. Baris setiap variabel juga menyatakan aturannya sendiri.

142</Note>144</Note>

143 145 

144| Variabel | Tujuan |146| Variabel | Tujuan |

145| :- | :- |147| :- | :- |

146| `ANTHROPIC_API_KEY` | Kunci API yang dikirim sebagai header `X-Api-Key`. Jika diatur, kunci ini digunakan sebagai pengganti langganan Claude Pro, Max, Team, atau Enterprise Anda meskipun Anda sudah masuk. Dalam mode non-interaktif (`-p`), kunci selalu digunakan jika ada. Dalam mode interaktif, Anda diminta untuk menyetujui kunci sekali sebelum kunci tersebut menimpa langganan Anda. Untuk menggunakan langganan Anda, jalankan `unset ANTHROPIC_API_KEY` |148| `ANTHROPIC_API_KEY` | Kunci API yang dikirim sebagai header `X-Api-Key`. Jika diatur, kunci ini digunakan sebagai pengganti langganan Claude Pro, Max, Team, atau Enterprise Anda meskipun Anda sudah masuk. Dalam mode non-interaktif (`-p`), kunci selalu digunakan jika ada. Dalam mode interaktif, Anda diminta untuk menyetujui kunci satu kali sebelum kunci tersebut menimpa langganan Anda. Untuk menggunakan langganan Anda, jalankan `unset ANTHROPIC_API_KEY` |

147| `ANTHROPIC_AUTH_TOKEN` | Nilai kustom untuk header `Authorization` (nilai yang Anda atur di sini akan diberi awalan `Bearer `) |149| `ANTHROPIC_AUTH_TOKEN` | Nilai kustom untuk header `Authorization` (nilai yang Anda atur di sini akan diberi awalan `Bearer `) |

148| `ANTHROPIC_AWS_API_KEY` | Kunci API workspace untuk [Claude Platform on AWS](/docs/id/claude-platform-on-aws), yang dibuat di AWS Console. Dikirim sebagai `x-api-key` dan diutamakan daripada AWS SigV4 |150| `ANTHROPIC_AWS_API_KEY` | Kunci API workspace untuk [Claude Platform on AWS](/docs/id/claude-platform-on-aws), yang dibuat di AWS Console. Dikirim sebagai `x-api-key` dan diutamakan daripada AWS SigV4 |

149| `ANTHROPIC_AWS_BASE_URL` | Menimpa URL endpoint [Claude Platform on AWS](/docs/id/claude-platform-on-aws). Gunakan untuk region kustom atau saat merutekan melalui [LLM gateway](/docs/id/llm-gateway). Default-nya `https://aws-external-anthropic.{region}.api.aws`. Claude Code menentukan region dengan [urutan prioritas yang sama seperti di Amazon Bedrock](/docs/id/amazon-bedrock#3-configure-claude-code) |151| `ANTHROPIC_AWS_BASE_URL` | Timpa URL endpoint [Claude Platform on AWS](/docs/id/claude-platform-on-aws). Gunakan untuk region kustom atau saat merutekan melalui [LLM gateway](/docs/id/llm-gateway). Default-nya `https://aws-external-anthropic.{region}.api.aws`. Claude Code menentukan region dengan [urutan prioritas yang sama seperti pada Amazon Bedrock](/docs/id/amazon-bedrock#3-configure-claude-code) |

150| `ANTHROPIC_AWS_WORKSPACE_ID` | Wajib untuk [Claude Platform on AWS](/docs/id/claude-platform-on-aws). Dikirim pada setiap permintaan sebagai header `anthropic-workspace-id` |152| `ANTHROPIC_AWS_WORKSPACE_ID` | Wajib untuk [Claude Platform on AWS](/docs/id/claude-platform-on-aws). Dikirim pada setiap permintaan sebagai header `anthropic-workspace-id` |

151| `ANTHROPIC_BASE_URL` | Menimpa endpoint API untuk merutekan permintaan melalui proxy atau gateway. Jika diatur ke host yang bukan first-party, [MCP tool search](/docs/id/mcp#scale-with-mcp-tool-search) dinonaktifkan secara default. Atur `ENABLE_TOOL_SEARCH=true` jika proxy Anda meneruskan blok `tool_reference`. Sejak v2.1.196, [Remote Control](/docs/id/remote-control#requirements) dinonaktifkan jika variabel ini mengarah ke host selain `api.anthropic.com`, sesuai dengan perilakunya di Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry |153| `ANTHROPIC_BASE_URL` | Timpa endpoint API untuk merutekan permintaan melalui proxy atau gateway. Jika diatur ke host yang bukan first-party, [MCP tool search](/docs/id/mcp#scale-with-mcp-tool-search) dinonaktifkan secara default. Atur `ENABLE_TOOL_SEARCH=true` jika proxy Anda meneruskan blok `tool_reference`. Mulai v2.1.196, [Remote Control](/docs/id/remote-control#requirements) dinonaktifkan jika variabel ini menunjuk ke host selain `api.anthropic.com`, sesuai dengan perilakunya pada Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry |

152| `ANTHROPIC_BEDROCK_BASE_URL` | Menimpa URL endpoint Amazon Bedrock. Gunakan untuk endpoint Amazon Bedrock kustom atau saat merutekan melalui [LLM gateway](/docs/id/llm-gateway). Lihat [Amazon Bedrock](/docs/id/amazon-bedrock) |154| `ANTHROPIC_BEDROCK_BASE_URL` | Timpa URL endpoint Amazon Bedrock. Gunakan untuk endpoint Amazon Bedrock kustom atau saat merutekan melalui [LLM gateway](/docs/id/llm-gateway). Lihat [Amazon Bedrock](/docs/id/amazon-bedrock) |

153| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Menimpa URL endpoint Amazon Bedrock Mantle. Lihat [Endpoint Mantle](/docs/id/amazon-bedrock#use-the-mantle-endpoint) |155| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Timpa URL endpoint Amazon Bedrock Mantle. Lihat [Endpoint Mantle](/docs/id/amazon-bedrock#use-the-mantle-endpoint) |

154| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Awalan profil inferensi lintas region (`us`, `eu`, `apac`, `jp`, `au`, atau `global`) yang dicoba Claude Code terlebih dahulu, alih-alih awalan yang diturunkan dari region AWS. Diabaikan di region AWS GovCloud. Memerlukan Claude Code v2.1.224 atau lebih baru. Lihat [Amazon Bedrock](/docs/id/amazon-bedrock#cross-region-inference-profile-prefixes) |156| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Awalan profil inferensi lintas region (`us`, `eu`, `apac`, `jp`, `au`, atau `global`) yang dicoba Claude Code terlebih dahulu, bukan awalan yang diturunkan dari region AWS. Diabaikan di region AWS GovCloud. Memerlukan Claude Code v2.1.224 atau yang lebih baru. Lihat [Amazon Bedrock](/docs/id/amazon-bedrock#cross-region-inference-profile-prefixes) |

155| `ANTHROPIC_BEDROCK_SERVICE_TIER` | [Tingkat layanan](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html) Amazon Bedrock (`default`, `flex`, atau `priority`). Dikirim sebagai header `X-Amzn-Bedrock-Service-Tier`. Lihat [Amazon Bedrock](/docs/id/amazon-bedrock#service-tiers) |157| `ANTHROPIC_BEDROCK_SERVICE_TIER` | [Tingkat layanan](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html) Amazon Bedrock (`default`, `flex`, atau `priority`). Dikirim sebagai header `X-Amzn-Bedrock-Service-Tier`. Lihat [Amazon Bedrock](/docs/id/amazon-bedrock#service-tiers) |

156| `ANTHROPIC_BETAS` | Daftar nilai header `anthropic-beta` tambahan yang dipisahkan koma untuk disertakan dalam permintaan API. Claude Code sudah mengirim header beta yang dibutuhkannya; gunakan ini untuk ikut serta dalam [beta Anthropic API](https://platform.claude.com/docs/en/api/beta-headers) sebelum Claude Code menambahkan dukungan native. Berbeda dengan [flag `--betas`](/docs/id/cli-reference#cli-flags), yang memerlukan autentikasi kunci API, variabel ini berfungsi dengan semua metode autentikasi termasuk langganan Claude.ai |158| `ANTHROPIC_BETAS` | Daftar nilai header `anthropic-beta` tambahan yang dipisahkan koma untuk disertakan dalam permintaan API. Claude Code sudah mengirimkan header beta yang dibutuhkannya; gunakan ini untuk ikut serta dalam [beta Anthropic API](https://platform.claude.com/docs/en/api/beta-headers) sebelum Claude Code menambahkan dukungan native. Berbeda dengan [flag `--betas`](/docs/id/cli-reference#cli-flags), yang memerlukan autentikasi kunci API, variabel ini berfungsi dengan semua metode autentikasi termasuk langganan Claude.ai |

157| `ANTHROPIC_CUSTOM_HEADERS` | Header kustom untuk ditambahkan ke permintaan (format `Name: Value`, dipisahkan baris baru untuk beberapa header). Jika sebuah nama atau nilai berisi karakter yang tidak dapat dibawa oleh header HTTP, seperti tanda kutip melengkung atau spasi dengan lebar nol, permintaan gagal dengan error yang mengidentifikasi pasangan tersebut berdasarkan posisinya. Memerlukan Claude Code v2.1.227 atau lebih baru. [Invalid request header value](/docs/id/errors#invalid-request-header-value) mencantumkan kumpulan karakter yang tepat dan di mana pemeriksaan dijalankan. Nilai yang mengatur header kredensial, organisasi atau tenant, perutean, atau perilaku API, seperti `Authorization` atau `Host`, dihitung sebagai [pengaturan yang memerlukan persetujuan](/docs/id/server-managed-settings#environment-variables-and-the-approval-dialog) jika dikirimkan oleh pengaturan yang dikelola server. Dari pengaturan proyek atau lokal, nilai seperti itu mengikuti [aturan kapan nilai `env` berlaku](/docs/id/settings-reference#when-claude-code-applies-env-values) |159| `ANTHROPIC_CUSTOM_HEADERS` | Header kustom untuk ditambahkan ke permintaan (format `Name: Value`, dipisahkan baris baru untuk beberapa header). Jika nama atau nilai berisi karakter yang tidak dapat dibawa oleh header HTTP, seperti tanda kutip melengkung atau spasi lebar-nol, permintaan gagal dengan error yang mengidentifikasi pasangan tersebut berdasarkan posisinya. Memerlukan Claude Code v2.1.227 atau yang lebih baru. [Invalid request header value](/docs/id/errors#invalid-request-header-value) mencantumkan set karakter yang tepat dan di mana pemeriksaan dijalankan. Nilai yang mengatur header kredensial, organisasi atau tenant, perutean, atau perilaku API, seperti `Authorization` atau `Host`, dihitung sebagai [pengaturan yang memerlukan persetujuan](/docs/id/server-managed-settings#environment-variables-and-the-approval-dialog) ketika pengaturan yang dikelola server mengirimkannya. Dari pengaturan proyek atau lokal, nilai seperti itu mengikuti [aturan kapan nilai `env` berlaku](/docs/id/settings-reference#when-claude-code-applies-env-values) |

158| `ANTHROPIC_CUSTOM_MODEL_OPTION` | ID model untuk ditambahkan sebagai entri kustom di pemilih `/model`. Gunakan ini agar model non-standar atau khusus gateway dapat dipilih tanpa mengganti alias bawaan. Lihat [Konfigurasi model](/docs/id/model-config#add-a-custom-model-option) |160| `ANTHROPIC_CUSTOM_MODEL_OPTION` | ID model yang ditambahkan sebagai entri kustom di pemilih `/model`. Gunakan ini agar model non-standar atau khusus gateway dapat dipilih tanpa mengganti alias bawaan. Lihat [Konfigurasi model](/docs/id/model-config#add-a-custom-model-option) |

159| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | Deskripsi tampilan untuk entri model kustom di pemilih `/model`. Default-nya `Custom model (<model-id>)` jika tidak diatur |161| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | Deskripsi tampilan untuk entri model kustom di pemilih `/model`. Default-nya `Custom model (<model-id>)` jika tidak diatur |

160| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Nama tampilan untuk entri model kustom di pemilih `/model`. Jika tidak diatur, entri menampilkan nama model jika Claude Code [mengenali ID tersebut](/docs/id/model-config#customize-pinned-model-display-and-capabilities), dan ID model jika tidak |162| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Nama tampilan untuk entri model kustom di pemilih `/model`. Jika tidak diatur, entri menampilkan nama model jika Claude Code [mengenali ID tersebut](/docs/id/model-config#customize-pinned-model-display-and-capabilities), dan ID model jika tidak |

161| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model kustom, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |163| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model kustom, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

162| `ANTHROPIC_DEFAULT_FABLE_MODEL` | ID model yang menjadi tujuan alias `fable`, dan ID yang dikenali Claude Code sebagai model Fable untuk [fallback model otomatis](/docs/id/model-config#automatic-model-fallback) pada penyedia pihak ketiga. Lihat [Konfigurasi model](/docs/id/model-config#environment-variables) |164| `ANTHROPIC_DEFAULT_FABLE_MODEL` | ID model yang menjadi tujuan resolusi alias `fable`, dan ID yang dikenali Claude Code sebagai model Fable untuk [fallback model otomatis](/docs/id/model-config#automatic-model-fallback) pada penyedia pihak ketiga. Lihat [Konfigurasi model](/docs/id/model-config#environment-variables) |

163| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Fable yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan deskripsi default yang diawali `Custom Fable model`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |165| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Fable yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan deskripsi default yang diawali `Custom Fable model`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

164| `ANTHROPIC_DEFAULT_FABLE_MODEL_NAME` | Nama tampilan untuk model Fable yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |166| `ANTHROPIC_DEFAULT_FABLE_MODEL_NAME` | Nama tampilan untuk model Fable yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

165| `ANTHROPIC_DEFAULT_FABLE_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model Fable yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |167| `ANTHROPIC_DEFAULT_FABLE_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model Fable yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

166| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | ID model yang menjadi tujuan alias `haiku`, juga digunakan untuk [fungsionalitas latar belakang](/docs/id/costs#background-token-usage). Lihat [Konfigurasi model](/docs/id/model-config#environment-variables) |168| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | ID model yang menjadi tujuan resolusi alias `haiku`, juga digunakan untuk [fungsionalitas latar belakang](/docs/id/costs#background-token-usage). Lihat [Konfigurasi model](/docs/id/model-config#environment-variables) |

167| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Haiku yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan deskripsi default yang diawali `Custom Haiku model`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |169| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Haiku yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan deskripsi default yang diawali `Custom Haiku model`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

168| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | Nama tampilan untuk model Haiku yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |170| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | Nama tampilan untuk model Haiku yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

169| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model Haiku yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |171| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model Haiku yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

170| `ANTHROPIC_DEFAULT_MODEL` | Model yang digunakan sesi baru secara default saat dimulai. Memerlukan Claude Code v2.1.236 atau lebih baru. Lihat [Menetapkan model default untuk sesi baru](/docs/id/model-config#set-a-default-model-for-new-sessions) |172| `ANTHROPIC_DEFAULT_MODEL` | Model yang digunakan sesi baru secara default saat dimulai. Memerlukan Claude Code v2.1.236 atau yang lebih baru. Lihat [Mengatur model default untuk sesi baru](/docs/id/model-config#set-a-default-model-for-new-sessions) |

171| `ANTHROPIC_DEFAULT_OPUS_MODEL` | ID model yang menjadi tujuan alias `opus`, dan yang digunakan `opusplan` saat Plan Mode aktif. Lihat [Konfigurasi model](/docs/id/model-config#environment-variables) |173| `ANTHROPIC_DEFAULT_OPUS_MODEL` | ID model yang menjadi tujuan resolusi alias `opus`, dan yang digunakan `opusplan` saat Plan Mode aktif. Lihat [Konfigurasi model](/docs/id/model-config#environment-variables) |

172| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Opus yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan deskripsi default yang diawali `Custom Opus model`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |174| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Opus yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan deskripsi default yang diawali `Custom Opus model`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

173| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | Nama tampilan untuk model Opus yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |175| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | Nama tampilan untuk model Opus yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

174| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model Opus yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |176| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model Opus yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

175| `ANTHROPIC_DEFAULT_SONNET_MODEL` | ID model yang menjadi tujuan alias `sonnet`, dan yang digunakan `opusplan` saat Plan Mode tidak aktif. Lihat [Konfigurasi model](/docs/id/model-config#environment-variables) |177| `ANTHROPIC_DEFAULT_SONNET_MODEL` | ID model yang menjadi tujuan resolusi alias `sonnet`, dan yang digunakan `opusplan` saat Plan Mode tidak aktif. Lihat [Konfigurasi model](/docs/id/model-config#environment-variables) |

176| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Sonnet yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan deskripsi default yang diawali `Custom Sonnet model`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |178| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Sonnet yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan deskripsi default yang diawali `Custom Sonnet model`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

177| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Nama tampilan untuk model Sonnet yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |179| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Nama tampilan untuk model Sonnet yang disematkan di pemilih `/model`. Jika tidak diatur, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

178| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model Sonnet yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |180| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kapabilitas](/docs/id/model-config#customize-pinned-model-display-and-capabilities) yang didukung model Sonnet yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](/docs/id/model-config#customize-pinned-model-display-and-capabilities) |

179| `ANTHROPIC_FEDERATION_RULE_ID` | ID aturan federasi untuk [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Jika Anda mengaturnya bersama `ANTHROPIC_ORGANIZATION_ID`, Claude Code memilih kredensial federasi, yang berperingkat lebih tinggi daripada kredensial `/login` Anda. Lihat [prioritas autentikasi](/docs/id/authentication#authentication-precedence) |181| `ANTHROPIC_FEDERATION_RULE_ID` | ID aturan federasi untuk [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Jika Anda mengaturnya bersama `ANTHROPIC_ORGANIZATION_ID`, Claude Code memilih kredensial federasi, yang memiliki peringkat di atas kredensial `/login` Anda. Lihat [urutan prioritas autentikasi](/docs/id/authentication#authentication-precedence) |

180| `ANTHROPIC_FOUNDRY_API_KEY` | Kunci API untuk autentikasi Microsoft Foundry (lihat [Microsoft Foundry](/docs/id/microsoft-foundry)) |182| `ANTHROPIC_FOUNDRY_API_KEY` | Kunci API untuk autentikasi Microsoft Foundry (lihat [Microsoft Foundry](/docs/id/microsoft-foundry)) |

181| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | Bearer token untuk autentikasi Microsoft Foundry, seperti token akses Microsoft Entra. Claude Code mengirimkannya sebagai header `Authorization: Bearer`. Diutamakan daripada `ANTHROPIC_FOUNDRY_API_KEY` dan daripada rantai kredensial default Azure. Lihat [Microsoft Foundry](/docs/id/microsoft-foundry). Memerlukan Claude Code v2.1.203 atau lebih baru |183| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | Token bearer untuk autentikasi Microsoft Foundry, seperti token akses Microsoft Entra. Claude Code mengirimkannya sebagai header `Authorization: Bearer`. Diutamakan daripada `ANTHROPIC_FOUNDRY_API_KEY` dan rantai kredensial default Azure. Lihat [Microsoft Foundry](/docs/id/microsoft-foundry). Memerlukan Claude Code v2.1.203 atau yang lebih baru |

182| `ANTHROPIC_FOUNDRY_BASE_URL` | URL dasar lengkap untuk resource Microsoft Foundry (misalnya, `https://my-resource.services.ai.azure.com/anthropic`). Alternatif untuk `ANTHROPIC_FOUNDRY_RESOURCE` (lihat [Microsoft Foundry](/docs/id/microsoft-foundry)) |184| `ANTHROPIC_FOUNDRY_BASE_URL` | URL dasar lengkap untuk resource Microsoft Foundry (misalnya, `https://my-resource.services.ai.azure.com/anthropic`). Alternatif untuk `ANTHROPIC_FOUNDRY_RESOURCE` (lihat [Microsoft Foundry](/docs/id/microsoft-foundry)) |

183| `ANTHROPIC_FOUNDRY_RESOURCE` | Nama resource Microsoft Foundry (misalnya, `my-resource`). Claude Code [menolak URL atau nama host](/docs/id/errors#anthropic-foundry-resource-must-be-a-foundry-resource-name). Wajib jika `ANTHROPIC_FOUNDRY_BASE_URL` tidak diatur (lihat [Microsoft Foundry](/docs/id/microsoft-foundry)) |185| `ANTHROPIC_FOUNDRY_RESOURCE` | Nama resource Microsoft Foundry (misalnya, `my-resource`). Claude Code [menolak URL atau nama host](/docs/id/errors#anthropic-foundry-resource-must-be-a-foundry-resource-name). Wajib jika `ANTHROPIC_FOUNDRY_BASE_URL` tidak diatur (lihat [Microsoft Foundry](/docs/id/microsoft-foundry)) |

184| `ANTHROPIC_MODEL` | Nama pengaturan model yang akan digunakan (lihat [Konfigurasi Model](/docs/id/model-config#environment-variables)) |186| `ANTHROPIC_MODEL` | Nama pengaturan model yang akan digunakan (lihat [Konfigurasi Model](/docs/id/model-config#environment-variables)) |

185| `ANTHROPIC_ORGANIZATION_ID` | ID organisasi untuk [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Atur bersama `ANTHROPIC_FEDERATION_RULE_ID`. Lihat [prioritas autentikasi](/docs/id/authentication#authentication-precedence) |187| `ANTHROPIC_ORGANIZATION_ID` | ID organisasi untuk [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Atur bersama `ANTHROPIC_FEDERATION_RULE_ID`. Lihat [urutan prioritas autentikasi](/docs/id/authentication#authentication-precedence) |

186| `ANTHROPIC_PROFILE` | Nama profil Anthropic yang digunakan untuk autentikasi, seperti profil yang dibuat oleh [`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) atau dengan [masuk ke akun Console tanpa kunci API](/docs/id/authentication#sign-in-without-an-api-key). Lihat [prioritas autentikasi](/docs/id/authentication#authentication-precedence) |188| `ANTHROPIC_PROFILE` | Nama profil Anthropic yang digunakan untuk autentikasi, seperti profil yang dibuat oleh [`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) atau dengan [masuk ke akun Console tanpa kunci API](/docs/id/authentication#sign-in-without-an-api-key). Lihat [urutan prioritas autentikasi](/docs/id/authentication#authentication-precedence) |

187| `ANTHROPIC_SMALL_FAST_MODEL` | \[DEPRECATED] Nama [model kelas Haiku untuk tugas latar belakang](/docs/id/costs) |189| `ANTHROPIC_SMALL_FAST_MODEL` | \[DEPRECATED] Nama [model kelas Haiku untuk tugas latar belakang](/docs/id/costs) |

188| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Menimpa region AWS untuk model kelas Haiku saat menggunakan Amazon Bedrock atau Amazon Bedrock Mantle. Di Amazon Bedrock, ini hanya berlaku jika `ANTHROPIC_DEFAULT_HAIKU_MODEL` atau `ANTHROPIC_SMALL_FAST_MODEL` yang sudah deprecated juga diatur, karena jika tidak, Amazon Bedrock menjalankan tugas latar belakang pada [model Sonnet default atau model utama](/docs/id/amazon-bedrock#4-pin-model-versions) di region sesi |190| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Timpa region AWS untuk model kelas Haiku saat menggunakan Amazon Bedrock atau Amazon Bedrock Mantle. Pada Amazon Bedrock, ini hanya berlaku jika `ANTHROPIC_DEFAULT_HAIKU_MODEL` atau `ANTHROPIC_SMALL_FAST_MODEL` yang sudah deprecated juga diatur, karena jika tidak, Amazon Bedrock menjalankan tugas latar belakang pada [model Sonnet default atau model utama](/docs/id/amazon-bedrock#4-pin-model-versions) di region sesi |

189| `ANTHROPIC_VERTEX_BASE_URL` | Menimpa URL endpoint Google Cloud's Agent Platform. Gunakan untuk endpoint Google Cloud's Agent Platform kustom atau saat merutekan melalui [LLM gateway](/docs/id/llm-gateway). Lihat [Google Cloud's Agent Platform](/docs/id/google-vertex-ai) |191| `ANTHROPIC_VERTEX_BASE_URL` | Timpa URL endpoint Google Cloud's Agent Platform. Gunakan untuk endpoint Google Cloud's Agent Platform kustom atau saat merutekan melalui [LLM gateway](/docs/id/llm-gateway). Lihat [Google Cloud's Agent Platform](/docs/id/google-vertex-ai) |

190| `ANTHROPIC_VERTEX_PROJECT_ID` | ID proyek GCP yang menjadi tujuan permintaan Google Cloud's Agent Platform. Lihat [Mengonfigurasi kredensial GCP](/docs/id/google-vertex-ai#3-configure-gcp-credentials) |192| `ANTHROPIC_VERTEX_PROJECT_ID` | ID proyek GCP yang menjadi tujuan permintaan Google Cloud's Agent Platform. Lihat [Mengonfigurasi kredensial GCP](/docs/id/google-vertex-ai#3-configure-gcp-credentials) |

191| `ANTHROPIC_WORKSPACE_ID` | ID workspace untuk [workload identity federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Atur ini jika aturan federasi Anda mencakup lebih dari satu workspace agar pertukaran token mengetahui workspace mana yang dituju |193| `ANTHROPIC_WORKSPACE_ID` | ID workspace untuk [workload identity federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Atur ini jika aturan federasi Anda mencakup lebih dari satu workspace agar pertukaran token mengetahui workspace mana yang ditargetkan |

192| `API_FORCE_IDLE_TIMEOUT` | Menimpa timeout idle body 5 menit yang membatalkan respons model streaming ketika tidak ada byte yang tiba. Atur ke `0` untuk mematikan timeout, misalnya ketika [gateway](/docs/id/llm-gateway) yang lambat atau model lokal berhenti lebih dari 5 menit di antara chunk, atau `1` untuk tetap mengaktifkannya bagi setiap penyedia. Jika tidak diatur, timeout aktif pada penyedia selain Anthropic API langsung, [Claude Platform on AWS](/docs/id/claude-platform-on-aws), dan Amazon Bedrock dengan `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1` diatur. [Watchdog stream](/docs/id/network-config#streaming-idle-watchdogs) berjalan secara independen darinya dan membatalkan jeda senyap yang panjang bahkan ketika Anda mengatur `0` di sini |194| `API_FORCE_IDLE_TIMEOUT` | Timpa idle timeout body 5 menit yang membatalkan respons model streaming ketika tidak ada byte yang tiba. Atur ke `0` untuk menonaktifkan timeout, misalnya ketika [gateway](/docs/id/llm-gateway) yang lambat atau model lokal berhenti lebih dari 5 menit di antara chunk, atau `1` untuk tetap mengaktifkannya untuk setiap penyedia. Jika tidak diatur, timeout aktif pada penyedia selain Anthropic API langsung, [Claude Platform on AWS](/docs/id/claude-platform-on-aws), dan Amazon Bedrock dengan `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1` diatur. [Stream watchdog](/docs/id/network-config#streaming-idle-watchdogs) berjalan secara independen darinya dan membatalkan jeda senyap yang panjang bahkan ketika Anda mengatur `0` di sini |

193| `API_TIMEOUT_MS` | Timeout untuk permintaan API dalam milidetik (default: 600000, atau 10 menit; maksimum: 2147483647). Tingkatkan nilai ini ketika permintaan mengalami timeout pada jaringan lambat atau saat merutekan melalui proxy. Nilai di atas maksimum akan menyebabkan overflow pada timer yang mendasarinya dan membuat permintaan langsung gagal |195| `API_TIMEOUT_MS` | Timeout untuk permintaan API dalam milidetik (default: 600000, atau 10 menit; maksimum: 2147483647). Naikkan nilai ini ketika permintaan mengalami timeout pada jaringan yang lambat atau saat merutekan melalui proxy. Nilai di atas maksimum menyebabkan overflow pada timer yang mendasarinya dan membuat permintaan langsung gagal |

194| `AWS_BEARER_TOKEN_BEDROCK` | Kunci API Amazon Bedrock untuk autentikasi (lihat [Kunci API Amazon Bedrock](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |196| `AWS_BEARER_TOKEN_BEDROCK` | Kunci API Amazon Bedrock untuk autentikasi (lihat [Kunci API Amazon Bedrock](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |

195| `BASH_DEFAULT_TIMEOUT_MS` | Timeout default untuk perintah tool Bash atau PowerShell di latar depan, dalam milidetik (default: 120000, atau 2 menit). Default yang lebih lama dari 30 menit juga menjadi [batas waktu default untuk perintah latar belakang](/docs/id/tools-reference#time-limit-for-background-commands) dalam sesi tanpa pengawasan. Batas waktu latar belakang memerlukan Claude Code v2.1.285 atau lebih baru |197| `BASH_DEFAULT_TIMEOUT_MS` | Timeout default untuk perintah tool Bash atau PowerShell di latar depan, dalam milidetik (default: 120000, atau 2 menit). Default yang lebih lama dari 30 menit juga menjadi [batas waktu untuk perintah latar belakang](/docs/id/tools-reference#time-limit-for-background-commands) default dalam sesi tanpa pengawasan. Batas waktu latar belakang memerlukan Claude Code v2.1.285 atau yang lebih baru |

196| `BASH_MAX_OUTPUT_LENGTH` | Jumlah maksimum karakter output bash yang dibaca kembali oleh Claude Code ke dalam hasil perintah (default: 30000; maksimum: 150000). Jika Anda mengatur pengaturan [`bashOutputMaxChars`](/docs/id/settings-reference#bashoutputmaxchars), Claude Code mengabaikan variabel ini. Lihat [Batas output](/docs/id/tools-reference#output-limits) |198| `BASH_MAX_OUTPUT_LENGTH` | Jumlah maksimum karakter output bash yang dibaca kembali oleh Claude Code ke dalam hasil perintah (default: 30000; maksimum: 150000). Jika Anda mengatur pengaturan [`bashOutputMaxChars`](/docs/id/settings-reference#bashoutputmaxchars), Claude Code mengabaikan variabel ini. Lihat [Batas output](/docs/id/tools-reference#output-limits) |

197| `BASH_MAX_TIMEOUT_MS` | Timeout maksimum yang dapat ditetapkan model untuk perintah tool Bash atau PowerShell di latar depan, dalam milidetik (default: 600000, atau 10 menit). Batas atas efektifnya adalah nilai yang lebih besar antara ini dan `BASH_DEFAULT_TIMEOUT_MS`. Batas atas efektif yang lebih lama dari 2 jam juga menjadi [batas waktu maksimum untuk perintah latar belakang](/docs/id/tools-reference#time-limit-for-background-commands) dalam sesi tanpa pengawasan. Batas waktu latar belakang memerlukan Claude Code v2.1.285 atau lebih baru |199| `BASH_MAX_TIMEOUT_MS` | Timeout maksimum yang dapat diatur model untuk perintah tool Bash atau PowerShell di latar depan, dalam milidetik (default: 600000, atau 10 menit). Batas atas efektifnya adalah nilai yang lebih besar antara variabel ini dan `BASH_DEFAULT_TIMEOUT_MS`. Batas atas efektif yang lebih lama dari 2 jam juga menjadi [batas waktu untuk perintah latar belakang](/docs/id/tools-reference#time-limit-for-background-commands) maksimum dalam sesi tanpa pengawasan. Batas waktu latar belakang memerlukan Claude Code v2.1.285 atau yang lebih baru |

198| `BETA_TRACING_ENDPOINT` | Endpoint OTLP/HTTP untuk [tracing beta terperinci](/docs/id/monitoring-usage#traces-beta): dengan `ENABLE_BETA_TRACING_DETAILED=1`, log dan trace dikirim ke sana alih-alih ke exporter yang dikonfigurasi. Tetapkan di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env) |200| `BETA_TRACING_ENDPOINT` | Endpoint OTLP/HTTP untuk [tracing beta terperinci](/docs/id/monitoring-usage#traces-beta): dengan `ENABLE_BETA_TRACING_DETAILED=1`, log dan trace dikirim ke sana, bukan ke exporter yang dikonfigurasi. Atur di shell Anda, pengaturan pengguna, atau pengaturan terkelola. Diabaikan dalam [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env) |

199| `CCR_FORCE_BUNDLE` | Atur ke `1` untuk memaksa [`claude --cloud`](/docs/id/claude-code-on-the-web#send-local-repositories-without-github) membundel dan mengunggah repositori lokal Anda alih-alih melakukan clone dari remote-nya |201| `CCR_FORCE_BUNDLE` | Atur ke `1` untuk memaksa [`claude --cloud`](/docs/id/claude-code-on-the-web#send-local-repositories-without-github) membundel dan mengunggah repositori lokal Anda alih-alih melakukan clone dari remote-nya |

200| `CLAUDECODE` | Diatur ke `1` di subproses yang dijalankan Claude Code (tool Bash dan PowerShell, sesi tmux, perintah [hook](/docs/id/hooks), perintah [baris status](/docs/id/statusline), subproses [server MCP](/docs/id/mcp) stdio). Ekstensi IDE juga mengatur ini di terminal terintegrasinya. Gunakan untuk mendeteksi kapan sebuah skrip berjalan di dalam subproses yang dijalankan oleh Claude Code. Untuk memeriksa apakah proses saat ini dijalankan langsung oleh panggilan tool atau hook, bukan di dalam server MCP stdio yang dimulai Claude Code, gunakan `CLAUDE_CODE_CHILD_SESSION` |202| `CLAUDECODE` | Diatur ke `1` dalam subproses yang dijalankan Claude Code (tool Bash dan PowerShell, sesi tmux, perintah [hook](/docs/id/hooks), perintah [baris status](/docs/id/statusline), subproses [server MCP](/docs/id/mcp) stdio). Ekstensi IDE juga mengatur variabel ini di terminal terintegrasinya. Gunakan untuk mendeteksi kapan skrip berjalan di dalam subproses yang dijalankan oleh Claude Code. Untuk memeriksa apakah proses saat ini dijalankan langsung oleh panggilan tool atau hook, bukan di dalam server MCP stdio yang dimulai Claude Code, gunakan `CLAUDE_CODE_CHILD_SESSION` |

201| `CLAUDE_AFK_COUNTDOWN_MS` | Berapa milidetik sebelum auto-continue hitung mundur di layar muncul pada dialog [`AskUserQuestion`](/docs/id/tools-reference) yang belum dijawab. Default `20000` (20 detik), dibatasi pada timeout auto-continue. Tidak berpengaruh kecuali auto-continue aktif; lihat pengaturan [`askUserQuestionTimeout`](/docs/id/settings-reference#askuserquestiontimeout) dan `CLAUDE_AFK_TIMEOUT_MS`. Memerlukan Claude Code v2.1.198 atau lebih baru |203| `CLAUDE_AFK_COUNTDOWN_MS` | Berapa milidetik sebelum lanjut otomatis hitung mundur di layar muncul pada dialog [`AskUserQuestion`](/docs/id/tools-reference) yang belum dijawab. Default `20000` (20 detik), dibatasi pada timeout lanjut otomatis. Tidak berpengaruh kecuali lanjut otomatis aktif; lihat pengaturan [`askUserQuestionTimeout`](/docs/id/settings-reference#askuserquestiontimeout) dan `CLAUDE_AFK_TIMEOUT_MS`. Memerlukan Claude Code v2.1.198 atau yang lebih baru |

202| `CLAUDE_AFK_TIMEOUT_MS` | Berapa milidetik waktu idle sebelum dialog [`AskUserQuestion`](/docs/id/tools-reference) yang belum dijawab dilanjutkan otomatis tanpa Anda. Auto-continue mati secara default; ikut serta dengan pengaturan [`askUserQuestionTimeout`](/docs/id/settings-reference#askuserquestiontimeout). Variabel ini adalah override untuk demo dan pengujian otomatis: jika diatur, variabel ini diutamakan daripada pengaturan tersebut dan mengaktifkan auto-continue bahkan ketika pengaturan tidak diatur atau bernilai `never`. Mengatur `0` tidak mematikan timeout; itu menutup dialog seketika. Di v2.1.198 dan v2.1.199, auto-continue aktif secara default dengan timeout `60000` (60 detik). Memerlukan Claude Code v2.1.198 atau lebih baru |204| `CLAUDE_AFK_TIMEOUT_MS` | Berapa milidetik waktu idle sebelum dialog [`AskUserQuestion`](/docs/id/tools-reference) yang belum dijawab berlanjut otomatis tanpa Anda. Lanjut otomatis nonaktif secara default; aktifkan dengan pengaturan [`askUserQuestionTimeout`](/docs/id/settings-reference#askuserquestiontimeout). Variabel ini adalah override untuk demo dan pengujian otomatis: jika diatur, variabel ini diutamakan daripada pengaturan tersebut dan mengaktifkan lanjut otomatis bahkan ketika pengaturan tidak diatur atau bernilai `never`. Mengatur `0` tidak menonaktifkan timeout; nilai tersebut langsung menutup dialog. Di v2.1.198 dan v2.1.199, lanjut otomatis aktif secara default dengan timeout `60000` (60 detik). Memerlukan Claude Code v2.1.198 atau yang lebih baru |

203| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Atur ke `1` untuk menonaktifkan semua jenis [subagent](/docs/id/sub-agents) bawaan seperti Explore dan Plan. Hanya berlaku dalam mode non-interaktif (flag `-p`). Berguna bagi pengguna SDK yang menginginkan awal yang bersih. Ini juga menghapus `general-purpose`, subagent yang dijalankan Claude Code ketika panggilan tool Agent tidak menyertakan `subagent_type`. Panggilan seperti itu kemudian gagal dengan [`subagent_type is required`](/docs/id/errors#subagent-type-is-required) |205| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Atur ke `1` untuk menonaktifkan semua jenis [subagent](/docs/id/sub-agents) bawaan seperti Explore dan Plan. Hanya berlaku dalam mode non-interaktif (flag `-p`). Berguna bagi pengguna SDK yang menginginkan awal yang bersih. Ini juga menghapus `general-purpose`, subagent yang dijalankan Claude Code ketika panggilan tool Agent tidak menyertakan `subagent_type`. Panggilan seperti itu kemudian gagal dengan [`subagent_type is required`](/docs/id/errors#subagent-type-is-required) |

204| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Atur ke `1` untuk melewati awalan `mcp__<server>__` pada nama tool dari server MCP yang dibuat SDK. Tool menggunakan nama aslinya. Hanya untuk penggunaan SDK |206| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Atur ke `1` untuk melewati awalan `mcp__<server>__` pada nama tool dari server MCP yang dibuat SDK. Tool menggunakan nama aslinya. Hanya untuk penggunaan SDK |

205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Timeout macet dalam milidetik untuk subagent. Default `600000` (10 menit); jika Anda menaikkan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` saat watchdog stream aktif, default ikut naik, seperti yang dijelaskan di [Menangani respons API yang lambat atau macet](/docs/id/agent-sdk/typescript#handle-slow-or-stalled-api-responses). Timer direset pada setiap event progres streaming; jika tidak ada progres yang tiba dalam jendela waktu tersebut, Claude Code membatalkan subagent dan melaporkan kemacetan ke induknya |207| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Timeout macet dalam milidetik untuk subagent. Default `600000` (10 menit); jika Anda menaikkan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` saat stream watchdog aktif, default ikut naik, seperti yang dijelaskan dalam [Menangani respons API yang lambat atau macet](/docs/id/agent-sdk/typescript#handle-slow-or-stalled-api-responses). Timer direset pada setiap event progres streaming; jika tidak ada progres yang tiba dalam jendela waktu tersebut, Claude Code membatalkan subagent dan melaporkan kemacetan tersebut ke induknya |

206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Menetapkan persentase (1-100) dari jendela auto-compact saat auto-compaction dipicu. Gunakan nilai lebih rendah seperti `50` untuk melakukan compaction lebih awal; variabel ini tidak dapat menaikkan ambang, sehingga nilai di atas persentase default diabaikan. Ini hanya berlaku dalam sesi yang [melakukan compaction sebelum batas konteks model](/docs/id/model-config#context-window-and-auto-compaction). Berlaku untuk percakapan utama dan subagent |208| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Atur persentase (1-100) dari jendela auto-compact di mana auto-compaction dipicu. Gunakan nilai yang lebih rendah seperti `50` untuk melakukan compaction lebih awal; variabel ini tidak dapat menaikkan ambang batas, sehingga nilai di atas persentase default diabaikan. Variabel ini hanya berlaku dalam sesi yang [melakukan compaction sebelum batas konteks model](/docs/id/model-config#context-window-and-auto-compaction). Berlaku untuk percakapan utama maupun subagent |

207| `CLAUDE_AUTO_BACKGROUND_TASKS` | Atur ke `1` untuk memaksa pengaktifan pemindahan otomatis ke latar belakang untuk tugas agent yang berjalan lama. Jika diaktifkan, subagent dipindahkan ke latar belakang setelah berjalan sekitar dua menit. Juga mengaktifkan [pemindahan otomatis ke latar belakang untuk panggilan tool MCP yang lama](/docs/id/mcp#automatic-backgrounding-of-long-tool-calls) dalam mode non-interaktif pada Claude Code v2.1.212 atau lebih baru |209| `CLAUDE_AUTO_BACKGROUND_TASKS` | Atur ke `1` untuk memaksa mengaktifkan pemindahan otomatis tugas agent yang berjalan lama ke latar belakang. Jika diaktifkan, subagent dipindahkan ke latar belakang setelah berjalan sekitar dua menit. Juga mengaktifkan [pemindahan otomatis panggilan tool MCP yang panjang ke latar belakang](/docs/id/mcp#automatic-backgrounding-of-long-tool-calls) dalam mode non-interaktif pada Claude Code v2.1.212 atau yang lebih baru |

208| `CLAUDE_AX_PREPARK_MS` | Dalam [mode pembaca layar](/docs/id/accessibility), berapa milidetik Claude Code menunggu sebelum menulis baris baru atau yang berubah. Default `0`, sehingga Claude Code tidak menunggu. Sebelum v2.1.287, default-nya `50`. Claude Code membatasi waktu tunggu pada `5000`. Memerlukan Claude Code v2.1.233 atau lebih baru |210| `CLAUDE_AX_PREPARK_MS` | Dalam [mode pembaca layar](/docs/id/accessibility), berapa milidetik Claude Code menunggu sebelum menulis baris baru atau baris yang berubah. Default `0`, sehingga Claude Code tidak menunggu. Sebelum v2.1.287, default-nya adalah `50`. Claude Code membatasi penantian hingga `5000`. Memerlukan Claude Code v2.1.233 atau yang lebih baru |

209| `CLAUDE_AX_SCREEN_READER` | Atur ke `1` untuk merender output yang ramah pembaca layar: teks datar tanpa bingkai dekoratif atau animasi. Atur ke `0` untuk memaksa mode pembaca layar mati bahkan ketika [`axScreenReader`](/docs/id/settings-reference#axscreenreader) bernilai `true`. Flag [`--ax-screen-reader`](/docs/id/cli-reference#cli-flags) diutamakan. Memerlukan Claude Code v2.1.181 atau lebih baru |211| `CLAUDE_AX_SCREEN_READER` | Atur ke `1` untuk merender output yang ramah pembaca layar: teks datar tanpa border dekoratif atau animasi. Atur ke `0` untuk memaksa mode pembaca layar nonaktif bahkan ketika [`axScreenReader`](/docs/id/settings-reference#axscreenreader) bernilai `true`. Flag [`--ax-screen-reader`](/docs/id/cli-reference#cli-flags) diutamakan. Memerlukan Claude Code v2.1.181 atau yang lebih baru |

210| `CLAUDE_AX_STARTUP_QUIET_MS` | Dalam [mode pembaca layar](/docs/id/accessibility), berapa milidetik Claude Code menahan render antarmuka pertama setelah baris konfirmasi startup, agar pembaca layar Anda dapat mengucapkan baris tersebut secara lengkap sebelum output baru menyelanya. Default `3000`. Atur `0` untuk merender seketika. Claude Code membatasi penahanan pada `600000` (10 menit). Penekanan tombol pertama Anda mengakhiri penahanan lebih awal. Memerlukan Claude Code v2.1.217 atau lebih baru |212| `CLAUDE_AX_STARTUP_QUIET_MS` | Dalam [mode pembaca layar](/docs/id/accessibility), berapa milidetik Claude Code menahan render antarmuka pertama setelah baris konfirmasi startup, agar pembaca layar Anda dapat mengucapkan baris tersebut secara lengkap sebelum output baru menyelanya. Default `3000`. Atur `0` untuk merender segera. Claude Code membatasi penahanan hingga `600000` (10 menit). Penekanan tombol pertama Anda mengakhiri penahanan lebih awal. Memerlukan Claude Code v2.1.217 atau yang lebih baru |

211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Kembali ke direktori kerja asli setelah setiap perintah Bash atau PowerShell di sesi utama |213| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Kembali ke direktori kerja asli setelah setiap perintah Bash atau PowerShell di sesi utama |

212| `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` | Timeout dalam milidetik untuk watchdog idle streaming tingkat byte; jika diatur, variabel ini diutamakan daripada `CLAUDE_STREAM_IDLE_TIMEOUT_MS` untuk watchdog tersebut dan tidak mengubah watchdog tingkat event. Claude Code membatasi variabel ini antara 10 detik dan 30 menit. Memerlukan Claude Code v2.1.210 atau lebih baru |214| `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` | Timeout dalam milidetik untuk watchdog idle streaming tingkat byte; jika diatur, variabel ini diutamakan daripada `CLAUDE_STREAM_IDLE_TIMEOUT_MS` untuk watchdog tersebut dan tidak mengubah watchdog tingkat event. Claude Code membatasi variabel ini antara 10 detik dan 30 menit. Memerlukan Claude Code v2.1.210 atau yang lebih baru |

213| `CLAUDE_CLIENT_PRESENCE_FILE` | Path ke file yang dibuat oleh alat eksternal, seperti listener kunci layar, saat Anda membuka kunci layar dan dihapus saat Anda menguncinya. Selama file tersebut ada, Claude Code melewati [notifikasi push seluler Remote Control](/docs/id/remote-control#mobile-push-notifications), sehingga Anda berhenti menerima push saat Anda sedang aktif menggunakan komputer. Jika file tidak ada atau tidak dapat dibaca, notifikasi dikirim seperti biasa. Claude Code memeriksa file sekali per event pemicu push alih-alih melakukan polling. Memerlukan Claude Code v2.1.181 atau lebih baru |215| `CLAUDE_CLIENT_PRESENCE_FILE` | Path ke file yang dibuat oleh alat eksternal, seperti listener kunci layar, saat Anda membuka kunci layar dan dihapus saat Anda mengunci layar. Selama file tersebut ada, Claude Code melewati [notifikasi push seluler Remote Control](/docs/id/remote-control#mobile-push-notifications), sehingga Anda berhenti menerima push saat Anda sedang aktif menggunakan komputer. Jika file tidak ada atau tidak dapat dibaca, notifikasi dikirim seperti biasa. Claude Code memeriksa file sekali per event yang memicu push, bukan melakukan polling terhadapnya. Memerlukan Claude Code v2.1.181 atau yang lebih baru |

214| `CLAUDE_CODE_ACCESSIBILITY` | Atur ke `1` agar kursor terminal native tetap terlihat dan menonaktifkan indikator kursor teks terbalik. Memungkinkan pembesar layar seperti macOS Zoom melacak posisi kursor |216| `CLAUDE_CODE_ACCESSIBILITY` | Atur ke `1` untuk menjaga kursor terminal native tetap terlihat dan menonaktifkan indikator kursor teks terbalik. Memungkinkan pembesar layar seperti macOS Zoom melacak posisi kursor |

215| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Atur ke `1` untuk memuat file memori dari direktori yang ditentukan dengan `--add-dir`. Memuat `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md`, dan `CLAUDE.local.md`. Secara default, direktori tambahan tidak memuat file memori |217| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Atur ke `1` untuk memuat file memori dari direktori yang ditentukan dengan `--add-dir`. Memuat `CLAUDE.md`, `.claude/CLAUDE.md`, `.claude/rules/*.md`, dan `CLAUDE.local.md`. Secara default, direktori tambahan tidak memuat file memori |

216| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Atur ke `1` untuk menggambar ulang seluruh layar pada setiap frame dalam [rendering layar penuh](/docs/id/fullscreen) alih-alih mengirim pembaruan inkremental. Gunakan ini jika mode layar penuh menampilkan fragmen teks yang usang atau salah tempat. Claude Code mengaktifkan ini secara otomatis untuk sesi latar belakang dan [agent view](/docs/id/agent-view) di Windows |218| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Atur ke `1` untuk menggambar ulang seluruh layar pada setiap frame dalam [rendering layar penuh](/docs/id/fullscreen) alih-alih mengirim pembaruan inkremental. Gunakan ini jika mode layar penuh menampilkan fragmen teks yang usang atau salah tempat. Claude Code mengaktifkan ini secara otomatis untuk sesi latar belakang dan [tampilan agent](/docs/id/agent-view) di Windows |

217| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Atur ke `1` untuk mengirim parameter [effort](/docs/id/model-config#adjust-effort-level) dengan setiap permintaan, bahkan ketika Claude Code tidak mengenali ID model sebagai model yang mendukung effort. Gunakan ini saat merutekan melalui [LLM gateway](/docs/id/llm-gateway) atau penyedia pihak ketiga yang menyajikan model dengan pengenal kustom. Model yang menolak parameter effort di API, termasuk model Claude 3, Sonnet 4.0 dan 4.5, Opus 4.0 dan 4.1, serta Haiku 4.5, tetap dikecualikan agar permintaan tidak gagal |219| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Atur ke `1` untuk mengirim parameter [effort](/docs/id/model-config#adjust-effort-level) dengan setiap permintaan, bahkan ketika Claude Code tidak mengenali ID model sebagai model yang mendukung effort. Gunakan ini saat merutekan melalui [LLM gateway](/docs/id/llm-gateway) atau penyedia pihak ketiga yang menyajikan model dengan pengenal kustom. Model yang menolak parameter effort di API, termasuk model Claude 3, Sonnet 4.0 dan 4.5, Opus 4.0 dan 4.1, serta Haiku 4.5, tetap dikecualikan agar permintaan tidak gagal |

218| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Interval dalam milidetik saat kredensial harus diperbarui (saat menggunakan [`apiKeyHelper`](/docs/id/settings-reference#apikeyhelper)) |220| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Interval dalam milidetik di mana kredensial harus di-refresh (saat menggunakan [`apiKeyHelper`](/docs/id/settings-reference#apikeyhelper)) |

219| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Atur ke `0` untuk menghentikan Claude Code membuka browser secara otomatis ketika [artifact](/docs/id/artifacts#create-an-artifact) baru dipublikasikan |221| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Atur ke `0` untuk menghentikan Claude Code membuka browser secara otomatis ketika [artifact](/docs/id/artifacts#create-an-artifact) baru dipublikasikan |

220| `CLAUDE_CODE_ARTIFACT_COMMENTS` | Atur ke `0` untuk menghentikan Claude membaca dan membalas [komentar pada artifact](/docs/id/artifacts#collect-comments-on-an-artifact). Tidak berpengaruh ketika `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` telah [mematikan artifact](/docs/id/artifacts#availability). Memerlukan Claude Code v2.1.221 atau lebih baru |222| `CLAUDE_CODE_ARTIFACT_COMMENTS` | Atur ke `0` untuk menghentikan Claude membaca dan membalas [komentar pada artifact](/docs/id/artifacts#collect-comments-on-an-artifact). Tidak berpengaruh ketika `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` telah [menonaktifkan artifact](/docs/id/artifacts#availability). Memerlukan Claude Code v2.1.221 atau yang lebih baru |

221| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | Atur ke `0` untuk menghentikan Claude [membalas sendiri komentar yang dikirimkan kepadanya](/docs/id/artifacts#let-claude-reply-to-comments-on-its-own). Memerlukan Claude Code v2.1.228 atau lebih baru |223| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | Atur ke `0` untuk menghentikan Claude [membalas sendiri komentar yang dikirimkan kepadanya](/docs/id/artifacts#let-claude-reply-to-comments-on-its-own). Memerlukan Claude Code v2.1.228 atau yang lebih baru |

222| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Atur ke `0` untuk menghilangkan [blok atribusi](/docs/id/llm-gateway-protocol#system-prompt-attribution-block), yang membawa versi klien dan sidik jari prompt, dari awal system prompt. Caching pada koneksi langsung ke Anthropic API tidak terpengaruh dalam kedua kasus. Dalam beberapa penyiapan koneksi langsung, Claude Code mempertahankan blok tersebut pada permintaan pengklasifikasi [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) bahkan ketika Anda mengatur `0`. Di [System prompt attribution block](/docs/id/llm-gateway-protocol#system-prompt-attribution-block), periksa koneksi dan kredensial mana yang dicakup oleh hal ini. Sebelum v2.1.181, blok tersebut menyertakan token per permintaan pada URL dasar kustom dan koneksi Microsoft Foundry, jadi pada versi tersebut atur ke `0` ketika LLM gateway Anda melakukan caching berdasarkan body permintaan atau meneruskan permintaan ke penyedia pihak ketiga, atau ketika Anda terhubung ke Microsoft Foundry secara langsung |224| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Atur ke `0` untuk menghilangkan [blok atribusi](/docs/id/llm-gateway-protocol#system-prompt-attribution-block), yang membawa versi klien dan sidik jari prompt, dari awal system prompt. Caching pada koneksi langsung ke Anthropic API tidak terpengaruh dalam kedua kasus. Dalam beberapa penyiapan koneksi langsung, Claude Code tetap mempertahankan blok tersebut pada permintaan pengklasifikasi [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) bahkan ketika Anda mengatur `0`. Di [Blok atribusi system prompt](/docs/id/llm-gateway-protocol#system-prompt-attribution-block), periksa koneksi dan kredensial mana yang dicakup oleh hal ini. Sebelum v2.1.181, blok tersebut menyertakan token per permintaan pada URL dasar kustom dan koneksi Microsoft Foundry, sehingga pada versi tersebut atur ke `0` ketika LLM gateway Anda melakukan caching pada body permintaan atau meneruskan permintaan ke penyedia pihak ketiga, atau ketika Anda terhubung ke Microsoft Foundry secara langsung |

223| `CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS` | Dihapus di v2.1.283. Gunakan `CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE` sebagai gantinya |225| `CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS` | Dihapus di v2.1.283. Gunakan `CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE` sebagai gantinya |

224| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Menetapkan [jendela auto-compact](/docs/id/model-config#set-the-auto-compact-window) dalam token, dari `100000` hingga `1000000`. Hanya menerima bilangan bulat biasa seperti `500000`: nilai seperti `500k` dibaca sebagai `500` dan dibatasi ke minimum 100K. Jendela efektif juga dibatasi pada context window model. Diutamakan daripada perintah `/autocompact`, flag `--autocompact`, dan pengaturan `autoCompactWindow`. `used_percentage` pada baris status selalu diukur terhadap context window penuh model, jadi setelah variabel ini diatur, persentase tersebut tidak lagi menunjukkan kapan compaction akan berjalan |226| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Atur [jendela auto-compact](/docs/id/model-config#set-the-auto-compact-window) dalam token, dari `100000` hingga `1000000`. Hanya menerima bilangan bulat biasa seperti `500000`: nilai seperti `500k` dibaca sebagai `500` dan dibatasi ke minimum 100K. Jendela efektif juga dibatasi pada context window model. Diutamakan daripada perintah `/autocompact`, flag `--autocompact`, dan pengaturan `autoCompactWindow`. `used_percentage` pada baris status selalu diukur terhadap context window penuh model, sehingga setelah variabel ini diatur, persentase tersebut tidak lagi menunjukkan kapan compaction akan berjalan |

225| `CLAUDE_CODE_AUTO_CONNECT_IDE` | Menimpa [koneksi IDE](/docs/id/vs-code) otomatis. Secara default, Claude Code terhubung secara otomatis saat dijalankan di dalam terminal terintegrasi IDE yang didukung. Atur ke `false` untuk mencegah hal ini. Atur ke `true` untuk memaksa upaya koneksi ketika deteksi otomatis gagal, seperti ketika tmux mengaburkan terminal induk. Diutamakan daripada pengaturan konfigurasi global [`autoConnectIde`](/docs/id/settings-reference#autoconnectide) |227| `CLAUDE_CODE_AUTO_CONNECT_IDE` | Timpa [koneksi IDE](/docs/id/vs-code) otomatis. Secara default, Claude Code terhubung secara otomatis ketika diluncurkan di dalam terminal terintegrasi IDE yang didukung. Atur ke `false` untuk mencegah hal ini. Atur ke `true` untuk memaksa upaya koneksi ketika deteksi otomatis gagal, seperti ketika tmux menyembunyikan terminal induk. Diutamakan daripada pengaturan konfigurasi global [`autoConnectIde`](/docs/id/settings-reference#autoconnectide) |

226| `CLAUDE_CODE_AUTO_MODE_SERVER` | Mengontrol apakah Claude Code meminta server untuk [meninjau tindakan auto mode](/docs/id/permission-modes#server-side-classifier-review). Atur ke `0` untuk menggunakan permintaan pengklasifikasi milik Claude Code sendiri. Pada koneksi langsung ke Anthropic API, memerlukan v2.1.281 atau lebih baru. Bagian yang ditautkan mencantumkan sesi mana yang meminta ke server ketika variabel tidak diatur, dan mulai dari versi mana. Memerlukan Claude Code v2.1.271 atau lebih baru |228| `CLAUDE_CODE_AUTO_MODE_SERVER` | Mengontrol apakah Claude Code meminta server untuk [meninjau tindakan auto mode](/docs/id/permission-modes#server-side-classifier-review). Atur ke `0` untuk menggunakan permintaan pengklasifikasi milik Claude Code sendiri sebagai gantinya. Pada koneksi langsung ke Anthropic API, memerlukan v2.1.281 atau yang lebih baru. Bagian yang ditautkan mencantumkan sesi mana yang meminta server ketika variabel tidak diatur, dan mulai versi berapa. Memerlukan Claude Code v2.1.271 atau yang lebih baru |

227| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Waktu dalam milidetik yang ditunggu Claude Code agar rantai penyedia kredensial default AWS menghasilkan kredensial sebelum permintaan gagal dengan [`AWS default-chain credential resolve timed out`](/docs/id/errors#aws-default-chain-credential-resolve-timed-out) (default: `60000`). Naikkan nilainya ketika salah satu langkah dalam rantai Anda memang membutuhkan waktu lebih lama, seperti masuk SSO berbasis browser dengan MFA melalui wrapper seperti `aws-vault`. Berlaku di mana pun Claude Code melakukan penandatanganan dengan rantai default: [Amazon Bedrock](/docs/id/amazon-bedrock#credential-caching-and-resolution-timeout), [Claude Platform on AWS](/docs/id/claude-platform-on-aws), dan [endpoint Mantle](/docs/id/amazon-bedrock#use-the-mantle-endpoint). Memerlukan Claude Code v2.1.207 atau lebih baru |229| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Waktu dalam milidetik yang ditunggu Claude Code agar rantai penyedia kredensial default AWS menghasilkan kredensial sebelum permintaan gagal dengan [`AWS default-chain credential resolve timed out`](/docs/id/errors#aws-default-chain-credential-resolve-timed-out) (default: `60000`). Naikkan nilai ini ketika sebuah langkah dalam rantai Anda memang membutuhkan waktu lebih lama, seperti masuk SSO berbasis browser dengan MFA melalui wrapper seperti `aws-vault`. Berlaku pada Amazon Bedrock, [Claude Platform on AWS](/docs/id/claude-platform-on-aws), dan [endpoint Mantle](/docs/id/amazon-bedrock#use-the-mantle-endpoint). Lihat [caching kredensial dan timeout resolusi](/docs/id/amazon-bedrock#credential-caching-and-resolution-timeout). Memerlukan Claude Code v2.1.207 atau yang lebih baru |

228| `CLAUDE_CODE_BASH_EDIT_DIFF` | Atur ke `0` untuk mematikan [diff file yang berubah saat perintah Bash berjalan](/docs/id/hooks#bash), atau `1` untuk merekamnya di setiap mode izin. Diutamakan daripada pengaturan [`bashEditDiffEnabled`](/docs/id/settings-reference#basheditdiffenabled). Memerlukan Claude Code v2.1.269 atau lebih baru |230| `CLAUDE_CODE_BASH_EDIT_DIFF` | Atur ke `0` untuk menonaktifkan [diff file yang berubah selama perintah Bash berjalan](/docs/id/hooks#bash), atau `1` untuk mencatatnya di setiap mode izin. Diutamakan daripada pengaturan [`bashEditDiffEnabled`](/docs/id/settings-reference#basheditdiffenabled). Memerlukan Claude Code v2.1.269 atau yang lebih baru |

229| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | Atur ke `0` agar sesi non-interaktif melaporkan status idle ke host-nya di setiap akhir giliran, bahkan saat pekerjaan latar belakang masih berjalan. Secara default, sesi terus melaporkan status berjalan setelah akhir giliran selama pekerjaan latar belakang seperti background agent atau eksekusi [workflow](/docs/id/workflows) masih aktif. Hal ini mencegah host yang memantau status, seperti daftar sesi jarak jauh, mengumumkan bahwa Claude sedang menunggu input Anda di tengah pekerjaan. Perintah shell latar belakang, seperti server pengembangan, tidak mempertahankan status berjalan. Default status berjalan dan opsi keluar `0` memerlukan Claude Code v2.1.269 atau lebih baru; pada versi sebelumnya, atur `1` untuk mempertahankan status berjalan |231| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | Atur ke `0` agar sesi non-interaktif melaporkan status idle ke host-nya di setiap akhir giliran, bahkan saat pekerjaan latar belakang masih berjalan. Secara default, sesi terus melaporkan status berjalan melewati akhir giliran selama pekerjaan latar belakang seperti agent latar belakang atau eksekusi [workflow](/docs/id/workflows) masih aktif. Hal ini mencegah host yang memantau status, seperti daftar sesi jarak jauh, mengumumkan bahwa Claude sedang menunggu input Anda di tengah pekerjaan. Perintah shell latar belakang, seperti dev server, tidak menahan status berjalan. Default status berjalan dan opsi `0` untuk menonaktifkannya memerlukan Claude Code v2.1.269 atau yang lebih baru; pada versi sebelumnya, atur `1` untuk menahan status berjalan |

230| `CLAUDE_CODE_BRIDGE_SESSION_ID` | Diatur secara otomatis di subproses tool Bash dan [perintah hook](/docs/id/hooks) selama sesi memiliki koneksi [Remote Control](/docs/id/remote-control) yang aktif, dan dihapus ketika koneksi berakhir. Nilainya adalah ID sesi dalam bentuk `session_`, pengenal yang sama yang muncul di URL `claude.ai/code` sesi tersebut, sehingga skrip dapat menautkan kembali ke sesi yang menjalankannya. Memerlukan Claude Code v2.1.199 atau lebih baru. Di [sesi cloud](/docs/id/claude-code-on-the-web), baca `CLAUDE_CODE_REMOTE_SESSION_ID` sebagai gantinya |232| `CLAUDE_CODE_BRIDGE_SESSION_ID` | Diatur secara otomatis dalam subproses tool Bash dan [perintah hook](/docs/id/hooks) selama sesi memiliki koneksi [Remote Control](/docs/id/remote-control) yang aktif, dan dihapus ketika koneksi berakhir. Nilainya adalah ID sesi dalam bentuk `session_`, pengenal yang sama yang muncul di URL `claude.ai/code` sesi tersebut, sehingga skrip dapat menautkan kembali ke sesi yang menjalankannya. Memerlukan Claude Code v2.1.199 atau yang lebih baru. Dalam [sesi cloud](/docs/id/claude-code-on-the-web), baca `CLAUDE_CODE_REMOTE_SESSION_ID` sebagai gantinya |

231| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | Atur ke `0` agar Claude Code membaca byte `0x08`, juga ditulis `^H`, sebagai Backspace biasa, atau `1` untuk membacanya sebagai Ctrl+Backspace. Kedua nilai menggantikan default platform. Secara default, Claude Code membacanya sebagai Ctrl+Backspace di Windows, kecuali ketika `TERM_PROGRAM` bernilai `mintty` atau `TERM` bernilai `cygwin`, dan sebagai Backspace biasa di macOS dan Linux. Atur `0` di terminal Windows tempat [Backspace menghapus seluruh kata](/docs/id/terminal-config#fix-backspace-deleting-a-whole-word-on-windows) |233| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | Atur ke `0` agar Claude Code membaca byte `0x08`, yang juga ditulis `^H`, sebagai Backspace biasa, atau `1` untuk membacanya sebagai Ctrl+Backspace. Kedua nilai menggantikan default platform. Secara default, Claude Code membacanya sebagai Ctrl+Backspace di Windows, kecuali ketika `TERM_PROGRAM` bernilai `mintty` atau `TERM` bernilai `cygwin`, dan sebagai Backspace biasa di macOS dan Linux. Atur `0` di terminal Windows di mana [Backspace menghapus seluruh kata](/docs/id/terminal-config#fix-backspace-deleting-a-whole-word-on-windows) |

232| `CLAUDE_CODE_CERT_STORE` | Daftar sumber sertifikat CA untuk koneksi TLS, dipisahkan koma. `bundled` adalah kumpulan CA Mozilla yang disertakan dengan Claude Code. `system` adalah trust store sistem operasi, yang hanya dibaca pada runtime dengan `tls.getCACertificates`: binary native, atau Node 22.15 atau lebih baru untuk instalasi npm. Lihat [Penyimpanan sertifikat CA](/docs/id/network-config#ca-certificate-store). Default-nya `bundled,system` |234| `CLAUDE_CODE_CERT_STORE` | Daftar sumber sertifikat CA untuk koneksi TLS, dipisahkan koma. `bundled` adalah set CA Mozilla yang dikirimkan bersama Claude Code. `system` adalah trust store sistem operasi, yang hanya dibaca pada runtime dengan `tls.getCACertificates`: binary native, atau Node 22.15 atau yang lebih baru untuk instalasi npm. Lihat [Penyimpanan sertifikat CA](/docs/id/network-config#ca-certificate-store). Default-nya adalah `bundled,system` |

233| `CLAUDE_CODE_CHILD_SESSION` | Diatur ke `1` di subproses yang dijalankan Claude Code melalui tool Bash, PowerShell, dan Monitor, perintah [hook](/docs/id/hooks), dan perintah [baris status](/docs/id/statusline). Tidak diatur untuk subproses [server MCP](/docs/id/mcp) stdio, yang berumur panjang dan bertahan lebih lama daripada sesi yang menjalankannya. Berbeda dengan `CLAUDECODE`, ini hanya diatur oleh Claude Code sendiri ketika menjalankan subproses dan tidak oleh ekstensi IDE, sehingga dapat dengan andal membedakan sesi bersarang dari `claude` tingkat atas yang dijalankan di terminal terintegrasi IDE. TUI `claude` interaktif bersarang yang dimulai dengan cara ini secara otomatis dikecualikan dari `--resume`, `--continue`, riwayat panah atas, dan daftar `claude agents`. Sesi `claude -p` non-interaktif tetap disimpan. Atur `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` untuk menimpa pengecualian ini. Memerlukan Claude Code v2.1.172 atau lebih baru |235| `CLAUDE_CODE_CHILD_SESSION` | Diatur ke `1` dalam subproses yang dijalankan Claude Code melalui tool Bash, PowerShell, dan Monitor, perintah [hook](/docs/id/hooks), dan perintah [baris status](/docs/id/statusline). Tidak diatur untuk subproses [server MCP](/docs/id/mcp) stdio, yang berumur panjang dan bertahan lebih lama dari sesi yang menjalankannya. Berbeda dengan `CLAUDECODE`, variabel ini hanya diatur oleh Claude Code sendiri ketika meluncurkan subproses dan tidak oleh ekstensi IDE, sehingga dapat dengan andal membedakan sesi bersarang dari `claude` tingkat atas yang diluncurkan di terminal terintegrasi IDE. TUI `claude` interaktif bersarang yang dimulai dengan cara ini secara otomatis dikecualikan dari `--resume`, `--continue`, riwayat panah atas, dan daftar `claude agents`. Sesi `claude -p` non-interaktif tetap disimpan. Atur `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` untuk menimpa pengecualian ini. Memerlukan Claude Code v2.1.172 atau yang lebih baru |

234| `CLAUDE_CODE_CLIENT_CERT` | Path ke file sertifikat klien untuk autentikasi mTLS |236| `CLAUDE_CODE_CLIENT_CERT` | Path ke file sertifikat klien untuk autentikasi mTLS |

235| `CLAUDE_CODE_CLIENT_KEY` | Path ke file kunci privat klien untuk autentikasi mTLS |237| `CLAUDE_CODE_CLIENT_KEY` | Path ke file kunci privat klien untuk autentikasi mTLS |

236| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Passphrase untuk CLAUDE\_CODE\_CLIENT\_KEY yang terenkripsi (opsional) |238| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Passphrase untuk CLAUDE\_CODE\_CLIENT\_KEY yang terenkripsi (opsional) |

237| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | Dihapus di v2.1.186 dan sekarang tidak berpengaruh. Sebelumnya menetapkan timeout terpisah untuk fase koneksi, TLS, dan header respons dari permintaan API streaming. Gunakan `API_TIMEOUT_MS` untuk timeout per permintaan. Untuk fase header respons dari permintaan streaming, lihat `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |239| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | Dihapus di v2.1.186 dan kini tidak berpengaruh. Sebelumnya mengatur timeout terpisah untuk fase koneksi, TLS, dan header respons dari permintaan API streaming. Gunakan `API_TIMEOUT_MS` untuk timeout per permintaan. Untuk fase header respons dari permintaan streaming, lihat `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |

238| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Menimpa path file log debug. Meskipun namanya demikian, ini adalah path file, bukan direktori. Memerlukan mode debug diaktifkan secara terpisah melalui `--debug`, `/debug`, atau environment variable `DEBUG`: mengatur variabel ini saja tidak mengaktifkan logging. Flag [`--debug-file`](/docs/id/cli-reference#cli-flags) melakukan keduanya sekaligus. Default-nya `~/.claude/debug/<session-id>.txt` |240| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Timpa path file log debug. Terlepas dari namanya, ini adalah path file, bukan direktori. Memerlukan mode debug untuk diaktifkan secara terpisah melalui `--debug`, `/debug`, atau environment variable `DEBUG`: mengatur variabel ini saja tidak mengaktifkan pencatatan log. Flag [`--debug-file`](/docs/id/cli-reference#cli-flags) melakukan keduanya sekaligus. Default-nya `~/.claude/debug/<session-id>.txt` |

239| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Level log minimum yang ditulis ke file log debug. Nilai: `verbose`, `debug` (default), `info`, `warn`, `error`. Atur ke `verbose` untuk menyertakan diagnostik bervolume tinggi seperti output lengkap perintah baris status, atau naikkan ke `error` untuk mengurangi gangguan |241| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | Level log minimum yang ditulis ke file log debug. Nilai: `verbose`, `debug` (default), `info`, `warn`, `error`. Atur ke `verbose` untuk menyertakan diagnostik bervolume tinggi seperti output lengkap perintah baris status, atau naikkan ke `error` untuk mengurangi noise |

240| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Atur ke `1` untuk menonaktifkan dukungan [context window 1M](/docs/id/model-config#extended-context). Jika diatur, varian model 1M tidak tersedia di pemilih model, dan Claude Code membatasi sesi pada model dengan jendela 1M native, seperti [Sonnet 5.5](/docs/id/model-config#sonnet-5-5-and-sonnet-5-context-window) dan model Fable, ke jendela 200K; lihat [Konteks diperluas](/docs/id/model-config#extended-context) untuk cara pembatasan ini diberlakukan. Berguna untuk lingkungan enterprise dengan persyaratan kepatuhan. Untuk perannya dalam mengoreksi jendela untuk ID model `[1m]` yang tidak dikenali, lihat [Mengoreksi jendela untuk ID model gateway atau kustom](/docs/id/model-config#correct-the-window-for-a-gateway-or-custom-model-id) |242| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Atur ke `1` untuk menonaktifkan dukungan [context window 1M](/docs/id/model-config#extended-context). Jika diatur, varian model 1M tidak tersedia di pemilih model, dan Claude Code membatasi sesi pada model dengan jendela 1M native, seperti [Sonnet 5.5](/docs/id/model-config#sonnet-5-5-and-sonnet-5-context-window) dan model Fable, ke jendela 200K; lihat [Konteks yang diperluas](/docs/id/model-config#extended-context) untuk cara pembatasan tersebut diberlakukan. Berguna untuk lingkungan enterprise dengan persyaratan kepatuhan. Untuk perannya dalam mengoreksi jendela untuk ID model `[1m]` yang tidak dikenali, lihat [Mengoreksi jendela untuk gateway atau ID model kustom](/docs/id/model-config#correct-the-window-for-a-gateway-or-custom-model-id) |

241| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Atur ke `1` untuk menonaktifkan [penalaran adaptif](/docs/id/model-config#adjust-effort-level) pada Opus 4.6 dan Sonnet 4.6 dan beralih ke thinking budget tetap yang dikendalikan oleh `MAX_THINKING_TOKENS`. Tidak berpengaruh pada [model Fable](/docs/id/model-config#extended-thinking), Sonnet 5 dan yang lebih baru, atau Opus 4.7 dan yang lebih baru, yang selalu menggunakan penalaran adaptif |243| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Atur ke `1` untuk menonaktifkan [penalaran adaptif](/docs/id/model-config#adjust-effort-level) pada Opus 4.6 dan Sonnet 4.6 dan kembali ke thinking budget tetap yang dikontrol oleh `MAX_THINKING_TOKENS`. Tidak berpengaruh pada [model Fable](/docs/id/model-config#extended-thinking), Sonnet 5 dan yang lebih baru, Haiku 5.5, atau Opus 4.7 dan yang lebih baru, yang selalu menggunakan penalaran adaptif |

242| `CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION` | Atur ke `1` untuk menghentikan Claude Code menggabungkan blok `env` [pengaturan terkelola](/docs/id/managed-settings#precedence-within-the-managed-tier) per kunci di seluruh sumber admin, sehingga hanya seluruh blok `env` dari sumber dengan prioritas tertinggi yang berlaku, seperti sebelum v2.1.223. Atur di lingkungan yang menjalankan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.223 atau lebih baru |244| `CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION` | Atur ke `1` untuk menghentikan Claude Code menggabungkan blok `env` [pengaturan terkelola](/docs/id/managed-settings#precedence-within-the-managed-tier) per kunci di seluruh sumber admin, sehingga hanya seluruh blok `env` dari sumber dengan prioritas tertinggi yang berlaku, seperti sebelum v2.1.223. Atur di environment yang meluncurkan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.223 atau yang lebih baru |

243| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Atur ke `1` untuk menonaktifkan [tool advisor](/docs/id/advisor). Perintah `/advisor` menjadi tidak tersedia, `advisorModel` apa pun yang dikonfigurasi diabaikan, dan flag `--advisor` diterima tetapi tidak berpengaruh, sehingga skrip yang sudah ada yang meneruskannya tetap berfungsi tanpa error |245| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Atur ke `1` untuk menonaktifkan [tool advisor](/docs/id/advisor). Perintah `/advisor` menjadi tidak tersedia, `advisorModel` yang dikonfigurasi diabaikan, dan flag `--advisor` diterima tetapi tidak berpengaruh, sehingga skrip yang sudah ada yang meneruskannya tetap berfungsi tanpa error |

244| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | Atur ke `1` untuk mematikan [background agent dan agent view](/docs/id/agent-view): `claude agents`, `--bg`, `/background`, dan supervisor sesuai permintaan. Setara dengan pengaturan [`disableAgentView`](/docs/id/settings-reference#disableagentview) |246| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | Atur ke `1` untuk menonaktifkan [agent latar belakang dan tampilan agent](/docs/id/agent-view): `claude agents`, `--bg`, `/background`, dan supervisor sesuai permintaan. Setara dengan pengaturan [`disableAgentView`](/docs/id/settings-reference#disableagentview) |

245| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Atur ke `1` untuk menonaktifkan [rendering layar penuh](/docs/id/fullscreen) dan menggunakan renderer layar utama klasik. Percakapan tetap berada di scrollback native terminal Anda sehingga `Cmd+f` dan mode salin tmux berfungsi seperti biasa. Diutamakan daripada `CLAUDE_CODE_NO_FLICKER` dan pengaturan [`tui`](/docs/id/settings-reference#tui). Anda juga dapat beralih dengan `/tui default`. Tidak berlaku untuk sesi latar belakang yang dibuka dari [agent view](/docs/id/agent-view), yang selalu menggunakan rendering layar penuh |247| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Atur ke `1` untuk menonaktifkan [rendering layar penuh](/docs/id/fullscreen) dan menggunakan renderer layar utama klasik. Percakapan tetap berada di scrollback native terminal Anda sehingga `Cmd+f` dan mode salin tmux berfungsi seperti biasa. Diutamakan daripada `CLAUDE_CODE_NO_FLICKER` dan pengaturan [`tui`](/docs/id/settings-reference#tui). Anda juga dapat beralih dengan `/tui default`. Tidak berlaku untuk sesi latar belakang yang dibuka dari [tampilan agent](/docs/id/agent-view), yang selalu menggunakan rendering layar penuh |

246| `CLAUDE_CODE_DISABLE_ARTIFACT` | Atur ke `1` untuk mematikan tool [Artifact](/docs/id/artifacts), yang memublikasikan output sesi sebagai halaman web privat di claude.ai. Setelah Anda mengaturnya, tidak ada file pengaturan yang dapat mengaktifkan kembali tool tersebut. Untuk mematikan tool dari file pengaturan, atur [`enableArtifact`](/docs/id/settings-reference#enableartifact) ke `false`; kunci [`disableArtifact`](/docs/id/settings-reference#disableartifact) yang sudah deprecated juga mematikannya |248| `CLAUDE_CODE_DISABLE_ARTIFACT` | Atur ke `1` untuk menonaktifkan tool [Artifact](/docs/id/artifacts), yang memublikasikan output sesi sebagai halaman web privat di claude.ai. Setelah Anda mengaturnya, tidak ada file pengaturan yang dapat mengaktifkan kembali tool tersebut. Untuk menonaktifkan tool dari file pengaturan, atur [`enableArtifact`](/docs/id/settings-reference#enableartifact) ke `false`; kunci [`disableArtifact`](/docs/id/settings-reference#disableartifact) yang sudah deprecated juga menonaktifkannya |

247| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Atur ke `1` untuk menonaktifkan pemrosesan lampiran. Penyebutan file dengan sintaks `@` dikirim sebagai teks biasa alih-alih diperluas menjadi isi file |249| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Atur ke `1` untuk menonaktifkan pemrosesan lampiran. Penyebutan file dengan sintaks `@` dikirim sebagai teks biasa alih-alih diperluas menjadi konten file |

248| `CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK` | Atur ke `1` agar proses Claude Code menjalankan sendiri perintah [`gcpAuthRefresh`](/docs/id/settings-reference#gcpauthrefresh) atau [`awsAuthRefresh`](/docs/id/settings-reference#awsauthrefresh) alih-alih menunggu selagi proses lain menjalankannya. Memerlukan Claude Code v2.1.286 atau lebih baru |250| `CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK` | Atur ke `1` agar proses Claude Code menjalankan sendiri perintah [`gcpAuthRefresh`](/docs/id/settings-reference#gcpauthrefresh) atau [`awsAuthRefresh`](/docs/id/settings-reference#awsauthrefresh)-nya alih-alih menunggu selagi proses lain menjalankannya. Memerlukan Claude Code v2.1.286 atau yang lebih baru |

249| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Atur ke `1` untuk menonaktifkan [auto memory](/docs/id/memory#auto-memory). Atur ke `0` untuk memaksa auto memory aktif bahkan ketika mode `--bare` atau [`autoMemoryEnabled: false`](/docs/id/settings-reference#automemoryenabled) seharusnya menonaktifkannya. Jika dinonaktifkan, Claude tidak membuat atau memuat file auto memory |251| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | Atur ke `1` untuk menonaktifkan [auto memory](/docs/id/memory#auto-memory). Atur ke `0` untuk memaksa auto memory aktif bahkan ketika mode `--bare` atau [`autoMemoryEnabled: false`](/docs/id/settings-reference#automemoryenabled) akan menonaktifkannya. Jika dinonaktifkan, Claude tidak membuat atau memuat file auto memory |

250| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Atur ke `1` untuk menonaktifkan semua fungsionalitas tugas latar belakang, termasuk parameter `run_in_background` pada tool Bash dan subagent, pemindahan otomatis ke latar belakang, dan pintasan Ctrl+B |252| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Atur ke `1` untuk menonaktifkan semua fungsionalitas tugas latar belakang, termasuk parameter `run_in_background` pada tool Bash dan subagent, pemindahan otomatis ke latar belakang, dan pintasan Ctrl+B |

251| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Atur ke `1` untuk menghentikan Claude Code memperlakukan respons streaming [Amazon Bedrock](/docs/id/amazon-bedrock) dengan header `Content-Type` yang hilang atau kosong sebagai event stream biner Amazon Bedrock. Secara default, Claude Code mengasumsikan bahwa gateway menghapus header dari respons yang selebihnya tidak dimodifikasi, sehingga Claude Code mendekode body dan streaming tetap berfungsi. Atur ini hanya untuk gateway yang juga memancarkan ulang stream sebagai server-sent events; Claude Code kemudian membaca body tanpa header sebagai server-sent events. Memerlukan Claude Code v2.1.239 atau lebih baru |253| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Atur ke `1` untuk menghentikan Claude Code memperlakukan respons streaming [Amazon Bedrock](/docs/id/amazon-bedrock) dengan header `Content-Type` yang hilang atau kosong sebagai event stream biner Amazon Bedrock. Secara default, Claude Code mengasumsikan gateway menghapus header dari respons yang sebenarnya tidak dimodifikasi, sehingga Claude Code mendekode body dan streaming tetap berfungsi. Atur ini hanya untuk gateway yang juga memancarkan ulang stream sebagai server-sent events; Claude Code kemudian membaca body tanpa header tersebut sebagai server-sent events. Memerlukan Claude Code v2.1.239 atau yang lebih baru |

252| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Atur ke `1` untuk melewati pemeriksaan bahwa respons streaming [Amazon Bedrock](/docs/id/amazon-bedrock) membawa content-type `application/vnd.amazon.eventstream`. Tanpa variabel ini, ketika respons membawa content-type yang berbeda, Claude Code menggagalkan permintaan dengan error yang menyebutkan jenis tersebut, yang berarti [gateway atau proxy sedang mentransformasi respons](/docs/id/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Konfigurasikan gateway untuk meneruskan header `Content-Type` dan body tanpa modifikasi alih-alih mengatur variabel ini. Memerlukan Claude Code v2.1.208 atau lebih baru |254| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Atur ke `1` untuk melewati pemeriksaan bahwa respons streaming [Amazon Bedrock](/docs/id/amazon-bedrock) membawa content-type `application/vnd.amazon.eventstream`. Tanpa variabel ini, ketika respons membawa content-type yang berbeda, Claude Code menggagalkan permintaan dengan error yang menyebutkan jenis tersebut, yang berarti [gateway atau proxy sedang mengubah respons](/docs/id/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy). Konfigurasikan gateway untuk meneruskan header `Content-Type` dan body tanpa modifikasi alih-alih mengatur variabel ini. Memerlukan Claude Code v2.1.208 atau yang lebih baru |

253| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Atur ke `1` untuk menghentikan perintah shell latar belakang yang sedang berjalan, dynamic workflow, dan, sejak v2.1.198, subagent latar belakang milik [sesi latar belakang](/docs/id/agent-view) ketika [supervisor](/docs/id/agent-view#the-supervisor-process) menghentikan, memulai ulang, atau memperbarui proses sesi tersebut, alih-alih menyerahkannya ke proses sesi berikutnya. Hanya memengaruhi penyerahan tersebut: memindahkan sesi ke latar belakang dengan `←` atau [`/background`](/docs/id/agent-view#from-inside-a-session) tetap membawa pekerjaan yang sedang berjalan, dan `CLAUDE_DISABLE_ADOPT` mematikan keduanya. Memerlukan Claude Code v2.1.196 atau lebih baru |255| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Atur ke `1` untuk menghentikan perintah shell latar belakang yang sedang berjalan, workflow dinamis, dan, mulai v2.1.198, subagent latar belakang milik [sesi latar belakang](/docs/id/agent-view) ketika [supervisor](/docs/id/agent-view#the-supervisor-process) menghentikan, memulai ulang, atau memperbarui proses sesi tersebut, alih-alih menyerahkannya ke proses berikutnya dari sesi tersebut. Hanya memengaruhi penyerahan tersebut: memindahkan sesi ke latar belakang dengan `←` atau [`/background`](/docs/id/agent-view#from-inside-a-session) tetap membawa pekerjaan yang sedang berjalan, dan `CLAUDE_DISABLE_ADOPT` menonaktifkan keduanya. Memerlukan Claude Code v2.1.196 atau yang lebih baru |

254| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Atur ke `1` untuk menghentikan Claude Code mengakhiri [perintah shell latar belakang](/docs/id/interactive-mode#background-bash-commands) di bawah tekanan memori. Secara default, di macOS dan Linux, Claude Code mengakhiri shell latar belakang ketika sistem operasi melaporkan tekanan memori kritis dan sesi telah idle selama 30 menit tanpa giliran atau subagent yang berjalan. Windows tidak memiliki sinyal tekanan memori, sehingga variabel ini tidak berpengaruh di sana. Memerlukan Claude Code v2.1.193 atau lebih baru |256| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Atur ke `1` untuk menghentikan Claude Code mengakhiri [perintah shell latar belakang](/docs/id/interactive-mode#background-bash-commands) saat terjadi tekanan memori. Secara default, di macOS dan Linux, Claude Code mengakhiri shell latar belakang ketika sistem operasi melaporkan tekanan memori kritis dan sesi telah idle selama 30 menit tanpa giliran atau subagent yang berjalan. Windows tidak memiliki sinyal tekanan memori, sehingga variabel ini tidak berpengaruh di sana. Memerlukan Claude Code v2.1.193 atau yang lebih baru |

255| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Atur ke `1` untuk menonaktifkan [skill](/docs/id/skills) dan workflow yang disertakan dengan Claude Code: skill bawaan dan workflow dihapus sepenuhnya, sementara perintah bawaan seperti `/init` tetap dapat diketik tetapi disembunyikan dari model. `/doctor` tetap dapat diketik seperti perintah bawaan; sembunyikan dengan `DISABLE_DOCTOR_COMMAND`. Skill dari plugin, `.claude/skills/`, dan `.claude/commands/` tidak terpengaruh. Setara dengan pengaturan [`disableBundledSkills`](/docs/id/settings-reference#disablebundledskills) |257| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Atur ke `1` untuk menonaktifkan [skill](/docs/id/skills) dan workflow yang disertakan dengan Claude Code: skill bawaan dan workflow bawaan dihapus sepenuhnya, sementara perintah bawaan seperti `/init` tetap dapat diketik tetapi disembunyikan dari model. `/doctor` tetap dapat diketik seperti perintah bawaan; sembunyikan dengan `DISABLE_DOCTOR_COMMAND` sebagai gantinya. Skill dari plugin, `.claude/skills/`, dan `.claude/commands/` tidak terpengaruh. Setara dengan pengaturan [`disableBundledSkills`](/docs/id/settings-reference#disablebundledskills) |

256| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Atur ke `1` agar tool browser [Claude in Chrome](/docs/id/chrome) tetap tersedia sambil menghilangkan bagian Chrome dari system prompt dan [skill bawaan](/docs/id/skills#bundled-skills) `/claude-in-chrome`. Untuk host yang menyematkan Claude Code dan menyediakan panduan browser sendiri. Memerlukan Claude Code v2.1.257 atau lebih baru |258| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Atur ke `1` untuk tetap menyediakan tool browser [Claude in Chrome](/docs/id/chrome) sambil menghilangkan bagian Chrome dari system prompt dan [skill bawaan](/docs/id/skills#bundled-skills) `/claude-in-chrome`. Untuk host yang menyematkan Claude Code dan menyediakan panduan browser mereka sendiri. Memerlukan Claude Code v2.1.257 atau yang lebih baru |

257| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Atur ke `1` untuk mencegah pemuatan file memori CLAUDE.md apa pun ke dalam konteks, termasuk file memori pengguna, proyek, dan auto memory |259| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | Atur ke `1` untuk mencegah pemuatan file memori CLAUDE.md apa pun ke dalam konteks, termasuk file memori pengguna, proyek, dan auto memory |

258| `CLAUDE_CODE_DISABLE_CRON` | Atur ke `1` untuk menonaktifkan [tugas terjadwal](/docs/id/scheduled-tasks). Skill `/loop` dan tool cron menjadi tidak tersedia dan tugas apa pun yang sudah dijadwalkan berhenti dijalankan, termasuk tugas yang sudah berjalan di tengah sesi |260| `CLAUDE_CODE_DISABLE_CRON` | Atur ke `1` untuk menonaktifkan [tugas terjadwal](/docs/id/scheduled-tasks). Skill `/loop` dan tool cron menjadi tidak tersedia dan tugas yang sudah dijadwalkan berhenti dijalankan, termasuk tugas yang sudah berjalan di tengah sesi |

259| `CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` | Atur ke `1` untuk mematikan batas waktu pada permintaan izin [penghapusan jalur kritis](/docs/id/permission-modes#critical-paths). Dalam mode `auto`, Claude Code kemudian mengirim penghapusan ini ke pengklasifikasi, dan dalam mode `bypassPermissions`, permintaan izin menunggu jawaban Anda. Atur di lingkungan yang menjalankan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.281 atau lebih baru |261| `CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` | Atur ke `1` untuk menonaktifkan batas waktu pada permintaan izin [penghapusan path kritis](/docs/id/permission-modes#critical-paths). Dalam mode `auto`, Claude Code kemudian mengirimkan penghapusan ini ke pengklasifikasi, dan dalam mode `bypassPermissions`, permintaan izin menunggu jawaban Anda. Atur di environment yang meluncurkan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.281 atau yang lebih baru |

260| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Atur ke `1` untuk menghapus header permintaan `anthropic-beta` pra-rilis, field body yang berpasangan dengannya, dan field skema tool beta seperti `defer_loading` dan `eager_input_streaming` dari permintaan API. Gunakan ini ketika proxy gateway menolak permintaan dengan error `Unexpected value(s)` untuk header `anthropic-beta` atau error `Extra inputs are not permitted`. [Menonaktifkan kapabilitas pra-rilis](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities) mencantumkan apa yang dihapus oleh variabel ini, termasuk [MCP tool search](/docs/id/mcp#scale-with-mcp-tool-search), dan apa yang tetap dikirim Claude Code |262| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Atur ke `1` untuk menghapus header permintaan `anthropic-beta` pra-rilis, field body yang berpasangan dengannya, dan field skema tool beta seperti `defer_loading` dan `eager_input_streaming` dari permintaan API. Gunakan ini ketika proxy gateway menolak permintaan dengan error `Unexpected value(s)` untuk header `anthropic-beta` atau error `Extra inputs are not permitted`. [Menonaktifkan kapabilitas pra-rilis](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities) mencantumkan apa yang dihapus variabel ini, termasuk [MCP tool search](/docs/id/mcp#scale-with-mcp-tool-search), dan apa yang tetap dikirimkan Claude Code |

261| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | Atur ke `1` untuk menonaktifkan [subagent Explore dan Plan](/docs/id/sub-agents#built-in-subagents) bawaan. Claude melakukan eksplorasi dengan tool pencariannya atau subagent general-purpose, dan [plan mode](/docs/id/permission-modes#analyze-before-you-edit-with-plan-mode) membaca file secara langsung alih-alih meluncurkan agent Explore dan Plan. Subagent kustom bernama `Explore` atau `Plan` tidak terpengaruh. Untuk menghapus setiap jenis subagent bawaan di Agent SDK atau mode non-interaktif, gunakan `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS`. Memerlukan Claude Code v2.1.198 atau lebih baru |263| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | Atur ke `1` untuk menonaktifkan [subagent Explore dan Plan](/docs/id/sub-agents#built-in-subagents) bawaan. Claude melakukan eksplorasi dengan tool pencariannya atau subagent general-purpose sebagai gantinya, dan [plan mode](/docs/id/permission-modes#analyze-before-you-edit-with-plan-mode) membaca file secara langsung alih-alih meluncurkan agent Explore dan Plan. Subagent kustom bernama `Explore` atau `Plan` tidak terpengaruh. Untuk menghapus setiap jenis subagent bawaan di Agent SDK atau mode non-interaktif, gunakan `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` sebagai gantinya. Memerlukan Claude Code v2.1.198 atau yang lebih baru |

262| `CLAUDE_CODE_DISABLE_FAST_MODE` | Atur ke `1` untuk menonaktifkan [fast mode](/docs/id/fast-mode) |264| `CLAUDE_CODE_DISABLE_FAST_MODE` | Atur ke `1` untuk menonaktifkan [fast mode](/docs/id/fast-mode) |

263| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Atur ke `1` untuk menonaktifkan survei kualitas sesi "How is Claude doing?". Survei juga dinonaktifkan ketika `DISABLE_TELEMETRY`, `DO_NOT_TRACK`, atau `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` diatur, kecuali `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` mengaktifkannya kembali. Untuk menetapkan tingkat sampel alih-alih menonaktifkan sepenuhnya, gunakan pengaturan [`feedbackSurveyRate`](/docs/id/settings-reference#feedbacksurveyrate). Lihat [Survei kualitas sesi](/docs/id/data-usage#session-quality-surveys) |265| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Atur ke `1` untuk menonaktifkan survei kualitas sesi "How is Claude doing?". Survei juga dinonaktifkan ketika `DISABLE_TELEMETRY`, `DO_NOT_TRACK`, atau `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` diatur, kecuali `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` mengaktifkannya kembali. Untuk mengatur tingkat sampel alih-alih menonaktifkan sepenuhnya, gunakan pengaturan [`feedbackSurveyRate`](/docs/id/settings-reference#feedbacksurveyrate). Lihat [Survei kualitas sesi](/docs/id/data-usage#session-quality-surveys) |

264| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Atur ke `1` untuk menonaktifkan [checkpointing](/docs/id/checkpointing) file. Perintah `/rewind` tidak akan dapat memulihkan perubahan kode. Menimpa pengaturan [`fileCheckpointingEnabled`](/docs/id/settings-reference#filecheckpointingenabled) |266| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Atur ke `1` untuk menonaktifkan [checkpointing](/docs/id/checkpointing) file. Perintah `/rewind` tidak akan dapat memulihkan perubahan kode. Menimpa pengaturan [`fileCheckpointingEnabled`](/docs/id/settings-reference#filecheckpointingenabled) |

265| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Atur ke `1` untuk menghapus instruksi alur kerja commit dan PR bawaan serta snapshot status git dari konteks Claude. Berguna saat menggunakan skill alur kerja git Anda sendiri. Diutamakan daripada pengaturan [`includeGitInstructions`](/docs/id/settings-reference#includegitinstructions) jika diatur |267| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Atur ke `1` untuk menghapus instruksi alur kerja commit dan PR bawaan serta snapshot status git dari konteks Claude. Berguna saat menggunakan skill alur kerja git Anda sendiri. Diutamakan daripada pengaturan [`includeGitInstructions`](/docs/id/settings-reference#includegitinstructions) jika diatur |

266| `CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT` | Atur ke `1` untuk menghentikan Claude Code membaca skrip yang diteruskan ke shell dengan `-c`, seperti `bash -c 'rm -rf ~'`, untuk penghapusan [jalur kritis](/docs/id/permission-modes#removals-inside-nested-commands-and-inline-scripts). Claude Code tetap memeriksa target variabel shell dan parameter posisional dalam skrip tersebut, dan pemeriksaan jalur kritis lainnya tetap berjalan. Atur di lingkungan yang menjalankan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.288 atau lebih baru |268| `CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT` | Atur ke `1` untuk menghentikan Claude Code membaca skrip yang diteruskan ke shell dengan `-c`, seperti `bash -c 'rm -rf ~'`, untuk penghapusan [path kritis](/docs/id/permission-modes#removals-inside-nested-commands-and-inline-scripts). Claude Code tetap memeriksa target variabel shell dan parameter posisional dalam skrip tersebut, dan pemeriksaan path kritis lainnya tetap berjalan. Atur di environment yang meluncurkan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.288 atau yang lebih baru |

267| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Atur ke `1` untuk mencegah pemetaan ulang otomatis Opus 4.0 dan 4.1 ke versi Opus saat ini di Anthropic API. Gunakan ketika Anda sengaja ingin menyematkan model yang lebih lama. Pemetaan ulang tidak berjalan di Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry |269| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Atur ke `1` untuk mencegah pemetaan ulang otomatis Opus 4.0 dan 4.1 ke versi Opus saat ini pada Anthropic API. Gunakan ketika Anda sengaja ingin menyematkan model yang lebih lama. Pemetaan ulang tidak berjalan pada Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry |

268| `CLAUDE_CODE_DISABLE_MODEL_ACCESS_FALLBACK` | Atur ke `1` untuk menghentikan Claude Code di [Amazon Bedrock](/docs/id/amazon-bedrock#when-a-model-is-disabled-mid-session) dan [Google Cloud's Agent Platform](/docs/id/google-vertex-ai#when-a-model-is-disabled-mid-session) beralih ke model yang lebih lama ketika akun Anda kehilangan akses ke model sesi di tengah sesi; permintaan yang ditolak langsung gagal. [Rantai fallback model](/docs/id/model-config#fallback-model-chains) yang Anda konfigurasikan tetap beralih saat penolakan tersebut, dan [pemeriksaan model saat startup](/docs/id/amazon-bedrock#startup-model-checks) tetap melakukan fallback saat peluncuran. Memerlukan Claude Code v2.1.285 atau lebih baru |270| `CLAUDE_CODE_DISABLE_MODEL_ACCESS_FALLBACK` | Atur ke `1` untuk mencegah Claude Code pada [Amazon Bedrock](/docs/id/amazon-bedrock#when-a-model-is-disabled-mid-session) dan [Google Cloud's Agent Platform](/docs/id/google-vertex-ai#when-a-model-is-disabled-mid-session) beralih ke model yang lebih lama ketika akun Anda kehilangan akses ke model sesi di tengah sesi; permintaan yang ditolak langsung gagal sebagai gantinya. [Rantai model fallback](/docs/id/model-config#fallback-model-chains) yang Anda konfigurasikan tetap beralih saat penolakan tersebut, dan [pemeriksaan model saat startup](/docs/id/amazon-bedrock#startup-model-checks) tetap melakukan fallback saat peluncuran. Memerlukan Claude Code v2.1.285 atau yang lebih baru |

269| `CLAUDE_CODE_DISABLE_MOUSE` | Atur ke `1` untuk menonaktifkan pelacakan mouse dalam [rendering layar penuh](/docs/id/fullscreen). Pengguliran dengan keyboard menggunakan `PgUp` dan `PgDn` tetap berfungsi. Gunakan ini untuk mempertahankan perilaku copy-on-select native terminal Anda |271| `CLAUDE_CODE_DISABLE_MOUSE` | Atur ke `1` untuk menonaktifkan pelacakan mouse dalam [rendering layar penuh](/docs/id/fullscreen). Scroll dengan keyboard menggunakan `PgUp` dan `PgDn` tetap berfungsi. Gunakan ini untuk mempertahankan perilaku salin-saat-pilih native terminal Anda |

270| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | Atur ke `1` untuk menonaktifkan penanganan klik, seret, dan hover dalam [rendering layar penuh](/docs/id/fullscreen) sambil mempertahankan pengguliran roda mouse. Gunakan ini ketika Anda ingin pengguliran roda berfungsi di dalam Claude Code tetapi tidak ingin klik memosisikan kursor, memperluas output tool, atau membuka tautan. `CLAUDE_CODE_DISABLE_MOUSE` diutamakan jika keduanya diatur. Memerlukan Claude Code v2.1.195 atau lebih baru |272| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | Atur ke `1` untuk menonaktifkan penanganan klik, seret, dan hover dalam [rendering layar penuh](/docs/id/fullscreen) sambil tetap mempertahankan scroll roda mouse. Gunakan ini ketika Anda ingin scroll roda berfungsi di dalam Claude Code tetapi tidak ingin klik memosisikan kursor, memperluas output tool, atau membuka tautan. `CLAUDE_CODE_DISABLE_MOUSE` diutamakan jika keduanya diatur. Memerlukan Claude Code v2.1.195 atau yang lebih baru |

271| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | Atur ke `1` untuk menghentikan Claude Code membaca ulang [sertifikat dan kunci klien mTLS](/docs/id/network-config#mtls-authentication) ketika permintaan API gagal dengan error tingkat koneksi, seperti reset koneksi atau error handshake TLS. Dengan pemuatan ulang dinonaktifkan, Claude Code memuat file yang dirotasi hanya ketika berikutnya menerapkan pengaturan atau pada startup berikutnya. Memerlukan Claude Code v2.1.232 atau lebih baru |273| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | Atur ke `1` untuk menghentikan Claude Code membaca ulang [sertifikat dan kunci klien mTLS](/docs/id/network-config#mtls-authentication) ketika permintaan API gagal dengan error tingkat koneksi, seperti connection reset atau error TLS handshake. Dengan pemuatan ulang dinonaktifkan, Claude Code memuat file yang dirotasi hanya saat berikutnya menerapkan pengaturan atau pada startup berikutnya. Memerlukan Claude Code v2.1.232 atau yang lebih baru |

272| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk menonaktifkan lalu lintas jaringan yang tidak esensial: pembaruan otomatis, telemetri, pelaporan error, perintah `/feedback`, [feedback yang dirancang Claude](/docs/id/tools-reference#sendfeedback-tool-behavior), catatan rilis, pemeriksaan [lencana status PR dan MR](/docs/id/interactive-mode#pr-review-status), dan pemeriksaan ketersediaan seperti pemeriksaan [fast mode](/docs/id/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways). Ini juga menghentikan [eksekusi latar belakang sumber `command` plugin](/docs/id/plugins/loading#when-a-command-source-re-runs), yang merupakan perintah lokal dan bukan lalu lintas jaringan, karena dapat memicu instalasi dependensi. **Mengaturnya ke `0` atau `false` tetap menonaktifkan lalu lintas ini**, berbeda dengan sebagian besar variabel on/off; hapus variabel untuk mengizinkannya kembali. Juga menonaktifkan pengambilan feature flag, yang membuat [Remote Control](/docs/id/remote-control#requirements) dan [fitur lain yang memerlukan pengambilan feature flag](#features-that-need-feature-flag-fetching) tidak tersedia. Instalasi otomatis marketplace plugin resmi tidak tercakup; nonaktifkan dengan `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL`. Tidak memengaruhi [penemuan model gateway](/docs/id/llm-gateway-connect#add-gateway-models-to-the-model-picker), yang memiliki opsi ikut sertanya sendiri |274| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Atur ke nilai tidak kosong apa pun, seperti `1`, untuk menonaktifkan lalu lintas jaringan yang tidak esensial: pembaruan otomatis, telemetri, pelaporan error, perintah `/feedback`, [umpan balik yang disusun Claude](/docs/id/tools-reference#sendfeedback-tool-behavior), catatan rilis, pemeriksaan [lencana status PR dan MR](/docs/id/interactive-mode#pr-review-status), dan pemeriksaan ketersediaan seperti pemeriksaan [fast mode](/docs/id/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways). Ini juga menghentikan [eksekusi latar belakang sumber `command` plugin](/docs/id/plugins/loading#when-a-command-source-re-runs), yang merupakan perintah lokal dan bukan lalu lintas jaringan, karena dapat memicu instalasi dependensi. **Mengaturnya ke `0` atau `false` tetap menonaktifkan lalu lintas ini**, tidak seperti sebagian besar variabel aktif/nonaktif; hapus variabel untuk mengizinkannya kembali. Juga menonaktifkan pengambilan feature flag, yang membuat [Remote Control](/docs/id/remote-control#requirements) dan [fitur lain yang memerlukan pengambilan feature flag](#features-that-need-feature-flag-fetching) tidak tersedia. Pemasangan otomatis marketplace plugin resmi tidak tercakup; nonaktifkan dengan `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL`. Tidak memengaruhi [penemuan model gateway](/docs/id/llm-gateway-connect#add-gateway-models-to-the-model-picker), yang memiliki opsi aktivasinya sendiri |

273| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Atur ke `1` untuk menonaktifkan fallback non-streaming ketika permintaan streaming gagal di tengah stream. Error streaming diteruskan ke lapisan retry. Berguna ketika proxy atau gateway menyebabkan fallback menghasilkan eksekusi tool ganda |275| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Atur ke `1` untuk menonaktifkan fallback non-streaming ketika permintaan streaming gagal di tengah stream. Error streaming diteruskan ke lapisan retry sebagai gantinya. Berguna ketika proxy atau gateway menyebabkan fallback menghasilkan eksekusi tool yang duplikat |

274| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | Atur ke `1` untuk mengirim notifikasi desktop tool `PushNotification` bahkan saat Anda sedang mengetik di atau fokus pada terminal. Secara default, tool melewati notifikasi desktop dan [push seluler](/docs/id/remote-control#mobile-push-notifications) ketika mendeteksi aktivitas keyboard terbaru atau fokus terminal. Variabel ini hanya menonaktifkan pemeriksaan lokal tersebut, sehingga server tetap dapat menekan push seluler ketika mendeteksi bahwa Anda sedang aktif. Memerlukan Claude Code v2.1.193 atau lebih baru |276| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | Atur ke `1` untuk mengirim notifikasi desktop dari tool `PushNotification` bahkan saat Anda sedang mengetik di atau berfokus pada terminal. Secara default, tool tersebut melewati notifikasi desktop maupun [push seluler](/docs/id/remote-control#mobile-push-notifications) ketika mendeteksi aktivitas keyboard baru-baru ini atau fokus terminal. Variabel ini hanya menonaktifkan pemeriksaan lokal tersebut, sehingga server masih dapat menekan push seluler ketika mendeteksi bahwa Anda sedang aktif. Memerlukan Claude Code v2.1.193 atau yang lebih baru |

275| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Atur ke `1` untuk menonaktifkan pendaftaran otomatis marketplace plugin resmi. Claude Code membaca variabel ini ketika akan mendaftarkan marketplace, biasanya selama peluncuran interaktif pertama pada sebuah mesin. Jika variabel diatur pada saat itu, Claude Code melewati pendaftaran secara permanen. Menghapus variabel kemudian tidak membatalkan pelewatan tersebut. Jalankan `claude plugin marketplace add anthropics/claude-plugins-official` untuk mendaftarkan marketplace kapan saja |277| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Atur ke `1` untuk menonaktifkan pendaftaran otomatis marketplace plugin resmi. Claude Code membaca variabel ini ketika akan mendaftarkan marketplace, biasanya saat peluncuran interaktif pertama pada sebuah mesin. Jika variabel diatur pada saat itu, Claude Code melewati pendaftaran secara permanen. Menghapus variabel kemudian tidak membatalkan pelewatan tersebut. Jalankan `claude plugin marketplace add anthropics/claude-plugins-official` untuk mendaftarkan marketplace kapan saja |

276| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | Atur ke `1` untuk menghentikan Claude Code menjalankan [hook `Notification` untuk permintaan izin yang belum dijawab](/docs/id/hooks#notification) dalam sesi di mana Claude Code mengirimkannya ke callback `canUseTool` milik Agent SDK, yang merupakan cara Claude Desktop dan ekstensi VS Code meng-host Claude Code. Tidak berpengaruh dalam sesi terminal. Memerlukan Claude Code v2.1.233 atau lebih baru |278| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | Atur ke `1` untuk menghentikan Claude Code menjalankan [hook `Notification` Anda untuk permintaan izin yang belum dijawab](/docs/id/hooks#notification) dalam sesi di mana Claude Code mengirimkannya ke callback `canUseTool` Agent SDK, yaitu cara Claude Desktop dan ekstensi VS Code menjadi host bagi Claude Code. Tidak berpengaruh dalam sesi terminal. Memerlukan Claude Code v2.1.233 atau yang lebih baru |

277| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Atur ke `1` untuk melewati pemuatan skill dari direktori skill terkelola tingkat sistem. Berguna untuk sesi container atau CI yang tidak boleh memuat skill yang disediakan operator |279| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Atur ke `1` untuk melewati pemuatan skill dari direktori skill terkelola tingkat sistem. Berguna untuk sesi container atau CI yang tidak boleh memuat skill yang disediakan operator |

278| `CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY` | Atur ke `1` untuk mematikan pemeriksaan [tool PowerShell](/docs/id/tools-reference#powershell-tool) yang menolak perintah bawaan `cmd` `rd`, `rmdir`, `del`, dan `erase` pada [jalur sistem](/docs/id/permission-modes#remove-item-in-powershell), seperti root drive atau direktori home Anda. Claude Code mengabaikan variabel ini di blok `env` file pengaturan. Memerlukan Claude Code v2.1.283 atau lebih baru |280| `CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY` | Atur ke `1` untuk menonaktifkan pemeriksaan [tool PowerShell](/docs/id/tools-reference#powershell-tool) yang menolak built-in `cmd` `rd`, `rmdir`, `del`, dan `erase` pada [path sistem](/docs/id/permission-modes#remove-item-in-powershell), seperti root drive atau direktori home Anda. Claude Code mengabaikan variabel ini dalam blok `env` file pengaturan. Memerlukan Claude Code v2.1.283 atau yang lebih baru |

279| `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK` | Atur ke `1` untuk mematikan [peralihan model otomatis ketika pengklasifikasi keamanan menandai permintaan](/docs/id/model-config#automatic-model-fallback), perilaku yang dikontrol oleh pengaturan [`switchModelsOnFlag`](/docs/id/settings-reference#switchmodelsonflag) |281| `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK` | Atur ke `1` untuk menonaktifkan [peralihan model otomatis ketika pengklasifikasi keamanan menandai permintaan](/docs/id/model-config#automatic-model-fallback), perilaku yang dikontrol oleh pengaturan [`switchModelsOnFlag`](/docs/id/settings-reference#switchmodelsonflag) |

280| `CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS` | Atur ke `1` untuk menghentikan Claude Code mengirim field structured-output `output_config.format` dan nilai `anthropic-beta` yang berpasangan dengannya, untuk [LLM gateway](/docs/id/llm-gateway-protocol#feature-pass-through) yang upstream-nya menolak keduanya. Ini membiarkan tetap aktif kapabilitas pra-rilis lainnya yang dimatikan oleh [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities). Memerlukan Claude Code v2.1.288 atau lebih baru |282| `CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS` | Atur ke `1` untuk menghentikan Claude Code mengirim field structured-output `output_config.format` dan nilai `anthropic-beta` yang berpasangan dengannya, untuk [LLM gateway](/docs/id/llm-gateway-protocol#feature-pass-through) yang upstream-nya menolaknya. Ini tetap mengaktifkan kapabilitas pra-rilis lain yang dinonaktifkan oleh [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities). Memerlukan Claude Code v2.1.288 atau yang lebih baru |

281| `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT` | Atur ke `1` untuk mematikan pemeriksaan [jalur kritis](/docs/id/permission-modes#critical-paths) untuk `rm` rekursif yang targetnya sepenuhnya merupakan output dari substitusi perintah, seperti `rm -rf "$(pwd)"`. Pemeriksaan jalur kritis lainnya tetap berjalan. Atur di lingkungan yang menjalankan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.281 atau lebih baru |283| `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT` | Atur ke `1` untuk menonaktifkan pemeriksaan [path kritis](/docs/id/permission-modes#critical-paths) untuk `rm` rekursif yang targetnya seluruhnya merupakan output dari command substitution, seperti `rm -rf "$(pwd)"`. Pemeriksaan path kritis lainnya tetap berjalan. Atur di environment yang meluncurkan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.281 atau yang lebih baru |

282| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Atur ke `1` untuk menonaktifkan pembaruan otomatis judul terminal berdasarkan konteks percakapan. Ini juga melewati permintaan model small/fast di latar belakang yang [membuat judul sesi](/docs/id/sessions#name-your-sessions) |284| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Atur ke `1` untuk menonaktifkan pembaruan otomatis judul terminal berdasarkan konteks percakapan. Ini juga melewati permintaan model small/fast di latar belakang yang [menghasilkan judul sesi](/docs/id/sessions#name-your-sessions) |

283| `CLAUDE_CODE_DISABLE_THINKING` | Atur ke `1` untuk menghilangkan parameter `thinking` dari permintaan API sepenuhnya. Ini adalah opsi kompatibilitas untuk proxy dan gateway yang menolak parameter tersebut. Pada model yang melakukan thinking secara default, menghilangkan parameter berarti model mungkin tetap melakukan thinking. Untuk secara eksplisit menonaktifkan [extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) di Anthropic API, gunakan `MAX_THINKING_TOKENS=0`. Tidak satu pun dari kedua variabel ini mematikan thinking pada Opus 5.5, Sonnet 5.5, atau model Fable, yang thinking-nya tidak dapat dimatikan. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations), `MAX_THINKING_TOKENS=0` juga menghilangkan parameter, sehingga kedua variabel berperilaku sama di sana |285| `CLAUDE_CODE_DISABLE_THINKING` | Atur ke `1` untuk menghilangkan parameter `thinking` dari permintaan API sepenuhnya. Ini adalah opsi kompatibilitas untuk proxy dan gateway yang menolak parameter tersebut. Pada model yang melakukan thinking secara default, menghilangkan parameter berarti model mungkin tetap melakukan thinking. Untuk secara eksplisit menonaktifkan [extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) pada Anthropic API, gunakan `MAX_THINKING_TOKENS=0` sebagai gantinya. Tidak satu pun dari kedua variabel tersebut yang menonaktifkan thinking pada Opus 5.5, Sonnet 5.5, Haiku 5.5, atau model Fable, yang thinking-nya tidak dapat dinonaktifkan. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations), `MAX_THINKING_TOKENS=0` juga menghilangkan parameter tersebut, sehingga kedua variabel berperilaku sama di sana |

284| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | Atur ke `1` untuk melewati [auto-compaction](/docs/id/costs#reduce-token-usage) proaktif ketika Claude Code tidak mengenali ID model, seperti alias [LLM gateway](/docs/id/llm-gateway). Tanpa variabel ini, Claude Code melakukan compaction pada context window yang diasumsikannya untuk ID tersebut. `CLAUDE_CODE_MAX_CONTEXT_TOKENS` dapat mengoreksi jendela yang diasumsikan sebagai gantinya; lihat [Mengoreksi jendela untuk ID model gateway atau kustom](/docs/id/model-config#correct-the-window-for-a-gateway-or-custom-model-id) untuk kapan masing-masing variabel berlaku. Memerlukan Claude Code v2.1.223 atau lebih baru |286| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | Atur ke `1` untuk melewati [auto-compaction](/docs/id/costs#reduce-token-usage) proaktif ketika Claude Code tidak mengenali ID model, seperti alias [LLM gateway](/docs/id/llm-gateway). Tanpa variabel ini, Claude Code melakukan compaction pada context window yang diasumsikannya untuk ID tersebut. `CLAUDE_CODE_MAX_CONTEXT_TOKENS` dapat mengoreksi jendela yang diasumsikan sebagai gantinya; lihat [Mengoreksi jendela untuk gateway atau ID model kustom](/docs/id/model-config#correct-the-window-for-a-gateway-or-custom-model-id) untuk kapan setiap variabel berlaku. Memerlukan Claude Code v2.1.223 atau yang lebih baru |

285| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Atur ke `1` untuk menonaktifkan pengguliran virtual dalam [rendering layar penuh](/docs/id/fullscreen) dan merender setiap pesan dalam transkrip. Gunakan ini jika pengguliran dalam mode layar penuh menampilkan area kosong di mana pesan seharusnya muncul |287| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Atur ke `1` untuk menonaktifkan virtual scrolling dalam [rendering layar penuh](/docs/id/fullscreen) dan merender setiap pesan dalam transkrip. Gunakan ini jika scroll dalam mode layar penuh menampilkan area kosong di mana pesan seharusnya muncul |

286| `CLAUDE_CODE_DISABLE_WEB_FETCH` | Atur ke `1` untuk mematikan tool [WebFetch](/docs/id/tools-reference#webfetch-tool-behavior). Tool [WebSearch](/docs/id/tools-reference#websearch-tool-behavior) tetap tersedia. Memerlukan Claude Code v2.1.285 atau lebih baru |288| `CLAUDE_CODE_DISABLE_WEB_FETCH` | Atur ke `1` untuk menonaktifkan tool [WebFetch](/docs/id/tools-reference#webfetch-tool-behavior). Tool [WebSearch](/docs/id/tools-reference#websearch-tool-behavior) tetap tersedia. Memerlukan Claude Code v2.1.285 atau yang lebih baru |

287| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Atur ke `1` untuk memulai perintah [tool PowerShell](/docs/id/tools-reference#powershell-tool) di Windows secara langsung alih-alih melalui launcher `cmd.exe`. Secara default, launcher memungkinkan perintah PowerShell yang [berjalan di latar belakang](/docs/id/tools-reference#background-commands) [dibawa ke proses sesi berikutnya](/docs/id/agent-view#the-supervisor-process), seperti ketika Anda [memindahkan sesi ke latar belakang](/docs/id/agent-view#from-inside-a-session). Jika Anda mengatur variabel ini, perintah PowerShell yang dipindahkan ke latar belakang berhenti ketika proses sesi keluar. Perintah Bash tidak terpengaruh. Memerlukan Claude Code v2.1.269 atau lebih baru |289| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Atur ke `1` untuk memulai perintah [tool PowerShell](/docs/id/tools-reference#powershell-tool) di Windows secara langsung alih-alih melalui launcher `cmd.exe`. Secara default, launcher memungkinkan perintah PowerShell yang [berjalan di latar belakang](/docs/id/tools-reference#background-commands) [dibawa ke proses berikutnya dari sesi](/docs/id/agent-view#the-supervisor-process), seperti ketika Anda [memindahkan sesi ke latar belakang](/docs/id/agent-view#from-inside-a-session). Jika Anda mengatur variabel ini, perintah PowerShell yang dipindahkan ke latar belakang berhenti ketika proses sesi keluar. Perintah Bash tidak terpengaruh. Memerlukan Claude Code v2.1.269 atau yang lebih baru |

288| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Atur ke `1` untuk menonaktifkan [workflow](/docs/id/workflows#turn-workflows-off). Setara dengan pengaturan [`disableWorkflows`](/docs/id/settings-reference#disableworkflows) |290| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Atur ke `1` untuk menonaktifkan [workflow](/docs/id/workflows#turn-workflows-off). Setara dengan pengaturan [`disableWorkflows`](/docs/id/settings-reference#disableworkflows) |

289| `CLAUDE_CODE_EFFORT_LEVEL` | Menetapkan tingkat effort untuk model yang didukung. Nilai: `low`, `medium`, `high`, `xhigh`, `max`, atau `auto` untuk menggunakan default model. Level yang tersedia bergantung pada model. Diutamakan daripada `--effort`, `/effort`, serta pengaturan `modelSettings` dan `effortLevel`. Batas [`maxEffortLevel`](/docs/id/settings-reference#maxeffortlevel) tetap berlaku. Lihat [Menyesuaikan tingkat effort](/docs/id/model-config#adjust-effort-level) |291| `CLAUDE_CODE_EFFORT_LEVEL` | Atur tingkat effort untuk model yang didukung. Nilai: `low`, `medium`, `high`, `xhigh`, `max`, atau `auto` untuk menggunakan default model. Level yang tersedia bergantung pada model. Diutamakan daripada `--effort`, `/effort`, serta pengaturan `modelSettings` dan `effortLevel`. Batas [`maxEffortLevel`](/docs/id/settings-reference#maxeffortlevel) tetap berlaku. Lihat [Menyesuaikan tingkat effort](/docs/id/model-config#adjust-effort-level) |

290| `CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS` | Tetapkan ke `1` untuk menambahkan pesan [`session_state_changed`](/docs/id/agent-sdk/typescript#sdksessionstatechangedmessage), yang membawa status sesi, ke aliran pesan. Memerlukan [Agent SDK](/docs/id/agent-sdk/overview) atau `--print`, `--output-format stream-json`, dan `--verbose` |292| `CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS` | Atur ke `1` untuk menambahkan pesan [`session_state_changed`](/docs/id/agent-sdk/typescript#sdksessionstatechangedmessage), yang membawa status sesi, ke stream pesan. Memerlukan [Agent SDK](/docs/id/agent-sdk/overview) atau `--print`, `--output-format stream-json`, dan `--verbose` |

291| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Diterima untuk kompatibilitas dengan rilis lama dan tidak berpengaruh apa pun. Auto mode tersedia secara default di setiap penyedia, termasuk Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, dan sesi [Claude apps gateway](/docs/id/claude-apps-gateway) yang sudah masuk. Pada v2.1.158 hingga v2.1.206, mengatur ini ke `1` diperlukan agar [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) tersedia di penyedia tersebut |293| `CLAUDE_CODE_ENABLE_AUTO_MODE` | Diterima untuk kompatibilitas dengan rilis lama dan tidak berpengaruh. Auto mode tersedia secara default di setiap penyedia, termasuk Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, dan sesi [Claude apps gateway](/docs/id/claude-apps-gateway) yang sudah masuk. Pada v2.1.158 hingga v2.1.206, mengatur ini ke `1` diperlukan agar [auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) tersedia di penyedia tersebut |

292| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Menimpa ketersediaan [rekap sesi](/docs/id/interactive-mode#session-recap). Atur ke `0` untuk memaksa rekap nonaktif terlepas dari toggle `/config`. Atur ke `1` untuk memaksa rekap aktif ketika [`awaySummaryEnabled`](/docs/id/settings-reference#awaysummaryenabled) bernilai `false`. Diutamakan daripada pengaturan dan toggle `/config` |294| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Menimpa ketersediaan [rekap sesi](/docs/id/interactive-mode#session-recap). Atur ke `0` untuk memaksa rekap mati terlepas dari toggle `/config`. Atur ke `1` untuk memaksa rekap aktif ketika [`awaySummaryEnabled`](/docs/id/settings-reference#awaysummaryenabled) bernilai `false`. Diutamakan daripada pengaturan dan toggle `/config` |

293| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Atur ke `1` untuk menyegarkan status plugin di batas giliran dalam [mode non-interaktif](/docs/id/headless) setelah instalasi latar belakang selesai. Nonaktif secara default karena penyegaran mengubah system prompt di tengah sesi, yang membatalkan [prompt caching](/docs/id/prompt-caching) untuk giliran tersebut |295| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Atur ke `1` untuk menyegarkan status plugin di batas giliran dalam [mode non-interaktif](/docs/id/headless) setelah instalasi di latar belakang selesai. Mati secara default karena penyegaran mengubah system prompt di tengah sesi, yang membatalkan [prompt caching](/docs/id/prompt-caching) untuk giliran tersebut |

294| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Atur ke `1` untuk mengarahkan survei kualitas sesi "How is Claude doing?" ke [kolektor OpenTelemetry](/docs/id/monitoring-usage) milik Anda sendiri ketika lalu lintas nonesensial yang menuju Anthropic diblokir. Penilaian survei hanya dikirim sebagai event OTEL ke kolektor yang Anda konfigurasi. Tidak ada data survei yang dikirim ke Anthropic dalam mode ini. Berlaku ketika `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, `DISABLE_TELEMETRY`, atau `DO_NOT_TRACK` diatur, dan tidak berpengaruh jika sebaliknya. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` dan kebijakan umpan balik produk organisasi diutamakan |296| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Atur ke `1` untuk mengarahkan survei kualitas sesi "How is Claude doing?" ke [kolektor OpenTelemetry](/docs/id/monitoring-usage) Anda sendiri ketika lalu lintas nonesensial yang menuju Anthropic diblokir. Penilaian survei hanya dikirim sebagai event OTEL ke kolektor yang Anda konfigurasikan. Tidak ada data survei yang dikirim ke Anthropic dalam mode ini. Berlaku ketika `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`, `DISABLE_TELEMETRY`, atau `DO_NOT_TRACK` diatur, dan tidak berpengaruh jika tidak. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` dan kebijakan umpan balik produk organisasi diutamakan |

295| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | Mengontrol apakah input panggilan tool di-stream dari API saat Claude menghasilkannya. Jika ini nonaktif, input tool yang besar seperti penulisan file yang panjang baru tiba setelah Claude selesai menghasilkannya, yang dapat terlihat seperti macet. Diaktifkan secara default di Anthropic API. Di Amazon Bedrock dan Google Cloud's Agent Platform, diaktifkan per model jika container yang di-deploy mendukungnya. Atur ke `0` untuk menonaktifkan. Atur ke `1` untuk memaksa aktif saat merutekan melalui proxy via `ANTHROPIC_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL`, atau `ANTHROPIC_BEDROCK_BASE_URL`. Nonaktif secara default di Microsoft Foundry dan koneksi [gateway](/docs/id/llm-gateway) |297| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | Mengontrol apakah input panggilan tool di-stream dari API saat Claude menghasilkannya. Jika ini mati, input tool yang besar seperti penulisan file yang panjang baru tiba setelah Claude selesai menghasilkannya, yang dapat terlihat seperti macet. Aktif secara default di Anthropic API. Di Amazon Bedrock dan Google Cloud's Agent Platform, diaktifkan per model jika container yang di-deploy mendukungnya. Atur ke `0` untuk menonaktifkan. Atur ke `1` untuk memaksa aktif saat merutekan melalui proxy via `ANTHROPIC_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL`, atau `ANTHROPIC_BEDROCK_BASE_URL`. Mati secara default di Microsoft Foundry dan koneksi [gateway](/docs/id/llm-gateway) |

296| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Atur ke `1` untuk mengisi pemilih `/model` dari endpoint `/v1/models` gateway Anda ketika `ANTHROPIC_BASE_URL` menunjuk ke gateway yang kompatibel dengan Anthropic seperti LiteLLM, Kong, atau proxy internal. Nonaktif secara default karena gateway yang didukung kunci API bersama akan menampilkan kepada setiap pengguna semua model yang dapat diakses oleh kunci tersebut. Model yang ditemukan tetap difilter oleh allowlist [`availableModels`](/docs/id/settings-reference#availablemodels) yang diterima sesi; kirimkan daftar tersebut melalui [MDM atau file pengaturan terkelola](/docs/id/managed-settings#delivery-mechanisms), karena [pengiriman yang dikelola server tidak tersedia pada konfigurasi gateway](/docs/id/server-managed-settings#platform-availability) |298| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Atur ke `1` untuk mengisi pemilih `/model` dari endpoint `/v1/models` gateway Anda ketika `ANTHROPIC_BASE_URL` mengarah ke gateway yang kompatibel dengan Anthropic seperti LiteLLM, Kong, atau proxy internal. Mati secara default karena gateway yang didukung kunci API bersama akan menampilkan kepada setiap pengguna setiap model yang dapat diakses kunci tersebut. Model yang ditemukan tetap difilter oleh allowlist [`availableModels`](/docs/id/settings-reference#availablemodels) yang diterima sesi; kirimkan daftar tersebut melalui [MDM atau file pengaturan terkelola](/docs/id/managed-settings#delivery-mechanisms), karena [pengiriman yang dikelola server tidak tersedia pada konfigurasi gateway](/docs/id/server-managed-settings#platform-availability) |

297| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | Dihapus di v2.1.142, ketika default [fast mode](/docs/id/fast-mode) berpindah dari Opus 4.6 ke Opus 4.7 |299| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | Dihapus di v2.1.142, ketika default [fast mode](/docs/id/fast-mode) berpindah dari Opus 4.6 ke Opus 4.7 |

298| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | Atur ke `false` untuk mematikan saran prompt, yaitu prediksi berwarna abu-abu yang muncul di input prompt Anda. Diutamakan daripada pengaturan [`promptSuggestionEnabled`](/docs/id/settings-reference#promptsuggestionenabled), yang merupakan nilai yang ditulis oleh toggle **Prompt suggestions** di `/config`. Claude Code juga [menjeda saran ketika akun Anda mendekati atau telah mencapai batas penggunaannya](/docs/id/interactive-mode#when-claude-code-skips-suggestions). Atur ke `true` untuk tetap mengaktifkannya hingga Anda mencapai batas. Memerlukan Claude Code v2.1.238 atau lebih baru. Lihat [Saran prompt](/docs/id/interactive-mode#prompt-suggestions) |300| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | Atur ke `false` untuk mematikan saran prompt, yaitu prediksi berwarna abu-abu yang muncul di input prompt Anda. Diutamakan daripada pengaturan [`promptSuggestionEnabled`](/docs/id/settings-reference#promptsuggestionenabled), yang ditulis oleh toggle **Prompt suggestions** di `/config`. Claude Code juga [menjeda saran ketika akun Anda mendekati atau mencapai batas penggunaannya](/docs/id/interactive-mode#when-claude-code-skips-suggestions). Atur ke `true` untuk tetap mengaktifkannya hingga Anda mencapai batas. Memerlukan Claude Code v2.1.238 atau lebih baru. Lihat [Saran prompt](/docs/id/interactive-mode#prompt-suggestions) |

299| `CLAUDE_CODE_ENABLE_TASKS` | Memilih tool pelacakan tugas mana yang disediakan Claude Code di [sesi yang memilikinya](/docs/id/tools-reference#task-tool-availability). Secara default, Claude Code menyediakan tool Task `TaskCreate`, `TaskUpdate`, `TaskGet`, dan `TaskList`. Atur ke `0` untuk mendapatkan tool lama `TodoWrite` sebagai gantinya. Lihat [Daftar tugas](/docs/id/interactive-mode#task-list) |301| `CLAUDE_CODE_ENABLE_TASKS` | Memilih tool pelacakan tugas mana yang disediakan Claude Code dalam [sesi yang memilikinya](/docs/id/tools-reference#task-tool-availability). Secara default, Claude Code menyediakan tool Task `TaskCreate`, `TaskUpdate`, `TaskGet`, dan `TaskList`. Atur ke `0` untuk mendapatkan tool lama `TodoWrite` sebagai gantinya. Lihat [Daftar tugas](/docs/id/interactive-mode#task-list) |

300| `CLAUDE_CODE_ENABLE_TELEMETRY` | Atur ke `1` untuk mengaktifkan pengumpulan data OpenTelemetry untuk metrik dan logging. Diperlukan sebelum mengonfigurasi exporter OTel. Atur di shell Anda, pengaturan pengguna, atau pengaturan terkelola. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env). Lihat [Pemantauan](/docs/id/monitoring-usage) |302| `CLAUDE_CODE_ENABLE_TELEMETRY` | Atur ke `1` untuk mengaktifkan pengumpulan data OpenTelemetry untuk metrik dan logging. Diperlukan sebelum mengonfigurasi exporter OTel. Atur di shell Anda, pengaturan pengguna, atau pengaturan terkelola. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env). Lihat [Pemantauan](/docs/id/monitoring-usage) |

301| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | Atur ke `1` untuk mendapatkan tool pelacakan tugas di setiap model. Tanpa ini, Claude Code menyediakannya secara default hanya di model yang tercantum di bawah [Ketersediaan tool Task](/docs/id/tools-reference#task-tool-availability). `CLAUDE_CODE_ENABLE_TASKS` tetap memilih tool Task atau `TodoWrite`. Memerlukan Claude Code v2.1.233 atau lebih baru |303| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | Atur ke `1` untuk mendapatkan tool pelacakan tugas di setiap model. Tanpanya, Claude Code menyediakannya secara default hanya di model yang tercantum di bawah [Ketersediaan tool Task](/docs/id/tools-reference#task-tool-availability). `CLAUDE_CODE_ENABLE_TASKS` tetap memilih tool Task atau `TodoWrite`. Memerlukan Claude Code v2.1.233 atau lebih baru |

302| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Waktu dalam milidetik untuk menunggu setelah loop kueri menjadi idle sebelum keluar secara otomatis. Berguna untuk alur kerja otomatis dan skrip yang menggunakan mode SDK |304| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Waktu dalam milidetik untuk menunggu setelah loop kueri menjadi idle sebelum keluar secara otomatis. Berguna untuk alur kerja otomatis dan skrip yang menggunakan mode SDK |

303| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Atur ke `1` untuk mengaktifkan [tim agent](/docs/id/agent-teams). Tim agent bersifat eksperimental dan dinonaktifkan secara default |305| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Atur ke `1` untuk mengaktifkan [tim agent](/docs/id/agent-teams). Tim agent bersifat eksperimental dan dinonaktifkan secara default |

304| `CLAUDE_CODE_EXTRA_BODY` | Objek JSON yang digabungkan ke tingkat teratas setiap body permintaan API. Berguna untuk meneruskan parameter khusus penyedia yang tidak diekspos langsung oleh Claude Code. Nilai yang diekspor di shell Anda juga berlaku untuk [sesi latar belakang](/docs/id/agent-view) yang Anda jalankan dengan `claude agents` atau `--bg`. Sebelum v2.1.206, sesi latar belakang mengabaikan nilai yang diekspor dari shell dan menggunakan salinan apa pun yang diwarisi oleh proses supervisor latar belakang |306| `CLAUDE_CODE_EXTRA_BODY` | Objek JSON untuk digabungkan ke tingkat teratas setiap body permintaan API. Berguna untuk meneruskan parameter khusus penyedia yang tidak diekspos langsung oleh Claude Code. Nilai yang diekspor di shell Anda juga berlaku untuk [sesi latar belakang](/docs/id/agent-view) yang Anda jalankan dengan `claude agents` atau `--bg`. Sebelum v2.1.206, sesi latar belakang mengabaikan nilai yang diekspor shell dan menggunakan salinan apa pun yang diwarisi oleh proses supervisor latar belakang |

305| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Menimpa batas token default untuk pembacaan file. Berguna ketika Anda perlu membaca file yang lebih besar secara utuh |307| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Menimpa batas token default untuk pembacaan file. Berguna ketika Anda perlu membaca file yang lebih besar secara utuh |

306| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Atur ke `1` untuk memaksa penyimpanan transkrip, riwayat prompt, dan pendaftaran `claude agents` bahkan ketika `claude` ini dijalankan dari dalam sesi Claude Code lain. Gunakan ketika nilai `CLAUDE_CODE_CHILD_SESSION` yang diwarisi, misalnya dari sesi `screen` atau peluncur latar belakang yang pertama kali dimulai oleh tool Bash Claude Code, menyebabkan sesi tingkat atas yang sebenarnya salah diklasifikasikan sebagai bersarang. Sejak v2.1.178, Claude Code mendeteksi kasus tmux secara otomatis dan mengabaikan penanda yang diwarisi, sehingga tmux tidak lagi memerlukan variabel ini. Juga dihormati pada v2.1.169 dan sebelumnya; tidak berpengaruh pada v2.1.170 dan v2.1.171, di mana deteksi sesi bersarang yang ditimpanya telah dihapus |308| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Atur ke `1` untuk memaksa persistensi transkrip, riwayat prompt, dan pendaftaran `claude agents` bahkan ketika `claude` ini diluncurkan dari dalam sesi Claude Code lain. Gunakan ketika nilai `CLAUDE_CODE_CHILD_SESSION` yang diwarisi, misalnya dari sesi `screen` atau peluncur latar belakang yang pertama kali dimulai oleh tool Bash Claude Code, menyebabkan sesi tingkat atas yang sebenarnya salah diklasifikasikan sebagai bersarang. Sejak v2.1.178, Claude Code mendeteksi kasus tmux secara otomatis dan mengabaikan penanda yang diwarisi, sehingga tmux tidak lagi memerlukan variabel ini. Juga dihormati pada v2.1.169 dan sebelumnya; tidak berpengaruh pada v2.1.170 dan v2.1.171, di mana deteksi sesi bersarang yang ditimpanya telah dihapus |

307| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Atur ke `1` untuk memaksa rendering coretan untuk `~~text~~` dalam respons Claude ketika terminal Anda mendukungnya tetapi tidak terdeteksi otomatis, seperti melalui SSH tanpa `TERM_PROGRAM` yang diteruskan. Tanpa ini, terminal yang tidak terdeteksi menampilkan penanda `~~` secara literal alih-alih merender teks sebagai coretan. Memerlukan Claude Code v2.1.186 atau lebih baru |309| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Atur ke `1` untuk memaksa rendering coretan untuk `~~text~~` dalam respons Claude ketika terminal Anda mendukungnya tetapi tidak terdeteksi otomatis, seperti melalui SSH tanpa `TERM_PROGRAM` diteruskan. Tanpa ini, terminal yang tidak terdeteksi menampilkan penanda `~~` secara harfiah alih-alih merender teks sebagai coretan. Memerlukan Claude Code v2.1.186 atau lebih baru |

308| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Atur ke `1` untuk memaksa mengaktifkan [output tersinkronisasi](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) DEC private mode 2026 ketika terminal Anda mendukungnya tetapi tidak terdeteksi otomatis. Berguna untuk emulator seperti Emacs `eat` yang mengimplementasikan BSU/ESU tetapi tidak membalas probe kapabilitas. Tidak berpengaruh di bawah tmux. Berbeda dengan `CLAUDE_CODE_NO_FLICKER`, yang beralih ke [rendering layar penuh](/docs/id/fullscreen), ini tidak mengubah renderer |310| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Atur ke `1` untuk memaksa mengaktifkan DEC private mode 2026 [synchronized output](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) ketika terminal Anda mendukungnya tetapi tidak terdeteksi otomatis. Berguna untuk emulator seperti Emacs `eat` yang mengimplementasikan BSU/ESU tetapi tidak membalas probe kapabilitas. Tidak berpengaruh di bawah tmux. Tidak seperti `CLAUDE_CODE_NO_FLICKER`, yang beralih ke [rendering layar penuh](/docs/id/fullscreen), ini tidak mengubah renderer |

309| `CLAUDE_CODE_FORK_SUBAGENT` | Mengontrol [fork mode](/docs/id/sub-agents#turn-fork-mode-on-or-off), yang memungkinkan Claude sendiri memunculkan [subagent hasil fork](/docs/id/sub-agents#fork-the-current-conversation) dan aktif secara default hanya di sesi interaktif. Atur ke `1` untuk mengaktifkannya juga di `claude -p` dan Agent SDK, atau `0` untuk mematikannya di setiap jenis sesi. Anda dapat menjalankan `/subtask` baik fork mode aktif maupun tidak. Default interaktif memerlukan Claude Code v2.1.232 atau lebih baru; pada versi sebelumnya, atur variabel ke `1` untuk mengaktifkan fork mode |311| `CLAUDE_CODE_FORK_SUBAGENT` | Mengontrol [mode fork](/docs/id/sub-agents#turn-fork-mode-on-or-off), yang memungkinkan Claude memunculkan [subagent fork](/docs/id/sub-agents#fork-the-current-conversation) sendiri dan aktif secara default hanya di sesi interaktif. Atur ke `1` untuk mengaktifkannya juga di `claude -p` dan Agent SDK, atau `0` untuk mematikannya di setiap jenis sesi. Anda dapat menjalankan `/subtask` baik mode fork aktif maupun tidak. Default interaktif memerlukan Claude Code v2.1.232 atau lebih baru; pada versi sebelumnya, atur variabel ke `1` untuk mengaktifkan mode fork |

310| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | Atur ke `1` untuk mengeluarkan teks [subagent](/docs/id/sub-agents) dan thinking block dalam output `claude -p --output-format stream-json`, perilaku yang sama dengan flag [`--forward-subagent-text`](/docs/id/cli-reference#cli-flags). Gunakan variabel ini ketika harness memanggil `claude` dan tidak dapat meneruskan flag itu sendiri. Berbeda dengan flag, yang keluar dengan error di luar mode non-interaktif dengan output stream-json, variabel ini diabaikan di sana sehingga pemanggilan bersarang tetap berfungsi ketika diatur untuk seluruh proses. Memerlukan Claude Code v2.1.211 atau lebih baru |312| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | Atur ke `1` untuk mengeluarkan teks dan thinking block [subagent](/docs/id/sub-agents) dalam output `claude -p --output-format stream-json`, perilaku yang sama dengan flag [`--forward-subagent-text`](/docs/id/cli-reference#cli-flags). Gunakan variabel ini ketika harness memanggil `claude` dan tidak dapat meneruskan flag itu sendiri. Tidak seperti flag, yang keluar dengan error di luar mode non-interaktif dengan output stream-json, variabel ini diabaikan di sana sehingga pemanggilan bersarang tetap berfungsi ketika diatur di seluruh proses. Memerlukan Claude Code v2.1.211 atau lebih baru |

311| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | Atur ke `1` untuk mengirim [header petunjuk gateway](/docs/id/llm-gateway-protocol#gateway-hint-headers), seperti `x-claude-code-request-class` dan `x-claude-code-compaction`, pada proxy kustom atau penyedia pihak ketiga seperti Amazon Bedrock atau Claude Platform on AWS. Atur ke `0` untuk berhenti mengirimkannya di setiap koneksi, termasuk koneksi langsung ke Anthropic API, tempat Claude Code mengirimkannya secara default. Memerlukan Claude Code v2.1.273 atau lebih baru |313| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | Atur ke `1` untuk mengirim [header petunjuk gateway](/docs/id/llm-gateway-protocol#gateway-hint-headers), seperti `x-claude-code-request-class` dan `x-claude-code-compaction`, pada proxy kustom atau penyedia pihak ketiga seperti Amazon Bedrock atau Claude Platform on AWS. Atur ke `0` untuk berhenti mengirimnya di setiap koneksi, termasuk koneksi langsung ke Anthropic API, di mana Claude Code mengirimnya secara default. Memerlukan Claude Code v2.1.273 atau lebih baru |

312| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | Timeout dalam milidetik untuk permintaan [penemuan model gateway](/docs/id/llm-gateway-protocol#model-discovery) yang diaktifkan oleh `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` (default: `3000`). Naikkan ketika gateway Anda memerlukan lebih dari tiga detik untuk menjawab `/v1/models` saat startup. Hanya menerima digit biasa; `0`, nilai negatif, dan penulisan lain mempertahankan default. Memerlukan Claude Code v2.1.269 atau lebih baru |314| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | Timeout dalam milidetik untuk permintaan [penemuan model gateway](/docs/id/llm-gateway-protocol#model-discovery) yang diaktifkan oleh `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` (default: `3000`). Naikkan ketika gateway Anda memerlukan lebih dari tiga detik untuk menjawab `/v1/models` saat startup. Hanya menerima digit biasa; `0`, nilai negatif, dan penulisan lain mempertahankan default. Memerlukan Claude Code v2.1.269 atau lebih baru |

313| `CLAUDE_CODE_GIT_BASH_PATH` | Khusus Windows: path ke executable Git Bash (`bash.exe`). Gunakan ketika Git Bash terinstal tetapi tidak ada di PATH Anda. Jika path tidak ada atau file tidak bernama `bash.exe`, `sh.exe`, `bash`, atau `sh`, Claude Code mengabaikan variabel ini dan mendeteksi Git Bash secara otomatis seolah-olah variabel tidak diatur, sambil mencatat peringatan yang terlihat dengan `--debug`. Sebelum v2.1.219, Claude Code keluar saat startup ketika path tidak ada, dan menggunakan file apa pun yang ada sebagai shell tanpa memeriksa apakah itu bash atau sh. Lihat [Penyiapan Windows](/docs/id/setup#set-up-on-windows) |315| `CLAUDE_CODE_GIT_BASH_PATH` | Khusus Windows: path ke executable Git Bash (`bash.exe`). Gunakan ketika Git Bash terinstal tetapi tidak ada di PATH Anda. Jika path tidak ada atau file tidak bernama `bash.exe`, `sh.exe`, `bash`, atau `sh`, Claude Code mengabaikan variabel dan mendeteksi Git Bash secara otomatis seolah-olah tidak diatur, sambil mencatat peringatan yang terlihat dengan `--debug`. Sebelum v2.1.219, Claude Code keluar saat startup ketika path tidak ada, dan menggunakan file apa pun yang ada sebagai shell tanpa memeriksa apakah itu bash atau sh. Lihat [Penyiapan Windows](/docs/id/setup#set-up-on-windows) |

314| `CLAUDE_CODE_GLOB_HIDDEN` | Atur ke `false` untuk mengecualikan dotfile dari hasil ketika Claude memanggil [tool Glob](/docs/id/tools-reference#glob-tool-behavior). Disertakan secara default. Tidak memengaruhi pelengkapan otomatis file `@`, `ls`, Grep, atau Read |316| `CLAUDE_CODE_GLOB_HIDDEN` | Atur ke `false` untuk mengecualikan dotfile dari hasil ketika Claude memanggil [tool Glob](/docs/id/tools-reference#glob-tool-behavior). Disertakan secara default. Tidak memengaruhi autocomplete file `@`, `ls`, Grep, atau Read |

315| `CLAUDE_CODE_GLOB_NO_IGNORE` | Atur ke `false` agar [tool Glob](/docs/id/tools-reference#glob-tool-behavior) mematuhi pola `.gitignore`. Secara default, Glob mengembalikan semua file yang cocok termasuk yang di-gitignore. Tidak memengaruhi pelengkapan otomatis file `@`, yang memiliki [pengaturan `respectGitignore`](/docs/id/settings-reference#respectgitignore) sendiri |317| `CLAUDE_CODE_GLOB_NO_IGNORE` | Atur ke `false` agar [tool Glob](/docs/id/tools-reference#glob-tool-behavior) menghormati pola `.gitignore`. Secara default, Glob mengembalikan semua file yang cocok termasuk yang di-gitignore. Tidak memengaruhi autocomplete file `@`, yang memiliki [pengaturan `respectGitignore`](/docs/id/settings-reference#respectgitignore) sendiri |

316| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Timeout dalam detik untuk penemuan file tool Glob. Default 20 detik di sebagian besar platform dan 60 detik di WSL |318| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Timeout dalam detik untuk penemuan file tool Glob. Default 20 detik di sebagian besar platform dan 60 detik di WSL |

317| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | Berapa menit pekerjaan latar belakang dapat membuat goal aktif menunggu sebelum Claude Code [meminta Claude untuk memeriksanya](/docs/id/goal#background-work-defers-evaluation). Default `30`. Atur `0` untuk mematikan pemeriksaan. Berikan menit bulat dalam digit biasa, paling banyak `10080`, yaitu satu minggu. Claude Code memperlakukan nilai lain sebagai tidak diatur dan menggunakan default. Memerlukan Claude Code v2.1.234 atau lebih baru |319| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | Berapa menit pekerjaan latar belakang dapat membuat tujuan aktif menunggu sebelum Claude Code [meminta Claude untuk memeriksanya](/docs/id/goal#background-work-defers-evaluation). Default `30`. Atur `0` untuk mematikan pemeriksaan. Berikan menit utuh dalam digit biasa, maksimal `10080`, yaitu satu minggu. Claude Code memperlakukan nilai lain sebagai tidak diatur dan menggunakan default. Memerlukan Claude Code v2.1.234 atau lebih baru |

318| `CLAUDE_CODE_GZIP_REQUEST_BODIES` | Atur ke `0` untuk mematikan kompresi gzip pada body permintaan Claude API, telemetri, dan publikasi [artifact](/docs/id/artifacts) yang dikirim ke `api.anthropic.com`. Secara default, Claude Code mengompresi body permintaan yang besar pada koneksi langsung dan melewati kompresi ketika Anda mengirim permintaan melalui proxy, mengonfigurasi sertifikat klien, atau mengatur `NODE_EXTRA_CA_CERTS`. Gunakan `0` jika [proxy yang menginspeksi TLS](/docs/id/network-config#ca-certificate-store) yang tidak dapat dideteksi Claude Code salah menangani permintaan terkompresi |320| `CLAUDE_CODE_GZIP_REQUEST_BODIES` | Atur ke `0` untuk mematikan kompresi gzip pada body permintaan Claude API, telemetri, dan publikasi [artifact](/docs/id/artifacts) yang dikirim ke `api.anthropic.com`. Secara default, Claude Code mengompresi body permintaan yang besar pada koneksi langsung dan melewatkan kompresi ketika Anda mengirim permintaan melalui proxy, mengonfigurasi sertifikat klien, atau mengatur `NODE_EXTRA_CA_CERTS`. Gunakan `0` jika [proxy yang menginspeksi TLS](/docs/id/network-config#ca-certificate-store) yang tidak dapat dideteksi Claude Code salah menangani permintaan terkompresi |

319| `CLAUDE_CODE_HIDE_CWD` | Atur ke `1` untuk menyembunyikan direktori kerja di logo startup. Berguna untuk berbagi layar atau rekaman di mana path mengungkap nama pengguna OS Anda |321| `CLAUDE_CODE_HIDE_CWD` | Atur ke `1` untuk menyembunyikan direktori kerja di logo startup. Berguna untuk berbagi layar atau rekaman di mana path mengekspos nama pengguna OS Anda |

320| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Menimpa alamat host yang digunakan untuk terhubung ke ekstensi IDE. Secara default Claude Code mendeteksi alamat yang benar secara otomatis, termasuk perutean WSL-ke-Windows |322| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | Menimpa alamat host yang digunakan untuk terhubung ke ekstensi IDE. Secara default Claude Code mendeteksi alamat yang benar secara otomatis, termasuk perutean WSL-ke-Windows |

321| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Atur ke `1` untuk melewati instalasi otomatis ekstensi IDE. Setara dengan mengatur [`autoInstallIdeExtension`](/docs/id/settings-reference#autoinstallideextension) ke `false` |323| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Atur ke `1` untuk melewati instalasi otomatis ekstensi IDE. Setara dengan mengatur [`autoInstallIdeExtension`](/docs/id/settings-reference#autoinstallideextension) ke `false` |

322| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Atur ke `1` untuk melewati validasi entri lockfile IDE selama koneksi. Gunakan ketika koneksi otomatis gagal menemukan IDE Anda meskipun sedang berjalan |324| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Atur ke `1` untuk melewati validasi entri lockfile IDE selama koneksi. Gunakan ketika koneksi otomatis gagal menemukan IDE Anda meskipun sedang berjalan |

323| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Berapa banyak [subagent](/docs/id/sub-agents#concurrent-subagent-limit) yang dapat berjalan dalam satu sesi sebelum tool Agent menolak memunculkan yang lain (default: 20). Menerima bilangan bulat positif dalam digit biasa; nilai lain diabaikan, sehingga variabel ini dapat menyesuaikan batas tetapi tidak dapat menonaktifkannya. Memerlukan Claude Code v2.1.217 atau lebih baru |325| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Berapa banyak [subagent](/docs/id/sub-agents#concurrent-subagent-limit) yang dapat berjalan dalam satu sesi sebelum tool Agent menolak memunculkan yang lain (default: 20). Menerima bilangan bulat positif dalam digit biasa; nilai lain diabaikan, sehingga variabel dapat menyesuaikan batas tetapi tidak dapat menonaktifkannya. Memerlukan Claude Code v2.1.217 atau lebih baru |

324| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Menimpa ukuran context window yang diasumsikan Claude Code untuk model aktif. Sejak v2.1.193, cara penerapannya bergantung pada bagaimana Claude Code me-resolve ID model; lihat [Mengoreksi window untuk gateway atau ID model kustom](/docs/id/model-config#correct-the-window-for-a-gateway-or-custom-model-id). Gunakan ini saat merutekan ke model melalui `ANTHROPIC_BASE_URL` yang context window-nya tidak cocok dengan ukuran bawaan untuk namanya |326| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | Menimpa ukuran context window yang diasumsikan Claude Code untuk model aktif. Sejak v2.1.193, cara penerapannya bergantung pada bagaimana Claude Code me-resolve ID model; lihat [Koreksi window untuk gateway atau ID model kustom](/docs/id/model-config#correct-the-window-for-a-gateway-or-custom-model-id). Gunakan ini saat merutekan ke model melalui `ANTHROPIC_BASE_URL` yang context window-nya tidak cocok dengan ukuran bawaan untuk namanya |

325| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Panjang maksimum dalam karakter dari setiap deskripsi tool MCP dan instruksi setiap server MCP yang dikirim Claude Code ke model (default: 2048). Claude Code [memotong teks yang lebih panjang](/docs/id/mcp#for-mcp-server-authors). Menerima bilangan bulat positif dalam digit biasa. Nilai lain diabaikan dan default yang berlaku. Memerlukan Claude Code v2.1.280 atau lebih baru |327| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Panjang maksimum dalam karakter untuk setiap deskripsi tool MCP dan instruksi setiap server MCP yang dikirim Claude Code ke model (default: 2048). Claude Code [memotong teks yang lebih panjang](/docs/id/mcp#for-mcp-server-authors). Menerima bilangan bulat positif dalam digit biasa. Nilai lain diabaikan dan default berlaku. Memerlukan Claude Code v2.1.280 atau lebih baru |

326| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Mengatur jumlah maksimum token output untuk sebagian besar permintaan. Default dan batas bervariasi menurut model; lihat [max output tokens](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison). Claude Code menurunkan nilai di atas batas model ke batas tersebut. Untuk ID model yang tidak dapat di-resolve Claude Code ke model yang dikenalnya, defaultnya adalah 32000 dan batasnya 128000. Menaikkan nilai ini mengurangi context window efektif yang tersedia sebelum [auto-compaction](/docs/id/costs#reduce-token-usage) terpicu |328| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Mengatur jumlah maksimum token output untuk sebagian besar permintaan. Default dan batas bervariasi menurut model; lihat [max output tokens](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison). Claude Code menurunkan nilai di atas batas model ke batas tersebut. Untuk ID model yang tidak dapat di-resolve Claude Code ke model yang dikenalnya, default-nya 32000 dan batasnya 128000. Menaikkan nilai ini mengurangi context window efektif yang tersedia sebelum [auto-compaction](/docs/id/costs#reduce-token-usage) terpicu |

327| `CLAUDE_CODE_MAX_RETRIES` | Menimpa jumlah retry untuk permintaan API yang gagal (default: 10). Dibatasi 15 sejak v2.1.186; sejak v2.1.199, `CLAUDE_CODE_RETRY_WATCHDOG` menaikkan default dan menghapus batas tersebut. Untuk sesi tanpa pengawasan yang perlu menunggu selama gangguan yang lebih lama, atur `CLAUDE_CODE_RETRY_WATCHDOG` sebagai gantinya |329| `CLAUDE_CODE_MAX_RETRIES` | Menimpa jumlah retry untuk permintaan API yang gagal (default: 10). Dibatasi pada 15 sejak v2.1.186; sejak v2.1.199, `CLAUDE_CODE_RETRY_WATCHDOG` menaikkan default dan menghapus batas. Untuk sesi tanpa pengawasan yang perlu menunggu melewati gangguan yang lebih lama, atur `CLAUDE_CODE_RETRY_WATCHDOG` sebagai gantinya |

328| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | Dihapus di v2.1.224 dan sekarang tidak berfungsi. Sebelumnya membatasi jumlah total [subagent](/docs/id/sub-agents) yang dapat dimunculkan Claude dengan tool Agent dalam satu sesi (default: 200); memunculkan melebihi batas gagal dengan `Subagent spawn limit reached`. [Batas subagent bersamaan](/docs/id/sub-agents#concurrent-subagent-limit) dan [batas kedalaman](/docs/id/sub-agents#let-subagents-spawn-their-own-subagents) tetap berlaku |330| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | Dihapus di v2.1.224 dan sekarang tidak berpengaruh. Sebelumnya membatasi jumlah total [subagent](/docs/id/sub-agents) yang dapat dimunculkan Claude dengan tool Agent dalam satu sesi (default: 200); pemunculan melewati batas gagal dengan `Subagent spawn limit reached`. [Batas subagent bersamaan](/docs/id/sub-agents#concurrent-subagent-limit) dan [batas kedalaman](/docs/id/sub-agents#let-subagents-spawn-their-own-subagents) tetap berlaku |

329| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | Jumlah [lapisan subagent](/docs/id/sub-agents#let-subagents-spawn-their-own-subagents) yang diizinkan di bawah percakapan utama (default: 3). Pada default, subagent dapat memunculkan subagent-nya sendiri, dan subagent di lapisan ketiga tidak dapat memunculkan lebih lanjut; atur `1` untuk mematikan penyarangan. Pada v2.1.217 hingga v2.1.218, defaultnya adalah 1, sehingga subagent tidak dapat memunculkan subagent-nya sendiri kecuali Anda menaikkan batasnya; v2.1.219 menaikkan default menjadi 3. Menerima bilangan bulat positif dalam digit biasa; nilai lain diabaikan, sehingga batas dapat disesuaikan tetapi tidak dapat dihapus. Memerlukan Claude Code v2.1.217 atau lebih baru |331| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | Jumlah [lapisan subagent](/docs/id/sub-agents#let-subagents-spawn-their-own-subagents) yang diizinkan di bawah percakapan utama (default: 3). Pada default, subagent dapat memunculkan subagent mereka sendiri, dan subagent di lapisan ketiga tidak dapat memunculkan lebih lanjut; atur `1` untuk mematikan nesting. Pada v2.1.217 hingga v2.1.218, default-nya adalah 1, sehingga subagent tidak dapat memunculkan subagent sendiri kecuali Anda menaikkan batas; v2.1.219 menaikkan default ke 3. Menerima bilangan bulat positif dalam digit biasa; nilai lain diabaikan, sehingga batas dapat disesuaikan tetapi tidak dihapus. Memerlukan Claude Code v2.1.217 atau lebih baru |

330| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | Jumlah maksimum tool read-only dan subagent yang dapat dieksekusi secara paralel (default: 10). Nilai yang lebih tinggi meningkatkan paralelisme tetapi menggunakan lebih banyak sumber daya |332| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | Jumlah maksimum tool read-only dan subagent yang dapat dieksekusi secara paralel (default: 10). Nilai yang lebih tinggi meningkatkan paralelisme tetapi menggunakan lebih banyak sumber daya |

331| `CLAUDE_CODE_MAX_TURNS` | Membatasi jumlah giliran agentik ketika tidak ada batas eksplisit yang diteruskan. Setara dengan meneruskan [`--max-turns`](/docs/id/cli-reference#cli-flags), yang diutamakan ketika keduanya diatur. Nilai yang bukan bilangan bulat positif ditolak saat startup dengan error alih-alih diperlakukan sebagai tanpa batas |333| `CLAUDE_CODE_MAX_TURNS` | Membatasi jumlah giliran agentic ketika tidak ada batas eksplisit yang diteruskan. Setara dengan meneruskan [`--max-turns`](/docs/id/cli-reference#cli-flags), yang diutamakan ketika keduanya diatur. Nilai yang bukan bilangan bulat positif ditolak saat startup dengan error alih-alih diperlakukan sebagai tanpa batas |

332| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | Batas jumlah total panggilan [WebSearch](/docs/id/tools-reference#websearch-tool-behavior) yang dapat dilakukan satu sesi (default: 200). Ketika Claude mencapai batas, panggilan WebSearch berikutnya mengembalikan pemberitahuan yang memintanya melanjutkan dengan informasi yang telah dikumpulkannya. Menerima bilangan bulat positif tanpa batas atas. Nilai lain diabaikan dan default yang berlaku, sehingga batas dapat dinaikkan tetapi tidak dapat dimatikan. Memerlukan Claude Code v2.1.212 atau lebih baru |334| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | Batas jumlah total panggilan [WebSearch](/docs/id/tools-reference#websearch-tool-behavior) yang dapat dilakukan satu sesi (default: 200). Ketika Claude mencapai batas, panggilan WebSearch berikutnya mengembalikan pemberitahuan yang memintanya melanjutkan dengan informasi yang sudah dikumpulkan. Menerima bilangan bulat positif tanpa batas atas. Nilai lain diabaikan dan default berlaku, sehingga batas dapat dinaikkan tetapi tidak dimatikan. Memerlukan Claude Code v2.1.212 atau lebih baru |

333| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | Atur ke `1` untuk memunculkan server MCP stdio hanya dengan lingkungan dasar yang aman ditambah `env` yang dikonfigurasi untuk server tersebut, alih-alih mewarisi lingkungan shell Anda |335| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | Atur ke `1` untuk memunculkan server MCP stdio hanya dengan environment dasar yang aman ditambah `env` yang dikonfigurasi untuk server, alih-alih mewarisi environment shell Anda |

334| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | Waktu berlalu dalam milidetik sebelum panggilan tool MCP yang masih berjalan [dipindahkan ke tugas latar belakang](/docs/id/mcp#automatic-backgrounding-of-long-tool-calls) (default: 120000, atau 2 menit). Atur ke `0` untuk mematikan pemindahan otomatis ke latar belakang. Memerlukan Claude Code v2.1.212 atau lebih baru |336| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | Waktu yang berlalu dalam milidetik sebelum panggilan tool MCP yang masih berjalan [dipindahkan ke tugas latar belakang](/docs/id/mcp#automatic-backgrounding-of-long-tool-calls) (default: 120000, atau 2 menit). Atur ke `0` untuk mematikan pemindahan otomatis ke latar belakang. Memerlukan Claude Code v2.1.212 atau lebih baru |

335| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | Berapa lama dalam milidetik giliran pertama sesi [non-interaktif](/docs/id/headless) menunggu server MCP yang masih terhubung, sebagai pengganti [penantian giliran pertama](/docs/id/agent-sdk/mcp#connection-timing) default. Ketika diatur, penantian mencakup setiap server yang tertunda. Atur ke `0` untuk melewati penantian. Server [`--permission-prompt-tool`](/docs/id/cli-reference#cli-flags) tetap menggunakan penantian `MCP_TIMEOUT`-nya sendiri terlepas dari nilai ini. Memerlukan Claude Code v2.1.274 atau lebih baru |337| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | Berapa lama dalam milidetik giliran pertama sesi [non-interaktif](/docs/id/headless) menunggu server MCP yang masih terhubung, sebagai pengganti [penantian giliran pertama](/docs/id/agent-sdk/mcp#connection-timing) default. Jika diatur, penantian mencakup setiap server yang tertunda. Atur ke `0` untuk melewati penantian. Server [`--permission-prompt-tool`](/docs/id/cli-reference#cli-flags) mempertahankan penantian `MCP_TIMEOUT`-nya sendiri terlepas dari nilai ini. Memerlukan Claude Code v2.1.274 atau lebih baru |

336| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | Timeout idle dalam milidetik untuk panggilan tool MCP. Ketika server MCP stdio, HTTP, SSE, WebSocket, atau [konektor claude.ai](/docs/id/mcp#use-mcp-servers-from-claude-ai) tidak mengirimkan respons dan tidak ada notifikasi progres selama waktu ini, panggilan tool dibatalkan dengan error alih-alih menunggu `MCP_TOOL_TIMEOUT` keseluruhan. Menimpa default per-transport sebesar 300000 (5 menit) untuk server jaringan dan 1800000 (30 menit) untuk server stdio. Atur ke `0` untuk menonaktifkan pemeriksaan idle. Nilai di bawah 1000 dinaikkan menjadi satu detik, dan nilainya dibatasi pada `MCP_TOOL_TIMEOUT` efektif. `timeout` per server di `.mcp.json` minimal 1000 menaikkan jendela idle server tersebut setidaknya ke nilai `timeout`. Tidak berlaku untuk server IDE atau server in-process SDK. Memerlukan Claude Code v2.1.187 atau lebih baru. Sebelum v2.1.203, server stdio dikecualikan dari timeout idle |338| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | Timeout idle dalam milidetik untuk panggilan tool MCP. Ketika server MCP stdio, HTTP, SSE, WebSocket, atau [konektor claude.ai](/docs/id/mcp#use-mcp-servers-from-claude-ai) tidak mengirim respons dan tidak ada notifikasi progres selama waktu ini, panggilan tool dibatalkan dengan error alih-alih menunggu `MCP_TOOL_TIMEOUT` keseluruhan. Menimpa default per-transport sebesar 300000 (5 menit) untuk server jaringan dan 1800000 (30 menit) untuk server stdio. Atur ke `0` untuk menonaktifkan pemeriksaan idle. Nilai di bawah 1000 dinaikkan menjadi satu detik, dan nilainya dibatasi pada `MCP_TOOL_TIMEOUT` efektif. `timeout` per server di `.mcp.json` yang minimal 1000 menaikkan jendela idle server tersebut setidaknya ke nilai `timeout`. Tidak berlaku untuk server IDE atau server in-process SDK. Memerlukan Claude Code v2.1.187 atau lebih baru. Sebelum v2.1.203, server stdio dikecualikan dari timeout idle |

337| `CLAUDE_CODE_MESSAGING_SOCKET` | Diatur oleh Claude Code, bukan oleh Anda: di sesi yang mengikat [socket inbox](/docs/id/cross-session-messaging#the-sessions-inbox-socket), Claude Code mengekspor path socket tersebut ke hook dan perintah Bash ketika mengikat socket. Di sesi yang dimulai dengan messaging aktif, Claude Code mengikat socket sebelum hook apa pun berjalan. Sesi lain di mesin mengirimkan pesan ke path ini. Setiap sesi mengekspor socket-nya sendiri alih-alih yang diwarisi dari induk, dan pesan yang tiba di socket tersebut melewati [kontrol masuk](/docs/id/cross-session-messaging#control-inbound-messages) sesi. Blok `env` pengaturan tidak dapat mengaturnya. Memerlukan Claude Code v2.1.224 atau lebih baru |339| `CLAUDE_CODE_MESSAGING_SOCKET` | Diatur oleh Claude Code, bukan oleh Anda: dalam sesi yang mengikat [socket inbox](/docs/id/cross-session-messaging#the-sessions-inbox-socket), Claude Code mengekspor path socket tersebut ke hook dan perintah Bash ketika mengikat socket. Dalam sesi yang dimulai dengan messaging aktif, Claude Code mengikat socket sebelum hook apa pun berjalan. Sesi lain di mesin mengirim pesan ke path ini. Setiap sesi mengekspor socket-nya sendiri alih-alih yang diwarisi dari induk, dan pesan yang tiba di sana melewati [kontrol pesan masuk](/docs/id/cross-session-messaging#control-inbound-messages) sesi tersebut. Blok `env` pengaturan tidak dapat mengaturnya. Memerlukan Claude Code v2.1.224 atau lebih baru |

338| `CLAUDE_CODE_MESSAGING_TOKEN` | Diatur oleh Claude Code, bukan oleh Anda: di sesi yang mengikat [socket inbox](/docs/id/cross-session-messaging#the-sessions-inbox-socket), Claude Code mengekspor token per sesi ini ke hook dan perintah Bash bersama `CLAUDE_CODE_MESSAGING_SOCKET`. Skrip yang mengirim ke socket dapat mengirim `{"type":"auth","token":"<token>"}` sebagai baris pertamanya untuk membuktikan bahwa skrip tersebut milik sesi. Di Windows native, Claude Code mewajibkan baris ini dan menutup setiap koneksi yang tidak dibuka dengan baris yang valid. [Aturan own-child](/docs/id/cross-session-messaging#the-sessions-inbox-socket) menjelaskan kapan Claude Code memeriksa token. Setiap sesi mengekspor token-nya sendiri, tidak pernah yang diwarisi dari sesi induk. Blok `env` pengaturan tidak dapat mengaturnya. Memerlukan Claude Code v2.1.228 atau lebih baru |340| `CLAUDE_CODE_MESSAGING_TOKEN` | Diatur oleh Claude Code, bukan oleh Anda: dalam sesi yang mengikat [socket inbox](/docs/id/cross-session-messaging#the-sessions-inbox-socket), Claude Code mengekspor token per sesi ini ke hook dan perintah Bash bersama `CLAUDE_CODE_MESSAGING_SOCKET`. Skrip yang mengirim ke socket dapat mengirim `{"type":"auth","token":"<token>"}` sebagai baris pertamanya untuk membuktikan bahwa skrip tersebut milik sesi. Di Windows native, Claude Code mewajibkan baris ini dan menutup koneksi apa pun yang tidak dibuka dengan baris yang valid. [Aturan own-child](/docs/id/cross-session-messaging#the-sessions-inbox-socket) menjelaskan kapan Claude Code memeriksa token. Setiap sesi mengekspor token-nya sendiri, tidak pernah yang diwarisi dari sesi induk. Blok `env` pengaturan tidak dapat mengaturnya. Memerlukan Claude Code v2.1.228 atau lebih baru |

339| `CLAUDE_CODE_NATIVE_CURSOR` | Atur ke `1` untuk menampilkan kursor terminal sendiri di posisi caret input alih-alih blok yang digambar. Kursor mematuhi pengaturan kedip, bentuk, dan fokus terminal |341| `CLAUDE_CODE_NATIVE_CURSOR` | Atur ke `1` untuk menampilkan kursor bawaan terminal di posisi input alih-alih blok yang digambar. Kursor menghormati pengaturan kedipan, bentuk, dan fokus terminal. Mengatur `0` dibaca sama seperti membiarkan variabel tidak diatur, sehingga tidak mengembalikan blok yang digambar dalam sesi di mana kursor bawaan terminal sudah aktif |

340| `CLAUDE_CODE_NEW_INIT` | Atur ke `1` agar `/init` menjalankan alur penyiapan interaktif. Alur ini menanyakan file mana yang akan dihasilkan, termasuk CLAUDE.md, skill, dan hook, sebelum menjelajahi codebase dan menulisnya. Tanpa variabel ini, `/init` menghasilkan CLAUDE.md secara otomatis tanpa bertanya |342| `CLAUDE_CODE_NEW_INIT` | Atur ke `1` agar `/init` menjalankan alur penyiapan interaktif. Alur ini menanyakan file mana yang akan dibuat, termasuk CLAUDE.md, skill, dan hook, sebelum menjelajahi codebase dan menulisnya. Tanpa variabel ini, `/init` membuat CLAUDE.md secara otomatis tanpa bertanya |

341| `CLAUDE_CODE_NONBLOCKING_STDOUT` | Atur ke `1` untuk menulis output terminal melalui file descriptor non-blocking kedua, sehingga terminal yang berhenti membaca, seperti panel tmux control-mode yang dijeda atau koneksi SSH yang macet, tidak dapat membekukan Claude Code di tengah sesi. Berlaku di macOS, Linux, dan WSL ketika stdout adalah terminal. Memerlukan Claude Code v2.1.261 atau lebih baru |343| `CLAUDE_CODE_NONBLOCKING_STDOUT` | Atur ke `1` untuk menulis output terminal melalui file descriptor non-blocking kedua, sehingga terminal yang berhenti membaca, seperti panel tmux control-mode yang dijeda atau koneksi SSH yang macet, tidak dapat membekukan Claude Code di tengah sesi. Berlaku di macOS, Linux, dan WSL ketika stdout adalah terminal. Memerlukan Claude Code v2.1.261 atau lebih baru |

342| `CLAUDE_CODE_NONSTREAMING_TIMEOUT_RETRIES` | Membatasi berapa kali Claude Code mengirim ulang [permintaan non-streaming](/docs/id/errors#streaming-response-ended-before-any-complete-data-was-received) yang mengalami timeout. Dengan `0`, permintaan gagal pada timeout pertama. Tidak diatur secara default, sehingga `CLAUDE_CODE_MAX_RETRIES` yang membatasi pengiriman ulang ini. Lihat [Menyesuaikan perilaku retry](/docs/id/errors#tune-retry-behavior) untuk timeout-nya. Memerlukan Claude Code v2.1.285 atau lebih baru |344| `CLAUDE_CODE_NONSTREAMING_TIMEOUT_RETRIES` | Membatasi berapa kali Claude Code mengirim ulang [permintaan non-streaming](/docs/id/errors#streaming-response-ended-before-any-complete-data-was-received) yang mengalami timeout. Dengan `0`, permintaan gagal pada timeout pertama. Tidak diatur secara default, sehingga `CLAUDE_CODE_MAX_RETRIES` yang membatasi pengiriman ulang ini. Lihat [Menyesuaikan perilaku retry](/docs/id/errors#tune-retry-behavior) untuk timeout-nya. Memerlukan Claude Code v2.1.285 atau lebih baru |

343| `CLAUDE_CODE_NO_FLICKER` | Atur ke `1` untuk mengaktifkan [rendering layar penuh](/docs/id/fullscreen), research preview yang mengurangi flicker dan menjaga memori tetap stabil dalam percakapan panjang. Menimpa pengaturan [`tui`](/docs/id/settings-reference#tui); Anda juga dapat beralih dengan `/tui fullscreen` |345| `CLAUDE_CODE_NO_FLICKER` | Atur ke `1` untuk mengaktifkan [rendering layar penuh](/docs/id/fullscreen), research preview yang mengurangi kedipan dan menjaga penggunaan memori tetap datar dalam percakapan panjang. Menimpa pengaturan [`tui`](/docs/id/settings-reference#tui); Anda juga dapat beralih dengan `/tui fullscreen` |

344| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Token refresh OAuth untuk autentikasi Claude.ai. Ketika diatur, `claude auth login` menukar token ini secara langsung alih-alih membuka browser. Memerlukan `CLAUDE_CODE_OAUTH_SCOPES`. Berguna untuk menyediakan autentikasi di lingkungan otomatis |346| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Refresh token OAuth untuk autentikasi Claude.ai. Jika diatur, `claude auth login` menukarkan token ini secara langsung alih-alih membuka browser. Memerlukan `CLAUDE_CODE_OAUTH_SCOPES`. Berguna untuk menyediakan autentikasi di environment otomatis |

345| `CLAUDE_CODE_OAUTH_SCOPES` | Scope OAuth yang dipisahkan spasi yang digunakan saat token refresh diterbitkan, seperti `"user:profile user:inference user:sessions:claude_code"`. Wajib ketika `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` diatur |347| `CLAUDE_CODE_OAUTH_SCOPES` | Scope OAuth yang dipisahkan spasi yang digunakan saat refresh token diterbitkan, seperti `"user:profile user:inference user:sessions:claude_code"`. Diperlukan ketika `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` diatur |

346| `CLAUDE_CODE_OAUTH_TOKEN` | Token akses OAuth untuk autentikasi claude.ai. Alternatif untuk `/login` untuk SDK dan lingkungan otomatis. Diutamakan daripada kredensial yang disimpan di keychain. Buat dengan [`claude setup-token`](/docs/id/authentication#generate-a-long-lived-token). Kecuali Anda menjalankan [`/login`](/docs/id/authentication#authentication-precedence), Claude Code menggunakan token yang Anda atur untuk seluruh sesi. Untuk mengganti token yang kedaluwarsa, buat token baru dan mulai ulang |348| `CLAUDE_CODE_OAUTH_TOKEN` | Token akses OAuth untuk autentikasi claude.ai. Alternatif untuk `/login` untuk SDK dan environment otomatis. Diutamakan daripada kredensial yang disimpan di keychain. Buat dengan [`claude setup-token`](/docs/id/authentication#generate-a-long-lived-token). Kecuali Anda menjalankan [`/login`](/docs/id/authentication#authentication-precedence), Claude Code menggunakan token yang Anda atur untuk seluruh sesi. Untuk mengganti token yang kedaluwarsa, buat yang baru dan mulai ulang |

347| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | Dihapus di v2.1.160 dan sekarang tidak berfungsi. Sebelumnya mengunci [fast mode](/docs/id/fast-mode) ke Claude Opus 4.6 alih-alih default saat ini. Opus 4.6 tidak lagi mendukung fast mode |349| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | Dihapus di v2.1.160 dan sekarang tidak berpengaruh. Sebelumnya menyematkan [fast mode](/docs/id/fast-mode) ke Claude Opus 4.6 alih-alih default saat ini. Opus 4.6 tidak lagi mendukung fast mode |

348| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | Panjang maksimum atribut OpenTelemetry yang membawa konten (respons model, konten tool, system prompt, body API mentah), termasuk penanda pemotongan, dalam unit kode UTF-16 (default: 61440, yaitu 60 KB). Naikkan hanya jika backend telemetri Anda menerima nilai atribut lebih besar dari 64 KB, atau turunkan untuk mengurangi volume telemetri. Memerlukan Claude Code v2.1.214 atau lebih baru. Lihat [Pemantauan](/docs/id/monitoring-usage) |350| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | Panjang maksimum atribut OpenTelemetry yang membawa konten (respons model, konten tool, system prompt, body API mentah), termasuk penanda pemotongan, dalam unit kode UTF-16 (default: 61440, yaitu 60 KB). Naikkan hanya jika backend telemetri Anda menerima nilai atribut yang lebih besar dari 64 KB, atau turunkan untuk mengurangi volume telemetri. Memerlukan Claude Code v2.1.214 atau lebih baru. Lihat [Pemantauan](/docs/id/monitoring-usage) |

349| `CLAUDE_CODE_OTEL_DIAG_STDERR` | Atur ke `1` untuk menulis error diagnostik exporter OpenTelemetry ke stderr. Secara default error ini hanya muncul dengan `--debug`, sehingga exporter yang salah konfigurasi seperti bentrokan port Prometheus akan gagal secara diam-diam. Memerlukan Claude Code v2.1.179 atau lebih baru. Lihat [Pemantauan](/docs/id/monitoring-usage) |351| `CLAUDE_CODE_OTEL_DIAG_STDERR` | Atur ke `1` untuk menulis error diagnostik exporter OpenTelemetry ke stderr. Secara default error ini hanya muncul dengan `--debug`, sehingga exporter yang salah dikonfigurasi seperti tabrakan port Prometheus akan gagal tanpa pemberitahuan. Memerlukan Claude Code v2.1.179 atau lebih baru. Lihat [Pemantauan](/docs/id/monitoring-usage) |

350| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Timeout dalam milidetik untuk mengirimkan span OpenTelemetry yang tertunda (default: 5000). Lihat [Pemantauan](/docs/id/monitoring-usage) |352| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Timeout dalam milidetik untuk mem-flush span OpenTelemetry yang tertunda (default: 5000). Lihat [Pemantauan](/docs/id/monitoring-usage) |

351| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Interval untuk menyegarkan header OpenTelemetry dinamis dalam milidetik (default: 1740000 / 29 menit). Lihat [Header dinamis](/docs/id/monitoring-usage#dynamic-headers) |353| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Interval untuk menyegarkan header OpenTelemetry dinamis dalam milidetik (default: 1740000 / 29 menit). Lihat [Header dinamis](/docs/id/monitoring-usage#dynamic-headers) |

352| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | Timeout dalam milidetik bagi exporter OpenTelemetry untuk selesai saat shutdown (default: 2000). Naikkan jika metrik hilang saat keluar. Lihat [Pemantauan](/docs/id/monitoring-usage) |354| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | Timeout dalam milidetik bagi exporter OpenTelemetry untuk selesai saat shutdown (default: 2000). Naikkan jika metrik hilang saat keluar. Lihat [Pemantauan](/docs/id/monitoring-usage) |

353| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | Atur ke `1` agar Claude Code menjalankan perintah upgrade package manager Anda di latar belakang ketika versi baru tersedia. Berlaku untuk instalasi Homebrew dan WinGet. Package manager lain tetap menampilkan perintah upgrade tanpa menjalankannya. Lihat [Pembaruan otomatis](/docs/id/setup#auto-updates) |355| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | Atur ke `1` agar Claude Code menjalankan perintah upgrade package manager Anda di latar belakang ketika versi baru tersedia. Berlaku untuk instalasi Homebrew dan WinGet. Package manager lain tetap menampilkan perintah upgrade tanpa menjalankannya. Lihat [Pembaruan otomatis](/docs/id/setup#auto-updates) |

354| `CLAUDE_CODE_PERFORCE_MODE` | Atur ke `1` untuk mengaktifkan perlindungan penulisan yang sadar Perforce. Ketika diatur, Edit, Write, dan NotebookEdit gagal dengan petunjuk `p4 edit <file>` jika file target tidak memiliki bit owner-write, yang dihapus Perforce pada file yang disinkronkan hingga `p4 edit` membukanya. Ini mencegah Claude Code melewati pelacakan perubahan Perforce |356| `CLAUDE_CODE_PERFORCE_MODE` | Atur ke `1` untuk mengaktifkan proteksi penulisan yang sadar Perforce. Jika diatur, Edit, Write, dan NotebookEdit gagal dengan petunjuk `p4 edit <file>` jika file target tidak memiliki bit owner-write, yang dihapus Perforce pada file yang disinkronkan hingga `p4 edit` membukanya. Ini mencegah Claude Code melewati pelacakan perubahan Perforce |

355| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | Menimpa direktori root plugin. Meskipun namanya demikian, ini mengatur direktori induk, bukan cache itu sendiri: marketplace dan cache plugin berada di subdirektori di bawah path ini. Default ke `~/.claude/plugins` |357| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | Menimpa direktori root plugin. Meskipun namanya demikian, ini mengatur direktori induk, bukan cache itu sendiri: marketplace dan cache plugin berada di subdirektori di bawah path ini. Default ke `~/.claude/plugins` |

356| `CLAUDE_CODE_PLUGIN_DIRS` | Direktori plugin yang akan dimuat untuk sesi, masing-masing dimuat dengan cara yang sama seperti flag [`--plugin-dir`](/docs/id/plugins/cli-reference#flags-that-load-a-plugin-for-one-session) memuatnya. Pisahkan beberapa path dengan `:` di Unix atau `;` di Windows. Berikan setiap path sebagai path absolut atau awali dengan `~`, karena Claude Code melewati path relatif. Memerlukan Claude Code v2.1.280 atau lebih baru. Lihat [Memuat plugin untuk satu sesi](/docs/id/plugins/create#load-a-directory-or-archive-for-one-session) |358| `CLAUDE_CODE_PLUGIN_DIRS` | Direktori plugin yang dimuat untuk sesi, masing-masing dimuat dengan cara yang sama seperti flag [`--plugin-dir`](/docs/id/plugins/cli-reference#flags-that-load-a-plugin-for-one-session) memuatnya. Pisahkan beberapa path dengan `:` di Unix atau `;` di Windows. Berikan setiap path sebagai path absolut atau awali dengan `~`, karena Claude Code melewati path relatif. Memerlukan Claude Code v2.1.280 atau lebih baru. Lihat [Memuat plugin untuk satu sesi](/docs/id/plugins/create#load-a-directory-or-archive-for-one-session) |

357| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | Timeout dalam milidetik untuk meng-clone atau menyegarkan marketplace plugin (default: 120000). Naikkan nilai ini untuk repositori besar atau koneksi jaringan lambat. Lihat [Git clone timed out](/docs/id/plugins/troubleshooting#git-clone-timed-out-after-120s) |359| `CLAUDE_CODE_PLUGIN_DIR_WATCH` | Mengontrol apakah Claude Code memuat ulang [mod](/docs/id/plugins/mods/overview) ketika file mod berubah. Pemuatan ulang berlaku untuk mod yang Anda muat dari direktori dengan `--plugin-dir`, dan aktif secara default di sesi interaktif. Atur ke `1` untuk mengaktifkannya juga di sesi non-interaktif, atau `0` untuk mematikannya di setiap sesi. Memerlukan Claude Code v2.1.287 atau lebih baru. Lihat [pengaturan dan environment variable mod](/docs/id/plugins/mods/reference#settings-and-environment-variables) |

358| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | Atur ke `1` untuk melewati upaya clone ulang dan tetap menggunakan checkout marketplace yang ada ketika penyegaran marketplace tidak dapat menjangkau atau melakukan autentikasi ke remote. Berguna di lingkungan offline atau airgapped di mana clone ulang akan gagal dengan cara yang sama. Lihat [Pembaruan marketplace gagal di lingkungan offline](/docs/id/plugins/troubleshooting#marketplace-updates-keep-failing-offline) |360| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | Timeout dalam milidetik untuk meng-clone atau menyegarkan marketplace plugin (default: 120000). Naikkan nilai ini untuk repositori besar atau koneksi jaringan yang lambat. Lihat [Git clone timed out](/docs/id/plugins/troubleshooting#git-clone-timed-out-after-120s) |

359| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | Atur ke `1` untuk meng-clone sumber singkatan GitHub `owner/repo` melalui HTTPS alih-alih SSH. Berlaku untuk instalasi dan pembaruan plugin, serta untuk `/plugin marketplace add` dan `update`. Berguna di runner CI, container, atau lingkungan apa pun tanpa kunci SSH yang dikonfigurasi untuk `github.com` |361| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | Atur ke `1` untuk melewati upaya clone ulang dan tetap menggunakan checkout marketplace yang ada ketika penyegaran marketplace tidak dapat menjangkau atau mengautentikasi ke remote. Berguna di environment offline atau airgapped di mana clone ulang akan gagal dengan cara yang sama. Lihat [Pembaruan marketplace gagal di environment offline](/docs/id/plugins/troubleshooting#marketplace-updates-keep-failing-offline) |

360| `CLAUDE_CODE_PLUGIN_SEED_DIR` | Path ke satu atau lebih direktori seed plugin read-only, dipisahkan dengan `:` di Unix atau `;` di Windows. Gunakan ini untuk menyertakan direktori plugin yang sudah diisi sebelumnya ke dalam image container. Claude Code mendaftarkan marketplace dari direktori ini saat startup dan menggunakan plugin yang sudah di-cache tanpa clone ulang. Lihat [Mengisi plugin sebelumnya untuk container](/docs/id/plugins/org#seed-containers-and-ci) |362| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | Atur ke `1` untuk meng-clone sumber singkatan GitHub `owner/repo` melalui HTTPS alih-alih SSH. Berlaku untuk instalasi dan pembaruan plugin, serta untuk `/plugin marketplace add` dan `update`. Berguna di runner CI, container, atau environment apa pun tanpa kunci SSH yang dikonfigurasi untuk `github.com` |

361| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Atur ke `1` untuk menghentikan Claude Code meneruskan `-ExecutionPolicy Bypass` saat memunculkan PowerShell untuk panggilan tool, hook, dan perintah baris status, dan sebagai gantinya mematuhi execution policy efektif mesin. Secara default Claude Code melewati execution policy pada cakupan proses sehingga skrip `.ps1` dan impor modul berfungsi pada instalasi Windows dengan default Restricted. Bypass cakupan proses tidak pernah menimpa Group Policy `MachinePolicy` atau `UserPolicy` terlepas dari pengaturan ini |363| `CLAUDE_CODE_PLUGIN_SEED_DIR` | Path ke satu atau lebih direktori seed plugin read-only, dipisahkan dengan `:` di Unix atau `;` di Windows. Gunakan ini untuk membundel direktori plugin yang sudah diisi ke dalam image container. Claude Code mendaftarkan marketplace dari direktori ini saat startup dan menggunakan plugin yang sudah di-cache tanpa clone ulang. Lihat [Mengisi plugin terlebih dahulu untuk container](/docs/id/plugins/org#seed-containers-and-ci) |

362| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | Batas atas dalam milidetik untuk penantian idle terhadap pekerjaan latar belakang, seperti subagent dan workflow, setelah giliran terakhir dalam [mode non-interaktif](/docs/id/headless#background-tasks-at-exit) dengan flag `-p`. Penantian idle dimulai ulang setiap kali Claude mengambil giliran untuk menangani hasil latar belakang. Default: `600000`, atau 10 menit. Ketika penantian idle mencapai batas atas, Claude Code berhenti menunggu tugas latar belakang yang tersisa dan keluar. Atur ke `0` untuk menunggu tanpa batas. Batas ini terpisah dari masa tenggang lima detik yang berlaku untuk shell latar belakang biasa. Memerlukan Claude Code v2.1.182 atau lebih baru |364| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Atur ke `1` untuk menghentikan Claude Code meneruskan `-ExecutionPolicy Bypass` saat memunculkan PowerShell untuk panggilan tool, hook, dan perintah baris status, dan sebaliknya menghormati execution policy efektif mesin. Secara default Claude Code melewati execution policy pada cakupan proses sehingga skrip `.ps1` dan impor modul berfungsi pada instalasi Windows default-Restricted. Bypass cakupan proses tidak pernah menimpa Group Policy `MachinePolicy` atau `UserPolicy` terlepas dari pengaturan ini |

363| `CLAUDE_CODE_PROCESS_WRAPPER` | Meluncurkan proses yang dimulai Claude Code dari binary-nya sendiri, seperti layanan latar belakang yang menampung sesi [agent view](/docs/id/agent-view), melalui peluncur korporat yang diberikan sebagai prefiks argv seperti `/opt/corp/launcher`. Atur di blok `env` pengaturan pengguna atau [pengaturan terkelola](/docs/id/managed-settings), bukan sebagai ekspor shell, sehingga layanan latar belakang yang terlepas mewarisinya; pengaturan proyek dan lokal tidak dapat mengaturnya. Setara dengan [pengaturan `processWrapper`](/docs/id/settings-reference#processwrapper), yang memerlukan Claude Code v2.1.210 atau lebih baru; variabel ini diutamakan ketika keduanya diatur. Ekstensi VS Code mengonfigurasi peluncurnya sendiri secara terpisah melalui pengaturan `claudeProcessWrapper`-nya. Diabaikan di Windows. Lihat [Menjalankan Claude Code di balik peluncur korporat](/docs/id/corporate-launcher) untuk format nilai, apa yang dicakup peluncur, dan kontrak yang harus dipenuhi peluncur. Memerlukan Claude Code v2.1.208 atau lebih baru |365| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | Batas atas dalam milidetik untuk penantian idle bagi pekerjaan latar belakang, seperti subagent dan workflow, setelah giliran terakhir dalam [mode non-interaktif](/docs/id/headless#background-tasks-at-exit) dengan flag `-p`. Penantian idle dimulai ulang setiap kali Claude mengambil giliran untuk menangani hasil latar belakang. Default: `600000`, atau 10 menit. Ketika penantian idle mencapai batas atas, Claude Code berhenti menunggu tugas latar belakang yang tersisa dan keluar. Atur ke `0` untuk menunggu tanpa batas. Batas ini terpisah dari masa tenggang lima detik yang berlaku untuk shell latar belakang biasa. Memerlukan Claude Code v2.1.182 atau lebih baru |

364| `CLAUDE_CODE_PROJECT_DIR_NAME` | Atur bersama dengan `CLAUDE_CONFIG_DIR` untuk memilih nama direktori `projects/` tempat Claude Code menyimpan transkrip dan auto memory sesi tersebut, sebagai pengganti nama yang diturunkan dari path direktori kerja. Misalnya, memulai Claude Code dengan `CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude` menyimpannya di bawah `/srv/tenant-a/projects/work/`. Claude Code mengabaikan variabel ini ketika `CLAUDE_CONFIG_DIR` tidak diatur, dan hanya membacanya dari lingkungan tempat Anda memulai `claude`, tidak pernah dari [blok `env` file pengaturan](#in-settings-files). Lihat [Menamai direktori proyek sendiri](/docs/id/sessions#name-the-project-directory-yourself). Memerlukan Claude Code v2.1.234 atau lebih baru |366| `CLAUDE_CODE_PROCESS_WRAPPER` | Meluncurkan proses yang dimulai Claude Code dari binary-nya sendiri, seperti layanan latar belakang yang meng-host sesi [agent view](/docs/id/agent-view), melalui peluncur korporat yang diberikan sebagai prefiks argv seperti `/opt/corp/launcher`. Atur di blok `env` pengaturan pengguna atau [pengaturan terkelola](/docs/id/managed-settings), bukan sebagai ekspor shell, agar layanan latar belakang yang terlepas mewarisinya; pengaturan proyek dan lokal tidak dapat mengaturnya. Setara dengan [pengaturan `processWrapper`](/docs/id/settings-reference#processwrapper), yang memerlukan Claude Code v2.1.210 atau lebih baru; variabel ini diutamakan ketika keduanya diatur. Ekstensi VS Code mengonfigurasi peluncurnya sendiri secara terpisah melalui pengaturan `claudeProcessWrapper`-nya. Diabaikan di Windows. Lihat [Menjalankan Claude Code di balik peluncur korporat](/docs/id/corporate-launcher) untuk format nilai, apa yang dicakup peluncur, dan kontrak yang harus dipenuhi peluncur. Memerlukan Claude Code v2.1.208 atau lebih baru |

365| `CLAUDE_CODE_PROMPT_CACHE_TTL` | Atur `5m` atau `1h`, satu-satunya nilai yang diterima Claude Code, untuk memilih [TTL cache prompt](/docs/id/prompt-caching#cache-lifetime) untuk percakapan utama: giliran interaktif, `-p`, dan SDK Anda, ditambah helper yang berjalan sejalan dengannya. Diutamakan daripada pengaturan `promptCacheTtl` dan daripada `ENABLE_PROMPT_CACHING_1H`, dan `FORCE_PROMPT_CACHING_5M` menimpanya. API menagih penulisan cache 1 jam dengan tarif lebih tinggi. Memerlukan Claude Code v2.1.242 atau lebih baru |367| `CLAUDE_CODE_PROJECT_DIR_NAME` | Atur bersama dengan `CLAUDE_CONFIG_DIR` untuk memilih nama direktori `projects/` tempat Claude Code menyimpan transkrip dan auto memory sesi tersebut, sebagai pengganti nama yang diturunkan dari path direktori kerja. Misalnya, memulai Claude Code dengan `CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude` menyimpannya di bawah `/srv/tenant-a/projects/work/`. Claude Code mengabaikan variabel ini ketika `CLAUDE_CONFIG_DIR` tidak diatur, dan hanya membacanya dari environment tempat Anda memulai `claude`, tidak pernah dari [blok `env` file pengaturan](#in-settings-files). Lihat [Menamai direktori proyek sendiri](/docs/id/sessions#name-the-project-directory-yourself). Memerlukan Claude Code v2.1.234 atau lebih baru |

366| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | Atur ke `1` untuk menyebarkan W3C trace context ketika `ANTHROPIC_BASE_URL` menunjuk ke proxy kustom. Penyebaran mencakup header `traceparent` pada permintaan model dan MCP HTTP serta environment variable `TRACEPARENT` untuk subproses Bash, PowerShell, dan hook. Secara default, penyebaran diaktifkan hanya ketika terhubung langsung ke Anthropic API. Ditambahkan di v2.1.152. Lihat [Traces (beta)](/docs/id/monitoring-usage#traces-beta) |368| `CLAUDE_CODE_PROMPT_CACHE_TTL` | Atur `5m` atau `1h`, satu-satunya nilai yang diterima Claude Code, untuk memilih [TTL prompt cache](/docs/id/prompt-caching#cache-lifetime) untuk percakapan utama: giliran interaktif, `-p`, dan SDK Anda, ditambah helper yang berjalan inline bersamanya. Diutamakan daripada pengaturan `promptCacheTtl` dan `ENABLE_PROMPT_CACHING_1H`, dan `FORCE_PROMPT_CACHING_5M` menimpanya. API menagih penulisan cache 1 jam dengan tarif lebih tinggi. Memerlukan Claude Code v2.1.242 atau lebih baru |

367| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Diatur oleh platform host yang menyematkan Claude Code dan mengelola perutean penyedia model atas namanya. Ketika diatur, Claude Code mengabaikan variabel pemilihan penyedia, endpoint, dan autentikasi seperti `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL`, dan `ANTHROPIC_API_KEY` di file pengaturan, sehingga pengaturan pengguna tidak dapat menimpa perutean host. Claude Code juga mengabaikan kunci pemilihan model seperti `model`, `fallbackModel`, dan `modelOverrides` di [pengaturan terkelola](/docs/id/managed-settings), dari sumber terkelola mana pun yang mengirimkannya, sehingga konfigurasi model host diutamakan daripada penetapan model terkelola yang sudah usang. Claude Code juga mengabaikan variabel pemilihan model seperti `ANTHROPIC_MODEL` dan keluarga `ANTHROPIC_DEFAULT_*_MODEL` di blok `env` terkelola; allowlist [`availableModels`](/docs/id/model-config#restrict-model-selection) di pengaturan terkelola tetap berlaku kecuali host menyediakan miliknya sendiri. Claude Code juga melewati penonaktifan telemetri otomatis yang biasanya diterapkannya pada penyedia pihak ketiga seperti Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform, dan Microsoft Foundry, sehingga telemetri mengikuti penonaktifan standar `DISABLE_TELEMETRY`. Lihat [Perilaku default menurut penyedia API](/docs/id/data-usage#default-behaviors-by-api-provider) |369| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | Atur ke `1` untuk menyebarkan konteks trace W3C ketika `ANTHROPIC_BASE_URL` mengarah ke proxy kustom. Penyebaran mencakup header `traceparent` pada permintaan model dan MCP HTTP serta environment variable `TRACEPARENT` untuk subprocess Bash, PowerShell, dan hook. Secara default, penyebaran hanya diaktifkan ketika terhubung langsung ke Anthropic API. Ditambahkan di v2.1.152. Lihat [Traces (beta)](/docs/id/monitoring-usage#traces-beta) |

368| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Atur ke `1` untuk mengizinkan proxy melakukan resolusi DNS alih-alih pemanggil. Opsi keikutsertaan untuk lingkungan di mana proxy harus menangani resolusi hostname |370| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Diatur oleh platform host yang menyematkan Claude Code dan mengelola perutean penyedia model atas namanya. Jika diatur, Claude Code mengabaikan variabel pemilihan penyedia, endpoint, dan autentikasi seperti `CLAUDE_CODE_USE_BEDROCK`, `ANTHROPIC_BASE_URL`, dan `ANTHROPIC_API_KEY` di file pengaturan, sehingga pengaturan pengguna tidak dapat menimpa perutean host. Claude Code juga mengabaikan kunci pemilihan model seperti `model`, `fallbackModel`, dan `modelOverrides` di [pengaturan terkelola](/docs/id/managed-settings), dari sumber terkelola mana pun yang mengirimkannya, sehingga konfigurasi model host diutamakan daripada penyematan model terkelola yang sudah usang. Claude Code juga mengabaikan variabel pemilihan model seperti `ANTHROPIC_MODEL` dan keluarga `ANTHROPIC_DEFAULT_*_MODEL` di blok `env` terkelola; allowlist [`availableModels`](/docs/id/model-config#restrict-model-selection) di pengaturan terkelola tetap berlaku kecuali host menyediakan miliknya sendiri. Claude Code juga melewati opt-out telemetri otomatis yang biasanya diterapkannya pada penyedia pihak ketiga seperti Amazon Bedrock, Claude Platform on AWS, Google Cloud's Agent Platform, dan Microsoft Foundry, sehingga telemetri mengikuti opt-out standar `DISABLE_TELEMETRY`. Lihat [Perilaku default berdasarkan penyedia API](/docs/id/data-usage#default-behaviors-by-api-provider) |

371| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Atur ke `1` untuk mengizinkan proxy melakukan resolusi DNS alih-alih pemanggil. Opt-in untuk environment di mana proxy harus menangani resolusi hostname |

369| `CLAUDE_CODE_REMOTE` | Diatur secara otomatis ke `true` ketika Claude Code berjalan sebagai [sesi cloud](/docs/id/claude-code-on-the-web). Baca ini dari hook atau skrip penyiapan untuk mendeteksi apakah Anda berada dalam sesi cloud |372| `CLAUDE_CODE_REMOTE` | Diatur secara otomatis ke `true` ketika Claude Code berjalan sebagai [sesi cloud](/docs/id/claude-code-on-the-web). Baca ini dari hook atau skrip penyiapan untuk mendeteksi apakah Anda berada dalam sesi cloud |

370| `CLAUDE_CODE_REMOTE_SESSION_ID` | Diatur secara otomatis di [sesi cloud](/docs/id/claude-code-on-the-web) ke ID sesi saat ini. Baca ini untuk membuat tautan kembali ke transkrip sesi. Lihat [Menautkan output kembali ke sesi](/docs/id/cloud-environments#link-output-back-to-the-session) |373| `CLAUDE_CODE_REMOTE_SESSION_ID` | Diatur secara otomatis di [sesi cloud](/docs/id/claude-code-on-the-web) ke ID sesi saat ini. Baca ini untuk membuat tautan kembali ke transkrip sesi. Lihat [Menautkan output kembali ke sesi](/docs/id/cloud-environments#link-output-back-to-the-session) |

371| `CLAUDE_CODE_RESTRICTED` | Atur ke `1` untuk memulai sesi dalam mode terbatas, sama seperti meneruskan [`--restricted`](/docs/id/cli-reference#cli-flags). Claude Code mengabaikan variabel ini di blok `env` file pengaturan. Memerlukan Claude Code v2.1.248 atau lebih baru |374| `CLAUDE_CODE_RESTRICTED` | Atur ke `1` untuk memulai sesi dalam mode terbatas, sama seperti meneruskan [`--restricted`](/docs/id/cli-reference#cli-flags). Claude Code mengabaikan variabel ini di blok `env` file pengaturan. Memerlukan Claude Code v2.1.248 atau lebih baru |

372| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | Atur ke `1` untuk melanjutkan secara otomatis jika sesi sebelumnya berakhir di tengah giliran. Digunakan dalam mode SDK sehingga model melanjutkan tanpa mengharuskan SDK mengirim ulang prompt. Untuk mematikannya, hapus pengaturan variabel atau atur ke `0`. Untuk panel chat VS Code, lihat [Melanjutkan percakapan setelah muat ulang](/docs/id/vs-code#continue-conversations-after-a-reload) |375| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | Atur ke `1` untuk melanjutkan secara otomatis jika sesi sebelumnya berakhir di tengah giliran. Digunakan dalam mode SDK agar model melanjutkan tanpa mengharuskan SDK mengirim ulang prompt. Untuk mematikannya, hapus pengaturan variabel atau atur ke `0`. Untuk panel chat VS Code, lihat [Melanjutkan percakapan setelah reload](/docs/id/vs-code#continue-conversations-after-a-reload) |

373| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Usia maksimum dalam milidetik dari pesan transkrip terakhir agar sesi yang berakhir di tengah giliran dapat berlanjut secara otomatis saat dilanjutkan. Ketika pesan terakhir lebih lama dari batas ini, Claude Code melewati pelanjutan otomatis `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` dan pesan kelanjutan `CLAUDE_CODE_RESUME_PROMPT`-nya, dan sesi dimulai dalam keadaan idle sehingga Anda melanjutkan secara eksplisit. Tidak diatur atau `0` berarti tanpa batas, kecuali bahwa giliran yang permintaan terakhirnya gagal dengan error API hanya dilanjutkan selama error tersebut berusia kurang dari enam jam. Nilai positif membatasi setiap giliran, termasuk yang tersebut; nilai negatif atau non-numerik menerapkan batas satu jam. Skrip spawn untuk agent yang berjalan lama dapat mengatur ini agar restart terhadap transkrip lama tidak menjalankan ulang prompt yang usang. Claude Code mengatur batas satu jam sendiri ketika memulai ulang sesi [agent view](/docs/id/agent-view) yang crash yang mewarisi percakapannya dari sesi interaktif. Memerlukan Claude Code v2.1.211 atau lebih baru |376| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Usia maksimum dalam milidetik dari pesan transkrip terakhir agar sesi yang berakhir di tengah giliran dilanjutkan secara otomatis saat resume. Ketika pesan terakhir lebih tua dari batas ini, Claude Code melewati resume otomatis `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` dan pesan lanjutan `CLAUDE_CODE_RESUME_PROMPT`-nya, dan sesi dimulai dalam keadaan idle sehingga Anda melanjutkan secara eksplisit. Tidak diatur atau `0` berarti tanpa batas, kecuali bahwa giliran yang permintaan terakhirnya gagal dengan error API hanya dilanjutkan selama error tersebut berusia kurang dari enam jam. Nilai positif membatasi setiap giliran, termasuk yang tersebut; nilai negatif atau non-numerik menerapkan batas satu jam. Skrip pemunculan untuk agent yang berjalan lama dapat mengatur ini agar restart terhadap transkrip lama tidak menjalankan ulang prompt yang sudah basi. Claude Code sendiri menetapkan batas satu jam ketika memulai ulang sesi [agent view](/docs/id/agent-view) yang crash yang mewarisi percakapannya dari sesi interaktif. Memerlukan Claude Code v2.1.211 atau lebih baru |

374| `CLAUDE_CODE_RESUME_PROMPT` | Menimpa pesan kelanjutan yang dikirim Claude Code ke Claude ketika `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` melanjutkan giliran yang terputus alih-alih mengirim ulang prompt-nya, atau ketika Anda melanjutkan [panggilan tool yang ditunda](/docs/id/hooks#defer-a-tool-call-for-later) dengan `-p`. Default ke `Continue from where you left off.`. String kosong menggunakan default |377| `CLAUDE_CODE_RESUME_PROMPT` | Menimpa pesan lanjutan yang dikirim Claude Code ke Claude ketika `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` melanjutkan giliran yang terputus alih-alih mengirim ulang prompt-nya, atau ketika Anda melanjutkan [panggilan tool yang ditunda](/docs/id/hooks#defer-a-tool-call-for-later) dengan `-p`. Default ke `Continue from where you left off.`. String kosong menggunakan default |

375| `CLAUDE_CODE_RETRY_WATCHDOG` | Atur ke `1` untuk sesi tanpa pengawasan seperti harness eval, job CI, atau worker jarak jauh. Melakukan retry untuk error kapasitas `429` dan `529` tanpa batas alih-alih gagal setelah `CLAUDE_CODE_MAX_RETRIES` percobaan. Claude Code langsung gagal ketika permintaan berkecepatan standar mendapat `429` yang melaporkan batas pengeluaran atau kredit penggunaan yang habis, bahkan yang berasal dari [batas pengeluaran gateway](/docs/id/errors#spend-limit-reached) yang direset sesuai jadwal. Sebelum v2.1.239, watchdog melakukan retry untuk hal ini tanpa batas. Untuk permintaan fast mode, lihat [Menangani rate limit](/docs/id/fast-mode#handle-rate-limits). Watchdog melakukan backoff hingga 5 menit di antara percobaan, atau hingga batas direset ketika respons membawa waktu reset rate limit, sehingga sesi yang mencapai batas penggunaan menunggu hingga sisa jendela habis. Pada v2.1.199 atau lebih baru, ini juga menaikkan jumlah retry default untuk error sementara lainnya, seperti error server, timeout, dan koneksi terputus, menjadi 300, kira-kira tiga jam backoff, dan menghapus batas 15 pada `CLAUDE_CODE_MAX_RETRIES` jika Anda mengatur variabel tersebut secara eksplisit. Memerlukan Claude Code v2.1.186 atau lebih baru |378| `CLAUDE_CODE_RETRY_WATCHDOG` | Atur ke `1` untuk sesi tanpa pengawasan seperti harness eval, job CI, atau worker jarak jauh. Melakukan retry untuk error kapasitas `429` dan `529` tanpa batas alih-alih gagal setelah `CLAUDE_CODE_MAX_RETRIES` percobaan. Claude Code langsung gagal ketika permintaan kecepatan standar mendapatkan `429` yang melaporkan batas pengeluaran atau kredit penggunaan yang habis, bahkan yang berasal dari [batas pengeluaran gateway](/docs/id/errors#spend-limit-reached) yang direset sesuai jadwal. Sebelum v2.1.239, watchdog melakukan retry untuk ini tanpa batas. Untuk permintaan fast mode, lihat [Menangani rate limit](/docs/id/fast-mode#handle-rate-limits). Watchdog melakukan backoff hingga 5 menit di antara percobaan, atau hingga batas direset ketika respons membawa waktu reset rate limit, sehingga sesi yang mencapai batas penggunaan menunggu hingga jendela yang tersisa berakhir. Pada v2.1.199 atau lebih baru, ini juga menaikkan jumlah retry default untuk error sementara lainnya, seperti error server, timeout, dan koneksi yang terputus, menjadi 300, kira-kira tiga jam backoff, dan menghapus batas 15 pada `CLAUDE_CODE_MAX_RETRIES` jika Anda mengatur variabel tersebut secara eksplisit. Memerlukan Claude Code v2.1.186 atau lebih baru |

376| `CLAUDE_CODE_SAFE_MODE` | Atur ke `1` untuk memulai dalam safe mode: CLAUDE.md, skill, plugin, hook, server MCP, perintah dan agent kustom, gaya output, workflow, tema kustom, pintasan keyboard kustom, perintah baris status dan saran file, server LSP, dan auto memory tidak dimuat, untuk memecahkan masalah konfigurasi yang rusak. Kebijakan pengaturan terkelola tetap berlaku, termasuk hook, baris status, dan perintah saran file yang dikonfigurasi kebijakan; plugin terkelola, skill terkelola, CLAUDE.md terkelola, dan server MCP yang dikonfigurasi kebijakan tidak berlaku. Setara dengan meneruskan [`--safe-mode`](/docs/id/cli-reference#cli-flags). Proses anak yang dimunculkan secara langsung mewarisi variabel ini |379| `CLAUDE_CODE_SAFE_MODE` | Atur ke `1` untuk memulai dalam safe mode: CLAUDE.md, skill, plugin, hook, server MCP, perintah kustom dan agent, gaya output, workflow, tema kustom, pintasan keyboard kustom, perintah baris status dan saran file, server LSP, dan auto memory tidak dimuat, untuk pemecahan masalah konfigurasi yang rusak. Kebijakan pengaturan terkelola tetap berlaku, termasuk hook, baris status, dan perintah saran file yang dikonfigurasi kebijakan; plugin terkelola, skill terkelola, CLAUDE.md terkelola, dan server MCP yang dikonfigurasi kebijakan tidak berlaku. Setara dengan meneruskan [`--safe-mode`](/docs/id/cli-reference#cli-flags). Proses turunan yang dimunculkan secara langsung mewarisi variabel ini |

377| `CLAUDE_CODE_SCRIPT_CAPS` | Objek JSON yang membatasi berapa kali skrip tertentu dapat dipanggil per sesi ketika `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` diatur. Kunci adalah substring yang dicocokkan dengan teks perintah; nilai adalah batas panggilan berupa bilangan bulat. Misalnya, `{"deploy.sh": 2}` mengizinkan `deploy.sh` dipanggil paling banyak dua kali. Pencocokan berbasis substring sehingga trik ekspansi shell seperti `./scripts/deploy.sh $(evil)` tetap dihitung terhadap batas. Fan-out saat runtime melalui `xargs` atau `find -exec` tidak terdeteksi; ini adalah kontrol defense-in-depth |380| `CLAUDE_CODE_SCRIPT_CAPS` | Objek JSON yang membatasi berapa kali skrip tertentu dapat dipanggil per sesi ketika `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` diatur. Kunci adalah substring yang dicocokkan dengan teks perintah; nilai adalah batas panggilan berupa bilangan bulat. Misalnya, `{"deploy.sh": 2}` mengizinkan `deploy.sh` dipanggil paling banyak dua kali. Pencocokan berbasis substring sehingga trik ekspansi shell seperti `./scripts/deploy.sh $(evil)` tetap dihitung terhadap batas. Fan-out runtime melalui `xargs` atau `find -exec` tidak terdeteksi; ini adalah kontrol defense-in-depth |

378| `CLAUDE_CODE_SCROLL_SPEED` | Mengatur pengali scroll roda mouse di [rendering layar penuh](/docs/id/fullscreen#mouse-wheel-scrolling). Menerima nilai positif apa pun hingga 20, termasuk nilai pecahan di bawah 1 seperti `0.5` untuk memperlambat scroll trackpad dan roda yang dipercepat di terminal yang sudah memperkuat event roda. Atur ke `3` agar sesuai dengan `vim` jika terminal Anda mengirim satu event roda per takik tanpa penguatan. Diabaikan di terminal IDE JetBrains, tempat Claude Code menggunakan penanganan scroll-nya sendiri |381| `CLAUDE_CODE_SCROLL_SPEED` | Mengatur pengali scroll roda mouse di [rendering layar penuh](/docs/id/fullscreen#mouse-wheel-scrolling). Menerima nilai positif apa pun hingga 20, termasuk nilai pecahan di bawah 1 seperti `0.5` untuk memperlambat scroll trackpad dan roda yang dipercepat di terminal yang sudah memperkuat event roda. Atur ke `3` untuk menyamai `vim` jika terminal Anda mengirim satu event roda per takik tanpa penguatan. Diabaikan di terminal IDE JetBrains, di mana Claude Code menggunakan penanganan scroll-nya sendiri |

379| `CLAUDE_CODE_SEND_FEEDBACK` | Atur ke `0` untuk mematikan [umpan balik yang disusun Claude](/docs/id/tools-reference#sendfeedback-tool-behavior) untuk suatu sesi. Atur ke `1` untuk mengaktifkannya di mana akun Anda sudah memiliki akses; variabel ini tidak dapat memberikan akses dengan sendirinya, dan sakelar lain yang mematikan umpan balik, seperti `DISABLE_FEEDBACK_COMMAND` dan nilai `off` pada pengaturan [`feedbackDrafts`](/docs/id/settings-reference#feedbackdrafts), tetap berlaku |382| `CLAUDE_CODE_SEND_FEEDBACK` | Atur ke `0` untuk mematikan [umpan balik yang dirancang Claude](/docs/id/tools-reference#sendfeedback-tool-behavior) untuk sebuah sesi. Atur ke `1` untuk mengaktifkannya di mana akun Anda sudah memiliki akses; variabel ini tidak dapat memberikan akses dengan sendirinya, dan sakelar lain yang mematikan umpan balik, seperti `DISABLE_FEEDBACK_COMMAND` dan nilai `off` pada pengaturan [`feedbackDrafts`](/docs/id/settings-reference#feedbackdrafts), tetap berlaku |

380| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | Menimpa anggaran waktu dalam milidetik untuk hook [SessionEnd](/docs/id/hooks#sessionend). Nilai ini juga menjadi timeout untuk setiap hook yang tidak mengatur `timeout`-nya sendiri. Berlaku untuk keluar sesi, `/clear`, dan beralih sesi melalui `/resume` interaktif. Secara default anggarannya 1,5 detik, dinaikkan secara otomatis ke `timeout` per hook tertinggi yang dikonfigurasi di file pengaturan, hingga 60 detik. Timeout pada hook yang disediakan plugin tidak menaikkan anggaran |383| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | Menimpa anggaran waktu dalam milidetik untuk hook [SessionEnd](/docs/id/hooks#sessionend). Nilai ini juga merupakan timeout untuk setiap hook yang tidak mengatur `timeout` sendiri. Berlaku untuk keluar sesi, `/clear`, dan berpindah sesi melalui `/resume` interaktif. Secara default anggarannya 1,5 detik, dinaikkan secara otomatis ke `timeout` per hook tertinggi yang dikonfigurasi di file pengaturan, hingga 60 detik. Timeout pada hook yang disediakan plugin tidak menaikkan anggaran |

381| `CLAUDE_CODE_SESSION_ID` | Diatur secara otomatis ke ID sesi saat ini di subproses tool Bash dan PowerShell, subproses [perintah hook](/docs/id/hooks), dan subproses [server MCP](/docs/id/mcp) stdio. Untuk Bash, PowerShell, dan hook, nilai ini cocok dengan field `session_id` di input JSON hook dan diperbarui saat `/clear`. Subproses server MCP mempertahankan ID yang digunakan saat dimunculkan. Pada `--resume <session-id>` subproses menerima ID yang dilanjutkan, sama seperti hook dan Bash. Pada `--continue` atau `--resume` tanpa ID eksplisit, subproses mungkin menerima ID startup awal sebagai gantinya. Gunakan untuk mengorelasikan skrip dan alat eksternal dengan sesi Claude Code yang meluncurkannya |384| `CLAUDE_CODE_SESSION_ID` | Diatur secara otomatis ke ID sesi saat ini di subprocess tool Bash dan PowerShell, subprocess [perintah hook](/docs/id/hooks), dan subprocess [server MCP](/docs/id/mcp) stdio. Untuk Bash, PowerShell, dan hook, ini cocok dengan field `session_id` di input JSON hook dan diperbarui saat `/clear`. Subprocess server MCP mempertahankan ID yang digunakan saat dimunculkan. Pada `--resume <session-id>` ia menerima ID yang dilanjutkan, sesuai dengan hook dan Bash. Pada `--continue` atau `--resume` tanpa ID eksplisit ia mungkin menerima ID startup awal sebagai gantinya. Gunakan untuk mengorelasikan skrip dan tool eksternal dengan sesi Claude Code yang meluncurkannya |

382| `CLAUDE_CODE_SHELL` | Mengatur shell yang digunakan Claude Code untuk menjalankan perintah tool Bash. Menerima path ke binary `bash` atau `zsh`, misalnya `/opt/homebrew/bin/bash`. Shell lain seperti `fish` tidak didukung. Jika nilainya bukan path `bash` atau `zsh` yang berfungsi, Claude Code mengabaikannya dan menggunakan fallback ke deteksi otomatis. Deteksi otomatis menggunakan `$SHELL` Anda ketika menunjuk ke `bash` atau `zsh`, jika tidak, ia memilih `zsh` lalu `bash` pertama yang berfungsi yang ditemukan di `PATH` Anda dan lokasi instalasi standar |385| `CLAUDE_CODE_SHELL` | Mengatur shell yang digunakan Claude Code untuk menjalankan perintah tool Bash. Menerima path ke binary `bash` atau `zsh`, misalnya `/opt/homebrew/bin/bash`. Shell lain seperti `fish` tidak didukung. Jika nilainya bukan path `bash` atau `zsh` yang berfungsi, Claude Code mengabaikannya dan melakukan fallback ke deteksi otomatis. Deteksi otomatis menggunakan `$SHELL` Anda ketika mengarah ke `bash` atau `zsh`, jika tidak maka memilih `zsh` lalu `bash` pertama yang berfungsi yang ditemukan di `PATH` Anda dan lokasi instalasi standar |

383| `CLAUDE_CODE_SHELL_PREFIX` | Prefiks perintah yang membungkus perintah shell yang dimunculkan Claude Code: panggilan tool Bash, perintah [hook](/docs/id/hooks), perintah [baris status](/docs/id/statusline), dan perintah startup [server MCP](/docs/id/mcp) stdio. Hook PowerShell dan hook bentuk exec berjalan tanpa prefiks. Berguna untuk logging atau audit. Mengatur path executable biasa seperti `/path/to/logger.sh` menjalankan setiap perintah sebagai `/path/to/logger.sh '<command>'`. Wrapper menerima baris perintah sebagai satu argumen yang dikutip shell di `$1`, sehingga wrapper harus mengevaluasi ulang `$1` dengan shell, misalnya `exec bash -c "$1"`. Memperlakukan `$1` sebagai path executable biasa merusak server MCP stdio yang meneruskan argumen seperti `npx -y <package>`. Untuk panggilan tool Bash, `$1` berisi pemanggilan shell lengkap yang disusun Claude Code, termasuk penyiapan lingkungan, bukan hanya perintah yang dijalankan Claude |386| `CLAUDE_CODE_SHELL_PREFIX` | Prefiks perintah yang membungkus perintah shell yang dimunculkan Claude Code: panggilan tool Bash, perintah [hook](/docs/id/hooks), perintah [baris status](/docs/id/statusline), dan perintah startup [server MCP](/docs/id/mcp) stdio. Hook PowerShell dan hook bentuk exec berjalan tanpa prefiks. Berguna untuk logging atau audit. Mengatur path executable saja seperti `/path/to/logger.sh` menjalankan setiap perintah sebagai `/path/to/logger.sh '<command>'`. Wrapper menerima baris perintah sebagai satu argumen yang di-quote shell di `$1`, sehingga wrapper harus mengevaluasi ulang `$1` dengan shell, misalnya `exec bash -c "$1"`. Memperlakukan `$1` sebagai path executable saja akan merusak server MCP stdio yang meneruskan argumen seperti `npx -y <package>`. Untuk panggilan tool Bash, `$1` berisi pemanggilan shell lengkap yang disusun Claude Code, termasuk penyiapan environment, bukan hanya perintah yang dijalankan Claude |

384| `CLAUDE_CODE_SIMPLE` | Atur ke `1` untuk berjalan dengan system prompt minimal dan hanya tool Bash, baca file, dan edit file. Tool MCP dari `--mcp-config` tetap tersedia. Menonaktifkan penemuan otomatis hook, skill, perintah kustom, subagent, plugin yang terinstal, server MCP, auto memory, dan CLAUDE.md. Skill di direktori yang Anda teruskan dengan `--add-dir` tetap dimuat. Token OAuth dan kredensial keychain tidak dibaca, sehingga autentikasi Anthropic harus berasal dari `ANTHROPIC_API_KEY` atau `apiKeyHelper` di `--settings`. Setara dengan meneruskan [`--bare`](/docs/id/headless#start-faster-with-bare-mode) |387| `CLAUDE_CODE_SIMPLE` | Atur ke `1` untuk berjalan dengan system prompt minimal dan hanya tool Bash, baca file, dan edit file. Tool MCP dari `--mcp-config` tetap tersedia. Menonaktifkan penemuan otomatis hook, skill, perintah kustom, subagent, plugin terinstal, server MCP, auto memory, dan CLAUDE.md. Skill di direktori yang Anda teruskan dengan `--add-dir` tetap dimuat. Token OAuth dan kredensial keychain tidak dibaca, sehingga autentikasi Anthropic harus berasal dari `ANTHROPIC_API_KEY` atau `apiKeyHelper` di `--settings`. Setara dengan meneruskan [`--bare`](/docs/id/headless#start-faster-with-bare-mode) |

385| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Atur ke `1` untuk menggunakan system prompt yang lebih pendek dan deskripsi tool yang disingkat di model apa pun. Atur ke `0`, `false`, `no`, atau `off` untuk menonaktifkan bahkan di model tempat eksperimen atau konfigurasi server akan mengaktifkannya. Set tool lengkap, hook, server MCP, dan penemuan CLAUDE.md tetap diaktifkan |388| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Atur ke `1` untuk menggunakan system prompt yang lebih pendek dan deskripsi tool yang disingkat di model apa pun. Atur ke `0`, `false`, `no`, atau `off` untuk menonaktifkan bahkan di model di mana eksperimen atau konfigurasi server akan mengaktifkannya. Set tool lengkap, hook, server MCP, dan penemuan CLAUDE.md tetap aktif |

386| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Melewati autentikasi sisi klien untuk [Claude Platform on AWS](/docs/id/claude-platform-on-aws), untuk gateway yang menandatangani permintaan sendiri |389| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Melewati autentikasi sisi klien untuk [Claude Platform on AWS](/docs/id/claude-platform-on-aws), untuk gateway yang menandatangani permintaan sendiri |

387| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | Atur ke `1` untuk mematikan cache in-process untuk kredensial yang di-resolve dari AWS default credential provider chain, sehingga Claude Code me-resolve chain tersebut pada setiap permintaan API. Dengan cache nonaktif, profil yang didukung SSO meminta kredensial dari IAM Identity Center pada setiap permintaan. Lihat [caching kredensial dan timeout resolusi](/docs/id/amazon-bedrock#credential-caching-and-resolution-timeout). Memerlukan Claude Code v2.1.207 atau lebih baru |390| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | Atur ke `1` untuk mematikan cache in-process untuk kredensial yang di-resolve dari rantai penyedia kredensial default AWS, sehingga Claude Code me-resolve rantai tersebut pada setiap permintaan API. Dengan cache mati, profil yang didukung SSO meminta kredensial dari IAM Identity Center pada setiap permintaan. Lihat [caching kredensial dan timeout resolusi](/docs/id/amazon-bedrock#credential-caching-and-resolution-timeout). Memerlukan Claude Code v2.1.207 atau lebih baru |

388| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Melewati autentikasi AWS untuk Amazon Bedrock (misalnya, saat menggunakan LLM gateway) |391| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Melewati autentikasi AWS untuk Amazon Bedrock (misalnya, saat menggunakan LLM gateway) |

389| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | Atur ke `1` untuk memperlakukan pemeriksaan ketersediaan [fast mode](/docs/id/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) yang gagal sebagai tersedia, untuk jaringan yang memblokir permintaan langsung pemeriksaan tersebut ke `api.anthropic.com`. Claude Code tetap menghormati respons "disabled by your organization" |392| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | Atur ke `1` untuk memperlakukan pemeriksaan ketersediaan [fast mode](/docs/id/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) yang gagal sebagai tersedia, untuk jaringan yang memblokir permintaan langsung pemeriksaan ke `api.anthropic.com`. Claude Code tetap menghormati respons "disabled by your organization" |

390| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Atur ke `1` untuk melewati pemeriksaan ketersediaan [fast mode](/docs/id/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) sisi klien, untuk proxy yang mencegat permintaan pemeriksaan alih-alih menolaknya. API tetap menolak permintaan fast mode ketika organisasi Anda menonaktifkan fast mode |393| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Atur ke `1` untuk melewati pemeriksaan ketersediaan [fast mode](/docs/id/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways) sisi klien, untuk proxy yang mencegat permintaan pemeriksaan alih-alih menolaknya. API tetap menolak permintaan fast mode ketika organisasi Anda menonaktifkan fast mode |

391| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Melewati autentikasi Azure untuk Microsoft Foundry, untuk proxy atau gateway yang menyisipkan header `Authorization`-nya sendiri. Claude Code mengirim permintaan tanpa kredensial Azure dan mempertahankan header `Authorization` yang Anda berikan, misalnya melalui `ANTHROPIC_CUSTOM_HEADERS`. Diabaikan ketika `ANTHROPIC_FOUNDRY_API_KEY` atau `ANTHROPIC_FOUNDRY_AUTH_TOKEN` diatur. Sebelum v2.1.203, variabel ini membuat klien Microsoft Foundry tidak dapat mengirim permintaan kecuali kunci API juga diatur |394| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | Melewati autentikasi Azure untuk Microsoft Foundry, untuk proxy atau gateway yang menyisipkan header `Authorization`-nya sendiri. Claude Code mengirim permintaan tanpa kredensial Azure dan mempertahankan header `Authorization` yang Anda berikan, misalnya melalui `ANTHROPIC_CUSTOM_HEADERS`. Diabaikan ketika `ANTHROPIC_FOUNDRY_API_KEY` atau `ANTHROPIC_FOUNDRY_AUTH_TOKEN` diatur. Sebelum v2.1.203, variabel ini membuat klien Microsoft Foundry tidak dapat mengirim permintaan kecuali kunci API juga diatur |

392| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Melewati autentikasi AWS untuk Amazon Bedrock Mantle (misalnya, saat menggunakan LLM gateway) |395| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | Melewati autentikasi AWS untuk Amazon Bedrock Mantle (misalnya, saat menggunakan LLM gateway) |

393| `CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY` | [Pemeriksaan model saat startup](/docs/id/amazon-bedrock#startup-model-checks) di [Amazon Bedrock](/docs/id/amazon-bedrock) dan [Google Cloud's Agent Platform](/docs/id/google-vertex-ai) mengingat di mesin ini model mana yang ditemukan tidak dapat dipanggil oleh akun Anda, hingga satu hari. Atur ke `1` untuk mematikan ingatan tersebut. Memerlukan Claude Code v2.1.285 atau lebih baru |396| `CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY` | [Pemeriksaan model saat startup](/docs/id/amazon-bedrock#startup-model-checks) di [Amazon Bedrock](/docs/id/amazon-bedrock) dan [Google Cloud's Agent Platform](/docs/id/google-vertex-ai) mengingat di mesin ini model mana yang ditemukan tidak dapat dipanggil oleh akun Anda, hingga satu hari. Atur ke `1` untuk mematikan ingatan tersebut. Memerlukan Claude Code v2.1.285 atau lebih baru |

394| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | Atur ke `1` untuk melewati penulisan riwayat prompt dan transkrip sesi ke disk. Sesi yang dimulai dengan variabel ini diatur tidak muncul di `--resume`, `--continue`, atau riwayat panah atas. Berguna untuk sesi skrip sementara |397| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | Atur ke `1` untuk melewati penulisan riwayat prompt dan transkrip sesi ke disk. Sesi yang dimulai dengan variabel ini diatur tidak muncul di `--resume`, `--continue`, atau riwayat panah atas. Berguna untuk sesi skrip yang bersifat sementara |

395| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Melewati autentikasi Google untuk Google Cloud's Agent Platform (misalnya, saat menggunakan LLM gateway) |398| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Melewati autentikasi Google untuk Google Cloud's Agent Platform (misalnya, saat menggunakan LLM gateway) |

396| `CLAUDE_CODE_STARTUP_FAILURE_RESULTS` | Atur ke `1` agar sesi yang dimulai dengan `--output-format stream-json` menulis [pesan hasil yang menyebutkan alasan Claude Code menolak untuk dimulai](/docs/id/agent-sdk/typescript#startup_failure_reason) untuk kegagalan startup yang jika tidak hanya berakhir dengan stderr. Memerlukan Claude Code v2.1.274 atau lebih baru |399| `CLAUDE_CODE_STARTUP_FAILURE_RESULTS` | Atur ke `1` agar sesi yang dimulai dengan `--output-format stream-json` menulis [pesan hasil yang menyebutkan alasan Claude Code menolak untuk dimulai](/docs/id/agent-sdk/typescript#startup_failure_reason) untuk kegagalan startup yang jika tidak hanya berakhir dengan stderr. Memerlukan Claude Code v2.1.274 atau lebih baru |

397| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | Jumlah maksimum berturut-turut hook [Stop](/docs/id/hooks#stop) atau [SubagentStop](/docs/id/hooks#subagentstop) dapat memblokir giliran agar tidak berakhir sebelum Claude Code menimpanya dan tetap mengakhiri giliran (default: 8). Atur ke `0` untuk menonaktifkan batas. Naikkan ini jika hook Anda memang memerlukan lebih banyak iterasi untuk menyelesaikan |400| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | Jumlah maksimum berturut-turut hook [Stop](/docs/id/hooks#stop) atau [SubagentStop](/docs/id/hooks#subagentstop) dapat memblokir giliran agar tidak berakhir sebelum Claude Code menimpanya dan tetap mengakhiri giliran (default: 8). Atur ke `0` untuk menonaktifkan batas. Naikkan ini jika hook Anda memang memerlukan lebih banyak iterasi untuk diselesaikan |

398| `CLAUDE_CODE_SUBAGENT_MODEL` | Model default untuk [subagent](/docs/id/sub-agents#choose-a-model), rekan tim [tim agent](/docs/id/agent-teams#specify-teammates-and-models), dan agent [workflow](/docs/id/workflows) yang tidak diberi model dengan cara lain. Menerima alias seperti `haiku` atau nama model lengkap. Dua sumber diutamakan daripadanya: model yang diteruskan Claude saat memunculkan agent, dan field `model` di definisi agent, termasuk `inherit`. Untuk mengubahnya, atur [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/id/sub-agents#run-every-subagent-on-one-model). Lihat [Memilih model](/docs/id/sub-agents#choose-a-model) untuk urutan lengkapnya. Mengaturnya ke `inherit` sama dengan membiarkannya tidak diatur. Sebelum v2.1.251, variabel ini menimpa model per pemanggilan maupun field `model` definisi |401| `CLAUDE_CODE_SUBAGENT_MODEL` | Model default untuk [subagent](/docs/id/sub-agents#choose-a-model), rekan [tim agent](/docs/id/agent-teams#specify-teammates-and-models), dan agent [workflow](/docs/id/workflows) yang tidak diberi model dengan cara lain. Menerima alias seperti `haiku` atau nama model lengkap. Dua sumber diutamakan daripadanya: model yang diteruskan Claude saat memunculkan agent, dan field `model` dalam definisi agent, termasuk `inherit`. Untuk mengubahnya, atur [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/id/sub-agents#run-every-subagent-on-one-model). Lihat [Memilih model](/docs/id/sub-agents#choose-a-model) untuk urutan lengkapnya. Mengaturnya ke `inherit` sama dengan membiarkannya tidak diatur. Sebelum v2.1.251, variabel ini menimpa baik model per pemanggilan maupun field `model` definisi |

399| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | Atur ke `1` untuk memaksakan satu model pada subagent, rekan tim, dan agent workflow. [Menjalankan setiap subagent pada satu model](/docs/id/sub-agents#run-every-subagent-on-one-model) menjelaskan model mana itu. Memerlukan Claude Code v2.1.257 atau lebih baru |402| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | Atur ke `1` untuk memaksakan satu model pada subagent, rekan tim, dan agent workflow. [Menjalankan setiap subagent pada satu model](/docs/id/sub-agents#run-every-subagent-on-one-model) menjelaskan model mana itu. Memerlukan Claude Code v2.1.257 atau lebih baru |

400| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | Atur `5m` atau `1h`, satu-satunya nilai yang diterima Claude Code, untuk memilih [TTL cache prompt](/docs/id/prompt-caching#cache-lifetime) untuk permintaan di luar percakapan utama, seperti [subagent](/docs/id/sub-agents), workflow, dan pekerjaan latar belakang. Diutamakan daripada pengaturan `subagentPromptCacheTtl` dan daripada `ENABLE_PROMPT_CACHING_1H`, dan `FORCE_PROMPT_CACHING_5M` menimpanya. API menagih penulisan cache 1 jam dengan tarif lebih tinggi. Memerlukan Claude Code v2.1.242 atau lebih baru |403| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | Atur `5m` atau `1h`, satu-satunya nilai yang diterima Claude Code, untuk memilih [TTL prompt cache](/docs/id/prompt-caching#cache-lifetime) untuk permintaan di luar percakapan utama, seperti [subagent](/docs/id/sub-agents), workflow, dan pekerjaan latar belakang. Diutamakan daripada pengaturan `subagentPromptCacheTtl` dan `ENABLE_PROMPT_CACHING_1H`, dan `FORCE_PROMPT_CACHING_5M` menimpanya. API menagih penulisan cache 1 jam dengan tarif lebih tinggi. Memerlukan Claude Code v2.1.242 atau lebih baru |

401| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Atur ke `1` untuk menghapus kredensial dari lingkungan subproses yang dimulai Claude Code, seperti perintah Bash, hook, dan server MCP stdio. Pembersihan mengenali kredensial berdasarkan nama variabel atau nilainya, dan membiarkan token GitHub serta pengaturan proxy tetap ada. Lihat [Apa yang dihapus oleh pembersihan lingkungan subproses](#what-the-subprocess-environment-scrub-removes). `claude-code-action` mengatur ini secara otomatis ketika `allowed_non_write_users` dikonfigurasi |404| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Atur ke `1` untuk menghapus kredensial dari environment subprocess yang dimulai Claude Code, seperti perintah Bash, hook, dan server MCP stdio. Pembersihan mengenali kredensial berdasarkan nama variabel atau nilainya, dan membiarkan token GitHub serta pengaturan proxy tetap ada. Lihat [Apa yang dihapus oleh pembersihan environment subprocess](#what-the-subprocess-environment-scrub-removes). `claude-code-action` mengatur ini secara otomatis ketika `allowed_non_write_users` dikonfigurasi |

402| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | Atur ke `1` dalam mode non-interaktif (flag `-p`) untuk menunggu instalasi plugin selesai sebelum kueri pertama. Tanpa ini, plugin diinstal di latar belakang dan mungkin tidak tersedia pada giliran pertama. Kombinasikan dengan `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` untuk membatasi penantian |405| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | Atur ke `1` dalam mode non-interaktif (flag `-p`) untuk menunggu instalasi plugin selesai sebelum kueri pertama. Tanpa ini, plugin diinstal di latar belakang dan mungkin tidak tersedia pada giliran pertama. Gabungkan dengan `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` untuk membatasi penantian |

403| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | Timeout dalam milidetik untuk instalasi plugin sinkron. Ketika terlampaui, Claude Code melanjutkan tanpa plugin dan mencatat error ke log. Tanpa default: tanpa variabel ini, instalasi sinkron menunggu hingga selesai |406| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | Timeout dalam milidetik untuk instalasi plugin sinkron. Ketika terlampaui, Claude Code melanjutkan tanpa plugin dan mencatat error ke log. Tidak ada default: tanpa variabel ini, instalasi sinkron menunggu hingga selesai |

404| `CLAUDE_CODE_SYNC_SKILLS` | Atur ke `1` dalam mode non-interaktif dengan flag `-p` agar Claude Code mengunduh skill yang diaktifkan untuk akun claude.ai Anda dalam run tersebut dan menunggu daftarnya, hingga `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS`, sebelum menjalankan kueri pertama. Unduhan itu sendiri selesai di latar belakang, dan Claude menunggu unduhan skill ketika memanggil skill tersebut. Memerlukan autentikasi claude.ai. Sesi terminal tempat Anda masuk dengan akun claude.ai Anda [mengunduh skill ini](/docs/id/skills#where-synced-skills-load) ke `~/.claude/skills/synced/` dan menyinkronkan ulang sekitar setiap 10 menit tanpa variabel ini, jadi atur hanya ketika run `-p` memerlukan skill terkini Anda pada kueri pertamanya. Sebelum v2.1.273, sesi terminal hanya mengunduhnya dalam run `-p` dengan variabel ini diatur. Nama folder `synced` [dicadangkan untuk unduhan ini](/docs/id/skills#where-skills-live). Sebelum v2.1.227, skill diunduh langsung ke `~/.claude/skills/`. Claude Code menerapkan [aturan tambahan pada skill yang diunduh](/docs/id/skills#how-synced-skills-behave), seperti tidak menjalankan perintah `!` mereka di mesin Anda |407| `CLAUDE_CODE_SYNC_SKILLS` | Atur ke `1` dalam mode non-interaktif dengan flag `-p` agar Claude Code mengunduh skill yang diaktifkan untuk akun claude.ai Anda dalam run tersebut dan menunggu daftarnya, hingga `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS`, sebelum menjalankan kueri pertama. Unduhan itu sendiri selesai di latar belakang, dan Claude menunggu unduhan sebuah skill ketika memanggil skill tersebut. Memerlukan autentikasi claude.ai. Sesi terminal tempat Anda masuk dengan akun claude.ai Anda [mengunduh skill ini](/docs/id/skills#where-synced-skills-load) ke `~/.claude/skills/synced/` dan menyinkronkan ulang kira-kira setiap 10 menit tanpa variabel ini, jadi atur hanya ketika run `-p` memerlukan skill terkini Anda pada kueri pertamanya. Sebelum v2.1.273, sesi terminal hanya mengunduhnya dalam run `-p` dengan variabel ini diatur. Nama folder `synced` [dicadangkan untuk unduhan ini](/docs/id/skills#where-skills-live). Sebelum v2.1.227, skill diunduh langsung ke `~/.claude/skills/`. Claude Code menerapkan [aturan tambahan pada skill yang diunduh](/docs/id/skills#how-synced-skills-behave), seperti tidak menjalankan perintah `!` mereka di mesin Anda |

405| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | Timeout dalam milidetik untuk sinkronisasi ulang skill yang berjalan di tengah sesi ketika aplikasi yang dibangun di atas [Agent SDK](/docs/id/agent-sdk/typescript#query-object) memuat ulang skill (default: 30000). Ketika terlampaui, pemuatan ulang berlanjut dengan skill mana pun yang sudah tiba, dan unduhan yang tersisa selesai di latar belakang |408| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | Timeout dalam milidetik untuk sinkronisasi ulang skill yang berjalan di tengah sesi ketika aplikasi yang dibangun di atas [Agent SDK](/docs/id/agent-sdk/typescript#query-object) memuat ulang skill (default: 30000). Ketika terlampaui, pemuatan ulang berlanjut dengan skill mana pun yang sudah tiba, dan unduhan yang tersisa selesai di latar belakang |

406| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | Timeout dalam milidetik bagi kueri pertama untuk menunggu daftar skill awal ketika `CLAUDE_CODE_SYNC_SKILLS` diatur (default: 5000). Ketika terlampaui, kueri pertama berjalan dengan skill mana pun yang sudah tiba. Unduhan tetap selesai di latar belakang, dan Claude menunggu unduhan skill ketika memanggil skill tersebut |409| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | Timeout dalam milidetik bagi kueri pertama untuk menunggu daftar skill awal ketika `CLAUDE_CODE_SYNC_SKILLS` diatur (default: 5000). Ketika terlampaui, kueri pertama berjalan dengan skill mana pun yang sudah tiba. Unduhan tetap selesai di latar belakang, dan Claude menunggu unduhan sebuah skill ketika memanggil skill tersebut |

407| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Atur ke `false` untuk menonaktifkan penyorotan sintaks di output diff. Berguna ketika warna mengganggu penyiapan terminal Anda. Untuk juga menonaktifkan penyorotan di blok kode dan pratinjau file, gunakan pengaturan [`syntaxHighlightingDisabled`](/docs/id/settings-reference#syntaxhighlightingdisabled) |410| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Atur ke `false` untuk menonaktifkan syntax highlighting di output diff. Berguna ketika warna mengganggu penyiapan terminal Anda. Untuk juga menonaktifkan highlighting di blok kode dan pratinjau file, gunakan pengaturan [`syntaxHighlightingDisabled`](/docs/id/settings-reference#syntaxhighlightingdisabled) |

408| `CLAUDE_CODE_TASK_LIST_ID` | Berbagi daftar tugas antar sesi. Atur ID yang sama di beberapa instance Claude Code untuk berkoordinasi pada daftar tugas bersama, di [sesi yang memiliki tool Task](/docs/id/tools-reference#task-tool-availability). Lihat [Daftar tugas](/docs/id/interactive-mode#task-list) |411| `CLAUDE_CODE_TASK_LIST_ID` | Berbagi daftar tugas antar sesi. Atur ID yang sama di beberapa instance Claude Code untuk berkoordinasi pada daftar tugas bersama, dalam [sesi yang memiliki tool Task](/docs/id/tools-reference#task-tool-availability). Lihat [Daftar tugas](/docs/id/interactive-mode#task-list) |

409| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | Menimpa, dalam milidetik, berapa lama sesi non-interaktif menunggu saat keluar agar [tim agent](/docs/id/agent-teams)-nya selesai dibongkar. Menerima 1000 hingga 60000; nilai di luar rentang diabaikan dan default 10000 yang berlaku. Memerlukan Claude Code v2.1.206 atau lebih baru |412| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | Menimpa, dalam milidetik, berapa lama sesi non-interaktif menunggu saat keluar agar [tim agent](/docs/id/agent-teams)-nya selesai dibongkar. Menerima 1000 hingga 60000; nilai di luar rentang diabaikan dan default 10000 berlaku. Memerlukan Claude Code v2.1.206 atau lebih baru |

410| `CLAUDE_CODE_TMPDIR` | Menimpa direktori temp yang digunakan untuk file temp internal. Claude Code menambahkan `/claude-{uid}/` ke path ini di Unix, atau `/claude/` di Windows. Default: `/tmp` di macOS, `os.tmpdir()` di Linux dan Windows. Di macOS dan Linux, subproses Bash yang [di-sandbox](/docs/id/sandboxing) menerima `$TMPDIR` fallback yang pendek di bawah default sistem ketika override Anda berupa path panjang, karena beberapa alat gagal ketika path temp terlalu panjang. Perintah Bash yang tidak di-sandbox mewarisi `$TMPDIR` shell Anda ketika diatur. Di Windows native, ketika shell Anda tidak mengatur `$TMPDIR`, perintah Bash yang mereferensikan `$TMPDIR` menerima override Anda, atau `%TEMP%` ketika Anda belum mengaturnya. File temp milik Claude Code sendiri selalu menggunakan override Anda. Atur di shell Anda, pengaturan pengguna, atau pengaturan terkelola. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env) |413| `CLAUDE_CODE_TMPDIR` | Menimpa direktori temp yang digunakan untuk file temp internal. Claude Code menambahkan `/claude-{uid}/` ke path ini di Unix, atau `/claude/` di Windows. Default: `/tmp` di macOS, `os.tmpdir()` di Linux dan Windows. Di macOS dan Linux, subprocess Bash yang [di-sandbox](/docs/id/sandboxing) menerima `$TMPDIR` fallback yang pendek di bawah default sistem ketika override Anda berupa path yang panjang, karena beberapa tool gagal ketika path temp terlalu panjang. Perintah Bash yang tidak di-sandbox mewarisi `$TMPDIR` shell Anda ketika diatur. Di Windows native, ketika shell Anda tidak mengatur `$TMPDIR`, perintah Bash yang mereferensikan `$TMPDIR` menerima override Anda, atau `%TEMP%` jika Anda belum mengaturnya. File temp milik Claude Code sendiri selalu menggunakan override Anda. Atur di shell Anda, pengaturan pengguna, atau pengaturan terkelola. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env) |

411| `CLAUDE_CODE_TMUX_TRUECOLOR` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk mengizinkan output truecolor 24-bit di dalam tmux. **Mengaturnya ke `0` atau `false` tetap mengizinkan truecolor**, tidak seperti sebagian besar variabel on/off; hapus pengaturan variabel untuk memulihkan pembatasan 256 warna. Secara default, Claude Code membatasi ke 256 warna ketika `$TMUX` diatur karena tmux tidak meneruskan escape sequence truecolor kecuali dikonfigurasi untuk itu. Atur ini setelah menambahkan `set -ga terminal-overrides ',*:Tc'` ke `~/.tmux.conf` Anda. Lihat [Konfigurasi terminal](/docs/id/terminal-config) untuk pengaturan tmux lainnya |414| `CLAUDE_CODE_TMUX_TRUECOLOR` | Atur ke nilai tidak kosong apa pun, seperti `1`, untuk mengizinkan output truecolor 24-bit di dalam tmux. **Mengaturnya ke `0` atau `false` tetap mengizinkan truecolor**, tidak seperti kebanyakan variabel on/off; hapus pengaturan variabel untuk memulihkan pembatasan 256 warna. Secara default, Claude Code membatasi ke 256 warna ketika `$TMUX` diatur karena tmux tidak meneruskan escape sequence truecolor kecuali dikonfigurasi untuk itu. Atur ini setelah menambahkan `set -ga terminal-overrides ',*:Tc'` ke `~/.tmux.conf` Anda. Lihat [Konfigurasi terminal](/docs/id/terminal-config) untuk pengaturan tmux lainnya |

412| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | Di Linux dan WSL, atur ke daftar yang dipisahkan koma berisi jenis proses yang [dikecualikan Claude Code dari batas memori tool](/docs/id/tools-reference#memory-limit-on-linux-and-wsl), seperti `mcp` atau `lsp`. Atur `none` untuk membatasi setiap jenis, atau `all-new` untuk hanya membatasi perintah tool Bash, PowerShell, dan Monitor. Claude Code tetap menempatkan perintah tool Bash, PowerShell, dan Monitor di bawah batas apa pun yang Anda cantumkan. Memerlukan Claude Code v2.1.246 atau lebih baru |415| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | Di Linux dan WSL, atur ke daftar yang dipisahkan koma berisi jenis proses yang [dikecualikan Claude Code dari batas memori tool](/docs/id/tools-reference#memory-limit-on-linux-and-wsl), seperti `mcp` atau `lsp`. Atur `none` untuk membatasi setiap jenis, atau `all-new` untuk membatasi hanya perintah tool Bash, PowerShell, dan Monitor. Claude Code tetap menjaga perintah tool Bash, PowerShell, dan Monitor di bawah batas apa pun yang Anda cantumkan. Memerlukan Claude Code v2.1.246 atau lebih baru |

413| `CLAUDE_CODE_TOOL_MEMORY_LIMIT` | Di Linux dan WSL, atur ke ukuran seperti `4G` untuk [membatasi memori yang dapat digunakan perintah tool Bash dan PowerShell](/docs/id/tools-reference#memory-limit-on-linux-and-wsl), serta perintah tool Monitor pada v2.1.246 atau lebih baru. Tulis ukuran dalam digit biasa, saja untuk jumlah byte atau dengan sufiks `K`, `M`, `G`, atau `T`. Atur `0` atau `off` untuk mematikan batas. Setelah proses pertama yang dimulai Claude Code mengaktifkan atau mematikan batas, nilai yang diubah berlaku saat Anda meluncurkan `claude` berikutnya. Memerlukan Claude Code v2.1.233 atau lebih baru |416| `CLAUDE_CODE_TOOL_MEMORY_LIMIT` | Di Linux dan WSL, atur ke ukuran seperti `4G` untuk [membatasi memori yang dapat digunakan perintah tool Bash dan PowerShell](/docs/id/tools-reference#memory-limit-on-linux-and-wsl), serta perintah tool Monitor pada v2.1.246 atau lebih baru. Tulis ukuran dalam digit biasa, sendirian untuk jumlah byte atau dengan sufiks `K`, `M`, `G`, atau `T`. Atur `0` atau `off` untuk mematikan batas. Setelah proses pertama yang dimulai Claude Code mengaktifkan atau mematikan batas, nilai yang diubah berlaku pada saat Anda meluncurkan `claude` berikutnya. Memerlukan Claude Code v2.1.233 atau lebih baru |

414| `CLAUDE_CODE_TRANSCRIPT_LOCAL_GC` | Atur ke `1` untuk membatasi seberapa besar [file transkrip](/docs/id/sessions#where-transcripts-are-stored) dari sesi `-p` atau Agent SDK yang panjang bertambah. Setelah setiap compaction, begitu file lebih besar dari 5 MB, Claude Code menghapus riwayat dari sebelum compaction tersebut. Melanjutkan sesi memulihkan percakapan yang sama baik file dipangkas maupun tidak. Atur di lingkungan tempat Anda memulai Claude Code, karena blok `env` pengaturan tidak dapat mengaktifkannya. Memerlukan Claude Code v2.1.287 atau lebih baru |417| `CLAUDE_CODE_TRANSCRIPT_LOCAL_GC` | Atur ke `1` untuk membatasi seberapa besar [file transkrip](/docs/id/sessions#where-transcripts-are-stored) dari sesi `-p` atau Agent SDK yang panjang bertambah. Setelah setiap compaction, begitu file lebih besar dari 5 MB, Claude Code menghapus riwayat dari sebelum compaction tersebut. Melanjutkan sesi memulihkan percakapan yang sama baik file dipangkas maupun tidak. Atur di environment tempat Anda memulai Claude Code, karena blok `env` pengaturan tidak dapat mengaktifkannya. Memerlukan Claude Code v2.1.287 atau lebih baru |

415| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Tenggat dalam milidetik sebelum Claude Code membatalkan dialog yang diteruskannya ke klien jarak jauh seperti host [Remote Control](/docs/id/remote-control) atau SDK, atau dialog persetujuan untuk [pesan lintas sesi yang ditahan](/docs/id/cross-session-messaging#control-inbound-messages); permintaan izin dan pertanyaan `AskUserQuestion` menggunakan alurnya sendiri dan tidak diatur olehnya. Pada Claude Code v2.1.236 atau lebih baru, ini juga membatasi [prompt persetujuan kredit penggunaan Fable](/docs/id/model-config#fable-and-usage-credits) di tengah sesi pada sesi yang mungkin berjalan tanpa pengawasan. [Mengontrol pesan masuk](/docs/id/cross-session-messaging#control-inbound-messages) dan [sesi non-interaktif](/docs/id/cross-session-messaging#non-interactive-sessions) membahas aturan kedaluwarsa pesan yang ditahan secara lengkap, termasuk kasus di mana tenggat tidak berlaku. Menimpa pengaturan [`dialogExpiry`](/docs/id/settings-reference#dialogexpiry). `0` atau nilai negatif menonaktifkan tenggat |418| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Tenggat dalam milidetik sebelum Claude Code membatalkan dialog yang diteruskannya ke klien jarak jauh seperti host [Remote Control](/docs/id/remote-control) atau SDK, atau dialog persetujuan untuk [pesan lintas sesi yang ditahan](/docs/id/cross-session-messaging#control-inbound-messages); permintaan izin dan pertanyaan `AskUserQuestion` menggunakan alurnya sendiri dan tidak diatur olehnya. Pada Claude Code v2.1.236 atau lebih baru, ini juga membatasi [prompt persetujuan kredit penggunaan Fable](/docs/id/model-config#fable-and-usage-credits) di tengah sesi dalam sesi yang mungkin berjalan tanpa pengawasan. [Mengontrol pesan masuk](/docs/id/cross-session-messaging#control-inbound-messages) dan [sesi non-interaktif](/docs/id/cross-session-messaging#non-interactive-sessions) membahas aturan kedaluwarsa pesan yang ditahan secara lengkap, termasuk kasus di mana tenggat tidak berlaku. Menimpa pengaturan [`dialogExpiry`](/docs/id/settings-reference#dialogexpiry). `0` atau nilai negatif menonaktifkan tenggat |

416| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Menggunakan [Claude Platform on AWS](/docs/id/claude-platform-on-aws) |419| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Gunakan [Claude Platform on AWS](/docs/id/claude-platform-on-aws) |

417| `CLAUDE_CODE_USE_BEDROCK` | Menggunakan [Amazon Bedrock](/docs/id/amazon-bedrock) |420| `CLAUDE_CODE_USE_BEDROCK` | Gunakan [Amazon Bedrock](/docs/id/amazon-bedrock) |

418| `CLAUDE_CODE_USE_FOUNDRY` | Menggunakan [Microsoft Foundry](/docs/id/microsoft-foundry) |421| `CLAUDE_CODE_USE_FOUNDRY` | Gunakan [Microsoft Foundry](/docs/id/microsoft-foundry) |

419| `CLAUDE_CODE_USE_MANTLE` | Menggunakan [endpoint Mantle](/docs/id/amazon-bedrock#use-the-mantle-endpoint) Amazon Bedrock |422| `CLAUDE_CODE_USE_MANTLE` | Gunakan [endpoint Mantle](/docs/id/amazon-bedrock#use-the-mantle-endpoint) Amazon Bedrock |

420| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | Atur ke `1` untuk menemukan perintah kustom, subagent, dan gaya output menggunakan API file Node.js alih-alih ripgrep. Atur ini jika binary ripgrep yang dibundel tidak tersedia atau diblokir di lingkungan Anda. Tidak memengaruhi tool Grep atau pencarian file |423| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | Atur ke `1` untuk menemukan perintah kustom, subagent, dan gaya output menggunakan API file Node.js alih-alih ripgrep. Atur ini jika binary ripgrep yang dibundel tidak tersedia atau diblokir di environment Anda. Tidak memengaruhi tool Grep atau pencarian file |

421| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | Mengontrol tool PowerShell. Di Windows tanpa Git Bash, tool diaktifkan secara otomatis; atur ke `0` untuk menonaktifkannya. Di Windows dengan Git Bash terinstal, tool aktif secara default untuk akun claude.ai dan Console; atur ke `1` untuk mengaktifkannya di sesi Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry, atau `0` untuk mematikannya. Di Linux, macOS, dan WSL, atur ke `1` untuk mengaktifkannya, yang memerlukan `pwsh` di `PATH` Anda. Ketika diaktifkan di Windows, Claude dapat menjalankan perintah PowerShell secara native alih-alih merutekan melalui Git Bash. Lihat [Tool PowerShell](/docs/id/tools-reference#powershell-tool) |424| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | Mengontrol tool PowerShell. Di Windows tanpa Git Bash, tool ini diaktifkan secara otomatis; atur ke `0` untuk menonaktifkannya. Di Windows dengan Git Bash terinstal, tool ini aktif secara default untuk akun claude.ai dan Console; atur ke `1` untuk mengaktifkannya dalam sesi Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry, atau `0` untuk mematikannya. Di Linux, macOS, dan WSL, atur ke `1` untuk mengaktifkannya, yang memerlukan `pwsh` di `PATH` Anda. Saat diaktifkan di Windows, Claude dapat menjalankan perintah PowerShell secara native alih-alih melalui Git Bash. Lihat [Tool PowerShell](/docs/id/tools-reference#powershell-tool) |

422| `CLAUDE_CODE_USE_VERTEX` | Menggunakan [Google Cloud's Agent Platform](/docs/id/google-vertex-ai) |425| `CLAUDE_CODE_USE_VERTEX` | Gunakan [Google Cloud's Agent Platform](/docs/id/google-vertex-ai) |

423| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | Atur ke jumlah milidetik [WebFetch](/docs/id/tools-reference#webfetch-tool-behavior) menyimpan respons setiap URL yang diambil di cache. Nilai default adalah `900000`, yaitu 15 menit. Hanya menerima digit biasa; `0`, desimal, atau penulisan lainnya mempertahankan nilai default. Claude Code membaca nilai ini sekali per peluncuran, sehingga perubahan di blok `env` pengaturan berlaku saat Anda meluncurkan `claude` berikutnya. Memerlukan Claude Code v2.1.233 atau lebih baru |426| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | Atur ke jumlah milidetik [WebFetch](/docs/id/tools-reference#webfetch-tool-behavior) menyimpan respons setiap URL yang diambil di cache. Default-nya adalah `900000`, yaitu 15 menit. Hanya menerima digit biasa; `0`, angka desimal, atau penulisan lain mana pun mempertahankan default. Claude Code membaca nilai ini sekali per peluncuran, sehingga perubahan dalam blok `env` pengaturan berlaku saat Anda meluncurkan `claude` berikutnya. Memerlukan Claude Code v2.1.233 atau lebih baru |

424| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | Batas atas dalam milidetik untuk berapa lama [WebFetch](/docs/id/tools-reference#webfetch-tool-behavior) menunggu halaman selesai diunduh, termasuk pengalihan apa pun yang diikutinya. Unduhan yang belum selesai saat itu akan gagal dengan error tenggat. Nilai default adalah `300000`, yaitu lima menit. Atur ke `0` untuk menghapus batas. Hanya menerima digit biasa; desimal atau penulisan lainnya mempertahankan nilai default. Memerlukan Claude Code v2.1.268 atau lebih baru |427| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | Batas atas dalam milidetik untuk berapa lama [WebFetch](/docs/id/tools-reference#webfetch-tool-behavior) menunggu halaman selesai diunduh, termasuk redirect apa pun yang diikutinya. Unduhan yang belum selesai pada saat itu gagal dengan error tenggat. Default-nya adalah `300000`, yaitu lima menit. Atur ke `0` untuk menghapus batas. Hanya menerima digit biasa; angka desimal atau penulisan lain mana pun mempertahankan default. Memerlukan Claude Code v2.1.268 atau lebih baru |

425| `CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE` | Saat `CLAUDE_AUTO_BACKGROUND_TASKS` diatur ke `1`, berapa lama Claude Code menunggu sebelum setiap pengingat kepada Claude untuk memeriksa [subagent latar belakang](/docs/id/sub-agents#run-subagents-in-foreground-or-background) yang masih berjalan. Menerima satu atau lebih waktu tunggu yang dipisahkan koma dalam detik bulat dari `1` hingga `86400`, seperti `600` atau `600,1800,3600`. Setiap nilai adalah waktu tunggu sebelum pengingat berikutnya, dan nilai terakhir diulang. Hanya menerima digit biasa; nilai atau penulisan lainnya dibaca sebagai tidak diatur. Saat tidak diatur, tidak ada pengingat. Memerlukan Claude Code v2.1.283 atau lebih baru |428| `CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE` | Saat `CLAUDE_AUTO_BACKGROUND_TASKS` diatur ke `1`, berapa lama Claude Code menunggu sebelum setiap pengingat kepada Claude untuk memeriksa [subagent latar belakang](/docs/id/sub-agents#run-subagents-in-foreground-or-background) yang masih berjalan. Menerima satu atau beberapa waktu tunggu yang dipisahkan koma dalam detik bulat dari `1` hingga `86400`, seperti `600` atau `600,1800,3600`. Setiap nilai adalah waktu tunggu sebelum pengingat berikutnya, dan nilai terakhir diulang. Hanya menerima digit biasa; nilai atau penulisan lain mana pun dibaca sebagai tidak diatur. Saat tidak diatur, tidak ada pengingat. Memerlukan Claude Code v2.1.283 atau lebih baru |

426| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | Berapa banyak agent yang dijalankan sekaligus oleh satu eksekusi [workflow](/docs/id/workflows), dari `1` hingga `256`. Secara default, satu eksekusi menjalankan hingga 16 agent sekaligus, lebih sedikit jika Claude Code memiliki lebih sedikit CPU yang tersedia; panggilan `agent()` yang mengantre menunggu slot kosong. Transkrip setiap agent yang berjalan tetap berada di memori Claude Code, sehingga nilai yang lebih tinggi meningkatkan penggunaan memori. Hanya menerima digit biasa; nilai di luar rentang dan penulisan lainnya mempertahankan nilai default. Memerlukan Claude Code v2.1.269 atau lebih baru |429| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | Berapa banyak agent yang dijalankan sekaligus oleh satu proses [workflow](/docs/id/workflows), dari `1` hingga `256`. Secara default, satu proses menjalankan hingga 16 agent sekaligus, lebih sedikit saat Claude Code memiliki lebih sedikit CPU yang tersedia; panggilan `agent()` yang mengantre menunggu slot kosong. Transkrip setiap agent yang berjalan tetap berada di memori Claude Code, sehingga nilai yang lebih tinggi meningkatkan penggunaan memori. Hanya menerima digit biasa; nilai di luar rentang dan penulisan lain mempertahankan default. Memerlukan Claude Code v2.1.269 atau lebih baru |

427| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Batas atas dalam milidetik untuk berapa lama agent [workflow](/docs/id/workflows) menunggu respons pertama dari agent saudara dengan prefiks yang sama mulai sebelum mengirim permintaan pertamanya sendiri. Saat fan-out memulai beberapa agent yang berbagi [prefiks prompt cache](/docs/id/workflows#prompt-caching-in-a-fan-out), Claude Code menahan semua agent kecuali yang pertama hingga selama ini agar sisanya membaca prefiks yang sudah di-cache alih-alih masing-masing memprosesnya tanpa cache. Default `5000`. Atur ke `0` untuk menonaktifkan penantian. Saat `DISABLE_PROMPT_CACHING` diatur, agent tidak pernah menunggu. Memerlukan Claude Code v2.1.229 atau lebih baru |430| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Batas atas dalam milidetik untuk berapa lama agent [workflow](/docs/id/workflows) menunggu respons pertama dari sibling dengan prefiks yang sama dimulai sebelum mengirim permintaan pertamanya sendiri. Saat fan-out memulai beberapa agent yang berbagi [prefiks prompt-cache](/docs/id/workflows#prompt-caching-in-a-fan-out), Claude Code menahan semua agent kecuali yang pertama hingga selama ini agar sisanya membaca prefiks yang sudah di-cache alih-alih masing-masing memprosesnya tanpa cache. Default `5000`. Atur ke `0` untuk menonaktifkan penantian. Saat `DISABLE_PROMPT_CACHING` diatur, agent tidak pernah menunggu. Memerlukan Claude Code v2.1.229 atau lebih baru |

428| `CLAUDE_CONFIG_DIR` | Menimpa direktori konfigurasi (default: `~/.claude`). Semua pengaturan, riwayat sesi, dan plugin disimpan di bawah path ini. Untuk kredensial, lihat [tempat Claude Code menyimpan kredensial](/docs/id/authentication#credential-management). Berguna untuk menjalankan beberapa akun secara berdampingan: misalnya, `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env) |431| `CLAUDE_CONFIG_DIR` | Menimpa direktori konfigurasi (default: `~/.claude`). Semua pengaturan, riwayat sesi, dan plugin disimpan di bawah path ini. Untuk kredensial, lihat [tempat Claude Code menyimpan kredensial](/docs/id/authentication#credential-management). Berguna untuk menjalankan beberapa akun secara berdampingan: misalnya, `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Dalam file pengaturan, tulis [path absolut](#in-settings-files). Diabaikan dalam [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env) |

429| `CLAUDE_DISABLE_ADOPT` | Atur ke `1` untuk menghentikan pekerjaan latar belakang yang sedang berjalan alih-alih meneruskannya saat Anda memindahkan sesi ke latar belakang dengan menekan `←` atau dengan [`/background`](/docs/id/agent-view#from-inside-a-session). Claude Code meminta Anda untuk mengonfirmasi sebelum memindahkan ke latar belakang, lalu menghentikan tugas yang seharusnya diteruskan. Memerlukan Claude Code v2.1.195 atau lebih baru |432| `CLAUDE_DISABLE_ADOPT` | Atur ke `1` untuk menghentikan pekerjaan latar belakang yang sedang berjalan alih-alih membawanya saat Anda memindahkan sesi ke latar belakang dengan menekan `←` atau dengan [`/background`](/docs/id/agent-view#from-inside-a-session). Claude Code meminta Anda untuk mengonfirmasi sebelum memindahkan ke latar belakang, lalu menghentikan tugas yang seharusnya dibawa. Memerlukan Claude Code v2.1.195 atau lebih baru |

430| `CLAUDE_EFFORT` | Diatur secara otomatis di subproses tool Bash dan perintah hook ke [tingkat effort](/docs/id/model-config#adjust-effort-level) yang berlaku saat subproses dimulai: `low`, `medium`, `high`, `xhigh`, atau `max`. Sesuai dengan field `effort.level` yang diteruskan ke [hook](/docs/id/hooks). Hanya diatur saat model saat ini mendukung parameter effort |433| `CLAUDE_EFFORT` | Diatur secara otomatis dalam subproses tool Bash dan perintah hook ke [tingkat effort](/docs/id/model-config#adjust-effort-level) yang berlaku saat subproses dimulai: `low`, `medium`, `high`, `xhigh`, atau `max`. Cocok dengan field `effort.level` yang diteruskan ke [hooks](/docs/id/hooks). Hanya diatur saat model saat ini mendukung parameter effort |

431| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Atur ke `1` untuk memaksa mengaktifkan watchdog idle streaming tingkat byte, atau atur ke `0` untuk memaksa menonaktifkannya. `0` juga mematikan [tenggat byte pertama](/docs/id/network-config#streaming-idle-watchdogs) pada koneksi tempat tenggat tersebut berjalan. Saat tidak diatur, watchdog diaktifkan secara default untuk koneksi langsung ke Anthropic API dan [Claude Platform on AWS](/docs/id/claude-platform-on-aws), serta untuk respons streaming pada koneksi [gateway](/docs/id/gateways) yang dijangkau melalui `ANTHROPIC_BASE_URL` atau `ANTHROPIC_AWS_BASE_URL`; sebelum v2.1.222 watchdog ini tidak berjalan pada koneksi gateway tersebut, sehingga watchdog tingkat event dapat melaporkan macet di sana bahkan saat ping keep-alive terus tiba. Untuk timeout dan cara timer berinteraksi, lihat [Watchdog idle streaming](/docs/id/network-config#streaming-idle-watchdogs) |434| `CLAUDE_ENABLE_BYTE_WATCHDOG` | Atur ke `1` untuk memaksa mengaktifkan watchdog idle streaming tingkat byte, atau atur ke `0` untuk memaksa menonaktifkannya. `0` juga mematikan [tenggat byte pertama](/docs/id/network-config#streaming-idle-watchdogs) pada koneksi tempat tenggat tersebut berjalan. Saat tidak diatur, watchdog diaktifkan secara default untuk koneksi Anthropic API langsung dan [Claude Platform on AWS](/docs/id/claude-platform-on-aws), serta untuk respons streaming pada koneksi [gateway](/docs/id/gateways) yang dijangkau melalui `ANTHROPIC_BASE_URL` atau `ANTHROPIC_AWS_BASE_URL`; sebelum v2.1.222 watchdog ini tidak berjalan pada koneksi gateway tersebut, sehingga watchdog tingkat event dapat melaporkan stall di sana bahkan saat ping keep-alive sedang diterima. Untuk timeout dan bagaimana timer-timer tersebut berinteraksi, lihat [Watchdog idle streaming](/docs/id/network-config#streaming-idle-watchdogs) |

432| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Atur ke `1` untuk mengaktifkan watchdog idle streaming tingkat byte pada respons `vnd.amazon.eventstream` Amazon Bedrock, yang juga mengaktifkan [tenggat byte pertama](/docs/id/network-config#streaming-idle-watchdogs) pada permintaan streaming Bedrock. Nonaktif secara default. Konfigurasikan timeout dengan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |435| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | Atur ke `1` untuk mengaktifkan watchdog idle streaming tingkat byte pada respons `vnd.amazon.eventstream` Amazon Bedrock, yang juga mengaktifkan [tenggat byte pertama](/docs/id/network-config#streaming-idle-watchdogs) pada permintaan streaming Bedrock. Nonaktif secara default. Konfigurasikan timeout dengan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |

433| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Atur ke `0` untuk memaksa menonaktifkan watchdog idle streaming tingkat event, atau atur ke `1` untuk memaksa mengaktifkannya. Saat tidak diatur, watchdog aktif secara default untuk semua penyedia. Sebelum v2.1.196, default saat tidak diatur dikendalikan server pada Anthropic API langsung dan nonaktif pada penyedia lain. Konfigurasikan timeout dengan `CLAUDE_STREAM_IDLE_TIMEOUT_MS`; untuk timer macet lain yang berjalan bersama timer ini, lihat [Watchdog idle streaming](/docs/id/network-config#streaming-idle-watchdogs) |436| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Atur ke `0` untuk memaksa menonaktifkan watchdog idle streaming tingkat event, atau atur ke `1` untuk memaksa mengaktifkannya. Saat tidak diatur, watchdog aktif secara default untuk semua penyedia. Sebelum v2.1.196, default saat tidak diatur dikendalikan oleh server pada Anthropic API langsung dan nonaktif pada penyedia lain. Konfigurasikan timeout dengan `CLAUDE_STREAM_IDLE_TIMEOUT_MS`; untuk timer stall lain yang berjalan bersamaan dengan yang ini, lihat [Watchdog idle streaming](/docs/id/network-config#streaming-idle-watchdogs) |

434| `CLAUDE_ENV_FILE` | Path ke skrip shell yang isinya dijalankan Claude Code sebelum setiap perintah Bash dalam proses shell yang sama, sehingga ekspor dalam file terlihat oleh perintah. Gunakan untuk mempertahankan aktivasi virtualenv atau conda di seluruh perintah. Juga diisi secara dinamis oleh hook [SessionStart](/docs/id/hooks#persist-environment-variables), [Setup](/docs/id/hooks#setup), [CwdChanged](/docs/id/hooks#cwdchanged), dan [FileChanged](/docs/id/hooks#filechanged) |437| `CLAUDE_ENV_FILE` | Path ke skrip shell yang isinya dijalankan Claude Code sebelum setiap perintah Bash dalam proses shell yang sama, sehingga export dalam file tersebut terlihat oleh perintah. Gunakan untuk mempertahankan aktivasi virtualenv atau conda di seluruh perintah. Juga diisi secara dinamis oleh hook [SessionStart](/docs/id/hooks#persist-environment-variables), [Setup](/docs/id/hooks#setup), [CwdChanged](/docs/id/hooks#cwdchanged), dan [FileChanged](/docs/id/hooks#filechanged) |

435| `CLAUDE_JOB_DIR` | Diatur oleh Claude Code di setiap [sesi latar belakang](/docs/id/agent-view) ke direktori `~/.claude/jobs/<id>` milik sesi tersebut. Perintah shell yang dijalankan sesi mewarisinya. Tulis file sementara ke [`$CLAUDE_JOB_DIR/tmp`](/docs/id/agent-view#where-state-is-stored). Panggilan `Write` dan `Edit` Claude di sana tidak meminta izin, dan direktori dihapus saat sesi dihapus |438| `CLAUDE_JOB_DIR` | Diatur oleh Claude Code di setiap [sesi latar belakang](/docs/id/agent-view) ke direktori `~/.claude/jobs/<id>` milik sesi tersebut. Perintah shell yang dijalankan sesi mewarisinya. Tulis file sementara ke [`$CLAUDE_JOB_DIR/tmp`](/docs/id/agent-view#where-state-is-stored). Panggilan `Write` dan `Edit` Claude di sana tidak meminta izin, dan direktori tersebut dihapus saat sesi dihapus |

436| `CLAUDE_PID` | Claude Code mengatur ini ke ID prosesnya sendiri di subproses yang dijalankannya: perintah tool Bash dan PowerShell serta perintah hook. Di Linux, integrasi shell tool Bash menggunakannya untuk menolak pola `pkill` yang akan cocok dengan proses Claude Code itu sendiri; lihat [referensi error](/docs/id/errors#pkill-pattern-matches-the-claude-code-process). Baca dari skrip Anda sendiri untuk mengidentifikasi atau mengirim sinyal ke proses induk Claude Code secara sengaja. Memerlukan Claude Code v2.1.214 atau lebih baru |439| `CLAUDE_PID` | Claude Code mengatur ini ke ID prosesnya sendiri dalam subproses yang dijalankannya: perintah tool Bash dan PowerShell serta perintah hook. Di Linux, integrasi shell tool Bash menggunakannya untuk menolak pola `pkill` yang akan cocok dengan proses Claude Code itu sendiri; lihat [referensi error](/docs/id/errors#pkill-pattern-matches-the-claude-code-process). Baca dari skrip Anda sendiri untuk mengidentifikasi atau mengirim sinyal ke proses induk Claude Code secara sengaja. Memerlukan Claude Code v2.1.214 atau lebih baru |

437| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Prefiks untuk nama sesi [Remote Control](/docs/id/remote-control) yang dibuat otomatis saat tidak ada nama eksplisit yang diberikan. Default ke hostname mesin Anda, menghasilkan nama seperti `myhost-graceful-unicorn`. Flag CLI `--remote-control-session-name-prefix` mengatur nilai yang sama untuk satu pemanggilan |440| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Prefiks untuk nama sesi [Remote Control](/docs/id/remote-control) yang dibuat otomatis saat tidak ada nama eksplisit yang diberikan. Default-nya adalah hostname mesin Anda, menghasilkan nama seperti `myhost-graceful-unicorn`. Flag CLI `--remote-control-session-name-prefix` mengatur nilai yang sama untuk satu pemanggilan |

438| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | Tenggat dalam milidetik untuk byte respons pertama dari permintaan streaming, pada koneksi tempat [tenggat byte pertama](/docs/id/network-config#streaming-idle-watchdogs) berjalan. Untuk cara Claude Code membatasinya, waktu tambahan yang ditambahkannya untuk body permintaan besar, dan cara memilih tenggat saat Anda tidak mengaturnya, lihat [No response from API](/docs/id/errors#no-response-from-api). Memerlukan Claude Code v2.1.242 atau lebih baru |441| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | Tenggat dalam milidetik untuk byte respons pertama dari permintaan streaming, pada koneksi tempat [tenggat byte pertama](/docs/id/network-config#streaming-idle-watchdogs) berjalan. Untuk cara Claude Code membatasinya, waktu tambahan yang ditambahkannya untuk body permintaan yang besar, dan cara memilih tenggat saat Anda membiarkan ini tidak diatur, lihat [No response from API](/docs/id/errors#no-response-from-api). Memerlukan Claude Code v2.1.242 atau lebih baru |

439| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Timeout dalam milidetik sebelum watchdog idle streaming tingkat event dan tingkat byte menutup koneksi yang macet. Saat Anda mengatur variabel ini secara eksplisit, nilai minimumnya adalah `300000` (5 menit); nilai yang lebih rendah dibatasi secara diam-diam untuk mengakomodasi jeda extended thinking dan buffering proxy, dan watchdog tingkat byte membatasi nilainya hingga 30 menit. `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` diutamakan daripada variabel ini untuk watchdog tingkat byte. Untuk default per watchdog saat tidak diatur, lihat [Watchdog idle streaming](/docs/id/network-config#streaming-idle-watchdogs) |442| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Timeout dalam milidetik sebelum watchdog idle streaming tingkat event dan tingkat byte menutup koneksi yang mengalami stall. Saat Anda mengatur variabel ini secara eksplisit, minimumnya adalah `300000` (5 menit); nilai yang lebih rendah dibatasi secara diam-diam untuk mengakomodasi jeda extended thinking dan buffering proxy, dan watchdog tingkat byte membatasi nilainya hingga 30 menit. `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` diutamakan daripada variabel ini untuk watchdog tingkat byte. Untuk default per watchdog saat tidak diatur, lihat [Watchdog idle streaming](/docs/id/network-config#streaming-idle-watchdogs) |

440| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | Dihapus di v2.1.260 dan kini tidak berpengaruh. Sebelumnya membatasi berapa lama [perintah shell latar belakang](/docs/id/interactive-mode#background-bash-commands) yang dimulai oleh [subagent](/docs/id/sub-agents) dapat berjalan, dalam milidetik, dengan default 60 menit. Lihat [aturan masa hidup perintah latar belakang](/docs/id/tools-reference#background-commands) |443| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | Dihapus di v2.1.260 dan sekarang tidak berpengaruh. Sebelumnya membatasi berapa lama [perintah shell latar belakang](/docs/id/interactive-mode#background-bash-commands) yang dimulai oleh [subagent](/docs/id/sub-agents) dapat berjalan, dalam milidetik, dengan default 60 menit. Lihat [aturan masa hidup perintah latar belakang](/docs/id/tools-reference#background-commands) |

441| `DEBUG` | Atur ke `1` untuk mengaktifkan mode debug, setara dengan meluncurkan dengan [`--debug`](/docs/id/cli-reference#cli-flags). Log debug ditulis ke `~/.claude/debug/<session-id>.txt`, atau ke path yang diatur oleh `CLAUDE_CODE_DEBUG_LOGS_DIR`. Hanya nilai truthy `1`, `true`, `yes`, dan `on` yang mengaktifkan mode debug, sehingga pola namespace seperti `DEBUG=express:*` yang diatur untuk tool lain tidak memicunya |444| `DEBUG` | Atur ke `1` untuk mengaktifkan mode debug, setara dengan meluncurkan dengan [`--debug`](/docs/id/cli-reference#cli-flags). Log debug ditulis ke `~/.claude/debug/<session-id>.txt`, atau ke path yang diatur oleh `CLAUDE_CODE_DEBUG_LOGS_DIR`. Hanya nilai truthy `1`, `true`, `yes`, dan `on` yang mengaktifkan mode debug, sehingga pola namespace seperti `DEBUG=express:*` yang diatur untuk alat lain tidak memicunya |

442| `DISABLE_AUTOUPDATER` | Atur ke `1` untuk menonaktifkan pembaruan latar belakang otomatis. `claude update` manual tetap berfungsi. Gunakan `DISABLE_UPDATES` untuk memblokir keduanya |445| `DISABLE_AUTOUPDATER` | Atur ke `1` untuk menonaktifkan pembaruan latar belakang otomatis. `claude update` manual tetap berfungsi. Gunakan `DISABLE_UPDATES` untuk memblokir keduanya |

443| `DISABLE_AUTO_COMPACT` | Atur ke `1` untuk menonaktifkan compaction otomatis saat mendekati batas konteks. Perintah `/compact` manual tetap tersedia. Gunakan saat Anda ingin kontrol eksplisit atas kapan compaction terjadi. Menimpa pengaturan [`autoCompactEnabled`](/docs/id/settings-reference#autocompactenabled) |446| `DISABLE_AUTO_COMPACT` | Atur ke `1` untuk menonaktifkan compaction otomatis saat mendekati batas konteks. Perintah `/compact` manual tetap tersedia. Gunakan saat Anda menginginkan kontrol eksplisit atas kapan compaction terjadi. Menimpa pengaturan [`autoCompactEnabled`](/docs/id/settings-reference#autocompactenabled) |

444| `DISABLE_COMPACT` | Atur ke `1` untuk menonaktifkan semua compaction: baik compaction otomatis maupun perintah `/compact` manual |447| `DISABLE_COMPACT` | Atur ke `1` untuk menonaktifkan semua compaction: baik compaction otomatis maupun perintah `/compact` manual |

445| `DISABLE_COST_WARNINGS` | Atur ke `1` untuk menonaktifkan pesan peringatan biaya |448| `DISABLE_COST_WARNINGS` | Atur ke `1` untuk menonaktifkan pesan peringatan biaya |

446| `DISABLE_DOCTOR_COMMAND` | Atur ke `1` untuk menyembunyikan skill pemeriksaan penyiapan [`/doctor`](/docs/id/commands#all-commands) dan alias `/checkup`-nya. Berguna untuk deployment terkelola di mana pengguna tidak boleh menjalankan diagnostik penyiapan dari sesi. Tidak memengaruhi perintah terminal `claude doctor`. Sebelum v2.1.205, variabel ini menyembunyikan perintah layar diagnostik `/doctor` |449| `DISABLE_DOCTOR_COMMAND` | Atur ke `1` untuk menyembunyikan skill pemeriksaan penyiapan [`/doctor`](/docs/id/commands#all-commands) dan alias `/checkup`-nya. Berguna untuk deployment terkelola di mana pengguna tidak boleh menjalankan diagnostik penyiapan dari sesi. Tidak memengaruhi perintah terminal `claude doctor`. Sebelum v2.1.205, variabel ini menyembunyikan perintah layar diagnostik `/doctor` |

447| `DISABLE_ERROR_REPORTING` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk berhenti ikut serta dalam pelaporan error. **Mengaturnya ke `0` atau `false` tetap menonaktifkannya**, tidak seperti sebagian besar variabel on/off; hapus pengaturan variabel untuk mengaktifkan kembali pelaporan error |450| `DISABLE_ERROR_REPORTING` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk menolak pelaporan error. **Mengaturnya ke `0` atau `false` tetap menolak**, tidak seperti sebagian besar variabel on/off; hapus pengaturan variabel untuk mengaktifkan kembali pelaporan error |

448| `DISABLE_EXTRA_USAGE_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/usage-credits` yang memungkinkan pengguna membeli penggunaan tambahan di luar rate limit |451| `DISABLE_EXTRA_USAGE_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/usage-credits` yang memungkinkan pengguna membeli penggunaan tambahan di luar rate limit |

449| `DISABLE_FEEDBACK_COMMAND` | Atur ke `1` untuk menonaktifkan perintah `/feedback` dan [umpan balik yang dirancang Claude](/docs/id/tools-reference#sendfeedback-tool-behavior). Juga menonaktifkan `/bug` dan `/share`, yang melapor melalui jalur yang sama; sebelum v2.1.212 keduanya adalah alias dari `/feedback`, sehingga perintah tersebut dinonaktifkan di bawah semua nama. Nama lama `DISABLE_BUG_COMMAND` juga diterima |452| `DISABLE_FEEDBACK_COMMAND` | Atur ke `1` untuk menonaktifkan perintah `/feedback` dan [umpan balik yang disusun Claude](/docs/id/tools-reference#sendfeedback-tool-behavior). Juga menonaktifkan `/bug` dan `/share`, yang melapor melalui jalur yang sama; sebelum v2.1.212 keduanya adalah alias dari `/feedback`, sehingga perintah tersebut dinonaktifkan di bawah setiap nama. Nama lama `DISABLE_BUG_COMMAND` juga diterima |

450| `DISABLE_GROWTHBOOK` | Atur ke `1` atau `true` untuk menonaktifkan pengambilan feature flag GrowthBook dan menggunakan default kode untuk setiap flag. Ini membuat [Remote Control](/docs/id/remote-control#requirements) dan [fitur lain yang memerlukan pengambilan feature flag](#features-that-need-feature-flag-fetching) tidak tersedia. Mengaturnya ke `0` atau `false` membiarkan pengambilan tetap aktif. Pencatatan event telemetri tetap aktif kecuali `DISABLE_TELEMETRY` juga diatur |453| `DISABLE_GROWTHBOOK` | Atur ke `1` atau `true` untuk menonaktifkan pengambilan feature flag GrowthBook dan menggunakan default kode untuk setiap flag. Ini membuat [Remote Control](/docs/id/remote-control#requirements) dan [fitur lain yang memerlukan pengambilan feature flag](#features-that-need-feature-flag-fetching) tidak tersedia. Mengaturnya ke `0` atau `false` membiarkan pengambilan tetap aktif. Pencatatan event telemetri tetap aktif kecuali `DISABLE_TELEMETRY` juga diatur |

451| `DISABLE_INSTALLATION_CHECKS` | Atur ke `1` untuk menonaktifkan peringatan instalasi. Gunakan hanya saat mengelola lokasi instalasi secara manual, karena ini dapat menutupi masalah pada instalasi standar |454| `DISABLE_INSTALLATION_CHECKS` | Atur ke `1` untuk menonaktifkan peringatan instalasi. Gunakan hanya saat mengelola lokasi instalasi secara manual, karena ini dapat menutupi masalah pada instalasi standar |

452| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/install-github-app`. Sudah tersembunyi saat menggunakan penyedia pihak ketiga (Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry) |455| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/install-github-app`. Sudah disembunyikan saat menggunakan penyedia pihak ketiga (Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry) |

453| `DISABLE_INTERLEAVED_THINKING` | Atur ke `1` untuk mencegah pengiriman header beta interleaved-thinking. Berguna saat gateway LLM atau penyedia Anda tidak mendukung [interleaved thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) |456| `DISABLE_INTERLEAVED_THINKING` | Atur ke `1` untuk mencegah pengiriman header beta interleaved-thinking. Berguna saat gateway LLM atau penyedia Anda tidak mendukung [interleaved thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) |

454| `DISABLE_LOGIN_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/login`. Berguna saat autentikasi ditangani secara eksternal melalui kunci API atau `apiKeyHelper` |457| `DISABLE_LOGIN_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/login`. Berguna saat autentikasi ditangani secara eksternal melalui kunci API atau `apiKeyHelper` |

455| `DISABLE_LOGOUT_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/logout` |458| `DISABLE_LOGOUT_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/logout` |


458| `DISABLE_PROMPT_CACHING_HAIKU` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Haiku default](/docs/id/prompt-caching#disable-prompt-caching), di mana pun model tersebut berjalan |461| `DISABLE_PROMPT_CACHING_HAIKU` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Haiku default](/docs/id/prompt-caching#disable-prompt-caching), di mana pun model tersebut berjalan |

459| `DISABLE_PROMPT_CACHING_OPUS` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Opus default](/docs/id/prompt-caching#disable-prompt-caching) |462| `DISABLE_PROMPT_CACHING_OPUS` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Opus default](/docs/id/prompt-caching#disable-prompt-caching) |

460| `DISABLE_PROMPT_CACHING_SONNET` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Sonnet default](/docs/id/prompt-caching#disable-prompt-caching) |463| `DISABLE_PROMPT_CACHING_SONNET` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Sonnet default](/docs/id/prompt-caching#disable-prompt-caching) |

461| `DISABLE_TELEMETRY` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk berhenti ikut serta dalam telemetri. **Mengaturnya ke `0` atau `false` tetap menonaktifkannya**, tidak seperti sebagian besar variabel on/off; hapus pengaturan variabel untuk mengaktifkan kembali telemetri. Event telemetri tidak menyertakan data pengguna seperti kode, path file, atau perintah Bash. Juga menonaktifkan [pengambilan feature flag](#features-that-need-feature-flag-fetching). Lihat [Matikan telemetri untuk organisasi Anda](/docs/id/managed-settings#turn-telemetry-off-for-your-organization) |464| `DISABLE_TELEMETRY` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk menolak telemetri. **Mengaturnya ke `0` atau `false` tetap menolak**, tidak seperti sebagian besar variabel on/off; hapus pengaturan variabel untuk mengaktifkan kembali telemetri. Event telemetri tidak menyertakan data pengguna seperti kode, path file, atau perintah Bash. Juga menonaktifkan [pengambilan feature flag](#features-that-need-feature-flag-fetching). Lihat [Matikan telemetri untuk organisasi Anda](/docs/id/managed-settings#turn-telemetry-off-for-your-organization) |

462| `DISABLE_UPDATES` | Atur ke `1` untuk memblokir semua pembaruan termasuk `claude update` dan `claude install` manual. Lebih ketat daripada `DISABLE_AUTOUPDATER`. Gunakan saat mendistribusikan Claude Code melalui saluran Anda sendiri dan pengguna tidak boleh memperbarui sendiri |465| `DISABLE_UPDATES` | Atur ke `1` untuk memblokir semua pembaruan termasuk `claude update` dan `claude install` manual. Lebih ketat daripada `DISABLE_AUTOUPDATER`. Gunakan saat mendistribusikan Claude Code melalui saluran Anda sendiri dan pengguna tidak boleh memperbarui sendiri |

463| `DISABLE_UPGRADE_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/upgrade` |466| `DISABLE_UPGRADE_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/upgrade` |

464| `DO_NOT_TRACK` | Atur ke `1` untuk berhenti ikut serta dalam telemetri, dengan efek yang sama seperti `DISABLE_TELEMETRY`, termasuk pada [pengambilan feature flag](#features-that-need-feature-flag-fetching). Claude Code membaca variabel ini sebagai boolean standar, sehingga `0` membiarkan telemetri tetap aktif, dan mematuhinya sebagai konvensi lintas tool yang dikenali oleh banyak CLI pengembang |467| `DO_NOT_TRACK` | Atur ke `1` untuk menolak telemetri, dengan efek yang sama seperti `DISABLE_TELEMETRY`, termasuk pada [pengambilan feature flag](#features-that-need-feature-flag-fetching). Claude Code membaca variabel ini sebagai boolean standar, sehingga `0` membiarkan telemetri tetap aktif, dan menghormatinya sebagai konvensi lintas alat yang dikenali oleh banyak CLI pengembang |

465| `ENABLE_BETA_TRACING_DETAILED` | Atur ke `1`, dan atur `BETA_TRACING_ENDPOINT` ke endpoint kolektor OTLP/HTTP Anda, untuk mengaktifkan [tracing beta terperinci](/docs/id/monitoring-usage#traces-beta), yang menambahkan atribut span yang memuat konten dan span `claude_code.hook`. Sesi CLI interaktif juga mengharuskan organisasi Anda masuk dalam daftar izin untuk beta. Kedua variabel diabaikan dalam [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env) |468| `ENABLE_BETA_TRACING_DETAILED` | Atur ke `1`, dan atur `BETA_TRACING_ENDPOINT` ke endpoint collector OTLP/HTTP Anda, untuk mengaktifkan [tracing beta terperinci](/docs/id/monitoring-usage#traces-beta), yang menambahkan atribut span yang memuat konten dan span `claude_code.hook`. Sesi CLI interaktif juga memerlukan organisasi Anda masuk dalam allowlist untuk beta tersebut. Kedua variabel diabaikan dalam [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env) |

466| `ENABLE_CLAUDEAI_MCP_SERVERS` | Atur ke `false` untuk menghentikan Claude Code mengambil [server MCP claude.ai](/docs/id/mcp#use-mcp-servers-from-claude-ai). Diaktifkan secara default untuk pengguna yang sudah masuk. Untuk menonaktifkan per proyek atau per organisasi, atur [`disableClaudeAiConnectors`](/docs/id/settings-reference#disableclaudeaiconnectors) di pengaturan sebagai gantinya |469| `ENABLE_CLAUDEAI_MCP_SERVERS` | Atur ke `false` untuk menghentikan Claude Code mengambil [server MCP claude.ai](/docs/id/mcp#use-mcp-servers-from-claude-ai). Diaktifkan secara default untuk pengguna yang sudah masuk. Untuk menonaktifkan per proyek atau per organisasi, atur [`disableClaudeAiConnectors`](/docs/id/settings-reference#disableclaudeaiconnectors) di pengaturan sebagai gantinya |

467| `ENABLE_PROMPT_CACHING_1H` | Atur ke `1` untuk meminta [TTL prompt cache](/docs/id/prompt-caching#cache-lifetime) 1 jam alih-alih default 5 menit. Ditujukan untuk pengguna kunci API, [Amazon Bedrock](/docs/id/amazon-bedrock), [Google Cloud's Agent Platform](/docs/id/google-vertex-ai), [Microsoft Foundry](/docs/id/microsoft-foundry), dan [Claude Platform on AWS](/docs/id/claude-platform-on-aws). Pengguna langganan dalam penggunaan yang disertakan menerima TTL 1 jam secara otomatis pada [percakapan utama](/docs/id/prompt-caching#which-ttl-each-request-gets). Pengguna langganan yang menggunakan [kredit penggunaan](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) dapat mengaturnya untuk mempertahankan TTL 1 jam. Penulisan cache 1 jam ditagih dengan tarif lebih tinggi. Untuk memilih TTL per kelompok permintaan, gunakan `CLAUDE_CODE_PROMPT_CACHE_TTL` dan `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, yang diutamakan daripada variabel ini |470| `ENABLE_PROMPT_CACHING_1H` | Atur ke `1` untuk meminta [TTL cache prompt](/docs/id/prompt-caching#cache-lifetime) 1 jam alih-alih default 5 menit. Ditujukan untuk pengguna kunci API, [Amazon Bedrock](/docs/id/amazon-bedrock), [Google Cloud's Agent Platform](/docs/id/google-vertex-ai), [Microsoft Foundry](/docs/id/microsoft-foundry), dan [Claude Platform on AWS](/docs/id/claude-platform-on-aws). Pengguna langganan dalam penggunaan yang disertakan menerima TTL 1 jam secara otomatis pada [percakapan utama](/docs/id/prompt-caching#which-ttl-each-request-gets). Pengguna langganan yang menggunakan [kredit penggunaan](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) dapat mengaturnya untuk mempertahankan TTL 1 jam. Penulisan cache 1 jam ditagih dengan tarif lebih tinggi. Untuk memilih TTL per kelompok permintaan sebagai gantinya, gunakan `CLAUDE_CODE_PROMPT_CACHE_TTL` dan `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, yang diutamakan daripada variabel ini |

468| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Deprecated. Gunakan `ENABLE_PROMPT_CACHING_1H` sebagai gantinya |471| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Deprecated. Gunakan `ENABLE_PROMPT_CACHING_1H` sebagai gantinya |

469| `ENABLE_TOOL_SEARCH` | Mengontrol [pencarian tool MCP](/docs/id/mcp#scale-with-mcp-tool-search). Saat tidak diatur, Claude Code menunda semua tool MCP secara default. Claude Code tetap memuatnya di awal pada model Google Cloud's Agent Platform yang lebih awal dari generasi Claude 4.5, pada deployment Microsoft Foundry yang di-host di Azure, dan saat `ANTHROPIC_BASE_URL` mengarah ke host yang bukan pihak pertama. `true` selalu menunda dan mengirim header beta, kecuali pada model Agent Platform dan deployment Microsoft Foundry yang sama tersebut; permintaan gagal pada proxy yang tidak mendukung `tool_reference`. `auto` memuat di awal saat definisi tool muat dalam 10% konteks. `auto:N` mengatur ambang kustom, seperti `auto:5` untuk 5%. `false` memuat semua tool di awal. Nilai yang Anda atur sendiri diabaikan saat `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` diatur. Sebelum v2.1.221, Claude Code menonaktifkan pencarian tool untuk semua model di Google Cloud's Agent Platform kecuali Anda mengatur variabel ini ke `true` |472| `ENABLE_TOOL_SEARCH` | Mengontrol [pencarian tool MCP](/docs/id/mcp#scale-with-mcp-tool-search). Saat tidak diatur, Claude Code menunda semua tool MCP secara default. Claude Code tetap memuatnya di awal pada model Google Cloud's Agent Platform yang lebih lama dari generasi Claude 4.5, pada deployment Microsoft Foundry yang di-host di Azure, dan saat `ANTHROPIC_BASE_URL` mengarah ke host non-first-party. `true` selalu menunda dan mengirim header beta, kecuali pada model Agent Platform dan deployment Microsoft Foundry yang sama tersebut; permintaan gagal pada proxy yang tidak mendukung `tool_reference`. `auto` memuat di awal saat definisi tool muat dalam 10% konteks. `auto:N` mengatur ambang batas kustom, seperti `auto:5` untuk 5%. `false` memuat semua tool di awal. Nilai yang Anda atur sendiri diabaikan saat `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` diatur. Sebelum v2.1.221, Claude Code menonaktifkan pencarian tool untuk semua model di Google Cloud's Agent Platform kecuali Anda mengatur variabel ini ke `true` |

470| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, agar Claude Code berhenti melakukan retry pada error overload berulang untuk setiap model saat tidak ada model fallback yang dikonfigurasi. **Mengaturnya ke `0` atau `false` tetap mengaktifkannya**, tidak seperti sebagian besar variabel on/off; hapus pengaturan variabel untuk memulihkan perilaku retry default. Tanpanya, Claude Code berhenti mencoba ulang dengan cara ini pada model yang dikenalinya sebagai model Opus, Fable, atau Mythos saat Anda melakukan autentikasi dengan kunci API atau [penyedia pihak ketiga](/docs/id/third-party-integrations) alih-alih langganan Claude. Pada Claude Code v2.1.160 atau lebih baru, Claude Code beralih ke [rantai model fallback](/docs/id/model-config#fallback-model-chains) yang Anda konfigurasi pada error overload berulang untuk model utama apa pun, sehingga variabel ini tidak memengaruhi peralihan ke model fallback |473| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, agar Claude Code berhenti melakukan retry pada error overload berulang untuk setiap model saat tidak ada model fallback yang dikonfigurasi. **Mengaturnya ke `0` atau `false` tetap mengaktifkan ini**, tidak seperti sebagian besar variabel on/off; hapus pengaturan variabel untuk memulihkan perilaku retry default. Tanpanya, Claude Code berhenti melakukan retry dengan cara ini pada model yang dikenalinya sebagai model Opus, Fable, atau Mythos saat Anda melakukan autentikasi dengan kunci API atau [penyedia pihak ketiga](/docs/id/third-party-integrations) alih-alih langganan Claude. Pada Claude Code v2.1.160 atau lebih baru, Claude Code beralih ke [rantai model fallback](/docs/id/model-config#fallback-model-chains) yang Anda konfigurasikan pada error overload berulang untuk model utama mana pun, sehingga variabel ini tidak memengaruhi peralihan ke model fallback |

471| `FORCE_AUTOUPDATE_PLUGINS` | Atur ke `1` untuk memaksa pembaruan otomatis plugin bahkan saat pembaru otomatis utama dinonaktifkan melalui `DISABLE_AUTOUPDATER` |474| `FORCE_AUTOUPDATE_PLUGINS` | Atur ke `1` untuk memaksa pembaruan otomatis plugin bahkan saat auto-updater utama dinonaktifkan melalui `DISABLE_AUTOUPDATER` |

472| `FORCE_HYPERLINK` | Atur ke `1` untuk mengaktifkan hyperlink OSC 8 yang dapat diklik saat terminal Anda mendukungnya tetapi tidak terdeteksi otomatis, atau `0` untuk menonaktifkannya. Saat tidak diatur, Claude Code mengaktifkan hyperlink hanya saat mendeteksi dukungan terminal. Claude Code mengurai nilai ini sebagai angka, bukan Boolean, sehingga nilai seperti `false`, `no`, atau `off` justru mengaktifkan hyperlink alih-alih menonaktifkannya. [Badge PR atau merge request](/docs/id/interactive-mode#pr-review-status) di footer dirender sebagai hyperlink bahkan saat Claude Code tidak dapat mendeteksi dukungan terminal, seperti melalui SSH. Atur `0` untuk merender badge sebagai teks biasa |475| `FORCE_HYPERLINK` | Atur ke `1` untuk mengaktifkan hyperlink OSC 8 yang dapat diklik saat terminal Anda mendukungnya tetapi tidak terdeteksi otomatis, atau `0` untuk menonaktifkannya. Saat tidak diatur, Claude Code mengaktifkan hyperlink hanya saat mendeteksi dukungan terminal. Claude Code mengurai nilai ini sebagai angka, bukan Boolean, sehingga nilai seperti `false`, `no`, atau `off` justru mengaktifkan hyperlink alih-alih menonaktifkannya. [Lencana PR atau merge request](/docs/id/interactive-mode#pr-review-status) di footer ditampilkan sebagai hyperlink bahkan saat Claude Code tidak dapat mendeteksi dukungan terminal, seperti melalui SSH. Atur `0` untuk menampilkan lencana sebagai teks biasa |

473| `FORCE_PROMPT_CACHING_5M` | Atur ke `1` untuk memaksa TTL prompt cache 5 menit bahkan saat TTL 1 jam seharusnya berlaku. Menimpa `CLAUDE_CODE_PROMPT_CACHE_TTL`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, `ENABLE_PROMPT_CACHING_1H`, serta pengaturan `promptCacheTtl` dan `subagentPromptCacheTtl` |476| `FORCE_PROMPT_CACHING_5M` | Atur ke `1` untuk memaksa TTL cache prompt 5 menit bahkan saat TTL 1 jam seharusnya berlaku. Menimpa `CLAUDE_CODE_PROMPT_CACHE_TTL`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, `ENABLE_PROMPT_CACHING_1H`, serta pengaturan `promptCacheTtl` dan `subagentPromptCacheTtl` |

474| `HTTP_PROXY` | Tentukan server proxy HTTP untuk koneksi jaringan |477| `HTTP_PROXY` | Tentukan server proxy HTTP untuk koneksi jaringan |

475| `HTTPS_PROXY` | Tentukan server proxy HTTPS untuk koneksi jaringan |478| `HTTPS_PROXY` | Tentukan server proxy HTTPS untuk koneksi jaringan |

476| `IS_DEMO` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk mengaktifkan mode demo: menyembunyikan email dan nama organisasi Anda dari header dan output `/status`, serta melewati onboarding. **Mengaturnya ke `0` atau `false` tetap mengaktifkan mode demo**, tidak seperti sebagian besar variabel on/off; hapus pengaturan variabel untuk menonaktifkannya. Berguna saat melakukan streaming atau merekam sesi |479| `IS_DEMO` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk mengaktifkan mode demo: menyembunyikan email dan nama organisasi Anda dari header dan output `/status`, serta melewati onboarding. **Mengaturnya ke `0` atau `false` tetap mengaktifkan mode demo**, tidak seperti sebagian besar variabel on/off; hapus pengaturan variabel untuk mematikannya. Berguna saat melakukan streaming atau merekam sesi |

477| `MAX_MCP_OUTPUT_TOKENS` | Jumlah maksimum token yang diizinkan dalam respons tool MCP (default: 25000). Claude Code menampilkan peringatan saat output melebihi 10.000 token. Tool yang mendeklarasikan [`anthropic/maxResultSizeChars`](/docs/id/mcp#raise-the-limit-for-a-specific-tool) menggunakan batas karakter tersebut untuk konten teks, tetapi konten gambar dari tool tersebut tetap tunduk pada variabel ini. Hasil teks yang berhasil dan lebih panjang dari 50.000 karakter dari tool tanpa anotasi tersebut [disimpan ke file](/docs/id/mcp#mcp-output-limits-and-warnings) terlepas dari variabel ini |480| `MAX_MCP_OUTPUT_TOKENS` | Jumlah maksimum token yang diizinkan dalam respons tool MCP (default: 25000). Claude Code menampilkan peringatan saat output melebihi 10.000 token. Tool yang mendeklarasikan [`anthropic/maxResultSizeChars`](/docs/id/mcp#raise-the-limit-for-a-specific-tool) menggunakan batas karakter tersebut untuk konten teks sebagai gantinya, tetapi konten gambar dari tool tersebut tetap tunduk pada variabel ini. Hasil teks yang berhasil dan lebih panjang dari 50.000 karakter dari tool tanpa anotasi tersebut [disimpan ke file](/docs/id/mcp#mcp-output-limits-and-warnings) terlepas dari variabel ini |

478| `MAX_STRUCTURED_OUTPUT_RETRIES` | Jumlah percobaan yang diizinkan Claude Code saat respons model gagal validasi terhadap [`--json-schema`](/docs/id/cli-reference#cli-flags) dalam mode non-interaktif dengan flag `-p`; setelah sejumlah percobaan gagal tersebut tanpa output yang valid, eksekusi gagal. Batas yang sama berlaku saat output terstruktur subagent [workflow](/docs/id/workflows) gagal validasi. Default 5, yaitu satu percobaan pertama ditambah empat retry |481| `MAX_STRUCTURED_OUTPUT_RETRIES` | Jumlah percobaan yang diizinkan Claude Code saat respons model gagal validasi terhadap [`--json-schema`](/docs/id/cli-reference#cli-flags) dalam mode non-interaktif dengan flag `-p`; setelah sebanyak itu percobaan gagal tanpa output yang valid, proses gagal. Batas yang sama berlaku saat output terstruktur subagent [workflow](/docs/id/workflows) gagal validasi. Default-nya 5, yaitu satu percobaan pertama ditambah empat retry |

479| `MAX_THINKING_TOKENS` | Anggaran token tetap untuk [extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking). Claude Code membatasinya pada satu token di bawah token output maksimum permintaan dan tidak pernah di bawah 1.024. Lihat `CLAUDE_CODE_MAX_OUTPUT_TOKENS` untuk cara batas tersebut diatur. Saat tidak diatur dan thinking diaktifkan, model dengan [penalaran adaptif](/docs/id/model-config#adjust-effort-level) memilih kedalaman thinking-nya sendiri, dan model lain menggunakan batas tersebut. Atur ke `0` untuk menonaktifkan thinking pada Anthropic API, kecuali pada Opus 5.5, Sonnet 5.5, dan model Fable, yang thinking-nya tidak dapat dimatikan. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations), `0` justru menghilangkan parameter `thinking`. Dengan thinking dimatikan pada Anthropic API, Claude Code mengirim effort `high` alih-alih tingkat yang lebih tinggi ke model yang diketahuinya [tidak menerima kombinasi tersebut](/docs/id/errors#effort-isnt-available-with-thinking-turned-off), seperti Opus 5. Untuk nilai positif, Claude Code mengabaikan angka itu sendiri pada model penalaran adaptif, kecuali saat `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` mematikan penalaran adaptif |482| `MAX_THINKING_TOKENS` | Anggaran token tetap untuk [extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking). Claude Code membatasinya pada satu token di bawah token output maksimum permintaan dan tidak pernah di bawah 1.024. Lihat `CLAUDE_CODE_MAX_OUTPUT_TOKENS` untuk cara batas tersebut diatur. Saat tidak diatur dan thinking diaktifkan, model dengan [penalaran adaptif](/docs/id/model-config#adjust-effort-level) memilih kedalaman thinking-nya sendiri, dan model lain menggunakan batas tersebut. Atur ke `0` untuk menonaktifkan thinking pada Anthropic API, kecuali pada Opus 5.5, Sonnet 5.5, Haiku 5.5, dan model Fable, yang thinking-nya tidak dapat dimatikan. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations), `0` menghilangkan parameter `thinking` sebagai gantinya. Dengan thinking dimatikan pada Anthropic API, Claude Code mengirim effort `high` alih-alih tingkat yang lebih tinggi ke model yang diketahuinya [tidak menerima kombinasi tersebut](/docs/id/errors#effort-isnt-available-with-thinking-turned-off), seperti Opus 5. Untuk nilai positif, Claude Code mengabaikan angka itu sendiri pada model penalaran adaptif, kecuali saat `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` mematikan penalaran adaptif |

480| `MCP_CLIENT_SECRET` | Client secret OAuth untuk server MCP yang memerlukan [kredensial yang telah dikonfigurasi sebelumnya](/docs/id/mcp#use-pre-configured-oauth-credentials). Menghindari prompt interaktif saat menambahkan server dengan `--client-secret` |483| `MCP_CLIENT_SECRET` | Client secret OAuth untuk server MCP yang memerlukan [kredensial yang telah dikonfigurasi sebelumnya](/docs/id/mcp#use-pre-configured-oauth-credentials). Menghindari prompt interaktif saat menambahkan server dengan `--client-secret` |

481| `MCP_CONNECTION_NONBLOCKING` | Mengontrol apakah startup menunggu server MCP terhubung sebelum kueri pertama. Startup MCP bersifat non-blocking secara default: server terhubung di latar belakang dan tool-nya menjadi tersedia saat selesai. Atur ke `0` agar Claude Code menunggu server terhubung sebelum kueri pertama. Server yang dikonfigurasi dengan [`alwaysLoad: true`](/docs/id/mcp#exempt-a-server-from-deferral) tetap membuat startup menunggu, kecuali saat disajikan dari [discovery cache](/docs/id/mcp#server-status-detail), karena tool-nya harus ada saat prompt pertama dibuat. Dalam mode non-interaktif (`-p`) tanpa `--input-format stream-json`, Claude Code juga menunggu server yang masih tertunda sebelum giliran pertama terlepas dari variabel ini. Saat Anda meneruskan [`--mcp-config`](/docs/id/cli-reference#cli-flags) secara eksplisit, penantian memiliki tenggat yang lebih lama; lihat entri flag tersebut untuk pengecualian server yang di-cache |484| `MCP_CONNECTION_NONBLOCKING` | Mengontrol apakah startup menunggu server MCP terhubung sebelum kueri pertama. Startup MCP bersifat non-blocking secara default: server terhubung di latar belakang dan tool-nya menjadi tersedia saat selesai. Atur ke `0` agar Claude Code menunggu server terhubung sebelum kueri pertama. Server yang dikonfigurasi dengan [`alwaysLoad: true`](/docs/id/mcp#exempt-a-server-from-deferral) tetap membuat startup menunggu, kecuali saat dilayani dari [discovery cache](/docs/id/mcp#server-status-detail), karena tool-nya harus ada saat prompt pertama dibuat. Dalam mode non-interaktif (`-p`) tanpa `--input-format stream-json`, Claude Code juga menunggu server yang masih tertunda sebelum giliran pertama terlepas dari variabel ini. Saat Anda meneruskan [`--mcp-config`](/docs/id/cli-reference#cli-flags) secara eksplisit, penantian memiliki tenggat yang lebih panjang; lihat entri flag tersebut untuk pengecualian server yang di-cache |

482| `MCP_CONNECT_TIMEOUT_MS` | Berapa lama startup MCP yang memblokir menunggu, dalam milidetik, batch koneksi sebelum mengambil snapshot daftar tool (default: 5000). Berlaku saat `MCP_CONNECTION_NONBLOCKING=0` atau untuk server yang ditandai [`alwaysLoad: true`](/docs/id/mcp#exempt-a-server-from-deferral). Server yang masih tertunda saat tenggat tetap melanjutkan koneksi di latar belakang. Berbeda dari `MCP_TIMEOUT`, yang membatasi upaya koneksi server individual |485| `MCP_CONNECT_TIMEOUT_MS` | Berapa lama startup MCP yang blocking menunggu, dalam milidetik, untuk batch koneksi sebelum mengambil snapshot daftar tool (default: 5000). Berlaku saat `MCP_CONNECTION_NONBLOCKING=0` atau untuk server yang ditandai [`alwaysLoad: true`](/docs/id/mcp#exempt-a-server-from-deferral). Server yang masih tertunda saat tenggat terus terhubung di latar belakang. Berbeda dari `MCP_TIMEOUT`, yang membatasi upaya koneksi masing-masing server |

483| `MCP_DISCOVERY_CACHE` | Mengaktifkan atau menonaktifkan [discovery cache MCP](/docs/id/mcp#server-status-detail). Dengan cache aktif, server HTTP atau SSE jarak jauh yang pernah Anda gunakan sebelumnya dapat menampilkan [status `cached`](/docs/id/mcp#server-status-detail), dan Claude Code menghubungkannya pada panggilan tool pertamanya alih-alih saat startup. Cache nonaktif secara default kecuali rollout bertahap telah mengaktifkannya untuk akun Anda. Atur ke `1` untuk mengaktifkannya, atau `0` untuk tetap menonaktifkannya bahkan saat rollout telah mengaktifkannya. Sebelum v2.1.238, cache aktif secara default. Status `cached` memerlukan Claude Code v2.1.221 atau lebih baru |486| `MCP_DISCOVERY_CACHE` | Mengaktifkan atau menonaktifkan [discovery cache MCP](/docs/id/mcp#server-status-detail). Dengan cache aktif, server HTTP atau SSE jarak jauh yang pernah Anda gunakan sebelumnya dapat menampilkan [status `cached`](/docs/id/mcp#server-status-detail), dan Claude Code menghubungkannya pada panggilan tool pertamanya alih-alih saat startup. Cache nonaktif secara default kecuali rollout bertahap telah mengaktifkannya untuk akun Anda. Atur ke `1` untuk mengaktifkannya, atau `0` untuk tetap menonaktifkannya bahkan saat rollout telah mengaktifkannya. Sebelum v2.1.238, cache aktif secara default. Status `cached` memerlukan Claude Code v2.1.221 atau lebih baru |

484| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | Usia maksimum, dalam detik, dari entri [discovery cache](/docs/id/mcp#server-status-detail) (default: 14400, atau 4 jam). Pada startup di mana entri lebih tua dari itu, Claude Code membuangnya dan menghubungkan server saat startup, seperti saat cache nonaktif. Claude Code membatasi nilainya hingga 7 hari. Sebelum v2.1.238, default-nya adalah 86400, atau 24 jam, dan Claude Code tidak membatasi nilainya |487| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | Usia maksimum, dalam detik, dari entri [discovery cache](/docs/id/mcp#server-status-detail) (default: 14400, atau 4 jam). Pada startup di mana entri lebih tua dari itu, Claude Code membuangnya dan menghubungkan server saat startup, seperti saat cache nonaktif. Claude Code membatasi nilai ini hingga 7 hari. Sebelum v2.1.238, default-nya adalah 86400, atau 24 jam, dan Claude Code tidak membatasi nilainya |

485| `MCP_DISCOVERY_CACHE_STRIKES` | Pada startup di mana entri [discovery cache](/docs/id/mcp#server-status-detail) lebih tua dari `MCP_DISCOVERY_CACHE_TTL_S`, Claude Code menyegarkannya di latar belakang. Variabel ini mengatur berapa banyak penyegaran berturut-turut yang boleh gagal sebelum Claude Code membuang entri dan menghubungkan server pada startup berikutnya (default: 1). Naikkan nilainya jika koneksi jaringan Anda sesekali terputus, agar satu penyegaran yang gagal tidak membuang entri. Memerlukan Claude Code v2.1.238 atau lebih baru |488| `MCP_DISCOVERY_CACHE_STRIKES` | Pada startup di mana entri [discovery cache](/docs/id/mcp#server-status-detail) lebih tua dari `MCP_DISCOVERY_CACHE_TTL_S`, Claude Code menyegarkannya di latar belakang. Variabel ini mengatur berapa banyak penyegaran berturut-turut yang boleh gagal sebelum Claude Code membuang entri dan menghubungkan server pada startup berikutnya sebagai gantinya (default: 1). Naikkan jika koneksi jaringan Anda sesekali terputus, sehingga satu penyegaran yang gagal tidak membuang entri. Memerlukan Claude Code v2.1.238 atau lebih baru |

486| `MCP_DISCOVERY_CACHE_TTL_S` | Jumlah detik Claude Code menggunakan entri [discovery cache](/docs/id/mcp#server-status-detail) tanpa menyegarkannya (default: 900). Pada startup di mana entri lebih tua dari itu, Claude Code tetap menggunakannya tetapi menyegarkannya di latar belakang. Setelah entri lebih tua dari `MCP_DISCOVERY_CACHE_MAX_STALE_S`, Claude Code membuangnya. Claude Code membatasi nilainya hingga `MCP_DISCOVERY_CACHE_MAX_STALE_S`, yang secara default adalah 4 jam. Sebelum v2.1.238, Claude Code tidak membatasi nilainya |489| `MCP_DISCOVERY_CACHE_TTL_S` | Jumlah detik di mana Claude Code menggunakan entri [discovery cache](/docs/id/mcp#server-status-detail) tanpa menyegarkannya (default: 900). Pada startup di mana entri lebih tua dari itu, Claude Code tetap menggunakannya tetapi menyegarkannya di latar belakang. Setelah entri lebih tua dari `MCP_DISCOVERY_CACHE_MAX_STALE_S`, Claude Code membuangnya sebagai gantinya. Claude Code membatasi nilai ini hingga `MCP_DISCOVERY_CACHE_MAX_STALE_S`, yaitu 4 jam secara default. Sebelum v2.1.238, Claude Code tidak membatasi nilainya |

487| `MCP_OAUTH_CALLBACK_PORT` | Port tetap untuk callback pengalihan OAuth, sebagai alternatif `--callback-port` saat menambahkan server MCP dengan [kredensial yang telah dikonfigurasi sebelumnya](/docs/id/mcp#use-pre-configured-oauth-credentials) |490| `MCP_OAUTH_CALLBACK_PORT` | Port tetap untuk callback redirect OAuth, sebagai alternatif untuk `--callback-port` saat menambahkan server MCP dengan [kredensial yang telah dikonfigurasi sebelumnya](/docs/id/mcp#use-pre-configured-oauth-credentials) |

488| `MCP_PROTOCOL_NEGOTIATION` | Hanya pada [runtime klien MCP v2](/docs/id/mcp#mcp-client-runtimes), apakah Claude Code memeriksa server untuk revisi protokol MCP 2026-07-28. Atur `auto` untuk memeriksa server HTTP, konektor claude.ai, dan stdio, atau `legacy` untuk tidak memeriksa satu pun. Dengan variabel tidak diatur, Claude Code memeriksa server yang dijelaskan di [Runtime klien MCP](/docs/id/mcp#mcp-client-runtimes). Nilai lain apa pun diabaikan dengan peringatan di log debug. Memerlukan Claude Code v2.1.221 atau lebih baru |491| `MCP_PROTOCOL_NEGOTIATION` | Hanya pada [runtime klien MCP v2](/docs/id/mcp#mcp-client-runtimes), apakah Claude Code memeriksa server untuk revisi protokol MCP 2026-07-28. Atur `auto` untuk memeriksa server HTTP, konektor claude.ai, dan stdio, atau `legacy` untuk tidak memeriksa satu pun. Dengan variabel tidak diatur, Claude Code memeriksa server yang dijelaskan di bawah [Runtime klien MCP](/docs/id/mcp#mcp-client-runtimes). Nilai lain apa pun diabaikan dengan peringatan di log debug. Memerlukan Claude Code v2.1.221 atau lebih baru |

489| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Jumlah maksimum server MCP jarak jauh (HTTP/SSE) yang dihubungkan secara paralel selama startup (default: 20) |492| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | Jumlah maksimum server MCP jarak jauh (HTTP/SSE) yang dihubungkan secara paralel selama startup (default: 20) |

490| `MCP_SDK_GENERATION` | Menetapkan [runtime klien MCP](/docs/id/mcp#mcp-client-runtimes) mana yang digunakan proses ini untuk terhubung ke server MCP: `v1`, dibangun di atas MCP TypeScript SDK 1.x, atau `v2`, dibangun di atas [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Tanpa variabel ini, Claude Code menggunakan v2, dimulai dengan versi yang tercantum di bagian tersebut. Pada Claude Code v2.1.221 atau lebih baru, runtime v2 memeriksa issuer yang dikembalikan server OAuth MCP dalam respons otorisasinya dan menggagalkan proses masuk dengan error yang diawali `Issuer mismatch in authorization response` jika tidak cocok. Runtime v1 tidak menjalankan pemeriksaan ini. Jika Anda mengatur nilai yang tidak dikenali, Claude Code mengabaikannya dan menulis peringatan ke log debug. Claude Code membaca nilai ini sekali per proses. Memerlukan Claude Code v2.1.218 atau lebih baru |493| `MCP_SDK_GENERATION` | Tetapkan [runtime klien MCP](/docs/id/mcp#mcp-client-runtimes) mana yang digunakan proses ini untuk terhubung ke server MCP: `v1`, dibangun di atas MCP TypeScript SDK 1.x, atau `v2`, dibangun di atas [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/). Tanpa variabel ini, Claude Code menggunakan v2, mulai dari versi yang tercantum di bagian tersebut. Pada Claude Code v2.1.221 atau lebih baru, runtime v2 memeriksa issuer yang dikembalikan server OAuth MCP dalam respons otorisasinya dan menggagalkan proses masuk dengan error yang diawali `Issuer mismatch in authorization response` saat tidak cocok. Runtime v1 tidak menjalankan pemeriksaan ini. Jika Anda mengatur nilai yang tidak dikenali, Claude Code mengabaikannya dan menulis peringatan ke log debug. Claude Code membaca nilai ini sekali per proses. Memerlukan Claude Code v2.1.218 atau lebih baru |

491| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Jumlah maksimum server MCP lokal (stdio) yang dihubungkan secara paralel selama startup (default: 3) |494| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Jumlah maksimum server MCP lokal (stdio) yang dihubungkan secara paralel selama startup (default: 3) |

492| `MCP_TIMEOUT` | Timeout dalam milidetik untuk startup server MCP (default: 30000, atau 30 detik) |495| `MCP_TIMEOUT` | Timeout dalam milidetik untuk startup server MCP (default: 30000, atau 30 detik) |

493| `MCP_TOOL_TIMEOUT` | Timeout dalam milidetik untuk eksekusi tool MCP (default: 100000000, sekitar 28 jam). Untuk server HTTP, SSE, atau konektor claude.ai, setiap permintaan juga mengalami timeout setelah 60 detik secara default; atur variabel ini, atau `timeout` per server, di atas 60000 untuk menaikkan batas per permintaan tersebut. Nilai yang lebih rendah tetap memperpendek timeout eksekusi tool secara keseluruhan tetapi membiarkan batas per permintaan pada 60 detik. Server stdio dan WebSocket tidak memiliki timer per permintaan. Field `timeout` per server di `.mcp.json` menimpa ini untuk server tersebut. `timeout` per server minimal 1000 juga mengatur jendela idle minimum untuk panggilan tool server tersebut, sehingga `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` tidak pernah membatalkannya lebih cepat; batas bawah ini memerlukan Claude Code v2.1.203 atau lebih baru. Untuk variabel env, nilai di bawah 1000 dibulatkan ke atas menjadi satu detik; untuk field per server, nilai di bawah 1000 diabaikan |496| `MCP_TOOL_TIMEOUT` | Timeout dalam milidetik untuk eksekusi tool MCP (default: 100000000, sekitar 28 jam). Untuk server HTTP, SSE, atau konektor claude.ai, setiap permintaan juga mengalami timeout setelah 60 detik secara default; atur variabel ini, atau `timeout` per server, di atas 60000 untuk menaikkan batas per permintaan tersebut. Nilai yang lebih rendah tetap memperpendek timeout eksekusi tool secara keseluruhan tetapi membiarkan batas per permintaan pada 60 detik. Server stdio dan WebSocket tidak memiliki timer per permintaan. Field `timeout` per server di `.mcp.json` menimpa ini untuk server tersebut. `timeout` per server minimal 1000 juga mengatur jendela idle minimum untuk panggilan tool server tersebut, sehingga `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` tidak pernah membatalkannya lebih awal; batas bawah ini memerlukan Claude Code v2.1.203 atau lebih baru. Untuk variabel env, nilai di bawah 1000 dibulatkan ke satu detik; untuk field per server, nilai di bawah 1000 diabaikan |

494| `NO_PROXY` | Daftar domain dan IP yang permintaannya akan dikirim langsung, melewati proxy |497| `NO_PROXY` | Daftar domain dan IP yang permintaannya akan dikirim secara langsung, melewati proxy |

495| `OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT` | Batas standar OpenTelemetry SDK untuk panjang nilai atribut. Claude Code membatasi atribut telemetri yang memuat konten pada nilai yang lebih kecil antara ini dan `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH`, sehingga penanda pemotongan tetap dalam batas SDK. Claude Code membaca varian `OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT` dan `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT` dengan cara yang sama, dan nilai terkecil yang diatur berlaku untuk semua sinyal. Memerlukan Claude Code v2.1.214 atau lebih baru. Lihat [Pemantauan](/docs/id/monitoring-usage#common-configuration-variables) |498| `OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT` | Batas standar OpenTelemetry SDK untuk panjang nilai atribut. Claude Code membatasi atribut telemetri yang memuat konten pada nilai yang lebih kecil antara ini dan `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH`, sehingga penanda pemotongan tetap berada dalam batas SDK. Claude Code membaca varian `OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT` dan `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT` dengan cara yang sama, dan nilai terkecil yang diatur berlaku untuk semua sinyal. Memerlukan Claude Code v2.1.214 atau lebih baru. Lihat [Monitoring](/docs/id/monitoring-usage#common-configuration-variables) |

496| `OTEL_LOG_ASSISTANT_RESPONSES` | Atur ke `1` untuk menyertakan teks respons model pada event log OpenTelemetry `assistant_response`. Saat tidak diatur, Claude Code menggunakan nilai `OTEL_LOG_USER_PROMPTS` sebagai gantinya. Atur ke `0` agar respons tetap disamarkan bahkan saat `OTEL_LOG_USER_PROMPTS` diatur. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.193 atau lebih baru. Lihat [Pemantauan](/docs/id/monitoring-usage#assistant-response-event) |499| `OTEL_LOG_ASSISTANT_RESPONSES` | Atur ke `1` untuk menyertakan teks respons model pada event log OpenTelemetry `assistant_response`. Saat tidak diatur, Claude Code menggunakan nilai `OTEL_LOG_USER_PROMPTS` sebagai gantinya. Atur ke `0` agar respons tetap disamarkan bahkan saat `OTEL_LOG_USER_PROMPTS` diatur. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan dalam [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.193 atau lebih baru. Lihat [Monitoring](/docs/id/monitoring-usage#assistant-response-event) |

497| `OTEL_LOG_MANAGED_SETTINGS` | Atur ke `1` untuk menambahkan pengaturan terkelola yang disamarkan, dan digest SHA-256 dari pengaturan sebelum penyamaran, ke event log OpenTelemetry `managed_settings_resolved`. Nonaktif secara default. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda; nilai di pengaturan proyek atau lokal tidak mengaktifkannya. Memerlukan Claude Code v2.1.274 atau lebih baru. Lihat [Pemantauan](/docs/id/monitoring-usage#managed-settings-resolved-event) |500| `OTEL_LOG_MANAGED_SETTINGS` | Atur ke `1` untuk menambahkan pengaturan terkelola yang telah disamarkan, serta digest SHA-256 dari pengaturan sebelum penyamaran, ke event log OpenTelemetry `managed_settings_resolved`. Nonaktif secara default. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda; nilai di pengaturan proyek atau lokal tidak mengaktifkannya. Memerlukan Claude Code v2.1.274 atau lebih baru. Lihat [Monitoring](/docs/id/monitoring-usage#managed-settings-resolved-event) |

498| `OTEL_LOG_RAW_API_BODIES` | Mengeluarkan JSON permintaan dan respons Anthropic Messages API sebagai event log `api_request_body` / `api_response_body`. Atur ke `1` untuk body inline yang dipotong pada batas konten, atau `file:<dir>` untuk menulis body yang tidak dipotong ke disk dan mengeluarkan path `body_ref` sebagai gantinya. `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` mengonfigurasi batas konten, 60 KB secara default. Nonaktif secara default; body mencakup seluruh riwayat percakapan. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env). Lihat [Pemantauan](/docs/id/monitoring-usage#api-request-body-event) |501| `OTEL_LOG_RAW_API_BODIES` | Keluarkan JSON permintaan dan respons Anthropic Messages API sebagai event log `api_request_body` / `api_response_body`. Atur ke `1` untuk body inline yang dipotong pada batas konten, atau `file:<dir>` untuk menulis body yang tidak dipotong ke disk dan mengeluarkan path `body_ref` sebagai gantinya. `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` mengonfigurasi batas konten, 60 KB secara default. Nonaktif secara default; body mencakup seluruh riwayat percakapan. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan dalam [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env). Lihat [Monitoring](/docs/id/monitoring-usage#api-request-body-event) |

499| `OTEL_LOG_TOOL_CONTENT` | Atur ke `1` untuk menyertakan konten tool dalam event span OpenTelemetry `tool.output`. Atribut span membawa konten tool di bawah [gerbang tersendiri](/docs/id/monitoring-usage#new-context-gates). Memerlukan [tracing](/docs/id/monitoring-usage#traces-beta). Nonaktif secara default untuk melindungi data sensitif. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env), kecuali nilai nonaktif yang dijelaskan di bagian tersebut. Lihat [Pemantauan](/docs/id/monitoring-usage#tool-output-span-event) |502| `OTEL_LOG_TOOL_CONTENT` | Atur ke `1` untuk menyertakan konten tool dalam event span OpenTelemetry `tool.output`. Atribut span membawa konten tool di bawah [gate-nya sendiri](/docs/id/monitoring-usage#new-context-gates). Memerlukan [tracing](/docs/id/monitoring-usage#traces-beta). Nonaktif secara default untuk melindungi data sensitif. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan dalam [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. Lihat [Monitoring](/docs/id/monitoring-usage#tool-output-span-event) |

500| `OTEL_LOG_TOOL_DETAILS` | Atur ke `1` untuk menyertakan argumen input tool; nama server MCP; nama workflow yang dibuat pengguna; string error mentah pada kegagalan tool; `category` penolakan pada event `api_refusal`; nama agent, skill, plugin, dan server MCP yang sebenarnya pada [metrik biaya dan token](/docs/id/monitoring-usage#cost-counter); serta detail tool lainnya dalam metrik, trace, dan log OpenTelemetry. Nonaktif secara default untuk melindungi PII. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env), kecuali nilai nonaktif yang dijelaskan di bagian tersebut. Lihat [Pemantauan](/docs/id/monitoring-usage) |503| `OTEL_LOG_TOOL_DETAILS` | Atur ke `1` untuk menyertakan argumen input tool; nama server MCP; nama workflow yang ditulis pengguna; string error mentah pada kegagalan tool; `category` penolakan pada event `api_refusal`; nama asli agent, skill, plugin, dan server MCP pada [metrik biaya dan token](/docs/id/monitoring-usage#cost-counter); serta detail tool lainnya dalam metrik, trace, dan log OpenTelemetry. Nonaktif secara default untuk melindungi PII. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan dalam [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. Lihat [Monitoring](/docs/id/monitoring-usage) |

501| `OTEL_LOG_USER_PROMPTS` | Atur ke `1` untuk menyertakan teks prompt pengguna dalam trace dan log OpenTelemetry. Nonaktif secara default (prompt disamarkan). Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env), kecuali nilai nonaktif yang dijelaskan di bagian tersebut. Lihat [Pemantauan](/docs/id/monitoring-usage) |504| `OTEL_LOG_USER_PROMPTS` | Atur ke `1` untuk menyertakan teks prompt pengguna dalam trace dan log OpenTelemetry. Nonaktif secara default (prompt disamarkan). Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan dalam [pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. Lihat [Monitoring](/docs/id/monitoring-usage) |

502| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Atur ke `false` untuk mengecualikan UUID akun dari atribut metrik (default: disertakan). Lihat [Pemantauan](/docs/id/monitoring-usage) |505| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Atur ke `false` untuk mengecualikan UUID akun dari atribut metrik (default: disertakan). Lihat [Monitoring](/docs/id/monitoring-usage) |

503| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | Atur ke `true` untuk menyertakan entrypoint sesi dalam atribut metrik (default: dikecualikan). Ditambahkan di v2.1.152. Lihat [Pemantauan](/docs/id/monitoring-usage) |506| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | Atur ke `true` untuk menyertakan entrypoint sesi dalam atribut metrik (default: dikecualikan). Ditambahkan di v2.1.152. Lihat [Monitoring](/docs/id/monitoring-usage) |

504| `OTEL_METRICS_INCLUDE_REPOSITORY` | Atur ke `true` untuk menandai metrik dan event OpenTelemetry dengan atribut `vcs.*` yang mengidentifikasi repositori sesi (default: dikecualikan). Memerlukan Claude Code v2.1.269 atau lebih baru. Lihat [Atribut repositori](/docs/id/monitoring-usage#repository-attributes) |507| `OTEL_METRICS_INCLUDE_REPOSITORY` | Atur ke `true` untuk menandai metrik dan event OpenTelemetry dengan atribut `vcs.*` yang mengidentifikasi repositori sesi (default: dikecualikan). Memerlukan Claude Code v2.1.269 atau lebih baru. Lihat [Atribut repositori](/docs/id/monitoring-usage#repository-attributes) |

505| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | Mulai v2.1.161, Claude Code melampirkan kunci `OTEL_RESOURCE_ATTRIBUTES` ke label datapoint metrik. Atur ke `false` untuk mengecualikannya (default: disertakan). Lihat [Pemantauan](/docs/id/monitoring-usage#multi-team-organization-support) |508| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | Sejak v2.1.161, Claude Code melampirkan key `OTEL_RESOURCE_ATTRIBUTES` ke label datapoint metrik. Atur ke `false` untuk mengecualikannya (default: disertakan). Lihat [Monitoring](/docs/id/monitoring-usage#multi-team-organization-support) |

506| `OTEL_METRICS_INCLUDE_SESSION_ID` | Atur ke `false` untuk mengecualikan ID sesi dari atribut metrik (default: disertakan). Lihat [Pemantauan](/docs/id/monitoring-usage) |509| `OTEL_METRICS_INCLUDE_SESSION_ID` | Atur ke `false` untuk mengecualikan ID sesi dari atribut metrik (default: disertakan). Lihat [Monitoring](/docs/id/monitoring-usage) |

507| `OTEL_METRICS_INCLUDE_VERSION` | Atur ke `true` untuk menyertakan versi Claude Code dalam atribut metrik (default: dikecualikan). Lihat [Pemantauan](/docs/id/monitoring-usage) |510| `OTEL_METRICS_INCLUDE_VERSION` | Atur ke `true` untuk menyertakan versi Claude Code dalam atribut metrik (default: dikecualikan). Lihat [Monitoring](/docs/id/monitoring-usage) |

508| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Menimpa anggaran karakter untuk metadata skill yang ditampilkan ke [tool Skill](/docs/id/skills#control-who-invokes-a-skill). Anggaran diskalakan secara dinamis sebesar 1% dari context window, dengan fallback 8.000 karakter. Nama lama dipertahankan untuk kompatibilitas mundur |511| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Menimpa anggaran karakter untuk metadata skill yang ditampilkan ke [tool Skill](/docs/id/skills#control-who-invokes-a-skill). Anggaran ini diskalakan secara dinamis pada 1% dari context window, dengan fallback 8.000 karakter. Nama lama dipertahankan untuk kompatibilitas mundur |

509| `TASK_MAX_OUTPUT_LENGTH` | Dihapus di v2.1.277 dan kini tidak berpengaruh, bersama dengan tool `TaskOutput` yang ukurannya diatur olehnya. Sebelumnya mengatur jumlah maksimum karakter output [tugas latar belakang](/docs/id/tools-reference#background-commands) yang disimpan oleh tool `TaskOutput`. Claude kini membaca file output tugas latar belakang dengan `Read` |512| `TASK_MAX_OUTPUT_LENGTH` | Dihapus di v2.1.277 dan sekarang tidak berpengaruh, bersama dengan tool `TaskOutput` yang ukurannya diatur olehnya. Sebelumnya mengatur jumlah maksimum karakter output [tugas latar belakang](/docs/id/tools-reference#background-commands) yang disimpan oleh tool `TaskOutput`. Claude membaca file output tugas latar belakang dengan `Read` sebagai gantinya |

510| `USE_BUILTIN_RIPGREP` | Atur ke `0` untuk menggunakan `rg` yang terinstal di sistem alih-alih `rg` yang disertakan dengan Claude Code |513| `USE_BUILTIN_RIPGREP` | Atur ke `0` untuk menggunakan `rg` yang terinstal di sistem alih-alih `rg` yang disertakan dengan Claude Code |

511| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Menimpa region untuk Claude 3.5 Haiku saat menggunakan Google Cloud's Agent Platform |514| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | Menimpa region untuk Claude 3.5 Haiku saat menggunakan Google Cloud's Agent Platform |

512| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Menimpa region untuk Claude 3.5 Sonnet saat menggunakan Google Cloud's Agent Platform |515| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Menimpa region untuk Claude 3.5 Sonnet saat menggunakan Google Cloud's Agent Platform |


527| `VERTEX_REGION_CLAUDE_FABLE_5` | Menimpa region untuk Claude Fable 5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.170 |530| `VERTEX_REGION_CLAUDE_FABLE_5` | Menimpa region untuk Claude Fable 5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.170 |

528| `VERTEX_REGION_CLAUDE_FABLE_5_1` | Menimpa region untuk Claude Fable 5.1 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.257 |531| `VERTEX_REGION_CLAUDE_FABLE_5_1` | Menimpa region untuk Claude Fable 5.1 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.257 |

529| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | Menimpa region untuk Claude Haiku 4.5 saat menggunakan Google Cloud's Agent Platform |532| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | Menimpa region untuk Claude Haiku 4.5 saat menggunakan Google Cloud's Agent Platform |

533| `VERTEX_REGION_CLAUDE_HAIKU_5_5` | Menimpa region untuk Claude Haiku 5.5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.293 |

530 534 

531Variabel exporter OpenTelemetry standar (`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES`, dan varian khusus sinyal) juga didukung. Lihat [Pemantauan](/docs/id/monitoring-usage) untuk detail konfigurasi.535Variabel exporter OpenTelemetry standar (`OTEL_METRICS_EXPORTER`, `OTEL_LOGS_EXPORTER`, `OTEL_EXPORTER_OTLP_ENDPOINT`, `OTEL_EXPORTER_OTLP_PROTOCOL`, `OTEL_EXPORTER_OTLP_HEADERS`, `OTEL_METRIC_EXPORT_INTERVAL`, `OTEL_RESOURCE_ATTRIBUTES`, dan varian khusus sinyal) juga didukung. Lihat [Monitoring](/docs/id/monitoring-usage) untuk detail konfigurasi.

532 536 

533Atur `CLAUDE_CODE_ENABLE_TELEMETRY` dan variabel OpenTelemetry yang mengaktifkan ekspor, memilih tujuannya, atau menangkap konten di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Claude Code [mengabaikannya di pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env), kecuali nilai nonaktif yang dijelaskan di bagian tersebut. `OTEL_RESOURCE_ATTRIBUTES` serta variabel interval ekspor, timeout, dan kompresi, seperti `OTEL_METRIC_EXPORT_INTERVAL`, tetap berlaku dari pengaturan proyek dan lokal.537Atur `CLAUDE_CODE_ENABLE_TELEMETRY` dan variabel OpenTelemetry yang mengaktifkan ekspor, memilih tujuannya, atau merekam konten di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Claude Code [mengabaikannya dalam pengaturan proyek dan lokal](/docs/id/settings-reference#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. `OTEL_RESOURCE_ATTRIBUTES` serta variabel interval ekspor, timeout, dan kompresi, seperti `OTEL_METRIC_EXPORT_INTERVAL`, tetap berlaku dari pengaturan proyek dan lokal.

534 538 

535<h2 id="what-the-subprocess-environment-scrub-removes">539<h2 id="what-the-subprocess-environment-scrub-removes">

536 Apa yang dihapus oleh pembersihan lingkungan subprocess540 Apa yang dihapus oleh pembersihan lingkungan subprocess

errors.md +3 −4

Details

197| `Cloud sessions cannot be created from a --restricted session` | [Command-line errors](#cloud-sessions-cannot-be-created-from-a-restricted-session) |197| `Cloud sessions cannot be created from a --restricted session` | [Command-line errors](#cloud-sessions-cannot-be-created-from-a-restricted-session) |

198| `Cloud sessions are disabled by your organization's policy` | [Command-line errors](#cloud-sessions-are-disabled-by-your-organizations-policy) |198| `Cloud sessions are disabled by your organization's policy` | [Command-line errors](#cloud-sessions-are-disabled-by-your-organizations-policy) |

199| `Couldn't verify your organization's policy for cloud sessions` | [Command-line errors](#cloud-sessions-are-disabled-by-your-organizations-policy) |199| `Couldn't verify your organization's policy for cloud sessions` | [Command-line errors](#cloud-sessions-are-disabled-by-your-organizations-policy) |

200| `Cloud sessions need a claude.ai sign-in` | [Unable to get organization UUID](/docs/id/claude-code-on-the-web#unable-to-get-organization-uuid) |

200| `Error: --json-schema is not a valid JSON Schema` | [Command-line errors](#the-json-schema-value-is-not-a-valid-json-schema) |201| `Error: --json-schema is not a valid JSON Schema` | [Command-line errors](#the-json-schema-value-is-not-a-valid-json-schema) |

201| `Error: Invalid --agents configuration:` | [Command-line errors](#invalid-agents-configuration) |202| `Error: Invalid --agents configuration:` | [Command-line errors](#invalid-agents-configuration) |

202| `Error: --agents takes a JSON object, or a file path only with --print (-p)` | [Command-line errors](#invalid-agents-configuration) |203| `Error: --agents takes a JSON object, or a file path only with --print (-p)` | [Command-line errors](#invalid-agents-configuration) |


387* Koneksi yang Claude Code deteksi rusak karena komputer Anda tidur di tengah permintaan. Claude Code menghitungnya sebagai dropped connection sesuai aturan di atas; setelah label retry menyebutkan alasan spesifik, dibaca `Connection lost while your computer was asleep`, dan jika giliran berakhir setelah Claude selesai berpikir tetapi sebelum teks atau panggilan tool apa pun, pesan berbunyi `Your computer went to sleep before a response was produced`.388* Koneksi yang Claude Code deteksi rusak karena komputer Anda tidur di tengah permintaan. Claude Code menghitungnya sebagai dropped connection sesuai aturan di atas; setelah label retry menyebutkan alasan spesifik, dibaca `Connection lost while your computer was asleep`, dan jika giliran berakhir setelah Claude selesai berpikir tetapi sebelum teks atau panggilan tool apa pun, pesan berbunyi `Your computer went to sleep before a response was produced`.

388* Stalled response stream, ketika response headers telah tiba tetapi tidak ada respons Claude yang tiba, atau ketika Claude selesai berpikir tetapi belum memulai teks atau panggilan tool apa pun: Claude Code membatalkan koneksi yang macet dan mengeluarkan kembali permintaan paling banyak sekali, di luar anggaran 10-percobaan di atas. Jika respons macet untuk kedua kalinya setelah Claude selesai berpikir tetapi sebelum teks atau panggilan tool apa pun, Claude Code mengakhiri giliran dengan `The response stalled before a response was produced`.389* Stalled response stream, ketika response headers telah tiba tetapi tidak ada respons Claude yang tiba, atau ketika Claude selesai berpikir tetapi belum memulai teks atau panggilan tool apa pun: Claude Code membatalkan koneksi yang macet dan mengeluarkan kembali permintaan paling banyak sekali, di luar anggaran 10-percobaan di atas. Jika respons macet untuk kedua kalinya setelah Claude selesai berpikir tetapi sebelum teks atau panggilan tool apa pun, Claude Code mengakhiri giliran dengan `The response stalled before a response was produced`.

389* Streaming request yang API tidak pernah jawab dengan response headers, pada koneksi di mana [first-byte deadline berjalan](/docs/id/network-config#streaming-idle-watchdogs): Claude Code membatalkannya pada deadline dan mengirimnya kembali paling banyak sekali per model request, dalam anggaran retry, kemudian mengakhiri giliran dengan [No response from API](#no-response-from-api) jika percobaan itu juga tidak dijawab. Pada koneksi lain, permintaan menunggu `API_TIMEOUT_MS`. Ketika Anda menetapkan `CLAUDE_CODE_RETRY_WATCHDOG`, batas satu retry tidak berlaku.390* Streaming request yang API tidak pernah jawab dengan response headers, pada koneksi di mana [first-byte deadline berjalan](/docs/id/network-config#streaming-idle-watchdogs): Claude Code membatalkannya pada deadline dan mengirimnya kembali paling banyak sekali per model request, dalam anggaran retry, kemudian mengakhiri giliran dengan [No response from API](#no-response-from-api) jika percobaan itu juga tidak dijawab. Pada koneksi lain, permintaan menunggu `API_TIMEOUT_MS`. Ketika Anda menetapkan `CLAUDE_CODE_RETRY_WATCHDOG`, batas satu retry tidak berlaku.

391* Respons streaming yang dihentikan oleh filter konten output API sebelum Claude selesai berpikir atau memulai teks atau panggilan tool apa pun. Claude Code mengirim kembali permintaan sekali, dalam anggaran retry, dan menampilkan [Output blocked by content filtering policy](#output-blocked-by-content-filtering-policy) jika filter juga menghentikan respons kedua.

390* Temporary 429 throttles, tetapi bukan `429` spend-limit gateway, yang bukan throttle; lihat [Spend limit reached](#spend-limit-reached).392* Temporary 429 throttles, tetapi bukan `429` spend-limit gateway, yang bukan throttle; lihat [Spend limit reached](#spend-limit-reached).

391 * Ketika Anda masuk dengan langganan claude.ai, ini mencakup 429 throttles yang tidak membawa header kuota paket Anda. Sebelum v2.1.199, Claude Code hanya mencoba ulang throttles tersebut untuk kunci API dan Enterprise sign-ins.393 * Ketika Anda masuk dengan langganan claude.ai, ini mencakup 429 throttles yang tidak membawa header kuota paket Anda. Sebelum v2.1.199, Claude Code hanya mencoba ulang throttles tersebut untuk kunci API dan Enterprise sign-ins.

392* Permintaan ditolak karena input plus `max_tokens` melebihi context limit. Mengirimnya kembali tanpa perubahan akan gagal dengan cara yang sama, jadi Claude Code mencoba ulang dengan `max_tokens` yang dikurangi, dan berhenti mencoba ulang dan melakukan compact sebagai gantinya dalam dua kasus:394* Permintaan ditolak karena input plus `max_tokens` melebihi context limit. Mengirimnya kembali tanpa perubahan akan gagal dengan cara yang sama, jadi Claude Code mencoba ulang dengan `max_tokens` yang dikurangi, dan berhenti mencoba ulang dan melakukan compact sebagai gantinya dalam dua kasus:


405* [Amazon Bedrock streaming response dengan unexpected content-type](#bedrock-streaming-response-has-an-unexpected-content-type), karena gateway atau proxy yang menulis ulang respons akan menulis ulang retry dengan cara yang sama. Memerlukan Claude Code v2.1.208 atau lebih baru.407* [Amazon Bedrock streaming response dengan unexpected content-type](#bedrock-streaming-response-has-an-unexpected-content-type), karena gateway atau proxy yang menulis ulang respons akan menulis ulang retry dengan cara yang sama. Memerlukan Claude Code v2.1.208 atau lebih baru.

406* Non-streaming retry dari failed streaming request yang mendapat success status tetapi [no Claude API message in the body](#api-returned-an-empty-or-malformed-response). Claude Code mengakhiri giliran dengan kesalahan itu.408* Non-streaming retry dari failed streaming request yang mendapat success status tetapi [no Claude API message in the body](#api-returned-an-empty-or-malformed-response). Claude Code mengakhiri giliran dengan kesalahan itu.

407* Permintaan yang policy check organisasi Anda tolak, yang muncul sebagai baris `API Error:` yang membawa pesan penolakan. Administrator organisasi Anda menyiapkan check dengan [Inference hooks](https://platform.claude.com/docs/en/manage-claude/inference-hooks), fitur Claude Enterprise, dan pesan berakhir dengan instruksi yang mereka konfigurasi, atau secara default memberi tahu Anda untuk menghubungi mereka. Claude Code tidak mengirim kembali permintaan yang ditolak ke model yang sama atau ke [fallback model](/docs/id/model-config#fallback-model-chains), karena penolakan adalah tentang konten permintaan daripada model. Sebelum v2.1.239, Claude Code dapat mengirim kembali permintaan yang ditolak, tanpa streaming atau pada fallback model yang dikonfigurasi, sebelum menampilkan penolakan kepada Anda.409* Permintaan yang policy check organisasi Anda tolak, yang muncul sebagai baris `API Error:` yang membawa pesan penolakan. Administrator organisasi Anda menyiapkan check dengan [Inference hooks](https://platform.claude.com/docs/en/manage-claude/inference-hooks), fitur Claude Enterprise, dan pesan berakhir dengan instruksi yang mereka konfigurasi, atau secara default memberi tahu Anda untuk menghubungi mereka. Claude Code tidak mengirim kembali permintaan yang ditolak ke model yang sama atau ke [fallback model](/docs/id/model-config#fallback-model-chains), karena penolakan adalah tentang konten permintaan daripada model. Sebelum v2.1.239, Claude Code dapat mengirim kembali permintaan yang ditolak, tanpa streaming atau pada fallback model yang dikonfigurasi, sebelum menampilkan penolakan kepada Anda.

408* Respons yang diblokir oleh filter konten output API. Claude Code langsung menampilkan [Output blocked by content filtering policy](#output-blocked-by-content-filtering-policy) dan tidak mencoba ulang atau mengirim kembali permintaan tersebut.

409 410 

410<h3 id="what-you-see-while-claude-code-retries-or-waits">411<h3 id="what-you-see-while-claude-code-retries-or-waits">

411 Apa yang Anda lihat saat Claude Code mencoba ulang atau menunggu412 Apa yang Anda lihat saat Claude Code mencoba ulang atau menunggu


2299 2300 

2300**Yang harus dilakukan:**2301**Yang harus dilakukan:**

2301 2302 

2302* Ubah ukuran gambar sebelum menempel. API menerima gambar hingga 8000 piksel di tepi terpanjang untuk satu gambar, atau 2000 piksel ketika banyak gambar berada dalam konteks.2303* Ubah ukuran gambar sebelum menempel. API menerima gambar hingga 8000 piksel di tepi terpanjang untuk satu gambar, atau 3000 piksel ketika lebih dari 20 gambar berada dalam konteks.

2303* Ambil tangkapan layar lebih ketat dari wilayah yang relevan bukan layar penuh2304* Ambil tangkapan layar lebih ketat dari wilayah yang relevan bukan layar penuh

2304 2305 

2305<h3 id="unable-to-resize-image">2306<h3 id="unable-to-resize-image">


2905API Error: Output blocked by content filtering policy2906API Error: Output blocked by content filtering policy

2906```2907```

2907 2908 

2908Claude Code menampilkan kesalahan segera setelah pemblokiran tiba dan mengakhiri permintaan di sana. Claude Code tidak mencoba ulang permintaan, mengirimnya ulang tanpa streaming, atau beralih ke [model fallback](/docs/id/model-config#fallback-model-chains). Sebelum v2.1.285, Claude Code dapat mengirim ulang dan mencoba ulang permintaan yang diblokir, terkadang selama beberapa menit, sebelum menampilkan kesalahan kepada Anda.

2909 

2910**Yang harus dilakukan:**2909**Yang harus dilakukan:**

2911 2910 

2912* Ubah susunan kata pesan terakhir Anda atau ambil pendekatan berbeda2911* Ubah susunan kata pesan terakhir Anda atau ambil pendekatan berbeda

fast-mode.md +1 −1

Details

88 88 

89Harga mode cepat datar di seluruh jendela konteks 1M token penuh. Untuk tarif Opus standar yang akan dibandingkan, lihat [referensi harga Claude](https://platform.claude.com/docs/id/about-claude/pricing).89Harga mode cepat datar di seluruh jendela konteks 1M token penuh. Untuk tarif Opus standar yang akan dibandingkan, lihat [referensi harga Claude](https://platform.claude.com/docs/id/about-claude/pricing).

90 90 

91Pertama kali Anda mengaktifkan mode cepat dalam percakapan, Anda membayar harga token input tanpa cache mode cepat penuh untuk seluruh konteks percakapan. Semakin dalam Anda berada dalam percakapan, semakin mahal biayanya, jadi mengaktifkan mode cepat dari awal lebih murah. Biaya diterapkan sekali per percakapan, jadi mematikan dan menyalakan kembali mode cepat nanti tidak mengulanginya. Untuk mekanismenya, lihat [bagaimana mode cepat berinteraksi dengan prompt cache](/docs/id/prompt-caching#turning-on-fast-mode).91Pertama kali Anda mengaktifkan fast mode dalam percakapan, Anda membayar harga token input tanpa cache fast mode penuh untuk seluruh konteks percakapan. Semakin dalam Anda berada dalam percakapan, semakin mahal biayanya, jadi mengaktifkan fast mode dari awal lebih murah. Biaya diterapkan sekali per percakapan, jadi mematikan dan menyalakan kembali fast mode nanti tidak mengulanginya. Untuk mekanismenya, lihat [bagaimana fast mode berinteraksi dengan prompt cache](/docs/id/prompt-caching#turning-on-fast-mode).

92 92 

93<h3 id="see-where-fast-mode-spend-appears">93<h3 id="see-where-fast-mode-spend-appears">

94 Lihat di mana pengeluaran mode cepat muncul94 Lihat di mana pengeluaran mode cepat muncul

Details

220</table>220</table>

221 221 

222<span id="fn1" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>1</sup> Di Platform Agent Google Cloud, web search tersedia untuk model Claude 4 dan yang lebih baru.<br />222<span id="fn1" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>1</sup> Di Platform Agent Google Cloud, web search tersedia untuk model Claude 4 dan yang lebih baru.<br />

223<span id="fn2" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>2</sup> Di penyedia ini, auto mode mendukung hanya Claude Sonnet 5 atau yang lebih baru, Opus 4.7 atau yang lebih baru, dan model Fable. Lihat [Konfigurasi Auto mode](/docs/id/auto-mode-config). Untuk mode izin yang dimulai sesi di penyedia ini, lihat [Mode mana yang dimulai sesi](/docs/id/permission-modes#which-mode-a-session-starts-in). Di v2.1.158 hingga v2.1.206, auto mode di penyedia ini juga memerlukan pengaturan `CLAUDE_CODE_ENABLE_AUTO_MODE=1`; v2.1.207 menghapus persyaratan.<br />223<span id="fn2" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>2</sup> Di penyedia ini, auto mode mendukung hanya Claude Sonnet 5 atau yang lebih baru, Opus 4.7 atau yang lebih baru, Haiku 5.5, dan model Fable. Lihat [Konfigurasi Auto mode](/docs/id/auto-mode-config). Untuk mode izin yang dimulai sesi di penyedia ini, lihat [Mode mana yang dimulai sesi](/docs/id/permission-modes#which-mode-a-session-starts-in). Di v2.1.158 hingga v2.1.206, auto mode di penyedia ini juga memerlukan pengaturan `CLAUDE_CODE_ENABLE_AUTO_MODE=1`; v2.1.207 menghapus persyaratan.<br />

224<span id="fn3" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>3</sup> Tunduk pada perjanjian Anda dengan penyedia cloud.<br />224<span id="fn3" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>3</sup> Tunduk pada perjanjian Anda dengan penyedia cloud.<br />

225<span id="fn4" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>4</sup> Dashboard dan API saja. [Metrik kontribusi](/docs/id/analytics#enable-contribution-metrics) memerlukan organisasi Team atau Enterprise claude.ai.<br />225<span id="fn4" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>4</sup> Dashboard dan API saja. [Metrik kontribusi](/docs/id/analytics#enable-contribution-metrics) memerlukan organisasi Team atau Enterprise claude.ai.<br />

226<span id="fn5" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>5</sup> Memerlukan Claude Code v2.1.224 atau yang lebih baru di macOS dan Linux, termasuk Linux di dalam WSL 2. Di Windows asli, memerlukan Claude Code v2.1.234 atau yang lebih baru. Dengan autentikasi kunci API, pesan hanya mesin yang sama. Di Amazon Bedrock, Claude Platform di AWS, Platform Agent Google Cloud, dan Microsoft Foundry, pesan hanya mesin yang sama dan memerlukan Claude Code v2.1.248 atau yang lebih baru. Claude dapat menemukan [sesi Claude Code di web](/docs/id/claude-code-on-the-web) Anda dan sesi Anda di mesin lain hanya dari sesi yang terhubung ke [Remote Control](/docs/id/remote-control). Untuk terhubung, Anda memerlukan masuk claude.ai dan [persyaratan Remote Control lainnya](/docs/id/remote-control#requirements). Lihat [Pesan sesi di mesin lain](/docs/id/cross-session-messaging#message-sessions-on-other-machines).226<span id="fn5" style={{display: 'block', position: 'relative', top: '-120px'}} /><sup>5</sup> Memerlukan Claude Code v2.1.224 atau yang lebih baru di macOS dan Linux, termasuk Linux di dalam WSL 2. Di Windows asli, memerlukan Claude Code v2.1.234 atau yang lebih baru. Dengan autentikasi kunci API, pesan hanya mesin yang sama. Di Amazon Bedrock, Claude Platform di AWS, Platform Agent Google Cloud, dan Microsoft Foundry, pesan hanya mesin yang sama dan memerlukan Claude Code v2.1.248 atau yang lebih baru. Claude dapat menemukan [sesi cloud](/docs/id/claude-code-on-the-web) Anda dan sesi Anda di mesin lain hanya dari sesi yang terhubung ke [Remote Control](/docs/id/remote-control). Untuk terhubung, Anda memerlukan masuk claude.ai dan [persyaratan Remote Control lainnya](/docs/id/remote-control#requirements). Lihat [Pesan sesi di mesin lain](/docs/id/cross-session-messaging#message-sessions-on-other-machines).

227 227 

228<Note>228<Note>

229 Jika Anda melakukan autentikasi melalui [gateway LLM](/docs/id/llm-gateway), ketersediaan fitur cocok dengan penyedia yang mendasarinya yang gateway teruskan, kecuali untuk fitur yang Claude Code sendiri matikan. Kapan pun `ANTHROPIC_BASE_URL` menunjuk ke host selain `api.anthropic.com`, Claude Code mematikan fitur seperti [Remote Control](/docs/id/remote-control#requirements) dan [pengaturan terkelola server](/docs/id/server-managed-settings#platform-availability), apa pun yang gateway teruskan. Beberapa fitur khusus Anthropic seperti [Advisor](/docs/id/advisor) hanya bekerja jika gateway meneruskan permintaan utuh ke API Anthropic.229 Jika Anda melakukan autentikasi melalui [gateway LLM](/docs/id/llm-gateway), ketersediaan fitur cocok dengan penyedia yang mendasarinya yang gateway teruskan, kecuali untuk fitur yang Claude Code sendiri matikan. Kapan pun `ANTHROPIC_BASE_URL` menunjuk ke host selain `api.anthropic.com`, Claude Code mematikan fitur seperti [Remote Control](/docs/id/remote-control#requirements) dan [pengaturan terkelola server](/docs/id/server-managed-settings#platform-availability), apa pun yang gateway teruskan. Beberapa fitur khusus Anthropic seperti [Advisor](/docs/id/advisor) hanya bekerja jika gateway meneruskan permintaan utuh ke API Anthropic.


244 **Dukungan parsial:**244 **Dukungan parsial:**

245 245 

246 * [Desktop](/docs/id/desktop): hanya melalui [Claude Desktop pada 3P](https://claude.com/docs/third-party/claude-desktop/overview)246 * [Desktop](/docs/id/desktop): hanya melalui [Claude Desktop pada 3P](https://claude.com/docs/third-party/claude-desktop/overview)

247 * [Auto mode](/docs/id/auto-mode-config): Sonnet 5 atau yang lebih baru, Opus 4.7 atau yang lebih baru, dan model Fable saja247 * [Auto mode](/docs/id/auto-mode-config): Sonnet 5 atau yang lebih baru, Opus 4.7 atau yang lebih baru, Haiku 5.5, dan model Fable saja

248 * [Pesan lintas sesi](/docs/id/cross-session-messaging): antara sesi Anda di mesin ini saja <sup><a href="#fn5">5</a></sup>248 * [Pesan lintas sesi](/docs/id/cross-session-messaging): antara sesi Anda di mesin ini saja <sup><a href="#fn5">5</a></sup>

249 * [Zero Data Retention](/docs/id/zero-data-retention): tunduk pada perjanjian AWS Anda249 * [Zero Data Retention](/docs/id/zero-data-retention): tunduk pada perjanjian AWS Anda

250 250 


270 270 

271 * [Desktop](/docs/id/desktop): melalui [pengaturan terkelola](https://claude.com/docs/third-party/claude-desktop/configuration) atau [Claude Desktop pada 3P](https://claude.com/docs/third-party/claude-desktop/overview)271 * [Desktop](/docs/id/desktop): melalui [pengaturan terkelola](https://claude.com/docs/third-party/claude-desktop/configuration) atau [Claude Desktop pada 3P](https://claude.com/docs/third-party/claude-desktop/overview)

272 * [Web search](/docs/id/tools-reference#websearch-tool-behavior): model Claude 4 dan yang lebih baru272 * [Web search](/docs/id/tools-reference#websearch-tool-behavior): model Claude 4 dan yang lebih baru

273 * [Auto mode](/docs/id/auto-mode-config): Sonnet 5 atau yang lebih baru, Opus 4.7 atau yang lebih baru, dan model Fable saja273 * [Auto mode](/docs/id/auto-mode-config): Sonnet 5 atau yang lebih baru, Opus 4.7 atau yang lebih baru, Haiku 5.5, dan model Fable saja

274 * [Pesan lintas sesi](/docs/id/cross-session-messaging): antara sesi Anda di mesin ini saja <sup><a href="#fn5">5</a></sup>274 * [Pesan lintas sesi](/docs/id/cross-session-messaging): antara sesi Anda di mesin ini saja <sup><a href="#fn5">5</a></sup>

275 * [Zero Data Retention](/docs/id/zero-data-retention): tunduk pada perjanjian Google Cloud Anda275 * [Zero Data Retention](/docs/id/zero-data-retention): tunduk pada perjanjian Google Cloud Anda

276 276 


284 284 

285 * [Desktop](/docs/id/desktop): hanya melalui [Claude Desktop pada 3P](https://claude.com/docs/third-party/claude-desktop/overview)285 * [Desktop](/docs/id/desktop): hanya melalui [Claude Desktop pada 3P](https://claude.com/docs/third-party/claude-desktop/overview)

286 * [Web search](/docs/id/tools-reference#websearch-tool-behavior): [deployment yang dihosting di Anthropic](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options) saja286 * [Web search](/docs/id/tools-reference#websearch-tool-behavior): [deployment yang dihosting di Anthropic](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options) saja

287 * [Auto mode](/docs/id/auto-mode-config): Sonnet 5 atau yang lebih baru, Opus 4.7 atau yang lebih baru, dan model Fable saja287 * [Auto mode](/docs/id/auto-mode-config): Sonnet 5 atau yang lebih baru, Opus 4.7 atau yang lebih baru, Haiku 5.5, dan model Fable saja

288 * [Pesan lintas sesi](/docs/id/cross-session-messaging): antara sesi Anda di mesin ini saja <sup><a href="#fn5">5</a></sup>288 * [Pesan lintas sesi](/docs/id/cross-session-messaging): antara sesi Anda di mesin ini saja <sup><a href="#fn5">5</a></sup>

289 * [Zero Data Retention](/docs/id/zero-data-retention): tunduk pada perjanjian Azure Anda289 * [Zero Data Retention](/docs/id/zero-data-retention): tunduk pada perjanjian Azure Anda

290 290 

glossary.md +3 −3

Details

130 130 

131File markdown dari instruksi persisten yang Anda tulis untuk Claude, dimuat di awal setiap sesi sebagai pesan pengguna setelah system prompt. Letakkan konvensi proyek, catatan arsitektur, dan aturan "selalu lakukan X" di sini. Project-root CLAUDE.md bertahan [compaction](#compaction) dan dibaca ulang segar dari disk sesudahnya.131File markdown dari instruksi persisten yang Anda tulis untuk Claude, dimuat di awal setiap sesi sebagai pesan pengguna setelah system prompt. Letakkan konvensi proyek, catatan arsitektur, dan aturan "selalu lakukan X" di sini. Project-root CLAUDE.md bertahan [compaction](#compaction) dan dibaca ulang segar dari disk sesudahnya.

132 132 

133Anda dapat menempatkan CLAUDE.md di scope proyek di `./CLAUDE.md` atau `./.claude/CLAUDE.md`, di scope pengguna di `~/.claude/CLAUDE.md`, atau sebagai [managed policy](#managed-settings) untuk organisasi Anda. Semua file yang ditemukan digabungkan ke dalam konteks daripada menimpa satu sama lain, diurutkan dari scope terluas ke paling spesifik. Claude Code juga dapat memuat file [AGENTS.md](#agents-md) proyek, sendiri atau bersama CLAUDE.md.133Anda dapat menempatkan CLAUDE.md di cakupan proyek di `./CLAUDE.md` atau `./.claude/CLAUDE.md`, di cakupan pengguna di `~/.claude/CLAUDE.md`, atau sebagai [managed policy](#managed-settings) untuk organisasi Anda. Semua file yang ditemukan digabungkan ke dalam konteks daripada menimpa satu sama lain, diurutkan dari cakupan terluas ke paling spesifik. Claude Code juga dapat memuat file [AGENTS.md](#agents-md) proyek sebagai pengganti CLAUDE.md.

134 134 

135Pelajari lebih lanjut: [CLAUDE.md files](/docs/id/memory#claude-md-files)135Pelajari lebih lanjut: [CLAUDE.md files](/docs/id/memory#claude-md-files)

136 136 


196 Effort level196 Effort level

197</h3>197</h3>

198 198 

199Pengaturan yang mengontrol adaptive reasoning, yang memungkinkan model memutuskan apakah dan seberapa banyak untuk berpikir pada setiap langkah. Effort yang lebih tinggi berarti lebih banyak thinking tokens dan reasoning yang lebih dalam; effort yang lebih rendah lebih cepat dan lebih murah. Effort didukung pada model Fable, pada Opus 4.6 dan yang lebih baru, serta pada Sonnet 4.6 dan yang lebih baru.199Pengaturan yang mengontrol adaptive reasoning, yang memungkinkan model memutuskan apakah dan seberapa banyak untuk berpikir pada setiap langkah. Effort yang lebih tinggi berarti lebih banyak thinking tokens dan reasoning yang lebih dalam; effort yang lebih rendah lebih cepat dan lebih murah. Effort didukung pada model Fable, pada Opus 4.6 dan yang lebih baru, pada Sonnet 4.6 dan yang lebih baru, serta pada Haiku 5.5.

200 200 

201Pelajari lebih lanjut: [Adjust effort level](/docs/id/model-config#adjust-effort-level)201Pelajari lebih lanjut: [Adjust effort level](/docs/id/model-config#adjust-effort-level)

202 202 


396 Settings layers396 Settings layers

397</h3>397</h3>

398 398 

399Hierarki yang Claude Code baca konfigurasi dari, dalam urutan prioritas dari tertinggi ke terendah: [managed policy](#managed-settings), argumen command-line, local settings di `.claude/settings.local.json`, project settings di `.claude/settings.json`, kemudian user settings di `~/.claude/settings.json`. Array merge di seluruh layer; scalar di layer yang lebih tinggi mengesampingkan yang lebih rendah. Lihat [Settings precedence](/docs/id/settings#settings-precedence).399Hierarki tempat Claude Code membaca konfigurasi, dalam urutan prioritas dari tertinggi ke terendah: [managed policy](#managed-settings), pengaturan yang Anda berikan dengan flag `--settings`, local settings di `.claude/settings.local.json`, project settings di `.claude/settings.json`, kemudian user settings di `~/.claude/settings.json`. Array digabungkan di seluruh lapisan; nilai skalar di lapisan yang lebih tinggi menimpa yang lebih rendah. Lihat [Settings precedence](/docs/id/settings#settings-precedence).

400 400 

401Pelajari lebih lanjut: [Settings files](/docs/id/settings#where-settings-live)401Pelajari lebih lanjut: [Settings files](/docs/id/settings#where-settings-live)

402 402 

Details

210export VERTEX_REGION_CLAUDE_4_6_SONNET=europe-west1210export VERTEX_REGION_CLAUDE_4_6_SONNET=europe-west1

211```211```

212 212 

213Sebagian besar versi model memiliki variabel `VERTEX_REGION_CLAUDE_*` yang sesuai. Lihat [referensi variabel lingkungan](/docs/id/env-vars) untuk daftar lengkap. Periksa [Google Cloud's Agent Platform Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) untuk menentukan model mana yang mendukung titik akhir global versus regional saja.213Sebagian besar versi model memiliki variabel `VERTEX_REGION_CLAUDE_*` yang sesuai. Lihat [referensi environment variable](/docs/id/env-vars#variables) untuk daftar lengkap. Periksa [Google Cloud's Agent Platform Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) untuk menentukan model mana yang mendukung endpoint global versus regional saja.

214 214 

215Jika nilai wilayah tidak berbentuk seperti nama wilayah atau lokasi, Claude Code memperlakukannya sebagai tidak diatur. Misalnya, Claude Code memperlakukan nilai yang berisi garis miring, titik, atau spasi sebagai tidak diatur. Claude Code kembali ke sumber yang berbeda untuk setiap variabel:215Jika nilai wilayah tidak berbentuk seperti nama wilayah atau lokasi, Claude Code memperlakukannya sebagai tidak diatur. Misalnya, Claude Code memperlakukan nilai yang berisi garis miring, titik, atau spasi sebagai tidak diatur. Claude Code kembali ke sumber yang berbeda untuk setiap variabel:

216 216 


364 364 

365* Konfirmasi model diaktifkan di [Model Garden](https://console.cloud.google.com/vertex-ai/model-garden)365* Konfirmasi model diaktifkan di [Model Garden](https://console.cloud.google.com/vertex-ai/model-garden)

366* Verifikasi model tersedia di lokasi yang Anda tentukan. Beberapa model hanya ditawarkan di lokasi `global` atau multi-region seperti `eu` dan `us`, bukan di wilayah spesifik366* Verifikasi model tersedia di lokasi yang Anda tentukan. Beberapa model hanya ditawarkan di lokasi `global` atau multi-region seperti `eu` dan `us`, bukan di wilayah spesifik

367* Jika menggunakan `CLOUD_ML_REGION=global`, periksa bahwa model Anda mendukung titik akhir global di [Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) di bawah "Supported features". Untuk model yang tidak mendukung titik akhir global, baik:367* Jika menggunakan `CLOUD_ML_REGION=global`, periksa bahwa model Anda mendukung endpoint global di [Model Garden](https://console.cloud.google.com/vertex-ai/model-garden) di bawah "Supported features". Untuk model yang tidak mendukung endpoint global, baik:

368 * Tentukan model yang didukung melalui `ANTHROPIC_MODEL` atau `ANTHROPIC_DEFAULT_HAIKU_MODEL`, atau368 * Tentukan model yang didukung melalui `ANTHROPIC_MODEL` atau `ANTHROPIC_DEFAULT_HAIKU_MODEL`, atau

369 * Atur wilayah atau lokasi multi-region menggunakan variabel lingkungan `VERTEX_REGION_<MODEL_NAME>`369 * Atur wilayah atau lokasi multi-region menggunakan variabel `VERTEX_REGION_CLAUDE_*` milik model tersebut, yang tercantum dalam [referensi environment variable](/docs/id/env-vars#variables)

370 370 

371Jika Anda mengalami kesalahan 429:371Jika Anda mengalami kesalahan 429:

372 372 

hooks.md +8 −6

Details

63| `DirectoryAdded` | Ketika direktori kerja ditambahkan di tengah sesi melalui `/add-dir` atau permintaan kontrol SDK `register_repo_root` |63| `DirectoryAdded` | Ketika direktori kerja ditambahkan di tengah sesi melalui `/add-dir` atau permintaan kontrol SDK `register_repo_root` |

64| `FileChanged` | Ketika file yang dipantau berubah di disk. Bidang `matcher` menentukan nama file mana yang dipantau |64| `FileChanged` | Ketika file yang dipantau berubah di disk. Bidang `matcher` menentukan nama file mana yang dipantau |

65| `WorktreeCreate` | Ketika worktree sedang dibuat melalui `--worktree`, `isolation: "worktree"`, atau untuk sesi latar belakang. Menggantikan perilaku git default |65| `WorktreeCreate` | Ketika worktree sedang dibuat melalui `--worktree`, `isolation: "worktree"`, atau untuk sesi latar belakang. Menggantikan perilaku git default |

66| `WorktreeRemove` | Ketika worktree sedang dihapus saat keluar sesi, ketika subagent selesai, atau ketika Anda menghapus sesi latar belakang |66| `WorktreeRemove` | Ketika worktree yang dibuat oleh hook `WorktreeCreate` sedang dihapus |

67| `PreCompact` | Sebelum pemadatan konteks |67| `PreCompact` | Sebelum pemadatan konteks |

68| `PostCompact` | Setelah pemadatan konteks selesai |68| `PostCompact` | Setelah pemadatan konteks selesai |

69| `PreModelSwitch` | Sebelum Claude Code menerapkan pergantian model yang Anda atau klien minta. Dapat memblokir pergantian |69| `PreModelSwitch` | Sebelum Claude Code menerapkan pergantian model yang Anda atau klien minta. Dapat memblokir pergantian |


3274 WorktreeRemove3274 WorktreeRemove

3275</h3>3275</h3>

3276 3276 

3277Berjalan saat worktree sedang dihapus. Ini adalah pasangan pembersihan untuk [WorktreeCreate](#worktreecreate). Event ini dipicu ketika:3277Berjalan ketika Claude Code membersihkan worktree yang dibuat oleh hook [`WorktreeCreate`](#worktreecreate) Anda. Event ini dipicu ketika:

3278 3278 

3279* Anda keluar dari sesi `--worktree` dan memilih untuk menghapusnya3279* Anda keluar dari [sesi worktree](/docs/id/worktrees#start-claude-in-a-worktree) interaktif dan memilih untuk menghapus worktree saat Claude Code meminta Anda

3280* subagent dengan `isolation: "worktree"` selesai3280* Anda keluar dari sesi worktree interaktif yang belum Anda [beri nama](/docs/id/sessions#name-your-sessions), Claude Code tidak menemukan file yang berubah atau tidak terlacak, dan Claude Code menghapus worktree tanpa meminta konfirmasi Anda

3281* Anda menghapus [sesi latar belakang](/docs/id/agent-view#what-deleting-a-session-removes) yang worktree-nya dibuat oleh hook3281* Anda menghapus [sesi latar belakang](/docs/id/agent-view#what-deleting-a-session-removes) yang berjalan di worktree tersebut

3282 

3283Claude Code menggunakan git untuk mencari file yang berubah atau tidak terlacak, sehingga Claude Code tidak menemukan apa pun di worktree yang bukan checkout git atau tidak berada di dalamnya, bahkan ketika direktori tersebut berisi pekerjaan yang belum di-commit. Periksa pekerjaan tersebut di hook WorktreeRemove Anda sebelum hook menghapus apa pun.

3282 3284 

3283Untuk worktree berbasis git, Claude Code menangani pembersihan secara otomatis dengan `git worktree remove`. Jika Anda mengonfigurasi hook WorktreeCreate, pasangkan dengan hook WorktreeRemove untuk mengontrol pembersihan worktree yang dibuatnya:3285Untuk worktree berbasis git, Claude Code menangani pembersihan secara otomatis dengan `git worktree remove`. Jika Anda mengonfigurasi hook WorktreeCreate, pasangkan dengan hook WorktreeRemove untuk mengontrol pembersihan worktree yang dibuatnya:

3284 3286 

3285* **Tanpa hook WorktreeRemove**: saat Anda keluar dari sesi `--worktree` dan memilih penghapusan, Claude Code beralih ke fallback `git worktree remove --force` pada path yang dikembalikan hook WorktreeCreate Anda, sehingga worktree yang dikenali git akan dihapus. Worktree yang tidak dikenali git, misalnya yang dibuat hook Anda dengan sistem kontrol versi non-git, tetap ada di disk. Untuk apa yang terjadi pada worktree yang dibuat hook saat menghapus [sesi latar belakang](/docs/id/agent-view#what-deleting-a-session-removes), lihat aturan penghapusan di agent view.3287* **Tanpa hook WorktreeRemove**: ketika Claude Code menghapus worktree saat Anda keluar dari sesi worktree, Claude Code melakukan fallback ke `git worktree remove --force` pada path yang dikembalikan oleh hook WorktreeCreate Anda, sehingga worktree yang dikenali git akan dihapus. Worktree yang tidak dikenali git, misalnya worktree yang dibuat hook Anda dengan sistem kontrol versi non-git, tetap ada di disk. Untuk apa yang dilakukan penghapusan [sesi latar belakang](/docs/id/agent-view#what-deleting-a-session-removes) terhadap worktree yang dibuat hook, lihat aturan penghapusan agent view.

3286* **Hook keluar dengan 0**: worktree dianggap telah dihapus. Claude Code tidak membaca apa pun lagi dari hook, jadi pastikan hook Anda telah menghapus direktori tersebut.3288* **Hook keluar dengan 0**: worktree dianggap telah dihapus. Claude Code tidak membaca apa pun lagi dari hook, jadi pastikan hook Anda telah menghapus direktori tersebut.

3287* **Hook keluar dengan non-zero**: penghapusan gagal jika direktori di `worktree_path` masih ada setelahnya, dan worktree tetap ada di disk tanpa fallback git. Hook yang telah menghapus direktori sebelum keluar dengan non-zero dianggap berhasil menghapus. Untuk cara kegagalan dilaporkan, lihat [Input WorktreeRemove](#worktreeremove-input).3289* **Hook keluar dengan non-zero**: penghapusan gagal jika direktori di `worktree_path` masih ada setelahnya, dan worktree tetap ada di disk tanpa fallback git. Hook yang telah menghapus direktori sebelum keluar dengan non-zero dianggap berhasil menghapus. Untuk cara kegagalan dilaporkan, lihat [Input WorktreeRemove](#worktreeremove-input).

3288 3290 

hooks-guide.md +1 −1

Details

526| `DirectoryAdded` | Ketika direktori kerja ditambahkan di tengah sesi melalui `/add-dir` atau permintaan kontrol SDK `register_repo_root` |526| `DirectoryAdded` | Ketika direktori kerja ditambahkan di tengah sesi melalui `/add-dir` atau permintaan kontrol SDK `register_repo_root` |

527| `FileChanged` | Ketika file yang dipantau berubah di disk. Bidang `matcher` menentukan nama file mana yang dipantau |527| `FileChanged` | Ketika file yang dipantau berubah di disk. Bidang `matcher` menentukan nama file mana yang dipantau |

528| `WorktreeCreate` | Ketika worktree sedang dibuat melalui `--worktree`, `isolation: "worktree"`, atau untuk sesi latar belakang. Menggantikan perilaku git default |528| `WorktreeCreate` | Ketika worktree sedang dibuat melalui `--worktree`, `isolation: "worktree"`, atau untuk sesi latar belakang. Menggantikan perilaku git default |

529| `WorktreeRemove` | Ketika worktree sedang dihapus saat keluar sesi, ketika subagent selesai, atau ketika Anda menghapus sesi latar belakang |529| `WorktreeRemove` | Ketika worktree yang dibuat oleh hook `WorktreeCreate` sedang dihapus |

530| `PreCompact` | Sebelum pemadatan konteks |530| `PreCompact` | Sebelum pemadatan konteks |

531| `PostCompact` | Setelah pemadatan konteks selesai |531| `PostCompact` | Setelah pemadatan konteks selesai |

532| `PreModelSwitch` | Sebelum Claude Code menerapkan pergantian model yang Anda atau klien minta. Dapat memblokir pergantian |532| `PreModelSwitch` | Sebelum Claude Code menerapkan pergantian model yang Anda atau klien minta. Dapat memblokir pergantian |

Details

76* **Proyek Anda.** File di direktori dan subdirektori Anda, ditambah file di tempat lain dengan izin Anda.76* **Proyek Anda.** File di direktori dan subdirektori Anda, ditambah file di tempat lain dengan izin Anda.

77* **Terminal Anda.** Perintah apa pun yang dapat Anda jalankan: build tools, git, package managers, system utilities, scripts. Jika Anda dapat melakukannya dari command line, Claude juga dapat.77* **Terminal Anda.** Perintah apa pun yang dapat Anda jalankan: build tools, git, package managers, system utilities, scripts. Jika Anda dapat melakukannya dari command line, Claude juga dapat.

78* **Status git Anda.** Branch saat ini, perubahan yang belum di-commit, dan riwayat commit terbaru.78* **Status git Anda.** Branch saat ini, perubahan yang belum di-commit, dan riwayat commit terbaru.

79* **[CLAUDE.md](/docs/id/memory) Anda.** File markdown tempat Anda menyimpan instruksi khusus proyek, konvensi, dan konteks yang harus diketahui Claude setiap sesi. Jika repositori Anda memiliki AGENTS.md untuk agen coding lainnya, Claude [dapat membacanya](/docs/id/memory#agents-md) sendiri atau bersama CLAUDE.md.79* **[CLAUDE.md](/docs/id/memory) Anda.** File markdown tempat Anda menyimpan instruksi khusus proyek, konvensi, dan konteks yang harus diketahui Claude setiap sesi. Jika repositori Anda memiliki AGENTS.md untuk agent coding lainnya, Claude [dapat membacanya](/docs/id/memory#agents-md) sebagai pengganti CLAUDE.md.

80* **[Auto memory](/docs/id/memory#auto-memory).** Pembelajaran yang disimpan Claude secara otomatis saat Anda bekerja, seperti preferensi Anda. 200 baris pertama atau 25KB MEMORY.md, mana pun yang lebih dulu, dimuat di awal setiap sesi.80* **[Auto memory](/docs/id/memory#auto-memory).** Pembelajaran yang disimpan Claude secara otomatis saat Anda bekerja, seperti preferensi Anda. 200 baris pertama atau 25KB MEMORY.md, mana pun yang lebih dulu, dimuat di awal setiap sesi.

81* **Ekstensi yang Anda konfigurasi.** [MCP servers](/docs/id/mcp) untuk layanan eksternal, [skills](/docs/id/skills) untuk workflow, [subagents](/docs/id/sub-agents) untuk pekerjaan yang didelegasikan, dan [Claude in Chrome](/docs/id/chrome) untuk interaksi browser.81* **Ekstensi yang Anda konfigurasi.** [MCP servers](/docs/id/mcp) untuk layanan eksternal, [skills](/docs/id/skills) untuk workflow, [subagents](/docs/id/sub-agents) untuk pekerjaan yang didelegasikan, dan [Claude in Chrome](/docs/id/chrome) untuk interaksi browser.

82 82 

Details

42| `Ctrl+Enter` atau `Ctrl+X Ctrl+S` | Kirim pesan antrian sekarang | Mengirim [pesan antrian](#queue-messages-while-claude-works) Anda, dan draf Anda bersama mereka, keluar segera. [Ketika Claude Code mengirim apa yang Anda antrekan](#when-claude-code-sends-what-you-queued) mencakup apa yang terjadi pada giliran yang sedang dikerjakan Claude. Dalam [mode shell](#shell-mode-with-prefix), kunci hanya mengantrekan perintah Anda. Di terminal yang tidak melaporkan kunci diperluas, `Ctrl+Enter` tiba sebagai `Enter` biasa; `Ctrl+X Ctrl+S` bekerja di terminal apa pun. Memerlukan Claude Code v2.1.275 atau yang lebih baru |42| `Ctrl+Enter` atau `Ctrl+X Ctrl+S` | Kirim pesan antrian sekarang | Mengirim [pesan antrian](#queue-messages-while-claude-works) Anda, dan draf Anda bersama mereka, keluar segera. [Ketika Claude Code mengirim apa yang Anda antrekan](#when-claude-code-sends-what-you-queued) mencakup apa yang terjadi pada giliran yang sedang dikerjakan Claude. Dalam [mode shell](#shell-mode-with-prefix), kunci hanya mengantrekan perintah Anda. Di terminal yang tidak melaporkan kunci diperluas, `Ctrl+Enter` tiba sebagai `Enter` biasa; `Ctrl+X Ctrl+S` bekerja di terminal apa pun. Memerlukan Claude Code v2.1.275 atau yang lebih baru |

43| `Shift+Tab`, atau `Alt+M` di Windows ketika runtime Node atau Bun tidak mengaktifkan mode input VT | Mode izin siklus | Siklus melalui `default` (berlabel Manual dalam indikator mode), `acceptEdits`, `plan`, dan, ketika tersedia, `bypassPermissions` dan kemudian `auto`. Dari `auto`, tekan pertama beralih ke `default`. Lihat [mode izin](/docs/id/permission-modes). Pada prompt izin file, kunci yang sama menutup [bidang komentar](/docs/id/permissions#add-a-comment-when-you-answer-a-permission-prompt) yang terbuka. Tanpa bidang terbuka, ini memilih opsi yang memungkinkan tindakan untuk sisa sesi, ketika prompt menawarkan opsi itu |43| `Shift+Tab`, atau `Alt+M` di Windows ketika runtime Node atau Bun tidak mengaktifkan mode input VT | Mode izin siklus | Siklus melalui `default` (berlabel Manual dalam indikator mode), `acceptEdits`, `plan`, dan, ketika tersedia, `bypassPermissions` dan kemudian `auto`. Dari `auto`, tekan pertama beralih ke `default`. Lihat [mode izin](/docs/id/permission-modes). Pada prompt izin file, kunci yang sama menutup [bidang komentar](/docs/id/permissions#add-a-comment-when-you-answer-a-permission-prompt) yang terbuka. Tanpa bidang terbuka, ini memilih opsi yang memungkinkan tindakan untuk sisa sesi, ketika prompt menawarkan opsi itu |

44| `Option+P` (macOS) atau `Alt+P` (Windows/Linux) | Model switch | Alihkan model tanpa menghapus prompt Anda |44| `Option+P` (macOS) atau `Alt+P` (Windows/Linux) | Model switch | Alihkan model tanpa menghapus prompt Anda |

45| `Option+T` (macOS) atau `Alt+T` (Windows/Linux) | Alihkan pemikiran diperpanjang | Aktifkan atau nonaktifkan mode pemikiran diperpanjang. Tidak berpengaruh pada Opus 5.5, Sonnet 5.5, atau model Fable, yang selalu menggunakan pemikiran diperpanjang. Bekerja di macOS tanpa mengonfigurasi Option sebagai Meta |45| `Option+T` (macOS) atau `Alt+T` (Windows/Linux) | Alihkan extended thinking | Aktifkan atau nonaktifkan mode extended thinking. Tidak berpengaruh pada Opus 5.5, Sonnet 5.5, Haiku 5.5, atau model Fable, yang selalu menggunakan extended thinking. Bekerja di macOS tanpa mengonfigurasi Option sebagai Meta |

46| `Option+O` (macOS) atau `Alt+O` (Windows/Linux) | Alihkan mode cepat | Aktifkan atau nonaktifkan [mode cepat](/docs/id/fast-mode) |46| `Option+O` (macOS) atau `Alt+O` (Windows/Linux) | Alihkan mode cepat | Aktifkan atau nonaktifkan [mode cepat](/docs/id/fast-mode) |

47 47 

48<h3 id="text-editing">48<h3 id="text-editing">

keybindings.md +3 −2

Details

299| :- | :- | :- |299| :- | :- | :- |

300| `footer:next` | Right | Item footer berikutnya |300| `footer:next` | Right | Item footer berikutnya |

301| `footer:previous` | Left | Item footer sebelumnya |301| `footer:previous` | Left | Item footer sebelumnya |

302| `footer:up` | Up | Navigasi ke atas di footer (batalkan pilihan di atas) |302| `footer:up` | Up, Ctrl+P | Navigasi ke atas di footer (batalkan pilihan di atas) |

303| `footer:down` | Down | Navigasi ke bawah di footer |303| `footer:down` | Down, Ctrl+N | Navigasi ke bawah di footer |

304| `footer:openSelected` | Enter | Buka item footer yang dipilih |304| `footer:openSelected` | Enter | Buka item footer yang dipilih |

305| `footer:clearSelection` | Escape | Bersihkan pilihan footer |305| `footer:clearSelection` | Escape | Bersihkan pilihan footer |

306| `footer:close` | x | Hentikan [agent](/docs/id/sub-agents#observe-and-steer-running-forks) atau [workflow](/docs/id/workflows#manage-runs) yang dipilih, atau tutup barisnya jika sudah tidak berjalan lagi |

306| `footer:dismiss` | (unbound) | Mengikat kunci ke tindakan ini tidak berpengaruh, dan `keybindings.json` yang menyebutkannya tetap valid. Sebelum v2.1.281, Backspace dan Delete terikat ke tindakan ini dan menghapus tautan artefak yang dipilih dari footer. |307| `footer:dismiss` | (unbound) | Mengikat kunci ke tindakan ini tidak berpengaruh, dan `keybindings.json` yang menyebutkannya tetap valid. Sebelum v2.1.281, Backspace dan Delete terikat ke tindakan ini dan menghapus tautan artefak yang dipilih dari footer. |

307 308 

308Saat item footer dipilih, seperti baris di panel agen di bawah prompt, `Enter` membukanya bahkan ketika Anda mengikat ulang `Enter` dalam konteks `Chat` ke `chat:queueSubmit` atau `chat:newline`.309Saat item footer dipilih, seperti baris di panel agen di bawah prompt, `Enter` membukanya bahkan ketika Anda mengikat ulang `Enter` dalam konteks `Chat` ke `chat:queueSubmit` atau `chat:newline`.

Details

216* **Didistribusikan oleh administrator**: jika organisasi Anda telah [menerapkan konfigurasi](/docs/id/llm-gateway-rollout#distribute-through-managed-settings), aplikasi desktop merutekan melalui gateway tanpa pengaturan di pihak Anda216* **Didistribusikan oleh administrator**: jika organisasi Anda telah [menerapkan konfigurasi](/docs/id/llm-gateway-rollout#distribute-through-managed-settings), aplikasi desktop merutekan melalui gateway tanpa pengaturan di pihak Anda

217* **Dikonfigurasi secara lokal**: untuk perangkat tanpa konfigurasi yang didistribusikan administrator, buka Help → Troubleshooting → Enable Developer Mode, yang memulai ulang aplikasi dengan menu Developer. Kemudian buka Developer → Configure Third-Party Inference dan masukkan URL dasar gateway Anda. Konfigurasi yang didistribusikan administrator memiliki prioritas dan membuat formulir ini hanya-baca217* **Dikonfigurasi secara lokal**: untuk perangkat tanpa konfigurasi yang didistribusikan administrator, buka Help → Troubleshooting → Enable Developer Mode, yang memulai ulang aplikasi dengan menu Developer. Kemudian buka Developer → Configure Third-Party Inference dan masukkan URL dasar gateway Anda. Konfigurasi yang didistribusikan administrator memiliki prioritas dan membuat formulir ini hanya-baca

218 218 

219Dengan konfigurasi gateway aktif, aplikasi desktop menjalankan sesi hanya di mesin lokal Anda: pemilih lingkungan tidak menawarkan sesi SSH atau lingkungan cloud yang dihosting Anthropic, dan [Remote Control](/docs/id/remote-control) tidak tersedia. Untuk menggunakan Claude Code pada host jarak jauh melalui gateway, jalankan CLI pada host itu dengan [`ANTHROPIC_BASE_URL` dan kredensial gateway](#set-the-base-url-and-credential) diatur di sana.219Dengan konfigurasi gateway aktif, pemilih lingkungan tidak menawarkan lingkungan cloud yang dihosting Anthropic, dan [Remote Control](/docs/id/remote-control) tidak tersedia.

220 

221Sesi SSH masih dalam tahap beta dengan konfigurasi gateway dan memerlukan Claude Desktop v1.40609.0 atau yang lebih baru. Sebelum Anda terhubung, periksa allowlist dan alamat gateway:

222 

223* **Host yang diizinkan**: sesi SSH dinonaktifkan secara default. Untuk mengaktifkannya, Anda atau administrator Anda mencantumkan host yang diizinkan di kunci [`sshHostAllowlist`](https://claude.com/docs/third-party/claude-desktop/configuration#sshhostallowlist) pada konfigurasi inferensi pihak ketiga

224* **Alamat gateway**: mesin jarak jauh terhubung ke gateway itu sendiri, sehingga gateway di `localhost` pada komputer Anda tidak berfungsi untuk sesi SSH

225 

226Lihat [SSH remote sessions in Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions). Anda juga dapat menjalankan CLI pada host jarak jauh dengan [`ANTHROPIC_BASE_URL` dan kredensial gateway](#set-the-base-url-and-credential) diatur di sana.

220 227 

221Jika aplikasi desktop menampilkan `Gateway was unreachable`, aplikasi tidak dapat menjangkau URL dasar yang dikonfigurasi saat startup; periksa URL dan jalur jaringan dengan [tes curl di atas](#verify-the-connection).228Jika aplikasi desktop menampilkan `Gateway was unreachable`, aplikasi tidak dapat menjangkau URL dasar yang dikonfigurasi saat startup; periksa URL dan jalur jaringan dengan [tes curl di atas](#verify-the-connection).

222 229 

managed-mcp.md +17 −5

Details

347 Bagaimana entri `serverUrl` dicocokkan347 Bagaimana entri `serverUrl` dicocokkan

348</h4>348</h4>

349 349 

350URL mendukung wildcard `*` di mana pun dalam pola, termasuk skema. Pencocokan nama host tidak peka huruf besar-kecil dan mengabaikan titik FQDN yang tertinggal, jadi `https://Mcp.Example.com/*` cocok dengan `https://mcp.example.com/api`. Jalur tetap peka huruf besar-kecil.350URL mendukung wildcard `*`, termasuk `*` sebagai seluruh skema. Pencocokan nama host tidak peka huruf besar-kecil dan mengabaikan titik FQDN yang tertinggal, jadi `https://Mcp.Example.com/*` cocok dengan `https://mcp.example.com/api`. Jalur tetap peka huruf besar-kecil. Jika Anda tidak memberikan port, cara Anda menulis nama host menentukan apakah pola hanya cocok dengan port default skema atau dengan setiap port:

351 

352* **Nama host ditulis lengkap**: hanya port default, 443 untuk `https` dan 80 untuk `http`

353* **Nama host yang mengandung `*`**: setiap port

351 354 

352Tabel berikut menunjukkan apa yang diizinkan oleh pola umum:355Tabel berikut menunjukkan apa yang diizinkan oleh pola umum:

353 356 

354| Pola | Mengizinkan |357| Pola | Mengizinkan |

355| :- | :- |358| :- | :- |

356| `https://mcp.example.com/*` | Semua jalur pada domain tertentu |359| `https://mcp.example.com/*` | Semua jalur pada domain tertentu, hanya pada port 443 |

357| `https://mcp.example.com` | Juga semua jalur di domain itu. Pola tanpa jalur cocok dengan jalur apa pun |360| `https://mcp.example.com` | Juga semua jalur di domain itu, hanya pada port 443. Pola tanpa jalur cocok dengan jalur apa pun |

358| `https://*.example.com/*` | Subdomain apa pun dari `example.com` |361| `https://mcp.example.com:8443/*` | Semua jalur di domain itu, hanya pada port 8443 |

362| `https://mcp.example.com:*/*` | Semua jalur di domain itu, pada port apa pun, termasuk 443 |

363| `https://*.example.com/*` | Subdomain apa pun dari `example.com`, pada port apa pun |

359| `http://localhost:*/*` | Port apa pun di localhost |364| `http://localhost:*/*` | Port apa pun di localhost |

360| `*://mcp.example.com/*` | Skema apa pun ke domain tertentu |365| `*://mcp.example.com/*` | Skema apa pun ke domain tertentu, masing-masing skema hanya pada port default-nya |

366 

367Entri di `deniedMcpServers` mencocokkan port dengan cara yang sama, jadi pilih entri untuk `staging.example.com` berdasarkan port dan skema yang perlu Anda blokir:

368 

369* `https://staging.example.com/*`: memblokir server `https` di host tersebut hanya pada port 443, sehingga tidak memblokir server di `https://staging.example.com:8443/api`

370* `https://staging.example.com:*/*`: memblokir server `https` di host tersebut pada setiap port

371* `*://staging.example.com:*/*`: memblokir host tersebut melalui skema apa pun dan pada port apa pun

361 372 

362<h4 id="how-policy-entries-expand">373<h4 id="how-policy-entries-expand">

363 Environment variable dalam entri `serverCommand` dan `serverUrl`374 Environment variable dalam entri `serverCommand` dan `serverUrl`


529 | :- | :- |540 | :- | :- |

530 | Server HTTP di `https://mcp.example.com/api` | Diizinkan: cocok dengan pola URL allowlist, tidak ada kecocokan denylist |541 | Server HTTP di `https://mcp.example.com/api` | Diizinkan: cocok dengan pola URL allowlist, tidak ada kecocokan denylist |

531 | Server HTTP di `https://staging.example.com/api` | Diblokir: cocok dengan keduanya, tetapi denylist memiliki prioritas |542 | Server HTTP di `https://staging.example.com/api` | Diblokir: cocok dengan keduanya, tetapi denylist memiliki prioritas |

543 | Server HTTP di `https://staging.example.com:8443/api` | Diizinkan: cocok dengan pola URL allowlist, [tidak ada kecocokan denylist pada port ini](#how-serverurl-entries-match) |

532 | Server HTTP di `https://other.com/mcp` | Diblokir: tidak cocok dengan allowlist |544 | Server HTTP di `https://other.com/mcp` | Diblokir: tidak cocok dengan allowlist |

533</Accordion>545</Accordion>

534 546 

memory.md +2 −2

Details

8 8 

9Setiap sesi Claude Code dimulai dengan context window yang segar. Dua mekanisme membawa pengetahuan lintas sesi:9Setiap sesi Claude Code dimulai dengan context window yang segar. Dua mekanisme membawa pengetahuan lintas sesi:

10 10 

11* **File CLAUDE.md**: instruksi yang Anda tulis untuk memberikan Claude konteks persisten. Claude juga dapat membaca file [`AGENTS.md`](#agents-md) repositori, sendiri atau bersama CLAUDE.md11* **File CLAUDE.md**: instruksi yang Anda tulis untuk memberikan Claude konteks persisten. Claude juga dapat membaca [file `AGENTS.md`](#agents-md) repositori sebagai pengganti CLAUDE.md

12* **Auto memory**: catatan yang Claude tulis sendiri berdasarkan koreksi dan preferensi Anda12* **Auto memory**: catatan yang Claude tulis sendiri berdasarkan koreksi dan preferensi Anda

13 13 

14Halaman ini mencakup cara untuk:14Halaman ini mencakup cara untuk:

15 15 

16* [Menulis dan mengorganisir file CLAUDE.md](#claude-md-files)16* [Menulis dan mengorganisir file CLAUDE.md](#claude-md-files)

17* [Menggunakan AGENTS.md yang sudah ada](#agents-md) sebagai instruksi proyek Anda, sendiri atau bersama CLAUDE.md17* [Menggunakan AGENTS.md yang sudah ada](#agents-md) sebagai instruksi proyek Anda

18* [Membatasi aturan ke tipe file tertentu](#organize-rules-with-claude/rules/) dengan `.claude/rules/`18* [Membatasi aturan ke tipe file tertentu](#organize-rules-with-claude/rules/) dengan `.claude/rules/`

19* [Mengonfigurasi auto memory](#auto-memory) agar Claude membuat catatan secara otomatis19* [Mengonfigurasi auto memory](#auto-memory) agar Claude membuat catatan secara otomatis

20* [Troubleshoot](#troubleshoot-memory-issues) ketika instruksi tidak diikuti20* [Troubleshoot](#troubleshoot-memory-issues) ketika instruksi tidak diikuti

model-config.md +36 −23

Details

43| **`opus[1m]`** | Menggunakan Opus dengan [jendela konteks 1 juta token](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) untuk sesi panjang |43| **`opus[1m]`** | Menggunakan Opus dengan [jendela konteks 1 juta token](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) untuk sesi panjang |

44| **`opusplan`** | Mode khusus yang menggunakan `opus` selama plan mode, kemudian beralih ke `sonnet` untuk eksekusi |44| **`opusplan`** | Mode khusus yang menggunakan `opus` selama plan mode, kemudian beralih ke `sonnet` untuk eksekusi |

45 45 

46Versi yang diselesaikan oleh alias `opus` dan `sonnet` tergantung pada penyedia:46Alias `opus`, `sonnet`, dan `haiku` diselesaikan ke versi terbaru di Anthropic API dan ke versi yang lebih awal di beberapa penyedia lain:

47 47 

48| Penyedia | `opus` | `sonnet` |48| Penyedia | `opus` | `sonnet` | `haiku` |

49| :- | :- | :- |49| :- | :- | :- | :- |

50| Anthropic API | Opus 5.5 | Sonnet 5.5 |50| Anthropic API | Opus 5.5 | Sonnet 5.5 | Haiku 5.5 |

51| [Claude Platform on AWS](/docs/id/claude-platform-on-aws) | Opus 5.5 | Sonnet 4.6 |51| [Claude Platform on AWS](/docs/id/claude-platform-on-aws) | Opus 5.5 | Sonnet 4.6 | Haiku 4.5 |

52| Amazon Bedrock, Google Cloud's Agent Platform | Opus 5.5 | Sonnet 4.5 |52| Amazon Bedrock, Google Cloud's Agent Platform | Opus 5.5 | Sonnet 4.5 | Haiku 4.5 |

53| Microsoft Foundry | Opus 4.6 | Sonnet 4.5 |53| Microsoft Foundry | Opus 4.6 | Sonnet 4.5 | Haiku 4.5 |

54 54 

55<span id="fable-alias-resolution" />55<span id="fable-alias-resolution" />

56 56 


58 58 

59Gateway yang tidak dikonfigurasi untuk melayani `claude-fable-5-1` menolak permintaan untuk model itu. Untuk menggunakan Fable 5.1 melalui gateway yang melayaninya, pilih dengan `/model claude-fable-5-1`.59Gateway yang tidak dikonfigurasi untuk melayani `claude-fable-5-1` menolak permintaan untuk model itu. Untuk menggunakan Fable 5.1 melalui gateway yang melayaninya, pilih dengan `/model claude-fable-5-1`.

60 60 

61Di mana alias diselesaikan ke model yang lebih lama, model yang lebih baru tersedia dengan memilih nama model lengkap secara eksplisit atau menetapkan `ANTHROPIC_DEFAULT_OPUS_MODEL` atau `ANTHROPIC_DEFAULT_SONNET_MODEL`.61Di mana `opus` atau `sonnet` diselesaikan ke model yang lebih lama, model yang lebih baru tersedia dengan memilih nama model lengkap secara eksplisit atau menetapkan `ANTHROPIC_DEFAULT_OPUS_MODEL` atau `ANTHROPIC_DEFAULT_SONNET_MODEL`.

62 62 

63Versi sebelumnya menyelesaikan alias ini ke model yang lebih lama. Untuk versi di mana setiap alias berubah, lihat [Riwayat versi](#version-history).63Versi sebelumnya menyelesaikan alias ini ke model yang lebih lama. Untuk versi di mana setiap alias berubah, lihat [Riwayat versi](#version-history).

64 64 

65Alias menunjuk ke versi yang direkomendasikan untuk penyedia Anda dan diperbarui seiring waktu. Untuk menyematkan ke versi tertentu, gunakan nama model lengkap, misalnya `claude-opus-5-5`, atau atur variabel lingkungan yang sesuai seperti `ANTHROPIC_DEFAULT_OPUS_MODEL`.65Alias menunjuk ke versi yang direkomendasikan untuk penyedia Anda dan diperbarui seiring waktu. Untuk menyematkan ke versi tertentu, gunakan nama model lengkap, misalnya `claude-opus-5-5`, atau atur variabel lingkungan yang sesuai seperti `ANTHROPIC_DEFAULT_OPUS_MODEL`.

66 66 

67<Note>67<Note>

68 Sonnet 5.5 memerlukan Claude Code v2.1.284 atau lebih baru, dan Opus 5.5 memerlukan v2.1.280 atau lebih baru. Jika permintaan untuk salah satunya dari versi yang lebih lama gagal, lihat [Claude Code tidak mendukung model ini](/docs/id/errors#claude-code-does-not-support-this-model). Jalankan `claude update` untuk upgrade.68 Sonnet 5.5 memerlukan Claude Code v2.1.284 atau lebih baru, dan Opus 5.5 memerlukan v2.1.280 atau lebih baru. Jika permintaan untuk salah satunya dari versi yang lebih lama gagal, lihat [Claude Code tidak mendukung model ini](/docs/id/errors#claude-code-does-not-support-this-model). Gunakan v2.1.293 atau lebih baru dengan Haiku 5.5. Jalankan `claude update` untuk upgrade.

69</Note>69</Note>

70 70 

71<h3 id="work-with-fable">71<h3 id="work-with-fable">


156 156 

157Harga di pemilih `/model` muncul ketika Claude Code berbicara dengan Anthropic API, secara langsung atau melalui [gateway LLM](/docs/id/llm-gateway) yang memproksikannya, dan harga di baris adalah harga model yang dipilih baris itu. Di [penyedia pihak ketiga](/docs/id/third-party-integrations) seperti Amazon Bedrock dan di [gateway aplikasi Claude](/docs/id/claude-apps-gateway), penyedia atau gateway Anda menentukan apa yang Anda bayar, jadi baris pemilih tidak menampilkan harga. Harga adalah label tampilan saja; itu tidak mempengaruhi model mana yang dipilih baris atau apa yang ditagih penyedia Anda. Sebelum v2.1.206, [Claude Platform on AWS](/docs/id/claude-platform-on-aws) dan sesi gateway menampilkan harga daftar Anthropic, dan baris dapat menampilkan harga model yang berbeda dari yang dipilihnya.157Harga di pemilih `/model` muncul ketika Claude Code berbicara dengan Anthropic API, secara langsung atau melalui [gateway LLM](/docs/id/llm-gateway) yang memproksikannya, dan harga di baris adalah harga model yang dipilih baris itu. Di [penyedia pihak ketiga](/docs/id/third-party-integrations) seperti Amazon Bedrock dan di [gateway aplikasi Claude](/docs/id/claude-apps-gateway), penyedia atau gateway Anda menentukan apa yang Anda bayar, jadi baris pemilih tidak menampilkan harga. Harga adalah label tampilan saja; itu tidak mempengaruhi model mana yang dipilih baris atau apa yang ditagih penyedia Anda. Sebelum v2.1.206, [Claude Platform on AWS](/docs/id/claude-platform-on-aws) dan sesi gateway menampilkan harga daftar Anthropic, dan baris dapat menampilkan harga model yang berbeda dari yang dipilihnya.

158 158 

159Sesi yang dilanjutkan dimulai dengan `claude --resume`, `--continue`, atau pemilih `/resume` menyimpan model yang mereka gunakan ketika transkrip disimpan, terlepas dari pengaturan `model` saat ini. Jika model yang dipulihkan telah pensiun atau dikecualikan oleh [`availableModels`](#restrict-model-selection), sesi jatuh melalui urutan prioritas normal. Ini mencegah pilihan `/model` sesi lain mengubah model pada resume. Di penyedia yang menggunakan ID deployment khusus penyedia daripada ID model Anthropic, seperti Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry, model transkrip tidak dipulihkan sama sekali dan sesi menyelesaikan modelnya melalui urutan prioritas normal.159Sesi yang dilanjutkan dimulai dengan `claude --resume`, `--continue`, atau pemilih `/resume` menyimpan model yang mereka gunakan ketika transkrip disimpan. Jika model yang dipulihkan telah pensiun atau dikecualikan oleh [`availableModels`](#restrict-model-selection), sesi jatuh melalui urutan prioritas normal. Di penyedia yang menggunakan ID deployment khusus penyedia daripada ID model Anthropic, seperti Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry, model transkrip tidak dipulihkan sama sekali dan sesi menyelesaikan modelnya melalui urutan prioritas normal.

160 

161Jika pengaturan `model` Anda adalah `haiku`, sesi yang disimpan pada model Haiku dilanjutkan pada model yang saat ini diselesaikan oleh `haiku`. Misalnya, setelah `haiku` diselesaikan ke Haiku 5.5, sesi yang disimpan pada Haiku 4.5 dilanjutkan pada Haiku 5.5.

160 162 

161Model yang Anda pilih untuk peluncuran baru dengan `--model` atau `ANTHROPIC_MODEL` masih memiliki prioritas atas model yang dipulihkan. Sejak v2.1.195, demikian juga variabel keluarga [`ANTHROPIC_DEFAULT_OPUS_MODEL`](#environment-variables). [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions) juga bisa, di bawah kondisi yang tercantum di bagiannya.163Model yang Anda pilih untuk peluncuran baru dengan `--model` atau `ANTHROPIC_MODEL` masih memiliki prioritas atas model yang dipulihkan. Sejak v2.1.195, demikian juga variabel keluarga [`ANTHROPIC_DEFAULT_OPUS_MODEL`](#environment-variables). [`ANTHROPIC_DEFAULT_MODEL`](#set-a-default-model-for-new-sessions) juga bisa, di bawah kondisi yang tercantum di bagiannya.

162 164 


645| Model | Tingkat |647| Model | Tingkat |

646| :- | :- |648| :- | :- |

647| Fable 5.1 dan Fable 5 | `low`, `medium`, `high`, `xhigh`, `max` |649| Fable 5.1 dan Fable 5 | `low`, `medium`, `high`, `xhigh`, `max` |

648| Opus 5.5, Sonnet 5.5, Opus 5, Sonnet 5, Opus 4.8, dan Opus 4.7 | `low`, `medium`, `high`, `xhigh`, `max` |650| Opus 5.5, Sonnet 5.5, Haiku 5.5, Opus 5, Sonnet 5, Opus 4.8, dan Opus 4.7 | `low`, `medium`, `high`, `xhigh`, `max` |

649| Opus 4.6 dan Sonnet 4.6 | `low`, `medium`, `high`, `max` |651| Opus 4.6 dan Sonnet 4.6 | `low`, `medium`, `high`, `max` |

650 652 

651Jika Anda menetapkan tingkat yang model aktif tidak mendukung, Claude Code kembali ke tingkat tertinggi yang didukung pada atau di bawah yang Anda tetapkan. Misalnya, `xhigh` berjalan sebagai `high` pada Opus 4.6. Organisasi Anda atau pengaturan Anda sendiri juga dapat membatasi tingkat mana yang tersedia untuk model; lihat [Batas usaha organisasi](#organization-effort-limits).653Jika Anda menetapkan tingkat yang model aktif tidak mendukung, Claude Code kembali ke tingkat tertinggi yang didukung pada atau di bawah yang Anda tetapkan. Misalnya, `xhigh` berjalan sebagai `high` pada Opus 4.6. Organisasi Anda atau pengaturan Anda sendiri juga dapat membatasi tingkat mana yang tersedia untuk model; lihat [Batas usaha organisasi](#organization-effort-limits).


654 656 

6551. Pilihan eksplisit: variabel lingkungan [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/id/env-vars#variables), peluncuran dengan `--effort`, atau `/effort` dalam sesi ([`/effort` non-interaktif memiliki efek lebih sempit](#non-interactive-effort))6571. Pilihan eksplisit: variabel lingkungan [`CLAUDE_CODE_EFFORT_LEVEL`](/docs/id/env-vars#variables), peluncuran dengan `--effort`, atau `/effort` dalam sesi ([`/effort` non-interaktif memiliki efek lebih sempit](#non-interactive-effort))

6562. Pengaturan Anda: tingkat yang Anda simpan untuk model atau kunci [`effortLevel`](/docs/id/settings-reference#effortlevel), dengan prioritas di antara mereka dan di seluruh file pengaturan yang dinyatakan pada [`modelSettings`](/docs/id/settings-reference#modelsettings)6582. Pengaturan Anda: tingkat yang Anda simpan untuk model atau kunci [`effortLevel`](/docs/id/settings-reference#effortlevel), dengan prioritas di antara mereka dan di seluruh file pengaturan yang dinyatakan pada [`modelSettings`](/docs/id/settings-reference#modelsettings)

6573. Effort default model: `high` pada setiap model yang mendukung effort, kecuali Opus 5.5 dan Sonnet 5.5 default ke `medium`, Opus 4.7 default ke `xhigh`, dan, ketika organisasi Anda menetapkan tingkat effort default untuk [model default organisasinya](#organization-default-model), tingkat itu adalah default ketika Anda menjalankan model tersebut. Setelah fallback model otomatis, lihat [Tingkat effort setelah fallback](#effort-level-after-a-fallback) untuk tingkat yang berlaku.6593. Effort default model: `high` pada setiap model yang mendukung effort, kecuali Opus 5.5, Sonnet 5.5, dan Haiku 5.5 default ke `medium`, Opus 4.7 default ke `xhigh`, dan, ketika organisasi Anda menetapkan tingkat effort default untuk [model default organisasinya](#organization-default-model), tingkat itu adalah default ketika Anda menjalankan model tersebut. Setelah fallback model otomatis, lihat [Tingkat effort setelah fallback](#effort-level-after-a-fallback) untuk tingkat yang berlaku.

658 660 

659Opus 5.5 dimulai pada `medium` kecuali salah satu sumber di atas menetapkan tingkat untuk itu, dan `effortLevel` tingkat atas dalam file pengaturan pengguna Anda tidak dihitung untuk Opus 5.5. Kunci itu adalah bentuk yang lebih lama `/effort` ditulis sebelum Claude Code menyimpan tingkat per model: itu terus berlaku di mana itu berlaku sebelumnya, pada Opus 5, Fable 5.1, dan model sebelumnya, sementara Opus 5.5 dan model yang dirilis setelahnya dimulai pada default mereka sendiri sampai Anda memilih tingkat untuk mereka dengan `/effort` atau pengambil `/model`. `effortLevel` tingkat atas dalam pengaturan proyek, lokal, atau terkelola, atau yang dilewatkan dengan `--settings`, berlaku untuk setiap model.661Opus 5.5 dimulai pada `medium` kecuali salah satu sumber di atas menetapkan tingkat untuk itu, dan `effortLevel` tingkat atas dalam file pengaturan pengguna Anda tidak dihitung untuk Opus 5.5. Kunci itu adalah bentuk yang lebih lama `/effort` ditulis sebelum Claude Code menyimpan tingkat per model: itu terus berlaku di mana itu berlaku sebelumnya, pada Opus 5, Fable 5.1, dan model sebelumnya, sementara Opus 5.5 dan model yang dirilis setelahnya dimulai pada default mereka sendiri sampai Anda memilih tingkat untuk mereka dengan `/effort` atau pengambil `/model`. `effortLevel` tingkat atas dalam pengaturan proyek, lokal, atau terkelola, atau yang dilewatkan dengan `--settings`, berlaku untuk setiap model.

660 662 


709| Tingkat | Kapan menggunakannya |711| Tingkat | Kapan menggunakannya |

710| :- | :- |712| :- | :- |

711| `low` | Pertukaran cepat di mana Anda meninjau setiap hasil, seperti brainstorming, sketsa pertama, atau perubahan kecil seperti rename |713| `low` | Pertukaran cepat di mana Anda meninjau setiap hasil, seperti brainstorming, sketsa pertama, atau perubahan kecil seperti rename |

712| `medium` | Default pada Opus 5.5 dan Sonnet 5.5, di mana cocok untuk pekerjaan teknik sehari-hari dengan cakupan yang jelas, seperti mengimplementasikan fitur baru. Pada model lain, mengurangi penggunaan token untuk pekerjaan sensitif biaya yang dapat menukar beberapa intelijen |714| `medium` | Default pada Opus 5.5, Sonnet 5.5, dan Haiku 5.5. Pada Opus 5.5 dan Sonnet 5.5, cocok untuk pekerjaan teknik sehari-hari dengan cakupan yang jelas, seperti mengimplementasikan fitur baru. Pada model dengan default lebih tinggi, mengurangi penggunaan token untuk pekerjaan sensitif biaya yang dapat mengorbankan sebagian kecerdasan |

713| `high` | Pekerjaan di mana verifikasi penting atau kasus tepi mungkin, seperti memperbaiki bug dalam codebase yang ada. Default pada setiap model kecuali Opus 5.5, Sonnet 5.5, dan Opus 4.7 |715| `high` | Pekerjaan di mana verifikasi penting atau kasus tepi mungkin muncul, seperti memperbaiki bug dalam codebase yang ada. Default pada setiap model kecuali Opus 5.5, Sonnet 5.5, Haiku 5.5, dan Opus 4.7 |

714| `xhigh` | Penalaran lebih dalam pada pengeluaran token lebih tinggi. Default pada Opus 4.7 |716| `xhigh` | Penalaran lebih dalam pada pengeluaran token lebih tinggi. Default pada Opus 4.7 |

715| `max` | Masalah sulit yang Anda ingin Claude kerjakan tanpa Anda, seperti menemukan kerentanan keamanan. `max` mungkin menunjukkan hasil yang berkurang dan rentan terhadap overthinking, jadi uji sebelum mengadopsi secara luas |717| `max` | Masalah sulit yang Anda ingin Claude kerjakan tanpa Anda, seperti menemukan kerentanan keamanan. `max` mungkin menunjukkan hasil yang berkurang dan rentan terhadap overthinking, jadi uji sebelum mengadopsi secara luas |

716| `ultracode` | Pengaturan Claude Code daripada tingkat: merencanakan [alur kerja dinamis](/docs/id/workflows) untuk setiap tugas substantif pada tingkat usaha apa pun |718| `ultracode` | Pengaturan Claude Code daripada tingkat: merencanakan [alur kerja dinamis](/docs/id/workflows) untuk setiap tugas substantif pada tingkat usaha apa pun |


753 755 

754Penalaran adaptif membuat pemikiran opsional pada setiap langkah, jadi Claude dapat merespons lebih cepat ke prompt rutin dan menyisihkan pemikiran lebih dalam untuk langkah-langkah yang mendapat manfaat darinya. Jika Anda ingin Claude berpikir lebih atau kurang sering daripada tingkat saat ini menghasilkan, Anda dapat mengatakan demikian langsung dalam prompt Anda atau dalam `CLAUDE.md`; model merespons panduan itu dalam pengaturan usahanya.756Penalaran adaptif membuat pemikiran opsional pada setiap langkah, jadi Claude dapat merespons lebih cepat ke prompt rutin dan menyisihkan pemikiran lebih dalam untuk langkah-langkah yang mendapat manfaat darinya. Jika Anda ingin Claude berpikir lebih atau kurang sering daripada tingkat saat ini menghasilkan, Anda dapat mengatakan demikian langsung dalam prompt Anda atau dalam `CLAUDE.md`; model merespons panduan itu dalam pengaturan usahanya.

755 757 

756Model Fable, Sonnet 5 dan lebih baru, dan Opus 4.7 dan lebih baru selalu menggunakan penalaran adaptif. Mode anggaran pemikiran tetap dan `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` tidak berlaku untuk mereka.758Model Fable, Sonnet 5 dan lebih baru, Haiku 5.5, serta Opus 4.7 dan lebih baru selalu menggunakan penalaran adaptif. Mode thinking budget tetap dan `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` tidak berlaku untuk model-model tersebut.

757 759 

758Pada Opus 4.6 dan Sonnet 4.6, Anda dapat menetapkan `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` untuk kembali ke mode anggaran pemikiran tetap sebelumnya yang dikendalikan oleh `MAX_THINKING_TOKENS`. Lihat [variabel lingkungan](/docs/id/env-vars).760Pada Opus 4.6 dan Sonnet 4.6, Anda dapat menetapkan `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1` untuk kembali ke mode anggaran pemikiran tetap sebelumnya yang dikendalikan oleh `MAX_THINKING_TOKENS`. Lihat [variabel lingkungan](/docs/id/env-vars).

759 761 


767| :- | :- |769| :- | :- |

768| Alihkan untuk sesi saat ini | Tekan `Option+T` pada macOS atau `Alt+T` pada Windows dan Linux |770| Alihkan untuk sesi saat ini | Tekan `Option+T` pada macOS atau `Alt+T` pada Windows dan Linux |

769| Atur default global | Jalankan `/config` dan alihkan Thinking Mode. Disimpan sebagai `alwaysThinkingEnabled` dalam `~/.claude/settings.json` |771| Atur default global | Jalankan `/config` dan alihkan Thinking Mode. Disimpan sebagai `alwaysThinkingEnabled` dalam `~/.claude/settings.json` |

770| Nonaktifkan melalui environment variable | Atur [`MAX_THINKING_TOKENS=0`](/docs/id/env-vars), yang mematikan thinking pada Anthropic API kecuali pada Opus 5.5, Sonnet 5.5, dan model Fable. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations), Claude Code menghilangkan parameter `thinking` sebagai gantinya, dan model penalaran adaptif mungkin tetap berpikir |772| Nonaktifkan melalui environment variable | Atur [`MAX_THINKING_TOKENS=0`](/docs/id/env-vars), yang mematikan thinking pada Anthropic API kecuali pada Opus 5.5, Sonnet 5.5, Haiku 5.5, dan model Fable. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations), Claude Code menghilangkan parameter `thinking` sebagai gantinya, dan model penalaran adaptif mungkin tetap berpikir |

771 773 

772Pemikiran tidak dapat dimatikan pada Opus 5.5, Sonnet 5.5, atau model Fable. Alihan sesi dan `/config` row menampilkan `Thinking can't be turned off` untuk model ini alih-alih menawarkan switch, dan `alwaysThinkingEnabled: false` atau `MAX_THINKING_TOKENS=0` yang disimpan tidak berpengaruh di sana. Pada model ini, model memutuskan per langkah berapa banyak untuk berpikir berdasarkan tingkat usaha. Pengaturan yang disimpan berlaku lagi ketika Anda beralih ke model yang menerimanya.774Anda tidak dapat mematikan thinking pada Opus 5.5, Sonnet 5.5, Haiku 5.5, atau model Fable. Alihan sesi dan baris `/config` menampilkan `Thinking can't be turned off` untuk model-model ini alih-alih menawarkan sakelar, dan `alwaysThinkingEnabled: false` atau `MAX_THINKING_TOKENS=0` yang disimpan tidak berpengaruh di sana. Pada model-model ini, model memutuskan per langkah seberapa banyak berpikir berdasarkan tingkat effort. Pengaturan yang disimpan berlaku lagi ketika Anda beralih ke model yang menerimanya.

773 775 

774Claude Code meruntuhkan output pemikiran secara default. Tekan `Ctrl+O` untuk mengalihkan mode verbose dan lihat penalaran sebagai teks miring abu-abu. Sesi interaktif pada Anthropic API menerima blok pemikiran yang diredaksi secara default, jadi atur `showThinkingSummaries: true` dalam [pengaturan](/docs/id/settings) jika Anda menginginkan ringkasan lengkap yang tersedia saat Anda memperluas. Anda dikenakan biaya untuk semua token pemikiran yang dihasilkan, bahkan ketika diruntuhkan atau diredaksi.776Claude Code meruntuhkan output pemikiran secara default. Tekan `Ctrl+O` untuk mengalihkan mode verbose dan lihat penalaran sebagai teks miring abu-abu. Sesi interaktif pada Anthropic API menerima blok pemikiran yang diredaksi secara default, jadi atur `showThinkingSummaries: true` dalam [pengaturan](/docs/id/settings) jika Anda menginginkan ringkasan lengkap yang tersedia saat Anda memperluas. Anda dikenakan biaya untuk semua token pemikiran yang dihasilkan, bahkan ketika diruntuhkan atau diredaksi.

775 777 


779 Konteks diperpanjang781 Konteks diperpanjang

780</h3>782</h3>

781 783 

782Fable 5.1, Fable 5, Sonnet 5 dan lebih baru, Opus 4.6 dan lebih baru, dan Sonnet 4.6 mendukung [jendela konteks 1 juta token](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) untuk sesi panjang dengan codebase besar.784Fable 5.1, Fable 5, Sonnet 5 dan lebih baru, Haiku 5.5, Opus 4.6 dan lebih baru, serta Sonnet 4.6 mendukung [context window 1 juta token](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) untuk sesi panjang dengan codebase besar.

783 785 

784Pada Anthropic API, Fable 5.1, Fable 5, Sonnet 5 dan lebih baru, dan Opus 4.7 dan lebih baru berjalan dengan jendela 1M pada setiap paket, termasuk Pro. Anda tidak memilih varian `[1m]` atau mengaktifkan kredit penggunaan untuk jendela 1M pada model ini. Penggunaan Fable itu sendiri dapat ditagih ke kredit penggunaan pada beberapa paket; lihat [Fable dan kredit penggunaan](#fable-and-usage-credits).786Pada Anthropic API, Fable 5.1, Fable 5, Sonnet 5 dan lebih baru, Haiku 5.5, serta Opus 4.7 dan lebih baru berjalan dengan window 1M pada setiap paket, termasuk Pro. Anda tidak perlu memilih varian `[1m]` atau mengaktifkan kredit penggunaan untuk window 1M pada model-model ini. Penggunaan Fable itu sendiri dapat ditagih ke kredit penggunaan pada beberapa paket; lihat [Fable dan kredit penggunaan](#fable-and-usage-credits).

785 787 

786Opus 4.6 dan Sonnet 4.6 mencapai 1M hanya melalui varian `[1m]` mereka, dan akses ke varian itu tergantung pada paket Anda. Pada paket Max, Team, dan Enterprise, termasuk kursi Team Standard dan Team Premium, Opus 4.6 dengan konteks 1M disertakan dengan langganan Anda. Sonnet 4.6 dengan konteks 1M memerlukan [kredit penggunaan](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) pada setiap paket langganan, termasuk Max.788Opus 4.6 dan Sonnet 4.6 mencapai 1M hanya melalui varian `[1m]` mereka, dan akses ke varian itu tergantung pada paket Anda. Pada paket Max, Team, dan Enterprise, termasuk kursi Team Standard dan Team Premium, Opus 4.6 dengan konteks 1M disertakan dengan langganan Anda. Sonnet 4.6 dengan konteks 1M memerlukan [kredit penggunaan](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans) pada setiap paket langganan, termasuk Max.

787 789 


795 797 

796<span id="context-window-behind-a-gateway" />798<span id="context-window-behind-a-gateway" />

797 799 

798Jika Anda menetapkan `ANTHROPIC_BASE_URL` ke [gateway LLM](/docs/id/llm-gateway) atau proxy lainnya, Claude Code memberikan setiap model yang dikenalinya context window yang sama dengan yang dimiliki model tersebut pada Anthropic API. Fable 5.1, Fable 5, Sonnet 5 dan lebih baru, dan Opus 4.7 dan lebih baru mendapatkan context window 1M tanpa varian `[1m]` untuk dipilih, dan model yang mencapai 1M hanya melalui varian `[1m]`-nya, seperti Opus 4.6, berjalan pada 200K tanpa varian itu. Claude Code tidak dapat mendeteksi batas yang lebih rendah yang diberlakukan gateway atau server di belakangnya. Jika gateway Anda menolak permintaan di atas 200K token, atur [`CLAUDE_CODE_AUTO_COMPACT_WINDOW=200000`](/docs/id/env-vars) di environment yang menjalankan Claude Code, sehingga sesi pada setiap model [melakukan compaction pada batas itu](#set-the-auto-compact-window).800Jika Anda menetapkan `ANTHROPIC_BASE_URL` ke [gateway LLM](/docs/id/llm-gateway) atau proxy lainnya, Claude Code memberikan setiap model yang dikenalinya context window yang sama dengan yang dimiliki model tersebut pada Anthropic API. Fable 5.1, Fable 5, Sonnet 5 dan lebih baru, Haiku 5.5, serta Opus 4.7 dan lebih baru mendapatkan window 1M tanpa varian `[1m]` untuk dipilih, dan model yang mencapai 1M hanya melalui varian `[1m]`-nya, seperti Opus 4.6, berjalan pada 200K tanpa varian itu. Claude Code tidak dapat mendeteksi batas yang lebih rendah yang diberlakukan gateway atau server di belakangnya. Jika gateway Anda menolak permintaan di atas 200K token, atur [`CLAUDE_CODE_AUTO_COMPACT_WINDOW=200000`](/docs/id/env-vars) di environment yang menjalankan Claude Code, sehingga sesi pada setiap model [melakukan compaction pada batas itu](#set-the-auto-compact-window).

799 801 

800Untuk menonaktifkan konteks 1M, atur `CLAUDE_CODE_DISABLE_1M_CONTEXT=1`. Claude Code menghapus varian model 1M dari pengambil model. Pada model dengan jendela 1M asli, seperti Sonnet 5 dan model Fable, ini juga memperlakukan model sebagai memiliki jendela konteks 200K:802Untuk menonaktifkan konteks 1M, atur `CLAUDE_CODE_DISABLE_1M_CONTEXT=1`. Claude Code menghapus varian model 1M dari pengambil model. Pada model dengan jendela 1M asli, seperti Sonnet 5 dan model Fable, ini juga memperlakukan model sebagai memiliki jendela konteks 200K:

801 803 


804 806 

805Sebelum v2.1.223, Claude Code hanya menyimpan sesi Sonnet 5, Opus 4.8, dan Opus 5 ke 200K. Lihat [variabel lingkungan](/docs/id/env-vars).807Sebelum v2.1.223, Claude Code hanya menyimpan sesi Sonnet 5, Opus 4.8, dan Opus 5 ke 200K. Lihat [variabel lingkungan](/docs/id/env-vars).

806 808 

807Jendela konteks 1M menggunakan harga model standar tanpa premium untuk token di luar 200K. Untuk paket di mana konteks diperpanjang disertakan dengan langganan Anda, penggunaan tetap tercakup oleh langganan Anda. Untuk paket yang mengakses konteks diperpanjang melalui kredit penggunaan, token ditagih ke kredit penggunaan.809Context window 1M menggunakan harga model standar tanpa premium untuk token di luar 200K, kecuali pada Haiku 5.5, yang [lebih mahal untuk prompt yang lebih panjang dari 100K token](#haiku-5-5-context-window-and-pricing). Untuk paket di mana konteks diperpanjang disertakan dengan langganan Anda, penggunaan tetap tercakup oleh langganan Anda. Untuk paket yang mengakses konteks diperpanjang melalui kredit penggunaan, token ditagih ke kredit penggunaan.

808 810 

809Jika akun Anda mendukung konteks 1M, opsi muncul dalam pengambil `/model` dalam versi terbaru Claude Code. Jika Anda tidak melihatnya, coba mulai ulang sesi Anda, dan pada penyedia pihak ketiga periksa apakah penerapan Anda [menyematkan model](#pin-models-for-third-party-deployments) dengan variabel `ANTHROPIC_DEFAULT_*_MODEL`.811Jika akun Anda mendukung konteks 1M, opsi muncul dalam pengambil `/model` dalam versi terbaru Claude Code. Jika Anda tidak melihatnya, coba mulai ulang sesi Anda, dan pada penyedia pihak ketiga periksa apakah penerapan Anda [menyematkan model](#pin-models-for-third-party-deployments) dengan variabel `ANTHROPIC_DEFAULT_*_MODEL`.

810 812 


831 833 

832* **`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`**: menyimpan sesi pada setiap model dengan jendela 1M asli ke jendela 200K; lihat [Konteks diperpanjang](#extended-context) untuk cara hold ditegakkan. Berguna untuk penerapan yang perlu membatasi konteks.834* **`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`**: menyimpan sesi pada setiap model dengan jendela 1M asli ke jendela 200K; lihat [Konteks diperpanjang](#extended-context) untuk cara hold ditegakkan. Berguna untuk penerapan yang perlu membatasi konteks.

833 835 

836<h4 id="haiku-5-5-context-window-and-pricing">

837 Context window dan harga Haiku 5.5

838</h4>

839 

840Pada Anthropic API, Haiku 5.5 berjalan dengan context window 1M pada setiap paket, tanpa sufiks `[1m]` untuk dipilih. ID modelnya adalah `claude-haiku-5-5`. Untuk menggunakannya, jalankan `/model claude-haiku-5-5` dalam sesi, atau mulai Claude Code dari shell Anda dengan `claude --model claude-haiku-5-5`.

841 

842Permintaan Haiku 5.5 lebih mahal per token ketika prompt-nya lebih panjang dari 100K token. Lihat [harga Anthropic](https://platform.claude.com/docs/en/about-claude/pricing) untuk kedua tarif.

843 

844Sesi auto-compact pada sekitar 967K token secara default. Untuk melakukan compaction lebih awal, [atur window auto-compact yang lebih kecil](#set-the-auto-compact-window) untuk model tersebut.

845 

834<h2 id="context-window-and-auto-compaction">846<h2 id="context-window-and-auto-compaction">

835 Jendela konteks dan auto-compaction847 Jendela konteks dan auto-compaction

836</h2>848</h2>


865* [Sesi cloud](/docs/id/claude-code-on-the-web) melakukan pemadatan saat percakapan mendekati batas model877* [Sesi cloud](/docs/id/claude-code-on-the-web) melakukan pemadatan saat percakapan mendekati batas model

866* Sonnet 4.6 dan Opus 4.6 tanpa [konteks diperluas](#extended-context) melakukan pemadatan pada batas 200K, dan begitu juga Opus 4.8 dan yang lebih baru ketika mereka berjalan dengan jendela konteks 200K, seperti di Amazon Bedrock, Platform Agen Google Cloud, dan Microsoft Foundry878* Sonnet 4.6 dan Opus 4.6 tanpa [konteks diperluas](#extended-context) melakukan pemadatan pada batas 200K, dan begitu juga Opus 4.8 dan yang lebih baru ketika mereka berjalan dengan jendela konteks 200K, seperti di Amazon Bedrock, Platform Agen Google Cloud, dan Microsoft Foundry

867* Ketika Anda mengatur [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](/docs/id/env-vars), model dengan jendela asli 1M, seperti Sonnet 5 dan model Fable, melakukan pemadatan pada batas 200K879* Ketika Anda mengatur [`CLAUDE_CODE_DISABLE_1M_CONTEXT=1`](/docs/id/env-vars), model dengan jendela asli 1M, seperti Sonnet 5 dan model Fable, melakukan pemadatan pada batas 200K

868* Model yang berjalan dengan jendela asli 1M melakukan pemadatan sebelum jendela penuh, pada sekitar 967K token secara default. Di Anthropic API, ini termasuk Sonnet 5, model Fable, dan Opus 4.7 dan yang lebih baru. Di Amazon Bedrock, Platform Agen Google Cloud, dan Microsoft Foundry, lihat [Pin models for third-party deployments](#pin-models-for-third-party-deployments) untuk model mana yang berjalan dengan jendela itu. Di balik `ANTHROPIC_BASE_URL` kustom, lihat [the context window behind a gateway](#context-window-behind-a-gateway)880* Model yang berjalan dengan jendela asli 1M melakukan pemadatan sebelum jendela penuh, pada sekitar 967K token secara default. Di Anthropic API, ini termasuk Sonnet 5, Haiku 5.5, model Fable, dan Opus 4.7 dan yang lebih baru. Di Amazon Bedrock, Agent Platform Google Cloud, dan Microsoft Foundry, lihat [Pin models for third-party deployments](#pin-models-for-third-party-deployments) untuk model mana yang berjalan dengan jendela itu. Di balik `ANTHROPIC_BASE_URL` kustom, lihat [the context window behind a gateway](#context-window-behind-a-gateway)

869* Sesi pada ID model yang Claude Code tidak kenali, seperti alias [gateway LLM](/docs/id/llm-gateway), melakukan pemadatan pada jendela konteks yang Claude Code asumsikan untuk ID; lihat [Correct the window for a gateway or custom model ID](#correct-the-window-for-a-gateway-or-custom-model-id)881* Sesi pada ID model yang Claude Code tidak kenali, seperti alias [gateway LLM](/docs/id/llm-gateway), melakukan pemadatan pada jendela konteks yang Claude Code asumsikan untuk ID; lihat [Correct the window for a gateway or custom model ID](#correct-the-window-for-a-gateway-or-custom-model-id)

870 882 

871<h3 id="correct-the-window-for-a-gateway-or-custom-model-id">883<h3 id="correct-the-window-for-a-gateway-or-custom-model-id">


1093 1105 

1094| Versi | Perubahan |1106| Versi | Perubahan |

1095| :- | :- |1107| :- | :- |

1108| v2.1.293 | `haiku` diselesaikan ke Haiku 5.5 pada Anthropic API |

1096| v2.1.284 | `sonnet` diselesaikan ke Sonnet 5.5 pada Anthropic API |1109| v2.1.284 | `sonnet` diselesaikan ke Sonnet 5.5 pada Anthropic API |

1097| v2.1.280 | `opus` diselesaikan ke Opus 5.5 pada Anthropic API, Claude Platform di AWS, Amazon Bedrock, dan Agent Platform Google Cloud |1110| v2.1.280 | `opus` diselesaikan ke Opus 5.5 pada Anthropic API, Claude Platform di AWS, Amazon Bedrock, dan Agent Platform Google Cloud |

1098| v2.1.257 | `fable` diselesaikan ke Fable 5.1, kecuali dalam sesi gateway aplikasi Claude |1111| v2.1.257 | `fable` diselesaikan ke Fable 5.1, kecuali dalam sesi gateway aplikasi Claude |


1100| v2.1.207 | `opus` diselesaikan ke Opus 4.8 pada Claude Platform di AWS, Amazon Bedrock, dan Agent Platform |1113| v2.1.207 | `opus` diselesaikan ke Opus 4.8 pada Claude Platform di AWS, Amazon Bedrock, dan Agent Platform |

1101| v2.1.197 | `sonnet` diselesaikan ke Sonnet 5 pada Anthropic API |1114| v2.1.197 | `sonnet` diselesaikan ke Sonnet 5 pada Anthropic API |

1102| v2.1.154 | `opus` diselesaikan ke Opus 4.8 pada Anthropic API |1115| v2.1.154 | `opus` diselesaikan ke Opus 4.8 pada Anthropic API |

1103| Sebelumnya | `opus` diselesaikan ke Opus 4.7 pada Claude Platform di AWS dan ke Opus 4.6 pada Amazon Bedrock dan Agent Platform. `fable` diselesaikan ke Fable 5 pada setiap penyedia |1116| Sebelumnya | `opus` diselesaikan ke Opus 4.7 pada Claude Platform di AWS dan ke Opus 4.6 pada Amazon Bedrock dan Agent Platform. `fable` diselesaikan ke Fable 5 dan `haiku` diselesaikan ke Haiku 4.5 pada setiap penyedia |

Details

551* **Pengaturan yang dikelola server**: tambahkan ke blok `env` dari [pengaturan yang dikelola server](/docs/id/server-managed-settings) organisasi Anda. Claude Code mengambil pengaturan tersebut saat startup di mana pun [pengaturan yang dikelola server berlaku](/docs/id/model-config#surface-coverage), yang mencakup mesin pengguna Anda dan sesi cloud selain sesi saluran Claude Tag. Sesi Claude Tag tidak menerima pengaturan yang dikelola server Anda, jadi rute ini tidak mengonfigurasinya.551* **Pengaturan yang dikelola server**: tambahkan ke blok `env` dari [pengaturan yang dikelola server](/docs/id/server-managed-settings) organisasi Anda. Claude Code mengambil pengaturan tersebut saat startup di mana pun [pengaturan yang dikelola server berlaku](/docs/id/model-config#surface-coverage), yang mencakup mesin pengguna Anda dan sesi cloud selain sesi saluran Claude Tag. Sesi Claude Tag tidak menerima pengaturan yang dikelola server Anda, jadi rute ini tidak mengonfigurasinya.

552* **Variabel lingkungan**: tambahkan ke [variabel lingkungan](/docs/id/cloud-environments#set-environment-variables) lingkungan cloud untuk mengonfigurasi hanya sesi yang berjalan di lingkungan tersebut. Ini adalah rute yang menjangkau sesi Claude Tag.552* **Variabel lingkungan**: tambahkan ke [variabel lingkungan](/docs/id/cloud-environments#set-environment-variables) lingkungan cloud untuk mengonfigurasi hanya sesi yang berjalan di lingkungan tersebut. Ini adalah rute yang menjangkau sesi Claude Tag.

553 553 

554Siapa pun yang menggunakan lingkungan dapat membaca variabelnya, jadi jangan letakkan kredensial di sana, seperti token kolektor di `OTEL_EXPORTER_OTLP_HEADERS`. [Kredensial API](/docs/id/cloud-environments#add-api-credentials) di lingkungan juga tidak membantu, karena ekspor telemetri Claude Code sendiri adalah salah satu dari [permintaan yang tidak pernah mendapatkan kredensial](/docs/id/cloud-environments#requests-that-never-get-the-credential). Jika kolektor Anda memerlukan kredensial, konfigurasikan seluruh ekspor melalui pengaturan yang dikelola server sebagai gantinya, karena ketika Anda menetapkan kredensial di sana, [Claude Code menghapus variabel titik akhir yang ditetapkan di luar pengaturan terkelola](#how-managed-settings-lock-the-otlp-destination).554Siapa pun yang menggunakan lingkungan dapat membaca variabelnya, jadi jangan letakkan kredensial di sana, seperti token kolektor di `OTEL_EXPORTER_OTLP_HEADERS`. [Rahasia jaringan](/docs/id/cloud-environments#add-api-credentials) di lingkungan juga tidak membantu, karena ekspor telemetri Claude Code sendiri adalah salah satu dari [permintaan yang tidak pernah mendapatkan rahasia tersebut](/docs/id/cloud-environments#requests-that-never-get-the-credential). Jika kolektor Anda memerlukan kredensial, konfigurasikan seluruh ekspor melalui pengaturan terkelola server sebagai gantinya, karena ketika Anda menetapkan kredensial di sana, [Claude Code menghapus variabel endpoint yang ditetapkan di luar pengaturan terkelola](#how-managed-settings-lock-the-otlp-destination).

555 555 

556Pertahankan batasan ini dalam pikiran ketika Anda mengonfigurasi telemetri untuk sesi cloud:556Pertahankan batasan ini dalam pikiran ketika Anda mengonfigurasi telemetri untuk sesi cloud:

557 557 

overview.md +8 −6

Details

28 curl -fsSL https://claude.ai/install.sh | bash28 curl -fsSL https://claude.ai/install.sh | bash

29 ```29 ```

30 30 

31 Di Windows, prompt Anda menunjukkan `PS C:\` ketika Anda berada di PowerShell dan `C:\` tanpa `PS` ketika Anda berada di CMD.

32 

31 **Windows PowerShell:**33 **Windows PowerShell:**

32 34 

33 ```powershell theme={null}35 ```powershell theme={null}


42 44 

43 Ketika penginstal selesai, buka jendela terminal baru dan jalankan `claude --version`. Instalasi yang berfungsi dengan baik mencetak nomor versi. Jika shell Anda mengatakan `claude` tidak ditemukan atau tidak dikenali, direktori instalasi belum ada di PATH Anda: lihat [Perbaiki PATH Anda](/docs/id/troubleshoot-install#command-not-found-claude-after-installation).45 Ketika penginstal selesai, buka jendela terminal baru dan jalankan `claude --version`. Instalasi yang berfungsi dengan baik mencetak nomor versi. Jika shell Anda mengatakan `claude` tidak ditemukan atau tidak dikenali, direktori instalasi belum ada di PATH Anda: lihat [Perbaiki PATH Anda](/docs/id/troubleshoot-install#command-not-found-claude-after-installation).

44 46 

45 Jika Anda melihat `The token '&&' is not a valid statement separator`, Anda berada di PowerShell, bukan CMD. Jika Anda melihat `'irm' is not recognized as an internal or external command`, Anda berada di CMD, bukan PowerShell. Prompt Anda menunjukkan `PS C:\` ketika Anda berada di PowerShell dan `C:\` tanpa `PS` ketika Anda berada di CMD.47 Jika Anda melihat `The token '&&' is not a valid statement separator`, Anda berada di PowerShell, bukan CMD. Jika Anda melihat `'irm' is not recognized as an internal or external command`, Anda berada di CMD, bukan PowerShell.

46 48 

47 Jika perintah instalasi gagal dengan `syntax error near unexpected token '<'`, `403`, atau kesalahan curl lainnya, lihat [Troubleshoot installation](/docs/id/troubleshoot-install#find-your-error) untuk mencocokkan kesalahan dengan perbaikan dan untuk metode instalasi alternatif.49 Jika perintah instalasi gagal dengan `syntax error near unexpected token '<'`, `403`, atau kesalahan lainnya, lihat [Troubleshoot installation](/docs/id/troubleshoot-install#find-your-error) untuk mencocokkan kesalahan dengan perbaikan dan untuk metode instalasi alternatif.

48 50 

49 [Git for Windows](https://git-scm.com/downloads/win) direkomendasikan pada Windows native sehingga Claude Code dapat menggunakan alat Bash. Jika Git for Windows tidak diinstal, Claude Code menggunakan PowerShell sebagai alat shell sebagai gantinya. Pengaturan WSL tidak memerlukan Git for Windows.51 [Git for Windows](https://git-scm.com/downloads/win) direkomendasikan pada Windows native sehingga Claude Code dapat menggunakan alat Bash. Jika Git for Windows tidak diinstal, Claude Code menggunakan PowerShell sebagai alat shell sebagai gantinya. Pengaturan WSL tidak memerlukan Git for Windows.

50 52 


85 claude87 claude

86 ```88 ```

87 89 

88 Anda akan diminta untuk masuk pada penggunaan pertama. Jika Anda telah menetapkan variabel lingkungan `ANTHROPIC_API_KEY`, Claude Code melewati prompt login dan meminta Anda untuk menyetujui kunci sebagai gantinya. Itu saja! [Lanjutkan dengan Quickstart →](/docs/id/quickstart)90 Claude Code meminta Anda untuk masuk pada penggunaan pertama. Jika Anda telah menetapkan environment variable `ANTHROPIC_API_KEY` dan Anda menyetujui kunci tersebut saat Claude Code menanyakan apakah akan menggunakannya, Claude Code akan melewati permintaan masuk. [Lanjutkan dengan Mulai Cepat →](/docs/id/quickstart)

89 91 

90 <Tip>92 <Tip>

91 Lihat [pengaturan lanjutan](/docs/id/setup) untuk opsi instalasi, pembaruan manual, atau instruksi penghapusan. Kunjungi [pemecahan masalah instalasi](/docs/id/troubleshoot-install) jika Anda mengalami masalah.93 Lihat [pengaturan lanjutan](/docs/id/setup) untuk opsi instalasi, pembaruan manual, atau instruksi penghapusan. Kunjungi [pemecahan masalah instalasi](/docs/id/troubleshoot-install) jika Anda mengalami masalah.


163 claude "commit my changes with a descriptive message"165 claude "commit my changes with a descriptive message"

164 ```166 ```

165 167 

166 Di CI, Anda dapat mengotomatisasi tinjauan kode dan triase masalah dengan [GitHub Actions](/docs/id/github-actions) atau [GitLab CI/CD](/docs/id/gitlab-ci-cd).168 Di CI, Anda dapat mengotomatisasi code review dan triase masalah dengan [GitHub Actions](/docs/id/github-actions) atau [GitLab CI/CD](/docs/id/gitlab-ci-cd).

167 </Accordion>169 </Accordion>

168 170 

169 <Accordion title="Hubungkan alat Anda dengan MCP" icon="plug">171 <Accordion title="Hubungkan alat Anda dengan MCP" icon="plug">

170 [Model Context Protocol (MCP)](/docs/id/mcp) adalah standar terbuka untuk menghubungkan alat AI ke sumber data eksternal. Dengan MCP, Claude Code dapat membaca dokumen desain Anda di Google Drive, memperbarui tiket di Jira, menarik data dari Slack, atau menggunakan alat khusus Anda sendiri. [Panduan cepat MCP](/docs/id/mcp-quickstart) menghubungkan server pertama Anda dari awal hingga akhir.172 [Model Context Protocol (MCP)](/docs/id/mcp) adalah standar terbuka untuk menghubungkan alat AI ke sumber data eksternal. Dengan MCP, Claude Code dapat membaca dokumen desain Anda di Google Drive, memperbarui tiket di Jira, menarik data dari Slack, atau menggunakan alat khusus Anda sendiri. [Mulai cepat MCP](/docs/id/mcp-quickstart) menghubungkan server pertama Anda dari awal hingga akhir.

171 </Accordion>173 </Accordion>

172 174 

173 <Accordion title="Sesuaikan dengan instruksi, skills, dan hooks" icon="sliders">175 <Accordion title="Sesuaikan dengan instruksi, skills, dan hooks" icon="sliders">

174 [`CLAUDE.md`](/docs/id/memory) adalah file markdown yang Anda tambahkan ke root proyek Anda yang dibaca Claude Code di awal setiap sesi. Gunakan untuk menetapkan standar pengkodean, keputusan arsitektur, perpustakaan pilihan, dan daftar periksa tinjauan. Jika repositori Anda sudah memiliki `AGENTS.md` untuk agen pengkodean lainnya, Claude Code [dapat membacanya](/docs/id/memory#agents-md) sendiri atau bersama `CLAUDE.md`. Claude juga membangun [memori otomatis](/docs/id/memory#auto-memory) saat bekerja, menyimpan pembelajaran di seluruh sesi tanpa Anda menulis apa pun.176 [`CLAUDE.md`](/docs/id/memory) adalah file markdown yang Anda tambahkan ke root proyek Anda yang dibaca Claude Code di awal setiap sesi. Gunakan untuk menetapkan standar pengkodean, keputusan arsitektur, perpustakaan pilihan, dan daftar periksa tinjauan. Jika repositori Anda sudah memiliki `AGENTS.md` untuk agent pengkodean lainnya, Claude Code [dapat membacanya](/docs/id/memory#agents-md) sebagai pengganti `CLAUDE.md`. Claude juga membangun [auto memory](/docs/id/memory#auto-memory) saat bekerja, menyimpan pembelajaran di seluruh sesi tanpa Anda menulis apa pun.

175 177 

176 Buat [skills](/docs/id/skills) untuk mengemas alur kerja yang dapat diulang yang dapat dibagikan tim Anda, seperti `/review-pr` atau `/deploy-staging`.178 Buat [skills](/docs/id/skills) untuk mengemas alur kerja yang dapat diulang yang dapat dibagikan tim Anda, seperti `/review-pr` atau `/deploy-staging`.

177 179 

Details

333 333 

334* **Paket**: Semua paket.334* **Paket**: Semua paket.

335* **Organisasi**: pada Team dan Enterprise, auto mode tersedia secara default. Administrator dapat mematikannya untuk organisasi dengan menetapkan `permissions.disableAutoMode` ke `"disable"` dalam [pengaturan terkelola](/docs/id/managed-settings).335* **Organisasi**: pada Team dan Enterprise, auto mode tersedia secara default. Administrator dapat mematikannya untuk organisasi dengan menetapkan `permissions.disableAutoMode` ke `"disable"` dalam [pengaturan terkelola](/docs/id/managed-settings).

336* **Model**: pada Anthropic API dan [Claude Platform on AWS](/docs/id/claude-platform-on-aws), Claude Opus 4.6 atau lebih baru, Sonnet 4.6 atau lebih baru, atau [model Fable](/docs/id/model-config#work-with-fable). Pada Amazon Bedrock, Agent Platform Google Cloud, Microsoft Foundry, dan sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk, hanya Claude Sonnet 5 atau lebih baru, Opus 4.7 atau lebih baru, dan model Fable. Model yang lebih lama, termasuk Sonnet 4.5, Opus 4.5, Haiku, dan model claude-3, tidak didukung di penyedia mana pun.336* **Model**: pada Anthropic API dan [Claude Platform on AWS](/docs/id/claude-platform-on-aws), Claude Opus 4.6 atau lebih baru, Sonnet 4.6 atau lebih baru, Haiku 5.5, atau [model Fable](/docs/id/model-config#work-with-fable). Pada Amazon Bedrock, Agent Platform Google Cloud, Microsoft Foundry, dan sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk, hanya Claude Sonnet 5 atau lebih baru, Opus 4.7 atau lebih baru, Haiku 5.5, dan model Fable. Model yang lebih lama, termasuk Sonnet 4.5, Opus 4.5, Haiku 4.5, dan model claude-3, tidak didukung di penyedia mana pun.

337* **Penyedia**: tersedia secara default pada Anthropic API, Claude Platform on AWS, Amazon Bedrock, Agent Platform Google Cloud, Microsoft Foundry, dan sesi gateway aplikasi Claude yang masuk.337* **Penyedia**: tersedia secara default pada Anthropic API, Claude Platform on AWS, Amazon Bedrock, Agent Platform Google Cloud, Microsoft Foundry, dan sesi gateway aplikasi Claude yang masuk.

338 338 

339Jika Claude Code melaporkan auto mode sebagai tidak tersedia, pertama periksa persyaratan ini dan apakah ada file pengaturan yang menetapkan [`disableAutoMode`](/docs/id/settings-reference#disableautomode). Anthropic juga dapat mematikan auto mode di sisi server, atau server dapat menolak auto mode untuk akun Anda. Sesi yang menerima salah satu jawaban tersebut menjaga auto mode tetap mati sampai sesi berakhir, jadi mulai sesi baru nanti.339Jika Claude Code melaporkan auto mode sebagai tidak tersedia, pertama periksa persyaratan ini dan apakah ada file pengaturan yang menetapkan [`disableAutoMode`](/docs/id/settings-reference#disableautomode). Anthropic juga dapat mematikan auto mode di sisi server, atau server dapat menolak auto mode untuk akun Anda. Sesi yang menerima salah satu jawaban tersebut menjaga auto mode tetap mati sampai sesi berakhir, jadi mulai sesi baru nanti.


348 348 

349Pada [Amazon Bedrock](/docs/id/amazon-bedrock), [Agent Platform Google Cloud](/docs/id/google-vertex-ai), [Microsoft Foundry](/docs/id/microsoft-foundry), dan sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk, auto mode tersedia secara default. Ketika tidak ada hal lain yang menetapkan mode izin, ini juga merupakan [mode izin awal bawaan](#which-mode-a-session-starts-in), pada versi yang tercantum dalam tabel di bagian tersebut. Untuk memilih mode izin awal sendiri, atur `permissions.defaultMode` seperti yang dijelaskan [Mulai dalam mode izin yang berbeda](#start-in-a-different-mode), atau pilih mode izin dari indikator mode ekstensi VS Code.349Pada [Amazon Bedrock](/docs/id/amazon-bedrock), [Agent Platform Google Cloud](/docs/id/google-vertex-ai), [Microsoft Foundry](/docs/id/microsoft-foundry), dan sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk, auto mode tersedia secara default. Ketika tidak ada hal lain yang menetapkan mode izin, ini juga merupakan [mode izin awal bawaan](#which-mode-a-session-starts-in), pada versi yang tercantum dalam tabel di bagian tersebut. Untuk memilih mode izin awal sendiri, atur `permissions.defaultMode` seperti yang dijelaskan [Mulai dalam mode izin yang berbeda](#start-in-a-different-mode), atau pilih mode izin dari indikator mode ekstensi VS Code.

350 350 

351Hanya Claude Sonnet 5 atau lebih baru, Opus 4.7 atau lebih baru, dan model Fable yang didukung pada penyedia ini. Pada model lain apa pun, sesi dimulai dalam Manual sebagai gantinya.351Hanya Claude Sonnet 5 atau lebih baru, Opus 4.7 atau lebih baru, Haiku 5.5, dan model Fable yang didukung pada penyedia ini. Pada model lain apa pun, sesi dimulai dalam Manual sebagai gantinya. Auto mode dengan Haiku 5.5 pada penyedia ini memerlukan Claude Code v2.1.293 atau lebih baru.

352 352 

353Untuk mencegah pengembang menggunakan auto mode, atur `disableAutoMode` ke `"disable"` dalam [pengaturan terkelola](/docs/id/managed-settings). Ini menghapus `auto` dari siklus `Shift+Tab`, dan sesi yang dimulai dengan `--permission-mode auto` dimulai dalam Manual sebagai gantinya. Sesi yang sudah berjalan dalam auto mode akan keluar darinya ketika pengaturan mencapai sesi itu dari [sumber yang diterapkan admin](/docs/id/managed-settings#which-managed-source-claude-code-uses), dan menampilkan `auto mode disabled by settings`. Sebelum v2.1.251, sesi yang sedang berjalan tetap dalam auto mode sampai berakhir.353Untuk mencegah pengembang menggunakan auto mode, atur `disableAutoMode` ke `"disable"` dalam [pengaturan terkelola](/docs/id/managed-settings). Ini menghapus `auto` dari siklus `Shift+Tab`, dan sesi yang dimulai dengan `--permission-mode auto` dimulai dalam Manual sebagai gantinya. Sesi yang sudah berjalan dalam auto mode akan keluar darinya ketika pengaturan mencapai sesi itu dari [sumber yang diterapkan admin](/docs/id/managed-settings#which-managed-source-claude-code-uses), dan menampilkan `auto mode disabled by settings`. Sebelum v2.1.251, sesi yang sedang berjalan tetap dalam auto mode sampai berakhir.

354 354 

plugin-evals.md +7 −3

Details

79 claude plugin eval init79 claude plugin eval init

80 ```80 ```

81 81 

82 Jika Claude Code belum mempercayai direktori ini, pertama-tama menanyakan `Trust this plugin directory?`; jawab `y`. Sesi Claude Code interaktif kemudian terbuka. Claude membaca plugin Anda dan menanyakan apa hasil yang baik, mengusulkan prompt yang seharusnya dan tidak seharusnya memicu plugin, merancang grader untuk masing-masing, menjalankan pilot mereka sekali untuk memeriksa perilakunya, dan menulis satu direktori kasus per prompt di bawah `evals/`, masing-masing dinamai setelah promptnya. Ketika Claude memberi tahu Anda suite siap, keluar dari sesi itu dengan `/exit` atau Ctrl+D untuk kembali ke shell Anda.82 Jika Claude Code belum mempercayai direktori ini, pertama-tama menanyakan `Trust this plugin directory?`; jawab `y`.

83 83 

84 Jika Anda sudah memiliki sesi Claude Code terbuka di root plugin, Anda dapat meminta Claude di sana untuk menjalankan `claude plugin eval init`. Claude menjalankan perintah dan kemudian menanyakan Anda pertanyaan yang sama dalam percakapan itu.84 Sesi Claude Code interaktif kemudian terbuka. Claude membaca plugin Anda dan menanyakan apa hasil yang baik, mengusulkan prompt yang seharusnya dan tidak seharusnya memicu plugin, merancang grader untuk masing-masing, menjalankannya sekali sebagai uji coba untuk memeriksa perilakunya, dan menulis satu direktori kasus per prompt di bawah `evals/`, masing-masing dinamai sesuai promptnya.

85 

86 Ketika Claude memberi tahu Anda suite siap, keluar dari sesi itu dengan `/exit` atau Ctrl+D untuk kembali ke shell Anda.

87 

88 Jika Anda sudah memiliki sesi Claude Code terbuka di root plugin, Anda dapat sebagai gantinya meminta Claude di sana untuk menjalankan `claude plugin eval init`. Claude menjalankan perintah dan kemudian menanyakan Anda pertanyaan yang sama dalam percakapan itu.

85 89 

86 Jika Anda lebih suka menulis kasus sendiri untuk melihat dengan tepat apa yang berisi file, ikuti [Tulis kasus dengan tangan](#write-a-case-manually) dan kembali ke sini untuk menjalankannya.90 Jika Anda lebih suka menulis kasus sendiri untuk melihat dengan tepat apa yang berisi file, ikuti [Tulis kasus dengan tangan](#write-a-case-manually) dan kembali ke sini untuk menjalankannya.

87 </Step>91 </Step>


118 122 

119 Temuan pertama yang paling umum adalah `Δ` mendekati nol dengan grader `tool_used: Skill` kasus gagal, yang berarti Claude tidak memilih skill Anda pada frasa alami. Sesuaikan [`description`](/docs/id/skills#frontmatter-reference) skill, jalankan `claude plugin eval .` lagi, dan bandingkan.123 Temuan pertama yang paling umum adalah `Δ` mendekati nol dengan grader `tool_used: Skill` kasus gagal, yang berarti Claude tidak memilih skill Anda pada frasa alami. Sesuaikan [`description`](/docs/id/skills#frontmatter-reference) skill, jalankan `claude plugin eval .` lagi, dan bandingkan.

120 124 

121 Untuk mengulangi satu kasus dengan murah, jalankan satu arm sekali. Satu run bising, jadi konfirmasi perubahan apa pun pada tiga run default sebelum Anda mempercayainya. Dengan satu arm tabel menunjukkan kolom `SCORE` dan `PASS%` alih-alih `WITH`, `W/OUT`, dan `Δ`:125 Untuk mengulangi satu kasus dengan lebih sedikit run, jalankan satu arm sekali. Satu run bising, jadi konfirmasi perubahan apa pun pada tiga run default sebelum Anda mempercayainya. Dengan satu arm tabel menunjukkan kolom `SCORE` dan `PASS%` alih-alih `WITH`, `W/OUT`, dan `Δ`:

122 126 

123 ```bash theme={null}127 ```bash theme={null}

124 claude plugin eval . --case <case-name> --runs 1 --ablation none128 claude plugin eval . --case <case-name> --runs 1 --ablation none

Details

733You are a security reviewer. Read the changed files and report injection, authentication, and secrets-handling risks.733You are a security reviewer. Read the changed files and report injection, authentication, and secrets-handling risks.

734```734```

735 735 

736Agent ini dinamai `my-plugin:security-reviewer`, dan pengguna dapat [memanggilnya secara eksplisit](/docs/id/sub-agents#invoke-subagents-explicitly) dengan `@agent-my-plugin:security-reviewer`. Bentuk nama adalah `<plugin>:<name>`, di mana `<name>` berasal dari frontmatter, atau dari nama file ketika tidak ada.736Agent ini dinamai `my-plugin:security-reviewer`, dan pengguna dapat [memanggilnya secara eksplisit](/docs/id/sub-agents#invoke-subagents-explicitly) dengan `@agent-my-plugin:security-reviewer`. Bentuk nama adalah `<plugin>:<name>`, di mana `<name>` berasal dari field `name` di frontmatter, atau dari nama file ketika field itu tidak ada.

737 737 

738Kunci manifest `agents` menggantikan pemindaian `agents/`.738Kunci manifest `agents` menggantikan pemindaian `agents/`.

739 739 

Details

428 428 

429| Elemen | Apa yang digambarnya | Di mana |429| Elemen | Apa yang digambarnya | Di mana |

430| :- | :- | :- |430| :- | :- | :- |

431| `Box` | Kontainer flex. Mengambil prop tata letak seperti `flexDirection`, `columnGap`, `padding`, `borderStyle`, dan `width`. | Di mana-mana |431| `Box` | Kontainer flex. Mengambil prop tata letak seperti `flexDirection`, `columnGap`, `padding`, [`borderStyle`](/docs/id/plugins/mods/reference#box-border-styles), dan `width`. | Di mana-mana |

432| `Text` | Teks bergaya. Mengambil `color`, `bold`, `dimColor`, `italic`, dan `wrap`. `color` adalah kunci tema atau warna seperti `'red'`. `wrap` adalah `'wrap'`, `'truncate'`, `'truncate-start'`, `'truncate-middle'`, atau `'truncate-end'`. | Di mana-mana |432| `Text` | Teks bergaya. Mengambil `color`, `bold`, `dimColor`, `italic`, dan `wrap`. `color` adalah kunci tema atau warna seperti `'red'`. `wrap` adalah `'wrap'`, `'truncate'`, `'truncate-start'`, `'truncate-middle'`, atau `'truncate-end'`. | Di mana-mana |

433| `Button` | Kontrol yang memanggil `onPress` | Di mana-mana |433| `Button` | Kontrol yang memanggil `onPress` | Di mana-mana |

434| `Link`, `Code`, `Markdown` | Tautan dengan `href` dan `label` opsional, blok kode, dan teks yang diformat seperti balasan Claude. `Markdown` mengambil kontennya dalam prop `text`, bukan dalam `children`, dan membutuhkan `key` saat Anda meneruskan `onLinkPress`. | Di mana-mana |434| `Link`, `Code`, `Markdown` | Tautan dengan `href` dan `label` opsional, blok kode, dan teks yang diformat seperti balasan Claude. `Markdown` mengambil kontennya dalam prop `text`, bukan dalam `children`, dan membutuhkan `key` saat Anda meneruskan `onLinkPress`. | Di mana-mana |


563Banyak panel adalah bidang teks dengan daftar di bawahnya. Contoh di bagian ini adalah panel catatan: Anda mengetik catatan dan menekan Enter untuk menambahkannya, dan setiap catatan memiliki tombol `x` yang menghapusnya. Dengan dua catatan ditambahkan, terminal menggambar panel dengan cara ini:563Banyak panel adalah bidang teks dengan daftar di bawahnya. Contoh di bagian ini adalah panel catatan: Anda mengetik catatan dan menekan Enter untuk menambahkannya, dan setiap catatan memiliki tombol `x` yang menghapusnya. Dengan dua catatan ditambahkan, terminal menggambar panel dengan cara ini:

564 564 

565```text theme={null}565```text theme={null}

566╭──────────────────────────────────────────────────────────╮566╭────────────────────────────────────────────────────────✕─╮

567│ Note: Type a note and press Enter ⏎ add ✕ │567│ Note: Type a note and press Enter ⏎ add │

568│ x buy milk │568│ x buy milk │

569│ x call bob │569│ x call bob │

570╰──────────────────────────────────────────────────────────╯570╰──────────────────────────────────────────────────────────╯

571```571```

572 572 

573`✕` di batas atas adalah tanda milik Claude Code sendiri untuk menutup panel.

574 

573Contoh menggunakan teknik berikut:575Contoh menggunakan teknik berikut:

574 576 

575* **Ambil input yang diketik**: `Input` memanggil `onSubmit(value)` dengan teks bidang saat pengguna menekan Enter, dan `onInput(value)` pada setiap perubahan577* **Ambil input yang diketik**: `Input` memanggil `onSubmit(value)` dengan teks bidang saat pengguna menekan Enter, dan `onInput(value)` pada setiap perubahan

Details

242Untuk menyesuaikan sebuah tree dengan titiknya, baca prop berikut di dalam hook:242Untuk menyesuaikan sebuah tree dengan titiknya, baca prop berikut di dalam hook:

243 243 

244* **Lebar sebuah `Pane` atau band**: gambar sesuai `e.props.bodyColumns`244* **Lebar sebuah `Pane` atau band**: gambar sesuai `e.props.bodyColumns`

245* **Tinggi sebuah `Pane` di samping transkrip**: jika `e.props.placement` adalah `'dock'`, `e.props.scroll.bodyRows` adalah jumlah baris yang dimiliki panel245* **Tinggi sebuah `Pane` di samping transkrip**: jika `e.props.placement` adalah `'dock'`, `e.props.scroll.bodyRows` adalah jumlah baris yang dimiliki panel untuk tree Anda

246* **Tinggi sebuah `Pane` di atas prompt**: jika `e.props.placement` adalah `'inline'`, panel bertambah sesuai tree Anda hingga suatu batas, dan `bodyRows` adalah batas tersebut. [Field `rows` dari `$.ui.open`](/docs/id/plugins/mods/interface#open-a-pane-at-the-right-time) meminta batas yang berbeda.246* **Tinggi sebuah `Pane` di atas prompt**: jika `e.props.placement` adalah `'inline'`, panel bertambah sesuai tree Anda hingga suatu batas, dan `bodyRows` adalah batas tersebut. [Field `rows` dari `$.ui.open`](/docs/id/plugins/mods/interface#open-a-pane-at-the-right-time) meminta batas yang berbeda.

247 247 

248Tree yang lebih tinggi daripada panel akan bergulir secara keseluruhan.248Tree yang lebih tinggi daripada panel akan bergulir secara keseluruhan.


255 255 

256| Elemen | Prop utama | Terminal | Desktop |256| Elemen | Prop utama | Terminal | Desktop |

257| :- | :- | :-: | :-: |257| :- | :- | :-: | :-: |

258| [`Box`](/docs/id/plugins/mods/interface#build-a-tree-from-elements) | `key`, tata letak flex, `gap`, `padding`, `margin`, `width`, `height`, `borderStyle`, `backgroundColor`, `position`, `hover` | ✓ | ✓ |258| [`Box`](/docs/id/plugins/mods/interface#build-a-tree-from-elements) | `key`, tata letak flex, `gap`, `padding`, `margin`, `width`, `height`, [`borderStyle`](#box-border-styles), `backgroundColor`, `position`, `hover` | ✓ | ✓ |

259| [`Text`](/docs/id/plugins/mods/interface#build-a-tree-from-elements) | `color`, `backgroundColor`, `bold`, `italic`, `underline`, `dimColor`, `inverse`, `wrap` | ✓ | ✓ |259| [`Text`](/docs/id/plugins/mods/interface#build-a-tree-from-elements) | `color`, `backgroundColor`, `bold`, `italic`, `underline`, `dimColor`, `inverse`, `wrap` | ✓ | ✓ |

260| [`Button`](/docs/id/plugins/mods/interface#respond-to-presses-and-typing) | `key`, `label`, `onPress`, `hotkey`, `plain`, `dimColor`, `autoFocus`, `action` | ✓ | ✓ |260| [`Button`](/docs/id/plugins/mods/interface#respond-to-presses-and-typing) | `key`, `label`, `onPress`, `hotkey`, `plain`, `dimColor`, `autoFocus`, `action` | ✓ | ✓ |

261| `Link` | `href`, `label` | ✓ | ✓ |261| `Link` | `href`, `label` | ✓ | ✓ |


270 270 

271Aturan `Button` lainnya: `action` menyebutkan salah satu [aksi pintasan keyboard](/docs/id/keybindings) milik Claude Code sendiri, dan pintasan keyboard pengguna untuk aksi tersebut akan menekan tombol jika pintasan itu berupa chord atau tombol dengan modifier. `hotkey` berupa digit pada tombol di band juga terpicu saat pengguna mengetik digit tersebut saja ke dalam prompt kosong lalu berhenti sejenak. Jika dua tombol dalam satu gambar menyebutkan `hotkey` yang sama, tombol yang lebih belakang yang mendapatkannya. `autoFocus` hanya menerima `true` pada kontrol apa pun, jadi hilangkan prop tersebut untuk menonaktifkannya.271Aturan `Button` lainnya: `action` menyebutkan salah satu [aksi pintasan keyboard](/docs/id/keybindings) milik Claude Code sendiri, dan pintasan keyboard pengguna untuk aksi tersebut akan menekan tombol jika pintasan itu berupa chord atau tombol dengan modifier. `hotkey` berupa digit pada tombol di band juga terpicu saat pengguna mengetik digit tersebut saja ke dalam prompt kosong lalu berhenti sejenak. Jika dua tombol dalam satu gambar menyebutkan `hotkey` yang sama, tombol yang lebih belakang yang mendapatkannya. `autoFocus` hanya menerima `true` pada kontrol apa pun, jadi hilangkan prop tersebut untuk menonaktifkannya.

272 272 

273<h3 id="box-border-styles">

274 Gaya border `Box`

275</h3>

276 

277Untuk menggambar border di sekeliling `Box`, atur `borderStyle`-nya ke salah satu nama berikut, seperti pada `borderStyle: 'round'`. Setiap baris menjelaskan apa yang digambar terminal untuk nama tersebut dan menunjukkan tepi atas border.

278 

279| `borderStyle` | Yang digambar terminal | Tepi atas |

280| :- | :- | :- |

281| `'single'` | Garis tipis dengan sudut persegi | `┌──┐` |

282| `'double'` | Garis ganda | `╔══╗` |

283| `'round'` | Garis tipis dengan sudut membulat | `╭──╮` |

284| `'bold'` | Garis tebal | `┏━━┓` |

285| `'singleDouble'` | Garis tipis di atas dan bawah, garis ganda di sisi | `╓──╖` |

286| `'doubleSingle'` | Garis ganda di atas dan bawah, garis tipis di sisi | `╒══╕` |

287| `'classic'` | Karakter ASCII `+`, `-`, dan `\|` | `+--+` |

288| `'arrow'` | Panah yang menunjuk ke dalam `Box` | `↘↓↓↙` |

289| `'dashed'` | Garis putus-putus dengan sudut kosong | `╌╌` |

290| `'quote'` | Sebuah bar, `▎`, di sepanjang sisi kiri dan sel kosong di tiga sisi lainnya | Kosong |

291 

292`Box` yang `borderStyle`-nya menyebutkan nama lain, seperti `'rounded'`, digambar tanpa border.

293 

273<h2 id="limits">294<h2 id="limits">

274 Batas295 Batas

275</h2>296</h2>

Details

15<Note>15<Note>

16 Kasus-kasus ini tercakup di halaman lain:16 Kasus-kasus ini tercakup di halaman lain:

17 17 

18 * **Mengapa scopes, cache, dan precedence berperilaku seperti yang mereka lakukan**: baca [Plugin loading reference](/docs/id/plugins/loading)18 * **Mengapa cakupan, cache, dan prioritas berperilaku seperti yang mereka lakukan**: baca [Plugin loading reference](/docs/id/plugins/loading)

19 * **Mencari flag, field, atau command**: gunakan [plugin commands reference](/docs/id/plugins/cli-reference), [manifest reference](/docs/id/plugins/manifest-reference), atau [marketplace reference](/docs/id/plugins/marketplace-reference)19 * **Mencari flag, field, atau perintah**: gunakan [plugin commands reference](/docs/id/plugins/cli-reference), [manifest reference](/docs/id/plugins/manifest-reference), atau [marketplace reference](/docs/id/plugins/marketplace-reference)

20 * **Pesan `hooks module not loaded` atau `hooks module did not load`**: plugin tersebut adalah [mod](/docs/id/plugins/mods/overview), jadi baca [The mod doesn't load](/docs/id/plugins/mods/troubleshoot#the-mod-doesn’t-load)

20</Note>21</Note>

21 22 

22Cari pesan yang tepat yang Anda lihat. Setiap pesan tercantum di bawah tahap yang menghasilkannya, yang tidak selalu merupakan perintah yang Anda jalankan. Misalnya, instalasi dapat gagal karena marketplace hilang, jadi pesan itu berada di bawah [Add a marketplace](#add-a-marketplace).23Cari pesan yang tepat yang Anda lihat. Setiap pesan tercantum di bawah tahap yang menghasilkannya, yang tidak selalu merupakan perintah yang Anda jalankan. Misalnya, instalasi dapat gagal karena marketplace hilang, jadi pesan itu berada di bawah [Add a marketplace](#add-a-marketplace).

prompt-caching.md +90 −90

Details

14 Bagaimana cache diorganisir14 Bagaimana cache diorganisir

15</h2>15</h2>

16 16 

17Setiap kali Anda mengirim pesan di Claude Code, sistem membuat permintaan API baru. Model tidak mengingat apa pun di antara permintaan, jadi Claude Code mengirim ulang konteks lengkap: prompt sistem, konteks proyek Anda, setiap pesan dan hasil alat sebelumnya, dan pesan baru Anda. Konten baru ditambahkan di akhir, yang berarti sebagian besar dari setiap permintaan identik dengan yang sebelumnya. Prompt caching adalah cara API menghindari pemrosesan ulang bagian yang tidak berubah.17Setiap kali Anda mengirim pesan di Claude Code, sistem membuat permintaan API baru. Model tidak mengingat apa pun di antara permintaan, jadi Claude Code mengirim ulang konteks lengkap: system prompt, konteks proyek Anda, setiap pesan dan hasil tool sebelumnya, dan pesan baru Anda. Konten baru ditambahkan di akhir, yang berarti sebagian besar dari setiap permintaan identik dengan yang sebelumnya. Prompt caching adalah cara API menghindari pemrosesan ulang bagian yang tidak berubah.

18 18 

19API melakukan cache dengan mencocokkan awal setiap permintaan, yang disebut prefix, terhadap konten yang baru saja diproses. Pada giliran normal, prefix adalah seluruh permintaan sebelumnya dan hanya pertukaran terbaru yang baru. Kecocokan bersifat tepat, jadi perubahan di mana pun dalam prefix menghitung ulang semuanya setelahnya. Tidak ada caching per-file atau per-segment. Lihat [bagaimana prompt caching bekerja](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#how-prompt-caching-works) dalam referensi API untuk mekanisme yang mendasarinya.19API melakukan cache dengan mencocokkan awal setiap permintaan, yang disebut prefix, terhadap konten yang baru saja diproses. Pada giliran normal, prefix adalah seluruh permintaan sebelumnya dan hanya pertukaran terbaru yang baru. Kecocokan bersifat tepat, jadi perubahan di mana pun dalam prefix menghitung ulang semuanya setelahnya. Tidak ada caching per-file atau per-segment. Lihat [bagaimana prompt caching bekerja](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#how-prompt-caching-works) dalam referensi API untuk mekanisme yang mendasarinya.

20 20 

21<img src="https://mintcdn.com/claude-code/VbDJw--l6T9a9Wvm/images/prompt-caching-prefix.svg?fit=max&auto=format&n=VbDJw--l6T9a9Wvm&q=85&s=f2e8f0b8298a50305fe428ca3f1d1594" className="dark:hidden" alt="Empat giliran ditampilkan sebagai batang horizontal yang berkembang. Permintaan setiap giliran berisi semuanya dari giliran sebelumnya ditambah pertukaran terbaru ditambahkan di akhir. Pada giliran dua dan tiga, prefix yang tidak berubah dibaca dari cache dan hanya pertukaran baru yang diproses. Pada giliran empat, prompt sistem berubah, jadi prefix tidak lagi cocok dan seluruh permintaan diproses ulang dan ditulis." width="720" height="454" data-path="images/prompt-caching-prefix.svg" />21<img src="https://mintcdn.com/claude-code/VbDJw--l6T9a9Wvm/images/prompt-caching-prefix.svg?fit=max&auto=format&n=VbDJw--l6T9a9Wvm&q=85&s=f2e8f0b8298a50305fe428ca3f1d1594" className="dark:hidden" alt="Empat giliran ditampilkan sebagai batang horizontal yang berkembang. Permintaan setiap giliran berisi semuanya dari giliran sebelumnya ditambah pertukaran terbaru ditambahkan di akhir. Pada giliran dua dan tiga, prefix yang tidak berubah dibaca dari cache dan hanya pertukaran baru yang diproses. Pada giliran empat, system prompt berubah, jadi prefix tidak lagi cocok dan seluruh permintaan diproses ulang dan ditulis." width="720" height="454" data-path="images/prompt-caching-prefix.svg" />

22 22 

23<img src="https://mintcdn.com/claude-code/_xqph1dUOslCOwsj/images/prompt-caching-prefix-dark.svg?fit=max&auto=format&n=_xqph1dUOslCOwsj&q=85&s=297dc1c639f0915cae858d0c4b6f3be5" className="hidden dark:block" alt="Empat giliran ditampilkan sebagai batang horizontal yang berkembang. Permintaan setiap giliran berisi semuanya dari giliran sebelumnya ditambah pertukaran terbaru ditambahkan di akhir. Pada giliran dua dan tiga, prefix yang tidak berubah dibaca dari cache dan hanya pertukaran baru yang diproses. Pada giliran empat, prompt sistem berubah, jadi prefix tidak lagi cocok dan seluruh permintaan diproses ulang dan ditulis." width="720" height="454" data-path="images/prompt-caching-prefix-dark.svg" />23<img src="https://mintcdn.com/claude-code/_xqph1dUOslCOwsj/images/prompt-caching-prefix-dark.svg?fit=max&auto=format&n=_xqph1dUOslCOwsj&q=85&s=297dc1c639f0915cae858d0c4b6f3be5" className="hidden dark:block" alt="Empat giliran ditampilkan sebagai batang horizontal yang berkembang. Permintaan setiap giliran berisi semuanya dari giliran sebelumnya ditambah pertukaran terbaru ditambahkan di akhir. Pada giliran dua dan tiga, prefix yang tidak berubah dibaca dari cache dan hanya pertukaran baru yang diproses. Pada giliran empat, system prompt berubah, jadi prefix tidak lagi cocok dan seluruh permintaan diproses ulang dan ditulis." width="720" height="454" data-path="images/prompt-caching-prefix-dark.svg" />

24 24 

25Untuk mendapatkan hasil maksimal dari pencocokan prefix, Claude Code mengurutkan setiap permintaan sehingga konten yang jarang berubah di antara giliran muncul terlebih dahulu:25Untuk mendapatkan hasil maksimal dari pencocokan prefix, Claude Code mengurutkan setiap permintaan sehingga konten yang jarang berubah di antara giliran muncul terlebih dahulu:

26 26 

27| Layer | Konten | Berubah ketika |27| Layer | Konten | Berubah ketika |

28| - | - | - |28| - | - | - |

29| Prompt sistem | Instruksi inti, definisi alat | Set definisi alat yang dimuat berubah |29| System prompt | Instruksi inti, definisi tool | Set definisi tool yang dimuat berubah |

30| Konteks proyek | CLAUDE.md, auto memory, unscoped rules | Sesi dimulai, atau setelah `/clear` atau `/compact` |30| Konteks proyek | CLAUDE.md, auto memory, aturan tanpa cakupan | Sesi dimulai, atau setelah `/clear` atau `/compact` |

31| Percakapan | Pesan Anda, respons Claude, hasil alat | Setiap giliran |31| Percakapan | Pesan Anda, respons Claude, hasil tool | Setiap giliran |

32 32 

33Perubahan pada layer percakapan meninggalkan prompt sistem dan konteks proyek di-cache. Perubahan pada prompt sistem membatalkan semuanya, karena semua konten selanjutnya sekarang berada di belakang prefix yang berbeda. Kolom ketiga memberikan pemicu umum daripada daftar lengkap, dan bagian di bawah mencakup set lengkap.33Perubahan pada layer percakapan meninggalkan system prompt dan konteks proyek di-cache. Perubahan pada system prompt membatalkan semuanya, karena semua konten selanjutnya sekarang berada di belakang prefix yang berbeda. Kolom ketiga memberikan pemicu umum daripada daftar lengkap, dan bagian di bawah mencakup set lengkap.

34 34 

35Aturan pencocokan prefix menjelaskan sebagian besar perilaku di halaman ini. [Plan mode](/docs/id/permission-modes#analyze-before-you-edit-with-plan-mode) dan [skill loading](/docs/id/skills), misalnya, menambahkan instruksi mereka sebagai pesan percakapan, jadi prefix yang di-cache tetap utuh.35Aturan pencocokan prefix menjelaskan sebagian besar perilaku di halaman ini. [Plan mode](/docs/id/permission-modes#analyze-before-you-edit-with-plan-mode) dan [pemuatan skill](/docs/id/skills), misalnya, menambahkan instruksi mereka sebagai pesan percakapan, jadi prefix yang di-cache tetap utuh.

36 36 

37Dua pengaturan tidak muncul dalam tabel layer tetapi masih mempengaruhi apa yang tetap di-cache:37Dua pengaturan tidak muncul dalam tabel layer tetapi masih mempengaruhi apa yang tetap di-cache:

38 38 

39* **Model**: setiap model memiliki cache-nya sendiri. Mengganti model menghitung ulang seluruh permintaan bahkan ketika kontennya identik. Lihat [Switching models](#switching-models) di bawah.39* **Model**: setiap model memiliki cache-nya sendiri. Mengganti model menghitung ulang seluruh permintaan bahkan ketika kontennya identik. Lihat [Switching models](#switching-models) di bawah.

40* **Effort level**: pada sebagian besar model, setiap effort level memiliki cache-nya sendiri, jadi mengubah effort di tengah sesi menghitung ulang seluruh permintaan. Pada Opus 5.5, Sonnet 5.5, dan Fable 5.1 dengan API key atau langganan Claude, cache tetap utuh secara default. Lihat [Changing effort level](#changing-effort-level) di bawah.40* **Tingkat effort**: pada sebagian besar model, setiap tingkat effort memiliki cache-nya sendiri, jadi mengubah effort di tengah sesi menghitung ulang seluruh permintaan. Pada Opus 5.5, Sonnet 5.5, Haiku 5.5, dan Fable 5.1 dengan kunci API atau langganan Claude, cache tetap utuh secara default. Lihat [Changing effort level](#changing-effort-level) di bawah.

41 41 

42<Tip>42<Tip>

43 Pilih model dan effort level Anda di awal sesi, kemudian simpan `/compact` untuk istirahat alami di antara tugas. Semakin sedikit perubahan yang Anda buat di tengah tugas, semakin tinggi cache hit rate Anda.43 Pilih model dan tingkat effort Anda di awal sesi, kemudian simpan `/compact` untuk jeda alami di antara tugas. Semakin sedikit perubahan yang Anda buat di tengah tugas, semakin tinggi cache hit rate Anda.

44</Tip>44</Tip>

45 45 

46<h3 id="where-the-cache-lives">46<h3 id="where-the-cache-lives">


49 49 

50Caching terjadi di sisi server, dalam infrastruktur apa pun yang melayani model Anda. Tempat itu tergantung pada cara Anda melakukan autentikasi:50Caching terjadi di sisi server, dalam infrastruktur apa pun yang melayani model Anda. Tempat itu tergantung pada cara Anda melakukan autentikasi:

51 51 

52* **API key, langganan Claude, atau [Claude Platform on AWS](/docs/id/claude-platform-on-aws)**: cache berada di infrastruktur Anthropic, diakses melalui [Claude API](https://platform.claude.com/docs)52* **Kunci API, langganan Claude, atau [Claude Platform on AWS](/docs/id/claude-platform-on-aws)**: cache berada di infrastruktur Anthropic, diakses melalui [Claude API](https://platform.claude.com/docs)

53* **Amazon Bedrock atau Agent Platform Google Cloud**: cache berada di infrastruktur serving penyedia cloud Anda53* **Amazon Bedrock atau Agent Platform Google Cloud**: cache berada di infrastruktur serving penyedia cloud Anda

54* **Microsoft Foundry**: tergantung pada [hosting option](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options) deployment. Deployment yang di-host di Azure dilayani di infrastruktur Azure; deployment yang di-host di Anthropic dilayani di infrastruktur Anthropic54* **Microsoft Foundry**: tergantung pada [opsi hosting](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options) deployment. Deployment Hosted on Azure dilayani di infrastruktur Azure; deployment Hosted on Anthropic dilayani di infrastruktur Anthropic

55* **Custom `ANTHROPIC_BASE_URL` atau [LLM gateway](/docs/id/llm-gateway)**: cache berada di mana pun permintaan Anda diteruskan, dan apakah caching bekerja tergantung pada gateway55* **`ANTHROPIC_BASE_URL` kustom atau [LLM gateway](/docs/id/llm-gateway)**: cache berada di mana pun permintaan Anda diteruskan, dan apakah caching bekerja tergantung pada gateway

56 56 

57Claude Code juga menambahkan konteks sistem di tengah percakapan, seperti pemberitahuan perubahan file, dan menandai blok itu untuk caching di setiap penyedia dan koneksi kecuali Anda menetapkan [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities), dalam hal ini blok itu dikirim tanpa cache.57Claude Code juga menambahkan konteks sistem di tengah percakapan, seperti pemberitahuan perubahan file, dan menandai blok itu untuk caching di setiap penyedia dan koneksi kecuali Anda menetapkan [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities), dalam hal ini blok itu dikirim tanpa cache.

58 58 

59Di endpoint penyedia sendiri, Amazon Bedrock dan [Mantle endpoint](/docs/id/amazon-bedrock#use-the-mantle-endpoint)-nya, Agent Platform Google Cloud, dan Microsoft Foundry melakukan cache pada blok dengan cara yang sama seperti Claude API.59Di endpoint penyedia sendiri, Amazon Bedrock dan [Mantle endpoint](/docs/id/amazon-bedrock#use-the-mantle-endpoint)-nya, Agent Platform Google Cloud, dan Microsoft Foundry melakukan cache pada blok dengan cara yang sama seperti Claude API.

60 60 

61Ketika permintaan Anda melewati [LLM gateway](/docs/id/llm-gateway), custom `ANTHROPIC_BASE_URL`, atau cloud provider base-URL override seperti [`ANTHROPIC_BEDROCK_BASE_URL`](/docs/id/env-vars), apa yang tetap di-cache tergantung pada cara gateway menangani [`cache_control` markers](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#explicit-cache-breakpoints) yang dikirim Claude Code:61Ketika permintaan Anda melewati [LLM gateway](/docs/id/llm-gateway), `ANTHROPIC_BASE_URL` kustom, atau override base-URL penyedia cloud seperti [`ANTHROPIC_BEDROCK_BASE_URL`](/docs/id/env-vars), apa yang tetap di-cache tergantung pada cara gateway menangani [marker `cache_control`](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#explicit-cache-breakpoints) yang dikirim Claude Code:

62 62 

63* **Meneruskannya tanpa perubahan**: blok dan percakapan Anda melakukan cache dengan cara yang sama seperti di endpoint penyedia sendiri.63* **Meneruskannya tanpa perubahan**: blok dan percakapan Anda di-cache dengan cara yang sama seperti di endpoint penyedia sendiri.

64* **Menolak permintaan yang ditandai dengan error `400` yang menyebutkan `cache_control`**: Claude Code mengirim ulang permintaan dengan marker dipindahkan dari blok dan ke pesan percakapan terakhir Anda, dan menyimpannya di sana untuk sisa percakapan. Blok ditagih sebagai uncached input; percakapan Anda tetap di-cache.64* **Menolak permintaan yang ditandai dengan error `400` yang menyebutkan `cache_control`**: Claude Code mengirim ulang permintaan dengan marker dipindahkan dari blok dan ke pesan percakapan terakhir Anda, dan menyimpannya di sana untuk sisa percakapan. Blok ditagih sebagai input tanpa cache; percakapan Anda tetap di-cache.

65* **Menghapus marker sambil mengembalikan kesuksesan**: seluruh riwayat percakapan Anda ditagih sebagai uncached input di setiap giliran. Gateway yang mengonversi konten sistem bentuk blok ke string biasa menghapus marker dengan cara yang sama.65* **Menghapus marker sambil mengembalikan respons sukses**: seluruh riwayat percakapan Anda ditagih sebagai input tanpa cache di setiap giliran. Gateway yang mengonversi konten sistem bentuk blok ke string biasa menghapus marker dengan cara yang sama.

66 66 

67Untuk apa yang disimpan dan diproses setiap penyedia, lihat [data usage](/docs/id/data-usage). Di mana pun cache berada, entri kedaluwarsa setelah periode tidak aktif, dan [Cache lifetime](#cache-lifetime) di bawah mencakup TTL dan cara memperpanjangnya.67Untuk apa yang disimpan dan diproses setiap penyedia, lihat [penggunaan data](/docs/id/data-usage). Di mana pun cache berada, entri kedaluwarsa setelah periode tidak aktif, dan [Cache lifetime](#cache-lifetime) di bawah mencakup TTL dan cara memperpanjangnya.

68 68 

69<h2 id="actions-that-invalidate-the-cache">69<h2 id="actions-that-invalidate-the-cache">

70 Tindakan yang membatalkan cache70 Tindakan yang membatalkan cache

71</h2>71</h2>

72 72 

73Tindakan-tindakan ini menyebabkan permintaan berikutnya kehilangan sebagian atau seluruh cache. Anda akan melihat satu putaran yang lebih lambat dan lebih mahal, setelah itu prefiks baru akan di-cache. Sebagian besar dari tindakan ini dapat dihindari di tengah tugas setelah Anda mengetahui bahwa tindakan tersebut memiliki biaya. Pergantian model dapat terasa gratis sampai Anda memperhatikan putaran yang lebih lambat setelahnya.73Tindakan-tindakan ini dapat menyebabkan permintaan berikutnya kehilangan sebagian atau seluruh cache. Anda akan melihat satu giliran yang lebih lambat dan lebih mahal, setelah itu prefiks baru akan di-cache. Sebagian besar dari tindakan ini dapat dihindari di tengah tugas setelah Anda mengetahui bahwa tindakan tersebut memiliki biaya. Pergantian model dapat terasa gratis sampai Anda memperhatikan giliran yang lebih lambat setelahnya.

74 74 

75* [Switching models](#switching-models)75* [Beralih model](#switching-models)

76* [Changing effort level](#changing-effort-level)76* [Mengubah tingkat effort](#changing-effort-level)

77* [Turning on fast mode](#turning-on-fast-mode)77* [Mengaktifkan fast mode](#turning-on-fast-mode)

78* [Connecting or removing an MCP server](#connecting-or-removing-an-mcp-server)78* [Menghubungkan atau menghapus server MCP](#connecting-or-removing-an-mcp-server)

79* [Enabling or disabling a plugin](#enabling-or-disabling-a-plugin)79* [Mengaktifkan atau menonaktifkan plugin](#enabling-or-disabling-a-plugin)

80* [Denying an entire tool](#denying-an-entire-tool)80* [Menolak seluruh tool](#denying-an-entire-tool)

81* [Compacting the conversation](#compacting-the-conversation)81* [Memadatkan percakapan](#compacting-the-conversation)

82* [Accumulating many images](#accumulating-many-images)82* [Mengakumulasi banyak gambar](#accumulating-many-images)

83* [Upgrading Claude Code](#upgrading-claude-code)83* [Meng-upgrade Claude Code](#upgrading-claude-code)

84 84 

85<h3 id="switching-models">85<h3 id="switching-models">

86 Switching models86 Beralih model

87</h3>87</h3>

88 88 

89Setiap model memiliki cache-nya sendiri. Beralih dengan [`/model`](/docs/id/model-config#setting-your-model) berarti permintaan berikutnya membaca seluruh riwayat percakapan tanpa cache hits, meskipun kontennya identik.89Setiap model memiliki cache-nya sendiri. Beralih dengan [`/model`](/docs/id/model-config#setting-your-model) berarti permintaan berikutnya membaca seluruh riwayat percakapan tanpa cache hit, meskipun kontennya identik.

90 90 

91Ketika Anda menjalankan `/model` di terminal, Claude Code meminta Anda untuk mengonfirmasi pergantian hanya saat cache masih hangat dan model baru bukan yang menghasilkan respons terakhir. Cache tetap hangat selama satu [cache TTL](#cache-lifetime) setelah Claude Code terakhir mengirim permintaan dalam percakapan ini atau Claude terakhir merespons. Setelah waktu itu berlalu, cache telah kedaluwarsa, jadi Claude Code beralih tanpa bertanya.91Ketika Anda menjalankan `/model` di terminal, Claude Code meminta Anda untuk mengonfirmasi pergantian hanya saat cache masih hangat dan model baru bukan model yang menghasilkan respons terakhir. Cache tetap hangat selama satu [cache TTL](#cache-lifetime) setelah Claude Code terakhir mengirim permintaan dalam percakapan ini atau Claude terakhir merespons. Setelah waktu itu berlalu, cache telah kedaluwarsa, sehingga Claude Code beralih tanpa bertanya.

92 92 

93Sebelum v2.1.238, Claude Code tidak memeriksa cache TTL dan bertanya bahkan setelah cache telah kedaluwarsa.93Sebelum v2.1.238, Claude Code tidak memeriksa cache TTL dan tetap bertanya bahkan setelah cache kedaluwarsa.

94 94 

95Anda juga dapat memerlukan konfirmasi ini atau melewatkannya dengan [PreModelSwitch hook](/docs/id/hooks#premodelswitch-decision-control).95Anda juga dapat mewajibkan konfirmasi ini atau melewatkannya dengan [hook PreModelSwitch](/docs/id/hooks#premodelswitch-decision-control).

96 96 

97[`opusplan` model setting](/docs/id/model-config#opusplan-model-setting) diselesaikan ke Opus selama plan mode dan Sonnet selama eksekusi, jadi setiap toggle plan-mode adalah pergantian model dan memulai cache segar.97[Pengaturan model `opusplan`](/docs/id/model-config#opusplan-model-setting) menggunakan Opus selama plan mode dan Sonnet selama eksekusi, sehingga setiap kali plan mode diaktifkan atau dinonaktifkan merupakan pergantian model dan memulai cache baru.

98 98 

99[Automatic model fallback](/docs/id/model-config#automatic-model-fallback) pada model Fable, Opus 5.5, Sonnet 5.5, dan Opus 5 juga merupakan pergantian model. Ketika pengklasifikasi keamanan menandai permintaan dalam kategori yang memiliki model fallback, Claude Code menjalankan kembali permintaan pada model tersebut dan sesi berlanjut di sana.99[Fallback model otomatis](/docs/id/model-config#automatic-model-fallback) pada model Fable, Opus 5.5, Sonnet 5.5, dan Opus 5 juga merupakan pergantian model. Ketika pengklasifikasi keamanan menandai permintaan dalam kategori yang memiliki model fallback, Claude Code menjalankan ulang permintaan pada model tersebut dan sesi berlanjut di sana.

100 100 

101Ketika frontmatter skill atau command menamai [`model`](/docs/id/skills#frontmatter-reference) selain model saat ini sesi, putaran itu juga merupakan pergantian model: permintaan berikutnya membaca seluruh riwayat percakapan tanpa cache hits. Model sesi dilanjutkan pada prompt Anda berikutnya. Skill `context: fork` menetapkan [model subagent yang di-fork](/docs/id/skills#run-skills-in-a-subagent) sebagai gantinya.101Ketika frontmatter skill atau perintah menyebutkan [`model`](/docs/id/skills#frontmatter-reference) yang berbeda dari model sesi saat ini, giliran itu juga merupakan pergantian model: permintaan berikutnya membaca seluruh riwayat percakapan tanpa cache hit. Model sesi kembali digunakan pada prompt Anda berikutnya. Skill `context: fork` justru menetapkan [model subagent yang di-fork](/docs/id/skills#run-skills-in-a-subagent).

102 102 

103<h3 id="changing-effort-level">103<h3 id="changing-effort-level">

104 Changing effort level104 Mengubah tingkat effort

105</h3>105</h3>

106 106 

107Pada sebagian besar model, mengubah [effort level](/docs/id/model-config#adjust-effort-level) di tengah sesi berarti permintaan berikutnya membaca seluruh riwayat percakapan tanpa cache hits. Saat cache masih hangat, Claude Code meminta Anda untuk mengonfirmasi perubahan terlebih dahulu.107Pada sebagian besar model, mengubah [tingkat effort](/docs/id/model-config#adjust-effort-level) di tengah sesi berarti permintaan berikutnya membaca seluruh riwayat percakapan tanpa cache hit. Saat cache masih hangat, Claude Code meminta Anda untuk mengonfirmasi perubahan terlebih dahulu.

108 108 

109Pada Opus 5.5, Sonnet 5.5, dan Fable 5.1 dengan API key atau langganan Claude, mengubah effort menjaga cache, dan Claude Code menerapkan level baru tanpa bertanya. Ini tidak berlaku pada Amazon Bedrock, Google Cloud's Agent Platform, atau [Claude apps gateway](/docs/id/claude-apps-gateway), atau ketika Anda menetapkan [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities) atau organisasi Anda memiliki konfigurasi HIPAA.109Pada Opus 5.5, Sonnet 5.5, Haiku 5.5, dan Fable 5.1 dengan kunci API atau langganan Claude, mengubah effort tetap mempertahankan cache, dan Claude Code menerapkan tingkat baru tanpa bertanya. Ini tidak berlaku pada Amazon Bedrock, Google Cloud's Agent Platform, atau [Claude apps gateway](/docs/id/claude-apps-gateway), atau ketika Anda menetapkan [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities) atau organisasi Anda memiliki konfigurasi HIPAA.

110 110 

111Sebelum v2.1.260, mengubah effort pada Fable 5.1 dengan API key atau langganan Claude juga membatalkan cache.111Sebelum v2.1.260, mengubah effort pada Fable 5.1 dengan kunci API atau langganan Claude juga membatalkan cache.

112 112 

113<h3 id="turning-on-fast-mode">113<h3 id="turning-on-fast-mode">

114 Turning on fast mode114 Mengaktifkan fast mode

115</h3>115</h3>

116 116 

117Mengaktifkan [fast mode](/docs/id/fast-mode) menambahkan header permintaan yang merupakan bagian dari cache key, jadi permintaan pertama yang Claude Code kirim dengan fast mode aktif membaca seluruh riwayat percakapan tanpa cache hits. Claude Code menetapkan header itu sekali ketika putaran dimulai dan menyimpannya untuk seluruh putaran, jadi ketika Anda mengaktifkan fast mode saat Claude sedang bekerja, cache miss dari header terjadi pada permintaan pertama putaran Anda berikutnya. Token input yang tidak di-cache tersebut ditagih dengan [fast mode rates](/docs/id/fast-mode#understand-the-cost-tradeoff), itulah mengapa mengaktifkannya di awal sesi biaya lebih rendah daripada mengaktifkannya jauh ke dalam sesi yang panjang. Jika model saat ini Anda tidak mendukung fast mode, mengaktifkan fast mode juga [beralih model Anda](#switching-models), dan pergantian itu memulai cache segar pada permintaan berikutnya dalam putaran yang sedang berjalan.117Mengaktifkan [fast mode](/docs/id/fast-mode) menambahkan header permintaan yang merupakan bagian dari kunci cache, sehingga permintaan pertama yang dikirim Claude Code dengan fast mode aktif membaca seluruh riwayat percakapan tanpa cache hit. Claude Code menetapkan header itu sekali ketika giliran dimulai dan mempertahankannya selama seluruh giliran, sehingga ketika Anda mengaktifkan fast mode saat Claude sedang bekerja, cache miss akibat header terjadi pada permintaan pertama giliran Anda berikutnya. Token input yang tidak di-cache tersebut ditagih dengan [tarif fast mode](/docs/id/fast-mode#understand-the-cost-tradeoff), itulah mengapa mengaktifkannya di awal sesi lebih murah daripada mengaktifkannya jauh di tengah sesi yang panjang. Jika model Anda saat ini tidak mendukung fast mode, mengaktifkan fast mode juga [mengganti model Anda](#switching-models), dan pergantian itu dengan sendirinya memulai cache baru sejak permintaan berikutnya dalam giliran yang sedang berjalan.

118 118 

119Biaya berlaku sekali per percakapan. Setelah putaran fast mode pertama, Claude Code terus mengirim header dan hanya memvariasikan pengaturan kecepatan permintaan, yang bukan bagian dari cache key. Mematikan fast mode, [fallback otomatis ke kecepatan standar](/docs/id/fast-mode#handle-rate-limits) setelah rate limit, dan mengaktifkannya kembali nanti semua menjaga cache. Jika Anda [kehabisan kredit penggunaan](/docs/id/fast-mode#handle-rate-limits) di tengah sesi, Claude Code mencoba kembali setiap permintaan fast mode yang ditolak dengan kecepatan standar dengan cara yang sama, jadi fallback ini juga menjaga cache. `/clear` dan `/compact` mengatur ulang ini, karena mereka membangun kembali cache pada titik-titik tersebut bagaimanapun.119Biaya ini berlaku sekali per percakapan. Setelah giliran fast mode pertama, Claude Code terus mengirim header dan hanya mengubah pengaturan kecepatan permintaan, yang bukan bagian dari kunci cache. Mematikan fast mode, [fallback otomatis ke kecepatan standar](/docs/id/fast-mode#handle-rate-limits) setelah rate limit, dan mengaktifkannya kembali nanti semuanya mempertahankan cache. Jika Anda [kehabisan kredit penggunaan](/docs/id/fast-mode#handle-rate-limits) di tengah sesi, Claude Code mencoba ulang setiap permintaan fast mode yang ditolak dengan kecepatan standar dengan cara yang sama, sehingga fallback ini juga mempertahankan cache. `/clear` dan `/compact` mengatur ulang hal ini, karena keduanya memang membangun ulang cache pada titik-titik tersebut.

120 120 

121<h3 id="connecting-or-removing-an-mcp-server">121<h3 id="connecting-or-removing-an-mcp-server">

122 Connecting or removing an MCP server122 Menghubungkan atau menghapus server MCP

123</h3>123</h3>

124 124 

125Definisi tool berada di lapisan system prompt, jadi cache membatalkan ketika set definisi tool dalam permintaan berubah antar putaran. Mengalihkan [advisor tool](/docs/id/advisor) adalah pengecualian: definisinya berada setelah breakpoint cache, jadi mengaktifkan atau menonaktifkan `/advisor` menjaga prefiks yang di-cache tetap utuh. Apakah perubahan [MCP server](/docs/id/mcp) melakukan ini tergantung pada apakah [tool search](/docs/id/mcp#scale-with-mcp-tool-search) menunda tools sesi MCP, default pada model yang didukung:125Definisi tool berada di lapisan system prompt, sehingga cache menjadi tidak valid ketika kumpulan definisi tool dalam permintaan berubah antar giliran. Mengaktifkan atau menonaktifkan [tool advisor](/docs/id/advisor) merupakan pengecualian: definisinya berada setelah breakpoint cache, sehingga mengaktifkan atau menonaktifkan `/advisor` menjaga prefiks yang di-cache tetap utuh. Apakah perubahan [server MCP](/docs/id/mcp) berdampak seperti ini bergantung pada apakah [tool search](/docs/id/mcp#scale-with-mcp-tool-search) menunda tool MCP sesi, yang merupakan default pada model yang didukung:

126 126 

127* **Tools deferred**: Claude Code menjaga daftar tool dari permintaan pertama percakapan untuk seluruh percakapan, jadi server yang terhubung atau terputus di tengah sesi tidak mengganggu apa pun yang sudah di-cache. Server yang selesai terhubung setelah permintaan pertama menyediakan toolnya sebagai definisi yang ditunda yang Claude muat sesuai permintaan.127* **Tool ditunda**: Claude Code mempertahankan daftar tool dari permintaan pertama percakapan untuk seluruh percakapan, sehingga server yang terhubung atau terputus di tengah sesi tidak mengganggu apa pun yang sudah di-cache. Server yang selesai terhubung setelah permintaan pertama menyediakan tool-nya sebagai definisi tertunda yang dimuat Claude sesuai kebutuhan.

128* **Tools loaded upfront**: menambahkan definisi membatalkan cache, dan begitu juga menghapus satu dengan sengaja. Ini berlaku ketika tool search [di bawah threshold `auto`-nya, dinonaktifkan, atau tidak tersedia](/docs/id/mcp#configure-tool-search), seperti pada model Google Cloud's Agent Platform lebih awal dari generasi Claude 4.5, dengan gateway `ANTHROPIC_BASE_URL` kustom, atau pada [deployment Microsoft Foundry yang dihosting di Azure](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options) setelah Claude Code mendeteksi bahwa deployment menolak tool search.128* **Tool dimuat di awal**: menambahkan definisi membatalkan cache, begitu pula menghapusnya dengan sengaja. Ini berlaku ketika tool search [berada di bawah ambang `auto`-nya, dinonaktifkan, atau tidak tersedia](/docs/id/mcp#configure-tool-search), seperti pada model Google Cloud's Agent Platform yang lebih lama dari generasi Claude 4.5, dengan gateway `ANTHROPIC_BASE_URL` kustom, atau pada [deployment Microsoft Foundry yang di-hosting di Azure](https://platform.claude.com/docs/en/build-with-claude/claude-in-microsoft-foundry#hosting-options) setelah Claude Code mendeteksi bahwa deployment tersebut menolak tool search.

129 129 

130Tanpa tool search, apakah perubahan server di tengah sesi membatalkan cache tergantung pada apa yang berubah. Untuk setiap perubahan, tabel ini memberikan apakah cache dipertahankan dan apa yang terjadi pada definisi tool dalam permintaan berikutnya.130Tanpa tool search, apakah perubahan server di tengah sesi membatalkan cache bergantung pada apa yang berubah. Untuk setiap perubahan, tabel ini menunjukkan apakah cache dipertahankan dan apa yang terjadi pada definisi tool dalam permintaan berikutnya.

131 131 

132| Perubahan di tengah sesi | Cache | Definisi tool dalam permintaan berikutnya |132| Perubahan di tengah sesi | Cache | Definisi tool dalam permintaan berikutnya |

133| - | - | - |133| - | - | - |

134| Server terhubung, atau [dynamic tool update](/docs/id/mcp#dynamic-tool-updates) menambahkan tools | Dibatalkan | Definisi baru ditambahkan |134| Server terhubung, atau [pembaruan tool dinamis](/docs/id/mcp#dynamic-tool-updates) menambahkan tool | Dibatalkan | Definisi baru ditambahkan |

135| Server keluar tanpa tindakan apa pun dari pihak Anda, seperti proses server stdio keluar | Dipertahankan | Definisi server tetap tidak berubah. Panggilan ke salah satu toolnya mengembalikan error sebagai gantinya menjalankan |135| Server terputus tanpa tindakan apa pun dari Anda, seperti proses server stdio yang berhenti | Dipertahankan | Definisi server tetap tidak berubah. Panggilan ke salah satu tool-nya mengembalikan error alih-alih dijalankan |

136| Server remote [reconnects automatically](/docs/id/mcp#automatic-reconnection) setelah koneksinya terputus | Dipertahankan, kecuali permintaan yang dikirim saat server reconnects menambahkan tool `WaitForMcpServers`, yang membatalkan cache sekali | Definisi server tetap tidak berubah. Permintaan yang dikirim saat server reconnects dapat menambahkan `WaitForMcpServers` ketika percakapan belum mencantumnya, dan tool kemudian tetap tercantum untuk sisa percakapan |136| Server remote [terhubung kembali secara otomatis](/docs/id/mcp#automatic-reconnection) setelah koneksinya terputus | Dipertahankan, kecuali permintaan yang dikirim saat server sedang terhubung kembali menambahkan tool `WaitForMcpServers`, yang membatalkan cache satu kali | Definisi server tetap tidak berubah. Permintaan yang dikirim saat server sedang terhubung kembali dapat menambahkan `WaitForMcpServers` jika percakapan belum mencantumkannya, dan tool tersebut kemudian tetap tercantum selama sisa percakapan |

137| Anda menghapus tool dengan sengaja, seperti dengan [deny rule](#denying-an-entire-tool) atau dengan menonaktifkan servernya di `/mcp` | Dibatalkan | Definisi dihapus |137| Anda menghapus tool dengan sengaja, seperti dengan [aturan deny](#denying-an-entire-tool) atau dengan menonaktifkan servernya di `/mcp` | Dibatalkan | Definisi dihapus |

138 138 

139Ketika Anda melanjutkan percakapan yang toolnya dimuat ke dalam prefiks, salah satu server MCP-nya masih dapat terhubung saat permintaan pertama keluar. Jika transkrip mencatat definisi tool server itu, permintaan itu mencakupnya seperti yang dicatat, jadi tidak berubah ketika server selesai terhubung dengan tools yang sama.139Ketika Anda melanjutkan percakapan yang tool-nya dimuat ke dalam prefiks, salah satu server MCP-nya mungkin masih dalam proses terhubung saat permintaan pertama dikirim. Jika transkrip mencatat definisi tool server tersebut, permintaan itu menyertakannya sesuai yang tercatat, sehingga permintaan tidak berubah ketika server selesai terhubung dengan tool yang sama.

140 140 

141Mengedit konfigurasi MCP Anda tidak dengan sendirinya mengubah cache. Konfigurasi baru hanya berlaku setelah restart, yaitu ketika server terhubung atau terputus.141Mengedit konfigurasi MCP Anda tidak dengan sendirinya mengubah cache. Konfigurasi baru hanya berlaku setelah restart, yaitu saat server terhubung atau terputus.

142 142 

143<h3 id="enabling-or-disabling-a-plugin">143<h3 id="enabling-or-disabling-a-plugin">

144 Enabling or disabling a plugin144 Mengaktifkan atau menonaktifkan plugin

145</h3>145</h3>

146 146 

147Ketika Anda mengaktifkan atau menonaktifkan [plugin](/docs/id/plugins/overview), apa yang perubahan biaya tergantung pada jenis komponen apa yang disediakan plugin. Kasus-kasus di bawah mencakup setiap jenis komponen, kapan Claude Code menerapkan perubahan, dan apa yang terjadi ketika Anda menonaktifkan plugin lagi dalam sesi yang sama.147Ketika Anda mengaktifkan atau menonaktifkan [plugin](/docs/id/plugins/overview), biaya perubahan tersebut bergantung pada jenis komponen yang disediakan plugin. Kasus-kasus di bawah ini mencakup setiap jenis komponen, kapan Claude Code menerapkan perubahan, dan apa yang terjadi ketika Anda menonaktifkan plugin lagi dalam sesi yang sama.

148 148 

149<h4 id="plugin-components-that-keep-the-cache">149<h4 id="plugin-components-that-keep-the-cache">

150 Plugin components that keep the cache150 Komponen plugin yang mempertahankan cache

151</h4>151</h4>

152 152 

153Claude Code tidak pernah membatalkan cache untuk skills, commands, agents, hooks, monitors, atau themes plugin. Ini menambahkan konten mereka setelah percakapan yang ada, jadi permintaan berikutnya membayar untuk konten itu dan masih membaca semuanya sebelumnya dari cache.153Claude Code tidak pernah membatalkan cache untuk skill, perintah, agent, hook, monitor, atau tema dari plugin. Claude Code menambahkan kontennya setelah percakapan yang ada, sehingga permintaan berikutnya membayar konten tersebut dan tetap membaca semua yang ada sebelumnya dari cache.

154 154 

155<h4 id="plugins-that-provide-mcp-servers">155<h4 id="plugins-that-provide-mcp-servers">

156 Plugins that provide MCP servers156 Plugin yang menyediakan server MCP

157</h4>157</h4>

158 158 

159Ketika Anda mengaktifkan atau menonaktifkan plugin yang menyediakan [MCP servers](/docs/id/plugins/components#mcp-servers), Claude Code mengikuti aturan yang sama seperti ketika Anda [connect or remove an MCP server](#connecting-or-removing-an-mcp-server).159Ketika Anda mengaktifkan atau menonaktifkan plugin yang menyediakan [server MCP](/docs/id/plugins/components#mcp-servers), Claude Code mengikuti aturan yang sama seperti saat Anda [menghubungkan atau menghapus server MCP](#connecting-or-removing-an-mcp-server).

160 160 

161<h4 id="code-intelligence-plugins">161<h4 id="code-intelligence-plugins">

162 Code intelligence plugins162 Plugin code intelligence

163</h4>163</h4>

164 164 

165Ketika Anda mengaktifkan [code intelligence plugin](/docs/id/plugins/code-intelligence), Claude mendapatkan [LSP tool](/docs/id/tools-reference#lsp-tool-behavior).165Ketika Anda mengaktifkan [plugin code intelligence](/docs/id/plugins/code-intelligence), Claude mendapatkan [tool LSP](/docs/id/tools-reference#lsp-tool-behavior).

166 166 

167<h4 id="when-plugin-changes-apply">167<h4 id="when-plugin-changes-apply">

168 When plugin changes apply168 Kapan perubahan plugin diterapkan

169</h4>169</h4>

170 170 

171Perubahan yang Anda buat di menu `/plugin` melalui [`/reload-plugins`](/docs/id/plugins/cli-reference#reload-plugins), yang Claude Code jalankan untuk Anda ketika Anda menutup menu. Anda membayar biaya, apakah pengumuman yang ditambahkan atau pembacaan ulang penuh, pada putaran pertama setelah perubahan diterapkan. Claude Code juga dapat menerapkan perubahan dengan sendirinya:171Perubahan yang Anda buat di menu `/plugin` diproses melalui [`/reload-plugins`](/docs/id/plugins/cli-reference#reload-plugins), yang dijalankan Claude Code untuk Anda ketika Anda menutup menu. Anda membayar biayanya, baik berupa pengumuman yang ditambahkan maupun pembacaan ulang penuh, pada giliran pertama setelah perubahan diterapkan. Claude Code juga dapat menerapkan perubahan dengan sendirinya:

172 172 

173* Untuk plugin dengan sumber `command`, Claude Code [can reload the plugin itself](/docs/id/plugins/loading#when-a-command-source-re-runs).173* Untuk plugin dengan sumber `command`, Claude Code [dapat memuat ulang plugin itu sendiri](/docs/id/plugins/loading#when-a-command-source-re-runs).

174* Ketika Anda [install a plugin from the `/plugin` interface](/docs/id/plugins/install#install-a-plugin), Claude Code dapat mengaktifkannya selama instalasi. Ringkasan instalasi memberi tahu Anda apakah itu dilakukan.174* Ketika Anda [menginstal plugin dari antarmuka `/plugin`](/docs/id/plugins/install#install-a-plugin), Claude Code dapat mengaktifkannya selama instalasi. Ringkasan instalasi memberi tahu Anda apakah hal itu dilakukan.

175* Ketika Anda [move the session with `/cd`](/docs/id/permissions#move-the-session-to-another-directory) pada v2.1.246 atau lebih baru, Claude Code menerapkan plugin yang diaktifkan pengaturan direktori baru sebagai bagian dari perpindahan, tanpa peringatan pembacaan ulang penuh yang menahan `/reload-plugins`.175* Ketika Anda [memindahkan sesi dengan `/cd`](/docs/id/permissions#move-the-session-to-another-directory) pada v2.1.246 atau lebih baru, Claude Code menerapkan plugin yang diaktifkan oleh pengaturan direktori baru sebagai bagian dari perpindahan, tanpa peringatan pembacaan ulang penuh yang menahan `/reload-plugins`.

176* Dalam sesi interaktif, ketika Anda menambah atau menghapus plugin dalam [folder of plugins](/docs/id/plugins/create#load-a-directory-or-archive-for-one-session) yang Anda lewatkan dengan `--plugin-dir`, perubahan diterapkan segera. Jika menerapkannya akan memicu pembacaan ulang penuh, Claude Code menahan perubahan sebagai gantinya dan menampilkan pemberitahuan untuk menjalankan `/reload-plugins`. Memerlukan Claude Code v2.1.265 atau lebih baru.176* Dalam sesi interaktif, ketika Anda menambah atau menghapus plugin dalam [folder plugin](/docs/id/plugins/create#load-a-directory-or-archive-for-one-session) yang Anda berikan dengan `--plugin-dir`, perubahan diterapkan segera. Jika penerapannya akan memicu pembacaan ulang penuh, Claude Code justru menahan perubahan dan menampilkan pemberitahuan untuk menjalankan `/reload-plugins`. Memerlukan Claude Code v2.1.265 atau lebih baru.

177 177 

178Ketika `/reload-plugins` berjalan dan reload akan memicu pembacaan ulang penuh, Claude Code menampilkan peringatan dan tidak menerapkan reload. Jalankan `/reload-plugins --force` untuk menerapkannya bagaimanapun.178Ketika `/reload-plugins` berjalan dan reload akan memicu pembacaan ulang penuh, Claude Code menampilkan peringatan dan tidak menerapkan reload. Jalankan `/reload-plugins --force` untuk tetap menerapkannya.

179 179 

180`/reload-plugins` juga berjalan dalam sesi tanpa terminal interaktif, seperti aplikasi desktop, Agent SDK, dan [non-interactive mode](/docs/id/headless) dengan `-p`, ketika Anda mengetiknya langsung ke sesi. Memerlukan Claude Code v2.1.260 atau lebih baru.180`/reload-plugins` juga berjalan dalam sesi tanpa terminal interaktif, seperti aplikasi desktop, Agent SDK, dan [mode non-interaktif](/docs/id/headless) dengan `-p`, ketika Anda mengetikkannya langsung ke dalam sesi. Memerlukan Claude Code v2.1.260 atau lebih baru.

181 181 

182Dalam sesi-sesi itu reload menerapkan semuanya kecuali perubahan MCP server plugin, yang [take effect in your next session](/docs/id/plugins/cli-reference#reload-plugins) dan jadi tidak pernah biaya pembacaan ulang penuh di tengah sesi.182Dalam sesi-sesi tersebut, reload menerapkan semuanya kecuali perubahan server MCP plugin, yang [berlaku pada sesi Anda berikutnya](/docs/id/plugins/cli-reference#reload-plugins) sehingga tidak pernah menimbulkan biaya pembacaan ulang penuh di tengah sesi.

183 183 

184<h4 id="plugins-you-enable-and-then-disable-in-one-session">184<h4 id="plugins-you-enable-and-then-disable-in-one-session">

185 Plugins you enable and then disable in one session185 Plugin yang Anda aktifkan lalu nonaktifkan dalam satu sesi

186</h4>186</h4>

187 187 

188Ketika Anda menonaktifkan plugin yang Anda aktifkan sebelumnya dalam sesi, Claude Code mengembalikan bentuk permintaan sebelumnya. Jika prefiks itu masih dalam [cache lifetime](#cache-lifetime)-nya, permintaan berikutnya membaca entri cache yang lebih lama sebagai gantinya dari membangun kembali.188Ketika Anda menonaktifkan plugin yang Anda aktifkan sebelumnya dalam sesi, Claude Code mengembalikan bentuk permintaan sebelumnya. Jika prefiks itu masih berada dalam [masa berlaku cache](#cache-lifetime)-nya, permintaan berikutnya membaca entri cache yang lebih lama alih-alih membangun ulang.

189 189 

190<h3 id="denying-an-entire-tool">190<h3 id="denying-an-entire-tool">

191 Denying an entire tool191 Menolak seluruh tool

192</h3>192</h3>

193 193 

194Jika Anda menambahkan nama tool telanjang seperti `Bash` atau `WebFetch` sebagai [deny rule](/docs/id/permissions#manage-permissions), Claude tidak dapat memanggil tool itu dari permintaan Anda berikutnya, apakah Anda menambahkan aturan melalui `/permissions` atau dengan [editing a settings file directly](/docs/id/settings#when-edits-take-effect). Itu termasuk aturan yang Anda tambahkan melalui `/permissions` di tengah putaran.194Jika Anda menambahkan nama tool saja seperti `Bash` atau `WebFetch` sebagai [aturan deny](/docs/id/permissions#manage-permissions), Claude tidak dapat memanggil tool tersebut mulai dari permintaan Anda berikutnya, baik Anda menambahkan aturan melalui `/permissions` maupun dengan [mengedit file pengaturan secara langsung](/docs/id/settings#when-edits-take-effect). Ini termasuk aturan yang Anda tambahkan melalui `/permissions` di tengah giliran.

195 195 

196Ketika [tool search](/docs/id/mcp#scale-with-mcp-tool-search) aktif, yang merupakan default pada model yang didukung, definisi tool permintaan tidak berubah dan prefiks yang di-cache bertahan. Ketika tool search tidak tersedia atau dinonaktifkan, Claude Code menghapus definisi dari permintaan berikutnya, yang membatalkan cache, dan begitu juga menghapus aturan nanti.196Ketika [tool search](/docs/id/mcp#scale-with-mcp-tool-search) aktif, yang merupakan default pada model yang didukung, definisi tool dalam permintaan tidak berubah dan prefiks yang di-cache tetap bertahan. Ketika tool search tidak tersedia atau dinonaktifkan, Claude Code menghapus definisi dari permintaan berikutnya, yang membatalkan cache, begitu pula menghapus aturan tersebut nanti.

197 197 

198Hanya aturan deny yang cocok di posisi nama-tool yang memblokir tool dengan cara ini: nama tool telanjang, bentuk `Bash(*)` yang setara, atau [tool-name glob](/docs/id/permissions#tool-name-wildcards) seperti `"*"`. Glob yang cocok hanya dengan tool MCP, seperti `"mcp__*"`, memblokir tool-tool itu dengan cara yang sama. Aturan deny yang dibatasi seperti `Bash(rm *)`, dan semua aturan allow dan ask, tidak mengubah tool mana yang Claude lihat. Claude Code memeriksanya ketika Claude mencoba panggilan, meninggalkan prefiks tetap utuh.198Hanya aturan deny yang cocok pada posisi nama tool yang memblokir tool dengan cara ini: nama tool saja, bentuk `Bash(*)` yang setara, atau [glob nama tool](/docs/id/permissions#tool-name-wildcards) seperti `"*"`. Glob yang hanya cocok dengan tool MCP, seperti `"mcp__*"`, memblokir tool-tool tersebut dengan cara yang sama. Aturan deny yang dibatasi cakupannya seperti `Bash(rm *)`, serta semua aturan allow dan ask, tidak mengubah tool mana yang dilihat Claude. Claude Code memeriksanya ketika Claude mencoba melakukan panggilan, sehingga prefiks tetap utuh.

199 199 

200<h3 id="compacting-the-conversation">200<h3 id="compacting-the-conversation">

201 Compacting the conversation201 Memadatkan percakapan

202</h3>202</h3>

203 203 

204[Compaction](/docs/id/context-window#what-survives-compaction) menggantikan riwayat pesan Anda dengan ringkasan. Dengan desain, ini membatalkan lapisan percakapan, karena permintaan berikutnya memiliki riwayat yang lebih baru dan lebih pendek yang tidak berbagi prefiks dengan yang lama. Claude Code menggunakan kembali lapisan system prompt kecuali percakapan [resumed while keeping a system prompt that would otherwise have changed](#resuming-a-session); dalam hal itu compaction pertama beralih ke prompt saat ini dan lapisan itu membangun kembali sekali. Ini memuat ulang konteks proyek dari disk, yang cache-hits hanya jika CLAUDE.md dan memory tidak berubah sejak sesi dimulai.204[Compaction](/docs/id/context-window#what-survives-compaction) menggantikan riwayat pesan Anda dengan ringkasan. Secara desain, ini membatalkan lapisan percakapan, karena permintaan berikutnya memiliki riwayat baru yang lebih pendek yang tidak berbagi prefiks dengan riwayat lama. Claude Code menggunakan kembali lapisan system prompt kecuali percakapan [dilanjutkan sambil mempertahankan system prompt yang seharusnya telah berubah](#resuming-a-session); dalam hal itu, compaction pertama beralih ke prompt saat ini dan lapisan tersebut dibangun ulang satu kali. Claude Code memuat ulang konteks proyek dari disk, yang menghasilkan cache hit hanya jika CLAUDE.md dan memori tidak berubah sejak sesi dimulai.

205 205 

206Untuk menghasilkan ringkasan, Claude Code mengirim permintaan terpisah dengan system prompt, tools, dan riwayat yang sama seperti percakapan Anda, ditambah instruksi summarization yang ditambahkan sebagai pesan pengguna final. Saat cache hangat, permintaan itu membaca prefiks Anda dari cache, jadi `/compact` di tengah sesi biaya sebagian kecil dari apa yang ukuran konteks sarankan dan menghabiskan sebagian besar waktunya menghasilkan ringkasan.206Untuk menghasilkan ringkasan, Claude Code mengirim permintaan terpisah dengan system prompt, tool, dan riwayat yang sama seperti percakapan Anda, ditambah instruksi peringkasan yang ditambahkan sebagai pesan pengguna terakhir. Saat cache hangat, permintaan itu membaca prefiks Anda dari cache, sehingga `/compact` di tengah sesi hanya memakan sebagian kecil dari biaya yang tersirat dari ukuran konteks dan menghabiskan sebagian besar waktunya untuk menghasilkan ringkasan.

207 207 

208Setelah istirahat lebih lama dari [cache lifetime](#cache-lifetime), tidak ada cache yang tersisa untuk dibaca, jadi permintaan summarization memproses ulang riwayat penuh sebagai input yang tidak di-cache. Ini adalah mengapa `/compact` biaya paling banyak ketika Anda [resume an old session](/docs/id/sessions#resume-from-a-summary). Dalam kedua kasus hangat dan dingin, putaran setelah compaction membangun kembali cache percakapan hanya untuk ringkasan yang jauh lebih pendek, jadi putaran itu bukan bagian yang lambat.208Setelah jeda yang lebih lama dari [masa berlaku cache](#cache-lifetime), tidak ada cache yang tersisa untuk dibaca, sehingga permintaan peringkasan memproses ulang seluruh riwayat sebagai input yang tidak di-cache. Inilah mengapa `/compact` paling mahal ketika Anda [melanjutkan sesi lama](/docs/id/sessions#resume-from-a-summary). Baik dalam kondisi cache hangat maupun dingin, giliran setelah compaction membangun ulang cache percakapan hanya untuk ringkasan yang jauh lebih pendek, sehingga giliran itu bukan bagian yang lambat.

209 209 

210<Tip>210<Tip>

211 Compaction bekerja untuk keuntungan Anda ketika konteks yang Anda buang adalah konten yang tidak lagi Anda butuhkan. Untuk memilih kapan overhead-nya terjadi, jalankan `/compact` pada istirahat alami dalam pekerjaan Anda, seperti antara tugas, daripada menunggu auto-compaction memicu di tengah tugas. Jika Anda telah pergi ke jalur yang ingin Anda abaikan sepenuhnya, [`/rewind`](#rewinding-the-conversation) ke putaran sebelumnya sebagai gantinya. Rewinding memotong kembali ke prefiks yang sudah di-cache, daripada membangun yang baru seperti yang dilakukan compaction.211 Compaction menguntungkan Anda ketika konteks yang Anda buang adalah konten yang tidak lagi Anda butuhkan. Untuk memilih kapan overhead-nya terjadi, jalankan `/compact` pada jeda alami dalam pekerjaan Anda, seperti di antara tugas, alih-alih menunggu auto-compaction terpicu di tengah tugas. Jika Anda telah menempuh jalur yang ingin Anda tinggalkan sepenuhnya, gunakan [`/rewind`](#rewinding-the-conversation) ke giliran sebelumnya sebagai gantinya. Rewind memotong kembali ke prefiks yang sudah di-cache, alih-alih membangun prefiks baru seperti yang dilakukan compaction.

212</Tip>212</Tip>

213 213 

214<h3 id="accumulating-many-images">214<h3 id="accumulating-many-images">

215 Accumulating many images215 Mengakumulasi banyak gambar

216</h3>216</h3>

217 217 

218API membatasi berapa banyak gambar dan PDF yang dapat dibawa setiap permintaan. Untuk angka saat ini, lihat [Request limits](https://platform.claude.com/docs/en/build-with-claude/vision#request-limits) dalam dokumentasi API. Claude Code juga membatasi ukuran total gambar dan PDF dalam permintaan, jadi screenshot besar mencapai batas dengan lebih sedikit gambar daripada yang kecil.218API membatasi berapa banyak gambar dan PDF yang dapat dibawa setiap permintaan. Untuk angka terkini, lihat [Request limits](https://platform.claude.com/docs/en/build-with-claude/vision#request-limits) dalam dokumentasi API. Claude Code juga membatasi ukuran total gambar dan PDF dalam satu permintaan, sehingga screenshot besar mencapai batas dengan jumlah gambar yang lebih sedikit dibandingkan screenshot kecil.

219 219 

220Ketika permintaan berikutnya akan melewati salah satu batas, Claude Code menghapus batch gambar dan PDF tertua dari apa yang dikirimnya, yang membuat ruang untuk lebih banyak sebelum perlu menghapus lagi. Claude tidak lagi dapat melihat gambar yang dihapus. Jika Claude membutuhkan salah satu dari mereka lagi, bagikan lagi.220Ketika permintaan berikutnya akan melampaui salah satu batas, Claude Code menghapus sekumpulan gambar dan PDF tertua dari apa yang dikirimnya, yang menyisakan ruang untuk lebih banyak gambar sebelum perlu menghapus lagi. Claude tidak dapat lagi melihat gambar yang dihapus. Jika Claude membutuhkan salah satunya lagi, bagikan kembali.

221 221 

222Menghapus gambar mengubah pesan yang menahannya, jadi permintaan berikutnya memproses ulang percakapan dari yang paling awal dari pesan-pesan itu ke depan. Karena Claude Code menghapus batch sekaligus, Anda melihat satu putaran yang lebih lambat per batch daripada satu dengan setiap screenshot baru.222Menghapus gambar mengubah pesan yang memuatnya, sehingga permintaan berikutnya memproses ulang percakapan mulai dari pesan paling awal di antara pesan-pesan tersebut. Karena Claude Code menghapus sekumpulan gambar sekaligus, Anda melihat satu giliran yang lebih lambat per kumpulan, bukan satu untuk setiap screenshot baru.

223 223 

224<h3 id="upgrading-claude-code">224<h3 id="upgrading-claude-code">

225 Upgrading Claude Code225 Meng-upgrade Claude Code

226</h3>226</h3>

227 227 

228Versi Claude Code baru biasanya memperbarui system prompt atau definisi tool, jadi percakapan pertama yang Anda mulai setelah upgrade membangun cache-nya dari atas. [Auto-update](/docs/id/setup#auto-updates) mengunduh versi baru di latar belakang tetapi menerapkannya pada peluncuran berikutnya, tidak pernah di tengah sesi, jadi Anda melihat ini sebagai putaran pertama yang tidak di-cache setelah restart daripada kejutan selama sesi. Atur `DISABLE_AUTOUPDATER=1` untuk mengontrol kapan upgrade diterapkan.228Versi baru Claude Code biasanya memperbarui system prompt atau definisi tool, sehingga percakapan pertama yang Anda mulai setelah upgrade membangun cache-nya dari awal. [Auto-update](/docs/id/setup#auto-updates) mengunduh versi baru di latar belakang tetapi menerapkannya pada peluncuran berikutnya, tidak pernah di tengah sesi, sehingga Anda melihat hal ini sebagai giliran pertama yang tidak di-cache setelah restart, bukan kejutan di tengah sesi. Atur `DISABLE_AUTOUPDATER=1` untuk mengontrol kapan upgrade diterapkan.

229 229 

230<Note>230<Note>

231 Untuk apa yang biaya untuk melanjutkan percakapan yang Anda mulai sebelum upgrade, lihat [Resuming a session](#resuming-a-session).231 Untuk biaya melanjutkan percakapan yang Anda mulai sebelum upgrade, lihat [Melanjutkan sesi](#resuming-a-session).

232</Note>232</Note>

233 233 

234<h2 id="actions-that-keep-the-cache">234<h2 id="actions-that-keep-the-cache">


328| Main conversation | One hour | Five minutes |328| Main conversation | One hour | Five minutes |

329| Everything else | Five minutes, except the server-controlled helper requests, which get one hour | Five minutes |329| Everything else | Five minutes, except the server-controlled helper requests, which get one hour | Five minutes |

330 330 

331Setelah Anda melampaui batas penggunaan paket Anda dan Claude Code menggunakan [usage credits](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans), Anda ditagih untuk penggunaan itu, jadi Claude Code menurunkan percakapan utama ke TTL lima menit yang lebih murah. Untuk menjaga TTL satu jam di sana, [pilih TTL sendiri](#choose-the-ttl-yourself).331Setelah Anda melampaui batas penggunaan paket Anda dan Claude Code menggunakan [kredit penggunaan](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans), Anda ditagih untuk penggunaan itu, jadi Claude Code menurunkan percakapan utama ke TTL lima menit, yang menagih penulisan cache dengan tarif lebih rendah. Untuk menjaga TTL satu jam di sana, [pilih TTL sendiri](#choose-the-ttl-yourself).

332 332 

333<h3 id="choose-the-ttl-yourself">333<h3 id="choose-the-ttl-yourself">

334 Pilih TTL sendiri334 Pilih TTL sendiri

Details

1342 },1342 },

1343 "review-your-changes-before": {1343 "review-your-changes-before": {

1344 title: "Tinjau perubahan Anda sebelum Anda melakukan commit",1344 title: "Tinjau perubahan Anda sebelum Anda melakukan commit",

1345 teaches: "Tangkap masalah saat masih murah untuk diperbaiki. Claude membaca file yang diubah sepenuhnya, bukan hanya baris diff, sehingga menemukan masalah yang ditinggalkan tinjauan diri cepat.",1345 teaches: "Tangkap masalah selagi masih lebih mudah untuk diperbaiki. Claude membaca file yang diubah sepenuhnya, bukan hanya baris diff, sehingga menemukan masalah yang ditinggalkan tinjauan diri cepat.",

1346 next: "Jalankan `/code-review` untuk pemeriksaan yang sama dalam satu perintah",1346 next: "Jalankan `/code-review` untuk pemeriksaan yang sama dalam satu perintah",

1347 prompt: "tinjau perubahan saya yang belum di-commit dan tandai apa pun yang terlihat berisiko sebelum saya melakukan commit"1347 prompt: "tinjau perubahan saya yang belum di-commit dan tandai apa pun yang terlihat berisiko sebelum saya melakukan commit"

1348 },1348 },

quickstart.md +76 −110

Details

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

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

4 4 

5# Panduan Cepat5# Mulai Cepat

6 6 

7> Selamat datang di Claude Code!7> Instal Claude Code di terminal Anda, masuk, dan gunakan CLI untuk menjelajahi codebase Anda serta membuat perubahan kode pertama Anda.

8 8 

9Panduan cepat ini akan membuat Anda menggunakan bantuan pengkodean bertenaga AI dalam beberapa menit. Di akhir panduan, Anda akan memahami cara menggunakan Claude Code untuk tugas-tugas pengembangan umum.9Mulai cepat ini membahas Claude Code di terminal Anda: menginstal CLI, masuk dari sesi pertama Anda, dan menggunakannya untuk tugas-tugas pengembangan umum di proyek Anda sendiri.

10 10 

11<h2 id="before-you-begin">11<h2 id="before-you-begin">

12 Sebelum Anda memulai12 Sebelum Anda memulai


15Pastikan Anda memiliki:15Pastikan Anda memiliki:

16 16 

17* Terminal atau command prompt yang terbuka17* Terminal atau command prompt yang terbuka

18 * Jika Anda belum pernah menggunakan terminal sebelumnya, lihat [panduan terminal](/docs/id/terminal-guide)

19* Proyek kode untuk dikerjakan18* Proyek kode untuk dikerjakan

20* [Langganan Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_prereq) (Pro, Max, Team, atau Enterprise), akun [Claude Console](https://platform.claude.com/), atau akses melalui [penyedia cloud yang didukung](/docs/id/third-party-integrations)19* [Langganan Claude](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_prereq) (Pro, Max, Team, atau Enterprise), akun [Claude Console](https://platform.claude.com/), atau akses melalui [penyedia cloud yang didukung](/docs/id/third-party-integrations)

21 20 

22<Note>21<Note>

23 Panduan ini mencakup CLI terminal. Claude Code juga tersedia di [web](https://claude.ai/code), sebagai [aplikasi desktop](/docs/id/desktop), di [VS Code](/docs/id/vs-code) dan [IDE JetBrains](/docs/id/jetbrains), di [Slack](/docs/id/slack), dan di CI/CD dengan [GitHub Actions](/docs/id/github-actions) dan [GitLab](/docs/id/gitlab-ci-cd). Lihat [semua antarmuka](/docs/id/overview#use-claude-code-everywhere).22 Kasus-kasus berikut dibahas di halaman lain:

23 

24 * **Belum pernah menggunakan terminal sebelumnya**: mulailah dengan [panduan terminal](/docs/id/terminal-guide)

25 * **Ingin menggunakan Claude Code di tempat selain terminal**: Claude Code juga tersedia di [web](https://claude.ai/code), sebagai [aplikasi desktop](/docs/id/desktop), di [VS Code](/docs/id/vs-code) dan [IDE JetBrains](/docs/id/jetbrains), di [Slack](/docs/id/slack), dan di CI/CD dengan [GitHub Actions](/docs/id/github-actions) dan [GitLab](/docs/id/gitlab-ci-cd). Lihat [semua antarmuka](/docs/id/overview#use-claude-code-everywhere).

24</Note>26</Note>

25 27 

26<h2 id="step-1-install-claude-code">28<h2 id="step-1-install-claude-code">


33 <Tab title="Native Install (Direkomendasikan)">35 <Tab title="Native Install (Direkomendasikan)">

34 **macOS, Linux, WSL:**36 **macOS, Linux, WSL:**

35 37 

36 ```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}38 ```bash theme={null}

37 curl -fsSL https://claude.ai/install.sh | bash39 curl -fsSL https://claude.ai/install.sh | bash

38 ```40 ```

39 41 

42 Di Windows, prompt Anda menunjukkan `PS C:\` ketika Anda berada di PowerShell dan `C:\` tanpa `PS` ketika Anda berada di CMD.

43 

40 **Windows PowerShell:**44 **Windows PowerShell:**

41 45 

42 ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}46 ```powershell theme={null}

43 irm https://claude.ai/install.ps1 | iex47 irm https://claude.ai/install.ps1 | iex

44 ```48 ```

45 49 

46 **Windows CMD:**50 **Windows CMD:**

47 51 

48 ```batch theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}52 ```batch theme={null}

49 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd53 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

50 ```54 ```

51 55 

52 Ketika penginstal selesai, buka jendela terminal baru dan jalankan `claude --version`. Instalasi yang berfungsi dengan baik mencetak nomor versi. Jika shell Anda mengatakan `claude` tidak ditemukan atau tidak dikenali, direktori instalasi belum ada di PATH Anda: lihat [Perbaiki PATH Anda](/docs/id/troubleshoot-install#command-not-found-claude-after-installation).56 Ketika penginstal selesai, buka jendela terminal baru dan jalankan `claude --version`. Instalasi yang berfungsi dengan baik mencetak nomor versi. Jika shell Anda mengatakan `claude` tidak ditemukan atau tidak dikenali, direktori instalasi belum ada di PATH Anda: lihat [Perbaiki PATH Anda](/docs/id/troubleshoot-install#command-not-found-claude-after-installation).

53 57 

54 Jika Anda melihat `The token '&&' is not a valid statement separator`, Anda berada di PowerShell, bukan CMD. Jika Anda melihat `'irm' is not recognized as an internal or external command`, Anda berada di CMD, bukan PowerShell. Prompt Anda menunjukkan `PS C:\` ketika Anda berada di PowerShell dan `C:\` tanpa `PS` ketika Anda berada di CMD.58 Jika Anda melihat `The token '&&' is not a valid statement separator`, Anda berada di PowerShell, bukan CMD. Jika Anda melihat `'irm' is not recognized as an internal or external command`, Anda berada di CMD, bukan PowerShell.

55 59 

56 Jika perintah instalasi gagal dengan `syntax error near unexpected token '<'`, `403`, atau kesalahan curl lainnya, lihat [Troubleshoot installation](/docs/id/troubleshoot-install#find-your-error) untuk mencocokkan kesalahan dengan perbaikan dan untuk metode instalasi alternatif.60 Jika perintah instalasi gagal dengan `syntax error near unexpected token '<'`, `403`, atau kesalahan lainnya, lihat [Troubleshoot installation](/docs/id/troubleshoot-install#find-your-error) untuk mencocokkan kesalahan dengan perbaikan dan untuk metode instalasi alternatif.

57 61 

58 [Git for Windows](https://git-scm.com/downloads/win) direkomendasikan pada Windows native sehingga Claude Code dapat menggunakan alat Bash. Jika Git for Windows tidak diinstal, Claude Code menggunakan PowerShell sebagai alat shell sebagai gantinya. Pengaturan WSL tidak memerlukan Git for Windows.62 [Git for Windows](https://git-scm.com/downloads/win) direkomendasikan pada Windows native sehingga Claude Code dapat menggunakan alat Bash. Jika Git for Windows tidak diinstal, Claude Code menggunakan PowerShell sebagai alat shell sebagai gantinya. Pengaturan WSL tidak memerlukan Git for Windows.

59 63 


63 </Tab>67 </Tab>

64 68 

65 <Tab title="Homebrew">69 <Tab title="Homebrew">

66 ```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}70 ```bash theme={null}

67 brew install --cask claude-code71 brew install --cask claude-code

68 ```72 ```

69 73 


75 </Tab>79 </Tab>

76 80 

77 <Tab title="WinGet">81 <Tab title="WinGet">

78 ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}82 ```powershell theme={null}

79 winget install Anthropic.ClaudeCode83 winget install Anthropic.ClaudeCode

80 ```84 ```

81 85 


95 99 

96Perintah ini mencetak nomor versi diikuti oleh `(Claude Code)`.100Perintah ini mencetak nomor versi diikuti oleh `(Claude Code)`.

97 101 

98<h2 id="step-2-log-in-to-your-account">102<h2 id="step-2-start-your-first-session">

99 Langkah 2: Masuk ke akun Anda103 Langkah 2: Mulai sesi pertama Anda

100</h2>104</h2>

101 105 

102Claude Code memerlukan akun untuk digunakan. Mulai sesi interaktif dengan perintah `claude` dan Anda akan diminta untuk masuk pada penggunaan pertama:106Buka terminal Anda di direktori proyek mana pun dan mulai Claude Code:

103 107 

104```bash theme={null}108```bash theme={null}

109cd /path/to/your/project

105claude110claude

106```111```

107 112 

108Untuk akun langganan Claude atau Console, ikuti petunjuk untuk menyelesaikan autentikasi di browser Anda. Jika Anda telah menetapkan variabel lingkungan `ANTHROPIC_API_KEY`, Claude Code melewati prompt login dan meminta Anda untuk menyetujui kunci sebagai gantinya. Untuk beralih akun nanti atau melakukan autentikasi ulang, ketik `/login` di dalam sesi yang sedang berjalan:113Ganti `/path/to/your/project` dengan path ke proyek yang ingin Anda kerjakan.

109 114 

110```text wrap theme={null}115Claude Code meminta Anda untuk masuk pada penggunaan pertama. Untuk akun langganan Claude atau akun Console, ikuti petunjuk untuk menyelesaikan autentikasi di browser Anda. Jika Anda telah mengatur environment variable `ANTHROPIC_API_KEY` dan Anda menyetujui kunci tersebut saat Claude Code menanyakan apakah akan menggunakannya, Claude Code akan melewati permintaan masuk.

111/login

112```

113 116 

114Anda dapat masuk menggunakan salah satu jenis akun ini:117Anda dapat masuk menggunakan salah satu jenis akun berikut:

115 118 

116* [Claude Pro, Max, Team, atau Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_login) (direkomendasikan)119* [Claude Pro, Max, Team, atau Enterprise](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=quickstart_login) (direkomendasikan)

117* [Claude Console](https://platform.claude.com/) (akses API dengan kredit prabayar). Pada login pertama, ruang kerja "Claude Code" secara otomatis dibuat di Console untuk pelacakan biaya terpusat.120* [Claude Console](https://platform.claude.com/) (akses API dengan kredit prabayar). Saat pertama kali masuk, workspace "Claude Code" akan dibuat secara otomatis di Console untuk pelacakan biaya terpusat.

118* [Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry](/docs/id/third-party-integrations) (penyedia cloud enterprise)121* [Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry](/docs/id/third-party-integrations) (penyedia cloud enterprise)

119* Gateway [Claude apps](/docs/id/claude-apps-gateway) yang di-host sendiri, jika organisasi Anda menjalankannya: admin Anda telah mengkonfigurasi URL gateway sebelumnya, dan `/login` membuka langsung layar **Cloud gateway** untuk Anda masuk dengan SSO perusahaan122* [Claude apps gateway](/docs/id/claude-apps-gateway) yang di-host sendiri, jika organisasi Anda menjalankannya: admin Anda telah mengonfigurasi URL gateway sebelumnya, dan `/login` langsung terbuka di layar **Cloud gateway** agar Anda dapat masuk dengan SSO perusahaan

120 

121Setelah masuk, kredensial Anda disimpan dan Anda tidak perlu masuk lagi. Pelajari lebih lanjut di [Manajemen Kredensial](/docs/id/authentication#credential-management).

122 

123<h2 id="step-3-start-your-first-session">

124 Langkah 3: Mulai sesi pertama Anda

125</h2>

126 

127Buka terminal Anda di direktori proyek mana pun dan mulai Claude Code:

128 

129```bash theme={null}

130cd /path/to/your/project

131claude

132```

133 123 

134Ganti `/path/to/your/project` dengan jalur ke proyek yang ingin Anda kerjakan.124Setelah masuk, kredensial Anda akan disimpan dan Anda tidak perlu masuk lagi. Pelajari lebih lanjut di [Manajemen Kredensial](/docs/id/authentication#credential-management).

135 125 

136Anda akan melihat prompt Claude Code dengan versi, model saat ini, dan direktori kerja yang ditampilkan di atasnya. Ketik `/help` untuk perintah yang tersedia atau `/resume` untuk melanjutkan percakapan sebelumnya.126Prompt Claude Code akan muncul dengan versi, model saat ini, dan direktori kerja yang ditampilkan di atasnya. Ketik `/help` untuk melihat perintah yang tersedia atau `/resume` untuk melanjutkan percakapan sebelumnya. Untuk beralih akun nanti atau melakukan autentikasi ulang, ketik `/login` di dalam sesi yang sedang berjalan.

137 127 

138<h2 id="step-4-ask-your-first-question">128<h2 id="step-3-ask-your-first-question">

139 Langkah 4: Ajukan pertanyaan pertama Anda129 Langkah 3: Ajukan pertanyaan pertama Anda

140</h2>130</h2>

141 131 

142Mari kita mulai dengan memahami basis kode Anda. Coba salah satu perintah ini:132Coba salah satu perintah berikut:

143 133 

144```text wrap theme={null}134```text wrap theme={null}

145apa yang dilakukan proyek ini?135what does this project do?

146```136```

147 137 

148Claude akan menganalisis file Anda dan memberikan ringkasan. Anda juga dapat mengajukan pertanyaan yang lebih spesifik:138Claude akan menganalisis file Anda dan memberikan ringkasan. Anda juga dapat mengajukan pertanyaan yang lebih spesifik:

149 139 

150```text wrap theme={null}140```text wrap theme={null}

151teknologi apa yang digunakan proyek ini?141what technologies does this project use?

152```142```

153 143 

154```text wrap theme={null}144```text wrap theme={null}

155di mana titik masuk utama?145where is the main entry point?

156```146```

157 147 

158```text wrap theme={null}148```text wrap theme={null}

159jelaskan struktur folder149explain the folder structure

160```150```

161 151 

162Anda juga dapat menanyakan Claude tentang kemampuannya sendiri:152Anda juga dapat bertanya kepada Claude tentang kemampuannya sendiri:

163 153 

164```text wrap theme={null}154```text wrap theme={null}

165apa yang dapat dilakukan Claude Code?155what can Claude Code do?

166```156```

167 157 

168```text wrap theme={null}158```text wrap theme={null}

169bagaimana cara membuat skills kustom di Claude Code?159how do I create custom skills in Claude Code?

170```160```

171 161 

172```text wrap theme={null}162```text wrap theme={null}

173bisakah Claude Code bekerja dengan Docker?163can Claude Code work with Docker?

174```164```

175 165 

176<Note>166<Note>

177 Claude Code membaca file proyek Anda sesuai kebutuhan. Anda tidak perlu menambahkan konteks secara manual.167 Claude Code membaca file proyek Anda sesuai kebutuhan. Anda tidak perlu menambahkan konteks secara manual.

178</Note>168</Note>

179 169 

180<h2 id="step-5-make-your-first-code-change">170<h2 id="step-4-make-your-first-code-change">

181 Langkah 5: Buat perubahan kode pertama Anda171 Langkah 4: Buat perubahan kode pertama Anda

182</h2>172</h2>

183 173 

184Sekarang mari buat Claude Code melakukan beberapa pengkodean aktual. Coba tugas sederhana:174Cobalah tugas kecil:

185 175 

186```text wrap theme={null}176```text wrap theme={null}

187tambahkan fungsi hello world ke file utama177add a hello world function to the main file

188```178```

189 179 

190Claude Code menemukan file yang sesuai dan menampilkan perubahan kepada Anda. Jika diminta sebelum membuat perubahan, pilih **Ya** untuk menyetujui.180Claude Code menemukan file yang sesuai dan menampilkan perubahannya kepada Anda. Jika Claude Code meminta konfirmasi sebelum membuat perubahan, pilih **Yes** untuk menyetujuinya.

191 

192Dengan Claude Code v2.1.283 atau lebih baru, mode auto adalah [mode izin awal bawaan](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) untuk sesi terminal interaktif: pengklasifikasi meninjau tindakan alih-alih Anda, dan Claude mengedit sebagian besar file dan menjalankan sebagian besar perintah tanpa bertanya. Pada versi sebelumnya, mode auto adalah mode izin awal bawaan hanya pada paket Pro, Max, dan Team. Untuk sesi yang Anda mulai tepat setelah instalasi, lihat [Sesi pertama setelah instalasi atau upgrade](/docs/id/env-vars#first-session-after-an-install-or-upgrade).

193 181 

194<Note>182[Mode izin](/docs/id/permission-modes) sesi menentukan tindakan apa saja yang dapat dilakukan Claude tanpa meminta persetujuan Anda terlebih dahulu. Tekan `Shift+Tab` kapan saja untuk mengganti mode izin sesi yang sedang Anda gunakan.

195 Pengaturan Anda atau organisasi Anda dapat menetapkan mode izin awal yang berbeda. [Mode izin mana yang dimulai sesi](/docs/id/permission-modes#which-mode-a-session-starts-in) mencantumkan apa yang dilakukan. Tekan `Shift+Tab` kapan saja untuk beralih mode izin sesi yang Anda gunakan.

196</Note>

197 183 

198<h2 id="step-6-use-git-with-claude-code">184<h2 id="step-5-use-git-with-claude-code">

199 Langkah 6: Gunakan Git dengan Claude Code185 Langkah 5: Gunakan Git dengan Claude Code

200</h2>186</h2>

201 187 

202Claude Code membuat operasi Git menjadi percakapan:188Claude Code membuat operasi Git menjadi seperti percakapan:

203 189 

204```text wrap theme={null}190```text wrap theme={null}

205file apa yang telah saya ubah?191what files have I changed?

206```192```

207 193 

208```text wrap theme={null}194```text wrap theme={null}

209komit perubahan saya dengan pesan deskriptif195commit my changes with a descriptive message

210```196```

211 197 

212Anda juga dapat meminta operasi Git yang lebih kompleks:198Anda juga dapat memberikan prompt untuk operasi Git yang lebih kompleks:

213 199 

214```text wrap theme={null}200```text wrap theme={null}

215buat cabang baru bernama feature/quickstart201create a new branch called feature/quickstart

216```202```

217 203 

218```text wrap theme={null}204```text wrap theme={null}

219tunjukkan 5 komit terakhir saya205show me the last 5 commits

220```206```

221 207 

222```text wrap theme={null}208```text wrap theme={null}

223bantu saya menyelesaikan konflik penggabungan209help me resolve merge conflicts

224```210```

225 211 

226<h2 id="step-7-fix-a-bug-or-add-a-feature">212<h2 id="step-6-fix-a-bug-or-add-a-feature">

227 Langkah 7: Perbaiki bug atau tambahkan fitur213 Langkah 6: Perbaiki bug atau tambahkan fitur

228</h2>214</h2>

229 215 

230Claude mahir dalam debugging dan implementasi fitur.

231 

232Jelaskan apa yang Anda inginkan dalam bahasa alami:216Jelaskan apa yang Anda inginkan dalam bahasa alami:

233 217 

234```text wrap theme={null}218```text wrap theme={null}

235tambahkan validasi input ke formulir pendaftaran pengguna219add input validation to the user registration form

236```220```

237 221 

238Atau perbaiki masalah yang ada:222Atau perbaiki masalah yang sudah ada:

239 223 

240```text wrap theme={null}224```text wrap theme={null}

241ada bug di mana pengguna dapat mengirimkan formulir kosong - perbaiki225there's a bug where users can submit empty forms - fix it

242```226```

243 227 

244Claude Code akan:228<h2 id="step-7-test-out-other-common-workflows">

245 229 Langkah 7: Coba alur kerja umum lainnya

246* Menemukan kode yang relevan

247* Memahami konteksnya

248* Menerapkan solusi

249* Menjalankan tes jika tersedia

250 

251<h2 id="step-8-test-out-other-common-workflows">

252 Langkah 8: Coba alur kerja umum lainnya

253</h2>230</h2>

254 231 

255Ada beberapa cara untuk bekerja dengan Claude:232Ada sejumlah cara untuk bekerja dengan Claude:

256 233 

257**Refaktor kode**234**Refaktor kode**

258 235 

259```text wrap theme={null}236```text wrap theme={null}

260refaktor modul autentikasi untuk menggunakan async/await alih-alih callback237refactor the authentication module to use async/await instead of callbacks

261```238```

262 239 

263**Tulis tes**240**Tulis pengujian**

264 241 

265```text wrap theme={null}242```text wrap theme={null}

266tulis unit test untuk fungsi kalkulator243write unit tests for the calculator functions

267```244```

268 245 

269**Perbarui dokumentasi**246**Perbarui dokumentasi**

270 247 

271```text wrap theme={null}248```text wrap theme={null}

272perbarui README dengan instruksi instalasi249update the README with installation instructions

273```250```

274 251 

275**Tinjauan kode**252**Code review**

276 253 

277```text wrap theme={null}254```text wrap theme={null}

278tinjau perubahan saya dan sarankan perbaikan255review my changes and suggest improvements

279```256```

280 257 

281<Tip>258<Tip>

282 Berbicara dengan Claude seperti Anda berbicara dengan rekan kerja yang membantu. Jelaskan apa yang ingin Anda capai, dan Claude akan membantu Anda mencapainya.259 Berbicaralah dengan Claude seperti Anda berbicara dengan rekan kerja yang suka membantu. Jelaskan apa yang ingin Anda capai, dan Claude akan membantu Anda mencapainya.

283</Tip>260</Tip>

284 261 

285<h2 id="essential-commands">262<h2 id="essential-commands">


355 Apa selanjutnya?332 Apa selanjutnya?

356</h2>333</h2>

357 334 

358Sekarang yang Anda telah mempelajari dasar-dasarnya, jelajahi fitur-fitur yang lebih canggih:335Sekarang setelah Anda mempelajari dasar-dasarnya, jelajahi fitur-fitur yang lebih canggih:

359 

360<CardGroup cols={2}>

361 <Card title="Cara kerja Claude Code" icon="microchip" href="/docs/id/how-claude-code-works">

362 Pahami loop agentic, alat bawaan, dan cara Claude Code berinteraksi dengan proyek Anda

363 </Card>

364 

365 <Card title="Praktik terbaik" icon="star" href="/docs/id/best-practices">

366 Dapatkan hasil yang lebih baik dengan prompting yang efektif dan pengaturan proyek

367 </Card>

368 336 

369 <Card title="Alur kerja umum" icon="graduation-cap" href="/docs/id/common-workflows">337* [Cara kerja Claude Code](/docs/id/how-claude-code-works): pahami agentic loop, tool bawaan, dan cara Claude Code berinteraksi dengan proyek Anda

370 Panduan langkah demi langkah untuk tugas-tugas umum338* [Praktik terbaik](/docs/id/best-practices): dapatkan hasil yang lebih baik dengan prompting yang efektif dan pengaturan proyek

371 </Card>339* [Alur kerja umum](/docs/id/common-workflows): panduan langkah demi langkah untuk tugas-tugas umum

340* [Perluas Claude Code](/docs/id/features-overview): sesuaikan dengan CLAUDE.md, skills, hooks, MCP, dan lainnya

372 341 

373 <Card title="Perluas Claude Code" icon="puzzle-piece" href="/docs/id/features-overview">342Lihat [pengaturan lanjutan](/docs/id/setup) untuk opsi instalasi, pembaruan manual, atau petunjuk pencopotan instalasi.

374 Sesuaikan dengan CLAUDE.md, skills, hooks, MCP, dan lainnya

375 </Card>

376</CardGroup>

377 343 

378<h2 id="getting-help">344<h2 id="getting-help">

379 Mendapatkan bantuan345 Mendapatkan bantuan

380</h2>346</h2>

381 347 

382* **Di Claude Code**: Ketik `/help` atau tanya "bagaimana cara saya..."348* **Di Claude Code**: Ketik `/help` atau ajukan pertanyaan "bagaimana cara saya..."

383* **Dokumentasi**: Anda di sini! Jelajahi panduan lainnya349* **Dokumentasi**: Jelajahi panduan lainnya di situs ini

384* **Kursus**: Ikuti [Claude Code 101](https://academy.claude.com/courses/claude-code-101) dan kursus gratis lainnya yang dapat Anda ikuti sendiri di [Claude Academy](https://academy.claude.com/)350* **Kursus**: Ikuti [Claude Code 101](https://academy.claude.com/courses/claude-code-101) dan kursus gratis lainnya yang dapat Anda ikuti sendiri di [Claude Academy](https://academy.claude.com/)

385* **Komunitas**: Bergabunglah dengan [server Discord](https://www.anthropic.com/discord) untuk tips dan dukungan351* **Komunitas**: Bergabunglah dengan [server Discord](https://www.anthropic.com/discord) untuk tips dan dukungan

Details

365</h2>365</h2>

366 366 

367* **Satu sesi jarak jauh per proses interaktif**: di luar server mode, setiap instans Claude Code mendukung satu sesi jarak jauh pada satu waktu. Gunakan [server mode](#start-a-remote-control-session) untuk menjalankan beberapa sesi bersamaan dari satu proses.367* **Satu sesi jarak jauh per proses interaktif**: di luar server mode, setiap instans Claude Code mendukung satu sesi jarak jauh pada satu waktu. Gunakan [server mode](#start-a-remote-control-session) untuk menjalankan beberapa sesi bersamaan dari satu proses.

368* **Proses lokal harus tetap berjalan**: Remote Control berjalan sebagai proses lokal. Jika Anda menutup terminal, keluar dari Desktop app atau VS Code, atau menghentikan proses `claude` dengan cara lain, sesi akan offline sampai Anda [membawanya kembali](#resume-sessions-after-stopping-the-server). Untuk menjaga sesi tetap berjalan di mesin jarak jauh setelah Anda memutuskan SSH, mulai di dalam `tmux` atau `screen`.368* **Proses lokal harus tetap berjalan**: Remote Control berjalan sebagai proses lokal. Jika Anda menutup terminal, keluar dari Desktop app atau VS Code, atau menghentikan proses `claude` dengan cara lain, sesi akan offline sampai Anda [membawanya kembali](#resume-sessions-after-stopping-the-server). Jika Anda menjalankan `claude` dari terminal di mesin jarak jauh, mulai di dalam `tmux` atau `screen` agar sesi tetap berjalan setelah Anda memutuskan sambungan SSH.

369* **Sesi yang mogok dalam server mode**: jika sesi yang dilayani oleh `claude remote-control` mogok, kirimkan pesan kepadanya dari perangkat yang terhubung. Claude Code melayaninya lagi. Anda tidak perlu memulai ulang server. Memerlukan Claude Code v2.1.238 atau lebih baru.369* **Sesi yang mogok dalam server mode**: jika sesi yang dilayani oleh `claude remote-control` mogok, kirimkan pesan kepadanya dari perangkat yang terhubung. Claude Code melayaninya lagi. Anda tidak perlu memulai ulang server. Memerlukan Claude Code v2.1.238 atau lebih baru.

370* **Penolakan HTTP 403 pada sesi yang terhubung**: setelah sesi interaktif terhubung, Claude Code terus mencoba ulang hingga tiga menit ketika sesuatu antara mesin Anda dan server Anthropic menjawab dengan HTTP 403, yang dapat terjadi setelah perubahan VPN atau jaringan. Jika penolakan berlangsung lebih lama, Claude Code memutuskan sambungan, dan alasannya menunjukkan apa yang menolak: tepi jaringan, atau proxy, VPN, atau firewall di jaringan Anda sendiri.370* **Penolakan HTTP 403 pada sesi yang terhubung**: setelah sesi interaktif terhubung, Claude Code terus mencoba ulang hingga tiga menit ketika sesuatu antara mesin Anda dan server Anthropic menjawab dengan HTTP 403, yang dapat terjadi setelah perubahan VPN atau jaringan. Jika penolakan berlangsung lebih lama, Claude Code memutuskan sambungan, dan alasannya menunjukkan apa yang menolak: tepi jaringan, atau proxy, VPN, atau firewall di jaringan Anda sendiri.

371* **Pemadaman jaringan yang berkepanjangan**: jika mesin Anda aktif tetapi tidak dapat menjangkau jaringan, apa yang Anda lakukan selanjutnya tergantung pada mode:371* **Pemadaman jaringan yang berkepanjangan**: jika mesin Anda aktif tetapi tidak dapat menjangkau jaringan, apa yang Anda lakukan selanjutnya tergantung pada mode:

routines.md +1 −1

Details

93 Pilih [lingkungan cloud](/docs/id/cloud-environments) untuk rutinitas. Lingkungan mengontrol apa yang dapat diakses sesi cloud:93 Pilih [lingkungan cloud](/docs/id/cloud-environments) untuk rutinitas. Lingkungan mengontrol apa yang dapat diakses sesi cloud:

94 94 

95 * **Network access**: atur tingkat akses internet yang tersedia selama setiap jalankan95 * **Network access**: atur tingkat akses internet yang tersedia selama setiap jalankan

96 * **Environment variables**: sediakan nilai yang dapat digunakan Claude selama setiap jalankan. Mereka [terlihat oleh siapa pun yang menggunakan lingkungan](/docs/id/cloud-environments#what-carries-over-from-your-setup), jadi pada paket Pro dan Max, simpan kunci untuk API yang Claude panggil selama jalankan sebagai [API credentials](/docs/id/cloud-environments#add-api-credentials) sebagai gantinya. Bagian itu juga mencantumkan permintaan yang tidak pernah mendapatkan kredensial96 * **Environment variables**: sediakan nilai yang dapat digunakan Claude selama setiap run. Nilai tersebut [terlihat oleh siapa pun yang menggunakan lingkungan](/docs/id/cloud-environments#what-carries-over-from-your-setup), jadi pada paket Pro dan Max, simpan kunci untuk API yang dipanggil Claude selama run sebagai [network secrets](/docs/id/cloud-environments#add-api-credentials) sebagai gantinya. Bagian itu juga mencantumkan permintaan yang tidak pernah mendapatkan secret

97 * **Setup script**: instal dependensi dan alat yang dibutuhkan rutinitas. Hasilnya [di-cache](/docs/id/cloud-environments#environment-caching), jadi skrip tidak berjalan ulang pada setiap sesi97 * **Setup script**: instal dependensi dan alat yang dibutuhkan rutinitas. Hasilnya [di-cache](/docs/id/cloud-environments#environment-caching), jadi skrip tidak berjalan ulang pada setiap sesi

98 98 

99 Lingkungan **Default** disediakan dengan akses jaringan **Trusted**, yang memungkinkan hanya [daftar allowlist default](/docs/id/cloud-environments#default-allowed-domains) registri paket, API penyedia cloud, registri kontainer, dan domain pengembangan umum melalui jaringan sesi. Konektor yang Anda tambahkan ke rutinitas menjangkau layanan mereka melalui server Anthropic, jadi mereka tidak memerlukan perubahan allowlist. Jika rutinitas Anda perlu menjangkau layanan Anda sendiri secara langsung, atau domain di luar daftar itu, edit [akses jaringan](/docs/id/cloud-environments#network-access) lingkungan sebelum menjalankan. Untuk menggunakan lingkungan terpisah, [buat satu](/docs/id/cloud-environments#configure-your-environment) terlebih dahulu.99 Lingkungan **Default** disediakan dengan akses jaringan **Trusted**, yang memungkinkan hanya [daftar allowlist default](/docs/id/cloud-environments#default-allowed-domains) registri paket, API penyedia cloud, registri kontainer, dan domain pengembangan umum melalui jaringan sesi. Konektor yang Anda tambahkan ke rutinitas menjangkau layanan mereka melalui server Anthropic, jadi mereka tidak memerlukan perubahan allowlist. Jika rutinitas Anda perlu menjangkau layanan Anda sendiri secara langsung, atau domain di luar daftar itu, edit [akses jaringan](/docs/id/cloud-environments#network-access) lingkungan sebelum menjalankan. Untuk menggunakan lingkungan terpisah, [buat satu](/docs/id/cloud-environments#configure-your-environment) terlebih dahulu.

Details

103 Skrip contoh103 Skrip contoh

104</h2>104</h2>

105 105 

106Skrip di bawah menjalankan loop lengkap terhadap `$CLAUDE_TEST_ENVIRONMENT_ID`, ID `ccpool_...` lingkungan uji Anda, ditampilkan dalam dialog detail lingkungan pada halaman admin atau dikembalikan oleh [panggilan create-environment](#create-a-dedicated-test-environment), dan menegaskan pada frasa sentinel di setiap balasan. Jalankan dari checkout git repositori yang ingin dikerjakan sesi, setelah memulai runner pada host ini dengan hook capture terinstal dan `E2E_REPLY_DIR` diekspor.106Skrip di bawah menjalankan loop lengkap terhadap `$CLAUDE_TEST_ENVIRONMENT_ID`, ID `ccpool_...` lingkungan uji Anda, ditampilkan dalam dialog detail lingkungan pada halaman admin atau dikembalikan oleh [panggilan create-environment](#create-a-dedicated-test-environment), dan menegaskan pada frasa sentinel di setiap balasan. Jalankan dari checkout git repositori yang ingin dikerjakan sesi, setelah memulai runner pada host ini dengan hook capture terinstal dan `E2E_REPLY_DIR` diekspor. Pertama, masuk dengan akun claude.ai pada mesin yang menjalankan skrip, seperti yang dijelaskan dalam [Autentikasi dari CI](#authenticate-from-ci). Tanpa proses masuk tersebut, dispatch pertama gagal dengan error seperti `Unable to get organization UUID for cloud session creation`.

107 107 

108```bash theme={null}108```bash theme={null}

109#!/usr/bin/env bash109#!/usr/bin/env bash

Details

43 <Step title="Buka konsol admin">43 <Step title="Buka konsol admin">

44 Di konsol claude.ai, buka [**Organization settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code).44 Di konsol claude.ai, buka [**Organization settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code).

45 45 

46 Jika tautan mengarahkan ulang Anda ke halaman Organization settings yang berbeda alih-alih halaman Claude Code, akun Anda tidak memiliki peran yang diperlukan. Peran Admin dan peran non-Owner lainnya tidak dapat melihat atau mengedit pengaturan terkelola, jadi minta Owner atau Primary Owner di organisasi Anda untuk membuat perubahan. Lihat [Kontrol akses](#access-control).46 Dalam organisasi Team atau Enterprise, jika halaman menyatakan bahwa Anda tidak memiliki akses, minta [Owner atau Primary Owner](#access-control) untuk membuat perubahan.

47 </Step>47 </Step>

48 48 

49 <Step title="Tentukan pengaturan Anda">49 <Step title="Tentukan pengaturan Anda">


149 Prioritas pengaturan149 Prioritas pengaturan

150</h3>150</h3>

151 151 

152Pengaturan yang dikelola server dan [pengaturan yang dikelola endpoint](/docs/id/managed-settings#delivery-mechanisms) keduanya menempati tingkat tertinggi dalam [hierarki pengaturan](/docs/id/settings#settings-precedence) Claude Code. Tidak ada tingkat pengaturan lain yang dapat menggantinya, termasuk argumen baris perintah, kecuali [pengecualian terhadap prioritas pengaturan terkelola](/docs/id/settings#exceptions-to-managed-settings-precedence).152Pengaturan yang dikelola server dan [pengaturan yang dikelola endpoint](/docs/id/managed-settings#delivery-mechanisms) keduanya menempati tingkat tertinggi dalam [hierarki pengaturan](/docs/id/settings#settings-precedence) Claude Code. Kunci yang Anda atur di sini diutamakan daripada kunci yang sama dalam file pengaturan milik pengguna sendiri atau dalam nilai `--settings`, kecuali [pengecualian terhadap prioritas pengaturan terkelola](/docs/id/settings#exceptions-to-managed-settings-precedence).

153 153 

154Dalam tingkat terkelola, Claude Code secara default menggunakan sumber pertama yang mengirimkan setidaknya satu kunci kebijakan, memeriksa pengaturan yang dikelola server terlebih dahulu dan kemudian pengaturan yang dikelola endpoint, kecuali [kunci pengecualian per-kunci yang dibahas selanjutnya](#per-key-exceptions-across-managed-sources). [Bagaimana Claude Code menggabungkan sumber terkelola](/docs/id/managed-settings#precedence-within-the-managed-tier) memiliki peringkat lengkap, pengecualian untuk kunci kontrol, dan opt-in yang berlaku untuk setiap sumber.154Dalam tingkat terkelola, Claude Code secara default menggunakan sumber pertama yang mengirimkan setidaknya satu kunci kebijakan, memeriksa pengaturan yang dikelola server terlebih dahulu dan kemudian pengaturan yang dikelola endpoint, kecuali [kunci pengecualian per-kunci yang dibahas selanjutnya](#per-key-exceptions-across-managed-sources). [Bagaimana Claude Code menggabungkan sumber terkelola](/docs/id/managed-settings#precedence-within-the-managed-tier) memiliki peringkat lengkap, pengecualian untuk kunci kontrol, dan opt-in yang berlaku untuk setiap sumber.

155 155 

sessions.md +37 −35

Details

22| `claude --resume` | Membuka [pemilih sesi](#use-the-session-picker) |22| `claude --resume` | Membuka [pemilih sesi](#use-the-session-picker) |

23| `claude --resume <name>` | Melanjutkan sesi bernama secara langsung |23| `claude --resume <name>` | Melanjutkan sesi bernama secara langsung |

24| `claude --resume <transcript-path>` | Melanjutkan percakapan yang disimpan dalam file [transkrip](#where-transcripts-are-stored) `.jsonl` di jalur absolut tersebut |24| `claude --resume <transcript-path>` | Melanjutkan percakapan yang disimpan dalam file [transkrip](#where-transcripts-are-stored) `.jsonl` di jalur absolut tersebut |

25| `claude --from-pr <number>` | Membuka pemilih sesi yang disaring untuk sesi yang ditautkan ke permintaan tarik tersebut |25| `claude --from-pr <number>` | Membuka pemilih sesi yang disaring untuk sesi yang ditautkan ke pull request tersebut |

26| `/resume` | Beralih ke percakapan berbeda dari dalam sesi aktif |26| `/resume` | Beralih ke percakapan berbeda dari dalam sesi aktif |

27 27 

28Claude Code meninggalkan sesi yang dibuat dengan [`claude -p`](/docs/id/headless) atau [Agent SDK](/docs/id/agent-sdk/overview) keluar dari pemilih sesi dan keluar dari `claude --continue`. Anda masih dapat melanjutkan satu dengan meneruskan ID sesinya ke `claude --resume <session-id>`. Dengan `claude --continue`, Claude Code juga melewati [sesi yang prompt pertamanya adalah `/loop`](#where-the-session-picker-looks). Ketika Anda menjalankan [`claude -p --continue`](/docs/id/headless#continue-conversations), Claude Code menyertakan sesi `-p`, SDK, dan `/loop`.28Claude Code meninggalkan sesi yang dibuat dengan [`claude -p`](/docs/id/headless) atau [Agent SDK](/docs/id/agent-sdk/overview) keluar dari pemilih sesi dan keluar dari `claude --continue`. Anda masih dapat melanjutkan satu dengan meneruskan ID sesinya ke `claude --resume <session-id>`. Dengan `claude --continue`, Claude Code juga melewati [sesi yang prompt pertamanya adalah `/loop`](#where-the-session-picker-looks). Ketika Anda menjalankan [`claude -p --continue`](/docs/id/headless#continue-conversations), Claude Code menyertakan sesi `-p`, SDK, dan `/loop`.


44 44 

45Ketika percakapan yang Anda lanjutkan dengan `claude --resume` atau `/resume` termasuk dalam [sesi latar belakang](/docs/id/agent-view) yang masih berjalan, Claude Code membuka sesi yang berjalan itu sendiri. Dengan `--bg` pada baris perintah, lanjutan adalah [pengiriman latar belakang](/docs/id/agent-view#from-your-shell) sebagai gantinya. Sebelum v2.1.285, Claude Code menolak dan memberi tahu Anda untuk membuka sesi dengan `claude attach <id>`, atau untuk menghentikannya dengan `claude stop <id>` terlebih dahulu.45Ketika percakapan yang Anda lanjutkan dengan `claude --resume` atau `/resume` termasuk dalam [sesi latar belakang](/docs/id/agent-view) yang masih berjalan, Claude Code membuka sesi yang berjalan itu sendiri. Dengan `--bg` pada baris perintah, lanjutan adalah [pengiriman latar belakang](/docs/id/agent-view#from-your-shell) sebagai gantinya. Sebelum v2.1.285, Claude Code menolak dan memberi tahu Anda untuk membuka sesi dengan `claude attach <id>`, atau untuk menghentikannya dengan `claude stop <id>` terlebih dahulu.

46 46 

47* **Dari shell Anda**: `claude --resume <session>` menjalankan [`claude attach`](/docs/id/agent-view#attach-to-a-session) pada sesi tersebut di terminal yang sama daripada memuat transkrip itu sendiri. Prompt yang Anda teruskan pada baris perintah, seperti dalam `claude --resume <session> "check the tests too"`, masuk ke sesi sebagai giliran berikutnya terlebih dahulu, dan Claude Code mencetak `Sent your prompt to the background session (<id>); opening it…` sebelum melampirkan. `claude -p --resume <session> "prompt"` yang diketik di terminal melakukan hal yang sama, jadi `-p` tidak membuat jalankan tersebut non-interaktif.47* **Dari shell Anda**: `claude --resume <session>` menjalankan [`claude attach`](/docs/id/agent-view#attach-to-a-session) pada sesi tersebut di terminal yang sama daripada memuat transkrip itu sendiri. Prompt yang Anda teruskan pada baris perintah, seperti dalam `claude --resume <session> "check the tests too"`, masuk ke sesi sebagai giliran berikutnya terlebih dahulu, dan Claude Code mencetak `Sent your prompt to the background session (<id>); opening it…` sebelum melampirkan. `claude -p --resume <session> "prompt"` yang diketik di terminal melakukan hal yang sama, jadi `-p` tidak membuat proses tersebut non-interaktif.

48 48 

49 Claude Code tidak membuka sesi ketika baris perintah memiliki salah satu dari ini:49 Claude Code tidak membuka sesi ketika baris perintah memiliki salah satu dari ini:

50 50 

51 * Input atau output yang disalurkan atau dialihkan51 * Input atau output yang disalurkan atau dialihkan

52 * Bendera yang mengonfigurasi sesi, seperti `--permission-mode`, `--model`, atau `--settings`52 * Flag yang mengonfigurasi sesi, seperti `--permission-mode`, `--model`, atau `--settings`

53 * Bendera yang membaca output, seperti `--output-format json` atau `--json-schema`53 * Flag yang membaca output, seperti `--output-format json` atau `--json-schema`

54 * Bendera yang membatasi atau memundurkan jalankan, seperti `--max-turns` atau `--max-budget-usd`54 * Flag yang membatasi atau memundurkan proses, seperti `--max-turns` atau `--max-budget-usd`

55 55 

56 Dengan salah satu dari ini, atau ketika [tampilan agen dimatikan](/docs/id/agent-view#turn-off-agent-view), Claude Code tidak mengirim apa pun dan keluar dengan status 1, mencetak bahwa sesi berjalan di latar belakang bersama dengan perintah `claude attach <id>` yang membukanya, atau memberi tahu Anda untuk menemukannya dalam `claude agents` ketika tidak dapat menentukan ID. Tambahkan `--fork-session` untuk melanjutkan salinan percakapan sebagai gantinya. Untuk melanjutkan percakapan itu sendiri dalam sesi Anda sendiri, dengan bendera Anda diterapkan, jalankan `claude stop <id>` dan kemudian ulangi perintah.56 Dengan salah satu dari ini, atau ketika [tampilan agent dimatikan](/docs/id/agent-view#turn-off-agent-view), Claude Code tidak mengirim apa pun dan keluar dengan status 1, mencetak bahwa sesi berjalan di latar belakang bersama dengan perintah `claude attach <id>` yang membukanya, atau memberi tahu Anda untuk menemukannya dalam `claude agents` ketika tidak dapat menentukan ID. Tambahkan `--fork-session` untuk melanjutkan salinan percakapan sebagai gantinya. Untuk melanjutkan percakapan itu sendiri dalam sesi Anda sendiri, dengan flag Anda diterapkan, jalankan `claude stop <id>` dan kemudian ulangi perintah.

57 57 

58 Prompt yang dimulai dengan `/` atau `!` tidak dikirim, begitu juga dengan prompt apa pun sementara sesi menunggu jawaban Anda atas pertanyaan. Dalam kedua kasus Claude Code tidak membuka sesi, dan pesan tersebut menyertakan `Your prompt was not sent to it` dengan alasan.58 Prompt yang dimulai dengan `/` atau `!` tidak dikirim, begitu juga dengan prompt apa pun sementara sesi menunggu jawaban Anda atas pertanyaan. Dalam kedua kasus Claude Code tidak membuka sesi, dan pesan tersebut menyertakan `Your prompt was not sent to it` dengan alasan.

59* **Dari dalam sesi**: `/resume` memindahkan percakapan saat ini Anda ke latar belakang dan melampirkan terminal ini ke sesi yang berjalan, mencetak `Opening "<title>", running in the background (<id>)`. Tekan `←` pada prompt kosong untuk kembali ke tampilan agen, yang juga mencantumkan percakapan yang Anda tinggalkan. Ketika percakapan saat ini tidak dapat pindah ke latar belakang, misalnya karena Anda sudah dilampirkan ke sesi latar belakang atau persistensi sesi dimatikan, `/resume` mencetak perintah `claude attach` untuk dijalankan sebagai gantinya.59* **Dari dalam sesi**: `/resume` memindahkan percakapan saat ini Anda ke latar belakang dan melampirkan terminal ini ke sesi yang berjalan, mencetak `Opening "<title>", running in the background (<id>)`. Tekan `←` pada prompt kosong untuk kembali ke tampilan agent, yang juga mencantumkan percakapan yang Anda tinggalkan. Ketika percakapan saat ini tidak dapat pindah ke latar belakang, misalnya karena Anda sudah dilampirkan ke sesi latar belakang atau persistensi sesi dimatikan, `/resume` mencetak perintah `claude attach` untuk dijalankan sebagai gantinya.

60 60 

61<h3 id="what-a-resumed-session-restores">61<h3 id="what-a-resumed-session-restores">

62 Apa yang dipulihkan sesi yang dilanjutkan62 Apa yang dipulihkan sesi yang dilanjutkan


64 64 

65Ketika Claude Code memuat percakapan dari transkrip-nya, sesi yang dilanjutkan memulihkan percakapan bersama dengan status yang disimpan di dalamnya:65Ketika Claude Code memuat percakapan dari transkrip-nya, sesi yang dilanjutkan memulihkan percakapan bersama dengan status yang disimpan di dalamnya:

66 66 

67* Riwayat percakapan: riwayat lengkap, termasuk panggilan alat dan hasil. Alat yang masih berjalan ketika proses sebelumnya berakhir, misalnya dalam kerusakan, tidak selesai atau berjalan lagi ketika Anda melanjutkan. Claude melihat panggilan yang ditandai sebagai terputus sebelum hasilnya dicatat dan diberitahu untuk memeriksa apakah itu berlaku sebelum menjalankannya lagi, kecuali [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN`](/docs/id/env-vars#variables) diatur. Sebelum v2.1.281, Claude Code menghapus panggilan yang terputus dari percakapan atau menampilkannya kepada Claude sebagai yang Anda interupsi.67* Riwayat percakapan: riwayat lengkap, termasuk panggilan tool dan hasil. Tool yang masih berjalan ketika proses sebelumnya berakhir, misalnya dalam kerusakan, tidak selesai atau berjalan lagi ketika Anda melanjutkan. Claude melihat panggilan yang ditandai sebagai terputus sebelum hasilnya dicatat dan diberitahu untuk memeriksa apakah itu berlaku sebelum menjalankannya lagi, kecuali [`CLAUDE_CODE_RESUME_INTERRUPTED_TURN`](/docs/id/env-vars#variables) diatur. Sebelum v2.1.281, Claude Code menghapus panggilan yang terputus dari percakapan atau menampilkannya kepada Claude sebagai yang Anda interupsi.

68* Model: sesi berlanjut pada model yang digunakannya. Model tidak dipulihkan ketika telah pensiun atau tidak diizinkan oleh `availableModels`, ketika bendera `--model` atau variabel lingkungan keluarga `ANTHROPIC_MODEL` memilih satu saat peluncuran, atau pada penyedia yang menggunakan ID penerapan khusus penyedia, seperti [Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry](/docs/id/third-party-integrations); lihat [konfigurasi model](/docs/id/model-config#setting-your-model) untuk urutan resolusi.68* Model: sesi berlanjut pada model yang digunakannya, kecuali dalam kasus di [Mengatur model Anda](/docs/id/model-config#setting-your-model).

69* Agent: sesi yang dimulai dengan [`--agent`](/docs/id/sub-agents#invoke-subagents-explicitly) atau pengaturan `agent` berlanjut sebagai agen tersebut, mempertahankan pembatasan alat dan model-nya. Teruskan `--agent` saat melanjutkan untuk memilih yang berbeda; untuk prompt sistem dalam kedua kasus, lihat [Bendera prompt sistem dalam percakapan yang dilanjutkan](/docs/id/cli-reference#system-prompt-flags-in-resumed-conversations). Claude Code mencari agen di dua tempat: direktori asli sesi, asalkan Anda telah [mempercayai ruang kerja tersebut](/docs/id/permissions#project-allow-rules-and-workspace-trust), dan kemudian direktori tempat Anda melanjutkan, sehingga agen yang bersifat proyek masih dimuat ketika Anda melanjutkan dari direktori lain. Jika Claude Code tidak menemukan agen di salah satu tempat, sesi dilanjutkan dengan alat default dan menampilkan [peringatan yang menyebutkan agen](/docs/id/errors#session-agent-no-longer-available).69* Agent: sesi yang dimulai dengan [`--agent`](/docs/id/sub-agents#invoke-subagents-explicitly) atau pengaturan `agent` berlanjut sebagai agent tersebut, mempertahankan pembatasan tool dan model-nya. Teruskan `--agent` saat melanjutkan untuk memilih yang berbeda; untuk system prompt dalam kedua kasus, lihat [Flag system prompt dalam percakapan yang dilanjutkan](/docs/id/cli-reference#system-prompt-flags-in-resumed-conversations). Claude Code mencari agent di dua tempat: direktori asli sesi, asalkan Anda telah [mempercayai workspace tersebut](/docs/id/permissions#project-allow-rules-and-workspace-trust), dan kemudian direktori tempat Anda melanjutkan, sehingga agent yang bersifat proyek masih dimuat ketika Anda melanjutkan dari direktori lain. Jika Claude Code tidak menemukan agent di salah satu tempat, sesi dilanjutkan dengan tool default dan menampilkan [peringatan yang menyebutkan agent](/docs/id/errors#session-agent-no-longer-available).

70* Mode izin: jika Anda melanjutkan dari terminal dengan `claude --continue`, `claude --resume <session-id>`, atau `claude --resume <name>` ketika nama cocok dengan satu sesi, tanpa `-p`, Claude Code memulihkan mode izin yang ada di sesi, kecuali dalam kasus di [mode izin saat melanjutkan](#permission-mode-on-resume), yang juga mencakup pemilih sesi, `/resume`, dan melanjutkan dengan `claude -p`. Teruskan `--permission-mode` atau `--dangerously-skip-permissions` untuk mengganti mode yang dipulihkan.70* Mode izin: jika Anda melanjutkan dari terminal dengan `claude --continue`, `claude --resume <session-id>`, atau `claude --resume <name>` ketika nama cocok dengan satu sesi, tanpa `-p`, Claude Code memulihkan mode izin yang ada di sesi, kecuali dalam kasus di [mode izin saat melanjutkan](#permission-mode-on-resume), yang juga mencakup pemilih sesi, `/resume`, dan melanjutkan dengan `claude -p`. Teruskan `--permission-mode` atau `--dangerously-skip-permissions` untuk menimpa mode yang dipulihkan.

71* Tujuan aktif: [tujuan](/docs/id/goal#resume-with-an-active-goal) yang masih aktif ketika sesi berakhir terbawa; hitungan giliran, pengatur waktu, dan baseline pengeluaran token-nya disetel ulang.71* Tujuan aktif: [tujuan](/docs/id/goal#resume-with-an-active-goal) yang masih aktif ketika sesi berakhir terbawa; hitungan giliran, pengatur waktu, dan baseline pengeluaran token-nya disetel ulang.

72* Tugas terjadwal: [tugas yang belum kedaluwarsa](/docs/id/scheduled-tasks#limitations) dipulihkan. Tugas Bash latar belakang dan monitor tidak.72* Tugas terjadwal: [tugas yang belum kedaluwarsa](/docs/id/scheduled-tasks#limitations) dipulihkan. Tugas Bash latar belakang dan monitor tidak.

73* Pekerjaan latar belakang: [subagen latar belakang](/docs/id/sub-agents#run-subagents-in-foreground-or-background), perintah Bash latar belakang, atau [alur kerja](/docs/id/workflows) yang berakhir dengan proses sebelumnya muncul dalam transkrip yang dilanjutkan sebagai catatan bahwa itu tidak selesai. Claude Code tidak memulai giliran dari catatan tersebut; Claude membacanya dengan prompt Anda berikutnya.73* Pekerjaan latar belakang: [subagent latar belakang](/docs/id/sub-agents#run-subagents-in-foreground-or-background), perintah Bash latar belakang, atau [workflow](/docs/id/workflows) yang berakhir dengan proses sebelumnya muncul dalam transkrip yang dilanjutkan sebagai catatan bahwa itu tidak selesai. Claude Code tidak memulai giliran dari catatan tersebut; Claude membacanya dengan prompt Anda berikutnya.

74 74 

75Tidak setiap bendera konfigurasi dari peluncuran asli dipulihkan. Jika sesi bergantung pada `--mcp-config`, `--settings`, `--plugin-dir`, `--fallback-model`, atau direktori yang ditambahkan dengan `--add-dir`, teruskan lagi saat Anda melanjutkan; direktori yang ditambahkan pertengahan sesi dengan `/add-dir` juga tidak dipulihkan, meskipun pemilih sesi masih menggunakannya untuk menemukan sesi. File pengaturan standar, seperti `settings.json` dan `settings.local.json`, dibaca ulang saat peluncuran, sehingga konfigurasi yang berada di dalamnya tidak perlu dilewatkan lagi. Untuk `--system-prompt` dan `--append-system-prompt`, lihat [Bendera prompt sistem dalam percakapan yang dilanjutkan](/docs/id/cli-reference#system-prompt-flags-in-resumed-conversations).75Tidak setiap flag konfigurasi dari peluncuran asli dipulihkan. Jika sesi bergantung pada `--mcp-config`, `--settings`, `--plugin-dir`, `--fallback-model`, atau direktori yang ditambahkan dengan `--add-dir`, teruskan lagi saat Anda melanjutkan; direktori yang ditambahkan pertengahan sesi dengan `/add-dir` juga tidak dipulihkan, meskipun pemilih sesi masih menggunakannya untuk menemukan sesi. File pengaturan standar, seperti `settings.json` dan `settings.local.json`, dibaca ulang saat peluncuran, sehingga konfigurasi yang berada di dalamnya tidak perlu diteruskan lagi. Untuk `--system-prompt` dan `--append-system-prompt`, lihat [Flag system prompt dalam percakapan yang dilanjutkan](/docs/id/cli-reference#system-prompt-flags-in-resumed-conversations).

76 76 

77<h4 id="permission-mode-on-resume">77<h4 id="permission-mode-on-resume">

78 Mode izin saat melanjutkan78 Mode izin saat melanjutkan

79</h4>79</h4>

80 80 

81Kasus-kasus di bawah berlaku ketika Claude Code memuat percakapan dari transkrip-nya; ketika Anda [membuka sesi latar belakang yang masih berjalan](#resume-a-running-background-session) sebagai gantinya, sesi tersebut mempertahankan mode izin yang ada di dalamnya.81Mode izin yang digunakan Claude Code untuk memulai sesi yang dilanjutkan bergantung pada cara Anda melanjutkan. Kasus-kasus di bawah berlaku ketika Claude Code memuat percakapan dari transkrip-nya; ketika Anda [membuka sesi latar belakang yang masih berjalan](#resume-a-running-background-session) sebagai gantinya, sesi tersebut mempertahankan mode izin yang ada di dalamnya.

82 82 

83* Terminal: `claude --continue`, `claude --resume <session-id>`, atau `claude --resume <name>` ketika nama cocok dengan satu sesi, tanpa `-p`. Claude Code memulihkan mode izin yang ada di sesi, kecuali dalam kasus di tabel. Teruskan `--permission-mode` atau `--dangerously-skip-permissions` untuk mengganti mode yang dipulihkan.83* Terminal: `claude --continue`, `claude --resume <session-id>`, atau `claude --resume <name>` ketika nama cocok dengan satu sesi, tanpa `-p`. Claude Code memulihkan mode izin yang ada di sesi, kecuali dalam kasus di tabel. Teruskan `--permission-mode` atau `--dangerously-skip-permissions` untuk menimpa mode yang dipulihkan.

84* Non-interaktif: `claude -p --resume` atau `claude -p --continue`. Claude Code memulai jalankan dalam mode izin yang akan dimulai oleh jalankan `claude -p` baru, kecuali sesi yang berakhir dalam mode rencana dilanjutkan dalam mode rencana di bawah [kondisi di bawah](#resume-in-plan-mode-with-p).84* Non-interaktif: `claude -p --resume` atau `claude -p --continue`. Claude Code memulai proses dalam mode izin yang akan digunakan oleh proses `claude -p` baru, kecuali sesi yang berakhir dalam plan mode dilanjutkan dalam plan mode di bawah [kondisi di bawah](#resume-in-plan-mode-with-p).

85* VS Code: panel percakapan ekstensi. Tabel hanya mencakup percakapan yang berakhir dalam mode rencana; untuk sisanya, lihat [lanjutkan percakapan masa lalu](/docs/id/vs-code#resume-past-conversations).85* VS Code: panel percakapan ekstensi. Tabel hanya mencakup percakapan yang berakhir dalam plan mode; untuk sisanya, lihat [lanjutkan percakapan masa lalu](/docs/id/vs-code#resume-past-conversations).

86* Pemilih sesi saat peluncuran: sesi yang Anda pilih dari [pemilih sesi](#use-the-session-picker), apakah Anda membukanya dengan `claude --resume` saja, `claude --from-pr`, atau nama yang cocok dengan lebih dari satu sesi. Claude Code tidak memulihkan mode izin yang disimpan. Ini memulai sesi dalam mode izin yang akan dimulai oleh sesi baru dari baris perintah yang sama.86* Pemilih sesi saat peluncuran: sesi yang Anda pilih dari [pemilih sesi](#use-the-session-picker), apakah Anda membukanya dengan `claude --resume` saja, `claude --from-pr`, atau nama yang cocok dengan lebih dari satu sesi. Claude Code memulai sesi dalam mode izin yang akan dimulai oleh sesi baru dari baris perintah yang sama, kecuali sesi yang berakhir dalam plan mode dilanjutkan dalam plan mode kecuali Anda meneruskan `--permission-mode`, `--dangerously-skip-permissions`, atau `--fork-session`. Tidak ada mode izin tersimpan lain yang dipulihkan.

87* `/resume` di dalam sesi, dengan atau tanpa argumen: Claude Code tidak memulihkan mode izin yang disimpan. Percakapan yang Anda alihkan berlanjut dalam mode izin yang ada di sesi saat ini.87* `/resume` di dalam sesi, dengan atau tanpa argumen: percakapan yang Anda alihkan berlanjut dalam mode izin yang ada di sesi saat ini, kecuali percakapan yang berakhir dalam plan mode dilanjutkan dalam plan mode, bahkan jika Anda meluncurkan Claude Code dengan `--permission-mode` atau `--dangerously-skip-permissions`. Jika percakapan tersebut sudah dibuka sebelumnya dalam proses Claude Code ini, seperti percakapan tempat Anda memulai atau percakapan yang Anda tinggalkan dengan `/clear` atau `/resume`, percakapan tersebut berlanjut dalam mode izin Anda saat ini sebagai gantinya.

88 88 

89Memulihkan mode rencana pada jalur non-interaktif dan VS Code memerlukan Claude Code v2.1.246 atau lebih baru. Setiap baris menyebutkan mode izin yang diakhiri sesi, jalur terminal, non-interaktif, dan VS Code mana yang Anda lanjutkan, dan mode izin yang dimulai Claude Code dalam sesi yang dilanjutkan.89Memulihkan plan mode pada jalur non-interaktif dan VS Code memerlukan Claude Code v2.1.246 atau lebih baru. Setiap baris menyebutkan mode izin yang diakhiri sesi, jalur terminal, non-interaktif, dan VS Code mana yang Anda gunakan untuk melanjutkannya, dan mode izin yang digunakan Claude Code untuk memulai sesi yang dilanjutkan.

90 90 

91| Sesi berakhir dalam | Cara Anda melanjutkan | Mode izin setelah Anda melanjutkan |91| Sesi berakhir dalam | Cara Anda melanjutkan | Mode izin setelah Anda melanjutkan |

92| :- | :- | :- |92| :- | :- | :- |

93| `bypassPermissions` | Terminal | Mode izin yang akan dimulai oleh sesi baru. Untuk [melewati izin](/docs/id/permission-modes#skip-all-checks-with-bypasspermissions-mode) lagi, aktifkan saat peluncuran dengan salah satu bendera peluncurannya atau `permissions.defaultMode: "bypassPermissions"` dalam [pengaturan pengguna, `--settings`, atau terkelola](/docs/id/settings-reference#permissions-defaultmode) |93| `bypassPermissions` | Terminal | Mode izin yang akan dimulai oleh sesi baru. Untuk [melewati izin](/docs/id/permission-modes#skip-all-checks-with-bypasspermissions-mode) lagi, aktifkan saat peluncuran dengan salah satu flag peluncurannya atau `permissions.defaultMode: "bypassPermissions"` dalam [pengaturan pengguna, `--settings`, atau pengaturan terkelola](/docs/id/settings-reference#permissions-defaultmode) |

94| `plan` | Terminal | Mode izin yang akan dimulai oleh sesi baru |94| `plan` | Terminal | Plan mode. Dengan `--fork-session`, mode izin yang akan dimulai oleh sesi baru |

95| `auto` | Terminal | `auto`, hanya ketika akun Anda masih memenuhi [persyaratan mode otomatis](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) |95| `auto` | Terminal | `auto`, hanya ketika akun Anda masih memenuhi [persyaratan auto mode](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) |

96| Manual | Terminal | Manual ketika sesi baru akan dimulai dalam mode otomatis dari [default bawaan](/docs/id/permission-modes#which-mode-a-session-starts-in). Ketika `defaultMode` dari file pengaturan [berlaku](/docs/id/permission-modes#which-mode-a-session-starts-in), Claude Code memulai sesi yang dilanjutkan dalam mode tersebut |96| Manual | Terminal | Manual ketika sesi baru akan dimulai dalam auto mode dari [default bawaan](/docs/id/permission-modes#which-mode-a-session-starts-in). Ketika `defaultMode` dari file pengaturan [berlaku](/docs/id/permission-modes#which-mode-a-session-starts-in), Claude Code memulai sesi yang dilanjutkan dalam mode tersebut sebagai gantinya |

97| `plan` | Non-interaktif, di bawah [kondisi di bawah](#resume-in-plan-mode-with-p) | Mode rencana |97| `plan` | Non-interaktif, di bawah [kondisi di bawah](#resume-in-plan-mode-with-p) | Plan mode |

98| Mode apa pun | Non-interaktif, dalam kasus lain apa pun | Mode izin yang akan dimulai oleh jalankan `claude -p` baru |98| Mode apa pun | Non-interaktif, dalam kasus lain apa pun | Mode izin yang akan digunakan oleh proses `claude -p` baru |

99| `plan` | VS Code | Mode rencana, dengan [pengecualian pada halaman VS Code](/docs/id/vs-code#resume-past-conversations) |99| `plan` | VS Code | Plan mode, dengan [pengecualian pada halaman VS Code](/docs/id/vs-code#resume-past-conversations) |

100 

101<a id="resume-in-plan-mode-with-p" />

100 102 

101<h5 id="resume-in-plan-mode-with-p">103<h5 id="resume-in-plan-mode-with-p">

102 Lanjutkan dalam mode rencana dengan `-p`104 Lanjutkan dalam plan mode dengan `-p`

103</h5>105</h5>

104 106 

105Jalankan `claude -p --resume` atau `claude -p --continue` dilanjutkan dalam mode rencana hanya ketika keempat kondisi berlaku:107Proses `claude -p --resume` atau `claude -p --continue` dilanjutkan dalam plan mode hanya ketika semua kondisi ini berlaku:

106 108 

107* Anda meneruskan [`--permission-prompt-tool`](/docs/id/cli-reference#cli-flags) dan tidak meneruskan [`--permission-prompts none`](/docs/id/headless#turn-off-permission-prompts-in-unattended-runs), sehingga Claude Code dapat menyajikan rencana untuk persetujuan109* Anda meneruskan [`--permission-prompt-tool`](/docs/id/cli-reference#cli-flags) dan tidak meneruskan [`--permission-prompts none`](/docs/id/headless#turn-off-permission-prompts-in-unattended-runs), sehingga Claude Code dapat menyajikan rencana untuk persetujuan

108* Anda tidak meneruskan `--permission-mode` atau `--dangerously-skip-permissions`110* Anda tidak meneruskan `--permission-mode` atau `--dangerously-skip-permissions`

109* Anda tidak meneruskan `--fork-session`111* Anda tidak meneruskan `--fork-session`

110* Jalankan tidak dimulai melalui [saluran](/docs/id/channels)112* Proses tidak dimulai melalui [channel](/docs/id/channels)

111 113 

112<h3 id="resume-from-a-summary">114<h3 id="resume-from-a-summary">

113 Lanjutkan dari ringkasan115 Lanjutkan dari ringkasan


117 119 

118Dialog menawarkan tiga cara untuk melanjutkan sesi. Mereka berbeda dalam berapa banyak percakapan yang masing-masing bawa ke permintaan nanti, yang merupakan pertukaran antara menyimpan setiap detail dan mengirim lebih sedikit token per permintaan:120Dialog menawarkan tiga cara untuk melanjutkan sesi. Mereka berbeda dalam berapa banyak percakapan yang masing-masing bawa ke permintaan nanti, yang merupakan pertukaran antara menyimpan setiap detail dan mengirim lebih sedikit token per permintaan:

119 121 

120* **Lanjutkan dari ringkasan**: menjalankan [`/compact`](/docs/id/context-window#what-survives-compaction) segera. Claude Code mengirim satu permintaan peringkasan atas riwayat lengkap, kemudian mengganti riwayat dengan ringkasan, pertukaran terbaru Anda, dan hingga lima file yang baru-baru ini dibaca. Permintaan nanti membawa ringkasan daripada riwayat lengkap.122* **Resume from summary**: menjalankan [`/compact`](/docs/id/context-window#what-survives-compaction) segera. Claude Code mengirim satu permintaan peringkasan atas riwayat lengkap, kemudian mengganti riwayat dengan ringkasan, pertukaran terbaru Anda, dan hingga lima file yang baru-baru ini dibaca. Permintaan nanti membawa ringkasan daripada riwayat lengkap.

121* **Lanjutkan sesi penuh apa adanya**: memuat percakapan tanpa perubahan. Setelah Anda mengirim pesan pertama Anda, Claude Code memproses ulang dan meng-cache ulang riwayat lengkap, kemudian membacanya kembali dari cache pada permintaan nanti sementara cache tetap hangat.123* **Resume full session as-is**: memuat percakapan tanpa perubahan. Setelah Anda mengirim pesan pertama Anda, Claude Code memproses ulang dan meng-cache ulang riwayat lengkap, kemudian membacanya kembali dari cache pada permintaan nanti sementara cache tetap hangat.

122* **Jangan tanyakan saya lagi**: melanjutkan sesi penuh dan berhenti menampilkan dialog pada semua lanjutan masa depan.124* **Don't ask me again**: melanjutkan sesi penuh dan berhenti menampilkan dialog pada semua lanjutan masa depan.

123 125 

124Melanjutkan apa adanya menyimpan setiap detail percakapan yang tersedia, dengan biaya per permintaan yang diskalakan dengan ukuran percakapan. Melanjutkan dari ringkasan biaya lebih sedikit pada setiap permintaan nanti karena membawa ringkasan daripada riwayat lengkap, tetapi apa pun yang ditinggalkan ringkasan tidak lagi dalam konteks Claude. Lihat [mengapa penggunaan meningkat dalam sesi panjang](/docs/id/costs#why-usage-climbs-in-a-long-session) untuk tempat biaya per permintaan itu berasal.126Melanjutkan apa adanya menyimpan setiap detail percakapan yang tersedia, dengan biaya per permintaan yang diskalakan dengan ukuran percakapan. Melanjutkan dari ringkasan biaya lebih sedikit pada setiap permintaan nanti karena membawa ringkasan daripada riwayat lengkap, tetapi apa pun yang ditinggalkan ringkasan tidak lagi dalam konteks Claude. Lihat [mengapa penggunaan meningkat dalam sesi panjang](/docs/id/costs#why-usage-climbs-in-a-long-session) untuk tempat biaya per permintaan itu berasal.

125 127 


134 136 

135Gunakan `Ctrl+W` untuk memperluas ke semua worktree repositori atau `Ctrl+A` untuk memperluas ke setiap proyek di mesin ini.137Gunakan `Ctrl+W` untuk memperluas ke semua worktree repositori atau `Ctrl+A` untuk memperluas ke setiap proyek di mesin ini.

136 138 

137Sesi yang prompt pertamanya adalah perintah [`/loop`](/docs/id/scheduled-tasks#run-a-prompt-repeatedly-with-%2Floop) tidak muncul dalam pemilih, dan `claude --continue` juga melewati mereka. Menjalankan `/loop` nanti dalam percakapan tidak menyembunyikan sesi. Sebelum v2.1.211, jalankan `/loop` awal dalam percakapan menyembunyikan sesi dari pemilih secara permanen.139Sesi yang prompt pertamanya adalah perintah [`/loop`](/docs/id/scheduled-tasks#run-a-prompt-repeatedly-with-%2Floop) tidak muncul dalam pemilih, dan `claude --continue` juga melewati mereka. Menjalankan `/loop` nanti dalam percakapan tidak menyembunyikan sesi. Sebelum v2.1.211, menjalankan `/loop` di awal percakapan menyembunyikan sesi dari pemilih secara permanen.

138 140 

139Memindahkan sesi dengan [`/cd`](/docs/id/commands) memindahkannya ke penyimpanan proyek direktori baru, sehingga muncul dalam pemilih direktori tersebut setelahnya. Sejak v2.1.196, sesi yang dipindahkan tetap keluar dari pemilih direktori lama bahkan setelah kerusakan atau keluar paksa. Pada versi sebelumnya, sesi juga dapat muncul kembali dalam daftar direktori lama setelah keluar yang tidak bersih ketika jalur lama berisi karakter khusus seperti garis bawah.141Memindahkan sesi dengan [`/cd`](/docs/id/commands) memindahkannya ke penyimpanan proyek direktori baru, sehingga muncul dalam pemilih direktori tersebut setelahnya. Sejak v2.1.196, sesi yang dipindahkan tetap keluar dari pemilih direktori lama bahkan setelah kerusakan atau keluar paksa. Pada versi sebelumnya, sesi juga dapat muncul kembali dalam daftar direktori lama setelah keluar yang tidak bersih ketika jalur lama berisi karakter khusus seperti garis bawah.

140 142 

141Ketika Anda memilih sesi dari worktree lain dari repositori yang sama, Claude Code melanjutkannya di tempat; ketika worktree sesi sendiri tidak lagi ada, Claude Code [melanjutkannya dalam direktori saat ini Anda](/docs/id/worktrees#resume-a-worktree-session). Ketika Anda memilih sesi dari proyek yang tidak terkait, Claude Code menyalin perintah `cd` dan resume ke clipboard Anda. Jika direktori proyek tersebut tidak lagi ada, Claude Code melanjutkan sesi dalam direktori saat ini Anda daripada menyalin perintah `cd` yang akan gagal.143Ketika Anda memilih sesi dari worktree lain dari repositori yang sama, Claude Code melanjutkannya di tempat; ketika worktree sesi sendiri tidak lagi ada, Claude Code [melanjutkannya dalam direktori saat ini Anda](/docs/id/worktrees#resume-a-worktree-session). Ketika Anda memilih sesi dari proyek yang tidak terkait, Claude Code menyalin perintah `cd` dan resume ke clipboard Anda sebagai gantinya. Jika direktori proyek tersebut tidak lagi ada, Claude Code melanjutkan sesi dalam direktori saat ini Anda daripada menyalin perintah `cd` yang akan gagal.

142 144 

143Melanjutkan berdasarkan nama diselesaikan di seluruh repositori saat ini dan worktree-nya. Kedua bentuk mencari kecocokan yang tepat dan melanjutkannya secara langsung bahkan jika berada di worktree berbeda:145Melanjutkan berdasarkan nama diselesaikan di seluruh repositori saat ini dan worktree-nya. Kedua bentuk mencari kecocokan yang tepat dan melanjutkannya secara langsung bahkan jika berada di worktree berbeda:

144 146 

settings.md +3 −3

Details

407| Pengguna | `~/.claude/settings.json` | Anda, di setiap proyek di mesin ini | Preferensi pribadi: tema, mode editor, model default, aturan izin Anda sendiri |407| Pengguna | `~/.claude/settings.json` | Anda, di setiap proyek di mesin ini | Preferensi pribadi: tema, mode editor, model default, aturan izin Anda sendiri |

408| Proyek bersama | `.claude/settings.json` | Semua orang yang bekerja di folder yang memuatnya. Di repositori git, commit itu sehingga rekan kerja mendapatkannya | Izin tim, hooks, plugins, dan variabel lingkungan yang dibutuhkan proyek |408| Proyek bersama | `.claude/settings.json` | Semua orang yang bekerja di folder yang memuatnya. Di repositori git, commit itu sehingga rekan kerja mendapatkannya | Izin tim, hooks, plugins, dan variabel lingkungan yang dibutuhkan proyek |

409| Proyek lokal | `.claude/settings.local.json` | Anda, hanya di proyek ini. Claude Code menyimpannya di luar git saat membuat file; jika Anda membuatnya dengan tangan, tambahkan ke `.gitignore` sendiri | Penggantian pribadi untuk satu proyek, dan pengujian sebelum Anda berbagi |409| Proyek lokal | `.claude/settings.local.json` | Anda, hanya di proyek ini. Claude Code menyimpannya di luar git saat membuat file; jika Anda membuatnya dengan tangan, tambahkan ke `.gitignore` sendiri | Penggantian pribadi untuk satu proyek, dan pengujian sebelum Anda berbagi |

410| Terkelola | `managed-settings.json` dan [sumber terkelola](/docs/id/managed-settings#delivery-mechanisms) lainnya | Semua orang organisasi Anda menerapkannya; tidak ada yang Anda atur yang menggantikannya, kecuali beberapa [pengecualian sensitif keamanan](#exceptions-to-managed-settings-precedence) | Kebijakan keamanan dan persyaratan kepatuhan |410| Terkelola | `managed-settings.json` dan [sumber terkelola](/docs/id/managed-settings#delivery-mechanisms) lainnya | Semua orang yang menjadi tujuan penerapannya oleh organisasi Anda; [Prioritas pengaturan](#settings-precedence) menjelaskan apa yang dapat menimpanya | Kebijakan keamanan dan persyaratan kepatuhan |

411 411 

412Di kolom File, `~/.claude` adalah folder `.claude` di direktori home Anda, dan `.claude` kosong adalah folder `.claude` di dalam proyek Anda.412Di kolom File, `~/.claude` adalah folder `.claude` di direktori home Anda, dan `.claude` kosong adalah folder `.claude` di dalam proyek Anda.

413 413 


659 659 

660Secara berurutan, prioritas tertinggi terlebih dahulu:660Secara berurutan, prioritas tertinggi terlebih dahulu:

661 661 

6621. **Pengaturan yang dikelola**: pengaturan yang diterapkan organisasi Anda, oleh file `managed-settings.json`, kebijakan MDM, atau [pengaturan yang dikelola server](/docs/id/server-managed-settings) dari konsol claude.ai. Tidak ada yang Anda atur menimpanya: kunci yang Anda lewatkan dengan `--settings` tidak menimpa kunci yang dikelola yang sama, dan flag seperti `--model` hanya memilih dari model yang diizinkan organisasi Anda. Model `model` yang dikelola menetapkan model yang dimulai setiap sesi, dan Anda masih dapat beralih dengan `/model`; kuncinya adalah [`availableModels`](/docs/id/settings-reference#availablemodels), yang membatasi `/model`, `--model`, dan kunci `model` dalam file Anda sendiri. Saat organisasi Anda mengirimkan lebih dari satu sumber yang dikelola, aturan untuk [urutan prioritas dalam tier yang dikelola](/docs/id/managed-settings#precedence-within-the-managed-tier) mengatakan apa yang dibaca Claude Code dari masing-masing.6621. **Pengaturan terkelola**: pengaturan yang diterapkan organisasi Anda, oleh file `managed-settings.json`, kebijakan MDM, atau [pengaturan yang dikelola server](/docs/id/server-managed-settings) dari konsol claude.ai. Tidak ada apa pun dalam file pengaturan Anda sendiri atau `--settings` yang menimpa kunci terkelola, dan flag seperti `--model` hanya memilih dari model yang diizinkan organisasi Anda. [`model`](/docs/id/settings-reference#model) terkelola adalah default awal, bukan penguncian; penguncinya adalah [`availableModels`](/docs/id/settings-reference#availablemodels) dan [`deniedModels`](/docs/id/settings-reference#deniedmodels). Saat organisasi Anda mengirimkan lebih dari satu sumber terkelola, aturan untuk [urutan prioritas dalam tier terkelola](/docs/id/managed-settings#precedence-within-the-managed-tier) mengatakan apa yang dibaca Claude Code dari masing-masing.

6632. **Argumen baris perintah**: flag yang Anda lewatkan saat memulai `claude` dari terminal, untuk satu sesi; lihat [Ubah pengaturan untuk satu sesi](#change-a-setting-for-one-session). Claude Code menggabungkan JSON yang Anda lewatkan dengan `--settings <file-or-json>` dengan file pengaturan Anda dengan aturan yang sama seperti level lain: ia mengambil kunci yang Anda atur di sini di atas kunci yang sama dalam pengaturan lokal, proyek, atau pengguna, dan menyimpan nilai level yang lebih rendah untuk kunci yang Anda lewatkan.6632. **Baris perintah**: JSON yang Anda lewatkan dengan `--settings <file-or-json>` saat memulai `claude`, hanya untuk sesi itu; lihat [Ubah pengaturan untuk satu sesi](#change-a-setting-for-one-session). Kunci yang Anda tetapkan di sana menimpa kunci yang sama dalam file pengaturan proyek dan pengguna Anda, dan kunci yang Anda lewatkan mempertahankan nilainya dari file-file tersebut. Flag lain, seperti `--model`, menetapkan satu hal untuk sesi dan bukan bagian dari tumpukan ini; entri kunci di [referensi pengaturan](/docs/id/settings-reference) mengatakan flag mana yang menimpanya.

6643. **Pengaturan proyek lokal** (`.claude/settings.local.json`): pengaturan pribadi Anda untuk proyek ini.6643. **Pengaturan proyek lokal** (`.claude/settings.local.json`): pengaturan pribadi Anda untuk proyek ini.

6654. **Pengaturan proyek bersama** (`.claude/settings.json`): pengaturan yang tim Anda periksa ke kontrol sumber.6654. **Pengaturan proyek bersama** (`.claude/settings.json`): pengaturan yang tim Anda periksa ke kontrol sumber.

6665. **Pengaturan pengguna** (`~/.claude/settings.json`): pengaturan pribadi Anda untuk setiap proyek.6665. **Pengaturan pengguna** (`~/.claude/settings.json`): pengaturan pribadi Anda untuk setiap proyek.

Details

870 870 

871Matikan [extended thinking](/docs/id/model-config#extended-thinking) untuk setiap sesi dengan menetapkan ini ke `false`. Thinking aktif secara default, jadi `true` tidak mengubah apa pun. Sebagian besar orang menetapkan ini melalui `/config` daripada mengedit file.871Matikan [extended thinking](/docs/id/model-config#extended-thinking) untuk setiap sesi dengan menetapkan ini ke `false`. Thinking aktif secara default, jadi `true` tidak mengubah apa pun. Sebagian besar orang menetapkan ini melalui `/config` daripada mengedit file.

872 872 

873Pada model yang selalu berpikir, seperti Opus 5.5, Sonnet 5.5, dan model Fable, `false` tidak berpengaruh. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations) Claude Code menghilangkan parameter `thinking` daripada mematikan thinking, jadi model adaptive-reasoning mungkin masih berpikir. Dengan thinking dimatikan di Anthropic API, Claude Code mengirim effort `high` daripada level yang lebih tinggi ke model yang diketahui [tidak menerima kombinasi itu](/docs/id/errors#effort-isnt-available-with-thinking-turned-off), seperti Opus 5.873Pada model yang selalu berpikir, seperti Opus 5.5, Sonnet 5.5, Haiku 5.5, dan model Fable, `false` tidak berpengaruh. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations) Claude Code menghilangkan parameter `thinking` daripada mematikan thinking, jadi model adaptive-reasoning mungkin masih berpikir. Dengan thinking dimatikan di Anthropic API, Claude Code mengirim effort `high` daripada level yang lebih tinggi ke model yang diketahui [tidak menerima kombinasi itu](/docs/id/errors#effort-isnt-available-with-thinking-turned-off), seperti Opus 5.

874 874 

875* **Scope**: [`Any file`](#scopes)875* **Scope**: [`Any file`](#scopes)

876* **Type**: Boolean876* **Type**: Boolean

setup.md +5 −3

Details

49 curl -fsSL https://claude.ai/install.sh | bash49 curl -fsSL https://claude.ai/install.sh | bash

50 ```50 ```

51 51 

52 Di Windows, prompt Anda menunjukkan `PS C:\` ketika Anda berada di PowerShell dan `C:\` tanpa `PS` ketika Anda berada di CMD.

53 

52 **Windows PowerShell:**54 **Windows PowerShell:**

53 55 

54 ```powershell theme={null}56 ```powershell theme={null}


63 65 

64 Ketika penginstal selesai, buka jendela terminal baru dan jalankan `claude --version`. Instalasi yang berfungsi dengan baik mencetak nomor versi. Jika shell Anda mengatakan `claude` tidak ditemukan atau tidak dikenali, direktori instalasi belum ada di PATH Anda: lihat [Perbaiki PATH Anda](/docs/id/troubleshoot-install#command-not-found-claude-after-installation).66 Ketika penginstal selesai, buka jendela terminal baru dan jalankan `claude --version`. Instalasi yang berfungsi dengan baik mencetak nomor versi. Jika shell Anda mengatakan `claude` tidak ditemukan atau tidak dikenali, direktori instalasi belum ada di PATH Anda: lihat [Perbaiki PATH Anda](/docs/id/troubleshoot-install#command-not-found-claude-after-installation).

65 67 

66 Jika Anda melihat `The token '&&' is not a valid statement separator`, Anda berada di PowerShell, bukan CMD. Jika Anda melihat `'irm' is not recognized as an internal or external command`, Anda berada di CMD, bukan PowerShell. Prompt Anda menunjukkan `PS C:\` ketika Anda berada di PowerShell dan `C:\` tanpa `PS` ketika Anda berada di CMD.68 Jika Anda melihat `The token '&&' is not a valid statement separator`, Anda berada di PowerShell, bukan CMD. Jika Anda melihat `'irm' is not recognized as an internal or external command`, Anda berada di CMD, bukan PowerShell.

67 69 

68 Jika perintah instalasi gagal dengan `syntax error near unexpected token '<'`, `403`, atau kesalahan curl lainnya, lihat [Troubleshoot installation](/docs/id/troubleshoot-install#find-your-error) untuk mencocokkan kesalahan dengan perbaikan dan untuk metode instalasi alternatif.70 Jika perintah instalasi gagal dengan `syntax error near unexpected token '<'`, `403`, atau kesalahan lainnya, lihat [Troubleshoot installation](/docs/id/troubleshoot-install#find-your-error) untuk mencocokkan kesalahan dengan perbaikan dan untuk metode instalasi alternatif.

69 71 

70 [Git for Windows](https://git-scm.com/downloads/win) direkomendasikan pada Windows native sehingga Claude Code dapat menggunakan alat Bash. Jika Git for Windows tidak diinstal, Claude Code menggunakan PowerShell sebagai alat shell sebagai gantinya. Pengaturan WSL tidak memerlukan Git for Windows.72 [Git for Windows](https://git-scm.com/downloads/win) direkomendasikan pada Windows native sehingga Claude Code dapat menggunakan alat Bash. Jika Git for Windows tidak diinstal, Claude Code menggunakan PowerShell sebagai alat shell sebagai gantinya. Pengaturan WSL tidak memerlukan Git for Windows.

71 73 


204 206 

205Claude Code memerlukan akun Pro, Max, Team, Enterprise, atau Console. Paket Claude.ai gratis tidak termasuk akses Claude Code. Anda juga dapat menggunakan Claude Code dengan penyedia API pihak ketiga seperti [Amazon Bedrock](/docs/id/amazon-bedrock), [Google Cloud's Agent Platform](/docs/id/google-vertex-ai), atau [Microsoft Foundry](/docs/id/microsoft-foundry).207Claude Code memerlukan akun Pro, Max, Team, Enterprise, atau Console. Paket Claude.ai gratis tidak termasuk akses Claude Code. Anda juga dapat menggunakan Claude Code dengan penyedia API pihak ketiga seperti [Amazon Bedrock](/docs/id/amazon-bedrock), [Google Cloud's Agent Platform](/docs/id/google-vertex-ai), atau [Microsoft Foundry](/docs/id/microsoft-foundry).

206 208 

207Setelah menginstal, masuk dengan menjalankan `claude` dan mengikuti petunjuk browser. Jika variabel lingkungan `ANTHROPIC_API_KEY` diatur, Claude Code meminta Anda sekali untuk menyetujui kunci alih-alih membuka browser. Lihat [Autentikasi](/docs/id/authentication) untuk semua jenis akun dan opsi pengaturan tim.209Setelah menginstal, masuk dengan menjalankan `claude` dan mengikuti petunjuk browser. Jika Anda telah mengatur environment variable `ANTHROPIC_API_KEY` dan Anda menyetujui kunci tersebut saat Claude Code menanyakan apakah akan menggunakannya, Claude Code akan melewati permintaan login. Lihat [Autentikasi](/docs/id/authentication) untuk semua jenis akun dan opsi pengaturan tim.

208 210 

209<h2 id="update-claude-code">211<h2 id="update-claude-code">

210 Perbarui Claude Code212 Perbarui Claude Code

sub-agents.md +3 −3

Details

310 310 

311| Field | Diperlukan | Deskripsi |311| Field | Diperlukan | Deskripsi |

312| :- | :- | :- |312| :- | :- | :- |

313| `name` | Ya | Pengenal unik, seperti `code-reviewer` atau `reviewer-v2`. [Hooks](/docs/id/hooks#subagentstart) menerima nilai ini sebagai `agent_type`. Nama file tidak harus cocok. Nama tidak dapat berisi `:`, yang dicadangkan untuk [plugin-scoped identifiers](/docs/id/plugins/overview) seperti `my-plugin:reviewer`. Claude Code tidak memuat file yang nama-nya berisi satu dan mencatat kesalahan ke debug log. Sebelum v2.1.218, nama seperti itu diterima |313| `name` | Ya | Pengenal unik dengan paling banyak 256 karakter, seperti `code-reviewer` atau `reviewer-v2`. [Hooks](/docs/id/hooks#subagentstart) menerima nilai ini sebagai `agent_type`. Nama file tidak harus cocok. Nama tidak dapat berisi `:`, yang dicadangkan untuk [plugin-scoped identifiers](/docs/id/plugins/overview) seperti `my-plugin:reviewer` |

314| `description` | Ya | Kapan Claude harus mendelegasikan ke subagent ini |314| `description` | Ya | Kapan Claude harus mendelegasikan ke subagent ini |

315| `tools` | Tidak | [Tools](#available-tools) yang dapat digunakan subagent, sebagai string yang dipisahkan koma seperti `Read, Grep, Bash` atau daftar YAML. Mewarisi setiap tool yang tersedia untuk subagent jika dihilangkan. Jika tidak ada entri dalam daftar yang diselesaikan ke tool, subagent biasanya [gagal diluncurkan](/docs/id/errors#agent-would-be-spawned-with-zero-tools) dengan kesalahan yang menamai entri. Untuk memuat Skills ke dalam konteks, gunakan field `skills` daripada mencantumkan `Skill` di sini |315| `tools` | Tidak | [Tools](#available-tools) yang dapat digunakan subagent, sebagai string yang dipisahkan koma seperti `Read, Grep, Bash` atau daftar YAML. Mewarisi setiap tool yang tersedia untuk subagent jika dihilangkan. Jika tidak ada entri dalam daftar yang diselesaikan ke tool, subagent biasanya [gagal diluncurkan](/docs/id/errors#agent-would-be-spawned-with-zero-tools) dengan kesalahan yang menamai entri. Untuk memuat Skills ke dalam konteks, gunakan field `skills` daripada mencantumkan `Skill` di sini |

316| `disallowedTools` | Tidak | Tools untuk ditolak, dihapus dari daftar yang diwarisi atau ditentukan. Format yang sama seperti `tools`. Entri dengan specifier, seperti `Bash(git push *)`, masih [menghapus seluruh tool](#available-tools) |316| `disallowedTools` | Tidak | Tools untuk ditolak, dihapus dari daftar yang diwarisi atau ditentukan. Format yang sama seperti `tools`. Entri dengan specifier, seperti `Bash(git push *)`, masih [menghapus seluruh tool](#available-tools) |


348 348 

349* **Tidak ada `name`**: Claude Code memperlakukan file sebagai dokumentasi yang disimpan di samping agent Anda.349* **Tidak ada `name`**: Claude Code memperlakukan file sebagai dokumentasi yang disimpan di samping agent Anda.

350* **`---` pembuka yang bukan baris pertama file**: Claude Code membaca file sebagai tidak memiliki frontmatter dan memperlakukannya sebagai dokumentasi.350* **`---` pembuka yang bukan baris pertama file**: Claude Code membaca file sebagai tidak memiliki frontmatter dan memperlakukannya sebagai dokumentasi.

351* **`name` yang dimulai dengan `-` atau berisi `:`**: Claude Code melewati file dan menulis kesalahan ke debug log. Lihat baris `name` dalam tabel di atas.351* **`name` yang dimulai dengan `-`, berisi `:`, atau lebih panjang dari 256 karakter**: Claude Code melewati file dan menulis kesalahan ke debug log.

352* **`name` tetapi tidak ada `description`**: Claude Code melewati file dan menulis alasannya ke debug log.352* **`name` tetapi tidak ada `description`**: Claude Code melewati file dan menulis alasannya ke debug log.

353* **YAML yang tidak diuraikan**: Claude Code tidak membaca field dari file, melewatinya, dan menulis kesalahan penguraian ke debug log.353* **YAML yang tidak diuraikan**: Claude Code tidak membaca field dari file, melewatinya, dan menulis kesalahan penguraian ke debug log.

354 354 


1279| Izin | Prompt muncul di terminal Anda | [Prompt muncul di sesi utama Anda](#run-subagents-in-foreground-or-background) saat berjalan di latar belakang |1279| Izin | Prompt muncul di terminal Anda | [Prompt muncul di sesi utama Anda](#run-subagents-in-foreground-or-background) saat berjalan di latar belakang |

1280| Prompt cache | Dibagikan dengan sesi utama | Cache terpisah |1280| Prompt cache | Dibagikan dengan sesi utama | Cache terpisah |

1281 1281 

1282Karena prompt sistem fork dan definisi alat identik dengan induk, permintaan pertamanya menggunakan kembali [prompt cache](/docs/id/prompt-caching#subagents-and-the-cache) induk. Ini membuat forking lebih murah daripada menelurkan subagent segar untuk tugas yang memerlukan konteks yang sama.1282Karena system prompt fork dan definisi tool identik dengan induk, permintaan pertamanya menggunakan kembali [prompt cache](/docs/id/prompt-caching#subagents-and-the-cache) induk. Karena penggunaan kembali tersebut, fork lebih murah daripada subagent segar untuk tugas yang memerlukan konteks yang sama.

1283 1283 

1284Ketika Claude menelurkan fork melalui alat Agent, Claude dapat melewatkan `isolation: "worktree"` sehingga edit file fork ditulis ke git worktree terpisah daripada checkout Anda. Fork tidak dapat menelurkan fork lebih lanjut.1284Ketika Claude menelurkan fork melalui alat Agent, Claude dapat melewatkan `isolation: "worktree"` sehingga edit file fork ditulis ke git worktree terpisah daripada checkout Anda. Fork tidak dapat menelurkan fork lebih lanjut.

1285 1285 

vs-code.md +1 −1

Details

606| `environmentVariables` | `[]` | Atur environment variable untuk proses Claude. Gunakan pengaturan Claude Code sebagai gantinya untuk konfigurasi bersama. Entri [`CLAUDE_CONFIG_DIR`](/docs/id/env-vars) hanya berlaku ketika nilainya adalah jalur absolut; ekstensi tidak memperluas `~` dan mengabaikan nilai relatif. |606| `environmentVariables` | `[]` | Atur environment variable untuk proses Claude. Gunakan pengaturan Claude Code sebagai gantinya untuk konfigurasi bersama. Entri [`CLAUDE_CONFIG_DIR`](/docs/id/env-vars) hanya berlaku ketika nilainya adalah jalur absolut; ekstensi tidak memperluas `~` dan mengabaikan nilai relatif. |

607| `disableLoginPrompt` | `false` | Lewati prompt autentikasi (untuk pengaturan penyedia pihak ketiga) |607| `disableLoginPrompt` | `false` | Lewati prompt autentikasi (untuk pengaturan penyedia pihak ketiga) |

608| `allowDangerouslySkipPermissions` | `false` | Menambahkan Bypass permissions ke pemilih mode. Gunakan hanya di sandbox tanpa akses internet. |608| `allowDangerouslySkipPermissions` | `false` | Menambahkan Bypass permissions ke pemilih mode. Gunakan hanya di sandbox tanpa akses internet. |

609| `claudeProcessWrapper` | - | Executable yang digunakan untuk meluncurkan proses Claude. Jalur biner bundel diteruskan sebagai argumen saat ada. Atur ini ke biner `claude` yang dipasang secara terpisah jika build ekstensi tidak menyertakan satu untuk platform Anda. Dalam pengaturan terbungkus, percakapan dimulai dalam mode Manual kecuali Anda menetapkan `initialPermissionMode` atau memilih Manual, Edit automatically, atau Auto dalam percakapan sebelumnya, karena ekstensi melewati pengaturan dan langkah default bawaan di sana; lihat [Switch permission modes](/docs/id/permission-modes#switch-permission-modes). Kesalahan "Unsupported platform" saat aktivasi berarti tidak ada biner yang bundel untuk platform Anda; lihat [which platforms have prebuilt binaries](/docs/id/troubleshoot-install#native-binary-not-found-after-npm-install). |609| `claudeProcessWrapper` | - | Executable yang digunakan untuk meluncurkan proses Claude. Jalur biner bundel diteruskan sebagai argumen saat ada. Atur ini ke biner `claude` yang dipasang secara terpisah jika build ekstensi tidak menyertakan satu untuk platform Anda. |

610 610 

611<h2 id="use-a-screen-reader">611<h2 id="use-a-screen-reader">

612 Gunakan pembaca layar612 Gunakan pembaca layar

workflows.md +6 −1

Details

522 522 

523Untuk mematikan alur kerja untuk seluruh organisasi Anda, atur `"disableWorkflows": true` di [pengaturan yang dikelola](/docs/id/server-managed-settings), atau gunakan toggle di halaman [pengaturan admin Claude Code](https://claude.ai/admin-settings/claude-code).523Untuk mematikan alur kerja untuk seluruh organisasi Anda, atur `"disableWorkflows": true` di [pengaturan yang dikelola](/docs/id/server-managed-settings), atau gunakan toggle di halaman [pengaturan admin Claude Code](https://claude.ai/admin-settings/claude-code).

524 524 

525Ketika alur kerja dinonaktifkan, perintah alur kerja bundel dan skill `/workflow-authoring` tidak tersedia, kata kunci `ultracode` tidak lagi memicu run, dan toggle **Ultracode** dihapus dari `/effort`. Run yang sudah dalam proses terus berjalan.525Ketika alur kerja dinonaktifkan:

526 

527* `/workflows`, perintah alur kerja, dan skill `/workflow-authoring` tidak tersedia

528* Kata kunci `ultracode` tidak lagi memicu run, dan toggle **Ultracode** dihapus dari `/effort`

529 

530Run yang sudah dalam proses terus berjalan.

526 531 

527Mematikan alur kerja juga membuat [ultracode](#let-claude-decide-with-ultracode) tidak tersedia. Tidak ada pengaturan yang dikelola yang mengesampingkan ultracode saja: di mana pun [tersedia](/docs/id/model-config#when-ultracode-is-available), pengguna dapat mengaktifkannya dengan `/effort ultracode`. [Batas upaya](/docs/id/model-config#organization-effort-limits) menurunkan tingkat upaya yang dijalankan sesi dengan ultracode aktif, tetapi tidak mematikan ultracode.532Mematikan alur kerja juga membuat [ultracode](#let-claude-decide-with-ultracode) tidak tersedia. Tidak ada pengaturan yang dikelola yang mengesampingkan ultracode saja: di mana pun [tersedia](/docs/id/model-config#when-ultracode-is-available), pengguna dapat mengaktifkannya dengan `/effort ultracode`. [Batas upaya](/docs/id/model-config#organization-effort-limits) menurunkan tingkat upaya yang dijalankan sesi dengan ultracode aktif, tetapi tidak mematikan ultracode.

528 533 

worktrees.md +3 −1

Details

6 6 

7> Isolasi sesi Claude Code paralel dalam git worktrees terpisah sehingga perubahan tidak bertabrakan. Mencakup flag `--worktree`, isolasi subagent, `.worktreeinclude`, pembersihan, dan hook VCS non-git.7> Isolasi sesi Claude Code paralel dalam git worktrees terpisah sehingga perubahan tidak bertabrakan. Mencakup flag `--worktree`, isolasi subagent, `.worktreeinclude`, pembersihan, dan hook VCS non-git.

8 8 

9[git worktree](https://git-scm.com/docs/git-worktree) adalah direktori kerja terpisah dengan file dan cabang sendiri, berbagi riwayat repositori dan remote yang sama dengan checkout utama Anda. Menjalankan setiap sesi Claude Code dalam worktree-nya sendiri berarti edit dalam satu sesi tidak akan pernah menyentuh file di sesi lain, sehingga satu sesi dapat membangun fitur sementara sesi kedua memperbaiki bug.9[git worktree](https://git-scm.com/docs/git-worktree) adalah direktori kerja terpisah dengan file dan branch sendiri, berbagi riwayat repositori dan remote yang sama dengan checkout utama Anda. Menjalankan setiap sesi Claude Code dalam worktree-nya sendiri memberikan salinan file terpisah untuk diedit, sehingga satu sesi dapat membangun fitur sementara sesi kedua memperbaiki bug.

10 10 

11<Note>11<Note>

12 Worktrees memerlukan repositori git; untuk sistem kontrol versi lainnya, [konfigurasikan hook untuk menggantikan logika git](#non-git-version-control). Di [aplikasi desktop](/docs/id/desktop#work-in-parallel-with-sessions), pilih opsi **worktree** saat Anda memulai sesi untuk memberikannya worktree-nya sendiri.12 Worktrees memerlukan repositori git; untuk sistem kontrol versi lainnya, [konfigurasikan hook untuk menggantikan logika git](#non-git-version-control). Di [aplikasi desktop](/docs/id/desktop#work-in-parallel-with-sessions), pilih opsi **worktree** saat Anda memulai sesi untuk memberikannya worktree-nya sendiri.


104* **Pengalihan git**: Claude Code memblokir perintah Bash atau Monitor yang mengalihkan git ke checkout utama. Pengalihan dapat datang melalui `git -C`, `--git-dir`, variabel `GIT_DIR` atau `GIT_WORK_TREE`, atau `cd` ke checkout utama sebelum menjalankan git.104* **Pengalihan git**: Claude Code memblokir perintah Bash atau Monitor yang mengalihkan git ke checkout utama. Pengalihan dapat datang melalui `git -C`, `--git-dir`, variabel `GIT_DIR` atau `GIT_WORK_TREE`, atau `cd` ke checkout utama sebelum menjalankan git.

105* **Bentuk perintah**: Claude Code memblokir perintah Bash atau Monitor saat tidak dapat memverifikasi dari teks perintah bahwa git apa pun yang dijalankan perintah tetap berada di dalam worktree. Itu terjadi, misalnya, saat nama perintah dihitung saat runtime, saat sintaks tidak dapat diuraikan, atau saat ekspansi seperti `${!name}` atau `${ command; }` dapat menjalankan perintah yang teks tidak jelaskan. Claude Code memberi tahu Claude cara menulis ulang perintah yang ditolak, seperti membaginya menjadi perintah biasa yang terpisah. Anda tidak dapat mematikan pemeriksaan ini.105* **Bentuk perintah**: Claude Code memblokir perintah Bash atau Monitor saat tidak dapat memverifikasi dari teks perintah bahwa git apa pun yang dijalankan perintah tetap berada di dalam worktree. Itu terjadi, misalnya, saat nama perintah dihitung saat runtime, saat sintaks tidak dapat diuraikan, atau saat ekspansi seperti `${!name}` atau `${ command; }` dapat menjalankan perintah yang teks tidak jelaskan. Claude Code memberi tahu Claude cara menulis ulang perintah yang ditolak, seperti membaginya menjadi perintah biasa yang terpisah. Anda tidak dapat mematikan pemeriksaan ini.

106 106 

107Pemeriksaan ini membaca jalur yang ditargetkan oleh sebuah edit, direktori tempat perintah dijalankan, dan teks perintah. Tidak satu pun dari pemeriksaan ini melacak file mana yang ditulis oleh perintah shell, sehingga perintah yang menulis ke checkout utama tanpa menjalankan git di sana, seperti `cp` atau pengalihan shell, tidak ditolak olehnya. Claude Code memperlakukan perintah tersebut seperti perintah shell lainnya, sehingga apakah perintah itu dijalankan atau Claude Code meminta persetujuan Anda bergantung pada [mode izin](/docs/id/permission-modes) dan aturan Anda.

108 

107Pemeriksaan berlaku untuk repositori tempat Anda meluncurkan Claude Code. Mereka juga mencakup checkout utama yang ditautkan worktree ditautkan darinya. Untuk perintah PowerShell, Claude Code hanya menerapkan pemeriksaan direktori kerja.109Pemeriksaan berlaku untuk repositori tempat Anda meluncurkan Claude Code. Mereka juga mencakup checkout utama yang ditautkan worktree ditautkan darinya. Untuk perintah PowerShell, Claude Code hanya menerapkan pemeriksaan direktori kerja.

108 110 

109Claude melihat setiap penolakan sebagai kesalahan tool yang menamai worktree dan mengatakan cara melanjutkan. Untuk perintah yang ditolak, lihat [apa arti pesan penolakan dan cara menghapusnya](/docs/id/errors#command-blocked-by-the-worktree-isolation-checks).111Claude melihat setiap penolakan sebagai kesalahan tool yang menamai worktree dan mengatakan cara melanjutkan. Untuk perintah yang ditolak, lihat [apa arti pesan penolakan dan cara menghapusnya](/docs/id/errors#command-blocked-by-the-worktree-isolation-checks).