SpyBara
Go Premium

Documentation 2026-11-06 23:01 UTC to 2026-11-07 23:58 UTC

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

desktop.md +8 −3

Details

549Sesi lokal terhubung ketika Anda mengaktifkan Remote Control untuknya, atau ketika sesi tersebut terhubung secara otomatis saat dimulai:549Sesi lokal terhubung ketika Anda mengaktifkan Remote Control untuknya, atau ketika sesi tersebut terhubung secara otomatis saat dimulai:

550 550 

551* **Anda mengaktifkannya untuk sesi tersebut**: dengan sakelar **Remote Control** milik sesi tersebut, atau dengan mengetik `/remote-control` di kotak prompt-nya.551* **Anda mengaktifkannya untuk sesi tersebut**: dengan sakelar **Remote Control** milik sesi tersebut, atau dengan mengetik `/remote-control` di kotak prompt-nya.

552* **Sesi terhubung saat dimulai**: sesi baru terhubung secara otomatis selama **Connect new sessions to Remote Control** aktif di **Settings > Code** atau **Settings > Claude Code**. Jika Anda belum pernah mengubah pengaturan tersebut, Desktop mengikuti [`remoteControlAtStartup`](https://code.claude.com/docs/id/settings-reference#remotecontrolatstartup) di pengaturan pengguna atau pengaturan terkelola Anda, lalu default organisasi Anda.552* **Sesi terhubung saat dimulai**: sesi baru terhubung secara otomatis selama **Connect new sessions to Remote Control** aktif di **Settings > Code** atau **Settings > Claude Code**, kecuali [`remoteControlAtStartup`](https://code.claude.com/docs/id/settings-reference#remotecontrolatstartup) bernilai `false` di pengaturan terkelola. Jika Anda belum pernah mengubah **Connect new sessions to Remote Control**, Desktop menggunakan `remoteControlAtStartup` dari pengaturan pengguna atau pengaturan terkelola Anda. Jika keduanya tidak mengaturnya, Desktop menggunakan default organisasi Anda atau, jika tidak ada, default-nya sendiri.

553 553 

554Untuk melihat apakah sesi terhubung, periksa sakelar **Remote Control** di kartu **Environment** pada [panel detail sesi](#see-session-details)-nya.554Untuk melihat apakah sesi terhubung, periksa sakelar **Remote Control** di kartu **Environment** pada [panel detail sesi](#see-session-details)-nya.

555 555 

556Untuk menjaga agar sesi tidak muncul di perangkat Anda yang lain, matikan Remote Control pada tingkat yang Anda perlukan:556#### Jaga agar sesi tidak muncul di perangkat Anda yang lain

557 

558Matikan Remote Control untuk satu sesi, untuk sesi di komputer ini, atau untuk komputer yang Anda kelola:

557 559 

558* **Satu sesi**: matikan sakelar **Remote Control**-nya. Di sesi yang terhubung saat dimulai, mengetik `/remote-control` membiarkan Remote Control tetap aktif dan menampilkan `Remote Control is already on. This session connected automatically when it started.` Klik **Turn off** pada baris tersebut untuk memutuskan koneksi.560* **Satu sesi**: matikan sakelar **Remote Control**-nya. Di sesi yang terhubung saat dimulai, mengetik `/remote-control` membiarkan Remote Control tetap aktif dan menampilkan `Remote Control is already on. This session connected automatically when it started.` Klik **Turn off** pada baris tersebut untuk memutuskan koneksi.

559* **Sesi Desktop baru di komputer ini**: matikan **Connect new sessions to Remote Control** di **Settings > Code** atau **Settings > Claude Code**. Jika sudah menunjukkan nonaktif, aktifkan lalu matikan agar Desktop menyimpan pilihan Anda. Setelah disimpan, pengaturan ini diutamakan daripada `remoteControlAtStartup` dan default.561* **Sesi Desktop baru di komputer ini**: matikan **Connect new sessions to Remote Control** di **Settings > Code** atau **Settings > Claude Code**. Jika sudah menunjukkan nonaktif, aktifkan lalu matikan agar Desktop menyimpan pilihan Anda. Setelah disimpan, sesi baru tidak terhubung secara otomatis, bahkan ketika `remoteControlAtStartup` atau default menyatakan sebaliknya.

560* **Sesi apa pun di komputer ini, termasuk CLI**: atur [`disableRemoteControl`](https://code.claude.com/docs/id/settings-reference#disableremotecontrol) ke `true` di `~/.claude/settings.json` untuk mencegah sesi terhubung. Sesi yang sudah terhubung saat Anda menyimpan file tetap terhubung sampai Anda mematikan Remote Control untuknya.562* **Sesi apa pun di komputer ini, termasuk CLI**: atur [`disableRemoteControl`](https://code.claude.com/docs/id/settings-reference#disableremotecontrol) ke `true` di `~/.claude/settings.json` untuk mencegah sesi terhubung. Sesi yang sudah terhubung saat Anda menyimpan file tetap terhubung sampai Anda mematikan Remote Control untuknya.

563* **Sesi Desktop di komputer yang Anda kelola**: jika Anda mengatur `remoteControlAtStartup` ke `false` di [kebijakan MDM atau file pengaturan terkelola dengan peringkat tertinggi](https://code.claude.com/docs/id/managed-settings.md#how-claude-code-combines-managed-sources) pada sebuah komputer, sesi di komputer tersebut tidak terhubung secara otomatis, bahkan ketika kunci tersebut bernilai `true` di [pengaturan terkelola server](https://code.claude.com/docs/id/server-managed-settings.md). Jangan gunakan nilai registri `HKCU` tingkat pengguna untuk ini. Pengguna tetap dapat mengaktifkan Remote Control untuk sesi secara mandiri; untuk mencegahnya, gunakan [konsol admin](#admin-console-controls). Memerlukan Claude Desktop v4.4212.0 atau yang lebih baru.

561 564 

562Untuk menyembunyikan sesi yang sudah muncul di perangkat Anda yang lain, arsipkan sesi tersebut di Desktop. Desktop juga mengarsipkan salinan Remote Control dari sesi tersebut, sehingga sesi tersebut keluar dari daftar sesi default di perangkat tersebut. Untuk melihat atau menghapusnya di sana, lihat [Archive sessions](https://code.claude.com/docs/id/claude-code-on-the-web.md#archive-sessions).565Untuk menyembunyikan sesi yang sudah muncul di perangkat Anda yang lain, arsipkan sesi tersebut di Desktop. Desktop juga mengarsipkan salinan Remote Control dari sesi tersebut, sehingga sesi tersebut keluar dari daftar sesi default di perangkat tersebut. Untuk melihat atau menghapusnya di sana, lihat [Archive sessions](https://code.claude.com/docs/id/claude-code-on-the-web.md#archive-sessions).

563 566 


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

2015| `managedMcpServers` | dorong konfigurasi server MCP ke semua pengguna. Tersedia dalam deployment Desktop pihak ketiga (3P) saja. Di setiap entri, atur transport `"http"`, `"sse"`, atau `"stdio"`, detail koneksi, dan secara opsional peta `toolPolicy` untuk membatasi tools mana dari server tersebut yang dapat dipanggil pengguna. Berikan melalui file pengaturan terkelola, MDM, atau kebijakan gateway aplikasi Claude [`desktop` block](https://code.claude.com/docs/id/claude-apps-gateway-config#claude-desktop-overlay), karena deployment 3P tidak menerima pengaturan konsol admin. Untuk memberikannya melalui gateway, Anda memerlukan Claude Code v2.1.232 atau lebih baru di server gateway. Ini adalah kunci aplikasi desktop itu sendiri; Claude Code membaca [pengaturan terkelola dengan nama yang sama](https://code.claude.com/docs/id/managed-mcp.md#provide-servers-through-managed-settings) miliknya sendiri, dengan bentuk entri yang berbeda. |2018| `managedMcpServers` | dorong konfigurasi server MCP ke semua pengguna. Tersedia dalam deployment Desktop pihak ketiga (3P) saja. Di setiap entri, atur transport `"http"`, `"sse"`, atau `"stdio"`, detail koneksi, dan secara opsional peta `toolPolicy` untuk membatasi tools mana dari server tersebut yang dapat dipanggil pengguna. Berikan melalui file pengaturan terkelola, MDM, atau kebijakan gateway aplikasi Claude [`desktop` block](https://code.claude.com/docs/id/claude-apps-gateway-config#claude-desktop-overlay), karena deployment 3P tidak menerima pengaturan konsol admin. Untuk memberikannya melalui gateway, Anda memerlukan Claude Code v2.1.232 atau lebih baru di server gateway. Ini adalah kunci aplikasi desktop itu sendiri; Claude Code membaca [pengaturan terkelola dengan nama yang sama](https://code.claude.com/docs/id/managed-mcp.md#provide-servers-through-managed-settings) miliknya sendiri, dengan bentuk entri yang berbeda. |

2016 2019 

2020Jika Anda mematikan sebuah fitur dengan `browserExternalPageTools`, `disableMobileSimulatorTools`, atau `disableBrowserExternalNavigation` dalam [kebijakan MDM atau file pengaturan terkelola dengan peringkat tertinggi](https://code.claude.com/docs/id/managed-settings.md#how-claude-code-combines-managed-sources) di sebuah komputer, fitur tersebut tetap mati di sana. Fitur tersebut tetap mati bahkan ketika [server-managed settings](https://code.claude.com/docs/id/server-managed-settings.md) Anda membiarkan kunci tersebut tidak diatur atau mengizinkan fitur tersebut. Jangan gunakan nilai registri `HKCU` tingkat pengguna untuk ini. Untuk mengaktifkan kembali fitur tersebut, hapus nilai tersebut di mana pun Anda mengaturnya. Memerlukan Claude Desktop v4.4212.0 atau lebih baru.

2021 

2017Pengaturan terkelola mana yang mencapai sesi Desktop tergantung pada tempat sesi tersebut berjalan. Pembatasan model seperti [`availableModels`](https://code.claude.com/docs/id/model-config#restrict-model-selection) diberlakukan dalam sesi Claude Code Desktop dengan cara yang sama seperti di CLI terminal; lihat [surface coverage](https://code.claude.com/docs/id/model-config.md#surface-coverage).2022Pengaturan terkelola mana yang mencapai sesi Desktop tergantung pada tempat sesi tersebut berjalan. Pembatasan model seperti [`availableModels`](https://code.claude.com/docs/id/model-config#restrict-model-selection) diberlakukan dalam sesi Claude Code Desktop dengan cara yang sama seperti di CLI terminal; lihat [surface coverage](https://code.claude.com/docs/id/model-config.md#surface-coverage).

2018 2023 

2019* **Sesi lokal di mesin ini**: file pengaturan terkelola yang di-deploy ke disk berlaku. Pengaturan terkelola yang didorong dari jarak jauh melalui konsol admin juga mencapai sesi ini di API Anthropic ketika sesi mengautentikasi dengan [login yang memenuhi syarat](https://code.claude.com/docs/id/server-managed-settings.md#platform-availability), mengikuti [urutan prioritas pengaturan](https://code.claude.com/docs/id/settings.md#settings-precedence) yang sama seperti CLI terminal.2024* **Sesi lokal di mesin ini**: file pengaturan terkelola yang di-deploy ke disk berlaku. Pengaturan terkelola yang didorong dari jarak jauh melalui konsol admin juga mencapai sesi ini di API Anthropic ketika sesi mengautentikasi dengan [login yang memenuhi syarat](https://code.claude.com/docs/id/server-managed-settings.md#platform-availability), mengikuti [urutan prioritas pengaturan](https://code.claude.com/docs/id/settings.md#settings-precedence) yang sama seperti CLI terminal.

hooks.md +1 −1

Details

2166| Field | Deskripsi |2166| Field | Deskripsi |

2167| :- | :- |2167| :- | :- |

2168| `behavior` | `"allow"` memberikan izin, `"deny"` menolaknya. [Aturan deny dan ask](https://code.claude.com/docs/id/permissions.md#manage-permissions) tetap dievaluasi, sehingga hook yang mengembalikan `"allow"` tidak menimpa aturan deny yang cocok |2168| `behavior` | `"allow"` memberikan izin, `"deny"` menolaknya. [Aturan deny dan ask](https://code.claude.com/docs/id/permissions.md#manage-permissions) tetap dievaluasi, sehingga hook yang mengembalikan `"allow"` tidak menimpa aturan deny yang cocok |

2169| `updatedInput` | Hanya untuk `"allow"`: memodifikasi parameter input tool sebelum eksekusi. Menggantikan seluruh objek input, jadi sertakan field yang tidak berubah bersama field yang dimodifikasi. Input yang dimodifikasi dievaluasi ulang terhadap aturan deny dan ask |2169| `updatedInput` | Hanya untuk `"allow"`: memodifikasi parameter input tool sebelum eksekusi. Menggantikan seluruh objek input, jadi sertakan field yang tidak berubah bersama field yang dimodifikasi. Input yang dimodifikasi dievaluasi ulang terhadap aturan deny dan ask. `AskUserQuestion` dan `ExitPlanMode` [memerlukan field ini](#allow-with-updatedinput) |

2170| `updatedPermissions` | Hanya untuk `"allow"`: array [entri pembaruan izin](#permission-update-entries) yang akan diterapkan, seperti menambahkan aturan allow atau mengubah mode izin sesi |2170| `updatedPermissions` | Hanya untuk `"allow"`: array [entri pembaruan izin](#permission-update-entries) yang akan diterapkan, seperti menambahkan aturan allow atau mengubah mode izin sesi |

2171| `message` | Hanya untuk `"deny"`: memberi tahu Claude mengapa izin ditolak |2171| `message` | Hanya untuk `"deny"`: memberi tahu Claude mengapa izin ditolak |

2172| `interrupt` | Hanya untuk `"deny"`: jika `true`, menghentikan Claude |2172| `interrupt` | Hanya untuk `"deny"`: jika `true`, menghentikan Claude |

hooks-guide.md +4 −14

Details

421 421 

422Lewati dialog persetujuan untuk panggilan alat yang selalu Anda izinkan. Contoh ini auto-approve `ExitPlanMode`, alat yang Claude panggil ketika selesai menyajikan rencana dan meminta untuk melanjutkan, sehingga Anda tidak diminta setiap kali rencana siap.422Lewati dialog persetujuan untuk panggilan alat yang selalu Anda izinkan. Contoh ini auto-approve `ExitPlanMode`, alat yang Claude panggil ketika selesai menyajikan rencana dan meminta untuk melanjutkan, sehingga Anda tidak diminta setiap kali rencana siap.

423 423 

424Tidak seperti contoh kode keluar di atas, auto-approval memerlukan hook Anda untuk menulis keputusan JSON ke stdout. Claude Code menjalankan hook `PermissionRequest` ketika akan menanyakan Anda untuk izin, dan jika hook Anda mengembalikan `"behavior": "allow"`, Claude Code menjawab permintaan atas nama Anda.424Tidak seperti contoh kode keluar di atas, auto-approval memerlukan hook Anda untuk menulis keputusan JSON ke stdout. Claude Code menjalankan hook `PermissionRequest` ketika akan menanyakan Anda untuk izin, dan jika hook Anda mengembalikan `"behavior": "allow"`, Claude Code menjawab permintaan atas nama Anda. Untuk tool yang [memerlukan interaksi pengguna](https://code.claude.com/docs/id/hooks.md#allow-with-updatedinput), seperti `ExitPlanMode`, keputusan allow juga memerlukan `updatedInput`, atau Claude Code mengabaikannya dan tetap menampilkan dialog izin.

425 425 

426Matcher membatasi hook ke `ExitPlanMode` saja, sehingga tidak ada prompt lain yang terpengaruh. Tambahkan ini ke `~/.claude/settings.json`:426Matcher membatasi hook ke `ExitPlanMode` saja, sehingga tidak ada prompt lain yang terpengaruh. Tambahkan ini ke `~/.claude/settings.json`:

427 427 


434 "hooks": [434 "hooks": [

435 {435 {

436 "type": "command",436 "type": "command",

437 "command": "echo '{\"hookSpecificOutput\": {\"hookEventName\": \"PermissionRequest\", \"decision\": {\"behavior\": \"allow\"}}}'"437 "command": "jq -c '{hookSpecificOutput: {hookEventName: \"PermissionRequest\", decision: {behavior: \"allow\", updatedInput: .tool_input}}}'"

438 }438 }

439 ]439 ]

440 }440 }


453>453>

454> Claude Code tidak pernah menyimpannya sebagai `defaultMode`.454> Claude Code tidak pernah menyimpannya sebagai `defaultMode`.

455 455 

456Untuk beralih sesi ke `acceptEdits`, hook Anda menulis JSON ini ke stdout:456Untuk beralih sesi ke `acceptEdits`, ganti baris `command` di hook tersebut dengan baris ini:

457 457 

458```json theme={null}458```json theme={null}

459{459"command": "jq -c '{hookSpecificOutput: {hookEventName: \"PermissionRequest\", decision: {behavior: \"allow\", updatedInput: .tool_input, updatedPermissions: [{type: \"setMode\", mode: \"acceptEdits\", destination: \"session\"}]}}}'"

460 "hookSpecificOutput": {

461 "hookEventName": "PermissionRequest",

462 "decision": {

463 "behavior": "allow",

464 "updatedPermissions": [

465 { "type": "setMode", "mode": "acceptEdits", "destination": "session" }

466 ]

467 }

468 }

469}

470```460```

471 461 

472Jaga matcher sesempit mungkin. Mencocokkan pada `.*` atau membiarkan matcher kosong akan auto-approve setiap prompt izin alat, termasuk penulisan file dan perintah shell. Lihat [PermissionRequest reference](https://code.claude.com/docs/id/hooks.md#permissionrequest-decision-control) untuk set lengkap bidang keputusan.462Jaga matcher sesempit mungkin. Mencocokkan pada `.*` atau membiarkan matcher kosong akan auto-approve setiap prompt izin alat, termasuk penulisan file dan perintah shell. Lihat [PermissionRequest reference](https://code.claude.com/docs/id/hooks.md#permissionrequest-decision-control) untuk set lengkap bidang keputusan.

mcp.md +6 −4

Details

252 252 

253Status dalam daftar berikut melaporkan keputusan konfigurasi, bukan upaya koneksi, sehingga Claude Code mencetaknya tanpa terhubung ke server:253Status dalam daftar berikut melaporkan keputusan konfigurasi, bukan upaya koneksi, sehingga Claude Code mencetaknya tanpa terhubung ke server:

254 254 

255* ``⏸ Pending approval (run `claude` to approve)``: server bercakupan proyek dari `.mcp.json` yang belum Anda setujui. Claude Code menampilkannya di `claude mcp list` dan `claude mcp get <name>`. Jalankan `claude` secara interaktif untuk meninjau dan menyetujuinya.255* ``⏸ Pending approval (run `claude` to approve)``: server dengan cakupan proyek dari `.mcp.json` yang belum Anda setujui. Claude Code menampilkannya di `claude mcp list` dan `claude mcp get <name>`. Jalankan `claude` secara interaktif untuk meninjau dan menyetujuinya.

256* `✘ Rejected (see disabledMcpjsonServers in settings)`: server `.mcp.json` yang ditolak oleh entri [`disabledMcpjsonServers`](https://code.claude.com/docs/id/settings-reference#disabledmcpjsonservers). Claude Code hanya menampilkannya di `claude mcp get <name>`.256* `✘ Rejected (see disabledMcpjsonServers in settings)`: server `.mcp.json` yang ditolak oleh entri [`disabledMcpjsonServers`](https://code.claude.com/docs/id/settings-reference#disabledmcpjsonservers). Claude Code hanya menampilkannya di `claude mcp get <name>`.

257* `⊘ Disabled for this project (re-enable via /mcp)`: server yang disebutkan dalam daftar [`disabledMcpServers`](#disable-a-server-without-removing-it) proyek. Claude Code menampilkannya di `claude mcp list` maupun `claude mcp get <name>`. Aktifkan kembali server dari panel `/mcp`.257* `⊘ Disabled for this project (re-enable via /mcp)`: server yang disebutkan dalam daftar [`disabledMcpServers`](#disable-a-server-without-removing-it) proyek. Claude Code menampilkannya di `claude mcp list` maupun `claude mcp get <name>`. Aktifkan kembali server dari panel `/mcp`.

258* `✘ Blocked by enterprise managed policy`: server yang ditolak oleh salah satu kebijakan organisasi Anda. Claude Code menampilkannya di `claude mcp list` dan `claude mcp get <name>`. Server yang diblokir oleh allowlist, denylist, atau pembatasan lain dalam [konfigurasi MCP terkelola](https://code.claude.com/docs/id/managed-mcp.md#how-restrictions-appear-to-users) disembunyikan dari kedua perintah alih-alih ditampilkan dengan status ini. Tanyakan kepada administrator Anda kebijakan mana yang memblokir server tersebut.258* `✘ Blocked by enterprise managed policy`: server yang ditolak oleh salah satu kebijakan organisasi Anda. Claude Code menampilkannya di `claude mcp list` dan `claude mcp get <name>`. Server yang diblokir oleh allowlist, denylist, atau pembatasan lain dalam [konfigurasi MCP terkelola](https://code.claude.com/docs/id/managed-mcp.md#how-restrictions-appear-to-users) disembunyikan dari kedua perintah alih-alih ditampilkan dengan status ini. Tanyakan kepada administrator Anda kebijakan mana yang memblokir server tersebut.


596 596 

597#### Menjawab panggilan dengan tugas597#### Menjawab panggilan dengan tugas

598 598 

599Jawab dengan tugas hanya ketika permintaan membawa ekstensi tersebut, atau Claude akan mendapatkan kesalahan tool `Unsupported result type 'task' for tools/call`. Claude mendapatkan kesalahan yang sama ketika `taskId`, `status`, `createdAt`, `lastUpdatedAt`, atau `ttlMs` tidak ada. Objek tugas adalah `result` JSON-RPC dari respons `tools/call` Anda, tidak memerlukan array `content`, dan di sini menyertakan `statusMessage` dan `pollIntervalMs` yang opsional:599Jawab dengan tugas hanya ketika permintaan membawa ekstensi tersebut, atau panggilan gagal dengan error tool `Unsupported result type 'task' for tools/call`. Panggilan gagal dengan cara yang sama jika jawaban Anda tidak memiliki `taskId` atau tidak memiliki `status` yang valid. Objek tugas adalah `result` JSON-RPC dari respons `tools/call` Anda, tidak memerlukan array `content`, dan di sini menyertakan `statusMessage` dan `pollIntervalMs` yang opsional:

600 600 

601```json theme={null}601```json theme={null}

602{602{


616| `resultType` | Tetapkan ke `"task"` untuk menandai balasan sebagai tugas. Tanpanya, Claude Code membaca balasan sebagai hasil biasa |616| `resultType` | Tetapkan ke `"task"` untuk menandai balasan sebagai tugas. Tanpanya, Claude Code membaca balasan sebagai hasil biasa |

617| `taskId` | Wajib. Paling banyak 128 karakter ASCII yang dapat dicetak tanpa spasi, atau Claude mendapatkan kesalahan tool yang diawali `MCP server "<name>" returned a malformed task handle for tool "<tool>"`. Pastikan ID tetap dapat dijawab lintas koneksi, karena setelah sesi dilanjutkan Claude Code menanyakannya melalui koneksi baru |617| `taskId` | Wajib. Paling banyak 128 karakter ASCII yang dapat dicetak tanpa spasi, atau Claude mendapatkan kesalahan tool yang diawali `MCP server "<name>" returned a malformed task handle for tool "<tool>"`. Pastikan ID tetap dapat dijawab lintas koneksi, karena setelah sesi dilanjutkan Claude Code menanyakannya melalui koneksi baru |

618| `status` | Wajib. Salah satu dari `working`, `input_required`, `completed`, `failed`, atau `cancelled`. Nilai lain menghasilkan kesalahan `Unsupported result type` |618| `status` | Wajib. Salah satu dari `working`, `input_required`, `completed`, `failed`, atau `cancelled`. Nilai lain menghasilkan kesalahan `Unsupported result type` |

619| `createdAt`, `lastUpdatedAt`, `ttlMs` | Wajib, dan `ttlMs` boleh bernilai `null`. Claude Code tidak membuang tugas karena `ttlMs`-nya telah lewat |619| `createdAt`, `lastUpdatedAt`, `ttlMs` | Diwajibkan oleh ekstensi tugas, dan `ttlMs` boleh bernilai `null`. Claude Code tidak membuang tugas karena `ttlMs`-nya telah terlewati |

620| `pollIntervalMs` | Opsional, tetapi tidak boleh `null`. Milidetik di antara permintaan `tasks/get`, dibatasi antara 250 dan 30000. Claude Code menggunakan 2000 ketika field tidak ada, dan membaca nilainya lagi dari setiap respons `tasks/get` |620| `pollIntervalMs` | Opsional. Milidetik di antara permintaan `tasks/get`, dibatasi antara 250 dan 30000. Claude Code menggunakan 2000 ketika field tidak ada atau bernilai `null`, dan membaca nilainya lagi dari setiap respons `tasks/get` |

621| `statusMessage` | Opsional. `/tasks` menampilkan nilai dari respons `tasks/get` terbaru Anda, bukan dari respons pertama ini, dan respons yang tidak menyertakan field tersebut akan menghapusnya. [Pesan status dari Claude Code](#status-messages-on-an-mcp-task) dapat menggantikannya |621| `statusMessage` | Opsional. `/tasks` menampilkan nilai dari respons `tasks/get` terbaru Anda, bukan dari respons pertama ini, dan respons yang tidak menyertakan field tersebut akan menghapusnya. [Pesan status dari Claude Code](#status-messages-on-an-mcp-task) dapat menggantikannya |

622 622 

623Claude Code menerima jawaban tugas yang tidak menyertakan `createdAt`, `lastUpdatedAt`, atau `ttlMs`, atau yang menetapkan `pollIntervalMs` ke `null`. Sebelum v2.1.317, panggilan gagal dengan error `Unsupported result type`. Agar juga berfungsi dengan versi tersebut, kirim ketiga field yang diwajibkan ekstensi tugas, dan kirim `pollIntervalMs` sebagai angka atau tidak sama sekali.

624 

623Pada server HTTP atau konektor claude.ai, jawaban tugas harus dimulai dalam [timer per permintaan](#time-limits-on-mcp-tool-calls), jadi terima pekerjaan dan jawab terlebih dahulu, lalu lakukan pekerjaannya.625Pada server HTTP atau konektor claude.ai, jawaban tugas harus dimulai dalam [timer per permintaan](#time-limits-on-mcp-tool-calls), jadi terima pekerjaan dan jawab terlebih dahulu, lalu lakukan pekerjaannya.

624 626 

625#### Melaporkan status, hasil, dan pertanyaan627#### Melaporkan status, hasil, dan pertanyaan

sandboxing.md +1 −0

Details

41 41 

42* **Tool file dan web bawaan**: tool seperti Read, Edit, Write, WebFetch, dan WebSearch mengikuti [aturan izin](https://code.claude.com/docs/id/permissions.md) sebagai gantinya. Entri `denyRead` tidak menghentikan tool Read, dan `allowedDomains` tidak membatasi WebFetch42* **Tool file dan web bawaan**: tool seperti Read, Edit, Write, WebFetch, dan WebSearch mengikuti [aturan izin](https://code.claude.com/docs/id/permissions.md) sebagai gantinya. Entri `denyRead` tidak menghentikan tool Read, dan `allowedDomains` tidak membatasi WebFetch

43* **Proses lain yang dimulai Claude Code**: [hook](https://code.claude.com/docs/id/hooks.md) perintah, [server MCP](https://code.claude.com/docs/id/mcp.md) lokal, [monitor plugin](https://code.claude.com/docs/id/plugins/components.md#monitors), [server LSP](https://code.claude.com/docs/id/tools-reference.md#lsp-tool-behavior), dan perintah pembantu seperti perintah [baris status](https://code.claude.com/docs/id/statusline.md) Anda dan `apiKeyHelper` berjalan dengan akses penuh Anda43* **Proses lain yang dimulai Claude Code**: [hook](https://code.claude.com/docs/id/hooks.md) perintah, [server MCP](https://code.claude.com/docs/id/mcp.md) lokal, [monitor plugin](https://code.claude.com/docs/id/plugins/components.md#monitors), [server LSP](https://code.claude.com/docs/id/tools-reference.md#lsp-tool-behavior), dan perintah pembantu seperti perintah [baris status](https://code.claude.com/docs/id/statusline.md) Anda dan `apiKeyHelper` berjalan dengan akses penuh Anda

44* **Mod**: sebuah [mod](https://code.claude.com/docs/id/plugins/mods/overview.md) menjalankan kodenya sendiri di dalam Claude Code, sehingga akses file, permintaan jaringan, dan program yang dimulai dengan [`$.process`](https://code.claude.com/docs/id/plugins/mods/api#reach-files-processes-and-the-network) tidak berada di dalam sandbox. Lihat [Apa yang dapat dijangkau oleh mod](https://code.claude.com/docs/id/plugins/mods/overview.md#what-a-mod-can-reach)

44 45 

45Beberapa perintah shell juga berjalan di luar sandbox, tergantung pada pengaturan Anda:46Beberapa perintah shell juga berjalan di luar sandbox, tergantung pada pengaturan Anda:

46 47 

setup.md +5 −5

Details

40>40>

41> **macOS, Linux, WSL:**41> **macOS, Linux, WSL:**

42>42>

43> ```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}43> ```bash theme={null}

44> curl -fsSL https://claude.ai/install.sh | bash44> curl -fsSL https://claude.ai/install.sh | bash

45> ```45> ```

46>46>


48>48>

49> **Windows PowerShell:**49> **Windows PowerShell:**

50>50>

51> ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}51> ```powershell theme={null}

52> irm https://claude.ai/install.ps1 | iex52> irm https://claude.ai/install.ps1 | iex

53> ```53> ```

54>54>

55> **Windows CMD:**55> **Windows CMD:**

56>56>

57> ```batch theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}57> ```batch theme={null}

58> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd58> curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

59> ```59> ```

60>60>


72 72 

73> [tab] Homebrew73> [tab] Homebrew

74>74>

75> ```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}75> ```bash theme={null}

76> brew install --cask claude-code76> brew install --cask claude-code

77> ```77> ```

78>78>


84 84 

85> [tab] WinGet85> [tab] WinGet

86>86>

87> ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}87> ```powershell theme={null}

88> winget install Anthropic.ClaudeCode88> winget install Anthropic.ClaudeCode

89> ```89> ```

90>90>