SpyBara
Go Premium

Documentation 2026-11-03 23:58 UTC to 2026-11-04 23:59 UTC

33 files changed +814 −456. View all changes and history on the product overview
2026
Fri 13 00:00 Thu 12 23:02 Wed 11 22:59 Tue 10 21:57 Mon 9 23:02 Sun 8 22:58 Sat 7 23:58 Fri 6 23:01 Thu 5 23:03 Wed 4 23:59 Tue 3 23:58 Mon 2 23:57 Sun 1 23:57
Details

231| Mode | Behavior | Use case |231| Mode | Behavior | Use case |

232| :- | :- | :- |232| :- | :- | :- |

233| `"default"` | Tool calls yang memerlukan approval dan tidak tercakup oleh allow rules memicu `canUseTool` callback Anda; tidak ada callback berarti deny | Interactive applications dengan custom approval callback |233| `"default"` | Tool calls yang memerlukan approval dan tidak tercakup oleh allow rules memicu `canUseTool` callback Anda; tidak ada callback berarti deny | Interactive applications dengan custom approval callback |

234| `"acceptEdits"` | Auto-approves file edits dan common filesystem commands (`mkdir`, `touch`, `mv`, `cp`, dll.); Bash commands lainnya mengikuti default rules | Anda mempercayai edits Claude dan menginginkan iterasi lebih cepat, seperti selama prototyping atau saat bekerja dalam isolated directory |234| `"acceptEdits"` | Auto-approves file edits dan common filesystem commands (`mkdir`, `touch`, `mv`, `cp`, dll.) di dalam [direktori kerja](https://code.claude.com/docs/id/permissions.md#working-directories) Anda; Bash commands lainnya mengikuti default rules | Anda mempercayai edits Claude dan menginginkan iterasi lebih cepat, seperti selama prototyping atau saat bekerja dalam isolated directory |

235| `"plan"` | Claude mengeksplorasi dan merencanakan tanpa mengedit source files Anda; file edits tidak pernah auto-approved dan prompt melalui `canUseTool` callback Anda | Anda menginginkan Claude untuk mengusulkan changes tanpa mengeksekusinya, seperti selama code review atau ketika Anda perlu approve changes sebelum dibuat |235| `"plan"` | Claude mengeksplorasi dan merencanakan. Edit yang dibuat dengan file tools Claude diteruskan ke `canUseTool` callback Anda bahkan ketika allow rule cocok dengannya | Anda ingin Claude menghasilkan rencana terlebih dahulu, seperti selama code review atau sebelum perubahan besar |

236| `"dontAsk"` | Tidak pernah prompt. Tools pre-approved oleh [permission rules](https://code.claude.com/docs/id/settings-reference.md#permission-settings) berjalan, dan begitu juga calls yang tidak memerlukan approval dalam mode `default`, seperti file reads di dalam working directories Anda. Setiap call yang sebaliknya akan prompt ditolak, meskipun [mod](https://code.claude.com/docs/id/plugins/mods/overview.md) yang Anda instal masih dapat menyetujui [beberapa dari calls tersebut](https://code.claude.com/docs/id/permissions.md#precedence-among-rules-hooks-and-mods). Beberapa calls, seperti [pembacaan dari network paths](https://code.claude.com/docs/id/permissions.md#network-paths), ditolak bahkan jika Anda telah mengizinkannya. Untuk daftarnya, lihat [Don't ask mode](https://code.claude.com/docs/id/agent-sdk/permissions.md#don’t-ask-mode-dontask) | Headless agents tanpa ada yang dapat menyetujui calls |236| `"dontAsk"` | Tidak pernah prompt. Tools pre-approved oleh [permission rules](https://code.claude.com/docs/id/settings-reference.md#permission-settings) berjalan, dan begitu juga calls yang tidak memerlukan approval dalam mode `default`, seperti file reads di dalam working directories Anda. Setiap call yang sebaliknya akan prompt ditolak, meskipun [mod](https://code.claude.com/docs/id/plugins/mods/overview.md) yang Anda instal masih dapat menyetujui [beberapa dari calls tersebut](https://code.claude.com/docs/id/permissions.md#precedence-among-rules-hooks-and-mods). Beberapa calls, seperti [pembacaan dari network paths](https://code.claude.com/docs/id/permissions.md#network-paths), ditolak bahkan jika Anda telah mengizinkannya. Untuk daftarnya, lihat [Don't ask mode](https://code.claude.com/docs/id/agent-sdk/permissions.md#don’t-ask-mode-dontask) | Headless agents tanpa ada yang dapat menyetujui calls |

237| `"auto"` | Menggunakan model classifier untuk review actions seperti shell commands dan network requests, allowing atau blocking masing-masing yang direview. Lihat [Auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) untuk availability dan decision order | Autonomous agents yang masih menginginkan safety guardrails pada tool use |237| `"auto"` | Menggunakan model classifier untuk review actions seperti shell commands dan network requests, allowing atau blocking masing-masing yang direview. Lihat [Auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) untuk availability dan decision order | Autonomous agents yang masih menginginkan safety guardrails pada tool use |

238| `"bypassPermissions"` | Menjalankan panggilan tool tanpa meminta persetujuan, termasuk panggilan ke tools yang tidak Anda cantumkan dalam `allowedTools`. Beberapa panggilan tetap diteruskan ke `canUseTool` callback Anda, sebagaimana tercantum di bawah [Bypass permissions mode](https://code.claude.com/docs/id/agent-sdk/permissions.md#bypass-permissions-mode-bypasspermissions). Dalam TypeScript SDK, juga memerlukan `allowDangerouslySkipPermissions: true` dalam `options`. Tidak dapat digunakan saat berjalan sebagai root pada Unix. Gunakan hanya dalam isolated environments di mana tindakan agent tidak dapat mempengaruhi systems yang Anda pedulikan | CI, containers, atau isolated environments lainnya |238| `"bypassPermissions"` | Menjalankan panggilan tool tanpa meminta persetujuan, termasuk panggilan ke tools yang tidak Anda cantumkan dalam `allowedTools`. Beberapa panggilan tetap diteruskan ke `canUseTool` callback Anda, sebagaimana tercantum di bawah [Bypass permissions mode](https://code.claude.com/docs/id/agent-sdk/permissions.md#bypass-permissions-mode-bypasspermissions). Dalam TypeScript SDK, juga memerlukan `allowDangerouslySkipPermissions: true` dalam `options`. Tidak dapat digunakan saat berjalan sebagai root pada Unix. Gunakan hanya dalam isolated environments di mana tindakan agent tidak dapat mempengaruhi systems yang Anda pedulikan | CI, containers, atau isolated environments lainnya |

239 239 

240Untuk interactive applications, gunakan `"default"` dengan tool approval callback untuk surface approval prompts. Untuk autonomous agents pada dev machine, `"acceptEdits"` auto-approves file edits dan common filesystem commands (`mkdir`, `touch`, `mv`, `cp`, dll.) sambil masih gating `Bash` commands lainnya di belakang allow rules. Reserve `"bypassPermissions"` untuk CI, containers, atau isolated environments lainnya. Lihat [Permissions](https://code.claude.com/docs/id/agent-sdk/permissions.md) untuk full details.240Untuk interactive applications, gunakan `"default"` dengan tool approval callback untuk surface approval prompts. Untuk agents yang mengedit file pada dev machine, gunakan `"acceptEdits"`. Reserve `"bypassPermissions"` untuk CI, containers, atau isolated environments lainnya. Lihat [Permissions](https://code.claude.com/docs/id/agent-sdk/permissions.md) untuk full details.

241 241 

242### Model242### Model

243 243 

Details

14>14>

15> Jika Anda memuat plugin yang berisi [mod](https://code.claude.com/docs/id/plugins/mods/overview.md), lihat [di mana keputusan mod berada di antara aturan dan hook](https://code.claude.com/docs/id/permissions.md#precedence-among-rules-hooks-and-mods).15> Jika Anda memuat plugin yang berisi [mod](https://code.claude.com/docs/id/plugins/mods/overview.md), lihat [di mana keputusan mod berada di antara aturan dan hook](https://code.claude.com/docs/id/permissions.md#precedence-among-rules-hooks-and-mods).

16 16 

17Saat Claude meminta sebuah tool, SDK memeriksa izin dengan urutan berikut:17Saat Claude meminta sebuah tool, Claude Code memeriksa panggilan tersebut pada langkah-langkah berikut. Setiap langkah dapat memutuskan panggilan tersebut, mengirimkannya ke callback `canUseTool` Anda, atau meneruskannya:

18 18 

19**1. Hooks**19**1. Hooks**

20 20 

21Jalankan [hook](https://code.claude.com/docs/id/agent-sdk/hooks.md) terlebih dahulu. Sebuah hook dapat langsung menolak panggilan tersebut atau meneruskannya. Hook yang mengembalikan `allow` tidak melewati aturan deny dan ask di bawah; aturan-aturan tersebut tetap dievaluasi apa pun hasil hook-nya.21Jalankan [hook](https://code.claude.com/docs/id/agent-sdk/hooks.md). Sebuah hook dapat langsung menolak panggilan tersebut atau meneruskannya. Hook yang mengembalikan `allow` tidak melewati aturan deny dan ask di bawah; aturan-aturan tersebut tetap dievaluasi apa pun hasil hook-nya.

22 22 

23Hook `PreToolUse` yang mengembalikan `allow` juga tidak dapat menyetujui perintah `rm` atau `rmdir` yang targetnya dikenali oleh Claude Code sebagai [jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths), seperti `rm -rf ~`. Untuk apa yang dilakukan `allow` tersebut dalam plan mode, lihat [Persetujuan hook dalam plan mode](https://code.claude.com/docs/id/permissions.md#hook-approvals-in-plan-mode).23Hook `PreToolUse` yang mengembalikan `allow` juga tidak dapat menyetujui perintah `rm` atau `rmdir` yang targetnya dikenali oleh Claude Code sebagai [jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths), seperti `rm -rf ~`. Untuk apa yang dilakukan `allow` tersebut dalam plan mode, lihat [Persetujuan hook dalam plan mode](https://code.claude.com/docs/id/permissions.md#hook-approvals-in-plan-mode).

24 24 

25**2. Deny rules**25**2. Deny rules**

26 26 

27Jika aturan deny dari `disallowed_tools` atau [settings.json](https://code.claude.com/docs/id/settings-reference.md#permission-settings) cocok, panggilan tersebut ditolak dan [`canUseTool`](https://code.claude.com/docs/id/agent-sdk/user-input) tidak dipanggil, bahkan dalam mode [`bypassPermissions`](#bypass-permissions-mode-bypasspermissions) dan bahkan ketika hook mengembalikan `allow`.27Jika aturan deny dari `disallowed_tools` atau dari [file pengaturan yang dimuat SDK](#rules-in-settings-files) cocok, panggilan tersebut ditolak dan [`canUseTool`](https://code.claude.com/docs/id/agent-sdk/user-input) tidak dipanggil. Panggilan tersebut ditolak dengan cara ini bahkan dalam mode [`bypassPermissions`](#bypass-permissions-mode-bypasspermissions) dan ketika hook mengembalikan `allow`.

28 28 

29Di TypeScript SDK, jika Anda menetapkan `permission_policy` dari [tool kustom](https://code.claude.com/docs/id/agent-sdk/custom-tools.md#require-approval-for-specific-tools) ke [`always_deny`](https://code.claude.com/docs/id/agent-sdk/typescript#mcpservertoolpolicy), panggilan ke tool tersebut ditolak pada langkah ini.29Di TypeScript SDK, jika Anda menetapkan `permission_policy` dari [tool kustom](https://code.claude.com/docs/id/agent-sdk/custom-tools.md#require-approval-for-specific-tools) ke [`always_deny`](https://code.claude.com/docs/id/agent-sdk/typescript#mcpservertoolpolicy), panggilan ke tool tersebut ditolak pada langkah ini.

30 30 


32 32 

33Periksa aturan `ask` dari [settings.json](https://code.claude.com/docs/id/settings-reference.md#permission-settings). Jika aturan ask cocok, panggilan tersebut diteruskan ke [callback `canUseTool`](https://code.claude.com/docs/id/agent-sdk/user-input) Anda untuk konfirmasi, bahkan dalam mode `bypassPermissions`.33Periksa aturan `ask` dari [settings.json](https://code.claude.com/docs/id/settings-reference.md#permission-settings). Jika aturan ask cocok, panggilan tersebut diteruskan ke [callback `canUseTool`](https://code.claude.com/docs/id/agent-sdk/user-input) Anda untuk konfirmasi, bahkan dalam mode `bypassPermissions`.

34 34 

35Tool yang memerlukan interaksi pengguna berperilaku sama: `AskUserQuestion` dan tool MCP yang server-nya menetapkan [`_meta["anthropic/requiresUserInteraction"]`](https://code.claude.com/docs/id/mcp#require-approval-for-a-specific-tool) selalu diteruskan ke callback, bahkan ketika aturan allow cocok. Dalam mode `dontAsk`, kedua kasus tersebut justru ditolak, karena mode tersebut tidak pernah menampilkan permintaan izin. Anotasi MCP memerlukan Claude Code v2.1.199 atau yang lebih baru.35Tool yang memerlukan interaksi pengguna berperilaku sama. `AskUserQuestion` dan tool MCP yang server-nya menetapkan [`_meta["anthropic/requiresUserInteraction"]`](https://code.claude.com/docs/id/mcp#require-approval-for-a-specific-tool) diteruskan ke callback, bahkan ketika aturan allow cocok. Dalam mode `dontAsk`, kedua kasus tersebut justru ditolak, karena mode tersebut mengubah setiap permintaan izin menjadi penolakan. Anotasi MCP memerlukan Claude Code v2.1.199 atau yang lebih baru.

36 36 

37Tool [konektor claude.ai](https://code.claude.com/docs/id/mcp.md#organization-controls-on-connector-tools) yang telah ditetapkan organisasi Anda ke `ask` juga keluar dari alur pada langkah ini. Setiap panggilan diteruskan ke callback, bahkan dalam mode `bypassPermissions` dan bahkan ketika aturan allow cocok. Callback menerima alasan `Your organization requires approval for this tool`. Dalam mode `dontAsk`, panggilan tersebut justru ditolak, karena mode tersebut tidak pernah menampilkan permintaan izin.37Tool [konektor claude.ai](https://code.claude.com/docs/id/mcp.md#organization-controls-on-connector-tools) yang telah ditetapkan organisasi Anda ke `ask` juga keluar dari alur pada langkah ini. Setiap panggilan diteruskan ke callback, bahkan dalam mode `bypassPermissions` dan bahkan ketika aturan allow cocok. Callback menerima alasan `Your organization requires approval for this tool`. Dalam mode `dontAsk`, panggilan tersebut justru ditolak, karena mode tersebut tidak pernah menampilkan permintaan izin.

38 38 


42 42 

43Terapkan [mode izin](#permission-modes) yang aktif:43Terapkan [mode izin](#permission-modes) yang aktif:

44 44 

45* Dalam mode `bypassPermissions`, Claude Code menyetujui semua yang mencapai langkah ini kecuali [penghapusan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) yang dikenali dan perintah Bash yang ditandai [`Dangerous rm operation not ruled out`](https://code.claude.com/docs/id/permission-modes#dangerous-rm-operation-not-ruled-out), yang justru diteruskan ke langkah berikutnya.45* Dalam mode `bypassPermissions`, Claude Code menyetujui setiap panggilan yang mencapai langkah ini kecuali panggilan tersebut termasuk [tindakan yang tidak disetujui otomatis oleh mode mana pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves). Untuk mengetahui tindakan mana yang diteruskan ke callback `canUseTool` Anda, lihat [Mode bypass permissions](#bypass-permissions-mode-bypasspermissions).

46 * Untuk menjalankan penghapusan tersebut tanpa permintaan izin, lihat [Matikan permintaan izin penghapusan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#turn-off-the-critical-path-removal-prompt-in-bypasspermissions-mode).

47* Dalam mode `acceptEdits`, Claude Code menyetujui operasi file yang tercantum di bawah [Mode accept edits](#accept-edits-mode-acceptedits).46* Dalam mode `acceptEdits`, Claude Code menyetujui operasi file yang tercantum di bawah [Mode accept edits](#accept-edits-mode-acceptedits).

48* Dalam mode `plan`, Claude Code mengirimkan tool pengeditan file ke callback `canUseTool` Anda terlepas dari aturan allow.47* Dalam mode `plan`, sebagian panggilan mencapai callback Anda, dan ketika auto mode tersedia, panggilan lainnya justru diteruskan ke pengklasifikasinya. Untuk informasi selengkapnya, lihat [Plan mode](#plan-mode-plan).

49* Dalam mode lain, permintaan diteruskan ke langkah berikutnya.48* Dalam mode `default` dan `dontAsk`, panggilan diteruskan ke aturan allow.

49* Untuk mode `auto`, lihat [Auto mode](#auto-mode-auto).

50 50 

51**5. Allow rules**51**5. Allow rules**

52 52 


91 91 

92Aturan izin menerima glob nama tool hanya setelah awalan `mcp__<server>__` literal. Segmen server harus bebas glob sehingga aturan menyebutkan server spesifik yang Anda konfigurasi: `mcp__puppeteer__*` cocok dengan setiap tool dari server `puppeteer`, dan `mcp__github__get_*` cocok dengan tool `get_` miliknya. Entri yang tidak berlabuh seperti `allowed_tools=["*"]` atau `allowed_tools=["mcp__*"]` diabaikan dan tidak menyetujui apa pun secara otomatis.92Aturan izin menerima glob nama tool hanya setelah awalan `mcp__<server>__` literal. Segmen server harus bebas glob sehingga aturan menyebutkan server spesifik yang Anda konfigurasi: `mcp__puppeteer__*` cocok dengan setiap tool dari server `puppeteer`, dan `mcp__github__get_*` cocok dengan tool `get_` miliknya. Entri yang tidak berlabuh seperti `allowed_tools=["*"]` atau `allowed_tools=["mcp__*"]` diabaikan dan tidak menyetujui apa pun secara otomatis.

93 93 

94Aturan berskop untuk `Read` dan `Edit` mengambil pola jalur. Aturan `Edit(path)` mengatur semua alat bawaan yang menulis file, termasuk `Write` dan `NotebookEdit`; aturan `Write(path)` tidak pernah cocok dengan pemeriksaan izin file.

95 

96Gunakan `//path` untuk jalur sistem file absolut: aturan penolakan `Edit(//secrets/**)` memblokir penulisan di mana pun di bawah `/secrets` di disk. Dengan garis miring tunggal di depan, `Edit(/secrets/**)` berlabuh di sumber aturan sebagai gantinya. Untuk aturan yang dilewatkan melalui `allowed_tools` atau `disallowed_tools`, itu berarti direktori kerja sesi, sehingga aturan tidak memblokir `/secrets` di disk. Lihat [Aturan Read dan Edit](https://code.claude.com/docs/id/permissions.md#read-and-edit) untuk empat bentuk jangkar dan bagaimana aturan dari file pengaturan diselesaikan.

97 

98> [!WARNING]94> [!WARNING]

99>95>

100> **Alat yang disetujui secara otomatis tidak pernah mencapai `canUseTool`.** Panggilan alat yang disetujui pada langkah sebelumnya apa pun, oleh `acceptEdits` atau `bypassPermissions`, atau oleh aturan izin, melewati callback `canUseTool` Anda, sehingga pemeriksaan izin yang Anda letakkan di sana diam-diam dilewati untuk alat tersebut.96> **Alat yang disetujui secara otomatis tidak pernah mencapai `canUseTool`.** Panggilan alat yang disetujui pada langkah sebelumnya apa pun, oleh `acceptEdits` atau `bypassPermissions`, atau oleh aturan izin, melewati callback `canUseTool` Anda, sehingga pemeriksaan izin yang Anda letakkan di sana diam-diam dilewati untuk alat tersebut.


105>101>

106> * Tool kustom yang ditandai aplikasi Anda sebagai [`always_ask`](https://code.claude.com/docs/id/agent-sdk/custom-tools#require-approval-for-specific-tools): putuskan panggilan tersebut di callback. Untuk menghentikan kedatangan panggilan ini, [ubah kebijakan di tengah sesi](https://code.claude.com/docs/id/agent-sdk/typescript.md#mcpsdkserverconfigwithinstance). Dalam mode `auto`, `plan`, dan `bypassPermissions`, panggilan tersebut justru dapat disetujui sebelum callback, dalam kasus yang tercantum di bawah [Mode izin yang dapat menyetujui panggilan `always_ask`](https://code.claude.com/docs/id/agent-sdk/typescript#permission-modes-that-can-approve-an-always_ask-call)102> * Tool kustom yang ditandai aplikasi Anda sebagai [`always_ask`](https://code.claude.com/docs/id/agent-sdk/custom-tools#require-approval-for-specific-tools): putuskan panggilan tersebut di callback. Untuk menghentikan kedatangan panggilan ini, [ubah kebijakan di tengah sesi](https://code.claude.com/docs/id/agent-sdk/typescript.md#mcpsdkserverconfigwithinstance). Dalam mode `auto`, `plan`, dan `bypassPermissions`, panggilan tersebut justru dapat disetujui sebelum callback, dalam kasus yang tercantum di bawah [Mode izin yang dapat menyetujui panggilan `always_ask`](https://code.claude.com/docs/id/agent-sdk/typescript#permission-modes-that-can-approve-an-always_ask-call)

107>103>

108> * [Penghapusan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) `rm` dan `rmdir` yang dikenali: dalam mode `default`, `acceptEdits`, dan `bypassPermissions`, izinkan atau tolak penghapusan di callback, di mana [`decisionReason`](https://code.claude.com/docs/id/agent-sdk/typescript#canusetool) diawali dengan `Dangerous rm`. Untuk mode `auto` dan `plan`, lihat [Penghapusan jalur kritis di setiap mode izin](https://code.claude.com/docs/id/permission-modes.md#critical-path-removals-in-each-permission-mode). Pemeriksaan yang mengenali penghapusan ini [dapat melewatkan beberapa perintah](https://code.claude.com/docs/id/permission-modes.md#critical-paths)104> * [Penghapusan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) `rm` dan `rmdir` yang dikenali: dalam mode `default`, `acceptEdits`, dan `bypassPermissions`, izinkan atau tolak penghapusan di callback, di mana [`decisionReason`](https://code.claude.com/docs/id/agent-sdk/typescript#canusetool) diawali dengan `Dangerous rm`. Untuk mode `auto` dan `plan`, lihat [Penghapusan jalur kritis di setiap mode izin](https://code.claude.com/docs/id/permission-modes.md#critical-path-removals-in-each-permission-mode)

109>105>

110> * **Nama polos**: entri seperti `Read` atau `mcp__github__get_issue` menyetujui secara otomatis setiap panggilan ke tool tersebut kecuali [tindakan yang tidak disetujui otomatis oleh mode mana pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves) dan [pembacaan dari jalur jaringan](https://code.claude.com/docs/id/permissions.md#network-paths).106> * **Nama polos**: entri seperti `Read` atau `mcp__github__get_issue` menyetujui secara otomatis setiap panggilan ke tool tersebut kecuali [tindakan yang tidak disetujui otomatis oleh mode mana pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves) dan [pembacaan dari jalur jaringan](https://code.claude.com/docs/id/permissions.md#network-paths).

111>107>

112> * **Aturan bercakupan**: entri seperti `Bash(npm test *)` hanya menyetujui secara otomatis panggilan yang cocok, dan panggilan `Bash` lainnya yang memerlukan persetujuan tetap diteruskan ke callback.108> * **Aturan bercakupan**: entri seperti `Bash(npm test *)` menyetujui secara otomatis panggilan yang cocok dengannya, dan panggilan `Bash` lainnya yang memerlukan persetujuan diteruskan ke mode izin.

113>109>

114> Untuk pemeriksaan yang harus berjalan pada setiap panggilan tool, gunakan [hook `PreToolUse`](https://code.claude.com/docs/id/agent-sdk/hooks): hook berjalan sebelum setiap langkah lainnya, dan penolakan hook tetap berlaku bahkan dalam mode `bypassPermissions`.110> Untuk memeriksa panggilan yang disetujui oleh aturan izin, `acceptEdits`, atau `bypassPermissions`, gunakan [hook `PreToolUse`](https://code.claude.com/docs/id/agent-sdk/hooks), yang juga berjalan untuk panggilan tersebut. Penolakan hook tetap berlaku bahkan dalam mode `bypassPermissions`.

115 111 

116Untuk agen yang terkunci, pasangkan `allowedTools` dengan `permissionMode: "dontAsk"`:112Untuk agen yang terkunci, pasangkan `allowedTools` dengan `permissionMode: "dontAsk"`:

117 113 


128 124 

129> [!WARNING]125> [!WARNING]

130>126>

131> **`allowed_tools` tidak membatasi `bypassPermissions`.** `allowed_tools` pra-menyetujui alat yang Anda cantumkan. Alat unlisted lainnya tidak cocok dengan aturan izin apa pun dan jatuh melalui mode izin, di mana `bypassPermissions` menyetujuinya. Mengatur `allowed_tools=["Read"]` bersama dengan `permission_mode="bypassPermissions"` masih menyetujui setiap alat, termasuk `Bash`, `Write`, dan `Edit`. Jika Anda memerlukan `bypassPermissions` tetapi menginginkan alat spesifik diblokir, gunakan `disallowed_tools`.127> **`allowed_tools` tidak membatasi `bypassPermissions`.** `allowed_tools` pra-menyetujui tool yang Anda cantumkan. Dalam mode `bypassPermissions`, Claude Code menyetujui panggilan ke tool yang tidak tercantum kecuali panggilan tersebut termasuk salah satu [tindakan yang tidak disetujui otomatis oleh mode mana pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves).

128>

129> Jika Anda mengatur `allowed_tools=["Read"]` dengan `permission_mode="bypassPermissions"`, Claude Code tetap menyetujui panggilan ke tool seperti `Bash`, `Write`, dan `Edit`. Jika Anda memerlukan `bypassPermissions` tetapi menginginkan tool spesifik diblokir, gunakan `disallowed_tools`. Untuk panggilan yang masih mencapai callback `canUseTool` Anda dalam mode ini, lihat [Mode bypass permissions](#bypass-permissions-mode-bypasspermissions).

132 130 

133Anda juga dapat mengonfigurasi aturan izin, penolakan, dan tanya secara deklaratif dalam `.claude/settings.json`. Aturan ini dibaca ketika sumber pengaturan `project` diaktifkan, yang mana untuk opsi `query()` default. Jika Anda mengatur `setting_sources` (TypeScript: `settingSources`) secara eksplisit, sertakan `"project"` agar aturan diterapkan. Lihat [Pengaturan Izin](https://code.claude.com/docs/id/settings-reference.md#permission-settings) untuk sintaks aturan.131Anda juga dapat mengonfigurasi aturan izin, penolakan, dan tanya secara deklaratif dalam `.claude/settings.json`. Aturan ini dibaca ketika sumber pengaturan `project` diaktifkan, yang mana untuk opsi `query()` default. Jika Anda mengatur `setting_sources` (TypeScript: `settingSources`) secara eksplisit, sertakan `"project"` agar aturan diterapkan. Lihat [Pengaturan Izin](https://code.claude.com/docs/id/settings-reference.md#permission-settings) untuk sintaks aturan.

134 132 

133Untuk mengetahui kapan aturan izin dalam `.claude/settings.json` milik proyek berlaku, lihat [Aturan izin proyek dan kepercayaan workspace](https://code.claude.com/docs/id/permissions.md#project-allow-rules-and-workspace-trust).

134 

135### Pola jalur dalam aturan

136 

137Aturan bercakupan untuk `Read` dan `Edit` mengambil pola jalur. Aturan `Edit(path)` mengatur semua tool bawaan yang menulis file, termasuk `Write` dan `NotebookEdit`, jadi tulis aturan jalur untuk salah satu tool tersebut sebagai `Edit(path)`. Jika Anda menulis aturan jalur sebagai `Write(path)` atau `NotebookEdit(path)`, aturan tersebut [tidak cocok dengan panggilan apa pun](https://code.claude.com/docs/id/permissions.md#path-rules-that-never-match) dan tidak berpengaruh.

138 

139Dalam `allowed_tools` dan `disallowed_tools`, awali pola jalur dengan `//` untuk jalur absolut, atau dengan satu `/` untuk jalur di dalam direktori kerja sesi:

140 

141* **`//path`**: dengan aturan penolakan `Edit(//secrets/**)`, Claude Code memblokir penulisan di bawah `/secrets` di disk dari tool file Claude dan dari [perintah Bash seperti `tee` dan pengalihan `> file`](https://code.claude.com/docs/id/permissions#what-read-and-edit-rules-cover). Skrip yang dijalankan Claude dan membuka file sendiri masih dapat menulis di bawah `/secrets`. Untuk penegakan oleh sistem operasi, lihat [Mengonfigurasi tool Bash dengan sandbox](https://code.claude.com/docs/id/sandboxing.md).

142* **`/path`**: `Edit(/secrets/**)` cocok dengan direktori `secrets` di dalam direktori kerja.

143 

144Untuk cara lain mengawali pola jalur, lihat [Aturan Read dan Edit](https://code.claude.com/docs/id/permissions.md#read-and-edit).

145 

135## Mode izin146## Mode izin

136 147 

137Mode izin memberikan kontrol global atas cara Claude menggunakan tools. Anda dapat mengatur mode izin saat memanggil `query()` atau mengubahnya secara dinamis selama sesi streaming.148Mode izin memberikan kontrol global atas cara Claude menggunakan tools. Anda dapat mengatur mode izin saat memanggil `query()` atau mengubahnya secara dinamis selama sesi streaming.


146| :- | :- | :- |157| :- | :- | :- |

147| `default` | Perilaku izin standar | Tidak ada persetujuan otomatis berbasis mode; panggilan yang memerlukan persetujuan dan tidak cocok dengan aturan izin memicu callback `canUseTool` Anda |158| `default` | Perilaku izin standar | Tidak ada persetujuan otomatis berbasis mode; panggilan yang memerlukan persetujuan dan tidak cocok dengan aturan izin memicu callback `canUseTool` Anda |

148| `dontAsk` | Tolak alih-alih meminta | Setiap panggilan yang sebaliknya akan meminta ditolak tanpa memanggil `canUseTool`, meskipun [mod](https://code.claude.com/docs/id/plugins/mods/overview.md) yang Anda instal masih dapat menyetujui [sebagian panggilan tersebut](https://code.claude.com/docs/id/permissions.md#precedence-among-rules-hooks-and-mods). Panggilan yang disetujui oleh `allowed_tools` atau aturan allow `settings.json` berjalan, begitu juga panggilan yang tidak memerlukan persetujuan dalam mode `default`. Beberapa panggilan, seperti [pembacaan dari jalur jaringan](https://code.claude.com/docs/id/permissions.md#network-paths), ditolak bahkan ketika `allowed_tools` atau aturan allow cocok dengannya. Untuk daftarnya, lihat [Mode jangan tanya](#don’t-ask-mode-dontask) |159| `dontAsk` | Tolak alih-alih meminta | Setiap panggilan yang sebaliknya akan meminta ditolak tanpa memanggil `canUseTool`, meskipun [mod](https://code.claude.com/docs/id/plugins/mods/overview.md) yang Anda instal masih dapat menyetujui [sebagian panggilan tersebut](https://code.claude.com/docs/id/permissions.md#precedence-among-rules-hooks-and-mods). Panggilan yang disetujui oleh `allowed_tools` atau aturan allow `settings.json` berjalan, begitu juga panggilan yang tidak memerlukan persetujuan dalam mode `default`. Beberapa panggilan, seperti [pembacaan dari jalur jaringan](https://code.claude.com/docs/id/permissions.md#network-paths), ditolak bahkan ketika `allowed_tools` atau aturan allow cocok dengannya. Untuk daftarnya, lihat [Mode jangan tanya](#don’t-ask-mode-dontask) |

149| `acceptEdits` | Terima otomatis pengeditan file | Pengeditan file dan [operasi sistem file](#accept-edits-mode-acceptedits) (`mkdir`, `rm`, `mv`, dll.) secara otomatis disetujui |160| `acceptEdits` | Terima otomatis pengeditan file | Pengeditan file dan [operasi sistem file](#accept-edits-mode-acceptedits) (`mkdir`, `rm`, `mv`, dll.) di dalam [direktori kerja](https://code.claude.com/docs/id/permissions.md#working-directories) Anda secara otomatis disetujui |

150| `bypassPermissions` | Lewati pemeriksaan izin | Tools berjalan tanpa prompt izin, kecuali untuk [tindakan yang tidak disetujui otomatis oleh mode mana pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves) dan, di luar [sesi cloud](https://code.claude.com/docs/id/claude-code-on-the-web.md), tool kustom yang [ditandai `always_ask`](https://code.claude.com/docs/id/agent-sdk/custom-tools#require-approval-for-specific-tools) oleh aplikasi Anda. Gunakan dengan hati-hati |161| `bypassPermissions` | Lewati pemeriksaan izin | Tools berjalan tanpa prompt izin, kecuali untuk [tindakan yang tidak disetujui otomatis oleh mode mana pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves) dan, di luar [sesi cloud](https://code.claude.com/docs/id/claude-code-on-the-web.md), tool kustom yang [ditandai `always_ask`](https://code.claude.com/docs/id/agent-sdk/custom-tools#require-approval-for-specific-tools) oleh aplikasi Anda. Gunakan dengan hati-hati |

151| `plan` | Mode perencanaan | Claude menjelajahi dan merencanakan tanpa mengedit file sumber Anda; pengeditan file tidak pernah auto-approved dan meminta melalui callback `canUseTool` Anda |162| `plan` | Mode perencanaan | Claude menjelajahi dan merencanakan. Pengeditan yang dibuat dengan tool file Claude diteruskan ke callback `canUseTool` Anda bahkan ketika aturan allow cocok dengannya |

152| `auto` | Persetujuan yang diklasifikasikan model | Pengklasifikasi model meninjau tindakan seperti perintah shell dan permintaan jaringan, memungkinkan atau memblokir masing-masing yang ditinjau. Lihat [Mode Auto](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) untuk ketersediaan dan urutan keputusan |163| `auto` | Persetujuan yang diklasifikasikan model | Pengklasifikasi model meninjau tindakan seperti perintah shell dan permintaan jaringan, memungkinkan atau memblokir masing-masing yang ditinjau. Lihat [Mode Auto](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) untuk ketersediaan dan urutan keputusan |

153 164 

154> [!WARNING]165> [!WARNING]


267 278 

268**Operasi yang auto-approved:**279**Operasi yang auto-approved:**

269 280 

270* Pengeditan file (tools Edit, Write)281* Pengeditan file dengan tools Edit, Write, dan NotebookEdit

271* Perintah sistem file: `mkdir`, `touch`, `rm`, `rmdir`, `mv`, `cp`, `sed`282* Perintah sistem file: `mkdir`, `touch`, `rm`, `rmdir`, `mv`, `cp`, `sed`

272 283 

273Keduanya hanya berlaku untuk jalur di dalam direktori kerja atau `additionalDirectories`. Dalam mode `acceptEdits`, Claude Code tidak auto-approve permintaan ketika Claude:284Keduanya berlaku untuk jalur di dalam direktori kerja atau direktori yang Anda tambahkan. Di Python, tambahkan direktori dengan `add_dirs`, dan di TypeScript dengan `additionalDirectories`. Dalam mode `acceptEdits`, Claude Code tidak auto-approve permintaan ketika Claude:

274 285 

275* Bekerja pada jalur di luar cakupan itu286* Bekerja pada jalur di luar cakupan itu

276* Menulis ke jalur yang dilindungi287* Menulis ke [jalur yang dilindungi](https://code.claude.com/docs/id/permission-modes.md#protected-paths)

277* Menghapus jalur yang dikenali Claude Code sebagai [jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) dengan `rm` atau `rmdir`288* Menghapus jalur yang dikenali Claude Code sebagai [jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) dengan `rm` atau `rmdir`

278* Menjalankan [`touch`](https://code.claude.com/docs/id/permission-modes#auto-approve-file-edits-with-acceptedits-mode) dengan, misalnya, sebuah opsi, glob, atau prefiks `timeout 5` atau `LANG=C`289* Menjalankan [`touch`](https://code.claude.com/docs/id/permission-modes#auto-approve-file-edits-with-acceptedits-mode) dengan, misalnya, sebuah opsi, glob, atau prefiks `timeout 5` atau `LANG=C`

279 290 


293 304 

294Jika hook `PreToolUse` Anda mengembalikan `allow` untuk penghapusan jalur kritis yang dikenali, pembacaan dari jalur jaringan, atau panggilan ke tool yang ditandai `always_ask`, panggilan tersebut tetap ditolak. Pemeriksaan yang mengenali penghapusan ini [dapat melewatkan beberapa perintah](https://code.claude.com/docs/id/permission-modes.md#critical-paths).305Jika hook `PreToolUse` Anda mengembalikan `allow` untuk penghapusan jalur kritis yang dikenali, pembacaan dari jalur jaringan, atau panggilan ke tool yang ditandai `always_ask`, panggilan tersebut tetap ditolak. Pemeriksaan yang mengenali penghapusan ini [dapat melewatkan beberapa perintah](https://code.claude.com/docs/id/permission-modes.md#critical-paths).

295 306 

296**Gunakan ketika:** Anda menginginkan permukaan tool yang tetap dan eksplisit untuk agen headless dan lebih suka penolakan keras daripada ketergantungan diam pada `canUseTool` yang tidak ada.307**Gunakan ketika:** Anda menjalankan agent headless dan menginginkan penolakan keras untuk setiap panggilan yang sebaliknya akan meminta.

297 308 

298#### Mode lewati izin (`bypassPermissions`)309#### Mode lewati izin (`bypassPermissions`)

299 310 


303>314>

304> Gunakan dengan sangat hati-hati. Claude memiliki akses sistem penuh dalam mode ini. Hanya gunakan di lingkungan terkontrol di mana Anda mempercayai semua operasi yang mungkin.315> Gunakan dengan sangat hati-hati. Claude memiliki akses sistem penuh dalam mode ini. Hanya gunakan di lingkungan terkontrol di mana Anda mempercayai semua operasi yang mungkin.

305>316>

306> `allowed_tools` tidak membatasi mode ini. Setiap tool disetujui, bukan hanya yang Anda daftarkan. Kontrol ini masih berlaku:317> `allowed_tools` tidak membatasi mode ini, dan panggilan ke tool yang tidak Anda daftarkan juga disetujui. Kontrol ini masih berlaku:

307>318>

308> * Aturan penolakan, aturan `ask` eksplisit, dan hook dievaluasi sebelum pemeriksaan mode dan masih dapat memblokir tool.319> * Aturan penolakan, aturan `ask` eksplisit, dan hook dievaluasi sebelum pemeriksaan mode dan masih dapat memblokir tool.

309> * Tool konektor [yang diatur organisasi Anda ke `ask`](https://code.claude.com/docs/id/mcp#organization-controls-on-connector-tools), tools yang memerlukan interaksi pengguna, dan [penghapusan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) yang dikenali masih jatuh ke callback `canUseTool` Anda. Pemeriksaan yang mengenali penghapusan ini [dapat melewatkan beberapa perintah](https://code.claude.com/docs/id/permission-modes.md#critical-paths), dan Anda dapat [mematikan permintaan izin penghapusan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#turn-off-the-critical-path-removal-prompt-in-bypasspermissions-mode). Di luar [sesi cloud](https://code.claude.com/docs/id/claude-code-on-the-web.md), panggilan ke tool kustom yang [ditandai `always_ask`](https://code.claude.com/docs/id/agent-sdk/custom-tools#require-approval-for-specific-tools) oleh aplikasi Anda juga jatuh ke callback tersebut.320> * Tool konektor [yang diatur organisasi Anda ke `ask`](https://code.claude.com/docs/id/mcp#organization-controls-on-connector-tools), tools yang memerlukan interaksi pengguna, [penghapusan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) yang dikenali, dan perintah Bash yang ditandai [`Dangerous rm operation not ruled out`](https://code.claude.com/docs/id/permission-modes#dangerous-rm-operation-not-ruled-out) masih jatuh ke callback `canUseTool` Anda. Pemeriksaan yang mengenali penghapusan jalur kritis [dapat melewatkan beberapa perintah](https://code.claude.com/docs/id/permission-modes.md#critical-paths), dan Anda dapat [mematikan permintaan izin penghapusan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#turn-off-the-critical-path-removal-prompt-in-bypasspermissions-mode). Di luar [sesi cloud](https://code.claude.com/docs/id/claude-code-on-the-web.md), panggilan ke tool kustom yang [ditandai `always_ask`](https://code.claude.com/docs/id/agent-sdk/custom-tools#require-approval-for-specific-tools) oleh aplikasi Anda juga jatuh ke callback tersebut.

310> * [Perlindungan pesan lintas sesi](https://code.claude.com/docs/id/permission-modes.md#skip-all-checks-with-bypasspermissions-mode) masih berlaku.321> * [Perlindungan pesan lintas sesi](https://code.claude.com/docs/id/permission-modes.md#skip-all-checks-with-bypasspermissions-mode) masih berlaku.

311 322 

312#### Mode rencana (`plan`)323#### Mode rencana (`plan`)

313 324 

314Claude menjelajahi codebase dan menghasilkan rencana tanpa mengedit file sumber Anda. Pengeditan file tidak pernah auto-approved dalam plan mode, bahkan ketika aturan allow cocok atau hook `PreToolUse` mengembalikan `allow`. Pengeditan tersebut meminta melalui callback `canUseTool` Anda sebagai gantinya.325Claude menjelajahi codebase dan menghasilkan rencana. Selama perencanaan, pengeditan yang dibuat dengan tool file Claude di luar [jalur yang dilindungi](https://code.claude.com/docs/id/permission-modes.md#protected-paths) mencapai callback `canUseTool` Anda, bahkan ketika aturan allow cocok atau hook `PreToolUse` mengembalikan `allow`. Panggilan [`AskUserQuestion`](https://code.claude.com/docs/id/agent-sdk/user-input#handle-clarifying-questions) juga mencapai callback Anda, bahkan ketika aturan allow menyebutkan tool tersebut.

326 

327Ketika [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) tersedia, Claude Code mengirim panggilan berikut selama perencanaan ke [pengklasifikasi auto mode](https://code.claude.com/docs/id/permission-modes.md#analyze-before-you-edit-with-plan-mode) untuk ditinjau alih-alih ke callback Anda, ketika tidak ada aturan allow yang menyetujuinya:

328 

329* Perintah shell

330* Pengambilan web

331* Pencarian web

332* Panggilan ke tool MCP yang ditandai read-only oleh server-nya

333 

334Peninjauan ini aktif secara default. Untuk mematikannya, atur [`useAutoModeDuringPlan`](https://code.claude.com/docs/id/settings-reference#useautomodeduringplan) ke `false` dalam opsi `settings` yang Anda berikan ke `query()`, atau dalam pengaturan pengguna Anda. Selama peninjauan dimatikan, pencarian web dan panggilan ke tool MCP yang ditandai read-only mencapai callback Anda.

315 335 

316Selama auto mode tersedia untuk sesi, perintah yang dijalankan Claude selama perencanaan secara default tidak mencapai callback Anda, karena model pengklasifikasi yang digunakan [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) [meninjaunya sebagai gantinya](https://code.claude.com/docs/id/permission-modes.md#analyze-before-you-edit-with-plan-mode). Dengan peninjauan tersebut aktif, pengklasifikasi juga dapat menyetujui panggilan read-only yang sebaliknya akan mencapai callback Anda, seperti panggilan `WebFetch` tanpa aturan allow.336Untuk perintah shell dan pengambilan web, tabel berikut menunjukkan apakah setiap panggilan mencapai callback Anda:

337 

338| Panggilan selama perencanaan | Peninjauan aktif | Peninjauan mati, atau auto mode tidak tersedia |

339| :- | :- | :- |

340| Perintah shell [read-only](https://code.claude.com/docs/id/permissions.md#read-only-commands), seperti `ls` | Berjalan tanpa mencapai callback Anda | Berjalan tanpa mencapai callback Anda |

341| Perintah shell lain yang tidak disetujui aturan allow mana pun, kecuali [penghapusan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) | Diteruskan ke pengklasifikasi, yang menyetujui atau menolaknya tanpa callback Anda | Mencapai callback Anda |

342| Panggilan `WebFetch` ke [domain dokumentasi yang telah disetujui sebelumnya](https://code.claude.com/docs/id/tools-reference.md#webfetch-tool-behavior) | Berjalan tanpa mencapai callback Anda | Berjalan tanpa mencapai callback Anda |

343| Panggilan `WebFetch` lain yang tidak disetujui aturan allow mana pun | Diteruskan ke pengklasifikasi, yang menyetujui atau menolaknya tanpa callback Anda | Mencapai callback Anda |

344 

345Untuk apa yang terjadi setelah pengklasifikasi menolak beberapa panggilan berturut-turut, lihat [Ambang batas pemblokiran berulang](https://code.claude.com/docs/id/permission-modes.md#repeated-block-thresholds).

317 346 

318> [!NOTE]347> [!NOTE]

319>348>

320> Dalam SDK TypeScript, jika Anda mengatur `allowDangerouslySkipPermissions: true` bersama dengan `permissionMode: 'plan'`, pengeditan file masih mencapai callback `canUseTool` Anda. Untuk mengalihkan sesi yang dimulai dalam plan mode ke `bypassPermissions` nanti dengan `setPermissionMode()`, Anda memerlukan `allowDangerouslySkipPermissions` yang diatur sejak awal.349> Dalam SDK TypeScript, jika Anda mengatur `allowDangerouslySkipPermissions: true` bersama dengan `permissionMode: 'plan'`, pengeditan file masih mencapai callback `canUseTool` Anda. Untuk mengalihkan sesi yang dimulai dalam plan mode ke `bypassPermissions` nanti dengan `setPermissionMode()`, Anda memerlukan `allowDangerouslySkipPermissions` yang diatur sejak awal.

321 350 

322Claude dapat menggunakan `AskUserQuestion` untuk mengklarifikasi persyaratan sebelum menyelesaikan rencana. Lihat [Tangani persetujuan dan input pengguna](https://code.claude.com/docs/id/agent-sdk/user-input.md#handle-clarifying-questions) untuk menangani prompt ini.351**Gunakan ketika:** Anda ingin Claude menghasilkan rencana terlebih dahulu, seperti selama code review atau sebelum perubahan besar.

323 

324**Gunakan ketika:** Anda ingin Claude mengusulkan perubahan tanpa menjalankannya, seperti selama tinjauan kode atau ketika Anda perlu menyetujui perubahan sebelum dibuat.

325 352 

326#### Auto mode (`auto`)353#### Auto mode (`auto`)

327 354 

Details

1175PermissionMode = Literal[1175PermissionMode = Literal[

1176 "default", # Standard permission behavior1176 "default", # Standard permission behavior

1177 "acceptEdits", # Auto-accept file edits1177 "acceptEdits", # Auto-accept file edits

1178 "plan", # Planning mode - explore without editing1178 "plan", # Planning mode - Claude explores and plans

1179 "dontAsk", # Deny anything not pre-approved instead of prompting1179 "dontAsk", # Deny anything not pre-approved instead of prompting

1180 "bypassPermissions", # Bypass permission checks; explicit ask rules still prompt (use with caution)1180 "bypassPermissions", # Bypass permission checks; explicit ask rules still prompt (use with caution)

1181 "auto", # A model classifier reviews actions such as shell commands and network requests1181 "auto", # A model classifier reviews actions such as shell commands and network requests


1214 1214 

1215Mengembalikan `PermissionResult` (baik `PermissionResultAllow` maupun `PermissionResultDeny`).1215Mengembalikan `PermissionResult` (baik `PermissionResultAllow` maupun `PermissionResultDeny`).

1216 1216 

1217Callback ini adalah pengganti SDK untuk permintaan izin interaktif: callback hanya dipanggil ketika [alur evaluasi izin](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) berakhir pada permintaan izin. Panggilan tool yang sudah disetujui oleh entri `allowed_tools`, aturan allow di pengaturan, atau mode izin, seperti `acceptEdits` atau `bypassPermissions`, tidak pernah memanggilnya. Untuk mengendalikan setiap panggilan tool, gunakan [hook `PreToolUse`](https://code.claude.com/docs/id/agent-sdk/hooks) sebagai gantinya.1217Callback ini menggantikan permintaan izin interaktif. SDK memanggil `can_use_tool` ketika [alur evaluasi izin](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) berakhir pada permintaan izin. Panggilan yang disetujui dengan salah satu cara berikut berjalan tanpa memanggil `can_use_tool`:

1218 

1219* Panggilan yang disetujui oleh entri `allowed_tools` atau aturan allow di pengaturan

1220* Panggilan yang disetujui oleh mode izin, seperti pengeditan file dalam mode `acceptEdits`

1221 

1222Untuk memeriksa panggilan tersebut, gunakan [hook `PreToolUse`](https://code.claude.com/docs/id/agent-sdk/hooks), yang juga berjalan untuk panggilan tersebut.

1218 1223 

1219Aturan allow tidak menyetujui terlebih dahulu [tindakan yang tidak disetujui otomatis oleh mode apa pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves); lihat [Cara izin dievaluasi](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) untuk mengetahui tindakan mana yang mencapai callback dan apa yang terjadi dalam mode `dontAsk` dan `auto`.1224Aturan allow tidak menyetujui terlebih dahulu [tindakan yang tidak disetujui otomatis oleh mode apa pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves); lihat [Cara izin dievaluasi](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) untuk mengetahui tindakan mana yang mencapai callback dan apa yang terjadi dalam mode `dontAsk` dan `auto`.

1220 1225 


3659 3664 

3660> [!NOTE]3665> [!NOTE]

3661>3666>

3662> Proxy sandbox bawaan memberlakukan daftar izin jaringan berdasarkan nama host yang diminta dan tidak menghentikan atau memeriksa lalu lintas TLS, sehingga teknik seperti [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) berpotensi dapat melewatinya. Lihat [Batasan keamanan sandboxing](https://code.claude.com/docs/id/sandboxing.md#security-limitations) untuk detail dan [Penyebaran aman](https://code.claude.com/docs/id/agent-sdk/secure-deployment.md#traffic-forwarding) untuk mengonfigurasi proxy yang menghentikan TLS.3667> Proxy sandbox bawaan memberlakukan allowlist jaringan berdasarkan nama host yang diminta. Secara default, proxy tidak menghentikan atau memeriksa lalu lintas TLS, sehingga teknik seperti [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) berpotensi dapat melewati allowlist tersebut. Lihat [Batasan keamanan sandboxing](https://code.claude.com/docs/id/sandboxing.md#security-limitations) untuk detail dan [Deployment aman](https://code.claude.com/docs/id/agent-sdk/secure-deployment.md#traffic-forwarding) untuk mengonfigurasi proxy yang menghentikan TLS.

3663 3668 

3664### `SandboxIgnoreViolations`3669### `SandboxIgnoreViolations`

3665 3670 

Details

22 22 

23Claude Code mencakup beberapa fitur keamanan yang mengatasi kekhawatiran umum. Lihat [dokumentasi keamanan](https://code.claude.com/docs/id/security.md) untuk detail lengkap.23Claude Code mencakup beberapa fitur keamanan yang mengatasi kekhawatiran umum. Lihat [dokumentasi keamanan](https://code.claude.com/docs/id/security.md) untuk detail lengkap.

24 24 

25* **Sistem izin**: Setiap alat dan perintah bash dapat dikonfigurasi untuk mengizinkan, memblokir, atau meminta persetujuan pengguna. Gunakan pola glob untuk membuat aturan seperti "izinkan semua perintah npm" atau "blokir perintah apa pun dengan sudo". Organisasi dapat menetapkan kebijakan yang berlaku di semua pengguna. Lihat [permissions](https://code.claude.com/docs/id/permissions.md).25* **Sistem izin**: Aturan izin menentukan apakah sebuah panggilan tool dijalankan, diblokir, atau meminta persetujuan terlebih dahulu. Untuk bentuk-bentuk yang tidak tercakup oleh aturan Bash dan cara aturan dikombinasikan dengan mode izin, lihat [Apa yang tidak dicocokkan oleh aturan Bash](https://code.claude.com/docs/id/permissions.md#bash-rule-limits) dan [Mengonfigurasi izin](https://code.claude.com/docs/id/agent-sdk/permissions.md). Administrator juga dapat menetapkan aturan di [pengaturan terkelola](https://code.claude.com/docs/id/permissions.md#managed-settings).

26* **Parsing perintah untuk izin**: Sebelum menjalankan perintah bash, Claude Code menguraikannya menjadi AST dan mencocokkan hasilnya dengan aturan izin Anda. Perintah yang tidak dapat diuraikan dengan bersih, atau yang tidak cocok dengan aturan allow, memerlukan persetujuan eksplisit. Serangkaian kecil konstruksi seperti `eval` selalu memerlukan persetujuan terlepas dari aturan allow. Ini adalah gerbang izin, bukan sandbox; kecuali untuk pemeriksaan keamanan bawaan seperti [pemeriksaan jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) pada `rm` dan `rmdir` dan daftar [jalur terlindungi](https://code.claude.com/docs/id/permission-modes.md#protected-paths), ini tidak menyimpulkan apakah perintah berbahaya dari jalur target atau efeknya.26* **Penghapusan jalur kritis**: Dengan mode izin diatur ke `default`, perintah `rm` atau `rmdir` yang dikenali sebagai menghapus direktori kerja Anda atau [jalur kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) lainnya memerlukan persetujuan. Aturan allow yang cocok tidak melewati persetujuan tersebut. Ini adalah gerbang izin, bukan sandbox. Untuk mengontrol apa yang dapat ditulis oleh agent, gunakan [kontrol filesystem](#filesystem-configuration).

27* **Ringkasan pencarian web**: Hasil pencarian diringkas daripada melewatkan konten mentah langsung ke dalam konteks, mengurangi risiko prompt injection dari konten web berbahaya.27* **Ringkasan pencarian web**: Hasil pencarian diringkas daripada melewatkan konten mentah langsung ke dalam konteks, mengurangi risiko prompt injection dari konten web berbahaya.

28* **Mode sandbox**: Perintah Bash dapat berjalan di lingkungan sandbox yang membatasi akses filesystem dan jaringan. Lihat [dokumentasi sandboxing](https://code.claude.com/docs/id/sandboxing.md) untuk detail.28* **Mode sandbox**: Perintah Bash dapat berjalan di lingkungan sandbox yang membatasi akses filesystem dan jaringan. Lihat [dokumentasi sandboxing](https://code.claude.com/docs/id/sandboxing.md) untuk detail.

29 29 


83**Cara kerjanya:**83**Cara kerjanya:**

84 84 

85* **Filesystem**: Menggunakan primitif OS (`bubblewrap` di Linux, `sandbox-exec` di macOS) untuk membatasi akses baca/tulis ke jalur yang dikonfigurasi85* **Filesystem**: Menggunakan primitif OS (`bubblewrap` di Linux, `sandbox-exec` di macOS) untuk membatasi akses baca/tulis ke jalur yang dikonfigurasi

86* **Jaringan**: Menghapus namespace jaringan (Linux) atau menggunakan profil Seatbelt (macOS) untuk merutekan lalu lintas jaringan melalui proxy bawaan86* **Jaringan**: Menjalankan perintah di namespace jaringannya sendiri (Linux) atau di bawah profil Seatbelt (macOS) dan merutekan lalu lintasnya melalui proxy bawaan yang mengizinkan domain yang dikonfigurasi. Koneksi ke host luar yang melewati proxy akan gagal.

87* **Konfigurasi**: Daftar izin berbasis JSON untuk domain dan jalur filesystem87* **Konfigurasi**: Daftar izin berbasis JSON untuk domain dan jalur filesystem

88 88 

89**Setup:**89**Setup:**

90 90 

91```bash theme={null}91Untuk langkah instalasi, konfigurasi, dan peluncuran, lihat [Menyiapkan dan meluncurkan runtime](https://code.claude.com/docs/id/sandbox-environments.md#set-up-and-launch-the-runtime).

92npm install @anthropic-ai/sandbox-runtime

93```

94 

95Kemudian buat file konfigurasi yang menentukan jalur dan domain yang diizinkan.

96 92 

97**Pertimbangan keamanan:**93**Pertimbangan keamanan:**

98 94 

991. **Kernel host yang sama**: Tidak seperti VM, proses sandbox berbagi kernel host. Kerentanan kernel secara teoritis dapat memungkinkan escape. Untuk beberapa model ancaman ini dapat diterima, tetapi jika Anda memerlukan isolasi tingkat kernel, gunakan gVisor atau VM terpisah.951. **Kernel host yang sama**: Tidak seperti VM, proses sandbox berbagi kernel host. Kerentanan kernel secara teoritis dapat memungkinkan escape. Untuk beberapa model ancaman ini dapat diterima, tetapi jika Anda memerlukan isolasi tingkat kernel, gunakan gVisor atau VM terpisah.

100 96 

1012. **Tidak ada inspeksi TLS**: Proxy daftar izin domain berdasarkan nama host yang disediakan klien dan tidak menghentikan atau memeriksa lalu lintas terenkripsi. Kode yang berjalan di dalam sandbox dapat berpotensi menggunakan [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) atau teknik serupa untuk menjangkau host di luar daftar izin. Jika model ancaman Anda memerlukan jaminan yang lebih kuat, konfigurasikan [proxy yang menghentikan TLS](#traffic-forwarding). Lihat [batasan keamanan sandboxing](https://code.claude.com/docs/id/sandboxing.md#security-limitations) untuk detail lebih lanjut. Secara terpisah, jika agen memiliki kredensial permisif untuk domain yang diizinkan, pastikan itu tidak dapat menggunakan domain itu untuk memicu permintaan jaringan lain atau untuk mengeksfiltrasi data.972. **Tidak ada inspeksi TLS**: Secara default, proxy menerapkan allowlist domain berdasarkan nama host yang disediakan klien dan tidak menghentikan atau memeriksa lalu lintas terenkripsi. Kode yang berjalan di dalam sandbox dapat berpotensi menggunakan [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) atau teknik serupa untuk menjangkau host di luar allowlist. Jika model ancaman Anda memerlukan jaminan yang lebih kuat, gunakan proxy yang menghentikan TLS dan memeriksa lalu lintas, seperti yang dijelaskan di [Penerusan lalu lintas](#traffic-forwarding). Untuk informasi lebih lanjut, lihat [batasan keamanan sandboxing](https://code.claude.com/docs/id/sandboxing.md#security-limitations).

98 

993. **Kredensial untuk domain yang diizinkan**: Jika agent memiliki kredensial permisif untuk domain yang diizinkan, pastikan agent tidak dapat menggunakan domain itu untuk memicu permintaan jaringan lain atau untuk mengeksfiltrasi data.

102 100 

103Untuk banyak kasus penggunaan pengembang tunggal dan CI/CD, sandbox-runtime meningkatkan standar secara signifikan dengan setup minimal. Bagian di bawah mencakup kontainer dan VM untuk penyebaran yang memerlukan isolasi yang lebih kuat.101Untuk banyak kasus penggunaan pengembang tunggal dan CI/CD, sandbox-runtime meningkatkan standar secara signifikan dengan setup minimal. Bagian di bawah mencakup kontainer dan VM untuk penyebaran yang memerlukan isolasi yang lebih kuat.

104 102 


135| `--security-opt seccomp=...` | Membatasi syscall yang tersedia; default Docker memblokir \~44, profil kustom dapat memblokir lebih banyak |133| `--security-opt seccomp=...` | Membatasi syscall yang tersedia; default Docker memblokir \~44, profil kustom dapat memblokir lebih banyak |

136| `--read-only` | Membuat filesystem root kontainer tidak dapat diubah, mencegah agen dari mempertahankan perubahan |134| `--read-only` | Membuat filesystem root kontainer tidak dapat diubah, mencegah agen dari mempertahankan perubahan |

137| `--tmpfs /tmp:...` | Menyediakan direktori sementara yang dapat ditulis yang dihapus saat kontainer berhenti |135| `--tmpfs /tmp:...` | Menyediakan direktori sementara yang dapat ditulis yang dihapus saat kontainer berhenti |

138| `--network none` | Menghapus semua antarmuka jaringan; agen berkomunikasi melalui soket Unix yang dipasang di bawah |136| `--network none` | Memutus kontainer dari jaringan eksternal |

139| `--memory 2g` | Membatasi penggunaan memori untuk mencegah kehabisan sumber daya |137| `--memory 2g` | Membatasi penggunaan memori untuk mencegah kehabisan sumber daya |

140| `--pids-limit 100` | Membatasi jumlah proses untuk mencegah fork bombs |138| `--pids-limit 100` | Membatasi jumlah proses untuk mencegah fork bombs |

141| `--user 1000:1000` | Berjalan sebagai pengguna non-root |139| `--user 1000:1000` | Berjalan sebagai pengguna non-root |


144 142 

145**Arsitektur soket Unix:**143**Arsitektur soket Unix:**

146 144 

147Dengan `--network none`, kontainer tidak memiliki antarmuka jaringan sama sekali. Satu-satunya cara bagi agen untuk menjangkau dunia luar adalah melalui soket Unix yang dipasang, yang terhubung ke proxy yang berjalan di host. Proxy ini dapat memberlakukan daftar izin domain, menyuntikkan kredensial, dan mencatat semua lalu lintas.145Dengan `--network none`, pencarian DNS atau koneksi langsung ke host lain akan gagal di dalam kontainer. Agar kode di dalam kontainer dapat menjangkau host lain, jalankan proxy di host dan pasang soket Unix-nya ke dalam kontainer. Jika Anda mengarahkan `ANTHROPIC_BASE_URL` atau `HTTP_PROXY` ke port di `localhost`, seperti yang ditunjukkan di [Mengonfigurasi Claude Code untuk menggunakan proxy](#configuring-claude-code-to-use-a-proxy), teruskan port tersebut di dalam kontainer ke soket.

148 146 

149Ini adalah arsitektur yang sama yang digunakan oleh [sandbox-runtime](https://github.com/anthropics/sandbox-runtime). Bahkan jika agent dikompromikan melalui prompt injection, agent tidak dapat mengeksfiltrasi data ke server arbitrer. Agent hanya dapat berkomunikasi melalui proxy, yang mengontrol domain mana yang dapat dijangkau. Untuk detail lebih lanjut, lihat [posting blog sandboxing Claude Code](https://www.anthropic.com/engineering/claude-code-sandboxing).147Anda dapat menyiapkan proxy ini untuk memberlakukan allowlist domain, menyuntikkan kredensial, dan mencatat semua lalu lintas.

148 

149> [!WARNING]

150>

151> Di dalam allowlist proxy Anda, agent dapat mengirim data ke domain mana pun yang diizinkan. Izinkan hanya domain yang dibutuhkan agent.

150 152 

151**Opsi pengerasan tambahan:**153**Opsi pengerasan tambahan:**

152 154 

Details

1340 | "default" // Standard permission behavior1340 | "default" // Standard permission behavior

1341 | "acceptEdits" // Auto-accept file edits1341 | "acceptEdits" // Auto-accept file edits

1342 | "bypassPermissions" // Bypass permission checks; explicit ask rules still prompt1342 | "bypassPermissions" // Bypass permission checks; explicit ask rules still prompt

1343 | "plan" // Planning mode - explore without editing1343 | "plan" // Planning mode - Claude explores and plans

1344 | "dontAsk" // Don't prompt for permissions, deny if not pre-approved1344 | "dontAsk" // Don't prompt for permissions, deny if not pre-approved

1345 | "auto"; // A model classifier reviews actions such as shell commands and network requests1345 | "auto"; // A model classifier reviews actions such as shell commands and network requests

1346```1346```


1349 1349 

1350Tipe fungsi izin kustom untuk mengontrol penggunaan tool.1350Tipe fungsi izin kustom untuk mengontrol penggunaan tool.

1351 1351 

1352Fungsi ini merupakan pengganti SDK untuk permintaan izin interaktif: fungsi ini hanya dipanggil ketika [alur evaluasi izin](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) berujung pada permintaan izin. Panggilan tool yang sudah disetujui oleh entri `allowedTools`, aturan allow dalam pengaturan, atau mode izin, seperti `acceptEdits` atau `bypassPermissions`, tidak pernah memanggilnya. Untuk mengendalikan setiap panggilan tool, gunakan [hook `PreToolUse`](https://code.claude.com/docs/id/agent-sdk/hooks) sebagai gantinya.1352Fungsi ini menggantikan dialog izin interaktif. SDK memanggil `canUseTool` ketika [alur evaluasi izin](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) berujung pada permintaan izin. Panggilan yang disetujui dengan salah satu cara berikut berjalan tanpa memanggil `canUseTool`:

1353 

1354* Panggilan yang disetujui oleh entri `allowedTools` atau aturan allow pengaturan

1355* Panggilan yang disetujui oleh mode izin, seperti pengeditan file dalam mode `acceptEdits`

1356 

1357Untuk memeriksa panggilan tersebut, gunakan [hook `PreToolUse`](https://code.claude.com/docs/id/agent-sdk/hooks), yang juga berjalan untuk panggilan tersebut.

1353 1358 

1354Aturan allow tidak menyetujui terlebih dahulu [tindakan yang tidak disetujui otomatis oleh mode mana pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves); lihat [Cara izin dievaluasi](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) untuk mengetahui tindakan mana yang mencapai callback dan apa yang terjadi dalam mode `dontAsk` dan `auto`.1359Aturan allow tidak menyetujui terlebih dahulu [tindakan yang tidak disetujui otomatis oleh mode mana pun](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves); lihat [Cara izin dievaluasi](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) untuk mengetahui tindakan mana yang mencapai callback dan apa yang terjadi dalam mode `dontAsk` dan `auto`.

1355 1360 


2006* Resume yang Claude Code hentikan karena tidak dapat [mengembalikan sesi ke worktree-nya](https://code.claude.com/docs/id/worktrees.md#the-session-resumes-outside-its-worktree), dengan `worktree_unverified` atau `worktree_resume_refused`. Bagian itu mengatakan kesalahan mana yang membawa nilai mana.2011* Resume yang Claude Code hentikan karena tidak dapat [mengembalikan sesi ke worktree-nya](https://code.claude.com/docs/id/worktrees.md#the-session-resumes-outside-its-worktree), dengan `worktree_unverified` atau `worktree_resume_refused`. Bagian itu mengatakan kesalahan mana yang membawa nilai mana.

2007* [`continue`](#options) yang ditolak dari percakapan yang dipegang sesi latar belakang, dengan `session_held_by_background`. Untuk [`resume`](#options) yang ditolak dari percakapan seperti itu, Claude Code menulis hasil hanya ketika variabel diatur.2012* [`continue`](#options) yang ditolak dari percakapan yang dipegang sesi latar belakang, dengan `session_held_by_background`. Untuk [`resume`](#options) yang ditolak dari percakapan seperti itu, Claude Code menulis hasil hanya ketika variabel diatur.

2008* Start yang ditolak Claude Code karena [`failIfUnavailable`](#sandboxsettings) aktif dan sandbox tidak dapat dimulai, dengan `sandbox_required_unavailable`.2013* Start yang ditolak Claude Code karena [`failIfUnavailable`](#sandboxsettings) aktif dan sandbox tidak dapat dimulai, dengan `sandbox_required_unavailable`.

2014* Start yang ditolak Claude Code karena `~/.claude.json` bukan JSON yang valid, dengan `config_file_invalid`.

2009 2015 

2010Tipe `SDKStartupFailureReason` mencantumkan nilai-nilai yang dapat dimuat `startup_failure_reason`:2016Tipe `SDKStartupFailureReason` mencantumkan nilai-nilai yang dapat dimuat `startup_failure_reason`:

2011 2017 


2030 | "bypass_root"2036 | "bypass_root"

2031 | "org_config_required_unavailable"2037 | "org_config_required_unavailable"

2032 | "org_config_refused"2038 | "org_config_refused"

2033 | "sandbox_required_unavailable";2039 | "sandbox_required_unavailable"

2040 | "config_file_invalid";

2034```2041```

2035 2042 

2036Setiap nilai menamai satu penolakan:2043Setiap nilai menamai satu penolakan:


2057| `org_config_required_unavailable` | Sesi memerlukan kebijakan dan pengaturan terkelola organisasi sebelum dapat dimulai, dan keduanya tidak dapat dimuat, misalnya karena kegagalan jaringan atau error server Anthropic. Memerlukan Agent SDK v0.3.293 atau lebih baru |2064| `org_config_required_unavailable` | Sesi memerlukan kebijakan dan pengaturan terkelola organisasi sebelum dapat dimulai, dan keduanya tidak dapat dimuat, misalnya karena kegagalan jaringan atau error server Anthropic. Memerlukan Agent SDK v0.3.293 atau lebih baru |

2058| `org_config_refused` | Anthropic menolak menyediakan kebijakan dan pengaturan terkelola organisasi untuk login ini, misalnya karena login kedaluwarsa atau dicabut, atau organisasi tidak mengizinkan Claude Code untuk akun ini. Memerlukan Agent SDK v0.3.293 atau lebih baru |2065| `org_config_refused` | Anthropic menolak menyediakan kebijakan dan pengaturan terkelola organisasi untuk login ini, misalnya karena login kedaluwarsa atau dicabut, atau organisasi tidak mengizinkan Claude Code untuk akun ini. Memerlukan Agent SDK v0.3.293 atau lebih baru |

2059| `sandbox_required_unavailable` | [`failIfUnavailable`](#sandboxsettings) aktif dan sandbox tidak dapat dimulai. Teks di `errors` diakhiri dengan `Set sandbox.failIfUnavailable=false to allow unsandboxed execution.` Memerlukan Agent SDK v0.3.314 atau yang lebih baru |2066| `sandbox_required_unavailable` | [`failIfUnavailable`](#sandboxsettings) aktif dan sandbox tidak dapat dimulai. Teks di `errors` diakhiri dengan `Set sandbox.failIfUnavailable=false to allow unsandboxed execution.` Memerlukan Agent SDK v0.3.314 atau yang lebih baru |

2067| `config_file_invalid` | `~/.claude.json` bukan JSON yang valid. Claude Code membiarkan file tidak berubah, sehingga retry gagal dengan cara yang sama hingga seseorang memperbaikinya. `errors` menyebut file tersebut dan menjelaskan cara memulihkan atau memperbaikinya. Lihat [Configuration error in \~/.claude.json](https://code.claude.com/docs/id/errors.md#configuration-error-in-claude-json). Memerlukan TypeScript Agent SDK v0.3.318 atau yang lebih baru dan Claude Code v2.1.318 atau yang lebih baru |

2060 2068 

2061### `SDKSystemMessage`2069### `SDKSystemMessage`

2062 2070 


6108 6116 

6109> [!NOTE]6117> [!NOTE]

6110>6118>

6111> Proxy sandbox bawaan memberlakukan `allowedDomains` berdasarkan nama host yang diminta dan tidak menghentikan atau memeriksa lalu lintas TLS, sehingga teknik seperti [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) dapat berpotensi melewatinya. Lihat [Batasan keamanan sandboxing](https://code.claude.com/docs/id/sandboxing.md#security-limitations) untuk detail dan [Penyebaran aman](https://code.claude.com/docs/id/agent-sdk/secure-deployment.md#traffic-forwarding) untuk mengonfigurasi proxy yang menghentikan TLS.6119> Proxy sandbox bawaan memberlakukan `allowedDomains` berdasarkan nama host yang diminta. Secara default, proxy tidak menghentikan atau memeriksa lalu lintas TLS, sehingga teknik seperti [domain fronting](https://en.wikipedia.org/wiki/Domain_fronting) dapat berpotensi melewati `allowedDomains`. Lihat [Batasan keamanan sandboxing](https://code.claude.com/docs/id/sandboxing.md#security-limitations) untuk detail dan [Deployment aman](https://code.claude.com/docs/id/agent-sdk/secure-deployment.md#traffic-forwarding) untuk mengonfigurasi proxy yang menghentikan TLS.

6112 6120 

6113### `SandboxFilesystemConfig`6121### `SandboxFilesystemConfig`

6114 6122 

Details

47Callback dipicu dalam dua kasus:47Callback dipicu dalam dua kasus:

48 48 

491. **Alat membutuhkan persetujuan**: Claude ingin menggunakan alat yang tidak disetujui secara otomatis oleh [aturan izin](https://code.claude.com/docs/id/agent-sdk/permissions.md) atau mode izin. Periksa `tool_name` untuk alat (misalnya, `"Bash"`, `"Write"`).491. **Alat membutuhkan persetujuan**: Claude ingin menggunakan alat yang tidak disetujui secara otomatis oleh [aturan izin](https://code.claude.com/docs/id/agent-sdk/permissions.md) atau mode izin. Periksa `tool_name` untuk alat (misalnya, `"Bash"`, `"Write"`).

502. **Claude mengajukan pertanyaan**: Claude memanggil alat `AskUserQuestion`. Periksa apakah `tool_name == "AskUserQuestion"` untuk menanganinya secara berbeda. Jika Anda menentukan array `tools`, sertakan `AskUserQuestion` agar ini berfungsi. Lihat [Menangani pertanyaan klarifikasi](#handle-clarifying-questions) untuk detail.502. **Claude mengajukan pertanyaan**: Claude memanggil tool `AskUserQuestion`. Periksa apakah `tool_name == "AskUserQuestion"` untuk menanganinya secara berbeda. Jika Anda menentukan array `tools`, sertakan `AskUserQuestion` agar ini berfungsi. Untuk informasi lebih lanjut, lihat [Menangani pertanyaan klarifikasi](#handle-clarifying-questions).

51 51 

52> [!WARNING]52> [!WARNING]

53>53>

54> **Callback tidak pernah dipicu untuk alat yang disetujui secara otomatis.** Setiap persetujuan sebelumnya dalam [alur evaluasi izin](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated), aturan izin atau mode seperti `acceptEdits` atau `bypassPermissions`, menyelesaikan panggilan sebelum `canUseTool` dikonsultasikan. Jika Anda mencantumkan alat secara langsung dalam `allowed_tools`, pemeriksaan `canUseTool` untuk alat tersebut berjalan hanya ketika [alur evaluasi](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) mengarahkan panggilan kembali ke prompt, seperti aturan ask atau mode `plan`. Untuk logika yang harus diterapkan ke setiap panggilan alat, gunakan [hook `PreToolUse`](https://code.claude.com/docs/id/agent-sdk/hooks), yang dijalankan sebelum sisa alur dan dapat mengizinkan, menolak, atau memodifikasi permintaan.54> **Langkah sebelumnya dapat mengizinkan atau menolak panggilan sebelum `canUseTool` dijalankan.** [Alur evaluasi izin](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) memeriksa aturan deny, mode izin, dan aturan allow sebelum callback Anda.

55>55>

56> Aturan izin tidak pra-menyetujui [tindakan yang tidak ada mode yang menyetujui secara otomatis](https://code.claude.com/docs/id/permission-modes.md#actions-no-mode-auto-approves); lihat [Cara izin dievaluasi](https://code.claude.com/docs/id/agent-sdk/permissions.md#how-permissions-are-evaluated) untuk mengetahui mana dari mereka yang mencapai callback dan apa yang terjadi dalam mode `dontAsk` dan `auto`.56> Untuk menjalankan pemeriksaan Anda pada panggilan yang sudah diizinkan oleh aturan atau mode izin, gunakan [hook `PreToolUse`](https://code.claude.com/docs/id/agent-sdk/hooks), yang dijalankan untuk panggilan tersebut dan dapat mengizinkan, menolak, atau memodifikasinya.

57 57 

58Anda juga dapat menggunakan [hook `PermissionRequest`](https://code.claude.com/docs/id/agent-sdk/hooks#available-hooks) untuk mengirim notifikasi eksternal (Slack, email, push) ketika Claude menunggu persetujuan.58Anda juga dapat menggunakan [hook `PermissionRequest`](https://code.claude.com/docs/id/agent-sdk/hooks#available-hooks) untuk mengirim notifikasi eksternal (Slack, email, push) ketika Claude menunggu persetujuan.

59 59 

agent-view.md +2 −2

Details

1020 1020 

1021Di macOS, host sesi latar belakang berjalan sebagai prosesnya sendiri dan meminta akses ke folder yang dilindungi secara terpisah dari terminal Anda. Jika sesi latar belakang melaporkan `Operation not permitted` saat membaca `~/Desktop`, `~/Documents`, `~/Downloads`, atau lokasi yang dilindungi lainnya, berikan akses di System Settings di bawah Privacy & Security > Files and Folders, atau aktifkan Full Disk Access untuk entri tersebut.1021Di macOS, host sesi latar belakang berjalan sebagai prosesnya sendiri dan meminta akses ke folder yang dilindungi secara terpisah dari terminal Anda. Jika sesi latar belakang melaporkan `Operation not permitted` saat membaca `~/Desktop`, `~/Documents`, `~/Downloads`, atau lokasi yang dilindungi lainnya, berikan akses di System Settings di bawah Privacy & Security > Files and Folders, atau aktifkan Full Disk Access untuk entri tersebut.

1022 1022 

1023Dengan installer asli, entri muncul sebagai Claude Code dan pemberian akses tetap ada di seluruh pembaruan. Dengan metode instalasi lain seperti Homebrew atau npm, entri menampilkan jalur biner dan mungkin perlu diberikan akses lagi setelah memperbarui.1023Di kedua daftar tersebut, cari entri bernama Claude Code, atau entri yang dinamai sesuai jalur atau nama file biner `claude`. Nama file tersebut dapat berupa nomor versi seperti `2.1.316`. Jika `Operation not permitted` muncul kembali setelah Claude Code diperbarui, cari entri baru, seperti entri yang dinamai sesuai versi baru. Jika ada, berikan akses ke entri tersebut.

1024 1024 

1025### Sesi latar belakang tidak dapat menjangkau host jaringan lokal di macOS1025### Sesi latar belakang tidak dapat menjangkau host jaringan lokal di macOS

1026 1026 


1067| v2.1.296 | Prompt atau perintah shell `!` yang Anda masukkan [saat sesi berpindah ke latar belakang](#switch-sessions-without-leaving-the-terminal) dihentikan atau dibiarkan tidak terkirim, dan teksnya disimpan dalam riwayat prompt. Sebelum rilis ini, respons atau perintah terus berjalan di tempat yang tidak lagi dapat Anda lihat, dan prompt yang dikirim tepat setelah `←` bisa berjalan untuk kedua kalinya tanpa terlihat. Prompt yang diketik sementara hook `SessionStart` masih berjalan hilang: tidak terkirim, dan tidak ada dalam riwayat prompt. |1067| v2.1.296 | Prompt atau perintah shell `!` yang Anda masukkan [saat sesi berpindah ke latar belakang](#switch-sessions-without-leaving-the-terminal) dihentikan atau dibiarkan tidak terkirim, dan teksnya disimpan dalam riwayat prompt. Sebelum rilis ini, respons atau perintah terus berjalan di tempat yang tidak lagi dapat Anda lihat, dan prompt yang dikirim tepat setelah `←` bisa berjalan untuk kedua kalinya tanpa terlihat. Prompt yang diketik sementara hook `SessionStart` masih berjalan hilang: tidak terkirim, dan tidak ada dalam riwayat prompt. |

1068| v2.1.295 | `Ctrl+C` pada prompt idle dari [sesi latar belakang yang terpasang](#attach-to-a-session) membiarkan wakeup tertunda dari [`/loop` dengan tempo sendiri](https://code.claude.com/docs/id/scheduled-tasks#let-claude-choose-the-interval) tetap utuh, sehingga menekannya dua kali melepaskan sesi dan loop terus berjalan. `Esc` pada prompt itu [menghentikan loop dengan tempo sendiri](https://code.claude.com/docs/id/scheduled-tasks.md#stop-a-loop) dan menampilkan pemberitahuan `Pending wakeup cancelled`. Sebelum rilis ini, `Ctrl+C` pertama bisa mengakhiri loop dengan tempo sendiri tanpa pemberitahuan, dan `Esc` tidak menghentikan loop yang telah berpindah ke latar belakang bersama sesi. |1068| v2.1.295 | `Ctrl+C` pada prompt idle dari [sesi latar belakang yang terpasang](#attach-to-a-session) membiarkan wakeup tertunda dari [`/loop` dengan tempo sendiri](https://code.claude.com/docs/id/scheduled-tasks#let-claude-choose-the-interval) tetap utuh, sehingga menekannya dua kali melepaskan sesi dan loop terus berjalan. `Esc` pada prompt itu [menghentikan loop dengan tempo sendiri](https://code.claude.com/docs/id/scheduled-tasks.md#stop-a-loop) dan menampilkan pemberitahuan `Pending wakeup cancelled`. Sebelum rilis ini, `Ctrl+C` pertama bisa mengakhiri loop dengan tempo sendiri tanpa pemberitahuan, dan `Esc` tidak menghentikan loop yang telah berpindah ke latar belakang bersama sesi. |

1069| v2.1.295 | Di macOS dan Linux, ketika `claude agents` keluar sementara tidak ada [supervisor](#keep-sessions-running-after-the-supervisor-stops) yang berjalan, ia tidak memulai supervisor baru dengan sendirinya. Sesi yang sedang berjalan kemudian berhenti sekitar satu menit kemudian kecuali Anda menjalankan `claude agents` lagi, dan agent view dapat mencetak pemberitahuan tentang hal itu saat keluar. Sebelum rilis ini, `claude agents` yang keluar memulai supervisor baru. |1069| v2.1.295 | Di macOS dan Linux, ketika `claude agents` keluar sementara tidak ada [supervisor](#keep-sessions-running-after-the-supervisor-stops) yang berjalan, ia tidak memulai supervisor baru dengan sendirinya. Sesi yang sedang berjalan kemudian berhenti sekitar satu menit kemudian kecuali Anda menjalankan `claude agents` lagi, dan agent view dapat mencetak pemberitahuan tentang hal itu saat keluar. Sebelum rilis ini, `claude agents` yang keluar memulai supervisor baru. |

1070| v2.1.295 | Di macOS dengan installer native, sesi latar belakang yang dimulai ulang bersamaan setelah pembaruan berjalan di bawah entri Claude Code yang sama yang memegang [akses folder terlindungi](#background-sessions-can’t-read-desktop-documents-or-downloads-on-macos) yang Anda berikan. Sebelum rilis ini, sesi tersebut bisa berjalan di bawah path biner itu sendiri. macOS mencantumkan path itu sebagai entri terpisah, sehingga permintaan akses folder bisa muncul kembali setelah pembaruan. |1070| v2.1.295 | Di macOS dengan installer native, sesi latar belakang yang dimulai ulang bersamaan setelah pembaruan menjalankan proses host-nya dari folder `~/.local/share/claude/ClaudeCode.app` yang sama. Sebelum rilis ini, proses tersebut bisa berjalan dari path biner itu sendiri. macOS dapat mencantumkan path itu sebagai entri terpisah, sehingga [permintaan akses folder](#background-sessions-can’t-read-desktop-documents-or-downloads-on-macos) bisa muncul kembali setelah pembaruan. |

1071| v2.1.290 | [`claude attach` dan `claude logs`](#manage-sessions-from-the-shell) dapat menerima sebagian nama sesi sebagai pengganti ID. |1071| v2.1.290 | [`claude attach` dan `claude logs`](#manage-sessions-from-the-shell) dapat menerima sebagian nama sesi sebagai pengganti ID. |

1072| v2.1.290 | `/model`, `/effort`, `/rename`, dan `/usage` yang dikirim sebagai [balasan intip](#peek-and-reply) ke sesi yang sedang bekerja langsung dijalankan. |1072| v2.1.290 | `/model`, `/effort`, `/rename`, dan `/usage` yang dikirim sebagai [balasan intip](#peek-and-reply) ke sesi yang sedang bekerja langsung dijalankan. |

1073| v2.1.290 | [Balasan intip](#peek-and-reply) yang tidak dapat dikirimkan tidak lagi disimpan untuk restart berikutnya ketika diawali dengan `/`, atau ketika menjawab pertanyaan dengan pilihan yang telah ditentukan sementara proses sesi sedang berjalan. |1073| v2.1.290 | [Balasan intip](#peek-and-reply) yang tidak dapat dikirimkan tidak lagi disimpan untuk restart berikutnya ketika diawali dengan `/`, atau ketika menjawab pertanyaan dengan pilihan yang telah ditentukan sementara proses sesi sedang berjalan. |

Details

459export ANTHROPIC_BEDROCK_SERVICE_TIER=priority459export ANTHROPIC_BEDROCK_SERVICE_TIER=priority

460```460```

461 461 

462Claude Code mengirimkan ini sebagai header `X-Amzn-Bedrock-Service-Tier` pada setiap permintaan. Ketersediaan tingkat bervariasi menurut model dan wilayah. Kapasitas yang dicadangkan menggunakan [throughput yang disediakan](https://docs.aws.amazon.com/bedrock/latest/userguide/prov-throughput.html) ARN sebagai ID model alih-alih pengaturan ini.462Claude Code mengirimkan ini sebagai header `X-Amzn-Bedrock-Service-Tier` pada setiap permintaan [Invoke API](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html) dari sesi yang memiliki variabel tersebut, kecuali [pemeriksaan akses model](#startup-model-checks)-nya. Mengaturnya tidak berpengaruh pada permintaan ke [endpoint Mantle](#use-the-mantle-endpoint) atau melalui [gateway aplikasi Claude](https://code.claude.com/docs/id/claude-apps-gateway). Ketersediaan tingkat bervariasi menurut model dan wilayah. Kapasitas yang dicadangkan menggunakan [throughput yang disediakan](https://docs.aws.amazon.com/bedrock/latest/userguide/prov-throughput.html) ARN sebagai ID model alih-alih pengaturan ini.

463 

464Untuk mencakup [sesi latar belakang](https://code.claude.com/docs/id/agent-view.md#settings-and-provider) yang Anda mulai dari terminal, atur `ANTHROPIC_BEDROCK_SERVICE_TIER` di blok [`env`](https://code.claude.com/docs/id/settings-reference#env) pada pengaturan Anda. Sesi tersebut mendapatkan nilai yang Anda ekspor hanya jika shell yang memulai [supervisor](https://code.claude.com/docs/id/agent-view.md#the-supervisor-process) telah mengekspornya.

463 465 

464## AWS Guardrails466## AWS Guardrails

465 467 


487 489 

488### Aktifkan Mantle490### Aktifkan Mantle

489 491 

490Dengan kredensial AWS sudah dikonfigurasi, atur `CLAUDE_CODE_USE_MANTLE` untuk merutekan permintaan ke endpoint Mantle:492Dengan kredensial AWS sudah dikonfigurasi, atur `CLAUDE_CODE_USE_MANTLE` dan wilayah AWS Anda:

491 493 

492```bash theme={null}494```bash theme={null}

493export CLAUDE_CODE_USE_MANTLE=1495export CLAUDE_CODE_USE_MANTLE=1


587 589 

588* Tentukan model sebagai ID [profil inferensi](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html)590* Tentukan model sebagai ID [profil inferensi](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html)

589 591 

590Claude Code menggunakan Amazon Bedrock [Invoke API](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html) dan tidak mendukung Converse API.

591 

592### Kesalahan streaming di belakang gateway atau proxy592### Kesalahan streaming di belakang gateway atau proxy

593 593 

594Amazon 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.594Amazon 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.


618* Jika kesalahan menyebutkan tindakan `bedrock-mantle:`, berikan identitas IAM Anda tindakan itu.618* Jika kesalahan menyebutkan tindakan `bedrock-mantle:`, berikan identitas IAM Anda tindakan itu.

619* Jika kesalahan tidak menyebutkan tindakan dan kredensial Anda valid, akun AWS Anda belum diberikan akses ke model yang Anda minta. Hubungi tim akun AWS Anda untuk meminta akses.619* Jika kesalahan tidak menyebutkan tindakan dan kredensial Anda valid, akun AWS Anda belum diberikan akses ke model yang Anda minta. Hubungi tim akun AWS Anda untuk meminta akses.

620 620 

621A `400` yang menyebutkan ID model berarti model itu tidak dilayani di Mantle. Mantle memiliki lineup model sendiri yang terpisah dari katalog Bedrock standar, jadi ID profil inferensi seperti `us.anthropic.claude-sonnet-4-6` tidak akan berfungsi. Gunakan ID format Mantle, atau aktifkan [kedua endpoint](#run-mantle-alongside-the-invoke-api) sehingga Claude Code merutekan setiap permintaan ke endpoint tempat model tersedia.621`400` yang menyebutkan ID model berarti model itu tidak dilayani di Mantle. Mantle memiliki lineup model sendiri yang terpisah dari katalog Amazon Bedrock standar, jadi ID profil inferensi seperti `us.anthropic.claude-sonnet-4-6` tidak berfungsi. Gunakan ID format Mantle, atau aktifkan [kedua endpoint](#run-mantle-alongside-the-invoke-api) sehingga Claude Code mengirimkan ID profil inferensi ke Invoke API.

622 622 

623## Sumber daya tambahan623## Sumber daya tambahan

624 624 

Details

155- Integration tests need DATABASE_URL set, see .env.example155- Integration tests need DATABASE_URL set, see .env.example

156```156```

157 157 

158Dalam sesi, jalankan `/context` untuk mengonfirmasi bahwa Claude memuat file tersebut.158Dalam sesi, jalankan [`/context all`](https://code.claude.com/docs/id/commands#all-commands) untuk mengonfirmasi bahwa Claude memuat file tersebut.

159 159 

160Perhatikan bahwa baris typecheck hanya berisi perintahnya. Claude perlu mengetahui perintah tersebut agar dapat memeriksa pekerjaannya sendiri sambil berjalan. Jika Anda juga ingin Claude Code *menegakkan* typecheck yang lulus sebelum Claude selesai, itu tugas untuk [hook `Stop`](#enforce-the-check-with-a-stop-hook). Baris seperti `Always typecheck before you finish` di file ini berhasil hampir sepanjang waktu, tetapi tidak setiap saat.160Perhatikan bahwa baris typecheck hanya berisi perintahnya. Claude perlu mengetahui perintah tersebut agar dapat memeriksa pekerjaannya sendiri sambil berjalan. Jika Anda juga ingin Claude Code *menegakkan* typecheck yang lulus sebelum Claude selesai, itu tugas untuk [hook `Stop`](#enforce-the-check-with-a-stop-hook). Baris seperti `Always typecheck before you finish` di file ini berhasil hampir sepanjang waktu, tetapi tidak setiap saat.

161 161 


544Dalam skrip, Anda hampir selalu menginginkan beberapa flag tambahan:544Dalam skrip, Anda hampir selalu menginginkan beberapa flag tambahan:

545 545 

546* [`--bare`](https://code.claude.com/docs/id/headless#start-faster-with-bare-mode) melewati hook, skill, plugin, server MCP, dan file `CLAUDE.md`, baik milik repo maupun milik mesin, sehingga run melakukan hal yang sama di mana pun dijalankan. Flag ini juga tidak pernah menyentuh login claude.ai Anda: autentikasi berasal dari `ANTHROPIC_API_KEY`, `apiKeyHelper` di file yang Anda berikan dengan `--settings`, atau kredensial penyedia cloud Anda.546* [`--bare`](https://code.claude.com/docs/id/headless#start-faster-with-bare-mode) melewati hook, skill, plugin, server MCP, dan file `CLAUDE.md`, baik milik repo maupun milik mesin, sehingga run melakukan hal yang sama di mana pun dijalankan. Flag ini juga tidak pernah menyentuh login claude.ai Anda: autentikasi berasal dari `ANTHROPIC_API_KEY`, `apiKeyHelper` di file yang Anda berikan dengan `--settings`, atau kredensial penyedia cloud Anda.

547* `--append-system-prompt`, `--mcp-config`, dan `--settings` memasukkan apa pun yang *memang* dibutuhkan run, secara eksplisit.547* `--append-system-prompt`, `--mcp-config`, dan `--settings` memasukkan apa pun yang *memang* dibutuhkan run, secara eksplisit. Hook yang Anda berikan dengan `--settings` [tidak berjalan di bawah `--bare`](https://code.claude.com/docs/id/headless#start-faster-with-bare-mode), jadi jangan gunakan `--bare` untuk run yang membutuhkannya.

548* `--allowedTools` menyetujui tool-nya terlebih dahulu, dan [`--permission-mode dontAsk`](https://code.claude.com/docs/id/permission-modes#allow-only-pre-approved-tools-with-dontask-mode) menolak apa pun lainnya yang seharusnya memunculkan permintaan izin.548* `--allowedTools` menyetujui tool-nya terlebih dahulu, dan [`--permission-mode dontAsk`](https://code.claude.com/docs/id/permission-modes#allow-only-pre-approved-tools-with-dontask-mode) menolak apa pun lainnya yang seharusnya memunculkan permintaan izin.

549* `--output-format json` memberi Anda satu objek hasil untuk di-parse, dan `stream-json` dengan `--verbose` mengalirkan event saat terjadi.549* `--output-format json` memberi Anda satu objek hasil untuk di-parse, dan `stream-json` dengan `--verbose` mengalirkan event saat terjadi.

550 550 

Details

494 494 

495* Jika STS menolak atau tidak dapat dijangkau, gateway tidak mengirim permintaan dengan kredensial milik upstream sendiri. Gateway mencatat error STS beserta apa yang perlu diperiksa, lalu mencoba upstream berikutnya yang Anda cantumkan. [Pesan error upstream](#upstream-error-messages) menjelaskan apa yang diterima klien ketika tidak ada upstream yang berhasil. Upstream berikutnya tanpa `assume_role` akan melayani permintaan dengan kredensialnya sendiri, jadi cantumkan upstream seperti itu hanya jika memang itu yang Anda inginkan.495* Jika STS menolak atau tidak dapat dijangkau, gateway tidak mengirim permintaan dengan kredensial milik upstream sendiri. Gateway mencatat error STS beserta apa yang perlu diperiksa, lalu mencoba upstream berikutnya yang Anda cantumkan. [Pesan error upstream](#upstream-error-messages) menjelaskan apa yang diterima klien ketika tidak ada upstream yang berhasil. Upstream berikutnya tanpa `assume_role` akan melayani permintaan dengan kredensialnya sendiri, jadi cantumkan upstream seperti itu hanya jika memang itu yang Anda inginkan.

496* Gateway memanggil endpoint STS regional `sts.<region>.amazonaws.com`, yang harus dapat dijangkau jaringannya. Untuk endpoint FIPS, atur `AWS_USE_FIPS_ENDPOINT=true` di lingkungan gateway alih-alih `use_fips_endpoint` di file konfigurasi AWS.496* Gateway memanggil endpoint STS regional `sts.<region>.amazonaws.com`, yang harus dapat dijangkau jaringannya. Untuk endpoint FIPS, atur `AWS_USE_FIPS_ENDPOINT=true` di lingkungan gateway alih-alih `use_fips_endpoint` di file konfigurasi AWS.

497* `assume_role` hanya berlaku untuk `provider: bedrock` dan memerlukan kredensial sumber SigV4: gateway menolak untuk dimulai ketika diatur bersama `aws_bearer_token`.497* `assume_role` memerlukan kredensial sumber SigV4: gateway menolak untuk mulai jika diatur bersama `aws_bearer_token`.

498* Tanpa [daftar `groups`](#send-each-team-to-its-own-upstream), setiap developer yang diizinkan gateway dapat menggunakan upstream ini. Untuk membatasi model mana yang dapat digunakan developer, atur `availableModels` dalam kebijakan [`managed`](#managed).498* Tanpa [daftar `groups`](#send-each-team-to-its-own-upstream), setiap developer yang diizinkan gateway dapat menggunakan upstream ini. Untuk membatasi model mana yang dapat digunakan developer, atur `availableModels` dalam kebijakan [`managed`](#managed).

499* Agar model yang dilayani melalui role tersebut tidak juga dilayani dari akun lain, berikan id kustom yang peta `upstream_model`-nya hanya berisi nama upstream ini. Untuk id seperti itu, gateway melewati setiap upstream lain, sehingga baik permintaan maupun penghitungan token untuk permintaan yang dibatalkan tidak dapat melakukan failover ke akun lain.499* Agar model yang dilayani melalui role tersebut tidak juga dilayani dari akun lain, berikan id kustom yang peta `upstream_model`-nya hanya berisi nama upstream ini. Untuk id seperti itu, gateway melewati setiap upstream lain, sehingga baik permintaan maupun penghitungan token untuk permintaan yang dibatalkan tidak dapat melakukan failover ke akun lain.

500* Permintaan untuk nama model bawaan masih dapat [mencapai upstream ini](#multiple-upstreams), dan gateway menandatanganinya dengan role yang sama. Cantumkan upstream ini paling akhir kecuali akunnya juga harus melayani model-model tersebut.500* Permintaan untuk nama model bawaan masih dapat [mencapai upstream ini](#multiple-upstreams), dan gateway menandatanganinya dengan role yang sama. Cantumkan upstream ini paling akhir kecuali akunnya juga harus melayani model-model tersebut.


556| `region` | Ya | Region AWS. Gateway menurunkan endpoint darinya sebagai `https://bedrock-mantle.<region>.api.aws/anthropic`. |556| `region` | Ya | Region AWS. Gateway menurunkan endpoint darinya sebagai `https://bedrock-mantle.<region>.api.aws/anthropic`. |

557| `models` | Ya | Model yang telah diberikan kepada akun AWS Anda di Mantle, dinamai seperti yang dikirim klien, seperti `claude-haiku-4-5`. Hanya model ini yang dikirim ke upstream ini, dan setiap model lain dilewatkan ke upstream berikutnya. |557| `models` | Ya | Model yang telah diberikan kepada akun AWS Anda di Mantle, dinamai seperti yang dikirim klien, seperti `claude-haiku-4-5`. Hanya model ini yang dikirim ke upstream ini, dan setiap model lain dilewatkan ke upstream berikutnya. |

558| `auth` | Tidak | Menerima kunci yang sama seperti blok `auth` pada upstream [Amazon Bedrock](#amazon-bedrock), dengan aturan yang sama. |558| `auth` | Tidak | Menerima kunci yang sama seperti blok `auth` pada upstream [Amazon Bedrock](#amazon-bedrock), dengan aturan yang sama. |

559| `assume_role` | Tidak | Role yang dilalui oleh permintaan upstream ini, dengan kunci yang sama seperti [pada upstream `bedrock`](#bedrock-in-another-aws-account), termasuk `session_name` untuk [atribusi per developer](#per-developer-aws-cost-attribution). Berikan role tersebut aksi IAM Mantle. Memerlukan gateway yang menjalankan Claude Code v2.1.318 atau yang lebih baru. Gateway versi sebelumnya keluar saat startup dengan `Unrecognized key(s) in object: 'assume_role'`. |

559| `base_url` | Tidak | Menimpa endpoint yang diturunkan. Pertahankan path `/anthropic` di akhir. |560| `base_url` | Tidak | Menimpa endpoint yang diturunkan. Pertahankan path `/anthropic` di akhir. |

560 561 

561Berikan identitas AWS upstream tersebut aksi IAM milik Mantle sendiri untuk inferensi dan penghitungan token, yang dicantumkan di [Menggunakan endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#use-the-mantle-endpoint).562Berikan identitas AWS upstream tersebut aksi IAM milik Mantle sendiri untuk inferensi dan penghitungan token, yang dicantumkan di [Menggunakan endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#use-the-mantle-endpoint).


565Pengaturan `guardrail` dan `assume_role` dari upstream `bedrock` tidak berlaku untuk permintaan yang dilayani Mantle:566Pengaturan `guardrail` dan `assume_role` dari upstream `bedrock` tidak berlaku untuk permintaan yang dilayani Mantle:

566 567 

567* **`guardrail`**: gateway tidak menerapkan [guardrail Bedrock](#apply-an-amazon-bedrock-guardrail) pada permintaan yang dikirimnya ke Mantle, sehingga gateway menolak untuk dimulai ketika upstream `mantle` dicantumkan sementara ada upstream `bedrock` yang mengatur `guardrail`.568* **`guardrail`**: gateway tidak menerapkan [guardrail Bedrock](#apply-an-amazon-bedrock-guardrail) pada permintaan yang dikirimnya ke Mantle, sehingga gateway menolak untuk dimulai ketika upstream `mantle` dicantumkan sementara ada upstream `bedrock` yang mengatur `guardrail`.

568* **`assume_role`**: upstream `mantle` tidak menerima [`assume_role`](#bedrock-in-another-aws-account). Permintaan yang dilayani Mantle dikirim dengan kredensial `auth` milik upstream `mantle` sendiri, dan tidak [diatribusikan per developer](#per-developer-aws-cost-attribution).569* **`assume_role`**: atur pada upstream `mantle` itu sendiri. Tanpanya, permintaan yang dilayani Mantle dikirim dengan kredensial `auth` milik upstream `mantle` sendiri.

569 570 

570Untuk arti respons error milik Mantle sendiri, lihat [Error endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#mantle-endpoint-errors).571Untuk arti respons error milik Mantle sendiri, lihat [Error endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#mantle-endpoint-errors).

571 572 

Details

424| 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`](https://code.claude.com/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`](https://code.claude.com/docs/id/claude-apps-gateway-config#session). Lihat [Penyiapan penyedia identitas](#identity-provider-setup) untuk tradeoff deprovisioning. |424| 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`](https://code.claude.com/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`](https://code.claude.com/docs/id/claude-apps-gateway-config#session). Lihat [Penyiapan penyedia identitas](#identity-provider-setup) untuk tradeoff deprovisioning. |

425| Pengembang masuk, lalu setiap permintaan dari sesi itu gagal dengan kesalahan `431` | Token sesi dalam header `Authorization` setiap permintaan mencantumkan grup IdP pengembang, sehingga untuk pengembang yang berada di banyak grup, total header dapat melebihi yang diterima gateway | Lihat [Header permintaan terlalu besar setelah masuk](#request-headers-too-large-after-sign-in) untuk batas mana yang berlaku dan apa yang perlu diubah |425| Pengembang masuk, lalu setiap permintaan dari sesi itu gagal dengan kesalahan `431` | Token sesi dalam header `Authorization` setiap permintaan mencantumkan grup IdP pengembang, sehingga untuk pengembang yang berada di banyak grup, total header dapat melebihi yang diterima gateway | Lihat [Header permintaan terlalu besar setelah masuk](#request-headers-too-large-after-sign-in) untuk batas mana yang berlaku dan apa yang perlu diubah |

426| Setiap permintaan Amazon Bedrock mengembalikan 502; log menunjukkan `Could not load credentials from any providers` | Di EC2, batas hop default IMDSv2 sebesar 1 memblokir permintaan metadata instance dari dalam kontainer. Boot dan `/readyz` lulus bagaimanapun karena AWS SDK menyelesaikan kredensial instance pada permintaan pertama, bukan pada konstruksi klien | Naikkan batas hop dengan `aws ec2 modify-instance-metadata-options --instance-id <id> --http-put-response-hop-limit 2`, atau atur dalam template peluncuran. Perubahan berlaku untuk setiap kontainer pada instance. Lebih suka peran tugas ECS di mana tersedia, yang membaca kredensial dari endpoint kredensial kontainer ECS dan menghindari perubahan sepenuhnya, atau terapkan perubahan pada instance gateway khusus untuk membatasi eksposur. |426| Setiap permintaan Amazon Bedrock mengembalikan 502; log menunjukkan `Could not load credentials from any providers` | Di EC2, batas hop default IMDSv2 sebesar 1 memblokir permintaan metadata instance dari dalam kontainer. Boot dan `/readyz` lulus bagaimanapun karena AWS SDK menyelesaikan kredensial instance pada permintaan pertama, bukan pada konstruksi klien | Naikkan batas hop dengan `aws ec2 modify-instance-metadata-options --instance-id <id> --http-put-response-hop-limit 2`, atau atur dalam template peluncuran. Perubahan berlaku untuk setiap kontainer pada instance. Lebih suka peran tugas ECS di mana tersedia, yang membaca kredensial dari endpoint kredensial kontainer ECS dan menghindari perubahan sepenuhnya, atau terapkan perubahan pada instance gateway khusus untuk membatasi eksposur. |

427| Log: peringatan yang berisi `upstream <name>: Google issued an access token that expires in <N>s`, pada upstream yang file kredensial Google-nya memiliki tipe `external_account` | Permintaan berhasil hingga token akses tersebut kedaluwarsa, lalu gagal kecuali token yang ditunjuk oleh `credential_source` telah diperbarui terlebih dahulu. | Jika suatu proses menulis token tersebut ke file, minta proses itu menulis token baru lebih dari lima menit sebelum token lama kedaluwarsa |

427| Pada beban puncak, respons lambat dimulai atau tampak hang, atau gagal dengan 502 `all upstreams failed` sementara upstream sehat | Replika memiliki lebih banyak permintaan terbuka daripada yang dikirimnya upstream sekaligus, jadi permintaan ekstra menunggu di dalam gateway. Pada upstream `provider: anthropic`, permintaan yang menunggu lebih lama dari `timeouts.upstream_ttfb_ms` menyerah pada upstream itu, yang menghasilkan 502 ketika tidak ada upstream yang melayaninya kemudian. Log menampilkan peringatan yang berisi `client requests are open`. | Tambahkan replika, atau naikkan batas pada setiap replika. Lihat [Permintaan upstream bersamaan](#concurrent-upstream-requests). |428| Pada beban puncak, respons lambat dimulai atau tampak hang, atau gagal dengan 502 `all upstreams failed` sementara upstream sehat | Replika memiliki lebih banyak permintaan terbuka daripada yang dikirimnya upstream sekaligus, jadi permintaan ekstra menunggu di dalam gateway. Pada upstream `provider: anthropic`, permintaan yang menunggu lebih lama dari `timeouts.upstream_ttfb_ms` menyerah pada upstream itu, yang menghasilkan 502 ketika tidak ada upstream yang melayaninya kemudian. Log menampilkan peringatan yang berisi `client requests are open`. | Tambahkan replika, atau naikkan batas pada setiap replika. Lihat [Permintaan upstream bersamaan](#concurrent-upstream-requests). |

428| Pada upstream selain `provider: anthropic`, giliran dengan jeda thinking yang panjang gagal. Proxy di depan gateway mencatat satu permintaan yang tetap terbuka sekitar 12,5 menit, lalu serangkaian kesalahan `504` | Claude Code mengakhiri stream yang telah mengirimkan peristiwa respons pertamanya lalu hanya membawa ping keepalive. Claude Code mengirim ulang permintaan tanpa streaming, dan setiap balasan memakan waktu lebih lama daripada timeout proxy. | Naikkan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` untuk pengembang Anda. Lihat [Thinking panjang berakhir dengan timeout proxy](#long-thinking-ends-in-proxy-timeouts). |429| Pada upstream selain `provider: anthropic`, giliran dengan jeda thinking yang panjang gagal. Proxy di depan gateway mencatat satu permintaan yang tetap terbuka sekitar 12,5 menit, lalu serangkaian kesalahan `504` | Claude Code mengakhiri stream yang telah mengirimkan peristiwa respons pertamanya lalu hanya membawa ping keepalive. Claude Code mengirim ulang permintaan tanpa streaming, dan setiap balasan memakan waktu lebih lama daripada timeout proxy. | Naikkan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` untuk pengembang Anda. Lihat [Thinking panjang berakhir dengan timeout proxy](#long-thinking-ends-in-proxy-timeouts). |

429| Pada `provider: anthropic`, giliran dengan jeda thinking yang panjang gagal. Proxy mencatat satu permintaan terbuka sekitar 20 menit, lalu kesalahan `502` atau `504` | Claude Code mengakhiri stream yang telah mengirimkan peristiwa respons pertamanya lalu hanya membawa ping keepalive. Claude Code mengirim ulang permintaan tanpa streaming, dan setiap balasan memakan waktu lebih lama daripada waktu tunggu gateway pada upstream, `timeouts.upstream_ttfb_ms`, atau timeout proxy. | Naikkan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` untuk pengembang Anda. Lihat [Thinking panjang pada upstream Anthropic API](#long-thinking-on-an-anthropic-api-upstream). |430| Pada `provider: anthropic`, giliran dengan jeda thinking yang panjang gagal. Proxy mencatat satu permintaan terbuka sekitar 20 menit, lalu kesalahan `502` atau `504` | Claude Code mengakhiri stream yang telah mengirimkan peristiwa respons pertamanya lalu hanya membawa ping keepalive. Claude Code mengirim ulang permintaan tanpa streaming, dan setiap balasan memakan waktu lebih lama daripada waktu tunggu gateway pada upstream, `timeouts.upstream_ttfb_ms`, atau timeout proxy. | Naikkan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` untuk pengembang Anda. Lihat [Thinking panjang pada upstream Anthropic API](#long-thinking-on-an-anthropic-api-upstream). |

Details

131| `session-env/` | Metadata lingkungan per-sesi |131| `session-env/` | Metadata lingkungan per-sesi |

132| `tasks/` | Daftar tugas yang ditulis oleh alat tugas, satu direktori per daftar |132| `tasks/` | Daftar tugas yang ditulis oleh alat tugas, satu direktori per daftar |

133| `shell-snapshots/` | Alias, fungsi, dan opsi shell yang ditangkap saat startup dan diterapkan oleh [alat Bash](https://code.claude.com/docs/id/tools-reference.md#bash-tool-behavior) ke setiap perintah. Dihapus saat keluar dengan bersih. Sweep menghapus yang tertinggal setelah crash. |133| `shell-snapshots/` | Alias, fungsi, dan opsi shell yang ditangkap saat startup dan diterapkan oleh [alat Bash](https://code.claude.com/docs/id/tools-reference.md#bash-tool-behavior) ke setiap perintah. Dihapus saat keluar dengan bersih. Sweep menghapus yang tertinggal setelah crash. |

134| `backups/` | Versi sebelumnya dari `~/.claude.json`, disalin saat Claude Code menulis ulang file. Claude Code menyimpan lima terbaru, ditambah salinan versi apa pun yang tidak dapat diuraikan. |134| `backups/` | Versi sebelumnya dari `~/.claude.json`, disalin saat Claude Code menulis ulang file. Claude Code menyimpan lima salinan terbaru, ditambah salinan versi apa pun yang tidak dapat diuraikan. Setelah melewati batas usia, salinan terakhir yang menyimpan konfigurasi Anda juga dihapus. Jika file saat ini dapat diuraikan, menyimpan konfigurasi Anda, dan berukuran di bawah 8 MiB, Anda akan memiliki salinan baru dari file tersebut. |

135| `feedback-bundles/` | Arsip transkrip yang disunting ditulis oleh `/feedback` pada penyedia pihak ketiga atau saat tidak ada kredensial Anthropic yang dikonfigurasi, untuk dikirim ke tim akun Anthropic Anda |135| `feedback-bundles/` | Arsip transkrip yang disunting ditulis oleh `/feedback` pada penyedia pihak ketiga atau saat tidak ada kredensial Anthropic yang dikonfigurasi, untuk dikirim ke tim akun Anthropic Anda |

136| `feedback/drafts/` | Antrian [umpan balik yang dirancang Claude](https://code.claude.com/docs/id/tools-reference.md#sendfeedback-tool-behavior) menunggu ulasan Anda di `/feedback`. Disapu setelah `cleanupPeriodDays` atau 30 hari, mana yang lebih pendek. Saat antrian mencapai batas 10 draft, Claude Code menghapus draft tertua untuk membuat ruang. |136| `feedback/drafts/` | Antrian [umpan balik yang dirancang Claude](https://code.claude.com/docs/id/tools-reference.md#sendfeedback-tool-behavior) menunggu ulasan Anda di `/feedback`. Disapu setelah `cleanupPeriodDays` atau 30 hari, mana yang lebih pendek. Saat antrian mencapai batas 10 draft, Claude Code menghapus draft tertua untuk membuat ruang. |

137| `usage-data/` | `report.html` dan salinan laporan bertanda waktu yang ditulis oleh [`/insights`](https://code.claude.com/docs/id/costs#analyze-your-usage-patterns), ditambah data analisis per-sesi yang disimpan dalam cache yang digunakan untuk membangunnya |137| `usage-data/` | `report.html` dan salinan laporan bertanda waktu yang ditulis oleh [`/insights`](https://code.claude.com/docs/id/costs#analyze-your-usage-patterns), ditambah data analisis per-sesi yang disimpan dalam cache yang digunakan untuk membangunnya |


288| `~/.claude/tasks/` | [Daftar tugas](https://code.claude.com/docs/id/interactive-mode.md#task-list) Anda, termasuk yang masih digunakan |288| `~/.claude/tasks/` | [Daftar tugas](https://code.claude.com/docs/id/interactive-mode.md#task-list) Anda, termasuk yang masih digunakan |

289| `~/.claude/skills/.trash/`, `~/.claude/plugins/.trash/` | Kesempatan untuk memulihkan [skills yang disinkronkan](https://code.claude.com/docs/id/skills.md#how-synced-skills-behave) dan [plugins yang disinkronkan](https://code.claude.com/docs/id/plugins/loading.md#synced-plugins) yang Claude Code hapus |289| `~/.claude/skills/.trash/`, `~/.claude/plugins/.trash/` | Kesempatan untuk memulihkan [skills yang disinkronkan](https://code.claude.com/docs/id/skills.md#how-synced-skills-behave) dan [plugins yang disinkronkan](https://code.claude.com/docs/id/plugins/loading.md#synced-plugins) yang Claude Code hapus |

290| `~/.claude/plugins/installed_plugins.set-aside.<date>.<hash>.json`, `~/.claude/plugins/installed_plugins.unreadable.<date>.<hash>.kept` | Salinan catatan pemasangan plugin yang Claude Code hapus atau tidak dapat dibaca. Tidak ada yang membacanya kembali |290| `~/.claude/plugins/installed_plugins.set-aside.<date>.<hash>.json`, `~/.claude/plugins/installed_plugins.unreadable.<date>.<hash>.kept` | Salinan catatan pemasangan plugin yang Claude Code hapus atau tidak dapat dibaca. Tidak ada yang membacanya kembali |

291| `~/.claude/debug/`, `~/.claude/plans/`, `~/.claude/session-env/`, `~/.claude/shell-snapshots/`, `~/.claude/backups/` | Tidak ada yang menghadap pengguna |291| `~/.claude/debug/`, `~/.claude/plans/`, `~/.claude/session-env/`, `~/.claude/shell-snapshots/` | Tidak ada yang menghadap pengguna |

292| `~/.claude/backups/` | Salinan sebelumnya yang dapat Anda gunakan untuk [memulihkan `~/.claude.json`](https://code.claude.com/docs/id/errors#configuration-error-in-claude-json) |

292| `~/.claude/todos/`, `~/.claude/statsig/`, `~/.claude/logs/`, `~/.claude/image-cache/` | Tidak ada. Direktori warisan tidak ditulis oleh versi saat ini. |293| `~/.claude/todos/`, `~/.claude/statsig/`, `~/.claude/logs/`, `~/.claude/image-cache/` | Tidak ada. Direktori warisan tidak ditulis oleh versi saat ini. |

293 294 

294Jangan hapus `~/.claude.json`, `~/.claude/settings.json`, atau `~/.claude/plugins/`: file-file itu menyimpan detail akun, preferensi, dan plugin terinstal Anda.295Jangan hapus `~/.claude.json`, `~/.claude/settings.json`, atau `~/.claude/plugins/`: file-file itu menyimpan detail akun, preferensi, dan plugin terinstal Anda.

Details

480* **"Unable to access your repository"**, dilaporkan oleh thread ketika klonnya gagal: GitHub menolak klon, repositori tidak ditemukan dengan nama yang dimiliki project, atau cabang yang diminta thread untuk dimulai tidak ada.480* **"Unable to access your repository"**, dilaporkan oleh thread ketika klonnya gagal: GitHub menolak klon, repositori tidak ditemukan dengan nama yang dimiliki project, atau cabang yang diminta thread untuk dimulai tidak ada.

481* **"Claude can't access"** repositori, ditampilkan ketika Anda menyimpan repositori di dialog **New project** atau **Project settings**. Pesan berlanjut dengan link instalasi dan link reconnect. Gunakan link instalasi jika Claude GitHub App tidak ada di repositori itu, dan link reconnect jika ada, karena GitHub App dapat diinstal di GitHub tanpa tertaut ke akun yang Anda hubungkan ke Claude. Jika pesan mengatakan GitHub App ditangguhkan atau tidak menyertakan repositori ini, ikuti linknya ke GitHub untuk memperbaikinya.481* **"Claude can't access"** repositori, ditampilkan ketika Anda menyimpan repositori di dialog **New project** atau **Project settings**. Pesan berlanjut dengan link instalasi dan link reconnect. Gunakan link instalasi jika Claude GitHub App tidak ada di repositori itu, dan link reconnect jika ada, karena GitHub App dapat diinstal di GitHub tanpa tertaut ke akun yang Anda hubungkan ke Claude. Jika pesan mengatakan GitHub App ditangguhkan atau tidak menyertakan repositori ini, ikuti linknya ke GitHub untuk memperbaikinya.

482 482 

483Untuk memperbaiki salah satu dari mereka, klik tombol yang ditawarkan pesan, seperti **Install GitHub App** atau **Select repositories on GitHub**, lalu **Check again**. Ketika blok ada di sisi organisasi GitHub, seperti pemilik yang belum menyetujui aplikasi atau daftar IP allow yang mengecualikan Claude, pesan menunjukkan link **See how to fix** sebagai gantinya. Jika tidak ada tombol, ikuti [Atur akses GitHub](#set-up-github-access), lalu kirim pesan lain untuk mencoba lagi.483Untuk memperbaiki akses GitHub untuk "Couldn't start the session" atau "Unable to access your repository", klik tombol yang ditawarkan pesan, seperti **Install on GitHub** atau **Select repositories**. Jika tidak ada tombol, ikuti [Atur akses GitHub](#set-up-github-access). Setelah diperbaiki, minta Claude dalam percakapan project untuk memulai thread baru untuk pekerjaan yang sama.

484 484 

485### Thread mencapai batas penggunaan485### Thread mencapai batas penggunaan

486 486 


505 505 

506| Pesan | Apa yang harus dilakukan |506| Pesan | Apa yang harus dilakukan |

507| :- | :- |507| :- | :- |

508| "Unable to connect to repository" dengan "Claude couldn't reach GitHub to fetch your repository" | Tunggu sebentar, lalu kirim pesan lain untuk mencoba lagi |508| "Unable to connect to repository" dengan "Claude couldn't reach GitHub to fetch your repository" | Tunggu sebentar, lalu minta Claude dalam percakapan project untuk memulai thread baru untuk pekerjaan yang sama |

509| "Unable to connect to repository" dengan "Claude couldn't access your repository or environment" | Akun GitHub Anda membutuhkan akses push ke repositori, dan environment harus masih ada. Periksa keduanya di **Project settings > Environment**, lalu coba lagi |509| "Unable to connect to repository" dengan "Claude couldn't access your repository or environment" | Akun GitHub Anda membutuhkan akses push ke repositori, dan environment harus masih ada. Periksa keduanya di **Project settings > Environment**, lalu coba lagi |

510| "Couldn't show the setup proposal" | Aplikasi yang Anda buka lebih lama dari **Setup recommendations** yang dikirim Claude. Segarkan halaman atau mulai ulang aplikasi desktop, atau minta Claude untuk mengusulkan setup lagi |510| "Couldn't show the setup proposal" | Aplikasi yang Anda buka lebih lama dari **Setup recommendations** yang dikirim Claude. Segarkan halaman atau mulai ulang aplikasi desktop, atau minta Claude untuk mengusulkan setup lagi |

511| "The project's environment was removed" | Pilih environment berbeda di **Project settings > Environment**; perubahan berlaku untuk thread baru |511| "The project's environment was removed" | Pilih environment berbeda di **Project settings > Environment**; perubahan berlaku untuk thread baru |

Details

12 12 

13## Lihat apa yang dimuat ke dalam context13## Lihat apa yang dimuat ke dalam context

14 14 

15Perintah `/context` menampilkan semua yang menempati jendela context untuk sesi saat ini, dipecah berdasarkan kategori: system prompt, system tools, MCP tools, custom subagents dengan sumber masing-masing dimuat dari, file memory, skills, dan pesan percakapan. Jalankan terlebih dahulu untuk mengonfirmasi apakah `CLAUDE.md`, rules, atau deskripsi skill Anda ada sama sekali. Bagian skills dalam `/context` juga mencakup [bundled skills](https://code.claude.com/docs/id/skills.md#bundled-skills), yang tidak dicantumkan oleh `/skills`.15Perintah `/context` menampilkan semua yang menempati context window untuk sesi saat ini. Perintah ini memecahnya berdasarkan kategori: system prompt, tool sistem, tool MCP, subagent kustom beserta sumber asal masing-masing dimuat, file memori, skill, dan pesan percakapan. Jalankan terlebih dahulu untuk mengonfirmasi apakah `CLAUDE.md`, aturan, atau deskripsi skill Anda ada sama sekali. Bagian skill dalam `/context` juga mencakup [skill bawaan](https://code.claude.com/docs/id/skills.md#bundled-skills), yang tidak dicantumkan oleh `/skills`.

16 

17Dalam [mode layar penuh](https://code.claude.com/docs/id/fullscreen.md), `/context` menciutkan rincian per item, jadi jalankan `/context all` untuk membukanya.

16 18 

17Untuk detail tentang kategori tertentu, lanjutkan dengan perintah khusus:19Untuk detail tentang kategori tertentu, lanjutkan dengan perintah khusus:

18 20 

desktop.md +71 −14

Details

84 84 

85Permission modes mengontrol berapa banyak otonomi yang dimiliki Claude selama sesi: apakah itu meminta izin sebelum mengedit file, menjalankan perintah, atau keduanya. Anda dapat beralih permission modes kapan saja menggunakan pemilih mode di baris di bawah kotak prompt. Untuk menyetujui setiap perubahan sendiri, beralih ke Manual.85Permission modes mengontrol berapa banyak otonomi yang dimiliki Claude selama sesi: apakah itu meminta izin sebelum mengedit file, menjalankan perintah, atau keduanya. Anda dapat beralih permission modes kapan saja menggunakan pemilih mode di baris di bawah kotak prompt. Untuk menyetujui setiap perubahan sendiri, beralih ke Manual.

86 86 

87Untuk menetapkan mode default untuk sesi lokal baru, tambahkan `permissions.defaultMode` ke [file pengaturan](https://code.claude.com/docs/id/settings.md#where-settings-live) Anda. Aplikasi desktop membaca file pengaturan yang sama dengan CLI. Mode yang Anda pilih di pemilih diingat per folder dan diutamakan daripada `defaultMode` untuk folder itu, kecuali Plan, yang berlaku hanya untuk sesi saat ini.87Untuk menetapkan permission mode default untuk sesi lokal baru, tambahkan `permissions.defaultMode` ke [file pengaturan](https://code.claude.com/docs/id/settings.md#where-settings-live) Anda. Mode yang Anda pilih di sesi lokal diingat per folder dan diutamakan daripada `defaultMode` di pengaturan `.claude/` proyek. Sesi lokal baru tetap dapat dimulai dalam `defaultMode` dari `~/.claude/settings.json` atau pengaturan terkelola, jadi periksa pemilih sebelum pesan pertama Anda. Jika Anda memilih Plan, mode tersebut hanya berlaku untuk sesi ini.

88 88 

89| Mode | Settings key | Behavior |89| Mode | Settings key | Behavior |

90| - | - | - |90| - | - | - |


1289 1289 

1290> [!WARNING]1290> [!WARNING]

1291>1291>

1292> Jika Anda masuk ke Desktop dengan akun Claude, jangan mengandalkan tugas untuk berjalan semalaman. Desktop memperbarui proses masuk tersebut untuk tugas hanya selama Desktop berjalan dan terhubung, sehingga masa berlaku proses masuk tugas dapat habis setelah Anda terputus, lalu tugas berhenti. Sisa waktu saat Anda terputus bervariasi, dan bisa hanya beberapa menit.1292> Jika Anda masuk ke Desktop dengan akun Claude, jangan mengandalkan tugas untuk berjalan semalaman. Desktop memperbarui sesi masuk tersebut untuk tugas hanya selama Desktop berjalan, terhubung, dan dalam keadaan masuk, sehingga sesi masuk tugas dapat kedaluwarsa setelah Anda terputus, dan tugas kemudian berhenti. Sisa waktu saat Anda terputus bervariasi, dan bisa hanya beberapa menit.

1293>1293>

1294> Pekerjaan yang telah dilakukan sejauh ini tetap berada di mesin jarak jauh, dan Anda dapat melanjutkannya dengan mengirim pesan saat Anda kembali.1294> Pekerjaan yang telah dilakukan sejauh ini tetap berada di mesin jarak jauh, dan Anda dapat melanjutkannya dengan mengirim pesan saat Anda kembali.

1295>1295>

1296> Jika tugas harus berjalan sepanjang malam:1296> Jika tugas harus berjalan sepanjang malam:

1297>1297>

1298> * [Jaga komputer Anda tetap menyala](https://code.claude.com/docs/id/desktop-scheduled-tasks.md#how-scheduled-tasks-run) dan online, dengan lid terbuka dan Desktop berjalan1298> * [Jaga komputer Anda tetap menyala](https://code.claude.com/docs/id/desktop-scheduled-tasks.md#how-scheduled-tasks-run) dan online, dengan lid terbuka serta Desktop berjalan dan dalam keadaan masuk

1299> * Gunakan metode login yang berfungsi tanpa prompt, seperti kunci yang disimpan oleh SSH agent Anda, untuk mesin jarak jauh dan untuk jump host mana pun di sepanjang jalur. Dengan begitu, Desktop dapat terhubung kembali dengan sendirinya setelah koneksi terputus.1299> * Gunakan metode login yang berfungsi tanpa prompt, seperti kunci yang disimpan oleh SSH agent Anda, untuk mesin jarak jauh dan untuk jump host mana pun di sepanjang jalur. Dengan begitu, Desktop dapat terhubung kembali dengan sendirinya setelah koneksi terputus.

1300>1300>

1301> Untuk tugas yang harus berjalan saat komputer Anda sleep atau mati, mulai [sesi cloud](#run-long-running-tasks-in-the-cloud) sebagai gantinya.1301> Untuk tugas yang harus berjalan saat komputer Anda sleep atau mati, mulai [sesi cloud](#run-long-running-tasks-in-the-cloud) sebagai gantinya.


1303* **Setelah sleep atau kehilangan jaringan**: Anda mendapatkan kembali tugas yang sedang berjalan jika prosesnya [masih berjalan](#limits-while-desktop-is-disconnected) dan Desktop dapat masuk tanpa prompt. Jika tidak bisa, [kirim pesan](#reconnect-after-sleep-or-a-network-loss).1303* **Setelah sleep atau kehilangan jaringan**: Anda mendapatkan kembali tugas yang sedang berjalan jika prosesnya [masih berjalan](#limits-while-desktop-is-disconnected) dan Desktop dapat masuk tanpa prompt. Jika tidak bisa, [kirim pesan](#reconnect-after-sleep-or-a-network-loss).

1304* **Setelah keluar**: tugas tetap berjalan, tetapi Anda kehilangannya saat sesi dibuka lagi kecuali Desktop dapat bergabung kembali ke prosesnya. Periksa [kapan Desktop dapat bergabung kembali](#reopen-a-session-after-you-quit-desktop) sebelum Anda keluar. Jika Anda kehilangan tugas, kirim pesan untuk melanjutkan.1304* **Setelah keluar**: tugas tetap berjalan, tetapi Anda kehilangannya saat sesi dibuka lagi kecuali Desktop dapat bergabung kembali ke prosesnya. Periksa [kapan Desktop dapat bergabung kembali](#reopen-a-session-after-you-quit-desktop) sebelum Anda keluar. Jika Anda kehilangan tugas, kirim pesan untuk melanjutkan.

1305 1305 

1306Saat Anda kembali dan tugas belum selesai, periksa apakah ada pemberitahuan bahwa Desktop tidak dapat terhubung kembali, error autentikasi, atau permintaan yang menunggu:1306Saat Anda kembali dan tugas belum selesai, periksa halaman masuk Desktop, pemberitahuan bahwa Desktop tidak dapat terhubung ulang, error autentikasi, atau permintaan yang menunggu:

1307 1307 

1308* **Halaman masuk**: masuk. Jika tugas berhenti, kirim pesan untuk melanjutkan. Pada paket Enterprise, organisasi Anda dapat [mengeluarkan Anda setelah sejumlah hari tertentu sejak Anda masuk](https://support.claude.com/en/articles/13163631-configuring-session-security-settings), seaktif apa pun Anda. Dengan akun Claude, Desktop tidak memperbarui sesi masuk tugas selama Anda dalam keadaan keluar, sehingga tugas dapat berhenti.

1308* **Desktop tidak dapat terhubung kembali**: sesi menjelaskan alasannya, dan notifikasi mungkin juga menyebutkannya. Desktop mungkin [memerlukan Anda untuk masuk](#reconnect-after-sleep-or-a-network-loss).1309* **Desktop tidak dapat terhubung kembali**: sesi menjelaskan alasannya, dan notifikasi mungkin juga menyebutkannya. Desktop mungkin [memerlukan Anda untuk masuk](#reconnect-after-sleep-or-a-network-loss).

1309* **Error autentikasi**: [token atau kredensial masuk](#limits-while-desktop-is-disconnected) mungkin telah kedaluwarsa. Dengan akun Claude, kirim pesan untuk melanjutkan. Dengan penyedia pihak ketiga, lihat [SSH remote sessions in Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions).1310* **Error autentikasi**: [token atau kredensial masuk](#limits-while-desktop-is-disconnected) mungkin telah kedaluwarsa. Dengan akun Claude, kirim pesan untuk melanjutkan. Dengan penyedia pihak ketiga, lihat [SSH remote sessions in Claude Desktop on 3P](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions).

1310* **Permintaan yang menunggu**: [jawab permintaan tersebut](#handle-requests-that-arrive-while-you-are-away)1311* **Permintaan yang menunggu**: [jawab permintaan tersebut](#handle-requests-that-arrive-while-you-are-away)


1602 1603 

1603> [!NOTE]1604> [!NOTE]

1604>1605>

1605> Koneksi dari perintah memerlukan Claude Desktop v3.6556.0 atau yang lebih baru di macOS atau Linux, dengan masuk menggunakan akun Claude. Admin dapat [mendistribusikan perintah ke tim](#distribute-commands-to-your-team).1606> Koneksi dari perintah memerlukan Claude Desktop v3.6556.0 atau yang lebih baru di macOS atau Linux, atau v4.16336.0 atau yang lebih baru di Windows, dengan masuk menggunakan akun Claude. Di Windows, Desktop juga harus [terhubung melalui klien OpenSSH](#use-your-ssh-configuration). Admin dapat [mendistribusikan perintah ke tim](#distribute-commands-to-your-team).

1606 1607 

1607Desktop menjalankan perintah hanya saat Anda membuat koneksi atau [membuat mesin lain](#create-another-machine), bukan setiap kali Anda terhubung. Setiap entri adalah satu koneksi, yang menunjuk ke host yang terakhir disimpan Desktop dari perintah entri tersebut.1608Desktop menjalankan perintah hanya saat Anda membuat koneksi atau [membuat mesin lain](#create-another-machine), bukan setiap kali Anda terhubung. Setiap entri adalah satu koneksi, yang menunjuk ke host yang terakhir disimpan Desktop dari perintah entri tersebut.

1608 1609 


1632}1633}

1633```1634```

1634 1635 

1636Di Windows, nama polos seperti `acme-dev` tidak berfungsi, jadi [awali perintah dengan path lengkap program](#write-the-command-on-windows).

1637 

1635Setiap entri menerima kolom berikut, dan `id`, `name`, serta `command` wajib diisi:1638Setiap entri menerima kolom berikut, dan `id`, `name`, serta `command` wajib diisi:

1636 1639 

1637| Kolom | Nilai |1640| Kolom | Nilai |


1646 1649 

1647##### Tulis perintah1650##### Tulis perintah

1648 1651 

1649Desktop menjalankan program secara langsung, tanpa shell dan tanpa terminal:1652Di Windows, mulailah dengan [Tulis perintah di Windows](#write-the-command-on-windows), yang menjelaskan aturan mana dari aturan-aturan ini yang berlaku di sana.

1653 

1654Di macOS dan Linux, Desktop menjalankan program secara langsung, tanpa shell dan tanpa terminal:

1650 1655 

1651* **Program**: tulis namanya, atau path lengkapnya dari `/`, tanpa spasi. Desktop mencari nama tanpa path di `PATH` yang diekspor oleh login shell Anda. Path relatif seperti `./acme-dev`, path yang diawali dengan `~`, serta alias dan fungsi shell tidak berfungsi.1656* **Program**: tulis namanya, atau path lengkapnya dari `/`. Desktop mencari nama polos di `PATH` yang diekspor shell login Anda. Path relatif seperti `./acme-dev`, path yang diawali dengan `~`, serta alias dan fungsi shell tidak berfungsi.

1652* **Argumen**: pisahkan argumen biasa dengan spasi. Perintah hanya boleh berisi spasi, huruf ASCII, angka, dan karakter `+,-./:=@_~`, dan tidak ada kata yang boleh diawali dengan `~`.1657* **Spasi di path**: letakkan path lengkap program dalam tanda kutip tunggal, seperti `'/Users/you/My Tools/make-devbox' create`. Tanda kutip, tunggal maupun ganda, memerlukan Claude Desktop v4.16336.0 atau yang lebih baru, dan hanya berfungsi di sekitar path program.

1653* **Skrip**: jika perintah memerlukan hal lain, seperti tanda kutip, pipe, variabel, atau URL dengan `?` atau `&`, letakkan di dalam skrip. Jadikan skrip dapat dieksekusi, awali dengan baris `#!`, dan tetapkan `command` ke path lengkapnya, seperti `/Users/you/bin/make-devbox`. Di macOS, jangan letakkan skrip di folder Documents, Desktop, dan Downloads, tempat macOS dapat memblokirnya.1658* **Argumen**: pisahkan argumen dengan spasi. Di luar tanda kutip, perintah hanya dapat berisi spasi, huruf ASCII, angka, dan karakter `+,-./:=@_~`, dan tidak ada kata yang boleh diawali dengan `~`. Path dalam tanda kutip juga dapat berisi beberapa karakter lain, seperti `(`, `)`, dan `&`.

1659* **Skrip**: jika perintah memerlukan hal lain, seperti argumen dalam tanda kutip, pipe, variabel, atau URL dengan `?` atau `&`, letakkan di dalam skrip. Jadikan skrip dapat dieksekusi, awali dengan baris `#!`, dan atur `command` ke path lengkapnya, seperti `/Users/you/bin/make-devbox`. Di macOS, jauhkan skrip dari folder Documents, Desktop, dan Downloads, tempat macOS dapat memblokirnya.

1654* **Input**: program tidak mendapatkan input dan terminal, sehingga tidak dapat meminta apa pun kepada Anda di sana. Jika alat Anda memasukkan Anda melalui browser atau prompt, masuklah dari terminal terlebih dahulu, dan ulangi setiap kali sesi masuk tersebut kedaluwarsa.1660* **Input**: program tidak mendapatkan input dan terminal, sehingga tidak dapat meminta apa pun kepada Anda di sana. Jika alat Anda memasukkan Anda melalui browser atau prompt, masuklah dari terminal terlebih dahulu, dan ulangi setiap kali sesi masuk tersebut kedaluwarsa.

1655* **Lingkungan**: program berjalan di direktori home Anda dengan variabel yang diekspor oleh login shell Anda. Desktop membacanya saat dimulai, seperti yang dilakukannya untuk [`ProxyCommand`](#use-variables-from-your-shell-in-a-proxycommand), jadi keluar dan buka kembali Desktop setelah Anda mengubahnya.1661* **Lingkungan**: program berjalan di direktori home Anda dengan variabel yang diekspor oleh login shell Anda. Desktop membacanya saat dimulai, seperti yang dilakukannya untuk [`ProxyCommand`](#use-variables-from-your-shell-in-a-proxycommand), jadi keluar dan buka kembali Desktop setelah Anda mengubahnya.

1656* **Batas waktu**: Desktop menghentikan program yang masih berjalan setelah 10 menit. Pesan progres Desktop tidak menampilkan output program. Untuk menghentikan program lebih cepat, pilih **Cancel** di samping pesan tersebut.1662* **Batas waktu**: Desktop menghentikan program yang masih berjalan setelah 10 menit. Pesan progres Desktop tidak menampilkan output program. Untuk menghentikan program lebih cepat, pilih **Cancel** di samping pesan tersebut.


1680 1686 

1681Jika perintah gagal, **View details** di pesan Desktop menampilkan baris terakhir yang ditulis perintah ke standard error, jika ada.1687Jika perintah gagal, **View details** di pesan Desktop menampilkan baris terakhir yang ditulis perintah ke standard error, jika ada.

1682 1688 

1689##### Tulis perintah di Windows

1690 

1691Di Windows, awali `command` dengan path lengkap file `.exe`, `.cmd`, atau `.bat`, dari huruf drive. Desktop tidak mencari nama polos di `PATH` Anda, sehingga entri yang `command`-nya `acme-dev create` akan [berwarna abu-abu](#if-a-command-is-missing-or-gray).

1692 

1693Entri berikut di `%USERPROFILE%\.claude\settings.json` menjalankan `C:\Program Files\Acme\acme-dev.exe` dengan argumen `create`. Di JSON, tulis setiap backslash dua kali, atau tulis `/` sebagai gantinya. Tanda kutip tunggal ada karena path memiliki spasi:

1694 

1695```json settings.json theme={null}

1696{

1697 "sshHostCommands": [

1698 {

1699 "id": "devbox",

1700 "name": "Dev box",

1701 "command": "'C:\\Program Files\\Acme\\acme-dev.exe' create"

1702 }

1703 ]

1704}

1705```

1706 

1707Ikuti aturan di [Tulis perintah](#write-the-command) tentang spasi di path, input, batas waktu, dan apa yang dicetak program. Sebagai pengganti aturan-aturan lainnya, ikuti aturan berikut:

1708 

1709* **Program**: jangan gunakan path jaringan seperti `\\server\share`, variabel seperti `%USERPROFILE%`, atau huruf di luar ASCII. Dengan salah satu dari hal tersebut di path, entri akan berwarna abu-abu. Jika nama folder pengguna Anda memiliki huruf seperti itu, letakkan program di luar folder tersebut.

1710* **Argumen**: ikuti aturan Argumen di Tulis perintah. Perintah juga dapat berisi `\`, tetapi tidak ada kata yang boleh diakhiri dengannya.

1711* **Skrip**: gunakan file `.cmd` atau `.bat`, yang dijalankan Desktop melalui `cmd.exe`. Bahkan dalam tanda kutip, path file tidak boleh berisi `&`, `^`, atau `;`. Dalam file yang Anda tulis, baca argumen dengan `%*`, karena `%1` hingga `%9` memecah argumen pada `,` dan `=`.

1712* **Lingkungan**: program mendapatkan environment variable aplikasi Desktop, bukan milik profil shell. Setelah Anda mengubah variabel, keluar lalu buka kembali Desktop.

1713* **Pengujian**: untuk melihat output yang dibaca Desktop, jalankan perintah di Command Prompt. Letakkan path yang memiliki spasi dalam tanda kutip ganda dan gunakan `NUL` untuk tanpa input, seperti pada `"C:\Program Files\Acme\acme-dev.exe" create < NUL > host.txt`. File hanya boleh berisi host. Pengujian ini juga membuat mesin, jadi hapus mesin tersebut dengan alat Anda setelahnya.

1714 

1715##### Bungkus alat Windows yang mencetak baris lain

1716 

1717Jika alat Anda mencetak baris lain sebelum host, seperti pesan kemajuan, bungkus alat tersebut dalam file batch yang hanya mencetak host. File berikut mencetak baris terakhir output alat Anda, dan keluar dengan kode alat Anda jika alat tersebut gagal:

1718 

1719```batch make-devbox.cmd theme={null}

1720@echo off

1721setlocal

1722set "host="

1723set "out=%TEMP%\acme-dev-%RANDOM%.txt"

1724call "C:\Program Files\Acme\acme-dev.exe" create > "%out%"

1725set "code=%ERRORLEVEL%"

1726for /f "usebackq delims=" %%L in ("%out%") do set "host=%%L"

1727del "%out%"

1728if not "%code%"=="0" exit /b %code%

1729setlocal EnableDelayedExpansion

1730echo(!host!

1731```

1732 

1733Atur `command` ke path lengkap file tersebut, seperti `C:\\tools\\make-devbox.cmd` di JSON. Biarkan dua baris terakhirnya apa adanya, karena baris-baris itu mencetak host tanpa menjalankannya sebagai perintah.

1734 

1683##### Terhubung ke host baru1735##### Terhubung ke host baru

1684 1736 

1685Jawab dua pertanyaan saat pertama kali Anda terhubung ke setiap host baru:1737Jawab dua pertanyaan saat pertama kali Anda terhubung ke setiap host baru:

1686 1738 

1687* **Host key**: dengan pemeriksaan host key default OpenSSH, periksa fingerprint key, lalu pilih apakah akan terhubung. Untuk melewati pertanyaan ini, buat perintah Anda menambahkan key ke `~/.ssh/known_hosts` sebelum mencetak host, menggunakan key yang diketahui alat Anda saat membuat mesin. Untuk port selain 22, baris tersebut diawali dengan `[host]:port`. Jika alat Anda menggunakan ulang nama host, hapus juga baris key yang lama.1739* **Host key**: dengan pemeriksaan host key default OpenSSH, periksa fingerprint kunci, lalu pilih apakah akan terhubung. Untuk melewati pertanyaan ini, minta perintah Anda menambahkan kunci ke `~/.ssh/known_hosts`, atau `%USERPROFILE%\.ssh\known_hosts` di Windows, sebelum mencetak host:

1740 * Gunakan kunci yang diketahui alat Anda saat membuat mesin

1741 * Untuk port selain 22, awali baris dengan `[host]:port`

1742 * Jika alat Anda menggunakan ulang nama host, hapus juga baris kunci lama

1688* **Folder**: pilih apakah Anda memercayai folder yang Anda buka di sana1743* **Folder**: pilih apakah Anda memercayai folder yang Anda buka di sana

1689 1744 

1690Biarkan pemeriksaan host key tetap aktif untuk host-host ini, dan simpan file `known_hosts` untuk mereka. Jika `StrictHostKeyChecking` bernilai `no` atau `accept-new` dan `UserKnownHostsFile` juga bernilai `/dev/null` atau `none`, tidak ada yang mencatat key. Ketika alat Anda kemudian menggunakan ulang sebuah nama, Anda dapat terhubung ke mesin yang berbeda tanpa peringatan.1745Biarkan pemeriksaan host key tetap aktif untuk host-host ini, dan simpan file `known_hosts` untuk mereka. Jika `StrictHostKeyChecking` bernilai `no` atau `accept-new` dan `UserKnownHostsFile` juga bernilai `/dev/null` atau `none`, tidak ada yang mencatat key. Ketika alat Anda kemudian menggunakan ulang sebuah nama, Anda dapat terhubung ke mesin yang berbeda tanpa peringatan.


1746 1801 

1747* **Tempat meletakkan key**: jika kebijakan MDM Anda untuk Claude Code sudah menetapkan [policy key](https://code.claude.com/docs/id/managed-settings.md#how-claude-code-combines-managed-sources), letakkan di sana. Jika tidak, letakkan di file pengaturan terkelola. Secara default, kebijakan seperti itu mengungguli file, dan Desktop kemudian mengabaikan entri di file. Tetapkan di komputer bahkan di tempat [pengaturan yang dikelola server](https://code.claude.com/docs/id/server-managed-settings.md) berlaku: Desktop mengabaikan key tersebut di sana, serta di pengaturan proyek dan lokal.1802* **Tempat meletakkan key**: jika kebijakan MDM Anda untuk Claude Code sudah menetapkan [policy key](https://code.claude.com/docs/id/managed-settings.md#how-claude-code-combines-managed-sources), letakkan di sana. Jika tidak, letakkan di file pengaturan terkelola. Secara default, kebijakan seperti itu mengungguli file, dan Desktop kemudian mengabaikan entri di file. Tetapkan di komputer bahkan di tempat [pengaturan yang dikelola server](https://code.claude.com/docs/id/server-managed-settings.md) berlaku: Desktop mengabaikan key tersebut di sana, serta di pengaturan proyek dan lokal.

1748* **`id`**: jika entri `sshHostCommands` milik pengguna memiliki `id` Anda, hanya milik Anda yang berfungsi. Jika koneksi SSH lain memilikinya, seperti koneksi di `sshConfigs` milik pengguna, entri Anda berwarna abu-abu. Pilih `id` yang kemungkinan kecil dipilih pengguna.1803* **`id`**: jika entri `sshHostCommands` milik pengguna memiliki `id` Anda, hanya milik Anda yang berfungsi. Jika koneksi SSH lain memilikinya, seperti koneksi di `sshConfigs` milik pengguna, entri Anda berwarna abu-abu. Pilih `id` yang kemungkinan kecil dipilih pengguna.

1749* **Program**: berikan path lengkapnya, karena Desktop mencari nama tanpa path di `PATH` milik masing-masing pengguna. Program berjalan sebagai pengguna, dengan variabel yang diekspor oleh login shell mereka.1804* **Program**: berikan path lengkapnya, karena di macOS dan Linux Desktop mencari nama polos di `PATH` setiap pengguna, dan di Windows entri dengan nama polos berwarna abu-abu. Program berjalan sebagai pengguna, dengan [variabel milik pengguna tersebut](#write-the-command).

1805* **Setiap platform**: terapkan satu entri ke komputer Windows dan entri lain ke komputer macOS dan Linux. Entri dengan [path Windows](#write-the-command-on-windows) berwarna abu-abu di macOS dan Linux, dan entri dengan path macOS atau Linux berwarna abu-abu di Windows.

1750* **Entri milik pengguna**: Desktop memperlakukan entri pengguna seperti [hook](https://code.claude.com/docs/id/hooks.md), karena keduanya menjalankan program di komputer. Untuk hanya mengizinkan entri Anda, tetapkan [`strictPluginOnlyCustomization`](https://code.claude.com/docs/id/settings-reference#strictpluginonlycustomization) ke `["hooks"]`, atau tambahkan `"hooks"` ke daftarnya. Anda juga menghentikan hook Claude Code dari pengaturan pengguna, proyek, dan lokal, tanpa cara untuk mempertahankannya. Jika Anda menetapkan key tersebut atau [`allowManagedHooksOnly`](https://code.claude.com/docs/id/settings-reference#allowmanagedhooksonly) ke `true`, Anda memblokir lebih banyak, seperti yang dicantumkan di entri masing-masing key.1806* **Entri milik pengguna**: Desktop memperlakukan entri pengguna seperti [hook](https://code.claude.com/docs/id/hooks.md), karena keduanya menjalankan program di komputer. Untuk hanya mengizinkan entri Anda, tetapkan [`strictPluginOnlyCustomization`](https://code.claude.com/docs/id/settings-reference#strictpluginonlycustomization) ke `["hooks"]`, atau tambahkan `"hooks"` ke daftarnya. Anda juga menghentikan hook Claude Code dari pengaturan pengguna, proyek, dan lokal, tanpa cara untuk mempertahankannya. Jika Anda menetapkan key tersebut atau [`allowManagedHooksOnly`](https://code.claude.com/docs/id/settings-reference#allowmanagedhooksonly) ke `true`, Anda memblokir lebih banyak, seperti yang dicantumkan di entri masing-masing key.

1751* **Setiap entri**: untuk mematikan entri Anda juga, tetapkan [`disableAllHooks`](https://code.claude.com/docs/id/settings-reference#disableallhooks) di pengaturan terkelola. Jika Anda menetapkan [`disableDesktopLocalSessions`](https://code.claude.com/docs/id/settings-reference#disabledesktoplocalsessions), atau `sshHostAllowlist` yang tidak mengizinkan host apa pun, pemilih tidak mencantumkan item **Create** atau **Create another**.1807* **Setiap entri**: untuk mematikan entri Anda juga, tetapkan [`disableAllHooks`](https://code.claude.com/docs/id/settings-reference#disableallhooks) di pengaturan terkelola. Jika Anda menetapkan [`disableDesktopLocalSessions`](https://code.claude.com/docs/id/settings-reference#disabledesktoplocalsessions), atau `sshHostAllowlist` yang tidak mengizinkan host apa pun, pemilih tidak mencantumkan item **Create** atau **Create another**.

1752* **Tempat penguncian berlaku**: untuk entri-entri ini, Desktop membaca `allowManagedHooksOnly`, `strictPluginOnlyCustomization`, dan `disableAllHooks` dari pengaturan yang dikelola server dan dari file atau kebijakan milik komputer itu sendiri, lalu menerapkan hasil yang lebih ketat. Setiap entri tetap berwarna abu-abu sampai Desktop memeriksa claude.ai untuk pengaturan yang dikelola server, bahkan jika organisasi Anda tidak memilikinya.1808* **Tempat penguncian berlaku**: untuk entri-entri ini, Desktop membaca `allowManagedHooksOnly`, `strictPluginOnlyCustomization`, dan `disableAllHooks` dari pengaturan yang dikelola server dan dari file atau kebijakan milik komputer itu sendiri, lalu menerapkan hasil yang lebih ketat. Setiap entri tetap berwarna abu-abu sampai Desktop memeriksa claude.ai untuk pengaturan yang dikelola server, bahkan jika organisasi Anda tidak memilikinya.


1759Pemilih lingkungan tidak mencantumkan item **Create** atau **Create another** dalam kasus berikut:1815Pemilih lingkungan tidak mencantumkan item **Create** atau **Create another** dalam kasus berikut:

1760 1816 

1761* **File**: `~/.claude/settings.json` memiliki [JSON yang tidak valid atau nilai yang ditolak skema](https://code.claude.com/docs/id/settings.md#fix-a-broken-settings-file), Anda salah mengeja key, atau Anda meletakkannya di pengaturan proyek. Perbaiki file tersebut.1817* **File**: `~/.claude/settings.json` memiliki [JSON yang tidak valid atau nilai yang ditolak skema](https://code.claude.com/docs/id/settings.md#fix-a-broken-settings-file), Anda salah mengeja key, atau Anda meletakkannya di pengaturan proyek. Perbaiki file tersebut.

1762* **Platform dan akun**: Anda menggunakan Windows, atau [penyedia pihak ketiga](https://code.claude.com/docs/id/third-party-integrations.md) alih-alih akun Claude. Tambahkan setiap host sebagai [koneksi SSH](#ssh-sessions) sendiri.1818* **Akun**: Anda menggunakan [penyedia pihak ketiga](https://code.claude.com/docs/id/third-party-integrations.md) alih-alih akun Claude. Tambahkan sendiri setiap host sebagai [koneksi SSH](#ssh-sessions).

1819* **Windows**: Desktop lebih lama dari v4.16336.0, atau tidak terhubung melalui klien OpenSSH. Perbarui Desktop dan penuhi [persyaratan untuk klien OpenSSH](#use-your-ssh-configuration), lalu keluar dan buka kembali Desktop.

1763* **Pengaturan organisasi Anda**: admin Anda mematikan sesi lokal, atau mematikan sesi SSH. Tanyakan kepada mereka apakah Anda dapat menggunakan perintah.1820* **Pengaturan organisasi Anda**: admin Anda mematikan sesi lokal, atau mematikan sesi SSH. Tanyakan kepada mereka apakah Anda dapat menggunakan perintah.

1764* **Tidak ada program `ssh`**: Desktop tidak dapat menjalankan klien OpenSSH di komputer Anda. Instal klien tersebut, atau minta admin Anda untuk mengizinkannya, lalu mulai ulang Desktop.1821* **Tidak ada program `ssh`**: Desktop tidak dapat menjalankan klien OpenSSH di komputer Anda. Instal klien tersebut, atau minta admin Anda untuk mengizinkannya, lalu mulai ulang Desktop.

1765 1822 

1766Entri yang tidak dapat Anda pilih berwarna abu-abu. Arahkan kursor ke atasnya untuk melihat alasannya:1823Entri yang tidak dapat Anda pilih berwarna abu-abu. Arahkan kursor ke atasnya untuk melihat alasannya:

1767 1824 

1768* **Kesalahan di entri**: perbaiki kolom atau perintah yang disebutkan pesan. Jika `id` sudah digunakan, berikan `id` lain untuk entri tersebut.1825* **Kesalahan di entri**: perbaiki kolom atau perintah yang disebutkan pesan. Jika `id` sudah digunakan, berikan entri `id` lain. Di Windows, perintah harus [diawali dengan path lengkap program](#write-the-command-on-windows).

1769* **File pengaturan rusak**: selama file pengaturan Anda sendiri rusak, entri admin Anda mungkin berwarna abu-abu, dengan pesan yang menyebutkan file tersebut. [Perbaiki file tersebut](https://code.claude.com/docs/id/settings.md#fix-a-broken-settings-file).1826* **File pengaturan rusak**: selama file pengaturan Anda sendiri rusak, entri admin Anda mungkin berwarna abu-abu, dengan pesan yang menyebutkan file tersebut. [Perbaiki file tersebut](https://code.claude.com/docs/id/settings.md#fix-a-broken-settings-file).

1770* **Host baru**: [**Create another**](#create-another-machine) berwarna abu-abu selama satu menit setelah Desktop menyimpan host. Pilih item tersebut setelah satu menit itu. Sebelum Claude Desktop v4.4212.0, **Replace Dev box's host** berwarna abu-abu selama 10 menit.1827* **Host baru**: [**Create another**](#create-another-machine) berwarna abu-abu selama satu menit setelah Desktop menyimpan host. Pilih item tersebut setelah satu menit itu. Sebelum Claude Desktop v4.4212.0, **Replace Dev box's host** berwarna abu-abu selama 10 menit.

1771* **Hook dimatikan atau dibatasi**: entri Anda sendiri hanya berfungsi di tempat hook Anda sendiri dapat berjalan. Hapus `disableAllHooks` dari pengaturan Anda, atau tanyakan kepada admin Anda.1828* **Hook dimatikan atau dibatasi**: entri Anda sendiri hanya berfungsi di tempat hook Anda sendiri dapat berjalan. Hapus `disableAllHooks` dari pengaturan Anda, atau tanyakan kepada admin Anda.


1940| `disableMobileSimulatorTools` | atur ke `true` untuk memblokir tools Claude untuk mengontrol dan menangkap perangkat di [iOS Simulator pane](https://code.claude.com/docs/id/desktop-ios-simulator.md#turn-off-simulator-access). Pane tetap dapat digunakan untuk ketukan pengguna sendiri; hanya akses Claude yang dihapus. Nilainya harus berupa boolean JSON `true`; string `"true"` diabaikan. |1997| `disableMobileSimulatorTools` | atur ke `true` untuk memblokir tools Claude untuk mengontrol dan menangkap perangkat di [iOS Simulator pane](https://code.claude.com/docs/id/desktop-ios-simulator.md#turn-off-simulator-access). Pane tetap dapat digunakan untuk ketukan pengguna sendiri; hanya akses Claude yang dihapus. Nilainya harus berupa boolean JSON `true`; string `"true"` diabaikan. |

1941| `disableBrowserExternalNavigation` | atur ke `true` untuk mematikan penjelajahan eksternal di [Browser pane](#browse-external-sites) sepenuhnya. Baik pengguna maupun Claude tidak dapat menavigasi ke situs eksternal, dan pratinjau server dev localhost tidak terpengaruh. Nilainya harus berupa boolean JSON `true`; string `"true"` diabaikan. |1998| `disableBrowserExternalNavigation` | atur ke `true` untuk mematikan penjelajahan eksternal di [Browser pane](#browse-external-sites) sepenuhnya. Baik pengguna maupun Claude tidak dapat menavigasi ke situs eksternal, dan pratinjau server dev localhost tidak terpengaruh. Nilainya harus berupa boolean JSON `true`; string `"true"` diabaikan. |

1942| `sshConfigs` | pre-configure [SSH connections](#pre-configure-ssh-connections-for-your-team) yang muncul di pemilih lingkungan. Pengguna tidak dapat menghapus koneksi yang dikelola atau mengedit apa pun selain **Worktree folder** mereka sendiri. |1999| `sshConfigs` | pre-configure [SSH connections](#pre-configure-ssh-connections-for-your-team) yang muncul di pemilih lingkungan. Pengguna tidak dapat menghapus koneksi yang dikelola atau mengedit apa pun selain **Worktree folder** mereka sendiri. |

1943| `sshHostCommands` | berikan pengguna [koneksi SSH yang host-nya berasal dari sebuah perintah](#distribute-commands-to-your-team), di samping koneksi mereka sendiri. Desktop membacanya dari file pengaturan terkelola atau kebijakan MDM di komputer, dan mengabaikannya dalam [server-managed settings](https://code.claude.com/docs/id/server-managed-settings.md). Memerlukan Claude Desktop v3.6556.0 atau lebih baru di macOS atau Linux, dengan masuk menggunakan akun Claude. |2000| `sshHostCommands` | berikan pengguna [koneksi SSH yang host-nya berasal dari sebuah perintah](#distribute-commands-to-your-team), di samping koneksi mereka sendiri. Desktop membacanya dari file pengaturan terkelola atau kebijakan MDM di komputer, dan mengabaikannya dalam [server-managed settings](https://code.claude.com/docs/id/server-managed-settings.md). Memerlukan Claude Desktop v3.6556.0 atau lebih baru di macOS atau Linux, atau v4.16336.0 atau lebih baru di Windows, dengan masuk menggunakan akun Claude. Di Windows, Desktop juga harus [terhubung melalui klien OpenSSH](#use-your-ssh-configuration). |

1944| `sshHostAllowlist` | batasi [SSH sessions](#restrict-which-ssh-hosts-users-can-connect-to) ke host yang nama hostname yang diselesaikannya cocok dengan salah satu pola ini. Dibaca dari pengaturan terkelola saja. |2001| `sshHostAllowlist` | batasi [SSH sessions](#restrict-which-ssh-hosts-users-can-connect-to) ke host yang nama hostname yang diselesaikannya cocok dengan salah satu pola ini. Dibaca dari pengaturan terkelola saja. |

1945| `disableDesktopLocalSessions` | atur ke `true` untuk mematikan [Code sessions yang berjalan di perangkat](#local-sessions-on-managed-devices), meninggalkan sesi SSH ke host lain dan sesi cloud tersedia. Nilainya harus berupa boolean JSON `true`. Dibaca dari pengaturan terkelola saja. Memerlukan Claude Desktop v1.37937.0 atau lebih baru. |2002| `disableDesktopLocalSessions` | atur ke `true` untuk mematikan [Code sessions yang berjalan di perangkat](#local-sessions-on-managed-devices), meninggalkan sesi SSH ke host lain dan sesi cloud tersedia. Nilainya harus berupa boolean JSON `true`. Dibaca dari pengaturan terkelola saja. Memerlukan Claude Desktop v1.37937.0 atau lebih baru. |

1946| `disableSshSavedPasswords` | atur ke `true` untuk menghentikan Desktop dari menawarkan untuk mengingat kata sandi SSH serta dari menggunakan atau menampilkan kata sandi yang telah disimpannya sebelumnya. Mengaktifkannya tidak menghapus kata sandi tersebut. Dibaca dari pengaturan terkelola saja. Memerlukan Claude Desktop v1.49585.0 atau lebih baru. |2003| `disableSshSavedPasswords` | atur ke `true` untuk menghentikan Desktop dari menawarkan untuk mengingat kata sandi SSH serta dari menggunakan atau menampilkan kata sandi yang telah disimpannya sebelumnya. Mengaktifkannya tidak menghapus kata sandi tersebut. Dibaca dari pengaturan terkelola saja. Memerlukan Claude Desktop v1.49585.0 atau lebih baru. |

env-vars.md +305 −304

Details

112 112 

113## Variabel113## Variabel

114 114 

115Variabel 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.115Variabel numerik seperti timeout, anggaran token, dan jumlah retry menerima notasi ilmiah dan penulisan dengan pemisah digit selain digit biasa, kecuali jika baris variabel tersebut menyebutkan bahwa variabel 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.

116 116 

117> [!NOTE]117> [!NOTE]

118>118>

119> Untuk variabel yang mengaktifkan atau menonaktifkan suatu perilaku, tetapkan `1`, `true`, `yes`, atau `on` untuk mengaktifkannya dan `0`, `false`, `no`, atau `off` untuk menonaktifkannya, dengan penulisan huruf besar atau kecil apa pun.119> Untuk variabel yang mengaktifkan atau menonaktifkan suatu perilaku, tetapkan `1`, `true`, `yes`, atau `on` untuk mengaktifkannya dan `0`, `false`, `no`, atau `off` untuk menonaktifkannya, dengan penggunaan huruf besar/kecil apa pun.

120>120>

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

122>122>

123> * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`123> * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`

124> * `DISABLE_TELEMETRY`124> * `DISABLE_TELEMETRY`


130 130 

131| Variabel | Tujuan |131| Variabel | Tujuan |

132| :- | :- |132| :- | :- |

133| `ANTHROPIC_API_KEY` | Kunci API yang dikirim sebagai header `X-Api-Key`. Jika ditetapkan, kunci ini digunakan sebagai pengganti langganan Claude Pro, Max, Ultra, 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` |133| `ANTHROPIC_API_KEY` | Kunci API yang dikirim sebagai header `X-Api-Key`. Jika ditetapkan, kunci ini digunakan sebagai pengganti langganan Claude Pro, Max, Ultra, Team, atau Enterprise Anda meskipun Anda sudah masuk. Dalam mode non-interaktif (`-p`), kunci selalu digunakan jika tersedia. 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` |

134| `ANTHROPIC_AUTH_TOKEN` | Nilai kustom untuk header `Authorization` (nilai yang Anda tetapkan di sini akan diawali dengan `Bearer `) |134| `ANTHROPIC_AUTH_TOKEN` | Nilai kustom untuk header `Authorization` (nilai yang Anda tetapkan di sini akan diawali dengan `Bearer `) |

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

136| `ANTHROPIC_AWS_BASE_URL` | Menimpa URL endpoint [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md). Gunakan untuk region kustom atau saat merutekan melalui [LLM gateway](https://code.claude.com/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](https://code.claude.com/docs/id/amazon-bedrock.md#3-configure-claude-code) |136| `ANTHROPIC_AWS_BASE_URL` | Menimpa URL endpoint [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md). Gunakan untuk region kustom atau saat merutekan melalui [LLM gateway](https://code.claude.com/docs/id/llm-gateway). Default ke `https://aws-external-anthropic.{region}.api.aws`. Claude Code menentukan region dengan [urutan prioritas yang sama seperti pada Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md#3-configure-claude-code) |

137| `ANTHROPIC_AWS_WORKSPACE_ID` | Wajib untuk [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md). Dikirim pada setiap permintaan sebagai header `anthropic-workspace-id` |137| `ANTHROPIC_AWS_WORKSPACE_ID` | Wajib untuk [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md). Dikirim pada setiap permintaan sebagai header `anthropic-workspace-id` |

138| `ANTHROPIC_BASE_URL` | Menimpa endpoint API untuk merutekan permintaan melalui proxy atau gateway. Untuk apa yang terjadi ketika gateway tersebut menolak pencarian tool MCP, lihat [Pencarian tool melalui LLM gateway](https://code.claude.com/docs/id/mcp.md#tool-search-through-a-gateway). Sejak v2.1.196, [Remote Control](https://code.claude.com/docs/id/remote-control.md#requirements) dinonaktifkan ketika variabel ini menunjuk ke host selain `api.anthropic.com`, sesuai dengan perilakunya di Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry |138| `ANTHROPIC_BASE_URL` | Menimpa endpoint API untuk merutekan permintaan melalui proxy atau gateway. Untuk apa yang terjadi ketika gateway tersebut menolak pencarian tool MCP, lihat [Pencarian tool melalui LLM gateway](https://code.claude.com/docs/id/mcp.md#tool-search-through-a-gateway). Sejak v2.1.196, [Remote Control](https://code.claude.com/docs/id/remote-control.md#requirements) dinonaktifkan ketika variabel ini mengarah ke host selain `api.anthropic.com`, sesuai dengan perilakunya pada Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry |

139| `ANTHROPIC_BEDROCK_BASE_URL` | Menimpa URL endpoint Amazon Bedrock. Gunakan untuk endpoint Amazon Bedrock kustom atau saat merutekan melalui [LLM gateway](https://code.claude.com/docs/id/llm-gateway). Lihat [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) |139| `ANTHROPIC_BEDROCK_BASE_URL` | Menimpa URL endpoint Amazon Bedrock. Gunakan untuk endpoint Amazon Bedrock kustom atau saat merutekan melalui [LLM gateway](https://code.claude.com/docs/id/llm-gateway). Lihat [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) |

140| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Menimpa URL endpoint Amazon Bedrock Mantle. Lihat [Endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#use-the-mantle-endpoint) |140| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | Menimpa URL endpoint Amazon Bedrock Mantle. Lihat [Endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#use-the-mantle-endpoint) |

141| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Prefiks profil inferensi lintas region (`us`, `eu`, `apac`, `jp`, `au`, atau `global`) yang dicoba Claude Code terlebih dahulu sebagai pengganti prefiks yang diturunkan dari region AWS. Diabaikan di region AWS GovCloud. Memerlukan Claude Code v2.1.224 atau yang lebih baru. Lihat [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md#cross-region-inference-profile-prefixes) |141| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Prefiks profil inferensi lintas region (`us`, `eu`, `apac`, `jp`, `au`, atau `global`) yang dicoba Claude Code terlebih dahulu, alih-alih prefiks yang diturunkan dari region AWS. Diabaikan di region AWS GovCloud. Memerlukan Claude Code v2.1.224 atau lebih baru. Lihat [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md#cross-region-inference-profile-prefixes) |

142| `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](https://code.claude.com/docs/id/amazon-bedrock.md#service-tiers) |142| `ANTHROPIC_BEDROCK_SERVICE_TIER` | [Tingkat layanan](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html) Amazon Bedrock (`default`, `flex`, atau `priority`). Lihat [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md#service-tiers) |

143| `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. Tidak seperti [flag `--betas`](https://code.claude.com/docs/id/cli-reference#cli-flags), yang memerlukan autentikasi kunci API, variabel ini berfungsi dengan semua metode autentikasi termasuk langganan Claude.ai |143| `ANTHROPIC_BETAS` | Daftar nilai header `anthropic-beta` tambahan yang dipisahkan koma untuk disertakan dalam permintaan API. Claude Code sudah mengirim header beta yang diperlukannya; gunakan ini untuk ikut serta dalam [beta Anthropic API](https://platform.claude.com/docs/en/api/beta-headers) sebelum Claude Code menambahkan dukungan bawaan. Tidak seperti [flag `--betas`](https://code.claude.com/docs/id/cli-reference#cli-flags), yang memerlukan autentikasi kunci API, variabel ini berfungsi dengan semua metode autentikasi termasuk langganan Claude.ai |

144| `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](https://code.claude.com/docs/id/errors.md#invalid-request-header-value) mencantumkan set karakter yang tepat dan tempat pemeriksaan dijalankan. Nilai yang menetapkan header kredensial, organisasi atau tenant, perutean, atau perilaku API, seperti `Authorization` atau `Host`, dihitung sebagai [pengaturan yang memerlukan persetujuan](https://code.claude.com/docs/id/server-managed-settings.md#environment-variables-and-the-approval-dialog) ketika pengaturan yang dikelola server mengirimkannya. Dari pengaturan proyek atau lokal, nilai seperti itu mengikuti [aturan tentang kapan nilai `env` diterapkan](https://code.claude.com/docs/id/settings-reference#when-claude-code-applies-env-values) |144| `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 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](https://code.claude.com/docs/id/errors.md#invalid-request-header-value) mencantumkan set karakter yang tepat dan di mana pemeriksaan dijalankan. Nilai yang menetapkan header kredensial, organisasi atau tenant, perutean, atau perilaku API, seperti `Authorization` atau `Host`, terhitung sebagai [pengaturan yang memerlukan persetujuan](https://code.claude.com/docs/id/server-managed-settings.md#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` diterapkan](https://code.claude.com/docs/id/settings-reference#when-claude-code-applies-env-values) |

145| `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](https://code.claude.com/docs/id/model-config.md#add-a-custom-model-option) |145| `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 menggantikan alias bawaan. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#add-a-custom-model-option) |

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

147| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Nama tampilan untuk entri model kustom di pemilih `/model`. Jika tidak ditetapkan, entri menampilkan nama model jika Claude Code [mengenali ID tersebut](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities), dan ID model jika tidak |147| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | Nama tampilan untuk entri model kustom di pemilih `/model`. Jika tidak ditetapkan, entri menampilkan nama model jika Claude Code [mengenali ID tersebut](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities), dan ID model jika tidak |

148| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | Daftar [kemampuan](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) yang didukung model kustom, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |148| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | Daftar [kemampuan](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) yang didukung model kustom, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |

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


154| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Haiku yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan deskripsi default yang diawali `Custom Haiku model`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |154| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Haiku yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan deskripsi default yang diawali `Custom Haiku model`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |

155| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | Nama tampilan untuk model Haiku yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |155| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | Nama tampilan untuk model Haiku yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |

156| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kemampuan](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) yang didukung model Haiku yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |156| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kemampuan](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) yang didukung model Haiku yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |

157| `ANTHROPIC_DEFAULT_MODEL` | Model yang digunakan sesi baru secara default saat dimulai. Memerlukan Claude Code v2.1.236 atau yang lebih baru. Lihat [Menetapkan model default untuk sesi baru](https://code.claude.com/docs/id/model-config.md#set-a-default-model-for-new-sessions) |157| `ANTHROPIC_DEFAULT_MODEL` | Model yang digunakan sesi baru secara default. Memerlukan Claude Code v2.1.236 atau lebih baru. Lihat [Tetapkan model default untuk sesi baru](https://code.claude.com/docs/id/model-config.md#set-a-default-model-for-new-sessions) |

158| `ANTHROPIC_DEFAULT_OPUS_MODEL` | ID model yang menjadi tujuan alias `opus`, dan yang digunakan `opusplan` saat Plan Mode aktif. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#environment-variables) |158| `ANTHROPIC_DEFAULT_OPUS_MODEL` | ID model yang menjadi tujuan alias `opus`, dan yang digunakan `opusplan` saat Plan Mode aktif. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#environment-variables) |

159| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Opus yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan deskripsi default yang diawali `Custom Opus model`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |159| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Opus yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan deskripsi default yang diawali `Custom Opus model`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |

160| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | Nama tampilan untuk model Opus yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |160| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | Nama tampilan untuk model Opus yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |


163| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Sonnet yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan deskripsi default yang diawali `Custom Sonnet model`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |163| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | Deskripsi tampilan untuk model Sonnet yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan deskripsi default yang diawali `Custom Sonnet model`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |

164| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Nama tampilan untuk model Sonnet yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |164| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | Nama tampilan untuk model Sonnet yang disematkan di pemilih `/model`. Jika tidak ditetapkan, baris menampilkan nama model jika Claude Code mengenali ID yang disematkan, dan ID yang disematkan jika tidak. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |

165| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kemampuan](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) yang didukung model Sonnet yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |165| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | Daftar [kemampuan](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) yang didukung model Sonnet yang disematkan, dipisahkan koma, misalnya `effort,thinking`. Lihat [Konfigurasi model](https://code.claude.com/docs/id/model-config.md#customize-pinned-model-display-and-capabilities) |

166| `ANTHROPIC_FEDERATION_RULE_ID` | ID aturan federasi untuk [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Ketika Anda menetapkannya bersama dengan `ANTHROPIC_ORGANIZATION_ID`, Claude Code memilih kredensial federasi, yang peringkatnya di atas kredensial `/login` Anda. Lihat [prioritas autentikasi](https://code.claude.com/docs/id/authentication.md#authentication-precedence) |166| `ANTHROPIC_FEDERATION_RULE_ID` | ID aturan federasi untuk [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Jika Anda menetapkannya bersama `ANTHROPIC_ORGANIZATION_ID`, Claude Code memilih kredensial federasi, yang berprioritas lebih tinggi daripada kredensial `/login` Anda. Lihat [prioritas autentikasi](https://code.claude.com/docs/id/authentication.md#authentication-precedence) |

167| `ANTHROPIC_FOUNDRY_API_KEY` | Kunci API untuk autentikasi Microsoft Foundry (lihat [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md)) |167| `ANTHROPIC_FOUNDRY_API_KEY` | Kunci API untuk autentikasi Microsoft Foundry (lihat [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md)) |

168| `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 rantai kredensial default Azure. Lihat [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md). Memerlukan Claude Code v2.1.203 atau yang lebih baru |168| `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 rantai kredensial default Azure. Lihat [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md). Memerlukan Claude Code v2.1.203 atau lebih baru |

169| `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](https://code.claude.com/docs/id/microsoft-foundry.md)) |169| `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](https://code.claude.com/docs/id/microsoft-foundry.md)) |

170| `ANTHROPIC_FOUNDRY_RESOURCE` | Nama resource Microsoft Foundry (misalnya, `my-resource`). Claude Code [menolak URL atau nama host](https://code.claude.com/docs/id/errors.md#anthropic-foundry-resource-must-be-a-foundry-resource-name). Wajib jika `ANTHROPIC_FOUNDRY_BASE_URL` tidak ditetapkan (lihat [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md)) |170| `ANTHROPIC_FOUNDRY_RESOURCE` | Nama resource Microsoft Foundry (misalnya, `my-resource`). Claude Code [menolak URL atau nama host](https://code.claude.com/docs/id/errors.md#anthropic-foundry-resource-must-be-a-foundry-resource-name). Wajib jika `ANTHROPIC_FOUNDRY_BASE_URL` tidak ditetapkan (lihat [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md)) |

171| `ANTHROPIC_MODEL` | Nama pengaturan model yang akan digunakan (lihat [Konfigurasi Model](https://code.claude.com/docs/id/model-config.md#environment-variables)) |171| `ANTHROPIC_MODEL` | Nama pengaturan model yang akan digunakan (lihat [Konfigurasi Model](https://code.claude.com/docs/id/model-config.md#environment-variables)) |

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

173| `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](https://code.claude.com/docs/id/authentication.md#sign-in-without-an-api-key). Lihat [prioritas autentikasi](https://code.claude.com/docs/id/authentication.md#authentication-precedence) |173| `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](https://code.claude.com/docs/id/authentication.md#sign-in-without-an-api-key). Lihat [prioritas autentikasi](https://code.claude.com/docs/id/authentication.md#authentication-precedence) |

174| `ANTHROPIC_SMALL_FAST_MODEL` | \[DEPRECATED] Nama [model kelas Haiku untuk tugas latar belakang](https://code.claude.com/docs/id/costs.md) |174| `ANTHROPIC_SMALL_FAST_MODEL` | \[DEPRECATED] Nama [model kelas Haiku untuk tugas latar belakang](https://code.claude.com/docs/id/costs.md) |

175| `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 ditetapkan, karena jika tidak, Amazon Bedrock menjalankan tugas latar belakang pada [model Sonnet default atau model utama](https://code.claude.com/docs/id/amazon-bedrock.md#4-pin-model-versions) di region sesi |175| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Menimpa 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 ditetapkan, karena jika tidak, Amazon Bedrock menjalankan tugas latar belakang pada [model Sonnet default atau model utama](https://code.claude.com/docs/id/amazon-bedrock.md#4-pin-model-versions) di region sesi |

176| `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](https://code.claude.com/docs/id/llm-gateway). Lihat [Google Cloud's Agent Platform](https://code.claude.com/docs/id/google-vertex-ai.md) |176| `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](https://code.claude.com/docs/id/llm-gateway). Lihat [Google Cloud's Agent Platform](https://code.claude.com/docs/id/google-vertex-ai.md) |

177| `ANTHROPIC_VERTEX_PROJECT_ID` | ID proyek GCP yang menjadi alamat tujuan permintaan Google Cloud's Agent Platform. Lihat [Mengonfigurasi kredensial GCP](https://code.claude.com/docs/id/google-vertex-ai.md#3-configure-gcp-credentials) |177| `ANTHROPIC_VERTEX_PROJECT_ID` | ID proyek GCP yang menjadi tujuan permintaan Google Cloud's Agent Platform. Lihat [Konfigurasi kredensial GCP](https://code.claude.com/docs/id/google-vertex-ai.md#3-configure-gcp-credentials) |

178| `ANTHROPIC_WORKSPACE_ID` | ID workspace untuk [workload identity federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Tetapkan ini ketika aturan federasi Anda dicakupkan ke lebih dari satu workspace agar pertukaran token mengetahui workspace mana yang dituju |178| `ANTHROPIC_WORKSPACE_ID` | ID workspace untuk [workload identity federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Tetapkan ini jika aturan federasi Anda dicakupkan ke lebih dari satu workspace agar pertukaran token mengetahui workspace mana yang dituju |

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

180| `API_TIMEOUT_MS` | Waktu dalam milidetik yang dimiliki setiap percobaan permintaan API untuk menerima header responsnya. Ini tidak membatasi berapa lama respons streaming berjalan setelah itu. Default-nya 600000, atau 10 menit, dan maksimumnya 2147483647. Ketika Anda menetapkan nilai positif, setiap percobaan [permintaan non-streaming](https://code.claude.com/docs/id/errors.md#streaming-response-ended-before-any-complete-data-was-received) harus selesai dalam batas tersebut. Tingkatkan nilai ini ketika permintaan mengalami timeout di jaringan yang lambat atau saat merutekan melalui proxy. Tetapkan ke `0` untuk menghapus batas ini, yang memerlukan Claude Code v2.1.305 atau yang lebih baru. Dengan `0`, percobaan non-streaming tetap mengalami timeout setelah 300 detik dalam sesi lokal |180| `API_TIMEOUT_MS` | Waktu dalam milidetik yang dimiliki setiap upaya permintaan API untuk menerima header responsnya. Ini tidak membatasi berapa lama respons streaming berjalan setelah itu. Defaultnya adalah 600000, atau 10 menit, dan maksimumnya adalah 2147483647. Jika Anda menetapkan nilai positif, setiap upaya pada [permintaan non-streaming](https://code.claude.com/docs/id/errors.md#streaming-response-ended-before-any-complete-data-was-received) harus selesai dalam batas tersebut. Tingkatkan nilai ini ketika permintaan mengalami timeout pada jaringan yang lambat atau saat merutekan melalui proxy. Tetapkan ke `0` untuk menghapus batas ini, yang memerlukan Claude Code v2.1.305 atau lebih baru. Dengan `0`, upaya non-streaming tetap mengalami timeout setelah 300 detik dalam sesi lokal |

181| `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/)) |181| `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/)) |

182| `BASH_DEFAULT_TIMEOUT_MS` | Timeout default untuk perintah tool Bash atau PowerShell di latar depan, dalam milidetik (default: 120000, atau 2 menit). Nilai di atas [batas waktu default untuk perintah latar belakang](https://code.claude.com/docs/id/tools-reference.md#time-limit-for-background-commands) menggantikan default tersebut dalam sesi tanpa pengawasan. Batas waktu latar belakang memerlukan Claude Code v2.1.285 atau yang lebih baru |182| `BASH_DEFAULT_TIMEOUT_MS` | Timeout default untuk perintah tool Bash atau PowerShell di latar depan, dalam milidetik (default: 120000, atau 2 menit). Nilai di atas [batas waktu default untuk perintah latar belakang](https://code.claude.com/docs/id/tools-reference.md#time-limit-for-background-commands) menggantikan default tersebut dalam sesi tanpa pengawasan. Batas waktu latar belakang memerlukan Claude Code v2.1.285 atau lebih baru |

183| `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 menetapkan pengaturan [`bashOutputMaxChars`](https://code.claude.com/docs/id/settings-reference#bashoutputmaxchars), Claude Code mengabaikan variabel ini. Lihat [Batas output](https://code.claude.com/docs/id/tools-reference.md#output-limits) |183| `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 menetapkan pengaturan [`bashOutputMaxChars`](https://code.claude.com/docs/id/settings-reference#bashoutputmaxchars), Claude Code mengabaikan variabel ini. Lihat [Batas output](https://code.claude.com/docs/id/tools-reference.md#output-limits) |

184| `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 efektif adalah nilai yang lebih besar antara ini dan `BASH_DEFAULT_TIMEOUT_MS`. Batas atas efektif yang lebih dari 2 jam juga menjadi [batas waktu untuk perintah latar belakang](https://code.claude.com/docs/id/tools-reference.md#time-limit-for-background-commands) maksimum dalam sesi tanpa pengawasan. Batas waktu latar belakang memerlukan Claude Code v2.1.285 atau yang lebih baru |184| `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 efektif adalah nilai yang lebih besar antara ini dan `BASH_DEFAULT_TIMEOUT_MS`. Batas atas efektif yang lebih dari 2 jam juga menjadi [batas waktu untuk perintah latar belakang](https://code.claude.com/docs/id/tools-reference.md#time-limit-for-background-commands) maksimum dalam sesi tanpa pengawasan. Batas waktu latar belakang memerlukan Claude Code v2.1.285 atau lebih baru |

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

186| `CCR_FORCE_BUNDLE` | Tetapkan ke `1` untuk memaksa [`claude --cloud`](https://code.claude.com/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 |186| `CCR_FORCE_BUNDLE` | Tetapkan ke `1` untuk memaksa [`claude --cloud`](https://code.claude.com/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 |

187| `CLAUDECODE` | Ditetapkan ke `1` dalam subproses yang dijalankan Claude Code (tool Bash dan PowerShell, sesi tmux, perintah [hook](https://code.claude.com/docs/id/hooks.md), perintah [baris status](https://code.claude.com/docs/id/statusline.md), subproses [server MCP](https://code.claude.com/docs/id/mcp.md) stdio). Ekstensi IDE juga menetapkan 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` sebagai gantinya |187| `CLAUDECODE` | Ditetapkan ke `1` dalam subproses yang dijalankan Claude Code (tool Bash dan PowerShell, sesi tmux, perintah [hook](https://code.claude.com/docs/id/hooks.md), perintah [baris status](https://code.claude.com/docs/id/statusline.md), subproses [server MCP](https://code.claude.com/docs/id/mcp.md) stdio). Ekstensi IDE juga menetapkan 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 oleh Claude Code, gunakan `CLAUDE_CODE_CHILD_SESSION` sebagai gantinya |

188| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Tetapkan ke `1` untuk menonaktifkan semua tipe [subagent](https://code.claude.com/docs/id/sub-agents.md) 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 menghilangkan `subagent_type`. Panggilan seperti itu kemudian gagal dengan [`subagent_type is required`](https://code.claude.com/docs/id/errors#subagent-type-is-required) |188| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | Tetapkan ke `1` untuk menonaktifkan semua tipe [subagent](https://code.claude.com/docs/id/sub-agents.md) bawaan seperti Explore dan Plan. Hanya berlaku dalam mode non-interaktif (flag `-p`). Berguna bagi pengguna SDK yang menginginkan awal yang kosong. 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`](https://code.claude.com/docs/id/errors#subagent-type-is-required) |

189| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Tetapkan ke `1` untuk melewati prefiks `mcp__<server>__` pada nama tool dari server MCP yang dibuat SDK. Tool menggunakan nama aslinya. Hanya untuk penggunaan SDK |189| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | Tetapkan ke `1` untuk melewati prefiks `mcp__<server>__` pada nama tool dari server MCP yang dibuat SDK. Tool menggunakan nama aslinya. Hanya untuk penggunaan SDK |

190| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Timeout macet dalam milidetik untuk subagent. Juga mencakup [agent workflow](https://code.claude.com/docs/id/workflows.md#when-an-agent-stalls-and-restarts) pada Claude Code v2.1.286 atau yang lebih baru. Default `600000` (10 menit); jika Anda menaikkan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` saat stream watchdog aktif, default ikut naik, seperti yang dijelaskan di [Menangani respons API yang lambat atau macet](https://code.claude.com/docs/id/agent-sdk/typescript.md#handle-slow-or-stalled-api-responses) |190| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | Timeout macet dalam milidetik untuk subagent. Juga mencakup [agent workflow](https://code.claude.com/docs/id/workflows.md#when-an-agent-stalls-and-restarts) pada Claude Code v2.1.286 atau lebih baru. 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](https://code.claude.com/docs/id/agent-sdk/typescript.md#handle-slow-or-stalled-api-responses) |

191| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Menetapkan persentase (1-100) dari jendela auto-compact saat 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. Ini hanya berlaku dalam sesi yang [melakukan compaction sebelum batas konteks model](https://code.claude.com/docs/id/model-config.md#context-window-and-auto-compaction). Berlaku untuk percakapan utama maupun subagent |191| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | Tetapkan persentase (1-100) dari jendela auto-compact saat 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. Ini hanya berlaku dalam sesi yang [melakukan compaction sebelum batas konteks model](https://code.claude.com/docs/id/model-config.md#context-window-and-auto-compaction). Berlaku untuk percakapan utama dan subagent |

192| `CLAUDE_AUTO_BACKGROUND_TASKS` | Tetapkan ke `1` untuk memaksa mengaktifkan pemindahan otomatis tugas agent yang berjalan lama ke latar belakang. Jika diaktifkan, [subagent](https://code.claude.com/docs/id/sub-agents.md#run-subagents-in-foreground-or-background) pindah ke latar belakang setelah berjalan sekitar dua menit. Jika Claude mengantrekan panggilan tool seperti pengeditan file di belakang subagent, subagent selesai di latar depan sebelum panggilan tersebut dimulai. Juga mengaktifkan [pemindahan otomatis panggilan tool MCP yang lama ke latar belakang](https://code.claude.com/docs/id/mcp.md#automatic-backgrounding-of-long-tool-calls) dalam mode non-interaktif pada Claude Code v2.1.212 atau yang lebih baru |192| `CLAUDE_AUTO_BACKGROUND_TASKS` | Tetapkan ke `1` untuk memaksa pengaktifan pemindahan otomatis tugas agent yang berjalan lama ke latar belakang. Jika diaktifkan, [subagent](https://code.claude.com/docs/id/sub-agents.md#run-subagents-in-foreground-or-background) berpindah ke latar belakang setelah berjalan sekitar dua menit. Jika Claude mengantrekan panggilan tool seperti pengeditan file di belakang subagent, subagent diselesaikan di latar depan sebelum panggilan tersebut dimulai. Juga mengaktifkan [pemindahan otomatis panggilan tool MCP yang panjang ke latar belakang](https://code.claude.com/docs/id/mcp.md#automatic-backgrounding-of-long-tool-calls) dalam mode non-interaktif pada Claude Code v2.1.212 atau lebih baru |

193| `CLAUDE_AX_PREPARK_MS` | Dalam [mode pembaca layar](https://code.claude.com/docs/id/accessibility.md), 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`. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.233 atau yang lebih baru |193| `CLAUDE_AX_PREPARK_MS` | Dalam [mode pembaca layar](https://code.claude.com/docs/id/accessibility.md), berapa milidetik Claude Code menunggu sebelum menulis baris baru atau yang berubah. Default `0`, sehingga Claude Code tidak menunggu. Sebelum v2.1.287, defaultnya adalah `50`. Claude Code membatasi waktu tunggu maksimum pada `5000`. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.233 atau lebih baru |

194| `CLAUDE_AX_SCREEN_READER` | Tetapkan ke `1` untuk merender output yang ramah pembaca layar: teks datar tanpa border dekoratif atau animasi. Tetapkan ke `0` untuk memaksa mode pembaca layar nonaktif bahkan ketika [`axScreenReader`](https://code.claude.com/docs/id/settings-reference#axscreenreader) bernilai `true`. Flag [`--ax-screen-reader`](https://code.claude.com/docs/id/cli-reference#cli-flags) diutamakan. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.181 atau yang lebih baru |194| `CLAUDE_AX_SCREEN_READER` | Tetapkan ke `1` untuk merender output yang ramah pembaca layar: teks datar tanpa border dekoratif atau animasi. Tetapkan ke `0` untuk memaksa mode pembaca layar nonaktif bahkan ketika [`axScreenReader`](https://code.claude.com/docs/id/settings-reference#axscreenreader) bernilai `true`. Flag [`--ax-screen-reader`](https://code.claude.com/docs/id/cli-reference#cli-flags) diutamakan. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.181 atau lebih baru |

195| `CLAUDE_AX_STARTUP_QUIET_MS` | Dalam [mode pembaca layar](https://code.claude.com/docs/id/accessibility.md), berapa milidetik Claude Code menahan render antarmuka pertama setelah baris konfirmasi startup. Pembaca layar Anda kemudian dapat membacakan baris tersebut secara penuh sebelum output baru menyelanya. Default `3000`. Tetapkan `0` untuk merender segera. Claude Code membatasi penahanan pada `600000` (10 menit). Penekanan tombol pertama Anda mengakhiri penahanan lebih awal. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.217 atau yang lebih baru |195| `CLAUDE_AX_STARTUP_QUIET_MS` | Dalam [mode pembaca layar](https://code.claude.com/docs/id/accessibility.md), berapa milidetik Claude Code menahan render antarmuka pertama setelah baris konfirmasi startup. Pembaca layar Anda kemudian dapat mengucapkan baris tersebut secara lengkap sebelum output baru menyelanya. Default `3000`. Tetapkan `0` untuk merender segera. Claude Code membatasi penahanan maksimum pada `600000` (10 menit). Penekanan tombol pertama Anda mengakhiri penahanan lebih awal. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.217 atau lebih baru |

196| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Kembali ke direktori kerja asli setelah setiap perintah Bash atau PowerShell dalam sesi utama |196| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | Kembali ke direktori kerja awal setelah setiap perintah Bash atau PowerShell di sesi utama |

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

198| `CLAUDE_CLIENT_PRESENCE_FILE` | Path ke file yang dibuat oleh tool eksternal, seperti listener kunci layar, ketika Anda membuka kunci layar dan dihapus ketika Anda menguncinya. Selama file tersebut ada, Claude Code melewati [notifikasi push seluler Remote Control](https://code.claude.com/docs/id/remote-control.md#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 yang lebih baru |198| `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](https://code.claude.com/docs/id/remote-control.md#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 satu kali per event yang memicu push, bukan melakukan polling terus-menerus. Memerlukan Claude Code v2.1.181 atau lebih baru |

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

200| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Tetapkan 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 |200| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | Tetapkan 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 |

201| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Tetapkan ke `1` untuk menggambar ulang seluruh layar pada setiap frame dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md) 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](https://code.claude.com/docs/id/agent-view.md) di Windows |201| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | Tetapkan ke `1` untuk menggambar ulang seluruh layar pada setiap frame dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md) 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](https://code.claude.com/docs/id/agent-view.md) di Windows |

202| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Tetapkan ke `1` untuk mengirim parameter [effort](https://code.claude.com/docs/id/model-config.md#adjust-effort-level) pada setiap permintaan, bahkan ketika Claude Code tidak mengenali ID model sebagai model yang mendukung effort. Gunakan ini saat merutekan melalui [LLM gateway](https://code.claude.com/docs/id/llm-gateway) atau penyedia pihak ketiga yang menyajikan model dengan pengenal kustom. Model yang menolak parameter effort di API, termasuk Claude Opus 4.1, Claude Sonnet 4.5, Claude Haiku 4.5, dan model sebelumnya, tetap dikecualikan sehingga permintaan tidak gagal |202| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | Tetapkan ke `1` untuk mengirim parameter [effort](https://code.claude.com/docs/id/model-config.md#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](https://code.claude.com/docs/id/llm-gateway) atau penyedia pihak ketiga yang menyajikan model dengan identifier kustom. Model yang menolak parameter effort di API, termasuk Claude Opus 4.1, Claude Sonnet 4.5, Claude Haiku 4.5, dan model yang lebih lama, tetap dikecualikan agar permintaan tidak gagal |

203| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Interval dalam milidetik saat kredensial harus diperbarui (saat menggunakan [`apiKeyHelper`](https://code.claude.com/docs/id/settings-reference#apikeyhelper)) |203| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | Interval dalam milidetik saat kredensial harus diperbarui (saat menggunakan [`apiKeyHelper`](https://code.claude.com/docs/id/settings-reference#apikeyhelper)) |

204| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Tetapkan ke `0` untuk menghentikan Claude Code membuka browser secara otomatis ketika [artifact](https://code.claude.com/docs/id/artifacts.md#create-an-artifact) baru dipublikasikan |204| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | Tetapkan ke `0` untuk mencegah Claude Code membuka browser secara otomatis ketika [artifact](https://code.claude.com/docs/id/artifacts.md#create-an-artifact) baru dipublikasikan |

205| `CLAUDE_CODE_ARTIFACT_COMMENTS` | Tetapkan ke `0` untuk menghentikan Claude membaca dan membalas [komentar pada artifact](https://code.claude.com/docs/id/artifacts.md#collect-comments-on-an-artifact). Tidak berpengaruh ketika `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` telah [menonaktifkan artifact](https://code.claude.com/docs/id/artifacts.md#availability). Memerlukan Claude Code v2.1.221 atau yang lebih baru |205| `CLAUDE_CODE_ARTIFACT_COMMENTS` | Tetapkan ke `0` untuk menghentikan Claude membaca dan membalas [komentar pada artifact](https://code.claude.com/docs/id/artifacts.md#collect-comments-on-an-artifact). Tidak berpengaruh ketika `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` telah [menonaktifkan artifact](https://code.claude.com/docs/id/artifacts.md#availability). Memerlukan Claude Code v2.1.221 atau lebih baru |

206| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | Tetapkan ke `0` untuk menghentikan Claude [membalas secara mandiri komentar yang dikirimkan kepadanya](https://code.claude.com/docs/id/artifacts.md#let-claude-reply-to-comments-on-its-own). Memerlukan Claude Code v2.1.228 atau yang lebih baru |206| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | Tetapkan ke `0` untuk menghentikan Claude [membalas sendiri komentar yang dikirimkan kepadanya](https://code.claude.com/docs/id/artifacts.md#let-claude-reply-to-comments-on-its-own). Memerlukan Claude Code v2.1.228 atau lebih baru |

207| `CLAUDE_CODE_ARTIFACT_PUBLISH_EDITS` | Tetapkan ke `0` untuk menghentikan Claude menerapkan perubahan kecil pada file [artifact](https://code.claude.com/docs/id/artifacts.md#update-an-artifact) sebagai bagian dari publikasinya. Claude kemudian mengedit file dengan tool pengeditan filenya dan memublikasikannya sebagai langkah terpisah. Memerlukan Claude Code v2.1.300 atau yang lebih baru |207| `CLAUDE_CODE_ARTIFACT_PUBLISH_EDITS` | Tetapkan ke `0` untuk menghentikan Claude menerapkan perubahan kecil pada file [artifact](https://code.claude.com/docs/id/artifacts.md#update-an-artifact) sebagai bagian dari proses publikasinya. Claude kemudian mengedit file dengan tool pengeditan filenya dan memublikasikannya sebagai langkah terpisah. Memerlukan Claude Code v2.1.300 atau lebih baru |

208| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Tetapkan ke `0` untuk menghilangkan [blok atribusi](https://code.claude.com/docs/id/llm-gateway-protocol.md#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](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) bahkan ketika Anda menetapkan `0`. Di [Blok atribusi system prompt](https://code.claude.com/docs/id/llm-gateway-protocol.md#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 tetapkan ke `0` ketika LLM gateway Anda melakukan cache berdasarkan body permintaan atau meneruskan permintaan ke penyedia pihak ketiga, atau ketika Anda terhubung ke Microsoft Foundry secara langsung |208| `CLAUDE_CODE_ATTRIBUTION_HEADER` | Tetapkan ke `0` untuk menghilangkan [blok atribusi](https://code.claude.com/docs/id/llm-gateway-protocol.md#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 menyertakan blok tersebut pada permintaan pengklasifikasi [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) bahkan ketika Anda menetapkan `0`. Di [Blok atribusi system prompt](https://code.claude.com/docs/id/llm-gateway-protocol.md#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 tetapkan ke `0` ketika LLM gateway Anda melakukan cache berdasarkan body permintaan atau meneruskan permintaan ke penyedia pihak ketiga, atau ketika Anda terhubung ke Microsoft Foundry secara langsung |

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

210| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Menetapkan jendela auto-compact, yaitu seberapa penuh konteks sebelum compaction, dari `100000` hingga `1000000` token. Nilai dengan sufiks seperti `200k` memerlukan v2.1.304 atau yang lebih baru. Untuk prioritas terhadap cara lain menetapkan jendela dan pengaruhnya pada `used_percentage` baris status, lihat [Menetapkan jendela auto-compact](https://code.claude.com/docs/id/model-config.md#set-the-auto-compact-window) |210| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | Tetapkan jendela auto-compact, yaitu seberapa penuh konteks sebelum compaction, dari `100000` hingga `1000000` token. Nilai dengan sufiks seperti `200k` memerlukan v2.1.304 atau lebih baru. Untuk urutan prioritas terhadap cara lain menetapkan jendela dan efeknya pada `used_percentage` baris status, lihat [Tetapkan jendela auto-compact](https://code.claude.com/docs/id/model-config.md#set-the-auto-compact-window) |

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

212| `CLAUDE_CODE_AUTO_MODE_MODEL` | Menetapkan model untuk permintaan pengklasifikasi yang dikirim Claude Code dalam [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode). Gunakan ID model lengkap seperti `claude-sonnet-4-6`. Untuk kasus ketika Claude Code mengabaikannya, lihat [Memilih model pengklasifikasi](https://code.claude.com/docs/id/permission-modes.md#choose-the-classifier-model). Memerlukan Claude Code v2.1.302 atau yang lebih baru |212| `CLAUDE_CODE_AUTO_MODE_MODEL` | Menetapkan model untuk permintaan pengklasifikasi yang dikirim Claude Code dalam [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode). Gunakan ID model lengkap seperti `claude-sonnet-4-6`. Untuk kasus ketika Claude Code mengabaikannya, lihat [Pilih model pengklasifikasi](https://code.claude.com/docs/id/permission-modes.md#choose-the-classifier-model). Memerlukan Claude Code v2.1.302 atau lebih baru |

213| `CLAUDE_CODE_AUTO_MODE_SERVER` | Mengontrol apakah Claude Code meminta server untuk [meninjau tindakan auto mode](https://code.claude.com/docs/id/permission-modes.md#server-side-classifier-review). Tetapkan ke `0` untuk menggunakan permintaan pengklasifikasi milik Claude Code sendiri. 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 ditetapkan, dan sejak versi berapa. Memerlukan Claude Code v2.1.271 atau yang lebih baru |213| `CLAUDE_CODE_AUTO_MODE_SERVER` | Mengontrol apakah Claude Code meminta server untuk [meninjau tindakan auto mode](https://code.claude.com/docs/id/permission-modes.md#server-side-classifier-review). Tetapkan 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 server ketika variabel tidak ditetapkan, dan sejak versi mana. Memerlukan Claude Code v2.1.271 atau lebih baru |

214| `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`](https://code.claude.com/docs/id/errors#aws-default-chain-credential-resolve-timed-out) (default: `60000`). Naikkan nilai ini ketika suatu langkah dalam rantai Anda memang membutuhkan waktu lebih lama, seperti masuk SSO berbasis browser dengan MFA melalui wrapper seperti `aws-vault`. Berlaku di Amazon Bedrock, [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md), dan [endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#use-the-mantle-endpoint). Lihat [caching kredensial dan timeout resolusi](https://code.claude.com/docs/id/amazon-bedrock.md#credential-caching-and-resolution-timeout). Memerlukan Claude Code v2.1.207 atau yang lebih baru |214| `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`](https://code.claude.com/docs/id/errors#aws-default-chain-credential-resolve-timed-out) (default: `60000`). Naikkan nilai ini ketika sebuah langkah dalam rantai Anda memang memerlukan waktu lebih lama, seperti proses masuk SSO berbasis browser dengan MFA melalui wrapper seperti `aws-vault`. Berlaku pada Amazon Bedrock, [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md), dan [endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#use-the-mantle-endpoint). Lihat [caching kredensial dan timeout resolusi](https://code.claude.com/docs/id/amazon-bedrock.md#credential-caching-and-resolution-timeout). Memerlukan Claude Code v2.1.207 atau lebih baru |

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

216| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | Tetapkan 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 agent latar belakang atau eksekusi [workflow](https://code.claude.com/docs/id/workflows.md) masih aktif. 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 penonaktifan `0` memerlukan Claude Code v2.1.269 atau yang lebih baru; pada versi sebelumnya, tetapkan `1` untuk mempertahankan status berjalan |216| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | Tetapkan 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 agent latar belakang atau run [workflow](https://code.claude.com/docs/id/workflows.md) 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 mempertahankan status berjalan. Default status berjalan dan opsi keluar `0` memerlukan Claude Code v2.1.269 atau lebih baru; pada versi sebelumnya, tetapkan `1` untuk mempertahankan status berjalan |

217| `CLAUDE_CODE_BRIDGE_SESSION_ID` | Ditetapkan secara otomatis dalam subproses tool Bash dan [perintah hook](https://code.claude.com/docs/id/hooks.md) selama sesi memiliki koneksi [Remote Control](https://code.claude.com/docs/id/remote-control.md) 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](https://code.claude.com/docs/id/claude-code-on-the-web.md), baca `CLAUDE_CODE_REMOTE_SESSION_ID` sebagai gantinya |217| `CLAUDE_CODE_BRIDGE_SESSION_ID` | Ditetapkan secara otomatis dalam subproses tool Bash dan [perintah hook](https://code.claude.com/docs/id/hooks.md) selama sesi memiliki koneksi [Remote Control](https://code.claude.com/docs/id/remote-control.md) aktif, dan dihapus saat koneksi berakhir. Nilainya adalah ID sesi dalam bentuk `session_`, identifier 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. Dalam [sesi cloud](https://code.claude.com/docs/id/claude-code-on-the-web.md), baca `CLAUDE_CODE_REMOTE_SESSION_ID` sebagai gantinya |

218| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | Tetapkan 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` adalah `mintty` atau `TERM` adalah `cygwin`, dan sebagai Backspace biasa di macOS dan Linux. Tetapkan `0` di terminal Windows tempat [Backspace menghapus seluruh kata](https://code.claude.com/docs/id/terminal-config.md#fix-backspace-deleting-a-whole-word-on-windows) |218| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | Tetapkan 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. Tetapkan `0` di terminal Windows tempat [Backspace menghapus seluruh kata](https://code.claude.com/docs/id/terminal-config.md#fix-backspace-deleting-a-whole-word-on-windows) |

219| `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](https://code.claude.com/docs/id/network-config.md#ca-certificate-store). Default-nya `bundled,system` |219| `CLAUDE_CODE_CERT_STORE` | Daftar sumber sertifikat CA untuk koneksi TLS, dipisahkan koma. `bundled` adalah set 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](https://code.claude.com/docs/id/network-config.md#ca-certificate-store). Default adalah `bundled,system` |

220| `CLAUDE_CODE_CHILD_SESSION` | Ditetapkan ke `1` dalam subproses yang dijalankan Claude Code melalui tool Bash, PowerShell, dan Monitor, perintah [hook](https://code.claude.com/docs/id/hooks.md), dan perintah [baris status](https://code.claude.com/docs/id/statusline.md). Tidak ditetapkan untuk subproses [server MCP](https://code.claude.com/docs/id/mcp.md) stdio, yang berumur panjang dan hidup lebih lama dari sesi yang menjalankannya. Tidak seperti `CLAUDECODE`, ini hanya ditetapkan oleh Claude Code sendiri ketika menjalankan subproses dan tidak oleh ekstensi IDE, sehingga dapat secara 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. Tetapkan `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` untuk menimpa pengecualian ini. Memerlukan Claude Code v2.1.172 atau yang lebih baru |220| `CLAUDE_CODE_CHILD_SESSION` | Ditetapkan ke `1` dalam subproses yang dijalankan Claude Code melalui tool Bash, PowerShell, dan Monitor, perintah [hook](https://code.claude.com/docs/id/hooks.md), dan perintah [baris status](https://code.claude.com/docs/id/statusline.md). Tidak ditetapkan untuk subproses [server MCP](https://code.claude.com/docs/id/mcp.md) stdio, yang berumur panjang dan bertahan lebih lama daripada sesi yang menjalankannya. Tidak seperti `CLAUDECODE`, ini hanya ditetapkan oleh Claude Code sendiri saat 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. Tetapkan `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` untuk menimpa pengecualian ini. Memerlukan Claude Code v2.1.172 atau lebih baru |

221| `CLAUDE_CODE_CLIENT_CERT` | Path ke file sertifikat klien untuk autentikasi mTLS |221| `CLAUDE_CODE_CLIENT_CERT` | Path ke file sertifikat klien untuk autentikasi mTLS |

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

223| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Passphrase untuk CLAUDE\_CODE\_CLIENT\_KEY yang terenkripsi (opsional) |223| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | Passphrase untuk CLAUDE\_CODE\_CLIENT\_KEY yang dienkripsi (opsional) |

224| `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` sebagai gantinya. Untuk fase header respons dari permintaan streaming, lihat `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |224| `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` sebagai gantinya. Untuk fase header respons dari permintaan streaming, lihat `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |

225| `CLAUDE_CODE_DEBUG_LOGS_DIR` | Menimpa path file log debug. Terlepas dari namanya, ini adalah path file, bukan direktori. Memerlukan mode debug diaktifkan secara terpisah melalui `--debug`, `/debug`, atau environment variable `DEBUG`: menetapkan variabel ini saja tidak mengaktifkan logging. Flag [`--debug-file`](https://code.claude.com/docs/id/cli-reference#cli-flags) melakukan keduanya sekaligus. Default-nya `~/.claude/debug/<session-id>.txt` |225| `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`: menetapkan variabel ini saja tidak mengaktifkan logging. Flag [`--debug-file`](https://code.claude.com/docs/id/cli-reference#cli-flags) melakukan keduanya sekaligus. Default ke `~/.claude/debug/<session-id>.txt` |

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

227| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Tetapkan ke `1` untuk menonaktifkan dukungan [context window 1M](https://code.claude.com/docs/id/model-config.md#extended-context). Claude Code menghapus varian model `[1m]` dari pemilih model dan membatasi model yang secara default berjalan dengan jendela 1M ke jendela 200K. Lihat [Menonaktifkan konteks 1M](https://code.claude.com/docs/id/model-config.md#turn-off-1m-context). Berguna untuk lingkungan perusahaan dengan persyaratan kepatuhan. Untuk perannya dalam mengoreksi jendela untuk ID model `[1m]` yang tidak dikenali, lihat [Mengoreksi jendela untuk ID model gateway atau kustom](https://code.claude.com/docs/id/model-config.md#correct-the-window-for-a-gateway-or-custom-model-id) |227| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | Tetapkan ke `1` untuk mematikan dukungan [context window 1M](https://code.claude.com/docs/id/model-config.md#extended-context). Claude Code menghapus varian model `[1m]` dari pemilih model dan membatasi model yang secara default berjalan dengan jendela 1M ke jendela 200K. Lihat [Matikan konteks 1M](https://code.claude.com/docs/id/model-config.md#turn-off-1m-context). Berguna untuk lingkungan enterprise dengan persyaratan kepatuhan. Untuk perannya dalam mengoreksi jendela untuk ID model `[1m]` yang tidak dikenali, lihat [Koreksi jendela untuk ID model gateway atau kustom](https://code.claude.com/docs/id/model-config.md#correct-the-window-for-a-gateway-or-custom-model-id) |

228| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Tetapkan ke `1` untuk menonaktifkan [penalaran adaptif](https://code.claude.com/docs/id/model-config.md#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](https://code.claude.com/docs/id/model-config.md#extended-thinking), Sonnet 5 dan yang lebih baru, Haiku 5.5, atau Opus 4.7 dan yang lebih baru, yang selalu menggunakan penalaran adaptif |228| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | Tetapkan ke `1` untuk menonaktifkan [penalaran adaptif](https://code.claude.com/docs/id/model-config.md#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](https://code.claude.com/docs/id/model-config.md#extended-thinking), Sonnet 5 dan yang lebih baru, Haiku 5.5, atau Opus 4.7 dan yang lebih baru, yang selalu menggunakan penalaran adaptif |

229| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Tetapkan ke `1` untuk menonaktifkan [tool advisor](https://code.claude.com/docs/id/advisor.md). Perintah `/advisor` menjadi tidak tersedia, `advisorModel` yang dikonfigurasi akan diabaikan, dan flag `--advisor` diterima tetapi tidak berpengaruh, sehingga skrip yang sudah ada yang meneruskannya tetap berfungsi tanpa error |229| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | Tetapkan ke `1` untuk menonaktifkan [tool advisor](https://code.claude.com/docs/id/advisor.md). 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 |

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

231| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Tetapkan ke `1` untuk menonaktifkan [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md) 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`](https://code.claude.com/docs/id/settings-reference#tui). Anda juga dapat beralih dengan `/tui default`. Tidak berlaku untuk sesi latar belakang yang dibuka dari [tampilan agent](https://code.claude.com/docs/id/agent-view.md), yang selalu menggunakan rendering layar penuh |231| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | Tetapkan ke `1` untuk menonaktifkan [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md) 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`](https://code.claude.com/docs/id/settings-reference#tui). Anda juga dapat beralih dengan `/tui default`. Tidak berlaku untuk sesi latar belakang yang dibuka dari [agent view](https://code.claude.com/docs/id/agent-view.md), yang selalu menggunakan rendering layar penuh |

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

233| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Tetapkan ke `1` untuk menonaktifkan pemrosesan lampiran. Penyebutan file dengan sintaks `@` dikirim sebagai teks biasa alih-alih diperluas menjadi konten file. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |233| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | Tetapkan ke `1` untuk menonaktifkan pemrosesan lampiran. Penyebutan file dengan sintaks `@` dikirim sebagai teks biasa alih-alih diperluas menjadi konten file. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |

234| `CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK` | Tetapkan ke `1` agar proses Claude Code menjalankan sendiri perintah [`gcpAuthRefresh`](https://code.claude.com/docs/id/settings-reference#gcpauthrefresh) atau [`awsAuthRefresh`](https://code.claude.com/docs/id/settings-reference#awsauthrefresh) alih-alih menunggu selagi proses lain menjalankannya. Memerlukan Claude Code v2.1.286 atau yang lebih baru |234| `CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK` | Tetapkan ke `1` agar proses Claude Code menjalankan sendiri perintah [`gcpAuthRefresh`](https://code.claude.com/docs/id/settings-reference#gcpauthrefresh) atau [`awsAuthRefresh`](https://code.claude.com/docs/id/settings-reference#awsauthrefresh) alih-alih menunggu selagi proses lain menjalankannya. Memerlukan Claude Code v2.1.286 atau lebih baru |

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

236| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Atur ke `1` untuk menghapus parameter `run_in_background` dari tool Bash, PowerShell, dan subagent serta mematikan pintasan Ctrl+B dan eksekusi latar belakang [skill yang di-fork](https://code.claude.com/docs/id/skills.md#run-skills-in-a-subagent). Claude Code kemudian juga berhenti memindahkan subagent, panggilan tool MCP yang panjang, dan perintah shell yang mengalami timeout ke latar belakang secara otomatis. [Tugas MCP](https://code.claude.com/docs/id/mcp.md#make-claude-wait-for-the-result-of-an-mcp-task) dan [tool Monitor](https://code.claude.com/docs/id/tools-reference.md#monitor-tool) tetap berjalan di latar belakang. Untuk mematikan [sesi latar belakang](https://code.claude.com/docs/id/agent-view.md#turn-off-agent-view) juga, atur `CLAUDE_CODE_DISABLE_AGENT_VIEW` ke `1` |236| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Tetapkan ke `1` untuk menghapus parameter `run_in_background` dari tool Bash, PowerShell, dan subagent serta mematikan pintasan Ctrl+B dan run latar belakang dari [skill yang di-fork](https://code.claude.com/docs/id/skills.md#run-skills-in-a-subagent). Claude Code kemudian juga berhenti memindahkan subagent, panggilan tool MCP yang panjang, dan perintah shell yang mengalami timeout ke latar belakang secara otomatis. [Tugas MCP](https://code.claude.com/docs/id/mcp.md#make-claude-wait-for-the-result-of-an-mcp-task) dan [tool Monitor](https://code.claude.com/docs/id/tools-reference.md#monitor-tool) tetap berjalan di latar belakang. Untuk mematikan [sesi latar belakang](https://code.claude.com/docs/id/agent-view.md#turn-off-agent-view) juga, tetapkan `CLAUDE_CODE_DISABLE_AGENT_VIEW` ke `1` |

237| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Tetapkan ke `1` untuk menghentikan Claude Code memperlakukan respons streaming [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) 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 selain itu tidak dimodifikasi, sehingga Claude Code mendekode body dan streaming tetap berfungsi. Tetapkan 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 yang lebih baru |237| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | Tetapkan ke `1` untuk menghentikan Claude Code memperlakukan respons streaming [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) 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 selain itu tidak dimodifikasi, sehingga Claude Code mendekode body dan streaming tetap berfungsi. Tetapkan 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 |

238| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Tetapkan ke `1` untuk melewati pemeriksaan bahwa respons streaming [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) 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 tipe tersebut, yang berarti [gateway atau proxy sedang mentransformasi respons](https://code.claude.com/docs/id/amazon-bedrock.md#streaming-errors-behind-a-gateway-or-proxy). Konfigurasikan gateway untuk meneruskan header `Content-Type` dan body tanpa modifikasi daripada menetapkan variabel ini. Memerlukan Claude Code v2.1.208 atau yang lebih baru |238| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | Tetapkan ke `1` untuk melewati pemeriksaan bahwa respons streaming [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) 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 tipe tersebut, yang berarti [gateway atau proxy sedang mentransformasi respons](https://code.claude.com/docs/id/amazon-bedrock.md#streaming-errors-behind-a-gateway-or-proxy). Konfigurasikan gateway untuk meneruskan header `Content-Type` dan body tanpa modifikasi alih-alih menetapkan variabel ini. Memerlukan Claude Code v2.1.208 atau lebih baru |

239| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Tetapkan ke `1` untuk menghentikan pekerjaan yang sedang berlangsung dari [sesi latar belakang](https://code.claude.com/docs/id/agent-view.md) ketika [supervisor](https://code.claude.com/docs/id/agent-view.md#the-supervisor-process) menghentikan, memulai ulang, atau memperbarui proses sesi tersebut, alih-alih menyerahkannya ke proses berikutnya dari sesi tersebut. Pekerjaan tersebut adalah perintah shell latar belakang yang sedang berjalan dari sesi, ditambah subagent latar belakang mulai v2.1.198. Hanya memengaruhi penyerahan tersebut: memindahkan sesi ke latar belakang dengan `←` atau [`/background`](https://code.claude.com/docs/id/agent-view#from-inside-a-session) tetap membawa pekerjaan latar belakang yang sedang berlangsung. Memerlukan Claude Code v2.1.196 atau lebih baru |239| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | Tetapkan ke `1` untuk menghentikan pekerjaan yang sedang berlangsung pada [sesi latar belakang](https://code.claude.com/docs/id/agent-view.md) ketika [supervisor](https://code.claude.com/docs/id/agent-view.md#the-supervisor-process) menghentikan, memulai ulang, atau memperbarui proses sesi tersebut, alih-alih menyerahkannya ke proses sesi berikutnya. Pekerjaan tersebut adalah perintah shell latar belakang yang sedang berjalan pada sesi, ditambah subagent latar belakang sejak v2.1.198. Hanya memengaruhi penyerahan tersebut: memindahkan sesi ke latar belakang dengan `←` atau [`/background`](https://code.claude.com/docs/id/agent-view#from-inside-a-session) tetap membawa pekerjaan latar belakang yang sedang berlangsung. Memerlukan Claude Code v2.1.196 atau lebih baru |

240| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Tetapkan ke `1` untuk menghentikan Claude Code mengakhiri [perintah shell latar belakang](https://code.claude.com/docs/id/interactive-mode.md#background-bash-commands) saat 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 |240| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | Tetapkan ke `1` untuk menghentikan Claude Code mengakhiri [perintah shell latar belakang](https://code.claude.com/docs/id/interactive-mode.md#background-bash-commands) saat 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 |

241| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Tetapkan ke `1` untuk menonaktifkan [skill](https://code.claude.com/docs/id/skills.md) dan workflow yang disertakan dengan Claude Code: skill bawaan dan workflow dihapus seluruhnya, 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`](https://code.claude.com/docs/id/settings-reference#disablebundledskills) |241| `CLAUDE_CODE_DISABLE_BG_STABLE_PATH` | Di macOS dengan installer native, tetapkan ke `1` untuk menjalankan proses host setiap [sesi latar belakang](https://code.claude.com/docs/id/agent-view.md) dari binary yang terinstal, bukan dari `~/.local/share/claude/ClaudeCode.app`. macOS kemudian mungkin meminta kembali izin seperti [akses folder](https://code.claude.com/docs/id/agent-view.md#background-sessions-can’t-read-desktop-documents-or-downloads-on-macos), termasuk setelah setiap pembaruan. Tetapkan di [blok `env`](#in-settings-files) pengaturan pengguna, file pengaturan terkelola, atau kebijakan MDM, bukan di shell Anda. Untuk menghapus `ClaudeCode.app`, hapus sendiri. Memerlukan Claude Code v2.1.295 atau lebih baru |

242| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Untuk host yang menyematkan Claude Code dan menyediakan panduan browser mereka sendiri. Tetapkan ke `1` agar tool browser [Claude in Chrome](https://code.claude.com/docs/id/chrome.md) tetap tersedia sambil menghilangkan bagian Chrome dari system prompt dan [skill bawaan](https://code.claude.com/docs/id/skills.md#bundled-skills) `/claude-in-chrome`. Di VS Code, ekstensi pada v2.1.314 atau yang lebih baru juga tidak menyertakan instruksi Claude in Chrome dalam pesan sesi. Memerlukan Claude Code v2.1.257 atau yang lebih baru |242| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | Tetapkan ke `1` untuk menonaktifkan [skill](https://code.claude.com/docs/id/skills.md) 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` sebagai gantinya. Skill dari plugin, `.claude/skills/`, dan `.claude/commands/` tidak terpengaruh. Setara dengan pengaturan [`disableBundledSkills`](https://code.claude.com/docs/id/settings-reference#disablebundledskills) |

243| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | Untuk host yang menyematkan Claude Code dan menyediakan panduan browser mereka sendiri. Tetapkan ke `1` untuk menjaga tool browser [Claude in Chrome](https://code.claude.com/docs/id/chrome.md) tetap tersedia sambil menghilangkan bagian Chrome dari system prompt dan [skill bawaan](https://code.claude.com/docs/id/skills.md#bundled-skills) `/claude-in-chrome`. Di VS Code, ekstensi pada v2.1.314 atau lebih baru juga menghilangkan instruksi Claude in Chrome dari pesan sesi. Memerlukan Claude Code v2.1.257 atau lebih baru |

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

244| `CLAUDE_CODE_DISABLE_CRON` | Tetapkan ke `1` untuk menonaktifkan [tugas terjadwal yang dicakupkan ke sesi](https://code.claude.com/docs/id/scheduled-tasks.md). Skill `/loop` dan tool cron menjadi tidak tersedia dan tugas apa pun yang sudah dijadwalkan berhenti dipicu, termasuk tugas yang sudah berjalan di tengah sesi |245| `CLAUDE_CODE_DISABLE_CRON` | Tetapkan ke `1` untuk menonaktifkan [tugas terjadwal cakupan sesi](https://code.claude.com/docs/id/scheduled-tasks.md). Skill `/loop` dan tool cron menjadi tidak tersedia dan tugas apa pun yang sudah dijadwalkan berhenti dipicu, termasuk tugas yang sudah berjalan di tengah sesi |

245| `CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` | Tetapkan ke `1` untuk mematikan [batas waktu dan penolakan](https://code.claude.com/docs/id/permission-modes.md#time-limits-and-denials-in-auto-and-bypasspermissions-modes) `auto` dan `bypassPermissions` pada penghapusan path kritis. Penghapusan ini kemudian dikirim ke pengklasifikasi dalam mode `auto`, dan mendapatkan permintaan izin tanpa batas waktu dalam mode `bypassPermissions` di mana pun Claude Code dapat menampilkannya. Tetapkan di lingkungan yang menjalankan Claude Code, karena Claude Code mengabaikan salinan yang dikirim melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.281 atau yang lebih baru |246| `CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` | Tetapkan ke `1` untuk mematikan [batas waktu dan penolakan](https://code.claude.com/docs/id/permission-modes.md#time-limits-and-denials-in-auto-and-bypasspermissions-modes) `auto` dan `bypassPermissions` pada penghapusan path kritis. Penghapusan ini kemudian diteruskan ke pengklasifikasi dalam mode `auto`, dan mendapatkan permintaan izin tanpa batas waktu dalam mode `bypassPermissions` di mana pun Claude Code dapat menampilkannya. Tetapkan di lingkungan yang meluncurkan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.281 atau lebih baru |

246| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Tetapkan 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 gateway proxy menolak permintaan dengan error `Unexpected value(s)` untuk header `anthropic-beta` atau error `Extra inputs are not permitted`. [Menonaktifkan kemampuan pra-rilis](https://code.claude.com/docs/id/llm-gateway-protocol.md#disable-pre-release-capabilities) mencantumkan apa yang dihapus oleh variabel ini, termasuk [MCP Tool Search](https://code.claude.com/docs/id/mcp.md#scale-with-mcp-tool-search), dan apa yang tetap dikirim Claude Code |247| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | Tetapkan 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`. [Nonaktifkan kemampuan pra-rilis](https://code.claude.com/docs/id/llm-gateway-protocol.md#disable-pre-release-capabilities) mencantumkan apa yang dihapus variabel ini, termasuk [MCP Tool Search](https://code.claude.com/docs/id/mcp.md#scale-with-mcp-tool-search), dan apa yang tetap dikirim Claude Code |

247| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | Tetapkan ke `1` untuk menonaktifkan [subagent Explore dan Plan](https://code.claude.com/docs/id/sub-agents.md#built-in-subagents) bawaan. Claude melakukan eksplorasi dengan tool pencariannya atau subagent general-purpose, dan [plan mode](https://code.claude.com/docs/id/permission-modes.md#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 tipe 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 |248| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | Tetapkan ke `1` untuk menonaktifkan [subagent Explore dan Plan](https://code.claude.com/docs/id/sub-agents.md#built-in-subagents) bawaan. Claude melakukan eksplorasi dengan tool pencariannya atau subagent general-purpose sebagai gantinya, dan [plan mode](https://code.claude.com/docs/id/permission-modes.md#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 tipe 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 lebih baru |

248| `CLAUDE_CODE_DISABLE_FAST_MODE` | Tetapkan ke `1` untuk menonaktifkan [fast mode](https://code.claude.com/docs/id/fast-mode.md) |249| `CLAUDE_CODE_DISABLE_FAST_MODE` | Tetapkan ke `1` untuk menonaktifkan [fast mode](https://code.claude.com/docs/id/fast-mode.md) |

249| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Tetapkan 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` ditetapkan, kecuali `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` mengaktifkannya kembali. Untuk menetapkan tingkat sampel alih-alih menonaktifkan sepenuhnya, gunakan pengaturan [`feedbackSurveyRate`](https://code.claude.com/docs/id/settings-reference#feedbacksurveyrate). Lihat [Survei kualitas sesi](https://code.claude.com/docs/id/data-usage.md#session-quality-surveys) |250| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | Tetapkan 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` ditetapkan, kecuali `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` mengaktifkannya kembali. Untuk menetapkan tingkat sampel alih-alih menonaktifkannya sepenuhnya, gunakan pengaturan [`feedbackSurveyRate`](https://code.claude.com/docs/id/settings-reference#feedbacksurveyrate). Lihat [Survei kualitas sesi](https://code.claude.com/docs/id/data-usage.md#session-quality-surveys) |

250| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Tetapkan ke `1` untuk menonaktifkan [checkpointing](https://code.claude.com/docs/id/checkpointing.md) file. Perintah `/rewind` tidak akan dapat memulihkan perubahan kode. Menimpa pengaturan [`fileCheckpointingEnabled`](https://code.claude.com/docs/id/settings-reference#filecheckpointingenabled) |251| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | Tetapkan ke `1` untuk menonaktifkan [checkpointing](https://code.claude.com/docs/id/checkpointing.md) file. Perintah `/rewind` tidak akan dapat memulihkan perubahan kode. Menimpa pengaturan [`fileCheckpointingEnabled`](https://code.claude.com/docs/id/settings-reference#filecheckpointingenabled) |

251| `CLAUDE_CODE_DISABLE_FILE_MENTIONS` | Tetapkan ke `1` untuk menghentikan Claude Code memperluas [penyebutan `@`](https://code.claude.com/docs/id/common-workflows#reference-files-and-directories) file dan direktori. Claude sebagai gantinya mendapatkan path yang disebutkan beserta catatan untuk membacanya menggunakan tool filenya. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.299 atau yang lebih baru |252| `CLAUDE_CODE_DISABLE_FILE_MENTIONS` | Tetapkan ke `1` untuk menghentikan Claude Code memperluas [penyebutan `@`](https://code.claude.com/docs/id/common-workflows#reference-files-and-directories) file dan direktori. Claude sebagai gantinya mendapatkan path yang disebutkan beserta catatan untuk membacanya menggunakan tool filenya. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.299 atau lebih baru |

252| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Tetapkan 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`](https://code.claude.com/docs/id/settings-reference#includegitinstructions) jika ditetapkan |253| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | Tetapkan 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`](https://code.claude.com/docs/id/settings-reference#includegitinstructions) jika ditetapkan |

253| `CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT` | Tetapkan ke `1` untuk menghentikan Claude Code membaca skrip yang diteruskan ke shell dengan `-c`, seperti `bash -c 'rm -rf ~'`, untuk penghapusan [path kritis](https://code.claude.com/docs/id/permission-modes.md#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. Tetapkan di lingkungan yang menjalankan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.288 atau yang lebih baru |254| `CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT` | Tetapkan ke `1` untuk menghentikan Claude Code membaca skrip yang diteruskan ke shell dengan `-c`, seperti `bash -c 'rm -rf ~'`, untuk penghapusan [path kritis](https://code.claude.com/docs/id/permission-modes.md#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. Tetapkan di lingkungan yang meluncurkan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.288 atau lebih baru |

254| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Tetapkan ke `1` untuk mencegah pemetaan ulang otomatis Opus 4 dan Opus 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 |255| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | Tetapkan ke `1` untuk mencegah pemetaan ulang otomatis Opus 4 dan Opus 4.1 ke versi Opus saat ini di 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 |

255| `CLAUDE_CODE_DISABLE_MCP_TASK_BACKGROUND` | Tetapkan ke `1` agar Claude menunggu hasil [tugas MCP](https://code.claude.com/docs/id/mcp.md#make-claude-wait-for-the-result-of-an-mcp-task) dalam sesi interaktif. Selama [pemindahan otomatis ke latar belakang](https://code.claude.com/docs/id/mcp.md#automatic-backgrounding-of-long-tool-calls) aktif, panggilan tetap dipindahkan ke latar belakang setelah dua menit secara default. Memerlukan Claude Code v2.1.304 atau lebih baru |256| `CLAUDE_CODE_DISABLE_MCP_TASK_BACKGROUND` | Tetapkan ke `1` agar Claude menunggu hasil [tugas MCP](https://code.claude.com/docs/id/mcp.md#make-claude-wait-for-the-result-of-an-mcp-task) dalam sesi interaktif. Selama [pemindahan otomatis ke latar belakang](https://code.claude.com/docs/id/mcp.md#automatic-backgrounding-of-long-tool-calls) aktif, panggilan tetap dipindahkan ke latar belakang setelah dua menit secara default. Memerlukan Claude Code v2.1.304 atau lebih baru |

256| `CLAUDE_CODE_DISABLE_MODEL_ACCESS_FALLBACK` | Tetapkan ke `1` untuk menghentikan Claude Code di [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md#when-a-model-is-disabled-mid-session) dan [Google Cloud's Agent Platform](https://code.claude.com/docs/id/google-vertex-ai.md#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 fallback model](https://code.claude.com/docs/id/model-config.md#fallback-model-chains) yang Anda konfigurasikan tetap beralih saat penolakan tersebut, dan [pemeriksaan model saat startup](https://code.claude.com/docs/id/amazon-bedrock.md#startup-model-checks) tetap melakukan fallback saat peluncuran. Memerlukan Claude Code v2.1.285 atau yang lebih baru |257| `CLAUDE_CODE_DISABLE_MODEL_ACCESS_FALLBACK` | Tetapkan ke `1` untuk menghentikan Claude Code di [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md#when-a-model-is-disabled-mid-session) dan [Google Cloud's Agent Platform](https://code.claude.com/docs/id/google-vertex-ai.md#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 fallback model](https://code.claude.com/docs/id/model-config.md#fallback-model-chains) yang Anda konfigurasi tetap beralih pada penolakan tersebut, dan [pemeriksaan model saat startup](https://code.claude.com/docs/id/amazon-bedrock.md#startup-model-checks) tetap melakukan fallback saat peluncuran. Memerlukan Claude Code v2.1.285 atau lebih baru |

257| `CLAUDE_CODE_DISABLE_MOUNTED_DRIVE_RM_PROMPT` | Tetapkan ke `1` untuk menonaktifkan [permintaan izin drive yang di-mount](https://code.claude.com/docs/id/permission-modes.md#the-mounted-drive-prompt) untuk path seperti `/Volumes/USB`. [Tetapkan di lingkungan yang menjalankan Claude Code](#set-variables-in-your-shell), karena Claude Code [mengabaikannya dalam blok `env` pengaturan](https://code.claude.com/docs/id/settings-reference#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.304 atau yang lebih baru |258| `CLAUDE_CODE_DISABLE_MOUNTED_DRIVE_RM_PROMPT` | Tetapkan ke `1` untuk mematikan [permintaan izin drive yang di-mount](https://code.claude.com/docs/id/permission-modes.md#the-mounted-drive-prompt) untuk path seperti `/Volumes/USB`. [Tetapkan di lingkungan yang meluncurkan Claude Code](#set-variables-in-your-shell), karena Claude Code [mengabaikannya dalam blok `env` pengaturan](https://code.claude.com/docs/id/settings-reference#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.304 atau lebih baru |

258| `CLAUDE_CODE_DISABLE_MOUSE` | Tetapkan ke `1` untuk menonaktifkan pelacakan mouse dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md). Pengguliran keyboard dengan `PgUp` dan `PgDn` tetap berfungsi. Gunakan ini untuk mempertahankan perilaku salin-saat-memilih native terminal Anda |259| `CLAUDE_CODE_DISABLE_MOUSE` | Tetapkan ke `1` untuk menonaktifkan pelacakan mouse dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md). Scrolling keyboard dengan `PgUp` dan `PgDn` tetap berfungsi. Gunakan ini untuk mempertahankan perilaku salin-saat-pilih native terminal Anda |

259| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | Tetapkan ke `1` untuk menonaktifkan penanganan klik, seret, dan hover dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md) sambil tetap 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 ditetapkan. Memerlukan Claude Code v2.1.195 atau yang lebih baru |260| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | Tetapkan ke `1` untuk menonaktifkan penanganan klik, seret, dan hover dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md) sambil mempertahankan scrolling 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 ketika keduanya ditetapkan. Memerlukan Claude Code v2.1.195 atau lebih baru |

260| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | Tetapkan ke `1` untuk menghentikan Claude Code membaca ulang [sertifikat dan kunci klien mTLS](https://code.claude.com/docs/id/network-config.md#mtls-authentication) ketika permintaan API gagal dengan error tingkat koneksi, seperti reset koneksi 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 |261| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | Tetapkan ke `1` untuk menghentikan Claude Code membaca ulang [sertifikat dan kunci klien mTLS](https://code.claude.com/docs/id/network-config.md#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 |

261| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Tetapkan ke nilai apa pun yang tidak kosong, seperti `1`, untuk menonaktifkan lalu lintas jaringan yang tidak esensial: pembaruan otomatis, telemetri, pelaporan error, perintah `/feedback`, [umpan balik yang disusun Claude](https://code.claude.com/docs/id/tools-reference.md#sendfeedback-tool-behavior), catatan rilis, pemeriksaan [lencana status PR dan MR](https://code.claude.com/docs/id/interactive-mode.md#pr-review-status), dan pemeriksaan ketersediaan seperti pemeriksaan [fast mode](https://code.claude.com/docs/id/fast-mode.md#use-fast-mode-behind-proxies-and-llm-gateways). Ini juga menghentikan [eksekusi latar belakang sumber `command` plugin](https://code.claude.com/docs/id/plugins/loading#when-a-command-source-re-runs), yang merupakan perintah lokal alih-alih lalu lintas jaringan, karena dapat memicu instalasi dependensi. **Menetapkannya ke `0` atau `false` tetap menonaktifkan lalu lintas ini**, tidak seperti kebanyakan variabel aktif/nonaktif; hapus variabel untuk mengizinkannya lagi. Juga menonaktifkan pengambilan feature flag, yang membuat [Remote Control](https://code.claude.com/docs/id/remote-control.md#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](https://code.claude.com/docs/id/llm-gateway-connect.md#add-gateway-models-to-the-model-picker), yang memiliki opsi aktivasinya sendiri |262| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Tetapkan 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 dirancang Claude](https://code.claude.com/docs/id/tools-reference.md#sendfeedback-tool-behavior), catatan rilis, pemeriksaan [lencana status PR dan MR](https://code.claude.com/docs/id/interactive-mode.md#pr-review-status), dan pemeriksaan ketersediaan seperti pemeriksaan [fast mode](https://code.claude.com/docs/id/fast-mode.md#use-fast-mode-behind-proxies-and-llm-gateways). Ini juga menghentikan [run latar belakang sumber `command` plugin](https://code.claude.com/docs/id/plugins/loading#when-a-command-source-re-runs), yang merupakan perintah lokal dan bukan lalu lintas jaringan, karena dapat memicu instalasi dependensi. **Menetapkannya 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](https://code.claude.com/docs/id/remote-control.md#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](https://code.claude.com/docs/id/llm-gateway-connect.md#add-gateway-models-to-the-model-picker), yang memiliki opsi ikut sertanya sendiri |

262| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Tetapkan 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 ganda |263| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | Tetapkan 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 duplikat |

263| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | Tetapkan ke `1` untuk mengirim notifikasi desktop tool `PushNotification` bahkan saat Anda sedang mengetik atau fokus pada terminal. Secara default, tool tersebut melewati notifikasi desktop dan [push seluler](https://code.claude.com/docs/id/remote-control.md#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 aktif. Memerlukan Claude Code v2.1.193 atau yang lebih baru |264| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | Tetapkan ke `1` untuk mengirim notifikasi desktop tool `PushNotification` bahkan saat Anda sedang mengetik di terminal atau terminal sedang terfokus. Secara default, tool melewati notifikasi desktop dan [push seluler](https://code.claude.com/docs/id/remote-control.md#mobile-push-notifications) ketika mendeteksi aktivitas keyboard baru-baru ini 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 |

264| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Tetapkan ke `1` untuk menonaktifkan pendaftaran otomatis marketplace plugin resmi. Claude Code membaca variabel ini ketika akan mendaftarkan marketplace, biasanya selama peluncuran interaktif pertama pada suatu mesin. Jika variabel ditetapkan pada saat itu, Claude Code melewati pendaftaran secara permanen. Menghapus variabel di kemudian hari tidak membatalkan pelewatan tersebut. Jalankan `claude plugin marketplace add anthropics/claude-plugins-official` untuk mendaftarkan marketplace kapan saja |265| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | Tetapkan 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 ditetapkan pada saat itu, Claude Code melewati pendaftaran secara permanen. Menghapus variabel di kemudian hari tidak membatalkan pelewatan tersebut. Jalankan `claude plugin marketplace add anthropics/claude-plugins-official` untuk mendaftarkan marketplace kapan saja |

265| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | Tetapkan ke `1` untuk menghentikan Claude Code menjalankan [hook `Notification` untuk permintaan izin yang belum dijawab](https://code.claude.com/docs/id/hooks#notification) dalam sesi ketika Claude Code mengirimkannya ke callback `canUseTool` milik Agent SDK, yang merupakan cara Claude Desktop dan ekstensi VS Code menjadi host Claude Code. Tidak berpengaruh dalam sesi terminal. Memerlukan Claude Code v2.1.233 atau yang lebih baru |266| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | Tetapkan ke `1` untuk menghentikan Claude Code menjalankan [hook `Notification` untuk permintaan izin yang belum dijawab](https://code.claude.com/docs/id/hooks#notification) dalam sesi tempat Claude Code mengirimkannya ke callback `canUseTool` milik Agent SDK, yaitu 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 |

266| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Tetapkan ke `1` untuk melewati pemuatan skill dari direktori skill terkelola di seluruh sistem. Berguna untuk sesi container atau CI yang tidak boleh memuat skill yang disediakan operator |267| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | Tetapkan 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 |

267| `CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY` | Tetapkan ke `1` untuk menonaktifkan pemeriksaan [tool PowerShell](https://code.claude.com/docs/id/tools-reference.md#powershell-tool) yang menolak perintah bawaan `cmd` `rd`, `rmdir`, `del`, dan `erase` pada [path sistem](https://code.claude.com/docs/id/permission-modes.md#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 |268| `CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY` | Tetapkan ke `1` untuk mematikan pemeriksaan [tool PowerShell](https://code.claude.com/docs/id/tools-reference.md#powershell-tool) yang menolak built-in `cmd` `rd`, `rmdir`, `del`, dan `erase` pada [path sistem](https://code.claude.com/docs/id/permission-modes.md#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 lebih baru |

268| `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK` | Tetapkan ke `1` untuk menonaktifkan [peralihan model otomatis ketika pengklasifikasi keamanan menandai permintaan](https://code.claude.com/docs/id/model-config.md#automatic-model-fallback), perilaku yang dikontrol oleh pengaturan [`switchModelsOnFlag`](https://code.claude.com/docs/id/settings-reference#switchmodelsonflag) |269| `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK` | Tetapkan ke `1` untuk mematikan [peralihan model otomatis ketika pengklasifikasi keamanan menandai permintaan](https://code.claude.com/docs/id/model-config.md#automatic-model-fallback), perilaku yang dikontrol oleh pengaturan [`switchModelsOnFlag`](https://code.claude.com/docs/id/settings-reference#switchmodelsonflag) |

269| `CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS` | Tetapkan ke `1` untuk menghentikan Claude Code mengirim field structured-output `output_config.format` dan nilai `anthropic-beta` yang berpasangan dengannya, untuk [LLM gateway](https://code.claude.com/docs/id/llm-gateway-protocol.md#feature-pass-through) yang upstream-nya menolaknya. Ini membiarkan tetap aktif kemampuan pra-rilis lain yang dinonaktifkan oleh [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](https://code.claude.com/docs/id/llm-gateway-protocol#disable-pre-release-capabilities). Memerlukan Claude Code v2.1.288 atau yang lebih baru |270| `CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS` | Tetapkan ke `1` untuk menghentikan Claude Code mengirim field structured-output `output_config.format` dan nilai `anthropic-beta` yang berpasangan dengannya, untuk [LLM gateway](https://code.claude.com/docs/id/llm-gateway-protocol.md#feature-pass-through) yang upstream-nya menolaknya. Ini membiarkan aktif kemampuan pra-rilis lain yang dimatikan oleh [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](https://code.claude.com/docs/id/llm-gateway-protocol#disable-pre-release-capabilities). Memerlukan Claude Code v2.1.288 atau lebih baru |

270| `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT` | Tetapkan ke `1` untuk menonaktifkan pemeriksaan [path kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) untuk `rm` rekursif yang targetnya sepenuhnya merupakan output dari substitusi perintah, seperti `rm -rf "$(pwd)"`. Pemeriksaan path kritis lainnya tetap berjalan. Tetapkan di lingkungan yang menjalankan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.281 atau yang lebih baru |271| `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT` | Tetapkan ke `1` untuk mematikan pemeriksaan [path kritis](https://code.claude.com/docs/id/permission-modes.md#critical-paths) untuk `rm` rekursif yang targetnya sepenuhnya merupakan output dari substitusi perintah, seperti `rm -rf "$(pwd)"`. Pemeriksaan path kritis lainnya tetap berjalan. Tetapkan di lingkungan yang meluncurkan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.281 atau lebih baru |

271| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Tetapkan ke `1` untuk menonaktifkan pembaruan judul terminal otomatis berdasarkan konteks percakapan. Ini juga melewati permintaan model kecil/cepat di latar belakang yang [membuat judul sesi](https://code.claude.com/docs/id/sessions.md#name-your-sessions), dan menonaktifkan [laporan status ke terminal Anda](https://code.claude.com/docs/id/terminal-config.md#see-session-status-in-your-terminal) |272| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Tetapkan ke `1` untuk menonaktifkan pembaruan judul terminal otomatis berdasarkan konteks percakapan. Ini juga melewati permintaan model kecil/cepat di latar belakang yang [menghasilkan judul sesi](https://code.claude.com/docs/id/sessions.md#name-your-sessions), dan mematikan [laporan status ke terminal Anda](https://code.claude.com/docs/id/terminal-config.md#see-session-status-in-your-terminal) |

272| `CLAUDE_CODE_DISABLE_THINKING` | Tetapkan 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` sebagai gantinya. Tidak satu pun dari kedua variabel ini 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](https://code.claude.com/docs/id/third-party-integrations.md), `MAX_THINKING_TOKENS=0` juga menghilangkan parameter tersebut, sehingga kedua variabel berperilaku sama di sana |273| `CLAUDE_CODE_DISABLE_THINKING` | Tetapkan 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 menonaktifkan [extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) secara eksplisit di Anthropic API, gunakan `MAX_THINKING_TOKENS=0` sebagai gantinya. Tidak ada variabel yang mematikan thinking pada Opus 5.5, Sonnet 5.5, Haiku 5.5, atau model Fable, yang thinking-nya tidak dapat dimatikan. Pada [penyedia pihak ketiga](https://code.claude.com/docs/id/third-party-integrations.md), `MAX_THINKING_TOKENS=0` juga menghilangkan parameter tersebut, sehingga kedua variabel berperilaku sama di sana |

273| `CLAUDE_CODE_DISABLE_ULTRAREVIEW_TRUST_CHECK` | Tetapkan ke `1` agar [`claude ultrareview`](https://code.claude.com/docs/id/ultrareview#trust-the-folder-before-the-review-runs) tidak keluar dengan `Error: Workspace not trusted` di folder yang belum Anda percayai ketika tidak dapat meminta Anda untuk memercayainya, seperti di CI. Tetapkan di lingkungan yang menjalankan Claude Code, bukan di blok `env` pengaturan, dan hanya jika setiap eksekusi semacam itu dimulai di folder yang Anda percayai. Eksekusi yang dapat meminta tetap akan meminta. Memerlukan Claude Code v2.1.309 atau yang lebih baru |274| `CLAUDE_CODE_DISABLE_ULTRAREVIEW_TRUST_CHECK` | Tetapkan ke `1` agar [`claude ultrareview`](https://code.claude.com/docs/id/ultrareview#trust-the-folder-before-the-review-runs) tidak keluar dengan `Error: Workspace not trusted` di folder yang belum Anda percayai ketika tidak dapat meminta Anda untuk memercayainya, seperti di CI. Tetapkan di lingkungan yang meluncurkan Claude Code, bukan di blok `env` pengaturan, dan hanya di tempat setiap run seperti itu dimulai di folder yang Anda percayai. Run yang dapat meminta tetap akan meminta. Memerlukan Claude Code v2.1.309 atau lebih baru |

274| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | Tetapkan ke `1` untuk melewati [auto-compaction](https://code.claude.com/docs/id/costs.md#reduce-token-usage) proaktif ketika Claude Code tidak mengenali ID model, seperti alias [LLM gateway](https://code.claude.com/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](https://code.claude.com/docs/id/model-config.md#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 |275| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | Atur ke `1` untuk melewati [auto-compaction](https://code.claude.com/docs/id/costs.md#reduce-token-usage) proaktif ketika Claude Code tidak mengenali ID model, seperti alias [LLM gateway](https://code.claude.com/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 window yang diasumsikan sebagai gantinya; lihat [Mengoreksi window untuk gateway atau ID model kustom](https://code.claude.com/docs/id/model-config.md#correct-the-window-for-a-gateway-or-custom-model-id) untuk mengetahui kapan masing-masing variabel berlaku. Memerlukan Claude Code v2.1.223 atau yang lebih baru |

275| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Tetapkan ke `1` untuk menonaktifkan pengguliran virtual dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md) dan merender setiap pesan dalam transkrip. Gunakan ini jika pengguliran dalam mode layar penuh menampilkan area kosong tempat pesan seharusnya muncul |276| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | Atur ke `1` untuk menonaktifkan virtual scrolling dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md) dan merender setiap pesan dalam transkrip. Gunakan ini jika scrolling dalam mode layar penuh menampilkan area kosong di tempat pesan seharusnya muncul |

276| `CLAUDE_CODE_DISABLE_WEB_FETCH` | Tetapkan ke `1` untuk menonaktifkan tool [WebFetch](https://code.claude.com/docs/id/tools-reference.md#webfetch-tool-behavior). Tool [WebSearch](https://code.claude.com/docs/id/tools-reference.md#websearch-tool-behavior) tetap tersedia. Memerlukan Claude Code v2.1.285 atau yang lebih baru |277| `CLAUDE_CODE_DISABLE_WEB_FETCH` | Atur ke `1` untuk mematikan tool [WebFetch](https://code.claude.com/docs/id/tools-reference.md#webfetch-tool-behavior). Tool [WebSearch](https://code.claude.com/docs/id/tools-reference.md#websearch-tool-behavior) tetap tersedia. Memerlukan Claude Code v2.1.285 atau yang lebih baru |

277| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Atur ke `1` untuk memulai perintah [tool PowerShell](https://code.claude.com/docs/id/tools-reference.md#powershell-tool) di Windows secara langsung alih-alih melalui launcher `cmd.exe`. Secara default, launcher memungkinkan perintah PowerShell yang [berjalan di latar belakang](https://code.claude.com/docs/id/tools-reference.md#background-commands) [berlanjut ke proses berikutnya dari sesi](https://code.claude.com/docs/id/agent-view.md#the-supervisor-process), misalnya saat Anda [memindahkan sesi ke latar belakang](https://code.claude.com/docs/id/agent-view.md#from-inside-a-session). Jika Anda mengatur variabel ini, perintah PowerShell yang berjalan di latar belakang akan berhenti saat proses sesi keluar. Perintah Bash tidak terpengaruh. Memerlukan Claude Code v2.1.269 atau yang lebih baru |278| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | Atur ke `1` untuk memulai perintah [tool PowerShell](https://code.claude.com/docs/id/tools-reference.md#powershell-tool) di Windows secara langsung, bukan melalui launcher `cmd.exe`. Secara default, launcher memungkinkan perintah PowerShell yang [berjalan di latar belakang](https://code.claude.com/docs/id/tools-reference.md#background-commands) [berlanjut ke proses berikutnya dari sesi](https://code.claude.com/docs/id/agent-view.md#the-supervisor-process), seperti saat Anda [memindahkan sesi ke latar belakang](https://code.claude.com/docs/id/agent-view.md#from-inside-a-session). Jika Anda mengatur variabel ini, perintah PowerShell di latar belakang berhenti saat proses sesi keluar. Perintah Bash tidak terpengaruh. Memerlukan Claude Code v2.1.269 atau yang lebih baru |

278| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Atur ke `1` untuk menonaktifkan [workflow](https://code.claude.com/docs/id/workflows.md#turn-workflows-off). Setara dengan pengaturan [`disableWorkflows`](https://code.claude.com/docs/id/settings-reference#disableworkflows) |279| `CLAUDE_CODE_DISABLE_WORKFLOWS` | Atur ke `1` untuk menonaktifkan [workflow](https://code.claude.com/docs/id/workflows.md#turn-workflows-off). Setara dengan pengaturan [`disableWorkflows`](https://code.claude.com/docs/id/settings-reference#disableworkflows) |

279| `CLAUDE_CODE_EFFORT_LEVEL` | Atur tingkat effort untuk model yang didukung. Nilai: `low`, `medium`, `high`, `xhigh`, atau `max`. Tingkat yang tersedia bergantung pada model. Diutamakan daripada `--effort`, `/effort`, serta pengaturan `modelSettings` dan `effortLevel`. Batas [`maxEffortLevel`](https://code.claude.com/docs/id/settings-reference#maxeffortlevel) tetap berlaku. Atur ke `auto` atau `unset` agar Claude Code [tidak mengirim tingkat effort](https://code.claude.com/docs/id/model-config.md#send-no-effort-level), sehingga API menerapkan default-nya sendiri untuk model tersebut. Lihat [Menyesuaikan tingkat effort](https://code.claude.com/docs/id/model-config.md#adjust-effort-level) |280| `CLAUDE_CODE_EFFORT_LEVEL` | Atur tingkat effort untuk model yang didukung. Nilai: `low`, `medium`, `high`, `xhigh`, atau `max`. Tingkat yang tersedia bergantung pada model. Diutamakan daripada `--effort`, `/effort`, serta pengaturan `modelSettings` dan `effortLevel`. Batas [`maxEffortLevel`](https://code.claude.com/docs/id/settings-reference#maxeffortlevel) tetap berlaku. Atur ke `auto` atau `unset` agar Claude Code [tidak mengirim tingkat effort](https://code.claude.com/docs/id/model-config.md#send-no-effort-level), sehingga API menerapkan default-nya sendiri untuk model tersebut. Lihat [Menyesuaikan tingkat effort](https://code.claude.com/docs/id/model-config.md#adjust-effort-level) |

280| `CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS` | Atur ke `1` untuk menambahkan pesan [`session_state_changed`](https://code.claude.com/docs/id/agent-sdk/typescript#sdksessionstatechangedmessage), yang membawa status sesi, ke aliran pesan. Memerlukan [Agent SDK](https://code.claude.com/docs/id/agent-sdk/overview.md) atau `--print`, `--output-format stream-json`, dan `--verbose` |281| `CLAUDE_CODE_EMIT_SESSION_STATE_EVENTS` | Atur ke `1` untuk menambahkan pesan [`session_state_changed`](https://code.claude.com/docs/id/agent-sdk/typescript#sdksessionstatechangedmessage), yang membawa status sesi, ke aliran pesan. Memerlukan [Agent SDK](https://code.claude.com/docs/id/agent-sdk/overview.md) atau `--print`, `--output-format stream-json`, dan `--verbose` |

281| `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](https://code.claude.com/docs/id/claude-apps-gateway) yang sudah masuk. Pada v2.1.158 hingga v2.1.206, mengatur ini ke `1` diperlukan agar [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) tersedia di penyedia tersebut |282| `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, Agent Platform milik Google Cloud, Microsoft Foundry, dan sesi [Claude apps gateway](https://code.claude.com/docs/id/claude-apps-gateway) yang sudah login. Pada v2.1.158 hingga v2.1.206, mengatur ini ke `1` diperlukan agar [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) tersedia di penyedia tersebut |

282| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Menimpa ketersediaan [rekap sesi](https://code.claude.com/docs/id/interactive-mode.md#session-recap). Atur ke `0` untuk memaksa rekap mati terlepas dari toggle `/config`. Atur ke `1` untuk memaksa rekap aktif saat [`awaySummaryEnabled`](https://code.claude.com/docs/id/settings-reference#awaysummaryenabled) bernilai `false`. Diutamakan daripada pengaturan dan toggle `/config` |283| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | Menimpa ketersediaan [rekap sesi](https://code.claude.com/docs/id/interactive-mode.md#session-recap). Atur ke `0` untuk memaksa rekap mati terlepas dari toggle `/config`. Atur ke `1` untuk memaksa rekap aktif ketika [`awaySummaryEnabled`](https://code.claude.com/docs/id/settings-reference#awaysummaryenabled) bernilai `false`. Diutamakan daripada pengaturan dan toggle `/config` |

283| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Atur ke `1` untuk menyegarkan status plugin di batas giliran dalam [mode non-interaktif](https://code.claude.com/docs/id/headless.md) setelah instalasi latar belakang selesai. Mati secara default karena penyegaran mengubah system prompt di tengah sesi, yang membatalkan [prompt caching](https://code.claude.com/docs/id/prompt-caching.md) untuk giliran tersebut |284| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | Atur ke `1` untuk menyegarkan status plugin di batas giliran dalam [mode non-interaktif](https://code.claude.com/docs/id/headless.md) setelah instalasi latar belakang selesai. Mati secara default karena penyegaran mengubah system prompt di tengah sesi, yang membatalkan [prompt caching](https://code.claude.com/docs/id/prompt-caching.md) untuk giliran tersebut |

284| `CLAUDE_CODE_ENABLE_CFC` | Atur ke `1` untuk memulai sesi CLI dengan [integrasi Chrome](https://code.claude.com/docs/id/chrome.md) aktif, atau `0` untuk memulainya dalam keadaan mati. Diutamakan daripada pengaturan [`claudeInChromeDefaultEnabled`](https://code.claude.com/docs/id/settings-reference#claudeinchromedefaultenabled). Flag `--chrome` dan `--no-chrome` diutamakan daripada keduanya. Claude Code [mengabaikan `1` di pengaturan proyek dan lokal](https://code.claude.com/docs/id/chrome#project-settings-can’t-turn-on-chrome) |285| `CLAUDE_CODE_ENABLE_CFC` | Atur ke `1` untuk memulai sesi CLI dengan [integrasi Chrome](https://code.claude.com/docs/id/chrome.md) aktif, atau `0` untuk memulainya dalam keadaan mati. Diutamakan daripada pengaturan [`claudeInChromeDefaultEnabled`](https://code.claude.com/docs/id/settings-reference#claudeinchromedefaultenabled). Flag `--chrome` dan `--no-chrome` diutamakan daripada keduanya. Claude Code [mengabaikan `1` dalam pengaturan project dan local](https://code.claude.com/docs/id/chrome#project-settings-can’t-turn-on-chrome) |

285| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Atur ke `1` untuk mengarahkan survei kualitas sesi "How is Claude doing?" ke [kolektor OpenTelemetry](https://code.claude.com/docs/id/monitoring-usage.md) milik Anda sendiri saat 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 saat `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 |286| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | Atur ke `1` untuk mengarahkan survei kualitas sesi "How is Claude doing?" ke [kolektor OpenTelemetry](https://code.claude.com/docs/id/monitoring-usage.md) 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 tidak. `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` dan kebijakan umpan balik produk organisasi diutamakan |

286| `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. 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`. Mati secara default di Microsoft Foundry dan koneksi [gateway](https://code.claude.com/docs/id/llm-gateway) |287| `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 Agent Platform milik Google Cloud, aktif 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](https://code.claude.com/docs/id/llm-gateway) |

287| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | Atur ke `1` untuk mengisi pemilih `/model` dari endpoint `/v1/models` gateway Anda saat `ANTHROPIC_BASE_URL` mengarah ke gateway yang kompatibel dengan Anthropic seperti LiteLLM, Kong, atau proxy internal. Mati secara default karena gateway yang didukung oleh kunci API bersama akan menampilkan kepada setiap pengguna setiap model yang dapat diakses kunci tersebut. Model yang ditemukan tetap difilter oleh allowlist [`availableModels`](https://code.claude.com/docs/id/settings-reference#availablemodels) yang diterima sesi; kirimkan daftar tersebut melalui [MDM atau file pengaturan terkelola](https://code.claude.com/docs/id/managed-settings.md#delivery-mechanisms), karena [pengiriman yang dikelola server tidak tersedia pada konfigurasi gateway](https://code.claude.com/docs/id/server-managed-settings.md#platform-availability) |288| `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 semua model yang dapat diakses kunci tersebut. Model yang ditemukan tetap difilter oleh allowlist [`availableModels`](https://code.claude.com/docs/id/settings-reference#availablemodels) yang diterima sesi; kirimkan daftar tersebut melalui [MDM atau file pengaturan terkelola](https://code.claude.com/docs/id/managed-settings.md#delivery-mechanisms), karena [pengiriman yang dikelola server tidak tersedia pada konfigurasi gateway](https://code.claude.com/docs/id/server-managed-settings.md#platform-availability) |

288| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | Dihapus di v2.1.142, saat default [fast mode](https://code.claude.com/docs/id/fast-mode.md) berpindah dari Opus 4.6 ke Opus 4.7 |289| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | Dihapus di v2.1.142, ketika default [fast mode](https://code.claude.com/docs/id/fast-mode.md) berpindah dari Opus 4.6 ke Opus 4.7 |

289| `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`](https://code.claude.com/docs/id/settings-reference#promptsuggestionenabled), yang ditulis oleh toggle **Prompt suggestions** di `/config`. Claude Code juga [menjeda saran saat akun Anda mendekati atau mencapai batas penggunaannya](https://code.claude.com/docs/id/interactive-mode.md#when-claude-code-skips-suggestions). Atur ke `true` agar jeda tersebut tidak berlaku hingga Anda mencapai batas. Memerlukan Claude Code v2.1.238 atau yang lebih baru. Lihat [Saran prompt](https://code.claude.com/docs/id/interactive-mode.md#prompt-suggestions) |290| `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`](https://code.claude.com/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](https://code.claude.com/docs/id/interactive-mode.md#when-claude-code-skips-suggestions). Atur ke `true` agar jeda tersebut tidak berlaku hingga Anda mencapai batas. Memerlukan Claude Code v2.1.238 atau yang lebih baru. Lihat [Saran prompt](https://code.claude.com/docs/id/interactive-mode.md#prompt-suggestions) |

290| `CLAUDE_CODE_ENABLE_SHARE_BUNDLE` | Atur ke `1` agar [`/share`](https://code.claude.com/docs/id/commands#all-commands) menyimpan laporannya dan seluruh transkrip sesi ke [arsip lokal di bawah `~/.claude/feedback-bundles/`](https://code.claude.com/docs/id/data-usage#telemetry-services) alih-alih mengirim laporan ke Anthropic. Jika kebijakan organisasi Anda mematikan `/share`, Anda tidak dapat mengaktifkannya kembali dengan variabel ini. Memerlukan Claude Code v2.1.299 atau yang lebih baru |291| `CLAUDE_CODE_ENABLE_SHARE_BUNDLE` | Atur ke `1` agar [`/share`](https://code.claude.com/docs/id/commands#all-commands) menyimpan laporannya dan seluruh transkrip sesi ke [arsip lokal di bawah `~/.claude/feedback-bundles/`](https://code.claude.com/docs/id/data-usage#telemetry-services) alih-alih mengirim laporan ke Anthropic. Jika kebijakan organisasi Anda mematikan `/share`, Anda tidak dapat mengaktifkannya kembali dengan variabel ini. Memerlukan Claude Code v2.1.299 atau yang lebih baru |

291| `CLAUDE_CODE_ENABLE_TASKS` | Memilih tool pelacakan tugas mana yang disediakan Claude Code dalam [sesi yang memilikinya](https://code.claude.com/docs/id/tools-reference.md#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](https://code.claude.com/docs/id/interactive-mode.md#task-list) |292| `CLAUDE_CODE_ENABLE_TASKS` | Memilih tool pelacakan tugas mana yang disediakan Claude Code dalam [sesi yang memilikinya](https://code.claude.com/docs/id/tools-reference.md#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](https://code.claude.com/docs/id/interactive-mode.md#task-list) |

292| `CLAUDE_CODE_ENABLE_TELEMETRY` | Atur ke `1` untuk mengaktifkan pengumpulan data OpenTelemetry untuk metrik dan logging. Diperlukan sebelum mengonfigurasi exporter OTel. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |293| `CLAUDE_CODE_ENABLE_TELEMETRY` | Atur ke `1` untuk mengaktifkan pengumpulan data OpenTelemetry untuk metrik dan logging. Diperlukan sebelum mengonfigurasi exporter OTel. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan dalam [pengaturan project dan local](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

293| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | Atur ke `1` untuk mendapatkan tool pelacakan tugas di setiap model. Tanpanya, Claude Code menyediakannya secara default hanya pada model yang tercantum di bawah [Ketersediaan tool Task](https://code.claude.com/docs/id/tools-reference.md#task-tool-availability). `CLAUDE_CODE_ENABLE_TASKS` tetap memilih tool Task atau `TodoWrite`. Memerlukan Claude Code v2.1.233 atau yang lebih baru |294| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | Atur ke `1` untuk mendapatkan tool pelacakan tugas di setiap model. Tanpanya, Claude Code menyediakannya secara default hanya pada model yang tercantum di bawah [Ketersediaan tool Task](https://code.claude.com/docs/id/tools-reference.md#task-tool-availability). `CLAUDE_CODE_ENABLE_TASKS` tetap memilih tool Task atau `TodoWrite`. Memerlukan Claude Code v2.1.233 atau yang lebih baru |

294| `CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS` | Atur ke `1` untuk [menjalankan perintah `rm` berbahaya tanpa dialog konfirmasi](https://code.claude.com/docs/id/permission-modes#turn-off-the-critical-path-removal-prompt-in-bypasspermissions-mode) dalam mode `bypassPermissions`, yang menghapus dialog konfirmasi keamanan untuk penghapusan destruktif. Bagian yang ditautkan mencantumkan kondisi di mana variabel ini tidak berpengaruh. [Atur di lingkungan yang meluncurkan Claude Code](#set-variables-in-your-shell), karena Claude Code [mengabaikannya dalam blok `env` pengaturan](https://code.claude.com/docs/id/settings-reference#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.311 atau yang lebih baru |295| `CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS` | Atur ke `1` untuk [menjalankan perintah `rm` berbahaya tanpa permintaan izin](https://code.claude.com/docs/id/permission-modes#turn-off-the-critical-path-removal-prompt-in-bypasspermissions-mode) dalam mode `bypassPermissions`, yang menghapus permintaan izin keamanan untuk penghapusan destruktif. Bagian yang ditautkan mencantumkan di mana variabel ini tidak berpengaruh. [Atur di environment yang meluncurkan Claude Code](#set-variables-in-your-shell), karena Claude Code [mengabaikannya dalam blok `env` pengaturan](https://code.claude.com/docs/id/settings-reference#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.311 atau yang lebih baru |

295| `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 |296| `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 |

296| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Atur ke `1` untuk mengaktifkan [tim agent](https://code.claude.com/docs/id/agent-teams.md). Tim agent bersifat eksperimental dan dinonaktifkan secara default |297| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | Atur ke `1` untuk mengaktifkan [tim agent](https://code.claude.com/docs/id/agent-teams.md). Tim agent bersifat eksperimental dan dinonaktifkan secara default |

297| `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](https://code.claude.com/docs/id/agent-view.md) yang Anda kirim 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 |298| `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](https://code.claude.com/docs/id/agent-view.md) 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 proses supervisor latar belakang |

298| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Menimpa batas token default untuk [pembacaan file](https://code.claude.com/docs/id/tools-reference.md#large-files), yaitu 25.000 token. Berguna saat Anda perlu membaca file yang lebih besar secara utuh. Pembacaan yang dilakukan Claude dengan parameter `allow_large` dapat melampaui batas ini saat context window masih memiliki ruang |299| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Menimpa batas token default untuk [pembacaan file](https://code.claude.com/docs/id/tools-reference.md#large-files), yaitu 25.000 token. Berguna ketika Anda perlu membaca file yang lebih besar secara penuh. Pembacaan yang dilakukan Claude dengan parameter `allow_large` dapat melampaui batas ini ketika context window masih memiliki ruang |

299| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | Atur ke `1` untuk memaksa persistensi transkrip, riwayat prompt, dan pendaftaran `claude agents` bahkan saat `claude` ini diluncurkan dari dalam sesi Claude Code lain. Gunakan saat nilai `CLAUDE_CODE_CHILD_SESSION` yang diwarisi, misalnya dari sesi `screen` atau launcher 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 |300| `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 launcher 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 versi sebelumnya; tidak berpengaruh pada v2.1.170 dan v2.1.171, di mana deteksi sesi bersarang yang ditimpanya telah dihapus |

300| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Atur ke `1` untuk memaksa rendering coretan untuk `~~text~~` dalam respons Claude saat terminal Anda mendukungnya tetapi tidak terdeteksi otomatis, misalnya melalui SSH tanpa `TERM_PROGRAM` diteruskan. Tanpa ini, terminal yang tidak terdeteksi menampilkan penanda `~~` secara literal alih-alih merender teks sebagai coretan. Memerlukan Claude Code v2.1.186 atau yang lebih baru |301| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | Atur ke `1` untuk memaksa rendering coretan untuk `~~text~~` dalam respons Claude ketika terminal Anda mendukungnya tetapi tidak terdeteksi secara otomatis, seperti melalui SSH tanpa `TERM_PROGRAM` diteruskan. Tanpa ini, terminal yang tidak terdeteksi menampilkan penanda `~~` secara literal alih-alih merender teks sebagai coretan. Memerlukan Claude Code v2.1.186 atau yang lebih baru |

301| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Atur ke `1` untuk memaksa mengaktifkan DEC private mode 2026 [synchronized output](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) saat 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](https://code.claude.com/docs/id/fullscreen.md), ini tidak mengubah renderer |302| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | Atur ke `1` untuk memaksa aktif DEC private mode 2026 [synchronized output](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036) ketika terminal Anda mendukungnya tetapi tidak terdeteksi secara 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](https://code.claude.com/docs/id/fullscreen.md), ini tidak mengubah renderer |

302| `CLAUDE_CODE_FORCE_TERMINAL_IMAGES` | Atur ke `1` untuk menggambar [elemen `Image` mod](https://code.claude.com/docs/id/plugins/mods/reference#elements) sebagai gambar saat terminal Anda menggambar gambar protokol grafis kitty dengan placeholder Unicode dan Anda masih melihat teks `alt` redup dari `Image`. Lihat [terminal mana yang menggambar `Image` dan di mana tidak boleh mengatur variabel ini](https://code.claude.com/docs/id/plugins/mods/gallery#image-and-client) |303| `CLAUDE_CODE_FORCE_TERMINAL_IMAGES` | Atur ke `1` untuk menggambar [elemen `Image` mod](https://code.claude.com/docs/id/plugins/mods/reference#elements) sebagai gambar ketika terminal Anda menggambar gambar protokol grafis kitty dengan placeholder Unicode dan Anda masih melihat teks `alt` redup dari `Image`. Lihat [terminal mana yang menggambar `Image` dan di mana tidak perlu mengatur variabel ini](https://code.claude.com/docs/id/plugins/mods/gallery#image-and-client) |

303| `CLAUDE_CODE_FORK_SUBAGENT` | Mengontrol fork mode, yang aktif secara default dan memungkinkan Claude memulai [fork](https://code.claude.com/docs/id/sub-agents.md#fork-the-current-conversation) sendiri. Selama fork mode aktif, Claude juga tidak dapat [menunggu subagent](https://code.claude.com/docs/id/sub-agents.md#run-subagents-in-foreground-or-background) dalam sesi terminal interaktif, VS Code, atau desktop di mesin Anda. Atur ke `0` untuk mematikan fork mode. Untuk versi, lihat [Mematikan fork mode](https://code.claude.com/docs/id/sub-agents.md#turn-fork-mode-on-or-off) |304| `CLAUDE_CODE_FORK_SUBAGENT` | Mengontrol mode fork, yang aktif secara default dan memungkinkan Claude memulai [fork](https://code.claude.com/docs/id/sub-agents.md#fork-the-current-conversation) sendiri. Saat mode fork aktif, Claude juga tidak dapat [menunggu subagent](https://code.claude.com/docs/id/sub-agents.md#run-subagents-in-foreground-or-background) dalam sesi terminal interaktif, VS Code, atau desktop di mesin Anda. Atur ke `0` untuk mematikan mode fork. Untuk versi, lihat [Mematikan mode fork](https://code.claude.com/docs/id/sub-agents.md#turn-fork-mode-on-or-off) |

304| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | Atur ke `1` untuk mengeluarkan teks [subagent](https://code.claude.com/docs/id/sub-agents.md) dan thinking block dalam output `claude -p --output-format stream-json`, perilaku yang sama dengan flag [`--forward-subagent-text`](https://code.claude.com/docs/id/cli-reference#cli-flags). Gunakan variabel ini saat 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 saat variabel diatur untuk seluruh proses. Memerlukan Claude Code v2.1.211 atau yang lebih baru |305| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | Atur ke `1` untuk mengeluarkan teks dan thinking block [subagent](https://code.claude.com/docs/id/sub-agents.md) dalam output `claude -p --output-format stream-json`, perilaku yang sama dengan flag [`--forward-subagent-text`](https://code.claude.com/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 untuk seluruh proses. Memerlukan Claude Code v2.1.211 atau yang lebih baru |

305| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | Atur ke `1` untuk mengirim [header petunjuk gateway](https://code.claude.com/docs/id/llm-gateway-protocol.md#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, tempat Claude Code mengirimnya secara default. Memerlukan Claude Code v2.1.273 atau yang lebih baru |306| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | Atur ke `1` untuk mengirim [header petunjuk gateway](https://code.claude.com/docs/id/llm-gateway-protocol.md#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 yang lebih baru |

306| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | Timeout dalam milidetik untuk permintaan [penemuan model gateway](https://code.claude.com/docs/id/llm-gateway-protocol.md#model-discovery) yang diaktifkan oleh `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` (default: `3000`). Naikkan nilainya saat gateway Anda membutuhkan 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 yang lebih baru |307| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | Timeout dalam milidetik untuk permintaan [penemuan model gateway](https://code.claude.com/docs/id/llm-gateway-protocol.md#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 yang lebih baru |

307| `CLAUDE_CODE_GIT_BASH_PATH` | Khusus Windows: path ke executable Git Bash (`bash.exe`). Gunakan saat 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 tidak diatur, sambil mencatat peringatan yang terlihat dengan `--debug`. Sebelum v2.1.219, Claude Code keluar saat startup jika path tidak ada, dan menggunakan file apa pun yang ada sebagai shell tanpa memeriksa apakah itu bash atau sh. Lihat [Penyiapan Windows](https://code.claude.com/docs/id/setup.md#set-up-on-windows) |308| `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, serta 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](https://code.claude.com/docs/id/setup.md#set-up-on-windows) |

308| `CLAUDE_CODE_GLOB_HIDDEN` | Atur ke `false` untuk mengecualikan dotfile dari hasil saat Claude memanggil [tool Glob](https://code.claude.com/docs/id/tools-reference.md#glob-tool-behavior). Disertakan secara default. Tidak memengaruhi pelengkapan otomatis file `@`, `ls`, Grep, atau Read |309| `CLAUDE_CODE_GLOB_HIDDEN` | Atur ke `false` untuk mengecualikan dotfile dari hasil ketika Claude memanggil [tool Glob](https://code.claude.com/docs/id/tools-reference.md#glob-tool-behavior). Disertakan secara default. Tidak memengaruhi autocomplete file `@`, `ls`, Grep, atau Read |

309| `CLAUDE_CODE_GLOB_NO_IGNORE` | Atur ke `false` agar [tool Glob](https://code.claude.com/docs/id/tools-reference.md#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`](https://code.claude.com/docs/id/settings-reference#respectgitignore) sendiri |310| `CLAUDE_CODE_GLOB_NO_IGNORE` | Atur ke `false` agar [tool Glob](https://code.claude.com/docs/id/tools-reference.md#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`](https://code.claude.com/docs/id/settings-reference#respectgitignore) sendiri |

310| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Timeout dalam detik untuk pencarian tool [Glob](https://code.claude.com/docs/id/tools-reference.md#glob-tool-behavior) dan Grep. Default-nya 20 detik di sebagian besar platform dan 60 detik di WSL |311| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Timeout dalam detik untuk pencarian tool [Glob](https://code.claude.com/docs/id/tools-reference.md#glob-tool-behavior) dan Grep. Default 20 detik di sebagian besar platform dan 60 detik di WSL |

311| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | Berapa menit pekerjaan latar belakang dapat membuat goal aktif menunggu sebelum Claude Code [meminta Claude untuk memeriksanya](https://code.claude.com/docs/id/goal.md#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 yang lebih baru |312| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | Berapa menit pekerjaan latar belakang dapat membuat goal aktif menunggu sebelum Claude Code [meminta Claude untuk memeriksanya](https://code.claude.com/docs/id/goal.md#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 yang lebih baru |

312| `CLAUDE_CODE_GZIP_REQUEST_BODIES` | Atur ke `0` untuk mematikan kompresi gzip pada body permintaan Claude API, telemetri, dan publikasi [artifact](https://code.claude.com/docs/id/artifacts.md) yang dikirim ke `api.anthropic.com`. Secara default, Claude Code mengompresi body permintaan yang besar pada koneksi langsung dan melewati kompresi saat Anda mengirim permintaan melalui proxy, mengonfigurasi sertifikat klien, atau mengatur `NODE_EXTRA_CA_CERTS`. Gunakan `0` jika [proxy yang menginspeksi TLS](https://code.claude.com/docs/id/network-config.md#ca-certificate-store) yang tidak dapat dideteksi Claude Code salah menangani permintaan terkompresi |313| `CLAUDE_CODE_GZIP_REQUEST_BODIES` | Atur ke `0` untuk mematikan kompresi gzip pada body permintaan Claude API, telemetri, dan publikasi [artifact](https://code.claude.com/docs/id/artifacts.md) 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](https://code.claude.com/docs/id/network-config.md#ca-certificate-store) yang tidak dapat dideteksi Claude Code salah menangani permintaan terkompresi |

313| `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 |314| `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 |

314| `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 |315| `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 |

315| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Atur ke `1` untuk melewati instalasi otomatis ekstensi IDE. Setara dengan mengatur [`autoInstallIdeExtension`](https://code.claude.com/docs/id/settings-reference#autoinstallideextension) ke `false` |316| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Atur ke `1` untuk mencegah `/ide` menginstal ekstensi IDE. Setara dengan mengatur [`autoInstallIdeExtension`](https://code.claude.com/docs/id/settings-reference#autoinstallideextension) ke `false` |

316| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Atur ke `1` untuk melewati validasi entri lockfile IDE selama koneksi. Gunakan saat koneksi otomatis gagal menemukan IDE Anda meskipun IDE sedang berjalan |317| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | Atur ke `1` untuk melewati validasi entri lockfile IDE selama koneksi. Gunakan ketika auto-connect gagal menemukan IDE Anda meskipun sedang berjalan |

317| `CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS` | Ukuran konteks, dalam token, saat [idle compaction](https://code.claude.com/docs/id/settings-reference.md#idlecompaction) berlaku pada percakapan (default: `200000`). Menerima bilangan bulat positif, dan nilai lain diabaikan. Nilai di bawah `100000` dinaikkan ke `100000`, ambang terendah. Idle compaction aktif secara default untuk percakapan yang memenuhi syaratnya. Untuk mematikannya, atur `idleCompaction` ke `false`. Memerlukan Claude Code v2.1.290 atau yang lebih baru |318| `CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS` | Ukuran konteks, dalam token, di mana [idle compaction](https://code.claude.com/docs/id/settings-reference.md#idlecompaction) berlaku untuk percakapan (default: `200000`). Menerima bilangan bulat positif, dan nilai lain diabaikan. Nilai di bawah `100000` dinaikkan menjadi `100000`, ambang terendah. Idle compaction aktif secara default untuk percakapan yang memenuhi syaratnya. Untuk mematikannya, atur `idleCompaction` ke `false`. Memerlukan Claude Code v2.1.290 atau yang lebih baru |

318| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Berapa banyak [subagent](https://code.claude.com/docs/id/sub-agents.md#concurrent-subagent-limit) yang dapat berjalan dalam satu sesi sebelum tool Agent menolak untuk 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 yang lebih baru |319| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | Berapa banyak [subagent](https://code.claude.com/docs/id/sub-agents.md#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 yang lebih baru |

319| `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](https://code.claude.com/docs/id/model-config.md#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 sesuai dengan ukuran bawaan untuk namanya |320| `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](https://code.claude.com/docs/id/model-config.md#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 sesuai dengan ukuran bawaan untuk namanya |

320| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Panjang maksimum dalam karakter dari deskripsi tool MCP dan instruksi server MCP yang dikirim Claude Code ke model. Nilai yang Anda atur menggantikan kedua [batas default](https://code.claude.com/docs/id/mcp.md#for-mcp-server-authors): 4096, dan 16384 untuk deskripsi tool yang dimuat Claude melalui pencarian tool. Menerima bilangan bulat positif dalam digit biasa. Nilai lain diabaikan dan default berlaku. Memerlukan Claude Code v2.1.280 atau yang lebih baru |321| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Panjang maksimum dalam karakter untuk deskripsi tool MCP dan instruksi server MCP yang dikirim Claude Code ke model. Nilai yang Anda atur menggantikan kedua [batas default](https://code.claude.com/docs/id/mcp.md#for-mcp-server-authors): 4096, dan 16384 untuk deskripsi tool yang dimuat Claude melalui pencarian tool. Menerima bilangan bulat positif dalam digit biasa. Nilai lain diabaikan dan default berlaku. Memerlukan Claude Code v2.1.280 atau yang lebih baru |

321| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Atur 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 adalah 32000 dan batasnya 128000. Meningkatkan nilai ini mengurangi context window efektif yang tersedia sebelum [auto-compaction](https://code.claude.com/docs/id/costs.md#reduce-token-usage) terpicu |322| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | Atur 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 menjadi 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](https://code.claude.com/docs/id/costs.md#reduce-token-usage) terpicu |

322| `CLAUDE_CODE_MAX_RETRIES` | Menimpa jumlah retry untuk permintaan API yang gagal (default: 10). Retry dapat berhenti lebih awal pada error overloaded `529`. Misalnya, dengan kunci API pada model Opus, retry berhenti pada `529` ketiga dan menampilkan [Repeated 529 Overloaded errors](https://code.claude.com/docs/id/errors.md#api-error-repeated-529-overloaded-errors). Jika Anda mengatur [model fallback](https://code.claude.com/docs/id/settings-reference.md#fallbackmodel), Claude Code beralih ke model tersebut alih-alih menampilkan error. Dibatasi pada 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 |323| `CLAUDE_CODE_MAX_RETRIES` | Menimpa jumlah retry untuk permintaan API yang gagal (default: 10). Retry dapat berhenti lebih awal pada error overloaded `529`. Misalnya, dengan kunci API pada model Opus, retry berhenti pada `529` ketiga dan menampilkan [Repeated 529 Overloaded errors](https://code.claude.com/docs/id/errors.md#api-error-repeated-529-overloaded-errors). Jika Anda mengatur [model fallback](https://code.claude.com/docs/id/settings-reference.md#fallbackmodel), Claude Code beralih ke model tersebut alih-alih menampilkan error. Dibatasi pada 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 gangguan yang lebih lama, atur `CLAUDE_CODE_RETRY_WATCHDOG` sebagai gantinya |

323| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | Dihapus di v2.1.224 dan sekarang tidak berpengaruh. Sebelumnya membatasi jumlah total [subagent](https://code.claude.com/docs/id/sub-agents.md) yang dapat dimunculkan Claude dengan tool Agent dalam satu sesi (default: 200); memunculkan melewati batas gagal dengan `Subagent spawn limit reached`. [Batas subagent bersamaan](https://code.claude.com/docs/id/sub-agents.md#concurrent-subagent-limit) dan [batas kedalaman](https://code.claude.com/docs/id/sub-agents.md#let-subagents-spawn-their-own-subagents) tetap berlaku |324| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | Dihapus di v2.1.224 dan sekarang tidak berpengaruh. Sebelumnya membatasi jumlah total [subagent](https://code.claude.com/docs/id/sub-agents.md) yang dapat dimunculkan Claude dengan tool Agent dalam satu sesi (default: 200); memunculkan melebihi batas gagal dengan `Subagent spawn limit reached`. [Batas subagent bersamaan](https://code.claude.com/docs/id/sub-agents.md#concurrent-subagent-limit) dan [batas kedalaman](https://code.claude.com/docs/id/sub-agents.md#let-subagents-spawn-their-own-subagents) tetap berlaku |

324| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | Jumlah [lapisan subagent](https://code.claude.com/docs/id/sub-agents.md#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 penyarangan. Pada v2.1.217 hingga v2.1.218, default-nya 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 yang lebih baru |325| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | Jumlah [lapisan subagent](https://code.claude.com/docs/id/sub-agents.md#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 penyarangan. Pada v2.1.217 hingga v2.1.218, default-nya 1, sehingga subagent tidak dapat memunculkan subagent 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 yang lebih baru |

325| `CLAUDE_CODE_MAX_TURNS` | Membatasi jumlah giliran agentik saat tidak ada batas eksplisit yang diteruskan. Setara dengan meneruskan [`--max-turns`](https://code.claude.com/docs/id/cli-reference#cli-flags), yang diutamakan saat keduanya diatur. Nilai yang bukan bilangan bulat positif ditolak saat startup dengan error alih-alih diperlakukan sebagai tanpa batas |326| `CLAUDE_CODE_MAX_TURNS` | Membatasi jumlah giliran agentic ketika tidak ada batas eksplisit yang diteruskan. Setara dengan meneruskan [`--max-turns`](https://code.claude.com/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 |

326| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | Batas pada panggilan [WebSearch](https://code.claude.com/docs/id/tools-reference.md#session-search-limit) (default: 200). Saat Claude mencapai batas, panggilan WebSearch berikutnya mengembalikan pemberitahuan yang memintanya melanjutkan dengan informasi yang sudah dikumpulkan dan menyebutkannya dalam jawabannya. Menerima bilangan bulat positif tanpa batas atas. Nilai lain diabaikan dan default berlaku, sehingga batas dapat dinaikkan tetapi tidak dapat dimatikan. Memerlukan Claude Code v2.1.212 atau yang lebih baru |327| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | Batas panggilan [WebSearch](https://code.claude.com/docs/id/tools-reference.md#session-search-limit) (default: 200). Ketika Claude mencapai batas, panggilan WebSearch selanjutnya mengembalikan pemberitahuan yang memintanya melanjutkan dengan informasi yang sudah dikumpulkan dan menyatakannya dalam jawabannya. Menerima bilangan bulat positif tanpa batas atas. Nilai lain diabaikan dan default berlaku, sehingga batas dapat dinaikkan tetapi tidak dapat dimatikan. Memerlukan Claude Code v2.1.212 atau yang lebih baru |

327| `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 |328| `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 tersebut, alih-alih mewarisi environment shell Anda |

328| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | Waktu yang berlalu dalam milidetik sebelum panggilan tool MCP yang masih berjalan [dipindahkan ke tugas latar belakang](https://code.claude.com/docs/id/mcp.md#automatic-backgrounding-of-long-tool-calls) (default: 120000, atau 2 menit). Atur ke `0` untuk mematikan pemindahan otomatis ke latar belakang dan, dalam sesi interaktif, agar Claude menunggu [tugas MCP](https://code.claude.com/docs/id/mcp.md#make-claude-wait-for-the-result-of-an-mcp-task). Memerlukan Claude Code v2.1.212 atau lebih baru |329| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | Waktu yang berlalu dalam milidetik sebelum panggilan tool MCP yang masih berjalan [dipindahkan ke tugas latar belakang](https://code.claude.com/docs/id/mcp.md#automatic-backgrounding-of-long-tool-calls) (default: 120000, atau 2 menit). Atur ke `0` untuk mematikan pemindahan otomatis ke latar belakang dan, dalam sesi interaktif, agar Claude menunggu [tugas MCP](https://code.claude.com/docs/id/mcp.md#make-claude-wait-for-the-result-of-an-mcp-task). Memerlukan Claude Code v2.1.212 atau yang lebih baru |

329| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | Berapa lama dalam milidetik giliran pertama sesi [non-interaktif](https://code.claude.com/docs/id/headless.md) menunggu server MCP yang masih terhubung, menggantikan [penantian giliran pertama](https://code.claude.com/docs/id/agent-sdk/mcp.md#connection-timing) default. Dalam [environment self-hosted](https://code.claude.com/docs/id/self-hosted-environments-configuration.md#connection-timing), ini hanya mengubah berapa lama penantian berlangsung. Beberapa server tetap memiliki penantian sendiri terlepas dari nilainya; [Waktu koneksi](https://code.claude.com/docs/id/agent-sdk/mcp.md#connection-timing) mencantumkannya. Atur ke `0` untuk melewati penantian untuk setiap server lainnya. Memerlukan Claude Code v2.1.274 atau yang lebih baru |330| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | Berapa lama dalam milidetik giliran pertama sesi [non-interaktif](https://code.claude.com/docs/id/headless.md) menunggu server MCP yang masih terhubung, sebagai pengganti [penantian giliran pertama](https://code.claude.com/docs/id/agent-sdk/mcp.md#connection-timing) default. Dalam [environment self-hosted](https://code.claude.com/docs/id/self-hosted-environments-configuration.md#connection-timing), ini hanya mengubah berapa lama penantian berlangsung. Beberapa server mempertahankan penantiannya sendiri terlepas dari nilai ini; [Waktu koneksi](https://code.claude.com/docs/id/agent-sdk/mcp.md#connection-timing) mencantumkannya. Atur ke `0` untuk melewati penantian bagi semua server lainnya. Memerlukan Claude Code v2.1.274 atau yang lebih baru |

330| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | Timeout idle dalam milidetik untuk panggilan tool MCP. Saat server MCP stdio, HTTP, SSE, WebSocket, atau [konektor claude.ai](https://code.claude.com/docs/id/mcp.md#use-mcp-servers-from-claude-ai) tidak mengirim respons maupun 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` yang efektif. `timeout` per-server di `.mcp.json` sebesar setidaknya 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 yang lebih baru. Sebelum v2.1.203, server stdio dikecualikan dari timeout idle |331| `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](https://code.claude.com/docs/id/mcp.md#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 yaitu 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 nilai dibatasi pada `MCP_TOOL_TIMEOUT` efektif. `timeout` per server di `.mcp.json` dengan nilai setidaknya 1000 menaikkan window idle server tersebut setidaknya ke nilai `timeout`. Tidak berlaku untuk server IDE atau server in-process SDK. Memerlukan Claude Code v2.1.187 atau yang lebih baru. Sebelum v2.1.203, server stdio dikecualikan dari timeout idle |

331| `CLAUDE_CODE_MESSAGING_SOCKET` | Diatur oleh Claude Code, bukan oleh Anda: dalam sesi yang mengikat [socket inbox](https://code.claude.com/docs/id/cross-session-messaging.md#the-sessions-inbox-socket), Claude Code mengekspor path socket tersebut ke hook dan perintah Bash saat mengikat socket. Dalam sesi yang dimulai dengan pesan 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 sana melewati [kontrol masuk](https://code.claude.com/docs/id/cross-session-messaging.md#control-inbound-messages) sesi tersebut. Blok `env` pengaturan tidak dapat mengaturnya. Memerlukan Claude Code v2.1.224 atau yang lebih baru |332| `CLAUDE_CODE_MESSAGING_SOCKET` | Diatur oleh Claude Code, bukan oleh Anda: dalam sesi yang mengikat [socket inbox](https://code.claude.com/docs/id/cross-session-messaging.md#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 mengirimkan pesan ke path ini. Setiap sesi mengekspor socket-nya sendiri alih-alih socket yang diwarisi dari induk, dan pesan yang tiba di sana melewati [kontrol inbound](https://code.claude.com/docs/id/cross-session-messaging.md#control-inbound-messages) sesi. Blok `env` pengaturan tidak dapat mengaturnya. Memerlukan Claude Code v2.1.224 atau yang lebih baru |

332| `CLAUDE_CODE_MESSAGING_TOKEN` | Diatur oleh Claude Code, bukan oleh Anda: dalam sesi yang mengikat [socket inbox](https://code.claude.com/docs/id/cross-session-messaging.md#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](https://code.claude.com/docs/id/cross-session-messaging.md#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 yang lebih baru |333| `CLAUDE_CODE_MESSAGING_TOKEN` | Diatur oleh Claude Code, bukan oleh Anda: dalam sesi yang mengikat [socket inbox](https://code.claude.com/docs/id/cross-session-messaging.md#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](https://code.claude.com/docs/id/cross-session-messaging.md#the-sessions-inbox-socket) menjelaskan kapan Claude Code memeriksa token. Setiap sesi mengekspor token-nya sendiri, tidak pernah token yang diwarisi dari sesi induk. Blok `env` pengaturan tidak dapat mengaturnya. Memerlukan Claude Code v2.1.228 atau yang lebih baru |

333| `CLAUDE_CODE_NATIVE_CURSOR` | Atur ke `1` untuk menampilkan kursor milik terminal sendiri di caret input alih-alih blok yang digambar. Kursor mematuhi pengaturan kedip, bentuk, dan fokus terminal. Mengatur `0` dibaca sama dengan membiarkan variabel tidak diatur, sehingga tidak mengembalikan blok yang digambar dalam sesi di mana kursor terminal sendiri sudah aktif |334| `CLAUDE_CODE_NATIVE_CURSOR` | Atur ke `1` untuk menampilkan kursor terminal sendiri di posisi input alih-alih blok yang digambar. Kursor menghormati pengaturan kedip, bentuk, dan fokus terminal. Mengatur `0` dibaca sama seperti membiarkan variabel tidak diatur, sehingga tidak mengembalikan blok yang digambar dalam sesi di mana kursor terminal sendiri sudah aktif |

334| `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 |335| `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 menuliskannya. Tanpa variabel ini, `/init` membuat CLAUDE.md secara otomatis tanpa bertanya |

335| `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 saat stdout adalah terminal. Memerlukan Claude Code v2.1.261 atau yang lebih baru |336| `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 yang lebih baru |

336| `CLAUDE_CODE_NONSTREAMING_TIMEOUT_RETRIES` | Membatasi berapa kali Claude Code mengirim ulang [permintaan non-streaming](https://code.claude.com/docs/id/errors.md#streaming-response-ended-before-any-complete-data-was-received) yang mengalami timeout. Dengan `0`, permintaan gagal pada timeout pertama. Lihat [Menyesuaikan perilaku retry](https://code.claude.com/docs/id/errors.md#tune-retry-behavior) untuk timeout-nya. Memerlukan Claude Code v2.1.285 atau yang lebih baru |337| `CLAUDE_CODE_NONSTREAMING_TIMEOUT_RETRIES` | Membatasi berapa kali Claude Code mengirim ulang [permintaan non-streaming](https://code.claude.com/docs/id/errors.md#streaming-response-ended-before-any-complete-data-was-received) yang mengalami timeout. Dengan `0`, permintaan gagal pada timeout pertama. Lihat [Menyesuaikan perilaku retry](https://code.claude.com/docs/id/errors.md#tune-retry-behavior) untuk timeout-nya. Memerlukan Claude Code v2.1.285 atau yang lebih baru |

337| `CLAUDE_CODE_NO_FLICKER` | Atur ke `1` untuk mengaktifkan [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md), sebuah research preview yang mengurangi kedipan dan menjaga memori tetap stabil dalam percakapan panjang. Menimpa pengaturan [`tui`](https://code.claude.com/docs/id/settings-reference#tui); Anda juga dapat beralih dengan `/tui fullscreen` |338| `CLAUDE_CODE_NO_FLICKER` | Atur ke `1` untuk mengaktifkan [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md), sebuah research preview yang mengurangi kedipan dan menjaga memori tetap stabil dalam percakapan panjang. Menimpa pengaturan [`tui`](https://code.claude.com/docs/id/settings-reference#tui); Anda juga dapat beralih dengan `/tui fullscreen` |

338| `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 lingkungan otomatis. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |339| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | Refresh token 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 environment otomatis. Diabaikan dalam [pengaturan project dan local](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |

339| `CLAUDE_CODE_OAUTH_SCOPES` | Scope OAuth yang dipisahkan spasi yang digunakan saat refresh token diterbitkan, seperti `"user:profile user:inference user:sessions:claude_code"`. Wajib saat `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` diatur. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |340| `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. Diabaikan dalam [pengaturan project dan local](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |

340| `CLAUDE_CODE_OAUTH_TOKEN` | Access token OAuth untuk autentikasi claude.ai. Alternatif untuk `/login` bagi SDK dan lingkungan otomatis. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Diutamakan daripada kredensial yang disimpan di keychain. Buat dengan [`claude setup-token`](https://code.claude.com/docs/id/authentication#generate-a-long-lived-token). Kecuali Anda menjalankan [`/login`](https://code.claude.com/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 |341| `CLAUDE_CODE_OAUTH_TOKEN` | Token akses OAuth untuk autentikasi claude.ai. Alternatif untuk `/login` untuk SDK dan environment otomatis. Diabaikan dalam [pengaturan project dan local](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Diutamakan daripada kredensial yang disimpan di keychain. Buat token dengan [`claude setup-token`](https://code.claude.com/docs/id/authentication#generate-a-long-lived-token). Kecuali Anda menjalankan [`/login`](https://code.claude.com/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 |

341| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | Dihapus di v2.1.160 dan sekarang tidak berpengaruh. Sebelumnya menyematkan [fast mode](https://code.claude.com/docs/id/fast-mode.md) ke Claude Opus 4.6 alih-alih default saat ini. Opus 4.6 tidak lagi mendukung fast mode |342| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | Dihapus di v2.1.160 dan sekarang tidak berpengaruh. Sebelumnya menetapkan [fast mode](https://code.claude.com/docs/id/fast-mode.md) ke Claude Opus 4.6 alih-alih default saat ini. Opus 4.6 tidak lagi mendukung fast mode |

342| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | Panjang maksimum atribut OpenTelemetry yang memuat 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 yang lebih baru. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |343| `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 yang lebih baru. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

343| `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 secara diam-diam. Memerlukan Claude Code v2.1.179 atau yang lebih baru. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |344| `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 bentrokan port Prometheus akan gagal secara diam-diam. Memerlukan Claude Code v2.1.179 atau yang lebih baru. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

344| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Timeout dalam milidetik untuk mem-flush span OpenTelemetry yang tertunda (default: 5000). Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |345| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | Timeout dalam milidetik untuk mem-flush span OpenTelemetry yang tertunda (default: 5000). Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

345| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Interval untuk menyegarkan header OpenTelemetry dinamis dalam milidetik (default: 1740000 / 29 menit). Lihat [Header dinamis](https://code.claude.com/docs/id/monitoring-usage.md#dynamic-headers) |346| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | Interval untuk menyegarkan header OpenTelemetry dinamis dalam milidetik (default: 1740000 / 29 menit). Lihat [Header dinamis](https://code.claude.com/docs/id/monitoring-usage.md#dynamic-headers) |

346| `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](https://code.claude.com/docs/id/monitoring-usage.md) |347| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | Timeout dalam milidetik bagi exporter OpenTelemetry untuk menyelesaikan proses saat shutdown (default: 2000). Naikkan jika metrik hilang saat keluar. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

347| `CLAUDE_CODE_OVERLOADED_RETRY_BASE_DELAY_MS` | Jeda awal dalam milidetik, menggantikan default 500, dari exponential backoff di antara [retry otomatis](https://code.claude.com/docs/id/errors.md#tune-retry-behavior) untuk permintaan yang ditolak API dengan error overloaded `529`. Naikkan untuk menyebarkan retry ke jendela yang lebih panjang saat API sedang penuh. Berikan milidetik bulat dari 500 hingga 32000 dalam digit biasa; Claude Code memperlakukan nilai lain sebagai tidak diatur. Tidak berpengaruh saat `CLAUDE_CODE_RETRY_WATCHDOG` diatur ke `1`, atau saat permintaan yang ditolak dikirim dalam [fast mode](https://code.claude.com/docs/id/fast-mode.md#handle-rate-limits). Memerlukan Claude Code v2.1.292 atau yang lebih baru |348| `CLAUDE_CODE_OVERLOADED_RETRY_BASE_DELAY_MS` | Penundaan awal dalam milidetik, sebagai pengganti default 500, untuk exponential backoff di antara [retry otomatis](https://code.claude.com/docs/id/errors.md#tune-retry-behavior) dari permintaan yang ditolak API dengan error overloaded `529`. Naikkan untuk menyebarkan retry dalam window yang lebih panjang ketika API berada pada kapasitas penuh. Berikan milidetik bulat dari 500 hingga 32000 dalam digit biasa; Claude Code memperlakukan nilai lain sebagai tidak diatur. Tidak berpengaruh ketika `CLAUDE_CODE_RETRY_WATCHDOG` diatur ke `1`, atau ketika permintaan yang ditolak dikirim dalam [fast mode](https://code.claude.com/docs/id/fast-mode.md#handle-rate-limits). Memerlukan Claude Code v2.1.292 atau yang lebih baru |

348| `CLAUDE_CODE_OVERLOADED_RETRY_MAX_DELAY_MS` | Batas atas dalam milidetik, menggantikan default 32000, pada exponential backoff di antara [retry otomatis](https://code.claude.com/docs/id/errors.md#tune-retry-behavior) untuk permintaan yang ditolak API dengan error overloaded `529`. Naikkan agar retry berikutnya terus semakin berjarak saat API sedang penuh. Berikan milidetik bulat dari 32000 hingga 64000 dalam digit biasa; Claude Code memperlakukan nilai lain sebagai tidak diatur. Tidak berpengaruh saat `CLAUDE_CODE_RETRY_WATCHDOG` diatur ke `1`, atau saat permintaan yang ditolak dikirim dalam [fast mode](https://code.claude.com/docs/id/fast-mode.md#handle-rate-limits). Memerlukan Claude Code v2.1.296 atau yang lebih baru |349| `CLAUDE_CODE_OVERLOADED_RETRY_MAX_DELAY_MS` | Batas atas dalam milidetik, sebagai pengganti default 32000, untuk exponential backoff di antara [retry otomatis](https://code.claude.com/docs/id/errors.md#tune-retry-behavior) dari permintaan yang ditolak API dengan error overloaded `529`. Naikkan agar retry berikutnya terus semakin berjauhan ketika API berada pada kapasitas penuh. Berikan milidetik bulat dari 32000 hingga 64000 dalam digit biasa; Claude Code memperlakukan nilai lain sebagai tidak diatur. Tidak berpengaruh ketika `CLAUDE_CODE_RETRY_WATCHDOG` diatur ke `1`, atau ketika permintaan yang ditolak dikirim dalam [fast mode](https://code.claude.com/docs/id/fast-mode.md#handle-rate-limits). Memerlukan Claude Code v2.1.296 atau yang lebih baru |

349| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | Atur ke `1` agar Claude Code menjalankan perintah upgrade package manager Anda di latar belakang saat versi baru tersedia. Berlaku untuk instalasi Homebrew dan WinGet. Package manager lain tetap menampilkan perintah upgrade tanpa menjalankannya. Lihat [Pembaruan otomatis](https://code.claude.com/docs/id/setup.md#auto-updates) |350| `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](https://code.claude.com/docs/id/setup.md#auto-updates) |

350| `CLAUDE_CODE_PERFORCE_MODE` | Atur ke `1` untuk mengaktifkan perlindungan penulisan yang sadar Perforce. Saat 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 |351| `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 |

351| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | Menimpa direktori root plugin. Terlepas dari namanya, ini mengatur direktori induk, bukan cache itu sendiri: marketplace dan cache plugin berada di subdirektori di bawah path ini. Default-nya `~/.claude/plugins` |352| `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` |

352| `CLAUDE_CODE_PLUGIN_DIRS` | Direktori plugin yang dimuat untuk sesi, masing-masing dimuat seperti cara flag [`--plugin-dir`](https://code.claude.com/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 yang lebih baru. Lihat [Memuat plugin untuk satu sesi](https://code.claude.com/docs/id/plugins/create.md#load-a-directory-or-archive-for-one-session) |353| `CLAUDE_CODE_PLUGIN_DIRS` | Direktori plugin yang dimuat untuk sesi, masing-masing dimuat dengan cara yang sama seperti flag [`--plugin-dir`](https://code.claude.com/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 yang lebih baru. Lihat [Memuat plugin untuk satu sesi](https://code.claude.com/docs/id/plugins/create.md#load-a-directory-or-archive-for-one-session) |

353| `CLAUDE_CODE_PLUGIN_DIR_WATCH` | Mengontrol apakah Claude Code memuat ulang [mod](https://code.claude.com/docs/id/plugins/mods/overview.md) saat file mod berubah. Pemuatan ulang berlaku untuk mod yang Anda muat dari direktori dengan `--plugin-dir`, dan aktif secara default dalam sesi interaktif. Atur ke `1` untuk mengaktifkannya juga dalam sesi non-interaktif, atau `0` untuk mematikannya di setiap sesi. Memerlukan Claude Code v2.1.287 atau yang lebih baru. Lihat [pengaturan dan environment variable mod](https://code.claude.com/docs/id/plugins/mods/reference.md#settings-and-environment-variables) |354| `CLAUDE_CODE_PLUGIN_DIR_WATCH` | Mengontrol apakah Claude Code memuat ulang [mod](https://code.claude.com/docs/id/plugins/mods/overview.md) ketika file mod berubah. Pemuatan ulang berlaku untuk mod yang Anda muat dari direktori dengan `--plugin-dir`, dan aktif secara default dalam sesi interaktif. Atur ke `1` untuk mengaktifkannya juga dalam sesi non-interaktif, atau `0` untuk mematikannya di setiap sesi. Memerlukan Claude Code v2.1.287 atau yang lebih baru. Lihat [pengaturan dan environment variable mod](https://code.claude.com/docs/id/plugins/mods/reference.md#settings-and-environment-variables) |

354| `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](https://code.claude.com/docs/id/plugins/troubleshooting.md#git-clone-timed-out-after-120s) |355| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | Timeout dalam milidetik untuk melakukan clone atau menyegarkan marketplace plugin (default: 120000). Naikkan nilai ini untuk repositori besar atau koneksi jaringan yang lambat. Lihat [Git clone timed out](https://code.claude.com/docs/id/plugins/troubleshooting.md#git-clone-timed-out-after-120s) |

355| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | Atur ke `1` untuk melewati upaya clone ulang dan tetap menggunakan checkout marketplace yang ada saat penyegaran marketplace tidak dapat menjangkau atau melakukan autentikasi 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](https://code.claude.com/docs/id/plugins/troubleshooting.md#marketplace-updates-keep-failing-offline) |356| `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 environment offline atau airgapped di mana clone ulang akan gagal dengan cara yang sama. Lihat [Pembaruan marketplace gagal di environment offline](https://code.claude.com/docs/id/plugins/troubleshooting.md#marketplace-updates-keep-failing-offline) |

356| `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` |357| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | Atur ke `1` untuk melakukan 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` |

357| `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 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](https://code.claude.com/docs/id/plugins/org.md#seed-containers-and-ci) |358| `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 terisi 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](https://code.claude.com/docs/id/plugins/org.md#seed-containers-and-ci) |

358| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Atur ke `1` agar Claude Code berhenti 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 pada cakupan proses tidak pernah menimpa Group Policy `MachinePolicy` atau `UserPolicy` terlepas dari pengaturan ini |359| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | Atur ke `1` untuk mencegah Claude Code meneruskan `-ExecutionPolicy Bypass` saat memunculkan PowerShell untuk panggilan tool, hook, dan perintah baris status, dan sebagai gantinya 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 dengan default Restricted. Bypass cakupan proses tidak pernah menimpa Group Policy `MachinePolicy` atau `UserPolicy` terlepas dari pengaturan ini |

359| `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](https://code.claude.com/docs/id/headless.md#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. Saat penantian idle mencapai batas atas, Claude Code berhenti menunggu tugas latar belakang yang tersisa. Perintah latar belakang yang sedang berjalan yang dimulai oleh percakapan utama membuat run tetap terbuka melewati batas tersebut. Atur ke `0` untuk menunggu tanpa batas. Memerlukan Claude Code v2.1.182 atau yang lebih baru |360| `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](https://code.claude.com/docs/id/headless.md#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. Perintah latar belakang yang sedang berjalan yang dimulai oleh percakapan utama menahan eksekusi tetap terbuka melewati batas tersebut. Atur ke `0` untuk menunggu tanpa batas. Memerlukan Claude Code v2.1.182 atau yang lebih baru |

360| `CLAUDE_CODE_PROCESS_WRAPPER` | Meluncurkan proses yang dimulai Claude Code dari binary-nya sendiri, seperti layanan latar belakang yang menghosting sesi [agent view](https://code.claude.com/docs/id/agent-view.md), melalui launcher korporat yang diberikan sebagai prefiks argv seperti `/opt/corp/launcher`. Atur di blok `env` pengaturan pengguna atau [pengaturan terkelola](https://code.claude.com/docs/id/managed-settings.md), bukan sebagai ekspor shell, agar layanan latar belakang yang terlepas mewarisinya; pengaturan proyek dan lokal tidak dapat mengaturnya. Setara dengan [pengaturan `processWrapper`](https://code.claude.com/docs/id/settings-reference#processwrapper), yang memerlukan Claude Code v2.1.210 atau yang lebih baru; variabel ini diutamakan saat keduanya diatur. Ekstensi VS Code mengonfigurasi launcher-nya sendiri secara terpisah melalui pengaturan `claudeProcessWrapper`. Diabaikan di Windows. Lihat [Menjalankan Claude Code di balik launcher korporat](https://code.claude.com/docs/id/corporate-launcher.md) untuk format nilai, apa yang dicakup launcher, dan kontrak yang harus dipenuhi launcher. Memerlukan Claude Code v2.1.208 atau yang lebih baru |361| `CLAUDE_CODE_PROCESS_WRAPPER` | Meluncurkan proses yang dimulai Claude Code dari binary-nya sendiri, seperti layanan latar belakang yang meng-host sesi [agent view](https://code.claude.com/docs/id/agent-view.md), melalui launcher perusahaan yang diberikan sebagai prefiks argv seperti `/opt/corp/launcher`. Atur di blok `env` pengaturan pengguna atau [pengaturan terkelola](https://code.claude.com/docs/id/managed-settings.md), bukan sebagai ekspor shell, agar layanan latar belakang yang terlepas mewarisinya; pengaturan project dan local tidak dapat mengaturnya. Setara dengan [pengaturan `processWrapper`](https://code.claude.com/docs/id/settings-reference#processwrapper), yang memerlukan Claude Code v2.1.210 atau yang lebih baru; variabel ini diutamakan ketika keduanya diatur. Ekstensi VS Code mengonfigurasi launcher-nya sendiri secara terpisah melalui pengaturan `claudeProcessWrapper`. Diabaikan di Windows. Lihat [Menjalankan Claude Code di balik launcher perusahaan](https://code.claude.com/docs/id/corporate-launcher.md) untuk format nilai, apa yang dicakup launcher, dan kontrak yang harus dipenuhi launcher. Memerlukan Claude Code v2.1.208 atau yang lebih baru |

361| `CLAUDE_CODE_PROJECT_DIR_NAME` | Atur bersama `CLAUDE_CONFIG_DIR` untuk memilih nama direktori `projects/` tempat Claude Code menyimpan transkrip dan auto memory sesi tersebut, menggantikan 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 saat `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](https://code.claude.com/docs/id/sessions.md#name-the-project-directory-yourself). Memerlukan Claude Code v2.1.234 atau yang lebih baru |362| `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 project sendiri](https://code.claude.com/docs/id/sessions.md#name-the-project-directory-yourself). Memerlukan Claude Code v2.1.234 atau yang lebih baru |

362| `CLAUDE_CODE_PROMPT_CACHE_TTL` | Atur `5m` atau `1h`, satu-satunya nilai yang diterima Claude Code, untuk memilih [TTL cache prompt](https://code.claude.com/docs/id/prompt-caching.md#cache-lifetime) untuk percakapan utama: giliran interaktif, `-p`, dan SDK Anda, ditambah helper yang berjalan inline bersamanya. Diutamakan daripada pengaturan `promptCacheTtl` dan daripada `ENABLE_PROMPT_CACHING_1H`, dan `FORCE_PROMPT_CACHING_5M` menimpanya. API menagih penulisan cache 1 jam dengan tarif yang lebih tinggi. Memerlukan Claude Code v2.1.242 atau yang lebih baru |363| `CLAUDE_CODE_PROMPT_CACHE_TTL` | Atur `5m` atau `1h`, satu-satunya nilai yang diterima Claude Code, untuk memilih [TTL prompt cache](https://code.claude.com/docs/id/prompt-caching.md#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 yang lebih baru |

363| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | Atur ke `1` untuk mempropagasikan W3C trace context saat `ANTHROPIC_BASE_URL` mengarah ke proxy kustom. Propagasi mencakup header `traceparent` pada permintaan model dan MCP HTTP serta environment variable `TRACEPARENT` untuk subprocess Bash, PowerShell, dan hook. Secara default, propagasi hanya diaktifkan saat terhubung langsung ke Anthropic API. Ditambahkan di v2.1.152. Lihat [Traces (beta)](https://code.claude.com/docs/id/monitoring-usage.md#traces-beta) |364| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | Atur ke `1` untuk mempropagasi konteks trace W3C ketika `ANTHROPIC_BASE_URL` mengarah ke proxy kustom. Propagasi mencakup header `traceparent` pada permintaan model dan MCP HTTP serta environment variable `TRACEPARENT` untuk subprocess Bash, PowerShell, dan hook. Secara default, propagasi hanya diaktifkan ketika terhubung langsung ke Anthropic API. Ditambahkan di v2.1.152. Lihat [Traces (beta)](https://code.claude.com/docs/id/monitoring-usage.md#traces-beta) |

364| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | Diatur oleh platform host yang menyematkan Claude Code dan mengelola perutean penyedia model atas namanya. Saat 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](https://code.claude.com/docs/id/managed-settings.md), 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`](https://code.claude.com/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 menurut penyedia API](https://code.claude.com/docs/id/data-usage.md#default-behaviors-by-api-provider) |365| `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` dalam [pengaturan terkelola](https://code.claude.com/docs/id/managed-settings.md), 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` dalam blok `env` terkelola; allowlist [`availableModels`](https://code.claude.com/docs/id/model-config#restrict-model-selection) dalam 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, Agent Platform milik Google Cloud, dan Microsoft Foundry, sehingga telemetri mengikuti opt-out standar `DISABLE_TELEMETRY`. Lihat [Perilaku default menurut penyedia API](https://code.claude.com/docs/id/data-usage.md#default-behaviors-by-api-provider) |

365| `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 |366| `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 |

366| `CLAUDE_CODE_REMOTE` | Diatur secara otomatis ke `true` saat Claude Code berjalan sebagai [sesi cloud](https://code.claude.com/docs/id/claude-code-on-the-web.md). Baca ini dari hook atau skrip penyiapan untuk mendeteksi apakah Anda berada dalam sesi cloud |367| `CLAUDE_CODE_REMOTE` | Diatur secara otomatis ke `true` ketika Claude Code berjalan sebagai [sesi cloud](https://code.claude.com/docs/id/claude-code-on-the-web.md). Baca ini dari hook atau skrip penyiapan untuk mendeteksi apakah Anda berada dalam sesi cloud |

367| `CLAUDE_CODE_REMOTE_SESSION_ID` | Diatur secara otomatis dalam [sesi cloud](https://code.claude.com/docs/id/claude-code-on-the-web.md) ke ID sesi saat ini. Baca ini untuk membuat tautan kembali ke transkrip sesi. Lihat [Menautkan output kembali ke sesi](https://code.claude.com/docs/id/cloud-environments.md#link-output-back-to-the-session) |368| `CLAUDE_CODE_REMOTE_SESSION_ID` | Diatur secara otomatis dalam [sesi cloud](https://code.claude.com/docs/id/claude-code-on-the-web.md) ke ID sesi saat ini. Baca ini untuk membuat tautan kembali ke transkrip sesi. Lihat [Menautkan output kembali ke sesi](https://code.claude.com/docs/id/cloud-environments.md#link-output-back-to-the-session) |

368| `CLAUDE_CODE_RESTRICTED` | Atur ke `1` untuk memulai sesi dalam mode terbatas, sama seperti meneruskan [`--restricted`](https://code.claude.com/docs/id/cli-reference#cli-flags). Claude Code mengabaikan variabel ini di blok `env` file pengaturan. Memerlukan Claude Code v2.1.248 atau yang lebih baru |369| `CLAUDE_CODE_RESTRICTED` | Atur ke `1` untuk memulai sesi dalam mode terbatas, sama seperti meneruskan [`--restricted`](https://code.claude.com/docs/id/cli-reference#cli-flags). Claude Code mengabaikan variabel ini dalam blok `env` file pengaturan. Memerlukan Claude Code v2.1.248 atau yang lebih baru |

369| `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 obrolan VS Code, lihat [Melanjutkan percakapan setelah memuat ulang](https://code.claude.com/docs/id/vs-code.md#continue-conversations-after-a-reload) |370| `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 variabel atau atur ke `0`. Untuk panel chat VS Code, lihat [Melanjutkan percakapan setelah reload](https://code.claude.com/docs/id/vs-code.md#continue-conversations-after-a-reload) |

370| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Usia maksimum dalam milidetik dari pesan transkrip terakhir agar sesi yang berakhir di tengah giliran dapat dilanjutkan secara otomatis saat resume. Saat 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 beberapa giliran hanya dilanjutkan dalam enam jam dari pesan terakhirnya, seperti giliran yang berakhir dengan error API. 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 sudah basi. Claude Code menetapkan batas satu jam sendiri saat memulai ulang sesi [agent view](https://code.claude.com/docs/id/agent-view.md) yang crash yang mewarisi percakapannya dari sesi interaktif. Memerlukan Claude Code v2.1.211 atau yang lebih baru |371| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | Usia maksimum dalam milidetik dari pesan transkrip terakhir agar sesi yang berakhir di tengah giliran dapat dilanjutkan secara otomatis saat resume. Ketika pesan terakhir lebih lama 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` tidak menetapkan batas, kecuali bahwa beberapa giliran hanya dilanjutkan dalam enam jam sejak pesan terakhirnya, seperti giliran yang berakhir dengan error API. Nilai positif membatasi setiap giliran, termasuk giliran 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 sudah usang. Claude Code menetapkan batas satu jam sendiri ketika memulai ulang sesi [agent view](https://code.claude.com/docs/id/agent-view.md) yang crash yang mewarisi percakapannya dari sesi interaktif. Memerlukan Claude Code v2.1.211 atau yang lebih baru |

371| `CLAUDE_CODE_RESUME_PROMPT` | Menimpa pesan lanjutan yang dikirim Claude Code ke Claude saat `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` melanjutkan giliran yang terputus alih-alih mengirim ulang prompt-nya, atau saat Anda melanjutkan [panggilan tool yang ditunda](https://code.claude.com/docs/id/hooks.md#defer-a-tool-call-for-later) dengan `-p`. Default-nya `Continue from where you left off.`. String kosong menggunakan default |372| `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 ditangguhkan](https://code.claude.com/docs/id/hooks.md#defer-a-tool-call-for-later) dengan `-p`. Default ke `Continue from where you left off.`. String kosong menggunakan default |

372| `CLAUDE_CODE_RESUME_SHOWS_CUT_OFF_CALLS` | Atur ke `1` untuk mempertahankan [panggilan tool yang terputus](https://code.claude.com/docs/id/sessions.md#what-a-resumed-session-restores), yang ditandai sebagai terpotong, dalam giliran yang dilanjutkan oleh `CLAUDE_CODE_RESUME_INTERRUPTED_TURN`. Saat tidak diatur, panggilan tersebut dibuang sebelum giliran berlanjut. Beberapa panggilan tetap dibuang, seperti panggilan ke subagent, skill, workflow, dan tool yang menunggu seseorang. Untuk panel chat VS Code, lihat [Melanjutkan percakapan setelah reload](https://code.claude.com/docs/id/vs-code.md#continue-conversations-after-a-reload). Memerlukan Claude Code v2.1.309 atau yang lebih baru |373| `CLAUDE_CODE_RESUME_SHOWS_CUT_OFF_CALLS` | Atur ke `1` untuk mempertahankan [panggilan tool yang terputus](https://code.claude.com/docs/id/sessions.md#what-a-resumed-session-restores), yang ditandai sebagai terpotong, dalam giliran yang dilanjutkan oleh `CLAUDE_CODE_RESUME_INTERRUPTED_TURN`. Ketika tidak diatur, panggilan tersebut dibuang sebelum giliran dilanjutkan. Beberapa panggilan tetap dibuang, seperti panggilan ke subagent, skill, workflow, dan tool yang menunggu seseorang. Untuk panel chat VS Code, lihat [Melanjutkan percakapan setelah reload](https://code.claude.com/docs/id/vs-code.md#continue-conversations-after-a-reload). Memerlukan Claude Code v2.1.309 atau yang lebih baru |

373| `CLAUDE_CODE_RETRY_WATCHDOG` | Atur ke `1` untuk sesi tanpa pengawasan seperti harness eval, job CI, atau worker jarak jauh. Melakukan retry pada error kapasitas `429` dan `529` tanpa batas alih-alih gagal setelah `CLAUDE_CODE_MAX_RETRIES` percobaan. Claude Code langsung gagal saat permintaan berkecepatan standar mendapat `429` yang melaporkan batas pengeluaran atau kredit penggunaan yang habis, bahkan yang berasal dari [batas pengeluaran gateway](https://code.claude.com/docs/id/errors.md#spend-limit-reached) yang direset sesuai jadwal. Sebelum v2.1.239, watchdog melakukan retry pada error ini tanpa batas. Untuk permintaan fast mode, lihat [Menangani rate limit](https://code.claude.com/docs/id/fast-mode.md#handle-rate-limits). Watchdog melakukan backoff hingga 5 menit di antara percobaan, atau hingga batas direset saat respons membawa waktu reset rate limit, sehingga sesi yang mencapai batas penggunaan menunggu hingga sisa jendela berakhir. Pada v2.1.199 atau yang 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 yang lebih baru |374| `CLAUDE_CODE_RETRY_WATCHDOG` | Atur ke `1` untuk sesi tanpa pengawasan seperti harness eval, job CI, atau worker jarak jauh. Melakukan retry pada error kapasitas `429` dan `529` tanpa batas alih-alih gagal setelah `CLAUDE_CODE_MAX_RETRIES` kali percobaan. Claude Code langsung gagal ketika permintaan kecepatan standar mendapatkan `429` yang melaporkan batas pengeluaran atau kredit penggunaan yang habis, bahkan dari [batas pengeluaran gateway](https://code.claude.com/docs/id/errors.md#spend-limit-reached) yang direset sesuai jadwal. Sebelum v2.1.239, watchdog mencoba ulang error ini tanpa batas. Untuk permintaan fast mode, lihat [Menangani rate limit](https://code.claude.com/docs/id/fast-mode.md#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 window yang tersisa berakhir. Pada v2.1.199 atau yang lebih baru, watchdog 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 yang lebih baru |

374| `CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS` | Waktu maksimum dalam milidetik yang dihabiskan setiap permintaan API untuk menunggu error `429` dan `529` saat `CLAUDE_CODE_RETRY_WATCHDOG` diatur. Setelah waktu tersebut habis, error serupa berikutnya mengakhiri permintaan. Berikan bilangan bulat positif dalam digit biasa, seperti `1800000` untuk 30 menit. Saat tidak diatur, penantian tidak memiliki batas. Memerlukan Claude Code v2.1.295 atau yang lebih baru |375| `CLAUDE_CODE_RETRY_WATCHDOG_MAX_WAIT_MS` | Waktu maksimum dalam milidetik yang dihabiskan setiap permintaan API untuk menunggu error `429` dan `529` ketika `CLAUDE_CODE_RETRY_WATCHDOG` diatur. Setelah waktu tersebut habis, error serupa berikutnya mengakhiri permintaan. Berikan bilangan bulat positif dalam digit biasa, seperti `1800000` untuk 30 menit. Ketika tidak diatur, penantian tidak memiliki batas. Memerlukan Claude Code v2.1.295 atau yang lebih baru |

375| `CLAUDE_CODE_RETRY_WATCHDOG_USAGE_LIMIT_RECHECK_MS` | Interval minimum dalam milidetik di antara pemeriksaan apakah [batas penggunaan](https://code.claude.com/docs/id/errors.md#youve-hit-your-session-limit) sudah dicabut, selama permintaan menunggu batas tersebut direset dengan `CLAUDE_CODE_RETRY_WATCHDOG` diatur. Saat pemeriksaan menemukan batas telah dicabut, permintaan langsung dikirim. Berikan bilangan bulat dalam digit biasa dari `60000`, satu menit, hingga `10800000`, tiga jam. Pemeriksaan hanya dilakukan untuk batas sesi atau mingguan langganan claude.ai saat kredit penggunaan tidak sedang digunakan, dan tidak dilakukan saat `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` diatur. Saat variabel ini tidak diatur atau nilainya di luar rentang tersebut, tidak ada pemeriksaan yang dilakukan. Memerlukan Claude Code v2.1.305 atau yang lebih baru |376| `CLAUDE_CODE_RETRY_WATCHDOG_USAGE_LIMIT_RECHECK_MS` | Interval minimum dalam milidetik di antara pemeriksaan apakah [batas penggunaan](https://code.claude.com/docs/id/errors.md#youve-hit-your-session-limit) sudah dicabut, saat permintaan menunggu batas tersebut direset dengan `CLAUDE_CODE_RETRY_WATCHDOG` diatur. Ketika pemeriksaan menemukan batas telah dicabut, permintaan langsung dikirim. Berikan bilangan bulat dalam digit biasa dari `60000`, satu menit, hingga `10800000`, tiga jam. Pemeriksaan hanya dilakukan untuk batas sesi atau mingguan langganan claude.ai saat kredit penggunaan tidak sedang digunakan, dan tidak saat `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` diatur. Ketika variabel ini tidak diatur atau nilainya di luar rentang tersebut, tidak ada pemeriksaan yang dilakukan. Memerlukan Claude Code v2.1.305 atau yang 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 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. Setara dengan meneruskan [`--safe-mode`](https://code.claude.com/docs/id/cli-reference#cli-flags). Proses anak yang dimunculkan secara langsung mewarisi variabel ini |377| `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 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. Setara dengan meneruskan [`--safe-mode`](https://code.claude.com/docs/id/cli-reference#cli-flags). Child process yang dimunculkan secara langsung mewarisi variabel ini |

377| `CLAUDE_CODE_SCRIPT_CAPS` | Objek JSON yang membatasi berapa kali skrip tertentu dapat dipanggil per sesi saat `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 |378| `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 shell-expansion 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` | Atur pengali gulir roda mouse dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md#mouse-wheel-scrolling). Menerima nilai positif apa pun hingga 20, termasuk nilai pecahan di bawah 1 seperti `0.5` untuk memperlambat gulir 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, tempat Claude Code menggunakan penanganan gulirnya sendiri |379| `CLAUDE_CODE_SCROLL_SPEED` | Atur pengali scroll roda mouse dalam [rendering layar penuh](https://code.claude.com/docs/id/fullscreen.md#mouse-wheel-scrolling). Menerima nilai positif apa pun hingga 20, termasuk nilai pecahan di bawah 1 seperti `0.5` untuk memperlambat scrolling 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 notch tanpa amplifikasi. 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 dirancang Claude](https://code.claude.com/docs/id/tools-reference.md#sendfeedback-tool-behavior) untuk suatu sesi. Atur ke `1` untuk mengaktifkannya jika 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` dari pengaturan [`feedbackDrafts`](https://code.claude.com/docs/id/settings-reference#feedbackdrafts), tetap berlaku |380| `CLAUDE_CODE_SEND_FEEDBACK` | Atur ke `0` untuk mematikan [umpan balik yang dirancang Claude](https://code.claude.com/docs/id/tools-reference.md#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`](https://code.claude.com/docs/id/settings-reference#feedbackdrafts), tetap berlaku |

380| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | Menimpa anggaran waktu dalam milidetik untuk hook [SessionEnd](https://code.claude.com/docs/id/hooks.md#sessionend). Nilai ini juga merupakan timeout untuk setiap hook yang tidak mengatur `timeout` sendiri. Berlaku untuk keluar dari sesi, `/clear`, dan beralih sesi melalui `/resume` interaktif. Secara default anggarannya 1,5 detik, yang secara otomatis dinaikkan 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_SESSIONEND_HOOKS_TIMEOUT_MS` | Menimpa anggaran waktu dalam milidetik untuk hook [SessionEnd](https://code.claude.com/docs/id/hooks.md#sessionend). Nilai ini juga merupakan timeout untuk setiap hook yang tidak menetapkan `timeout` sendiri. Berlaku untuk keluar sesi, `/clear`, dan beralih sesi melalui `/resume` interaktif. Secara default anggarannya 1,5 detik, secara otomatis dinaikkan 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 subprocess tool Bash dan PowerShell, subprocess [perintah hook](https://code.claude.com/docs/id/hooks.md), dan subprocess [server MCP](https://code.claude.com/docs/id/mcp.md) stdio. Untuk Bash, PowerShell, dan hook, ini cocok dengan field `session_id` dalam 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, sama seperti 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_SESSION_ID` | Diatur secara otomatis ke ID sesi saat ini dalam subprocess tool Bash dan PowerShell, subprocess [perintah hook](https://code.claude.com/docs/id/hooks.md), dan subprocess [server MCP](https://code.claude.com/docs/id/mcp.md) stdio. Untuk Bash, PowerShell, dan hook, ini cocok dengan field `session_id` dalam input JSON hook dan diperbarui saat `/clear`. Subprocess server MCP mempertahankan ID saat dimunculkan. Pada `--resume <session-id>` subprocess tersebut menerima ID yang dilanjutkan, sesuai dengan hook dan Bash. Pada `--continue` atau `--resume` tanpa ID eksplisit, subprocess tersebut mungkin menerima ID startup awal sebagai gantinya. Gunakan untuk mengorelasikan skrip dan tool eksternal dengan sesi Claude Code yang meluncurkannya |

382| `CLAUDE_CODE_SHELL` | Atur 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 kembali ke deteksi otomatis. Deteksi otomatis menggunakan `$SHELL` Anda saat mengarah ke `bash` atau `zsh`; jika tidak, ia memilih `zsh` lalu `bash` pertama yang berfungsi yang ditemukan di `PATH` Anda dan lokasi instalasi standar |383| `CLAUDE_CODE_SHELL` | Atur 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 kembali ke deteksi otomatis. Deteksi otomatis menggunakan `$SHELL` Anda ketika mengarah ke `bash` atau `zsh`; jika tidak, ia 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](https://code.claude.com/docs/id/hooks.md), perintah [baris status](https://code.claude.com/docs/id/statusline.md), dan perintah startup [server MCP](https://code.claude.com/docs/id/mcp.md) stdio. Hook PowerShell dan hook exec-form 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 di-quote 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 dirakit Claude Code, termasuk penyiapan environment, bukan hanya perintah yang dijalankan Claude |384| `CLAUDE_CODE_SHELL_PREFIX` | Prefiks perintah yang membungkus perintah shell yang dimunculkan Claude Code: panggilan tool Bash, perintah [hook](https://code.claude.com/docs/id/hooks.md), perintah [baris status](https://code.claude.com/docs/id/statusline.md), dan perintah startup [server MCP](https://code.claude.com/docs/id/mcp.md) stdio. Hook PowerShell dan hook exec-form 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 dalam `$1`, sehingga wrapper harus mengevaluasi ulang `$1` dengan shell, misalnya `exec bash -c "$1"`. Memperlakukan `$1` sebagai path executable saja 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, pembacaan file, dan pengeditan 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`](https://code.claude.com/docs/id/headless#start-faster-with-bare-mode) |385| `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 dalam 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`](https://code.claude.com/docs/id/headless#start-faster-with-bare-mode) |

385| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Memilih antara system prompt lengkap Claude Code dan yang lebih pendek dengan deskripsi tool yang disingkat. Saat tidak diatur, Haiku 4.5, Sonnet 5, Opus 4.7, dan model sebelumnya dalam keluarga tersebut menggunakan prompt lengkap secara default, dan model yang lebih baru menggunakan yang lebih pendek. Atur ke `1` untuk menggunakan prompt yang lebih pendek pada model apa pun. Atur ke `0`, `false`, `no`, atau `off` untuk menggunakan prompt lengkap pada model apa pun, bahkan ketika eksperimen atau konfigurasi server akan memilih yang lebih pendek. Kedua prompt mempertahankan set tool lengkap, hook, server MCP, dan penemuan CLAUDE.md |386| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | Memilih antara system prompt lengkap Claude Code dan versi yang lebih pendek dengan deskripsi tool yang disingkat. Ketika tidak diatur, Haiku 4.5, Sonnet 5, Opus 4.7, dan model sebelumnya dalam keluarga tersebut menggunakan prompt lengkap secara default, dan model yang lebih baru menggunakan versi yang lebih pendek. Atur ke `1` untuk menggunakan prompt yang lebih pendek pada model apa pun. Atur ke `0`, `false`, `no`, atau `off` untuk menggunakan prompt lengkap pada model apa pun, bahkan ketika eksperimen atau konfigurasi server akan memilih versi yang lebih pendek. Kedua prompt mempertahankan set tool lengkap, hook, server MCP, dan penemuan CLAUDE.md |

386| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Melewati autentikasi sisi klien untuk [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md), untuk gateway yang menandatangani permintaan sendiri |387| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | Melewati autentikasi sisi klien untuk [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md), 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 mati, profil yang didukung SSO meminta kredensial dari IAM Identity Center pada setiap permintaan. Lihat [caching kredensial dan timeout resolusi](https://code.claude.com/docs/id/amazon-bedrock.md#credential-caching-and-resolution-timeout). Memerlukan Claude Code v2.1.207 atau yang lebih baru |388| `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](https://code.claude.com/docs/id/amazon-bedrock.md#credential-caching-and-resolution-timeout). Memerlukan Claude Code v2.1.207 atau yang lebih baru |

388| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | Melewati autentikasi AWS untuk Amazon Bedrock (misalnya, saat menggunakan LLM gateway) |389| `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](https://code.claude.com/docs/id/fast-mode.md#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 mematuhi respons "disabled by your organization" |390| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | Atur ke `1` untuk memperlakukan pemeriksaan ketersediaan [fast mode](https://code.claude.com/docs/id/fast-mode.md#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" |

390| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Atur ke `1` untuk melewati pemeriksaan ketersediaan [fast mode](https://code.claude.com/docs/id/fast-mode.md#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 saat organisasi Anda menonaktifkan fast mode |391| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | Atur ke `1` untuk melewati pemeriksaan ketersediaan [fast mode](https://code.claude.com/docs/id/fast-mode.md#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` sendiri. Claude Code mengirim permintaan tanpa kredensial Azure dan mempertahankan header `Authorization` yang Anda berikan, misalnya melalui `ANTHROPIC_CUSTOM_HEADERS`. Diabaikan saat `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_FOUNDRY_AUTH` | Melewati autentikasi Azure untuk Microsoft Foundry, untuk proxy atau gateway yang menyisipkan header `Authorization` 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) |393| `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](https://code.claude.com/docs/id/amazon-bedrock.md#startup-model-checks) di [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) dan [Google Cloud's Agent Platform](https://code.claude.com/docs/id/google-vertex-ai.md) mengingat di mesin ini model mana yang tidak dapat dipanggil oleh akun Anda, hingga satu hari. Atur ke `1` untuk mematikan memori tersebut. Memerlukan Claude Code v2.1.285 atau yang lebih baru |394| `CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY` | [Pemeriksaan model saat startup](https://code.claude.com/docs/id/amazon-bedrock.md#startup-model-checks) di [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) dan [Agent Platform milik Google Cloud](https://code.claude.com/docs/id/google-vertex-ai.md) mengingat di mesin ini model mana yang ditemukan tidak dapat dipanggil oleh akun Anda, hingga satu hari. Atur ke `1` untuk mematikan memori tersebut. Memerlukan Claude Code v2.1.285 atau yang 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 berskrip yang bersifat sementara |395| `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 |

395| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Melewati autentikasi Google untuk Google Cloud's Agent Platform (misalnya, saat menggunakan LLM gateway) |396| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | Melewati autentikasi Google untuk Agent Platform milik Google Cloud (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 mulai](https://code.claude.com/docs/id/agent-sdk/typescript.md#startup_failure_reason) untuk kegagalan startup yang jika tidak demikian hanya berakhir dengan stderr. Memerlukan Claude Code v2.1.274 atau yang lebih baru |397| `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](https://code.claude.com/docs/id/agent-sdk/typescript.md#startup_failure_reason) untuk kegagalan startup yang biasanya hanya berakhir dengan stderr. Memerlukan Claude Code v2.1.274 atau yang lebih baru |

397| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | Jumlah maksimum berapa kali berturut-turut hook [Stop](https://code.claude.com/docs/id/hooks.md#stop) atau [SubagentStop](https://code.claude.com/docs/id/hooks.md#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_STOP_HOOK_BLOCK_CAP` | Jumlah maksimum berturut-turut hook [Stop](https://code.claude.com/docs/id/hooks.md#stop) atau [SubagentStop](https://code.claude.com/docs/id/hooks.md#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](https://code.claude.com/docs/id/sub-agents.md#choose-a-model), rekan [tim agent](https://code.claude.com/docs/id/agent-teams.md#specify-teammates-and-models), dan agent [workflow](https://code.claude.com/docs/id/workflows.md) 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`](https://code.claude.com/docs/id/sub-agents#run-every-subagent-on-one-model). Lihat [Memilih model](https://code.claude.com/docs/id/sub-agents.md#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` | Model default untuk [subagent](https://code.claude.com/docs/id/sub-agents.md#choose-a-model), anggota [tim agent](https://code.claude.com/docs/id/agent-teams.md#specify-teammates-and-models), dan agent [workflow](https://code.claude.com/docs/id/workflows.md) 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`](https://code.claude.com/docs/id/sub-agents#run-every-subagent-on-one-model). Lihat [Memilih model](https://code.claude.com/docs/id/sub-agents.md#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](https://code.claude.com/docs/id/sub-agents.md#run-every-subagent-on-one-model) menjelaskan model mana itu. Memerlukan Claude Code v2.1.257 atau yang lebih baru |400| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | Atur ke `1` untuk memaksakan satu model pada subagent, anggota tim, dan agent workflow. [Menjalankan setiap subagent pada satu model](https://code.claude.com/docs/id/sub-agents.md#run-every-subagent-on-one-model) menjelaskan model mana yang dimaksud. Memerlukan Claude Code v2.1.257 atau yang 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](https://code.claude.com/docs/id/prompt-caching.md#cache-lifetime) untuk permintaan di luar percakapan utama, seperti [subagent](https://code.claude.com/docs/id/sub-agents.md), 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 yang lebih tinggi. Memerlukan Claude Code v2.1.242 atau yang lebih baru |401| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | Atur ke `5m` atau `1h`, satu-satunya nilai yang diterima Claude Code, untuk memilih [TTL prompt cache](https://code.claude.com/docs/id/prompt-caching.md#cache-lifetime) bagi permintaan di luar percakapan utama, seperti [subagent](https://code.claude.com/docs/id/sub-agents.md), 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 yang lebih tinggi. Memerlukan Claude Code v2.1.242 atau yang lebih baru |

401| `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 ini mengenali kredensial dari nama variabel atau nilainya, dan membiarkan token GitHub dan 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 saat `allowed_non_write_users` dikonfigurasi |402| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | Atur ke `1` untuk menghapus kredensial dari environment subproses yang dimulai Claude Code, seperti perintah Bash, hook, dan server MCP stdio. Pembersihan ini mengenali kredensial dari nama variabel atau nilainya, dan membiarkan token GitHub serta pengaturan proxy tetap ada. Lihat [Apa yang dihapus oleh pembersihan environment subproses](#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 |403| `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 belum tersedia pada giliran pertama. Kombinasikan dengan `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` untuk membatasi waktu tunggu |

403| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | Timeout dalam milidetik untuk instalasi plugin sinkron. Saat 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_PLUGIN_INSTALL_TIMEOUT_MS` | Timeout dalam milidetik untuk instalasi plugin sinkron. Jika 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. Memerlukan autentikasi claude.ai. Sesi terminal tempat Anda masuk dengan akun claude.ai Anda [menyinkronkan skill ini](https://code.claude.com/docs/id/skills.md#where-synced-skills-load) tanpa variabel ini, jadi atur hanya saat run `-p` memerlukan skill terkini Anda pada kueri pertamanya |405| `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 eksekusi tersebut dan menunggu daftarnya, hingga `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS`, sebelum menjalankan kueri pertama. Memerlukan autentikasi claude.ai. Sesi terminal tempat Anda masuk dengan akun claude.ai Anda [menyinkronkan skill ini](https://code.claude.com/docs/id/skills.md#where-synced-skills-load) tanpa variabel ini, jadi atur hanya ketika eksekusi `-p` memerlukan skill terkini Anda pada kueri pertamanya |

405| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | Timeout dalam milidetik untuk sinkronisasi ulang skill yang berjalan di tengah sesi saat aplikasi yang dibangun di atas [Agent SDK](https://code.claude.com/docs/id/agent-sdk/typescript.md#query-object) memuat ulang skill (default: 30000). Saat terlampaui, pemuatan ulang berlanjut dengan skill mana pun yang sudah tiba, dan unduhan yang tersisa selesai di latar belakang |406| `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](https://code.claude.com/docs/id/agent-sdk/typescript.md#query-object) memuat ulang skill (default: 30000). Jika terlampaui, pemuatan ulang dilanjutkan dengan skill mana pun yang sudah tiba, dan unduhan yang tersisa diselesaikan di latar belakang |

406| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | Timeout dalam milidetik bagi kueri pertama untuk menunggu daftar skill awal saat `CLAUDE_CODE_SYNC_SKILLS` diatur (default: 5000). Saat terlampaui, kueri pertama berjalan dengan skill mana pun yang sudah tiba. Unduhan selesai di latar belakang dalam kedua kasus, dan Claude menunggu unduhan skill saat ia memanggil skill tersebut |407| `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). Jika terlampaui, kueri pertama berjalan dengan skill mana pun yang sudah tiba. Unduhan tetap diselesaikan di latar belakang, dan Claude menunggu unduhan suatu skill ketika memanggil skill tersebut |

407| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Atur ke `false` untuk menonaktifkan syntax highlighting pada output diff. Berguna ketika warna mengganggu pengaturan terminal Anda. Untuk juga menonaktifkan highlighting pada blok kode dan pratinjau file, gunakan pengaturan [`syntaxHighlightingDisabled`](https://code.claude.com/docs/id/settings-reference#syntaxhighlightingdisabled) |408| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | Atur ke `false` untuk menonaktifkan syntax highlighting pada output diff. Berguna ketika warna mengganggu pengaturan terminal Anda. Untuk juga menonaktifkan highlighting pada blok kode dan pratinjau file, gunakan pengaturan [`syntaxHighlightingDisabled`](https://code.claude.com/docs/id/settings-reference#syntaxhighlightingdisabled) |

408| `CLAUDE_CODE_TASK_LIST_ID` | Bagikan daftar tugas di seluruh sesi. Atur ID yang sama di beberapa instans Claude Code untuk berkoordinasi pada daftar tugas bersama, di [sesi yang memiliki tool Task](https://code.claude.com/docs/id/tools-reference.md#task-tool-availability). Lihat [Daftar tugas](https://code.claude.com/docs/id/interactive-mode.md#task-list) |409| `CLAUDE_CODE_TASK_LIST_ID` | Bagikan 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](https://code.claude.com/docs/id/tools-reference.md#task-tool-availability). Lihat [Daftar tugas](https://code.claude.com/docs/id/interactive-mode.md#task-list) |

409| `CLAUDE_CODE_TMPDIR` | Timpa 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](https://code.claude.com/docs/id/sandboxing.md) menerima `$TMPDIR` fallback yang pendek di bawah default sistem ketika override Anda berupa path yang panjang, karena beberapa alat gagal ketika path temp terlalu panjang. Perintah Bash yang tidak di-sandbox mewarisi `$TMPDIR` shell Anda jika 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, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |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](https://code.claude.com/docs/id/sandboxing.md) 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%` ketika Anda belum mengaturnya. File temp milik Claude Code sendiri selalu menggunakan override Anda. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |

410| `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 variabel tersebut 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](https://code.claude.com/docs/id/terminal-config.md) untuk pengaturan tmux lainnya |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 kebanyakan variabel on/off; hapus variabel untuk mengembalikan 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](https://code.claude.com/docs/id/terminal-config.md) untuk pengaturan tmux lainnya |

411| `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](https://code.claude.com/docs/id/tools-reference.md#memory-limit-on-linux-and-wsl), seperti `mcp` atau `lsp`. Atur `none` untuk membatasi semua 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 |412| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | Di Linux dan WSL, atur ke daftar jenis proses yang dipisahkan koma yang [dikecualikan Claude Code dari batas memori tool](https://code.claude.com/docs/id/tools-reference.md#memory-limit-on-linux-and-wsl), seperti `mcp` atau `lsp`. Atur `none` untuk membatasi semua 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 yang lebih baru |

412| `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](https://code.claude.com/docs/id/tools-reference.md#memory-limit-on-linux-and-wsl), dan perintah tool Monitor di v2.1.246 atau lebih baru. Tulis ukurannya dalam digit biasa, tanpa akhiran untuk jumlah byte atau dengan akhiran `K`, `M`, `G`, atau `T`. Atur `0` atau `off` untuk mematikan batas. Setelah proses pertama yang dimulai Claude Code telah menyalakan atau mematikan batas, nilai yang diubah berlaku saat Anda menjalankan `claude` berikutnya. Memerlukan Claude Code v2.1.233 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](https://code.claude.com/docs/id/tools-reference.md#memory-limit-on-linux-and-wsl), dan perintah tool Monitor pada v2.1.246 atau yang lebih baru. Tulis ukuran dalam digit biasa, tanpa akhiran untuk jumlah byte atau dengan akhiran `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 yang lebih baru |

413| `CLAUDE_CODE_TRANSCRIPT_LOCAL_GC` | Atur ke `1` untuk membatasi seberapa besar [file transkrip](https://code.claude.com/docs/id/sessions.md#where-transcripts-are-stored) dari sesi `-p` atau Agent SDK yang panjang dapat bertambah. Setelah setiap compaction, begitu file lebih besar dari 5 MB, Claude Code menghapus riwayat dari sebelum compaction tersebut. Di v2.1.296 atau lebih baru, file tetap seperti apa adanya ketika menghapus riwayat tersebut akan mengecilkannya kurang dari 10%. Melanjutkan sesi memulihkan percakapan yang sama, baik file telah dipangkas maupun tidak. Atur di environment tempat Anda memulai Claude Code, karena blok `env` pengaturan tidak dapat menyalakannya. Memerlukan Claude Code v2.1.287 atau lebih baru |414| `CLAUDE_CODE_TRANSCRIPT_LOCAL_GC` | Atur ke `1` untuk membatasi seberapa besar [file transkrip](https://code.claude.com/docs/id/sessions.md#where-transcripts-are-stored) dari sesi `-p` atau Agent SDK yang panjang dapat tumbuh. Setelah setiap compaction, begitu file lebih besar dari 5 MB, Claude Code menghapus riwayat dari sebelum compaction tersebut. Pada v2.1.296 atau yang lebih baru, file dibiarkan apa adanya ketika penghapusan riwayat tersebut akan mengecilkannya kurang dari 10%. 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 yang lebih baru |

414| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Batas waktu dalam milidetik sebelum Claude Code membatalkan dialog yang diteruskannya ke klien jarak jauh seperti host [Remote Control](https://code.claude.com/docs/id/remote-control.md) atau SDK, atau dialog persetujuan untuk [pesan lintas sesi yang ditahan](https://code.claude.com/docs/id/cross-session-messaging.md#control-inbound-messages); permintaan izin dan pertanyaan `AskUserQuestion` menggunakan alurnya sendiri dan tidak diatur olehnya. Di Claude Code v2.1.236 atau lebih baru, variabel ini juga membatasi [prompt persetujuan kredit penggunaan Fable](https://code.claude.com/docs/id/model-config.md#fable-and-usage-credits) di tengah sesi pada sesi yang mungkin berjalan tanpa pengawasan. [Mengontrol pesan masuk](https://code.claude.com/docs/id/cross-session-messaging.md#control-inbound-messages) dan [sesi non-interaktif](https://code.claude.com/docs/id/cross-session-messaging.md#non-interactive-sessions) membahas aturan kedaluwarsa pesan yang ditahan secara lengkap, termasuk kasus-kasus di mana batas waktu tidak berlaku. Menimpa pengaturan [`dialogExpiry`](https://code.claude.com/docs/id/settings-reference#dialogexpiry). `0` atau nilai negatif menonaktifkan batas waktu. Diabaikan di [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |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](https://code.claude.com/docs/id/remote-control.md) atau SDK, atau dialog persetujuan untuk [pesan lintas sesi yang ditahan](https://code.claude.com/docs/id/cross-session-messaging.md#control-inbound-messages); permintaan izin dan pertanyaan `AskUserQuestion` menggunakan alurnya sendiri dan tidak diatur olehnya. Pada Claude Code v2.1.236 atau yang lebih baru, variabel ini juga membatasi [prompt persetujuan kredit penggunaan Fable](https://code.claude.com/docs/id/model-config.md#fable-and-usage-credits) di tengah sesi dalam sesi yang mungkin berjalan tanpa pengawasan. [Mengontrol pesan masuk](https://code.claude.com/docs/id/cross-session-messaging.md#control-inbound-messages) dan [sesi non-interaktif](https://code.claude.com/docs/id/cross-session-messaging.md#non-interactive-sessions) membahas aturan kedaluwarsa pesan yang ditahan secara lengkap, termasuk kasus di mana tenggat tidak berlaku. Menimpa pengaturan [`dialogExpiry`](https://code.claude.com/docs/id/settings-reference#dialogexpiry). `0` atau nilai negatif menonaktifkan tenggat. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |

415| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Gunakan [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md) |416| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | Gunakan [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md) |

416| `CLAUDE_CODE_USE_BEDROCK` | Gunakan [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) |417| `CLAUDE_CODE_USE_BEDROCK` | Gunakan [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md) |

417| `CLAUDE_CODE_USE_FOUNDRY` | Gunakan [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md) |418| `CLAUDE_CODE_USE_FOUNDRY` | Gunakan [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md) |

418| `CLAUDE_CODE_USE_MANTLE` | Gunakan [endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#use-the-mantle-endpoint) Amazon Bedrock |419| `CLAUDE_CODE_USE_MANTLE` | Gunakan [endpoint Mantle](https://code.claude.com/docs/id/amazon-bedrock.md#use-the-mantle-endpoint) Amazon Bedrock |

419| `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 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 melalui Git Bash. Lihat [Tool PowerShell](https://code.claude.com/docs/id/tools-reference.md#powershell-tool) |420| `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. Ketika diaktifkan di Windows, Claude dapat menjalankan perintah PowerShell secara native alih-alih melalui Git Bash. Lihat [Tool PowerShell](https://code.claude.com/docs/id/tools-reference.md#powershell-tool) |

420| `CLAUDE_CODE_USE_VERTEX` | Gunakan [Google Cloud's Agent Platform](https://code.claude.com/docs/id/google-vertex-ai.md) |421| `CLAUDE_CODE_USE_VERTEX` | Gunakan [Google Cloud's Agent Platform](https://code.claude.com/docs/id/google-vertex-ai.md) |

421| `CLAUDE_CODE_WARN_DISK_FREE_GIB` | Atur ke bilangan bulat GiB, seperti `10`, agar Claude Code memperingatkan Claude ketika ruang kosong pada filesystem direktori kerja turun di bawah jumlah tersebut. Peringatannya berupa system reminder yang menyebutkan berapa banyak ruang yang tersisa. Reminder nonaktif ketika variabel tidak diatur, bernilai `0`, atau bukan digit biasa. Atur di environment yang menjalankan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.304 atau lebih baru |422| `CLAUDE_CODE_WARN_DISK_FREE_GIB` | Atur ke bilangan bulat GiB, seperti `10`, agar Claude Code memperingatkan Claude ketika ruang kosong pada filesystem direktori kerja turun di bawah jumlah tersebut. Peringatan berupa system reminder yang menyebutkan berapa banyak ruang yang kosong. Pengingat nonaktif ketika variabel tidak diatur, bernilai `0`, atau bukan digit biasa. Atur di environment yang meluncurkan Claude Code, karena Claude Code mengabaikan salinan yang dikirim melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.304 atau yang lebih baru |

422| `CLAUDE_CODE_WARN_MEMORY_FREE_GIB` | Di Linux dan WSL, atur ke bilangan bulat GiB seperti `4` agar Claude Code memperingatkan Claude ketika memori yang tersedia turun di bawah jumlah tersebut. Peringatannya berupa system reminder yang menyebutkan berapa banyak memori yang tersedia. Reminder nonaktif ketika variabel tidak diatur, bernilai `0`, atau bukan digit biasa. Atur di environment yang menjalankan Claude Code, karena Claude Code mengabaikan salinan yang dikirimkan melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.304 atau lebih baru |423| `CLAUDE_CODE_WARN_MEMORY_FREE_GIB` | Di Linux dan WSL, atur ke bilangan bulat GiB seperti `4` agar Claude Code memperingatkan Claude ketika memori yang tersedia turun di bawah jumlah tersebut. Peringatan berupa system reminder yang menyebutkan berapa banyak memori yang tersedia. Pengingat nonaktif ketika variabel tidak diatur, bernilai `0`, atau bukan digit biasa. Atur di environment yang meluncurkan Claude Code, karena Claude Code mengabaikan salinan yang dikirim melalui blok `env` pengaturan. Memerlukan Claude Code v2.1.304 atau yang lebih baru |

423| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | Atur ke jumlah milidetik [WebFetch](https://code.claude.com/docs/id/tools-reference.md#webfetch-tool-behavior) menyimpan respons dari setiap URL yang diambil di cache. Defaultnya adalah `900000`, yaitu 15 menit. Hanya menerima digit biasa; `0`, desimal, atau penulisan lainnya mempertahankan default. Claude Code membaca nilai ini sekali per peluncuran, sehingga perubahan di blok `env` pengaturan berlaku saat Anda menjalankan `claude` berikutnya. Memerlukan Claude Code v2.1.233 atau lebih baru |424| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | Atur ke jumlah milidetik [WebFetch](https://code.claude.com/docs/id/tools-reference.md#webfetch-tool-behavior) menyimpan respons setiap URL yang diambil di cache. Default-nya adalah `900000`, yaitu 15 menit. Hanya menerima digit biasa; `0`, desimal, atau penulisan lainnya mempertahankan default. Claude Code membaca nilai sekali per peluncuran, sehingga perubahan di blok `env` pengaturan berlaku saat Anda meluncurkan `claude` berikutnya. Memerlukan Claude Code v2.1.233 atau yang lebih baru |

424| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | Batas atas dalam milidetik untuk berapa lama [WebFetch](https://code.claude.com/docs/id/tools-reference.md#webfetch-tool-behavior) menunggu halaman selesai diunduh, termasuk redirect yang diikutinya. Unduhan yang belum selesai hingga saat itu gagal dengan error batas waktu. Defaultnya adalah `300000`, yaitu lima menit. Atur ke `0` untuk menghapus batas. Hanya menerima digit biasa; desimal atau penulisan lainnya mempertahankan default. Memerlukan Claude Code v2.1.268 atau lebih baru |425| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | Batas atas dalam milidetik untuk berapa lama [WebFetch](https://code.claude.com/docs/id/tools-reference.md#webfetch-tool-behavior) menunggu halaman diunduh, termasuk redirect 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; desimal atau penulisan lainnya mempertahankan default. Memerlukan Claude Code v2.1.268 atau yang lebih baru |

425| `CLAUDE_CODE_WEB_SEARCH_REFILLS_PER_HOUR` | Laju pengisian ulang [batas WebSearch](https://code.claude.com/docs/id/tools-reference.md#session-search-limit) sebuah sesi, dalam panggilan per jam. Defaultnya adalah `100` di sesi terminal interaktif. Di sesi [non-interaktif](https://code.claude.com/docs/id/headless.md), defaultnya adalah `0`, yang mematikan pengisian ulang. Hanya menerima digit biasa; penulisan lainnya dibaca sebagai tidak diatur. Memerlukan Claude Code v2.1.290 atau lebih baru |426| `CLAUDE_CODE_WEB_SEARCH_REFILLS_PER_HOUR` | Laju pengisian ulang [batas WebSearch](https://code.claude.com/docs/id/tools-reference.md#session-search-limit) suatu sesi, dalam panggilan per jam. Default-nya adalah `100` dalam sesi terminal interaktif. Dalam sesi [non-interaktif](https://code.claude.com/docs/id/headless.md), default-nya adalah `0`, yang mematikan pengisian ulang. Hanya menerima digit biasa; penulisan lainnya dibaca sebagai tidak diatur. Memerlukan Claude Code v2.1.290 atau yang lebih baru |

426| `CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE` | Ketika `CLAUDE_AUTO_BACKGROUND_TASKS` diatur ke `1`, berapa lama Claude Code menunggu sebelum setiap pengingat kepada Claude untuk memeriksa [subagent latar belakang](https://code.claude.com/docs/id/sub-agents.md#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. Ketika tidak diatur, tidak ada pengingat. Memerlukan Claude Code v2.1.283 atau lebih baru |427| `CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE` | Ketika `CLAUDE_AUTO_BACKGROUND_TASKS` diatur ke `1`, berapa lama Claude Code menunggu sebelum setiap pengingat kepada Claude untuk memeriksa [subagent latar belakang](https://code.claude.com/docs/id/sub-agents.md#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. Ketika tidak diatur, tidak ada pengingat. Memerlukan Claude Code v2.1.283 atau yang lebih baru |

427| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | Berapa banyak agent yang dieksekusi sekaligus oleh satu run [workflow](https://code.claude.com/docs/id/workflows.md), dari `1` hingga `256`. Secara default, satu run mengeksekusi hingga 16 agent sekaligus, lebih sedikit ketika Claude Code memiliki lebih sedikit CPU yang tersedia; panggilan `agent()` yang mengantre menunggu slot kosong. Transkrip setiap agent yang sedang 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 default. Memerlukan Claude Code v2.1.269 atau lebih baru |428| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | Berapa banyak agent yang dijalankan sekaligus oleh satu eksekusi [workflow](https://code.claude.com/docs/id/workflows.md), dari `1` hingga `256`. Secara default, satu eksekusi menjalankan hingga 16 agent sekaligus, lebih sedikit ketika Claude Code memiliki lebih sedikit CPU yang tersedia; panggilan `agent()` yang diantrekan 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 default. Memerlukan Claude Code v2.1.269 atau yang lebih baru |

428| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Batas atas dalam milidetik untuk berapa lama agent [workflow](https://code.claude.com/docs/id/workflows.md) menunggu respons pertama dari sibling dengan prefix yang sama dimulai sebelum mengirim permintaan pertamanya sendiri. Ketika fan-out memulai beberapa agent yang berbagi [prefix prompt cache](https://code.claude.com/docs/id/workflows.md#prompt-caching-in-a-fan-out), Claude Code menahan semua agent kecuali yang pertama hingga selama ini sehingga sisanya membaca prefix yang di-cache alih-alih masing-masing memprosesnya tanpa cache. Default `5000`. Atur ke `0` untuk menonaktifkan penantian. Ketika `DISABLE_PROMPT_CACHING` diatur, agent tidak pernah menunggu. Memerlukan Claude Code v2.1.229 atau lebih baru |429| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | Batas atas dalam milidetik untuk berapa lama agent [workflow](https://code.claude.com/docs/id/workflows.md) menunggu respons pertama dari saudaranya dengan prefiks yang sama dimulai sebelum mengirim permintaan pertamanya sendiri. Ketika fan-out memulai beberapa agent yang berbagi [prefiks prompt cache](https://code.claude.com/docs/id/workflows.md#prompt-caching-in-a-fan-out), Claude Code menahan semua agent kecuali yang pertama hingga selama ini agar sisanya membaca prefiks yang di-cache alih-alih masing-masing memprosesnya tanpa cache. Default `5000`. Atur ke `0` untuk menonaktifkan penungguan. Ketika `DISABLE_PROMPT_CACHING` diatur, agent tidak pernah menunggu. Memerlukan Claude Code v2.1.229 atau yang lebih baru |

429| `CLAUDE_CODE_YOU_SHOULD_KNOW_DEBUG` | Atur ke `1` untuk menampilkan, di atas prompt, satu baris untuk masing-masing dari tiga pemeriksaan terakhir yang dilakukan [mod You should know](https://code.claude.com/docs/id/interactive-mode.md#you-should-know-suggestions) dalam sesi ini. Gunakan untuk memastikan mod tersebut sedang memeriksa ketika tidak ada catatan yang muncul. Memerlukan Claude Code v2.1.287 atau lebih baru |430| `CLAUDE_CODE_YOU_SHOULD_KNOW_DEBUG` | Atur ke `1` untuk menampilkan, di atas prompt, satu baris untuk masing-masing dari tiga pemeriksaan terakhir yang dilakukan [mod You should know](https://code.claude.com/docs/id/interactive-mode.md#you-should-know-suggestions) dalam sesi ini. Gunakan untuk memastikan mod tersebut melakukan pemeriksaan ketika tidak ada catatan yang muncul. Memerlukan Claude Code v2.1.287 atau yang lebih baru |

430| `CLAUDE_CONFIG_DIR` | Timpa direktori konfigurasi (default: `~/.claude`). Semua pengaturan, riwayat sesi, dan plugin disimpan di bawah path ini. Untuk kredensial, lihat [tempat Claude Code menyimpan kredensial](https://code.claude.com/docs/id/authentication.md#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. Di file pengaturan, tulis [path absolut](#in-settings-files). Diabaikan di [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#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](https://code.claude.com/docs/id/authentication.md#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](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |

431| `CLAUDE_EFFORT` | Diatur secara otomatis dalam subproses tool Bash dan perintah hook ke pengaturan [tingkat effort](https://code.claude.com/docs/id/model-config.md#adjust-effort-level) saat subproses dimulai: `low`, `medium`, `high`, `xhigh`, atau `max`. Sesuai dengan field `effort.level` yang diteruskan ke [hooks](https://code.claude.com/docs/id/hooks.md). Hanya diatur ketika model saat ini mendukung parameter effort |432| `CLAUDE_EFFORT` | Diatur secara otomatis di subproses tool Bash dan perintah hook ke pengaturan [tingkat effort](https://code.claude.com/docs/id/model-config.md#adjust-effort-level) saat subproses dimulai: `low`, `medium`, `high`, `xhigh`, atau `max`. Cocok dengan field `effort.level` yang diteruskan ke [hook](https://code.claude.com/docs/id/hooks.md). Hanya diatur ketika model saat ini mendukung parameter effort |

432| `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 [batas waktu byte pertama](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) pada koneksi tempat batas waktu tersebut berjalan. Ketika tidak diatur, watchdog diaktifkan secara default untuk koneksi Anthropic API langsung dan [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md), serta untuk respons streaming pada koneksi [gateway](https://code.claude.com/docs/id/gateways.md) 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 tiba. Untuk timeout dan cara timer-timer tersebut saling berinteraksi, lihat [Watchdog idle streaming](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) |433| `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](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) pada koneksi tempat tenggat tersebut berjalan. Ketika tidak diatur, watchdog diaktifkan secara default untuk koneksi langsung ke Anthropic API dan [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md), serta untuk respons streaming pada koneksi [gateway](https://code.claude.com/docs/id/gateways.md) yang dicapai 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 tiba. Untuk timeout dan cara timer berinteraksi, lihat [Watchdog idle streaming](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) |

433| `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 [batas waktu byte pertama](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) pada permintaan streaming Bedrock. Nonaktif secara default. Konfigurasikan timeout dengan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |434| `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](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) pada permintaan streaming Bedrock. Nonaktif secara default. Konfigurasikan timeout dengan `CLAUDE_STREAM_IDLE_TIMEOUT_MS` |

434| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Atur ke `0` untuk memaksa menonaktifkan watchdog idle streaming tingkat event, atau atur ke `1` untuk memaksa mengaktifkannya. Ketika tidak diatur, watchdog aktif secara default untuk semua penyedia. Sebelum v2.1.196, default saat tidak diatur dikontrol 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 bersama yang ini, lihat [Watchdog idle streaming](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) |435| `CLAUDE_ENABLE_STREAM_WATCHDOG` | Atur ke `0` untuk memaksa menonaktifkan watchdog idle streaming tingkat event, atau atur ke `1` untuk memaksa mengaktifkannya. Ketika 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 stall lain yang berjalan bersamaan dengan yang ini, lihat [Watchdog idle streaming](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) |

435| `CLAUDE_ENV_FILE` | Path ke skrip shell yang isinya dijalankan Claude Code sebelum setiap perintah Bash dalam proses shell yang sama, sehingga export di file tersebut terlihat oleh perintah. Gunakan untuk mempertahankan aktivasi virtualenv atau conda di seluruh perintah. Perintah PowerShell juga menerima variabelnya, di v2.1.296 atau lebih baru, dengan ketentuan di [Variabel yang dipertahankan dalam perintah PowerShell](https://code.claude.com/docs/id/hooks.md#persisted-variables-in-powershell-commands). Juga diisi secara dinamis oleh hook [SessionStart](https://code.claude.com/docs/id/hooks.md#persist-environment-variables), [Setup](https://code.claude.com/docs/id/hooks.md#setup), [CwdChanged](https://code.claude.com/docs/id/hooks.md#cwdchanged), dan [FileChanged](https://code.claude.com/docs/id/hooks.md#filechanged) |436| `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 terlihat oleh perintah tersebut. Gunakan untuk mempertahankan aktivasi virtualenv atau conda di seluruh perintah. Perintah PowerShell juga menerima variabelnya, pada v2.1.296 atau yang lebih baru, dengan ketentuan di [Variabel yang dipertahankan dalam perintah PowerShell](https://code.claude.com/docs/id/hooks.md#persisted-variables-in-powershell-commands). Juga diisi secara dinamis oleh hook [SessionStart](https://code.claude.com/docs/id/hooks.md#persist-environment-variables), [Setup](https://code.claude.com/docs/id/hooks.md#setup), [CwdChanged](https://code.claude.com/docs/id/hooks.md#cwdchanged), dan [FileChanged](https://code.claude.com/docs/id/hooks.md#filechanged) |

436| `CLAUDE_JOB_DIR` | Diatur oleh Claude Code di setiap [sesi latar belakang](https://code.claude.com/docs/id/agent-view.md) ke direktori `~/.claude/jobs/<id>` milik sesi tersebut. Perintah shell yang dijalankan sesi mewarisinya. Tulis file sementara ke [`$CLAUDE_JOB_DIR/tmp`](https://code.claude.com/docs/id/agent-view#where-state-is-stored). Panggilan `Write` dan `Edit` Claude di sana tidak meminta izin, dan direktori tersebut dihapus ketika sesi dihapus |437| `CLAUDE_JOB_DIR` | Diatur oleh Claude Code di setiap [sesi latar belakang](https://code.claude.com/docs/id/agent-view.md) ke direktori `~/.claude/jobs/<id>` milik sesi tersebut. Perintah shell yang dijalankan sesi mewarisinya. Tulis file sementara ke [`$CLAUDE_JOB_DIR/tmp`](https://code.claude.com/docs/id/agent-view#where-state-is-stored). Panggilan `Write` dan `Edit` Claude di sana tidak meminta izin, dan direktori dihapus ketika sesi dihapus |

437| `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](https://code.claude.com/docs/id/errors.md#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 |438| `CLAUDE_PID` | Claude Code mengatur ini ke ID prosesnya sendiri di subproses yang dibuatnya: 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](https://code.claude.com/docs/id/errors.md#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 yang lebih baru |

438| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Prefix untuk nama sesi [Remote Control](https://code.claude.com/docs/id/remote-control.md) yang dibuat otomatis ketika 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 |439| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | Prefiks untuk nama sesi [Remote Control](https://code.claude.com/docs/id/remote-control.md) yang dibuat otomatis ketika 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 |

439| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | Batas waktu dalam milidetik untuk byte respons pertama dari permintaan streaming, pada koneksi tempat [batas waktu byte pertama](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) berjalan. Untuk cara Claude Code membatasinya, waktu tambahan yang ditambahkannya untuk body permintaan yang besar, dan cara Claude Code memilih batas waktu ketika Anda tidak mengatur ini, lihat [No response from API](https://code.claude.com/docs/id/errors.md#no-response-from-api). Memerlukan Claude Code v2.1.242 atau lebih baru |440| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | Tenggat dalam milidetik untuk byte respons pertama dari permintaan streaming, pada koneksi tempat [tenggat byte pertama](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) berjalan. Untuk cara Claude Code membatasinya, waktu tambahan yang ditambahkannya untuk body permintaan yang besar, dan cara Claude Code memilih tenggat ketika Anda tidak mengatur ini, lihat [No response from API](https://code.claude.com/docs/id/errors.md#no-response-from-api). Memerlukan Claude Code v2.1.242 atau yang lebih baru |

440| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Timeout dalam milidetik sebelum watchdog idle streaming tingkat event dan tingkat byte menutup koneksi yang macet. Ketika 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](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) |441| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | Timeout dalam milidetik sebelum watchdog idle streaming tingkat event dan tingkat byte menutup koneksi yang macet. Ketika 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 pada 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](https://code.claude.com/docs/id/network-config.md#streaming-idle-watchdogs) |

441| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | Dihapus di v2.1.260 dan kini tidak berpengaruh. Sebelumnya membatasi berapa lama [perintah shell latar belakang](https://code.claude.com/docs/id/interactive-mode.md#background-bash-commands) yang dimulai oleh [subagent](https://code.claude.com/docs/id/sub-agents.md) dapat berjalan, dalam milidetik, dengan default 60 menit. Lihat [aturan masa hidup perintah latar belakang](https://code.claude.com/docs/id/tools-reference.md#background-commands) |442| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | Dihapus di v2.1.260 dan kini tidak berpengaruh. Sebelumnya membatasi berapa lama [perintah shell latar belakang](https://code.claude.com/docs/id/interactive-mode.md#background-bash-commands) yang dimulai oleh [subagent](https://code.claude.com/docs/id/sub-agents.md) dapat berjalan, dalam milidetik, dengan default 60 menit. Lihat [aturan masa hidup perintah latar belakang](https://code.claude.com/docs/id/tools-reference.md#background-commands) |

442| `DEBUG` | Atur ke `1` untuk mengaktifkan mode debug, setara dengan menjalankan dengan [`--debug`](https://code.claude.com/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 |443| `DEBUG` | Atur ke `1` untuk mengaktifkan mode debug, setara dengan meluncurkan dengan [`--debug`](https://code.claude.com/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 |

443| `DISABLE_AUTOUPDATER` | Atur ke `1` untuk menonaktifkan pembaruan latar belakang otomatis. `claude update` manual tetap berfungsi. Gunakan `DISABLE_UPDATES` untuk memblokir keduanya |444| `DISABLE_AUTOUPDATER` | Atur ke `1` untuk menonaktifkan pembaruan otomatis di latar belakang. `claude update` manual tetap berfungsi. Gunakan `DISABLE_UPDATES` untuk memblokir keduanya |

444| `DISABLE_AUTO_COMPACT` | Atur ke `1` untuk menonaktifkan compaction otomatis saat mendekati batas konteks, beserta [idle compaction](https://code.claude.com/docs/id/settings-reference.md#idlecompaction). Perintah `/compact` manual tetap tersedia. Gunakan ketika Anda menginginkan kontrol eksplisit atas kapan compaction terjadi. Menimpa pengaturan [`autoCompactEnabled`](https://code.claude.com/docs/id/settings-reference#autocompactenabled) |445| `DISABLE_AUTO_COMPACT` | Atur ke `1` untuk menonaktifkan compaction otomatis saat mendekati batas konteks, bersama dengan [idle compaction](https://code.claude.com/docs/id/settings-reference.md#idlecompaction). Perintah `/compact` manual tetap tersedia. Gunakan ketika Anda menginginkan kontrol eksplisit atas kapan compaction terjadi. Menimpa pengaturan [`autoCompactEnabled`](https://code.claude.com/docs/id/settings-reference#autocompactenabled) |

445| `DISABLE_COMPACT` | Atur ke `1` untuk menonaktifkan semua compaction: baik compaction otomatis maupun perintah `/compact` manual |446| `DISABLE_COMPACT` | Atur ke `1` untuk menonaktifkan semua compaction: baik compaction otomatis maupun perintah `/compact` manual |

446| `DISABLE_COST_WARNINGS` | Atur ke `1` untuk menonaktifkan pesan peringatan biaya |447| `DISABLE_COST_WARNINGS` | Atur ke `1` untuk menonaktifkan pesan peringatan biaya |

447| `DISABLE_DOCTOR_COMMAND` | Atur ke `1` untuk menyembunyikan skill pemeriksaan penyiapan [`/doctor`](https://code.claude.com/docs/id/commands#all-commands) dan alias `/checkup`-nya. Berguna untuk deployment terkelola di mana pengguna tidak boleh menjalankan diagnostik penyiapan dari sebuah sesi. Tidak memengaruhi perintah terminal `claude doctor`. Sebelum v2.1.205, variabel ini menyembunyikan perintah layar diagnostik `/doctor` |448| `DISABLE_DOCTOR_COMMAND` | Atur ke `1` untuk menyembunyikan skill pemeriksaan penyiapan [`/doctor`](https://code.claude.com/docs/id/commands#all-commands) beserta 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` |

448| `DISABLE_ERROR_REPORTING` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk memilih keluar dari pelaporan error. **Mengaturnya ke `0` atau `false` tetap memilih keluar**, tidak seperti sebagian besar variabel on/off; hapus variabel tersebut untuk menyalakan kembali pelaporan error |449| `DISABLE_ERROR_REPORTING` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk memilih tidak ikut pelaporan error. **Mengaturnya ke `0` atau `false` tetap memilih tidak ikut**, tidak seperti kebanyakan variabel on/off; hapus variabel untuk mengaktifkan kembali pelaporan error |

449| `DISABLE_EXTRA_USAGE_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/usage-credits` yang memungkinkan pengguna membeli penggunaan tambahan di luar rate limit |450| `DISABLE_EXTRA_USAGE_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/usage-credits` yang memungkinkan pengguna membeli penggunaan tambahan melebihi rate limit |

450| `DISABLE_FEEDBACK_COMMAND` | Atur ke `1` untuk menonaktifkan perintah `/feedback` dan [feedback yang dirancang Claude](https://code.claude.com/docs/id/tools-reference.md#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 |451| `DISABLE_FEEDBACK_COMMAND` | Atur ke `1` untuk menonaktifkan perintah `/feedback` dan [umpan balik yang dirancang Claude](https://code.claude.com/docs/id/tools-reference.md#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 dinonaktifkan di bawah semua nama. Nama lama `DISABLE_BUG_COMMAND` juga diterima |

451| `DISABLE_GROWTHBOOK` | Atur ke `1` atau `true` untuk menonaktifkan pengambilan feature flag dan menggunakan default kode untuk setiap flag. Ini membuat [Remote Control](https://code.claude.com/docs/id/remote-control.md#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 |452| `DISABLE_GROWTHBOOK` | Atur ke `1` atau `true` untuk menonaktifkan pengambilan feature flag dan menggunakan default kode untuk setiap flag. Ini membuat [Remote Control](https://code.claude.com/docs/id/remote-control.md#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 |

452| `DISABLE_INSTALLATION_CHECKS` | Atur ke `1` untuk menonaktifkan peringatan instalasi. Gunakan hanya ketika mengelola lokasi instalasi secara manual, karena ini dapat menyembunyikan masalah pada instalasi standar |453| `DISABLE_INSTALLATION_CHECKS` | Atur ke `1` untuk menonaktifkan peringatan instalasi. Gunakan hanya ketika mengelola lokasi instalasi secara manual, karena ini dapat menyembunyikan masalah pada instalasi standar |

453| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/install-github-app`. Sudah tersembunyi ketika menggunakan penyedia pihak ketiga (Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry) |454| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/install-github-app`. Sudah disembunyikan ketika menggunakan penyedia pihak ketiga (Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry) |

454| `DISABLE_INTERLEAVED_THINKING` | Atur ke `1` untuk mencegah pengiriman header beta interleaved-thinking. Berguna ketika LLM gateway atau penyedia Anda tidak mendukung [interleaved thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) |455| `DISABLE_INTERLEAVED_THINKING` | Atur ke `1` untuk mencegah pengiriman header beta interleaved-thinking. Berguna ketika gateway LLM atau penyedia Anda tidak mendukung [interleaved thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking) |

455| `DISABLE_LOGIN_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/login`. Berguna ketika autentikasi ditangani secara eksternal melalui kunci API atau `apiKeyHelper` |456| `DISABLE_LOGIN_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/login`. Berguna ketika autentikasi ditangani secara eksternal melalui kunci API atau `apiKeyHelper` |

456| `DISABLE_LOGOUT_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/logout` |457| `DISABLE_LOGOUT_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/logout` |

457| `DISABLE_PROMPT_CACHING` | Atur ke `1` untuk menonaktifkan [prompt caching](https://code.claude.com/docs/id/prompt-caching.md#disable-prompt-caching) untuk semua model (diutamakan daripada pengaturan per model) |458| `DISABLE_PROMPT_CACHING` | Atur ke `1` untuk menonaktifkan [prompt caching](https://code.claude.com/docs/id/prompt-caching.md#disable-prompt-caching) untuk semua model (diutamakan daripada pengaturan per model) |


459| `DISABLE_PROMPT_CACHING_HAIKU` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Haiku default](https://code.claude.com/docs/id/prompt-caching.md#disable-prompt-caching), di mana pun model tersebut berjalan |460| `DISABLE_PROMPT_CACHING_HAIKU` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Haiku default](https://code.claude.com/docs/id/prompt-caching.md#disable-prompt-caching), di mana pun model tersebut berjalan |

460| `DISABLE_PROMPT_CACHING_OPUS` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Opus default](https://code.claude.com/docs/id/prompt-caching.md#disable-prompt-caching) |461| `DISABLE_PROMPT_CACHING_OPUS` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Opus default](https://code.claude.com/docs/id/prompt-caching.md#disable-prompt-caching) |

461| `DISABLE_PROMPT_CACHING_SONNET` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Sonnet default](https://code.claude.com/docs/id/prompt-caching.md#disable-prompt-caching) |462| `DISABLE_PROMPT_CACHING_SONNET` | Atur ke `1` untuk menonaktifkan prompt caching untuk [model Sonnet default](https://code.claude.com/docs/id/prompt-caching.md#disable-prompt-caching) |

462| `DISABLE_TELEMETRY` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk memilih keluar dari telemetri. **Mengaturnya ke `0` atau `false` tetap memilih keluar**, tidak seperti sebagian besar variabel on/off; hapus variabel tersebut untuk menyalakan 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 [Mematikan telemetri untuk organisasi Anda](https://code.claude.com/docs/id/managed-settings.md#turn-telemetry-off-for-your-organization) |463| `DISABLE_TELEMETRY` | Atur ke nilai apa pun yang tidak kosong, seperti `1`, untuk memilih tidak ikut telemetri. **Mengaturnya ke `0` atau `false` tetap memilih tidak ikut**, tidak seperti kebanyakan variabel on/off; hapus 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 [Mematikan telemetri untuk organisasi Anda](https://code.claude.com/docs/id/managed-settings.md#turn-telemetry-off-for-your-organization) |

463| `DISABLE_UPDATES` | Atur ke `1` untuk memblokir semua pembaruan termasuk `claude update` dan `claude install` manual. Lebih ketat daripada `DISABLE_AUTOUPDATER`. Gunakan ketika mendistribusikan Claude Code melalui saluran Anda sendiri dan pengguna tidak boleh memperbarui sendiri |464| `DISABLE_UPDATES` | Atur ke `1` untuk memblokir semua pembaruan termasuk `claude update` dan `claude install` manual. Lebih ketat daripada `DISABLE_AUTOUPDATER`. Gunakan ketika mendistribusikan Claude Code melalui saluran Anda sendiri dan pengguna tidak boleh memperbarui sendiri |

464| `DISABLE_UPGRADE_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/upgrade` |465| `DISABLE_UPGRADE_COMMAND` | Atur ke `1` untuk menyembunyikan perintah `/upgrade` |

465| `DO_NOT_TRACK` | Atur ke `1` untuk memilih keluar dari 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 developer |466| `DO_NOT_TRACK` | Atur ke `1` untuk memilih tidak ikut 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 tool yang dikenali oleh banyak CLI pengembang |

466| `ENABLE_BETA_TRACING_DETAILED` | Atur ke `1`, dan atur `BETA_TRACING_ENDPOINT` ke endpoint collector OTLP/HTTP Anda, untuk menyalakan [detailed beta tracing](https://code.claude.com/docs/id/monitoring-usage.md#traces-beta), yang menambahkan atribut span yang memuat konten dan span `claude_code.hook`. Sesi CLI interaktif juga mengharuskan organisasi Anda masuk dalam allowlist untuk beta tersebut. Kedua variabel diabaikan di [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |467| `ENABLE_BETA_TRACING_DETAILED` | Atur ke `1`, dan atur `BETA_TRACING_ENDPOINT` ke endpoint kolektor OTLP/HTTP Anda, untuk mengaktifkan [tracing beta terperinci](https://code.claude.com/docs/id/monitoring-usage.md#traces-beta), yang menambahkan atribut span yang memuat konten dan span `claude_code.hook`. Sesi CLI interaktif juga mengharuskan organisasi Anda masuk dalam allowlist untuk beta tersebut. Kedua variabel diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env) |

467| `ENABLE_CLAUDEAI_MCP_SERVERS` | Atur ke `false` untuk menghentikan Claude Code mengambil [server MCP claude.ai](https://code.claude.com/docs/id/mcp.md#use-mcp-servers-from-claude-ai). Diaktifkan secara default untuk pengguna yang sudah masuk. Untuk menonaktifkan per proyek atau per organisasi, atur [`disableClaudeAiConnectors`](https://code.claude.com/docs/id/settings-reference#disableclaudeaiconnectors) di pengaturan sebagai gantinya |468| `ENABLE_CLAUDEAI_MCP_SERVERS` | Atur ke `false` untuk menghentikan Claude Code mengambil [server MCP claude.ai](https://code.claude.com/docs/id/mcp.md#use-mcp-servers-from-claude-ai). Diaktifkan secara default untuk pengguna yang masuk. Untuk menonaktifkan per proyek atau per organisasi, atur [`disableClaudeAiConnectors`](https://code.claude.com/docs/id/settings-reference#disableclaudeaiconnectors) di pengaturan sebagai gantinya |

468| `ENABLE_PROMPT_CACHING_1H` | Atur ke `1` untuk meminta [TTL prompt cache](https://code.claude.com/docs/id/prompt-caching.md#cache-lifetime) 1 jam alih-alih default 5 menit. Ditujukan untuk pengguna kunci API, [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/id/google-vertex-ai.md), [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md), dan [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md). Untuk pengguna langganan dalam penggunaan yang disertakan, Claude Code meminta TTL 1 jam secara otomatis pada [percakapan utama](https://code.claude.com/docs/id/prompt-caching.md#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 secara terpisah untuk percakapan utama dan untuk permintaan di luarnya, gunakan `CLAUDE_CODE_PROMPT_CACHE_TTL` dan `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, yang diutamakan daripada variabel ini |469| `ENABLE_PROMPT_CACHING_1H` | Atur ke `1` untuk meminta [TTL prompt cache](https://code.claude.com/docs/id/prompt-caching.md#cache-lifetime) 1 jam alih-alih default 5 menit. Ditujukan untuk pengguna kunci API, [Amazon Bedrock](https://code.claude.com/docs/id/amazon-bedrock.md), [Google Cloud's Agent Platform](https://code.claude.com/docs/id/google-vertex-ai.md), [Microsoft Foundry](https://code.claude.com/docs/id/microsoft-foundry.md), dan [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md). Untuk pengguna langganan dalam penggunaan yang disertakan, Claude Code meminta TTL 1 jam secara otomatis pada [percakapan utama](https://code.claude.com/docs/id/prompt-caching.md#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 yang lebih tinggi. Untuk memilih TTL secara terpisah bagi percakapan utama dan bagi permintaan di luarnya, gunakan `CLAUDE_CODE_PROMPT_CACHE_TTL` dan `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`, yang diutamakan daripada variabel ini |

469| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Deprecated. Gunakan `ENABLE_PROMPT_CACHING_1H` sebagai gantinya. Tidak berpengaruh pada sesi [Claude apps gateway](https://code.claude.com/docs/id/claude-apps-gateway), bahkan ketika gateway merutekan ke Amazon Bedrock |470| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | Deprecated. Gunakan `ENABLE_PROMPT_CACHING_1H` sebagai gantinya. Tidak berpengaruh pada sesi [Claude apps gateway](https://code.claude.com/docs/id/claude-apps-gateway), bahkan ketika gateway merutekan ke Amazon Bedrock |

470| `ENABLE_TOOL_SEARCH` | Mengontrol [pencarian tool MCP](https://code.claude.com/docs/id/mcp.md#scale-with-mcp-tool-search). Tidak diatur atau `true` menunda tool MCP, kecuali dalam [kasus yang membuat pencarian tool tetap nonaktif](https://code.claude.com/docs/id/mcp.md#configure-tool-search). `auto` menyalakan pencarian tool begitu definisi mencapai 10% dari context window. `auto:N` mengatur ambang kustom, seperti `auto:5` untuk 5%. `false` memuat semua tool di awal. Jika gateway menolak pencarian tool, lihat [Pencarian tool melalui LLM gateway](https://code.claude.com/docs/id/mcp.md#tool-search-through-a-gateway) |471| `ENABLE_TOOL_SEARCH` | Mengontrol [pencarian tool MCP](https://code.claude.com/docs/id/mcp.md#scale-with-mcp-tool-search). Tidak diatur atau `true` menunda tool MCP, kecuali dalam [kasus yang membuat pencarian tool tetap nonaktif](https://code.claude.com/docs/id/mcp.md#configure-tool-search). `auto` mengaktifkan pencarian tool begitu definisi mencapai 10% dari context window. `auto:N` mengatur ambang kustom, seperti `auto:5` untuk 5%. `false` memuat semua tool di awal. Jika gateway menolak pencarian tool, lihat [Pencarian tool melalui gateway LLM](https://code.claude.com/docs/id/mcp.md#tool-search-through-a-gateway) |

471| `FORCE_AUTOUPDATE_PLUGINS` | Atur ke `1` untuk memaksa pembaruan otomatis plugin bahkan ketika auto-updater utama dinonaktifkan melalui `DISABLE_AUTOUPDATER` |472| `FORCE_AUTOUPDATE_PLUGINS` | Atur ke `1` untuk memaksa pembaruan otomatis plugin bahkan ketika auto-updater utama dinonaktifkan melalui `DISABLE_AUTOUPDATER` |

472| `FORCE_HYPERLINK` | Atur ke `1` untuk mengaktifkan hyperlink OSC 8 yang dapat diklik ketika terminal Anda mendukungnya tetapi tidak terdeteksi secara otomatis. Ketika tidak diatur, Claude Code mengaktifkan sebagian besar hyperlink hanya ketika mendeteksi dukungan terminal. [Lencana PR atau merge request](https://code.claude.com/docs/id/interactive-mode.md#pr-review-status) di footer dan URL masuk yang panjang tetap berupa tautan dalam kedua kasus. Atur `0`, `false`, `no`, atau `off` untuk menampilkan semuanya sebagai teks biasa. Sebelum v2.1.314, `false`, `no`, dan `off` justru mengaktifkan hyperlink |473| `FORCE_HYPERLINK` | Atur ke `1` untuk mengaktifkan hyperlink OSC 8 yang dapat diklik ketika terminal Anda mendukungnya tetapi tidak terdeteksi secara otomatis. Ketika tidak diatur, Claude Code mengaktifkan sebagian besar hyperlink hanya ketika mendeteksi dukungan terminal. [Badge PR atau merge request](https://code.claude.com/docs/id/interactive-mode.md#pr-review-status) di footer dan URL masuk yang panjang tetap berupa tautan dalam kedua kasus. Atur `0`, `false`, `no`, atau `off` untuk merender semuanya sebagai teks biasa. Sebelum v2.1.314, `false`, `no`, dan `off` justru mengaktifkan hyperlink |

473| `FORCE_PROMPT_CACHING_5M` | Atur ke `1` untuk memaksa TTL prompt cache 5 menit bahkan ketika 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| `FORCE_PROMPT_CACHING_5M` | Atur ke `1` untuk memaksa TTL prompt cache 5 menit bahkan ketika 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 |475| `HTTP_PROXY` | Tentukan server proxy HTTP untuk koneksi jaringan |

475| `HTTPS_PROXY` | Tentukan server proxy HTTPS untuk koneksi jaringan |476| `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 variabel tersebut untuk mematikannya. Berguna saat melakukan streaming atau merekam sesi |477| `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 kebanyakan variabel on/off; hapus 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 ketika output melebihi 10.000 token. Tool yang mendeklarasikan [`anthropic/maxResultSizeChars`](https://code.claude.com/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](https://code.claude.com/docs/id/mcp.md#mcp-output-limits-and-warnings) terlepas dari variabel ini |478| `MAX_MCP_OUTPUT_TOKENS` | Jumlah maksimum token yang diizinkan dalam respons tool MCP (default: 25000). Claude Code menampilkan peringatan ketika output melebihi 10.000 token. Tool yang mendeklarasikan [`anthropic/maxResultSizeChars`](https://code.claude.com/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](https://code.claude.com/docs/id/mcp.md#mcp-output-limits-and-warnings) terlepas dari variabel ini |

478| `MAX_STRUCTURED_OUTPUT_RETRIES` | Jumlah percobaan yang diizinkan Claude Code ketika respons model gagal validasi terhadap [`--json-schema`](https://code.claude.com/docs/id/cli-reference#cli-flags) dalam mode non-interaktif dengan flag `-p`; setelah sejumlah percobaan gagal tanpa output yang valid, run gagal. Batas yang sama berlaku ketika structured output subagent [workflow](https://code.claude.com/docs/id/workflows.md) gagal validasi. Default-nya 5, yaitu satu percobaan pertama ditambah empat retry |479| `MAX_STRUCTURED_OUTPUT_RETRIES` | Jumlah percobaan yang diizinkan Claude Code ketika respons model gagal validasi terhadap [`--json-schema`](https://code.claude.com/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 ketika output terstruktur subagent [workflow](https://code.claude.com/docs/id/workflows.md) gagal validasi. Default-nya 5, 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 max output tokens permintaan dan tidak pernah di bawah 1.024. Lihat `CLAUDE_CODE_MAX_OUTPUT_TOKENS` untuk cara batas tersebut diatur. Ketika tidak diatur dan thinking diaktifkan, model dengan [adaptive reasoning](https://code.claude.com/docs/id/model-config.md#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](https://code.claude.com/docs/id/third-party-integrations.md), `0` menghilangkan parameter `thinking` sebagai gantinya. Dengan thinking dimatikan pada Anthropic API, Claude Code mengirim effort `high` alih-alih level yang lebih tinggi ke model yang diketahuinya [tidak menerima kombinasi tersebut](https://code.claude.com/docs/id/errors.md#effort-isnt-available-with-thinking-turned-off), seperti Opus 5. Untuk nilai positif, Claude Code mengabaikan angka itu sendiri pada model adaptive reasoning, kecuali ketika `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` mematikan adaptive reasoning |480| `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 max output tokens permintaan dan tidak pernah di bawah 1.024. Lihat `CLAUDE_CODE_MAX_OUTPUT_TOKENS` untuk cara batas tersebut diatur. Ketika tidak diatur dan thinking diaktifkan, model dengan [adaptive reasoning](https://code.claude.com/docs/id/model-config.md#adjust-effort-level) memilih kedalaman thinking-nya sendiri, dan model lain menggunakan batas tersebut. Atur ke `0` untuk menonaktifkan thinking di 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](https://code.claude.com/docs/id/third-party-integrations.md), `0` justru menghilangkan parameter `thinking`. Dengan thinking dimatikan di Anthropic API, Claude Code mengirim effort `high` alih-alih tingkat yang lebih tinggi ke model yang diketahuinya [tidak menerima kombinasi tersebut](https://code.claude.com/docs/id/errors.md#effort-isnt-available-with-thinking-turned-off), seperti Opus 5. Untuk nilai positif, Claude Code mengabaikan angka itu sendiri pada model adaptive reasoning, kecuali ketika `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` mematikan adaptive reasoning |

480| `MCP_CLIENT_SECRET` | Client secret OAuth untuk server MCP yang memerlukan [kredensial yang telah dikonfigurasi sebelumnya](https://code.claude.com/docs/id/mcp.md#use-pre-configured-oauth-credentials). Menghindari prompt interaktif saat menambahkan server dengan `--client-secret` |481| `MCP_CLIENT_SECRET` | Client secret OAuth untuk server MCP yang memerlukan [kredensial yang telah dikonfigurasi sebelumnya](https://code.claude.com/docs/id/mcp.md#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 tersedia begitu selesai. Atur ke `0` agar Claude Code menunggu server terhubung sebelum kueri pertama. Server yang dikonfigurasi dengan [`alwaysLoad: true`](https://code.claude.com/docs/id/mcp#exempt-a-server-from-deferral) tetap membuat startup menunggu, kecuali ketika dilayani dari [discovery cache](https://code.claude.com/docs/id/mcp.md#server-status-detail), karena tool-nya harus ada ketika prompt pertama dibangun. 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. Ketika Anda meneruskan [`--mcp-config`](https://code.claude.com/docs/id/cli-reference#cli-flags) secara eksplisit, penantian memiliki batas waktu yang lebih panjang; lihat entri flag tersebut untuk pengecualian server yang di-cache |482| `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`](https://code.claude.com/docs/id/mcp#exempt-a-server-from-deferral) tetap membuat startup menunggu, kecuali ketika dilayani dari [discovery cache](https://code.claude.com/docs/id/mcp.md#server-status-detail), karena tool-nya harus ada ketika prompt pertama dibangun. 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. Ketika Anda meneruskan [`--mcp-config`](https://code.claude.com/docs/id/cli-reference#cli-flags) secara eksplisit, penungguan 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 blocking menunggu, dalam milidetik, batch koneksi sebelum mengambil snapshot daftar tool (default: 5000). Berlaku ketika `MCP_CONNECTION_NONBLOCKING=0` atau untuk server yang ditandai [`alwaysLoad: true`](https://code.claude.com/docs/id/mcp#exempt-a-server-from-deferral). Server yang masih tertunda saat batas waktu tetap melanjutkan koneksi di latar belakang. Berbeda dari `MCP_TIMEOUT`, yang membatasi percobaan koneksi masing-masing server |483| `MCP_CONNECT_TIMEOUT_MS` | Berapa lama startup MCP yang blocking menunggu, dalam milidetik, untuk batch koneksi sebelum mengambil snapshot daftar tool (default: 5000). Berlaku ketika `MCP_CONNECTION_NONBLOCKING=0` atau untuk server yang ditandai [`alwaysLoad: true`](https://code.claude.com/docs/id/mcp#exempt-a-server-from-deferral). Server yang masih tertunda pada tenggat tetap melanjutkan koneksi di latar belakang. Berbeda dari `MCP_TIMEOUT`, yang membatasi upaya koneksi server individual |

483| `MCP_DISCOVERY_CACHE` | Menyalakan atau mematikan [MCP discovery cache](https://code.claude.com/docs/id/mcp.md#server-status-detail). Dengan cache aktif, server HTTP atau SSE jarak jauh yang pernah Anda gunakan sebelumnya dapat menampilkan [status `cached`](https://code.claude.com/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 menyalakannya, atau `0` untuk tetap mematikannya bahkan ketika 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` | Mengaktifkan atau menonaktifkan [discovery cache MCP](https://code.claude.com/docs/id/mcp.md#server-status-detail). Dengan cache aktif, server HTTP atau SSE jarak jauh yang pernah Anda gunakan sebelumnya dapat menampilkan [status `cached`](https://code.claude.com/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 ketika rollout telah mengaktifkannya. Sebelum v2.1.238, cache aktif secara default. Status `cached` memerlukan Claude Code v2.1.221 atau yang lebih baru |

484| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | Usia maksimum, dalam detik, dari entri [discovery cache](https://code.claude.com/docs/id/mcp.md#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 yang dilakukannya ketika 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 |485| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | Usia maksimum, dalam detik, dari entri [discovery cache](https://code.claude.com/docs/id/mcp.md#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 yang dilakukannya ketika cache nonaktif. Claude Code membatasi nilainya pada 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](https://code.claude.com/docs/id/mcp.md#server-status-detail) lebih tua dari `MCP_DISCOVERY_CACHE_TTL_S`, Claude Code memperbaruinya di latar belakang. Variabel ini mengatur berapa banyak pembaruan berturut-turut yang boleh gagal sebelum Claude Code membuang entri dan menghubungkan server pada startup berikutnya sebagai gantinya (default: 1). Naikkan nilainya jika koneksi jaringan Anda sesekali terputus, sehingga satu pembaruan yang gagal tidak membuang entri. Memerlukan Claude Code v2.1.238 atau lebih baru |486| `MCP_DISCOVERY_CACHE_STRIKES` | Pada startup di mana entri [discovery cache](https://code.claude.com/docs/id/mcp.md#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 dapat gagal sebelum Claude Code membuang entri dan menghubungkan server pada startup berikutnya sebagai gantinya (default: 1). Naikkan jika koneksi jaringan Anda sesekali terputus, agar satu penyegaran yang gagal tidak membuang entri. Memerlukan Claude Code v2.1.238 atau yang lebih baru |

486| `MCP_DISCOVERY_CACHE_TTL_S` | Jumlah detik selama Claude Code menggunakan entri [discovery cache](https://code.claude.com/docs/id/mcp.md#server-status-detail) tanpa memperbaruinya (default: 900). Pada startup di mana entri lebih tua dari itu, Claude Code tetap menggunakannya tetapi memperbaruinya di latar belakang. Begitu entri lebih tua dari `MCP_DISCOVERY_CACHE_MAX_STALE_S`, Claude Code membuangnya sebagai gantinya. Claude Code membatasi nilainya pada `MCP_DISCOVERY_CACHE_MAX_STALE_S`, yaitu 4 jam secara default. Sebelum v2.1.238, Claude Code tidak membatasi nilainya |487| `MCP_DISCOVERY_CACHE_TTL_S` | Jumlah detik selama Claude Code menggunakan entri [discovery cache](https://code.claude.com/docs/id/mcp.md#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. Begitu entri lebih tua dari `MCP_DISCOVERY_CACHE_MAX_STALE_S`, Claude Code justru membuangnya. Claude Code membatasi nilainya pada `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 redirect OAuth, sebagai alternatif untuk `--callback-port` saat menambahkan server MCP dengan [kredensial yang telah dikonfigurasi sebelumnya](https://code.claude.com/docs/id/mcp.md#use-pre-configured-oauth-credentials) |488| `MCP_OAUTH_CALLBACK_PORT` | Port tetap untuk callback redirect OAuth, sebagai alternatif `--callback-port` saat menambahkan server MCP dengan [kredensial yang telah dikonfigurasi sebelumnya](https://code.claude.com/docs/id/mcp.md#use-pre-configured-oauth-credentials) |

488| `MCP_PROTOCOL_NEGOTIATION` | Hanya pada [runtime klien MCP v2](https://code.claude.com/docs/id/mcp.md#mcp-client-runtimes), mengontrol apakah Claude Code memeriksa server untuk revisi protokol MCP 2026-07-28. Atur `legacy` untuk melewati pemeriksaan, sehingga setiap server terhubung dengan handshake dari sebelum revisi tersebut. Atur `auto` untuk memeriksa jenis server yang mendukung pemeriksaan: server HTTP dan stdio, konektor claude.ai, serta konektor sesi cloud dan Remote Control. Dengan variabel tidak diatur, Claude Code memeriksa jenis-jenis yang sama tersebut secara default; lihat [Runtime klien MCP](https://code.claude.com/docs/id/mcp.md#mcp-client-runtimes). Nilai lainnya diabaikan dengan peringatan di log debug. Memerlukan Claude Code v2.1.221 atau lebih baru |489| `MCP_PROTOCOL_NEGOTIATION` | Hanya pada [runtime klien MCP v2](https://code.claude.com/docs/id/mcp.md#mcp-client-runtimes), mengontrol apakah Claude Code memeriksa server untuk revisi protokol MCP 2026-07-28. Atur `legacy` untuk melewati pemeriksaan, sehingga setiap server terhubung dengan handshake dari sebelum revisi tersebut. Atur `auto` untuk memeriksa jenis server yang mendukung pemeriksaan: server HTTP dan stdio, konektor claude.ai, serta konektor sesi cloud dan Remote Control. Dengan variabel tidak diatur, Claude Code memeriksa jenis yang sama secara default; lihat [Runtime klien MCP](https://code.claude.com/docs/id/mcp.md#mcp-client-runtimes). Nilai lain diabaikan dengan peringatan di log debug. Memerlukan Claude Code v2.1.221 atau yang 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) |490| `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` | Tetapkan [runtime klien MCP](https://code.claude.com/docs/id/mcp.md#mcp-client-runtimes) 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. Di 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` ketika 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_SDK_GENERATION` | Tetapkan [runtime klien MCP](https://code.claude.com/docs/id/mcp.md#mcp-client-runtimes) 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 yang 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` ketika 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 sekali per proses. Memerlukan Claude Code v2.1.218 atau yang lebih baru |

491| `MCP_SERVER_CONNECTION_BATCH_SIZE` | Jumlah maksimum server MCP lokal (stdio) yang dihubungkan secara paralel selama startup (default: 3) |492| `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) |493| `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 satu detik; untuk field per server, nilai di bawah 1000 diabaikan |494| `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 yang lebih baru. Untuk variabel env, nilai di bawah 1000 dinaikkan menjadi satu detik; untuk field per server, nilai di bawah 1000 diabaikan |

494| `NO_PROXY` | Daftar domain dan IP yang permintaannya akan dikirim secara langsung, melewati proxy |495| `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 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](https://code.claude.com/docs/id/monitoring-usage.md#common-configuration-variables) |496| `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 yang lebih baru. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md#common-configuration-variables) |

496| `OTEL_LOG_ASSISTANT_RESPONSES` | Atur ke `1` untuk menyertakan teks respons model pada event log OpenTelemetry `assistant_response`. Ketika tidak diatur, Claude Code menggunakan nilai `OTEL_LOG_USER_PROMPTS` sebagai gantinya. Atur ke `0` untuk tetap menyamarkan respons bahkan ketika `OTEL_LOG_USER_PROMPTS` diatur. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.193 atau lebih baru. Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md#assistant-response-event) |497| `OTEL_LOG_ASSISTANT_RESPONSES` | Atur ke `1` untuk menyertakan teks respons model pada event log OpenTelemetry `assistant_response`. Ketika tidak diatur, Claude Code menggunakan nilai `OTEL_LOG_USER_PROMPTS` sebagai gantinya. Atur ke `0` untuk tetap menyamarkan respons bahkan ketika `OTEL_LOG_USER_PROMPTS` diatur. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Memerlukan Claude Code v2.1.193 atau yang lebih baru. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md#assistant-response-event) |

497| `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 menyalakannya. Memerlukan Claude Code v2.1.274 atau lebih baru. Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md#managed-settings-resolved-event) |498| `OTEL_LOG_MANAGED_SETTINGS` | Atur ke `1` untuk menambahkan pengaturan terkelola yang disamarkan, beserta 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 yang lebih baru. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md#managed-settings-resolved-event) |

498| `OTEL_LOG_RAW_API_BODIES` | Mengirimkan 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 mengirimkan 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](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md#api-request-body-event) |499| `OTEL_LOG_RAW_API_BODIES` | Memancarkan 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 memancarkan 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](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env). Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md#api-request-body-event) |

499| `OTEL_LOG_TOOL_CONTENT` | Atur ke `1` untuk menyertakan konten tool dalam span event OpenTelemetry `tool.output`. Atribut span membawa konten tool di bawah [gate-nya sendiri](https://code.claude.com/docs/id/monitoring-usage.md#new-context-gates). Memerlukan [tracing](https://code.claude.com/docs/id/monitoring-usage.md#traces-beta). Nonaktif secara default untuk melindungi data sensitif. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan di [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md#tool-output-span-event) |500| `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 kontrolnya sendiri](https://code.claude.com/docs/id/monitoring-usage.md#new-context-gates). Memerlukan [tracing](https://code.claude.com/docs/id/monitoring-usage.md#traces-beta). Nonaktif secara default untuk melindungi data sensitif. Atur di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Diabaikan dalam [pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md#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](https://code.claude.com/docs/id/monitoring-usage.md#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](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md) |501| `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 agent, skill, plugin, dan server MCP yang sebenarnya pada [metrik biaya dan token](https://code.claude.com/docs/id/monitoring-usage.md#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](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

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](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md) |502| `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](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

502| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Atur ke `false` untuk mengecualikan UUID akun dari atribut metrik (default: disertakan). Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md) |503| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | Atur ke `false` untuk mengecualikan UUID akun dari atribut metrik (default: disertakan). Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

503| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | Atur ke `true` untuk menyertakan entrypoint sesi dalam atribut metrik (default: dikecualikan). Ditambahkan di v2.1.152. Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md) |504| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | Atur ke `true` untuk menyertakan entrypoint sesi dalam atribut metrik (default: dikecualikan). Ditambahkan di v2.1.152. Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

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](https://code.claude.com/docs/id/monitoring-usage.md#repository-attributes) |505| `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 yang lebih baru. Lihat [Atribut repositori](https://code.claude.com/docs/id/monitoring-usage.md#repository-attributes) |

505| `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](https://code.claude.com/docs/id/monitoring-usage.md#multi-team-organization-support) |506| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | Sejak v2.1.161, Claude Code melampirkan kunci `OTEL_RESOURCE_ATTRIBUTES` ke label datapoint metrik. Atur ke `false` untuk mengecualikannya (default: disertakan). Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md#multi-team-organization-support) |

506| `OTEL_METRICS_INCLUDE_SESSION_ID` | Atur ke `false` untuk mengecualikan ID sesi dari atribut metrik (default: disertakan). Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md) |507| `OTEL_METRICS_INCLUDE_SESSION_ID` | Atur ke `false` untuk mengecualikan ID sesi dari atribut metrik (default: disertakan). Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

507| `OTEL_METRICS_INCLUDE_VERSION` | Atur ke `true` untuk menyertakan versi Claude Code dalam atribut metrik (default: dikecualikan). Lihat [Monitoring](https://code.claude.com/docs/id/monitoring-usage.md) |508| `OTEL_METRICS_INCLUDE_VERSION` | Atur ke `true` untuk menyertakan versi Claude Code dalam atribut metrik (default: dikecualikan). Lihat [Pemantauan](https://code.claude.com/docs/id/monitoring-usage.md) |

508| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Timpa anggaran karakter untuk metadata skill yang ditampilkan ke [tool Skill](https://code.claude.com/docs/id/skills.md#control-who-invokes-a-skill). Anggaran berskala secara dinamis sebesar 1% dari context window, dengan fallback 8.000 karakter. Nama lama dipertahankan untuk kompatibilitas mundur |509| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | Menimpa anggaran karakter untuk metadata skill yang ditampilkan ke [tool Skill](https://code.claude.com/docs/id/skills.md#control-who-invokes-a-skill). Anggaran 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 diaturnya. Sebelumnya mengatur jumlah maksimum karakter output [tugas latar belakang](https://code.claude.com/docs/id/tools-reference.md#background-commands) yang disimpan oleh tool `TaskOutput`. Claude membaca file output tugas latar belakang dengan `Read` sebagai gantinya |510| `TASK_MAX_OUTPUT_LENGTH` | Dihapus di v2.1.277 dan kini tidak berpengaruh, bersama dengan tool `TaskOutput` yang ukurannya diaturnya. Sebelumnya mengatur jumlah maksimum karakter output [tugas latar belakang](https://code.claude.com/docs/id/tools-reference.md#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 |511| `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` | Timpa region untuk Claude 3.5 Haiku saat menggunakan Google Cloud's Agent Platform |512| `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` | Timpa region untuk Claude 3.5 Sonnet saat menggunakan Google Cloud's Agent Platform |513| `VERTEX_REGION_CLAUDE_3_5_SONNET` | Menimpa region untuk Claude 3.5 Sonnet saat menggunakan Google Cloud's Agent Platform |

513| `VERTEX_REGION_CLAUDE_3_7_SONNET` | Timpa region untuk Claude 3.7 Sonnet saat menggunakan Google Cloud's Agent Platform |514| `VERTEX_REGION_CLAUDE_3_7_SONNET` | Menimpa region untuk Claude 3.7 Sonnet saat menggunakan Google Cloud's Agent Platform |

514| `VERTEX_REGION_CLAUDE_4_0_OPUS` | Timpa region untuk Claude Opus 4 saat menggunakan Google Cloud's Agent Platform |515| `VERTEX_REGION_CLAUDE_4_0_OPUS` | Menimpa region untuk Claude Opus 4 saat menggunakan Google Cloud's Agent Platform |

515| `VERTEX_REGION_CLAUDE_4_0_SONNET` | Timpa region untuk Claude Sonnet 4 saat menggunakan Google Cloud's Agent Platform |516| `VERTEX_REGION_CLAUDE_4_0_SONNET` | Menimpa region untuk Claude Sonnet 4 saat menggunakan Google Cloud's Agent Platform |

516| `VERTEX_REGION_CLAUDE_4_1_OPUS` | Timpa region untuk Claude Opus 4.1 saat menggunakan Google Cloud's Agent Platform |517| `VERTEX_REGION_CLAUDE_4_1_OPUS` | Menimpa region untuk Claude Opus 4.1 saat menggunakan Google Cloud's Agent Platform |

517| `VERTEX_REGION_CLAUDE_4_5_OPUS` | Timpa region untuk Claude Opus 4.5 saat menggunakan Google Cloud's Agent Platform |518| `VERTEX_REGION_CLAUDE_4_5_OPUS` | Menimpa region untuk Claude Opus 4.5 saat menggunakan Google Cloud's Agent Platform |

518| `VERTEX_REGION_CLAUDE_4_5_SONNET` | Timpa region untuk Claude Sonnet 4.5 saat menggunakan Google Cloud's Agent Platform |519| `VERTEX_REGION_CLAUDE_4_5_SONNET` | Menimpa region untuk Claude Sonnet 4.5 saat menggunakan Google Cloud's Agent Platform |

519| `VERTEX_REGION_CLAUDE_4_6_OPUS` | Timpa region untuk Claude Opus 4.6 saat menggunakan Google Cloud's Agent Platform |520| `VERTEX_REGION_CLAUDE_4_6_OPUS` | Menimpa region untuk Claude Opus 4.6 saat menggunakan Google Cloud's Agent Platform |

520| `VERTEX_REGION_CLAUDE_4_6_SONNET` | Timpa region untuk Claude Sonnet 4.6 saat menggunakan Google Cloud's Agent Platform |521| `VERTEX_REGION_CLAUDE_4_6_SONNET` | Menimpa region untuk Claude Sonnet 4.6 saat menggunakan Google Cloud's Agent Platform |

521| `VERTEX_REGION_CLAUDE_4_7_OPUS` | Timpa region untuk Claude Opus 4.7 saat menggunakan Google Cloud's Agent Platform |522| `VERTEX_REGION_CLAUDE_4_7_OPUS` | Menimpa region untuk Claude Opus 4.7 saat menggunakan Google Cloud's Agent Platform |

522| `VERTEX_REGION_CLAUDE_4_8_OPUS` | Timpa region untuk Claude Opus 4.8 saat menggunakan Google Cloud's Agent Platform |523| `VERTEX_REGION_CLAUDE_4_8_OPUS` | Menimpa region untuk Claude Opus 4.8 saat menggunakan Google Cloud's Agent Platform |

523| `VERTEX_REGION_CLAUDE_5_5_OPUS` | Timpa region untuk Claude Opus 5.5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.280 |524| `VERTEX_REGION_CLAUDE_5_5_OPUS` | Menimpa region untuk Claude Opus 5.5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.280 |

524| `VERTEX_REGION_CLAUDE_5_5_SONNET` | Timpa region untuk Claude Sonnet 5.5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.284 |525| `VERTEX_REGION_CLAUDE_5_5_SONNET` | Menimpa region untuk Claude Sonnet 5.5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.284 |

525| `VERTEX_REGION_CLAUDE_5_OPUS` | Timpa region untuk Claude Opus 5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.219 |526| `VERTEX_REGION_CLAUDE_5_OPUS` | Menimpa region untuk Claude Opus 5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.219 |

526| `VERTEX_REGION_CLAUDE_5_SONNET` | Timpa region untuk Claude Sonnet 5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.197 |527| `VERTEX_REGION_CLAUDE_5_SONNET` | Menimpa region untuk Claude Sonnet 5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.197 |

527| `VERTEX_REGION_CLAUDE_FABLE_5` | Timpa region untuk Claude Fable 5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.170 |528| `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` | Timpa region untuk Claude Fable 5.1 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.257 |529| `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` | Timpa region untuk Claude Haiku 4.5 saat menggunakan Google Cloud's Agent Platform |530| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | Menimpa region untuk Claude Haiku 4.5 saat menggunakan Google Cloud's Agent Platform |

530| `VERTEX_REGION_CLAUDE_HAIKU_5_5` | Timpa region untuk Claude Haiku 5.5 saat menggunakan Google Cloud's Agent Platform. Ditambahkan di v2.1.293 |531| `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 |

531 532 

532Variabel 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](https://code.claude.com/docs/id/monitoring-usage.md) untuk detail konfigurasi.533Variabel 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](https://code.claude.com/docs/id/monitoring-usage.md) untuk detail konfigurasi.

533 534 

534Atur `CLAUDE_CODE_ENABLE_TELEMETRY` dan variabel OpenTelemetry yang menyalakan ekspor, memilih tujuannya, atau menangkap konten di shell, pengaturan pengguna, atau pengaturan terkelola Anda. Claude Code [mengabaikannya di pengaturan proyek dan lokal](https://code.claude.com/docs/id/settings-reference.md#variables-claude-code-ignores-in-env), kecuali nilai off yang dijelaskan di bagian tersebut. `OTEL_RESOURCE_ATTRIBUTES` serta variabel interval, timeout, dan kompresi ekspor, seperti `OTEL_METRIC_EXPORT_INTERVAL`, tetap berlaku dari pengaturan proyek dan lokal.535Atur `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](https://code.claude.com/docs/id/settings-reference.md#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.

535 536 

536## Apa yang dihapus oleh pembersihan lingkungan subprocess537## Apa yang dihapus oleh pembersihan lingkungan subprocess

537 538 

errors.md +145 −5

Details

55| `spend limit reached` / `spend limit unavailable` | [Usage limits](#spend-limit-reached) |55| `spend limit reached` / `spend limit unavailable` | [Usage limits](#spend-limit-reached) |

56| `Not logged in · Please run /login` | [Authentication](#not-logged-in) |56| `Not logged in · Please run /login` | [Authentication](#not-logged-in) |

57| `Couldn't save your login` | [Authentication](#couldnt-save-your-login) |57| `Couldn't save your login` | [Authentication](#couldnt-save-your-login) |

58| `Sign in again to take your previous account or API key off the config file.` | [Autentikasi](#sign-in-again-to-take-your-previous-account-or-api-key-off-the-config-file) |

59| `Your account or API key may still be in the config file. Run claude auth logout.` | [Autentikasi](#your-account-or-api-key-may-still-be-in-the-config-file) |

58| `Authentication required · Sign in again to continue` | [Authentication](#not-logged-in) |60| `Authentication required · Sign in again to continue` | [Authentication](#not-logged-in) |

59| `Could not resolve authentication method` | [Authentication](#could-not-resolve-authentication-method) |61| `Could not resolve authentication method` | [Authentication](#could-not-resolve-authentication-method) |

60| `Invalid API key` | [Authentication](#invalid-api-key) |62| `Invalid API key` | [Authentication](#invalid-api-key) |


82| `Couldn't verify your organization's policy for remote control` | [Troubleshoot Remote Control](https://code.claude.com/docs/id/remote-control.md#couldnt-verify-your-organizations-policy-for-remote-control) |84| `Couldn't verify your organization's policy for remote control` | [Troubleshoot Remote Control](https://code.claude.com/docs/id/remote-control.md#couldnt-verify-your-organizations-policy-for-remote-control) |

83| `Remote Control is disabled by your organization's policy` | [Troubleshoot Remote Control](https://code.claude.com/docs/id/remote-control.md#remote-control-is-disabled-by-your-organizations-policy) |85| `Remote Control is disabled by your organization's policy` | [Troubleshoot Remote Control](https://code.claude.com/docs/id/remote-control.md#remote-control-is-disabled-by-your-organizations-policy) |

84| `Remote Control was turned off by your organization's policy` | [Troubleshoot Remote Control](https://code.claude.com/docs/id/remote-control.md#remote-control-was-turned-off-by-your-organizations-policy) |86| `Remote Control was turned off by your organization's policy` | [Troubleshoot Remote Control](https://code.claude.com/docs/id/remote-control.md#remote-control-was-turned-off-by-your-organizations-policy) |

87| `Session failed: working folder not found:` | [Pemecahan masalah Remote Control](https://code.claude.com/docs/id/remote-control.md#working-folder-not-found) |

88| `The program file this Remote Control started from is gone` | [Pemecahan masalah Remote Control](https://code.claude.com/docs/id/remote-control.md#program-file-is-gone) |

89| `Session failed: spawn error:` diikuti pesan `ENOENT` | [Pemecahan masalah Remote Control](https://code.claude.com/docs/id/remote-control.md#program-file-is-gone) |

85| `OAuth token revoked` / `OAuth token has expired` | [Authentication](#oauth-token-revoked-or-expired) |90| `OAuth token revoked` / `OAuth token has expired` | [Authentication](#oauth-token-revoked-or-expired) |

86| `Failed to authenticate: OAuth token revoked` | [Authentication](#oauth-token-revoked-or-expired) |91| `Failed to authenticate: OAuth token revoked` | [Authentication](#oauth-token-revoked-or-expired) |

87| `Your account does not have access to Claude. Please login again or contact your administrator.` | [Authentication](#oauth-token-revoked-or-expired) |92| `Your account does not have access to Claude. Please login again or contact your administrator.` | [Authentication](#oauth-token-revoked-or-expired) |


165| `Request too large for the API's 32MB request limit` | [Request errors](#request-too-large) |170| `Request too large for the API's 32MB request limit` | [Request errors](#request-too-large) |

166| `Image was too large` | [Request errors](#image-was-too-large) |171| `Image was too large` | [Request errors](#image-was-too-large) |

167| `API Error: an image in the conversation could not be processed and was removed` | [Request errors](#image-was-too-large) |172| `API Error: an image in the conversation could not be processed and was removed` | [Request errors](#image-was-too-large) |

173| `An image in the conversation exceeds the dimension limit for many-image requests` | [Kesalahan permintaan](#image-was-too-large) |

168| `Unable to resize image` | [Request errors](#unable-to-resize-image) |174| `Unable to resize image` | [Request errors](#unable-to-resize-image) |

169| `Request rejected as unprocessable by the model` | [Request errors](#request-rejected-as-unprocessable-by-the-model) |175| `Request rejected as unprocessable by the model` | [Request errors](#request-rejected-as-unprocessable-by-the-model) |

170| `PDF too large` / `PDF is password protected` / `pdftoppm is not installed` | [Request errors](#pdf-errors) |176| `PDF too large` / `PDF is password protected` / `pdftoppm is not installed` | [Request errors](#pdf-errors) |


229| `Error: --agents takes a JSON object, or a file path only with --print (-p)` | [Command-line errors](#invalid-agents-configuration) |235| `Error: --agents takes a JSON object, or a file path only with --print (-p)` | [Command-line errors](#invalid-agents-configuration) |

230| `Error: --agents file not found` | [Command-line errors](#invalid-agents-configuration) |236| `Error: --agents file not found` | [Command-line errors](#invalid-agents-configuration) |

231| `Error: Settings file exceeds the 2MiB limit` | [Command-line errors](#settings-file-exceeds-the-2mib-limit) |237| `Error: Settings file exceeds the 2MiB limit` | [Command-line errors](#settings-file-exceeds-the-2mib-limit) |

238| `Configuration error in` | [Kesalahan baris perintah](#configuration-error-in-claude-json) |

239| `Claude configuration file at <path> was empty and no backup holds anything: starting with defaults.` | [Kesalahan baris perintah](#claude-configuration-file-was-empty) |

232| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [Command-line errors](#the-current-directory-no-longer-exists) |240| `The current directory no longer exists (it was deleted or moved)` / `Can't read the current directory` | [Command-line errors](#the-current-directory-no-longer-exists) |

233| `Temp directory <dir> ... Refusing to use it` / `Claude Code's temporary directory <dir> could not be created` | [Command-line errors](#temp-directory-refused-or-cannot-be-created) |241| `Temp directory <dir> ... Refusing to use it` / `Claude Code's temporary directory <dir> could not be created` | [Command-line errors](#temp-directory-refused-or-cannot-be-created) |

234| `ENOSPC: no space left on device, mkdir '<dir>'` | [Command-line errors](#temp-directory-refused-or-cannot-be-created) |242| `ENOSPC: no space left on device, mkdir '<dir>'` | [Command-line errors](#temp-directory-refused-or-cannot-be-created) |


334| `cannot contain null bytes (\0)` | [Tool errors](#path-cannot-contain-null-bytes) |342| `cannot contain null bytes (\0)` | [Tool errors](#path-cannot-contain-null-bytes) |

335| `Path contains null bytes` | [Tool errors](#path-cannot-contain-null-bytes) |343| `Path contains null bytes` | [Tool errors](#path-cannot-contain-null-bytes) |

336| `command contains the invisible character U+FEFF (byte order mark) or U+180E (Mongolian vowel separator), and was not run` | [Kesalahan tool](#command-contains-an-invisible-character) |344| `command contains the invisible character U+FEFF (byte order mark) or U+180E (Mongolian vowel separator), and was not run` | [Kesalahan tool](#command-contains-an-invisible-character) |

345| `This call was not run. The command was approved before Claude Code restarted` | [Kesalahan tool](#command-approved-before-a-restart-was-not-run) |

337| `File is too large to read as an image (the limit is 128MB)` | [Tool errors](#file-is-too-large-to-read-as-an-image) |346| `File is too large to read as an image (the limit is 128MB)` | [Tool errors](#file-is-too-large-to-read-as-an-image) |

338| `Cannot read this as an image: <path> is a pipe or a device` | [Tool errors](#file-is-too-large-to-read-as-an-image) |347| `Cannot read this as an image: <path> is a pipe or a device` | [Tool errors](#file-is-too-large-to-read-as-an-image) |

339| `subagent_type is required: the general-purpose agent is not available in this session` | [Tool errors](#subagent-type-is-required) |348| `subagent_type is required: the general-purpose agent is not available in this session` | [Tool errors](#subagent-type-is-required) |


420| `Not loaded: rename <path>, then restart — its name uses "<name>", a name reserved for the skills synced from your claude.ai account` | [Configuration warnings](#a-skill-command-or-workflow-wasnt-loaded-because-its-name-is-reserved) |429| `Not loaded: rename <path>, then restart — its name uses "<name>", a name reserved for the skills synced from your claude.ai account` | [Configuration warnings](#a-skill-command-or-workflow-wasnt-loaded-because-its-name-is-reserved) |

421| `N skill or command names refused: run with --debug to see which ([names]), rename, then restart` | [Configuration warnings](#skill-or-command-name-refused) |430| `N skill or command names refused: run with --debug to see which ([names]), rename, then restart` | [Configuration warnings](#skill-or-command-name-refused) |

422| `Ignoring N permissions.allow entries from ... this workspace has not been trusted` | [Configuration warnings](#workspace-has-not-been-trusted) |431| `Ignoring N permissions.allow entries from ... this workspace has not been trusted` | [Configuration warnings](#workspace-has-not-been-trusted) |

432| `Make this change again later: <path> could not be updated, so it applies to this session only` | [Peringatan konfigurasi](#make-this-change-again-later) |

423| `is a network path, which cannot be added as a working directory` | [Configuration warnings](#working-directory-is-a-network-path) |433| `is a network path, which cannot be added as a working directory` | [Configuration warnings](#working-directory-is-a-network-path) |

424| `Remote managed settings failed to load (<cause>)` | [Configuration warnings](#remote-managed-settings-failed-to-load) |434| `Remote managed settings failed to load (<cause>)` | [Configuration warnings](#remote-managed-settings-failed-to-load) |

435| `Your organization requires remote managed settings to load, but they could not be loaded` | [Terapkan startup fail-closed](https://code.claude.com/docs/id/server-managed-settings.md#enforce-fail-closed-startup) |

436| `Remote managed settings are still loading` | [Peringatan konfigurasi](#remote-managed-settings-failed-to-load) |

437| `Remote managed settings did not load` | [Peringatan konfigurasi](#remote-managed-settings-failed-to-load) |

438| `Claude Code couldn't load your organization's settings` / `Claude Code couldn't reach Anthropic to load your organization's settings` / `requires them before a session can start` | [Peringatan konfigurasi](#couldnt-load-your-organizations-settings) |

439| `Claude Code can't start this session yet` | [Peringatan konfigurasi](#couldnt-load-your-organizations-settings) |

440| `Your Claude session has expired. Sign in again to continue (claude auth login).` | [Peringatan konfigurasi](#couldnt-load-your-organizations-settings) |

425| `Managed settings were not approved; exiting without applying them.` | [Configuration warnings](#managed-settings-were-not-approved) |441| `Managed settings were not approved; exiting without applying them.` | [Configuration warnings](#managed-settings-were-not-approved) |

426| `Your organization's managed settings need your approval, which couldn't be asked for here.` | [Configuration warnings](#managed-settings-need-your-approval) |442| `Your organization's managed settings need your approval, which couldn't be asked for here.` | [Configuration warnings](#managed-settings-need-your-approval) |

427| `Claude Code can't start: your organization's managed settings block the default model` / `Claude Code can't start: your organization allows only the models listed in "availableModels"` | [Configuration warnings](#managed-settings-block-the-default-model) |443| `Claude Code can't start: your organization's managed settings block the default model` / `Claude Code can't start: your organization allows only the models listed in "availableModels"` | [Configuration warnings](#managed-settings-block-the-default-model) |


454| `is ignored — managed settings set allowManagedReadPathsOnly` / `is ignored — managed settings set allowManagedDomainsOnly` | [Configuration warnings](#sandbox-allow-entries-are-ignored-under-a-managed-lock) |470| `is ignored — managed settings set allowManagedReadPathsOnly` / `is ignored — managed settings set allowManagedDomainsOnly` | [Configuration warnings](#sandbox-allow-entries-are-ignored-under-a-managed-lock) |

455| `Sandbox mask files left behind at write-deny paths` | [Configuration warnings](#stale-sandbox-mask-files-left-by-a-killed-session) |471| `Sandbox mask files left behind at write-deny paths` | [Configuration warnings](#stale-sandbox-mask-files-left-by-a-killed-session) |

456| `Stale sandbox mask files left by a killed session` | [Configuration warnings](#stale-sandbox-mask-files-left-by-a-killed-session) |472| `Stale sandbox mask files left by a killed session` | [Configuration warnings](#stale-sandbox-mask-files-left-by-a-killed-session) |

473| `Ubuntu's AppArmor restriction on user namespaces stops bubblewrap here` | [Pemecahan masalah sandboxing](https://code.claude.com/docs/id/sandboxing.md#apparmor-restriction-stops-bubblewrap) |

474| `bwrap: setting up uid map: Permission denied` / `bwrap: loopback: Failed RTM_NEWADDR: Operation not permitted` | [Pemecahan masalah sandboxing](https://code.claude.com/docs/id/sandboxing.md#bwrap-uid-map-permission-denied) |

457| Respons tampak berkualitas lebih rendah dari biasanya | [Response quality](#responses-seem-lower-quality-than-usual) |475| Respons tampak berkualitas lebih rendah dari biasanya | [Response quality](#responses-seem-lower-quality-than-usual) |

458 476 

459## Retry otomatis477## Retry otomatis


1031* Jalankan `/login` untuk mengautentikasi dengan langganan Claude atau akun Console Anda1049* Jalankan `/login` untuk mengautentikasi dengan langganan Claude atau akun Console Anda

1032* Jika Anda mengharapkan environment variable yang mengautentikasi Anda, pastikan `ANTHROPIC_API_KEY` telah diatur dan diekspor di shell tempat Anda menjalankan `claude`1050* Jika Anda mengharapkan environment variable yang mengautentikasi Anda, pastikan `ANTHROPIC_API_KEY` telah diatur dan diekspor di shell tempat Anda menjalankan `claude`

1033* Untuk CI atau otomatisasi yang tidak memungkinkan login interaktif, konfigurasikan skrip [`apiKeyHelper`](https://code.claude.com/docs/id/settings-reference#apikeyhelper) yang mengambil kunci saat startup1051* Untuk CI atau otomatisasi yang tidak memungkinkan login interaktif, konfigurasikan skrip [`apiKeyHelper`](https://code.claude.com/docs/id/settings-reference#apikeyhelper) yang mengambil kunci saat startup

1052* Jika job `claude -p` keluar dengan pesan ini ketika seseorang masuk kembali ke akun dan organisasi claude.ai yang sama, perbarui Claude Code di tempat proses masuk tersebut dijalankan. Sebelum v2.1.318, Claude Code menghapus login tersimpan selama proses masuk tersebut, sebelum menyimpan login yang baru.

1034* Lihat [Prioritas autentikasi](https://code.claude.com/docs/id/authentication.md#authentication-precedence) untuk memahami kredensial mana yang digunakan Claude Code ketika terdapat beberapa kredensial1053* Lihat [Prioritas autentikasi](https://code.claude.com/docs/id/authentication.md#authentication-precedence) untuk memahami kredensial mana yang digunakan Claude Code ketika terdapat beberapa kredensial

1035 1054 

1036Jika Anda berulang kali diminta untuk masuk, lihat [Not logged in or token expired](https://code.claude.com/docs/id/troubleshoot-install.md#not-logged-in-or-token-expired) untuk pemeriksaan jam sistem dan langkah pemulihan penyimpanan kredensial macOS.1055Jika Anda berulang kali diminta untuk masuk, lihat [Not logged in or token expired](https://code.claude.com/docs/id/troubleshoot-install.md#not-logged-in-or-token-expired) untuk pemeriksaan jam sistem dan langkah pemulihan penyimpanan kredensial macOS.


1441* Di platform lain, jalankan `/login` lagi1460* Di platform lain, jalankan `/login` lagi

1442* Jika login masih tidak tersimpan, lihat [Not logged in or token expired](https://code.claude.com/docs/id/troubleshoot-install.md#not-logged-in-or-token-expired) untuk perintah membuka kunci keychain dan langkah pemulihan penyimpanan kredensial lainnya1461* Jika login masih tidak tersimpan, lihat [Not logged in or token expired](https://code.claude.com/docs/id/troubleshoot-install.md#not-logged-in-or-token-expired) untuk perintah membuka kunci keychain dan langkah pemulihan penyimpanan kredensial lainnya

1443 1462 

1463### Sign in again to take your previous account or API key off the config file

1464 

1465Peringatan ini setelah Anda masuk berarti akun apa pun yang sebelumnya Anda gunakan untuk masuk mungkin masih tersimpan di [`~/.claude.json`](https://code.claude.com/docs/id/claude-directory#ce-claude-json):

1466 

1467```text theme={null}

1468Sign in again to take your previous account or API key off the config file.

1469```

1470 

1471Kunci API mungkin juga masih ada di `~/.claude.json` jika login Console membuatnya di Linux atau Windows.

1472 

1473**Yang perlu dilakukan:**

1474 

1475* Jalankan `claude auth login` di shell Anda untuk masuk kembali. Claude Code kemudian mencoba ulang penyimpanan yang menghapus akun atau kunci API yang diganti dari file tersebut.

1476 

1477### Your account or API key may still be in the config file

1478 

1479Anda menjalankan `/logout` atau `claude auth logout`, dan Claude Code mengeluarkan proses ini tetapi tidak dapat memastikan bahwa [`~/.claude.json`](https://code.claude.com/docs/id/claude-directory#ce-claude-json) tidak lagi menyimpan akun Anda. Entah penyimpanan tidak berhasil, atau file tidak dapat dibaca kembali untuk diperiksa.

1480 

1481```text theme={null}

1482Your account or API key may still be in the config file. Run claude auth logout.

1483```

1484 

1485Kunci API mungkin juga masih ada di `~/.claude.json` jika login Console membuatnya di Linux atau Windows.

1486 

1487**Yang perlu dilakukan:**

1488 

1489* Jalankan `claude auth logout` di shell Anda untuk mencoba menyimpan lagi. Ketika penyimpanan berhasil, perintah mencetak `Successfully logged out from your Anthropic account.`

1490 

1444### Couldn't start the local listener that receives the browser sign-in1491### Couldn't start the local listener that receives the browser sign-in

1445 1492 

1446Masing-masing pesan ini dari `/login`, `claude auth login`, atau `claude setup-token` berarti Claude Code tidak dapat membuka port di `127.0.0.1` tempat browser Anda mengembalikan hasil masuk.1493Masing-masing pesan ini dari `/login`, `claude auth login`, atau `claude setup-token` berarti Claude Code tidak dapat membuka port di `127.0.0.1` tempat browser Anda mengembalikan hasil masuk.


2420Image was too large. Double press esc to go back and try again with a smaller image.2467Image was too large. Double press esc to go back and try again with a smaller image.

2421API Error: 400 ... image dimensions exceed max allowed size2468API Error: 400 ... image dimensions exceed max allowed size

2422API Error: an image in the conversation could not be processed and was removed.2469API Error: an image in the conversation could not be processed and was removed.

2470An image in the conversation exceeds the dimension limit for many-image requests (3000px). Run /compact to remove old images from context, or start a new session.

2423```2471```

2424 2472 

2425Baris `could not be processed and was removed` berarti API menolak sebuah gambar dalam percakapan, seperti gambar yang melewati batas ukuran atau dimensi.2473Baris `could not be processed and was removed` berarti API menolak sebuah gambar dalam percakapan, seperti gambar yang melewati batas ukuran atau dimensi.


2434 2482 

2435* 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.2483* 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.

2436* Ambil tangkapan layar lebih ketat dari wilayah yang relevan bukan layar penuh2484* Ambil tangkapan layar lebih ketat dari wilayah yang relevan bukan layar penuh

2485* Untuk pesan `dimension limit for many-image requests`, jalankan `/compact` di prompt Claude Code jika pesan menyebutkannya, atau mulai sesi baru dengan lebih sedikit gambar

2486 

2487Pesan `dimension limit for many-image requests` menampilkan batas piksel yang disebutkan dalam kesalahan API.

2437 2488 

2438### Tidak dapat mengubah ukuran gambar2489### Tidak dapat mengubah ukuran gambar

2439 2490 


3223 3274 

3224* Arahkan `--settings` ke file pengaturan JSON biasa yang berukuran di bawah 2 MiB. Lihat [Pengaturan](https://code.claude.com/docs/id/settings.md) untuk formatnya.3275* Arahkan `--settings` ke file pengaturan JSON biasa yang berukuran di bawah 2 MiB. Lihat [Pengaturan](https://code.claude.com/docs/id/settings.md) untuk formatnya.

3225 3276 

3277### Configuration error in \~/.claude.json

3278 

3279Claude Code tidak dapat mem-parse `~/.claude.json`, file yang menyimpan detail akun, server MCP, dan status per proyek Anda. File Anda tidak berubah. Startup [non-interaktif](https://code.claude.com/docs/id/headless.md) seperti `claude -p` keluar dengan exit code 1 setiap kali hingga Anda memperbaiki file tersebut.

3280 

3281Ketika Claude Code menemukan [cadangan](https://code.claude.com/docs/id/claude-directory.md#cleaned-up-automatically), output menyebutkannya dan mencetak baris `cp` yang menyalinnya kembali:

3282 

3283```text wrap theme={null}

3284Claude configuration file at /home/user/.claude.json is corrupted: <JSON parser's message>

3285The corrupted file has been backed up to: /home/user/.claude/backups/.claude.json.corrupted.1793664000000

3286A backup file exists at: /home/user/.claude/backups/.claude.json.backup.1793660400000

3287You can manually restore it by running: cp -f "/home/user/.claude/backups/.claude.json.backup.1793660400000" "/home/user/.claude.json"

3288 

3289Configuration error in /home/user/.claude.json: <JSON parser's message>

3290```

3291 

3292**Yang perlu dilakukan:**

3293 

3294* **Output memiliki baris `cp`**: jalankan baris tersebut di terminal Anda. Di Windows, jalankan di PowerShell. Baris itu mengganti file yang rusak dengan cadangan, yaitu versi sebelumnya dari `~/.claude.json`.

3295* **Output tidak memiliki baris `cp`, atau error muncul kembali setelah Anda menjalankannya**: perbaiki JSON di `~/.claude.json`, salin file `.claude.json.backup.<timestamp>` lain dari [`~/.claude/backups/`](https://code.claude.com/docs/id/claude-directory#cleaned-up-automatically) untuk menimpanya jika ada, atau ganti namanya. Tanpa file di `~/.claude.json`, Claude Code dimulai dengan pengaturan default dan tanpa apa pun yang sebelumnya disimpan file tersebut.

3296 

3297Sebelum v2.1.318, Anda mendapati nilai default di `~/.claude.json` setelah startup non-interaktif mencetak error ini, sehingga startup berikutnya berjalan tanpa konfigurasi Anda.

3298 

3299### Claude configuration file was empty and no backup holds anything

3300 

3301Pesan ini saat startup berarti file yang disebutkannya kosong dan tidak ada [salinan `.backup`](https://code.claude.com/docs/id/claude-directory#cleaned-up-automatically) dari file tersebut yang berisi apa pun. Claude Code dimulai dengan nilai default untuk apa yang disimpan file tersebut. File `settings.json` dan `.mcp.json` Anda adalah file terpisah.

3302 

3303```text wrap theme={null}

3304Claude configuration file at /home/user/.claude.json was empty and no backup holds anything: starting with defaults.

3305```

3306 

3307**Yang perlu dilakukan:**

3308 

3309* Siapkan kembali apa yang telah Anda konfigurasikan di file tersebut. Misalnya, tambahkan [server MCP](https://code.claude.com/docs/id/mcp.md#mcp-installation-scopes) cakupan `user` dan `local` Anda dengan `claude mcp add` dari terminal.

3310* Masuk kembali jika Claude Code memintanya

3311 

3312Sebelum v2.1.318, Claude Code melaporkan file kosong tanpa cadangan sebagai [rusak](#configuration-error-in-claude-json).

3313 

3226### Direktori saat ini sudah tidak ada3314### Direktori saat ini sudah tidak ada

3227 3315 

3228Anda memulai `claude` dari direktori yang dihapus atau dipindahkan setelah shell Anda memasukinya, misalnya worktree atau direktori sementara yang dihapus oleh shell lain. Claude Code tidak dapat membaca direktori kerjanya, sehingga keluar dengan kode 1 sebelum memulai sesi, baik dalam mode interaktif maupun [non-interaktif](https://code.claude.com/docs/id/headless.md). Sebelum v2.1.239, Claude Code mengalami crash dengan sumber bundle yang diminifikasi dan stack `ENOENT ... uv_cwd` mentah di stderr alih-alih pesan ini.3316Anda memulai `claude` dari direktori yang dihapus atau dipindahkan setelah shell Anda memasukinya, misalnya worktree atau direktori sementara yang dihapus oleh shell lain. Claude Code tidak dapat membaca direktori kerjanya, sehingga keluar dengan kode 1 sebelum memulai sesi, baik dalam mode interaktif maupun [non-interaktif](https://code.claude.com/docs/id/headless.md). Sebelum v2.1.239, Claude Code mengalami crash dengan sumber bundle yang diminifikasi dan stack `ENOENT ... uv_cwd` mentah di stderr alih-alih pesan ini.


3334* **`Error: Workspace not trusted. <folder> is your home directory`**: karena kepercayaan untuk direktori home Anda tidak pernah disimpan, menjalankan `claude` di sana terlebih dahulu tidak dapat membantu. Jalankan `claude ultrareview` dari direktori proyek sebagai gantinya, setelah menjalankan `claude` di sana sekali untuk menerima dialog kepercayaan, atau tambahkan `--trust-workspace`.3422* **`Error: Workspace not trusted. <folder> is your home directory`**: karena kepercayaan untuk direktori home Anda tidak pernah disimpan, menjalankan `claude` di sana terlebih dahulu tidak dapat membantu. Jalankan `claude ultrareview` dari direktori proyek sebagai gantinya, setelah menjalankan `claude` di sana sekali untuk menerima dialog kepercayaan, atau tambahkan `--trust-workspace`.

3335* **`No answer in time.` diikuti `Error: Workspace not trusted`**: pertanyaan `Trust <folder>? [y/N]` tidak dijawab selama 5 menit. Jalankan `claude ultrareview` lagi dan jawab pertanyaan tersebut.3423* **`No answer in time.` diikuti `Error: Workspace not trusted`**: pertanyaan `Trust <folder>? [y/N]` tidak dijawab selama 5 menit. Jalankan `claude ultrareview` lagi dan jawab pertanyaan tersebut.

3336* **`Ultrareview did not start: <folder> is not trusted`**: Anda menolak pada pertanyaan `Trust <folder>? [y/N]`, misalnya dengan menjawab `n` atau menekan Enter. Untuk memulai review, jalankan `claude ultrareview` lagi dan jawab `y`.3424* **`Ultrareview did not start: <folder> is not trusted`**: Anda menolak pada pertanyaan `Trust <folder>? [y/N]`, misalnya dengan menjawab `n` atau menekan Enter. Untuk memulai review, jalankan `claude ultrareview` lagi dan jawab `y`.

3337* **``Ultrareview did not start: `--trust-workspace` takes no value``**: sesuatu selain flag mengikuti `--trust-workspace`, seperti nomor PR atau `false`. Jika Anda tidak memercayai folder tersebut, jangan gunakan flag tersebut. Untuk memercayainya untuk run ini, letakkan nomor PR atau branch dasar sebelum flag: `claude ultrareview 1234 --trust-workspace`.3425* **``Ultrareview did not start: `--trust-workspace` takes no value``**: sesuatu selain flag mengikuti `--trust-workspace`, seperti nomor PR atau `false`. Jika Anda tidak memercayai folder tersebut, hilangkan flag-nya. Untuk memercayainya untuk eksekusi ini, letakkan nomor PR atau base branch sebelum flag: `claude ultrareview 1234 --trust-workspace`.

3338 3426 

3339Sebelum v2.1.309, `claude ultrareview` tidak menerima `--trust-workspace`.3427Sebelum v2.1.309, `claude ultrareview` tidak menerima `--trust-workspace`.

3340 3428 


3626 3714 

3627String serupa muncul sebelum perintah dijalankan sama sekali:3715String serupa muncul sebelum perintah dijalankan sama sekali:

3628 3716 

3629* `Shell command permission check failed for pattern "..."`: pemeriksaan izin perintah tidak mengizinkannya. [Pemeriksaan izin pada perintah yang disisipkan](https://code.claude.com/docs/id/skills.md#permission-checks-on-injected-commands) membahas hasil mana yang membatalkan di setiap mode izin dan cara menyetujui perintah terlebih dahulu dengan `allowed-tools`3717* `Shell command permission check failed for pattern "..."`: pemeriksaan izin perintah tidak mengizinkannya. [Pemeriksaan izin pada perintah yang disisipkan](https://code.claude.com/docs/id/skills.md#permission-checks-on-injected-commands) menjelaskan hasil mana yang membatalkan di setiap mode izin dan cara menyetujui perintah terlebih dahulu dengan `allowed-tools`

3630* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: frontmatter skill mensyaratkan bash pada mesin yang tidak memilikinya. Instal Git for Windows atau ubah frontmatter menjadi `shell: powershell`. Lihat [Cara perintah yang disisipkan dijalankan](https://code.claude.com/docs/id/skills.md#how-injected-commands-run)3718* ``Skill <name> requires bash (`shell: bash` in frontmatter) but Git Bash was not found``: frontmatter skill mewajibkan bash pada mesin yang tidak memilikinya. Instal Git for Windows atau ubah frontmatter menjadi `shell: powershell`. Lihat [Cara perintah yang disisipkan dijalankan](https://code.claude.com/docs/id/skills.md#how-injected-commands-run)

3631 3719 

3632**Yang perlu dilakukan:**3720**Yang perlu dilakukan:**

3633 3721 


3780 3868 

3781* **Anda tidak memberikan branch dasar**: Claude Code membandingkan dengan branch default repositori dan menyarankan untuk memberikan branch dasar Anda secara eksplisit, seperti pada contoh di atas3869* **Anda tidak memberikan branch dasar**: Claude Code membandingkan dengan branch default repositori dan menyarankan untuk memberikan branch dasar Anda secara eksplisit, seperti pada contoh di atas

3782* **Anda memberikan branch dasar yang sudah ada di clone Anda**: petunjuknya berbunyi ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``3870* **Anda memberikan branch dasar yang sudah ada di clone Anda**: petunjuknya berbunyi ``Make sure <branch> exists locally or on origin (try `git fetch origin <branch>`)``

3783* **Anda memberikan branch dasar yang tidak ada di clone Anda**: Claude Code mengambilnya dari origin sebelum membandingkan. Petunjuknya berbunyi ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; ketika Claude Code tidak dapat memastikan apakah clone Anda dangkal (shallow), Claude Code menyarankan `git fetch --unshallow origin` sebagai gantinya. Sebelum v2.1.221, petunjuk tersebut menyarankan `git fetch --unshallow origin` untuk setiap branch dasar yang diambil, dan pada clone yang lengkap perintah tersebut gagal dengan `fatal: --unshallow on a complete repository does not make sense`.3871* **Anda memberikan branch dasar yang tidak ada di clone Anda**: Claude Code mengambilnya dari origin sebelum membandingkan. Petunjuknya berbunyi ``<branch> was fetched from origin but shares no history with HEAD. If another branch is your real base, pass it explicitly (`/code-review ultra <branch>`)``; ketika Claude Code tidak dapat memastikan apakah clone Anda dangkal (shallow), Claude Code menyarankan `git fetch --unshallow origin` sebagai gantinya. Sebelum v2.1.221, petunjuk menyarankan `git fetch --unshallow origin` untuk setiap branch dasar yang diambil, dan pada clone yang lengkap perintah tersebut gagal dengan `fatal: --unshallow on a complete repository does not make sense`.

3784 3872 

3785**Yang perlu dilakukan:**3873**Yang perlu dilakukan:**

3786 3874 


4666* **Untuk perintah yang ditulis Claude**: tidak ada yang perlu Anda perbaiki. Pesan tersebut memberi tahu Claude cara menulis ulang perintah.4754* **Untuk perintah yang ditulis Claude**: tidak ada yang perlu Anda perbaiki. Pesan tersebut memberi tahu Claude cara menulis ulang perintah.

4667* **Untuk file skill atau perintah**: pesan muncul setelah `No shell command in <name> was run`. Lihat [tempat menemukan karakter tersebut dan menghapusnya](#no-shell-command-was-run).4755* **Untuk file skill atau perintah**: pesan muncul setelah `No shell command in <name> was run`. Lihat [tempat menemukan karakter tersebut dan menghapusnya](#no-shell-command-was-run).

4668 4756 

4757### Command approved before Claude Code restarted was not run

4758 

4759Perintah shell yang Anda setujui tidak berjalan, dan Claude menerima pesan ini sebagai hasil perintah tersebut:

4760 

4761```text wrap theme={null}

4762This call was not run. The command was approved before Claude Code restarted, and Claude Code could not confirm that the shell is back in the directory where it was approved. That directory may be gone or replaced, lie outside the directory where the session started, or be one that Claude Code needs approval to enter or is not allowed to examine. The shell's directory is <directory>. If the command still makes sense, cd to the directory it was meant for and make the call again; it may need approval again.

4763```

4764 

4765Kalimat ketiga pesan tersebut dapat berbunyi `It does not keep track of that directory across a restart in a session that has been in a worktree.` sebagai gantinya.

4766 

4767**What to do:**

4768 

4769* Biarkan Claude melanjutkan, dan jawab prompt jika Anda diminta untuk menyetujui perintah tersebut lagi.

4770 

4669### File is too large to read as an image4771### File is too large to read as an image

4670 4772 

4671Claude mencoba membaca file sebagai gambar dengan [tool Read](https://code.claude.com/docs/id/tools-reference.md#read-tool-behavior), dan file tersebut lebih besar dari 128 MB, ukuran maksimum yang dimuat Read dari file gambar. Tidak ada yang dibaca, dan Claude menerima kesalahan ini sebagai hasil tool:4773Claude mencoba membaca file sebagai gambar dengan [tool Read](https://code.claude.com/docs/id/tools-reference.md#read-tool-behavior), dan file tersebut lebih besar dari 128 MB, ukuran maksimum yang dimuat Read dari file gambar. Tidak ada yang dibaca, dan Claude menerima kesalahan ini sebagai hasil tool:


5818 5920 

5819### Pengaturan yang dikelola jarak jauh gagal dimuat5921### Pengaturan yang dikelola jarak jauh gagal dimuat

5820 5922 

5821Sesi Anda memenuhi syarat untuk [server-managed settings](https://code.claude.com/docs/id/server-managed-settings.md), tetapi Claude Code tidak dapat mengambilnya atau tidak dapat menerapkan apa yang dikembalikan server, jadi menampilkan peringatan ini dalam sesi interaktif.5923Sesi Anda memenuhi syarat untuk [server-managed settings](https://code.claude.com/docs/id/server-managed-settings.md), tetapi Claude Code tidak dapat mengambilnya atau tidak dapat menerapkan apa yang dikembalikan server, jadi menampilkan peringatan ini dalam sesi interaktif dan di tab Code Claude Desktop.

5822 5924 

5823Penyebab dalam tanda kurung menyebutkan apa yang gagal, seperti `network error`, `request timed out`, atau `authentication rejected (401)`. Penyebab `no setting in the server response could be applied as written` berarti server menjawab tetapi tidak ada pengaturan yang dikembalikannya yang lulus [validation](https://code.claude.com/docs/id/server-managed-settings.md#invalid-entries-in-delivered-settings). Sebelum v2.1.282, penyebab ini berbunyi `server returned invalid settings`.5925Penyebab dalam tanda kurung menyebutkan apa yang gagal, seperti `network error`, `request timed out`, atau `authentication rejected (401)`. Penyebab `no setting in the server response could be applied as written` berarti server menjawab tetapi tidak ada pengaturan yang dikembalikannya yang lulus [validation](https://code.claude.com/docs/id/server-managed-settings.md#invalid-entries-in-delivered-settings). Sebelum v2.1.282, penyebab ini berbunyi `server returned invalid settings`.

5824 5926 


5827* **Pengaturan di-cache dari pengambilan sebelumnya yang berhasil**: Claude Code menjalankan sesi pada kebijakan yang di-cache itu, kecuali [variabel lingkungan yang ditahan](https://code.claude.com/docs/id/server-managed-settings.md#fetch-and-caching-behavior), dan baris berbunyi `using cached policy`.5929* **Pengaturan di-cache dari pengambilan sebelumnya yang berhasil**: Claude Code menjalankan sesi pada kebijakan yang di-cache itu, kecuali [variabel lingkungan yang ditahan](https://code.claude.com/docs/id/server-managed-settings.md#fetch-and-caching-behavior), dan baris berbunyi `using cached policy`.

5828* **Tidak ada cache**: Claude Code menjalankan sesi tanpa server-managed settings, dan baris berbunyi `no remote policy applied`.5930* **Tidak ada cache**: Claude Code menjalankan sesi tanpa server-managed settings, dan baris berbunyi `no remote policy applied`.

5829 5931 

5932Di tab Code, peringatan muncul sebagai baris dalam percakapan ketika Anda mengirim pesan, dan baris baru muncul ketika status pengambilan berubah. Tiga pesan terkait muncul dengan cara yang sama:

5933 

5934* `Remote managed settings are still loading`: pengambilan masih berjalan ketika sesi dilanjutkan

5935* `Remote managed settings did not load`: pengambilan berakhir tanpa jawaban

5936* `Remote managed settings have now loaded`: pengaturan dimuat setelah salah satu peringatan ini, dan sisa baris mengatakan apakah kebijakan jarak jauh berlaku

5937 

5830**Yang harus dilakukan:**5938**Yang harus dilakukan:**

5831 5939 

5832* Bertindak atas penyebab yang dinamai pesan: untuk penyebab jaringan, periksa bahwa mesin ini dapat menjangkau `api.anthropic.com`; untuk penyebab autentikasi, periksa sign-in Anda dengan `/status`5940* Bertindak atas penyebab yang dinamai pesan: untuk penyebab jaringan, periksa bahwa mesin ini dapat menjangkau `api.anthropic.com`; untuk penyebab autentikasi, periksa sign-in Anda dengan `/status`


5835 5943 

5836Sebelum v2.1.248, Claude Code melaporkan pengambilan pengaturan yang gagal hanya dalam log debug.5944Sebelum v2.1.248, Claude Code melaporkan pengambilan pengaturan yang gagal hanya dalam log debug.

5837 5945 

5946### Claude Code tidak dapat memuat pengaturan organisasi Anda

5947 

5948Sesi Anda belum dimulai karena pengaturan organisasi Anda, termasuk [server-managed settings](https://code.claude.com/docs/id/server-managed-settings.md) miliknya, harus dimuat terlebih dahulu dan Claude Code tidak dapat memuatnya. Misalnya:

5949 

5950```text theme={null}

5951Claude Code couldn't reach Anthropic to load your organization's settings (could not connect). <Organization name> requires them before a session can start.

5952```

5953 

5954Jika pesan berada dalam dialog berjudul `Claude Code can't start this session yet`, dialog akan tertutup dan sesi dimulai segera setelah pengaturan dimuat.

5955 

5956Dalam [mode non-interaktif](https://code.claude.com/docs/id/headless.md) dan dalam [background sessions](https://code.claude.com/docs/id/agent-view.md), Claude Code mencetak pesan tersebut dan keluar dengan status 1 sebagai gantinya.

5957 

5958**Yang harus dilakukan:**

5959 

5960* **`could not connect`, atau `the reply came from a network proxy, not Anthropic`**: periksa koneksi jaringan Anda, dan pada jaringan perusahaan minta tim IT untuk mengizinkan HTTPS ke `api.anthropic.com/api/claude_code/policy_limits` dan `api.anthropic.com/api/claude_code/settings`. Kemudian pilih **Retry now**, atau jalankan perintah Anda lagi.

5961* **`timed out`, `Anthropic returned an error`, atau `Anthropic asked it to retry shortly`**: biarkan dialog mencoba ulang, atau jalankan perintah Anda lagi nanti. Periksa [status.anthropic.com](https://status.anthropic.com) jika hal ini terus terjadi.

5962* **`still loading`, atau `couldn't verify your sign-in with Anthropic yet`**: biarkan dialog mencoba ulang, atau jalankan perintah Anda lagi. Jika pesan sign-in terus muncul kembali, masuk lagi dengan menjalankan `claude auth login` di shell Anda.

5963* **`Your Claude session has expired`**: sign-in yang tersimpan di mesin ini tidak lagi valid, sehingga mencoba ulang tidak akan membantu. Dalam dialog, pilih **Sign in again** untuk menutup Claude Code; kemudian, di shell Anda, jalankan `claude auth login`, yang tetap berfungsi meskipun sesi tidak dapat dimulai.

5964* **`none of the settings the server returned could be applied as written`**: minta administrator Anda untuk memperbaiki [server-managed settings](https://code.claude.com/docs/id/server-managed-settings.md#invalid-entries-in-delivered-settings) organisasi, lalu coba lagi.

5965 

5838### Pengaturan yang dikelola tidak disetujui5966### Pengaturan yang dikelola tidak disetujui

5839 5967 

5840[Server-managed settings](https://code.claude.com/docs/id/server-managed-settings.md) organisasi Anda mencakup pengaturan yang memerlukan persetujuan Anda, dan Anda menolak [dialog persetujuan keamanan](https://code.claude.com/docs/id/server-managed-settings.md#security-approval-dialogs), jadi Claude Code keluar tanpa menerapkannya:5968[Server-managed settings](https://code.claude.com/docs/id/server-managed-settings.md) organisasi Anda mencakup pengaturan yang memerlukan persetujuan Anda, dan Anda menolak [dialog persetujuan keamanan](https://code.claude.com/docs/id/server-managed-settings.md#security-approval-dialogs), jadi Claude Code keluar tanpa menerapkannya:


6294 6422 

6295Sebelum v2.1.257, `claude doctor` tidak menandai file-file ini; versi-versi sebelumnya meninggalkan placeholder yang sama di belakang ketika sesi dibunuh.6423Sebelum v2.1.257, `claude doctor` tidak menandai file-file ini; versi-versi sebelumnya meninggalkan placeholder yang sama di belakang ketika sesi dibunuh.

6296 6424 

6425### Make this change again later: \~/.claude.json could not be updated

6426 

6427Pemberitahuan di stderr ini berarti sebuah perubahan pada [`~/.claude.json`](https://code.claude.com/docs/id/claude-directory#ce-claude-json), seperti sign-in atau jawaban atas prompt kepercayaan, tidak tersimpan ke file tersebut:

6428 

6429```text theme={null}

6430Make this change again later: /home/user/.claude.json could not be updated, so it applies to this session only.

6431```

6432 

6433**Yang harus dilakukan:**

6434 

6435* Lakukan perubahan tersebut lagi dalam sesi berikutnya. Misalnya, jalankan `/login` lagi atau jawab prompt kepercayaan lagi.

6436 

6297## Respons tampak berkualitas lebih rendah dari biasanya6437## Respons tampak berkualitas lebih rendah dari biasanya

6298 6438 

6299Jika jawaban Claude tampak kurang mampu dari yang Anda harapkan tetapi tidak ada kesalahan yang ditampilkan, penyebabnya biasanya adalah status percakapan daripada model itu sendiri. Claude Code tidak secara diam-diam mengubah versi model. Ini dapat beralih ke model fallback dalam kasus-kasus berikut:6439Jika jawaban Claude tampak kurang mampu dari yang Anda harapkan tetapi tidak ada kesalahan yang ditampilkan, penyebabnya biasanya adalah status percakapan daripada model itu sendiri. Claude Code tidak secara diam-diam mengubah versi model. Ini dapat beralih ke model fallback dalam kasus-kasus berikut:

headless.md +3 −1

Details

48 48 

49Dalam bare mode, Claude Code tidak pernah membaca kredensial OAuth atau keychain sistem. Untuk Anthropic API, atur `ANTHROPIC_API_KEY` di lingkungan, dengan kunci yang dibuat di [Claude Console](https://platform.claude.com), atau berikan `apiKeyHelper` di JSON `--settings`. Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry terus membaca kredensial penyedia mereka sendiri seperti biasanya.49Dalam bare mode, Claude Code tidak pernah membaca kredensial OAuth atau keychain sistem. Untuk Anthropic API, atur `ANTHROPIC_API_KEY` di lingkungan, dengan kunci yang dibuat di [Claude Console](https://platform.claude.com), atau berikan `apiKeyHelper` di JSON `--settings`. Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry terus membaca kredensial penyedia mereka sendiri seperti biasanya.

50 50 

51Dalam bare mode Claude memiliki akses ke tool Bash, pembacaan file, dan pengeditan file. Berikan konteks apa pun yang Anda butuhkan dengan flag:51Dalam bare mode Claude memiliki akses ke tool Bash, pembacaan file, dan pengeditan file. Berikan konteks yang Anda butuhkan dengan flag:

52 52 

53| Untuk memuat | Gunakan |53| Untuk memuat | Gunakan |

54| - | - |54| - | - |


58| [Agent kustom](https://code.claude.com/docs/id/sub-agents.md#choose-the-subagent-scope) | `--agents <file-or-json>` |58| [Agent kustom](https://code.claude.com/docs/id/sub-agents.md#choose-the-subagent-scope) | `--agents <file-or-json>` |

59| Plugin | `--plugin-dir <path>`, `--plugin-url <url>` |59| Plugin | `--plugin-dir <path>`, `--plugin-url <url>` |

60 60 

61Hook tetap tidak berjalan dalam bare mode ketika Anda meneruskannya dengan `--settings`, atau di [`hooks/hooks.json`](https://code.claude.com/docs/id/plugins/components#hooks) atau [kunci manifest `hooks`](https://code.claude.com/docs/id/plugins/manifest-reference#hooks) dari plugin yang Anda muat dengan flag. Jangan gunakan bare mode untuk eksekusi yang memerlukannya.

62 

61Bare mode juga membatasi apa yang terjadi selama sesi berjalan:63Bare mode juga membatasi apa yang terjadi selama sesi berjalan:

62 64 

63* **Server MCP**: hanya server yang diberikan di baris perintah yang terhubung, misalnya dengan `--mcp-config`. Dalam sesi interaktif, Claude Code juga melewati koneksi IDE otomatis kecuali Anda meneruskan `--ide`.65* **Server MCP**: hanya server yang diberikan di baris perintah yang terhubung, misalnya dengan `--mcp-config`. Dalam sesi interaktif, Claude Code juga melewati koneksi IDE otomatis kecuali Anda meneruskan `--ide`.

Details

96Jangan pernah edit migrasi setelah di-merge. Tambahkan migrasi baru sebagai gantinya.96Jangan pernah edit migrasi setelah di-merge. Tambahkan migrasi baru sebagai gantinya.

97```97```

98 98 

99Ketika Anda memulai Claude dari `packages/api/`, itu memuat baik `packages/api/CLAUDE.md` dan root `CLAUDE.md`. Claude melihat instruksi lokal bersama aturan repository-wide, tanpa instruksi dari `packages/web/` dalam konteks. Hal yang sama berlaku untuk subdirektori apa pun dalam pohon non-monorepo. Untuk mengonfirmasi file mana yang dimuat, jalankan `/context` dan periksa daftar di bawah **Memory files**.99Ketika Anda memulai Claude dari `packages/api/`, itu memuat baik `packages/api/CLAUDE.md` dan root `CLAUDE.md`. Claude melihat instruksi lokal bersama aturan repository-wide, tanpa instruksi dari `packages/web/` dalam konteks. Hal yang sama berlaku untuk subdirektori apa pun dalam pohon non-monorepo. Untuk mengonfirmasi file mana yang dimuat, jalankan [`/context all`](https://code.claude.com/docs/id/commands#all-commands) dan periksa daftar di bawah **Memory files**.

100 100 

101Beberapa cara untuk menjaga file tetap terkini seiring dengan perubahan codebase dan model:101Beberapa cara untuk menjaga file tetap terkini seiring dengan perubahan codebase dan model:

102 102 

memory.md +6 −4

Details

67 67 

68### Siapkan CLAUDE.md proyek68### Siapkan CLAUDE.md proyek

69 69 

70CLAUDE.md proyek dapat disimpan di `./CLAUDE.md` atau `./.claude/CLAUDE.md`. Buat file ini dan tambahkan instruksi yang berlaku untuk siapa pun yang bekerja pada proyek: perintah build dan test, standar pengkodean, keputusan arsitektur, konvensi penamaan, dan alur kerja umum. Instruksi ini dibagikan dengan tim Anda melalui kontrol versi, jadi fokus pada standar tingkat proyek daripada preferensi pribadi. Untuk mengonfirmasi file dimuat, jalankan `/context` dalam sesi dan periksa daftar di bawah **Memory files**.70CLAUDE.md proyek dapat disimpan di `./CLAUDE.md` atau `./.claude/CLAUDE.md`. Buat file ini dan tambahkan instruksi yang berlaku untuk siapa pun yang bekerja pada proyek: perintah build dan test, standar pengkodean, keputusan arsitektur, konvensi penamaan, dan alur kerja umum. Instruksi ini dibagikan dengan tim Anda melalui kontrol versi, jadi fokus pada standar tingkat proyek daripada preferensi pribadi.

71 

72Untuk mengonfirmasi file dimuat, jalankan [`/context all`](https://code.claude.com/docs/id/commands#all-commands) dalam sesi dan periksa daftar di bawah **Memory files**. Dalam [mode layar penuh](https://code.claude.com/docs/id/fullscreen.md), `/context` saja menciutkan daftar tersebut.

71 73 

72> [!TIP]74> [!TIP]

73>75>


461* **Pengeditan**: Claude membaca `CLAUDE.md` melalui tautan, tetapi alat Edit dan Write [menolak untuk menulis melalui symlink](https://code.claude.com/docs/id/errors.md#refusing-after-a-symlink-changed), dan penolakan mengarahkan Claude untuk mengedit target tautan, `AGENTS.md`, sebagai gantinya463* **Pengeditan**: Claude membaca `CLAUDE.md` melalui tautan, tetapi alat Edit dan Write [menolak untuk menulis melalui symlink](https://code.claude.com/docs/id/errors.md#refusing-after-a-symlink-changed), dan penolakan mengarahkan Claude untuk mengedit target tautan, `AGENTS.md`, sebagai gantinya

462* **Windows**: jika Anda atau siapa pun yang mengkloning repositori bekerja di Windows, gunakan impor `@AGENTS.md` sebagai gantinya. Membuat symlink di sana memerlukan hak istimewa Administrator atau Mode Pengembang, dan Git memeriksa symlink yang berkomitmen sebagai file teks biasa kecuali `core.symlinks` diaktifkan, yang meninggalkan klon itu dengan `CLAUDE.md` satu baris sebagai pengganti instruksi Anda464* **Windows**: jika Anda atau siapa pun yang mengkloning repositori bekerja di Windows, gunakan impor `@AGENTS.md` sebagai gantinya. Membuat symlink di sana memerlukan hak istimewa Administrator atau Mode Pengembang, dan Git memeriksa symlink yang berkomitmen sebagai file teks biasa kecuali `core.symlinks` diaktifkan, yang meninggalkan klon itu dengan `CLAUDE.md` satu baris sebagai pengganti instruksi Anda

463 465 

464Dengan salah satu pendekatan, jalankan `/context` dalam sesi berikutnya Anda dan konfirmasi `CLAUDE.md` muncul di bawah **Memory files**.466Dengan salah satu pendekatan, jalankan `/context all` dalam sesi berikutnya Anda dan konfirmasi `CLAUDE.md` muncul di bawah **Memory files**.

465 467 

466### Migrate instructions from other tools468### Migrate instructions from other tools

467 469 


567 569 

568## Lihat dan edit dengan `/memory`570## Lihat dan edit dengan `/memory`

569 571 

570Perintah `/memory` mencantumkan file CLAUDE.md, CLAUDE.local.md, dan file memory lainnya di seluruh cakupan pengguna dan proyek, termasuk entri CLAUDE.md pengguna dan proyek untuk file yang belum ada. Ini juga memungkinkan Anda mengalihkan auto memory aktif atau mati dan menyediakan opsi untuk membuka folder auto memory. Pilih file apa pun untuk membukanya di editor Anda; memilih file yang belum ada akan membuatnya terlebih dahulu. Untuk memeriksa file `CLAUDE.md` dan file aturan mana yang dimuat saat peluncuran, jalankan `/context`.572Perintah `/memory` mencantumkan lokasi file CLAUDE.md, CLAUDE.local.md, dan file memori lainnya di seluruh cakupan pengguna dan proyek. Daftar tersebut mencakup entri CLAUDE.md pengguna dan proyek untuk file yang belum ada. Perintah ini juga memungkinkan Anda mengalihkan auto memory aktif atau mati dan menyediakan opsi untuk membuka folder auto memory. Pilih file apa pun untuk membukanya di editor Anda; memilih file yang belum ada akan membuatnya terlebih dahulu.

571 573 

572Editor GUI seperti VS Code membuka file di jendela terpisah, dan Anda dapat terus menggunakan sesi saat file terbuka. Editor terminal seperti Vim mengambil alih terminal sampai Anda keluar.574Editor GUI seperti VS Code membuka file di jendela terpisah, dan Anda dapat terus menggunakan sesi saat file terbuka. Editor terminal seperti Vim mengambil alih terminal sampai Anda keluar.

573 575 


583 585 

584Untuk men-debug:586Untuk men-debug:

585 587 

586* Jalankan `/context` dan periksa daftar di bawah **Memory files** untuk memverifikasi file CLAUDE.md dan CLAUDE.local.md yang seharusnya dimuat saat peluncuran. Jika salah satunya tidak ada di sana, Claude tidak dapat melihatnya. Gunakan `/memory` untuk membuka dan mengedit file.588* Jalankan `/context all` dan periksa daftar di bawah **Memory files** untuk memverifikasi file CLAUDE.md dan CLAUDE.local.md yang seharusnya dimuat saat peluncuran. Jika salah satunya tidak ada di sana, Claude tidak dapat melihatnya. Gunakan `/memory` untuk membuka dan mengedit file.

587* Jika pemberitahuan `Instruction file not loaded` muncul, lihat [apa artinya dan apa yang harus dilakukan](https://code.claude.com/docs/id/errors.md#instruction-file-not-loaded).589* Jika pemberitahuan `Instruction file not loaded` muncul, lihat [apa artinya dan apa yang harus dilakukan](https://code.claude.com/docs/id/errors.md#instruction-file-not-loaded).

588* `CLAUDE.md` di subdirektori dari direktori kerja Anda tidak muncul di bawah **Memory files**, karena file tersebut dimuat sesuai kebutuhan, bukan saat peluncuran. Saat dimuat, baris `Loaded` beserta jalurnya muncul di terminal. Untuk menguji file baru, buat file tersebut dari shell Anda alih-alih meminta Claude menulisnya, lalu minta Claude membaca file di subdirektori tersebut.590* `CLAUDE.md` di subdirektori dari direktori kerja Anda tidak muncul di bawah **Memory files**, karena file tersebut dimuat sesuai kebutuhan, bukan saat peluncuran. Saat dimuat, baris `Loaded` beserta jalurnya muncul di terminal. Untuk menguji file baru, buat file tersebut dari shell Anda alih-alih meminta Claude menulisnya, lalu minta Claude membaca file di subdirektori tersebut.

589* Periksa bahwa CLAUDE.md yang relevan berada di lokasi yang dimuat untuk sesi Anda (lihat [Choose where to put CLAUDE.md files](#choose-where-to-put-claude-md-files)).591* Periksa bahwa CLAUDE.md yang relevan berada di lokasi yang dimuat untuk sesi Anda (lihat [Choose where to put CLAUDE.md files](#choose-where-to-put-claude-md-files)).

Details

245>245>

246> **Sebagai default**: atur `defaultMode` dalam [pengaturan](https://code.claude.com/docs/id/settings.md#where-settings-live). Aplikasi desktop membaca file pengaturan yang sama seperti CLI dan menerapkan mode izin ke sesi lokal baru.246> **Sebagai default**: atur `defaultMode` dalam [pengaturan](https://code.claude.com/docs/id/settings.md#where-settings-live). Aplikasi desktop membaca file pengaturan yang sama seperti CLI dan menerapkan mode izin ke sesi lokal baru.

247>247>

248> Mode yang Anda pilih di pemilih mode diingat per folder dan mengambil alih `defaultMode` untuk folder itu. Plan adalah pengecualian: memilihnya berlaku hanya untuk sesi saat ini.248> Mode yang Anda pilih di pemilih mode dalam sesi lokal diingat per folder dan mengambil alih `defaultMode` dalam pengaturan `.claude/` proyek. Sesi lokal baru masih dapat dimulai dalam `defaultMode` dari `~/.claude/settings.json` atau pengaturan terkelola, jadi periksa pemilih sebelum pesan pertama Anda. Jika Anda memilih Plan, pilihan itu berlaku hanya untuk sesi ini.

249>249>

250> Untuk di mana `defaultMode` ditempatkan dalam file pengaturan, lihat contoh di bawah [Mulai dalam mode izin yang berbeda](#start-in-a-different-mode).250> Untuk di mana `defaultMode` ditempatkan dalam file pengaturan, lihat contoh di bawah [Mulai dalam mode izin yang berbeda](#start-in-a-different-mode).

251 251 


372 372 

373* **Koneksi langsung ke Anthropic API**: dalam sesi terminal interaktif dan dalam sesi `-p`, Agent SDK, [ekstensi VS Code](https://code.claude.com/docs/id/vs-code.md), dan [aplikasi desktop](https://code.claude.com/docs/id/desktop.md), apa pun paket atau jenis akun Anda, seiring Anthropic meluncurkannya. Periksa jenis sesi Anda terhadap versi minimum Claude Code berikut:373* **Koneksi langsung ke Anthropic API**: dalam sesi terminal interaktif dan dalam sesi `-p`, Agent SDK, [ekstensi VS Code](https://code.claude.com/docs/id/vs-code.md), dan [aplikasi desktop](https://code.claude.com/docs/id/desktop.md), apa pun paket atau jenis akun Anda, seiring Anthropic meluncurkannya. Periksa jenis sesi Anda terhadap versi minimum Claude Code berikut:

374 * Dalam sesi terminal interaktif, meminta server memerlukan Claude Code v2.1.271 atau lebih baru pada paket Pro, Max, Ultra, dan Team. Pada paket Enterprise dan akun Claude API, sesi tersebut memerlukan v2.1.278 atau lebih baru.374 * Dalam sesi terminal interaktif, meminta server memerlukan Claude Code v2.1.271 atau lebih baru pada paket Pro, Max, Ultra, dan Team. Pada paket Enterprise dan akun Claude API, sesi tersebut memerlukan v2.1.278 atau lebih baru.

375 * Dalam sesi `-p`, Agent SDK, ekstensi VS Code, dan aplikasi desktop, meminta server memerlukan Claude Code v2.1.281 atau lebih baru375 * Dalam sesi `-p` dan ekstensi VS Code, meminta server memerlukan Claude Code v2.1.278 atau lebih baru

376 * Dalam sesi Agent SDK dan aplikasi desktop, meminta server memerlukan Claude Code v2.1.281 atau lebih baru

376 * Mulai v2.1.282, sesi yang [tidak mengambil feature flag](https://code.claude.com/docs/id/env-vars.md#features-that-need-feature-flag-fetching), misalnya karena Anda mematikan telemetri, meminta server secara default dalam jenis sesi apa pun377 * Mulai v2.1.282, sesi yang [tidak mengambil feature flag](https://code.claude.com/docs/id/env-vars.md#features-that-need-feature-flag-fetching), misalnya karena Anda mematikan telemetri, meminta server secara default dalam jenis sesi apa pun

377* **Penyedia cloud, atau gateway LLM atau proxy**: pada [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md), Amazon Bedrock, Agent Platform Google Cloud, dan Microsoft Foundry, dan kapan pun Anda mengarahkan `ANTHROPIC_BASE_URL` ke [gateway LLM atau proxy](https://code.claude.com/docs/id/llm-gateway), apa pun paket Anda. Meminta secara default memerlukan Claude Code v2.1.278 atau lebih baru.378* **Penyedia cloud, atau gateway LLM atau proxy**: pada [Claude Platform on AWS](https://code.claude.com/docs/id/claude-platform-on-aws.md), Amazon Bedrock, Agent Platform Google Cloud, dan Microsoft Foundry, dan kapan pun Anda mengarahkan `ANTHROPIC_BASE_URL` ke [gateway LLM atau proxy](https://code.claude.com/docs/id/llm-gateway), apa pun paket Anda. Meminta secara default memerlukan Claude Code v2.1.278 atau lebih baru.

378* **Sesi [gateway aplikasi Claude](https://code.claude.com/docs/id/claude-apps-gateway) yang masuk**: memerlukan Claude Code v2.1.280 atau lebih baru379* **Sesi [gateway aplikasi Claude](https://code.claude.com/docs/id/claude-apps-gateway) yang masuk**: memerlukan Claude Code v2.1.280 atau lebih baru

permissions.md +1 −1

Details

69 69 

70## Mode izin70## Mode izin

71 71 

72Claude Code mendukung beberapa mode izin yang mengontrol bagaimana alat disetujui. Lihat [Permission modes](https://code.claude.com/docs/id/permission-modes.md) untuk mengetahui kapan menggunakan masing-masing. Untuk mengubah mode yang dimulai sesi, atur `defaultMode` dalam [file pengaturan](https://code.claude.com/docs/id/settings.md#where-settings-live) Anda. [Mode mana yang dimulai sesi](https://code.claude.com/docs/id/permission-modes.md#which-mode-a-session-starts-in) mencakup default bawaan untuk setiap paket dan apa yang dibaca ekstensi VS Code.72Claude Code mendukung beberapa mode izin yang mengontrol cara Claude Code menyetujui panggilan tool. Lihat [Permission modes](https://code.claude.com/docs/id/permission-modes.md) untuk mengetahui kapan menggunakan masing-masing. Untuk mengubah mode izin default untuk sesi baru, atur `defaultMode` dalam [file pengaturan](https://code.claude.com/docs/id/settings.md#where-settings-live) Anda. [Mode mana yang dimulai sesi](https://code.claude.com/docs/id/permission-modes.md#which-mode-a-session-starts-in) mencakup default bawaan untuk setiap paket dan apa yang dibaca ekstensi VS Code.

73 73 

74| Mode | Deskripsi |74| Mode | Deskripsi |

75| :- | :- |75| :- | :- |

Details

571| :- | :- | :- |571| :- | :- | :- |

572| Hook commands | Di mana saja dalam `command` dan `args` | `CLAUDE_PLUGIN_ROOT`, `CLAUDE_PLUGIN_DATA`, `CLAUDE_PROJECT_DIR`, dan `CLAUDE_PLUGIN_OPTION_<KEY>` |572| Hook commands | Di mana saja dalam `command` dan `args` | `CLAUDE_PLUGIN_ROOT`, `CLAUDE_PLUGIN_DATA`, `CLAUDE_PROJECT_DIR`, dan `CLAUDE_PLUGIN_OPTION_<KEY>` |

573| Monitor commands | Di mana saja dalam `command` | Tidak diekspor |573| Monitor commands | Di mana saja dalam `command` | Tidak diekspor |

574| MCP `stdio` servers | `command`, `args`, `env` | `CLAUDE_PLUGIN_ROOT`, `CLAUDE_PLUGIN_DATA` |574| MCP `stdio` servers | `command`, `args`, `env` | `CLAUDE_PLUGIN_ROOT`, `CLAUDE_PLUGIN_DATA`, `CLAUDE_PROJECT_DIR` |

575| MCP `http`, `sse`, `ws` servers | `url`, `headers`, `headersHelper` | Tidak berlaku |575| MCP `http`, `sse`, `ws` servers | `url`, `headers`, `headersHelper` | Tidak berlaku |

576| LSP servers | `command`, `args`, `env`, `workspaceFolder` | `CLAUDE_PLUGIN_ROOT`, `CLAUDE_PLUGIN_DATA`, `CLAUDE_PROJECT_DIR` |576| LSP servers | `command`, `args`, `env`, `workspaceFolder` | `CLAUDE_PLUGIN_ROOT`, `CLAUDE_PLUGIN_DATA`, `CLAUDE_PROJECT_DIR` |

577| Skill, command, and agent content | Di mana saja dalam badan Markdown | Tidak berlaku |577| Skill, command, and agent content | Di mana saja dalam badan Markdown | Tidak berlaku |

Details

154| Event | Dipicu saat | Hook dapat mengembalikan |154| Event | Dipicu saat | Hook dapat mengembalikan |

155| :- | :- | :- |155| :- | :- | :- |

156| `agent.offer` | Sebuah tipe subagent ditawarkan kepada Claude | `{ isOffered: false }` untuk menahannya |156| `agent.offer` | Sebuah tipe subagent ditawarkan kepada Claude | `{ isOffered: false }` untuk menahannya |

157| `agent.spawn` | Sebuah subagent atau rekan tim dalam [tim agent](https://code.claude.com/docs/id/agent-teams.md) akan dimulai. Untuk rekan tim, `e.isTeammate` bernilai `true`. | `next({ ...e, model })` untuk memilih modelnya, atau `{ deny: reason }` |157| `agent.spawn` | Sebuah subagent atau rekan tim dalam [tim agent](https://code.claude.com/docs/id/agent-teams.md) akan dimulai, atau subagent yang telah selesai atau berhenti akan dijalankan lagi. Untuk rekan tim, `e.isTeammate` bernilai `true`. Untuk eksekusi yang dilanjutkan, `e.resume` diatur. | `next({ ...e, model })` untuk memilih model dari yang sedang dimulai, atau `{ deny: reason }` |

158 158 

159Saat Claude melanjutkan subagent dengan tool [`SendMessage`](https://code.claude.com/docs/id/sub-agents#resume-subagents), hook `agent.spawn` Anda tidak dijalankan lagi. Untuk menolak panggilan `SendMessage` yang melanjutkan subagent, cocokkan tool tersebut dalam hook [`tool.call`](https://code.claude.com/docs/id/plugins/mods/events#guard-or-change-a-tool-call).159Hook `agent.spawn` Anda juga dijalankan saat subagent yang telah selesai atau berhenti akan dijalankan lagi, seperti saat Claude mengirim pesan kepadanya dengan tool [`SendMessage`](https://code.claude.com/docs/id/sub-agents#resume-subagents). Pada event tersebut, `e.resume` adalah `{ agentId }`. Jika hook Anda menghitung subagent, lewati event yang `e.resume`-nya diatur, agar subagent yang dilanjutkan tidak dihitung lagi.

160 

161Kembalikan `{ deny: reason }` untuk menolak eksekusi yang dilanjutkan. Eksekusi tidak dimulai, dan subagent tetap seperti semula. Saat sebuah panggilan `SendMessage` yang meminta eksekusi tersebut, Claude membaca `a plugin declined the resume:` diikuti alasan Anda sebagai hasil panggilan tersebut. Jika Anda meneruskan event yang diubah ke `next` untuk eksekusi yang dilanjutkan, seperti `model` yang berbeda, Claude Code mengabaikan perubahan tersebut.

162 

163> [!NOTE]

164>

165> Event untuk eksekusi yang dilanjutkan memerlukan Claude Code v2.1.299 atau yang lebih baru. Sebelum v2.1.299, hook `agent.spawn` Anda tidak dijalankan saat subagent dilanjutkan. Pada versi tersebut, untuk menolak panggilan `SendMessage` yang melanjutkan subagent, cocokkan tool tersebut dalam hook [`tool.call`](https://code.claude.com/docs/id/plugins/mods/events#guard-or-change-a-tool-call).

160 166 

161### Antarmuka167### Antarmuka

162 168 

Details

502* Masalah jaringan atau proxy: firewall atau proxy dapat memblokir permintaan HTTPS keluar. Remote Control memerlukan akses ke Anthropic API di port 443.502* Masalah jaringan atau proxy: firewall atau proxy dapat memblokir permintaan HTTPS keluar. Remote Control memerlukan akses ke Anthropic API di port 443.

503* Pembuatan sesi gagal: jika Anda juga melihat `Session creation failed — see debug log`, kegagalan terjadi lebih awal dalam setup. Periksa bahwa langganan Anda aktif.503* Pembuatan sesi gagal: jika Anda juga melihat `Session creation failed — see debug log`, kegagalan terjadi lebih awal dalam setup. Periksa bahwa langganan Anda aktif.

504 504 

505### "working folder not found"

506 

507Di terminal yang menjalankan [`claude remote-control`](#start-a-remote-control-session), `Session failed: working folder not found:` yang diikuti oleh path dalam tanda kutip berarti sesi tidak dapat dimulai karena tidak ada folder di path tersebut.

508 

509* **Server masih berjalan**: pulihkan folder tersebut dan mulai sesi lagi, atau hentikan server

510* **Server telah keluar**: jalankan `claude remote-control` lagi dari folder yang ada

511 

512Sebelum v2.1.318, sesi yang gagal dengan cara ini menampilkan `Session failed: spawn error:` dan pesan `ENOENT` yang menyebutkan file program alih-alih folder yang hilang.

513 

514### "The program file this Remote Control started from is gone"

515 

516Peringatan ini di terminal yang menjalankan [`claude remote-control`](#start-a-remote-control-session) berarti file program tempat server dimulai telah hilang, dan sesi baru menjalankan versi lebih baru yang menggantikannya. Untuk memindahkan server ke versi tersebut juga, hentikan server dan jalankan `claude remote-control` lagi. Jika Claude Code diinstal di penyimpanan jaringan, mulai ulang server sekarang dan ikuti [Menginstal di penyimpanan jaringan](https://code.claude.com/docs/id/setup.md#install-on-network-storage). Jika tidak, sesi baru dimulai tanpa perlu memulai ulang.

517 

518Ketika file program hilang dan Claude Code tidak menemukan versi lebih baru untuk dijalankan, sesi baru gagal. Terminal menampilkan kesalahan seperti `Session failed: spawn error:` yang diikuti oleh pesan `ENOENT`. Hentikan server, [instal Claude Code](https://code.claude.com/docs/id/setup.md#install-claude-code) lagi jika `claude` tidak berjalan di shell Anda, dan jalankan `claude remote-control` lagi. Sebelum v2.1.318, sesi baru gagal dengan cara ini bahkan ketika versi yang lebih baru sudah terinstal.

519 

505### "Couldn't reconnect to your Remote Control session"520### "Couldn't reconnect to your Remote Control session"

506 521 

507Ketika Anda melanjutkan percakapan dengan `claude --resume` atau `claude --continue`, Claude Code terhubung kembali ke sesi Remote Control yang dicatat dalam percakapan itu. Pesan ini berarti penyambungan kembali gagal karena alasan yang mungkin bersifat sementara, seperti gangguan jaringan atau kesalahan server, jadi Claude Code tidak dapat mengkonfirmasi apakah sesi jarak jauh masih ada.522Ketika Anda melanjutkan percakapan dengan `claude --resume` atau `claude --continue`, Claude Code terhubung kembali ke sesi Remote Control yang dicatat dalam percakapan itu. Pesan ini berarti penyambungan kembali gagal karena alasan yang mungkin bersifat sementara, seperti gangguan jaringan atau kesalahan server, jadi Claude Code tidak dapat mengkonfirmasi apakah sesi jarak jauh masih ada.

sandboxing.md +59 −27

Details

71* **Overrides**: pilih apakah perintah yang gagal di bawah sandbox dapat kembali berjalan tanpa sandbox. Ini adalah pengaturan [`allowUnsandboxedCommands`](https://code.claude.com/docs/id/settings-reference#sandbox-allowunsandboxedcommands)71* **Overrides**: pilih apakah perintah yang gagal di bawah sandbox dapat kembali berjalan tanpa sandbox. Ini adalah pengaturan [`allowUnsandboxedCommands`](https://code.claude.com/docs/id/settings-reference#sandbox-allowunsandboxedcommands)

72* **Config**: lihat pengaturan sandbox yang telah diselesaikan72* **Config**: lihat pengaturan sandbox yang telah diselesaikan

73 73 

74Jika panel hanya menampilkan tab Dependencies, berarti ada paket wajib yang belum terpasang. Instal paket tersebut seperti yang dijelaskan di [Menyiapkan Linux dan WSL2](#set-up-linux-and-wsl2), mulai ulang Claude Code, lalu jalankan `/sandbox` lagi.74Jika panel hanya menampilkan tab Dependencies, sandbox belum dapat dimulai. Perbaiki apa yang dilaporkan tab tersebut seperti yang dijelaskan di [Menyiapkan Linux dan WSL2](#set-up-linux-and-wsl2), mulai ulang Claude Code, lalu jalankan `/sandbox` lagi.

75 75 

76**2. Pilih mode**76**2. Pilih mode**

77 77 


97 97 

98> [!WARNING]98> [!WARNING]

99>99>

100> Secara default, jika sandbox tidak dapat dimulai karena ada dependensi yang belum terpasang atau platform tidak didukung, Claude Code menjalankan perintah tanpa sandboxing. Agar Claude Code keluar saat startup, atur [`sandbox.failIfUnavailable`](https://code.claude.com/docs/id/settings-reference#sandbox-failifunavailable) ke `true`. Deployment terkelola yang mewajibkan sandboxing sebagai gerbang keamanan dapat menggunakan pengaturan ini.100> Secara default, ketika platform tidak mendukung sandbox atau pemeriksaan dependensi saat startup gagal, Claude Code menjalankan perintah tanpa sandboxing. Agar Claude Code keluar saat startup, atur [`sandbox.failIfUnavailable`](https://code.claude.com/docs/id/settings-reference#sandbox-failifunavailable) ke `true`. Deployment terkelola yang mewajibkan sandboxing sebagai gerbang keamanan dapat menggunakan pengaturan ini.

101 101 

102### Memastikan perintah berjalan di dalam sandbox102### Memastikan perintah berjalan di dalam sandbox

103 103 


135 135 

136Ripgrep sudah dibundel dengan binary native Claude Code. Filter seccomp bersifat opsional dan menambahkan pemblokiran Unix domain socket. Instal dengan `npm install -g @anthropic-ai/sandbox-runtime` jika belum terpasang.136Ripgrep sudah dibundel dengan binary native Claude Code. Filter seccomp bersifat opsional dan menambahkan pemblokiran Unix domain socket. Instal dengan `npm install -g @anthropic-ai/sandbox-runtime` jika belum terpasang.

137 137 

138Ketika dependensi wajib belum terpasang, tab Dependencies adalah satu-satunya tab yang ditampilkan hingga Anda menginstalnya. Ketika hanya filter seccomp opsional yang belum terpasang, tab Dependencies muncul bersama tab lainnya. Pemeriksaan dependensi berjalan saat startup, jadi mulai ulang Claude Code setelah menginstal paket agar `/sandbox` dapat mendeteksinya.138* **Dependencies adalah satu-satunya tab**: sandbox tidak dapat dimulai. Instal apa yang dicantumkan tab tersebut sebagai belum terpasang, atau jika tab tersebut melaporkan pembatasan AppArmor Ubuntu, [tambahkan profil AppArmor untuk bubblewrap](#add-an-apparmor-profile-for-bubblewrap)

139* **Dependencies muncul bersama tab lainnya**: tab tersebut mencantumkan item opsional yang belum terpasang, seperti filter seccomp. Sandbox dapat dimulai tanpanya, jadi instal item tersebut hanya jika Anda menginginkan apa yang ditambahkannya

139 140 

140> [accordion] Ubuntu 24.04 dan yang lebih baru: izinkan bubblewrap membuat user namespace141Pemeriksaan dependensi berjalan saat startup, jadi mulai ulang Claude Code setelah menginstal paket agar `/sandbox` dapat mendeteksinya.

141>

142> Di Ubuntu 24.04 dan yang lebih baru, kebijakan AppArmor default mencegah bubblewrap membuat user namespace yang dibutuhkannya untuk isolasi.

143>

144> Untuk memeriksa apakah lingkungan Anda menerapkan pembatasan ini, termasuk di dalam WSL2, jalankan `sysctl kernel.apparmor_restrict_unprivileged_userns`. Jika perintah mengembalikan `0`, lewati langkah ini. Jika perintah mencetak error `No such file or directory`, berarti key tersebut tidak ada dan Anda dapat melewati langkah ini. Jika mengembalikan `1`, tambahkan profil AppArmor yang memberikan kemampuan ini kepada `bwrap`:

145>

146> ```bash theme={null}

147> sudo tee /etc/apparmor.d/bwrap > /dev/null <<'EOF'

148> abi <abi/4.0>,

149> include <tunables/global>

150>

151> profile bwrap /usr/bin/bwrap flags=(unconfined) {

152> userns,

153> include if exists <local/bwrap>

154> }

155> EOF

156> ```

157>

158> Profil ini hanya berlaku untuk `bwrap` itu sendiri, bukan untuk perintah yang dijalankannya di dalam sandbox. Muat ulang AppArmor untuk menerapkannya:

159>

160> ```bash theme={null}

161> sudo systemctl reload apparmor

162> ```

163 142 

164> [accordion] Catatan WSL2143> [accordion] Catatan WSL2

165>144>


167>146>

168> Di WSL2, WSL menyerahkan peluncuran binary Windows seperti `cmd.exe`, `powershell.exe`, atau apa pun di bawah `/mnt/c/` ke host Windows melalui Unix socket, sehingga apakah perintah yang di-sandbox dapat meluncurkannya mengikuti [pengaturan Unix socket](https://code.claude.com/docs/id/settings-reference.md#sandbox-network-allowunixsockets) sandbox: filter seccomp opsional harus terinstal agar socket tersebut dapat diblokir sejak awal. Untuk mengizinkan peluncuran ini, atur `allowAllUnixSockets`, yang membuka setiap Unix socket bagi perintah yang di-sandbox.147> Di WSL2, WSL menyerahkan peluncuran binary Windows seperti `cmd.exe`, `powershell.exe`, atau apa pun di bawah `/mnt/c/` ke host Windows melalui Unix socket, sehingga apakah perintah yang di-sandbox dapat meluncurkannya mengikuti [pengaturan Unix socket](https://code.claude.com/docs/id/settings-reference.md#sandbox-network-allowunixsockets) sandbox: filter seccomp opsional harus terinstal agar socket tersebut dapat diblokir sejak awal. Untuk mengizinkan peluncuran ini, atur `allowAllUnixSockets`, yang membuka setiap Unix socket bagi perintah yang di-sandbox.

169 148 

149#### Menambahkan profil AppArmor untuk bubblewrap

150 

151Tambahkan profil ini jika Claude Code menjalankan `/usr/bin/bwrap` dan salah satu dari hal berikut terjadi:

152 

153* Claude Code [melaporkan pembatasan AppArmor Ubuntu pada user namespace](#apparmor-restriction-stops-bubblewrap)

154* Perintah yang di-sandbox gagal dengan `bwrap: setting up uid map: Permission denied` atau `bwrap: loopback: Failed RTM_NEWADDR: Operation not permitted` ketika [pembatasan tersebut aktif](#bwrap-uid-map-permission-denied)

155 

156Claude Code menjalankan `bwrap` pertama pada `PATH`, kecuali pengaturan terkelola menyebutkan salah satunya di [`sandbox.bwrapPath`](https://code.claude.com/docs/id/settings-reference#sandbox-bwrappath). Untuk melihat `bwrap` mana yang pertama, jalankan `which bwrap` di shell tempat Anda memulai Claude Code. Jika Claude Code menjalankan jalur apa pun selain `/usr/bin/bwrap`, [cabut pembatasan tersebut dengan `sysctl`](#apparmor-restriction-stops-bubblewrap) sebagai gantinya.

157 

158Untuk menambahkan profil untuk `/usr/bin/bwrap`, jalankan perintah ini:

159 

160```bash theme={null}

161sudo tee /etc/apparmor.d/bwrap > /dev/null <<'EOF'

162abi <abi/4.0>,

163include <tunables/global>

164 

165profile bwrap /usr/bin/bwrap flags=(unconfined) {

166 userns,

167 include if exists <local/bwrap>

168}

169EOF

170```

171 

172Muat ulang AppArmor untuk menerapkannya:

173 

174```bash theme={null}

175sudo systemctl reload apparmor

176```

177 

178Kemudian mulai ulang Claude Code dan [pastikan sandbox berfungsi](#confirm-commands-run-inside-the-sandbox).

179 

170### Mode sandbox180### Mode sandbox

171 181 

172Claude Code menawarkan dua mode sandbox. Pada keduanya, sandbox menerapkan pembatasan filesystem dan jaringan yang sama; perbedaannya hanya pada apakah perintah yang di-sandbox disetujui secara otomatis atau memerlukan izin eksplisit.182Claude Code menawarkan dua mode sandbox. Pada keduanya, sandbox menerapkan pembatasan filesystem dan jaringan yang sama; perbedaannya hanya pada apakah perintah yang di-sandbox disetujui secara otomatis atau memerlukan izin eksplisit.


716 726 

717Dua kunci di luar `enabled` mengontrol apa yang terjadi ketika sandbox tidak dapat menjalankan perintah:727Dua kunci di luar `enabled` mengontrol apa yang terjadi ketika sandbox tidak dapat menjalankan perintah:

718 728 

719* **`failIfUnavailable`**: dependensi yang hilang seperti bubblewrap di Linux memblokir Claude Code dari memulai alih-alih kembali ke eksekusi unsandboxed729* **`failIfUnavailable`**: ketika platform tidak mendukung sandbox atau pemeriksaan dependensi saat startup gagal, Claude Code menolak untuk memulai alih-alih kembali ke eksekusi unsandboxed

720* **`allowUnsandboxedCommands: false`**: Claude Code mengabaikan escape hatch `dangerouslyDisableSandbox`, sehingga ketika perintah gagal di bawah sandbox, Claude tidak dapat mencoba ulangnya tanpa sandbox730* **`allowUnsandboxedCommands: false`**: Claude Code mengabaikan escape hatch `dangerouslyDisableSandbox`, sehingga ketika perintah gagal di bawah sandbox, Claude tidak dapat mencoba ulangnya tanpa sandbox

721 731 

722Pertimbangkan penambahan berikut bersama keduanya:732Pertimbangkan penambahan berikut bersama keduanya:


902 912 

903Dalam container tanpa privilege, [bubblewrap](#os-level-enforcement) tidak dapat memasang filesystem `/proc` baru, sehingga perintah sandboxed gagal dengan kesalahan `bwrap` seperti `Can't mount proc on /newroot/proc: Operation not permitted`. Atur [`enableWeakerNestedSandbox`](https://code.claude.com/docs/id/settings-reference#sandbox-enableweakernestedsandbox) ke `true` sehingga sandbox melakukan bind-mount terhadap `/proc` yang sudah ada milik container sebagai gantinya. Hanya gunakan pengaturan ini ketika container luar sudah menyediakan batas isolasi yang Anda butuhkan, karena pengaturan ini mengekspos informasi proses ke perintah sandboxed yang akan disembunyikan oleh mount `/proc` baru.913Dalam container tanpa privilege, [bubblewrap](#os-level-enforcement) tidak dapat memasang filesystem `/proc` baru, sehingga perintah sandboxed gagal dengan kesalahan `bwrap` seperti `Can't mount proc on /newroot/proc: Operation not permitted`. Atur [`enableWeakerNestedSandbox`](https://code.claude.com/docs/id/settings-reference#sandbox-enableweakernestedsandbox) ke `true` sehingga sandbox melakukan bind-mount terhadap `/proc` yang sudah ada milik container sebagai gantinya. Hanya gunakan pengaturan ini ketika container luar sudah menyediakan batas isolasi yang Anda butuhkan, karena pengaturan ini mengekspos informasi proses ke perintah sandboxed yang akan disembunyikan oleh mount `/proc` baru.

904 914 

915### Pembatasan AppArmor milik Ubuntu menghentikan bubblewrap

916 

917Di Linux dan WSL2, pesan `Ubuntu's AppArmor restriction on user namespaces stops bubblewrap here` berarti bahwa pembatasan AppArmor milik Ubuntu mencegah sandbox dimulai.

918 

919Agar sandbox dapat dimulai, cabut pembatasan tersebut dengan salah satu dari dua cara berikut:

920 

921* [Tambahkan profil AppArmor untuk bubblewrap](#add-an-apparmor-profile-for-bubblewrap) jika Claude Code menjalankan `/usr/bin/bwrap`

922* Di shell Anda, jalankan `sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0`, yang mencabut pembatasan untuk setiap program di mesin dan berlaku hingga Anda melakukan reboot

923 

924Kemudian mulai ulang Claude Code dan [pastikan sandbox berfungsi](#confirm-commands-run-inside-the-sandbox).

925 

926Sampai Anda mencabut pembatasan tersebut, perintah berjalan tanpa sandbox di bawah alur izin reguler, atau Claude Code menolak untuk dimulai jika [`sandbox.failIfUnavailable`](https://code.claude.com/docs/id/settings-reference#sandbox-failifunavailable) bernilai `true`.

927 

928### Perintah sandboxed gagal dengan `bwrap: setting up uid map: Permission denied`

929 

930Di Linux dan WSL2, kesalahan ini atau `bwrap: loopback: Failed RTM_NEWADDR: Operation not permitted` dapat berarti bahwa pembatasan AppArmor milik Ubuntu pada user namespace menghentikan bubblewrap. Untuk memeriksanya, jalankan `sysctl kernel.apparmor_restrict_unprivileged_userns` di shell Anda:

931 

932* `kernel.apparmor_restrict_unprivileged_userns = 1`: pembatasan aktif. [Tambahkan profil AppArmor](#add-an-apparmor-profile-for-bubblewrap) jika Claude Code menjalankan `/usr/bin/bwrap`, atau jalankan `sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0`, yang mencabutnya untuk setiap program hingga Anda melakukan reboot. Kemudian mulai ulang Claude Code dan [pastikan sandbox berfungsi](#confirm-commands-run-inside-the-sandbox)

933* Output lainnya: pembatasan tersebut bukan penyebabnya. Untuk melaporkan kegagalan, jalankan [`/feedback`](https://code.claude.com/docs/id/commands#all-commands) di prompt Claude Code

934 

935Sebelum v2.1.310, Claude Code tidak memeriksa pembatasan ini saat dimulai, sehingga `/sandbox` tidak melaporkannya.

936 

905### File read-only 0-byte muncul di jalur pengaturan `.claude`, dan "Ya, dan jangan tanya lagi" tidak menyimpan937### File read-only 0-byte muncul di jalur pengaturan `.claude`, dan "Ya, dan jangan tanya lagi" tidak menyimpan

906 938 

907Di Linux dan WSL2, sandbox menahan penolakan penulisan pada file yang belum ada dengan membuat placeholder read-only 0-byte di sana sementara perintah sandboxed berjalan. Sandbox menghapus placeholder setelahnya.939Di Linux dan WSL2, sandbox menahan penolakan penulisan pada file yang belum ada dengan membuat placeholder read-only 0-byte di sana sementara perintah sandboxed berjalan. Sandbox menghapus placeholder setelahnya.

Details

472 472 

473Untuk mengonfirmasi bahwa trap berfungsi, tambahkan baris tepat di bawah baris `trap` yang memanggil perintah yang tidak ada, seperti `no-such-command`. Jalankan file hook dari shell Anda dan periksa bahwa `echo $?` mencetak `1`, lalu hapus baris tersebut.473Untuk mengonfirmasi bahwa trap berfungsi, tambahkan baris tepat di bawah baris `trap` yang memanggil perintah yang tidak ada, seperti `no-such-command`. Jalankan file hook dari shell Anda dan periksa bahwa `echo $?` mencetak `1`, lalu hapus baris tersebut.

474 474 

475#### Cari tahu mengapa permintaan pemijahan dikirim

476 

477Hook Anda menerima alasan setiap permintaan pemijahan di `CLAUDE_RUNNER_SPAWN_REASON`, sehingga Anda dapat mencatat mengapa hook berjalan, bersama dengan `CLAUDE_RUNNER_SESSION_UUID`. Memerlukan Claude Code v2.1.318 atau yang lebih baru di orchestrator. Baca variabel ini sebagai `"${CLAUDE_RUNNER_SPAWN_REASON:-}"`, karena variabel ini dapat tidak diatur, dan mulai runner apa pun nilainya. Jika hook Anda bercabang berdasarkan variabel ini, pertahankan cabang default, karena Anthropic dapat menambahkan nilai baru.

478 

479Untuk menemukan alasan permintaan sebelumnya, cari `session=` dan `CLAUDE_RUNNER_SESSION_UUID` milik sesi tersebut, bukan ID `session_...`-nya, di log setiap replika orchestrator. Baris `ok session=` dan `nack session=` menampilkan nilai `CLAUDE_RUNNER_SPAWN_REASON` setelah `reason=`, atau `reason=-` jika variabel tersebut tidak diatur:

480 

481* **`[runner:orchestrator] ok session=`**: hook keluar dengan 0

482* **`[runner:orchestrator] nack session=`**: orchestrator melaporkan permintaan pemijahan yang gagal ke Anthropic

483 

484Setiap nilai hanya memberikan penyebab terakhir yang dicatat Anthropic untuk sesi tersebut, bukan riwayatnya:

485 

486| Nilai | Apa yang terjadi | Apa yang perlu diperiksa |

487| :- | :- | :- |

488| `session_created` | Ini adalah permintaan pemijahan pertama untuk sesi baru | Tidak ada. Jangan mengandalkannya untuk mengenali permintaan pertama suatu sesi, karena permintaan pertama yang dilihat hook Anda dapat membawa `runner_lost` setelah runner fleet tetap atau runner standby memegang sesi tersebut. |

489| `no_runner_registered` | Tidak ada runner yang mendaftar untuk permintaan sebelumnya dalam `--expected-spawn-seconds`, dan Anthropic tidak mencatat laporan kegagalan untuknya | `stop: no nack for session=` atau `nack failed session=` di antara baris-baris sesi sebelumnya berarti tidak ada laporan kegagalan yang dicatat. Baca kesalahan hook apa pun sebelumnya, dan jika orchestrator sedang berhenti, lihat [Hentikan atau mulai ulang orchestrator](#stop-or-restart-the-orchestrator). Setelah baris `ok session=`, periksa bahwa runner-nya dimulai dan mendaftar dalam `--expected-spawn-seconds`. Jika tidak ada replika yang mencatat permintaan tersebut, periksa orchestrator Anda untuk restart dan baris `poll failed`. |

490| `hook_failed` | Orchestrator Anda melaporkan bahwa permintaan sebelumnya gagal dan dapat dicoba ulang, misalnya karena hook Anda keluar dengan 1 atau masih berjalan saat `--hook-timeout` berakhir. Nilainya sama ketika orchestrator Anda mengembalikan permintaan ke Anthropic tanpa menjalankan hook, misalnya saat orchestrator sedang berhenti. | Temukan baris `[runner:orchestrator] nack session=` atau `stop: handing back session=` terakhir milik sesi tersebut sebelum permintaan ini. Kesalahan pemijahan yang dikirim orchestrator mengikuti nilai `reason=` dan dapat berlanjut ke baris-baris berikutnya. Baris `handing back session=` berarti orchestrator sedang berhenti dan tidak menjalankan hook, sehingga tidak ada yang perlu diperbaiki pada hook. |

491| `runner_lost` | Runner yang memegang sesi berhenti melapor ke Anthropic, membatalkan pendaftaran, atau dihapus | Temukan apa yang menghentikan runner atau memutusnya dari Anthropic, seperti eviction node, kill karena kehabisan memori, spot reclaim, atau rollout atau scale-down Anda sendiri |

492| `runner_reported_failure` | Runner sebelumnya melaporkan bahwa sesi gagal di runner tersebut, misalnya saat checkout | Baca log runner sebelumnya. Jika banyak sesi mendapatkan nilai ini, periksa image dan penyiapan repositori. |

493| `resumed` | Sesi dijeda dan kini membutuhkan runner lagi. Misalnya, runner-nya melepaskan sesi tersebut karena [`--release-idle-session-min`](#make-on-demand-runners-exit-when-idle), lalu kemudian sesi menerima pesan baru. | Tidak ada |

494| `requeued` | Sesi dimasukkan kembali ke antrian, misalnya ketika Owner memilih **Retry** atau sesi yang diblokir menerima pesan baru | Jika sesi yang sama terus mendapatkan nilai ini, baca kesalahan di baris `nack session=`-nya. Jika hook-nya keluar dengan 0, baca log runner. |

495| `server_retry` | Anthropic menyerah pada permintaan sebelumnya atau pada memulai sesi di runner-nya, dan sedang mencoba ulang. Hook Anda tidak gagal. | Tidak ada untuk satu permintaan. Jika nilai ini terus muncul, pada satu sesi atau di banyak sesi, laporkan ke [tim akun Anthropic Anda](https://code.claude.com/docs/id/self-hosted-environments-deploy.md#report-an-issue). |

496| `prewarm` | Ini adalah permintaan pre-warming, belum ada sesi | Tidak ada |

497 

475### Hentikan atau mulai ulang orchestrator498### Hentikan atau mulai ulang orchestrator

476 499 

477Untuk menghentikan atau memulai ulang orchestrator tanpa memutus hook `spawn-runner` yang sedang berjalan, mulai orchestrator dengan [`--shutdown-drain-sec`](https://code.claude.com/docs/id/self-hosted-environments-reference#orchestrator-cli-flags). Saat menerima `SIGTERM`, orchestrator kemudian memberi hook yang sedang berjalan waktu hingga jumlah detik yang Anda atur untuk selesai. Untuk memilih nilainya dan menyiapkan process supervisor Anda agar sesuai, lihat [Tentukan ukuran `--shutdown-drain-sec` dan stop timeout orchestrator](#size-shutdown-drain-sec-and-the-supervisors-stop-timeout-for-the-orchestrator).500Untuk menghentikan atau memulai ulang orchestrator tanpa memutus hook `spawn-runner` yang sedang berjalan, mulai orchestrator dengan [`--shutdown-drain-sec`](https://code.claude.com/docs/id/self-hosted-environments-reference#orchestrator-cli-flags). Saat menerima `SIGTERM`, orchestrator kemudian memberi hook yang sedang berjalan waktu hingga jumlah detik yang Anda atur untuk selesai. Untuk memilih nilainya dan menyiapkan process supervisor Anda agar sesuai, lihat [Tentukan ukuran `--shutdown-drain-sec` dan stop timeout orchestrator](#size-shutdown-drain-sec-and-the-supervisors-stop-timeout-for-the-orchestrator).

Details

172 172 

173Klien yang masuk melalui [Claude apps gateway](#platform-availability) mengambil pengaturannya dari gateway dan menunggu pengambilan tersebut sebelum sesi dimulai, sehingga pengambilan dalam daftar di bawah tidak berlaku untuknya. [Menerapkan startup fail-closed](#enforce-fail-closed-startup) menjelaskan apa yang terjadi ketika pengambilan tersebut gagal.173Klien yang masuk melalui [Claude apps gateway](#platform-availability) mengambil pengaturannya dari gateway dan menunggu pengambilan tersebut sebelum sesi dimulai, sehingga pengambilan dalam daftar di bawah tidak berlaku untuknya. [Menerapkan startup fail-closed](#enforce-fail-closed-startup) menjelaskan apa yang terjadi ketika pengambilan tersebut gagal.

174 174 

175> [!NOTE]

176>

177> Pada login claude.ai Team atau Enterprise yang tersimpan di mesin, Anthropic dapat mewajibkan pengaturan organisasi Anda sebelum sesi dimulai. Ketika hal itu terjadi, apa pun yang dinyatakan dalam daftar di bawah, pengembang [tidak dapat memulai sesi](https://code.claude.com/docs/id/errors.md#couldnt-load-your-organizations-settings) dalam kasus seperti berikut:

178>

179> * Proses masuk mereka telah kedaluwarsa, hingga mereka menjalankan `claude auth login`

180> * Claude Code tidak memiliki pengaturan tersebut maupun salinan cache terbaru. Periksa apakah mesin dapat menjangkau `api.anthropic.com`

181>

182> Pesan startup yang berisi `before a session can start` atau `Your Claude session has expired` berarti persyaratan tersebut berlaku.

183 

175**Peluncuran pertama tanpa pengaturan yang di-cache:**184**Peluncuran pertama tanpa pengaturan yang di-cache:**

176 185 

177* Ketika pengembang masuk saat startup, misalnya pada eksekusi pertama atau setelah `/logout`, Claude Code menunggu hingga lima detik untuk pengambilan sebelum membuka sesi. Ketika kebijakan tiba tepat waktu, Claude Code menerapkannya sejak layar pertama dan menampilkan [`companyAnnouncements`](https://code.claude.com/docs/id/settings-reference#companyannouncements) Anda di sana. Ketika payload memerlukan [persetujuan keamanan](#security-approval-dialogs), Claude Code mengakhiri penantian dan menerapkan payload setelah pengembang menyetujuinya186* Ketika pengembang masuk saat startup, misalnya pada eksekusi pertama atau setelah `/logout`, Claude Code menunggu hingga lima detik untuk pengambilan sebelum membuka sesi. Ketika kebijakan tiba tepat waktu, Claude Code menerapkannya sejak layar pertama dan menampilkan [`companyAnnouncements`](https://code.claude.com/docs/id/settings-reference#companyannouncements) Anda di sana. Ketika payload memerlukan [persetujuan keamanan](#security-approval-dialogs), Claude Code mengakhiri penantian dan menerapkan payload setelah pengembang menyetujuinya

178* Pada startup lainnya, dan ketika penantian lima detik tersebut habis, Claude Code membuka sesi sementara pengambilan berlanjut, sehingga ada jeda singkat sebelum pengaturan dimuat dan pembatasan berlaku187* Pada startup lainnya, dan ketika penantian lima detik tersebut habis, Claude Code membuka sesi sementara pengambilan berlanjut, sehingga ada jeda singkat sebelum pengaturan dimuat dan pembatasan berlaku

179* Jika pengambilan gagal, Claude Code melanjutkan tanpa pengaturan yang dikelola server dan memperingatkan dalam sesi interaktif bahwa tidak ada kebijakan jarak jauh yang berlaku; pengaturan yang dikelola endpoint tetap berlaku. Jika sumber terkelola menetapkan [`forceRemoteSettingsRefresh`](#enforce-fail-closed-startup), Claude Code akan keluar188* Jika pengambilan gagal, Claude Code melanjutkan tanpa pengaturan yang dikelola server dan memperingatkan dalam sesi interaktif dan di [tab Code Claude Desktop](https://code.claude.com/docs/id/desktop.md) bahwa tidak ada kebijakan jarak jauh yang berlaku; pengaturan yang dikelola endpoint tetap berlaku. Jika sumber terkelola menetapkan [`forceRemoteSettingsRefresh`](#enforce-fail-closed-startup), Claude Code akan keluar

180 189 

181**Peluncuran berikutnya dengan pengaturan yang di-cache:**190**Peluncuran berikutnya dengan pengaturan yang di-cache:**

182 191 


186* Nilai [`prependPlugins`](https://code.claude.com/docs/id/settings-reference#prependplugins), [`appendPlugins`](https://code.claude.com/docs/id/settings-reference#appendplugins), atau [`enabledPlugins`](https://code.claude.com/docs/id/settings-reference#enabledplugins) yang di-cache tidak dapat menghapus penjaga bawaan, mengubah posisinya, atau mematikannya hingga pengambilan sesi mengonfirmasi payload195* Nilai [`prependPlugins`](https://code.claude.com/docs/id/settings-reference#prependplugins), [`appendPlugins`](https://code.claude.com/docs/id/settings-reference#appendplugins), atau [`enabledPlugins`](https://code.claude.com/docs/id/settings-reference#enabledplugins) yang di-cache tidak dapat menghapus penjaga bawaan, mengubah posisinya, atau mematikannya hingga pengambilan sesi mengonfirmasi payload

187* Pada mesin tempat [sumber yang dikelola endpoint](https://code.claude.com/docs/id/managed-settings.md#choose-a-delivery-mechanism) mencantumkan atau mengaktifkan plugin-nya sendiri, plugin yang hanya diaktifkan oleh daftar yang di-cache dianggap sebagai [milik pengguna](https://code.claude.com/docs/id/plugins/mods/admin.md#install-your-organizations-mods), bukan milik organisasi Anda, hingga pengambilan mengonfirmasi payload196* Pada mesin tempat [sumber yang dikelola endpoint](https://code.claude.com/docs/id/managed-settings.md#choose-a-delivery-mechanism) mencantumkan atau mengaktifkan plugin-nya sendiri, plugin yang hanya diaktifkan oleh daftar yang di-cache dianggap sebagai [milik pengguna](https://code.claude.com/docs/id/plugins/mods/admin.md#install-your-organizations-mods), bukan milik organisasi Anda, hingga pengambilan mengonfirmasi payload

188* Claude Code mengambil pengaturan terbaru di latar belakang197* Claude Code mengambil pengaturan terbaru di latar belakang

189* Pengaturan yang di-cache tetap bertahan saat terjadi kegagalan jaringan. Jika pengambilan saat startup gagal, Claude Code memperingatkan dalam sesi interaktif bahwa kebijakan yang di-cache sedang berlaku198* Pengaturan yang di-cache tetap bertahan saat terjadi kegagalan jaringan. Jika pengambilan saat startup gagal, Claude Code memperingatkan dalam sesi interaktif dan di tab Code bahwa kebijakan yang di-cache sedang berlaku

190* Hingga pengambilan berhasil, nilai yang ditahan saat startup tetap ditahan199* Hingga pengambilan berhasil, nilai yang ditahan saat startup tetap ditahan

191 200 

192Claude Code menahan beberapa kategori variabel dalam blok `env` yang di-cache hingga server mengonfirmasi payload untuk sesi tersebut. Hal ini mencegah nilai proxy, certificate authority, endpoint, atau kredensial yang di-cache mengalihkan, menyadap, atau mengautentikasi ulang pengambilan pengaturan yang mengonfirmasi payload. Penguatan ini hanya berlaku untuk cache pengaturan yang diambil dari server: [pengaturan yang dikelola endpoint](https://code.claude.com/docs/id/managed-settings.md#delivery-mechanisms) yang di-deploy melalui MDM atau `managed-settings.json` tidak terpengaruh. Kategori yang ditahan meliputi:201Claude Code menahan beberapa kategori variabel dalam blok `env` yang di-cache hingga server mengonfirmasi payload untuk sesi tersebut. Hal ini mencegah nilai proxy, certificate authority, endpoint, atau kredensial yang di-cache mengalihkan, menyadap, atau mengautentikasi ulang pengambilan pengaturan yang mengonfirmasi payload. Penguatan ini hanya berlaku untuk cache pengaturan yang diambil dari server: [pengaturan yang dikelola endpoint](https://code.claude.com/docs/id/managed-settings.md#delivery-mechanisms) yang di-deploy melalui MDM atau `managed-settings.json` tidak terpengaruh. Kategori yang ditahan meliputi:


221 * Tidak satu pun di antaranya beralih ke nilai yang lebih ketat.230 * Tidak satu pun di antaranya beralih ke nilai yang lebih ketat.

222 * Payload berisi key selain kedua key retensi tersebut.231 * Payload berisi key selain kedua key retensi tersebut.

223 232 

224 Pemberitahuan startup, `/status`, dan `claude doctor` kemudian melaporkan [kegagalan pemuatan](https://code.claude.com/docs/id/errors.md#remote-managed-settings-failed-to-load) dengan penyebab `no setting in the server response could be applied as written`, dan entri tersebut menjelaskan kebijakan mana yang digunakan sesi. Klien yang [menerapkan startup fail-closed](#enforce-fail-closed-startup) akan keluar saat startup.233 Pemberitahuan startup, `/status`, dan `claude doctor` kemudian melaporkan [kegagalan pemuatan](https://code.claude.com/docs/id/errors.md#remote-managed-settings-failed-to-load) dengan penyebab `no setting in the server response could be applied as written`, dan entri tersebut menjelaskan kebijakan mana yang digunakan sesi. Klien yang [menerapkan startup fail-closed](#enforce-fail-closed-startup) akan keluar saat startup. Jika startup berhenti dengan pesan bahwa organisasi Anda mewajibkan pengaturannya `before a session can start`, lihat [Claude Code tidak dapat memuat pengaturan organisasi Anda](https://code.claude.com/docs/id/errors.md#couldnt-load-your-organizations-settings).

225* [Dialog persetujuan keamanan](#security-approval-dialogs) mengevaluasi payload yang telah diselamatkan, sehingga entri tidak valid yang dihapus tidak pernah ditampilkan untuk persetujuan dan tidak pernah dieksekusi.234* [Dialog persetujuan keamanan](#security-approval-dialogs) mengevaluasi payload yang telah diselamatkan, sehingga entri tidak valid yang dihapus tidak pernah ditampilkan untuk persetujuan dan tidak pernah dieksekusi.

226 235 

227Untuk men-debug masalah pengiriman, jalankan `claude --debug-file <path>` dan cari `Remote settings` di log. Validasi perubahan payload dengan `claude doctor` pada mesin uji sebelum meluncurkannya ke organisasi.236Untuk men-debug masalah pengiriman, jalankan `claude --debug-file <path>` dan cari `Remote settings` di log. Validasi perubahan payload dengan `claude doctor` pada mesin uji sebelum meluncurkannya ke organisasi.

228 237 

229### Menerapkan startup fail-closed238### Menerapkan startup fail-closed

230 239 

231Secara default, jika pengambilan pengaturan jarak jauh gagal saat startup, CLI melanjutkan dengan pengaturan yang di-cache dari pengambilan terakhir yang berhasil, kecuali [nilai yang ditahan Claude Code](#fetch-and-caching-behavior) hingga pengambilan berhasil. Pada mesin yang belum pernah mengambilnya, CLI melanjutkan tanpa pengaturan yang dikelola server dan tetap menerapkan [pengaturan yang dikelola endpoint](https://code.claude.com/docs/id/managed-settings.md#delivery-mechanisms) apa pun di perangkat.240Secara default, jika pengambilan pengaturan jarak jauh gagal saat startup, CLI melanjutkan dengan pengaturan yang di-cache dari pengambilan terakhir yang berhasil. [Nilai yang ditahan Claude Code](#fetch-and-caching-behavior) tetap ditahan hingga pengambilan berhasil. Pada mesin yang belum pernah mengambilnya, CLI melanjutkan tanpa pengaturan yang dikelola server dan tetap menerapkan [pengaturan yang dikelola endpoint](https://code.claude.com/docs/id/managed-settings.md#delivery-mechanisms) apa pun di perangkat. Sebagai gantinya, [Anthropic dapat mewajibkan pengaturan tersebut](#fetch-and-caching-behavior).

232 241 

233Untuk mencegah klien memulai dengan pengaturan yang dikelola server yang di-cache atau tidak ada, tetapkan `forceRemoteSettingsRefresh: true` dalam pengaturan terkelola Anda.242Untuk mencegah klien memulai dengan pengaturan yang dikelola server yang di-cache atau tidak ada, tetapkan `forceRemoteSettingsRefresh: true` dalam pengaturan terkelola Anda.

234 243 


370| Pengguna menghapus file pengaturan yang di-cache | [Perilaku peluncuran pertama](#fetch-and-caching-behavior) terjadi |379| Pengguna menghapus file pengaturan yang di-cache | [Perilaku peluncuran pertama](#fetch-and-caching-behavior) terjadi |

371| Pengguna menjalankan biner Claude Code yang dimodifikasi | Pengguna yang dapat menjalankan klien yang dimodifikasi dapat melewati kontrol sisi klien apa pun |380| Pengguna menjalankan biner Claude Code yang dimodifikasi | Pengguna yang dapat menjalankan klien yang dimodifikasi dapat melewati kontrol sisi klien apa pun |

372| Pengguna menjalankan versi Claude Code yang lebih lama | Versi yang mendahului pengaturan yang dikelola server tidak mengambil atau menerapkannya |381| Pengguna menjalankan versi Claude Code yang lebih lama | Versi yang mendahului pengaturan yang dikelola server tidak mengambil atau menerapkannya |

373| API tidak tersedia | Pengaturan yang di-cache berlaku jika tersedia, kecuali untuk [nilai yang Claude Code tahan](#fetch-and-caching-behavior) sampai pengambilan berhasil. Tanpa cache, Claude Code tidak memberlakukan pengaturan yang dikelola server sampai pengambilan yang berhasil berikutnya dan masih menerapkan [pengaturan yang dikelola endpoint](https://code.claude.com/docs/id/managed-settings.md#delivery-mechanisms) apa pun pada perangkat. Dengan `forceRemoteSettingsRefresh: true`, CLI keluar sebagai gantinya melanjutkan, kecuali untuk [subperintah `claude auth`](#enforce-fail-closed-startup). Klien yang masuk melalui [gateway aplikasi Claude](#platform-availability) keluar pada startup tanpa pengaturan itu, dengan pengecualian `claude auth` yang sama |382| API tidak tersedia | Pengaturan yang di-cache berlaku jika tersedia. Tanpa cache, Claude Code tidak memberlakukan pengaturan yang dikelola server apa pun sampai pengambilan yang berhasil berikutnya. [Perilaku pengambilan dan caching](#fetch-and-caching-behavior) mencantumkan pengecualiannya, termasuk ketika Anthropic mewajibkan pengaturan tersebut. Dengan `forceRemoteSettingsRefresh: true`, CLI keluar sebagai gantinya melanjutkan, kecuali untuk [subperintah `claude auth`](#enforce-fail-closed-startup). Klien yang masuk melalui [gateway aplikasi Claude](#platform-availability) keluar pada startup tanpa pengaturan itu, dengan pengecualian `claude auth` yang sama |

374| Pengguna melakukan autentikasi dengan organisasi yang berbeda | Pengaturan tidak dikirimkan untuk akun di luar organisasi yang dikelola, termasuk sesi yang melakukan autentikasi dengan [kunci API Console](#platform-availability) |383| Pengguna melakukan autentikasi dengan organisasi yang berbeda | Pengaturan tidak dikirimkan untuk akun di luar organisasi yang dikelola, termasuk sesi yang melakukan autentikasi dengan [kunci API Console](#platform-availability) |

375| Pengguna mengonfigurasi [penyedia model pihak ketiga](#platform-availability) | Pengaturan yang dikelola server dilewati. Ini termasuk pengaturan `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_MANTLE`, `CLAUDE_CODE_USE_VERTEX`, `CLAUDE_CODE_USE_FOUNDRY`, `CLAUDE_CODE_USE_ANTHROPIC_AWS`, atau `ANTHROPIC_BASE_URL` non-default |384| Pengguna mengonfigurasi [penyedia model pihak ketiga](#platform-availability) | Pengaturan yang dikelola server dilewati. Ini termasuk pengaturan `CLAUDE_CODE_USE_BEDROCK`, `CLAUDE_CODE_USE_MANTLE`, `CLAUDE_CODE_USE_VERTEX`, `CLAUDE_CODE_USE_FOUNDRY`, `CLAUDE_CODE_USE_ANTHROPIC_AWS`, atau `ANTHROPIC_BASE_URL` non-default |

376| Lalu lintas jaringan dicegat atau dialihkan | Validasi TLS yang dinonaktifkan atau lalu lintas yang dicegat dapat mengubah pengaturan yang diterima klien |385| Lalu lintas jaringan dicegat atau dialihkan | Validasi TLS yang dinonaktifkan atau lalu lintas yang dicegat dapat mengubah pengaturan yang diterima klien |

settings.md +2 −2

Details

199* **Kesalahan Pengaturan**: file pengguna, proyek, atau lokal memiliki JSON tidak valid atau nilai yang ditolak skema. Saat awal sesi interaktif Claude Code menampilkan dialog yang memungkinkan Anda memperbaiki file dengan bantuan Claude, keluar, atau lanjutkan tanpa pengaturan yang rusak.199* **Kesalahan Pengaturan**: file pengguna, proyek, atau lokal memiliki JSON tidak valid atau nilai yang ditolak skema. Saat awal sesi interaktif Claude Code menampilkan dialog yang memungkinkan Anda memperbaiki file dengan bantuan Claude, keluar, atau lanjutkan tanpa pengaturan yang rusak.

200* **Peringatan Pengaturan**: hanya entri individual yang gagal, seperti aturan izin yang salah bentuk atau nama acara hook yang tidak dikenal. Claude Code melewati nilai-nilai itu dan menjaga sisa file tetap berlaku.200* **Peringatan Pengaturan**: hanya entri individual yang gagal, seperti aturan izin yang salah bentuk atau nama acara hook yang tidak dikenal. Claude Code melewati nilai-nilai itu dan menjaga sisa file tetap berlaku.

201* **Pengaturan yang dikelola**: Claude Code terus menegakkan sisa file. [Entri tidak valid dalam pengaturan yang dikelola](https://code.claude.com/docs/id/managed-settings.md#invalid-entries-in-managed-settings) mengatakan apa yang dijatuhkan dan kunci mana yang kembali ke nilai yang lebih ketat sampai Anda memperbaikinya. Untuk dokumen pengaturan yang dikelola yang bukan JSON valid, lihat [Dokumen pengaturan yang dikelola tidak dapat diuraikan](https://code.claude.com/docs/id/errors.md#managed-settings-document-could-not-be-parsed).201* **Pengaturan yang dikelola**: Claude Code terus menegakkan sisa file. [Entri tidak valid dalam pengaturan yang dikelola](https://code.claude.com/docs/id/managed-settings.md#invalid-entries-in-managed-settings) mengatakan apa yang dijatuhkan dan kunci mana yang kembali ke nilai yang lebih ketat sampai Anda memperbaikinya. Untuk dokumen pengaturan yang dikelola yang bukan JSON valid, lihat [Dokumen pengaturan yang dikelola tidak dapat diuraikan](https://code.claude.com/docs/id/errors.md#managed-settings-document-could-not-be-parsed).

202* **Kesalahan konfigurasi**: `~/.claude.json` tidak dapat diuraikan. Claude Code menyalin file yang rusak ke `~/.claude/backups/.claude.json.corrupted.<timestamp>` dan menanyakan apakah akan keluar dan memperbaikinya dengan tangan atau mengatur ulang ke konfigurasi default; run `-p` mencetak kesalahan dan keluar. Untuk memulihkan status sebelumnya, salin kembali salah satu dari lima file `.claude.json.backup.<timestamp>` terbaru di `~/.claude/backups/`, yang Claude Code simpan sebelum menulis file.202* **Kesalahan konfigurasi**: [`~/.claude.json`](https://code.claude.com/docs/id/claude-directory#ce-claude-json) tidak dapat diuraikan. Run `claude -p` akan keluar, dan file Anda tidak berubah. Lihat [Configuration error in \~/.claude.json](https://code.claude.com/docs/id/errors.md#configuration-error-in-claude-json) untuk memulihkan salinan sebelumnya. Claude Code menyalin file yang rusak ke `~/.claude/backups/.claude.json.corrupted.<timestamp>`, dan dalam sesi interaktif menanyakan apakah akan keluar dan memperbaikinya atau mengatur ulang ke konfigurasi default. Ketika file kosong dan tidak ada cadangan untuk dipulihkan, Claude Code dimulai dengan pengaturan default.

203 203 

204Setelah Anda lanjutkan, jalankan `/status` untuk melihat file yang terpengaruh dan `claude doctor` untuk detail setiap kesalahan.204Setelah Anda lanjutkan, jalankan `/status` untuk melihat file yang terpengaruh dan `claude doctor` untuk detail setiap kesalahan.

205 205 

206Run `-p` menampilkan tidak ada dialog. Kecuali [dokumen pengaturan yang dikelola tidak dapat diuraikan](https://code.claude.com/docs/id/errors.md#managed-settings-document-could-not-be-parsed), Claude Code melewati file atau nilai yang rusak dan lanjutkan dengan sisanya, jadi setelah run `-p` yang mengabaikan pengaturan, jalankan `claude doctor` untuk melihat apa yang dijatuhkannya.206Run `-p` tidak menampilkan dialog. Kecuali [dokumen pengaturan terkelola tidak dapat diuraikan](https://code.claude.com/docs/id/errors.md#managed-settings-document-could-not-be-parsed), Claude Code melewati file pengguna, proyek, atau lokal yang rusak atau nilai-nilainya yang rusak dan melanjutkan dengan sisanya. Setelah run `-p` yang mengabaikan suatu pengaturan, jalankan `claude doctor` dari terminal Anda untuk melihat apa yang dibuangnya.

207 207 

208## Urutan prioritas pengaturan208## Urutan prioritas pengaturan

209 209 

Details

40| [`autoCompactWindow`](#autocompactwindow) | Atur seberapa penuh konteks sebelum Claude Code [melakukan compaction](https://code.claude.com/docs/id/context-window.md) | Memory and context | Any file |40| [`autoCompactWindow`](#autocompactwindow) | Atur seberapa penuh konteks sebelum Claude Code [melakukan compaction](https://code.claude.com/docs/id/context-window.md) | Memory and context | Any file |

41| [`autoConnectIde`](#autoconnectide) | Terhubung ke [VS Code](https://code.claude.com/docs/id/vs-code.md) atau [JetBrains](https://code.claude.com/docs/id/jetbrains.md#from-external-terminals) IDE yang sedang berjalan secara otomatis dari terminal eksternal | Global config settings | Global config |41| [`autoConnectIde`](#autoconnectide) | Terhubung ke [VS Code](https://code.claude.com/docs/id/vs-code.md) atau [JetBrains](https://code.claude.com/docs/id/jetbrains.md#from-external-terminals) IDE yang sedang berjalan secara otomatis dari terminal eksternal | Global config settings | Global config |

42| [`autoContinueAtUsageLimit`](#autocontinueatusagelimit) | Tunggu di sesi terbuka dan [lanjutkan tugas secara otomatis](https://code.claude.com/docs/id/interactive-mode.md#wait-for-a-usage-limit-to-reset) setelah batas penggunaan claude.ai direset | Interface and terminal | User or managed |42| [`autoContinueAtUsageLimit`](#autocontinueatusagelimit) | Tunggu di sesi terbuka dan [lanjutkan tugas secara otomatis](https://code.claude.com/docs/id/interactive-mode.md#wait-for-a-usage-limit-to-reset) setelah batas penggunaan claude.ai direset | Interface and terminal | User or managed |

43| [`autoInstallIdeExtension`](#autoinstallideextension) | Matikan instalasi otomatis [ekstensi IDE](https://code.claude.com/docs/id/vs-code.md#install-the-extension) dari terminal VS Code | Global config settings | Global config |43| [`autoInstallIdeExtension`](#autoinstallideextension) | Biarkan `/ide` memasang [ekstensi IDE](https://code.claude.com/docs/id/vs-code.md#install-the-extension) dari terminal eksternal | Global config settings | Global config |

44| [`autoMemoryDirectory`](#automemorydirectory) | Simpan [auto memory](https://code.claude.com/docs/id/memory.md#auto-memory) di direktori pilihan Anda | Memory and context | Any file |44| [`autoMemoryDirectory`](#automemorydirectory) | Simpan [auto memory](https://code.claude.com/docs/id/memory.md#auto-memory) di direktori pilihan Anda | Memory and context | Any file |

45| [`autoMemoryEnabled`](#automemoryenabled) | Matikan atau nyalakan [auto memory](https://code.claude.com/docs/id/memory.md#auto-memory) | Memory and context | Any file |45| [`autoMemoryEnabled`](#automemoryenabled) | Matikan atau nyalakan [auto memory](https://code.claude.com/docs/id/memory.md#auto-memory) | Memory and context | Any file |

46| [`autoMode`](#automode) | Tambahkan aturan izinkan dan tolak Anda sendiri ke pengklasifikasi [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) | Permission settings | User or managed |46| [`autoMode`](#automode) | Tambahkan aturan izinkan dan tolak Anda sendiri ke pengklasifikasi [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode) | Permission settings | User or managed |


139| [`outputStyle`](#outputstyle) | Ubah peran, nada, dan format output Claude dengan [gaya output](https://code.claude.com/docs/id/output-styles.md) | Model dan respons | Any file |139| [`outputStyle`](#outputstyle) | Ubah peran, nada, dan format output Claude dengan [gaya output](https://code.claude.com/docs/id/output-styles.md) | Model dan respons | Any file |

140| [`parentSettingsBehavior`](#parentsettingsbehavior) | Terapkan atau lepaskan pembatasan yang diteruskan oleh [host SDK atau IDE](https://code.claude.com/docs/id/managed-settings.md#let-an-embedding-host-add-policy) ketika Anda menerapkan [pengaturan terkelola](https://code.claude.com/docs/id/managed-settings.md) | Enterprise and managed settings | Managed |140| [`parentSettingsBehavior`](#parentsettingsbehavior) | Terapkan atau lepaskan pembatasan yang diteruskan oleh [host SDK atau IDE](https://code.claude.com/docs/id/managed-settings.md#let-an-embedding-host-add-policy) ketika Anda menerapkan [pengaturan terkelola](https://code.claude.com/docs/id/managed-settings.md) | Enterprise and managed settings | Managed |

141| [`permissionExplainerEnabled`](#permissionexplainerenabled) | Dihapus di v2.1.257, bersama dengan penjelasan perintah `Ctrl+E` pada permintaan izin shell | Global config settings | Global config |141| [`permissionExplainerEnabled`](#permissionexplainerenabled) | Dihapus di v2.1.257, bersama dengan penjelasan perintah `Ctrl+E` pada permintaan izin shell | Global config settings | Global config |

142| [`permissions`](#permissions) | Atur aturan izinkan, tanya, dan tolak serta [mode izin](https://code.claude.com/docs/id/permission-modes.md) awal | Permission settings | Any file |142| [`permissions`](#permissions) | Menetapkan aturan allow, ask, dan deny serta [mode izin](https://code.claude.com/docs/id/permission-modes.md) default | Pengaturan izin | File apa pun |

143| [`permissions.additionalDirectories`](#permissions-additionaldirectories) | Berikan Claude akses file ke [direktori di luar direktori saat ini](https://code.claude.com/docs/id/permissions.md#working-directories) | Permission settings | Any file |143| [`permissions.additionalDirectories`](#permissions-additionaldirectories) | Berikan Claude akses file ke [direktori di luar direktori saat ini](https://code.claude.com/docs/id/permissions.md#working-directories) | Permission settings | Any file |

144| [`permissions.allow`](#permissions-allow) | Setujui [penggunaan tool](https://code.claude.com/docs/id/permissions.md#permission-rule-syntax) yang tercantum tanpa prompt | Permission settings | Any file |144| [`permissions.allow`](#permissions-allow) | Setujui [penggunaan tool](https://code.claude.com/docs/id/permissions.md#permission-rule-syntax) yang tercantum tanpa prompt | Permission settings | Any file |

145| [`permissions.ask`](#permissions-ask) | Selalu minta konfirmasi sebelum [penggunaan tool](https://code.claude.com/docs/id/permissions.md#permission-rule-syntax) yang tercantum | Permission settings | Any file |145| [`permissions.ask`](#permissions-ask) | Selalu minta konfirmasi sebelum [penggunaan tool](https://code.claude.com/docs/id/permissions.md#permission-rule-syntax) yang tercantum | Permission settings | Any file |

146| [`permissions.blockReadsOutsideWorkingDirectories`](#permissions-blockreadsoutsideworkingdirectories) | Buat tool file menolak pembacaan di luar [direktori kerja](https://code.claude.com/docs/id/permissions.md#working-directories) dalam setiap mode izin | Permission settings | Any file |146| [`permissions.blockReadsOutsideWorkingDirectories`](#permissions-blockreadsoutsideworkingdirectories) | Buat tool file menolak pembacaan di luar [direktori kerja](https://code.claude.com/docs/id/permissions.md#working-directories) dalam setiap mode izin | Permission settings | Any file |

147| [`permissions.blockWritesOutsideWorkingDirectories`](#permissions-blockwritesoutsideworkingdirectories) | Buat tool `Write`, `Edit`, dan `NotebookEdit` menolak jalur di luar [direktori kerja](https://code.claude.com/docs/id/permissions.md#working-directories) dalam setiap mode izin, kecuali [beberapa file milik Claude Code sendiri](#what-the-write-block-refuses-and-what-stays-writable) | Permission settings | Any file |147| [`permissions.blockWritesOutsideWorkingDirectories`](#permissions-blockwritesoutsideworkingdirectories) | Buat tool `Write`, `Edit`, dan `NotebookEdit` menolak jalur di luar [direktori kerja](https://code.claude.com/docs/id/permissions.md#working-directories) dalam setiap mode izin, kecuali [beberapa file milik Claude Code sendiri](#what-the-write-block-refuses-and-what-stays-writable) | Permission settings | Any file |

148| [`permissions.defaultMode`](#permissions-defaultmode) | Atur [mode izin](https://code.claude.com/docs/id/permission-modes.md#which-mode-a-session-starts-in) yang digunakan sesi baru saat dimulai | Permission settings | Any file |148| [`permissions.defaultMode`](#permissions-defaultmode) | Menetapkan [mode izin](https://code.claude.com/docs/id/permission-modes.md#which-mode-a-session-starts-in) default untuk sesi baru | Pengaturan izin | File apa pun |

149| [`permissions.deny`](#permissions-deny) | Blokir [penggunaan tool](https://code.claude.com/docs/id/permissions.md#permission-rule-syntax) yang tercantum, termasuk pembacaan file yang menyimpan rahasia | Permission settings | Any file |149| [`permissions.deny`](#permissions-deny) | Blokir [penggunaan tool](https://code.claude.com/docs/id/permissions.md#permission-rule-syntax) yang tercantum, termasuk pembacaan file yang menyimpan rahasia | Permission settings | Any file |

150| [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) | Cegah siapa pun memasuki [mode bypassPermissions](https://code.claude.com/docs/id/permission-modes.md#skip-all-checks-with-bypasspermissions-mode) | Permission settings | Any file |150| [`permissions.disableBypassPermissionsMode`](#permissions-disablebypasspermissionsmode) | Cegah siapa pun memasuki [mode bypassPermissions](https://code.claude.com/docs/id/permission-modes.md#skip-all-checks-with-bypasspermissions-mode) | Permission settings | Any file |

151| [`plansDirectory`](#plansdirectory) | Pilih tempat [plan mode](https://code.claude.com/docs/id/permission-modes.md#analyze-before-you-edit-with-plan-mode) menulis file rencana | Memory and context | Any file |151| [`plansDirectory`](#plansdirectory) | Pilih tempat [plan mode](https://code.claude.com/docs/id/permission-modes.md#analyze-before-you-edit-with-plan-mode) menulis file rencana | Memory and context | Any file |


804 804 

805## Pengaturan izin805## Pengaturan izin

806 806 

807Tentukan apa yang dapat dilakukan Claude tanpa bertanya, mode izin mana yang digunakan saat sesi dimulai, dan apa yang diizinkan pengklasifikasi auto mode. Untuk sintaks aturan dan model izin, lihat [Konfigurasi izin](https://code.claude.com/docs/id/permissions.md).807Tentukan apa yang dapat dilakukan Claude tanpa bertanya, mode izin default untuk sesi baru, dan apa yang diizinkan pengklasifikasi auto mode. Untuk sintaks aturan dan model izin, lihat [Konfigurasi izin](https://code.claude.com/docs/id/permissions.md).

808 808 

809### `allowManagedPermissionRulesOnly`809### `allowManagedPermissionRulesOnly`

810 810 


899 899 

900### `permissions`900### `permissions`

901 901 

902Kontrol tool mana yang dapat digunakan Claude tanpa bertanya, tool mana yang selalu meminta konfirmasi, dan tool mana yang diblokir, serta atur [mode izin](https://code.claude.com/docs/id/permission-modes.md) yang digunakan saat sesi dimulai. Setiap kunci `permissions.*` di bawah bersarang di bawah objek ini.902Kontrol tool mana yang dapat digunakan Claude tanpa bertanya, tool mana yang meminta konfirmasi, dan tool mana yang diblokir. Atur juga [mode izin](https://code.claude.com/docs/id/permission-modes.md) default untuk sesi baru. Setiap kunci `permissions.*` di bawah bersarang di bawah objek ini.

903 903 

904* **Scope**: [`Any file`](#scopes)904* **Scope**: [`Any file`](#scopes)

905* **Type**: objek dengan `allow`, `ask`, `deny`, `additionalDirectories`, `blockReadsOutsideWorkingDirectories`, `blockWritesOutsideWorkingDirectories`, `defaultMode`, `disableBypassPermissionsMode`, dan `disableAutoMode`905* **Type**: objek dengan `allow`, `ask`, `deny`, `additionalDirectories`, `blockReadsOutsideWorkingDirectories`, `blockWritesOutsideWorkingDirectories`, `defaultMode`, `disableBypassPermissionsMode`, dan `disableAutoMode`


1137 1137 

1138### `permissions.defaultMode`1138### `permissions.defaultMode`

1139 1139 

1140Atur [mode izin](https://code.claude.com/docs/id/permission-modes.md) yang digunakan saat sesi baru dimulai. Ketika Anda membiarkannya tidak diatur, sesi dimulai dalam [default bawaan](https://code.claude.com/docs/id/permission-modes.md#which-mode-a-session-starts-in) untuk surface Anda.1140Atur [mode izin](https://code.claude.com/docs/id/permission-modes.md) default untuk sesi baru. Ketika Anda membiarkannya tidak diatur, [default bawaan](https://code.claude.com/docs/id/permission-modes.md#which-mode-a-session-starts-in) untuk surface Anda berlaku.

1141 1141 

1142* **Scope**: [`Any file`](#scopes). `auto` dan `bypassPermissions` tidak berlaku dari pengaturan proyek atau lokal, jadi atur keduanya dalam `~/.claude/settings.json` sebagai gantinya. Sebelum v2.1.257, `bypassPermissions` berlaku dari file apa pun. Untuk percakapan yang dimulai ekstensi VS Code, Claude Code hanya membaca nilai pengguna, terkelola, dan `--settings`.1142* **Scope**: [`Any file`](#scopes). `auto` dan `bypassPermissions` tidak berlaku dari pengaturan proyek atau lokal, jadi atur keduanya dalam `~/.claude/settings.json` sebagai gantinya. Sebelum v2.1.257, `bypassPermissions` berlaku dari file apa pun. Untuk percakapan yang dimulai ekstensi VS Code, Claude Code hanya membaca nilai pengguna, terkelola, dan `--settings`.

1143* **Type**: string, salah satu dari:1143* **Type**: string, salah satu dari:


1267 1267 

1268### `sandbox.failIfUnavailable`1268### `sandbox.failIfUnavailable`

1269 1269 

1270Buat Claude Code keluar dengan kesalahan saat startup ketika `sandbox.enabled` adalah `true` tetapi sandbox tidak dapat dimulai, karena dependensi hilang atau platform tidak didukung. Tanpa kunci ini, Claude Code menjalankan perintah tanpa sandbox. Deployment terkelola yang mewajibkan sandboxing sebagai gerbang keamanan dapat menggunakan pengaturan ini.1270Membuat Claude Code keluar dengan error saat startup ketika `sandbox.enabled` bernilai `true` tetapi sandbox tidak dapat dimulai karena platform tidak mendukungnya atau pemeriksaan dependensi gagal. Tanpa kunci ini, Claude Code menjalankan perintah tanpa sandbox. Deployment terkelola yang mewajibkan sandboxing sebagai gerbang keamanan dapat menggunakan pengaturan ini.

1271 1271 

1272Di platform yang tidak didukung sandbox, Claude Code tidak dapat dimulai dengan kunci ini aktif. Lihat [Enforce sandboxing with managed settings](https://code.claude.com/docs/id/sandboxing.md#enforce-sandboxing-with-managed-settings).1272Di platform yang tidak didukung sandbox, Claude Code tidak dapat dimulai dengan kunci ini aktif. Lihat [Enforce sandboxing with managed settings](https://code.claude.com/docs/id/sandboxing.md#enforce-sandboxing-with-managed-settings).

1273 1273 


5087 5087 

5088### `sshHostCommands`5088### `sshHostCommands`

5089 5089 

5090Tambahkan koneksi SSH yang host-nya berasal dari sebuah perintah ke pemilih lingkungan [Desktop](https://code.claude.com/docs/id/desktop.md#create-an-ssh-connection-from-a-command). Ketika Anda membuat koneksi atau mengganti host-nya, Desktop menjalankan perintah entri tersebut di komputer Anda dan terhubung ke host yang dicetak oleh perintah tersebut. Memerlukan Claude Desktop v3.6556.0 atau lebih baru di macOS atau Linux, dengan masuk menggunakan akun Claude.5090Tambahkan koneksi SSH yang host-nya berasal dari sebuah perintah ke pemilih lingkungan [Desktop](https://code.claude.com/docs/id/desktop.md#create-an-ssh-connection-from-a-command). Ketika Anda membuat koneksi atau membuat mesin lain untuknya, Desktop menjalankan perintah entri tersebut di komputer Anda dan terhubung ke host yang dicetak oleh perintah tersebut.

5091 

5092Memerlukan Claude Desktop v3.6556.0 atau lebih baru di macOS atau Linux, atau v4.16336.0 atau lebih baru di Windows, dengan masuk menggunakan akun Claude. Di Windows, Desktop juga harus [terhubung melalui klien OpenSSH](https://code.claude.com/docs/id/desktop.md#use-your-ssh-configuration).

5091 5093 

5092* **Scope**: [`User or managed`](#scopes). Hanya aplikasi desktop yang membaca kunci ini. Aplikasi membaca entri terkelola dari [satu file pengaturan terkelola atau kebijakan MDM](https://code.claude.com/docs/id/desktop.md#distribute-commands-to-your-team) di komputer, dan mengabaikan kunci ini di [pengaturan terkelola server](https://code.claude.com/docs/id/server-managed-settings.md).5094* **Scope**: [`User or managed`](#scopes). Hanya aplikasi desktop yang membaca kunci ini. Aplikasi membaca entri terkelola dari [satu file pengaturan terkelola atau kebijakan MDM](https://code.claude.com/docs/id/desktop.md#distribute-commands-to-your-team) di komputer, dan mengabaikan kunci ini di [pengaturan terkelola server](https://code.claude.com/docs/id/server-managed-settings.md).

5093* **Type**: array objek, masing-masing dengan `id`, `name`, dan `command` yang diperlukan dan `sshIdentityFile` dan `startDirectory` opsional. Desktop memulai `command` tanpa shell, jadi [tulis sebagai program dan argumen biasa](https://code.claude.com/docs/id/desktop.md#write-the-command).5095* **Type**: array objek, masing-masing dengan `id`, `name`, dan `command` yang diperlukan dan `sshIdentityFile` dan `startDirectory` opsional. Desktop tidak membaca `command` sebagai sintaks shell, jadi pipe dan variabel tidak berfungsi: [tulis sebagai program beserta argumennya](https://code.claude.com/docs/id/desktop.md#write-the-command).

5094* **Default**: unset5096* **Default**: unset

5095 5097 

5096Contoh ini menambahkan satu koneksi bernama `Dev box`, di mana `acme-dev create` mewakili alat Anda sendiri:5098Contoh ini menambahkan satu koneksi bernama `Dev box`, di mana `acme-dev create` mewakili alat Anda sendiri:


5107}5109}

5108```5110```

5109 5111 

5112Di Windows, nama saja seperti `acme-dev` tidak berfungsi, jadi [mulai perintah dengan path lengkap program](https://code.claude.com/docs/id/desktop.md#write-the-command-on-windows).

5113 

5110Sebelum Claude Code v2.1.307, tool Edit menolak perubahan yang menambahkan kunci ini ke file pengaturan yang valid, dengan error `Unrecognized field: sshHostCommands`. Pada versi tersebut, tambahkan kunci ini di editor teks sebagai gantinya; Claude Code memuat file yang berisi kunci tersebut. Di Desktop, versi yang diperhitungkan adalah [versi Claude Code di tab Code](https://code.claude.com/docs/id/desktop.md#claude-code-version-in-the-code-tab), bukan versi di terminal Anda.5114Sebelum Claude Code v2.1.307, tool Edit menolak perubahan yang menambahkan kunci ini ke file pengaturan yang valid, dengan error `Unrecognized field: sshHostCommands`. Pada versi tersebut, tambahkan kunci ini di editor teks sebagai gantinya; Claude Code memuat file yang berisi kunci tersebut. Di Desktop, versi yang diperhitungkan adalah [versi Claude Code di tab Code](https://code.claude.com/docs/id/desktop.md#claude-code-version-in-the-code-tab), bukan versi di terminal Anda.

5111 5115 

5112## Autentikasi dan penyedia5116## Autentikasi dan penyedia


5583 5587 

5584Blokir startup CLI hingga Claude Code telah segar mengambil [pengaturan yang dikelola server](https://code.claude.com/docs/id/server-managed-settings.md). Jika pengambilan gagal, Claude Code keluar alih-alih melanjutkan dengan pengaturan yang di-cache atau tidak ada. Atur ketika lingkungan Anda tidak dapat menerima bahkan jendela singkat di mana sesi berjalan tanpa kebijakan terkelolanya.5588Blokir startup CLI hingga Claude Code telah segar mengambil [pengaturan yang dikelola server](https://code.claude.com/docs/id/server-managed-settings.md). Jika pengambilan gagal, Claude Code keluar alih-alih melanjutkan dengan pengaturan yang di-cache atau tidak ada. Atur ketika lingkungan Anda tidak dapat menerima bahkan jendela singkat di mana sesi berjalan tanpa kebijakan terkelolanya.

5585 5589 

5586Ketika kunci tidak diatur, Claude Code tidak memblokir startup pada pengambilan, meskipun ketika pengembang masuk saat startup ia menunggu hingga lima detik untuk pengambilan. Sesi gateway Cloud selalu menunggu, dan keluar jika gateway tidak dapat dijangkau.5590Ketika kunci tidak diatur, Claude Code tidak memblokir startup pada pengambilan, meskipun ketika pengembang masuk saat startup ia menunggu hingga lima detik untuk pengambilan. [Anthropic dapat mewajibkan pengaturan tersebut](https://code.claude.com/docs/id/server-managed-settings.md#fetch-and-caching-behavior), yang memang memblokir startup tanpa pengaturan tersebut. Sesi Cloud gateway menunggu, dan keluar jika gateway tidak dapat dijangkau.

5587 5591 

5588* **Scope**: [`Managed`](#scopes). Claude Code menghormati `true` dari sumber terkelola yang dikontrol admin apa pun, bahkan yang bukan sumber prioritas tertinggi.5592* **Scope**: [`Managed`](#scopes). Claude Code menghormati `true` dari sumber terkelola yang dikontrol admin apa pun, bahkan yang bukan sumber prioritas tertinggi.

5589* **Type**: Boolean5593* **Type**: Boolean

5590 * `true`: Claude Code memblokir startup hingga telah segar mengambil pengaturan yang dikelola server, dan keluar jika pengambilan gagal5594 * `true`: Claude Code memblokir startup hingga telah segar mengambil pengaturan yang dikelola server, dan keluar jika pengambilan gagal

5591 * `false`: Claude Code tidak memblokir startup pada pengambilan, meskipun pada startup masuk ia menunggu hingga lima detik untuk pengambilan5595 * `false`: kecuali Anthropic mewajibkan pengaturan tersebut, Claude Code tidak memblokir startup pada pengambilan, meskipun pada startup masuk ia menunggu hingga lima detik untuk pengambilan

5592* **Default**: `false`5596* **Default**: `false`

5593 5597 

5594```json managed-settings.json theme={null}5598```json managed-settings.json theme={null}


5823 5827 

5824### `autoInstallIdeExtension`5828### `autoInstallIdeExtension`

5825 5829 

5826Instal ekstensi IDE Claude Code secara otomatis saat Anda menjalankan Claude Code dari terminal VS Code. Muncul di `/config` sebagai **Auto-install IDE extension** saat Anda menjalankan Claude Code di dalam terminal VS Code atau JetBrains.5830Izinkan [`/ide`](https://code.claude.com/docs/id/commands) menginstal ekstensi IDE Claude Code di VS Code, Cursor, atau Devin Desktop yang sedang berjalan saat Anda menjalankan perintah tersebut dari terminal eksternal. Claude Code tidak menginstal ekstensi saat Anda memulainya. Muncul di `/config` sebagai **Auto-install IDE extension** saat Anda menjalankan Claude Code di dalam terminal VS Code atau JetBrains.

5827 5831 

5828* **Scope**: [`Global config`](#scopes)5832* **Scope**: [`Global config`](#scopes)

5829* **Type**: Boolean5833* **Type**: Boolean

5830 * `true`: Claude Code menginstal ekstensi IDE secara otomatis saat Anda menjalankannya dari terminal VS Code5834 * `true`: `/ide` menginstal ekstensi

5831 * `false`: Claude Code tidak menginstal ekstensi secara otomatis5835 * `false`: `/ide` tidak menginstal ekstensi

5832* **Default**: `true`5836* **Default**: `true`

5833* **Per-session overrides**: [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](https://code.claude.com/docs/id/env-vars) diatur ke `1` melewati instalasi untuk satu sesi bahkan ketika kunci ini adalah `true`5837* **Per-session overrides**: [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](https://code.claude.com/docs/id/env-vars) diatur ke `1` melewati instalasi untuk satu sesi bahkan ketika kunci ini adalah `true`

5834 5838 

skills.md +1 −1

Details

404| `allowed-tools` | Tidak | Tool yang dapat digunakan Claude tanpa meminta izin selama giliran yang memanggil skill ini. Pemberian izin ini dihapus ketika Anda mengirim pesan berikutnya. Menerima string yang dipisahkan spasi atau koma, atau daftar YAML. Lihat [Menyetujui tool terlebih dahulu untuk skill](#pre-approve-tools-for-a-skill). |404| `allowed-tools` | Tidak | Tool yang dapat digunakan Claude tanpa meminta izin selama giliran yang memanggil skill ini. Pemberian izin ini dihapus ketika Anda mengirim pesan berikutnya. Menerima string yang dipisahkan spasi atau koma, atau daftar YAML. Lihat [Menyetujui tool terlebih dahulu untuk skill](#pre-approve-tools-for-a-skill). |

405| `disallowed-tools` | Tidak | Tool yang dihapus dari kumpulan tool yang tersedia bagi Claude selama skill ini aktif. Gunakan untuk skill otonom yang tidak boleh memanggil tool tertentu, seperti `AskUserQuestion` untuk loop latar belakang. Menerima string yang dipisahkan spasi atau koma, atau daftar YAML. Pembatasan ini dihapus ketika Anda mengirim pesan berikutnya. Seperti aturan deny, field ini tidak dapat menghapus [`EndConversation`](https://code.claude.com/docs/id/tools-reference#endconversation-tool-behavior) selama masih ada tool lain. |405| `disallowed-tools` | Tidak | Tool yang dihapus dari kumpulan tool yang tersedia bagi Claude selama skill ini aktif. Gunakan untuk skill otonom yang tidak boleh memanggil tool tertentu, seperti `AskUserQuestion` untuk loop latar belakang. Menerima string yang dipisahkan spasi atau koma, atau daftar YAML. Pembatasan ini dihapus ketika Anda mengirim pesan berikutnya. Seperti aturan deny, field ini tidak dapat menghapus [`EndConversation`](https://code.claude.com/docs/id/tools-reference#endconversation-tool-behavior) selama masih ada tool lain. |

406| `model` | Tidak | Model yang digunakan ketika skill ini aktif. Override berlaku untuk sisa giliran saat ini dan tidak disimpan ke pengaturan. Model sesi dilanjutkan ketika Anda mengirim prompt berikutnya. Menerima nilai yang sama dengan [`/model`](https://code.claude.com/docs/id/model-config), atau `inherit` untuk mempertahankan model yang aktif. Nilai yang dikecualikan oleh allowlist [`availableModels`](https://code.claude.com/docs/id/model-config#restrict-model-selection) organisasi Anda tidak digunakan, dan sesi mempertahankan model saat ini. Dalam [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode), dan dalam [plan mode saat pengklasifikasi meninjau perintah](https://code.claude.com/docs/id/permission-modes.md#analyze-before-you-edit-with-plan-mode), model yang tidak didukung auto mode juga tidak digunakan, dan sesi mempertahankan model saat ini. Dengan `context: fork`, nilai ini justru mengatur [model subagent hasil fork](#run-skills-in-a-subagent), dan nilai yang dikecualikan mengikuti [aturan yang sama dengan override model subagent](https://code.claude.com/docs/id/model-config.md#restrict-model-selection). |406| `model` | Tidak | Model yang digunakan ketika skill ini aktif. Override berlaku untuk sisa giliran saat ini dan tidak disimpan ke pengaturan. Model sesi dilanjutkan ketika Anda mengirim prompt berikutnya. Menerima nilai yang sama dengan [`/model`](https://code.claude.com/docs/id/model-config), atau `inherit` untuk mempertahankan model yang aktif. Nilai yang dikecualikan oleh allowlist [`availableModels`](https://code.claude.com/docs/id/model-config#restrict-model-selection) organisasi Anda tidak digunakan, dan sesi mempertahankan model saat ini. Dalam [auto mode](https://code.claude.com/docs/id/permission-modes.md#eliminate-prompts-with-auto-mode), dan dalam [plan mode saat pengklasifikasi meninjau perintah](https://code.claude.com/docs/id/permission-modes.md#analyze-before-you-edit-with-plan-mode), model yang tidak didukung auto mode juga tidak digunakan, dan sesi mempertahankan model saat ini. Dengan `context: fork`, nilai ini justru mengatur [model subagent hasil fork](#run-skills-in-a-subagent), dan nilai yang dikecualikan mengikuti [aturan yang sama dengan override model subagent](https://code.claude.com/docs/id/model-config.md#restrict-model-selection). |

407| `effort` | Tidak | [Tingkat effort](https://code.claude.com/docs/id/model-config.md#adjust-effort-level) untuk sisa giliran saat ini. Menimpa tingkat effort sesi, tetapi tidak menimpa environment variable [`CLAUDE_CODE_EFFORT_LEVEL`](https://code.claude.com/docs/id/env-vars#variables). Dengan `context: fork`, nilai ini justru mengatur tingkat effort subagent hasil fork. Jika Anda menghilangkannya, tingkatnya berasal dari [urutan resolusi effort](https://code.claude.com/docs/id/model-config.md#adjust-effort-level). Opsi: `low`, `medium`, `high`, `xhigh`, `max`; tingkat yang tersedia bergantung pada model. |407| `effort` | Tidak | [Tingkat effort](https://code.claude.com/docs/id/model-config.md#adjust-effort-level) untuk sisa giliran saat ini. Menimpa tingkat effort sesi, tetapi tidak menimpa environment variable [`CLAUDE_CODE_EFFORT_LEVEL`](https://code.claude.com/docs/id/env-vars#variables). Dengan `context: fork`, nilai ini justru mengatur tingkat effort subagent hasil fork. Jika Anda menghilangkannya, tingkatnya berasal dari [urutan resolusi effort](https://code.claude.com/docs/id/model-config.md#adjust-effort-level). Untuk fork pada model lain, lihat [Tingkat effort subagent dan rekan tim](https://code.claude.com/docs/id/model-config.md#effort-level-of-subagents-and-teammates). Opsi: `low`, `medium`, `high`, `xhigh`, `max`; tingkat yang tersedia bergantung pada model. |

408| `context` | Tidak | Atur ke `fork` untuk menjalankan dalam konteks subagent hasil fork. Lihat [Menjalankan skills dalam subagent](#run-skills-in-a-subagent). |408| `context` | Tidak | Atur ke `fork` untuk menjalankan dalam konteks subagent hasil fork. Lihat [Menjalankan skills dalam subagent](#run-skills-in-a-subagent). |

409| `agent` | Tidak | Jenis subagent yang digunakan ketika `context: fork` diatur. |409| `agent` | Tidak | Jenis subagent yang digunakan ketika `context: fork` diatur. |

410| `background` | Tidak | Hanya berlaku dengan `context: fork`. Atur ke `false` untuk menunggu hasil subagent hasil fork dalam giliran yang memanggil skill, alih-alih [menjalankannya di latar belakang](#run-skills-in-a-subagent). Default: `true`. |410| `background` | Tidak | Hanya berlaku dengan `context: fork`. Atur ke `false` untuk menunggu hasil subagent hasil fork dalam giliran yang memanggil skill, alih-alih [menjalankannya di latar belakang](#run-skills-in-a-subagent). Default: `true`. |

Details

1264 1264 

1265Setelah Keychain dapat ditulis lagi, Claude Code memindahkan kredensial kembali saat berikutnya menulis kredensial. Untuk memaksanya sekarang, jalankan `/logout` dan kemudian `/login`. Logout menghapus semua kredensial yang disimpan, termasuk isi file plaintext, login server MCP yang disimpan, dan nilai sensitif plugin, jadi bersiaplah untuk mengotorisasi ulang server MCP dan memasukkan ulang plugin secrets sesudahnya. Login lagi menyimpan login Anda di Keychain.1265Setelah Keychain dapat ditulis lagi, Claude Code memindahkan kredensial kembali saat berikutnya menulis kredensial. Untuk memaksanya sekarang, jalankan `/logout` dan kemudian `/login`. Logout menghapus semua kredensial yang disimpan, termasuk isi file plaintext, login server MCP yang disimpan, dan nilai sensitif plugin, jadi bersiaplah untuk mengotorisasi ulang server MCP dan memasukkan ulang plugin secrets sesudahnya. Login lagi menyimpan login Anda di Keychain.

1266 1266 

1267#### Login fails on a network home directory

1268 

1269Saat permintaan gagal dengan `API Error: 401` dan [direktori konfigurasi](https://code.claude.com/docs/id/claude-directory.md) Anda berada di filesystem jaringan, periksa apakah filesystem tersebut atau kuota Anda di dalamnya sudah penuh. Tanpa ruang tersisa, Claude Code tidak dapat menyimpan login baru atau yang diperbarui ke [file `.credentials.json`](https://code.claude.com/docs/id/authentication#credential-management) plaintext, dan `claude auth login` tetap dapat mencetak `Login successful.`

1270 

1271**1. Kosongkan ruang di filesystem**

1272 

1273Hapus file yang tidak lagi Anda perlukan di filesystem yang menampung `~/.claude`, atau direktori yang Anda atur di [`CLAUDE_CONFIG_DIR`](https://code.claude.com/docs/id/env-vars).

1274 

1275**2. Sign in lagi**

1276 

1277Jalankan `/login` di prompt Claude Code atau `claude auth login` di shell Anda.

1278 

1279Sebelum v2.1.318, saat Claude Code menyimpan file login di filesystem jaringan yang penuh, Claude Code dapat mengganti login tersimpan yang masih valid dengan file kosong. Perintah selanjutnya kemudian melaporkan `Not logged in`.

1280 

1267### Bedrock, Agent Platform, or Foundry credentials not loading1281### Bedrock, Agent Platform, or Foundry credentials not loading

1268 1282 

1269Jika Anda mengkonfigurasi Claude Code untuk menggunakan cloud provider dan melihat `Could not load credentials from any providers` di Amazon Bedrock, `Could not load the default credentials` di Google Cloud's Agent Platform, atau `ChainedTokenCredential authentication failed` di Microsoft Foundry, cloud provider CLI Anda mungkin tidak terautentikasi di shell saat ini.1283Jika Anda mengkonfigurasi Claude Code untuk menggunakan cloud provider dan melihat `Could not load credentials from any providers` di Amazon Bedrock, `Could not load the default credentials` di Google Cloud's Agent Platform, atau `ChainedTokenCredential authentication failed` di Microsoft Foundry, cloud provider CLI Anda mungkin tidak terautentikasi di shell saat ini.

vs-code.md +7 −2

Details

818 818 

819### Menjalankan CLI di VS Code819### Menjalankan CLI di VS Code

820 820 

821Untuk menggunakan CLI tanpa meninggalkan VS Code, tekan `` Ctrl+` `` di Windows/Linux atau `` Cmd+` `` di Mac untuk membuka terminal terintegrasi, lalu jalankan `claude`. CLI secara otomatis terintegrasi dengan IDE Anda untuk fitur seperti melihat diff dan berbagi diagnostik. Jika Anda menggunakan terminal eksternal, jalankan `/ide` di dalam Claude Code untuk menghubungkannya ke VS Code.821Untuk menggunakan CLI tanpa meninggalkan VS Code, tekan `` Ctrl+` `` di Windows/Linux atau `` Cmd+` `` di Mac untuk membuka terminal terintegrasi, lalu jalankan `claude`. Menjalankan `claude` tidak menginstal ekstensi. Tanpa ekstensi, `/ide` di terminal terintegrasi melaporkan "No available IDEs detected" dan `/status` menampilkan IDE sebagai "Not connected".

822 

823Untuk mendapatkan fitur seperti melihat diff dan berbagi diagnostik, hubungkan CLI ke ekstensi dari terminal terintegrasi atau terminal eksternal:

824 

825* **Terminal terintegrasi**: [instal ekstensi](#install-the-extension), lalu jalankan `claude`. CLI akan terhubung secara otomatis.

826* **Terminal eksternal**: jalankan `/ide` di dalam Claude Code untuk terhubung ke VS Code. Jika VS Code berjalan tanpa ekstensi, `/ide` akan menginstalnya, kecuali Anda menonaktifkan [`autoInstallIdeExtension`](https://code.claude.com/docs/id/settings-reference#autoinstallideextension).

822 827 

823Menginstal ekstensi tidak menempatkan `claude` di PATH shell Anda. Ekstensi menyertakan salinan privat CLI untuk panel obrolannya, tetapi mengetik `claude` di terminal memerlukan [instalasi CLI mandiri](https://code.claude.com/docs/id/setup.md). Jalankan instalasi sekali dan perintah-perintah di halaman ini, termasuk `claude mcp add` dan `claude --resume`, akan berfungsi di terminal mana pun. Jika `claude` masih tidak ditemukan setelah instalasi, [verifikasi PATH Anda](https://code.claude.com/docs/id/troubleshoot-install.md#verify-your-path).828Menginstal ekstensi tidak menempatkan `claude` di PATH shell Anda. Ekstensi menyertakan salinan privat CLI untuk panel obrolannya, tetapi mengetik `claude` di terminal memerlukan [instalasi CLI mandiri](https://code.claude.com/docs/id/setup.md). Jalankan instalasi sekali dan perintah-perintah di halaman ini, termasuk `claude mcp add` dan `claude --resume`, akan berfungsi di terminal mana pun. Jika `claude` masih tidak ditemukan setelah instalasi, [verifikasi PATH Anda](https://code.claude.com/docs/id/troubleshoot-install.md#verify-your-path).

824 829 


10862. Cari "Claude Code"10912. Cari "Claude Code"

10873. Klik **Uninstall**10923. Klik **Uninstall**

1088 1093 

1089Jika Anda menjalankan `claude` di terminal terintegrasi VS Code, Claude Code akan menginstal ulang ekstensi secara otomatis. Agar ekstensi tetap tidak terinstal, matikan **Auto-install IDE extension** di `/config`, atau atur [`autoInstallIdeExtension`](https://code.claude.com/docs/id/settings-reference#autoinstallideextension) ke `false`. Anda juga dapat mengatur environment variable [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](https://code.claude.com/docs/id/env-vars) ke `1`.1094Ekstensi tetap tidak terinstal saat Anda memulai `claude`. Jika Anda menjalankan `/ide` dari terminal eksternal saat VS Code sedang berjalan, Claude Code akan menginstalnya ulang. Untuk mencegahnya, atur [`autoInstallIdeExtension`](https://code.claude.com/docs/id/settings-reference#autoinstallideextension) ke `false` di `~/.claude.json`, atau matikan **Auto-install IDE extension** di `/config` dari terminal terintegrasi. Anda juga dapat mengatur environment variable [`CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL`](https://code.claude.com/docs/id/env-vars) ke `1`.

1090 1095 

1091Untuk juga menghapus data ekstensi dan mengatur ulang semua pengaturan, hapus direktori penyimpanan ekstensi untuk platform Anda.1096Untuk juga menghapus data ekstensi dan mengatur ulang semua pengaturan, hapus direktori penyimpanan ekstensi untuk platform Anda.

1092 1097