SpyBara
Go Premium

Documentation 2026-09-29 23:58 UTC to 2026-09-30 06:58 UTC

51 files changed +620 −253. View all changes and history on the product overview
2026
Wed 30 06:58 Tue 29 23:58 Mon 28 22:59 Fri 25 23:58 Thu 24 22:57 Wed 23 23:57 Tue 22 23:59 Mon 21 22:59 Sun 20 23:59 Sat 19 23:57 Fri 18 23:58 Tue 15 23:58 Mon 14 22:58 Sun 13 21:00 Sat 12 03:02 Thu 10 23:00 Wed 9 22:58 Tue 8 20:00 Tue 1 21:02

agent-view.md +28 −2

Details

64 </Step>64 </Step>

65</Steps>65</Steps>

66 66 

67Anda dapat menggunakan `claude agents` sebagai titik masuk utama Anda alih-alih `claude`: kirim setiap tugas dari tampilan agen, lampirkan ketika Anda menginginkan percakapan lengkap, dan tekan `←` untuk kembali ke tabel.

68 

69Di dalam sesi `claude` biasa, petunjuk `←` footer prompt menghitung agen latar belakang yang menunggu Anda, seperti `← 2 agents`, dan kembali ke `← for agents` ketika tidak ada yang memerlukan input. Hitungan di atas 99 ditampilkan sebagai `99+`. Hitungan menyegarkan sekitar setiap sepuluh detik saat terminal difokuskan dan segera ketika fokus kembali. Warna berubah sebentar ketika bergerak dan ketika agen selesai, dan ketika sesi latar belakang selesai sementara tidak ada yang memerlukan input Anda, warna tersebut secara singkat menampilkan jumlah yang selesai, seperti `← 2 done`. Kedua kilatan ini mati ketika pengaturan [`prefersReducedMotion`](/docs/id/settings-reference#prefersreducedmotion) aktif, dan petunjuk tersembunyi dalam [mode pembaca layar](/docs/id/accessibility).67Di dalam sesi `claude` biasa, petunjuk `←` footer prompt menghitung agen latar belakang yang menunggu Anda, seperti `← 2 agents`, dan kembali ke `← for agents` ketika tidak ada yang memerlukan input. Hitungan di atas 99 ditampilkan sebagai `99+`. Hitungan menyegarkan sekitar setiap sepuluh detik saat terminal difokuskan dan segera ketika fokus kembali. Warna berubah sebentar ketika bergerak dan ketika agen selesai, dan ketika sesi latar belakang selesai sementara tidak ada yang memerlukan input Anda, warna tersebut secara singkat menampilkan jumlah yang selesai, seperti `← 2 done`. Kedua kilatan ini mati ketika pengaturan [`prefersReducedMotion`](/docs/id/settings-reference#prefersreducedmotion) aktif, dan petunjuk tersembunyi dalam [mode pembaca layar](/docs/id/accessibility).

70 68 

69<h3 id="open-agent-view-by-default">

70 Buka tampilan agen secara default

71</h3>

72 

73Untuk membuat `claude` tanpa argumen membuka tampilan agen alih-alih percakapan baru, aktifkan pengaturan `/config`.

74 

75<Steps>

76 <Step title="Aktifkan pengaturan">

77 Dalam sesi `claude` biasa, jalankan `/config` dan aktifkan **Open agents view by default**. Untuk melewati menu, atur kunci [`defaultToAgentsView`](/docs/id/settings-reference#defaulttoagentsview) secara langsung:

78 

79 ```text theme={null}

80 /config defaultToAgentsView=true

81 ```

82 </Step>

83 

84 <Step title="Mulai Claude Code">

85 Keluar dari sesi, kemudian jalankan `claude` tanpa argumen:

86 

87 ```bash theme={null}

88 claude

89 ```

90 

91 Tampilan agen terbuka sebagai pengganti percakapan baru.

92 </Step>

93</Steps>

94 

95Untuk memulai sesi biasa saat pengaturan aktif, berikan prompt: `claude "fix the login test"`. Untuk mematikan pengaturan, jalankan `/config defaultToAgentsView=false` dalam sesi biasa atau dalam sesi yang Anda lampirkan dari tampilan agen.

96 

71<h2 id="monitor-sessions-with-agent-view">97<h2 id="monitor-sessions-with-agent-view">

72 Pantau sesi dengan tampilan agen98 Pantau sesi dengan tampilan agen

73</h2>99</h2>

Details

482 482 

483Claude Sonnet 5, Opus 4.6 dan yang lebih baru, serta Sonnet 4.6 mendukung [jendela konteks token 1M](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) di Amazon Bedrock. Sonnet 5 selalu berjalan dengan jendela 1M di kedua API Invoke dan [endpoint Mantle](#use-the-mantle-endpoint), tanpa varian `[1m]` untuk dipilih. Untuk model lainnya di API Invoke, Claude Code secara otomatis mengaktifkan jendela konteks yang diperluas ketika Anda memilih varian model 1M.483Claude Sonnet 5, Opus 4.6 dan yang lebih baru, serta Sonnet 4.6 mendukung [jendela konteks token 1M](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) di Amazon Bedrock. Sonnet 5 selalu berjalan dengan jendela 1M di kedua API Invoke dan [endpoint Mantle](#use-the-mantle-endpoint), tanpa varian `[1m]` untuk dipilih. Untuk model lainnya di API Invoke, Claude Code secara otomatis mengaktifkan jendela konteks yang diperluas ketika Anda memilih varian model 1M.

484 484 

485[Wizard pengaturan](#sign-in-with-bedrock) menawarkan opsi konteks 1M ketika mempin model. Untuk mengaktifkannya untuk model yang dipinnya secara manual, tambahkan `[1m]` ke ID model. Lihat [Pin models for third-party deployments](/docs/id/model-config#pin-models-for-third-party-deployments) untuk detail.485[Wizard pengaturan](#sign-in-with-bedrock) menawarkan opsi konteks 1M ketika mempin model. Untuk mengaktifkannya untuk model yang dipinnya secara manual, tambahkan `[1m]` ke ID model. Lihat [Pin models for third-party deployments](/docs/id/model-config#pin-models-for-third-party-deployments) untuk detail, termasuk cara menggunakan jendela 1M tanpa mengubah pin.

486 486 

487<h2 id="service-tiers">487<h2 id="service-tiers">

488 Tingkat layanan488 Tingkat layanan

artifacts.md +11 −11

Details

100Siapa yang dapat Anda bagikan tergantung pada paket Anda:100Siapa yang dapat Anda bagikan tergantung pada paket Anda:

101 101 

102* **Dalam organisasi Anda**: pada paket Team dan Enterprise, berikan akses ke orang-orang tertentu di organisasi Anda, atau ke semua orang di dalamnya. Penampil masuk ke claude.ai sebagai anggota organisasi Anda untuk melihat halaman.102* **Dalam organisasi Anda**: pada paket Team dan Enterprise, berikan akses ke orang-orang tertentu di organisasi Anda, atau ke semua orang di dalamnya. Penampil masuk ke claude.ai sebagai anggota organisasi Anda untuk melihat halaman.

103* **Secara publik**: bagikan tautan yang dapat dibuka siapa saja di internet, tanpa memerlukan masuk claude.ai. Pada paket Pro dan Max, tautan publik adalah satu-satunya cara untuk membagikan artefak. Pada paket Team dan Enterprise, berbagi publik dimatikan sampai Pemilik [mengaktifkannya untuk organisasi](#control-public-sharing).103* **Secara publik**: bagikan tautan yang dapat dibuka siapa saja di internet, tanpa memerlukan masuk claude.ai. Pada paket Team dan Enterprise, berbagi publik dimatikan sampai Pemilik [mengaktifkannya untuk organisasi](#control-public-sharing).

104 104 

105<h3 id="let-someone-edit-with-you">105<h3 id="let-someone-edit-with-you">

106 Biarkan seseorang mengedit bersama Anda106 Biarkan seseorang mengedit bersama Anda


122 Kumpulkan komentar pada artefak122 Kumpulkan komentar pada artefak

123</h2>123</h2>

124 124 

125Ketika Anda membagikan artefak dalam organisasi Anda, orang-orang yang Anda bagikan dapat meninggalkan komentar di halaman, dan Anda dapat meminta Claude membaca komentar tersebut dan membalasnya. Anda memerlukan Claude Code v2.1.221 atau lebih baru dan paket Team atau Enterprise, karena hanya artefak yang Anda [bagikan dalam organisasi](#share-an-artifact) yang menerima komentar. Claude membaca komentar dalam dua kasus:125Ketika Anda membagikan artefak dalam organisasi Anda, orang-orang yang Anda bagikan dapat meninggalkan komentar di halaman, dan Anda dapat meminta Claude membaca komentar tersebut dan membalasnya. Anda memerlukan Claude Code v2.1.221 atau lebih baru. Claude membaca komentar dalam dua kasus:

126 126 

127* **Anda meminta Claude membacanya**: berikan Claude URL artefak dan minta komentarnya. Claude mencantumkan setiap thread dan menandai komentar dari seseorang yang dapat mengedit artefak yang dikirimkan kepadanya.127* **Anda meminta Claude membacanya**: berikan Claude URL artefak dan minta komentarnya. Claude mencantumkan setiap thread dan menandai komentar dari seseorang yang dapat mengedit artefak yang dikirimkan kepadanya.

128* **Seseorang yang dapat mengedit artefak mengirim komentar ke Claude**: dalam thread di halaman, mereka mengirim komentar dengan **Send to Claude**, atau menyebutkan `@claude` di dalamnya. Kedua cara tersebut mengaktifkan thread.128* **Seseorang yang dapat mengedit artefak mengirim komentar ke Claude**: dalam thread di halaman, mereka mengirim komentar dengan **Send to Claude**, atau menyebutkan `@claude` di dalamnya. Kedua cara tersebut mengaktifkan thread.

129 129 

130Claude hanya dapat membalas atau menyelesaikan thread yang diaktifkan. Thread lainnya tetap terbuka sampai seseorang menyelesaikannya di halaman. Penonton melihat setiap balasan yang dikaitkan dengan Claude, melalui Anda.130Claude hanya dapat membalas atau menyelesaikan thread yang diaktifkan. Thread lainnya tetap terbuka sampai seseorang menyelesaikannya di halaman. Penonton melihat setiap balasan yang dikaitkan dengan Claude, melalui Anda.

131 131 

132Jika Anda membagikan artefak secara publik, penonton tidak dapat mengomentarinya: halaman mengatakan `Comments aren't available while this Artifact is shared publicly.` Untuk mengubah artefak yang sudah memiliki thread komentar menjadi tautan publik, hapus thread terlebih dahulu.132Jika Anda membagikan artefak secara publik, orang-orang yang hanya memiliki akses melalui tautan publik tidak melihat komentarnya dan tidak dapat menambahkan apa pun. Thread komentar yang ada tetap berada di artefak, dan Anda serta editornya masih dapat membaca dan membalasnya.

133 133 

134Untuk meminta komentar sendiri, berikan Claude URL-nya:134Untuk meminta komentar sendiri, berikan Claude URL-nya:

135 135 


195 195 

196Ketika Anda berencana untuk berbagi halaman yang didukung konektor, minta Claude untuk menyertakan pesan fallback di setiap bagian langsung yang menamakan konektor yang dibutuhkannya. Penampil yang kehilangan koneksi kemudian melihat apa yang harus dihubungkan daripada bagian kosong.196Ketika Anda berencana untuk berbagi halaman yang didukung konektor, minta Claude untuk menyertakan pesan fallback di setiap bagian langsung yang menamakan konektor yang dibutuhkannya. Penampil yang kehilangan koneksi kemudian melihat apa yang harus dihubungkan daripada bagian kosong.

197 197 

198Artifact yang memanggil konektor tidak dapat dibagikan ke tautan publik di paket apa pun. Di paket Team dan Enterprise, Anda dapat menyimpannya tetap pribadi atau [membagikannya dalam organisasi Anda](#share-an-artifact). Di paket Pro dan Max, di mana tautan publik adalah satu-satunya cara untuk berbagi, artifact yang didukung konektor tetap pribadi untuk Anda.198Anda dapat [berbagi halaman yang didukung konektor](#share-an-artifact) dalam organisasi Anda atau secara publik, sesuai dengan paket dan pengaturan organisasi Anda. Panggilan konektor tidak berjalan untuk penampil yang membuka tautan publik tanpa masuk ke claude.ai, atau dari luar organisasi Anda. Penampil tersebut melihat halaman tanpa bagian langsung-nya.

199 199 

200<h3 id="the-page-shows-no-live-data-for-a-viewer">200<h3 id="the-page-shows-no-live-data-for-a-viewer">

201 Halaman tidak menampilkan data langsung untuk penampil201 Halaman tidak menampilkan data langsung untuk penampil

202</h3>202</h3>

203 203 

204Ketika halaman yang didukung konektor dirender tetapi bagian langsung-nya tetap kosong untuk seseorang yang Anda bagikan, kerjakan penyebab-penyebab ini:204Ketika halaman yang didukung konektor dirender tetapi bagian langsung-nya tetap kosong untuk penampil dalam organisasi Anda, kerjakan penyebab-penyebab ini:

205 205 

206* **Penampil belum menghubungkan konektor**: konektor adalah per-akun, jadi setiap penampil memerlukan koneksi mereka sendiri ke setiap konektor yang dipanggil halaman. Mereka dapat menambahkan satu di bawah **Settings > Connectors** di claude.ai, kemudian muat ulang halaman.206* **Penampil belum menghubungkan konektor**: konektor adalah per-akun, jadi setiap penampil memerlukan koneksi mereka sendiri ke setiap konektor yang dipanggil halaman. Mereka dapat menambahkan satu di bawah **Settings > Connectors** di claude.ai, kemudian muat ulang halaman.

207* **Penampil menolak permintaan izin**: penolakan berlaku untuk sisa pemuatan halaman itu. Memuat ulang halaman membawa permintaan izin kembali.207* **Penampil menolak permintaan izin**: penolakan berlaku untuk sisa pemuatan halaman itu. Memuat ulang halaman membawa permintaan izin kembali.


375 375 

376| Persyaratan | Tersedia ketika |376| Persyaratan | Tersedia ketika |

377| :- | :- |377| :- | :- |

378| Paket | Pro, Max, Team, atau Enterprise. Pada paket Pro dan Max, artifacts bersifat pribadi untuk Anda sampai Anda membagikannya, dan tidak ada manajemen admin yang berlaku. Pada paket Team, artifacts diaktifkan secara default. Pada paket Enterprise, pemilik [mengaktifkannya](#manage-artifacts-for-your-organization) di pengaturan admin claude.ai. |378| Paket | Pro, Max, Team, atau Enterprise. Pada paket Pro dan Max, artifacts bersifat pribadi untuk Anda sampai Anda membagikannya, dan tidak ada manajemen admin yang berlaku. Pada paket Team dan Enterprise, artifacts diaktifkan secara default, dan Pemilik dapat [mengaturnya untuk organisasi](#manage-artifacts-for-your-organization) di pengaturan admin claude.ai. |

379| Autentikasi | Sesi didukung oleh akun claude.ai: masuk dengan `/login` di CLI atau aplikasi desktop. Sesi Claude Tag masuk melalui identitas agen, jadi tidak ada langkah yang diperlukan di sana. Sesi menggunakan kunci API, [gateway token](/docs/id/llm-gateway), atau kredensial penyedia cloud tidak dapat menerbitkan. |379| Autentikasi | Sesi didukung oleh akun claude.ai: masuk dengan `/login` di CLI atau aplikasi desktop. Sesi Claude Tag masuk melalui identitas agen, jadi tidak ada langkah yang diperlukan di sana. Sesi menggunakan kunci API, [gateway token](/docs/id/llm-gateway), atau kredensial penyedia cloud tidak dapat menerbitkan. |

380| Penyedia model | Anthropic API. Tidak tersedia di [Amazon Bedrock](/docs/id/amazon-bedrock), [Google Cloud's Agent Platform](/docs/id/google-vertex-ai), atau [Microsoft Foundry](/docs/id/microsoft-foundry). |380| Penyedia model | Anthropic API. Tidak tersedia di [Amazon Bedrock](/docs/id/amazon-bedrock), [Google Cloud's Agent Platform](/docs/id/google-vertex-ai), atau [Microsoft Foundry](/docs/id/microsoft-foundry). |

381| Kebijakan organisasi | Kunci enkripsi yang dikelola pelanggan (CMEK), HIPAA, dan [Zero Data Retention](/docs/id/zero-data-retention) tidak diaktifkan untuk organisasi. |381| Kebijakan organisasi | Kunci enkripsi yang dikelola pelanggan (CMEK), HIPAA, dan [Zero Data Retention](/docs/id/zero-data-retention) tidak diaktifkan untuk organisasi. |


408 Kelola artifacts untuk organisasi Anda408 Kelola artifacts untuk organisasi Anda

409</h2>409</h2>

410 410 

411Pemilik pada paket Team dan Enterprise mengontrol artifacts dari [pengaturan admin claude.ai](https://claude.ai/admin-settings/claude-code). Konten artifact disimpan di infrastruktur yang dioperasikan Anthropic dan hanya terlihat oleh anggota terautentikasi dari organisasi penerbit, kecuali artifact [dibagikan secara publik](#control-public-sharing).411Pemilik pada paket Team dan Enterprise mengontrol artifacts dari [pengaturan admin claude.ai](https://claude.ai/admin-settings/artifacts). Konten artifact disimpan di infrastruktur yang dioperasikan Anthropic dan hanya terlihat oleh anggota terautentikasi dari organisasi penerbit dan orang-orang yang mereka bagikan dengannya, kecuali artifact [dibagikan secara publik](#control-public-sharing).

412 412 

413<h3 id="enable-or-disable-artifacts">413<h3 id="enable-or-disable-artifacts">

414 Aktifkan atau nonaktifkan artifacts414 Aktifkan atau nonaktifkan artifacts

415</h3>415</h3>

416 416 

417Untuk mengaktifkan atau menonaktifkan artifacts untuk seluruh organisasi, buka [**Settings > Claude Code > Capabilities**](https://claude.ai/admin-settings/claude-code) dan gunakan toggle **Artifacts**. Pada paket Enterprise dengan kontrol akses berbasis peran, Anda dapat membatasi artifacts ke peran tertentu: buka [**Settings > Roles**](https://claude.ai/admin-settings/roles), edit peran, dan atur izin **Artifacts** di bawah grup **Claude Code**.417Untuk mengaktifkan atau menonaktifkan artifacts untuk seluruh organisasi, buka [**Organization settings > Artifacts**](https://claude.ai/admin-settings/artifacts) dan gunakan toggle **Artifacts**. Pada paket Enterprise dengan kontrol akses berbasis peran, Anda dapat membatasi artifacts ke peran tertentu: buka [**Organization settings > Roles**](https://claude.ai/admin-settings/roles), edit peran, dan atur izin **Artifacts**.

418 418 

419<h3 id="control-connector-calls-from-artifacts">419<h3 id="control-connector-calls-from-artifacts">

420 Kontrol panggilan connector dari artifacts420 Kontrol panggilan connector dari artifacts

421</h3>421</h3>

422 422 

423[Panggilan connector dari artifacts](#pull-live-data-with-mcp-connectors) memiliki toggle mereka sendiri, terpisah dari toggle **Artifacts** yang mengaktifkan atau menonaktifkan artifacts. Buka [**Settings > Capabilities**](https://claude.ai/admin-settings/capabilities) dan gunakan toggle **Enable artifact connectors**. Toggle yang sama mengatur panggilan connector dari artifacts yang dibuat dalam percakapan claude.ai, itulah mengapa toggle ini berada di bawah **Settings > Capabilities** daripada **Settings > Claude Code**.423[Panggilan connector dari artifacts](#pull-live-data-with-mcp-connectors) memiliki toggle mereka sendiri, terpisah dari toggle **Artifacts** yang mengaktifkan atau menonaktifkan artifacts. Buka [**Organization settings > Capabilities**](https://claude.ai/admin-settings/capabilities) dan gunakan toggle **Enable artifact connectors**. Toggle yang sama mengatur panggilan connector dari artifacts yang dibuat dalam percakapan claude.ai.

424 424 

425<h3 id="control-public-sharing">425<h3 id="control-public-sharing">

426 Kontrol berbagi publik426 Kontrol berbagi publik

427</h3>427</h3>

428 428 

429Berbagi publik dimatikan secara default pada paket Team dan Enterprise, jadi anggota dapat berbagi artifacts hanya dalam organisasi sampai Pemilik mengaktifkannya. Untuk memungkinkan anggota menerbitkan artifacts ke tautan publik yang dapat dilihat siapa saja tanpa masuk, buka **Settings > Claude Code > Capabilities** dan aktifkan **External sharing** di bawah toggle **Artifacts**. Menonaktifkannya kembali memblokir akses melalui tautan publik yang ada tanpa mengubah audiens setiap artifact; akses dilanjutkan jika Anda mengaktifkannya kembali.429Berbagi publik dimatikan secara default pada paket Team dan Enterprise. Untuk memungkinkan anggota menerbitkan artifacts ke tautan publik yang dapat dilihat siapa saja tanpa masuk, buka [**Organization settings > Artifacts**](https://claude.ai/admin-settings/artifacts) dan aktifkan **External sharing** di bawah toggle **Artifacts**. Menonaktifkannya kembali memblokir akses melalui tautan publik yang ada tanpa mengubah audiens setiap artifact; akses dilanjutkan jika Anda mengaktifkannya kembali.

430 430 

431<h3 id="set-a-retention-policy">431<h3 id="set-a-retention-policy">

432 Atur kebijakan retensi432 Atur kebijakan retensi

433</h3>433</h3>

434 434 

435Untuk mengatur berapa lama artifacts disimpan sebelum penghapusan otomatis, buka [**Settings > Data & privacy controls**](https://claude.ai/admin-settings/data-privacy-controls). Anda dapat mengatur periode retensi terpisah untuk artifacts yang masih pribadi untuk penulis mereka dan artifacts yang telah dibagikan.435Untuk mengatur berapa lama artifacts disimpan sebelum penghapusan otomatis, buka [**Organization settings > Data and privacy**](https://claude.ai/admin-settings/data-privacy-controls). Anda dapat mengatur periode retensi terpisah untuk artifacts yang masih pribadi untuk penulis mereka dan artifacts yang telah dibagikan.

436 436 

437<h3 id="review-the-audit-log">437<h3 id="review-the-audit-log">

438 Tinjau log audit438 Tinjau log audit

Details

163 Muatan tiba dalam konteks Claude sebagai tag `<channel>`:163 Muatan tiba dalam konteks Claude sebagai tag `<channel>`:

164 164 

165 ```text theme={null}165 ```text theme={null}

166 <channel source="webhook" path="/" method="POST">build failed on main: https://ci.example.com/run/1234</channel>166 <channel source="webhook" path="/" method="POST">

167 build failed on main: https://ci.example.com/run/1234

168 </channel>

167 ```169 ```

168 170 

169 Terminal Anda merender acara sebagai ringkasan satu baris, `← webhook: build failed on main: https://ci.example.com/run/1234`, daripada tag mentah. Anda kemudian akan melihat Claude mulai merespons: membaca file, menjalankan perintah, atau apa pun yang diminta pesan. Ini adalah channel satu arah, jadi Claude bertindak dalam sesi Anda tetapi tidak mengirim apa pun kembali melalui webhook. Untuk menambahkan balasan, lihat [Expose a reply tool](#expose-a-reply-tool).171 Terminal Anda merender acara sebagai ringkasan satu baris, `← webhook: build failed on main: https://ci.example.com/run/1234`, daripada tag mentah. Anda kemudian akan melihat Claude mulai merespons: membaca file, menjalankan perintah, atau apa pun yang diminta pesan. Ini adalah channel satu arah, jadi Claude bertindak dalam sesi Anda tetapi tidak mengirim apa pun kembali melalui webhook. Untuk menambahkan balasan, lihat [Expose a reply tool](#expose-a-reply-tool).

chrome.md +5 −2

Details

97* **Not now**: melanjutkan tugas tanpa alat browser. Claude Code dapat meminta lagi dalam sesi yang lebih baru.97* **Not now**: melanjutkan tugas tanpa alat browser. Claude Code dapat meminta lagi dalam sesi yang lebih baru.

98* **Don't ask again**: menghentikan prompt di sesi mendatang. Anda masih dapat menyiapkan integrasi kapan saja dengan `/chrome`.98* **Don't ask again**: menghentikan prompt di sesi mendatang. Anda masih dapat menyiapkan integrasi kapan saja dengan `/chrome`.

99 99 

100Jika organisasi Anda memblokir server MCP `claude-in-chrome` dengan [pengaturan terkelola `deniedMcpServers`](/docs/id/managed-mcp#policy-based-control-with-allowlists-and-denylists), Claude Code tidak menampilkan prompt instalasi.100Dua kebijakan MCP terkelola mematikan prompt:

101 

102* Jika organisasi Anda memblokir server MCP `claude-in-chrome` dengan [pengaturan terkelola `deniedMcpServers`](/docs/id/managed-mcp#policy-based-control-with-allowlists-and-denylists), Claude Code tidak menampilkan prompt instalasi.

103* Jika organisasi Anda menerapkan file [`managed-mcp.json`](/docs/id/managed-mcp#exclusive-control-with-managed-mcp-json) tanpa [mengizinkan Claude in Chrome bersama set terkelola](/docs/id/managed-mcp#allow-claude-in-chrome-alongside-the-managed-set), Claude Code tidak menampilkan prompt instalasi.

101 104 

102<h3 id="enable-chrome-by-default">105<h3 id="enable-chrome-by-default">

103 Aktifkan Chrome secara default106 Aktifkan Chrome secara default


117 Kelola izin situs120 Kelola izin situs

118</h3>121</h3>

119 122 

120Izin tingkat situs diwarisi dari ekstensi Chrome. Kelola izin di pengaturan ekstensi Chrome untuk mengontrol situs mana yang dapat dijelajahi, diklik, dan diketik oleh Claude.123Izin tingkat situs diwarisi dari ekstensi Chrome. Kelola izin di pengaturan ekstensi Chrome untuk mengontrol situs mana yang dapat dijelajahi, diklik, dan diketik oleh Claude. Dalam [mode otomatis](/docs/id/permission-modes#eliminate-prompts-with-auto-mode), ketika pengklasifikasi mode otomatis itu sendiri menyetujui panggilan browser ke situs, ekstensi melewati pemeriksaan per-situsnya sendiri untuk panggilan itu, kecuali aturan izin Anda menolak situs apa pun ke Claude di Chrome.

121 124 

122<h3 id="browser-tools-in-plan-mode">125<h3 id="browser-tools-in-plan-mode">

123 Alat browser dalam plan mode126 Alat browser dalam plan mode

Details

273 273 

274Ketika sertifikat berputar, setiap pengembang melihat prompt kepercayaan lagi, jadi perlakukan rotasi sebagai acara yang direncanakan dan publikasikan ulang sidik jari. Jika kebijakan gateway Anda mencakup [pengaturan yang memerlukan persetujuan](/docs/id/server-managed-settings#security-approval-dialogs), pengembang juga melihat dialog persetujuan itu lagi setelah menerima sertifikat baru, karena Claude Code [memori persetujuan](/docs/id/server-managed-settings#approval-memory) kunci ke sertifikat yang disematkan.274Ketika sertifikat berputar, setiap pengembang melihat prompt kepercayaan lagi, jadi perlakukan rotasi sebagai acara yang direncanakan dan publikasikan ulang sidik jari. Jika kebijakan gateway Anda mencakup [pengaturan yang memerlukan persetujuan](/docs/id/server-managed-settings#security-approval-dialogs), pengembang juga melihat dialog persetujuan itu lagi setelah menerima sertifikat baru, karena Claude Code [memori persetujuan](/docs/id/server-managed-settings#approval-memory) kunci ke sertifikat yang disematkan.

275 275 

276Gateway dapat mengembalikan bidang `email` opsional dalam respons token-nya untuk menamai akun yang digunakan masuk. Ketika itu terjadi, pengembang mengonfirmasi akun sebelum Claude Code menyimpan kredensial. Setelah masuk yang dikonfirmasi, `/status` menampilkan akun.276Gateway dapat mengembalikan bidang `email` opsional dalam respons tokennya untuk menamai akun yang digunakan masuk. Ketika melakukannya, pengembang mengonfirmasi akun sebelum Claude Code menyimpan kredensial. Setelah masuk yang dikonfirmasi, `/status` menampilkan akun.

277 277 

278Konfirmasi memerlukan Claude Code v2.1.275 atau lebih baru di mesin pengembang; klien di bawah versi itu mengabaikan bidang. Server gateway dalam biner `claude` tidak mengembalikan bidang, jadi masuk-nya selesai tanpa konfirmasi.278Konfirmasi memerlukan Claude Code v2.1.275 atau lebih baru di mesin pengembang; klien di bawah versi itu mengabaikan bidang. Server gateway dalam biner `claude` tidak mengembalikan bidang, jadi masuk-masuknya selesai tanpa konfirmasi.

279 279 

280Setelah pengembang masuk, [pemilih model](/docs/id/model-config) menampilkan model dalam daftar izin `availableModels` mereka. Pengaturan yang dikelola diterapkan saat startup dan menyegarkan setiap jam, dan telemetri dirutekan ke kolektor Anda.280Setelah pengembang masuk, [pemilih model](/docs/id/model-config) menampilkan model dalam daftar izin `availableModels` mereka. Pengaturan yang dikelola diterapkan saat startup dan menyegarkan setiap jam, dan telemetri dirutekan ke kolektor Anda.

281 281 


285 Atur URL gateway285 Atur URL gateway

286</h3>286</h3>

287 287 

288Tiga kunci masuk ke file [pengaturan yang dikelola](/docs/id/managed-settings#delivery-mechanisms) per-OS yang Anda terapkan melalui MDM atau langsung di disk. `forceLoginMethod` dan `forceLoginGatewayUrl` membuka `/login` langsung di layar **Cloud gateway** dengan URL terisi, dan `parentSettingsBehavior: "merge"` memungkinkan Claude Desktop mengirimkan daftar izin egress gateway ke sesi Claude Code yang diluncurkannya, dijelaskan dalam [Kirimkan kebijakan ke sesi Claude Desktop](#deliver-policy-to-claude-desktop-sessions):288Tiga kunci masuk dalam file [pengaturan yang dikelola](/docs/id/managed-settings#delivery-mechanisms) per-OS yang Anda terapkan melalui MDM atau langsung di disk. `forceLoginMethod` dan `forceLoginGatewayUrl` membuka `/login` langsung di layar **Cloud gateway** dengan URL terisi, dan `parentSettingsBehavior: "merge"` memungkinkan Claude Desktop mengirimkan daftar izin egress gateway ke sesi Claude Code yang diluncurkannya, dijelaskan dalam [Kirimkan kebijakan ke sesi Claude Desktop](#deliver-policy-to-claude-desktop-sessions):

289 289 

290```json theme={null}290```json theme={null}

291{291{


295}295}

296```296```

297 297 

298Pengembang menekan Enter untuk terhubung. Prompt [sidik jari TLS koneksi pertama](#connect-developers) masih muncul. Setelah file berada di mesin, pengembang yang belum menyelesaikan masuk gateway melihat salah satu pesan yang dijelaskan di bawah [Kebijakan administrator memerlukan masuk Cloud gateway](/docs/id/errors#administrator-policy-requires-a-cloud-gateway-sign-in). Pengembang yang memilih penyedia cloud melalui variabel lingkungan seperti `CLAUDE_CODE_USE_BEDROCK` tidak memerlukan masuk gateway.298Pengembang menekan Enter untuk terhubung. Prompt sidik jari TLS [koneksi pertama](#connect-developers) masih muncul. Setelah file berada di mesin, pengembang yang belum menyelesaikan masuk gateway melihat salah satu pesan yang dijelaskan di bawah [Kebijakan administrator memerlukan masuk Cloud gateway](/docs/id/errors#administrator-policy-requires-a-cloud-gateway-sign-in). Pengembang yang memilih penyedia cloud melalui variabel lingkungan seperti `CLAUDE_CODE_USE_BEDROCK` tidak memerlukan masuk gateway.

299 299 

300Pengembang tidak dapat mengatur ini secara manual. Pemilih masuk tidak memiliki opsi gateway, dan `forceLoginGatewayUrl` diabaikan dalam file pengaturan pengembang sendiri. `forceLoginMethod` saja, tanpa URL, meninggalkan pengembang di pesan "Hubungi administrator IT Anda". Kunci masuk milik file yang Anda dorong ke mesin, bukan di blok `managed.policies[].cli` gateway, yang hanya menjangkau klien yang sudah terhubung.300Pengembang tidak dapat mengatur ini secara manual. Pemilih masuk tidak memiliki opsi gateway, dan `forceLoginGatewayUrl` diabaikan dalam file pengaturan pengembang sendiri. `forceLoginMethod` saja, tanpa URL, meninggalkan pengembang di pesan "Hubungi administrator IT Anda". Kunci masuk milik file yang Anda dorong ke mesin, bukan di blok `managed.policies[].cli` gateway, yang hanya menjangkau klien yang sudah terhubung.

301 301 


303 Izinkan gateway pada ruang alamat publik yang Anda miliki303 Izinkan gateway pada ruang alamat publik yang Anda miliki

304</h3>304</h3>

305 305 

306Beberapa organisasi menomori jaringan internal mereka dari blok IPv4 publik yang mereka miliki, seperti ruang alamat operator sendiri atau `/8` warisan, jadi gateway mereka tidak dapat memiliki alamat pribadi. Daftarkan blok tersebut dalam pengaturan yang dikelola `gatewayInternalNetworks`. `/login` kemudian menerima gateway di dalam blok yang terdaftar ketika mesin pengembang terhubung ke dalamnya dari alamat di dalam blok yang sama. Ini memerlukan Claude Code v2.1.268 atau lebih baru di mesin pengembang; versi sebelumnya mengabaikan kunci dan menerapkan aturan alamat pribadi.306Beberapa organisasi menomori jaringan internal mereka dari blok IPv4 publik yang mereka miliki, seperti ruang alamat operator sendiri atau `/8` warisan, jadi gateway mereka tidak dapat memiliki alamat pribadi. Daftarkan blok tersebut dalam pengaturan yang dikelola `gatewayInternalNetworks`. `/login` kemudian menerima gateway di dalam blok yang terdaftar ketika mesin pengembang terhubung darinya dari alamat di dalam blok yang sama. Ini memerlukan Claude Code v2.1.268 atau lebih baru di mesin pengembang; versi sebelumnya mengabaikan kunci dan menerapkan aturan alamat pribadi.

307 307 

308<Warning>308<Warning>

309 `gatewayInternalNetworks` adalah untuk jaringan internal yang kebetulan dinomori dari ruang alamat publik. Itu tidak membuat aman untuk mengekspos gateway ke internet: gateway yang dipercaya dapat mendorong pengaturan yang menjalankan perintah di mesin pengembang.309 `gatewayInternalNetworks` adalah untuk jaringan internal yang kebetulan dinomori dari ruang alamat publik. Ini tidak membuat aman untuk mengekspos gateway ke internet: gateway yang dipercaya dapat mendorong pengaturan yang menjalankan perintah di mesin pengembang.

310 310 

311 Jaga gateway tidak dapat dijangkau dari luar jaringan Anda dengan aturan firewall atau load balancer Anda. Atur [`access_control.allow_cidrs`](/docs/id/claude-apps-gateway-config#http-tuning) gateway ke blok yang sama yang Anda deklarasikan di sini, jadi gateway itu sendiri menolak klien dari tempat lain. Di belakang load balancer atau ingress, atur `listen.trusted_proxies` ke front end itu juga, karena gateway sebaliknya mencocokkan `allow_cidrs` terhadap alamat front end itu sendiri daripada pengembang.311 Jaga gateway tidak dapat dijangkau dari luar jaringan Anda dengan aturan firewall atau load balancer Anda. Atur [`access_control.allow_cidrs`](/docs/id/claude-apps-gateway-config#http-tuning) gateway ke blok yang sama yang Anda deklarasikan di sini, jadi gateway itu sendiri menolak klien dari tempat lain. Di belakang load balancer atau ingress, atur `listen.trusted_proxies` ke front end itu juga, karena gateway sebaliknya mencocokkan `allow_cidrs` terhadap alamat front end itu sendiri daripada pengembang.

312</Warning>312</Warning>

313 313 

314Tambahkan kunci ke sumber pengaturan yang dikelola yang sama dengan kunci masuk: file pengaturan yang dikelola, profil MDM, atau kebijakan registri. Claude Code mengabaikannya dalam pengaturan pengguna, proyek, dan yang dikelola server.314Tambahkan kunci ke sumber pengaturan yang dikelola yang sama dengan kunci masuk: file pengaturan yang dikelola, profil MDM, atau kebijakan registri. Claude Code mengabaikannya dalam pengaturan yang dikelola pengguna, proyek, dan server.

315 315 

316Contoh ini mendeklarasikan satu blok. Ganti `203.0.113.0/24` dengan blok Anda sendiri. Ini adalah rentang dokumentasi, dan Claude Code menolak yang tersebut.316Contoh ini mendeklarasikan satu blok. Ganti `203.0.113.0/24` dengan blok Anda sendiri. Ini adalah rentang dokumentasi, dan Claude Code menolak itu.

317 317 

318```json theme={null}318```json theme={null}

319{319{


328* Tidak ada blok yang tumpang tindih dengan ruang alamat pribadi: `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`, `127.0.0.0/8`, `169.254.0.0/16`, dan `100.64.0.0/10`. `/login` sudah menerima gateway di sana tanpa kunci ini.328* Tidak ada blok yang tumpang tindih dengan ruang alamat pribadi: `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`, `127.0.0.0/8`, `169.254.0.0/16`, dan `100.64.0.0/10`. `/login` sudah menerima gateway di sana tanpa kunci ini.

329* Tidak ada blok yang tumpang tindih dengan ruang yang tidak pernah menjadi jaringan organisasi: `198.18.0.0/15` dan `192.0.0.0/24`, yang dipegang klien VPN dan NAT64 sebagai alamat lokal; rentang dokumentasi `192.0.2.0/24`, `198.51.100.0/24`, dan `203.0.113.0/24`; dan rentang yang dicadangkan `0.0.0.0/8`, `192.88.99.0/24`, dan multicast `224.0.0.0/4`. Anda dapat mendeklarasikan blok di dalam `240.0.0.0/4`, yang digunakan beberapa jaringan besar sebagai ruang unicast internal.329* Tidak ada blok yang tumpang tindih dengan ruang yang tidak pernah menjadi jaringan organisasi: `198.18.0.0/15` dan `192.0.0.0/24`, yang dipegang klien VPN dan NAT64 sebagai alamat lokal; rentang dokumentasi `192.0.2.0/24`, `198.51.100.0/24`, dan `203.0.113.0/24`; dan rentang yang dicadangkan `0.0.0.0/8`, `192.88.99.0/24`, dan multicast `224.0.0.0/4`. Anda dapat mendeklarasikan blok di dalam `240.0.0.0/4`, yang digunakan beberapa jaringan besar sebagai ruang unicast internal.

330 330 

331Blok dari `managed-settings.json` dan file drop-in `managed-settings.d/` menggabungkan menjadi satu daftar, dan batas ini berlaku untuk daftar gabungan. Untuk mempersempit blok, ganti entrinya daripada menambahkan yang kedua, tumpang tindih dalam drop-in; `/login` menolak tumpang tindih.331Blok dari `managed-settings.json` dan file drop-in `managed-settings.d/` menggabungkan menjadi satu daftar, dan batas ini berlaku untuk daftar gabungan. Untuk mempersempit blok, ganti entrinya daripada menambahkan yang kedua, tumpang tindih di drop-in; `/login` menolak tumpang tindih.

332 332 

333Jika entri melanggar aturan, atau nilainya bukan daftar string, Claude Code menolak setiap masuk gateway baru di mesin itu dan menamai masalahnya dalam pesan. Masuk ke gateway pada alamat pribadi gagal juga, dan masuk yang ada tetap berfungsi. Coba nilai pada satu mesin sebelum Anda menerapkannya. Claude Code juga mencantumkan nilai yang salah ketik di antara [pengaturan yang dikelola tidak valid yang dilaporkannya](/docs/id/managed-settings#keys-that-fail-closed).333Jika entri melanggar aturan, atau nilainya bukan daftar string, Claude Code menolak setiap masuk gateway baru di mesin itu dan menyebutkan masalahnya dalam pesan. Masuk ke gateway pada alamat pribadi juga gagal, dan masuk yang ada tetap berfungsi. Coba nilai pada satu mesin sebelum Anda menerapkannya. Claude Code juga mencantumkan nilai yang salah ketik di antara [pengaturan yang dikelola tidak valid yang dilaporkannya](/docs/id/managed-settings#keys-that-fail-closed).

334 334 

335Dengan daftar yang valid, `/login` menerapkan tiga pemeriksaan ke gateway yang alamatnya berada di dalam blok yang terdaftar:335Dengan daftar yang valid, `/login` menerapkan tiga pemeriksaan ke gateway yang alamatnya berada di dalam blok yang terdaftar:

336 336 

337* Setiap alamat yang diselesaikan nama host gateway berada di dalam blok itu saja. Claude Code menolak nama yang juga memiliki catatan di luarnya, alamat pribadi dan IPv6 disertakan.337* Setiap alamat yang diselesaikan nama host gateway berada di dalam blok itu saja. Claude Code menolak nama yang juga memiliki catatan di luarnya, alamat pribadi dan IPv6 disertakan.

338* Mesin pengembang terhubung dari dalam blok yang sama. Claude Code menolak mesin di belakang NAT, di dalam kontainer atau WSL2, atau di VPN yang kumpulan alamatnya berada di luar blok, dan menamai alamat yang terhubung mesin dari.338* Mesin pengembang terhubung dari dalam blok yang sama. Claude Code menolak mesin di belakang NAT, di dalam kontainer atau WSL2, atau di VPN yang kumpulan alamatnya berada di luar blok, dan menyebutkan alamat yang terhubung mesin.

339* Koneksi bersifat langsung. Jika `HTTPS_PROXY` berlaku untuk host gateway, `/login` menolak dan menamai entri `NO_PROXY` untuk ditambahkan.339* Koneksi langsung. Jika `HTTPS_PROXY` berlaku untuk host gateway, `/login` menolak dan menyebutkan entri `NO_PROXY` untuk ditambahkan.

340 340 

341Ketika ketiga hal tersebut lulus, [prompt kepercayaan](#connect-developers) menambahkan baris yang menamai alamat mesin, alamat gateway, dan blok yang dideklarasikan yang berisi keduanya.341Ketika ketiga-tiganya lulus, prompt [kepercayaan](#connect-developers) menambahkan baris yang menyebutkan alamat mesin, alamat gateway, dan blok yang dideklarasikan yang berisi keduanya.

342 342 

343Kunci tidak mengubah apa pun untuk gateway lainnya: masuk ke yang ada di alamat pribadi berfungsi seperti sebelumnya, dan masuk ke yang ada di alamat publik di luar setiap blok yang terdaftar ditolak seperti sebelumnya.343Kunci tidak mengubah apa pun untuk gateway lain: masuk ke yang berada di alamat pribadi berfungsi seperti sebelumnya, dan masuk ke yang berada di alamat publik di luar setiap blok yang terdaftar ditolak seperti sebelumnya.

344 344 

345Blok yang dideklarasikan mempersempit siapa yang dapat masuk tetapi tidak membuktikan di mana mesin berada, jadi deklarasikan hanya ruang alamat yang dikendalikan organisasi Anda. Blok yang dibagikan dengan penyewa lain, seperti rentang publik penyedia cloud, membiarkan siapa pun di dalamnya lulus pemeriksaan yang sama.345Blok yang dideklarasikan mempersempit siapa yang dapat masuk tetapi tidak membuktikan di mana mesin berada, jadi deklarasikan hanya ruang alamat yang dikendalikan organisasi Anda. Blok yang dibagikan dengan penyewa lain, seperti rentang publik penyedia cloud, memungkinkan siapa pun di dalamnya lulus pemeriksaan yang sama.

346 346 

347<h3 id="deliver-policy-to-claude-desktop-sessions">347<h3 id="deliver-policy-to-claude-desktop-sessions">

348 Kirimkan kebijakan ke sesi Claude Desktop348 Kirimkan kebijakan ke sesi Claude Desktop

349</h3>349</h3>

350 350 

351Claude Desktop menjalankan tab Cowork dan Code-nya, ditambah tab Chat ketika Anda mengaktifkannya, pada sesi Claude Code tertanam dan mengirimkan permintaan model mereka melalui gateway. Ini melewatkan kebijakan ke setiap sesi tersebut, dibangun dari konfigurasi yang dilayani gateway di `/user/bootstrap`: daftar izin model, alat yang dinonaktifkan, dan daftar izin egress yang berasal dari blok `cli` kebijakan yang cocok, ditambah [overlay `desktop`](/docs/id/claude-apps-gateway-config#claude-desktop-overlay).351Claude Desktop menjalankan tab Cowork dan Code-nya, ditambah tab Chat ketika Anda mengaktifkannya, pada sesi Claude Code yang tertanam dan mengirimkan permintaan model mereka melalui gateway. Ini melewatkan kebijakan ke setiap sesi itu, dibangun dari konfigurasi yang disajikan gateway di `/user/bootstrap`: daftar izin model, alat yang dinonaktifkan, dan daftar izin egress yang berasal dari blok `cli` kebijakan yang cocok, ditambah [overlay `desktop`](/docs/id/claude-apps-gateway-config#claude-desktop-overlay).

352 352 

353Kunci `cli` lainnya, seperti hooks, `env`, dan aturan izin berskop seperti `Bash(npm *)`, hanya menjangkau klien yang masuk melalui `/login`. Claude Desktop membaca URL gateway dari konfigurasi yang dikelolanya sendiri dan masuk dengan alurnya sendiri, terpisah dari kunci `forceLoginMethod` dan `forceLoginGatewayUrl` dalam [Atur URL gateway](#set-the-gateway-url).353Kunci `cli` lainnya, seperti hooks, `env`, dan aturan izin yang dibatasi seperti `Bash(npm *)`, hanya menjangkau klien yang masuk melalui `/login`. Claude Desktop membaca URL gateway dari konfigurasi yang dikelolanya sendiri dan masuk dengan alur miliknya sendiri, terpisah dari kunci `forceLoginMethod` dan `forceLoginGatewayUrl` dalam [Atur URL gateway](#set-the-gateway-url).

354 354 

355Pengaturan yang dilewatkan oleh proses peluncur adalah pengaturan induk. Claude Code mengabaikan pengaturan induk di mesin apa pun yang memiliki sumber yang dikelola yang diterapkan admin, kecuali [sumber yang mengirimkan kebijakan](/docs/id/managed-settings#which-managed-source-claude-code-uses) menetapkan `parentSettingsBehavior: "merge"`.355Pengaturan yang dilewatkan oleh proses peluncur adalah pengaturan induk. Claude Code mengabaikan pengaturan induk di mesin apa pun yang memiliki sumber yang dikelola yang diterapkan admin, kecuali [sumber yang mengirimkan kebijakan](/docs/id/managed-settings#which-managed-source-claude-code-uses) menetapkan `parentSettingsBehavior: "merge"`.

356 356 


358 Mesin mana yang memerlukan opt-in358 Mesin mana yang memerlukan opt-in

359</h4>359</h4>

360 360 

361Mesin yang hanya menjalankan Claude Desktop membutuhkannya. Claude Desktop menerapkan daftar model dan daftar alat yang dinonaktifkan ke sesi tertanam itu sendiri, tetapi daftar izin egress menjangkaunya hanya sebagai pengaturan induk, dalam bentuk aturan domain `WebFetch` dan aturan jaringan sandbox. Tanpa opt-in, sesi tersebut berjalan tanpa pembatasan egress, dan tidak ada yang memperingatkan Anda. Gateway masih menolak permintaan inferensi untuk model yang tidak diizinkan kebijakan.361Mesin yang hanya menjalankan Claude Desktop membutuhkannya. Claude Desktop menerapkan daftar model dan daftar alat yang dinonaktifkan ke sesi yang tertanam itu sendiri, tetapi daftar izin egress menjangkaunya hanya sebagai pengaturan induk, dalam bentuk aturan domain `WebFetch` dan aturan jaringan sandbox. Tanpa opt-in, sesi itu berjalan tanpa pembatasan egress, dan tidak ada yang memperingatkan Anda. Gateway masih menolak permintaan inferensi untuk model yang tidak diizinkan kebijakan.

362 362 

363Mesin tempat pengembang masuk melalui `/login` tidak membutuhkannya; setiap sesi Claude Code mengambil kebijakannya dari gateway.363Daftar izin pasar plugin juga menjangkau sesi yang tertanam hanya sebagai pengaturan induk. Ketika Anda mematikan pasar plugin yang ditambahkan pengguna dalam konfigurasi yang dikelola Claude Desktop, Claude Desktop 2.16120.0 atau lebih baru menyembunyikan pasar yang organisasi Anda tidak sediakan dan menolak pemasangan dari mereka. Untuk menghentikan sesi yang tertanam dari memuat plugin yang sudah dipasang dari pasar itu, itu mengirimkan daftar `strictKnownMarketplaces` sebagai pengaturan induk. Tanpa opt-in, Claude Code mengabaikan daftar itu, dan plugin itu terus dimuat.

364 364 

365Armada yang [`policyHelper`](/docs/id/settings-reference#policyhelper) mereka suplai pengaturan yang dikelola tidak dapat menggunakannya: Claude Code tidak pernah menggabungkan pengaturan induk pada armada tersebut, karena membaca pengaturan yang dikelola dari output helper saja.365Mesin di mana pengembang masuk melalui `/login` tidak membutuhkannya; setiap sesi Claude Code mengambil kebijakannya dari gateway.

366 

367Armada yang [`policyHelper`](/docs/id/settings-reference#policyhelper) mereka sediakan pengaturan yang dikelola tidak dapat menggunakannya: Claude Code tidak pernah menggabungkan pengaturan induk di armada itu, karena itu membaca pengaturan yang dikelola dari output helper saja.

366 368 

367<h4 id="set-the-opt-in">369<h4 id="set-the-opt-in">

368 Atur opt-in370 Atur opt-in


376 </Step>378 </Step>

377 379 

378 <Step title="Cerminkan cuplikan ke sumber apa pun yang melampaui file">380 <Step title="Cerminkan cuplikan ke sumber apa pun yang melampaui file">

379 Claude Code membaca `parentSettingsBehavior` hanya dari [sumber yang dipilih](/docs/id/managed-settings#which-managed-source-claude-code-uses). Menambahkan kunci kebijakan apa pun ke sumber dapat membuat sumber itu menjadi sumber yang dipilih, jadi dalam sumber sisi klien, cerminkan seluruh cuplikan daripada `parentSettingsBehavior` saja. [Pengaturan yang dikelola sisi klien](/docs/id/claude-apps-gateway-config#client-side-managed-settings) mencakup armada yang mengirimkan kebijakan melalui Group Policy atau profil konfigurasi. Plist preferensi yang dikelola di macOS atau kebijakan HKLM di Windows melampaui file `managed-settings.json`, dan pengaturan yang dikelola jarak jauh gateway melampaui keduanya, jadi pada mesin yang masuk ke gateway, juga atur `parentSettingsBehavior` dalam [blok `cli`](/docs/id/claude-apps-gateway-config#managed) kebijakan gateway.381 Claude Code membaca `parentSettingsBehavior` hanya dari [sumber yang dipilih](/docs/id/managed-settings#which-managed-source-claude-code-uses). Menambahkan kunci kebijakan apa pun ke sumber dapat membuat sumber itu menjadi sumber yang dipilih, jadi dalam sumber sisi klien, cerminkan seluruh cuplikan daripada `parentSettingsBehavior` saja. [Pengaturan yang dikelola sisi klien](/docs/id/claude-apps-gateway-config#client-side-managed-settings) mencakup armada yang mengirimkan kebijakan melalui Group Policy atau profil konfigurasi. Plist preferensi yang dikelola di macOS atau kebijakan HKLM di Windows melampaui file `managed-settings.json`, dan pengaturan yang dikelola jarak jauh gateway melampaui keduanya, jadi di mesin yang masuk ke gateway, juga atur `parentSettingsBehavior` dalam [blok `cli`](/docs/id/claude-apps-gateway-config#managed) kebijakan gateway.

380 </Step>382 </Step>

381 383 

382 <Step title="Periksa sumber mana yang dipilih">384 <Step title="Periksa sumber mana yang dipilih">

383 Pada mesin yang hanya menjalankan Claude Desktop, panggil [`resolveSettings()`](/docs/id/agent-sdk/typescript#resolvesettings) SDK Agent dan baca `policyOrigin` pada entri `managed` dalam daftar `sources`-nya. Nilai tersebut menamai sumber sisi klien yang dipilih, `plist`, `hklm`, atau `file`, yang merupakan sumber yang harus membawa cuplikan. Sesi tertanam Claude Desktop tidak mengambil kebijakan gateway, jadi blok `cli` gateway tidak pernah dihitung sebagai sumber yang dipilih untuk mereka.385 Di mesin yang hanya menjalankan Claude Desktop, panggil [`resolveSettings()`](/docs/id/agent-sdk/typescript#resolvesettings) SDK Agent dan baca `policyOrigin` pada entri `managed` dalam daftar `sources` miliknya. Nilai menyebutkan sumber sisi klien yang dipilih, `plist`, `hklm`, atau `file`, yang merupakan sumber yang harus membawa cuplikan. Sesi yang tertanam Claude Desktop tidak mengambil kebijakan gateway, jadi blok `cli` gateway tidak pernah dihitung sebagai sumber yang dipilih untuk mereka.

384 </Step>386 </Step>

385</Steps>387</Steps>

386 388 


388 Batasi pengaturan induk390 Batasi pengaturan induk

389</h3>391</h3>

390 392 

391Setelah Anda menerapkan `parentSettingsBehavior: "merge"`, proses host apa pun yang meluncurkan Claude Code dapat menyuplai pengaturan induk, bukan hanya Claude Desktop tetapi juga aplikasi Agent SDK atau ekstensi IDE.393Setelah Anda menerapkan `parentSettingsBehavior: "merge"`, proses host apa pun yang meluncurkan Claude Code dapat menyediakan pengaturan induk, bukan hanya Claude Desktop tetapi juga aplikasi SDK Agent atau ekstensi IDE.

392 394 

393Claude Code memfilter pengaturan induk terhadap daftar izin kunci yang membatasi, tetapi beberapa kunci yang diizinkan dapat memberikan akses daripada membatasinya. Kecuali Anda menetapkan kunci `allowManaged*Only`, aturan izin izin dan daftar izin sandbox yang disuplai host masih berlaku. Aturan penolakan dan tanya kebijakan Anda tetap berlaku bagaimanapun; [mereka dievaluasi sebelum aturan izin apa pun](/docs/id/permissions#manage-permissions).395Claude Code memfilter pengaturan induk terhadap daftar izin kunci yang membatasi, tetapi beberapa kunci yang diizinkan dapat memberikan akses daripada membatasinya. Kecuali Anda menetapkan kunci `allowManaged*Only`, aturan izin izin dan daftar izin sandbox yang disediakan host masih berlaku. Aturan penolakan dan tanya kebijakan Anda tetap berlaku bagaimanapun; [mereka dievaluasi sebelum aturan izin apa pun](/docs/id/permissions#manage-permissions).

394 396 

395Claude Code meneruskan entri [`sandbox.credentials`](/docs/id/settings-reference#sandbox-credentials) yang disuplai induk dalam bentuk yang dilucuti:397Claude Code meneruskan entri [`sandbox.credentials`](/docs/id/settings-reference#sandbox-credentials) yang disediakan induk dalam bentuk yang dilucuti:

396 398 

397* **Entri `deny`**: diteruskan hanya dengan `path` atau `name` dan mode mereka.399* **Entri `deny`**: diteruskan dengan hanya `path` atau `name` mereka dan mode.

398* **Entri File dengan [`mode: mask`](/docs/id/sandboxing#mask-credential-files)**: diteruskan hanya sentinel, sebagai topeng seluruh file yang `injectHosts`-nya adalah daftar kosong, jadi proxy tidak pernah mengganti nilai nyata untuk entri yang disuplai induk di platform apa pun. Semua bidang masking terstruktur dijatuhkan juga, jadi pola ekstrak yang disuplai induk tidak dapat menggantikan topeng yang lebih ketat yang sumber lain tetapkan untuk jalur yang sama.400* **Entri File dengan [`mode: mask`](/docs/id/sandboxing#mask-credential-files)**: diteruskan hanya sentinel, sebagai topeng seluruh file yang `injectHosts` adalah daftar kosong, jadi proxy tidak pernah mengganti nilai nyata untuk entri yang disediakan induk di platform apa pun. Semua bidang masking terstruktur juga dijatuhkan, jadi pola ekstrak yang disediakan induk tidak dapat menggantikan topeng yang lebih ketat yang sumber lain tetapkan untuk jalur yang sama.

399* **Entri `envVars` dengan `mode: mask`**: tidak diteruskan. `deny` adalah satu-satunya pembatasan yang dapat diekspresikan saluran induk melalui entri `envVars`.401* **Entri `envVars` dengan `mode: mask`**: tidak diteruskan. `deny` adalah satu-satunya pembatasan yang saluran induk dapat mengekspresikan melalui entri `envVars`.

400* **[`awsPairs` dan `sigv4`](/docs/id/sandboxing#re-sign-aws-requests)**: diteruskan pembatasan saja. Dari `sigv4`, hanya nilai `deny` yang disimpan, dan induk yang mendefinisikan blok `sigv4` sama sekali menyematkan ketiga bentuk permintaan, `streaming`, `presigned`, dan `sigv4a`, ke `deny`. Pasangan `awsPairs` tidak pernah diteruskan dalam bentuk yang dapat menandatangani ulang; pasangan yang menamai salah satu variabel AWS konvensional diganti dengan entri inert yang menjaga pemasangan otomatis `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, dan `AWS_SESSION_TOKEN` ditekan.402* **[`awsPairs` dan `sigv4`](/docs/id/sandboxing#re-sign-aws-requests)**: diteruskan pembatasan saja. Dari `sigv4`, hanya nilai `deny` yang disimpan, dan induk yang mendefinisikan blok `sigv4` sama sekali menyematkan ketiga bentuk permintaan, `streaming`, `presigned`, dan `sigv4a`, ke `deny`. Pasangan `awsPairs` tidak pernah diteruskan dalam bentuk yang dapat menandatangani ulang; pasangan yang menyebutkan salah satu variabel AWS konvensional diganti dengan entri inert yang menjaga pasangan otomatis `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, dan `AWS_SESSION_TOKEN` ditekan.

401 403 

402<h4 id="deploy-the-locks">404<h4 id="deploy-the-locks">

403 Terapkan kunci405 Terapkan kunci


428}430}

429```431```

430 432 

431Kebijakan OS, seperti kebijakan registri HKLM atau plist preferensi yang dikelola, melampaui file ini, jadi kirimkan seluruh cuplikan melaluinya daripada file. Pengaturan yang dikelola jarak jauh gateway melampaui sumber kebijakan OS dan file tetapi hanya menjangkau klien yang terhubung. Cerminkan kunci, daftar izin, dan opt-in penggabungan ke dalam [blok `cli`](/docs/id/claude-apps-gateway-config#managed) kebijakan dan jaga file ini tetap diterapkan, karena mesin yang tidak pernah terhubung, termasuk yang hanya menjalankan Claude Desktop, mendapatkan kebijakan mereka dari file saja.433Kebijakan OS, seperti kebijakan registri HKLM atau plist preferensi yang dikelola, melampaui file ini, jadi kirimkan seluruh cuplikan melaluinya daripada file. Pengaturan yang dikelola jarak jauh gateway melampaui sumber kebijakan OS dan file tetapi hanya menjangkau klien yang terhubung. Cerminkan kunci, daftar izin, dan opt-in penggabungan ke dalam [blok `cli`](/docs/id/claude-apps-gateway-config#managed) kebijakan dan jaga file ini diterapkan, karena mesin yang tidak pernah terhubung, termasuk yang hanya menjalankan Claude Desktop, mendapatkan kebijakan mereka dari file saja.

432 434 

433<h4 id="lock-behavior-across-sources">435<h4 id="lock-behavior-across-sources">

434 Perilaku kunci di seluruh sumber436 Perilaku kunci di seluruh sumber


436 438 

437Menetapkan satu kunci tidak membatasi yang lain; setiap kunci didokumentasikan dalam [referensi pengaturan](/docs/id/settings-reference#all-settings).439Menetapkan satu kunci tidak membatasi yang lain; setiap kunci didokumentasikan dalam [referensi pengaturan](/docs/id/settings-reference#all-settings).

438 440 

439Dari sumber admin di bawah pemenang, dua kunci sandbox masih berlaku, dan `allowManagedPermissionRulesOnly` masih memblokir aturan izin yang disuplai induk dan `additionalDirectories`. Pada Claude Code v2.1.273 atau lebih baru, kunci server MCP juga berlaku dari sumber di bawah pemenang, dan sementara itu aktif, daftar `allowedMcpServers` yang dikelola berasal dari sumber admin prioritas tertinggi yang menetapkan satu.441Dari sumber admin di bawah pemenang, dua kunci sandbox masih berlaku, dan `allowManagedPermissionRulesOnly` masih memblokir aturan izin yang disediakan induk dan `additionalDirectories`. Pada Claude Code v2.1.273 atau lebih baru, kunci server MCP juga berlaku dari sumber di bawah pemenang, dan sementara itu aktif, daftar `allowedMcpServers` yang dikelola berasal dari sumber admin dengan prioritas tertinggi yang menetapkan satu.

440 442 

441Kunci hooks dan efek `allowManagedPermissionRulesOnly` pada aturan pengembang sendiri memerlukan sumber pemenang secara default; di bawah opt-in penggabungan `managedSourcesBehavior` dalam [bagaimana Claude Code menggabungkan sumber yang dikelola](/docs/id/managed-settings#how-claude-code-combines-managed-sources), Claude Code menerapkan nilai paling ketat yang ditetapkan sumber apa pun untuk setiap kunci. Pada armada [`policyHelper`](/docs/id/settings-reference#policyhelper), Claude Code membaca kunci dari output helper saja.443Kunci hooks dan efek `allowManagedPermissionRulesOnly` pada aturan pengembang sendiri memerlukan sumber pemenang secara default; di bawah opt-in penggabungan `managedSourcesBehavior` dalam [bagaimana Claude Code menggabungkan sumber yang dikelola](/docs/id/managed-settings#how-claude-code-combines-managed-sources), Claude Code menerapkan nilai paling ketat yang sumber apa pun tetapkan untuk setiap kunci. Pada armada [`policyHelper`](/docs/id/settings-reference#policyhelper), Claude Code membaca kunci dari output helper saja.

442 444 

443Setiap kunci membuat Claude Code mengabaikan entri pengembang sendiri untuk pengaturan itu, jadi sertakan daftar izin organisasi Anda di sebelah kunci:445Setiap kunci membuat Claude Code mengabaikan entri pengembang sendiri untuk pengaturan itu, jadi sertakan daftar izin organisasi Anda di sebelah kunci:

444 446 

445* **Domain jaringan**: mengunci dengan daftar domain yang dikelola kosong memblokir semua lalu lintas keluar sandbox.447* **Domain jaringan**: mengunci dengan daftar domain yang dikelola kosong memblokir semua lalu lintas keluar yang di-sandbox.

446* **Server MCP**: mengunci tanpa `allowedMcpServers` yang dikelola dalam sumber admin apa pun atau dalam pengaturan yang disuplai induk memuat setiap server yang tidak diblokir `deniedMcpServers`.448* **Server MCP**: mengunci tanpa `allowedMcpServers` dalam sumber admin apa pun atau dalam pengaturan yang disediakan induk memuat setiap server yang `deniedMcpServers` tidak blokir.

447* **Jalur baca**: entri `allowRead` hanya mengizinkan ulang jalur di dalam wilayah `denyRead`, jadi pasangkan dengan `denyRead` yang dikelola.449* **Jalur baca**: entri `allowRead` hanya mengizinkan ulang jalur di dalam wilayah `denyRead`, jadi pasangkan dengan `denyRead` yang dikelola.

448 450 

449<h4 id="settings-the-locks-don’t-cover">451<h4 id="settings-the-locks-don’t-cover">

450 Pengaturan yang tidak dicakup kunci452 Pengaturan yang tidak dicakup kunci

451</h4>453</h4>

452 454 

453Enam pengaturan yang disuplai induk melewati filter bahkan dengan semua lima kunci yang ditetapkan. Di bawah pengaturan pertama-menang default, nilai admin yang memblokir induk adalah yang ada di sumber admin prioritas tertinggi, kecuali untuk `allowedMcpServers` sementara [kunci server MCP](#lock-behavior-across-sources) aktif. Di bawah opt-in penggabungan `managedSourcesBehavior`, [bagaimana Claude Code menggabungkan sumber yang dikelola](/docs/id/managed-settings#how-claude-code-combines-managed-sources) mengatakan nilai sumber mana yang berlaku sebagai gantinya.455Enam pengaturan yang disediakan induk melewati filter bahkan dengan semua lima kunci yang ditetapkan. Di bawah pengaturan first-wins default, nilai admin memblokir milik induk hanya ketika itu berada di sumber admin dengan prioritas tertinggi, kecuali untuk `allowedMcpServers` sementara [kunci server MCP](#lock-behavior-across-sources) aktif. Di bawah opt-in penggabungan `managedSourcesBehavior`, [bagaimana Claude Code menggabungkan sumber yang dikelola](/docs/id/managed-settings#how-claude-code-combines-managed-sources) mengatakan nilai sumber mana yang berlaku sebagai gantinya.

454 456 

455* **`forceLoginOrgUUID`**: Claude Code menghormati nilai yang disuplai induk ketika sumber admin prioritas tertinggi tidak menetapkan UUID organisasi. Masuk gateway tidak memeriksa kunci ini, jadi itu penting hanya untuk armada yang juga menggunakan masuk Anthropic pihak pertama. UUID organisasi dalam sumber admin prioritas tertinggi memblokir nilai induk dan adalah yang ditegakkan Claude Code, jadi atur `forceLoginOrgUUID` di sana.457* **`forceLoginOrgUUID`**: Claude Code menghormati nilai yang disediakan induk ketika sumber admin dengan prioritas tertinggi tidak menetapkan UUID organisasi. Masuk gateway tidak memeriksa kunci ini. UUID organisasi dalam sumber admin dengan prioritas tertinggi memblokir nilai induk dan adalah yang ditegakkan Claude Code.

456* **`allowedMcpServers`**: Claude Code menghormati daftar izin yang disuplai induk ketika sumber admin prioritas tertinggi tidak menetapkan satu. `allowManagedMcpServersOnly` tidak memblokirnya, karena kunci menegakkan daftar mana pun yang menang sebagai nilai yang dikelola, termasuk daftar yang disuplai induk ketika sumber admin prioritas tertinggi tidak menetapkan satu. Daftar dalam sumber admin prioritas tertinggi memblokir induk dan adalah daftar yang ditegakkan Claude Code, jadi atur `allowedMcpServers` di sana, di sebelah kunci. Sebelum v2.1.223, nilai untuk salah satu kunci dalam sumber admin apa pun memblokir induk.458* **`allowedMcpServers`**: Claude Code menghormati daftar izin yang disediakan induk ketika tidak ada daftar admin yang berlaku. `allowManagedMcpServersOnly` tidak memblokirnya, karena kunci menerapkan daftar mana pun yang menang sebagai nilai yang dikelola, termasuk yang disediakan induk ketika tidak ada sumber admin yang menyediakan daftar. Daftar dalam sumber admin dengan prioritas tertinggi memblokir milik induk dan adalah daftar yang ditegakkan Claude Code, jadi atur `allowedMcpServers` di sana, di sebelah kunci. Sebelum v2.1.223, nilai untuk salah satu kunci dalam sumber admin apa pun memblokir milik induk.

457* **`availableModels`**: Claude Code menghormati daftar model yang disuplai induk ketika sumber yang dikelola pemenang tidak menetapkan satu. Jika armada Anda membatasi model, atur `availableModels` dalam sumber pemenang.459* **`availableModels`**: Claude Code menghormati daftar model yang disediakan induk ketika sumber yang dikelola pemenang tidak menetapkan satu. Jika armada Anda membatasi model, atur `availableModels` dalam sumber pemenang.

458* **`strictKnownMarketplaces`**: Claude Code menghormati daftar izin marketplace plugin yang disuplai induk ketika sumber yang dikelola pemenang tidak menetapkan satu. Jika armada Anda membatasi marketplace, atur `strictKnownMarketplaces` dalam sumber pemenang. Memerlukan Claude Code v2.1.282 atau lebih baru.460* **`strictKnownMarketplaces`**: Claude Code menghormati daftar izin pasar plugin yang disediakan induk ketika sumber yang dikelola pemenang tidak menetapkan satu. Claude Desktop 2.16120.0 atau lebih baru mengirimkan satu ketika konfigurasi yang dikelolanya mematikan pasar plugin yang ditambahkan pengguna. Jika armada Anda membatasi pasar, atur `strictKnownMarketplaces` dalam sumber pemenang. Memerlukan Claude Code v2.1.282 atau lebih baru.

459* **`blockedMarketplaces`**: daftar blokir marketplace yang disuplai induk melewati dan menambah ke daftar blokir apa pun yang ditetapkan sumber yang dikelola, karena daftar blokir hanya dapat membatasi lebih lanjut. Memerlukan Claude Code v2.1.282 atau lebih baru.461* **`blockedMarketplaces`**: daftar blokir pasar yang disediakan induk melewati dan menambah daftar blokir apa pun yang sumber yang dikelola tetapkan, karena daftar blokir hanya dapat membatasi lebih lanjut. Memerlukan Claude Code v2.1.282 atau lebih baru.

460* **`strictPluginOnlyCustomization`**: kunci ini melewati filter terlepas dari kunci apa pun, dan itu membuat Claude Code mengabaikan kustomisasi pengembang sendiri, termasuk hooks pelindung. Tidak ada kunci yang memblokirnya.462* **`strictPluginOnlyCustomization`**: kunci ini melewati filter terlepas dari kunci apa pun, dan itu membuat Claude Code mengabaikan kustomisasi pengembang sendiri, termasuk hooks pelindung. Tidak ada kunci yang memblokirnya.

461 463 

462<h3 id="connect-claude-desktop">464<h3 id="connect-claude-desktop">


467 469 

468Claude Desktop menandatangani pengembang melalui penyedia identitas gateway dengan langkah SSO browser yang sama, kemudian mengambil konfigurasinya dari gateway daripada dari Anthropic. Akses model dan kebijakan mengikuti aturan per-grup yang sama dengan CLI. Pengembang yang menggunakan CLI dan Claude Desktop keduanya masuk ke masing-masing secara terpisah; sesi gateway tidak dibagikan di antara mereka.470Claude Desktop menandatangani pengembang melalui penyedia identitas gateway dengan langkah SSO browser yang sama, kemudian mengambil konfigurasinya dari gateway daripada dari Anthropic. Akses model dan kebijakan mengikuti aturan per-grup yang sama dengan CLI. Pengembang yang menggunakan CLI dan Claude Desktop keduanya masuk ke masing-masing secara terpisah; sesi gateway tidak dibagikan di antara mereka.

469 471 

470Setelah terhubung, Claude Desktop mengirimkan permintaan model dari setiap tab yang diaktifkan melalui gateway. Ini menampilkan tab Cowork dan Code secara default. Untuk mengaktifkan tab Chat juga, atur `chatTabEnabled` ke `true` dalam [konfigurasi yang dikelola](https://claude.com/docs/third-party/claude-desktop/configuration) Claude Desktop, atau dalam [blok `desktop`](/docs/id/claude-apps-gateway-config#claude-desktop-overlay) kebijakan pada gateway yang menjalankan Claude Code v2.1.227 atau lebih baru.472Setelah terhubung, Claude Desktop mengirimkan permintaan model dari setiap tab yang diaktifkan melalui gateway. Ini menampilkan tab Cowork dan Code secara default. Untuk mengaktifkan tab Chat juga, atur `chatTabEnabled` ke `true` dalam [konfigurasi yang dikelola](https://claude.com/docs/third-party/claude-desktop/configuration) Claude Desktop, atau dalam [blok `desktop`](/docs/id/claude-apps-gateway-config#claude-desktop-overlay) kebijakan di gateway yang menjalankan Claude Code v2.1.227 atau lebih baru.

471 473 

472<h3 id="ci-pipelines-and-remote-machines">474<h3 id="ci-pipelines-and-remote-machines">

473 Pipa CI dan mesin jarak jauh475 Pipa CI dan mesin jarak jauh

474</h3>476</h3>

475 477 

476Tidak ada alur token layanan untuk pipa yang tidak diawasi. Masuk gateway selalu menjalankan alur perangkat browser, jadi pekerjaan CI tanpa pengembang untuk menyetujui masuk tidak dapat mengautentikasi; konfigurasikan yang terhadap penyedia Anda secara langsung.478Tidak ada alur token layanan untuk pipa yang tidak diawasi. Masuk gateway selalu menjalankan alur perangkat browser, jadi pekerjaan CI tanpa pengembang untuk menyetujui masuk tidak dapat mengautentikasi; konfigurasikan itu terhadap penyedia Anda secara langsung.

477 479 

478Setelah pengembang masuk, setiap sesi Claude Code di mesin itu menggunakan sesi gateway, termasuk `claude -p` berjalan non-interaktif dan sesi yang dimulai oleh Agent SDK. Claude Code menerapkan [kebijakan gateway](/docs/id/claude-apps-gateway-config#managed) ke masing-masing.480Setelah pengembang masuk, setiap sesi Claude Code di mesin itu menggunakan sesi gateway, termasuk jalankan `claude -p` non-interaktif dan sesi yang dimulai oleh SDK Agent. Claude Code menerapkan [kebijakan gateway](/docs/id/claude-apps-gateway-config#managed) ke masing-masing.

479 481 

480Alur perangkat memisahkan CLI polling dari browser yang menyetujui, jadi kotak pengembangan jarak jauh tanpa tampilan masih berfungsi: pengembang menjalankan `/login` melalui SSH di mesin jarak jauh dan membuka tautan verifikasi di browser di laptop mereka.482Alur perangkat memisahkan CLI polling dari browser yang menyetujui, jadi kotak pengembangan jarak jauh tanpa tampilan masih berfungsi: pengembang menjalankan `/login` melalui SSH di mesin jarak jauh dan membuka tautan verifikasi di browser di laptop mereka.

481 483 


483 Apa yang ditegakkan pada pengembang485 Apa yang ditegakkan pada pengembang

484</h3>486</h3>

485 487 

486Jaminan ini berlaku untuk setiap sesi yang masuk melalui `/login`. Sesi tertanam yang diluncurkan Claude Desktop mendapatkan kebijakan mereka seperti yang dijelaskan dalam [Kirimkan kebijakan ke sesi Claude Desktop](#deliver-policy-to-claude-desktop-sessions), dan poin telemetri mengatakan ke mana ekspor mereka pergi.488Jaminan ini berlaku untuk setiap sesi yang masuk melalui `/login`. Sesi yang tertanam yang diluncurkan Claude Desktop mendapatkan kebijakan mereka seperti dijelaskan dalam [Kirimkan kebijakan ke sesi Claude Desktop](#deliver-policy-to-claude-desktop-sessions), dan poin telemetri mengatakan ke mana ekspor mereka pergi.

487 489 

488* **Akses model**: permintaan untuk model yang tidak diizinkan kebijakan mengembalikan 400, dan pemilih `/model` disaring ke daftar izin `availableModels` kebijakan. Atur [`enforceAvailableModels: true`](/docs/id/model-config#default-model-behavior) dalam kebijakan sehingga opsi Default diselesaikan ke model dalam `availableModels` daripada ke default bawaan Claude Code; tanpanya, Default tetap dapat dipilih dan ditolak pada waktu permintaan jika model itu tidak diizinkan.490* **Akses model**: permintaan untuk model yang tidak diizinkan kebijakan mengembalikan 400, dan pemilih `/model` disaring ke daftar izin `availableModels` kebijakan. Atur [`enforceAvailableModels: true`](/docs/id/model-config#default-model-behavior) dalam kebijakan sehingga opsi Default diselesaikan ke model di dalam `availableModels` daripada ke default bawaan Claude Code; tanpanya, Default tetap dapat dipilih dan ditolak pada waktu permintaan jika model itu tidak diizinkan.

489* **Tujuan telemetri**: dalam sesi yang masuk melalui `/login`, CLI mengirimkan ekspor OTLP/HTTP-nya ke gateway daripada ke `OTEL_EXPORTER_OTLP_ENDPOINT` yang ditetapkan secara lokal, kecuali kebijakan [menamai kolektor Anda sebagai titik akhir](/docs/id/claude-apps-gateway-config#export-directly-to-your-collector). Gateway meneruskan ekspor yang diterimanya ke tujuan dalam [`telemetry.forward_to`](/docs/id/claude-apps-gateway-config#telemetry).491* **Tujuan telemetri**: dalam sesi yang masuk melalui `/login`, CLI mengirimkan ekspor OTLP/HTTP-nya ke gateway daripada ke `OTEL_EXPORTER_OTLP_ENDPOINT` yang ditetapkan secara lokal, kecuali kebijakan [menyebutkan kolektor Anda sebagai titik akhir](/docs/id/claude-apps-gateway-config#export-directly-to-your-collector). Gateway meneruskan ekspor yang diterimanya ke tujuan dalam [`telemetry.forward_to`](/docs/id/claude-apps-gateway-config#telemetry).

490 * Dalam sesi tertanam yang [diluncurkan Claude Desktop](#connect-claude-desktop), CLI mengirimkan ekspor ke `OTEL_EXPORTER_OTLP_ENDPOINT` yang dikonfigurasi. CLI melampirkan token sesi gateway ke ekspor tersebut hanya ketika titik akhir itu menunjuk ke gateway itu sendiri.492 * Dalam sesi yang tertanam [yang diluncurkan Claude Desktop](#connect-claude-desktop), CLI mengirimkan ekspor-nya ke `OTEL_EXPORTER_OTLP_ENDPOINT` yang dikonfigurasi. CLI melampirkan token sesi gateway ke ekspor itu hanya ketika titik akhir itu menunjuk ke gateway itu sendiri.

491 * Tanpa tujuan yang dikonfigurasi untuk sinyal, gateway menerima dan membuangnya.493 * Tanpa tujuan yang dikonfigurasi untuk sinyal, gateway menerima dan membuangnya.

492 * Jika Anda sudah mengumpulkan telemetri Claude Code secara langsung, tambahkan kolektor Anda sebagai tujuan `forward_to`, atau namakannya dalam kebijakan untuk melewati relay.494 * Jika Anda sudah mengumpulkan telemetri Claude Code secara langsung, tambahkan kolektor Anda sebagai tujuan `forward_to`, atau sebutkan dalam kebijakan untuk melewati relay.

493* **Kredensial**: token gateway adalah satu-satunya kredensial sesi. [Profil Anthropic](/docs/id/authentication#anthropic-profiles-and-federation-credentials) dan masuk claude.ai sebelumnya diabaikan saat masuk, jadi pengembang tidak perlu keluar dari claude.ai terlebih dahulu. Untuk kredensial `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, atau `apiKeyHelper` yang dikonfigurasi, atau kunci API yang disimpan oleh masuk Claude Console sebelumnya, lihat [Kebijakan administrator memerlukan masuk Cloud gateway](/docs/id/errors#administrator-policy-requires-a-cloud-gateway-sign-in).495* **Kredensial**: token gateway adalah satu-satunya kredensial sesi. [Profil Anthropic](/docs/id/authentication#anthropic-profiles-and-federation-credentials) dan masuk claude.ai sebelumnya diabaikan saat masuk, jadi pengembang tidak perlu keluar dari claude.ai terlebih dahulu. Untuk `ANTHROPIC_API_KEY`, `ANTHROPIC_AUTH_TOKEN`, atau kredensial `apiKeyHelper` yang dikonfigurasi, atau kunci API yang disimpan oleh masuk Claude Console sebelumnya, lihat [Kebijakan administrator memerlukan masuk Cloud gateway](/docs/id/errors#administrator-policy-requires-a-cloud-gateway-sign-in).

494* **Pengaturan yang dikelola**: kunci yang dikunci tidak dapat ditimpa secara lokal. CLI menerapkan kebijakan saat startup dan menerapkan perubahan pada setiap polling per jam, terlepas dari [perubahan yang hanya berlaku pada peluncuran berikutnya](/docs/id/server-managed-settings#fetch-and-caching-behavior).496* **Pengaturan yang dikelola**: kunci yang dikunci tidak dapat ditimpa secara lokal. CLI menerapkan kebijakan saat startup dan menerapkan perubahan pada setiap polling per jam, terlepas dari [perubahan yang hanya berlaku pada peluncuran berikutnya](/docs/id/server-managed-settings#fetch-and-caching-behavior).

495* **Startup dengan gateway tidak dapat dijangkau**: sesi yang masuk keluar saat startup dengan kesalahan setelah sekitar 10 detik daripada memulai tanpa pengaturan mereka.497* **Startup dengan gateway tidak dapat dijangkau**: sesi yang masuk keluar saat startup dengan kesalahan setelah sekitar 10 detik daripada memulai tanpa pengaturan mereka.

496* **Startup setelah gateway mengakhiri sesi**: lihat [Tegakkan startup yang gagal-tertutup](/docs/id/server-managed-settings#enforce-fail-closed-startup) untuk peluncuran yang membuka keluar dari gateway dan yang keluar ketika gateway menjawab dengan `401`.498* **Startup setelah gateway mengakhiri sesi**: lihat [Tegakkan startup fail-closed](/docs/id/server-managed-settings#enforce-fail-closed-startup) untuk peluncuran yang membuka keluar dari gateway dan yang keluar ketika gateway menjawab dengan `401`.

497* **Pemberhentian**: sesi yang pengguna-nya dinonaktifkan dalam IdP kedaluwarsa dalam `ttl_hours` ketika penyegaran berikutnya gagal.499* **Pemberhentian**: sesi yang penggunanya dinonaktifkan di IdP kedaluwarsa dalam `ttl_hours` ketika penyegaran berikutnya gagal.

498* **Keluar**: `/logout` menghapus kredensial gateway dari mesin pengembang.500* **Keluar**: `/logout` menghapus kredensial gateway dari mesin pengembang.

499 * Ketika dokumen penemuan gateway mengiklankan `revocation_endpoint` pada skema, host, dan port URL gateway sendiri, `/logout` juga mengirimkan token yang disimpan ke titik akhir itu sehingga gateway dapat mengakhiri sesi di sisinya. Permintaan adalah upaya terbaik, jadi keluar selesai di mesin pengembang terlepas dari apakah titik akhir menjawab. Pencabutan memerlukan Claude Code v2.1.275 atau lebih baru di mesin pengembang.501 * Ketika dokumen penemuan gateway mengiklankan `revocation_endpoint` pada skema, host, dan port URL gateway sendiri, `/logout` juga mengirimkan token yang disimpan ke titik akhir itu sehingga gateway dapat mengakhiri sesi di sisinya. Permintaan adalah upaya terbaik, jadi keluar selesai di mesin pengembang apakah atau tidak titik akhir menjawab. Pencabutan memerlukan Claude Code v2.1.275 atau lebih baru di mesin pengembang.

500 * Server gateway dalam biner `claude` tidak mengiklankan apa pun, jadi keluar darinya mengakhiri sesi di mesin pengembang saja. Untuk memaksa sesi keluar server-side, lihat [Rotasi rahasia JWT](/docs/id/claude-apps-gateway-deploy#jwt-secret-rotation).502 * Server gateway dalam biner `claude` tidak mengiklankan apa pun, jadi keluar darinya mengakhiri sesi di mesin pengembang saja. Untuk memaksa sesi keluar server-side, lihat [Rotasi rahasia JWT](/docs/id/claude-apps-gateway-deploy#jwt-secret-rotation).

501 503 

502<h3 id="what-the-organization-can-see">504<h3 id="what-the-organization-can-see">

Details

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

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

316 316 

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

318 Apply an Amazon Bedrock guardrail

319</h5>

320 

321Untuk menerapkan Amazon Bedrock guardrail ke setiap inference request yang gateway kirim melalui Bedrock upstream, tambahkan blok `guardrail` ke upstream itu. Memerlukan Claude Code v2.1.281 atau lebih baru di server gateway.

322 

323```yaml theme={null}

324upstreams:

325 - provider: bedrock

326 region: us-east-1

327 auth: {}

328 guardrail:

329 id: gr-abc123 # guardrail ID or full ARN

330 version: "1" # a published version number, or DRAFT

331 # keep the quotes: a bare 1 fails at boot

332```

333 

334<Warning>

335 Gateway tidak mendukung guardrail input tags. Ini tidak menambahkan guard content tags ke prompts, jadi guardrail filter yang Amazon Bedrock terapkan hanya ke tagged input tidak berjalan pada traffic melalui gateway. Untuk filter mana yang bergantung pada input tags, lihat [input tags](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-tagging.html) dalam dokumentasi Amazon Bedrock.

336</Warning>

337 

338Juga berikan gateway's AWS principal `bedrock:ApplyGuardrail` pada guardrail.

339 

340Atur `guardrail` pada setiap `bedrock` upstream atau pada tidak ada. Gateway menolak untuk memulai pada mix, karena [failover](#multiple-upstreams) dapat mengirim request ke Bedrock upstream yang tidak memiliki guardrail.

341 

342Guardrail mencakup Bedrock upstreams saja. Jika Anda mendaftar provider lain di `upstreams`, gateway mengirim requests ke provider itu tanpa guardrail.

343 

344Ketika `/v1/messages` request yang body-nya membawa field `amazon-bedrock-*`, seperti `amazon-bedrock-guardrailConfig`, mencapai Bedrock upstream yang memiliki `guardrail` diatur, gateway menjawab 400 daripada meneruskannya.

345 

317<h4 id="claude-platform-on-aws">346<h4 id="claude-platform-on-aws">

318 Claude Platform on AWS347 Claude Platform on AWS

319</h4>348</h4>


861 890 

862Gateway memvalidasi blok `desktop` terhadap skema yang disertakan dengan versi yang terinstal, seperti yang dilakukannya pada blok `cli`. Untuk mengirimkan pengaturan yang diperkenalkan oleh rilis Claude Desktop yang lebih baru, upgrade gateway terlebih dahulu. Misalnya, `userPluginMarketplacesEnabled` dan `userPluginUploadsEnabled` memerlukan Claude Code v2.1.260 atau lebih baru di server gateway dan Claude Desktop 1.37937.0 atau lebih baru pada mesin anggota.891Gateway memvalidasi blok `desktop` terhadap skema yang disertakan dengan versi yang terinstal, seperti yang dilakukannya pada blok `cli`. Untuk mengirimkan pengaturan yang diperkenalkan oleh rilis Claude Desktop yang lebih baru, upgrade gateway terlebih dahulu. Misalnya, `userPluginMarketplacesEnabled` dan `userPluginUploadsEnabled` memerlukan Claude Code v2.1.260 atau lebih baru di server gateway dan Claude Desktop 1.37937.0 atau lebih baru pada mesin anggota.

863 892 

893`blockReadsOutsideWorkingDirectories`, `disableBypassPermissionsMode`, `configRecheckIntervalMinutes`, dan `sshClientPath` memerlukan Claude Code v2.1.281 atau lebih baru di server gateway. Begitu juga nilai `required` dari `microsoftAuthBroker` dan field `continuousAccessEvaluation` dari entri `managedMcpServers` Microsoft 365. Rilis Claude Desktop yang mendahului nilai `required` membacanya sebagai `disabled`, jadi atur `required` hanya setelah setiap anggota's Claude Desktop mendukungnya. [Managed configuration reference](https://claude.com/docs/third-party/claude-desktop/configuration) Claude Desktop mencantumkan rilis yang pertama kali membaca setiap kunci.

894 

864Jika Anda mengatur `orgPluginSettings` dalam blok `desktop` kebijakan, gateway melayaninya dalam bentuk array yang Claude Desktop 1.15200.0 dan lebih baru baca. Desktop yang lebih lama mengabaikan array dan tidak memberlakukan kebijakan tool plugin, jadi perbarui anggota ke 1.15200.0 atau lebih baru sebelum Anda mengandalkannya.895Jika Anda mengatur `orgPluginSettings` dalam blok `desktop` kebijakan, gateway melayaninya dalam bentuk array yang Claude Desktop 1.15200.0 dan lebih baru baca. Desktop yang lebih lama mengabaikan array dan tidak memberlakukan kebijakan tool plugin, jadi perbarui anggota ke 1.15200.0 atau lebih baru sebelum Anda mengandalkannya.

865 896 

866Gateway mengisi kunci yang blok `desktop` kebijakan tidak atur dari blok `desktop` catch-all `match: {}`, dengan cara yang sama mengisi blok `cli` kebijakan dari dasar. Jika Anda mengatur `disabledBuiltinTools` atau `builtinToolPolicy` dalam dasar dan kebijakan peran, gateway menyimpan pembatasan dasar:897Gateway mengisi kunci yang blok `desktop` kebijakan tidak atur dari blok `desktop` catch-all `match: {}`, dengan cara yang sama mengisi blok `cli` kebijakan dari dasar. Jika Anda mengatur `disabledBuiltinTools` atau `builtinToolPolicy` dalam dasar dan kebijakan peran, gateway menyimpan pembatasan dasar:


888 919 

889CLI mengirim metrik, log, dan, ketika diaktifkan, trace ke gateway, yang meneruskan mereka verbatim ke setiap tujuan yang dikonfigurasi. Export menggunakan OpenTelemetry Protocol (OTLP) melalui HTTP. Untuk melewati relay dan memiliki sesi mengekspor langsung ke kolektor Anda, [namai kolektor dalam kebijakan](#export-directly-to-your-collector). Lihat [Monitoring usage](/docs/id/monitoring-usage) untuk metrik dan event yang CLI emit.920CLI mengirim metrik, log, dan, ketika diaktifkan, trace ke gateway, yang meneruskan mereka verbatim ke setiap tujuan yang dikonfigurasi. Export menggunakan OpenTelemetry Protocol (OTLP) melalui HTTP. Untuk melewati relay dan memiliki sesi mengekspor langsung ke kolektor Anda, [namai kolektor dalam kebijakan](#export-directly-to-your-collector). Lihat [Monitoring usage](/docs/id/monitoring-usage) untuk metrik dan event yang CLI emit.

890 921 

891CLI memberi stempel setiap export dengan identitas pengguna yang terautentikasi, dibaca dari JWT yang diterbitkan gateway: atribut `user.id`, `user.email`, dan `user.groups`. Atribusi biaya dan penggunaan per-developer oleh karena itu bekerja tanpa konfigurasi sisi developer.922Dalam sesi yang masuk melalui `/login`, CLI memberi stempel setiap export dengan identitas pengguna yang terautentikasi, dibaca dari JWT yang diterbitkan gateway: atribut `user.id`, `user.email`, dan `user.groups`. Atribusi biaya dan penggunaan per-developer oleh karena itu bekerja tanpa konfigurasi sisi developer.

892 923 

893[Claude Desktop](#claude-desktop-overlay) dan sesi Cowork yang masuk melalui gateway memberi stempel telemetry mereka dengan `user.email` dan `user.groups` bersama `enduser.id`, jadi Anda dapat mencakup penggunaan terminal, Desktop, dan Cowork dengan satu query pada `user.email` atau `user.groups`. `user.groups` adalah daftar grup IdP yang dipisahkan koma.924[Claude Desktop](#claude-desktop-overlay) dan sesi Cowork yang masuk melalui gateway memberi stempel telemetry mereka dengan `user.email` dan `user.groups` bersama `enduser.id`, jadi Anda dapat mencakup penggunaan terminal, Desktop, dan Cowork dengan satu query pada `user.email` atau `user.groups`. `user.groups` adalah daftar grup IdP yang dipisahkan koma.

894 925 

Details

303| - | - | - |303| - | - | - |

304| Inferensi (prompt, penyelesaian) | CLI → gateway → upstream Anda | Hanya jika API Anthropic adalah upstream yang dikonfigurasi |304| Inferensi (prompt, penyelesaian) | CLI → gateway → upstream Anda | Hanya jika API Anthropic adalah upstream yang dikonfigurasi |

305| Telemetri (metrik OTLP, ditambah [log dan jejak opt-in](/docs/id/claude-apps-gateway-config#telemetry)) | CLI → gateway → kolektor Anda | Tidak pernah |305| Telemetri (metrik OTLP, ditambah [log dan jejak opt-in](/docs/id/claude-apps-gateway-config#telemetry)) | CLI → gateway → kolektor Anda | Tidak pernah |

306| Identitas (email, grup, sub) | IdP → gateway → JWT → CLI; CLI memberi stempel pada ekspor OTLP. Jika Anda mengaktifkan [`forward_user_identity`](/docs/id/claude-apps-gateway-config#per-user-identity-headers-for-a-proxy-you-run), gateway juga mengirimkan email pengembang dan subjek IdP sebagai header ke proxy Anda | Tidak pernah |306| Identitas (email, grup, sub) | IdP → gateway → CLI; CLI memberi stempel pada ekspor OTLP. Jika Anda mengaktifkan [`forward_user_identity`](/docs/id/claude-apps-gateway-config#per-user-identity-headers-for-a-proxy-you-run), gateway juga mengirimkan email pengembang dan subjek IdP sebagai header ke proxy Anda | Tidak pernah |

307| Pengaturan terkelola | YAML gateway Anda → CLI | Tidak pernah |307| Pengaturan terkelola | YAML gateway Anda → CLI | Tidak pernah |

308| Log audit | Stderr gateway → agregator Anda | Tidak pernah |308| Log audit | Stderr gateway → agregator Anda | Tidak pernah |

309 309 

Details

516 Telemetri516 Telemetri

517</h2>517</h2>

518 518 

519Gateway memberi Anda metrik penggunaan per-pengembang tanpa konfigurasi OTEL per-mesin. Claude Code memancarkan metrik OpenTelemetry (OTLP), log, dan jejak opt-in; [Monitoring usage](/docs/id/monitoring-usage) mencakup semua yang dilaporkan CLI. Pada sesi gateway CLI memberi stempel setiap ekspor dengan atribut identitas IdP yang terauthentikasi `user.id`, `user.email`, dan `user.groups`, jadi penggunaan bergulir per pengembang tanpa pipa `OTEL_RESOURCE_ATTRIBUTES`.519Gateway memberi Anda metrik penggunaan per-pengembang tanpa konfigurasi OTEL per-mesin. Claude Code memancarkan metrik OpenTelemetry (OTLP), log, dan jejak opt-in; [Monitoring usage](/docs/id/monitoring-usage) mencakup semua yang dilaporkan CLI. Dalam sesi yang masuk melalui `/login`, CLI memberi stempel setiap ekspor dengan atribut identitas IdP yang terauthentikasi `user.id`, `user.email`, dan `user.groups`, jadi penggunaan bergulir per pengembang.

520 520 

521Gateway sendiri adalah relai OTLP yang terauthentikasi. Atur [`telemetry.forward_to`](/docs/id/claude-apps-gateway-config#telemetry) bersama dengan `listen.public_url`, dan itu mendorong pengaturan pengekspor OTEL ke setiap klien yang terhubung dan meneruskan lalu lintas OTLP mereka verbatim ke setiap tujuan yang Anda daftarkan. Setiap tujuan memilih metrik, log, dan jejak secara independen, dan default adalah metrik saja; lihat [referensi `telemetry`](/docs/id/claude-apps-gateway-config#telemetry) untuk bidang per-sinyal dan tradeoff sensitivitas mereka. Gateway tidak membuffer, mengagregasi, atau menyimpan telemetri, jadi di mana data mendarat sepenuhnya adalah konfigurasi pengekspor pengumpul.521Gateway sendiri adalah relai OTLP yang terauthentikasi. Atur [`telemetry.forward_to`](/docs/id/claude-apps-gateway-config#telemetry) bersama dengan `listen.public_url`, dan itu mendorong pengaturan pengekspor OTEL ke setiap klien yang terhubung dan meneruskan lalu lintas OTLP mereka verbatim ke setiap tujuan yang Anda daftarkan. Setiap tujuan memilih metrik, log, dan jejak secara independen, dan default adalah metrik saja; lihat [referensi `telemetry`](/docs/id/claude-apps-gateway-config#telemetry) untuk bidang per-sinyal dan tradeoff sensitivitas mereka. Gateway tidak membuffer, mengagregasi, atau menyimpan telemetri, jadi di mana data mendarat sepenuhnya adalah konfigurasi pengekspor pengumpul.

522 522 

Details

1569| `feedback/drafts/` | Antrian [umpan balik yang dirancang Claude](/docs/id/tools-reference#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. |1569| `feedback/drafts/` | Antrian [umpan balik yang dirancang Claude](/docs/id/tools-reference#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. |

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

1571| `skills/.trash/`, `plugins/.trash/` | [Skills](/docs/id/skills#how-synced-skills-behave) dan [plugins](/docs/id/plugins/loading#synced-plugins) yang sinkronisasi claude.ai hapus, seperti setelah Anda mematikannya di claude.ai atau berhenti menyinkronkan. File tetap di sini sehingga Anda dapat memulihkannya sampai sweep menghapusnya |1571| `skills/.trash/`, `plugins/.trash/` | [Skills](/docs/id/skills#how-synced-skills-behave) dan [plugins](/docs/id/plugins/loading#synced-plugins) yang sinkronisasi claude.ai hapus, seperti setelah Anda mematikannya di claude.ai atau berhenti menyinkronkan. File tetap di sini sehingga Anda dapat memulihkannya sampai sweep menghapusnya |

1572| `plugins/installed_plugins.set-aside.<date>.<hash>.json`, `plugins/installed_plugins.unreadable.<date>.<hash>.kept` | Salinan bertanggal yang Claude Code buat sebelum menulis ulang [`installed_plugins.json`](/docs/id/plugins/loading#find-plugins-on-disk): catatan pemasangan yang dihapusnya, dan konten file yang tidak dapat dibacanya. |

1572| `todos/`, `statsig/`, `logs/` | Direktori warisan dari versi yang lebih lama. Tidak lagi ditulis. Sweep menghapus konten mereka dan kemudian direktori kosong. |1573| `todos/`, `statsig/`, `logs/` | Direktori warisan dari versi yang lebih lama. Tidak lagi ditulis. Sweep menghapus konten mereka dan kemudian direktori kosong. |

1573 1574 

1574File sesi di `sessions/`, memori otomatis, dan transkrip Claude Desktop dan Cowork masing-masing mengikuti aturan retensi mereka sendiri:1575File sesi di `sessions/`, memori otomatis, dan transkrip Claude Desktop dan Cowork masing-masing mengikuti aturan retensi mereka sendiri:


1715| `~/.claude/policy-limits.json` | Tidak ada. Disegarkan secara otomatis. |1716| `~/.claude/policy-limits.json` | Tidak ada. Disegarkan secara otomatis. |

1716| `~/.claude/tasks/` | Daftar tugas yang akan diambil sesi yang dilanjutkan |1717| `~/.claude/tasks/` | Daftar tugas yang akan diambil sesi yang dilanjutkan |

1717| `~/.claude/skills/.trash/`, `~/.claude/plugins/.trash/` | Kesempatan untuk memulihkan [skills yang disinkronkan](/docs/id/skills#how-synced-skills-behave) dan [plugins yang disinkronkan](/docs/id/plugins/loading#synced-plugins) yang Claude Code hapus |1718| `~/.claude/skills/.trash/`, `~/.claude/plugins/.trash/` | Kesempatan untuk memulihkan [skills yang disinkronkan](/docs/id/skills#how-synced-skills-behave) dan [plugins yang disinkronkan](/docs/id/plugins/loading#synced-plugins) yang Claude Code hapus |

1719| `~/.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 |

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

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

1720 1722 

Details

8 8 

9Plugin Claude Security menjalankan pemindaian kerentanan multi-agen dari basis kode Anda di dalam sesi Claude Code. Sebuah tim agen Claude memetakan arsitektur Anda, membangun model ancaman, berburu kerentanan, dan secara independen meninjau setiap temuan sebelum menulis laporan. Gunakan plugin untuk memindai seluruh repositori atau [hanya serangkaian perubahan](#scan-only-your-changes), seperti diff cabang, diff permintaan tarik, atau komit tunggal, kemudian ubah temuan yang Anda pilih menjadi patch yang Anda tinjau dan terapkan sendiri.9Plugin Claude Security menjalankan pemindaian kerentanan multi-agen dari basis kode Anda di dalam sesi Claude Code. Sebuah tim agen Claude memetakan arsitektur Anda, membangun model ancaman, berburu kerentanan, dan secara independen meninjau setiap temuan sebelum menulis laporan. Gunakan plugin untuk memindai seluruh repositori atau [hanya serangkaian perubahan](#scan-only-your-changes), seperti diff cabang, diff permintaan tarik, atau komit tunggal, kemudian ubah temuan yang Anda pilih menjadi patch yang Anda tinjau dan terapkan sendiri.

10 10 

11Plugin berjalan secara lokal dalam sesi Anda, menggunakan model apa pun yang Anda miliki akses di Claude Code, dan setiap pemindaian dihitung terhadap batas penggunaan rencana Anda. Jika Anda menginginkan layanan terkelola yang memantau repositori Anda, atau ingin menjalankan pemindaian pada [Claude Mythos 5](https://platform.claude.com/docs/en/about-claude/models/introducing-claude-fable-5-and-claude-mythos-5), lihat produk [Claude Security](https://claude.com/product/claude-security), tersedia di paket Enterprise. Plugin ini menjangkau kode yang tidak dapat dijangkau produk terkelola, seperti repositori yang dihosting di GitLab atau Bitbucket, atau di jaringan yang tidak memungkinkan koneksi masuk.11Plugin berjalan secara lokal dalam sesi Anda, menggunakan [model mana pun yang Anda miliki akses di Claude Code](#models-and-providers), dan setiap pemindaian dihitung terhadap [penggunaan](/docs/id/costs) Anda. Jika Anda menginginkan layanan terkelola yang memantau repositori Anda, atau ingin menjalankan pemindaian pada [Claude Mythos](https://platform.claude.com/docs/en/about-claude/models/introducing-claude-fable-5-and-claude-mythos-5), lihat produk [Claude Security](https://claude.com/product/claude-security), tersedia di paket Enterprise. Plugin mencapai kode yang tidak dapat dijangkau produk terkelola, seperti repositori yang dihosting di GitLab atau Bitbucket, atau di jaringan yang tidak memungkinkan koneksi masuk.

12 12 

13Plugin ini juga berbeda dari alat tinjauan yang sudah ada di Claude Code: plugin [security guidance](/docs/id/security-guidance) meninjau kode saat Claude menulisnya, [`/security-review`](/docs/id/commands#all-commands) menjalankan satu kali melewati cabang Anda, dan [Code Review](/docs/id/code-review) meninjau permintaan tarik. Untuk cara lapisan bertumpuk, lihat [Bagaimana plugin ini sesuai dengan alat keamanan lainnya](#how-the-plugin-fits-with-other-security-tools).13Plugin ini juga berbeda dari alat tinjauan yang sudah ada di Claude Code: plugin [panduan keamanan](/docs/id/security-guidance) meninjau kode saat Claude menulisnya, [`/security-review`](/docs/id/commands#all-commands) menjalankan satu kali melewati cabang Anda, dan [Code Review](/docs/id/code-review) meninjau permintaan tarik. Untuk cara lapisan bertumpuk, lihat [Bagaimana plugin cocok dengan alat keamanan lainnya](#how-the-plugin-fits-with-other-security-tools).

14 14 

15<h2 id="prerequisites">15<h2 id="prerequisites">

16 Prasyarat16 Prasyarat


18 18 

19Untuk menjalankan plugin, Anda memerlukan:19Untuk menjalankan plugin, Anda memerlukan:

20 20 

21* Paket berbayar, untuk [dynamic workflows](/docs/id/workflows) yang digunakan pemindaian untuk mengorkestrasi agennya. Di Pro, aktifkan dari baris Dynamic workflows di `/config`.21* Paket berbayar, akses API Anthropic, atau [penyedia pihak ketiga](#models-and-providers), untuk [alur kerja dinamis](/docs/id/workflows) yang digunakan pemindaian untuk mengorkestrasi agennya. Di Pro, aktifkan dari baris Dynamic workflows di `/config`.

22* Python 3.9 atau lebih baru tersedia di `PATH` Anda sebagai `python3`. Periksa dengan `python3 --version`. Alat plugin hanya menggunakan pustaka standar Python, jadi tidak ada yang diinstal.22* Python 3.9 atau lebih baru tersedia di `PATH` Anda sebagai `python3`. Periksa dengan `python3 --version`. Peralatan plugin hanya menggunakan pustaka standar Python, jadi tidak ada yang diinstal.

23* Linux, macOS, atau Windows.23* Linux, macOS, atau Windows.

24* Git, untuk pemindaian perubahan dan untuk mengubah temuan menjadi patch; pekerjaan tersebut tidak mendukung sistem kontrol versi lainnya. Pemindaian penuh berfungsi di direktori apa pun, dengan atau tanpa kontrol versi.24* Git, untuk pemindaian perubahan dan untuk mengubah temuan menjadi patch; pekerjaan tersebut tidak mendukung sistem kontrol versi lainnya. Pemindaian lengkap berfungsi di direktori apa pun, dengan atau tanpa kontrol versi.

25 

26<h2 id="models-and-providers">

27 Models and providers

28</h2>

29 

30Pemindaian berjalan di dalam sesi Claude Code Anda. Plugin tidak melakukan panggilan model sendiri, jadi tidak ada kunci API terpisah atau pengaturan penyedia yang perlu dikonfigurasi.

31 

32* **Model**: agen yang mencari kerentanan, memverifikasi temuan, dan menulis serta meninjau patch berjalan pada [model sesi Anda](/docs/id/sub-agents#choose-a-model). Untuk mengubahnya, jalankan [`/model`](/docs/id/model-config#setting-your-model) dalam sesi Anda sebelum memulai pemindaian. Beberapa langkah pendukung, seperti pemetaan repositori, menggunakan [alias `sonnet`](/docs/id/model-config#model-aliases) sebagai gantinya.

33* **Provider**: pemindaian berjalan pada paket berbayar, dengan akses API Anthropic, atau pada [penyedia pihak ketiga](/docs/id/third-party-integrations) seperti [Amazon Bedrock](/docs/id/amazon-bedrock), [Google Cloud's Agent Platform](/docs/id/google-vertex-ai), atau [Microsoft Foundry](/docs/id/microsoft-foundry).

34 

35Pada penyedia pihak ketiga, alias `sonnet` dapat diselesaikan ke versi yang berbeda daripada yang ada di API Anthropic. Jika akun Anda tidak dapat menggunakan versi tersebut, [pin versi model Anda](/docs/id/model-config#pin-models-for-third-party-deployments), termasuk `ANTHROPIC_DEFAULT_SONNET_MODEL`.

36 

37[Fallback model otomatis](/docs/id/model-config#automatic-model-fallback) menjalankan kembali permintaan yang ditandai oleh penjaga model. Pada Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry, permintaan dapat berakhir dengan pesan penolakan sebagai gantinya, tergantung pada [cara penyebaran Anda diatur](/docs/id/model-config#enable-fallback-on-bedrock-agent-platform-and-foundry).

25 38 

26<h2 id="install-the-plugin">39<h2 id="install-the-plugin">

27 Instal plugin40 Instal plugin


156 169 

157**Menu `/claude-security` terbuka dengan peringatan Python.** Plugin memerlukan `python3` 3.9 atau lebih baru di `PATH` Anda. Ketika tidak dapat menemukan `python3` sama sekali, menu memperingatkan bahwa Claude Security tidak akan berfungsi sampai satu diinstal; ketika `python3` pertama di `PATH` Anda lebih lama, peringatan menyebutkan versi yang ditemukannya. Instal Python 3, atau letakkan `python3` yang lebih baru terlebih dahulu di `PATH` Anda, kemudian mulai sesi baru.170**Menu `/claude-security` terbuka dengan peringatan Python.** Plugin memerlukan `python3` 3.9 atau lebih baru di `PATH` Anda. Ketika tidak dapat menemukan `python3` sama sekali, menu memperingatkan bahwa Claude Security tidak akan berfungsi sampai satu diinstal; ketika `python3` pertama di `PATH` Anda lebih lama, peringatan menyebutkan versi yang ditemukannya. Instal Python 3, atau letakkan `python3` yang lebih baru terlebih dahulu di `PATH` Anda, kemudian mulai sesi baru.

158 171 

159**Anda mungkin melihat pemberitahuan "safeguards flagged this message" saat memindai pada model Fable.** Pesan menyebutkan model, misalnya "Fable 5.1's safeguards flagged this message". Pengklasifikasi keamanan siber Fable menandai permintaan tertentu, dan Claude Code menjalankan kembali permintaan yang ditandai pada model Opus melalui [automatic model fallback](/docs/id/model-config#automatic-model-fallback). Ini diharapkan, dan pemindaian harus tetap selesai dengan sukses.172**Anda mungkin melihat pemberitahuan "safeguards flagged this message" saat memindai pada model Fable.** Pesan menyebutkan model yang sedang Anda jalankan. Pengklasifikasi keamanan siber Fable menandai permintaan tertentu, dan Claude Code menjalankan kembali permintaan yang ditandai pada model Opus melalui [automatic model fallback](/docs/id/model-config#automatic-model-fallback). Ini diharapkan. Ketika permintaan dijalankan kembali, pemindaian harus tetap selesai dengan sukses.

160 173 

161<h2 id="related-resources">174<h2 id="related-resources">

162 Sumber daya terkait175 Sumber daya terkait

Details

566 * platform.claude.com566 * platform.claude.com

567 * code.claude.com567 * code.claude.com

568 * claude.ai568 * claude.ai

569 * claude.com

570 * support.claude.com

571 * anthropic.com

572 * [www.anthropic.com](http://www.anthropic.com)

569 </Accordion>573 </Accordion>

570 574 

571 <Accordion title="Kontrol versi">575 <Accordion title="Kontrol versi">


596 * hub.docker.com600 * hub.docker.com

597 * [www.docker.com](http://www.docker.com)601 * [www.docker.com](http://www.docker.com)

598 * production.cloudflare.docker.com602 * production.cloudflare.docker.com

603 * production.cloudfront.docker.com

599 * download.docker.com604 * download.docker.com

600 * gcr.io605 * gcr.io

601 * \*.gcr.io606 * \*.gcr.io

commands.md +4 −1

Details

56| `/add-dir <path>` | Tambahkan direktori kerja untuk akses file selama sesi saat ini. Ketik jalur sebagian untuk melihat saran direktori yang cocok; tekan `Tab` untuk menerima satu. Sebagian besar konfigurasi `.claude/` [tidak ditemukan](/docs/id/permissions#additional-directories-grant-file-access-not-configuration) dari direktori yang ditambahkan. Anda tidak dapat menambahkan sebagian besar [jalur jaringan](/docs/id/errors#working-directory-is-a-network-path), seperti `\\server\share`. Setelah penambahan yang berhasil, [hook `DirectoryAdded`](/docs/id/hooks#directoryadded) Anda berjalan. Ketika Anda menjalankannya saat Claude merespons, Claude Code meminta Anda untuk mengonfirmasi direktori segera, dan setelah Anda mengonfirmasi, panggilan alat berikutnya Claude dalam giliran yang sama dapat mengaksesnya. Sebelum v2.1.234, Claude Code mengantrikan perintah sampai giliran selesai |56| `/add-dir <path>` | Tambahkan direktori kerja untuk akses file selama sesi saat ini. Ketik jalur sebagian untuk melihat saran direktori yang cocok; tekan `Tab` untuk menerima satu. Sebagian besar konfigurasi `.claude/` [tidak ditemukan](/docs/id/permissions#additional-directories-grant-file-access-not-configuration) dari direktori yang ditambahkan. Anda tidak dapat menambahkan sebagian besar [jalur jaringan](/docs/id/errors#working-directory-is-a-network-path), seperti `\\server\share`. Setelah penambahan yang berhasil, [hook `DirectoryAdded`](/docs/id/hooks#directoryadded) Anda berjalan. Ketika Anda menjalankannya saat Claude merespons, Claude Code meminta Anda untuk mengonfirmasi direktori segera, dan setelah Anda mengonfirmasi, panggilan alat berikutnya Claude dalam giliran yang sama dapat mengaksesnya. Sebelum v2.1.234, Claude Code mengantrikan perintah sampai giliran selesai |

57| `/advisor [model\|off]` | Aktifkan atau nonaktifkan [alat advisor](/docs/id/advisor), yang berkonsultasi dengan model kedua untuk panduan di momen-momen kunci selama tugas. Menerima `fable`, `opus`, `sonnet`, atau ID model lengkap. `fable` memerlukan [akses Fable](/docs/id/advisor#choose-an-advisor-model). Tanpa argumen, membuka pemilih. Dalam sesi tanpa terminal interaktif, atau melalui [Remote Control](/docs/id/remote-control#limitations), berikan model atau `off` sebagai argumen; tanpa argumen di sana, perintah mencetak advisor saat ini sebagai teks. Bentuk-bentuk ini memerlukan Claude Code v2.1.260 atau lebih baru |57| `/advisor [model\|off]` | Aktifkan atau nonaktifkan [alat advisor](/docs/id/advisor), yang berkonsultasi dengan model kedua untuk panduan di momen-momen kunci selama tugas. Menerima `fable`, `opus`, `sonnet`, atau ID model lengkap. `fable` memerlukan [akses Fable](/docs/id/advisor#choose-an-advisor-model). Tanpa argumen, membuka pemilih. Dalam sesi tanpa terminal interaktif, atau melalui [Remote Control](/docs/id/remote-control#limitations), berikan model atau `off` sebagai argumen; tanpa argumen di sana, perintah mencetak advisor saat ini sebagai teks. Bentuk-bentuk ini memerlukan Claude Code v2.1.260 atau lebih baru |

58| `/agents` | Mulai v2.1.198, menjalankan `/agents` mencetak pengingat untuk meminta Claude membuat atau mengelola [subagent](/docs/id/sub-agents), atau untuk mengedit `.claude/agents/` atau `~/.claude/agents/` secara langsung. Di v2.1.197 dan lebih awal, membuka antarmuka interaktif untuk membuat dan mengelola konfigurasi subagent |58| `/agents` | Mulai v2.1.198, menjalankan `/agents` mencetak pengingat untuk meminta Claude membuat atau mengelola [subagent](/docs/id/sub-agents), atau untuk mengedit `.claude/agents/` atau `~/.claude/agents/` secara langsung. Di v2.1.197 dan lebih awal, membuka antarmuka interaktif untuk membuat dan mengelola konfigurasi subagent |

59| `/artifact-capabilities` | **[Skill](/docs/id/skills#bundled-skills).** Muat referensi untuk kemampuan runtime yang dapat digunakan [artifact](/docs/id/artifacts) yang dipublikasikan, seperti [memanggil konektor Anda](/docs/id/artifacts#pull-live-data-with-mcp-connectors) atau [menawarkan unduhan file](/docs/id/artifacts#offer-a-file-download), termasuk yang dimiliki akun Anda. Claude biasanya memuatnya sendiri sebelum membangun halaman yang menggunakan satu. Tersedia di mana [artifact](/docs/id/artifacts#availability) tersedia |

60| `/artifact-diagramming` | **[Skill](/docs/id/skills#bundled-skills).** Muat panduan diagram untuk diikuti Claude dalam [artifact](/docs/id/artifacts): kapan diagram membantu, apa yang harus digambar, dan cara menulis SVG inline yang tetap terbaca dalam tema terang dan gelap. Memerlukan Claude Code v2.1.221 atau lebih baru |

59| `/artifacts` | Daftar [artifact](/docs/id/artifacts#find-an-artifact-again) yang Anda miliki atau yang dibagikan dengan Anda, kemudian lampirkan satu ke sesi, buka di browser Anda, atau salin tautannya. Tersedia di mana [artifact](/docs/id/artifacts#availability) tersedia. Memerlukan Claude Code v2.1.208 atau lebih baru; melampirkan dengan `Enter` memerlukan v2.1.216 |61| `/artifacts` | Daftar [artifact](/docs/id/artifacts#find-an-artifact-again) yang Anda miliki atau yang dibagikan dengan Anda, kemudian lampirkan satu ke sesi, buka di browser Anda, atau salin tautannya. Tersedia di mana [artifact](/docs/id/artifacts#availability) tersedia. Memerlukan Claude Code v2.1.208 atau lebih baru; melampirkan dengan `Enter` memerlukan v2.1.216 |

60| `/auto-mode-setup` | [Buat draf entri `autoMode.environment`](/docs/id/auto-mode-config#generate-environment-entries) dari proyek dan sesi terbaru Anda, kemudian tinjau draf dan simpan ke pengaturan pengguna Anda. Memerlukan paket Pro, Max, atau Team dan Claude Code v2.1.228 atau lebih baru. Di Windows asli, memerlukan v2.1.233 atau lebih baru |62| `/auto-mode-setup` | [Buat draf entri `autoMode.environment`](/docs/id/auto-mode-config#generate-environment-entries) dari proyek dan sesi terbaru Anda, kemudian tinjau draf dan simpan ke pengaturan pengguna Anda. Memerlukan paket Pro, Max, atau Team dan Claude Code v2.1.228 atau lebih baru. Di Windows asli, memerlukan v2.1.233 atau lebih baru |

61| `/autocompact [auto\|<tokens>]` | Atur jendela auto-compact: seberapa penuh jendela konteks sebelum Claude Code melakukan pemadatan otomatis. Berikan ukuran seperti `500k`, atau `auto` untuk kembali ke jendela yang disesuaikan untuk model Anda. Claude Code menyimpan nilai ke pengaturan pengguna dan menerapkannya ke sesi saat ini. Lihat [Atur jendela auto-compact](/docs/id/model-config#set-the-auto-compact-window) untuk nilai yang diterima dan apa yang menimpanya. Tanpa argumen, membuka dialog yang menunjukkan jendela saat ini. Memerlukan Claude Code v2.1.221 atau lebih baru |63| `/autocompact [auto\|<tokens>]` | Atur jendela auto-compact: seberapa penuh jendela konteks sebelum Claude Code melakukan pemadatan otomatis. Berikan ukuran seperti `500k`, atau `auto` untuk kembali ke jendela yang disesuaikan untuk model Anda. Claude Code menyimpan nilai ke pengaturan pengguna dan menerapkannya ke sesi saat ini. Lihat [Atur jendela auto-compact](/docs/id/model-config#set-the-auto-compact-window) untuk nilai yang diterima dan apa yang menimpanya. Tanpa argumen, membuka dialog yang menunjukkan jendela saat ini. Memerlukan Claude Code v2.1.221 atau lebih baru |


68| `/cd <path>` | Pindahkan sesi ini ke direktori kerja baru, menjaga percakapan. Ketik jalur sebagian untuk melihat saran direktori yang cocok; tekan `Tab` untuk menerima satu. Saran memerlukan Claude Code v2.1.206 atau lebih baru. Untuk apa yang Claude Code terapkan dari direktori baru segera setelah Anda pindah, dan bagaimana `/cd` berbeda dari `/add-dir`, lihat [Pindahkan sesi ke direktori lain](/docs/id/permissions#move-the-session-to-another-directory) |70| `/cd <path>` | Pindahkan sesi ini ke direktori kerja baru, menjaga percakapan. Ketik jalur sebagian untuk melihat saran direktori yang cocok; tekan `Tab` untuk menerima satu. Saran memerlukan Claude Code v2.1.206 atau lebih baru. Untuk apa yang Claude Code terapkan dari direktori baru segera setelah Anda pindah, dan bagaimana `/cd` berbeda dari `/add-dir`, lihat [Pindahkan sesi ke direktori lain](/docs/id/permissions#move-the-session-to-another-directory) |

69| `/chrome` | Konfigurasi pengaturan [Claude di Chrome](/docs/id/chrome) |71| `/chrome` | Konfigurasi pengaturan [Claude di Chrome](/docs/id/chrome) |

70| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb]` | **[Skill](/docs/id/skills#bundled-skills).** Muat materi referensi [Claude API](https://platform.claude.com/docs/en/api/overview) dan [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview) untuk bahasa proyek Anda. Juga diaktifkan secara otomatis ketika kode Anda mengimpor `anthropic` atau `@anthropic-ai/sdk`. Jalankan `migrate` untuk memperbarui kode Claude API yang ada ke model yang lebih baru. Jalankan `upgrade` untuk memindahkan dependensi SDK Anthropic proyek Anda di seluruh versi utama, saat ini paket Python `anthropic` dari 0.x ke 1.x. Jalankan `managed-agents-onboard` untuk panduan yang membuat Managed Agent baru. Jalankan `prompt-audit` untuk menandai instruksi yang ditulis untuk model yang lebih lama dalam prompt, skill, dan deskripsi alat Anda dan usulkan perbaikan sebagai diff. Jalankan `cost-optimize` untuk memprofilkan ke mana pengeluaran Claude API proyek Anda pergi dan usulkan penghematan dari opsi seperti prompt caching, pemangkasan token input dan output yang tidak perlu, pemrosesan batch, upaya, dan pilihan model, satu perubahan pada satu waktu. Jalankan `build-eval` untuk membangun set eval untuk aplikasi bertenaga Claude Anda, dan `hillclimb` untuk secara iteratif meningkatkan aplikasi terhadap eval yang ada. Subperintah `prompt-audit` memerlukan Claude Code v2.1.221 atau lebih baru, `upgrade` memerlukan v2.1.236 atau lebih baru, `cost-optimize` memerlukan v2.1.247 atau lebih baru, dan `build-eval` dan `hillclimb` memerlukan v2.1.259 atau lebih baru |72| `/claude-api [migrate\|upgrade\|managed-agents-onboard\|prompt-audit\|cost-optimize\|build-eval\|hillclimb]` | **[Skill](/docs/id/skills#bundled-skills).** Muat materi referensi [Claude API](https://platform.claude.com/docs/en/api/overview) dan [Managed Agents](https://platform.claude.com/docs/en/managed-agents/overview) untuk bahasa proyek Anda. Juga diaktifkan secara otomatis ketika kode Anda mengimpor `anthropic` atau `@anthropic-ai/sdk`. Jalankan `migrate` untuk memperbarui kode Claude API yang ada ke model yang lebih baru. Jalankan `upgrade` untuk memindahkan dependensi SDK Anthropic proyek Anda di seluruh versi utama, saat ini paket Python `anthropic` dari 0.x ke 1.x. Jalankan `managed-agents-onboard` untuk panduan yang membuat Managed Agent baru. Jalankan `prompt-audit` untuk menandai instruksi yang ditulis untuk model yang lebih lama dalam prompt, skill, dan deskripsi alat Anda dan usulkan perbaikan sebagai diff. Jalankan `cost-optimize` untuk memprofilkan ke mana pengeluaran Claude API proyek Anda pergi dan usulkan penghematan dari opsi seperti prompt caching, pemangkasan token input dan output yang tidak perlu, pemrosesan batch, upaya, dan pilihan model, satu perubahan pada satu waktu. Jalankan `build-eval` untuk membangun set eval untuk aplikasi bertenaga Claude Anda, dan `hillclimb` untuk secara iteratif meningkatkan aplikasi terhadap eval yang ada. Subperintah `prompt-audit` memerlukan Claude Code v2.1.221 atau lebih baru, `upgrade` memerlukan v2.1.236 atau lebih baru, `cost-optimize` memerlukan v2.1.247 atau lebih baru, dan `build-eval` dan `hillclimb` memerlukan v2.1.259 atau lebih baru |

73| `/claude-in-chrome [task]` | **[Skill](/docs/id/skills#bundled-skills).** Biarkan Claude melakukan tugas di browser Anda, seperti menguji halaman, mengisi formulir, atau membaca log konsol, melalui [Claude di Chrome](/docs/id/chrome). Tersedia ketika integrasi Chrome diaktifkan untuk sesi, misalnya dengan `claude --chrome`, atau ketika Claude Code dapat menawarkan untuk [menginstal ekstensi](/docs/id/chrome#install-the-extension-when-claude-asks) |

71| `/clear [name]` | Mulai percakapan baru dengan konteks kosong. Berikan nama untuk memberi label percakapan sebelumnya di pemilih `/resume`. Untuk membebaskan konteks sambil melanjutkan percakapan yang sama, gunakan `/compact` sebagai gantinya. Lanjutkan percakapan sebelumnya dengan `/resume`, atau, dalam proses Claude Code yang sama, pulihkan dari [entri sesi sebelumnya menu rewind](/docs/id/checkpointing#rewind-past-a-cleared-conversation). Alias: `/reset`, `/new` |74| `/clear [name]` | Mulai percakapan baru dengan konteks kosong. Berikan nama untuk memberi label percakapan sebelumnya di pemilih `/resume`. Untuk membebaskan konteks sambil melanjutkan percakapan yang sama, gunakan `/compact` sebagai gantinya. Lanjutkan percakapan sebelumnya dengan `/resume`, atau, dalam proses Claude Code yang sama, pulihkan dari [entri sesi sebelumnya menu rewind](/docs/id/checkpointing#rewind-past-a-cleared-conversation). Alias: `/reset`, `/new` |

72| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[Skill](/docs/id/skills#bundled-skills).** Tinjau diff saat ini, atau nomor PR, cabang, atau jalur yang Anda berikan, untuk bug kebenaran. Tergantung pada model dan tingkat upaya Anda, ulasan juga mencakup peluang pembersihan. Berikan `--fix` untuk menerapkan temuan, `--comment` untuk mempostingnya pada PR GitHub atau permintaan penggabungan GitLab, atau `ultra` untuk menjalankan [ulasan cloud](/docs/id/ultrareview) mendalam. Memposting ke permintaan penggabungan GitLab memerlukan Claude Code v2.1.257 atau lebih baru. Dengan `ultra` pada target PR `github.com`, berikan `--post` untuk pra-memilih [memposting temuan yang selesai ke PR](/docs/id/ultrareview#post-findings-to-the-pull-request) dalam dialog peluncuran; `--post` memerlukan Claude Code v2.1.227 atau lebih baru. Lihat [Tinjau diff secara lokal](/docs/id/code-review#review-a-diff-locally) untuk tingkat upaya, penargetan, dan bagaimana hubungannya dengan `/simplify`. Alias: `/review` |75| `/code-review [low\|medium\|high\|xhigh\|max\|ultra] [--fix] [--comment] [pr#\|branch\|path]` | **[Skill](/docs/id/skills#bundled-skills).** Tinjau diff saat ini, atau nomor PR, cabang, atau jalur yang Anda berikan, untuk bug kebenaran. Tergantung pada model dan tingkat upaya Anda, ulasan juga mencakup peluang pembersihan. Berikan `--fix` untuk menerapkan temuan, `--comment` untuk mempostingnya pada PR GitHub atau permintaan penggabungan GitLab, atau `ultra` untuk menjalankan [ulasan cloud](/docs/id/ultrareview) mendalam. Memposting ke permintaan penggabungan GitLab memerlukan Claude Code v2.1.257 atau lebih baru. Dengan `ultra` pada target PR `github.com`, berikan `--post` untuk pra-memilih [memposting temuan yang selesai ke PR](/docs/id/ultrareview#post-findings-to-the-pull-request) dalam dialog peluncuran; `--post` memerlukan Claude Code v2.1.227 atau lebih baru. Lihat [Tinjau diff secara lokal](/docs/id/code-review#review-a-diff-locally) untuk tingkat upaya, penargetan, dan bagaimana hubungannya dengan `/simplify`. Alias: `/review` |

73| `/color [color\|default]` | Atur warna bilah prompt untuk sesi saat ini. Warna tersedia: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. Gunakan `default` untuk mengatur ulang, atau jalankan tanpa argumen untuk memilih warna acak. Ketika [Remote Control](/docs/id/remote-control) terhubung, warna disinkronkan ke claude.ai/code. Juga tersedia dalam mode non-interaktif (`-p`); memerlukan Claude Code v2.1.205 atau lebih baru |76| `/color [color\|default]` | Atur warna bilah prompt untuk sesi saat ini. Warna tersedia: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `cyan`. Gunakan `default` untuk mengatur ulang, atau jalankan tanpa argumen untuk memilih warna acak. Ketika [Remote Control](/docs/id/remote-control) terhubung, warna disinkronkan ke claude.ai/code. Juga tersedia dalam mode non-interaktif (`-p`); memerlukan Claude Code v2.1.205 atau lebih baru |


91| `/fast [on\|off]` | Alihkan [mode cepat](/docs/id/fast-mode) aktif atau nonaktif. Jalankan saat Claude merespons dan Claude Code mengalihkan mode cepat tanpa menunggu giliran berakhir, meskipun giliran yang berjalan selesai dengan kecepatan aslinya. Sebelum v2.1.242, Claude Code memutuskan dari bendera fitur yang diambilnya dari Anthropic apakah akan menjalankan perintah di tengah giliran atau mengantrikannya sampai giliran selesai, dan selalu mengantrikannya dalam sesi yang tidak [mengambil bendera fitur](/docs/id/env-vars#features-that-need-feature-flag-fetching). Ketersediaan dalam mode non-interaktif dengan `-p` terbatas; lihat [Alihkan mode cepat](/docs/id/fast-mode#toggle-fast-mode). Memerlukan Claude Code v2.1.205 atau lebih baru |94| `/fast [on\|off]` | Alihkan [mode cepat](/docs/id/fast-mode) aktif atau nonaktif. Jalankan saat Claude merespons dan Claude Code mengalihkan mode cepat tanpa menunggu giliran berakhir, meskipun giliran yang berjalan selesai dengan kecepatan aslinya. Sebelum v2.1.242, Claude Code memutuskan dari bendera fitur yang diambilnya dari Anthropic apakah akan menjalankan perintah di tengah giliran atau mengantrikannya sampai giliran selesai, dan selalu mengantrikannya dalam sesi yang tidak [mengambil bendera fitur](/docs/id/env-vars#features-that-need-feature-flag-fetching). Ketersediaan dalam mode non-interaktif dengan `-p` terbatas; lihat [Alihkan mode cepat](/docs/id/fast-mode#toggle-fast-mode). Memerlukan Claude Code v2.1.205 atau lebih baru |

92| `/feedback [report]` | Kirim umpan balik produk tentang Claude Code. Membuka dialog yang sama seperti [`/bug`](#all-commands), dengan langkah persetujuan yang sama, aturan pengiriman, dan perilaku di tengah giliran. Dalam sesi dengan [umpan balik yang dirancang Claude](/docs/id/tools-reference#sendfeedback-tool-behavior), `/feedback` tanpa argumen membuka antrian draf sebagai gantinya, di mana Anda meninjau, mengedit, mengirim, atau membuang draf yang Claude antrikan; antrian mencakup opsi untuk menulis laporan baru dalam dialog. Dengan argumen, dan untuk `/bug` selalu, dialog membuka langsung |95| `/feedback [report]` | Kirim umpan balik produk tentang Claude Code. Membuka dialog yang sama seperti [`/bug`](#all-commands), dengan langkah persetujuan yang sama, aturan pengiriman, dan perilaku di tengah giliran. Dalam sesi dengan [umpan balik yang dirancang Claude](/docs/id/tools-reference#sendfeedback-tool-behavior), `/feedback` tanpa argumen membuka antrian draf sebagai gantinya, di mana Anda meninjau, mengedit, mengirim, atau membuang draf yang Claude antrikan; antrian mencakup opsi untuk menulis laporan baru dalam dialog. Dengan argumen, dan untuk `/bug` selalu, dialog membuka langsung |

93| `/fewer-permission-prompts` | **[Skill](/docs/id/skills#bundled-skills).** Pindai transkrip Anda untuk panggilan alat Bash dan MCP baca-saja yang umum, kemudian tambahkan daftar izin yang diprioritaskan ke `.claude/settings.json` proyek untuk mengurangi prompt izin |96| `/fewer-permission-prompts` | **[Skill](/docs/id/skills#bundled-skills).** Pindai transkrip Anda untuk panggilan alat Bash dan MCP baca-saja yang umum, kemudian tambahkan daftar izin yang diprioritaskan ke `.claude/settings.json` proyek untuk mengurangi prompt izin |

94| `/focus` | Alihkan tampilan fokus, yang menunjukkan hanya prompt terakhir Anda, ringkasan panggilan alat satu baris dengan edit diffstat, dan respons akhir. Ringkasan panggilan alat juga menghitung subagent yang diluncurkan dalam giliran dan meruntuhkan notifikasi tugas latar belakang yang selesai menjadi satu hitungan. Pilihan bertahan di seluruh sesi; atur [`viewMode`](/docs/id/settings-reference#viewmode) dalam pengaturan untuk menimpanya. Hanya tersedia dalam [rendering layar penuh](/docs/id/fullscreen). [Ekstensi VS Code](/docs/id/vs-code#use-the-prompt-box) menawarkan tampilan Focus sendiri sebagai toggle menu perintah, disimpan sebagai pengaturan ekstensi, independen dari `viewMode` |97| `/focus` | Alihkan tampilan fokus, yang menunjukkan hanya prompt terakhir Anda, ringkasan panggilan alat satu baris dengan edit diffstat, dan respons akhir. Ringkasan panggilan alat juga menghitung subagent yang diluncurkan dalam giliran dan meruntuhkan notifikasi tugas latar belakang yang selesai menjadi satu hitungan. Pilihan bertahan di seluruh sesi; atur [`viewMode`](/docs/id/settings-reference#viewmode) dalam pengaturan untuk menimpanya. Hanya tersedia dalam [rendering layar penuh](/docs/id/fullscreen). Dari klien [Remote Control](/docs/id/remote-control), jalankan `/focus [on\|off]` untuk mengaktifkan atau menonaktifkan tampilan fokus untuk sesi saat ini saja, tanpa mengubah pilihan yang disimpan; ini memerlukan Claude Code v2.1.281 atau lebih baru. [Ekstensi VS Code](/docs/id/vs-code#use-the-prompt-box) menawarkan tampilan Focus sendiri sebagai toggle menu perintah, disimpan sebagai pengaturan ekstensi, independen dari `viewMode` |

95| `/fork [prompt]` | [Salin percakapan saat ini](/docs/id/agent-view#copy-the-session-with-%2Ffork) ke sesi latar belakang baru dan terus bekerja di sini. Berikan prompt dan salinan mulai bekerja padanya segera; tanpa satu menunggu di tampilan agen untuk prompt pertamanya. Kecuali ketika salinan [mengedit di tempat](/docs/id/agent-view#how-file-edits-are-isolated), Claude Code menginstruksikannya untuk membuat worktree sendiri sebelum membuat perubahan kode; instruksi isolasi memerlukan Claude Code v2.1.221 atau lebih baru. Untuk menyerahkan tugas sampingan ke subagent yang hasilnya kembali ke percakapan ini, gunakan `/subtask`; untuk beralih ke salinan sendiri, gunakan `/branch`. Memerlukan Claude Code v2.1.212 atau lebih baru; di v2.1.161 melalui v2.1.211, dan kapan pun [tampilan agen dimatikan](/docs/id/agent-view#turn-off-agent-view), `/fork` memulai [subagent bercabang](/docs/id/sub-agents#fork-the-current-conversation) sebagai gantinya |98| `/fork [prompt]` | [Salin percakapan saat ini](/docs/id/agent-view#copy-the-session-with-%2Ffork) ke sesi latar belakang baru dan terus bekerja di sini. Berikan prompt dan salinan mulai bekerja padanya segera; tanpa satu menunggu di tampilan agen untuk prompt pertamanya. Kecuali ketika salinan [mengedit di tempat](/docs/id/agent-view#how-file-edits-are-isolated), Claude Code menginstruksikannya untuk membuat worktree sendiri sebelum membuat perubahan kode; instruksi isolasi memerlukan Claude Code v2.1.221 atau lebih baru. Untuk menyerahkan tugas sampingan ke subagent yang hasilnya kembali ke percakapan ini, gunakan `/subtask`; untuk beralih ke salinan sendiri, gunakan `/branch`. Memerlukan Claude Code v2.1.212 atau lebih baru; di v2.1.161 melalui v2.1.211, dan kapan pun [tampilan agen dimatikan](/docs/id/agent-view#turn-off-agent-view), `/fork` memulai [subagent bercabang](/docs/id/sub-agents#fork-the-current-conversation) sebagai gantinya |

96| `/goal [condition\|clear]` | Atur [tujuan](/docs/id/goal): Claude terus bekerja di seluruh giliran sampai kondisi terpenuhi atau tujuan [jelas untuk alasan lain](/docs/id/goal#how-evaluation-works). Tanpa argumen, menunjukkan tujuan saat ini atau yang paling baru dicapai. `clear`, `stop`, `off`, `reset`, `none`, atau `cancel` menghapus tujuan aktif lebih awal |99| `/goal [condition\|clear]` | Atur [tujuan](/docs/id/goal): Claude terus bekerja di seluruh giliran sampai kondisi terpenuhi atau tujuan [jelas untuk alasan lain](/docs/id/goal#how-evaluation-works). Tanpa argumen, menunjukkan tujuan saat ini atau yang paling baru dicapai. `clear`, `stop`, `off`, `reset`, `none`, atau `cancel` menghapus tujuan aktif lebih awal |

97| `/heapdump` | Tulis snapshot heap JavaScript dan rincian memori ke `~/Desktop`, atau direktori home Anda di Linux tanpa folder Desktop, untuk mendiagnosis penggunaan memori tinggi. Lampirkan hanya file `-diagnostics.json` saat melaporkan masalah memori; `.heapsnapshot` berisi percakapan lengkap dan kredensial Anda, jadi jangan bagikan. [Tersembunyi dari menu perintah](#how-the-command-menu-matches-what-you-type); ketik sepenuhnya. Lihat [apa yang harus dilakukan dengan output](/docs/id/troubleshooting#high-cpu-or-memory-usage) |100| `/heapdump` | Tulis snapshot heap JavaScript dan rincian memori ke `~/Desktop`, atau direktori home Anda di Linux tanpa folder Desktop, untuk mendiagnosis penggunaan memori tinggi. Lampirkan hanya file `-diagnostics.json` saat melaporkan masalah memori; `.heapsnapshot` berisi percakapan lengkap dan kredensial Anda, jadi jangan bagikan. [Tersembunyi dari menu perintah](#how-the-command-menu-matches-what-you-type); ketik sepenuhnya. Lihat [apa yang harus dilakukan dengan output](/docs/id/troubleshooting#high-cpu-or-memory-usage) |

costs.md +2 −0

Details

96 96 

97Jalankan [`/insights`](/docs/id/commands#all-commands) untuk laporan tentang cara Anda bekerja daripada berapa banyak token yang telah Anda gunakan. Ini menganalisis sesi terbaru Anda di mesin ini dan menulis laporan HTML yang mencakup apa yang Anda kerjakan, titik gesekan seperti permintaan yang salah dipahami atau kode yang bermasalah, dan saran untuk menggunakan Claude Code lebih efektif. Satu kali jalankan menganalisis hingga 200 sesi yang belum pernah dilihat sebelumnya dan melewati yang sangat pendek. Ketika sesi ditinggalkan, header laporan menampilkan jumlah yang dianalisis dengan total dalam tanda kurung, misalnya `200 sessions (412 total)`.97Jalankan [`/insights`](/docs/id/commands#all-commands) untuk laporan tentang cara Anda bekerja daripada berapa banyak token yang telah Anda gunakan. Ini menganalisis sesi terbaru Anda di mesin ini dan menulis laporan HTML yang mencakup apa yang Anda kerjakan, titik gesekan seperti permintaan yang salah dipahami atau kode yang bermasalah, dan saran untuk menggunakan Claude Code lebih efektif. Satu kali jalankan menganalisis hingga 200 sesi yang belum pernah dilihat sebelumnya dan melewati yang sangat pendek. Ketika sesi ditinggalkan, header laporan menampilkan jumlah yang dianalisis dengan total dalam tanda kurung, misalnya `200 sessions (412 total)`.

98 98 

99Ketika [mode otomatis](/docs/id/permission-modes#eliminate-prompts-with-auto-mode) tersedia untuk sesi dan sesi terbaru Anda sebagian besar berjalan tanpanya, laporan juga dapat menyertakan perkiraan berapa banyak prompt izin yang dapat ditangani mode otomatis di seluruh sesi tersebut.

100 

99Claude Code menulis laporan terbaru ke `~/.claude/usage-data/report.html` dan menyimpan salinan dengan stempel waktu dari setiap jalankan di direktori yang sama, jadi laporan sebelumnya tidak ditimpa. Claude Code menghapus laporan sesuai jadwal yang sama dengan sisa data sesi Anda: saat startup, ia menghapus file yang lebih lama dari [`cleanupPeriodDays`](/docs/id/claude-directory#cleaned-up-automatically), 30 hari secara default.101Claude Code menulis laporan terbaru ke `~/.claude/usage-data/report.html` dan menyimpan salinan dengan stempel waktu dari setiap jalankan di direktori yang sama, jadi laporan sebelumnya tidak ditimpa. Claude Code menghapus laporan sesuai jadwal yang sama dengan sisa data sesi Anda: saat startup, ia menghapus file yang lebih lama dari [`cleanupPeriodDays`](/docs/id/claude-directory#cleaned-up-automatically), 30 hari secara default.

100 102 

101Anda dapat menjalankan `/insights` pada paket apa pun dan dengan penyedia apa pun. Analisis berjalan melalui penyedia dan akun yang sama dengan sesi reguler Anda, dan token diperhitungkan terhadap penggunaan paket atau API Anda. Sesi dari perangkat lain dan claude.ai tidak disertakan.103Anda dapat menjalankan `/insights` pada paket apa pun dan dengan penyedia apa pun. Analisis berjalan melalui penyedia dan akun yang sama dengan sesi reguler Anda, dan token diperhitungkan terhadap penggunaan paket atau API Anda. Sesi dari perangkat lain dan claude.ai tidak disertakan.

desktop.md +6 −0

Details

834* **Remote Control**: aktifkan atau nonaktifkan [Remote Control](/docs/id/remote-control) untuk organisasi Anda834* **Remote Control**: aktifkan atau nonaktifkan [Remote Control](/docs/id/remote-control) untuk organisasi Anda

835* **Disable Bypass permissions mode**: cegah pengguna di organisasi Anda dari mengaktifkan bypass permissions mode835* **Disable Bypass permissions mode**: cegah pengguna di organisasi Anda dari mengaktifkan bypass permissions mode

836 836 

837<Note>

838 Formulir OpenTelemetry untuk Cowork di bawah **Monitoring** dalam [Data and privacy settings](https://claude.ai/admin-settings/data-privacy-controls) konsol admin berlaku untuk sesi Cowork saja. Dalam sesi Cowork di mesin ini, aplikasi desktop meneruskan kolektor tersebut ke Claude Code sebagai variabel lingkungan `OTEL_*`, sehingga formulir berlaku meskipun Claude Code dalam sesi tersebut [tidak pernah mengambil pengaturan konsol admin](#managed-settings).

839 

840 Untuk mengekspor telemetri dari sesi Code tab, atur `CLAUDE_CODE_ENABLE_TELEMETRY` dan variabel `OTEL_*` dalam blok `env` dari pengaturan Claude Code yang dikelola Anda, seperti yang ditunjukkan dalam [administrator configuration for monitoring](/docs/id/monitoring-usage#administrator-configuration). Sesi lokal, cloud, dan SSH masing-masing membaca [managed settings dari sumber yang berbeda](#managed-settings). Untuk host yang dapat dijangkau sesi cloud, lihat [network access](/docs/id/cloud-environments#network-access). Untuk `service.name` yang dilaporkan sesi Code tab, lihat [service information](/docs/id/monitoring-usage#service-information).

841</Note>

842 

837<h3 id="managed-settings">843<h3 id="managed-settings">

838 Pengaturan yang dikelola844 Pengaturan yang dikelola

839</h3>845</h3>

env-vars.md +2 −2

Details

110 110 

111Beberapa perilaku memiliki baik variabel lingkungan maupun kunci pengaturan khusus, dan mana yang dibaca Claude Code terlebih dahulu berbeda per kunci. Untuk `ANTHROPIC_MODEL` dan `CLAUDE_CODE_AUTO_CONNECT_IDE`, Claude Code membaca variabel terlebih dahulu dan hanya menggunakan pengaturan `model` atau `autoConnectIde` ketika variabel tidak diatur. Untuk pasangan yang Anda atur, periksa baris variabel di bawah ini dan entri kunci pada [referensi pengaturan](/docs/id/settings-reference).111Beberapa perilaku memiliki baik variabel lingkungan maupun kunci pengaturan khusus, dan mana yang dibaca Claude Code terlebih dahulu berbeda per kunci. Untuk `ANTHROPIC_MODEL` dan `CLAUDE_CODE_AUTO_CONNECT_IDE`, Claude Code membaca variabel terlebih dahulu dan hanya menggunakan pengaturan `model` atau `autoConnectIde` ketika variabel tidak diatur. Untuk pasangan yang Anda atur, periksa baris variabel di bawah ini dan entri kunci pada [referensi pengaturan](/docs/id/settings-reference).

112 112 

113Ketika variabel yang sama diatur di shell Anda dan blok `env` file pengaturan, nilai file pengaturan berlaku. Claude Code menulis setiap entri `env` ke dalam lingkungan proses, menggantikan nilai yang diwarisi dari shell. [Pengaturan `env`](/docs/id/settings-reference#when-claude-code-applies-env-values) mengatakan kapan pengaturan tersebut diterapkan. Beberapa variabel adalah kasus khusus; [pengaturan `env`](/docs/id/settings-reference#env) mencantumkan pengecualiannya.113Ketika variabel yang sama diatur di shell Anda dan blok `env` file pengaturan, nilai file pengaturan berlaku di sebagian besar sesi. Claude Code menulis setiap entri `env` ke dalam lingkungan proses, menggantikan nilai yang diwarisi dari shell. [Bagaimana nilai `env` berinteraksi dengan shell Anda](/docs/id/settings-reference#how-env-values-interact-with-your-shell) mencakup sesi yang mempertahankan nilai yang diwarisi sebagai gantinya, dan [pengaturan `env`](/docs/id/settings-reference#when-claude-code-applies-env-values) mengatakan kapan pengaturan tersebut diterapkan. Beberapa variabel adalah kasus khusus; [pengaturan `env`](/docs/id/settings-reference#env) mencantumkan pengecualiannya.

114 114 

115Dalam file pengaturan Anda dapat mengatur variabel tetapi Anda tidak dapat menghapusnya. Untuk mengganti variabel yang tidak dapat Anda batalkan, seperti `CLAUDE_CODE_USE_VERTEX` yang sudah usang yang diekspor oleh profil shell yang tidak Anda kontrol, atur ke string kosong dalam blok `env`: `"CLAUDE_CODE_USE_VERTEX": ""`. Claude Code memperlakukan nilai kosong sebagai tidak diatur untuk pemilihan penyedia. Subproses masih mewarisi nilai kosong.115Dalam file pengaturan Anda dapat mengatur variabel tetapi Anda tidak dapat menghapusnya. Untuk mengganti variabel yang tidak dapat Anda batalkan, seperti `CLAUDE_CODE_USE_VERTEX` yang sudah usang yang diekspor oleh profil shell yang tidak Anda kontrol, atur ke string kosong dalam blok `env`: `"CLAUDE_CODE_USE_VERTEX": ""`. Claude Code memperlakukan nilai kosong sebagai tidak diatur untuk pemilihan penyedia. Subproses masih mewarisi nilai kosong.

116 116 


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

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

191| `ANTHROPIC_WORKSPACE_ID` | ID Workspace untuk [federasi identitas beban kerja](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Atur ini ketika aturan federasi Anda mencakup lebih dari satu workspace sehingga pertukaran token tahu workspace mana yang ditargetkan |191| `ANTHROPIC_WORKSPACE_ID` | ID Workspace untuk [federasi identitas beban kerja](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation). Atur ini ketika aturan federasi Anda mencakup lebih dari satu workspace sehingga pertukaran token tahu workspace mana yang ditargetkan |

192| `API_FORCE_IDLE_TIMEOUT` | Ganti timeout idle badan 5 menit yang menghentikan respons model streaming ketika tidak ada byte yang tiba. Atur ke `0` untuk menonaktifkan timeout, misalnya ketika [gateway](/docs/id/llm-gateway) lambat atau model lokal berhenti lebih lama dari 5 menit antara chunk, atau `1` untuk menyimpannya untuk setiap penyedia. Ketika tidak diatur, timeout aktif di penyedia selain API Anthropic langsung dan [Claude Platform on AWS](/docs/id/claude-platform-on-aws). [Watchdog aliran](/docs/id/network-config#streaming-idle-watchdogs) berjalan independen darinya dan menghentikan jeda senyap yang panjang bahkan ketika Anda menetapkan `0` di sini |192| `API_FORCE_IDLE_TIMEOUT` | Ganti timeout idle badan 5 menit yang menghentikan respons model streaming ketika tidak ada byte yang tiba. Atur ke `0` untuk menonaktifkan timeout, misalnya ketika [gateway](/docs/id/llm-gateway) lambat atau model lokal berhenti lebih lama dari 5 menit antara chunk, atau `1` untuk menyimpannya untuk setiap penyedia. Ketika tidak diatur, timeout aktif di penyedia selain API Anthropic langsung, [Claude Platform on AWS](/docs/id/claude-platform-on-aws), dan Amazon Bedrock dengan `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1` diatur. [Watchdog aliran](/docs/id/network-config#streaming-idle-watchdogs) berjalan independen darinya dan menghentikan jeda senyap yang panjang bahkan ketika Anda menetapkan `0` di sini |

193| `API_TIMEOUT_MS` | Timeout untuk permintaan API dalam milidetik (default: 600000, atau 10 menit; maksimum: 2147483647). Tingkatkan ini ketika permintaan timeout di jaringan lambat atau saat merutekan melalui proxy. Nilai di atas maksimum meluap timer yang mendasar dan menyebabkan permintaan gagal segera |193| `API_TIMEOUT_MS` | Timeout untuk permintaan API dalam milidetik (default: 600000, atau 10 menit; maksimum: 2147483647). Tingkatkan ini ketika permintaan timeout di jaringan lambat atau saat merutekan melalui proxy. Nilai di atas maksimum meluap timer yang mendasar dan menyebabkan permintaan gagal segera |

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

195| `BASH_DEFAULT_TIMEOUT_MS` | Timeout default untuk perintah bash yang berjalan lama (default: 120000, atau 2 menit) |195| `BASH_DEFAULT_TIMEOUT_MS` | Timeout default untuk perintah bash yang berjalan lama (default: 120000, atau 2 menit) |

errors.md +42 −10

Details

152| `There's an issue with the selected model` | [Request errors](#theres-an-issue-with-the-selected-model) |152| `There's an issue with the selected model` | [Request errors](#theres-an-issue-with-the-selected-model) |

153| `Model ... is not a recognized model id` | [Request errors](#model-is-not-a-recognized-model-id) |153| `Model ... is not a recognized model id` | [Request errors](#model-is-not-a-recognized-model-id) |

154| `Model ... not found` | [Request errors](#model-not-found) |154| `Model ... not found` | [Request errors](#model-not-found) |

155| `Couldn't confirm model ... with the API` | [Request errors](#couldnt-confirm-model-with-the-api) |

155| `API error: ... · model not changed` | [Request errors](#api-error-model-not-changed) |156| `API error: ... · model not changed` | [Request errors](#api-error-model-not-changed) |

156| `Claude Opus is not available with the Claude Pro plan` | [Request errors](#claude-opus-is-not-available-with-the-claude-pro-plan) |157| `Claude Opus is not available with the Claude Pro plan` | [Request errors](#claude-opus-is-not-available-with-the-claude-pro-plan) |

157| `Claude Code ... does not support this model; version ... or newer is required` | [Request errors](#claude-code-does-not-support-this-model) |158| `Claude Code ... does not support this model; version ... or newer is required` | [Request errors](#claude-code-does-not-support-this-model) |


252| `Plugin "<name>@synced" is required by your organization and can't be disabled here` | [Plugin errors](#plugin-is-required-by-your-organization) |253| `Plugin "<name>@synced" is required by your organization and can't be disabled here` | [Plugin errors](#plugin-is-required-by-your-organization) |

253| `"<plugin>" was not uninstalled: it is still switched on in <file>` | [Plugin errors](#plugin-was-not-uninstalled) |254| `"<plugin>" was not uninstalled: it is still switched on in <file>` | [Plugin errors](#plugin-was-not-uninstalled) |

254| `"<plugin>" was not uninstalled: <file> is there and could not be read` | [Plugin errors](#plugin-was-not-uninstalled) |255| `"<plugin>" was not uninstalled: <file> is there and could not be read` | [Plugin errors](#plugin-was-not-uninstalled) |

256| `Plugin "<plugin>" was not uninstalled: installed_plugins.json` | [Plugin troubleshooting](/docs/id/plugins/troubleshooting#installed-plugins-json-holds-a-record-this-version-cannot-read) |

255| `would be spawned with zero tools — refusing` | [Tool errors](#agent-would-be-spawned-with-zero-tools) |257| `would be spawned with zero tools — refusing` | [Tool errors](#agent-would-be-spawned-with-zero-tools) |

256| `File is covered by a Read deny rule in your permission settings` | [Tool errors](#file-is-covered-by-a-read-deny-rule) |258| `File is covered by a Read deny rule in your permission settings` | [Tool errors](#file-is-covered-by-a-read-deny-rule) |

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


2346 Model bukan ID model yang dikenali2348 Model bukan ID model yang dikenali

2347</h3>2349</h3>

2348 2350 

2349String model yang Anda teruskan ke sakelar model bukan alias model, ID model yang diketahui versi Claude Code ini, atau ID yang dimulai dengan `claude-`. Penyebab biasanya adalah kesalahan ketik dalam ID, nama tampilan seperti `Sonnet 5` di mana ID `claude-sonnet-5` diharapkan, atau alias yang hanya dikenali versi Claude Code yang lebih baru. Claude Code menolak sakelar segera. Sebelum v2.1.200, Claude Code menyimpan string dan gagal pada permintaan berikutnya dengan [Ada masalah dengan model yang dipilih](#theres-an-issue-with-the-selected-model).2351String yang Anda teruskan ke sakelar model bukan yang dapat digunakan Claude Code sebagai model, jadi itu menolak sakelar tanpa mengirim permintaan dan sesi menyimpan model saat ini. Anda dapat mendapatkan kesalahan ini ketika model diatur melalui metode [Agent SDK](/docs/id/agent-sdk/typescript) `setModel()`, oleh aplikasi yang menjalankan CLI Claude Code untuk Anda, seperti [Desktop app](/docs/id/desktop), atau ketika Anda memilih model dari perangkat yang terhubung melalui [Remote Control](/docs/id/remote-control). Sebelum v2.1.200, Claude Code menyimpan string dan gagal pada permintaan berikutnya dengan [Ada masalah dengan model yang dipilih](#theres-an-issue-with-the-selected-model).

2350 2352 

2351```text theme={null}2353```text theme={null}

2352Model "claud-sonnet-5" is not a recognized model id. Did you mean 'claude-sonnet-5'?2354Model "Sonnet5" is not a recognized model id. Did you mean 'claude-sonnet-5'?

2353```2355```

2354 2356 

2355Petunjuk trailing menyebutkan alias atau ID model yang paling cocok. Ketika tidak ada yang cukup dekat, itu berbunyi `Run /model to see available models.` sebagai gantinya. Dalam sesi yang dimulai [Desktop app](/docs/id/desktop) untuk Anda, petunjuk no-match berbunyi `Switch to a different model.`2357Dalam contoh ini aplikasi mengirim nama tampilan `Sonnet 5`, yang pesan ulangi tanpa spasi. Petunjuk trailing menyebutkan alias atau ID model yang paling cocok. Ketika tidak ada yang cukup dekat, itu berbunyi `Run /model to see available models.` sebagai gantinya. Dalam sesi yang dimulai [Desktop app](/docs/id/desktop) untuk Anda, petunjuk no-match berbunyi `Switch to a different model.`

2356 2358 

2357Claude Code menghasilkan kesalahan ini secara lokal pada saat sakelar diminta, sebelum permintaan API apa pun dibuat. Ini berlaku ketika model diatur melalui metode [Agent SDK](/docs/id/agent-sdk/typescript) `setModel()`, oleh aplikasi seperti [Desktop app](/docs/id/desktop) yang menjalankan CLI Claude Code untuk Anda, atau ketika Anda memilih model dari perangkat yang terhubung melalui [Remote Control](/docs/id/remote-control). Sebelum v2.1.260, pemeriksaan tidak mencakup pilihan Remote Control, jadi Claude Code menerapkan pilihan dan permintaan berikutnya gagal dengan [Ada masalah dengan model yang dipilih](#theres-an-issue-with-the-selected-model).2359Ketika Anda beralih melalui Agent SDK atau aplikasi di API Anthropic, hanya string yang tidak dapat menjadi ID model mendapatkan kesalahan ini, seperti nama tampilan atau string kosong.

2360 

2361Ketika Anda memilih model dari perangkat Remote Control, Claude Code memeriksa string secara lokal. String apa pun yang bukan alias model, model yang Claude Code daftar atau Anda konfigurasikan, atau ID yang dimulai dengan `claude-` mendapatkan kesalahan ini, ID yang salah ketik seperti `claud-sonnet-5` termasuk. Sebelum v2.1.260, pemeriksaan ini tidak mencakup pilihan Remote Control, jadi string yang tidak dikenali diterapkan dan gagal pada permintaan berikutnya.

2358 2362 

2359**Yang harus dilakukan:**2363**Yang harus dilakukan:**

2360 2364 

2361* Jalankan `/model` tanpa argumen untuk membuka pemilih dan pilih dari model yang tersedia untuk akun Anda, lalu teruskan alias atau ID yang ditampilkan di sana2365* Jalankan `/model` tanpa argumen untuk membuka pemilih dan pilih dari model yang tersedia untuk akun Anda, lalu teruskan alias atau ID yang ditampilkan di sana

2362* Jika Anda menggunakan alias yang didukung versi Claude Code yang lebih baru, jalankan `claude update`. ID lengkap yang dimulai dengan `claude-` melewati pemeriksaan lokal ini bahkan ketika model lebih baru dari versi Claude Code Anda. Server masih dapat memerlukan versi minimum untuk model itu; lihat [Claude Code tidak mendukung model ini](#claude-code-does-not-support-this-model).2366* Jika Anda menggunakan alias yang hanya didukung versi Claude Code yang lebih baru, jalankan `claude update`, atau teruskan ID lengkap model sebagai gantinya. Server masih dapat memerlukan versi minimum Claude Code untuk model itu; lihat [Claude Code tidak mendukung model ini](#claude-code-does-not-support-this-model).

2363* Model yang disimpan sebelum v2.1.200 tidak diperbaiki oleh pemeriksaan ini. Jika nilai usang terus kembali, hapus dari lokasi yang tercantum di bawah [Mengatur model Anda](/docs/id/model-config#setting-your-model).2367* Model yang disimpan sebelum v2.1.200 tidak diperbaiki oleh pemeriksaan ini. Jika nilai usang terus kembali, hapus dari lokasi yang tercantum di bawah [Mengatur model Anda](/docs/id/model-config#setting-your-model).

2364* Pemeriksaan hanya berjalan pada API Anthropic. Pada penyedia atau gateway lain apa pun, termasuk `ANTHROPIC_BASE_URL` kustom, penyedia menentukan nama model, jadi Claude Code menerima string apa pun dan meneruskannya. Claude Code masih dapat menulis [baris diagnostik model tidak dikenali](#unrecognized-model-id-on-a-request) pada waktu permintaan, pada setiap penyedia.2368* Pada penyedia apa pun selain API Anthropic, atau di balik gateway atau `ANTHROPIC_BASE_URL` kustom, hanya string kosong yang mendapatkan kesalahan ini. Claude Code masih dapat menulis [baris diagnostik model tidak dikenali](#unrecognized-model-id-on-a-request) pada waktu permintaan, pada setiap penyedia.

2365 2369 

2366<h3 id="model-not-found">2370<h3 id="model-not-found">

2367 Model tidak ditemukan2371 Model tidak ditemukan

2368</h3>2372</h3>

2369 2373 

2370Anda memilih model dengan `/model <name>` dan Claude Code tidak dapat mengkonfirmasi bahwa model dengan nama itu ada. Ketika nama bukan [alias model](/docs/id/model-config#model-aliases) atau ejaan lain yang diterima Claude Code secara lokal, `/model` memverifikasinya dengan permintaan API minimal, dan kesalahan ini biasanya adalah jawaban endpoint API Anda. Nama yang tidak dapat menjadi ID model sama sekali, seperti yang berisi spasi, mendapatkan pesan yang sama.2374Anda beralih ke model berdasarkan nama dan Claude Code tidak dapat mengkonfirmasi bahwa model dengan nama itu ada. Ketika nama bukan [alias model](/docs/id/model-config#model-aliases) atau ejaan lain yang diterima Claude Code secara lokal, Claude Code memverifikasinya dengan permintaan API minimal, dan kesalahan ini biasanya adalah jawaban endpoint API Anda. Dengan `/model <name>`, nama yang tidak dapat menjadi ID model sama sekali, seperti yang berisi spasi, mendapatkan pesan yang sama.

2371 2375 

2372```text theme={null}2376```text theme={null}

2373Model 'claude-opus-9' not found2377Model 'claude-opus-9' not found


2379 2383 

2380* Jalankan `/model` tanpa argumen dan pilih dari model yang tersedia untuk akun Anda, atau gunakan [alias model](/docs/id/model-config#model-aliases) seperti `sonnet`, yang menyelesaikan ke default yang dipertahankan2384* Jalankan `/model` tanpa argumen dan pilih dari model yang tersedia untuk akun Anda, atau gunakan [alias model](/docs/id/model-config#model-aliases) seperti `sonnet`, yang menyelesaikan ke default yang dipertahankan

2381* Jika Anda mengetik ID lengkap, periksakan terhadap katalog model penyedia Anda. Model yang baru diluncurkan dapat tersedia di API Anthropic sebelum penyedia atau wilayah Anda menawarkannya.2385* Jika Anda mengetik ID lengkap, periksakan terhadap katalog model penyedia Anda. Model yang baru diluncurkan dapat tersedia di API Anthropic sebelum penyedia atau wilayah Anda menawarkannya.

2386* Dalam Agent SDK, `setModel()` gagal dengan pesan ini dan sesi terus berjalan pada model sebelumnya. Di TypeScript SDK, panggil [`supportedModels()`](/docs/id/agent-sdk/typescript#query-object) untuk membuat daftar model yang dapat Anda beralih.

2382* Sebelum v2.1.265, `/model` juga menolak ejaan alias `opusplan[1m]` dengan kesalahan ini. Pada versi tersebut, perbarui Claude Code, atau atur model dalam [pengaturan](/docs/id/model-config#setting-your-model) atau dengan `--model` sebagai gantinya.2387* Sebelum v2.1.265, `/model` juga menolak ejaan alias `opusplan[1m]` dengan kesalahan ini. Pada versi tersebut, perbarui Claude Code, atau atur model dalam [pengaturan](/docs/id/model-config#setting-your-model) atau dengan `--model` sebagai gantinya.

2383 2388 

2389<h3 id="couldnt-confirm-model-with-the-api">

2390 Tidak dapat mengkonfirmasi model dengan API

2391</h3>

2392 

2393Anda beralih model melalui metode [Agent SDK](/docs/id/agent-sdk/typescript) `setModel()` atau aplikasi yang menjalankan CLI Claude Code untuk Anda, seperti [Desktop app](/docs/id/desktop), dan permintaan yang mengkonfirmasi ID model dengan endpoint API Anda tidak mendapat jawaban dalam lima detik. Sesi menyimpan model saat ini.

2394 

2395```text theme={null}

2396Couldn't confirm model "claude-sonnet-5" with the API. Try again, or run /model to see available models.

2397```

2398 

2399Dalam sesi yang dimulai [Desktop app](/docs/id/desktop) untuk Anda, pesan berakhir di `Try again.`

2400 

2401**Yang harus dilakukan:**

2402 

2403* Beralih ke model lagi

2404* Jika sakelar terus gagal, periksa bahwa Claude Code dapat menjangkau endpoint API Anda; lihat [Kesalahan jaringan dan koneksi](#network-and-connection-errors)

2405 

2384<h3 id="api-error-model-not-changed">2406<h3 id="api-error-model-not-changed">

2385 Kesalahan API saat memeriksa model yang dipilih2407 Kesalahan API saat memeriksa model yang dipilih

2386</h3>2408</h3>


2432API Error: 400 Claude Code 2.1.240 is older than the minimum version required by your organization's policy. Run 'claude update', or update the Claude desktop app, to continue.2454API Error: 400 Claude Code 2.1.240 is older than the minimum version required by your organization's policy. Run 'claude update', or update the Claude desktop app, to continue.

2433```2455```

2434 2456 

2457Versi yang diperiksa API adalah versi yang dilaporkan oleh biner Claude Code yang membuat permintaan.

2458 

2435**Yang harus dilakukan:**2459**Yang harus dilakukan:**

2436 2460 

2437* Jalankan `claude update`, atau perbarui Claude desktop app, lalu mulai sesi baru2461Perbarui biner itu, lalu mulai sesi baru. Tempat biner berasal menentukan bagaimana, kecuali dalam [lingkungan yang di-host sendiri](/docs/id/self-hosted-environments-deploy#pin-the-version):

2438* Untuk pesan per-model, Anda dapat terus bekerja dalam sesi saat ini dengan beralih ke model lain dengan `/model`2462 

2463| Biner yang membuat permintaan | Cara memperbarui |

2464| :- | :- |

2465| Claude Code yang Anda instal | Jalankan `claude update` |

2466| Claude desktop app | Perbarui aplikasi |

2467| Biner yang [VS Code extension](/docs/id/vs-code) bundel | Perbarui ekstensi |

2468| Biner yang paket Agent SDK bundel | [Tingkatkan paket SDK](/docs/id/agent-sdk/hosting#runtime-dependencies), lalu mulai ulang aplikasi Anda. Dalam [executable file tunggal yang dikompilasi](/docs/id/agent-sdk/typescript#compile-to-a-single-executable), bangun ulang |

2469 

2470* Untuk pesan per-model, Anda dapat terus bekerja dalam sesi saat ini dengan beralih ke model lain: jalankan `/model` di CLI, panggil [`setModel()`](/docs/id/agent-sdk/typescript#query-object) pada objek `Query` TypeScript SDK dalam mode input streaming, atau panggil [`set_model()`](/docs/id/agent-sdk/python#claudesdkclient) pada `ClaudeSDKClient` Python SDK

2439* Untuk pesan kebijakan organisasi, perbarui sebelum Anda melanjutkan2471* Untuk pesan kebijakan organisasi, perbarui sebelum Anda melanjutkan

2440 2472 

2441<h3 id="model-is-restricted-by-your-organizations-settings">2473<h3 id="model-is-restricted-by-your-organizations-settings">


3888 Plugin was not uninstalled3920 Plugin was not uninstalled

3889</h3>3921</h3>

3890 3922 

3891Anda menjalankan [`claude plugin uninstall`](/docs/id/plugins/cli-reference#plugin-uninstall), atau memilih **Uninstall** di tab **Installed** `/plugin`, dan pencopotan berhenti dengan pesan yang dimulai `"<plugin>" was not uninstalled:`.3923Anda menjalankan [`claude plugin uninstall`](/docs/id/plugins/cli-reference#plugin-uninstall), atau memilih **Uninstall** di tab **Installed** `/plugin`, dan pencopotan berhenti dengan pesan yang dimulai `"<plugin>" was not uninstalled:`. Jika teks setelah titik dua itu dimulai dengan `installed_plugins.json` daripada menamai file pengaturan, penyebabnya adalah konten dalam `installed_plugins.json` yang versi Claude Code ini tidak dapat dibaca. Untuk bentuk itu, lihat [`installed_plugins.json` holds a record this version can't read](/docs/id/plugins/troubleshooting#installed-plugins-json-holds-a-record-this-version-cannot-read).

3892 3924 

3893Ketika Claude Code menghapus entri plugin dari `enabledPlugins` dan membaca kembali file pengaturan cakupan itu, baik plugin masih dihidupkan di sana, atau file yang dapat menghidupkannya tidak dapat dibaca atau diperiksa. Menghapus opsi tersimpan plugin, rahasia, dan data sementara entri pengaturan dapat menghidupkannya kembali akan kehilangannya, jadi pencopotan berhenti sebagai gantinya: plugin tetap terpasang dan tidak ada yang disimpannya yang dihapus.3925Ketika Claude Code menghapus entri plugin dari `enabledPlugins` dan membaca kembali file pengaturan cakupan itu, baik plugin masih dihidupkan di sana, atau file yang dapat menghidupkannya tidak dapat dibaca atau diperiksa. Menghapus opsi tersimpan plugin, rahasia, dan data sementara entri pengaturan dapat menghidupkannya kembali akan kehilangannya, jadi pencopotan berhenti sebagai gantinya: plugin tetap terpasang dan tidak ada yang disimpannya yang dihapus.

3894 3926 

fast-mode.md +2 −0

Details

72 72 

73Ketik `/fast on` dalam sesi untuk mengaktifkan mode cepat. Itu tetap aktif hanya untuk sesi itu dan tidak disimpan sebagai default Anda. [Persyaratan](#requirements) juga berlaku dalam sesi cloud.73Ketik `/fast on` dalam sesi untuk mengaktifkan mode cepat. Itu tetap aktif hanya untuk sesi itu dan tidak disimpan sebagai default Anda. [Persyaratan](#requirements) juga berlaku dalam sesi cloud.

74 74 

75Di browser di [claude.ai/code](https://claude.ai/code), Anda juga dapat mengaktifkan dan menonaktifkan mode cepat dari menu model di kotak pesan. Menu menampilkan switch ketika paket Anda mencakup mode cepat dan model yang dipilih mendukungnya.

76 

75<h2 id="understand-the-cost-tradeoff">77<h2 id="understand-the-cost-tradeoff">

76 Pahami pertukaran biaya78 Pahami pertukaran biaya

77</h2>79</h2>

Details

312| [Computer use](/docs/id/computer-use) | ✓ | ✓ | ✗ | ✗ |312| [Computer use](/docs/id/computer-use) | ✓ | ✓ | ✗ | ✗ |

313| Dispatch ([Desktop](/docs/id/desktop#sessions-from-dispatch)) | ✓ | ✓ | ✗ | ✗ |313| Dispatch ([Desktop](/docs/id/desktop#sessions-from-dispatch)) | ✓ | ✓ | ✗ | ✗ |

314| [Code Review](/docs/id/code-review) | ✗ | ✗ | ✓ | ✓ |314| [Code Review](/docs/id/code-review) | ✗ | ✗ | ✓ | ✓ |

315| [Artifacts](/docs/id/artifacts) | ✓ | ✓ | ✓ | Admin-enabled |315| [Artifacts](/docs/id/artifacts) | ✓ | ✓ | ✓ | ✓ |

316| [Dashboard analitik dan metrik kontribusi](/docs/id/analytics) | ✗ | ✗ | ✓ | ✓ |316| [Dashboard analitik dan metrik kontribusi](/docs/id/analytics) | ✗ | ✗ | ✓ | ✓ |

317| [Enterprise Analytics API](/docs/id/analytics#access-data-programmatically) | ✗ | ✗ | ✗ | ✓ |317| [Enterprise Analytics API](/docs/id/analytics#access-data-programmatically) | ✗ | ✗ | ✗ | ✓ |

318| [Pengaturan terkelola server](/docs/id/server-managed-settings) | ✗ | ✗ | ✓ | ✓ |318| [Pengaturan terkelola server](/docs/id/server-managed-settings) | ✗ | ✗ | ✓ | ✓ |

Details

43 43 

44Claude Code kemudian push branch dengan file alur kerja yang Anda pilih, sudah diatur untuk menggunakan rahasia tersebut, dan membuka GitHub di browser Anda dengan pull request siap dibuat. Buat dan merge pull request tersebut, dan `@claude` bekerja di repositori.44Claude Code kemudian push branch dengan file alur kerja yang Anda pilih, sudah diatur untuk menggunakan rahasia tersebut, dan membuka GitHub di browser Anda dengan pull request siap dibuat. Buat dan merge pull request tersebut, dan `@claude` bekerja di repositori.

45 45 

46Untuk menghentikan penyiapan di tengah jalan, tekan Esc. Langkah yang sudah sedang berlangsung selesai, dan tidak ada langkah selanjutnya yang dimulai. Pesan penutup mencantumkan apa yang sudah terjadi di repositori, seperti branch yang di-push atau rahasia yang disimpan.

47 

46Jika Anda memilih alur kerja ulasan, Claude memposting setiap ulasan di pull request itu sendiri, sebagai komentar inline pada setiap issue yang ditemukannya atau sebagai satu komentar ringkasan ketika tidak menemukan apa pun. Claude melewati beberapa pull request, seperti draft. Contoh [alur kerja ulasan](#run-a-skill) menggunakan skill yang sama dan mencantumkannya. Sebelum v2.1.229, Claude menulis ulasannya hanya ke log run alur kerja.48Jika Anda memilih alur kerja ulasan, Claude memposting setiap ulasan di pull request itu sendiri, sebagai komentar inline pada setiap issue yang ditemukannya atau sebagai satu komentar ringkasan ketika tidak menemukan apa pun. Claude melewati beberapa pull request, seperti draft. Contoh [alur kerja ulasan](#run-a-skill) menggunakan skill yang sama dan mencantumkannya. Sebelum v2.1.229, Claude menulis ulasannya hanya ke log run alur kerja.

47 49 

48Untuk memperbarui alur kerja ulasan yang dihasilkan versi sebelumnya, lakukan salah satu dari berikut:50Untuk memperbarui alur kerja ulasan yang dihasilkan versi sebelumnya, lakukan salah satu dari berikut:

Details

95 Persyaratan jaringan95 Persyaratan jaringan

96</h3>96</h3>

97 97 

98Untuk sesi yang dihosting Anthropic, instans GHES Anda harus dapat dijangkau dari infrastruktur Anthropic sehingga Claude dapat mengkloning repositori dan memposting komentar tinjauan. Jika instans GHES Anda berada di belakang firewall, daftarkan [alamat IP keluar Anthropic](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) Anthropic. Sesi di [lingkungan yang dihosting sendiri](/docs/id/self-hosted-environments-deploy#configure-git) mengkloning dari dalam jaringan Anda, kecuali runner memilih [proxy git Anthropic](/docs/id/self-hosted-environments-deploy#use-the-anthropic-git-proxy), yang mengambil dari sisi Anthropic dan memerlukan jangkauan yang sama; [konektor SCM](/docs/id/self-hosted-environments-reference#scm-connector-flags) mencakup alur pra-sesi yang dihosting, seperti pemilih repositori, untuk host GHES yang hanya dapat dirutekan secara internal.98Untuk sesi yang dihosting Anthropic, instans GHES Anda harus dapat dijangkau dari infrastruktur Anthropic sehingga Claude dapat mengkloning repositori dan memposting komentar tinjauan. Jika instans GHES Anda berada di belakang firewall, daftarkan [alamat IP keluar Anthropic](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) Anthropic. Sesi di [lingkungan yang dihosting sendiri](/docs/id/self-hosted-environments-deploy#configure-git) mengkloning dari dalam jaringan Anda, kecuali runner memilih [proxy git Anthropic](/docs/id/self-hosted-environments-deploy#use-the-anthropic-git-proxy), yang mengambil dari sisi Anthropic dan memerlukan jangkauan yang sama. Alur pra-sesi yang dihosting, seperti pemilih repositori, berjalan di sisi Anthropic sebelum sesi dimulai. Mereka memerlukan instans GHES Anda dapat dijangkau dari infrastruktur Anthropic bahkan ketika sesi berjalan di lingkungan yang dihosting sendiri. [Konektor SCM](/docs/id/self-hosted-environments-reference#scm-connector-flags) tidak tersedia, jadi alur tersebut tidak dapat menjangkau host GHES yang hanya dapat dirutekan secara internal.

99 99 

100<h2 id="developer-workflow">100<h2 id="developer-workflow">

101 Alur kerja pengembang101 Alur kerja pengembang


246 Instans GHES tidak dapat dijangkau246 Instans GHES tidak dapat dijangkau

247</h3>247</h3>

248 248 

249Jika tinjauan atau sesi cloud habis waktu, instans GHES Anda mungkin tidak dapat dijangkau dari infrastruktur Anthropic. Konfirmasi firewall Anda memungkinkan koneksi masuk dari [outbound IP addresses](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) Anthropic. Sesi dalam [self-hosted environment](/docs/id/self-hosted-environments) mencapai GHES dari dalam jaringan Anda, jadi untuk mereka periksa jalur jaringan runner sendiri dan [SCM connector](/docs/id/self-hosted-environments-reference#scm-connector-flags) sebagai gantinya.249Jika tinjauan atau sesi cloud habis waktu, instans GHES Anda mungkin tidak dapat dijangkau dari infrastruktur Anthropic. Konfirmasi firewall Anda memungkinkan koneksi masuk dari [outbound IP addresses](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) Anthropic. Sesi dalam [self-hosted environment](/docs/id/self-hosted-environments) mencapai GHES dari dalam jaringan Anda, jadi ketika salah satu dari mereka tidak dapat mengkloning, periksa jalur jaringan runner sendiri sebagai gantinya. Untuk pemilih repositori dan alur pra-sesi yang dihosting lainnya, lihat [Network requirements](#network-requirements).

250 250 

251<h3 id="session-start-fails-with-unable-to-get-organization-uuid">251<h3 id="session-start-fails-with-unable-to-get-organization-uuid">

252 Awal sesi gagal dengan `Unable to get organization UUID`252 Awal sesi gagal dengan `Unable to get organization UUID`

glossary.md +1 −1

Details

56 Artifact56 Artifact

57</h3>57</h3>

58 58 

59Halaman web interaktif langsung yang Claude Code terbitkan dari sesi Anda ke URL pribadi di claude.ai, sehingga Anda dapat melihat output secara visual atau membagikannya daripada membaca teks terminal. Halaman diperbarui di tempat ketika sesi menerbitkan ulang. Artifact yang Anda buat dari Claude Code muncul di galeri yang sama dengan artifact yang dibuat dalam percakapan claude.ai. Berbagi tergantung pada paket Anda: di Pro dan Max, tautan publik yang dapat dibuka siapa saja; di Team dan Enterprise, berbagi dalam organisasi Anda, ditambah tautan publik setelah Pemilik mengaktifkannya.59Halaman web interaktif langsung yang Claude Code terbitkan dari sesi Anda ke URL pribadi di claude.ai, sehingga Anda dapat melihat output secara visual atau membagikannya daripada membaca teks terminal. Halaman diperbarui di tempat ketika sesi menerbitkan ulang. Artifact yang Anda buat dari Claude Code muncul di galeri yang sama dengan artifact yang dibuat dalam percakapan claude.ai. Opsi berbagi tergantung pada paket Anda: lihat [Share an artifact](/docs/id/artifacts#share-an-artifact).

60 60 

61Pelajari lebih lanjut: [Share session output as artifacts](/docs/id/artifacts)61Pelajari lebih lanjut: [Share session output as artifacts](/docs/id/artifacts)

62 62 

Details

315 315 

316Claude Sonnet 5, Opus 4.6 dan yang lebih baru, serta Sonnet 4.6 mendukung [jendela konteks token 1M](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) di Platform Agent Google Cloud. Sonnet 5 selalu berjalan dengan jendela 1M, tanpa varian `[1m]` untuk dipilih. Untuk model lainnya, Claude Code secara otomatis mengaktifkan jendela konteks yang diperluas ketika Anda memilih varian model 1M.316Claude Sonnet 5, Opus 4.6 dan yang lebih baru, serta Sonnet 4.6 mendukung [jendela konteks token 1M](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model) di Platform Agent Google Cloud. Sonnet 5 selalu berjalan dengan jendela 1M, tanpa varian `[1m]` untuk dipilih. Untuk model lainnya, Claude Code secara otomatis mengaktifkan jendela konteks yang diperluas ketika Anda memilih varian model 1M.

317 317 

318[Wizard pengaturan](#sign-in-with-agent-platform) menawarkan opsi konteks 1M ketika mempinkan model. Untuk mengaktifkannya untuk model yang dipinkan secara manual, tambahkan `[1m]` ke ID model. Lihat [Pin models for third-party deployments](/docs/id/model-config#pin-models-for-third-party-deployments) untuk detail.318[Wizard pengaturan](#sign-in-with-agent-platform) menawarkan opsi konteks 1M ketika mempinkan model. Untuk mengaktifkannya untuk model yang dipinkan secara manual, tambahkan `[1m]` ke ID model. Lihat [Pin models for third-party deployments](/docs/id/model-config#pin-models-for-third-party-deployments) untuk detail, termasuk cara menggunakan jendela 1M tanpa mengubah pin.

319 319 

320<h2 id="troubleshooting">320<h2 id="troubleshooting">

321 Pemecahan masalah321 Pemecahan masalah

hooks-guide.md +1 −1

Details

196| `elicitation_url_dialog` | Server MCP meminta Anda untuk membuka URL browser dan Anda belum mengetik selama sekitar enam detik |196| `elicitation_url_dialog` | Server MCP meminta Anda untuk membuka URL browser dan Anda belum mengetik selama sekitar enam detik |

197| `elicitation_complete` | Server MCP melaporkan bahwa [elicitation mode URL](/docs/id/hooks#elicitation-input) selesai |197| `elicitation_complete` | Server MCP melaporkan bahwa [elicitation mode URL](/docs/id/hooks#elicitation-input) selesai |

198| `elicitation_response` | Respons elicitation MCP dikirim kembali ke server |198| `elicitation_response` | Respons elicitation MCP dikirim kembali ke server |

199| `agent_needs_input` | Sesi latar belakang mulai menunggu input Anda saat [agent view](/docs/id/agent-view) terbuka, atau sesi saat ini menanyakan [pertanyaan terminal setup teammate tim agent](/docs/id/agent-teams#choose-a-display-mode) Anda dan Anda belum mengetik selama sekitar enam detik |199| `agent_needs_input` | Sesi latar belakang mulai menunggu input Anda saat [agent view](/docs/id/agent-view) terbuka. Juga aktif ketika sesi terminal menunjukkan Anda [pertanyaan terminal setup teammate tim agent](/docs/id/agent-teams#choose-a-display-mode) atau pemberitahuan mode otomatis tentang [biaya permintaan classifier](/docs/id/auto-mode-classifier-billing) dan Anda belum mengetik selama sekitar enam detik |

200| `agent_completed` | Sesi latar belakang selesai atau gagal. Hanya aktif saat [agent view](/docs/id/agent-view) terbuka |200| `agent_completed` | Sesi latar belakang selesai atau gagal. Hanya aktif saat [agent view](/docs/id/agent-view) terbuka |

201| `quota_auto_resume_fired` | Claude Code melanjutkan tugas Anda setelah batas penggunaan claude.ai menjeda: saat reset, atau lebih cepat ketika sesuatu yang Anda lakukan di Claude Code selama menunggu, seperti menambahkan kredit penggunaan, meningkatkan paket, atau beralih model, membuat penggunaan tersedia lagi, dengan [pengecualian pengaturan model](/docs/id/interactive-mode#wait-for-a-usage-limit-to-reset) |201| `quota_auto_resume_fired` | Claude Code melanjutkan tugas Anda setelah batas penggunaan claude.ai menjeda: saat reset, atau lebih cepat ketika sesuatu yang Anda lakukan di Claude Code selama menunggu, seperti menambahkan kredit penggunaan, meningkatkan paket, atau beralih model, membuat penggunaan tersedia lagi, dengan [pengecualian pengaturan model](/docs/id/interactive-mode#wait-for-a-usage-limit-to-reset) |

202| `quota_auto_resume_stale` | Batas penggunaan claude.ai reset saat komputer Anda tidur selama lebih dari sekitar 30 menit. Claude Code menunggu Anda menekan `Enter` daripada melanjutkan. Setelah tidur yang lebih singkat, Claude Code melanjutkan dan menampilkan `quota_auto_resume_fired` sebagai gantinya |202| `quota_auto_resume_stale` | Batas penggunaan claude.ai reset saat komputer Anda tidur selama lebih dari sekitar 30 menit. Claude Code menunggu Anda menekan `Enter` daripada melanjutkan. Setelah tidur yang lebih singkat, Claude Code melanjutkan dan menampilkan `quota_auto_resume_fired` sebagai gantinya |

keybindings.md +5 −2

Details

301| `footer:down` | Down | Navigasi ke bawah di footer |301| `footer:down` | Down | Navigasi ke bawah di footer |

302| `footer:openSelected` | Enter | Buka item footer yang dipilih |302| `footer:openSelected` | Enter | Buka item footer yang dipilih |

303| `footer:clearSelection` | Escape | Bersihkan pilihan footer |303| `footer:clearSelection` | Escape | Bersihkan pilihan footer |

304| `footer:dismiss` | (unbound) | Dihapus di v2.1.281. `keybindings.json` yang masih menyebutkan tindakan tetap valid, dan binding tidak melakukan apa pun. Sebelum v2.1.281, Backspace dan Delete menghapus tautan artefak yang dipilih dari footer |304| `footer:dismiss` | (unbound) | Mengikat kunci ke tindakan ini tidak berpengaruh, dan `keybindings.json` yang menyebutkannya tetap valid. Sebelum v2.1.281, Backspace dan Delete terikat ke tindakan ini dan menghapus tautan artefak yang dipilih dari footer. |

305 305 

306Saat item footer dipilih, seperti baris di panel agen di bawah prompt, `Enter` membukanya bahkan ketika Anda mengikat ulang `Enter` dalam konteks `Chat` ke `chat:queueSubmit` atau `chat:newline`.306Saat item footer dipilih, seperti baris di panel agen di bawah prompt, `Enter` membukanya bahkan ketika Anda mengikat ulang `Enter` dalam konteks `Chat` ke `chat:queueSubmit` atau `chat:newline`.

307 307 


417| `select:accept` | Enter | Terima pilihan |417| `select:accept` | Enter | Terima pilihan |

418| `select:cancel` | Escape | Batalkan pilihan |418| `select:cancel` | Escape | Batalkan pilihan |

419 419 

420Dalam panel daftar seperti `/skills` dan `/mcp`, Claude Code menerapkan binding `select:pageUp`, `select:pageDown`, `select:first`, dan `select:last` Anda. Dalam sebagian besar daftar lainnya, seperti pemilih `/model`, binding `select:first` dan `select:last` Anda berlaku. PageUp dan PageDown halaman melalui opsi dalam daftar itu terlepas dari binding Anda.420Dalam panel daftar seperti `/skills`, `/mcp`, dan `/tasks`, Claude Code menerapkan binding `select:pageUp`, `select:pageDown`, `select:first`, dan `select:last` Anda. Dalam sebagian besar daftar lainnya, seperti pemilih `/model`, binding `select:first` dan `select:last` Anda berlaku. PageUp dan PageDown halaman melalui opsi dalam daftar itu terlepas dari binding Anda.

421 421 

422Sebelum v2.1.280, daftar lain itu mengabaikan Home, End, dan binding `select:first` dan `select:last` Anda.422Sebelum v2.1.280, daftar lain itu mengabaikan Home, End, dan binding `select:first` dan `select:last` Anda.

423 423 

424Sebelum v2.1.283, daftar alat `/mcp` halaman dengan kunci PageUp dan PageDown tetap terlepas dari binding Anda.

425 

424<h3 id="plugin-actions">426<h3 id="plugin-actions">

425 Tindakan plugin427 Tindakan plugin

426</h3>428</h3>


692Claude Code memvalidasi pintasan keyboard Anda dan menulis peringatan ke log debug untuk:694Claude Code memvalidasi pintasan keyboard Anda dan menulis peringatan ke log debug untuk:

693 695 

694* Parse errors (JSON atau struktur tidak valid)696* Parse errors (JSON atau struktur tidak valid)

697* Modifier yang salah eja, seperti `ctl+k`. Claude Code menghapus bagian yang tidak dikenalinya dan menerapkan binding ke keystroke yang tersisa, `k` dalam contoh ini.

695* Nama konteks tidak valid698* Nama konteks tidak valid

696* Nilai action tidak valid, seperti action yang bukan string atau `null`699* Nilai action tidak valid, seperti action yang bukan string atau `null`

697* Nama action yang tidak dikenal, seperti typo dari action yang terdaftar. Claude Code melewati binding dan mempertahankan binding default apa pun untuk kunci tersebut. Sebelum v2.1.246, binding dengan nama action yang tidak dikenal secara diam-diam menonaktifkan kunci tersebut700* Nama action yang tidak dikenal, seperti typo dari action yang terdaftar. Claude Code melewati binding dan mempertahankan binding default apa pun untuk kunci tersebut. Sebelum v2.1.246, binding dengan nama action yang tidak dikenal secara diam-diam menonaktifkan kunci tersebut

Details

79 79 

80Ketika klien berbicara format Amazon Bedrock, teruskan body respons `InvokeModelWithResponseStream` dan header `Content-Type: application/vnd.amazon.eventstream` tanpa modifikasi, dan jangan konversi aliran ke server-sent events. Lihat [Streaming errors behind a gateway or proxy](/docs/id/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy).80Ketika klien berbicara format Amazon Bedrock, teruskan body respons `InvokeModelWithResponseStream` dan header `Content-Type: application/vnd.amazon.eventstream` tanpa modifikasi, dan jangan konversi aliran ke server-sent events. Lihat [Streaming errors behind a gateway or proxy](/docs/id/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy).

81 81 

82Teruskan ping keep-alive juga. Pada koneksi melalui `ANTHROPIC_BASE_URL` atau `ANTHROPIC_AWS_BASE_URL`, Claude Code menghitung setiap byte yang gateway Anda teruskan, termasuk event SSE `ping` dan baris komentar, dan membatalkan aliran yang diam selama 300 detik secara default. Ping upstream adalah satu-satunya lalu lintas selama jeda pemikiran panjang, jadi jika gateway Anda menghapus atau membuffer mereka, Claude Code membatalkan aliran selama jeda tersebut; [Automatic retries](/docs/id/errors#automatic-retries) mencakup apa yang dilaporkan aliran yang dibatalkan berdasarkan seberapa jauh respons telah maju. Upstream yang tidak mengirim ping sama sekali, seperti event-stream biner Amazon Bedrock, meninggalkan jeda tersebut tanpa apa pun untuk diteruskan. Ketika menerjemahkan dari upstream seperti itu, keluarkan event `ping` Anda sendiri selama celah senyap. Gateway yang dicapai melalui `ANTHROPIC_BEDROCK_BASE_URL`, `ANTHROPIC_VERTEX_BASE_URL`, atau `ANTHROPIC_FOUNDRY_BASE_URL` tidak dibungkus oleh watchdog tingkat byte ini, bahkan ketika mereka meneruskan format Anthropic Messages; di sana, [timeout idle 5 menit](/docs/id/env-vars) membatalkan aliran senyap sebagai gantinya, dan pada koneksi `ANTHROPIC_BEDROCK_BASE_URL` Anda dapat menambahkan watchdog byte dengan [`CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK`](/docs/id/env-vars).82Teruskan ping keep-alive juga, karena Claude Code membatalkan respons streaming setelah tidak ada byte yang mencapainya selama [lima menit secara default](/docs/id/network-config#streaming-idle-watchdogs). Selama jeda pemikiran panjang, event SSE `ping` upstream dapat menjadi satu-satunya byte pada aliran. Jika gateway Anda menghapus atau membuffer mereka, Claude Code membatalkan respons di tengah jeda. Ketika Anda menerjemahkan dari upstream yang tidak mengirim ping sama sekali, seperti event-stream biner Amazon Bedrock, keluarkan event `ping` Anda sendiri selama celah senyap.

83 83 

84<h3 id="format-mismatch-with-the-upstream">84<h3 id="format-mismatch-with-the-upstream">

85 Format mismatch dengan upstream85 Format mismatch dengan upstream

managed-mcp.md +23 −6

Details

31 31 

32| Pola | Apa yang dilakukan | Konfigurasi |32| Pola | Apa yang dilakukan | Konfigurasi |

33| :- | :- | :- |33| :- | :- | :- |

34| **Nonaktifkan MCP** | Tidak ada server yang dimuat, kecuali [server dalam proses yang didaftarkan oleh aplikasi yang memulai sesi](#exclusive-control-with-managed-mcp-json) dan yang [Anda sediakan melalui `managedMcpServers`](#provide-servers-through-managed-settings) | `managed-mcp.json` dengan peta server kosong |34| **Nonaktifkan MCP** | Tidak ada server yang dimuat kecuali beberapa yang [dimuat di bawah kontrol eksklusif](#exclusive-control-with-managed-mcp-json) | `managed-mcp.json` dengan peta server kosong |

35| **Penerapan tetap** | Setiap pengguna mendapatkan server yang sama dan tidak dapat menambah server lain | `managed-mcp.json` dengan server yang Anda inginkan |35| **Penerapan tetap** | Setiap pengguna mendapatkan server yang sama dan tidak dapat menambah server lain | `managed-mcp.json` dengan server yang Anda inginkan |

36| **Server yang disediakan** | Setiap pengguna mendapatkan server jarak jauh yang Anda daftarkan dan mempertahankan server mereka sendiri | `managedMcpServers` dalam pengaturan terkelola |36| **Server yang disediakan** | Setiap pengguna mendapatkan server jarak jauh yang Anda daftarkan dan mempertahankan server mereka sendiri | `managedMcpServers` dalam pengaturan terkelola |

37| **Katalog yang disetujui** | Publikasikan daftar server yang disetujui; pengguna menambahkan yang mereka inginkan, yang lain diblokir | `allowedMcpServers` + `allowManagedMcpServersOnly: true` |37| **Katalog yang disetujui** | Publikasikan daftar server yang disetujui; pengguna menambahkan yang mereka inginkan, yang lain diblokir | `allowedMcpServers` + `allowManagedMcpServersOnly: true` |


53* Server yang didefinisikan file53* Server yang didefinisikan file

54* Server yang Anda [sediakan melalui `managedMcpServers`](#provide-servers-through-managed-settings)54* Server yang Anda [sediakan melalui `managedMcpServers`](#provide-servers-through-managed-settings)

55* Server dalam proses yang aplikasi yang memulai sesi mendaftarkan, seperti server Claude Code sendiri dari ekstensi VS Code atau [konektor yang dikirimkan aplikasi desktop](/docs/id/mcp#how-connectors-reach-claude-code)55* Server dalam proses yang aplikasi yang memulai sesi mendaftarkan, seperti server Claude Code sendiri dari ekstensi VS Code atau [konektor yang dikirimkan aplikasi desktop](/docs/id/mcp#how-connectors-reach-claude-code)

56* Server [Claude in Chrome](/docs/id/chrome) bawaan, jika Anda [mengizinkannya bersama set yang dikelola](#allow-claude-in-chrome-alongside-the-managed-set)

56 57 

57Pengguna tidak dapat menambah, memodifikasi, atau menggunakan server MCP lainnya, termasuk server yang disediakan plugin dan server yang diteruskan dengan [flag CLI `--mcp-config`](/docs/id/cli-reference#cli-flags). File ini juga menekan konektor claude.ai yang Claude Code ambil sendiri kecuali Anda [mengizinkannya bersama set yang dikelola](#allow-claude-ai-connectors-alongside-the-managed-set).58Pengguna tidak dapat menambah, memodifikasi, atau menggunakan server MCP lainnya, termasuk server yang disediakan plugin dan server yang diteruskan dengan [flag CLI `--mcp-config`](/docs/id/cli-reference#cli-flags). File ini juga menekan konektor claude.ai yang Claude Code ambil sendiri kecuali Anda [mengizinkannya bersama set yang dikelola](#allow-claude-ai-connectors-alongside-the-managed-set).

58 59 


144 Nonaktifkan MCP sepenuhnya145 Nonaktifkan MCP sepenuhnya

145</h3>146</h3>

146 147 

147Terapkan `managed-mcp.json` yang berisi peta server kosong untuk memblokir setiap server MCP selain [server dalam proses yang aplikasi yang memulai sesi mendaftarkan](#exclusive-control-with-managed-mcp-json):148Terapkan `managed-mcp.json` yang berisi peta server kosong untuk memblokir setiap server MCP selain yang [memuat di bawah kontrol eksklusif](#exclusive-control-with-managed-mcp-json):

148 149 

149```json theme={null}150```json theme={null}

150{151{


152}153}

153```154```

154 155 

155`claude mcp add` gagal dengan kesalahan kebijakan perusahaan di atas. Server yang pengguna konfigurasi sebelumnya berhenti dimuat saat mereka memulai sesi berikutnya, tanpa peringatan bahwa kebijakan adalah alasannya. Server yang Anda sediakan melalui `managedMcpServers` masih dimuat di bawah peta kosong, jadi biarkan kunci itu tidak diatur juga untuk menonaktifkan MCP sepenuhnya.156`claude mcp add` gagal dengan kesalahan kebijakan perusahaan di atas. Server yang pengguna konfigurasi sebelumnya berhenti dimuat saat mereka memulai sesi berikutnya, tanpa peringatan bahwa kebijakan adalah alasannya. Server yang Anda sediakan melalui `managedMcpServers`, dan apa pun yang Anda izinkan bersama set yang dikelola, masih dimuat di bawah peta kosong, jadi biarkan kunci itu tidak diatur untuk menonaktifkan MCP sepenuhnya.

156 157 

157<h3 id="allow-claude-ai-connectors-alongside-the-managed-set">158<h3 id="allow-claude-ai-connectors-alongside-the-managed-set">

158 Izinkan konektor claude.ai bersama set yang dikelola159 Izinkan konektor claude.ai bersama set yang dikelola


166 167 

167Claude Code membaca `allowAllClaudeAiMcps` hanya dari tingkat kebijakan yang dikendalikan admin: pengaturan yang dikelola server, kunci plist yang diterapkan MDM atau kunci registri HKLM, atau file `managed-settings.json` sistem. Menempatkannya dalam pengaturan pengguna atau proyek tidak berpengaruh, jadi pengguna tidak dapat mengaktifkan kembali konektor yang kontrol eksklusif tekan.168Claude Code membaca `allowAllClaudeAiMcps` hanya dari tingkat kebijakan yang dikendalikan admin: pengaturan yang dikelola server, kunci plist yang diterapkan MDM atau kunci registri HKLM, atau file `managed-settings.json` sistem. Menempatkannya dalam pengaturan pengguna atau proyek tidak berpengaruh, jadi pengguna tidak dapat mengaktifkan kembali konektor yang kontrol eksklusif tekan.

168 169 

170<h3 id="allow-claude-in-chrome-alongside-the-managed-set">

171 Izinkan Claude in Chrome bersama set yang dikelola

172</h3>

173 

174Secara default, ketika Anda menerapkan `managed-mcp.json`, Claude Code memblokir server [Claude in Chrome](/docs/id/chrome) bawaan dalam sesi terminal. Pengguna tidak mendapatkan [prompt instalasi ekstensi](/docs/id/chrome#install-the-extension-when-claude-asks), dan sesi tempat pengguna [mengaktifkan Chrome secara default](/docs/id/chrome#enable-chrome-by-default) dimulai tanpa Chrome dan tidak mencetak peringatan. Ketika pengguna yang dapat menjalankan Claude in Chrome memulainya dengan `claude --chrome` atau `CLAUDE_CODE_ENABLE_CFC=1`, Claude Code keluar saat startup dengan kesalahan yang menyebutkan pengaturan `allowClaudeInChromeWithManagedMcp`.

175 

176Untuk membiarkan pengguna menjalankan Claude in Chrome bersama server di `managed-mcp.json`, atur `"allowClaudeInChromeWithManagedMcp": true` dalam pengaturan yang dikelola perangkat itu sendiri. Letakkan dalam kunci plist yang diterapkan MDM atau kunci registri HKLM, atau file `managed-settings.json` sistem, mana pun dari yang Claude Code [pilih](/docs/id/managed-settings#precedence-within-the-managed-tier) pada perangkat itu. Memerlukan Claude Code v2.1.282 atau lebih baru. Sebelum v2.1.282, Claude Code mengabaikan pengaturan, dan kesalahan startup berbunyi `You cannot dynamically configure MCP servers when an enterprise MCP config is present`.

177 

178Claude Code membaca pengaturan dari sumber perangkat itu bahkan ketika [pengaturan yang dikelola server](/docs/id/server-managed-settings) mengirimkan sisa kebijakan Anda. Ini mengabaikan pengaturan dalam pengaturan yang dikelola server itu sendiri, dalam registri HKCU yang dapat ditulis pengguna, dan dalam pengaturan pengguna atau proyek. Entri [`deniedMcpServers`](#policy-based-control-with-allowlists-and-denylists) untuk `claude-in-chrome` masih memblokir server dengan pengaturan itu.

179 

169<h2 id="provide-servers-through-managed-settings">180<h2 id="provide-servers-through-managed-settings">

170 Sediakan server melalui pengaturan terkelola181 Sediakan server melalui pengaturan terkelola

171</h2>182</h2>


303 314 

304| Pengaturan | Tidak diatur (default) | Array kosong `[]` | Diisi |315| Pengaturan | Tidak diatur (default) | Array kosong `[]` | Diisi |

305| :- | :- | :- | :- |316| :- | :- | :- | :- |

306| `allowedMcpServers` | Semua server diizinkan | Tidak ada server yang diizinkan, terlepas dari [milik organisasi](#how-a-server-is-evaluated) | Hanya server yang cocok diizinkan, terlepas dari [milik organisasi](#how-a-server-is-evaluated) |317| `allowedMcpServers` | Semua server diizinkan | Tidak ada server yang diizinkan, terlepas dari [yang melewati pemeriksaan allowlist](#how-a-server-is-evaluated) | Hanya server yang cocok diizinkan, terlepas dari [yang melewati pemeriksaan allowlist](#how-a-server-is-evaluated) |

307| `deniedMcpServers` | Tidak ada server yang diblokir | Tidak ada server yang diblokir | Server yang cocok diblokir |318| `deniedMcpServers` | Tidak ada server yang diblokir | Tidak ada server yang diblokir | Server yang cocok diblokir |

308 319 

309Lihat [Entri tidak valid dalam pengaturan terkelola](/docs/id/managed-settings#invalid-entries-in-managed-settings) untuk mengetahui apa yang terjadi ketika entri gagal validasi skema.320Lihat [Entri tidak valid dalam pengaturan terkelola](/docs/id/managed-settings#invalid-entries-in-managed-settings) untuk mengetahui apa yang terjadi ketika entri gagal validasi skema.


3292. **Periksa denylist.** Server yang cocok dengan entri denylist apa pun, berdasarkan URL, perintah, atau nama, diblokir. Tidak ada yang menggantikan kecocokan denylist.3402. **Periksa denylist.** Server yang cocok dengan entri denylist apa pun, berdasarkan URL, perintah, atau nama, diblokir. Tidak ada yang menggantikan kecocokan denylist.

3303. **Periksa allowlist.** Jika `allowedMcpServers` tidak diatur di mana pun, setiap server yang melewati denylist dimuat. Jika diatur, apa yang harus cocok dengan server tergantung pada jenisnya, ditampilkan dalam tabel di bawah.3413. **Periksa allowlist.** Jika `allowedMcpServers` tidak diatur di mana pun, setiap server yang melewati denylist dimuat. Jika diatur, apa yang harus cocok dengan server tergantung pada jenisnya, ditampilkan dalam tabel di bawah.

331 342 

332 Server organisasi sendiri melewati pemeriksaan ini: setiap entri `managedMcpServers`, dan entri `managed-mcp.json` apa pun yang nilainya tidak menggunakan ekspansi `${VAR}`. Server bawaan juga melewatinya, seperti Claude di Chrome, server `ide` yang Claude Code sambungkan ke IDE VS Code atau JetBrains yang sedang berjalan, dan server yang CLI sendiri konfigurasi.343 Tiga kelompok server melewati pemeriksaan ini:

344 

345 * Server organisasi sendiri: setiap entri `managedMcpServers`, dan entri `managed-mcp.json` apa pun yang nilainya tidak menggunakan ekspansi `${VAR}`.

346 * Server bawaan, seperti Claude di Chrome, server `ide` yang Claude Code sambungkan ke IDE VS Code atau JetBrains yang sedang berjalan, dan server yang CLI sendiri konfigurasi.

347 * Alat Slack sesi [Claude Tag](/docs/id/claude-tag): server yang digunakan untuk membaca thread dan memposting balasannya dimuat tanpa entri allowlist.

333 348 

334 Server `managed-mcp.json` yang menggunakan ekspansi `${VAR}` dalam perintah, argumen, `env`, URL, atau header masih diperiksa, seperti halnya setiap server yang ditambahkan pengguna, plugin, `--mcp-config`, atau claude.ai.349 Server `managed-mcp.json` yang menggunakan ekspansi `${VAR}` dalam perintah, argumen, `env`, URL, atau header masih diperiksa. Begitu juga setiap server yang ditambahkan pengguna, plugin, atau claude.ai, dan setiap server yang dilewatkan pengguna dengan `--mcp-config`.

335 350 

336| Jenis server | Diizinkan ketika cocok |351| Jenis server | Diizinkan ketika cocok |

337| :- | :- |352| :- | :- |


514| Pembatasan | Apa yang dilihat pengguna |529| Pembatasan | Apa yang dilihat pengguna |

515| :- | :- |530| :- | :- |

516| `managed-mcp.json` ada dan pengguna menjalankan `claude mcp add` | `Cannot add MCP server: enterprise MCP configuration is active and has exclusive control over MCP servers` |531| `managed-mcp.json` ada dan pengguna menjalankan `claude mcp add` | `Cannot add MCP server: enterprise MCP configuration is active and has exclusive control over MCP servers` |

532| `managed-mcp.json` ada dan pengguna yang sebaliknya dapat menjalankan Claude di Chrome menjalankan `claude --chrome` | Claude Code keluar saat startup dengan `Claude in Chrome is blocked by your organization's managed MCP configuration (managed-mcp.json). An administrator can allow it with allowClaudeInChromeWithManagedMcp in device policy.` |

517| Server ada di daftar penolakan dan pengguna menjalankan `claude mcp add` | `Cannot add MCP server "<name>": server is explicitly blocked by enterprise policy` |533| Server ada di daftar penolakan dan pengguna menjalankan `claude mcp add` | `Cannot add MCP server "<name>": server is explicitly blocked by enterprise policy` |

518| Server tidak ada di daftar izin dan pengguna menjalankan `claude mcp add` | `Cannot add MCP server "<name>": not allowed by enterprise policy` |534| Server tidak ada di daftar izin dan pengguna menjalankan `claude mcp add` | `Cannot add MCP server "<name>": not allowed by enterprise policy` |

519| Pengguna menjalankan `claude mcp remove` pada server dari `managedMcpServers` | `MCP server "<name>" is provided by your organization (managed settings) and cannot be removed locally.` |535| Pengguna menjalankan `claude mcp remove` pada server dari `managedMcpServers` | `MCP server "<name>" is provided by your organization (managed settings) and cannot be removed locally.` |


541| `allowedMcpServers` | Daftar izin server yang diizinkan | Cakupan [pengaturan](/docs/id/settings#where-settings-live) apa pun; [Cara server dievaluasi](#how-a-server-is-evaluated) menjelaskan bagaimana daftar dari beberapa cakupan dan sumber yang dikelola digabungkan | Untuk penegakan, [sumber pengaturan yang dikelola](/docs/id/admin-setup#decide-how-settings-reach-devices): pengaturan yang dikelola server, `managed-settings.json`, profil MDM, atau registri |557| `allowedMcpServers` | Daftar izin server yang diizinkan | Cakupan [pengaturan](/docs/id/settings#where-settings-live) apa pun; [Cara server dievaluasi](#how-a-server-is-evaluated) menjelaskan bagaimana daftar dari beberapa cakupan dan sumber yang dikelola digabungkan | Untuk penegakan, [sumber pengaturan yang dikelola](/docs/id/admin-setup#decide-how-settings-reach-devices): pengaturan yang dikelola server, `managed-settings.json`, profil MDM, atau registri |

542| `deniedMcpServers` | Daftar penolakan server yang diblokir | Cakupan pengaturan apa pun; [Cara server dievaluasi](#how-a-server-is-evaluated) menjelaskan bagaimana daftar dari beberapa cakupan dan sumber yang dikelola digabungkan | Sama seperti `allowedMcpServers` |558| `deniedMcpServers` | Daftar penolakan server yang diblokir | Cakupan pengaturan apa pun; [Cara server dievaluasi](#how-a-server-is-evaluated) menjelaskan bagaimana daftar dari beberapa cakupan dan sumber yang dikelola digabungkan | Sama seperti `allowedMcpServers` |

543| `allowManagedMcpServersOnly` | Mengunci daftar izin ke sumber yang dikelola saja | Hanya sumber pengaturan yang dikelola; [Kunci yang dibaca dari setiap sumber admin](/docs/id/managed-settings#keys-read-from-every-admin-source) menjelaskan sumber yang dikelola mana yang dapat mengaktifkannya. Pengaturan tidak berpengaruh di cakupan lain | Sama seperti `allowedMcpServers` |559| `allowManagedMcpServersOnly` | Mengunci daftar izin ke sumber yang dikelola saja | Hanya sumber pengaturan yang dikelola; [Kunci yang dibaca dari setiap sumber admin](/docs/id/managed-settings#keys-read-from-every-admin-source) menjelaskan sumber yang dikelola mana yang dapat mengaktifkannya. Pengaturan tidak berpengaruh di cakupan lain | Sama seperti `allowedMcpServers` |

560| `allowClaudeInChromeWithManagedMcp` | Memungkinkan server Claude bawaan di Chrome berjalan bersama `managed-mcp.json` | Pengaturan yang dikelola di perangkat saja: profil MDM, registri HKLM, atau `managed-settings.json`. Pengaturan yang dikelola server dan sumber yang dapat ditulis pengguna tidak berpengaruh | MDM, GPO, manajemen armada, atau proses apa pun dengan hak istimewa administrator |

544| `allowAllClaudeAiMcps` | Memuat konektor claude.ai yang Claude Code ambil sendiri bersama `managed-mcp.json`. [File `managed-mcp.json` di host yang menjalankan sesi cloud masih menekan konektor sesi tersebut](#allow-claude-ai-connectors-alongside-the-managed-set) | Hanya sumber pengaturan yang dikelola; pengaturan tidak berpengaruh di tempat lain | Sama seperti `allowedMcpServers` |561| `allowAllClaudeAiMcps` | Memuat konektor claude.ai yang Claude Code ambil sendiri bersama `managed-mcp.json`. [File `managed-mcp.json` di host yang menjalankan sesi cloud masih menekan konektor sesi tersebut](#allow-claude-ai-connectors-alongside-the-managed-set) | Hanya sumber pengaturan yang dikelola; pengaturan tidak berpengaruh di tempat lain | Sama seperti `allowedMcpServers` |

545 562 

546<h2 id="related-resources">563<h2 id="related-resources">

memory.md +6 −0

Details

115 115 

116Jalur relatif dan absolut diizinkan. Jalur relatif diselesaikan relatif terhadap file yang berisi impor, bukan direktori kerja. File yang diimpor dapat secara rekursif mengimpor file lain, dengan kedalaman maksimal empat hop.116Jalur relatif dan absolut diizinkan. Jalur relatif diselesaikan relatif terhadap file yang berisi impor, bukan direktori kerja. File yang diimpor dapat secara rekursif mengimpor file lain, dengan kedalaman maksimal empat hop.

117 117 

118Untuk mengimpor file yang jalurnya berisi spasi, letakkan garis miring terbalik sebelum setiap spasi. Tanpa garis miring terbalik, jalur berakhir pada spasi pertama, bahkan ketika impor berada di baris tersendiri. Jalur yang dibungkus dalam tanda kutip tidak diimpor sama sekali, dengan atau tanpa garis miring terbalik. Impor ini memuat file dari folder bernama `Design Docs`:

119 

120```text theme={null}

121- Konvensi API @Design\ Docs/api-conventions.md

122```

123 

118Penguraian impor melewati rentang kode Markdown dan blok kode yang dibatasi. Untuk menyebutkan jalur di CLAUDE.md Anda tanpa mengimpornya, bungkus dalam backtick: menulis `` `@README` `` membuat teks literal, sementara `@README` di luar backtick mengimpor file.124Penguraian impor melewati rentang kode Markdown dan blok kode yang dibatasi. Untuk menyebutkan jalur di CLAUDE.md Anda tanpa mengimpornya, bungkus dalam backtick: menulis `` `@README` `` membuat teks literal, sementara `@README` di luar backtick mengimpor file.

119 125 

120Untuk menarik README, package.json, dan panduan alur kerja, referensikan dengan sintaks `@` di mana saja di CLAUDE.md Anda:126Untuk menarik README, package.json, dan panduan alur kerja, referensikan dengan sintaks `@` di mana saja di CLAUDE.md Anda:

model-config.md +11 −11

Details

65Alias menunjuk ke versi yang direkomendasikan untuk penyedia Anda dan diperbarui seiring waktu. Untuk menyematkan ke versi tertentu, gunakan nama model lengkap, misalnya `claude-opus-5-5`, atau atur variabel lingkungan yang sesuai seperti `ANTHROPIC_DEFAULT_OPUS_MODEL`.65Alias menunjuk ke versi yang direkomendasikan untuk penyedia Anda dan diperbarui seiring waktu. Untuk menyematkan ke versi tertentu, gunakan nama model lengkap, misalnya `claude-opus-5-5`, atau atur variabel lingkungan yang sesuai seperti `ANTHROPIC_DEFAULT_OPUS_MODEL`.

66 66 

67<Note>67<Note>

68 Sonnet 5.5 memerlukan Claude Code v2.1.284 atau lebih baru, dan Opus 5.5 memerlukan v2.1.280 atau lebih baru. Jalankan `claude update` untuk upgrade.68 Sonnet 5.5 memerlukan Claude Code v2.1.284 atau lebih baru, dan Opus 5.5 memerlukan v2.1.280 atau lebih baru. Jika permintaan untuk salah satunya dari versi yang lebih lama gagal, lihat [Claude Code tidak mendukung model ini](/docs/id/errors#claude-code-does-not-support-this-model). Jalankan `claude update` untuk upgrade.

69</Note>69</Note>

70 70 

71<h3 id="work-with-fable">71<h3 id="work-with-fable">


164 164 

165Ketika Claude Code tidak dapat mengetahui hook PreModelSwitch mana yang dikirimkan [plugin terkelola](/docs/id/settings-reference#enabledplugins) organisasi Anda, misalnya karena plugin terkelola gagal dimuat, itu menolak switch daripada menerapkannya tanpa diperiksa, dan itu memeriksa lagi pada setiap upaya baru. Lihat [Model switch diblokir oleh hook PreModelSwitch](/docs/id/errors#model-switch-was-blocked-by-a-premodelswitch-hook) untuk pesan dan pemulihan.165Ketika Claude Code tidak dapat mengetahui hook PreModelSwitch mana yang dikirimkan [plugin terkelola](/docs/id/settings-reference#enabledplugins) organisasi Anda, misalnya karena plugin terkelola gagal dimuat, itu menolak switch daripada menerapkannya tanpa diperiksa, dan itu memeriksa lagi pada setiap upaya baru. Lihat [Model switch diblokir oleh hook PreModelSwitch](/docs/id/errors#model-switch-was-blocked-by-a-premodelswitch-hook) untuk pesan dan pemulihan.

166 166 

167Ketika Anda beralih model melalui metode [`setModel()`](/docs/id/agent-sdk/overview) Agent SDK atau dari perangkat yang terhubung melalui [Remote Control](/docs/id/remote-control), atau aplikasi seperti [Desktop app](/docs/id/desktop) yang menjalankan Claude Code CLI beralih untuk Anda, Claude Code memeriksa bahwa string adalah yang dikenalinya sebelum menyimpannya. Pemeriksaan ini memerlukan Claude Code v2.1.200 atau lebih baru. Memeriksa pilihan Remote Control memerlukan Claude Code v2.1.260 atau lebih baru di mesin Anda. Di Anthropic API, Claude Code mengenali:167Ketika Anda beralih model melalui metode [`setModel()`](/docs/id/agent-sdk/overview) Agent SDK, melalui aplikasi seperti [Desktop app](/docs/id/desktop), atau dari perangkat yang terhubung melalui [Remote Control](/docs/id/remote-control), Claude Code memeriksa nilai pada switch:

168 168 

169* alias model169* **Agent SDK atau aplikasi**: dengan Claude Code v2.1.268 atau lebih baru, kecuali Claude Code menerima ID model secara lokal, seperti yang dilakukannya untuk [opsi model kustom](#add-a-custom-model-option) Anda, itu mengonfirmasi ID dengan penyedia Anda pertama kali sesi beralih ke sana. Konfirmasi berjalan di setiap penyedia, dan ID yang tidak ditawarkan penyedia Anda ditolak pada switch daripada gagal pada permintaan berikutnya Anda.

170* entri dari pemilih `/model`170* **Remote Control**: di Anthropic API, Claude Code memeriksa nilai secara lokal dan tidak mengirim permintaan.

171* nama apa pun yang dimulai dengan `claude-`

172* nilai yang Anda konfigurasi sendiri sebagai [opsi model kustom](#add-a-custom-model-option) atau dalam [`modelOverrides`](#override-model-ids-per-version)

173 171 

174Claude Code menolak string yang tidak dikenali dengan `Model "<name>" is not a recognized model id.` dan sesi menyimpan model saat ini, alih-alih menyimpan string dan gagal pada permintaan berikutnya. Lihat [referensi kesalahan](/docs/id/errors#model-is-not-a-recognized-model-id) untuk langkah pemulihan.172Lihat [Model bukan ID model yang dikenali](/docs/id/errors#model-is-not-a-recognized-model-id) dan [Model tidak ditemukan](/docs/id/errors#model-not-found) untuk pesan.

175 173 

176Pemeriksaan hanya berjalan di Anthropic API. Di Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, [Claude Platform on AWS](/docs/id/claude-platform-on-aws), dan di balik [gateway LLM](/docs/id/llm-gateway) atau `ANTHROPIC_BASE_URL` kustom, penyedia atau gateway Anda mendefinisikan nama model, jadi Claude Code melewatkan string apa pun tanpa memeriksanya. Pemeriksaan juga tidak mencakup flag `--model`, variabel lingkungan `ANTHROPIC_MODEL`, atau pengaturan `model`; nilai yang salah ketik di sana menghasilkan [Ada masalah dengan model yang dipilih](/docs/id/errors#theres-an-issue-with-the-selected-model) pada permintaan pertama. Claude Code masih dapat menulis [baris diagnostik model yang tidak dikenali](/docs/id/errors#unrecognized-model-id-on-a-request) pada waktu permintaan, di setiap penyedia.174Jika Anda menetapkan model dengan flag `--model`, variabel lingkungan `ANTHROPIC_MODEL`, atau pengaturan `model`, Claude Code tidak memeriksanya di muka, dan nilai yang salah ketik menghasilkan [Ada masalah dengan model yang dipilih](/docs/id/errors#theres-an-issue-with-the-selected-model) pada permintaan pertama.

177 175 

178Ketika model yang diminta memiliki tanggal pensiun terjadwal atau secara otomatis dipetakan ulang ke versi yang lebih baru, Claude Code menampilkan peringatan yang menyebutkan model yang diminta. Sesi interaktif menampilkannya sebagai pemberitahuan startup. Dari v2.1.182, peringatan yang sama ditulis ke stderr dalam [mode non-interaktif](/docs/id/headless) ketika menggunakan format output teks default. Pemeriksaan juga mencakup `model` yang ditetapkan dalam [frontmatter subagent](/docs/id/sub-agents). Peringatan stderr ditekan untuk `--output-format json` dan `stream-json`; baca model aktual dari bidang `modelUsage` dari [pesan hasil](/docs/id/headless#get-structured-output) sebagai gantinya.176Ketika model yang diminta memiliki tanggal pensiun terjadwal atau secara otomatis dipetakan ulang ke versi yang lebih baru, Claude Code menampilkan peringatan yang menyebutkan model yang diminta. Sesi interaktif menampilkannya sebagai pemberitahuan startup. Dari v2.1.182, peringatan yang sama ditulis ke stderr dalam [mode non-interaktif](/docs/id/headless) ketika menggunakan format output teks default. Pemeriksaan juga mencakup `model` yang ditetapkan dalam [frontmatter subagent](/docs/id/sub-agents). Peringatan stderr ditekan untuk `--output-format json` dan `stream-json`; baca model aktual dari bidang `modelUsage` dari [pesan hasil](/docs/id/headless#get-structured-output) sebagai gantinya.

179 177 


241 Batasi pemilihan model239 Batasi pemilihan model

242</h2>240</h2>

243 241 

244Administrator enterprise dapat menggunakan `availableModels` dalam [pengaturan terkelola atau kebijakan](/docs/id/managed-settings) untuk membatasi model mana yang dapat dipilih pengguna. Entri cocok dengan keluarga model seperti `sonnet`, awalan versi seperti `claude-sonnet-4-5`, atau ID model lengkap seperti `claude-sonnet-4-5-20250929`. Awalan versi juga cocok dengan ID model yang lebih baru yang memperpanjangnya dengan segmen lain, jadi `claude-fable-5` memungkinkan Fable 5 dan Fable 5.1, sementara `claude-fable-5-1` memungkinkan Fable 5.1 saja. Untuk memblokir model yang diizinkan daftar, atau untuk membuat setiap entri ID model hanya memungkinkan versi yang dinamainya, lihat [Blokir model atau versi spesifik](#block-specific-models-or-versions).242Administrator dapat menggunakan `availableModels` dalam [pengaturan terkelola atau kebijakan](/docs/id/managed-settings) untuk membatasi model mana yang dapat dipilih pengguna. Entri cocok dengan keluarga model seperti `sonnet`, awalan versi seperti `claude-sonnet-4-5`, atau ID model lengkap seperti `claude-sonnet-4-5-20250929`. Awalan versi juga cocok dengan ID model yang lebih baru yang memperpanjangnya dengan segmen lain, jadi `claude-fable-5` memungkinkan Fable 5 dan Fable 5.1, sementara `claude-fable-5-1` memungkinkan Fable 5.1 saja. Untuk memblokir model yang diizinkan daftar, atau untuk membuat setiap entri ID model hanya memungkinkan versi yang dinamainya, lihat [Blokir model atau versi spesifik](#block-specific-models-or-versions).

245 243 

246Pada platform yang menyematkan Claude Code dan menetapkan [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/id/env-vars), konfigurasi model host mengambil alih pengaturan model terkelola, sementara daftar izin `availableModels` terkelola tetap berlaku kecuali host menyediakan miliknya sendiri; [Pengecualian terhadap prioritas pengaturan terkelola](/docs/id/settings#exceptions-to-managed-settings-precedence) mengatakan kunci dan variabel mana yang ditimpa host.244Pada platform yang menyematkan Claude Code dan menetapkan [`CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`](/docs/id/env-vars), konfigurasi model host mengambil alih pengaturan model terkelola, sementara daftar izin `availableModels` terkelola tetap berlaku kecuali host menyediakan miliknya sendiri; [Pengecualian terhadap prioritas pengaturan terkelola](/docs/id/settings#exceptions-to-managed-settings-precedence) mengatakan kunci dan variabel mana yang ditimpa host.

247 245 


751| Atur default global | Jalankan `/config` dan alihkan Thinking Mode. Disimpan sebagai `alwaysThinkingEnabled` dalam `~/.claude/settings.json` |749| Atur default global | Jalankan `/config` dan alihkan Thinking Mode. Disimpan sebagai `alwaysThinkingEnabled` dalam `~/.claude/settings.json` |

752| Nonaktifkan melalui variabel lingkungan | Atur [`MAX_THINKING_TOKENS=0`](/docs/id/env-vars), yang menonaktifkan pemikiran pada Anthropic API kecuali pada Opus 5.5, Sonnet 5.5, dan model Fable. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations), Claude Code menghilangkan parameter `thinking` sebagai gantinya, dan model penalaran adaptif mungkin masih berpikir. Nilai lain hanya berlaku dengan [anggaran pemikiran tetap](#adaptive-reasoning-and-fixed-thinking-budgets) |750| Nonaktifkan melalui variabel lingkungan | Atur [`MAX_THINKING_TOKENS=0`](/docs/id/env-vars), yang menonaktifkan pemikiran pada Anthropic API kecuali pada Opus 5.5, Sonnet 5.5, dan model Fable. Pada [penyedia pihak ketiga](/docs/id/third-party-integrations), Claude Code menghilangkan parameter `thinking` sebagai gantinya, dan model penalaran adaptif mungkin masih berpikir. Nilai lain hanya berlaku dengan [anggaran pemikiran tetap](#adaptive-reasoning-and-fixed-thinking-budgets) |

753 751 

754Pemikiran tidak dapat dimatikan pada Opus 5.5, Sonnet 5.5, atau model Fable. Alihan sesi, `alwaysThinkingEnabled`, dan `MAX_THINKING_TOKENS=0` tidak berpengaruh di sana, dan model memutuskan per langkah berapa banyak untuk berpikir berdasarkan tingkat usaha.752Pemikiran tidak dapat dimatikan pada Opus 5.5, Sonnet 5.5, atau model Fable. Alihan sesi dan `/config` row menampilkan `Thinking can't be turned off` untuk model ini alih-alih menawarkan switch, dan `alwaysThinkingEnabled: false` atau `MAX_THINKING_TOKENS=0` yang disimpan tidak berpengaruh di sana. Pada model ini, model memutuskan per langkah berapa banyak untuk berpikir berdasarkan tingkat usaha. Pengaturan yang disimpan berlaku lagi ketika Anda beralih ke model yang menerimanya.

755 753 

756Claude Code meruntuhkan output pemikiran secara default. Tekan `Ctrl+O` untuk mengalihkan mode verbose dan lihat penalaran sebagai teks miring abu-abu. Sesi interaktif pada Anthropic API menerima blok pemikiran yang diredaksi secara default, jadi atur `showThinkingSummaries: true` dalam [pengaturan](/docs/id/settings) jika Anda menginginkan ringkasan lengkap yang tersedia saat Anda memperluas. Anda dikenakan biaya untuk semua token pemikiran yang dihasilkan, bahkan ketika diruntuhkan atau diredaksi.754Claude Code meruntuhkan output pemikiran secara default. Tekan `Ctrl+O` untuk mengalihkan mode verbose dan lihat penalaran sebagai teks miring abu-abu. Sesi interaktif pada Anthropic API menerima blok pemikiran yang diredaksi secara default, jadi atur `showThinkingSummaries: true` dalam [pengaturan](/docs/id/settings) jika Anda menginginkan ringkasan lengkap yang tersedia saat Anda memperluas. Anda dikenakan biaya untuk semua token pemikiran yang dihasilkan, bahkan ketika diruntuhkan atau diredaksi.

757 755 


784 782 

785Jendela konteks 1M menggunakan harga model standar tanpa premium untuk token di luar 200K. Untuk paket di mana konteks diperpanjang disertakan dengan langganan Anda, penggunaan tetap tercakup oleh langganan Anda. Untuk paket yang mengakses konteks diperpanjang melalui kredit penggunaan, token ditagih ke kredit penggunaan.783Jendela konteks 1M menggunakan harga model standar tanpa premium untuk token di luar 200K. Untuk paket di mana konteks diperpanjang disertakan dengan langganan Anda, penggunaan tetap tercakup oleh langganan Anda. Untuk paket yang mengakses konteks diperpanjang melalui kredit penggunaan, token ditagih ke kredit penggunaan.

786 784 

787Jika akun Anda mendukung konteks 1M, opsi muncul dalam pengambil `/model` dalam versi terbaru Claude Code. Jika Anda tidak melihatnya, coba mulai ulang sesi Anda.785Jika akun Anda mendukung konteks 1M, opsi muncul dalam pengambil `/model` dalam versi terbaru Claude Code. Jika Anda tidak melihatnya, coba mulai ulang sesi Anda, dan pada penyedia pihak ketiga periksa apakah penerapan Anda [menyematkan model](#pin-models-for-third-party-deployments) dengan variabel `ANTHROPIC_DEFAULT_*_MODEL`.

788 786 

789Anda juga dapat menggunakan sufiks `[1m]` dengan alias model atau nama model lengkap:787Anda juga dapat menggunakan sufiks `[1m]` dengan alias model atau nama model lengkap:

790 788 


956* Hanya tambahkan `[1m]` ketika model yang mendasar [mendukung konteks 1M](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model).954* Hanya tambahkan `[1m]` ketika model yang mendasar [mendukung konteks 1M](https://platform.claude.com/docs/en/build-with-claude/context-windows#context-window-sizes-by-model).

957* Akhiran dibaca per variabel, bukan per model. Di Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry, ID model tanpa `[1m]` dalam satu variabel menggunakan konteks 200K bahkan jika variabel lain menetapkan model yang sama dengan akhiran. Sonnet 5 selalu berjalan dengan jendela 1M pada penyedia ini dan tidak pernah memerlukan akhiran.955* Akhiran dibaca per variabel, bukan per model. Di Amazon Bedrock, Google Cloud's Agent Platform, dan Microsoft Foundry, ID model tanpa `[1m]` dalam satu variabel menggunakan konteks 200K bahkan jika variabel lain menetapkan model yang sama dengan akhiran. Sonnet 5 selalu berjalan dengan jendela 1M pada penyedia ini dan tidak pernah memerlukan akhiran.

958 956 

957Ketika Anda menetapkan variabel `ANTHROPIC_DEFAULT_*_MODEL`, pemilih `/model` menampilkan satu baris untuk model itu menggantikan baris bawaan keluarga, termasuk baris konteks 1M apa pun. Untuk mencapai jendela 1M tanpa menambahkan akhiran ke variabel itu, pengguna Anda menjalankan `/model opus[1m]`, dan Claude Code menerapkan akhiran ke model yang dinamai variabel. `/model sonnet[1m]` bekerja dengan cara yang sama.

958 

959<Note>959<Note>

960 Allowlist `availableModels` yang dikirimkan melalui [MDM atau file pengaturan terkelola](/docs/id/managed-settings#delivery-mechanisms) masih berlaku saat menggunakan penyedia pihak ketiga; [pengaturan yang dikelola server tidak dikirimkan di sana](/docs/id/server-managed-settings#platform-availability).960 Allowlist `availableModels` yang dikirimkan melalui [MDM atau file pengaturan terkelola](/docs/id/managed-settings#delivery-mechanisms) masih berlaku saat menggunakan penyedia pihak ketiga; [pengaturan yang dikelola server tidak dikirimkan di sana](/docs/id/server-managed-settings#platform-availability).

961 961 

Details

64}64}

65```65```

66 66 

67Dalam aplikasi Claude Desktop, sesi tab Code membaca pengaturan terkelola ini dari sumber yang [menjangkau setiap jenis sesi Desktop](/docs/id/desktop#managed-settings). Formulir OpenTelemetry untuk Cowork di bawah **Monitoring** dalam [pengaturan Data dan privasi](https://claude.ai/admin-settings/data-privacy-controls) konsol admin berlaku hanya untuk sesi Cowork, jadi baik CLI terminal maupun tab Code tidak mengekspor ke kolektor yang Anda tetapkan di sana.

68 

67Claude Code mengabaikan [variabel pengekspor OpenTelemetry](/docs/id/settings-reference#variables-claude-code-ignores-in-env) dalam `.claude/settings.json` dan `.claude/settings.local.json` repositori, jadi repositori tidak dapat menggunakannya untuk menghidupkan telemetri, memilih ke mana telemetri pergi, atau menangkap konten. Atur variabel tersebut dalam pengaturan terkelola, atau biarkan setiap pengembang mengaturnya dalam shell atau `~/.claude/settings.json` mereka. Repositori masih dapat mematikan sinyal dengan menetapkan pemilih pengekspor, seperti `OTEL_LOGS_EXPORTER`, ke `none`, kecuali pengaturan terkelola, file `--settings`, atau lingkungan tempat Anda memulai Claude Code menetapkan variabel tersebut.69Claude Code mengabaikan [variabel pengekspor OpenTelemetry](/docs/id/settings-reference#variables-claude-code-ignores-in-env) dalam `.claude/settings.json` dan `.claude/settings.local.json` repositori, jadi repositori tidak dapat menggunakannya untuk menghidupkan telemetri, memilih ke mana telemetri pergi, atau menangkap konten. Atur variabel tersebut dalam pengaturan terkelola, atau biarkan setiap pengembang mengaturnya dalam shell atau `~/.claude/settings.json` mereka. Repositori masih dapat mematikan sinyal dengan menetapkan pemilih pengekspor, seperti `OTEL_LOGS_EXPORTER`, ke `none`, kecuali pengaturan terkelola, file `--settings`, atau lingkungan tempat Anda memulai Claude Code menetapkan variabel tersebut.

68 70 

69Claude Code tidak meneruskan variabel lingkungan `OTEL_*` ke subproses yang dihasilkannya, termasuk alat Bash, hooks, server MCP, dan language servers. Aplikasi yang diinstrumentasi OpenTelemetry yang Anda jalankan melalui alat Bash tidak mewarisi titik akhir pengekspor atau header Claude Code, jadi atur variabel tersebut langsung dalam perintah jika aplikasi itu perlu mengekspor telemetrinya sendiri.71Claude Code tidak meneruskan variabel lingkungan `OTEL_*` ke subproses yang dihasilkannya, termasuk alat Bash, hooks, server MCP, dan language servers. Aplikasi yang diinstrumentasi OpenTelemetry yang Anda jalankan melalui alat Bash tidak mewarisi titik akhir pengekspor atau header Claude Code, jadi atur variabel tersebut langsung dalam perintah jika aplikasi itu perlu mengekspor telemetrinya sendiri.


582| Kunci dari `OTEL_RESOURCE_ATTRIBUTES` | Atribut kustom yang Anda tetapkan, seperti `department` atau `team.id`. Lihat [Dukungan organisasi multi-tim](#multi-team-organization-support) | `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` (default: true) |584| Kunci dari `OTEL_RESOURCE_ATTRIBUTES` | Atribut kustom yang Anda tetapkan, seperti `department` atau `team.id`. Lihat [Dukungan organisasi multi-tim](#multi-team-organization-support) | `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` (default: true) |

583| `vcs.repository.url.full`, `vcs.owner.name`, `vcs.repository.name`, `vcs.provider.name` | Identitas repositori sesi, berasal dari remote `origin`-nya. Lihat [Atribut repositori](#repository-attributes) | `OTEL_METRICS_INCLUDE_REPOSITORY` (default: false). Memerlukan Claude Code v2.1.269 atau lebih baru |585| `vcs.repository.url.full`, `vcs.owner.name`, `vcs.repository.name`, `vcs.provider.name` | Identitas repositori sesi, berasal dari remote `origin`-nya. Lihat [Atribut repositori](#repository-attributes) | `OTEL_METRICS_INCLUDE_REPOSITORY` (default: false). Memerlukan Claude Code v2.1.269 atau lebih baru |

584 586 

585Ketika Claude Code masuk ke [gateway aplikasi Claude](/docs/id/claude-apps-gateway), CLI memberi stempel ekspor dengan identitas terautentikasi dari sesi gateway: `user.id` adalah subjek IdP daripada pengenal instalasi anonim, `user.email` adalah email yang masuk, dan `user.groups` membawa keanggotaan grup IdP sebagai string yang dipisahkan koma. Setiap ekspor juga membawa `identity.source: gateway-oidc`. Identitas gateway diterapkan terakhir, jadi kunci `user.*` dan `identity.*` yang ditetapkan melalui `OTEL_RESOURCE_ATTRIBUTES` diabaikan pada sesi gateway.587Dalam sesi yang masuk ke [gateway aplikasi Claude](/docs/id/claude-apps-gateway) melalui `/login`, CLI memberi stempel ekspor dengan identitas terautentikasi: `user.id` adalah subjek IdP, `user.email` adalah email yang masuk, dan `user.groups` membawa keanggotaan grup IdP sebagai string yang dipisahkan koma. Setiap ekspor juga membawa `identity.source: gateway-oidc`. Identitas gateway diterapkan terakhir, jadi kunci `user.*` dan `identity.*` yang ditetapkan melalui `OTEL_RESOURCE_ATTRIBUTES` diabaikan pada sesi gateway.

588 

589Untuk atribut identitas pada sesi Claude Desktop dan Cowork yang terhubung melalui gateway, lihat [referensi `telemetry` gateway](/docs/id/claude-apps-gateway-config#telemetry).

586 590 

587Peristiwa juga menyertakan atribut berikut. Ini tidak pernah dilampirkan ke metrik karena akan menyebabkan kardinalitas tak terbatas:591Peristiwa juga menyertakan atribut berikut. Ini tidak pernah dilampirkan ke metrik karena akan menyebabkan kardinalitas tak terbatas:

588 592 


1540 Atribut tindakan untuk pengguna1544 Atribut tindakan untuk pengguna

1541</h3>1545</h3>

1542 1546 

1543[Atribut standar](#standard-attributes) pada setiap acara mencakup identitas pengguna yang diautentikasi: `user.email`, `user.account_uuid`, `user.account_id`, dan `organization.id` saat masuk dengan akun Claude atau, dalam [sesi cloud](/docs/id/claude-code-on-the-web), ketika kredensial sesi itu sendiri membawanya, ditambah `user.id` dan `session.id` per-sesi. `user.id` adalah pengidentifikasi berskop instalasi, kecuali pada sesi [Claude apps gateway](/docs/id/claude-apps-gateway), di mana ini adalah subjek IdP dari token yang dikeluarkan gateway.1547[Atribut standar](#standard-attributes) pada setiap acara mencakup identitas pengguna yang diautentikasi: `user.email`, `user.account_uuid`, `user.account_id`, dan `organization.id` saat masuk dengan akun Claude atau, dalam [sesi cloud](/docs/id/claude-code-on-the-web), ketika kredensial sesi itu sendiri membawanya, ditambah `user.id` dan `session.id` per-sesi. `user.id` adalah pengidentifikasi berskop instalasi, kecuali pada sesi yang masuk ke [Claude apps gateway](/docs/id/claude-apps-gateway) melalui `/login`, di mana ini adalah subjek IdP dari token yang dikeluarkan gateway.

1544 1548 

1545Dalam sesi yang dimulai pengembang, panggilan alat MCP, perintah Bash, dan pengeditan file oleh karena itu dikaitkan dengan pengembang tersebut. Claude Code tidak bertindak di bawah akun layanan terpisah di sana; identitas yang dicatat pada setiap acara adalah akun Claude pengembang itu sendiri, atau identitas IdP pengembang pada sesi [Claude apps gateway](/docs/id/claude-apps-gateway). Dalam sesi saluran Claude Tag, Claude bekerja sebagai [identitas bersama](/docs/id/cloud-environments#set-the-environment-a-claude-tag-channel-uses) organisasi Anda.1549Dalam sesi yang dimulai pengembang, panggilan alat MCP, perintah Bash, dan pengeditan file oleh karena itu dikaitkan dengan pengembang tersebut. Claude Code tidak bertindak di bawah akun layanan terpisah di sana; identitas yang dicatat pada setiap acara adalah akun Claude pengembang itu sendiri, atau identitas IdP pengembang pada sesi [Claude apps gateway](/docs/id/claude-apps-gateway). Dalam sesi saluran Claude Tag, Claude bekerja sebagai [identitas bersama](/docs/id/cloud-environments#set-the-environment-a-claude-tag-channel-uses) organisasi Anda.

1546 1550 

1547Saat Claude Code diautentikasi dengan kunci API langsung, atau terhadap Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry, tidak ada akun Claude dalam sesi dan hanya `user.id` dan `session.id` yang diisi. Dalam penerapan ini, lampirkan identitas pengguna sendiri dengan `OTEL_RESOURCE_ATTRIBUTES`, atur per pengguna melalui file [pengaturan terkelola](#administrator-configuration) atau pembungkus peluncuran. Sesi Claude apps gateway tidak memerlukan apa pun dari ini: CLI mencap identitas IdP secara otomatis, seperti yang dijelaskan dalam [Atribut standar](#standard-attributes).1551Saat Claude Code diautentikasi dengan kunci API langsung, atau terhadap Amazon Bedrock, Google Cloud's Agent Platform, atau Microsoft Foundry, tidak ada akun Claude dalam sesi dan hanya `user.id` dan `session.id` yang diisi. Dalam penerapan ini, lampirkan identitas pengguna sendiri dengan `OTEL_RESOURCE_ATTRIBUTES`, atur per pengguna melalui file [pengaturan terkelola](#administrator-configuration) atau pembungkus peluncuran. Sesi Claude apps gateway tidak memerlukan apa pun dari ini: lihat [Atribut standar](#standard-attributes) untuk identitas yang diekspor mereka.

1548 1552 

1549```bash theme={null}1553```bash theme={null}

1550export OTEL_RESOURCE_ATTRIBUTES="enduser.id=jdoe@example.com,enduser.directory_id=S-1-5-21-..."1554export OTEL_RESOURCE_ATTRIBUTES="enduser.id=jdoe@example.com,enduser.directory_id=S-1-5-21-..."

Details

200</Note>200</Note>

201 201 

202<h2 id="streaming-idle-watchdogs">202<h2 id="streaming-idle-watchdogs">

203 Watchdog idle streaming203 Streaming idle watchdogs

204</h2>204</h2>

205 205 

206Claude Code menjalankan empat timer independen yang menghentikan respons model streaming ketika diam, sehingga koneksi yang mati gagal dan mencoba ulang alih-alih menggantung. Tenggat waktu byte pertama mencakup penantian header respons, sebelum ada respons yang tiba. Masing-masing dari tiga lainnya memantau respons langsung untuk sinyal yang berbeda.206Claude Code menjalankan empat timer independen yang menghentikan respons model streaming ketika diam, sehingga koneksi yang mati gagal dan mencoba ulang alih-alih menggantung. Tenggat waktu byte pertama mencakup penantian header respons, sebelum ada respons yang tiba. Masing-masing dari tiga lainnya memantau respons langsung untuk sinyal yang berbeda.


208| Timer | Menghentikan ketika | Berjalan pada | Tenggat waktu default |208| Timer | Menghentikan ketika | Berjalan pada | Tenggat waktu default |

209| :- | :- | :- | :- |209| :- | :- | :- | :- |

210| First-byte deadline | Tidak ada header respons yang tiba setelah Claude Code mengirim permintaan | Direct Anthropic API dan [Claude Platform on AWS](/docs/id/claude-platform-on-aws), termasuk melalui proxy HTTPS, tetapi tidak ketika `ANTHROPIC_BASE_URL` atau `ANTHROPIC_AWS_BASE_URL` merutekannya melalui [gateway](/docs/id/gateways). Opt-in pada Amazon Bedrock dengan `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`; tidak berjalan pada Google Cloud's Agent Platform atau Microsoft Foundry | 180 detik pada direct Anthropic API, 300 detik di tempat lain, ditambah satu detik per 32KB badan permintaan |210| First-byte deadline | Tidak ada header respons yang tiba setelah Claude Code mengirim permintaan | Direct Anthropic API dan [Claude Platform on AWS](/docs/id/claude-platform-on-aws), termasuk melalui proxy HTTPS, tetapi tidak ketika `ANTHROPIC_BASE_URL` atau `ANTHROPIC_AWS_BASE_URL` merutekannya melalui [gateway](/docs/id/gateways). Opt-in pada Amazon Bedrock dengan `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`; tidak berjalan pada Google Cloud's Agent Platform atau Microsoft Foundry | 180 detik pada direct Anthropic API, 300 detik di tempat lain, ditambah satu detik per 32KB badan permintaan |

211| Event-level watchdog | Tidak ada event respons yang diurai. Pada koneksi di mana byte-level watchdog berjalan, byte yang tiba, termasuk keep-alive pings, juga mengatur ulang watchdog ini, selama sekitar lima menit tanpa event yang diurai | Setiap penyedia | 300 detik |211| Event-level watchdog | Tidak ada event respons yang diurai. Pada koneksi di mana byte-level watchdog berjalan selain Amazon Bedrock, byte yang tiba, termasuk keep-alive pings, juga mengatur ulang watchdog ini, selama sekitar lima menit tanpa event yang diurai | Setiap penyedia | 300 detik |

212| Byte-level watchdog | Tidak ada byte yang tiba di wire, termasuk SSE keep-alive pings | Direct Anthropic API, [Claude Platform on AWS](/docs/id/claude-platform-on-aws), dan [gateway](/docs/id/gateways) koneksi, termasuk `ANTHROPIC_BASE_URL` kustom. Opt-in pada Amazon Bedrock `vnd.amazon.eventstream` respons dengan `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`; tidak berjalan pada Google Cloud's Agent Platform atau Microsoft Foundry | 180 detik pada direct Anthropic API, 300 detik di tempat lain |212| Byte-level watchdog | Tidak ada byte yang tiba di wire, termasuk SSE keep-alive pings | Direct Anthropic API, [Claude Platform on AWS](/docs/id/claude-platform-on-aws), dan [gateway](/docs/id/gateways) koneksi, termasuk `ANTHROPIC_BASE_URL` kustom. Opt-in pada respons Amazon Bedrock `vnd.amazon.eventstream` dengan `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`; tidak berjalan pada Google Cloud's Agent Platform atau Microsoft Foundry | 180 detik pada direct Anthropic API, 300 detik di tempat lain |

213| Body idle timeout | Tidak ada byte yang tiba selama 5 menit | Penyedia selain direct Anthropic API dan Claude Platform on AWS, kecuali [`API_FORCE_IDLE_TIMEOUT`](/docs/id/env-vars) mengubahnya | 5 menit |213| Body idle timeout | Tidak ada byte yang tiba selama 5 menit | Penyedia selain direct Anthropic API, Claude Platform on AWS, dan Amazon Bedrock dengan `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1` diatur, kecuali [`API_FORCE_IDLE_TIMEOUT`](/docs/id/env-vars) mengubahnya | 5 menit |

214 

215Jika Anda menetapkan `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1`, byte-level watchdog menggantikan body idle timeout pada Bedrock daripada berjalan bersama dengannya. `CLAUDE_STREAM_IDLE_TIMEOUT_MS` kemudian juga mengatur berapa lama aliran Bedrock dapat tetap diam sebelum Claude Code memperlakukan koneksi sebagai mati, dalam batas yang tercantum di bawah. Byte yang tiba masih tidak mengatur ulang event-level watchdog pada Bedrock. Dengan debug logging aktif, setiap aliran Bedrock kemudian mencatat pesan debug yang dimulai dengan `wire-heartbeat: _chunkTimes absent`.

214 216 

215Konfigurasikan timer dengan variabel-variabel ini, masing-masing dirinci dalam [referensi variabel lingkungan](/docs/id/env-vars):217Konfigurasikan timer dengan variabel-variabel ini, masing-masing dirinci dalam [referensi variabel lingkungan](/docs/id/env-vars):

216 218 


218* `CLAUDE_STREAM_IDLE_TIMEOUT_MS` menetapkan tenggat waktu kedua watchdog. Claude Code menaikkan nilai di bawah 5 menit menjadi 5 menit, dan membatasi nilai pada 30 menit untuk byte-level watchdog.220* `CLAUDE_STREAM_IDLE_TIMEOUT_MS` menetapkan tenggat waktu kedua watchdog. Claude Code menaikkan nilai di bawah 5 menit menjadi 5 menit, dan membatasi nilai pada 30 menit untuk byte-level watchdog.

219* `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` menetapkan tenggat waktu byte-level watchdog tanpa mengubah event-level watchdog, diklem antara 10 detik dan 30 menit, dan mengambil prioritas atas `CLAUDE_STREAM_IDLE_TIMEOUT_MS` untuk watchdog itu.221* `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` menetapkan tenggat waktu byte-level watchdog tanpa mengubah event-level watchdog, diklem antara 10 detik dan 30 menit, dan mengambil prioritas atas `CLAUDE_STREAM_IDLE_TIMEOUT_MS` untuk watchdog itu.

220* `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` menetapkan first-byte deadline secara langsung. Biarkan tidak diatur dan Claude Code menggunakan tenggat waktu byte-level watchdog, sehingga `CLAUDE_STREAM_IDLE_TIMEOUT_MS` dan `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` juga mengubah deadline. Untuk klem, tunjangan unggah, batas `API_TIMEOUT_MS`, dan berapa lama percobaan ulang menunggu setelah penghentian tanpa respons, lihat [No response from API](/docs/id/errors#no-response-from-api).222* `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` menetapkan first-byte deadline secara langsung. Biarkan tidak diatur dan Claude Code menggunakan tenggat waktu byte-level watchdog, sehingga `CLAUDE_STREAM_IDLE_TIMEOUT_MS` dan `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` juga mengubah deadline. Untuk klem, tunjangan unggah, batas `API_TIMEOUT_MS`, dan berapa lama percobaan ulang menunggu setelah penghentian tanpa respons, lihat [No response from API](/docs/id/errors#no-response-from-api).

221* `API_FORCE_IDLE_TIMEOUT` diatur ke `0` mematikan body idle timeout, dan diatur ke `1` menghidupkannya untuk setiap penyedia. Watchdog berjalan independen darinya, jadi untuk membiarkan stream berhenti lebih lama dari ambang batas mereka, juga naikkan atau nonaktifkan mereka.223* `API_FORCE_IDLE_TIMEOUT` diatur ke `0` mematikan body idle timeout, dan diatur ke `1` menghidupkannya untuk setiap penyedia. Watchdog berjalan independen darinya, jadi untuk membiarkan aliran berhenti lebih lama dari ambang batas mereka, juga naikkan atau nonaktifkan mereka.

222 224 

223Ketika watchdog menghentikan stream yang macet, Claude Code memperlakukan penghentian sebagai kegagalan mid-stream, dan apa yang Anda lihat tergantung pada seberapa jauh respons telah sampai. Claude Code mencoba ulang permintaan atau mengakhiri giliran dengan kesalahan, menyimpan output yang selesai dan menampilkan [pemberitahuan respons tidak lengkap](/docs/id/errors#the-response-above-may-be-incomplete), atau mengakhiri giliran secara normal. [Percobaan ulang otomatis](/docs/id/errors#automatic-retries) mengatakan di mana setiap hasil berlaku.225Ketika watchdog menghentikan aliran yang macet, Claude Code memperlakukan penghentian sebagai kegagalan mid-stream, dan apa yang Anda lihat tergantung pada seberapa jauh respons telah sampai. Claude Code mencoba ulang permintaan atau mengakhiri giliran dengan kesalahan, menyimpan output yang selesai dan menampilkan [pemberitahuan respons tidak lengkap](/docs/id/errors#the-response-above-may-be-incomplete), atau mengakhiri giliran secara normal. [Percobaan ulang otomatis](/docs/id/errors#automatic-retries) mengatakan di mana setiap hasil berlaku.

224 226 

225Dalam [sesi non-interaktif](/docs/id/headless), dan untuk respons subagent dalam sesi apa pun, Claude Code mungkin terlebih dahulu meminta Claude untuk melanjutkan respons yang dipotong; [entri pemberitahuan itu](/docs/id/errors#the-response-above-may-be-incomplete) mengatakan kapan itu terjadi dan kapan Anda masih melihat pemberitahuan.227Dalam [sesi non-interaktif](/docs/id/headless), dan untuk respons subagent dalam sesi apa pun, Claude Code mungkin terlebih dahulu meminta Claude untuk melanjutkan respons yang dipotong; [entri pemberitahuan itu](/docs/id/errors#the-response-above-may-be-incomplete) mengatakan kapan itu terjadi dan kapan Anda masih melihat pemberitahuan.

226 228 


277 279 

278Jika organisasi GitHub Enterprise Cloud Anda membatasi akses berdasarkan alamat IP, aktifkan [IP allow list inheritance untuk GitHub Apps yang diinstal](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#allowing-access-by-github-apps) dan juga [tambahkan entri daftar putih](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#adding-an-allowed-ip-address) untuk [alamat IP keluar](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) Anthropic. Warisan mencakup hanya permintaan yang dibuat Claude GitHub App sebagai instalasi, bukan permintaan yang dibuat atas nama pengguna Anda. Untuk firewall lain, lihat [Anthropic API IP addresses](https://platform.claude.com/docs/en/api/ip-addresses).280Jika organisasi GitHub Enterprise Cloud Anda membatasi akses berdasarkan alamat IP, aktifkan [IP allow list inheritance untuk GitHub Apps yang diinstal](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#allowing-access-by-github-apps) dan juga [tambahkan entri daftar putih](https://docs.github.com/en/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization#adding-an-allowed-ip-address) untuk [alamat IP keluar](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) Anthropic. Warisan mencakup hanya permintaan yang dibuat Claude GitHub App sebagai instalasi, bukan permintaan yang dibuat atas nama pengguna Anda. Untuk firewall lain, lihat [Anthropic API IP addresses](https://platform.claude.com/docs/en/api/ip-addresses).

279 281 

280Untuk instans [GitHub Enterprise Server](/docs/id/github-enterprise-server) yang dihosting sendiri di belakang firewall, daftarkan putih [alamat IP keluar](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) Anthropic sehingga infrastruktur Anthropic dapat menjangkau host GHES Anda untuk mengkloning repositori dan memposting komentar ulasan. Sesi di [lingkungan yang dihosting sendiri](/docs/id/self-hosted-environments-deploy#configure-git) menjangkau host GHES Anda dari dalam jaringan Anda sebagai gantinya, jadi paparan itu hanya berlaku untuk sesi yang dihosting Anthropic, untuk alur pra-sesi yang dihosting seperti pemilih repositori, dan untuk runner yang dihosting sendiri yang memilih [Anthropic git proxy](/docs/id/self-hosted-environments-deploy#use-the-anthropic-git-proxy), yang mengambil dari sisi Anthropic. Untuk host GHES yang hanya dapat dirutekan di dalam jaringan Anda, [SCM connector](/docs/id/self-hosted-environments-reference#scm-connector-flags) membawa alur pra-sesi yang dihosting melalui koneksi keluar sebagai gantinya, jadi daftar putih tidak diperlukan untuk mereka.282Untuk instans [GitHub Enterprise Server](/docs/id/github-enterprise-server) yang dihosting sendiri di belakang firewall, daftarkan putih [alamat IP keluar](https://platform.claude.com/docs/en/api/ip-addresses#outbound-ip-addresses) Anthropic sehingga infrastruktur Anthropic dapat menjangkau host GHES Anda untuk mengkloning repositori dan memposting komentar ulasan. Sesi di [lingkungan yang dihosting sendiri](/docs/id/self-hosted-environments) menjangkau host GHES Anda dari dalam jaringan Anda sebagai gantinya, jadi paparan itu hanya berlaku untuk sesi yang dihosting Anthropic, untuk alur pra-sesi yang dihosting seperti pemilih repositori, dan untuk runner yang dihosting sendiri yang memilih [Anthropic git proxy](/docs/id/self-hosted-environments-deploy#use-the-anthropic-git-proxy), yang mengambil dari sisi Anthropic. [SCM connector](/docs/id/self-hosted-environments-reference#scm-connector-flags) tidak tersedia, jadi alur pra-sesi yang dihosting tidak dapat menjangkau host GHES yang hanya dapat dirutekan di dalam jaringan Anda.

281 283 

282<h3 id="desktop-and-claude-ai">284<h3 id="desktop-and-claude-ai">

283 Desktop dan claude.ai285 Desktop dan claude.ai

Details

291 Hilangkan permintaan izin dengan mode otomatis291 Hilangkan permintaan izin dengan mode otomatis

292</h2>292</h2>

293 293 

294Mode otomatis memungkinkan Claude untuk dieksekusi tanpa permintaan izin rutin. Model pengklasifikasi terpisah meninjau tindakan sebelum dijalankan, memblokir apa pun yang melampaui permintaan Anda, menargetkan infrastruktur yang tidak dikenali, atau tampak didorong oleh konten bermusuhan yang dibaca Claude. [Aturan ask](/docs/id/permissions#manage-permissions) eksplisit masih memaksa permintaan.294Mode otomatis memungkinkan Claude untuk mengeksekusi tanpa permintaan izin rutin. Model pengklasifikasi terpisah meninjau tindakan sebelum dijalankan, memblokir apa pun yang melampaui permintaan Anda, menargetkan infrastruktur yang tidak dikenali, atau tampak didorong oleh konten bermusuhan yang dibaca Claude. [Aturan ask](/docs/id/permissions#manage-permissions) eksplisit masih memaksa permintaan.

295 295 

296Dengan Claude Code v2.1.283 atau lebih baru, mode otomatis adalah [mode izin awal bawaan](#which-mode-a-session-starts-in) untuk sesi terminal interaktif dan VS Code di setiap paket dan penyedia. Pada versi sebelumnya, ini adalah mode izin awal bawaan hanya pada paket Pro, Max, dan Team.296Dengan Claude Code v2.1.283 atau lebih baru, mode otomatis adalah [mode izin awal bawaan](#which-mode-a-session-starts-in) untuk sesi terminal interaktif dan VS Code di setiap paket dan penyedia. Pada versi sebelumnya, ini adalah mode izin awal bawaan hanya pada paket Pro, Max, dan Team.

297 297 

298Pengklasifikasi juga meninjau setiap pesan yang dikirim Claude ke agen lain dengan [`SendMessage`](/docs/id/tools-reference), baik teks biasa atau pesan [tim agen](/docs/id/agent-teams) terstruktur, sebelum Claude Code mengirimkannya, baik dalam mode otomatis maupun dalam [mode rencana saat pengklasifikasi meninjau perintah](#analyze-before-you-edit-with-plan-mode); tinjauan pengiriman memerlukan Claude Code v2.1.222 atau lebih baru.298Pengklasifikasi juga meninjau setiap pesan yang Claude kirim ke agen lain dengan [`SendMessage`](/docs/id/tools-reference), baik teks biasa atau pesan [tim agen](/docs/id/agent-teams) terstruktur, sebelum Claude Code mengirimkannya, baik dalam mode otomatis maupun dalam [mode rencana saat pengklasifikasi meninjau perintah](#analyze-before-you-edit-with-plan-mode); tinjauan pengiriman memerlukan Claude Code v2.1.222 atau lebih baru.

299 299 

300Secara default, pengklasifikasi tidak meninjau penghapusan `rm` dan `rmdir` yang menargetkan jalur kritis, seperti `rm -rf /` atau `rm -rf ~`. [Jalur kritis](#critical-paths) mencakup apa yang terjadi pada mereka dalam setiap mode izin.300Secara default, pengklasifikasi tidak meninjau penghapusan `rm` dan `rmdir` yang menargetkan jalur kritis, seperti `rm -rf /` atau `rm -rf ~`. [Jalur kritis](#critical-paths) mencakup apa yang terjadi pada mereka di setiap mode izin.

301 301 

302Mode otomatis juga mendorong Claude untuk terus bekerja tanpa berhenti untuk pertanyaan klarifikasi, meskipun Claude masih bertanya ketika permintaan Anda atau keterampilan secara eksplisit bergantung padanya. Untuk perilaku otonom yang lebih kuat dalam mode yang masih meminta Anda, atur [gaya output Proaktif](/docs/id/output-styles) sebagai gantinya.302Mode otomatis juga mendorong Claude untuk terus bekerja tanpa berhenti untuk pertanyaan klarifikasi, meskipun Claude masih bertanya ketika permintaan Anda atau keterampilan secara eksplisit bergantung padanya. Untuk perilaku otonom yang lebih kuat dalam mode yang masih meminta Anda, atur [gaya output Proaktif](/docs/id/output-styles) sebagai gantinya.

303 303 


312* **Model**: pada Anthropic API dan [Claude Platform di AWS](/docs/id/claude-platform-on-aws), Claude Opus 4.6 atau lebih baru, Sonnet 4.6 atau lebih baru, atau [model Fable](/docs/id/model-config#work-with-fable). Di Amazon Bedrock, Agent Platform Google Cloud, Microsoft Foundry, dan sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk, hanya Claude Sonnet 5 atau lebih baru, Opus 4.7 atau lebih baru, dan model Fable. Model yang lebih lama, termasuk Sonnet 4.5, Opus 4.5, Haiku, dan model claude-3, tidak didukung di penyedia mana pun.312* **Model**: pada Anthropic API dan [Claude Platform di AWS](/docs/id/claude-platform-on-aws), Claude Opus 4.6 atau lebih baru, Sonnet 4.6 atau lebih baru, atau [model Fable](/docs/id/model-config#work-with-fable). Di Amazon Bedrock, Agent Platform Google Cloud, Microsoft Foundry, dan sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk, hanya Claude Sonnet 5 atau lebih baru, Opus 4.7 atau lebih baru, dan model Fable. Model yang lebih lama, termasuk Sonnet 4.5, Opus 4.5, Haiku, dan model claude-3, tidak didukung di penyedia mana pun.

313* **Penyedia**: tersedia secara default pada Anthropic API, Claude Platform di AWS, Amazon Bedrock, Agent Platform Google Cloud, Microsoft Foundry, dan sesi gateway aplikasi Claude yang masuk.313* **Penyedia**: tersedia secara default pada Anthropic API, Claude Platform di AWS, Amazon Bedrock, Agent Platform Google Cloud, Microsoft Foundry, dan sesi gateway aplikasi Claude yang masuk.

314 314 

315Jika Claude Code melaporkan mode otomatis tidak tersedia, pertama periksa persyaratan ini dan apakah file pengaturan apa pun menetapkan [`disableAutoMode`](/docs/id/settings-reference#disableautomode). Anthropic juga dapat mematikan mode otomatis di sisi server, atau server dapat menolak mode otomatis untuk akun Anda. Sesi yang menerima salah satu jawaban menjaga mode otomatis tetap mati sampai sesi berakhir, jadi mulai sesi baru nanti.315Jika Claude Code melaporkan mode otomatis sebagai tidak tersedia, pertama periksa persyaratan ini dan apakah file pengaturan apa pun menetapkan [`disableAutoMode`](/docs/id/settings-reference#disableautomode). Anthropic juga dapat mematikan mode otomatis di sisi server, atau server dapat menolak mode otomatis untuk akun Anda. Sesi yang menerima salah satu jawaban ini membuat mode otomatis tetap mati sampai sesi berakhir, jadi mulai sesi baru nanti.

316 316 

317Pesan terpisah yang menyebutkan model dan mengatakan mode otomatis "tidak dapat menentukan keamanan" tindakan berarti permintaan pengklasifikasi gagal. Kegagalan itu biasanya bersifat sementara, tetapi di Amazon Bedrock dapat berulang sampai akun Anda dapat memanggil model yang disebutkan. Lihat [referensi kesalahan](/docs/id/errors#auto-mode-cannot-determine-the-safety-of-an-action) untuk penyebab dan apa yang harus dilakukan.317Pesan terpisah yang menyebutkan model dan mengatakan mode otomatis "tidak dapat menentukan keamanan" tindakan berarti permintaan pengklasifikasi gagal. Kegagalan itu biasanya bersifat sementara, tetapi di Amazon Bedrock dapat berulang sampai akun Anda dapat memanggil model yang disebutkan. Lihat [referensi kesalahan](/docs/id/errors#auto-mode-cannot-determine-the-safety-of-an-action) untuk penyebab dan apa yang harus dilakukan.

318 318 

319Jika Anda menetapkan `defaultMode: "auto"` dalam [pengaturan](/docs/id/settings-reference#all-settings) dan sesi terminal dimulai dalam mode Manual tanpa kesalahan, pengaturan kemungkinan berada di `.claude/settings.json` atau `.claude/settings.local.json`. `auto` tidak berlaku dari file tersebut. Pindahkan ke `~/.claude/settings.json`. Untuk percakapan yang dimulai ekstensi VS Code, periksa daftar ekstensi sendiri dalam [Beralih mode izin](#switch-permission-modes) sebagai gantinya.319Jika Anda menetapkan `defaultMode: "auto"` dalam [pengaturan](/docs/id/settings-reference#all-settings) dan sesi terminal dimulai dalam mode Manual tanpa kesalahan, pengaturan kemungkinan ada di `.claude/settings.json` atau `.claude/settings.local.json`. `auto` tidak berlaku dari file-file tersebut. Pindahkan ke `~/.claude/settings.json`. Untuk percakapan yang dimulai ekstensi VS Code, periksa daftar ekstensi sendiri dalam [Beralih mode izin](#switch-permission-modes) sebagai gantinya.

320 320 

321<h3 id="enable-auto-mode-on-bedrock-agent-platform-or-foundry">321<h3 id="enable-auto-mode-on-bedrock-agent-platform-or-foundry">

322 Mode otomatis di Bedrock, Agent Platform, atau Foundry322 Mode otomatis di Bedrock, Agent Platform, atau Foundry

323</h3>323</h3>

324 324 

325Di [Amazon Bedrock](/docs/id/amazon-bedrock), [Agent Platform Google Cloud](/docs/id/google-vertex-ai), [Microsoft Foundry](/docs/id/microsoft-foundry), dan sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk, mode otomatis tersedia secara default. Dengan Claude Code v2.1.283 atau lebih baru, ini juga merupakan [mode izin awal bawaan](#which-mode-a-session-starts-in) untuk sesi terminal interaktif dan [VS Code](/docs/id/vs-code). Untuk memilih mode izin awal sendiri, atur `permissions.defaultMode` seperti [Mulai dalam mode izin yang berbeda](#start-in-a-different-mode) menjelaskan, atau pilih mode izin dari indikator mode ekstensi VS Code.325Di [Amazon Bedrock](/docs/id/amazon-bedrock), [Agent Platform Google Cloud](/docs/id/google-vertex-ai), [Microsoft Foundry](/docs/id/microsoft-foundry), dan sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk, mode otomatis tersedia secara default. Dengan Claude Code v2.1.283 atau lebih baru, ini juga merupakan [mode izin awal bawaan](#which-mode-a-session-starts-in) untuk sesi terminal interaktif dan [VS Code](/docs/id/vs-code). Untuk memilih mode izin awal sendiri, atur `permissions.defaultMode` seperti yang dijelaskan [Mulai dalam mode izin berbeda](#start-in-a-different-mode), atau pilih mode izin dari indikator mode ekstensi VS Code.

326 326 

327Hanya Claude Sonnet 5 atau lebih baru, Opus 4.7 atau lebih baru, dan model Fable yang didukung di penyedia ini. Pada model lain apa pun, sesi dimulai dalam Manual sebagai gantinya.327Hanya Claude Sonnet 5 atau lebih baru, Opus 4.7 atau lebih baru, dan model Fable yang didukung di penyedia ini. Pada model lain apa pun, sesi dimulai dalam Manual sebagai gantinya.

328 328 

329Untuk mencegah pengembang menggunakan mode otomatis, atur `disableAutoMode` ke `"disable"` dalam [pengaturan terkelola](/docs/id/managed-settings). Ini menghapus `auto` dari siklus `Shift+Tab`, dan sesi yang dimulai dengan `--permission-mode auto` dimulai dalam Manual sebagai gantinya. Sesi yang sudah berjalan dalam mode otomatis meninggalkannya ketika pengaturan mencapai sesi itu dari [sumber yang diterapkan admin](/docs/id/managed-settings#which-managed-source-claude-code-uses), dan menampilkan `auto mode disabled by settings`. Sebelum v2.1.251, sesi yang berjalan menjaga mode otomatis sampai berakhir.329Untuk mencegah pengembang menggunakan mode otomatis, atur `disableAutoMode` ke `"disable"` dalam [pengaturan terkelola](/docs/id/managed-settings). Ini menghapus `auto` dari siklus `Shift+Tab`, dan sesi yang dimulai dengan `--permission-mode auto` dimulai dalam Manual sebagai gantinya. Sesi yang sudah berjalan dalam mode otomatis meninggalkannya ketika pengaturan mencapai sesi itu dari [sumber yang dikerahkan admin](/docs/id/managed-settings#which-managed-source-claude-code-uses), dan menampilkan `auto mode disabled by settings`. Sebelum v2.1.251, sesi yang berjalan membuat mode otomatis tetap ada sampai berakhir.

330 330 

331Dalam v2.1.158 hingga v2.1.206, mode otomatis mati di penyedia ini sampai Anda menetapkan `CLAUDE_CODE_ENABLE_AUTO_MODE=1`, dan Claude Code mengabaikan `defaultMode: "auto"` di penyedia ini kecuali variabel juga ditetapkan. Variabel masih diterima untuk kompatibilitas dan tidak berpengaruh dari v2.1.207 ke depan.331Dalam v2.1.158 hingga v2.1.206, mode otomatis mati di penyedia ini sampai Anda menetapkan `CLAUDE_CODE_ENABLE_AUTO_MODE=1`, dan Claude Code mengabaikan `defaultMode: "auto"` di penyedia ini kecuali variabel juga ditetapkan. Variabel masih diterima untuk kompatibilitas dan tidak berpengaruh dari v2.1.207 ke depan.

332 332 


334 Tinjauan pengklasifikasi sisi server334 Tinjauan pengklasifikasi sisi server

335</h3>335</h3>

336 336 

337Dalam mode otomatis, Claude Code dapat meminta server untuk memeriksa tindakan yang [urutan keputusan](#how-the-classifier-evaluates-actions) mengirim untuk tinjauan, sebagai bagian dari permintaan model sesi, sebagai pengganti mengirim permintaan pengklasifikasi sendiri. Sesi ini bertanya:337Dalam mode otomatis, Claude Code dapat meminta server untuk memeriksa tindakan yang [urutan keputusan](#how-the-classifier-evaluates-actions) kirim untuk tinjauan, sebagai bagian dari permintaan model sesi, sebagai pengganti mengirim permintaan pengklasifikasi sendiri. Sesi ini bertanya:

338 338 

339* **Koneksi langsung ke Anthropic API**: dalam sesi terminal interaktif, pada setiap paket claude.ai dan pada akun yang menggunakan Claude API, saat Anthropic meluncurkannya. Memerlukan Claude Code v2.1.271 atau lebih baru pada paket Pro, Max, dan Team, dan v2.1.278 atau lebih baru pada paket Enterprise dan akun Claude API. Dari v2.1.282, sesi yang [tidak mengambil bendera fitur](/docs/id/env-vars#features-that-need-feature-flag-fetching), misalnya karena Anda mematikan telemetri, meminta server secara default dalam sesi apa pun.339* **Koneksi langsung ke Anthropic API**: dalam sesi terminal interaktif, di setiap paket claude.ai dan di akun yang menggunakan Claude API, saat Anthropic meluncurkannya. Memerlukan Claude Code v2.1.271 atau lebih baru pada paket Pro, Max, dan Team, dan v2.1.278 atau lebih baru pada paket Enterprise dan akun Claude API. Dari v2.1.282, sesi yang [tidak mengambil bendera fitur](/docs/id/env-vars#features-that-need-feature-flag-fetching), misalnya karena Anda mematikan telemetri, meminta server secara default dalam sesi apa pun.

340* **Penyedia cloud, atau gateway LLM atau proxy**: di [Claude Platform di AWS](/docs/id/claude-platform-on-aws), Amazon Bedrock, Agent Platform Google Cloud, dan Microsoft Foundry, dan kapan pun Anda menunjuk `ANTHROPIC_BASE_URL` ke [gateway LLM atau proxy](/docs/id/llm-gateway), apa pun paket Anda. Meminta secara default memerlukan Claude Code v2.1.278 atau lebih baru.340* **Penyedia cloud, atau gateway LLM atau proxy**: di [Claude Platform di AWS](/docs/id/claude-platform-on-aws), Amazon Bedrock, Agent Platform Google Cloud, dan Microsoft Foundry, dan kapan pun Anda menunjuk `ANTHROPIC_BASE_URL` ke [gateway LLM atau proxy](/docs/id/llm-gateway), apa pun paket Anda. Meminta secara default memerlukan Claude Code v2.1.278 atau lebih baru.

341* **Sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk**: memerlukan Claude Code v2.1.280 atau lebih baru341* **Sesi [gateway aplikasi Claude](/docs/id/claude-apps-gateway) yang masuk**: memerlukan Claude Code v2.1.280 atau lebih baru

342 342 

343Di mana server meninjau tindakan, vonis mereka memutuskannya. Dua hasil lain dimungkinkan:343Di mana server meninjau tindakan, vonis mereka memutuskannya. Dua hasil lain dimungkinkan:

344 344 

345* **Server tidak meninjau sesi**: respons selesai tanpa hasil tinjauan, atau server menjawab bahwa itu tidak meninjau sesi ini. Penyebab paling umum adalah gateway LLM atau proxy yang menghilangkan permintaan untuk tinjauan atau hasilnya, dan platform, wilayah, atau kredensial yang belum memiliki pemeriksaan sisi server. Claude Code kembali ke permintaan pengklasifikasi sendiri. Setelah fallback itu berlaku untuk sisa sesi, itu menunjukkan [pemberitahuan tentang biaya permintaan pengklasifikasi](/docs/id/auto-mode-classifier-billing) pada akun di mana permintaan tersebut ditagih.345* **Server tidak meninjau sesi**: respons selesai tanpa hasil tinjauan, atau server menjawab bahwa itu tidak meninjau sesi ini. Penyebab paling umum adalah gateway LLM atau proxy yang menghilangkan permintaan untuk tinjauan atau hasilnya, dan platform, wilayah, atau kredensial yang belum memiliki pemeriksaan sisi server. Claude Code kembali ke permintaan pengklasifikasi sendiri. Setelah fallback itu berlaku untuk sisa sesi, itu menunjukkan [pemberitahuan tentang biaya permintaan pengklasifikasi](/docs/id/auto-mode-classifier-billing) di akun di mana permintaan tersebut ditagih.

346* **Server tidak memberikan vonis untuk tindakan**: Claude Code menolak tindakan daripada menjalankannya tanpa tinjauan. Pada koneksi apa pun, ini terjadi ketika respons berakhir sebelum hasil tinjauan tiba atau hasil tiba dalam bentuk yang tidak dapat dibaca Claude Code. Gateway LLM atau proxy yang memotong respons pendek atau menulis ulang hasilnya dapat menyebabkan salah satu. Pada koneksi langsung ke Anthropic API, itu juga terjadi ketika pemeriksaan server gagal untuk tindakan, misalnya dengan waktu habis. [Server tidak mengembalikan vonis keamanan](/docs/id/errors#the-server-returned-no-safety-verdict) mencakup pesan penolakan, apa yang terjadi ketika penolakan berulang, dan apa yang harus dilakukan.346* **Server tidak memberikan vonis untuk tindakan**: Claude Code menolak tindakan daripada menjalankannya tanpa tinjauan. Pada koneksi apa pun, ini terjadi ketika respons berakhir sebelum hasil tinjauan tiba atau hasil tiba dalam bentuk yang tidak dapat dibaca Claude Code. Gateway LLM atau proxy yang memotong respons pendek atau menulis ulang hasilnya dapat menyebabkan salah satu. Pada koneksi langsung ke Anthropic API, ini juga terjadi ketika pemeriksaan server gagal untuk tindakan, misalnya dengan kehabisan waktu. [Server tidak mengembalikan vonis keamanan](/docs/id/errors#the-server-returned-no-safety-verdict) mencakup pesan penolakan, apa yang terjadi ketika penolakan berulang, dan apa yang harus dilakukan.

347 347 

348Untuk melewati permintaan ke server dan selalu menggunakan permintaan pengklasifikasi Claude Code sendiri, atur [`CLAUDE_CODE_AUTO_MODE_SERVER=0`](/docs/id/env-vars). Pada koneksi langsung ke Anthropic API, variabel memerlukan Claude Code v2.1.281 atau lebih baru. Menetapkannya ke `1` di sana mengaktifkan tinjauan server dalam sesi yang belum memilikinya, seperti sesi `-p` atau Agent SDK, kecuali Anda juga menetapkan `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`. Jika Anda menetapkan `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` dan membiarkan `CLAUDE_CODE_AUTO_MODE_SERVER` tidak ditetapkan, Claude Code juga berhenti meminta server, kecuali seperti [Nonaktifkan kemampuan pra-rilis](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities) menjelaskan.348Untuk melewati permintaan ke server dan selalu menggunakan permintaan pengklasifikasi Claude Code sendiri, atur [`CLAUDE_CODE_AUTO_MODE_SERVER=0`](/docs/id/env-vars). Pada koneksi langsung ke Anthropic API, variabel memerlukan Claude Code v2.1.281 atau lebih baru. Menetapkannya ke `1` di sana mengaktifkan tinjauan server dalam sesi yang belum memilikinya, seperti sesi `-p` atau Agent SDK, kecuali Anda juga menetapkan `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1`. Jika Anda menetapkan `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` dan membiarkan `CLAUDE_CODE_AUTO_MODE_SERVER` tidak ditetapkan, Claude Code juga berhenti meminta server, kecuali seperti yang dijelaskan [Nonaktifkan kemampuan pra-rilis](/docs/id/llm-gateway-protocol#disable-pre-release-capabilities).

349 349 

350<h3 id="what-the-classifier-blocks-by-default">350<h3 id="what-the-classifier-blocks-by-default">

351 Apa yang diblokir pengklasifikasi secara default351 Apa yang diblokir pengklasifikasi secara default


355 355 

356**Diblokir secara default**:356**Diblokir secara default**:

357 357 

358* Mengunduh dan menjalankan kode, seperti `curl | bash`358* Mengunduh dan mengeksekusi kode, seperti `curl | bash`

359* Mengirim data sensitif ke titik akhir eksternal359* Mengirim data sensitif ke titik akhir eksternal

360* Penerapan dan migrasi produksi360* Penerapan dan migrasi produksi

361* Penghapusan massal pada penyimpanan cloud361* Penghapusan massal pada penyimpanan cloud

362* Memberikan izin IAM atau repo362* Memberikan izin IAM atau repo

363* Memodifikasi infrastruktur bersama363* Memodifikasi infrastruktur bersama

364* Menghancurkan file secara tidak dapat dibalikkan yang ada sebelum sesi364* Menghancurkan file secara tidak dapat dibalikkan yang ada sebelum sesi

365* Dorong paksa365* Force push

366* Melakukan komit atau mendorong perubahan yang akan mengirim rahasia atau data sensitif di luar repositori saat dijalankan, atau memperluas apa yang diekspos penerapan. Ini mencakup alur kerja CI atau konfigurasi penerapan yang meneruskan rahasia ke tujuan yang tidak sudah menerimanya, skrip atau langkah penyiapan yang membaca penyimpanan rahasia dan mengirim data keluar, dan perubahan konfigurasi yang memperluas apa yang dipublikasikan penerapan, seperti pengaturan registri, visibilitas, artefak, atau sourcemap. Pemeriksaan berlaku di cabang apa pun, berlaku bahkan ketika repositori bersifat publik, dan terbang ketika perubahan dilakukan komit atau didorong, terlepas dari apakah komit atau dorong itu memicu pipeline; menghapusnya memerlukan penamaan efek eksekusi, bukan hanya komit atau dorong. Sebelum v2.1.211, pemeriksaan ini dibatasi pada cabang default sebagai gantinya: dorong di sana diblokir ketika membawa konten sensitif, perubahan tersembunyi atau salah dideskripsikan relatif terhadap apa yang Anda minta, konten yang diportasi dari luar repositori, atau dirutekan di sekitar tinjauan yang Anda minta366* Melakukan komit atau mendorong perubahan yang akan mengirim rahasia atau data sensitif di luar repositori saat dijalankan, atau memperluas apa yang diekspos penerapan. Ini mencakup alur kerja CI atau konfigurasi penerapan yang melewatkan rahasia ke tujuan yang tidak sudah menerimanya, skrip atau langkah penyiapan yang membaca penyimpanan rahasia dan mengirim data keluar, dan perubahan konfigurasi yang memperluas apa yang dipublikasikan penerapan, seperti pengaturan registri, visibilitas, artefak, atau sourcemap. Pemeriksaan berlaku di cabang apa pun, berlaku bahkan ketika repositori bersifat publik, dan terbang ketika perubahan dilakukan komit atau didorong, terlepas dari apakah komit atau dorong itu memicu pipeline; menghapusnya memerlukan penamaan efek eksekusi, bukan hanya komit atau dorong. Sebelum v2.1.211, pemeriksaan ini dibatasi pada cabang default sebagai gantinya: dorong di sana diblokir ketika membawa konten sensitif, perubahan tersembunyi atau salah dideskripsikan relatif terhadap apa yang Anda minta, konten yang diportasi dari luar repositori, atau dirutekan di sekitar tinjauan yang Anda minta

367* `git reset --hard`, `git checkout -- .`, `git restore .`, `git clean -fd`, `git stash drop`, atau `git stash clear`, yang pengklasifikasi asumsikan akan membuang perubahan yang tidak dilakukan komit367* `git reset --hard`, `git checkout -- .`, `git restore .`, `git clean -fd`, `git stash drop`, atau `git stash clear`, yang pengklasifikasi asumsikan akan membuang perubahan yang tidak dilakukan komit

368* `git commit --amend` ketika komit di HEAD tidak dibuat dalam sesi ini368* `git commit --amend` ketika komit di HEAD tidak dibuat dalam sesi ini

369* Dari v2.1.198, `git commit --amend` ketika komit di HEAD sudah didorong. Penulisan ulang pesan saja tidak diblokir: `--amend -m` tanpa apa pun yang baru dipentaskan, pada komit yang dibuat Claude selama sesi ini369* Dari v2.1.198, `git commit --amend` ketika komit di HEAD sudah didorong. Penulisan ulang pesan saja tidak diblokir: `--amend -m` tanpa apa pun yang baru dipentaskan, pada komit yang dibuat Claude selama sesi ini

370* `terraform destroy`, `pulumi destroy`, `cdk destroy`, atau `terragrunt destroy`, dan menerapkan rencana yang menghancurkan sumber daya370* `terraform destroy`, `pulumi destroy`, `cdk destroy`, atau `terragrunt destroy`, dan menerapkan rencana yang menghancurkan sumber daya

371 371 

372Claude Code v2.1.195 dan lebih baru memblokir lebih banyak kategori secara default. Beberapa bergantung pada entri [lingkungan](/docs/id/auto-mode-config#define-trusted-infrastructure), seperti target remote sensitif dan cakupan IaC yang dilindungi, yang dapat Anda sempit ke nama konkret.372Claude Code v2.1.195 dan lebih baru memblokir lebih banyak kategori secara default. Beberapa bergantung pada entri [lingkungan](/docs/id/auto-mode-config#define-trusted-infrastructure), seperti target remote sensitif dan cakupan IaC yang dilindungi, yang dapat Anda persempit ke nama konkret.

373 373 

374* Menulis ke pengelola rahasia, atau mengubah catatan DNS atau sertifikat TLS374* Menulis ke pengelola rahasia, atau mengubah catatan DNS atau sertifikat TLS

375* Menggabungkan permintaan tarik yang tidak ada manusia yang menyetujui, menyetujui permintaan tarik Claude sendiri, atau menonaktifkan pemeriksaan CI375* Menggabungkan permintaan tarik yang tidak ada manusia yang menyetujui, menyetujui permintaan tarik Claude sendiri, atau menonaktifkan pemeriksaan CI

376* Memposting komentar yang dengan sendirinya adalah perintah untuk otomasi, seperti `atlantis apply` atau `/deploy` atau `/merge` bot376* Memposting komentar yang dengan sendirinya adalah perintah untuk otomasi, seperti `atlantis apply` atau `/deploy` atau `/merge` bot

377* Mengalihkan, merampingkan, atau menghapus bendera fitur produksi377* Mengalihkan, merampingkan, atau menghapus bendera fitur produksi

378* Menerapkan perubahan infrastruktur ke cakupan IaC yang dilindungi, atau mengalirkan dan menghapus node kluster378* Menerapkan perubahan infrastruktur ke cakupan IaC yang dilindungi, atau mengalirkan dan menghapus node cluster

379* Penulisan ke kluster komputasi bersama yang melampaui sumber daya yang Anda beri nama, seperti pemilih label atau `--all` yang menangkap pekerjaan pengguna lain379* Penulisan ke cluster komputasi bersama yang melampaui sumber daya yang Anda beri nama, seperti pemilih label atau `--all` yang menangkap pekerjaan pengguna lain

380* Membuat sumber daya Kubernetes yang berjalan di setiap node atau mencegat lalu lintas kluster, seperti DaemonSets dan webhook penerimaan380* Membuat sumber daya Kubernetes yang berjalan di setiap node atau mencegat lalu lintas cluster, seperti DaemonSets dan webhook penerimaan

381* Shell interaktif atau port-forward ke target remote sensitif381* Shell interaktif atau port-forward ke target remote sensitif

382* Membuka terowongan atau shell terbalik yang membuat layanan lokal dapat diakses dari internet publik382* Membuka terowongan atau shell terbalik yang membuat layanan lokal dapat dijangkau dari internet publik

383* Mencetak kredensial atau token langsung ke transkrip atau file383* Mencetak kredensial atau token langsung ke transkrip atau file

384* Mengakses lokasi yang tercantum sebagai lokasi data sensitif dalam [lingkungan](/docs/id/auto-mode-config#define-trusted-infrastructure) Anda, atau menyalin data keluar dari satu. Sejak v2.1.198 ini juga memblokir pengiriman data dari satu ke audiens yang dikecualikan entri384* Mengakses lokasi yang tercantum sebagai lokasi data sensitif dalam [lingkungan](/docs/id/auto-mode-config#define-trusted-infrastructure) Anda, atau menyalin data keluar dari satu. Mulai v2.1.198 ini juga memblokir pengiriman data dari satu ke audiens yang dikecualikan entri

385* Merutekan instalasi paket di sekitar registri paket internal Anda ke registri publik. Sejak v2.1.198, ini juga berlaku ketika Anda telah memberi tahu Claude bahwa registri internal atau cermin ada dalam percakapan, bukan hanya ketika satu tercantum dalam lingkungan Anda385* Merutekan instalasi paket di sekitar registri paket internal Anda ke registri publik. Mulai v2.1.198, ini juga berlaku ketika Anda telah memberi tahu Claude bahwa registri internal atau cermin ada dalam percakapan, bukan hanya ketika satu tercantum dalam lingkungan Anda

386* Menjalankan perintah dengan bendera yang melucuti penjaga keamanan, seperti `--insecure`386* Menjalankan perintah dengan bendera yang melucuti penjaga keamanan, seperti `--insecure`

387* Meluncurkan loop agen otonom yang berjalan tanpa persetujuan manusia atau sandbox, seperti yang dimulai dengan `--dangerously-skip-permissions` atau `--no-sandbox`. Sejak v2.1.198 ini juga mencakup menjalankan agen pihak ketiga atau harness eval dengan isolasi dan persetujuan per-tindakan dinonaktifkan, seperti runner yang dimulai dengan `--yes-always`387* Meluncurkan loop agen otonom yang berjalan tanpa persetujuan manusia atau sandbox, seperti yang dimulai dengan `--dangerously-skip-permissions` atau `--no-sandbox`. Mulai v2.1.198 ini juga mencakup menjalankan agen pihak ketiga atau harness eval dengan isolasi dan persetujuan per-tindakan dinonaktifkan, seperti runner yang dimulai dengan `--yes-always`

388* Tindakan browser [Claude di Chrome](/docs/id/chrome) yang dapat mengirim konten halaman, cookie, atau kredensial off-origin388* Tindakan browser [Claude di Chrome](/docs/id/chrome) yang dapat mengirim konten halaman, cookie, atau kredensial off-origin

389 389 

390Claude Code v2.1.198 dan lebih baru juga memblokir ini secara default:390Claude Code v2.1.198 dan lebih baru juga memblokir ini secara default:

391 391 

392* Menghapus file di `/tmp`, `$TMPDIR`, atau direktori goresan atau cache bersama lainnya dengan wildcard, glob, atau filter usia daripada dengan jalur bernama spesifik392* Menghapus file di `/tmp`, `$TMPDIR`, atau direktori goresan atau cache bersama lainnya dengan wildcard, glob, atau filter usia daripada dengan jalur bernama spesifik

393* Termasuk detail sensitif dalam konten yang dikirim, diunggah, dipublikasikan, atau ditulis ke orang lain atau sistem bersama, ketika pesan Anda sendiri tidak mengotorisasi detail tersebut untuk penerima itu. Badan PR dan masalah, pesan komit, dan komentar dihitung sebagai jenis konten keluar ini ketika repositori berada di luar batas kepercayaan atau publik, termasuk repositori publik organisasi Anda sendiri; jalur file internal, nama kode, data respons API langsung seperti email atau pengidentifikasi akun, dan pengidentifikasi infrastruktur dihitung sebagai detail sensitif. Cakupan PR, masalah, dan pesan komit memerlukan Claude Code v2.1.200 atau lebih baru. Data pribadi langsung dari respons API dalam badan PR atau masalah, seperti alamat email, pengidentifikasi akun atau organisasi, atau metrik penggunaan, memerlukan Anda untuk menyebutkan detail tersebut dan penerima terlepas dari visibilitas atau batas kepercayaan repositori. Pemeriksaan itu memerlukan Claude Code v2.1.203 atau lebih baru393* Termasuk detail sensitif dalam konten yang dikirim, diunggah, dipublikasikan, atau ditulis ke orang lain atau sistem bersama, ketika pesan Anda sendiri tidak mengotorisasi detail tersebut untuk penerima itu. Badan PR dan masalah, pesan komit, dan komentar dihitung sebagai jenis konten keluar ini ketika repositori berada di luar batas kepercayaan atau publik, termasuk repositori publik organisasi Anda sendiri; jalur file internal, nama kode, data respons API langsung seperti email atau pengidentifikasi akun, dan pengidentifikasi infrastruktur dihitung sebagai detail sensitif. Cakupan PR, masalah, dan pesan komit memerlukan Claude Code v2.1.200 atau lebih baru. Data pribadi langsung dari respons API dalam badan PR atau masalah, seperti alamat email, pengidentifikasi akun atau organisasi, atau metrik penggunaan, memerlukan Anda untuk menyebutkan detail tersebut dan penerima terlepas dari visibilitas repositori atau batas kepercayaan. Pemeriksaan itu memerlukan Claude Code v2.1.203 atau lebih baru

394* Mengirim keystroke ke pane tmux Claude Code sendiri untuk mendorong antarmukanya sendiri, yang pengklasifikasi perlakukan sebagai Claude mengubah izinnya sendiri atau pengawasan394* Mengirim keystroke ke pane tmux Claude Code sendiri untuk mendorong antarmukanya sendiri, yang pengklasifikasi perlakukan sebagai Claude mengubah izinnya sendiri atau pengawasan

395 395 

396Claude Code v2.1.200 dan lebih baru juga memblokir ini secara default:396Claude Code v2.1.200 dan lebih baru juga memblokir ini secara default:

397 397 

398* Mengomentari, menghapus, atau memaksa lulus tes atau pernyataan yang menjaga perilaku keamanan, seperti auth, kontrol akses, validasi input, atau sandboxing398* Mengomentari, menghapus, atau force-passing tes atau pernyataan yang menjaga perilaku keamanan, seperti auth, kontrol akses, validasi input, atau sandboxing

399* Menghapus atau merobohkan sumber daya stateful yang tidak dibuat Claude dalam sesi, ketika tidak ada aturan penghapusan yang lebih spesifik berlaku dan Anda tidak menyebutkan sumber daya itu399* Menghapus atau merobohkan sumber daya stateful yang tidak dibuat Claude dalam sesi, ketika tidak ada aturan penghapusan yang lebih spesifik berlaku dan Anda tidak menyebutkan sumber daya itu

400* Menunjuk ulang URL dasar API, titik akhir proxy, penerima webhook, atau cermin registri ke host pihak ketiga yang tidak sesuai dengan tugas, termasuk dalam file contoh seperti `.env.example`400* Menunjuk ulang URL dasar API, titik akhir proxy, penerima webhook, atau cermin registri ke host pihak ketiga yang tidak sesuai dengan tugas, termasuk dalam file contoh seperti `.env.example`

401* Mengubah ke mana dorong pergi dengan `git remote set-url` atau `git remote add`, kecuali Anda menyebutkan remote baru401* Mengubah ke mana dorong pergi dengan `git remote set-url` atau `git remote add`, kecuali Anda menyebutkan remote baru

402* Mendorong rahasia atau data pribadi atau terpercaya ke repositori yang diketahui publik, atau mendorong materi rahasia di sana yang bukan bagian dari pekerjaan repositori itu sendiri. Materi pelajaran repositori dotfiles sendiri adalah satu-satunya pengecualian untuk data pribadi atau terpercaya, dan konten dari repositori pribadi mencapai permukaan publik apa pun diblokir dengan cara yang sama; kedua penyempurnaan memerlukan Claude Code v2.1.203 atau lebih baru. Sebelum v2.1.203, data pribadi dikelompokkan dengan materi rahasia dan diblokir hanya ketika bukan bagian dari pekerjaan repositori itu sendiri. Ketika visibilitas repositori tidak ditetapkan, pengklasifikasi tidak memblokir itu saja; itu menilai konten terhadap aturan lain sebagai gantinya402* Mendorong rahasia atau data pribadi atau terpercaya ke repositori yang diketahui bersifat publik, atau mendorong materi rahasia di sana yang bukan bagian dari pekerjaan repositori itu sendiri. Materi subjek repositori dotfiles sendiri adalah satu-satunya pengecualian untuk data pribadi atau terpercaya, dan konten dari repositori pribadi mencapai permukaan publik apa pun diblokir dengan cara yang sama; kedua penyempurnaan memerlukan Claude Code v2.1.203 atau lebih baru. Sebelum v2.1.203, data pribadi dikelompokkan dengan materi rahasia dan diblokir hanya ketika bukan bagian dari pekerjaan repositori itu sendiri. Ketika visibilitas repositori tidak ditetapkan, pengklasifikasi tidak memblokir itu saja; itu menilai konten terhadap aturan lain sebagai gantinya

403* Membuka permintaan tarik terhadap repositori atau organisasi yang berbeda, bercabang dengan `gh repo fork`, atau mendorong ke repositori pihak ketiga, kecuali Anda menyebutkan target eksternal itu403* Membuka permintaan tarik terhadap repositori atau organisasi berbeda, forking dengan `gh repo fork`, atau mendorong ke repositori pihak ketiga, kecuali Anda menyebutkan target eksternal itu

404 404 

405Claude Code v2.1.203 dan lebih baru juga memblokir ini secara default:405Claude Code v2.1.203 dan lebih baru juga memblokir ini secara default:

406 406 


409Claude Code v2.1.205 dan lebih baru juga memblokir ini secara default:409Claude Code v2.1.205 dan lebih baru juga memblokir ini secara default:

410 410 

411* Menulis ke transkrip sesi Claude Code, file riwayat `.jsonl` di bawah `~/.claude/projects/` atau direktori konfigurasi Anda yang dikonfigurasi, baik secara langsung maupun melalui perintah shell. Aturan juga mencakup baris metadata yang Claude Code tambahkan ke setiap entri transkrip untuk pemeriksaannya sendiri. Membaca transkrip tidak diblokir411* Menulis ke transkrip sesi Claude Code, file riwayat `.jsonl` di bawah `~/.claude/projects/` atau direktori konfigurasi Anda yang dikonfigurasi, baik secara langsung maupun melalui perintah shell. Aturan juga mencakup baris metadata yang Claude Code tambahkan ke setiap entri transkrip untuk pemeriksaannya sendiri. Membaca transkrip tidak diblokir

412* Penghapusan paksa rekursif seperti `rm -rf "$VAR"` atau `Remove-Item -Recurse -Force $dir` yang targetnya adalah variabel shell yang tidak ditugaskan di mana pun dalam percakapan yang dilihat pengklasifikasi, atau glob yang berakar pada satu. Nilai datang hanya dari output perintah sebelumnya, yang tidak pernah diterima pengklasifikasi, jadi pengklasifikasi tidak dapat memverifikasi target penghapusan terhadap aturan penghapusan lainnya. Blok menghapus ketika Anda menyebutkan jalur pasti yang dihapus, atau ketika Claude menjalankan kembali penghapusan dengan jalur literal yang diselesaikan ditulis ke dalam perintah. Penghapusan yang targetnya dapat diselesaikan pengklasifikasi tidak terpengaruh.412* Penghapusan paksa rekursif seperti `rm -rf "$VAR"` atau `Remove-Item -Recurse -Force $dir` yang targetnya adalah variabel shell yang tidak ditugaskan di mana pun dalam percakapan yang dilihat pengklasifikasi, atau glob berakar pada variabel tersebut. Nilai hanya berasal dari keluaran perintah sebelumnya, yang tidak pernah diterima pengklasifikasi, jadi pengklasifikasi tidak dapat memverifikasi target penghapusan terhadap aturan penghapusan lainnya. Blok menghapus ketika Anda menyebutkan jalur pasti yang dihapus, atau ketika Claude menjalankan kembali penghapusan dengan jalur literal yang diselesaikan ditulis ke dalam perintah. Penghapusan yang targetnya dapat diselesaikan pengklasifikasi tidak terpengaruh.

413 413 

414 Glob langsung di bawah variabel, seperti dalam `rm -rf "$VAR"/*`, adalah [jalur kritis](#critical-paths) sebagai gantinya. Target `Remove-Item` yang merupakan `*` telanjang atau berakhir dalam `/*` atau `\*` tidak pernah mencapai pengklasifikasi: Claude Code [menolaknya langsung](#remove-item-in-powershell).414 Glob langsung di bawah variabel, seperti dalam `rm -rf "$VAR"/*`, adalah [jalur kritis](#critical-paths) sebagai gantinya. Target `Remove-Item` yang merupakan `*` telanjang atau berakhir dalam `/*` atau `\*` tidak pernah mencapai pengklasifikasi: Claude Code [menolaknya langsung](#remove-item-in-powershell).

415 415 

416Claude Code v2.1.257 dan lebih baru juga memblokir ini secara default:416Claude Code v2.1.257 dan lebih baru juga memblokir ini secara default:

417 417 

418* Meminta kredensial dari titik akhir metadata instans cloud, seperti `169.254.169.254`, atau secara eksplisit mengautentikasi panggilan cloud, kluster, atau registri dengan identitas akun layanan atau node mesin itu sendiri418* Meminta kredensial dari titik akhir metadata instans cloud, seperti `169.254.169.254`, atau secara eksplisit mengautentikasi panggilan cloud, cluster, atau registri dengan identitas akun layanan atau node mesin itu sendiri

419* Mencapai host publik dengan rute selain permintaan langsung, seperti terowongan, shell terbalik, atau konfigurasi resolver atau proxy yang ditulis ulang untuk menunjuk ke luar419* Menjangkau host publik dengan rute selain permintaan langsung, seperti terowongan, shell terbalik, atau konfigurasi resolver atau proxy yang ditulis ulang untuk menunjuk ke luar

420* Membaca kredensial yang dimiliki host daripada tugas Anda, seperti sertifikat node atau auth registri kontainer node420* Membaca kredensial yang dimiliki host daripada tugas Anda, seperti sertifikat node atau auth registri kontainer node

421* Menghubungkan ke atau memindai kontainer, pod, atau VM saudara yang tidak dimulai Claude, atau node di bawah kontainer421* Menghubungkan ke atau memindai kontainer, pod, atau VM saudara yang tidak dimulai Claude, atau node di bawah kontainer

422 422 


432* Menginstal dependensi yang dideklarasikan dalam file kunci atau manifes Anda432* Menginstal dependensi yang dideklarasikan dalam file kunci atau manifes Anda

433* Membaca `.env` dan mengirim kredensial ke API yang cocok433* Membaca `.env` dan mengirim kredensial ke API yang cocok

434* Permintaan HTTP hanya-baca434* Permintaan HTTP hanya-baca

435* Mendorong ke cabang apa pun dari repositori yang Anda kerjakan, termasuk cabang default. Cabang non-default yang nama menandainya sebagai target penerapan atau publikasi, seperti `production` atau `gh-pages`, tidak tercakup: pengklasifikasi menilai dorong di sana berdasarkan istilahnya sendiri. Konten dorong masih diperiksa terhadap aturan lain, [aturan `permissions.deny`](/docs/id/permissions#manage-permissions) masih dapat memblokir perintah dorong [seperti yang ditulis](/docs/id/permissions#bash-rule-limits) dalam setiap mode, dan perlindungan cabang remote itu sendiri masih berlaku. Sebelum v2.1.211, hanya dorong ke cabang yang Anda mulai, cabang yang dibuat Claude, dan dorong rutin ke cabang default yang diizinkan secara default, dan sebelum v2.1.203 dorong langsung apa pun ke cabang default diblokir435* Mendorong ke cabang apa pun dari repositori yang Anda kerjakan, termasuk cabang default. Cabang non-default yang nama menandainya sebagai target penerapan atau publikasi, seperti `production` atau `gh-pages`, tidak tercakup: pengklasifikasi menilai dorong di sana berdasarkan istilahnya sendiri. Konten dorong masih diperiksa terhadap aturan lain, [`permissions.deny` rules](/docs/id/permissions#manage-permissions) masih dapat memblokir perintah push [seperti yang ditulis](/docs/id/permissions#bash-rule-limits) dalam setiap mode, dan perlindungan cabang remote itu sendiri masih berlaku. Sebelum v2.1.211, hanya dorong ke cabang yang Anda mulai, cabang yang dibuat Claude, dan dorong rutin ke cabang default yang diizinkan secara default, dan sebelum v2.1.203 dorong langsung apa pun ke cabang default diblokir

436 436 

437Claude Code v2.1.195 dan lebih baru juga memungkinkan ini secara default:437Claude Code v2.1.195 dan lebih baru juga memungkinkan ini secara default:

438 438 


440* Membaca, meninjau, atau menulis kode, konfigurasi, dan model ancaman terkait keamanan sebagai bagian dari tugas Anda440* Membaca, meninjau, atau menulis kode, konfigurasi, dan model ancaman terkait keamanan sebagai bagian dari tugas Anda

441* Pesan antara agen yang bekerja bersama dalam sesi multi-agen yang sama441* Pesan antara agen yang bekerja bersama dalam sesi multi-agen yang sama

442* Mengirim data ke domain terpercaya, bucket, dan layanan yang Anda daftarkan dalam [`environment`](/docs/id/auto-mode-config#define-trusted-infrastructure). Ini mencakup aliran data saja, bukan operasi destruktif atau kredensial pada infrastruktur yang sama442* Mengirim data ke domain terpercaya, bucket, dan layanan yang Anda daftarkan dalam [`environment`](/docs/id/auto-mode-config#define-trusted-infrastructure). Ini mencakup aliran data saja, bukan operasi destruktif atau kredensial pada infrastruktur yang sama

443* [Claude di Chrome](/docs/id/chrome) navigasi ke domain internal terpercaya, localhost, atau URL yang Anda beri nama443* Navigasi [Claude di Chrome](/docs/id/chrome) ke domain internal terpercaya, localhost, atau URL yang Anda beri nama

444 444 

445Perintah sandboxed tidak mendapatkan akses jaringan secara default. Claude menyebutkan host yang dibutuhkan perintah pada perintah itu sendiri, pengklasifikasi meninjau mereka dengan perintah, dan daftar yang disetujui membuka host tersebut untuk perintah itu saja. [Domain yang diizinkan per-perintah](/docs/id/sandboxing#per-command-allowed-domains-in-auto-mode) mencakup apa yang dapat dan tidak dapat dibuka daftar dan apa yang terjadi ketika perintah mencapai host yang tidak terdaftar.445Perintah sandboxed tidak mendapatkan akses jaringan secara default. Claude menyebutkan host yang dibutuhkan perintah pada perintah itu sendiri, pengklasifikasi meninjau mereka dengan perintah, dan daftar yang disetujui membuka host tersebut untuk perintah itu saja. [Domain yang diizinkan per-perintah](/docs/id/sandboxing#per-command-allowed-domains-in-auto-mode) mencakup apa yang dapat dan tidak dapat dibuka daftar dan apa yang terjadi ketika perintah mencapai host yang tidak terdaftar.

446 446 

447Jalankan `claude auto-mode defaults` untuk mencetak daftar aturan lengkap sebagai JSON. Jika tindakan rutin diblokir, administrator dapat menambahkan repo terpercaya, bucket, dan layanan melalui pengaturan `autoMode.environment`: lihat [Konfigurasi mode otomatis](/docs/id/auto-mode-config).447Jalankan `claude auto-mode defaults` untuk mencetak daftar aturan lengkap sebagai JSON. Jika tindakan rutin diblokir, administrator dapat menambahkan repo terpercaya, bucket, dan layanan melalui pengaturan `autoMode.environment`: lihat [Konfigurasi mode otomatis](/docs/id/auto-mode-config).

448 448 

449Mendorong ke cabang apa pun dari repositori yang Anda kerjakan dan membuat permintaan tarik yang cocok dengan permintaan Anda berjalan tanpa permintaan, kecuali dorong atau permintaan tarik jatuh di bawah [daftar diblokir](#what-the-classifier-blocks-by-default), seperti rahasia atau data sensitif meninggalkan repositori, atau permintaan tarik yang menargetkan repositori atau organisasi yang berbeda. Untuk memerlukan checkpoint manusia sebelum perintah ini sambil tetap dalam mode otomatis, tambahkan aturan `permissions.ask`, yang cocok dengan perintah [seperti yang ditulis](/docs/id/permissions#bash-rule-limits): lihat [Batas umum](/docs/id/auto-mode-config#common-boundaries).449Mendorong ke cabang apa pun dari repositori yang Anda kerjakan dan membuat permintaan tarik yang cocok dengan permintaan Anda berjalan tanpa permintaan, kecuali dorong atau permintaan tarik jatuh di bawah [daftar diblokir](#what-the-classifier-blocks-by-default), seperti rahasia atau data sensitif meninggalkan repositori, atau permintaan tarik yang menargetkan repositori atau organisasi berbeda. Untuk memerlukan checkpoint manusia sebelum perintah ini sambil tetap dalam mode otomatis, tambahkan aturan `permissions.ask`, yang cocok dengan perintah [seperti yang ditulis](/docs/id/permissions#bash-rule-limits): lihat [Batas umum](/docs/id/auto-mode-config#common-boundaries).

450 450 

451<h3 id="first-read-outside-the-working-directories">451<h3 id="first-read-outside-the-working-directories">

452 Pembacaan pertama di luar direktori kerja452 Pembacaan pertama di luar direktori kerja

453</h3>453</h3>

454 454 

455Sementara [`permissions.blockReadsOutsideWorkingDirectories`](/docs/id/settings-reference#permissions-blockreadsoutsideworkingdirectories) mati, pembacaan file berjalan tanpa permintaan dalam mode otomatis, termasuk pembacaan di luar [direktori kerja](/docs/id/permissions#working-directories). Pertama kali Claude menggunakan alat Read, Grep, atau Glob pada jalur di luar mereka, Claude Code menanyakan Anda apakah akan terus memungkinkan pembacaan tersebut.455Sementara [`permissions.blockReadsOutsideWorkingDirectories`](/docs/id/settings-reference#permissions-blockreadsoutsideworkingdirectories) mati, pembacaan file berjalan tanpa permintaan dalam mode otomatis, termasuk pembacaan di luar [direktori kerja](/docs/id/permissions#working-directories). Pertama kali Claude menggunakan alat Read, Grep, atau Glob pada jalur di luar mereka, Claude Code menanyakan apakah akan memungkinkan pembacaan itu.

456 456 

457Permintaan tidak muncul dalam `-p` non-interaktif berjalan atau sesi latar belakang; pembacaan di sana berjalan seperti sebelumnya.457Permintaan tidak muncul dalam `-p` non-interaktif berjalan atau sesi latar belakang; pembacaan di sana berjalan seperti sebelumnya.

458 458 

459Apa pun yang Anda jawab, Claude terus bekerja:459Apa pun yang Anda jawab, Claude terus bekerja:

460 460 

461* **Terus izinkan**: pembacaan berjalan, pembacaan kemudian di luar direktori kerja berjalan seperti sebelumnya, dan Claude Code mencatat jawaban Anda sehingga permintaan tidak muncul lagi461* **Ya, dan terus izinkan pembacaan apa pun di luar direktori kerja**: pembacaan berjalan, pembacaan kemudian di luar direktori kerja berjalan seperti sebelumnya, dan Claude Code mencatat jawaban Anda sehingga permintaan tidak muncul lagi

462* **Blokir mulai sekarang**: pembacaan ditolak, dan Claude Code menetapkan [`permissions.blockReadsOutsideWorkingDirectories`](/docs/id/settings-reference#permissions-blockreadsoutsideworkingdirectories) ke `true` dalam pengaturan pengguna Anda, yang membuat alat file menolak pembacaan tersebut dalam setiap sesi kemudian dan setiap mode izin. Untuk membiarkan Claude membaca jalur tersebut nanti, tambahkan direktorinya dengan `/add-dir` atau hapus pengaturannya.462* **Tidak, dan blokir pembacaan di luar direktori kerja mulai sekarang**: pembacaan ditolak, dan Claude Code menetapkan [`permissions.blockReadsOutsideWorkingDirectories`](/docs/id/settings-reference#permissions-blockreadsoutsideworkingdirectories) ke `true` dalam pengaturan pengguna Anda, yang membuat alat file menolak pembacaan tersebut dalam setiap sesi kemudian dan setiap mode izin. Untuk membiarkan Claude membaca jalur tersebut nanti, tambahkan direktorinya dengan `/add-dir` atau hapus pengaturan.

463* **Tanya lagi lain kali**: pembacaan ditolak, dan pembacaan berikutnya di luar direktori kerja meminta lagi463* **Tidak, dan tanya lagi lain kali**: pembacaan ditolak, dan pembacaan berikutnya di luar direktori kerja menanyakan lagi

464* **Ya, tetapi tanya lagi lain kali**: pembacaan berjalan, tidak ada yang disimpan, dan pembacaan berikutnya di luar direktori kerja meminta lagi464* **Ya, tetapi tanya lagi lain kali**: pembacaan berjalan, tidak ada yang disimpan, dan pembacaan berikutnya di luar direktori kerja menanyakan lagi

465 465 

466<h3 id="boundaries-you-state-in-conversation">466<h3 id="boundaries-you-state-in-conversation">

467 Batas yang Anda nyatakan dalam percakapan467 Batas yang Anda nyatakan dalam percakapan


477 477 

478Jika Anda memberi tahu Claude bahwa tindakan yang diblokir diizinkan, pengklasifikasi membaca itu sebagai persetujuan Anda dan dapat menghapus blok. Cara Anda merumuskannya memutuskan apakah tindakan berjalan, dan seberapa jauh persetujuan mencapai:478Jika Anda memberi tahu Claude bahwa tindakan yang diblokir diizinkan, pengklasifikasi membaca itu sebagai persetujuan Anda dan dapat menghapus blok. Cara Anda merumuskannya memutuskan apakah tindakan berjalan, dan seberapa jauh persetujuan mencapai:

479 479 

480* **Beri nama tindakan dan spesifikasinya**: pesan Anda harus menyebutkan tindakan dan hal spesifik yang membuatnya berbahaya, seperti cabang dorong paksa. Menyebutkan verba saja tidak menghapus apa pun, jadi "Anda dapat dorong paksa" membiarkan blok tetap ada.480* **Beri nama tindakan dan spesifikasinya**: pesan Anda harus menyebutkan tindakan dan hal spesifik yang membuatnya berbahaya, seperti cabang force push. Menyebutkan verba saja tidak menghapus apa pun, jadi "Anda dapat force-push" membuat blok tetap ada.

481* **Harapkan itu mencakup satu tindakan**: persetujuan mencakup tindakan destruktif yang Anda beri nama, jadi tindakan kemudian diblokir lagi kecuali Anda memberikan persetujuan sebagai berdiri. Untuk berhenti menyetujui pola rutin satu tindakan pada satu waktu, tambahkan ke [`autoMode.allow`](/docs/id/auto-mode-config#override-the-block-and-allow-rules).481* **Harapkan itu mencakup satu tindakan**: persetujuan mencakup tindakan destruktif yang Anda beri nama, jadi tindakan kemudian diblokir lagi kecuali Anda memberikan persetujuan sebagai berdiri. Untuk berhenti menyetujui pola rutin satu tindakan pada satu waktu, tambahkan ke [`autoMode.allow`](/docs/id/auto-mode-config#override-the-block-and-allow-rules).

482* **Beberapa blok tetap ada**: [urutan preseden pengklasifikasi](/docs/id/auto-mode-config#override-the-block-and-allow-rules) menetapkan blok mana yang dapat dicapai persetujuan Anda. Untuk menjalankan langkah yang tidak akan dihapusnya, [tinggalkan mode otomatis](#switch-permission-modes) dan jawab permintaan izin.482* **Beberapa blok tetap ada**: [urutan preseden pengklasifikasi](/docs/id/auto-mode-config#override-the-block-and-allow-rules) menetapkan blok mana yang dapat dijangkau persetujuan Anda. Untuk menjalankan langkah yang tidak akan dihapusnya, [tinggalkan mode otomatis](#switch-permission-modes) dan jawab permintaan izin.

483 483 

484<h3 id="when-auto-mode-falls-back">484<h3 id="when-auto-mode-falls-back">

485 Ketika mode otomatis kembali485 Ketika mode otomatis kembali


487 487 

488Ketika mode otomatis tidak dapat menyetujui tindakan sesi Anda, apa yang terjadi tergantung pada kasusnya:488Ketika mode otomatis tidak dapat menyetujui tindakan sesi Anda, apa yang terjadi tergantung pada kasusnya:

489 489 

490* **Tindakan yang diblokir**: Claude Code menampilkan pemberitahuan dan mencantumkan tindakan dalam `/permissions` di bawah tab **Recently denied**, di mana Anda dapat menekan `r` untuk mencoba ulang dengan persetujuan manual.490* **Tindakan yang diblokir**: Claude Code menampilkan pemberitahuan dan mencantumkan tindakan di bawah `/permissions` di bawah tab **Baru-baru ini ditolak**, di mana Anda dapat menekan `r` untuk mencoba ulang dengan persetujuan manual.

491* **Blok berulang**: jika pengklasifikasi memblokir tindakan 3 kali berturut-turut atau 20 kali total, mode otomatis berhenti dan Claude Code melanjutkan permintaan. Menyetujui tindakan yang diminta melanjutkan mode otomatis. Lihat [Ambang batas blok berulang](#repeated-block-thresholds) untuk cara blok dihitung.491* **Blok berulang**: jika pengklasifikasi memblokir tindakan 3 kali berturut-turut atau 20 kali total, mode otomatis berhenti dan Claude Code melanjutkan permintaan. Menyetujui tindakan yang diminta melanjutkan mode otomatis. Lihat [Ambang blok berulang](#repeated-block-thresholds) untuk cara blok dihitung.

492* **Tidak ada vonis dari pengklasifikasi**: ketika pemeriksaan keamanan terpisah dari mode otomatis menolak permintaan pengklasifikasi sendiri, atau respons pengklasifikasi tidak diuraikan, Claude Code menolak tindakan tanpa pemberitahuan atau entri **Recently denied**. Lihat [Mode otomatis tidak dapat menentukan keamanan tindakan](/docs/id/errors#auto-mode-cannot-determine-the-safety-of-an-action) untuk pesan setiap kasus menunjukkan dan apa yang harus dilakukan.492* **Tidak ada vonis dari pengklasifikasi**: ketika pemeriksaan keamanan terpisah dari mode otomatis menolak permintaan pengklasifikasi sendiri, atau respons pengklasifikasi tidak diuraikan, Claude Code menolak tindakan tanpa pemberitahuan atau entri **Baru-baru ini ditolak**. Lihat [Mode otomatis tidak dapat menentukan keamanan tindakan](/docs/id/errors#auto-mode-cannot-determine-the-safety-of-an-action) untuk pesan setiap kasus menampilkan dan apa yang harus dilakukan.

493* **Tidak ada vonis dari server**: di bawah [tinjauan pengklasifikasi sisi server](#server-side-classifier-review), Claude Code menolak tindakan yang server tidak memberikan vonis, dan menghentikan giliran setelah sepuluh respons berturut-turut tanpa vonis. Lihat [Server tidak mengembalikan vonis keamanan](/docs/id/errors#the-server-returned-no-safety-verdict).493* **Tidak ada vonis dari server**: di bawah [tinjauan pengklasifikasi sisi server](#server-side-classifier-review), Claude Code menolak tindakan yang server tidak memberikan vonis, dan menghentikan giliran setelah sepuluh respons berturut-turut tanpa vonis. Lihat [Server tidak mengembalikan vonis keamanan](/docs/id/errors#the-server-returned-no-safety-verdict).

494* **Beralih mode selama pemeriksaan**: jika Anda beralih mode izin saat pemeriksaan pengklasifikasi tertunda, Claude Code membuang vonis yang mode baru tidak akan diminta daripada menerapkannya: Anda diminta persetujuan sebagai gantinya, atau tindakan ditolak otomatis dalam [mode `dontAsk`](#allow-only-pre-approved-tools-with-dontask-mode).494* **Beralih mode selama pemeriksaan**: jika Anda beralih mode izin saat pemeriksaan pengklasifikasi tertunda, Claude Code membuang vonis yang mode baru tidak akan meminta. Anda diminta untuk persetujuan sebagai gantinya, atau tindakan ditolak otomatis dalam [mode `dontAsk`](#allow-only-pre-approved-tools-with-dontask-mode).

495 495 

496<h4 id="repeated-block-thresholds">496<h4 id="repeated-block-thresholds">

497 Ambang batas blok berulang497 Ambang blok berulang

498</h4>498</h4>

499 499 

500Ambang batas 3 blok berturut-turut dan 20 blok total tidak dapat dikonfigurasi. Penghitung total bertahan untuk sesi dan mengatur ulang hanya ketika batasnya sendiri memicu fallback. Claude Code tidak menghitung penolakan terhadap ambang batas apa pun ketika pemeriksaan keamanan terpisah dari mode otomatis menolak permintaan pengklasifikasi sendiri.500Ambang 3 blok berturut-turut dan 20 blok total tidak dapat dikonfigurasi. Penghitung total bertahan untuk sesi dan direset hanya ketika batasnya sendiri memicu fallback. Claude Code tidak menghitung penolakan terhadap ambang apa pun ketika pemeriksaan keamanan terpisah dari mode otomatis menolak permintaan pengklasifikasi sendiri.

501 501 

502Lari `-p` [non-interaktif](/docs/id/headless) tanpa [`--permission-prompt-tool`](/docs/id/cli-reference#cli-flags) tidak memiliki permintaan untuk kembali. Ketika blok berulang mencapai ambang batas, tindakan tidak berjalan dan Claude terus bekerja. Claude Code tidak menghentikan lari.502Jalankan `-p` [non-interaktif](/docs/id/headless) tanpa [`--permission-prompt-tool`](/docs/id/cli-reference#cli-flags) tidak memiliki permintaan untuk kembali. Ketika blok berulang mencapai ambang, tindakan tidak berjalan dan Claude terus bekerja. Claude Code tidak menghentikan jalannya.

503 503 

504Blok berulang biasanya berarti pengklasifikasi kehilangan konteks tentang infrastruktur Anda. Gunakan `/feedback` untuk melaporkan positif palsu, atau biarkan administrator [mengonfigurasi infrastruktur terpercaya](/docs/id/auto-mode-config).504Blok berulang biasanya berarti pengklasifikasi kehilangan konteks tentang infrastruktur Anda. Gunakan `/feedback` untuk melaporkan positif palsu, atau biarkan administrator [mengonfigurasi infrastruktur terpercaya](/docs/id/auto-mode-config).

505 505 


507 Bagaimana mode otomatis mengevaluasi tindakan507 Bagaimana mode otomatis mengevaluasi tindakan

508</h3>508</h3>

509 509 

510Bagian berikut mencakup urutan Claude Code mengevaluasi tindakan, bagaimana pengklasifikasi meninjau pekerjaan subagen, dan apa yang ditambahkan panggilan pengklasifikasi dalam biaya dan latensi.510Bagian berikut mencakup urutan Claude Code mengevaluasi tindakan, bagaimana pengklasifikasi meninjau pekerjaan subagen, dan apa panggilan pengklasifikasi tambahkan dalam biaya dan latensi.

511 511 

512<span id="how-the-classifier-evaluates-actions" />512<span id="how-the-classifier-evaluates-actions" />

513 513 


518 1. Tindakan yang cocok dengan [aturan allow, ask, atau deny](/docs/id/permissions#manage-permissions) Anda diselesaikan segera, dengan pengecualian ini:518 1. Tindakan yang cocok dengan [aturan allow, ask, atau deny](/docs/id/permissions#manage-permissions) Anda diselesaikan segera, dengan pengecualian ini:

519 * Penulisan ke [jalur yang dilindungi](#protected-paths) rute ke pengklasifikasi bahkan ketika aturan allow cocok519 * Penulisan ke [jalur yang dilindungi](#protected-paths) rute ke pengklasifikasi bahkan ketika aturan allow cocok

520 * Tidak ada aturan allow yang menyetujui penghapusan `rm` dan `rmdir` yang menargetkan [jalur kritis](#critical-paths)520 * Tidak ada aturan allow yang menyetujui penghapusan `rm` dan `rmdir` yang menargetkan [jalur kritis](#critical-paths)

521 * Alat MCP yang ditandai [`requiresUserInteraction`](/docs/id/mcp#require-approval-for-a-specific-tool) meminta Anda langsung bahkan ketika aturan allow cocok, dan begitu juga alat konektor [organisasi Anda atur ke `ask`](/docs/id/mcp#organization-controls-on-connector-tools) dalam sesi di mana pengaturan itu mencapai Claude Code521 * Alat MCP yang ditandai [`requiresUserInteraction`](/docs/id/mcp#require-approval-for-a-specific-tool) meminta Anda secara langsung bahkan ketika aturan allow cocok, dan begitu juga alat konektor [organisasi Anda atur ke `ask`](/docs/id/mcp#organization-controls-on-connector-tools) dalam sesi di mana pengaturan itu mencapai Claude Code

522 * Perintah shell yang membawa [domain yang diizinkan per-perintah](/docs/id/sandboxing#per-command-allowed-domains-in-auto-mode) juga rute ke pengklasifikasi bahkan ketika aturan allow cocok, karena aturan menyetujui perintah, bukan hostnya522 * Perintah shell yang membawa [domain yang diizinkan per-perintah](/docs/id/sandboxing#per-command-allowed-domains-in-auto-mode) juga rute ke pengklasifikasi bahkan ketika aturan allow cocok, karena aturan menyetujui perintah, bukan hostnya

523 * Aturan ask yang cocok pada konten perintah, seperti `Bash(git push *)`, kembali ke permintaan izin523 * Aturan ask yang cocok pada konten perintah, seperti `Bash(git push *)`, kembali ke permintaan izin

524 * Penulisan yang [pemeriksaan symlink](/docs/id/permissions#symlinks) selesaikan ke jalur yang dilindungi meminta Anda ketika jalur yang diminta Claude bukan sendiri yang dilindungi524 * Penulisan yang [pemeriksaan symlink](/docs/id/permissions#symlinks) selesaikan ke jalur yang dilindungi meminta Anda ketika jalur yang diminta Claude bukan sendiri dilindungi

525 2. Tindakan hanya-baca dan pengeditan file di direktori kerja Anda disetujui otomatis, kecuali penulisan ke [jalur yang dilindungi](#protected-paths) dan [pembacaan pertama di luar direktori kerja](#first-read-outside-the-working-directories), yang meminta Anda525 2. Tindakan hanya-baca dan pengeditan file di direktori kerja Anda disetujui otomatis, kecuali penulisan ke [jalur yang dilindungi](#protected-paths) dan [pembacaan pertama di luar direktori kerja](#first-read-outside-the-working-directories), yang meminta Anda

526 * Dalam sesi dengan [tinjauan pengklasifikasi sisi server](#server-side-classifier-review), perintah hanya-baca dan [sandboxed](/docs/id/sandboxing#sandbox-modes) shell menunggu tinjauan itu dan diblokir jika itu menandainya526 * Dalam sesi dengan [tinjauan pengklasifikasi sisi server](#server-side-classifier-review), tindakan hanya-baca dan perintah shell [sandboxed](/docs/id/sandboxing#sandbox-modes) menunggu tinjauan itu dan diblokir jika itu menandainya

527 * Penulisan di dalam direktori kerja Anda yang [pemeriksaan symlink](/docs/id/permissions#symlinks) selesaikan ke lokasi di luar itu meminta Anda527 * Penulisan di dalam direktori kerja Anda yang [pemeriksaan symlink](/docs/id/permissions#symlinks) selesaikan ke lokasi di luar itu meminta Anda

528 3. Semuanya yang lain pergi ke pengklasifikasi, terlepas dari [penghapusan jalur kritis](#critical-paths) di bawah penanganan default mereka. Alat konektor dan alat MCP `requiresUserInteraction` yang meminta Anda langsung dalam langkah 1 tidak pernah mencapai pengklasifikasi, jadi baik persetujuan yang diperlukan org maupun langkah persetujuan tidak disetujui otomatis528 3. Semuanya yang lain pergi ke pengklasifikasi, terlepas dari [penghapusan jalur kritis](#critical-paths) di bawah penanganan default mereka. Alat konektor dan alat MCP `requiresUserInteraction` yang meminta Anda secara langsung dalam langkah 1 tidak pernah mencapai pengklasifikasi juga, jadi baik persetujuan yang diperlukan organisasi maupun langkah persetujuan tidak disetujui otomatis

529 4. Jika pengklasifikasi memblokir, Claude menerima alasan dan mencoba alternatif. Dalam sebagian besar sesi alasan menyebutkan aturan yang cocok pengklasifikasi, seperti `[Data Exfiltration]`, daripada memberikan penjelasan tertulis; lihat [Tinjauan penolakan](/docs/id/auto-mode-config#review-denials)529 4. Jika pengklasifikasi memblokir, Claude menerima alasan. Dalam sebagian besar sesi alasan menyebutkan aturan yang cocok pengklasifikasi, seperti `[Data Exfiltration]`, daripada memberikan penjelasan tertulis; lihat [Tinjauan penolakan](/docs/id/auto-mode-config#review-denials)

530 530 

531 Saat memasuki mode otomatis, aturan allow luas yang memberikan eksekusi kode arbitrer dijatuhkan:531 Saat memasuki mode otomatis, aturan allow luas yang memberikan eksekusi kode arbitrer dijatuhkan:

532 532 

533 * Blanket `Bash(*)` atau `PowerShell(*)`533 * Blanket `Bash(*)` atau `PowerShell(*)`

534 * Interpreter yang diberi wildcard seperti `Bash(python*)`534 * Interpreter yang diberi wildcard seperti `Bash(python*)`

535 * Perintah jalankan pengelola paket535 * Perintah jalankan pengelola paket

536 * Aturan allow `Agent`536 * Aturan `Agent`

537 * Aturan allow [`Monitor`](/docs/id/tools-reference#monitor-tool), karena Claude Code menjalankan perintah Monitor melalui shell537 * Aturan [`Monitor`](/docs/id/tools-reference#monitor-tool), karena Claude Code menjalankan perintah Monitor melalui shell

538 538 

539 Aturan sempit seperti `Bash(npm test)` tetap berlaku. Claude Code mengembalikan aturan yang dijatuhkan ketika Anda meninggalkan mode otomatis. Sebelum v2.1.236, Claude Code membiarkan aturan allow `Monitor` berlaku dalam mode otomatis, jadi aturan yang cocok dengan seluruh alat menyetujui perintah Monitor tanpa tinjauan pengklasifikasi.539 Aturan sempit seperti `Bash(npm test)` tetap berlaku. Claude Code mengembalikan aturan yang dijatuhkan ketika Anda meninggalkan mode otomatis. Sebelum v2.1.236, Claude Code membiarkan aturan `Monitor` allow berlaku dalam mode otomatis, jadi aturan yang cocok dengan seluruh alat menyetujui perintah Monitor tanpa tinjauan pengklasifikasi.

540 540 

541 Claude Code juga menjalankan `git status` itu sendiri sebelum perintah yang akan membuang pekerjaan yang tidak dilakukan komit, seperti `git reset --hard` atau `rm -rf`, dan menunjukkan pengklasifikasi apakah pekerjaan yang dipentaskan, dimodifikasi, atau tidak dilacak ada. Claude Code melaporkan file yang tidak dilacak dalam pemeriksaan itu bahkan ketika konfigurasi git repositori menetapkan `status.showUntrackedFiles=no`.541 Claude Code juga menjalankan `git status` sendiri sebelum perintah yang akan membuang pekerjaan yang tidak dilakukan komit, seperti `git reset --hard` atau `rm -rf`, dan menunjukkan pengklasifikasi apakah pekerjaan yang dipentaskan, dimodifikasi, atau tidak dilacak ada. Claude Code melaporkan file yang tidak dilacak dalam pemeriksaan itu bahkan ketika konfigurasi git repositori menetapkan `status.showUntrackedFiles=no`.

542 542 

543 Dalam permintaan pengklasifikasi yang dikirim Claude Code itu sendiri, pengklasifikasi melihat pesan pengguna, panggilan alat selain pencarian hanya-baca seperti pembacaan file dan pencarian, dan konten CLAUDE.md Anda. Hasil alat dilepas dari permintaan tersebut, jadi konten bermusuhan dalam file atau halaman web tidak dapat memanipulasi pengklasifikasi secara langsung.543 Dalam permintaan pengklasifikasi yang dikirim oleh Claude Code sendiri, pengklasifikasi melihat pesan pengguna, panggilan alat selain pencarian hanya-baca seperti pembacaan file dan pencarian, dan konten CLAUDE.md Anda. Hasil alat dilepas dari permintaan tersebut, jadi konten bermusuhan dalam file atau halaman web tidak dapat memanipulasi pengklasifikasi secara langsung.

544 544 

545 Anda dapat memberi anotasi hasil panggilan dengan [field `classifierContext` hook PostToolUse](/docs/id/hooks#annotate-a-result-for-the-auto-mode-classifier), yang dibaca pengklasifikasi sebagai konteks yang disediakan aplikasi. Field memerlukan Claude Code v2.1.236 atau lebih baru.545 Anda dapat memberi anotasi hasil panggilan dengan [field `classifierContext` hook PostToolUse](/docs/id/hooks#annotate-a-result-for-the-auto-mode-classifier), yang dibaca pengklasifikasi sebagai konteks yang disediakan aplikasi. Field memerlukan Claude Code v2.1.236 atau lebih baru.

546 546 

547 Probe sisi server terpisah memindai hasil alat masuk dan menandai konten mencurigakan sebelum Claude membacanya. Untuk lebih lanjut tentang cara lapisan ini bekerja bersama, lihat [pengumuman mode otomatis](https://claude.com/blog/auto-mode) dan [penggalian teknik](https://www.anthropic.com/engineering/claude-code-auto-mode).547 Probe sisi server terpisah memindai hasil alat masuk dan menandai konten mencurigakan sebelum Claude membacanya. Untuk lebih lanjut tentang cara lapisan ini bekerja bersama, lihat [pengumuman mode otomatis](https://claude.com/blog/auto-mode) dan [pendalaman teknik](https://www.anthropic.com/engineering/claude-code-auto-mode).

548 </Accordion>548 </Accordion>

549 549 

550 <Accordion title="Bagaimana mode otomatis menangani subagen">550 <Accordion title="Bagaimana mode otomatis menangani subagen">

551 Pengklasifikasi memeriksa pekerjaan [subagen](/docs/id/sub-agents) di tiga titik:551 Pengklasifikasi memeriksa pekerjaan [subagen](/docs/id/sub-agents) di tiga titik:

552 552 

553 1. Sebelum subagen dimulai, deskripsi tugas yang didelegasikan dievaluasi, jadi tugas yang terlihat berbahaya diblokir pada waktu spawn.553 1. Sebelum subagen dimulai, deskripsi tugas yang didelegasikan dievaluasi, jadi tugas yang terlihat berbahaya diblokir pada waktu spawn.

554 2. Saat subagen berjalan, setiap tindakannya melalui pengklasifikasi dengan aturan yang sama seperti sesi induk, dan `permissionMode` apa pun dalam frontmatter subagen diabaikan.554 2. Sementara subagen berjalan, setiap tindakannya melalui pengklasifikasi dengan aturan yang sama seperti sesi induk, dan `permissionMode` apa pun dalam frontmatter subagen diabaikan.

555 3. Ketika subagen selesai, pengklasifikasi meninjau pekerjaannya dan laporan akhirnya sebelum induk membaca laporan. Ketika pengklasifikasi menandai pekerjaan atau laporan subagen, atau pemeriksaan API keamanan terpisah menolak tinjauan, laporan masih disampaikan, diawali dengan peringatan keamanan. Ketika pengklasifikasi tidak tersedia untuk tinjauan, laporan tiba dengan catatan untuk memverifikasi pekerjaan subagen sebelum bertindak atas dasar itu.555 3. Ketika subagen selesai, pengklasifikasi meninjau pekerjaannya dan laporan akhirnya sebelum induk membaca laporan. Ketika pengklasifikasi menandai pekerjaan atau laporan subagen, atau pemeriksaan keamanan API terpisah menolak tinjauan, laporan masih disampaikan, diawali dengan peringatan keamanan. Ketika pengklasifikasi tidak tersedia untuk tinjauan, laporan tiba dengan catatan untuk memverifikasi pekerjaan subagen sebelum bertindak atas itu.

556 </Accordion>556 </Accordion>

557 557 

558 <Accordion title="Biaya dan latensi">558 <Accordion title="Biaya dan latensi">

559 Pengklasifikasi berjalan pada Claude Sonnet 5 secara default daripada pada pilihan `/model` Anda. Model pengklasifikasi yang dikonfigurasi Anthropic sisi server mengambil preseden atas default itu. Ketika model sesi Anda adalah Claude Sonnet 4.6, atau ketika [`availableModels`](/docs/id/model-config#restrict-model-selection) mengecualikan Sonnet 5, pengklasifikasi berjalan pada model sesi sebagai gantinya, atau pada model Opus ketika sesi berjalan pada [model Fable](/docs/id/model-config#work-with-fable); di penyedia selain Anthropic API, fallback Opus itu adalah model Opus default penyedia.559 Pengklasifikasi berjalan pada Claude Sonnet 5 secara default daripada pada pilihan `/model` Anda. Model pengklasifikasi yang dikonfigurasi Anthropic sisi server mengambil alih default itu. Ketika model sesi Anda adalah Claude Sonnet 4.6, atau ketika [`availableModels`](/docs/id/model-config#restrict-model-selection) mengecualikan Sonnet 5, pengklasifikasi berjalan pada model sesi sebagai gantinya, atau pada model Opus ketika sesi berjalan pada [model Fable](/docs/id/model-config#work-with-fable); di penyedia selain Anthropic API, fallback Opus itu adalah model Opus default penyedia.

560 560 

561 Permintaan mode otomatis pertama sesi memvalidasi default Sonnet 5: jika permintaan berhasil, Sonnet 5 tetap model pengklasifikasi sesi, dan jika gagal karena model tidak tersedia, sesi menggunakan fallback sebagai gantinya. Setelah validasi itu diselesaikan, model pengklasifikasi tidak berubah untuk sesi.561 Permintaan mode otomatis pertama sesi memvalidasi default Sonnet 5: jika permintaan berhasil, Sonnet 5 tetap model pengklasifikasi sesi, dan jika gagal karena model tidak tersedia, sesi menggunakan fallback sebagai gantinya. Setelah validasi itu diselesaikan, model pengklasifikasi tidak berubah untuk sesi.

562 562 

563 Pada paket Enterprise dan pada akun yang menggunakan Claude API, [Claude Platform di AWS](/docs/id/claude-platform-on-aws), Amazon Bedrock, Agent Platform Google Cloud, atau Microsoft Foundry, panggilan pengklasifikasi dihitung terhadap penggunaan token Anda. Setiap pemeriksaan mengirim sebagian dari transkrip ditambah tindakan yang tertunda, menambahkan putaran perjalanan pulang sebelum eksekusi. Pembacaan dan pengeditan direktori kerja di luar jalur yang dilindungi melewati pengklasifikasi, jadi overhead datang terutama dari perintah shell dan operasi jaringan. Di mana server meninjau tindakan sebagai bagian dari permintaan model sesi, tidak ada permintaan pengklasifikasi terpisah untuk dihitung; lihat [Tinjauan pengklasifikasi sisi server](#server-side-classifier-review).563 Pada paket Enterprise dan di akun yang menggunakan Claude API, [Claude Platform di AWS](/docs/id/claude-platform-on-aws), Amazon Bedrock, Agent Platform Google Cloud, atau Microsoft Foundry, panggilan pengklasifikasi dihitung terhadap penggunaan token Anda. Setiap pemeriksaan mengirim sebagian dari transkrip ditambah tindakan yang tertunda, menambahkan putaran perjalanan sebelum eksekusi. Pembacaan dan pengeditan direktori kerja di luar jalur yang dilindungi melewati pengklasifikasi, jadi overhead datang terutama dari perintah shell dan operasi jaringan. Di mana server meninjau tindakan sebagai bagian dari permintaan model sesi, tidak ada panggilan pengklasifikasi terpisah untuk dihitung; lihat [Tinjauan pengklasifikasi sisi server](#server-side-classifier-review).

564 564 

565 Akses jaringan sandboxed tidak menambahkan permintaan pengklasifikasi per-koneksi. Pengklasifikasi menilai [host yang dinamai perintah](/docs/id/sandboxing#per-command-allowed-domains-in-auto-mode) bersama dengan perintah dalam satu tinjauan, dan Claude Code memeriksa setiap koneksi terhadap daftar yang disetujui tanpa memanggil pengklasifikasi lagi.565 Akses jaringan sandboxed tidak menambahkan permintaan pengklasifikasi per-koneksi. Pengklasifikasi menilai [host yang dinamai perintah](/docs/id/sandboxing#per-command-allowed-domains-in-auto-mode) bersama dengan perintah dalam satu tinjauan, dan Claude Code memeriksa setiap koneksi terhadap daftar yang disetujui tanpa memanggil pengklasifikasi lagi.

566 </Accordion>566 </Accordion>

Details

163 163 

164Claude Code mencetak `Successfully uninstalled plugin: formatter (scope: project)`. Ketika plugin tidak diinstal di cakupan itu, perintah mencetak baris yang dimulai `Failed to uninstall plugin "formatter@my-marketplace":` dan keluar `1`.164Claude Code mencetak `Successfully uninstalled plugin: formatter (scope: project)`. Ketika plugin tidak diinstal di cakupan itu, perintah mencetak baris yang dimulai `Failed to uninstall plugin "formatter@my-marketplace":` dan keluar `1`.

165 165 

166Jika baris kegagalan berlanjut dengan `"formatter" was not uninstalled:`, Claude Code tidak dapat mengonfirmasi bahwa pengaturan cakupan tidak lagi menghidupkan plugin, jadi plugin tetap diinstal dengan semua yang disimpannya. Dengan `--json`, hasil membawa `failureCode: "settings_still_on"`. Pemeriksaan pengaturan ini memerlukan Claude Code v2.1.282 atau lebih baru.166Jika baris kegagalan berlanjut dengan `"formatter" was not uninstalled:` dan menyebutkan file pengaturan, Claude Code tidak dapat mengonfirmasi bahwa pengaturan cakupan tidak lagi menghidupkan plugin, jadi plugin tetap diinstal dengan semua yang disimpannya. Dengan `--json`, hasil membawa `failureCode: "settings_still_on"`. Pemeriksaan pengaturan ini memerlukan Claude Code v2.1.282 atau lebih baru.

167 167 

168<h4 id="what-an-uninstall-deletes-and-keeps">168<h4 id="what-an-uninstall-deletes-and-keeps">

169 Apa yang dihapus dan disimpan uninstall169 Apa yang dihapus dan disimpan uninstall


707Hapus deklarasi marketplace dari pengaturan Anda. `rm` adalah alias untuk `remove`.707Hapus deklarasi marketplace dari pengaturan Anda. `rm` adalah alias untuk `remove`.

708 708 

709<Warning>709<Warning>

710 Ketika Anda menghapus marketplace dari cakupan terakhir yang mendeklarasikannya, Claude Code juga menghapus cache dan mencopot setiap plugin yang Anda instal darinya. Tanpa `--scope`, perintah menghapus deklarasi dari setiap cakupan. Untuk menyegarkan marketplace tanpa kehilangan plugin, jalankan `plugin marketplace update`.710 Ketika Anda menghapus marketplace dari cakupan terakhir yang mendeklarasikannya, Claude Code juga menghapus cache dan mencopot setiap plugin yang Anda instal darinya. Juga menghapus [opsi dan rahasia](/docs/id/plugins/manifest-reference#user-configuration) yang disimpan dan [data](/docs/id/plugins/components#path-variables-and-persistent-data) di mana pun dapat.

711 

712 Untuk menyegarkan marketplace tanpa kehilangan plugin, jalankan `plugin marketplace update` sebagai gantinya.

711</Warning>713</Warning>

712 714 

713```bash theme={null}715```bash theme={null}


726claude plugin marketplace remove your-marketplace728claude plugin marketplace remove your-marketplace

727```729```

728 730 

729Claude Code mencetak `Successfully removed marketplace: your-marketplace`, menambahkan `(from project settings)` ketika Anda membatasi cakupannya. Jika Anda membatasi ke file pengaturan yang tidak mendeklarasikan marketplace, perintah gagal dengan `Marketplace 'your-marketplace' is not declared in project settings. Omit --scope to remove it from all scopes.`731Claude Code mencetak `Successfully removed marketplace: your-marketplace`. Ketika perintah mencopot plugin, output mencantumkan mereka di bawah baris seperti `Also uninstalled 2 plugins from this marketplace:`. Untuk menggunakan salah satu dari mereka lagi, tambahkan marketplace kembali dan instal ulang plugin.

732 

733Jika Anda membatasi ke file pengaturan yang tidak mendeklarasikan marketplace, perintah gagal dengan `Marketplace 'your-marketplace' is not declared in project settings. Omit --scope to remove it from all scopes.`

730 734 

731<h3 id="plugin-marketplace-update">735<h3 id="plugin-marketplace-update">

732 plugin marketplace update736 plugin marketplace update

Details

126 126 

127Setiap plugin yang Anda distribusikan adalah satu objek dalam array `plugins` dari `marketplace.json`. Untuk menambahkan plugin kedua, tambahkan objek kedua. Bidang-bidang ini mencakup sebagian besar entri:127Setiap plugin yang Anda distribusikan adalah satu objek dalam array `plugins` dari `marketplace.json`. Untuk menambahkan plugin kedua, tambahkan objek kedua. Bidang-bidang ini mencakup sebagian besar entri:

128 128 

129* `name`: pengidentifikasi yang diketik orang sebelum `@` saat mereka menginstal. Tidak dapat berisi spasi.129* `name`: pengidentifikasi yang diketik orang sebelum `@` saat mereka menginstal. [Entri plugin](/docs/id/plugins/marketplace-reference#plugin-entries) memberikan karakter yang dapat digunakan nama.

130* `source`: tempat Claude Code mengambil plugin. Tulis string jalur relatif untuk plugin di dalam direktori marketplace, seperti dalam [panduan walkthrough](#create-a-marketplace), atau objek sumber untuk plugin di luar. Lihat [Pilih sumber plugin](#choose-a-plugin-source).130* `source`: tempat Claude Code mengambil plugin. Tulis string jalur relatif untuk plugin di dalam direktori marketplace, seperti dalam [panduan walkthrough](#create-a-marketplace), atau objek sumber untuk plugin di luar. Lihat [Pilih sumber plugin](#choose-a-plugin-source).

131* `description`: baris yang dilihat orang di sebelah plugin saat mereka menjelajahi marketplace Anda di `/plugin`.131* `description`: baris yang dilihat orang di sebelah plugin saat mereka menjelajahi marketplace Anda di `/plugin`.

132 132 


199 199 

200* Kesalahan sintaks JSON, sebagai `json: Invalid JSON syntax: <reason>`200* Kesalahan sintaks JSON, sebagai `json: Invalid JSON syntax: <reason>`

201* Bidang yang diperlukan hilang, seperti `owner: Invalid input`201* Bidang yang diperlukan hilang, seperti `owner: Invalid input`

202* Nama marketplace dengan spasi, karakter non-ASCII, atau bentuk yang meniru marketplace Anthropic resmi, seperti `claude-official`202* Nama marketplace atau plugin yang melanggar aturan penamaan dalam [referensi marketplace](/docs/id/plugins/marketplace-reference#top-level-fields)

203* `source` relatif yang berisi `..`203* `source` relatif yang berisi `..`

204* Bidang yang tidak dikenal di tingkat atas atau dalam entri plugin, sebagai peringatan204* Bidang yang tidak dikenal di tingkat atas atau dalam entri plugin, sebagai peringatan

205* Masalah dalam `plugin.json` dari setiap plugin jalur-relatif, sebagai `plugins[N] plugin.json → <field>: <message>`205* Masalah dalam `plugin.json` dari setiap plugin jalur-relatif, sebagai `plugins[N] plugin.json → <field>: <message>`

Details

121 121 

122Di terminal Anda, plugin disinkronkan hanya dalam sesi di mana Anda masuk dengan akun claude.ai Anda.122Di terminal Anda, plugin disinkronkan hanya dalam sesi di mana Anda masuk dengan akun claude.ai Anda.

123 123 

124Claude Code tidak mengunduh atau memuat plugin yang disinkronkan dalam sesi terminal ini, bahkan setelah Anda masuk dengan `/login`:

125 

126* Sesi di mana `ANTHROPIC_AUTH_TOKEN`, `CLAUDE_CODE_OAUTH_TOKEN`, atau skrip `apiKeyHelper` menyediakan kredensial sebagai pengganti masuk itu

127* Sesi yang tidak [mengambil flag fitur dari Anthropic](/docs/id/env-vars#features-that-need-feature-flag-fetching), seperti sesi di mana Anda mengatur `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`

128* Sesi dalam [mode bare](/docs/id/headless#start-faster-with-bare-mode) atau sesi yang Anda mulai dengan `--safe-mode`

129* Sesi yang Anda mulai dengan daftar [`--setting-sources`](/docs/id/cli-reference#cli-flags) yang menghilangkan `user`

130 

124Jika Anda masuk pada versi Claude Code yang lebih awal, masuk itu tidak mencakup plugin sampai Claude Code memperbarui di latar belakang. Untuk mendapatkan akses lebih cepat, jalankan `/login` lagi. Sinkronisasi plugin kemudian dimulai lain kali Anda memulai Claude Code.131Jika Anda masuk pada versi Claude Code yang lebih awal, masuk itu tidak mencakup plugin sampai Claude Code memperbarui di latar belakang. Untuk mendapatkan akses lebih cepat, jalankan `/login` lagi. Sinkronisasi plugin kemudian dimulai lain kali Anda memulai Claude Code.

125 132 

126<h4 id="control-which-synced-plugins-load">133<h4 id="control-which-synced-plugins-load">


190| `.trash/` | Plugin yang sinkronisasi claude.ai hapus, seperti setelah Anda mematikannya di claude.ai atau berhenti menyinkronkan |197| `.trash/` | Plugin yang sinkronisasi claude.ai hapus, seperti setelah Anda mematikannya di claude.ai atau berhenti menyinkronkan |

191| `installed_plugins.json` dan `known_marketplaces.json` | Catatan tentang apa yang telah Claude Code instal dan marketplace mana yang telah diambilnya, dijelaskan di bawah [Check which stage a plugin reached](#check-which-stage-a-plugin-reached). [Marketplace yang dihosting di claude.ai](/docs/id/plugins/install#add-from-claude-ai) dicatat dalam `known_marketplaces_claudeai.json` sebagai gantinya |198| `installed_plugins.json` dan `known_marketplaces.json` | Catatan tentang apa yang telah Claude Code instal dan marketplace mana yang telah diambilnya, dijelaskan di bawah [Check which stage a plugin reached](#check-which-stage-a-plugin-reached). [Marketplace yang dihosting di claude.ai](/docs/id/plugins/install#add-from-claude-ai) dicatat dalam `known_marketplaces_claudeai.json` sebagai gantinya |

192| `flagged-plugins.json` | Plugin yang Claude Code copot karena marketplace mereka menghapus daftarnya. Mereka muncul di bagian **Flagged** dari `/plugin`; lihat [Host a marketplace](/docs/id/plugins/host-marketplace) |199| `flagged-plugins.json` | Plugin yang Claude Code copot karena marketplace mereka menghapus daftarnya. Mereka muncul di bagian **Flagged** dari `/plugin`; lihat [Host a marketplace](/docs/id/plugins/host-marketplace) |

200| `installed_plugins.set-aside.<date>.<hash>.json` dan `installed_plugins.unreadable.<date>.<hash>.kept` | Salinan bertanggal yang Claude Code simpan sebelum menghapus catatan instalasi yang tidak dapat digunakan oleh versi Claude Code apa pun atau membangun kembali `installed_plugins.json` yang tidak dapat dibaca. Lihat [catatan pemulihan](/docs/id/plugins/troubleshooting#installed-plugins-json-could-not-be-read-and-was-rebuilt). Mereka habis pada jadwal [`cleanupPeriodDays`](/docs/id/settings-reference#cleanupperioddays) |

193 201 

194Karena `${CLAUDE_PLUGIN_ROOT}` menunjuk ke direktori versi, path root plugin berubah dengan setiap versi. Simpan file tahan lama plugin dalam `${CLAUDE_PLUGIN_DATA}` sebagai gantinya.202Karena `${CLAUDE_PLUGIN_ROOT}` menunjuk ke direktori versi, path root plugin berubah dengan setiap versi. Simpan file tahan lama plugin dalam `${CLAUDE_PLUGIN_DATA}` sebagai gantinya.

195 203 

Details

48* **Nama marketplace komunitas**: `claude-community`, `claude-plugins-community`, dan `healthcare`. Dicadangkan di bawah aturan yang sama dengan nama resmi.48* **Nama marketplace komunitas**: `claude-community`, `claude-plugins-community`, dan `healthcare`. Dicadangkan di bawah aturan yang sama dengan nama resmi.

49* **Nama direktori plugin**: `anthropic-plugin-directory` dan `claude-plugin-directory`. Dicadangkan di bawah aturan yang sama dengan nama resmi.49* **Nama direktori plugin**: `anthropic-plugin-directory` dan `claude-plugin-directory`. Dicadangkan di bawah aturan yang sama dengan nama resmi.

50* **Nama yang menyamar sebagai marketplace resmi**: nama seperti `official-claude-plugins` atau `claude-plugins-v2`, dan nama apa pun yang berisi karakter non-ASCII. Kesalahannya adalah `Marketplace name impersonates an official Anthropic/Claude marketplace`. Karakter kontrol atau pemformatan bidirectional dalam nama juga melaporkan `Marketplace name cannot contain control or bidirectional-formatting characters`. Marketplace yang sudah terdaftar di bawah nama seperti itu berhenti dimuat, bersama dengan pluginnya.50* **Nama yang menyamar sebagai marketplace resmi**: nama seperti `official-claude-plugins` atau `claude-plugins-v2`, dan nama apa pun yang berisi karakter non-ASCII. Kesalahannya adalah `Marketplace name impersonates an official Anthropic/Claude marketplace`. Karakter kontrol atau pemformatan bidirectional dalam nama juga melaporkan `Marketplace name cannot contain control or bidirectional-formatting characters`. Marketplace yang sudah terdaftar di bawah nama seperti itu berhenti dimuat, bersama dengan pluginnya.

51* <span id="reserved-name-spellings" />**Ejaan lain dari nama yang dicadangkan**: nama yang berbeda dari nama yang dicadangkan hanya dengan titik di akhir, atau dengan simbol selain garis bawah sebagai pengganti tanda hubung, jadi `claude.code.plugins` dihitung sebagai `claude-code-plugins`. `claude plugin validate` menerima nama seperti itu; menambahkan marketplace gagal dengan [`is another spelling of "<reserved>", a reserved marketplace name`](/docs/id/errors#marketplace-name-is-another-spelling-of-a-reserved-name), dan marketplace yang sudah terdaftar di bawah satu berhenti dimuat. Pemeriksaan ini memerlukan Claude Code v2.1.280 atau lebih baru.51* <span id="reserved-name-spellings" />**Ejaan lain dari nama yang dicadangkan**: nama yang berbeda dari nama yang dicadangkan hanya dengan titik di akhir, atau dengan simbol selain garis bawah sebagai pengganti tanda hubung, jadi `claude.code.plugins` dihitung sebagai `claude-code-plugins`. Menambahkan marketplace gagal dengan [`is another spelling of "<reserved>", a reserved marketplace name`](/docs/id/errors#marketplace-name-is-another-spelling-of-a-reserved-name), dan marketplace yang sudah terdaftar di bawah satu berhenti dimuat. Pemeriksaan ini memerlukan Claude Code v2.1.280 atau lebih baru.

52* **Nama yang Claude Code gunakan untuk plugin yang tidak berasal dari marketplace**: `inline` untuk plugin yang dimuat dengan [`--plugin-dir`](/docs/id/cli-reference), `builtin` untuk plugin bawaan, `skills-dir` untuk plugin yang dimuat otomatis dari [`.claude/skills/`](/docs/id/skills), dan `synced` untuk plugin yang disinkronkan dari akun claude.ai Anda. `claude-plugin-test` juga dicadangkan. `skills-dir` juga muncul sebagai `{"source": "skills-dir"}` dalam `strictKnownMarketplaces` dan `blockedMarketplaces`, dijelaskan di bawah [Nilai sumber yang valid hanya dalam daftar kebijakan](#source-values-valid-only-in-policy-lists).52* **Nama yang Claude Code gunakan untuk plugin yang tidak berasal dari marketplace**: `inline` untuk plugin yang dimuat dengan [`--plugin-dir`](/docs/id/cli-reference), `builtin` untuk plugin bawaan, `skills-dir` untuk plugin yang dimuat otomatis dari [`.claude/skills/`](/docs/id/skills), dan `synced` untuk plugin yang disinkronkan dari akun claude.ai Anda. `claude-plugin-test` juga dicadangkan. `skills-dir` juga muncul sebagai `{"source": "skills-dir"}` dalam `strictKnownMarketplaces` dan `blockedMarketplaces`, dijelaskan di bawah [Nilai sumber yang valid hanya dalam daftar kebijakan](#source-values-valid-only-in-policy-lists).

53* **`npm`, `pip`, `uv`, `cargo`, `github`, dan `gh`**: dicadangkan dalam huruf apa pun. Pemeriksaan ini memerlukan Claude Code v2.1.275 atau lebih baru.53* **`npm`, `pip`, `uv`, `cargo`, `github`, dan `gh`**: dicadangkan dalam huruf apa pun. Pemeriksaan ini memerlukan Claude Code v2.1.275 atau lebih baru.

54* **Nama yang dimulai dengan `claudeai-`**: dicadangkan untuk marketplace yang dihosting di claude.ai. `claude plugin marketplace add` menolak marketplace lain apa pun yang menggunakannya dengan `Cannot add marketplace "<name>": names starting with "claudeai-" are reserved for marketplaces hosted on claude.ai`.54* **Nama yang dimulai dengan `claudeai-`**: dicadangkan untuk marketplace yang dihosting di claude.ai. `claude plugin marketplace add` menolak marketplace lain apa pun yang menggunakannya dengan `Cannot add marketplace "<name>": names starting with "claudeai-" are reserved for marketplaces hosted on claude.ai`.


63 63 

64| Field | Tipe | Deskripsi |64| Field | Tipe | Deskripsi |

65| :- | :- | :- |65| :- | :- | :- |

66| `name` | string | Pengenal marketplace. Tanpa spasi, karakter kontrol, atau karakter pemformatan bidirectional, tanpa `/` atau `\`, tanpa `..`, dan bukan `.`. Lihat [Nama yang dicadangkan](#reserved-names). Pengguna mengetiknya setelah `@` ketika mereka memasang plugin |66| `name` | string | Pengenal marketplace: huruf, digit, `.`, `_`, dan `-`, dimulai dengan huruf atau digit, dan tidak ada `..`. Ini membentuk bagian setelah `@` dari setiap [ID plugin](/docs/id/plugins/loading#find-where-a-plugin-came-from) yang dipasang dari marketplace, jadi `claude plugin validate` gagal untuk nama lain. Lihat [Nama yang dicadangkan](#reserved-names) |

67| `owner` | object | Informasi pengelola. `name` diperlukan; `email` dan `url` opsional |67| `owner` | object | Informasi pengelola. `name` diperlukan; `email` dan `url` opsional |

68| `plugins` | array | [Entri plugin](#plugin-entries). Setiap entri divalidasi sendiri, jadi satu entri yang tidak valid tidak gagal marketplace |68| `plugins` | array | [Entri plugin](#plugin-entries). Setiap entri divalidasi sendiri, jadi satu entri yang tidak valid tidak gagal marketplace |

69| `$schema` | string | URL JSON Schema untuk pelengkapan otomatis editor. Diabaikan saat waktu muat |69| `$schema` | string | URL JSON Schema untuk pelengkapan otomatis editor. Diabaikan saat waktu muat |


79 Entri plugin79 Entri plugin

80</h2>80</h2>

81 81 

82Setiap objek dalam array `plugins` tingkat atas dari `marketplace.json` menamai plugin dan mengatakan di mana mengambilnya. `name` dan `source` diperlukan.82Setiap objek dalam array `plugins` tingkat atas dari `marketplace.json` memberi nama plugin dan menunjukkan di mana mengambilnya. `name` dan `source` diperlukan.

83 83 

84Entri juga menerima setiap [field `plugin.json`](/docs/id/plugins/manifest-reference), seperti `description`, `version`, `author`, `commands`, dan `hooks`. Untuk kapan field tersebut berlaku, lihat [Bagaimana entri menggabungkan dengan plugin.json](#entry-and-plugin-json).84Sebuah entri juga menerima setiap [field `plugin.json`](/docs/id/plugins/manifest-reference), seperti `description`, `version`, `author`, `commands`, dan `hooks`. Untuk mengetahui kapan field tersebut berlaku, lihat [Bagaimana entri menggabungkan dengan plugin.json](#entry-and-plugin-json).

85 85 

86Tabel mencantumkan field entri sendiri dan field manifest yang maknanya berubah dalam entri.86Tabel mencantumkan field entri sendiri dan field manifest yang maknanya berubah dalam entri.

87 87 

88| Field | Tipe | Deskripsi |88| Field | Type | Description |

89| :- | :- | :- |89| :- | :- | :- |

90| `name` | string | Pengenal plugin, tanpa spasi, karakter kontrol, atau karakter pemformatan bidirectional. Pengguna mengetiknya sebelum `@` ketika mereka memasang, bahkan ketika `plugin.json` plugin sendiri menetapkan `name` yang berbeda |90| `name` | string | Pengidentifikasi plugin: huruf, digit, `.`, `_`, dan `-`, dimulai dengan huruf atau digit. `claude plugin validate` gagal untuk nama lain, yang tidak dapat diinstal oleh Claude Code. Pengguna mengetiknya sebelum `@` saat mereka menginstal, bahkan ketika `plugin.json` plugin sendiri menetapkan `name` yang berbeda |

91| `source` | string or object | Di mana mengambil plugin. Lihat [Sumber plugin](#plugin-sources) |91| `source` | string or object | Di mana mengambil plugin. Lihat [Sumber plugin](#plugin-sources) |

92| `description` | string | Ditampilkan dalam daftar [`/plugin`](/docs/id/plugins/install) dan detail |92| `description` | string | Ditampilkan dalam daftar dan detail [`/plugin`](/docs/id/plugins/install) |

93| `version` | string | String versi untuk plugin. Ketika `plugin.json` juga menetapkan `version`, `plugin.json` mengambil prioritas dan `claude plugin validate` memperingatkan. Lihat [Referensi pemuatan plugin](/docs/id/plugins/loading) |93| `version` | string | String versi untuk plugin. Ketika `plugin.json` juga menetapkan `version`, `plugin.json` mengambil prioritas dan `claude plugin validate` memberikan peringatan. Lihat [Referensi pemuatan plugin](/docs/id/plugins/loading) |

94| `category` | string | Kategori bentuk bebas untuk mengorganisir katalog |94| `category` | string | Kategori bentuk bebas untuk mengorganisir katalog |

95| `tags` | array of strings | Tag bentuk bebas untuk pencarian |95| `tags` | array of strings | Tag bentuk bebas untuk pencarian |

96| `strict` | boolean | Default `true`. Apakah `plugin.json` adalah sumber definitif untuk komponen plugin. Lihat [Mode ketat](#strict-mode) |96| `strict` | boolean | Default `true`. Apakah `plugin.json` adalah sumber definitif untuk komponen plugin. Lihat [Mode ketat](#strict-mode) |

97| `relevance` | object | Sinyal yang memberi tahu Claude Code kapan menyarankan plugin. Lihat [Rekomendasikan plugin untuk organisasi Anda](/docs/id/plugins/relevance) |97| `relevance` | object | Sinyal yang memberi tahu Claude Code kapan menyarankan plugin. Lihat [Rekomendasikan plugin untuk organisasi Anda](/docs/id/plugins/relevance) |

98| `dependencies` | array | Plugin yang harus diaktifkan agar yang ini berfungsi. Setiap item adalah `"name"`, `"name@marketplace"`, atau objek. Lihat [Dependensi plugin](/docs/id/plugins/dependencies) |98| `dependencies` | array | Plugin yang harus diaktifkan agar plugin ini berfungsi. Setiap item adalah `"name"`, `"name@marketplace"`, atau objek. Lihat [Dependensi plugin](/docs/id/plugins/dependencies) |

99| `defaultEnabled` | boolean | Default `true`. Apakah plugin dimulai diaktifkan ketika pengguna belum menetapkannya dalam [`enabledPlugins`](/docs/id/settings-reference#enabledplugins). Nilai entri mengambil prioritas atas `plugin.json` |99| `defaultEnabled` | boolean | Default `true`. Apakah plugin dimulai diaktifkan ketika pengguna belum menetapkannya dalam [`enabledPlugins`](/docs/id/settings-reference#enabledplugins). Nilai entri mengambil prioritas atas `plugin.json` |

100| `displayName` | string | Nama yang dapat dibaca manusia ditampilkan di UI. Ketika baik entri maupun `plugin.json` plugin tidak menetapkan satu, pengguna melihat `name` plugin |100| `displayName` | string | Nama yang dapat dibaca manusia ditampilkan di UI. Ketika baik entri maupun `plugin.json` plugin tidak menetapkan satu, pengguna melihat `name` plugin |

101| `metadata` | object | Objek bentuk bebas untuk field Anda sendiri. Claude Code tidak membacanya. Memerlukan Claude Code v2.1.222 atau lebih baru |101| `metadata` | object | Objek bentuk bebas untuk field Anda sendiri. Claude Code tidak membacanya. Memerlukan Claude Code v2.1.222 atau lebih baru |

102| `headers` | object | Header HTTP yang Claude Code kirim ketika mengunduh [arsip](#archive-plugin-source) entri ini. Header yang ditetapkan di sini menggantikan header dengan nama yang sama dari [`headers`](#fields-by-type) sumber marketplace. Memerlukan Claude Code v2.1.238 atau lebih baru |102| `headers` | object | Header HTTP yang dikirim Claude Code saat mengunduh [arsip](#archive-plugin-source) entri ini. Header yang ditetapkan di sini menggantikan header dengan nama yang sama dari [`headers`](#fields-by-type) sumber marketplace. Memerlukan Claude Code v2.1.238 atau lebih baru |

103| `headersHelper` | string | Perintah yang mencetak header unduhan arsip entri ini sebagai satu objek JSON, untuk kredensial yang kedaluwarsa. Entri juga harus menetapkan [`"strict": false`](#strict-mode). Memerlukan Claude Code v2.1.238 atau lebih baru. Lihat [Autentikasi unduhan arsip](/docs/id/plugins/host-marketplace#authenticate-archive-downloads) |103| `headersHelper` | string | Perintah yang mencetak header unduhan arsip entri ini sebagai satu objek JSON, untuk kredensial yang kedaluwarsa. Entri juga harus menetapkan [`"strict": false`](#strict-mode). Memerlukan Claude Code v2.1.238 atau lebih baru. Lihat [Autentikasi unduhan arsip](/docs/id/plugins/host-marketplace#authenticate-archive-downloads) |

104 104 

105<h3 id="entry-and-plugin-json">105<h3 id="entry-and-plugin-json">


109Field entri berlaku berbeda untuk plugin yang diambil yang memiliki `.claude-plugin/plugin.json` sendiri dan untuk yang tidak:109Field entri berlaku berbeda untuk plugin yang diambil yang memiliki `.claude-plugin/plugin.json` sendiri dan untuk yang tidak:

110 110 

111* **Tidak ada `plugin.json`**: entri adalah manifest terlepas dari `strict`. Setiap field manifest dalam entri berlaku, termasuk [`mcpServers`, `lspServers`, `userConfig`, dan `channels`](/docs/id/plugins/manifest-reference).111* **Tidak ada `plugin.json`**: entri adalah manifest terlepas dari `strict`. Setiap field manifest dalam entri berlaku, termasuk [`mcpServers`, `lspServers`, `userConfig`, dan `channels`](/docs/id/plugins/manifest-reference).

112* **`plugin.json` hadir**: `plugin.json` adalah manifest. [Mode ketat](#strict-mode) memutuskan apakah enam field komponen entri, `commands`, `agents`, `skills`, `hooks`, `outputStyles`, dan `themes`, digabungkan dengannya atau ditolak sebagai konflik. Entri `mcpServers`, `lspServers`, `userConfig`, dan `channels` tidak berlaku. Deklarasikan mereka di `plugin.json`.112* **`plugin.json` ada**: `plugin.json` adalah manifest. [Mode ketat](#strict-mode) memutuskan apakah enam field komponen entri, `commands`, `agents`, `skills`, `hooks`, `outputStyles`, dan `themes`, digabungkan dengannya atau ditolak sebagai konflik. Entry `mcpServers`, `lspServers`, `userConfig`, dan `channels` tidak berlaku. Deklarasikan mereka dalam `plugin.json`.

113 113 

114<h4 id="hooks-in-an-entry">114<h4 id="hooks-in-an-entry">

115 Hooks dalam entri115 Hooks dalam entri

116</h4>116</h4>

117 117 

118Tulis entri `hooks` sebagai objek inline yang memetakan nama acara hook ke array matcher. Jika Anda menulis jalur file atau array sebagai gantinya, `claude plugin validate` melewatinya. Hook tersebut tidak pernah berjalan, dan Claude Code melaporkan kesalahan `not yet supported in a marketplace entry` untuk plugin. Letakkan hook berbasis file di [`hooks/hooks.json`](/docs/id/plugins/components) plugin sendiri atau `plugin.json`.118Tulis entry `hooks` sebagai objek inline yang memetakan nama event hook ke array matcher. Jika Anda menulis jalur file atau array sebagai gantinya, `claude plugin validate` menerimanya. Hook tersebut tidak akan pernah berjalan, dan Claude Code melaporkan error `not yet supported in a marketplace entry` untuk plugin. Letakkan hook berbasis file dalam [`hooks/hooks.json`](/docs/id/plugins/components) plugin sendiri atau `plugin.json`.

119 119 

120<h4 id="display-fields">120<h4 id="display-fields">

121 Field tampilan121 Field tampilan

122</h4>122</h4>

123 123 

124Baik entri maupun `plugin.json` plugin sendiri dapat menetapkan field tampilan `displayName`, `description`, `author`, `homepage`, `repository`, `license`, dan `keywords`. Pengguna melihat nilai-nilai ini dalam daftar dan detail plugin, sebelum dan sesudah pemasangan:124Baik entri maupun `plugin.json` plugin sendiri dapat menetapkan field tampilan `displayName`, `description`, `author`, `homepage`, `repository`, `license`, dan `keywords`. Pengguna melihat nilai-nilai ini dalam daftar dan detail plugin, sebelum dan sesudah instalasi:

125 125 

126* Untuk field yang Anda tetapkan pada entri, pengguna melihat nilai entri, bahkan ketika `plugin.json` menetapkan yang berbeda.126* Untuk field yang Anda tetapkan pada entri, pengguna melihat nilai entri, bahkan ketika `plugin.json` menetapkan yang berbeda.

127* Untuk field yang entri biarkan tidak diatur, pengguna melihat nilai `plugin.json`.127* Untuk field yang entri biarkan tidak ditetapkan, pengguna melihat nilai `plugin.json`.

128 128 

129Sebelum pemasangan, Claude Code hanya dapat membaca `plugin.json` untuk entri dengan [sumber jalur relatif](#relative-path-plugin-source), yang file pluginnya berada di dalam marketplace itu sendiri. Untuk entri dengan tipe sumber apa pun, pengguna hanya melihat field entri sendiri sampai mereka memasang plugin.129Sebelum instalasi, Claude Code hanya dapat membaca `plugin.json` untuk entri dengan [sumber jalur relatif](#relative-path-plugin-source), yang file pluginnya berada di dalam marketplace itu sendiri. Untuk entri dengan jenis sumber lain apa pun, pengguna hanya melihat field entri sendiri sampai mereka menginstal plugin.

130 130 

131<h3 id="strict-mode">131<h3 id="strict-mode">

132 Mode ketat132 Mode ketat

133</h3>133</h3>

134 134 

135`strict` memutuskan apa yang terjadi ketika plugin yang diambil memiliki `plugin.json` sendiri dan entri juga mendeklarasikan salah satu [field komponen](#entry-and-plugin-json): `commands`, `agents`, `skills`, `hooks`, `outputStyles`, atau `themes`. Dengan `strict: true`, default, Claude Code menambahkan field komponen entri ke `plugin.json`, kecuali `hooks`, yang matcher-nya menggantikan manifest per acara. Dengan `strict: false`, entri yang mendeklarasikan field komponen apa pun adalah konflik, dan plugin gagal dimuat. Tabel menunjukkan setiap kombinasi `strict`, `plugin.json`, dan field komponen entri.135`strict` memutuskan apa yang terjadi ketika plugin yang diambil memiliki `plugin.json` sendiri dan entri juga mendeklarasikan salah satu dari [field komponen](#entry-and-plugin-json): `commands`, `agents`, `skills`, `hooks`, `outputStyles`, atau `themes`. Dengan `strict: true`, default, Claude Code menambahkan field komponen entri ke `plugin.json`, kecuali `hooks`, yang matcher-nya menggantikan manifest per event. Dengan `strict: false`, entri yang mendeklarasikan field komponen apa pun adalah konflik, dan plugin gagal dimuat. Tabel menunjukkan setiap kombinasi `strict`, `plugin.json`, dan field komponen entri.

136 136 

137| `strict` | `plugin.json` | Field komponen entri | Hasil |137| `strict` | `plugin.json` | Entry component fields | Result |

138| :- | :- | :- | :- |138| :- | :- | :- | :- |

139| any | absent | any | Entri adalah manifest |139| any | absent | any | Entri adalah manifest |

140| `true`, default | present | any | `plugin.json` adalah otoritas. Claude Code menambahkan field komponen entri ke dalamnya, kecuali `hooks`, yang matcher-nya [menggantikan manifest per acara](/docs/id/plugins/manifest-reference#how-entry-fields-combine-with-plugin-json) |140| `true`, default | present | any | `plugin.json` adalah otoritas. Claude Code menambahkan field komponen entri ke dalamnya, kecuali `hooks`, yang matcher-nya [menggantikan manifest per event](/docs/id/plugins/manifest-reference#how-entry-fields-combine-with-plugin-json) |

141| `false` | present | none | `plugin.json` adalah manifest, seperti dengan `true` |141| `false` | present | none | `plugin.json` adalah manifest, seperti dengan `true` |

142| `false` | present | one or more | Konflik. Plugin gagal dimuat dengan `Plugin <name> has conflicting manifests: both plugin.json and marketplace entry specify components` |142| `false` | present | one or more | Konflik. Plugin gagal dimuat dengan `Plugin <name> has conflicting manifests: both plugin.json and marketplace entry specify components` |

143 143 


469 469 

470Pesan yang diawali dengan indeks entri dan `plugin.json →`, seperti `plugins[2] plugin.json →`, adalah tentang file plugin itu sendiri. [`claude plugin validate` melaporkan kesalahan](/docs/id/plugins/troubleshooting#claude-plugin-validate-reports-errors) mencantumkan pesan tersebut dengan perbaikannya.470Pesan yang diawali dengan indeks entri dan `plugin.json →`, seperti `plugins[2] plugin.json →`, adalah tentang file plugin itu sendiri. [`claude plugin validate` melaporkan kesalahan](/docs/id/plugins/troubleshooting#claude-plugin-validate-reports-errors) mencantumkan pesan tersebut dengan perbaikannya.

471 471 

472Peringatan yang menyebutkan nama flag Claude Desktop menandai nama yang Claude Code terima tetapi Claude Desktop tolak, karena aturan nama Claude Desktop lebih ketat.472Peringatan yang menyebutkan nama flag Claude Desktop menandai nama yang Claude Desktop tolak.

473 473 

474Tabel memetakan pesan tingkat marketplace ke field yang masing-masing tentang.474Tabel memetakan pesan tingkat marketplace ke field yang masing-masing tentang.

475 475 


484| `Author name cannot be empty` | Error | `owner.name` |484| `Author name cannot be empty` | Error | `owner.name` |

485| `Plugin name cannot contain spaces. Use kebab-case (e.g., "my-plugin")` | Error | `plugins[i].name` |485| `Plugin name cannot contain spaces. Use kebab-case (e.g., "my-plugin")` | Error | `plugins[i].name` |

486| `Plugin name cannot contain control or bidirectional-formatting characters` | Error | `plugins[i].name` |486| `Plugin name cannot contain control or bidirectional-formatting characters` | Error | `plugins[i].name` |

487| `Claude Code cannot install plugins from marketplace "x". Each part of a plugin id (plugin@marketplace) may use only the letters a-z and A-Z, digits, ".", "_" and "-", and must start with a letter or digit. Change the marketplace's "name".` | Error | `name` |

488| `Claude Code cannot install plugin "x". Each part of a plugin id (plugin@marketplace) may use only the letters a-z and A-Z, digits, ".", "_" and "-", and must start with a letter or digit. Change this entry's "name".` | Error | `plugins[i].name` |

487| `Duplicate plugin name "x" found in marketplace` | Error | Dua entri berbagi `name` |489| `Duplicate plugin name "x" found in marketplace` | Error | Dua entri berbagi `name` |

488| `plugins.i.source: Invalid input` | Error | `source` entri tidak cocok dengan tipe apa pun. Lihat [Invalid input pada sumber](#invalid-input-on-a-source) |490| `plugins.i.source: Invalid input` | Error | `source` entri tidak cocok dengan tipe apa pun. Lihat [Invalid input pada sumber](#invalid-input-on-a-source) |

489| `plugins[i].source: Path contains "..": <path>` | Error | `source` relatif yang melarikan diri dari akar marketplace |491| `plugins[i].source: Path contains "..": <path>` | Error | `source` relatif yang melarikan diri dari akar marketplace |

Details

646 646 

647Kemudian jalankan `/reload-plugins` dalam sesi Anda. Entri tab **Errors** menghilang dan plugin kembali di bawah **Installed**.647Kemudian jalankan `/reload-plugins` dalam sesi Anda. Entri tab **Errors** menghilang dan plugin kembali di bawah **Installed**.

648 648 

649<h3 id="installed-plugins-json-holds-a-record-this-version-cannot-read">

650 `installed_plugins.json holds a record under "<id>" that this version of Claude Code cannot read`

651</h3>

652 

653Pesan muncul dalam bentuk-bentuk ini:

654 

655* **`claude plugin list`**: mencetaknya sebagai `Note:`

656* **`claude plugin install`, `uninstall`, dan `update`**: menolak dengan `Plugin "<name>" was not installed:`, `Plugin "<name>" was not uninstalled:`, atau `Plugin "<name>" was not updated:`, diikuti oleh teks yang sama

657* **`--json` pada salah satu dari ketiga command itu**: baris hasil membawa `message` yang sama dan `failureCode: "install_records_unreadable"`

658* **Beberapa catatan seperti itu**: pesan membaca `holds records under`

659* **Seluruh file mendeklarasikan format yang versi ini tidak tahu**: pesan membaca `installed_plugins.json is in a format (version <N>) that this version of Claude Code does not know` sebagai gantinya

660 

661Catatan bernama di `installed_plugins.json` adalah JSON yang valid di bawah id plugin yang valid, tetapi field-nya tidak parse untuk versi ini. Kemungkinan besar versi Claude Code lain menulisnya, mungkin yang lebih baru.

662 

663Sementara catatan ada di sana, versi ini tidak menulis ulang file, jadi catatan tidak hilang.

664 

665Ambil opsi pesan dalam urutan:

666 

6671. Perbarui Claude Code dengan `claude update`.

6682. Jika Anda tidak dapat memperbarui, uninstal plugin bernama dengan versi Claude Code yang menulis catatan.

6693. Jika tidak ada yang membantu, hapus catatan dari `installed_plugins.json` dengan tangan, lalu restart Claude Code atau jalankan `/reload-plugins`.

670 

671<h3 id="installed-plugins-json-could-not-be-read-and-was-rebuilt">

672 `installed_plugins.json could not be read and was rebuilt`

673</h3>

674 

675`claude plugin list` mencetak catatan ini, dengan path file yang disimpan bernama `installed_plugins.unreadable.<date>.<hash>.kept`, selama file itu duduk di samping `installed_plugins.json`.

676 

677`installed_plugins.json` yang bukan JSON yang valid, atau bukan daftar plugin, tidak dapat mengatakan apa yang Anda instal.

678 

679Buka file `.kept` untuk melihat apa yang file lama catat, dan instal ulang plugin yang Anda lewatkan. Claude Code tidak pernah membaca file kembali, dan file itu berusia pada jadwal [`cleanupPeriodDays`](/docs/id/settings-reference#cleanupperioddays).

680 

681<h3 id="install-records-under-names-that-no-version-can-use">

682 `install records under names that no version of Claude Code can use were removed from installed_plugins.json`

683</h3>

684 

685`claude plugin list` mencetak catatan ini, dengan path salinan bernama `installed_plugins.set-aside.<date>.<hash>.json`, selama salinan itu duduk di samping `installed_plugins.json`. Catatan berakhir `Nothing needs doing about these copies.`

686 

687Catatan di `installed_plugins.json` duduk di bawah kunci yang bukan id plugin yang valid, jadi tidak ada versi Claude Code yang dapat menggunakannya. Sisa file memuat secara normal.

688 

689Claude Code menyalin catatan yang tidak dapat digunakan ke dalam file `.set-aside` dan menjatuhkannya dari daftar. Claude Code tidak pernah membaca salinan kembali, dan salinan itu berusia pada jadwal [`cleanupPeriodDays`](/docs/id/settings-reference#cleanupperioddays).

690 

649<h3 id="a-plugin-you-disabled-still-loads">691<h3 id="a-plugin-you-disabled-still-loads">

650 `Disabled in ~/.claude/settings.json but still loads`692 `Disabled in ~/.claude/settings.json but still loads`

651</h3>693</h3>


981| `Path contains "..": <path>` di bawah `plugins[N].source` | Kesalahan | Gunakan path relatif terhadap root marketplace tanpa segmen `..`. |1023| `Path contains "..": <path>` di bawah `plugins[N].source` | Kesalahan | Gunakan path relatif terhadap root marketplace tanpa segmen `..`. |

982| `Marketplace name cannot contain control or bidirectional-formatting characters` | Kesalahan | Hapus karakter dari nama, seperti escape atau newline. |1024| `Marketplace name cannot contain control or bidirectional-formatting characters` | Kesalahan | Hapus karakter dari nama, seperti escape atau newline. |

983| `Plugin name cannot contain control or bidirectional-formatting characters` | Kesalahan | Hapus karakter dari plugin `name`. |1025| `Plugin name cannot contain control or bidirectional-formatting characters` | Kesalahan | Hapus karakter dari plugin `name`. |

1026| `Claude Code cannot install plugins from marketplace "<name>". Each part of a plugin id (plugin@marketplace) may use only the letters a-z and A-Z, digits, ".", "_" and "-", and must start with a letter or digit. Change the marketplace's "name".` | Kesalahan | Ganti nama marketplace agar sesuai dengan aturan yang dinyatakan pesan. |

1027| `Claude Code cannot install plugin "<name>". Each part of a plugin id (plugin@marketplace) may use only the letters a-z and A-Z, digits, ".", "_" and "-", and must start with a letter or digit. Change this entry's "name".` | Kesalahan | Ganti nama entri agar sesuai dengan aturan yang dinyatakan pesan. |

984| `Marketplace has no plugins defined` | Peringatan | Tambahkan setidaknya satu entri ke `plugins`. |1028| `Marketplace has no plugins defined` | Peringatan | Tambahkan setidaknya satu entri ke `plugins`. |

985| `No marketplace description provided` | Peringatan | Tambahkan `description` tingkat atas. |1029| `No marketplace description provided` | Peringatan | Tambahkan `description` tingkat atas. |

986| `Plugin name "<name>" is not kebab-case` di bawah `plugins[N] plugin.json → name` | Peringatan | Ganti nama ke huruf kecil, digit, dan tanda hubung. Claude Code menerima bentuk lain, tetapi sinkronisasi marketplace claude.ai menolaknya. |1030| `Plugin name "<name>" is not kebab-case` di bawah `plugins[N] plugin.json → name` | Peringatan | Ganti nama ke huruf kecil, digit, dan tanda hubung; sinkronisasi marketplace claude.ai memerlukan bentuk itu. |

987| `Entry declares version "<a>" but <path>/plugin.json says "<b>"` | Peringatan | Perbarui entri agar cocok dengan `plugin.json`, yang otoritatif pada waktu instalasi. |1031| `Entry declares version "<a>" but <path>/plugin.json says "<b>"` | Peringatan | Perbarui entri agar cocok dengan `plugin.json`, yang otoritatif pada waktu instalasi. |

988| `Marketplace name "<name>" is reserved in Claude Desktop` | Peringatan | Ganti nama marketplace. Sinkronisasi marketplace terkelola Claude Desktop menolak `org`, `org-provisioned`, dan `unknown` dalam casing apa pun. |1032| `Marketplace name "<name>" is reserved in Claude Desktop` | Peringatan | Ganti nama marketplace. Sinkronisasi marketplace terkelola Claude Desktop menolak `org`, `org-provisioned`, dan `unknown` dalam casing apa pun. |

989| `Marketplace name "<name>" is not accepted by Claude Desktop` atau `Plugin name "<name>" is not accepted by Claude Desktop` | Peringatan | Ganti nama ke paling banyak 128 karakter huruf, digit, `.`, `_`, dan `-`, dimulai dengan huruf atau digit. |1033| `Marketplace name "<name>" is not accepted by Claude Desktop` atau `Plugin name "<name>" is not accepted by Claude Desktop` | Peringatan | Ganti nama ke paling banyak 128 karakter huruf, digit, `.`, `_`, dan `-`, dimulai dengan huruf atau digit. |

Details

200 200 

201Toggle yang sama muncul di luar CLI:201Toggle yang sama muncul di luar CLI:

202 202 

203* **Desktop app**: **Settings > Claude Code > Enable remote control by default**.203* **Desktop app**: **Settings > Claude Code > Connect new sessions to Remote Control**.

204* **VS Code extension**: **Enable Remote Control for all sessions** dalam bagian Settings [command menu](/docs/id/vs-code#use-the-prompt-box).204* **VS Code extension**: **Enable Remote Control for all sessions** dalam bagian Settings [command menu](/docs/id/vs-code#use-the-prompt-box).

205 205 

206Untuk mengaktifkan auto-connect dari file pengaturan, atur [`remoteControlAtStartup`](/docs/id/settings-reference#remotecontrolatstartup) ke `true` dalam `~/.claude/settings.json` pengguna Anda atau dalam [managed settings](/docs/id/managed-settings). Dalam pengaturan proyek atau lokal (`.claude/settings.json`, `.claude/settings.local.json`), Claude Code menghormati `false` dan mematikan auto-connect untuk repositori itu, tetapi mengabaikan `true`, sehingga file yang diperiksa tidak dapat mengaktifkan Remote Control untuk semua orang yang membuka repositori.206Untuk mengaktifkan auto-connect dari file pengaturan, atur [`remoteControlAtStartup`](/docs/id/settings-reference#remotecontrolatstartup) ke `true` dalam `~/.claude/settings.json` pengguna Anda atau dalam [managed settings](/docs/id/managed-settings). Dalam pengaturan proyek atau lokal (`.claude/settings.json`, `.claude/settings.local.json`), Claude Code menghormati `false` dan mematikan auto-connect untuk repositori itu, tetapi mengabaikan `true`, sehingga file yang diperiksa tidak dapat mengaktifkan Remote Control untuk semua orang yang membuka repositori.

routines.md +16 −6

Details

66 66 

67Dalam setiap kasus lain, termasuk menerbitkan artifact baru, Claude bertanya terlebih dahulu. Ketika pekerjaan rutinitas adalah menjaga halaman tetap terkini, berikan artifact yang sudah Anda terbitkan.67Dalam setiap kasus lain, termasuk menerbitkan artifact baru, Claude bertanya terlebih dahulu. Ketika pekerjaan rutinitas adalah menjaga halaman tetap terkini, berikan artifact yang sudah Anda terbitkan.

68 68 

69Rutinitas milik akun claude.ai individual Anda. Mereka tidak dibagikan dengan rekan kerja, dan mereka dihitung terhadap tunjangan jalankan harian akun Anda. Apa pun yang dilakukan rutinitas melalui identitas GitHub yang terhubung atau konektor muncul sebagai Anda: komit dan permintaan tarik membawa pengguna GitHub Anda, dan pesan Slack, tiket Linear, atau tindakan konektor lainnya menggunakan akun tertaut Anda untuk layanan tersebut.69Rutinitas milik akun claude.ai individual Anda. Mereka tidak dibagikan dengan rekan kerja, dan mereka dihitung terhadap tunjangan jalankan akun Anda [usage and limits](#usage-and-limits). Apa pun yang dilakukan rutinitas melalui identitas GitHub yang terhubung atau konektor muncul sebagai Anda: komit dan permintaan tarik membawa pengguna GitHub Anda, dan pesan Slack, tiket Linear, atau tindakan konektor lainnya menggunakan akun tertaut Anda untuk layanan tersebut.

70 70 

71<h3 id="create-from-the-web">71<h3 id="create-from-the-web">

72 Buat dari web72 Buat dari web


174 174 

175Konversi lokal-ke-UTC yang sama seperti jadwal berulang berlaku untuk stempel waktu sekali.175Konversi lokal-ke-UTC yang sama seperti jadwal berulang berlaku untuk stempel waktu sekali.

176 176 

177Jalankan sekali tidak dihitung terhadap batas jalankan rutinitas harian. Lihat [Usage and limits](#usage-and-limits) untuk detail.177Jalankan sekali dihitung terhadap batas per jam yang sama seperti jalankan terjadwal lainnya. Lihat [Usage and limits](#usage-and-limits) untuk detail.

178 178 

179<h3 id="add-an-api-trigger">179<h3 id="add-an-api-trigger">

180 Tambahkan pemicu API180 Tambahkan pemicu API


256Pemicu GitHub memulai sesi baru secara otomatis ketika peristiwa yang cocok terjadi pada repositori yang terhubung. Claude Code tidak menggunakan kembali sesi di seluruh peristiwa, jadi dua pembaruan PR menghasilkan dua sesi independen.256Pemicu GitHub memulai sesi baru secara otomatis ketika peristiwa yang cocok terjadi pada repositori yang terhubung. Claude Code tidak menggunakan kembali sesi di seluruh peristiwa, jadi dua pembaruan PR menghasilkan dua sesi independen.

257 257 

258<Note>258<Note>

259 Selama pratinjau penelitian, peristiwa webhook GitHub tunduk pada batas per jam per-rutinitas dan per-akun. Peristiwa di luar batas dijatuhkan sampai jendela direset. Lihat batas saat ini Anda di [claude.ai/code/routines](https://claude.ai/code/routines).259 Peristiwa webhook GitHub tunduk pada batas per jam per-rutinitas dan per-akun. Peristiwa di luar batas dijatuhkan sampai jendela direset.

260</Note>260</Note>

261 261 

262Aplikasi GitHub Claude harus diinstal pada repositori yang ingin Anda berlangganan, permukaan apa pun yang Anda konfigurasi pemicu darinya.262Aplikasi GitHub Claude harus diinstal pada repositori yang ingin Anda berlangganan, permukaan apa pun yang Anda konfigurasi pemicu darinya.


421 Penggunaan dan batas421 Penggunaan dan batas

422</h2>422</h2>

423 423 

424Rutinitas mengurangi penggunaan langganan dengan cara yang sama seperti sesi interaktif. Selain batas langganan standar, rutinitas memiliki batas harian tentang berapa banyak jalankan yang dapat dimulai per akun. Lihat konsumsi saat ini dan jalankan rutinitas harian yang tersisa di [claude.ai/code/routines](https://claude.ai/code/routines) atau [claude.ai/settings/usage](https://claude.ai/settings/usage).424Rutinitas mengurangi penggunaan langganan dengan cara yang sama seperti sesi interaktif. Lihat konsumsi saat ini Anda di [claude.ai/settings/usage](https://claude.ai/settings/usage).

425 425 

426Ketika rutinitas mencapai batas harian atau batas penggunaan langganan Anda, organisasi dengan kredit penggunaan yang diaktifkan dapat terus menjalankan rutinitas pada overage terukur. Tanpa kredit penggunaan, jalankan tambahan ditolak sampai jendela direset. Aktifkan kredit penggunaan di [claude.ai/settings/usage](https://claude.ai/settings/usage). Pada paket Team dan Enterprise, admin mengaktifkannya untuk organisasi di [claude.ai/admin-settings/usage](https://claude.ai/admin-settings/usage).426Terpisah dari penggunaan langganan, setiap cara memulai jalankan memiliki batas per jam:

427 427 

428Jalankan sekali saja tidak dihitung terhadap batas jalankan rutinitas harian. Mereka mengurangi penggunaan langganan reguler Anda seperti sesi lainnya.428| Tindakan | Batas | Dihitung untuk | Melampaui batas |

429| :- | :- | :- | :- |

430| Jalankan terjadwal, termasuk jalankan sekali saja | 100 per jam | Akun Anda | Jalankan menunggu sampai batas direset |

431| **Jalankan sekarang**, API fires, dan mengatur rutinitas sekali saja untuk dijalankan lagi | 30 per jam | Setiap rutinitas, satu hitungan dibagikan oleh ketiga-tiganya | Tindakan gagal sampai batas direset |

432| **Jalankan sekarang** dan mengatur rutinitas sekali saja untuk dijalankan lagi | 100 per jam | Akun Anda | Sama |

433| API fires | 100 per jam | Akun Anda, dihitung terpisah dari **Jalankan sekarang** | Sama |

434| Peristiwa GitHub | Lihat [Tambahkan pemicu GitHub](#add-a-github-trigger) | | |

435 

436Tidak ada batas per jam ini yang memiliki overage.

437 

438Ketika rutinitas mencapai batas penggunaan langganan Anda, organisasi dengan kredit penggunaan yang diaktifkan dapat terus menjalankan rutinitas pada overage terukur. Tanpa kredit penggunaan, jalankan tambahan ditolak sampai jendela penggunaan Anda direset. Aktifkan kredit penggunaan di [claude.ai/settings/usage](https://claude.ai/settings/usage). Pada paket Team dan Enterprise, admin mengaktifkannya untuk organisasi di [claude.ai/admin-settings/usage](https://claude.ai/admin-settings/usage).

429 439 

430Sementara langganan Anda dijeda, rutinitas Anda ditahan dan tidak berjalan. Setelah langganan Anda aktif kembali, aktifkan kembali.440Sementara langganan Anda dijeda, rutinitas Anda ditahan dan tidak berjalan. Setelah langganan Anda aktif kembali, aktifkan kembali.

431 441 

Details

48* **Zero Data Retention**: tidak tersedia untuk organisasi dengan [Zero Data Retention](/docs/id/zero-data-retention) diaktifkan.48* **Zero Data Retention**: tidak tersedia untuk organisasi dengan [Zero Data Retention](/docs/id/zero-data-retention) diaktifkan.

49* **Model inference**: sesi menggunakan Anthropic API, dan inferensi tidak dapat dirutekan melalui [Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry](/docs/id/third-party-integrations), atau [LLM gateway](/docs/id/llm-gateway).49* **Model inference**: sesi menggunakan Anthropic API, dan inferensi tidak dapat dirutekan melalui [Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry](/docs/id/third-party-integrations), atau [LLM gateway](/docs/id/llm-gateway).

50* **Surfaces**: sesi dimulai dari [claude.ai/code](https://claude.ai/code), aplikasi mobile dan desktop, [rutinitas terjadwal](/docs/id/routines), dan terminal, dengan [`claude --cloud`](/docs/id/claude-code-on-the-web#from-terminal-to-cloud) atau [dispatch `--environment`](/docs/id/self-hosted-environments-testing#run-the-test-loop), dapat berjalan di lingkungan yang di-host sendiri. Sesi [Claude Tag](https://claude.com/docs/claude-tag/overview) dapat berjalan di dalamnya juga, tetapi Claude tidak dapat menggunakan [Access bundles](https://claude.com/docs/claude-tag/concepts/glossary#access-bundle) dalam sesi tersebut belum. Sesi [Claude Security](/docs/id/claude-security) dan [Code Review](/docs/id/code-review) belum dirutekan ke mereka. Dukungan untuk dua permukaan itu mengikuti secara terpisah.50* **Surfaces**: sesi dimulai dari [claude.ai/code](https://claude.ai/code), aplikasi mobile dan desktop, [rutinitas terjadwal](/docs/id/routines), dan terminal, dengan [`claude --cloud`](/docs/id/claude-code-on-the-web#from-terminal-to-cloud) atau [dispatch `--environment`](/docs/id/self-hosted-environments-testing#run-the-test-loop), dapat berjalan di lingkungan yang di-host sendiri. Sesi [Claude Tag](https://claude.com/docs/claude-tag/overview) dapat berjalan di dalamnya juga, tetapi Claude tidak dapat menggunakan [Access bundles](https://claude.com/docs/claude-tag/concepts/glossary#access-bundle) dalam sesi tersebut belum. Sesi [Claude Security](/docs/id/claude-security) dan [Code Review](/docs/id/code-review) belum dirutekan ke mereka. Dukungan untuk dua permukaan itu mengikuti secara terpisah.

51* **Repositories**: sesi memeriksa repositori dari GitHub; lihat [opsi autentikasi GitHub](/docs/id/claude-code-on-the-web#github-authentication-options).51* **Repositories**: sesi memeriksa repositori dari GitHub; lihat [opsi autentikasi GitHub](/docs/id/claude-code-on-the-web#github-authentication-options). Untuk host GitHub Enterprise Server, lihat [persyaratan jaringannya](/docs/id/github-enterprise-server#network-requirements).

52* **Billing**: sesi dalam lingkungan yang di-host sendiri menggunakan penggunaan Claude Code organisasi Anda dengan cara yang sama seperti sesi dalam lingkungan yang di-host Anthropic.52* **Billing**: sesi dalam lingkungan yang di-host sendiri menggunakan penggunaan Claude Code organisasi Anda dengan cara yang sama seperti sesi dalam lingkungan yang di-host Anthropic.

53 53 

54<h2 id="why-self-host">54<h2 id="why-self-host">

Details

170 170 

171Jika host git Anda menolak kredensial, atau Anda tidak mengonfigurasi satu, runner mencoba beberapa kali dan kemudian gagal persiapan repositori ketika repositori adalah yang didorong sesi untuk hasil. Untuk repositori yang hanya dibaca sesi, [Troubleshooting](#troubleshooting) mencakup kapan runner melewatinya. Runner tidak meneruskan pengaturan ini ke lingkungan sesi.171Jika host git Anda menolak kredensial, atau Anda tidak mengonfigurasi satu, runner mencoba beberapa kali dan kemudian gagal persiapan repositori ketika repositori adalah yang didorong sesi untuk hasil. Untuk repositori yang hanya dibaca sesi, [Troubleshooting](#troubleshooting) mencakup kapan runner melewatinya. Runner tidak meneruskan pengaturan ini ke lingkungan sesi.

172 172 

173Jaga agar program apa pun yang Anda beri nama dalam `GIT_SSH_COMMAND` atau `GIT_ASKPASS` tetap berada di tempat sesi tidak dapat menulisnya, seperti yang diminta [daftar pengerasan](#harden-your-deployment) untuk direktori hooks dan script wrapper. Hal yang sama berlaku untuk kunci atau file apa pun pada baris perintah program itu. Git runner itu sendiri menjalankan program itu ketika klon atau fetch.

174 

173Jika direktori checkout dimiliki oleh uid berbeda dari proses runner, git menolak untuk beroperasi pada mereka; tambahkan `safe.directory`:175Jika direktori checkout dimiliki oleh uid berbeda dari proses runner, git menolak untuk beroperasi pada mereka; tambahkan `safe.directory`:

174 176 

175```dockerfile theme={null}177```dockerfile theme={null}


184 186 

185Proxy memerlukan `--capacity 1` karena URL proxy adalah per-sesi, dan git 2.32 atau lebih baru karena git yang lebih lama mengabaikan mekanisme konfigurasi yang digunakan proxy untuk mengisolasi sesi satu sama lain. Runner menolak untuk memulai jika salah satu persyaratan tidak terpenuhi. Karena proxy mengambil dari sisi Anthropic, host git Anda harus dapat dijangkau dari infrastruktur Anthropic, persyaratan yang sama yang dimiliki sesi yang di-host Anthropic; untuk host git yang hanya dapat dirutekan di dalam jaringan Anda, gunakan [`checkout` lifecycle hook](/docs/id/self-hosted-environments-configuration#checkout). Setiap proses runner menangani satu sesi pada satu waktu, jadi jalankan lebih banyak replika untuk paralelisme. Ketika proxy diaktifkan, `--git-host-rewrite` dan `--git-ssh-rewrite` tidak berpengaruh: URL proxy menunjuk ke `api.anthropic.com`, bukan host git Anda.187Proxy memerlukan `--capacity 1` karena URL proxy adalah per-sesi, dan git 2.32 atau lebih baru karena git yang lebih lama mengabaikan mekanisme konfigurasi yang digunakan proxy untuk mengisolasi sesi satu sama lain. Runner menolak untuk memulai jika salah satu persyaratan tidak terpenuhi. Karena proxy mengambil dari sisi Anthropic, host git Anda harus dapat dijangkau dari infrastruktur Anthropic, persyaratan yang sama yang dimiliki sesi yang di-host Anthropic; untuk host git yang hanya dapat dirutekan di dalam jaringan Anda, gunakan [`checkout` lifecycle hook](/docs/id/self-hosted-environments-configuration#checkout). Setiap proses runner menangani satu sesi pada satu waktu, jadi jalankan lebih banyak replika untuk paralelisme. Ketika proxy diaktifkan, `--git-host-rewrite` dan `--git-ssh-rewrite` tidak berpengaruh: URL proxy menunjuk ke `api.anthropic.com`, bukan host git Anda.

186 188 

189<Warning>

190 Resep [Kubernetes](#kubernetes) dan [Docker Compose](#docker-compose) di halaman ini menggunakan `--capacity 4`. Jika Anda menambahkan `--use-anthropic-git-proxy` atau `CLAUDE_RUNNER_USE_GIT_PROXY=1` ke salah satunya tanpa mengubah kapasitas menjadi `1`, runner keluar pada startup setiap kali orchestrator Anda memulainya kembali. Atur `--capacity 1` dan jalankan lebih banyak replika untuk paralelisme. [When the runner exits](#when-the-runner-exits) menunjukkan baris yang dicetak runner.

191</Warning>

192 

187Runner juga melaporkan opt-in ke Anthropic ketika mendaftar, mencetak `Registering as opted in to Anthropic-managed git (--use-anthropic-git-proxy)` pada startup. Melaporkan opt-in memerlukan Claude Code v2.1.267 atau lebih baru, dan versi sebelumnya menerima flag tanpa melaporkannya atau mencetak baris itu. Setiap sesi pada runner yang telah opt-in kemudian menggunakan baik git yang dikelola Anthropic atau URL proxy per-sesi. Ketika sesi menggunakan URL proxy per-sesi, runner mencatat satu baris `[runner:warn]` mengatakan demikian.193Runner juga melaporkan opt-in ke Anthropic ketika mendaftar, mencetak `Registering as opted in to Anthropic-managed git (--use-anthropic-git-proxy)` pada startup. Melaporkan opt-in memerlukan Claude Code v2.1.267 atau lebih baru, dan versi sebelumnya menerima flag tanpa melaporkannya atau mencetak baris itu. Setiap sesi pada runner yang telah opt-in kemudian menggunakan baik git yang dikelola Anthropic atau URL proxy per-sesi. Ketika sesi menggunakan URL proxy per-sesi, runner mencatat satu baris `[runner:warn]` mengatakan demikian.

188 194 

195<h4 id="trust-a-private-certificate-authority-with-anthropic-managed-git">

196 Percayai otoritas sertifikat pribadi dengan git yang dikelola Anthropic

197</h4>

198 

199Bagian ini berlaku jika Anda menetapkan `GIT_SSL_CAINFO` atau `GIT_SSL_NO_VERIFY` dalam lingkungan runner yang sesinya menggunakan git yang dikelola Anthropic. Penanganan yang dijelaskannya memerlukan runner untuk menjalankan Claude Code v2.1.283 atau lebih baru.

200 

201Ketika git di runner harus mempercayai otoritas sertifikat pribadi (CA), seperti yang ditandatangani oleh proxy yang menginspeksi TLS, pendekatan biasa bekerja sebagai berikut:

202 

203* **Penyimpanan sertifikat sistem**: instal CA Anda di penyimpanan sertifikat sistem host runner, dan git mempercayainya tanpa variabel apa pun.

204* **`GIT_SSL_CAINFO`**: aturnya ke file PEM dari CA Anda, misalnya `GIT_SSL_CAINFO=/etc/ssl/corp-ca.pem`.

205* **`GIT_SSL_NO_VERIFY`**: tidak membantu di balik proxy yang menandatangani ulang. Klon runner sendiri melalui git yang dikelola Anthropic memeriksa sertifikat bahkan ketika variabel diatur, jadi klon itu gagal sampai git mempercayai CA Anda melalui salah satu dari dua pendekatan lainnya.

206 

207Untuk koneksi git yang membawa token sesi ke git yang dikelola Anthropic, runner menerapkan dua variabel sebagai berikut. Hook [`command`](/docs/id/self-hosted-environments-configuration#command) dimulai dengan lingkungan sesi, jadi itu mendapatkan apa yang git di dalam sesi dapatkan:

208 

209* **`GIT_SSL_CAINFO`**: apa yang git periksa git yang dikelola Anthropic terhadap tergantung di mana git berjalan:

210 * **Klon dan fetch runner sendiri**: berjalan tanpa variabel dan periksa git yang dikelola Anthropic terhadap file sertifikat per-sesi yang ditulis runner. File itu menyimpan bundel CA sistem host runner ditambah sertifikat dari file Anda.

211 * **Git di dalam sesi**: mendapatkan konfigurasi `http.sslCAInfo` yang menamai file Anda sebagai pengganti variabel, ditambah entri `http.<url>.sslCAInfo` yang memeriksa git yang dikelola Anthropic terhadap file per-sesi.

212 * **Hook `checkout` dan `post-session`**: mewarisi variabel tidak berubah.

213* **`GIT_SSL_NO_VERIFY`**: pemeriksaan sertifikat mana yang tetap mati tergantung di mana git berjalan:

214 * **Klon dan fetch runner sendiri**: berjalan tanpa variabel dan periksa sertifikat yang mereka sajikan.

215 * **Git di dalam sesi**: mendapatkan konfigurasi `http.sslVerify=false` sebagai pengganti variabel, jadi pemeriksaan tetap mati untuk host lain. Itu juga mendapatkan entri `http.<url>.sslVerify=true` yang menjaga pemeriksaan tetap aktif untuk git yang dikelola Anthropic.

216 * **Hook `checkout` dan `post-session`**: ketika sesi memiliki repositori di git yang dikelola Anthropic, dapatkan konfigurasi `http.sslVerify=false` sebagai pengganti variabel. Mereka juga mendapatkan entri `http.<url>.sslVerify=true` yang menjaga pemeriksaan tetap aktif untuk git yang dikelola Anthropic.

217 

218File sertifikat per-sesi memerlukan bundel CA sistem di `/etc/ssl/certs/ca-certificates.crt` atau `/etc/pki/tls/certs/ca-bundle.crt` di host runner. Itu juga memerlukan file `GIT_SSL_CAINFO` yang dapat dibaca pengguna runner, yang menyimpan blok `CERTIFICATE` PEM, dan yang paling banyak 1 MiB. Ketika runner tidak dapat membangun file per-sesi, itu mencatat baris `[runner:warn]` yang berisi `did not build the certificate file` dan alasannya. Git kemudian menggunakan file Anda seperti apa adanya untuk git yang dikelola Anthropic. Perbaiki apa yang dinamai baris.

219 

220Untuk setiap sesi yang menggunakan git yang dikelola Anthropic, runner juga mencatat baris `[runner:warn]` yang dimulai dengan `governed git: GIT_SSL_CAINFO is set` atau `governed git: GIT_SSL_NO_VERIFY is set`. Baris mengatakan apa yang dilakukan runner dengan variabel itu untuk git-nya sendiri, untuk git di dalam sesi, dan untuk hook lifecycle Anda. Itu berakhir dengan apakah Anda perlu mengubah apa pun.

221 

189<h3 id="rewrite-git-urls-for-private-networks">222<h3 id="rewrite-git-urls-for-private-networks">

190 Tulis ulang URL git untuk jaringan pribadi223 Tulis ulang URL git untuk jaringan pribadi

191</h3>224</h3>


203 236 

204Anthropic tidak menerbitkan gambar runner yang telah dibangun sebelumnya. Bangun milik Anda sendiri di sekitar biner `claude`, berlapis dengan toolchain apa pun yang dibutuhkan repositori Anda: runtime bahasa, compiler, package manager, dan sidecar [MCP](/docs/id/mcp).237Anthropic tidak menerbitkan gambar runner yang telah dibangun sebelumnya. Bangun milik Anda sendiri di sekitar biner `claude`, berlapis dengan toolchain apa pun yang dibutuhkan repositori Anda: runtime bahasa, compiler, package manager, dan sidecar [MCP](/docs/id/mcp).

205 238 

206Resep di bawah menggunakan `--capacity 4`, jadi satu kontainer melayani hingga empat sesi bersamaan dari pemilik terkunci yang sama. Itu tidak memberikan isolasi kontainer per-sesi dalam [bagian pengerasan](#harden-your-deployment): sebelum menghubungkan lingkungan ke sistem produksi, jalankan resep pada `--capacity 1` dengan satu kontainer per sesi, atau gunakan [runner on-demand](/docs/id/self-hosted-environments-configuration#on-demand-runners), yang juga menjaga rahasia lingkungan dari host yang menjalankan sesi.239Resep di bawah menggunakan `--capacity 4`, jadi satu kontainer melayani hingga empat sesi bersamaan dari pemilik terkunci yang sama. Itu tidak memberikan isolasi kontainer per-sesi dalam [bagian pengerasan](#harden-your-deployment): sebelum menghubungkan lingkungan ke sistem produksi, jalankan resep pada `--capacity 1` dengan satu kontainer per sesi, atau gunakan [runner on-demand](/docs/id/self-hosted-environments-configuration#on-demand-runners), yang juga menjaga rahasia lingkungan dari host yang menjalankan sesi. Jika Anda menambahkan [proxy git Anthropic](#use-the-anthropic-git-proxy) ke salah satu resep ini, juga ubah `--capacity` menjadi `1`.

207 240 

208Dockerfile ini adalah titik awal minimal:241Dockerfile ini adalah titik awal minimal:

209 242 


338 371 

339Layanan Compose di bawah memulai ulang runner kapan pun keluar, yang mencakup crash dan exit normal setelah draining. Kebijakan restart Docker memulai ulang kontainer yang sama dengan lapisan yang dapat ditulisnya utuh, jadi runner kembali pada filesystem yang digunakan kembali daripada yang segar yang [postur pengerasan](#harden-your-deployment) rekomendasikan; gunakan resep ini untuk evaluasi, dan untuk produksi baik buat ulang kontainer per run atau gunakan orchestrator yang melakukannya.372Layanan Compose di bawah memulai ulang runner kapan pun keluar, yang mencakup crash dan exit normal setelah draining. Kebijakan restart Docker memulai ulang kontainer yang sama dengan lapisan yang dapat ditulisnya utuh, jadi runner kembali pada filesystem yang digunakan kembali daripada yang segar yang [postur pengerasan](#harden-your-deployment) rekomendasikan; gunakan resep ini untuk evaluasi, dan untuk produksi baik buat ulang kontainer per run atau gunakan orchestrator yang melakukannya.

340 373 

374Docker menunggu lebih lama sebelum setiap restart kontainer yang terus keluar, hingga batas maksimal, jadi runner yang tidak dapat dimulai tidak terus memulai ulang dalam loop ketat di bawah resep ini. [Ketika runner keluar](#when-the-runner-exits) menjelaskan apa yang harus diperiksa ketika itu terjadi.

375 

341```yaml theme={null}376```yaml theme={null}

342services:377services:

343 claude-runner:378 claude-runner:


451 486 

452Proses Claude Code anak setiap sesi menjalankan biner runner itu sendiri, dan runner mematikan auto-update di dalam sesi yang dihasilkannya, jadi setiap sesi menjalankan versi yang Anda instal di host atau bangun ke gambar. Update tingkat host berlaku waktu berikutnya runner dimulai.487Proses Claude Code anak setiap sesi menjalankan biner runner itu sendiri, dan runner mematikan auto-update di dalam sesi yang dihasilkannya, jadi setiap sesi menjalankan versi yang Anda instal di host atau bangun ke gambar. Update tingkat host berlaku waktu berikutnya runner dimulai.

453 488 

489Model yang digunakan sesi Anda dapat memerlukan versi Claude Code yang lebih baru daripada yang mereka jalankan. Server kemudian menolak permintaan untuk model tersebut dengan [Claude Code does not support this model](/docs/id/errors#claude-code-does-not-support-this-model). Sebelum Anda menyematkan versi, periksa [versi Claude Code yang diperlukan model](/docs/id/model-config#available-models) untuk setiap model yang digunakan sesi Anda.

490 

454* **Untuk menyimpan armada pada satu versi**: bangun gambar dengan versi yang disematkan, atau pada host telanjang instal versi spesifik dan [nonaktifkan auto-update](/docs/id/setup#disable-auto-updates)491* **Untuk menyimpan armada pada satu versi**: bangun gambar dengan versi yang disematkan, atau pada host telanjang instal versi spesifik dan [nonaktifkan auto-update](/docs/id/setup#disable-auto-updates)

455* **Untuk upgrade**: instal versi yang lebih baru atau bangun ulang gambar, kemudian mulai ulang runner492* **Untuk upgrade**: instal versi yang lebih baru atau bangun ulang gambar, kemudian mulai ulang runner

456* **Plugin**: marketplace plugin tidak auto-update juga; atur `FORCE_AUTOUPDATE_PLUGINS=1` dalam lingkungan runner untuk membiarkan plugin auto-update sementara biner tetap disematkan493* **Plugin**: marketplace plugin tidak auto-update juga; atur `FORCE_AUTOUPDATE_PLUGINS=1` dalam lingkungan runner untuk membiarkan plugin auto-update sementara biner tetap disematkan


554 591 

555Setiap proses anak sesi menulis log debug terpisah. Pada kegagalan runner menampilkan ekor log bersama sesi di claude.ai/code. Kecuali Anda memulai runner dengan [`--remove-session-state`](/docs/id/self-hosted-environments-reference#runner-cli-flags), itu juga menyimpan log sesi yang gagal di disk dan mencetak jalurnya dalam log runner.592Setiap proses anak sesi menulis log debug terpisah. Pada kegagalan runner menampilkan ekor log bersama sesi di claude.ai/code. Kecuali Anda memulai runner dengan [`--remove-session-state`](/docs/id/self-hosted-environments-reference#runner-cli-flags), itu juga menyimpan log sesi yang gagal di disk dan mencetak jalurnya dalam log runner.

556 593 

594<h3 id="when-the-runner-exits">

595 When the runner exits

596</h3>

597 

598Jangan mulai ulang [runner on-demand](/docs/id/self-hosted-environments-configuration#on-demand-runners), karena pesanan kerjanya adalah single-use. Runner yang keluar tepat setelah dimulai memerlukan penanganan yang berbeda dari yang keluar karena alasan lain.

599 

600* **Keluar normal**: runner menyelesaikan sesi-sesinya dan mengalirkan, mencapai waktu pensiun-nya, atau diperintahkan untuk berhenti. Mulai ulang sehingga lingkungan memiliki kapasitas lagi. [Runner lifecycle](/docs/id/self-hosted-environments#runner-lifecycle) menjelaskan keluar ini.

601* **Awal yang gagal**: runner tidak dapat dimulai dengan konfigurasi atau host yang diberikan, jadi itu keluar dalam hitungan detik setelah dimulai, dan itu keluar dengan cara yang sama setiap kali Anda memulainya ulang. Memulai ulang lebih cepat tidak membantu. Seseorang perlu membaca output-nya dan memperbaiki penyebabnya.

602 

603Konfigurasikan supervisor Anda untuk memulai ulang runner kapan pun itu keluar, untuk menunggu lebih lama antara restart ketika runner terus keluar tepat setelah dimulai, dan untuk memberitahu seseorang ketika itu terus terjadi.

604 

605<h4 id="recognize-a-failed-start">

606 Recognize a failed start

607</h4>

608 

609Ketika runner tidak dapat dimulai, itu mencetak baris yang mengatakan mengapa, dan kemudian itu keluar. Untuk sebagian besar penyebab baris berisi `[runner:fatal]`. Untuk beberapa penyebab baris dimulai dengan `error:` sebagai gantinya, termasuk ketika runner tidak dapat mengurai flag-nya, tidak dapat membaca rahasia lingkungan, atau tidak dapat membuat atau menulis ke direktori dasar. Baris berikutnya kemudian menunjuk ke `--help`.

610 

611Sebagian besar baris log dimulai dengan timestamp dan `[self-hosted-runner]`, yang sampel di bawah ini tinggalkan. Misalnya, runner yang dimulai dengan proxy git Anthropic dan kapasitas di atas satu mencetak baris seperti ini:

612 

613```text theme={null}

614[runner:fatal] --use-anthropic-git-proxy requires --capacity 1 (the proxy URL is per-session and linked worktrees share origin). Omit --use-anthropic-git-proxy or set --capacity 1.

615```

616 

617Cari baris dalam output standar dan kesalahan standar runner, dalam log kontainer platform Anda, atau dalam file yang Anda atur dengan [`--log-file`](/docs/id/self-hosted-environments-reference#runner-cli-flags). Runner mencetak baris `error:` sebelum membuka file log, jadi cari di terminal atau log kontainer Anda, seperti yang dicatat [Troubleshooting](#troubleshooting).

618 

619Ini juga membantu ketika Anda membaca awal yang gagal:

620 

621* **Tidak ada baris sama sekali**: runner yang host bunuh tidak mencetak keduanya. Jika output berakhir tanpa baris `[runner:fatal]` dan tanpa baris `error:`, periksa apakah host atau orchestrator Anda menghentikan proses, misalnya karena melampaui batas memori.

622* **Kode keluar**: runner tidak menyisihkan kode keluar untuk kesalahan yang berulang pada setiap awal. Itu keluar dengan kode yang sama untuk kesalahan konfigurasi, seperti kombinasi flag yang tidak didukung, dan untuk kegagalan yang dapat menghapus dirinya sendiri, seperti API tetap tidak dapat dijangkau melalui retry runner sendiri. Dasarkan keputusan untuk menunggu lebih lama pada seberapa cepat runner keluar, dan baca output runner untuk mengetahui mengapa.

623* **Lingkungan yang terlihat sehat**: beberapa langkah startup berjalan setelah runner mendaftar dengan lingkungan Anda, seperti [`--configure-git`](#let-the-runner-configure-git) dan penyiapan kredensial proxy git Anthropic. Jika salah satu langkah itu gagal, lingkungan dapat terus mencantumkan runner itu selama beberapa menit setelah proses telah keluar, dan halaman **Cloud environments** dapat membaca **Healthy** sementara tidak ada runner yang mengambil pekerjaan. Jika sesi tetap antri di lingkungan yang terlihat sehat, periksa apakah supervisor Anda memulai ulang runner.

624 

625<h4 id="restart-with-a-wait-that-grows">

626 Restart with a wait that grows

627</h4>

628 

629Bagaimana Anda mendapatkan wait yang tumbuh tergantung pada supervisor Anda.

630 

631* **Kubernetes**: [Deployment](#kubernetes) di halaman ini tidak memerlukan perubahan. Setelah kontainer keluar, kubelet secara default menunggu sebelum memulai ulang kontainer, dan wait tumbuh pada setiap restart hingga batas. Wait dimulai ulang setelah kontainer telah berjalan untuk sementara tanpa keluar.

632 

633 Kubelet menerapkan wait yang sama setelah keluar normal ketika kontainer hanya berjalan sebentar. Runner yang mengalirkan sering dapat menunjukkan status `CrashLoopBackOff` juga, jadi baca output sebelum Anda menyimpulkan bahwa runner tidak dapat dimulai. Perintah di bawah membaca output run terakhir dari satu pod Deployment:

634 

635 ```bash theme={null}

636 kubectl logs --previous -n claude-runners deploy/claude-runner

637 ```

638 

639 Ketika run terakhir adalah awal yang gagal, baris `[runner:fatal]` atau `error:` ada di antara baris terakhir output. Untuk membaca run terakhir pod lain, beri nama pod itu sebagai pengganti `deploy/claude-runner`.

640* **Docker dan Docker Compose**: [Compose recipe](#docker-compose) di halaman ini tidak memerlukan perubahan. Dengan `restart: always`, Docker menunggu lebih lama sebelum setiap restart kontainer yang terus keluar, hingga batas. Ganti `<container>` dengan nama kontainer dalam perintah di bawah, yang membaca berapa kali Docker telah memulai ulang kontainer:

641 

642 ```bash theme={null}

643 docker inspect --format '{{.RestartCount}}' <container>

644 ```

645 

646 Perintah mencetak angka. Angka yang terus meningkat berarti Docker terus memulai ulang runner.

647* **Unit systemd**: secara default systemd menunggu `RestartSec` yang sama sebelum setiap restart dan tidak memanjangkannya, jadi unit dengan `Restart=always` memulai ulang runner yang tidak dapat dimulai pada interval yang sama setiap kali. Ketika awal datang cukup cepat untuk mencapai batas laju awal unit, lima awal dalam 10 detik secara default, systemd berhenti memulai ulang unit. Unit tetap berhenti sampai seseorang memulainya lagi, yang systemd izinkan setelah interval batas laju telah berlalu atau setelah `systemctl reset-failed`. Karena `RestartSec` berlaku untuk setiap restart, nilai yang lebih lama juga menunda restart setelah keluar normal. Pilih nilai yang menyeimbangkan keduanya, dan beri peringatan pada jumlah restart unit.

648* **Loop shell atau supervisor Anda sendiri**: terapkan aturan yang sama sendiri. Mulai dengan wait lima detik. Setelah setiap run yang berakhir dalam satu menit, gandakan wait untuk restart berikutnya, hingga lima menit. Setelah run yang berlangsung satu menit atau lebih, kembali ke lima detik.

649 

650<h4 id="check-why-the-runner-keeps-exiting">

651 Check why the runner keeps exiting

652</h4>

653 

654Ketika runner telah keluar tepat setelah memulai beberapa kali berturut-turut, berhenti dan periksa ini sebelum memulainya ulang lagi.

655 

656* **Baris `[runner:fatal]` atau `error:` terakhir**: itu mengatakan mengapa runner berhenti. [Troubleshooting](#troubleshooting) mencantumkan penyebab umum.

657* **Kombinasi flag**: [proxy git Anthropic](#use-the-anthropic-git-proxy) memerlukan `--capacity 1`. Resep di halaman ini menggunakan kapasitas yang lebih tinggi, jadi turunkan ketika Anda menambahkan proxy ke salah satunya.

658* **Apa yang dapat dijangkau layanan lingkungan**: jika runner dimulai dengan tangan dan gagal di bawah supervisor Anda, bandingkan pengguna, direktori home, `PATH`, dan batas memori. `--configure-git` dan proxy git Anthropic memerlukan git pada `PATH` dan `~/.gitconfig` yang dapat ditulis.

659* **Rahasia lingkungan**: jika Anda mencabut rahasia atau salah mengetik, runner mencetak baris yang berisi `RegisterRunner auth failed`.

660* **Tab Activity lingkungan**: buka lingkungan dan pilih **Activity**. Jika runner baru terus muncul di sana dan tidak ada yang mengambil pekerjaan, supervisor Anda memulai ulang runner.

661 

662Untuk diagnosis terpandu pada host runner, jalankan [subperintah doctor](#troubleshooting).

663 

557<h2 id="what’s-next">664<h2 id="what’s-next">

558 Apa selanjutnya665 Apa selanjutnya

559</h2>666</h2>

Details

105 </Step>105 </Step>

106</Steps>106</Steps>

107 107 

108Runner keluar dengan desain setelah sesi aktifnya selesai; lihat [Runner lifecycle](/docs/id/self-hosted-environments#runner-lifecycle). Untuk produksi, terapkan di bawah orkestrator yang memulai ulang saat keluar. Lihat [Terapkan ke produksi](/docs/id/self-hosted-environments-deploy).108Runner keluar dengan desain setelah sesi aktifnya selesai; lihat [Runner lifecycle](/docs/id/self-hosted-environments#runner-lifecycle). Untuk produksi, terapkan di bawah orkestrator yang memulai ulang saat keluar dan menunggu lebih lama antara restart ketika runner terus keluar tepat setelah dimulai. Lihat [Terapkan ke produksi](/docs/id/self-hosted-environments-deploy) dan [Ketika runner keluar](/docs/id/self-hosted-environments-deploy#when-the-runner-exits).

109 109 

110<h2 id="send-a-follow-up-message-to-a-running-session">110<h2 id="send-a-follow-up-message-to-a-running-session">

111 Kirim pesan lanjutan ke sesi yang berjalan111 Kirim pesan lanjutan ke sesi yang berjalan

Details

80 Flag SCM connector80 Flag SCM connector

81</h3>81</h3>

82 82 

83Orchestrator dapat menahan koneksi WebSocket berdiri ke control plane Anthropic sehingga hosted pre-session flow, seperti repository picker dan branch atau ref resolver, dapat menjangkau host GitHub Enterprise Server yang hanya dapat dirutekan dari dalam jaringan Anda. Connector tetap off kecuali Anda mengatur `--scm-connector-host`.83SCM connector tidak tersedia, jadi biarkan flag di bagian ini tidak diatur. Jika Anda mengatur `--scm-connector-host`, koneksi tidak terbuka, dan orchestrator terus mencoba lagi. Runner masih dimulai saat session queue.

84 

85Connector adalah koneksi WebSocket berdiri dari orchestrator ke control plane Anthropic. Dirancang untuk membiarkan hosted pre-session flows, seperti repository picker dan branch atau ref resolver, menjangkau host GitHub Enterprise Server yang hanya dapat dirutekan dari dalam jaringan Anda. Lihat [Network requirements](/docs/id/github-enterprise-server#network-requirements) di halaman GitHub Enterprise Server untuk apa yang dibutuhkan flows tersebut.

84 86 

85| Flag | Default | Description |87| Flag | Default | Description |

86| :- | :- | :- |88| :- | :- | :- |

87| `--scm-connector-host <host[:port]>` | unset | Hostname GitHub Enterprise Server untuk meneruskan permintaan ke. Port default ke `443`. Mengatur flag ini mengaktifkan connector. |89| `--scm-connector-host <host[:port]>` | unset | Hostname GitHub Enterprise Server untuk meneruskan permintaan ke. Port default ke `443`. |

88| `--scm-connector-id <n>` | required with `--scm-connector-host` | ID numerik koneksi GitHub Enterprise Server organisasi Anda. Hubungi tim akun Anthropic Anda untuk nilai ketika Anda mengaktifkan connector. |90| `--scm-connector-id <n>` | required with `--scm-connector-host` | ID numerik koneksi GitHub Enterprise Server organisasi Anda. |

89| `--scm-connector-provider <slug>` | `ghe` | Segmen path mengidentifikasi provider, cocok dengan `^[a-z0-9-]{1,32}$`. |91| `--scm-connector-provider <slug>` | `ghe` | Segmen path mengidentifikasi provider, cocok dengan `^[a-z0-9-]{1,32}$`. |

90| `--scm-connector-ca-file <path>` | unset | Bundle CA ekstra, dalam format PEM, untuk koneksi TLS ke host GitHub Enterprise Server. |92| `--scm-connector-ca-file <path>` | unset | Bundle CA ekstra, dalam format PEM, untuk koneksi TLS ke host GitHub Enterprise Server. |

91| `--scm-connector-host-rewrite <from>=<to_host:to_port>` | unset | Untuk pengujian end-to-end saja: mengalihkan koneksi TCP sambil menjaga header Host dan TLS SNI sebagai `--scm-connector-host`. |93| `--scm-connector-host-rewrite <from>=<to_host:to_port>` | unset | Untuk pengujian end-to-end saja: mengalihkan koneksi TCP sambil menjaga header Host dan TLS SNI sebagai `--scm-connector-host`. |

92 94 

93Connector mengautentikasi dengan rahasia lingkungan orchestrator yang ada dan reconnect secara otomatis: dengan exponential backoff pada koneksi yang dijatuhkan, atau delay tetap 30-detik ketika control plane menutup koneksi karena replika orchestrator lain sudah memegangnya.95Pada setiap percobaan koneksi orchestrator mengirimkan rahasia lingkungan yang ada, dan itu mencoba lagi secara otomatis dengan exponential backoff, dibatasi pada 30 detik plus jitter.

94 96 

95<h2 id="environment-variable-only-settings">97<h2 id="environment-variable-only-settings">

96 Pengaturan variabel-lingkungan-saja98 Pengaturan variabel-lingkungan-saja

Details

595| [`agent`](#agent) | Mulai setiap sesi sebagai [subagent](/docs/id/sub-agents) bernama dengan prompt, alat, dan modelnya | Agents, sessions, and worktrees | Any file |595| [`agent`](#agent) | Mulai setiap sesi sebagai [subagent](/docs/id/sub-agents) bernama dengan prompt, alat, dan modelnya | Agents, sessions, and worktrees | Any file |

596| [`agentPushNotifEnabled`](#agentpushnotifenabled) | Biarkan Claude mengirim [notifikasi push ke ponsel Anda](/docs/id/remote-control#mobile-push-notifications) ketika Claude memutuskan untuk melakukannya | Remote, desktop, and notifications | Any file |596| [`agentPushNotifEnabled`](#agentpushnotifenabled) | Biarkan Claude mengirim [notifikasi push ke ponsel Anda](/docs/id/remote-control#mobile-push-notifications) ketika Claude memutuskan untuk melakukannya | Remote, desktop, and notifications | Any file |

597| [`allowAllClaudeAiMcps`](#allowallclaudeaimcps) | Muat [konektor claude.ai](/docs/id/mcp) yang Claude Code ambil sendiri bersama dengan [`managed-mcp.json`](/docs/id/managed-mcp#exclusive-control-with-managed-mcp-json) yang diterapkan | MCP | Managed |597| [`allowAllClaudeAiMcps`](#allowallclaudeaimcps) | Muat [konektor claude.ai](/docs/id/mcp) yang Claude Code ambil sendiri bersama dengan [`managed-mcp.json`](/docs/id/managed-mcp#exclusive-control-with-managed-mcp-json) yang diterapkan | MCP | Managed |

598| [`allowClaudeInChromeWithManagedMcp`](#allowclaudeinchromewithmanagedmcp) | Biarkan server [Claude in Chrome](/docs/id/chrome) bawaan berjalan bersama dengan [`managed-mcp.json`](/docs/id/managed-mcp#exclusive-control-with-managed-mcp-json) yang diterapkan | MCP | Managed |

598| [`allowedChannelPlugins`](#allowedchannelplugins) | Ganti daftar izin default [plugin channel](/docs/id/channels#restrict-which-channel-plugins-can-run) yang dapat mendorong pesan | Plugins and skills | Managed |599| [`allowedChannelPlugins`](#allowedchannelplugins) | Ganti daftar izin default [plugin channel](/docs/id/channels#restrict-which-channel-plugins-can-run) yang dapat mendorong pesan | Plugins and skills | Managed |

599| [`allowedHttpHookUrls`](#allowedhttphookurls) | Batasi URL mana yang dapat ditargetkan oleh [HTTP hooks](/docs/id/hooks) | Hooks and automation | Any file |600| [`allowedHttpHookUrls`](#allowedhttphookurls) | Batasi URL mana yang dapat ditargetkan oleh [HTTP hooks](/docs/id/hooks) | Hooks and automation | Any file |

600| [`allowedMcpServers`](#allowedmcpservers) | Daftar izin server [MCP](/docs/id/mcp) mana yang dapat ditambahkan pengguna | MCP | Any file |601| [`allowedMcpServers`](#allowedmcpservers) | Daftar izin server [MCP](/docs/id/mcp) mana yang dapat ditambahkan pengguna | MCP | Any file |


3064</h4>3065</h4>

3065 3066 

3066* Nilai di sini menimpa variabel yang sama yang diekspor di shell Anda, dan ketika lebih dari satu file pengaturan menetapkan variabel, [yang dengan preseden tertinggi](/docs/id/settings#settings-precedence) berlaku. [Variabel yang Claude Code abaikan dalam `env`](#variables-claude-code-ignores-in-env) mencantumkan pengecualian untuk pengaturan proyek dan lokal.3067* Nilai di sini menimpa variabel yang sama yang diekspor di shell Anda, dan ketika lebih dari satu file pengaturan menetapkan variabel, [yang dengan preseden tertinggi](/docs/id/settings#settings-precedence) berlaku. [Variabel yang Claude Code abaikan dalam `env`](#variables-claude-code-ignores-in-env) mencantumkan pengecualian untuk pengaturan proyek dan lokal.

3068* Ketika aplikasi Claude Desktop atau [lingkungan self-hosted](/docs/id/self-hosted-environments) runner memulai sesi, lingkungan peluncuran yang dibangunnya mengambil alih: Claude Code mengabaikan nilai `env` dari file pengaturan apa pun untuk variabel yang sudah ditetapkan lingkungan peluncuran. [Debug log](/docs/id/debug-your-config) menyebutkan setiap variabel yang diabaikan.

3067* Untuk membatalkan ekspor shell, atur variabel ke `""`. Claude Code memperlakukan nilai kosong sebagai tidak diatur untuk pemilihan penyedia, dan subproses mewarisi nilai kosong.3069* Untuk membatalkan ekspor shell, atur variabel ke `""`. Claude Code memperlakukan nilai kosong sebagai tidak diatur untuk pemilihan penyedia, dan subproses mewarisi nilai kosong.

3068* `NO_COLOR` dan `FORCE_COLOR` yang ditetapkan di sini hanya mencapai subproses. Untuk mengubah warna antarmuka Claude Code sendiri, atur di shell Anda sebelum meluncurkan `claude`.3070* `NO_COLOR` dan `FORCE_COLOR` yang ditetapkan di sini hanya mencapai subproses. Untuk mengubah warna antarmuka Claude Code sendiri, atur di shell Anda sebelum meluncurkan `claude`.

3069* Nilai di sini adalah teks biasa dalam file pengaturan dan mencapai setiap subproses yang dimulai Claude Code. Untuk token pembawa OTLP yang berputar, gunakan [`otelHeadersHelper`](#otelheadershelper); untuk kredensial API, gunakan [`apiKeyHelper`](#apikeyhelper).3071* Nilai di sini adalah teks biasa dalam file pengaturan dan mencapai setiap subproses yang dimulai Claude Code. Untuk token pembawa OTLP yang berputar, gunakan [`otelHeadersHelper`](#otelheadershelper); untuk kredensial API, gunakan [`apiKeyHelper`](#apikeyhelper).


5157 5159 

5158[`allowedMcpServers`](#allowedmcpservers) dan [`deniedMcpServers`](#deniedmcpservers) masih berlaku untuk konektor yang kunci ini muat. Konektor yang dikirimkan ke [sesi cloud](/docs/id/claude-code-on-the-web) yang hostnya membawa `managed-mcp.json`, seperti runner yang di-host sendiri, tetap ditekan. Lihat [Izinkan konektor claude.ai bersama dengan set yang dikelola](/docs/id/managed-mcp#allow-claude-ai-connectors-alongside-the-managed-set).5160[`allowedMcpServers`](#allowedmcpservers) dan [`deniedMcpServers`](#deniedmcpservers) masih berlaku untuk konektor yang kunci ini muat. Konektor yang dikirimkan ke [sesi cloud](/docs/id/claude-code-on-the-web) yang hostnya membawa `managed-mcp.json`, seperti runner yang di-host sendiri, tetap ditekan. Lihat [Izinkan konektor claude.ai bersama dengan set yang dikelola](/docs/id/managed-mcp#allow-claude-ai-connectors-alongside-the-managed-set).

5159 5161 

5162<h3 id="allowclaudeinchromewithmanagedmcp">

5163 `allowClaudeInChromeWithManagedMcp`

5164</h3>

5165 

5166Biarkan server [Claude di Chrome](/docs/id/chrome) bawaan berjalan bersama dengan `managed-mcp.json` yang diterapkan. Tanpa kunci ini, `managed-mcp.json` yang diterapkan memblokir Claude di Chrome dalam sesi terminal. Memerlukan Claude Code v2.1.282 atau lebih baru.

5167 

5168* **Scope**: [`Managed`](#scopes), dari pengaturan yang dikelola perangkat itu sendiri saja: plist yang diterapkan MDM atau kunci registri HKLM, atau file `managed-settings.json` sistem. Claude Code mengabaikannya dalam pengaturan yang dikelola server, dalam registri HKCU yang dapat ditulis pengguna, dan dalam pengaturan pengguna atau proyek.

5169* **Type**: Boolean

5170 * `true`: server Claude di Chrome bawaan dapat berjalan bersama dengan `managed-mcp.json` yang diterapkan

5171 * `false`: `managed-mcp.json` yang diterapkan memblokir Claude di Chrome dalam sesi terminal

5172* **Default**: `false`, jadi `managed-mcp.json` yang diterapkan memblokir Claude di Chrome dalam sesi terminal

5173 

5174```json managed-settings.json theme={null}

5175{

5176 "allowClaudeInChromeWithManagedMcp": true

5177}

5178```

5179 

5180Entri [`deniedMcpServers`](#deniedmcpservers) untuk `claude-in-chrome` masih memblokir server dengan kunci ini aktif. Lihat [Izinkan Claude di Chrome bersama dengan set yang dikelola](/docs/id/managed-mcp#allow-claude-in-chrome-alongside-the-managed-set).

5181 

5160<h3 id="allowedmcpservers">5182<h3 id="allowedmcpservers">

5161 `allowedMcpServers`5183 `allowedMcpServers`

5162</h3>5184</h3>

5163 5185 

5164Daftar putih server MCP yang dapat ditambahkan orang. Claude Code memblokir server apa pun yang tidak cocok dengan entri di mana pun didefinisikan, termasuk server plugin, server yang dilewatkan dengan `--mcp-config`, dan server dari claude.ai.5186Daftar putih server MCP yang dapat ditambahkan orang. Claude Code memblokir server apa pun yang tidak cocok dengan entri di mana pun didefinisikan, termasuk server plugin, server yang dilewatkan dengan `--mcp-config`, dan server dari claude.ai.

5165 5187 

5166Server bawaan seperti Claude di Chrome, server `ide` yang Claude Code terhubung dalam [VS Code](/docs/id/vs-code#the-built-in-ide-mcp-server) atau [JetBrains](/docs/id/jetbrains#the-built-in-ide-mcp-server) IDE yang sedang berjalan, dan server yang CLI sendiri konfigurasi dikecualikan dari daftar putih, dan daftar hitam masih berlaku untuk mereka. Server `type: "sdk"` dalam proses dikecualikan dari kedua daftar; [aplikasi yang memulai sesi](/docs/id/mcp#how-connectors-reach-claude-code) mendaftarkan mereka.5188Server bawaan seperti Claude di Chrome, server `ide` yang Claude Code terhubung dalam [VS Code](/docs/id/vs-code#the-built-in-ide-mcp-server) atau [JetBrains](/docs/id/jetbrains#the-built-in-ide-mcp-server) IDE yang sedang berjalan, dan server yang CLI sendiri konfigurasi dikecualikan dari daftar putih, dan daftar hitam masih berlaku untuk mereka. Pada Claude Code v2.1.268 atau lebih baru, alat Slack sesi [Claude Tag](/docs/id/claude-tag) juga dikecualikan dari daftar putih, dan daftar hitam masih berlaku untuk mereka. Server `type: "sdk"` dalam proses dikecualikan dari kedua daftar; [aplikasi yang memulai sesi](/docs/id/mcp#how-connectors-reach-claude-code) mendaftarkan mereka.

5167 5189 

5168Server yang organisasi Anda berikan juga dikecualikan dari daftar putih, dan daftar hitam masih berlaku untuk mereka. Pengecualian mencakup setiap entri [`managedMcpServers`](#managedmcpservers), dan entri [`managed-mcp.json`](/docs/id/managed-mcp#exclusive-control-with-managed-mcp-json) apa pun yang nilainya tidak menggunakan ekspansi `${VAR}`. Lihat [Bagaimana server dievaluasi](/docs/id/managed-mcp#how-a-server-is-evaluated) untuk urutan pemeriksaan lengkap. Sebelum v2.1.259, server dari `managed-mcp.json` juga harus cocok.5190Server yang organisasi Anda berikan juga dikecualikan dari daftar putih, dan daftar hitam masih berlaku untuk mereka. Pengecualian mencakup setiap entri [`managedMcpServers`](#managedmcpservers), dan entri [`managed-mcp.json`](/docs/id/managed-mcp#exclusive-control-with-managed-mcp-json) apa pun yang nilainya tidak menggunakan ekspansi `${VAR}`. Lihat [Bagaimana server dievaluasi](/docs/id/managed-mcp#how-a-server-is-evaluated) untuk urutan pemeriksaan lengkap. Sebelum v2.1.259, server dari `managed-mcp.json` juga harus cocok.

5169 5191 


6304 `disableSideloadFlags`6326 `disableSideloadFlags`

6305</h3>6327</h3>

6306 6328 

6307Tolak flag CLI `--plugin-dir`, `--plugin-url`, `--agents`, dan `--mcp-config` saat startup, yang dapat digunakan pengguna untuk melewati [`strictKnownMarketplaces`](#strictknownmarketplaces) untuk satu kali jalankan. Claude Code keluar dengan kesalahan yang menyebutkan flag yang ditolak, dan menerapkan pemeriksaan yang sama ke permukaan yang memulai CLI dengan flag ini secara internal, saat ini [Cowork](/docs/id/desktop) sesi lokal di aplikasi desktop. Dalam [sesi cloud](/docs/id/claude-code-on-the-web), Claude Code menghapus server MCP yang dikirimkan server melalui `--mcp-config`, kecuali entri `type: "sdk"` dalam proses, dan memulai sesi. Memerlukan Claude Code v2.1.193 atau lebih baru.6329Tolak flag CLI `--plugin-dir`, `--plugin-url`, `--agents`, dan `--mcp-config` saat startup, yang dapat digunakan pengguna untuk melewati [`strictKnownMarketplaces`](#strictknownmarketplaces) untuk satu kali jalankan. Claude Code keluar dengan kesalahan yang menyebutkan flag yang ditolak, dan menerapkan pemeriksaan yang sama ke permukaan yang memulai CLI dengan flag ini secara internal, saat ini [Cowork](/docs/id/desktop) sesi lokal di aplikasi desktop. Dalam [sesi cloud](/docs/id/claude-code-on-the-web), Claude Code malah memulai sesi dan menghapus setiap entri `--mcp-config` yang dikirimkan server kecuali entri `type: "sdk"` dalam proses dan alat Slack sesi [Claude Tag](/docs/id/claude-tag). Memerlukan Claude Code v2.1.193 atau lebih baru.

6308 6330 

6309* **Scope**: [`Managed`](#scopes)6331* **Scope**: [`Managed`](#scopes)

6310* **Type**: Boolean6332* **Type**: Boolean

6311 * `true`: Claude Code menolak `--plugin-dir`, `--plugin-url`, `--agents`, dan `--mcp-config` saat startup dan keluar dengan kesalahan yang menyebutkannya, kecuali dalam sesi cloud di mana ia menghapus server MCP yang dikirimkan server melalui `--mcp-config`, kecuali entri `type: "sdk"` dalam proses, dan memulai sesi6333 * `true`: Claude Code menolak `--plugin-dir`, `--plugin-url`, `--agents`, dan `--mcp-config` saat startup dan keluar dengan kesalahan yang menyebutkannya. Dalam sesi cloud, ia malah memulai sesi dan menghapus setiap entri `--mcp-config` yang dikirimkan server kecuali entri `type: "sdk"` dalam proses dan alat Slack sesi Claude Tag

6312 * `false`: Claude Code menerima flag tersebut6334 * `false`: Claude Code menerima flag tersebut

6313* **Default**: `false`6335* **Default**: `false`

6314 6336 


6322 6344 

6323Pemeriksaan yang sama mencakup folder plugin yang dinamai dalam variabel lingkungan [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/id/env-vars#variables), yang memerlukan Claude Code v2.1.280 atau lebih baru. Ketika variabel menyebutkan folder, Claude Code keluar dengan kesalahan yang sama, dan kesalahan mengatakan untuk membatalkan pengaturan variabel.6345Pemeriksaan yang sama mencakup folder plugin yang dinamai dalam variabel lingkungan [`CLAUDE_CODE_PLUGIN_DIRS`](/docs/id/env-vars#variables), yang memerlukan Claude Code v2.1.280 atau lebih baru. Ketika variabel menyebutkan folder, Claude Code keluar dengan kesalahan yang sama, dan kesalahan mengatakan untuk membatalkan pengaturan variabel.

6324 6346 

6325Dalam sesi cloud, Claude Code juga mengabaikan pembaruan MCP yang dikirimkan server di tengah sesi, jalur di balik konfigurasi sesi cloud dan SDK `setMcpServers()` pada pekerja jarak jauh. Entri `type: "sdk"` dalam proses tetap dikecualikan di sana juga. Sebelum v2.1.239, `--mcp-config` yang dikirimkan server memblokir sesi cloud dari dimulai.6347Dalam sesi cloud, Claude Code juga mengabaikan pembaruan MCP yang dikirimkan server di tengah sesi, jalur di balik konfigurasi sesi cloud dan panggilan SDK `setMcpServers()` yang mencapai sesi tersebut. Entri `type: "sdk"` dalam proses dan alat Slack sesi Claude Tag tetap dikecualikan di sana juga. Sebelum v2.1.268, baik penghapusan ini maupun penghapusan startup juga menghapus alat Slack sesi Claude Tag. Sebelum v2.1.239, `--mcp-config` yang dikirimkan server memblokir sesi cloud dari dimulai.

6326 6348 

6327<h3 id="forceremotesettingsrefresh">6349<h3 id="forceremotesettingsrefresh">

6328 `forceRemoteSettingsRefresh`6350 `forceRemoteSettingsRefresh`

statusline.md +1 −1

Details

1178**Persentase konteks menampilkan nilai yang tidak terduga**1178**Persentase konteks menampilkan nilai yang tidak terduga**

1179 1179 

1180* Gunakan `used_percentage` untuk keadaan konteks yang paling akurat dan sederhana1180* Gunakan `used_percentage` untuk keadaan konteks yang paling akurat dan sederhana

1181* Persentase konteks mungkin berbeda dari output `/context` karena kapan masing-masing dihitung1181* Baris status melaporkan hitungan dari respons API terakhir, sementara `/context` menambahkan estimasi untuk pesan yang ditambahkan sejak respons itu, jadi `/context` dapat membaca lebih tinggi sampai respons berikutnya

1182 1182 

1183**Tautan OSC 8 tidak dapat diklik**1183**Tautan OSC 8 tidak dapat diklik**

1184 1184 

sub-agents.md +4 −4

Details

30 Subagent bawaan30 Subagent bawaan

31</h2>31</h2>

32 32 

33Claude Code mencakup subagent bawaan yang Claude gunakan secara otomatis jika sesuai. Masing-masing mewarisi izin percakapan induk; sebagian besar berjalan dengan set alat yang terbatas.33Claude Code mencakup subagent bawaan yang Claude gunakan secara otomatis jika sesuai. Masing-masing mewarisi aturan izin percakapan induk; sebagian besar berjalan dengan set alat yang terbatas.

34 34 

35Explore dan Plan melewati file CLAUDE.md Anda dan status git sesi induk untuk menjaga penelitian tetap cepat dan hemat biaya. Setiap subagent bawaan lainnya dan [subagent khusus](#configure-subagents) memuat keduanya, kecuali definisinya menetapkan bidang [`omitClaudeMd`](#supported-frontmatter-fields) untuk melewati file CLAUDE.md pengguna, proyek, dan lokal. Untuk rincian lengkap tentang apa yang mencapai subagent, lihat [apa yang dimuat saat startup](#what-loads-at-startup).35Explore dan Plan melewati file CLAUDE.md Anda dan status git sesi induk untuk menjaga penelitian tetap cepat dan hemat biaya. Setiap subagent bawaan lainnya dan [subagent khusus](#configure-subagents) memuat keduanya, kecuali definisinya menetapkan bidang [`omitClaudeMd`](#supported-frontmatter-fields) untuk melewati file CLAUDE.md pengguna, proyek, dan lokal. Untuk rincian lengkap tentang apa yang mencapai subagent, lihat [apa yang dimuat saat startup](#what-loads-at-startup).

36 36 


800 - matcher: "Bash"800 - matcher: "Bash"

801 hooks:801 hooks:

802 - type: command802 - type: command

803 command: "./scripts/validate-command.sh $TOOL_INPUT"803 command: "./scripts/validate-command.sh"

804 PostToolUse:804 PostToolUse:

805 - matcher: "Edit|Write"805 - matcher: "Edit|Write"

806 hooks:806 hooks:


874 874 

875* **Bahasa alami**: sebutkan subagent dalam prompt Anda; Claude memutuskan apakah akan mendelegasikan875* **Bahasa alami**: sebutkan subagent dalam prompt Anda; Claude memutuskan apakah akan mendelegasikan

876* **@-mention**: menjamin subagent berjalan untuk satu tugas876* **@-mention**: menjamin subagent berjalan untuk satu tugas

877* **Sesi-lebar**: seluruh sesi menggunakan prompt sistem subagent, pembatasan alat, dan model melalui flag `--agent` atau pengaturan `agent`877* **Sesi-lebar**: seluruh sesi berjalan sebagai subagent itu melalui flag `--agent` atau pengaturan `agent`

878 878 

879Untuk bahasa alami, tidak ada sintaks khusus. Sebutkan subagent dan Claude biasanya mendelegasikan:879Untuk bahasa alami, tidak ada sintaks khusus. Sebutkan subagent dan Claude biasanya mendelegasikan:

880 880 


895 895 

896Anda juga dapat mengetik mention secara manual tanpa menggunakan picker: `@agent-<name>` untuk subagent lokal, atau `@agent-` diikuti dengan nama yang dibatasi untuk subagent plugin, misalnya `@agent-my-plugin:code-reviewer`. Saat Anda mengetik formulir ini, typeahead menampilkan kecocokan file daripada agen. Penyebutan agen masih diselesaikan saat Anda mengirimkan.896Anda juga dapat mengetik mention secara manual tanpa menggunakan picker: `@agent-<name>` untuk subagent lokal, atau `@agent-` diikuti dengan nama yang dibatasi untuk subagent plugin, misalnya `@agent-my-plugin:code-reviewer`. Saat Anda mengetik formulir ini, typeahead menampilkan kecocokan file daripada agen. Penyebutan agen masih diselesaikan saat Anda mengirimkan.

897 897 

898**Jalankan seluruh sesi sebagai subagent.** Lewatkan [`--agent <name>`](/docs/id/cli-reference) untuk memulai sesi di mana thread utama itu sendiri mengambil prompt sistem subagent, pembatasan alat, dan model:898**Jalankan seluruh sesi sebagai subagent.** Lewatkan [`--agent <name>`](/docs/id/cli-reference) untuk memulai sesi di mana thread utama itu sendiri mengambil pembatasan alat dan model subagent:

899 899 

900```bash theme={null}900```bash theme={null}

901claude --agent code-reviewer901claude --agent code-reviewer

Details

122 122 

123 <tr>123 <tr>

124 <td>Penagihan</td>124 <td>Penagihan</td>

125 <td><strong>Teams:</strong> \$150/seat (Premium) dengan PAYG tersedia<br /><strong>Enterprise:</strong> <a href="https://claude.com/contact-sales?utm_source=claude_code&utm_medium=docs&utm_content=third_party_enterprise">Hubungi Penjualan</a></td>125 <td><strong>Teams:</strong> langganan per-seat dengan PAYG tersedia, lihat <a href="https://claude.com/pricing?utm_source=claude_code&utm_medium=docs&utm_content=third_party_pricing#team-&-enterprise">harga</a><br /><strong>Enterprise:</strong> <a href="https://claude.com/contact-sales?utm_source=claude_code&utm_medium=docs&utm_content=third_party_enterprise">Hubungi Penjualan</a></td>

126 <td>PAYG</td>126 <td>PAYG</td>

127 <td>PAYG melalui AWS</td>127 <td>PAYG melalui AWS</td>

128 <td>PAYG melalui AWS Marketplace</td>128 <td>PAYG melalui AWS Marketplace</td>

Details

445 TLS or SSL connection errors445 TLS or SSL connection errors

446</h3>446</h3>

447 447 

448Error seperti `curl: (35) TLS connect error`, `schannel: next InitializeSecurityContext failed`, atau PowerShell's `Could not establish trust relationship for the SSL/TLS secure channel` menunjukkan kegagalan TLS handshake.448Error seperti ini berarti TLS handshake gagal:

449 

450* `curl: (35) TLS connect error`

451* `schannel: next InitializeSecurityContext failed`

452* PowerShell's `Could not create SSL/TLS secure channel`

453* PowerShell's `Could not establish trust relationship for the SSL/TLS secure channel`

449 454 

450**Solusi:**455**Solusi:**

451 456 

Details

52 File `.heapsnapshot` berisi setiap string dalam proses, termasuk percakapan lengkap Anda dan kredensial. Jangan lampirkan ke masalah publik atau bagikan.52 File `.heapsnapshot` berisi setiap string dalam proses, termasuk percakapan lengkap Anda dan kredensial. Jangan lampirkan ke masalah publik atau bagikan.

53</Warning>53</Warning>

54 54 

55Perintah juga mencetak ringkasan dalam percakapan, menampilkan resident set size, JS heap, array buffers, dan native memory yang tidak terhitung, ditambah indikator kebocoran apa pun yang terdeteksi, seperti tingkat pertumbuhan memori yang tinggi atau jumlah handle terbuka yang tidak biasa tinggi. Ringkasan mengatakan apakah sebagian besar memori berada di JS heap, yang ditangkap snapshot, atau di native memory, yang tidak.55Perintah juga mencetak ringkasan dalam percakapan, menampilkan total memori proses, berapa banyak yang ada di JS heap, dan berapa banyak yang berada di luar heap. Ringkasan juga mencantumkan indikator kebocoran apa pun, seperti tingkat pertumbuhan memori yang tinggi atau jumlah handle terbuka yang tidak biasa tinggi. Ringkasan mengatakan apakah sebagian besar memori berada di JS heap, yang ditangkap snapshot, atau di native memory, yang tidak.

56 56 

57Lakukan salah satu dari dua hal dengan output:57Lakukan salah satu dari dua hal dengan output:

58 58 

workflows.md +1 −1

Details

91 Tonton run91 Tonton run

92</h3>92</h3>

93 93 

94Alur kerja berjalan di latar belakang, jadi sesi tetap responsif sementara agen bekerja. Jalankan `/workflows` kapan saja untuk membuat daftar alur kerja yang sedang berjalan dan selesai, lalu pilih satu untuk membuka tampilan kemajuannya.94Alur kerja berjalan di latar belakang, jadi sesi tetap responsif sementara agen bekerja. Jalankan `/workflows` kapan saja untuk membuat daftar alur kerja yang sedang berjalan dan selesai, lalu pilih satu untuk membuka tampilan kemajuannya. Untuk menghentikan alur kerja yang sedang berjalan tanpa membukanya, pilih di daftar dan tekan `x`.

95 95 

96Tampilan kemajuan menunjukkan setiap fase dengan jumlah agen, total token, dan waktu yang telah berlalu. Footer mencantumkan kunci untuk setiap tindakan:96Tampilan kemajuan menunjukkan setiap fase dengan jumlah agen, total token, dan waktu yang telah berlalu. Footer mencantumkan kunci untuk setiap tindakan:

97 97